:root { --bg:#020711; --ink:#f1f7ff; --muted:#94a9c4; --cyan:#46d8ff; --violet:#b376ff; --line:rgba(104,188,255,.18); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--bg); color:var(--ink); font-family:Inter,sans-serif; overflow-x:hidden; }
a { color:inherit; }
.nav { position:fixed; z-index:20; inset:0 0 auto; height:76px; display:flex; align-items:center; justify-content:space-between; padding:0 clamp(22px,5vw,76px); background:linear-gradient(180deg,rgba(1,5,14,.94),rgba(1,5,14,.46),transparent); backdrop-filter:blur(5px); }
.brand { display:flex; align-items:center; gap:11px; font:500 .78rem/1 "Exo 2",sans-serif; letter-spacing:.2em; text-decoration:none; }
.brand b { color:var(--violet); font-weight:600; }
.brand-icon { width:34px; height:34px; display:grid; place-items:center; border:1px solid var(--cyan); transform:rotate(45deg); color:var(--cyan); text-shadow:0 0 14px var(--cyan); box-shadow:inset 0 0 14px rgba(70,216,255,.12); }
.brand-icon::first-letter { transform:rotate(-45deg); }
nav { display:flex; align-items:center; gap:clamp(20px,3vw,42px); }
nav a { font-size:.75rem; letter-spacing:.08em; text-transform:uppercase; text-decoration:none; color:#b9c9dc; }
nav a:hover { color:var(--cyan); }
.nav-cta { padding:10px 16px; border:1px solid var(--line); background:rgba(17,67,102,.2); }
.menu-button { display:none; background:transparent; border:1px solid var(--line); color:white; padding:9px 12px; }
.hero { min-height:100svh; position:relative; display:grid; place-items:end center; overflow:hidden; }
.hero>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; filter:saturate(1.05) contrast(1.04); }
.hero-shade { position:absolute; inset:0; background:linear-gradient(180deg,rgba(1,4,12,.16) 25%,rgba(1,5,13,.1) 55%,rgba(1,5,13,.96) 100%),linear-gradient(90deg,rgba(1,5,13,.28),transparent 30%,transparent 70%,rgba(1,5,13,.28)); }
.hero-actions { position:relative; z-index:2; margin-bottom:70px; text-align:center; }
.hero-actions>p { color:#b9c6ee; text-transform:uppercase; letter-spacing:.34em; font-size:.7rem; }
.hero-actions>div { display:flex; justify-content:center; align-items:center; gap:24px; margin-top:20px; }
.primary-button { display:inline-block; border:1px solid #4bdcff; background:linear-gradient(135deg,#116a96,#473e9f); color:white; padding:14px 23px; font:500 .76rem Inter,sans-serif; letter-spacing:.11em; text-transform:uppercase; text-decoration:none; box-shadow:0 0 30px rgba(65,193,255,.2),inset 0 0 18px rgba(255,255,255,.08); cursor:pointer; }
.primary-button:hover { box-shadow:0 0 38px rgba(65,193,255,.42); }
.text-button { color:#d6e7f8; font-size:.78rem; letter-spacing:.05em; text-decoration:none; }
.text-button span { color:var(--cyan); margin-left:5px; }
.scroll-cue { position:absolute; z-index:2; right:32px; bottom:50px; writing-mode:vertical-rl; color:#6e89a7; text-transform:uppercase; letter-spacing:.18em; font-size:.55rem; text-decoration:none; display:flex; align-items:center; gap:10px; }
.scroll-cue span { width:1px; height:36px; background:var(--cyan); }
.section { max-width:1240px; margin:auto; padding:120px clamp(22px,5vw,74px); }
.kicker { color:var(--cyan); text-transform:uppercase; letter-spacing:.25em; font-size:.69rem; }
.section-heading { max-width:760px; margin-bottom:58px; }
.section-heading h1,.section-heading h2,.research h2,.contact h2 { font:300 clamp(2.3rem,5vw,4.6rem)/1.05 "Exo 2",sans-serif; letter-spacing:.02em; margin:17px 0; }
.section-heading>p:last-child,.research-copy>p,.contact>p { color:var(--muted); line-height:1.75; max-width:650px; }
.capability-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.capability-grid article { min-height:270px; position:relative; padding:32px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); background:linear-gradient(145deg,rgba(10,34,59,.65),rgba(3,11,22,.5)); transition:.3s; }
.capability-grid article:hover { background:linear-gradient(145deg,rgba(12,59,94,.8),rgba(16,9,47,.7)); transform:translateY(-4px); }
.capability-grid article>span { position:absolute; top:20px; right:24px; color:#526d8b; font-size:.7rem; }
.icon { color:var(--cyan); font-size:2rem; text-shadow:0 0 18px var(--cyan); }
.capability-grid h2 { font:400 1.25rem "Exo 2",sans-serif; letter-spacing:.08em; margin-top:28px; }
.capability-grid p { color:var(--muted); font-size:.88rem; line-height:1.65; }
.capability-grid a { position:absolute; left:32px; bottom:28px; color:#9ccbea; text-decoration:none; text-transform:uppercase; font-size:.62rem; letter-spacing:.13em; }
.research { max-width:none; min-height:580px; padding-left:max(calc((100vw - 1240px)/2 + 74px),6vw); padding-right:max(calc((100vw - 1240px)/2 + 74px),6vw); display:grid; grid-template-columns:1fr 1fr; align-items:center; background:radial-gradient(circle at 78% 50%,rgba(79,55,188,.26),transparent 25%),radial-gradient(circle at 75% 50%,rgba(25,167,230,.18),transparent 42%),#040b16; border-block:1px solid var(--line); overflow:hidden; }
.research-copy { max-width:570px; }
.research .primary-button { margin-top:20px; }
.signal { width:min(420px,70vw); aspect-ratio:1; position:relative; margin:auto; border:1px solid rgba(100,216,255,.25); border-radius:50%; box-shadow:0 0 90px rgba(32,144,247,.12),inset 0 0 80px rgba(31,76,211,.18); }
.signal::before,.signal::after,.signal span,.signal i,.signal b { content:""; position:absolute; border-radius:50%; inset:12%; border:1px solid rgba(124,117,255,.32); }
.signal::after { inset:27%; border-color:rgba(82,224,255,.6); box-shadow:0 0 45px rgba(64,212,255,.25); }
.signal span { inset:41%; background:radial-gradient(circle,white 0 2%,#56deff 7%,#6045d5 32%,transparent 70%); border:0; box-shadow:0 0 50px #3b6cff; }
.signal i { inset:18% 48%; transform:rotate(45deg); }
.signal b { inset:48% 18%; transform:rotate(-25deg); }
.compact { text-align:center; margin-inline:auto; }
.principle-list { display:grid; grid-template-columns:repeat(5,1fr); border:1px solid var(--line); }
.principle-list div { padding:32px 18px; display:flex; flex-direction:column; gap:20px; text-align:center; border-right:1px solid var(--line); color:#b5c8dd; text-transform:uppercase; letter-spacing:.08em; font-size:.65rem; }
.principle-list div:last-child { border:0; }
.principle-list b { color:var(--violet); font:300 2rem "Exo 2",sans-serif; }
.contact { text-align:center; padding-block:150px; background:radial-gradient(circle at center,rgba(27,102,170,.2),transparent 45%); }
.contact h2,.contact>p { margin-inline:auto; }
.contact .primary-button { margin-top:25px; }
.contact-message { min-height:26px; color:var(--cyan)!important; }
footer { min-height:90px; padding:30px clamp(22px,5vw,74px); border-top:1px solid var(--line); display:flex; justify-content:space-between; align-items:center; color:#66809e; text-transform:uppercase; letter-spacing:.12em; font-size:.6rem; }
@media(max-width:900px){.menu-button{display:block}nav{position:absolute;top:70px;right:22px;padding:22px;min-width:210px;flex-direction:column;align-items:stretch;background:rgba(3,11,24,.97);border:1px solid var(--line);display:none}nav.open{display:flex}.capability-grid{grid-template-columns:repeat(2,1fr)}.research{grid-template-columns:1fr;gap:70px}.principle-list{grid-template-columns:1fr}.principle-list div{border-right:0;border-bottom:1px solid var(--line)}}
@media(max-width:620px){.brand{font-size:.65rem}.hero{min-height:82svh}.hero>img{object-fit:contain;object-position:center 25%}.hero-shade{background:linear-gradient(180deg,transparent 30%,rgba(1,5,13,.2) 55%,rgba(1,5,13,1) 83%)}.hero-actions{margin:0 20px 38px}.hero-actions>div{flex-direction:column;gap:18px}.scroll-cue{display:none}.section{padding-block:85px}.capability-grid{grid-template-columns:1fr}.research{padding-block:90px}.signal{width:min(340px,85vw)}footer{flex-direction:column;gap:12px;text-align:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
