:root{--ice:#eef4f8;--ice-dark:#d4e3ed;--ice-muted:#b8ccd8;--steel:#7a8f9e;--steel-dark:#4a6270;--navy:#0d1218;--navy-soft:#151d28;--white:#f8fbfd;--accent:#9ebfd4;--text:#0d1218;--text-muted:#5a7080;--font-display:"Instrument Sans", system-ui, sans-serif;--font-mono:"DM Mono", monospace;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-mono);letter-spacing:.04em;color:var(--text);background:var(--ice);cursor:default;font-size:.75rem;font-weight:300;line-height:1.7;overflow-x:hidden}a{color:inherit;text-decoration:none}ul{list-style:none}img,canvas{max-width:100%;display:block}.grain{z-index:9999;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:128px;position:fixed;inset:0}.btn{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;border:1px solid var(--navy);color:var(--navy);cursor:pointer;transition:all .4s var(--ease-out);white-space:nowrap;background:0 0;justify-content:center;align-items:center;padding:.85rem 1.6rem;font-size:.65rem;font-weight:400;display:inline-flex}.btn-solid{background:var(--navy);color:var(--white)}.btn-solid:hover{background:var(--navy-soft);transform:translateY(-1px)}.btn-outline:hover{background:var(--navy);color:var(--white)}.btn-full{width:100%}.nav{z-index:100;color:var(--navy);transition:background .4s var(--ease-out), color .4s var(--ease-out), border-color .4s;justify-content:space-between;align-items:center;padding:1.25rem 3rem;font-weight:500;display:flex;position:fixed;top:0;left:0;right:0}.nav--scrolled{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#eef4f8f2;border-bottom:1px solid #0d121814}.logo{font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;font-size:.95rem;font-weight:600}.nav-links{gap:2.5rem;display:flex}.nav-links a{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;font-size:.95rem;font-weight:500;transition:opacity .3s;position:relative}.nav-links a:after{content:"";width:0;height:2px;transition:width .4s var(--ease-out);background:currentColor;position:absolute;bottom:-6px;left:0}.nav-links a:hover:after{width:100%}.nav-cta{letter-spacing:.08em;border-color:var(--navy);color:var(--navy);padding:.95rem 1.75rem;font-size:.85rem;font-weight:500}.nav-cta:hover{background:var(--navy);color:var(--white)}.hero{align-items:stretch;min-height:100vh;display:flex;position:relative;overflow:hidden}.hero-video{object-fit:cover;object-position:center center;z-index:0;width:100%;height:100%;position:absolute;inset:0}.hero-overlay{z-index:1;pointer-events:none;background:linear-gradient(90deg,#0000 0%,#eef4f866 55%,#eef4f8d9 100%),linear-gradient(#eef4f833 0%,#0000 40%,#eef4f84d 100%);position:absolute;inset:0}.hero-inner{z-index:2;flex-direction:column;justify-content:flex-end;width:100%;min-height:100vh;padding:8rem 3rem 5rem;display:flex;position:relative}.hero-tagline{letter-spacing:.2em;text-transform:uppercase;color:var(--steel-dark);max-width:220px;animation:fadeUp 1s var(--ease-out) .3s both;font-size:.6rem;position:absolute;bottom:5rem;left:3rem}.hero-content{flex-direction:column;justify-content:center;max-width:520px;margin-left:auto;display:flex}.hero-meta{animation:fadeUp 1s var(--ease-out) .5s both;align-items:center;gap:.8rem;margin-bottom:3rem;display:flex}.meta-label{letter-spacing:.15em;text-transform:uppercase;color:var(--text-muted);font-size:.55rem}.meta-divider{color:var(--text-muted);opacity:.4}.hero-headline{font-family:var(--font-display);letter-spacing:-.03em;color:var(--navy);margin-bottom:2.5rem;font-size:clamp(3rem,6vw,5.5rem);font-weight:500;line-height:.95}.hero-headline .line{animation:fadeUp 1s var(--ease-out) both;display:block}.hero-headline .line:first-child{animation-delay:.6s}.hero-headline .line:nth-child(2){animation-delay:.75s}.line-accent{color:var(--steel);font-style:italic}.hero-statement{max-width:420px;color:var(--text-muted);animation:fadeUp 1s var(--ease-out) .9s both;margin-bottom:3rem;font-size:.7rem;line-height:1.9}.hero-actions{animation:fadeUp 1s var(--ease-out) 1.1s both;gap:1rem;display:flex}.scroll-indicator{z-index:10;pointer-events:none;animation:fadeUp 1s var(--ease-out) 1.5s both;flex-direction:column;align-items:center;gap:.8rem;display:flex;position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}.scroll-indicator span{letter-spacing:.25em;text-transform:uppercase;color:var(--text-muted);font-size:.5rem}.scroll-line{background:var(--text-muted);opacity:.3;width:1px;height:40px;position:relative;overflow:hidden}.scroll-line:after{content:"";background:var(--navy);width:100%;height:100%;animation:scrollPulse 2s var(--ease-in-out) infinite;position:absolute;top:-100%;left:0}.marquee{background:var(--navy);color:var(--ice);border-top:1px solid #ffffff0f;border-bottom:1px solid #ffffff0f;padding:1rem 0;overflow:hidden}.marquee-track{white-space:nowrap;align-items:center;gap:3rem;width:max-content;animation:30s linear infinite marquee;display:flex}.marquee-track span{letter-spacing:.2em;text-transform:uppercase;font-size:.6rem}.marquee-dot{opacity:.3;font-size:.4rem!important}.section{max-width:1400px;margin:0 auto;padding:8rem 3rem}.section-header{margin-bottom:5rem}.section-num{letter-spacing:.2em;color:var(--text-muted);margin-bottom:1rem;font-size:.55rem;display:block}.section-header h2{font-family:var(--font-display);letter-spacing:-.02em;margin-bottom:1rem;font-size:clamp(2rem,4vw,3.5rem);font-weight:500}.section-desc{color:var(--text-muted);max-width:400px;font-size:.7rem}.services-grid{background:var(--navy);border:1px solid var(--navy);grid-template-columns:repeat(2,1fr);gap:1px;display:grid}.service-card{background:var(--ice);transition:background .5s var(--ease-out);padding:3rem;position:relative;overflow:hidden}.service-card:before{content:"";background:var(--steel);transform-origin:0;width:100%;height:2px;transition:transform .5s var(--ease-out);position:absolute;top:0;left:0;transform:scaleX(0)}.service-card:hover{background:var(--ice-dark)}.service-card:hover:before{transform:scaleX(1)}.service-index{letter-spacing:.15em;color:var(--text-muted);margin-bottom:2rem;font-size:.55rem;display:block}.service-card h3{font-family:var(--font-display);letter-spacing:-.01em;margin-bottom:1rem;font-size:1.4rem;font-weight:500}.service-card p{color:var(--text-muted);margin-bottom:2rem;font-size:.68rem;line-height:1.8}.service-tags{flex-wrap:wrap;gap:.5rem;display:flex}.service-tags li{letter-spacing:.1em;text-transform:uppercase;border:1px solid #0d12181f;padding:.4rem .8rem;font-size:.55rem}.contact{background:var(--navy);color:var(--ice);max-width:none;padding:8rem 3rem}.contact-layout{grid-template-columns:1fr 1.2fr;gap:6rem;max-width:1400px;margin:0 auto;display:grid}.contact .section-num{color:#fff6}.contact-left h2{font-family:var(--font-display);letter-spacing:-.03em;margin-bottom:2rem;font-size:clamp(2.5rem,5vw,4rem);font-weight:500;line-height:1}.contact-desc{color:#ffffff80;max-width:360px;margin-bottom:2rem;font-size:.7rem;line-height:1.9}.contact-email{letter-spacing:.05em;border-bottom:1px solid #ffffff4d;padding-bottom:2px;font-size:.75rem;transition:border-color .3s}.contact-email:hover{border-color:var(--ice)}.contact-form{flex-direction:column;gap:1.5rem;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}.contact-form label{flex-direction:column;gap:.6rem;display:flex}.contact-form label span{letter-spacing:.15em;text-transform:uppercase;color:#fff6;font-size:.55rem}.contact-form input,.contact-form textarea{font-family:var(--font-mono);letter-spacing:.03em;color:var(--ice);resize:vertical;background:0 0;border:none;border-bottom:1px solid #ffffff26;outline:none;padding:.8rem 0;font-size:.75rem;font-weight:300;transition:border-color .3s}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#fff3}.contact-form input:focus,.contact-form textarea:focus{border-color:#ffffff80}.contact .btn-solid{background:var(--ice);color:var(--navy);border-color:var(--ice);margin-top:1rem}.contact .btn-solid:hover{background:var(--accent);border-color:var(--accent)}.footer{background:var(--navy-soft);color:var(--ice);border-top:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding:2rem 3rem;display:flex}.footer-left{align-items:center;gap:2rem;display:flex}.footer-copy{color:#eef4f873;letter-spacing:.1em;font-size:.55rem}.footer-right{gap:2rem;display:flex}.footer-right a{letter-spacing:.15em;text-transform:uppercase;color:#eef4f873;font-size:.55rem;transition:color .3s}.footer-right a:hover{color:var(--ice)}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes scrollPulse{0%{top:-100%}50%{top:100%}to{top:100%}}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes rotateSlow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.reveal{opacity:0;transition:opacity .8s var(--ease-out), transform .8s var(--ease-out);transform:translateY(30px)}.reveal.visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.hero-video{display:none}.hero{background:var(--navy-soft) url(/assets/hero-tech-abstract-CptVlS_a.png) center / cover no-repeat}}@media (width<=1024px){.hero-inner{justify-content:flex-end;padding:7rem 2rem 5rem}.hero-tagline{bottom:4rem;left:2rem}.hero-content{max-width:none;margin-left:0}.services-grid{grid-template-columns:1fr}.contact-layout{grid-template-columns:1fr;gap:4rem}}@media (width<=768px){.nav{gap:1rem;padding:1rem 1.25rem}.logo{max-width:46%;font-size:.8rem;line-height:1.3}.nav-links{display:none}.nav-cta{letter-spacing:.06em;flex-shrink:0;padding:.65rem .8rem;font-size:.58rem;display:inline-flex}.hero-inner{padding:6rem 1.5rem 4rem}.hero-tagline{margin-bottom:2rem;position:relative;bottom:auto;left:auto}.section{padding:5rem 1.5rem}.form-row{grid-template-columns:1fr}.footer{text-align:center;flex-direction:column;gap:1.5rem}.footer-left{flex-direction:column;gap:.5rem}.hero-actions{flex-direction:column}.hero-actions .btn{text-align:center}.scroll-indicator{display:none}}@media (height<=720px){.scroll-indicator{display:none}}
