:root{
  --bg:#050b17; --bg2:#07162a; --panel:#071b34; --panel2:#0a2546;
  --text:#f7fbff; --muted:#b8c7dc; --soft:#e1ecfb;
  --blue:#1183ff; --blue2:#25b7ff; --red:#ff4055;
  --green:#59e6b5; --gold:#ffd36b; --line:rgba(109,173,255,.22); --line2:rgba(255,255,255,.12);
  --shadow:0 24px 80px rgba(0,0,0,.45); --radius:18px; --max:1540px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0; font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at 85% 18%, rgba(19,114,255,.23), transparent 34%),
    radial-gradient(circle at 8% 58%, rgba(255,64,85,.09), transparent 30%),
    linear-gradient(180deg,#020712 0%,#061529 54%,#07162a 100%);
}
body:before{
  content:""; position:fixed; inset:0; z-index:-2;
  background-image:linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size:42px 42px; mask-image:linear-gradient(180deg,#000 0%,transparent 74%);
}
body:after{
  content:""; position:fixed; inset:0; z-index:-1;
  background:radial-gradient(circle at 80% 36%, rgba(37,183,255,.12), transparent 32%),radial-gradient(circle at 30% 78%, rgba(17,131,255,.09), transparent 38%);
  pointer-events:none;
}
a{color:inherit}
.skip-link{position:absolute; left:-999px; top:auto; background:#fff; color:#001c36; padding:10px 14px; z-index:99}
.skip-link:focus{left:12px; top:12px}
.site-header{
  position:sticky; top:0; z-index:10; min-height:82px;
  display:flex; align-items:center; justify-content:space-between; gap:24px;
  padding:0 clamp(22px,4vw,64px); background:rgba(3,9,20,.9);
  backdrop-filter:blur(18px); border-bottom:1px solid var(--line);
}
.brand{display:flex; align-items:center; gap:14px; text-decoration:none; flex:0 0 auto}
.brand img{width:46px;height:46px}.brand strong{display:block;font-size:28px;letter-spacing:.03em;line-height:.82}.brand small{display:block;text-align:right;font-size:14px;letter-spacing:.08em}
.nav{display:flex; gap:22px; align-items:center; color:#dbe8f7; font-weight:700}
.nav a{text-decoration:none;opacity:.9;padding:29px 0 26px;border-bottom:2px solid transparent}
.nav a:hover,.nav a.active{color:var(--blue2);border-bottom-color:var(--blue)}
.nav-cta{text-decoration:none;background:linear-gradient(135deg,var(--blue),#0054d8);padding:15px 22px;border-radius:8px;font-weight:900;box-shadow:0 14px 32px rgba(17,131,255,.28);white-space:nowrap}
.menu-button{display:none}
main{overflow:hidden}
.hero{padding:54px clamp(22px,5.2vw,86px) 68px;border-bottom:1px solid var(--line)}
.hero-grid{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:.82fr 1.05fr;align-items:center;gap:55px}
.eyebrow{color:var(--blue2);text-transform:uppercase;letter-spacing:.18em;font-weight:950;font-size:15px}
.eyebrow span{color:var(--red);font-size:24px;margin-right:10px}
h1{font-size:clamp(52px,7vw,92px);line-height:1.08;letter-spacing:-.055em;margin:24px 0}
h1 em{font-style:normal;color:var(--blue)}
.lead{color:#e0ecfb;font-size:clamp(18px,1.5vw,22px);line-height:1.55;max-width:720px}
.hero-actions{display:flex;gap:18px;margin-top:36px;flex-wrap:wrap}
.button{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-width:198px;padding:17px 24px;border-radius:8px;text-decoration:none;font-weight:900;font-size:16px;border:1px solid transparent}
.button.primary{background:linear-gradient(135deg,var(--blue),#005ee7);box-shadow:0 16px 40px rgba(17,131,255,.3)}
.button.secondary{border-color:rgba(180,214,255,.35);background:rgba(255,255,255,.035)}
.button.ghost{border-color:rgba(255,255,255,.2);background:transparent}
.hero-art{position:relative;border-radius:2px;box-shadow:var(--shadow);background:linear-gradient(135deg,rgba(255,255,255,.05),rgba(255,255,255,.015));overflow:hidden}
.hero-art img{display:block;width:100%;height:auto}
.badge-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.badge{border:1px solid var(--line);border-radius:999px;padding:8px 12px;color:#dcecff;background:rgba(255,255,255,.035);font-weight:750;font-size:13px}
.badge.gold{border-color:rgba(255,211,107,.35);color:#ffe3a2}
.cards-strip{max-width:var(--max);margin:0 auto;padding:48px clamp(22px,5.2vw,86px) 24px;display:grid;grid-template-columns:repeat(7,1fr);gap:12px}
.capability{min-height:220px;padding:26px 20px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg,rgba(12,41,78,.9),rgba(6,21,43,.92));text-align:center;box-shadow:0 20px 50px rgba(0,0,0,.18)}
.capability .icon{width:66px;height:66px;margin:0 auto 18px;display:grid;place-items:center;border:1px solid rgba(37,183,255,.55);border-radius:50%;color:#f4fbff;font-size:24px;font-weight:950;box-shadow:0 0 30px rgba(17,131,255,.18), inset 0 0 24px rgba(17,131,255,.16)}
.capability.accent-red .icon{border-color:rgba(255,64,85,.62);box-shadow:0 0 26px rgba(255,64,85,.18),inset 0 0 22px rgba(255,64,85,.12)}
.capability h3{margin:0 0 10px;font-size:20px}.capability p{margin:0;color:var(--muted);line-height:1.45;font-size:15px}
.section{max-width:var(--max);margin:0 auto;padding:78px clamp(22px,5.2vw,86px)}
.section.narrow{max-width:1040px}.section.center{text-align:center}
.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:50px;align-items:start}
h2{font-size:clamp(36px,4.5vw,58px);line-height:1.08;letter-spacing:-.035em;margin:14px 0 22px}
h3{line-height:1.15}.section p{color:var(--muted);font-size:18px;line-height:1.62}
.service-list,.stack-list{display:grid;gap:14px}
.service-list div,.stack-list div,.feature-card,.notice-card{border:1px solid var(--line);border-radius:16px;padding:22px;background:rgba(255,255,255,.035)}
.service-list strong,.stack-list strong{display:block;font-size:20px;margin-bottom:7px}.service-list span,.stack-list span{color:var(--muted);line-height:1.5}
.security-panel{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--line);border-radius:18px;background:linear-gradient(135deg,rgba(8,33,65,.84),rgba(5,16,34,.84));padding:0;overflow:hidden}
.mini-card{padding:30px;border-right:1px solid var(--line)}.mini-card:last-child{border-right:0}.mini-card h3{font-size:21px;margin:0 0 10px}.mini-card p{font-size:16px;margin:0}
.page-hero{padding:74px clamp(22px,5.2vw,86px) 54px;border-bottom:1px solid var(--line)}
.page-hero-inner{max-width:var(--max);margin:0 auto}.page-hero h1{max-width:1120px}.page-hero .lead{max-width:900px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.feature-card h3,.notice-card h3{font-size:24px;margin:0 0 10px}.feature-card p,.notice-card p{font-size:17px;margin:0}
.statement{border:1px solid var(--line);border-radius:22px;background:linear-gradient(135deg,rgba(17,131,255,.12),rgba(255,255,255,.03));padding:38px}.statement strong{color:#fff}
.portal-preview{border:1px solid rgba(89,230,181,.28);background:linear-gradient(135deg,rgba(89,230,181,.09),rgba(17,131,255,.06));border-radius:22px;padding:38px}
.timeline{counter-reset:item;display:grid;gap:14px}
.timeline div{position:relative;padding:22px 22px 22px 70px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.035)}
.timeline div:before{counter-increment:item;content:counter(item);position:absolute;left:20px;top:20px;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--blue);font-weight:950}
.metric-band{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.metric{padding:24px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.035)}
.metric strong{font-size:26px;display:block}.metric span{display:block;color:var(--muted);margin-top:8px;line-height:1.4}
.boundary-list{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.boundary-list div{border:1px solid rgba(255,64,85,.22);border-radius:16px;padding:22px;background:rgba(255,64,85,.04)}
.legal-copy{max-width:980px}.legal-copy h2{font-size:34px;margin-top:46px}.legal-copy p,.legal-copy li{color:var(--muted);font-size:17px;line-height:1.68}.legal-copy ul{padding-left:22px}
.contact-card{border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.035);padding:30px}
.contact-card p{display:flex;justify-content:space-between;gap:20px;margin:0;padding:16px 0;border-bottom:1px solid var(--line)}.contact-card p:last-child{border-bottom:0}.contact-card a{color:#fff;text-decoration:none}
.footer{border-top:1px solid var(--line);padding:38px clamp(22px,4vw,64px);background:rgba(1,6,14,.7)}
.footer-inner{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:1.2fr .8fr .8fr .8fr;gap:30px}
.footer a{text-decoration:none;color:var(--muted)}.footer a:hover{color:#fff}.footer h4{margin:0 0 14px}.footer p,.footer li,.legal{color:#9fb2cc;line-height:1.55}.footer ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.legal{max-width:var(--max);margin:28px auto 0;padding-top:20px;border-top:1px solid var(--line2);display:flex;justify-content:space-between;gap:20px}
@media (max-width:1160px){
  .nav,.nav-cta{display:none}.menu-button{display:block;background:transparent;color:white;border:1px solid var(--line);border-radius:8px;padding:8px 12px;font-size:22px}
  .nav.open{display:flex;position:absolute;top:82px;left:0;right:0;padding:20px clamp(22px,4vw,64px);background:rgba(3,9,20,.98);flex-direction:column;align-items:flex-start}
  .nav.open a{padding:8px 0}.hero-grid,.split{grid-template-columns:1fr}.cards-strip{grid-template-columns:repeat(2,1fr)}
  .security-panel,.grid-4,.grid-3,.grid-2,.footer-inner,.metric-band,.boundary-list{grid-template-columns:1fr}
  .mini-card{border-right:0;border-bottom:1px solid var(--line)}.mini-card:last-child{border-bottom:0}
}
@media (max-width:650px){
  .site-header{min-height:76px}.brand strong{font-size:21px}.brand img{width:40px;height:40px}h1{font-size:46px}
  .cards-strip{grid-template-columns:1fr}.hero{padding-top:34px}.contact-card p,.legal{display:block}
}


/* V6 contained additions */
.solution-pill-row{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:24px;
}
.solution-pill{
  border:1px solid var(--line);
  border-radius:999px;
  padding:10px 14px;
  color:#dcecff;
  background:rgba(255,255,255,.035);
  font-weight:800;
  font-size:14px;
}
.architecture-flow{
  display:grid;
  gap:14px;
}
.architecture-step{
  display:grid;
  grid-template-columns:88px 1fr;
  gap:22px;
  align-items:start;
  border:1px solid var(--line);
  border-radius:18px;
  padding:24px;
  background:linear-gradient(135deg,rgba(17,131,255,.08),rgba(255,255,255,.03));
}
.architecture-step .node{
  width:68px;
  height:68px;
  border-radius:50%;
  display:grid;
  place-items:center;
  border:1px solid rgba(37,183,255,.56);
  box-shadow:0 0 30px rgba(17,131,255,.16), inset 0 0 22px rgba(17,131,255,.12);
  font-weight:950;
  color:#fff;
}
.demo-intake{
  display:grid;
  gap:14px;
}
.demo-intake div{
  border:1px solid var(--line);
  border-radius:16px;
  padding:20px;
  background:rgba(255,255,255,.035);
}
.demo-intake strong{
  display:block;
  font-size:20px;
  margin-bottom:6px;
}
.demo-intake span{
  color:var(--muted);
  line-height:1.5;
}
@media (max-width:650px){
  .architecture-step{grid-template-columns:1fr}
}


/* V7 contained additions */
.capability-link{
  color:inherit;
  text-decoration:none;
  display:block;
}
.capability-link .capability{
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.capability-link:hover .capability,
.capability-link:focus-visible .capability{
  transform:translateY(-6px);
  border-color:rgba(37,183,255,.62);
  box-shadow:0 24px 70px rgba(17,131,255,.18);
  background:linear-gradient(180deg,rgba(14,50,95,.94),rgba(6,21,43,.94));
}
.anchor-target{
  scroll-margin-top:110px;
}
.capability-map{
  display:grid;
  grid-template-columns:repeat(7,1fr);
  gap:12px;
  margin-top:30px;
}
.capability-map a{
  border:1px solid var(--line);
  border-radius:16px;
  padding:18px;
  text-decoration:none;
  background:rgba(255,255,255,.035);
  color:#fff;
  font-weight:900;
}
.capability-map a span{
  display:block;
  color:var(--muted);
  font-weight:650;
  margin-top:6px;
  line-height:1.4;
  font-size:14px;
}
.portal-sitemap-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}
.portal-module{
  border:1px solid var(--line);
  border-radius:18px;
  padding:24px;
  background:linear-gradient(180deg,rgba(12,41,78,.88),rgba(6,21,43,.9));
}
.portal-module h3{
  margin:0 0 10px;
  font-size:23px;
}
.portal-module p{
  margin:0 0 16px;
  font-size:16px;
}
.portal-module ul{
  margin:0;
  padding-left:19px;
  color:var(--muted);
  line-height:1.65;
}
.portal-domain-callout{
  border:1px solid rgba(89,230,181,.34);
  border-radius:22px;
  padding:34px;
  background:linear-gradient(135deg,rgba(89,230,181,.09),rgba(17,131,255,.06));
}
.portal-domain-callout code{
  background:rgba(0,0,0,.22);
  color:#fff;
  border:1px solid var(--line);
  padding:4px 8px;
  border-radius:8px;
}
@media (max-width:1160px){
  .capability-map,.portal-sitemap-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:650px){
  .capability-map,.portal-sitemap-grid{grid-template-columns:1fr}
}


/* V8 launch hardening additions */
.checklist{
  display:grid;
  gap:14px;
}
.check-item{
  border:1px solid var(--line);
  border-radius:16px;
  padding:20px 22px;
  background:rgba(255,255,255,.035);
  display:grid;
  grid-template-columns:36px 1fr;
  gap:16px;
  align-items:start;
}
.check-item .check{
  width:28px;
  height:28px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,var(--blue),#005ee7);
  font-weight:950;
}
.check-item strong{
  display:block;
  font-size:20px;
  margin-bottom:6px;
}
.check-item span{
  color:var(--muted);
  line-height:1.5;
}
.domain-table{
  border:1px solid var(--line);
  border-radius:18px;
  overflow:hidden;
  background:rgba(255,255,255,.035);
}
.domain-row{
  display:grid;
  grid-template-columns:.8fr 1.2fr 1.2fr;
  gap:0;
  border-bottom:1px solid var(--line);
}
.domain-row:last-child{border-bottom:0}
.domain-row div{
  padding:18px;
  border-right:1px solid var(--line);
}
.domain-row div:last-child{border-right:0}
.domain-row.header{
  background:rgba(17,131,255,.13);
  font-weight:950;
}
.domain-row code{
  background:rgba(0,0,0,.24);
  border:1px solid var(--line);
  border-radius:8px;
  padding:4px 8px;
  color:#fff;
}
.launch-note{
  border:1px solid rgba(255,211,107,.34);
  background:linear-gradient(135deg,rgba(255,211,107,.08),rgba(17,131,255,.05));
  border-radius:22px;
  padding:34px;
}
@media (max-width:760px){
  .domain-row{grid-template-columns:1fr}
  .domain-row div{border-right:0;border-bottom:1px solid var(--line)}
  .domain-row div:last-child{border-bottom:0}
}
