:root{
  --bg:#070707;--panel:#0d0d0d;--line:#242424;--text:#f2f2f0;--muted:#8f8f8a;
  --stroke:#6d7c86;--stroke-dim:#464f57;--fill:#191d21;
  --max:1400px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Arial,sans-serif;line-height:1.45;-webkit-font-smoothing:antialiased}
body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.035;background-image:linear-gradient(rgba(255,255,255,.6) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.6) 1px,transparent 1px);background-size:60px 60px;z-index:10}
a{color:inherit;text-decoration:none}
img,svg{display:block;max-width:100%}

/* ---------- NAV ---------- */
.nav{height:74px;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 34px;gap:32px;position:fixed;top:0;left:0;right:0;z-index:20;background:rgba(7,7,7,.86);backdrop-filter:blur(14px);transition:background .25s}
.brand{display:flex;align-items:center;gap:10px;font-weight:800;letter-spacing:2px;font-size:21px;min-width:260px}
.brand small{display:block;font:9px "Space Mono",monospace;letter-spacing:4px;margin-top:-2px}
.brand-mark{width:31px;height:31px}
.desktop-nav{display:flex;gap:34px;margin:auto;font:11px "Space Mono",monospace;letter-spacing:.8px}
.desktop-nav a,.nav-cta,.text-link,footer a{transition:opacity .2s}
.desktop-nav a:hover,.nav-cta:hover,.text-link:hover,footer a:hover{opacity:.55}
.nav-cta{border:1px solid #555;padding:12px 18px;font:11px "Space Mono",monospace;white-space:nowrap}
.menu-btn{display:none;background:none;border:0;color:#fff;font-size:22px;cursor:pointer;padding:6px 4px}
.mobile-nav{display:none;position:fixed;top:74px;left:0;right:0;z-index:19;background:rgba(9,9,9,.98);border-bottom:1px solid var(--line);flex-direction:column;padding:8px 22px 22px}
.mobile-nav a{padding:15px 0;border-bottom:1px solid #191919;font:11px "Space Mono",monospace;letter-spacing:1px}
.mobile-nav.open{display:flex}

/* ---------- SVG TECHNICAL DRAWING ---------- */
.surf{fill:var(--fill);stroke:var(--stroke);stroke-width:1.1}
.body{fill:#14181c;stroke:var(--stroke);stroke-width:1.3}
.bay{fill:none;stroke:var(--stroke);stroke-width:1;stroke-dasharray:4 3}
.disc{fill:none;stroke:var(--stroke-dim);stroke-width:1;stroke-dasharray:3 4}
.prop{stroke:var(--stroke);stroke-width:1.6;stroke-linecap:round}
.line2{stroke:var(--stroke-dim);stroke-width:.9;fill:none}
.cx line{stroke:#2e353b;stroke-width:.8;stroke-dasharray:9 4 2 4}
.dim line{stroke:#4a545c;stroke-width:.8}
.dim text,.tag{fill:#63707a;font:9px "Space Mono",monospace;letter-spacing:1.4px}
.rule{stroke:#1f2429;stroke-width:1}
.bay-outline{fill:none;stroke:var(--stroke);stroke-width:1.2}
.bay-inner{fill:none;stroke:var(--stroke-dim);stroke-width:1;stroke-dasharray:4 3}
.pin{fill:none;stroke:var(--stroke);stroke-width:1.1}
.conn rect{fill:var(--fill);stroke:var(--stroke);stroke-width:1}
.tree rect{fill:none;stroke:var(--stroke-dim);stroke-width:1}
.tree line{stroke:var(--stroke-dim);stroke-width:.9}
.tree rect.fill{fill:#1e252a;stroke:var(--stroke)}

/* ---------- HERO ---------- */
.hero{min-height:760px;height:100vh;max-height:1000px;position:relative;overflow:hidden;padding:145px max(34px,calc((100vw - var(--max))/2)) 60px;display:flex;align-items:center}
.hero-field{position:absolute;inset:0;background:
  radial-gradient(ellipse 70% 60% at 74% 46%, rgba(70,90,105,.16), transparent 70%),
  radial-gradient(ellipse 90% 70% at 20% 30%, rgba(30,36,42,.5), transparent 70%),
  linear-gradient(160deg,#0a0c0e,#060708 60%)}
.hero-vignette{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,7,7,.97) 0%,rgba(7,7,7,.78) 42%,rgba(7,7,7,.1) 100%),linear-gradient(0deg,rgba(7,7,7,.9),transparent 28%,transparent 78%,rgba(7,7,7,.45))}
.hero-plan{position:absolute;right:-3%;top:50%;transform:translateY(-50%);width:62%;max-width:960px;opacity:1;z-index:1}
.planview{width:100%;height:auto}
.hero-copy{position:relative;z-index:3;max-width:650px}
.eyebrow,.mono,.product-meta{font:11px "Space Mono",monospace;letter-spacing:1.5px}
.eyebrow{color:#aaa;margin:0 0 22px}
.hero h1{font-size:clamp(48px,6vw,92px);line-height:.94;letter-spacing:-3px;margin:0 0 28px;font-weight:800}
.lede{font-size:18px;color:#c7c7c2;max-width:520px}
.hero-actions{display:flex;align-items:center;gap:34px;margin-top:34px}
.button{display:inline-flex;align-items:center;gap:22px;border:1px solid #555;padding:15px 20px;font:11px "Space Mono",monospace;transition:background .2s,color .2s}
.button:hover{background:#f2f2f0;color:#090909;border-color:#f2f2f0}
.button-light{background:#f2f2f0;color:#090909;border-color:#f2f2f0}
.button-light:hover{background:transparent;color:#f2f2f0;border-color:#555}
.text-link{font:11px "Space Mono",monospace;letter-spacing:.4px}
.text-link span{margin-left:12px}
.hero-specs{position:absolute;right:max(34px,calc((100vw - var(--max))/2));bottom:82px;z-index:3;width:165px}
.hero-specs div{border-top:1px solid #555;padding:12px 0}
.hero-specs b,.hero-specs span{display:block}
.hero-specs b{font:12px "Space Mono",monospace}
.hero-specs span{font:9px "Space Mono",monospace;color:#888;margin-top:4px}
.hero-caption{position:absolute;bottom:38px;left:max(34px,calc((100vw - var(--max))/2));z-index:3;font:10px "Space Mono",monospace;color:#888}
.hero-caption span{color:#ddd;margin-right:8px}

/* ---------- SECTIONS ---------- */
.section,.feature,.mission,.careers,.contact{max-width:var(--max);margin:auto;padding:100px 34px}
.section-head{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:18px;margin-bottom:34px}
.muted{color:#666}

/* ---------- CARDS ---------- */
.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.product-card{background:var(--panel);border:1px solid var(--line);padding:0 26px 28px;min-height:490px;transition:border-color .25s}
.product-card:hover{border-color:#3a3a3a}
.product-image{height:235px;margin:0 -26px 24px;position:relative;overflow:hidden;background:linear-gradient(150deg,#101315,#080909);border-bottom:1px solid #1c1c1c;display:flex;align-items:center;justify-content:center}
.card-svg{width:100%;height:100%;padding:10px}
.product-card h2{font-size:29px;letter-spacing:-1px;margin:5px 0}
.product-kicker{font:11px "Space Mono",monospace;color:#aaa}
.product-card>p:not(.product-kicker){color:#999;font-size:14px;max-width:360px}
.product-card>a{display:inline-block;margin-top:20px;font:10px "Space Mono",monospace}

/* ---------- FEATURE ---------- */
.feature{display:grid;grid-template-columns:1.05fr .95fr;gap:80px;align-items:center;border-top:1px solid var(--line)}
.feature.reverse{grid-template-columns:.95fr 1.05fr}
.feature-visual{border:1px solid var(--line);background:linear-gradient(150deg,#0e1113,#070808);padding:30px}
.threeview{width:100%;height:auto}
.feature h2{font-size:clamp(44px,5vw,70px);letter-spacing:-3px;margin:0}
.feature h3{font:14px "Space Mono",monospace;letter-spacing:1px;color:#bbb}
.feature-copy>p:not(.eyebrow){color:#999;max-width:520px}
.spec-row{display:flex;flex-wrap:wrap;gap:30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;margin:28px 0}
.spec-row b{display:block;font:15px "Space Mono",monospace}
.spec-row small{font:8px "Space Mono",monospace;color:#666}
.capability-lines{display:flex;flex-wrap:wrap;gap:8px;margin:28px 0}
.capability-lines span{border:1px solid #333;padding:8px 11px;font:9px "Space Mono",monospace;color:#aaa}

/* ---------- PROCESS PANEL ---------- */
.process-panel{border:1px solid #2b2b2b;background:linear-gradient(160deg,#0f1214,#070808);padding:24px;font:10px "Space Mono",monospace;color:#8a949c}
.panel-top{border-bottom:1px solid #23282c;padding-bottom:14px;letter-spacing:1.5px;color:#c9d1d6;display:flex;justify-content:space-between}
.panel-top span{color:#6a747c}
.process{list-style:none;margin:0;padding:22px 0 6px}
.process li{display:grid;grid-template-columns:34px 1fr;gap:4px 14px;padding:16px 0;border-bottom:1px solid #191d20}
.process li:last-child{border-bottom:0}
.process i{grid-row:span 2;font-style:normal;color:#4d565d;font-size:12px;padding-top:2px}
.process b{color:#e4e8ea;letter-spacing:1.2px;font-size:11px}
.process span{color:#767f86;font-family:Inter,sans-serif;font-size:12.5px;line-height:1.4}
.panel-foot{border-top:1px solid #23282c;padding-top:14px;display:flex;justify-content:space-between;letter-spacing:1.5px}
.panel-foot b{color:#c9d1d6}

/* ---------- MISSION ---------- */
.mission{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:70px}
.mission h2,.careers h2,.contact h2{font-size:clamp(38px,4vw,62px);line-height:.98;letter-spacing:-2px;margin:0 0 25px}
.mission-intro>p:not(.eyebrow){color:#999;max-width:560px}
.principles{display:grid;grid-template-columns:1fr 1fr;border-left:1px solid var(--line)}
.principles div{padding:10px 30px 25px;border-bottom:1px solid var(--line);border-right:1px solid var(--line)}
.principles strong{display:block;font-size:30px;font-weight:400;margin-bottom:25px}
.principles b{font:11px "Space Mono",monospace}
.principles p{font-size:13px;color:#777}

/* ---------- CAREERS / CONTACT ---------- */
.careers{border-top:1px solid var(--line)}
.careers>p:not(.eyebrow){color:#999;max-width:600px;margin-bottom:30px}
.contact{border:1px solid var(--line);margin-top:40px;display:flex;justify-content:space-between;align-items:end;gap:40px}
.contact-info{display:flex;flex-direction:column;gap:14px;font:11px "Space Mono",monospace;color:#aaa}
.contact-info a:hover{color:#fff}
footer{max-width:var(--max);margin:auto;padding:35px 34px;display:flex;justify-content:space-between;border-top:1px solid var(--line);font:9px "Space Mono",monospace;color:#666}

/* ---------- REVEAL ---------- */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .8s ease,transform .8s ease}
.reveal.visible{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}

/* ---------- RESPONSIVE ---------- */
@media(max-width:1080px){
  .hero-plan{width:74%;right:-14%;opacity:.55}
}
@media(max-width:900px){
  .desktop-nav{display:none}.nav{padding:0 20px}.brand{min-width:0}.nav-cta{margin-left:auto}.menu-btn{display:block}
  .hero{padding:130px 22px 50px;min-height:700px;height:auto}
  .hero h1{font-size:52px}.hero-specs{display:none}.hero-caption{left:22px}
  .hero-plan{width:120%;right:-30%;top:auto;bottom:6%;transform:none;opacity:.32}
  .section,.feature,.mission,.careers,.contact{padding:75px 22px}
  .product-grid,.feature,.feature.reverse,.mission{grid-template-columns:1fr}
  .feature{gap:44px}
  .product-card{min-height:0;padding-bottom:25px}.product-image{height:210px}
  .feature-visual{padding:18px}
  .principles{border-left:0}
  .contact{align-items:start;flex-direction:column}
  footer{padding:28px 22px;gap:15px;flex-direction:column}
}
@media(max-width:560px){
  .nav-cta{display:none}
  .hero h1{font-size:42px;letter-spacing:-2px}
  .hero-actions{align-items:flex-start;flex-direction:column;gap:20px}
  .feature h2{font-size:46px}
  .principles{grid-template-columns:1fr}
  .principles div{border-left:1px solid var(--line)}
  .spec-row{gap:18px}
}
