html,
body{scroll-behavior:smooth}.hero-grid{position:relative;isolation:isolate}.hero-fullscreen{min-height:100vh}.hero-fullscreen .hero-inner{min-height:calc(100vh - 4rem)}@media (min-width:640px){.hero-fullscreen .hero-inner{min-height:calc(100vh - 5rem)}}@supports (height:100svh){.hero-fullscreen{min-height:100svh}.hero-fullscreen .hero-inner{min-height:calc(100svh - 4rem)}@media (min-width:640px){.hero-fullscreen .hero-inner{min-height:calc(100svh - 5rem)}}}@supports (height:100dvh){.hero-fullscreen{min-height:100dvh}.hero-fullscreen .hero-inner{min-height:calc(100dvh - 4rem)}@media (min-width:640px){.hero-fullscreen .hero-inner{min-height:calc(100dvh - 5rem)}}}.site-header{background-color:rgba(10,25,47,0.84);transition:background-color 220ms ease,border-color 220ms ease}body.mobile-nav-open{overflow:hidden}.mobile-nav-backdrop{position:fixed;inset:0;z-index:60;background-color:rgba(5,11,22,0.7);opacity:0;visibility:hidden;pointer-events:none;transition:opacity 220ms ease,visibility 220ms ease}.mobile-nav-sheet{position:fixed;top:0;right:0;z-index:70;display:flex;flex-direction:column;height:100dvh;width:min(82vw,22rem);padding:1.25rem;border-left:1px solid rgba(96,121,159,0.42);background:linear-gradient(180deg,rgba(10,25,47,0.98),rgba(8,18,36,0.99)),rgba(5,11,22,0.99);box-shadow:-18px 0 44px rgba(0,0,0,0.38);transform:translateX(102%);transition:transform 260ms ease}.mobile-nav-link{border:1px solid rgba(134,155,184,0.34);border-radius:0.75rem;padding:0.85rem 0.95rem;color:#d4deea;transition:border-color 180ms ease,color 180ms ease,background-color 180ms ease}.mobile-nav-link:hover{border-color:rgba(100,255,218,0.6);color:#64ffda;background-color:rgba(19,125,104,0.18)}.mobile-nav-link.is-active{border-color:rgba(100,255,218,0.75);color:#64ffda;background-color:rgba(19,125,104,0.2)}.site-header.mobile-nav-active .mobile-nav-backdrop{opacity:1;visibility:visible;pointer-events:auto}.site-header.mobile-nav-active .mobile-nav-sheet{transform:translateX(0)}@media (min-width:768px){body.mobile-nav-open{overflow:auto}.mobile-nav-backdrop,.mobile-nav-sheet{display:none}}.hero-grid::before{content:"";position:absolute;inset:-20% -10% auto;height:70%;background:radial-gradient(60% 70% at 50% 20%,rgba(100,255,218,0.2),transparent 72%),linear-gradient(180deg,rgba(10,25,47,0.4),rgba(5,11,22,0.96));pointer-events:none;z-index:-2}.hero-grid::after{content:"";position:absolute;inset:0;background-image:repeating-radial-gradient(circle at 20% 95%,rgba(100,255,218,0.12) 0 1px,transparent 1px 16px),repeating-radial-gradient(circle at 80% 100%,rgba(0,123,255,0.14) 0 1px,transparent 1px 22px);opacity:0.45;mask-image:linear-gradient(to bottom,transparent 0%,black 28%,black 78%,transparent 100%);pointer-events:none;z-index:-1}.section-divider{height:1px;background:linear-gradient(90deg,transparent,rgba(100,255,218,0.6),transparent)}.system-status-card{transition:transform 240ms ease,box-shadow 240ms ease}@media (min-width:1024px){.system-status-card{animation:statusCardFloat 5.8s ease-in-out infinite}}@keyframes statusCardFloat{0%{transform:translateY(-50%) translate3d(0,-4px,0)}50%{transform:translateY(-50%) translate3d(0,8px,0)}100%{transform:translateY(-50%) translate3d(0,-4px,0)}}@media (prefers-reduced-motion:reduce){.system-status-card{animation:none !important}}.typed-phrase{display:inline-block;vertical-align:baseline;overflow-wrap:break-word}.typed-inline{display:inline-flex;align-items:baseline;gap:0.08em}.typed-cursor{display:inline-block;margin-left:0.1em;color:#64ffda;font-weight:600;opacity:1}.typed-cursor.is-blinking{animation:typedCursorBlink 0.95s steps(1,end) infinite}.typed-cursor.is-typing{animation:none}@keyframes typedCursorBlink{0%,45%{opacity:1}46%,100%{opacity:0}}.scroll-cue{position:absolute;left:50%;bottom:1rem;transform:translateX(-50%);display:inline-flex;height:2.75rem;width:2.75rem;align-items:center;justify-content:center;border-radius:999px;border:1px solid rgba(100,255,218,0.7);background-color:rgba(10,25,47,0.68);color:#64ffda;backdrop-filter:blur(8px);animation:cuePulse 2s infinite}.scroll-cue svg{height:1.35rem;width:1.35rem;animation:cueArrowFloat 2s infinite}@keyframes cuePulse{0%{box-shadow:0 0 0 0 rgba(100,255,218,0.45)}70%{box-shadow:0 0 0 14px rgba(100,255,218,0)}100%{box-shadow:0 0 0 0 rgba(100,255,218,0)}}@keyframes cueArrowFloat{0%,100%{transform:translateY(-1px)}50%{transform:translateY(4px)}}.card-tilt{will-change:transform;transition:transform 220ms ease,border-color 220ms ease,box-shadow 220ms ease}.card-tilt:hover{transform:none;border-color:rgba(100,255,218,0.45);box-shadow:0 16px 36px rgba(0,0,0,0.32)}.services-track-shell{padding-top:0.35rem;padding-bottom:0.45rem}.services-track{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:none;-ms-overflow-style:none;scroll-padding-inline:0.25rem}.services-track::-webkit-scrollbar{display:none}.services-card{display:flex;flex:0 0 calc(100% - 0.5rem);flex-direction:column;min-height:24rem}.echoes-card{display:flex;flex:0 0 calc(100% - 0.5rem);min-height:18rem}.service-title{line-height:1.06;overflow-wrap:break-word}@media (min-width:640px){.services-card{flex-basis:calc((100% - 1.5rem) / 2)}}@media (min-width:1024px){.services-card{flex-basis:calc((100% - 4.5rem) / 4)}.echoes-card{flex-basis:calc((100% - 1.5rem) / 2)}}.services-dot{height:0.55rem;width:0.55rem;border-radius:999px;border:1px solid rgba(100,255,218,0.35);background-color:rgba(96,121,159,0.45);transition:width 200ms ease,background-color 200ms ease,border-color 200ms ease}.services-dot.is-active{width:2rem;background-color:rgba(100,255,218,0.9);border-color:rgba(100,255,218,0.95)}.services-grid-bg{background-image:linear-gradient(rgba(100,255,218,0.13) 1px,transparent 1px),linear-gradient(90deg,rgba(100,255,218,0.13) 1px,transparent 1px);background-size:72px 72px;opacity:0.55;mask-image:linear-gradient(to right,rgba(0,0,0,0.22),rgba(0,0,0,0.9) 34%)}.services-page-card{transition:transform 220ms ease,border-color 220ms ease,box-shadow 220ms ease}.services-page-card:hover{border-color:rgba(100,255,218,0.4);box-shadow:0 18px 36px rgba(0,0,0,0.28)}.portfolio-image{filter:saturate(1.15) contrast(1.03)}.grain{position:relative}.grain::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(rgba(255,255,255,0.04) 1px,transparent 0);background-size:3px 3px;opacity:0.22}