:root{--ink:#050736;--panel:#0b1741;--line:#263d70;--white:#f7fbff;--muted:#a8bbd1;--cyan:#1477b5;--sky:#90d5ff}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ink);color:var(--white);font:16px/1.55 Manrope,Arial,sans-serif;overflow-x:hidden}
a{color:inherit;text-decoration:none}
.nav{height:104px;display:flex;align-items:center;gap:50px;padding:0 4vw;position:absolute;z-index:10;width:100%;background:#ffffffee;border-bottom:1px solid #05073622;backdrop-filter:blur(14px)}
.brand{display:flex;align-items:center}
.brand img{display:block;width:112px;height:auto}
.nav nav{display:flex;gap:35px;margin-left:auto}
.nav nav a{font-size:.82rem;color:#3b496c}
.nav nav a:hover{color:var(--cyan)}
.nav-cta{font-size:.84rem;color:var(--ink);border-left:1px solid #05073625;padding-left:35px}
.nav-cta span,.button span{color:var(--cyan)}
.hero{min-height:900px;height:100vh;position:relative;display:flex;align-items:center;overflow:hidden}
.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#050736 0%,#050736e8 31%,transparent 72%),linear-gradient(0deg,#050736 0%,transparent 30%)}
.hero-content{position:relative;z-index:2;margin-left:8vw;margin-top:45px;max-width:780px}
.eyebrow,.section-index{font:400 .72rem Space Mono,monospace;letter-spacing:.15em;color:var(--sky);text-transform:uppercase}
.eyebrow span{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--sky);margin-right:10px;box-shadow:0 0 15px var(--sky)}
h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(4.5rem,8.8vw,9.8rem);line-height:.84;letter-spacing:-.07em;margin:38px 0 40px;font-weight:600}
h1 em,.signal h2 em{font-style:normal;color:transparent;-webkit-text-stroke:1px var(--sky)}
.hero-copy{max-width:520px;color:#c0c9cc;font-size:1.1rem}
.button{display:inline-flex;gap:55px;align-items:center;margin-top:28px;background:var(--white);color:var(--ink);padding:17px 22px;font-size:.9rem;font-weight:700}
.hero-meta{position:absolute;right:5vw;bottom:100px;display:flex;gap:20px;border-top:1px solid #ffffff3b;padding-top:12px;width:220px}
.hero-meta span{font:400 .7rem Space Mono;color:var(--sky)}
.hero-meta p{font-size:.82rem;line-height:1.4}
.scroll{position:absolute;left:4vw;bottom:40px;font:400 .62rem Space Mono;letter-spacing:.15em;transform:rotate(-90deg);transform-origin:left center}
.scroll i{display:inline-block;width:70px;height:1px;background:#ffffff55;margin:0 0 3px 14px}
.statement{padding:160px 8vw;display:grid;grid-template-columns:1fr 1.3fr;border-bottom:1px solid var(--line)}
.statement .section-index{grid-column:1/-1;margin-bottom:55px}
.statement h2,.cap-intro h2,.platform-head h2,.process h2,.signal h2,.contact h2{font-size:clamp(3rem,5.8vw,6.8rem);line-height:.95;letter-spacing:-.055em;font-weight:500}
.statement-copy{max-width:540px;margin-top:10px}
.statement-copy p:first-child{font-size:1.45rem;color:var(--white)}
.statement-copy p:last-child{color:var(--muted);max-width:480px}
.capabilities{display:grid;grid-template-columns:.82fr 1.18fr;padding:150px 8vw;background:#08103a}
.cap-intro{position:sticky;top:100px;height:max-content}
.cap-intro h2{font-size:clamp(2.8rem,4.7vw,5.2rem);margin-top:45px}
.cap-list{border-top:1px solid var(--line)}
.cap-item{display:grid;grid-template-columns:48px 1fr 30px;gap:15px;padding:38px 0;border-bottom:1px solid var(--line)}
.cap-item>span{font:400 .7rem Space Mono;color:var(--sky)}
.cap-item h3{font-size:1.5rem;font-weight:500}
.cap-item p{color:var(--muted);max-width:520px;margin-bottom:0}
.cap-item b{color:var(--sky);font-weight:400}
.platforms{padding:150px 8vw}
.platform-head{display:grid;grid-template-columns:1.35fr .65fr;align-items:end;margin:50px 0 90px}
.platform-head p{color:var(--muted);max-width:440px}
.platform-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.platform-card{min-height:390px;padding:35px;background:#090f3a;display:flex;flex-direction:column;position:relative;overflow:hidden;transition:background .3s}
.platform-card:hover{background:#101d50}
.platform-card>span{font:400 .7rem Space Mono;color:var(--sky)}
.line-icon{font-size:6rem;color:#aab4b7;margin:auto;opacity:.7}
.platform-image{position:absolute;inset:0;z-index:0;overflow:hidden}
.platform-image::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#05073633 0%,#090f3a08 38%,#090f3af2 88%)}
.platform-image img{width:100%;height:100%;object-fit:cover;object-position:center 48%;transition:transform .7s ease}
.platform-card:hover .platform-image img{transform:scale(1.035)}
.platform-card.illustrated>span,.platform-card.illustrated>h3,.platform-card.illustrated>p{position:relative;z-index:1}
.platform-card.illustrated>span{align-self:flex-start;text-shadow:0 1px 10px #050736}
.platform-card.illustrated>h3{margin-top:auto}
.platform-card h3{font-size:1.75rem;font-weight:500;margin-bottom:8px}
.platform-card p{max-width:440px;color:var(--muted);margin:0;font-size:.9rem}
.process{padding:150px 8vw;background:var(--white);color:var(--ink);display:grid;grid-template-columns:1fr 1.15fr;gap:8vw}
.process .section-index{color:#1477b5}
.process ol{list-style:none;padding:0;margin:0;border-top:1px solid #aab0b2}
.process li{display:grid;grid-template-columns:55px 1fr;padding:28px 0;border-bottom:1px solid #aab0b2}
.process li>span{font:400 .7rem Space Mono;color:#1477b5}
.process h3{font-size:1.35rem}
.process li p{color:#5c666a;max-width:460px}
.signal{min-height:760px;padding:150px 8vw;position:relative;display:flex;align-items:center;overflow:hidden;background:#050736}
.signal-grid{position:absolute;inset:0;background-image:linear-gradient(#90d5ff18 1px,transparent 1px),linear-gradient(90deg,#90d5ff18 1px,transparent 1px);background-size:55px 55px;mask-image:linear-gradient(90deg,transparent,#000)}
.signal-copy{position:relative;z-index:1;max-width:780px}
.signal-copy p:last-child{max-width:520px;color:var(--muted)}
.pulse{position:absolute;right:9vw;width:360px;height:360px;border:1px solid #90d5ff66;border-radius:50%;display:grid;place-items:center}
.pulse i{position:absolute;inset:12%;border:1px solid #90d5ff40;border-radius:50%}
.pulse i:nth-child(2){inset:25%}
.pulse i:nth-child(3){inset:38%}
.pulse span{font:700 2rem Space Mono;color:var(--sky)}
.contact{padding:150px 8vw;background:#0b1741}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:9vw;margin-top:50px}
.contact-grid>div>p{color:var(--muted);max-width:480px;font-size:1.1rem}
form label{display:block;font:400 .65rem Space Mono;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:25px}
input,textarea{display:block;width:100%;border:0;border-bottom:1px solid #465156;background:transparent;color:var(--white);padding:12px 0;font:16px Manrope;margin-top:5px;outline:none;resize:vertical}
input:focus,textarea:focus{border-color:var(--cyan)}
form button{width:100%;padding:18px 20px;background:var(--sky);color:var(--ink);border:0;display:flex;justify-content:space-between;font:700 .9rem Manrope;cursor:pointer}
.form-status{margin-top:14px;color:var(--cyan);font-size:.85rem}
footer{padding:60px 4vw 35px;display:grid;grid-template-columns:minmax(155px,1fr) minmax(0,2fr) 1fr auto;align-items:start;gap:40px;background:#fff;border-top:1px solid #05073622;color:#5a6783}
footer .brand img{width:155px}
footer div{display:flex;flex-direction:column;gap:8px}
footer .footer-company{font-size:.85rem;line-height:1.6;overflow-wrap:anywhere}
footer .footer-company strong{color:var(--ink)}
footer address{font-style:normal}
footer .footer-tagline{margin-top:8px}
footer small{font:400 .65rem Space Mono}
.reveal{opacity:0;transform:translateY(30px);transition:opacity .7s,transform .7s}
.reveal.visible{opacity:1;transform:none}
@media(max-width:800px){.nav{height:82px}
.brand img{width:86px}
.nav nav{display:none}
.nav-cta{margin-left:auto;padding-left:15px}
.hero{min-height:760px}
.hero-content{margin:40px 6vw 0}
.hero>img{object-position:63% center}
.hero-shade{background:linear-gradient(90deg,#050736f4 0%,#050736d3 55%,#05073635),linear-gradient(0deg,#050736 0%,transparent 35%)}
h1{font-size:clamp(4rem,20vw,6rem)}
.hero-meta,.scroll{display:none}
.statement,.capabilities,.process,.contact-grid{grid-template-columns:1fr}
.statement,.capabilities,.platforms,.process,.contact,.signal{padding:100px 6vw}
.statement-copy{margin-top:35px}
.cap-intro{position:static;margin-bottom:60px}
.platform-head{grid-template-columns:1fr;gap:25px}
.platform-grid{grid-template-columns:1fr}
.platform-card{min-height:300px}
.pulse{right:-190px;opacity:.35}
.contact-grid{gap:40px}
footer{grid-template-columns:1fr 1fr}
footer p{display:none}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}
.reveal{opacity:1;transform:none;transition:none}
}

@media(max-width:480px){footer{grid-template-columns:1fr;gap:28px}}

/* Keep category copy above images in every category. */
.platform-card > span, .platform-card > h3, .platform-card > p{position:relative;z-index:2}
.platform-card > h3{margin-top:auto;color:#fff}
.platform-card > p{color:#d4dbe8}
