:root { --black:#05050a; --panel:#0b0b14; --panel2:#111120; --white:#f5f6ff; --muted:#9394a7; --indigo:#7465ff; --lime:#c7ff5e; --line:rgba(157,151,255,.22); --sans:Inter,"Yu Gothic","Hiragino Kaku Gothic ProN",Arial,sans-serif; --mono:"Courier New","Yu Gothic",monospace; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; background:var(--black); }
body { margin:0; overflow-x:hidden; background:var(--black); color:var(--white); font-family:var(--sans); line-height:1.55; }
a { color:inherit; }
a:focus-visible,button:focus-visible { outline:2px solid var(--lime); outline-offset:5px; box-shadow:0 0 24px rgba(199,255,94,.35); }
.ambient { position:fixed; z-index:-1; inset:0; background:radial-gradient(circle at 70% 14%,rgba(76,55,255,.2),transparent 32%),radial-gradient(circle at 12% 72%,rgba(89,41,255,.1),transparent 28%); pointer-events:none; }
.noa-header { position:fixed; z-index:60; top:0; left:0; display:grid; grid-template-columns:auto 1fr auto; gap:50px; align-items:center; width:100%; min-height:76px; padding:0 clamp(18px,4vw,64px); border-bottom:1px solid var(--line); background:rgba(5,5,10,.78); backdrop-filter:blur(16px); }
.noa-logo { display:flex; gap:10px; align-items:center; font-size:.9rem; font-weight:800; letter-spacing:.16em; text-decoration:none; }
.noa-logo i { display:block; width:16px; aspect-ratio:1; border:1px solid var(--lime); border-radius:50%; box-shadow:inset 0 0 9px var(--lime),0 0 12px rgba(199,255,94,.5); }
.noa-nav { display:flex; gap:clamp(15px,2.4vw,36px); justify-content:center; }
.noa-nav a { color:#c2c2d2; font-size:.64rem; font-weight:600; text-decoration:none; }
.noa-nav a:hover { color:var(--lime); }
.header-cta { padding:10px 15px; border:1px solid var(--line); border-radius:4px; font-size:.63rem; font-weight:700; text-decoration:none; }
.menu-toggle { display:none; border:1px solid var(--line); background:transparent; color:#fff; font:600 .6rem var(--sans); cursor:pointer; }
.hero { display:grid; grid-template-columns:.9fr 1.1fr; min-height:100svh; padding-top:76px; }
.hero-copy { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding:clamp(70px,7vw,120px) clamp(20px,6vw,95px); }
.concept-label,.section-label,.section-heading>p:first-child { margin:0; color:var(--lime); font:700 .58rem var(--mono); letter-spacing:.12em; text-transform:uppercase; }
.concept-label { padding:7px 11px; border:1px solid rgba(199,255,94,.35); border-radius:3px; background:rgba(199,255,94,.03); }
.eyebrow { margin:10vh 0 28px; color:#b5b5c7; font:600 .63rem var(--mono); letter-spacing:.06em; }.eyebrow span { margin-right:10px; padding:5px 7px; border-radius:3px; background:var(--indigo); color:#fff; }
.hero h1 { margin:0; font-size:clamp(3.4rem,6.3vw,7rem); line-height:.97; letter-spacing:-.065em; }.hero h1 em { color:#9b91ff; font-style:normal; }
.hero-copy>p:not(.concept-label,.eyebrow,.microcopy) { max-width:650px; margin:34px 0; color:#a9a9bc; font-size:.87rem; }
.hero-actions { display:flex; gap:28px; align-items:center; }
.primary-button { display:inline-flex; gap:30px; justify-content:space-between; align-items:center; min-width:210px; padding:15px 18px; border:1px solid var(--indigo); border-radius:4px; background:var(--indigo); box-shadow:0 0 30px rgba(116,101,255,.18); font-size:.68rem; font-weight:750; text-decoration:none; transition:background 180ms ease,box-shadow 180ms ease,transform 180ms ease; }.primary-button:hover { background:#887cff; box-shadow:0 0 38px rgba(116,101,255,.4); transform:translateY(-2px); }
.ghost-link { color:#cacadb; font-size:.66rem; text-underline-offset:5px; }
.microcopy { margin:18px 0 0; color:#727287; font:400 .52rem var(--mono); }
.system-stage { position:relative; overflow:hidden; min-height:750px; border-left:1px solid var(--line); background:radial-gradient(circle at 50% 50%,rgba(76,58,255,.22),transparent 30%),linear-gradient(135deg,rgba(255,255,255,.018),transparent); }
.stage-grid { position:absolute; inset:0; opacity:.26; background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px); background-size:58px 58px; mask-image:radial-gradient(circle,#000,transparent 70%); }
.system-orbit { position:absolute; top:50%; left:50%; border:1px solid rgba(126,111,255,.28); border-radius:50%; transform:translate(-50%,-50%); }.orbit--outer { width:65%; aspect-ratio:1; animation:rotateOrbit 35s linear infinite; }.orbit--outer::before,.orbit--outer::after { position:absolute; width:7px; aspect-ratio:1; border-radius:50%; background:var(--lime); box-shadow:0 0 15px var(--lime); content:""; }.orbit--outer::before { top:12%; left:14%; }.orbit--outer::after { right:-4px; bottom:50%; }.orbit--inner { width:40%; aspect-ratio:1; border-style:dashed; animation:rotateOrbit 22s linear infinite reverse; }
.system-core { position:absolute; top:50%; left:50%; display:flex; flex-direction:column; justify-content:center; align-items:center; width:180px; aspect-ratio:1; border:1px solid #8679ff; border-radius:50%; background:radial-gradient(circle,rgba(116,101,255,.52),rgba(11,11,20,.88) 65%); box-shadow:0 0 90px rgba(116,101,255,.5),inset 0 0 35px rgba(116,101,255,.35); transform:translate(-50%,-50%); }.system-core i { width:8px; aspect-ratio:1; margin-bottom:13px; border-radius:50%; background:var(--lime); box-shadow:0 0 16px var(--lime); animation:pulse 1.8s ease-in-out infinite; }.system-core strong { font-size:1.7rem; letter-spacing:.12em; }.system-core span { margin-top:7px; color:#c5c1ff; font:.48rem/1.3 var(--mono); letter-spacing:.13em; text-align:center; }
.system-node { position:absolute; display:grid; grid-template-columns:auto 1fr; gap:4px 9px; align-items:center; min-width:120px; padding:10px 12px; border:1px solid var(--line); border-radius:4px; background:rgba(11,11,20,.82); backdrop-filter:blur(8px); }.system-node i { grid-row:span 2; width:6px; aspect-ratio:1; border-radius:50%; background:var(--lime); }.system-node span { font:700 .58rem var(--mono); }.system-node b { color:var(--muted); font:400 .45rem var(--mono); }.node--one { top:18%; left:14%; }.node--two { top:22%; right:8%; }.node--three { bottom:18%; left:10%; }.node--four { right:12%; bottom:15%; }
.system-log { position:absolute; right:5%; bottom:5%; width:min(300px,40%); padding:13px; border-left:2px solid var(--lime); background:rgba(5,5,10,.82); font-family:var(--mono); }.system-log span,.system-log i { color:var(--muted); font-size:.46rem; font-style:normal; }.system-log p { margin:5px 0; font-size:.57rem; }.system-log i { color:var(--lime); }
.stage-caption { position:absolute; top:25px; right:30px; color:#77778c; font:.48rem var(--mono); letter-spacing:.1em; text-transform:uppercase; }
.signal-strip { display:grid; grid-template-columns:repeat(3,1fr); border-block:1px solid var(--line); background:#08080f; }.signal-strip p { margin:0; padding:18px clamp(18px,4vw,65px); border-right:1px solid var(--line); color:#9c9caf; font:600 .54rem var(--mono); letter-spacing:.07em; }.signal-strip p:last-child { border:0; }.signal-strip span { margin-right:13px; color:var(--lime); }
[data-reveal] { opacity:0; transform:translateY(34px); transition:opacity 750ms ease,transform 750ms cubic-bezier(.2,.7,0,1); }[data-reveal][data-visible] { opacity:1; transform:none; }
.platform,.control { padding:clamp(100px,12vw,180px) clamp(20px,6vw,95px); }
.section-heading { display:grid; grid-template-columns:.35fr 1fr .45fr; gap:5vw; align-items:start; margin-bottom:90px; }.section-heading h2 { margin:0; font-size:clamp(2.7rem,5.6vw,6rem); line-height:1.05; letter-spacing:-.06em; }.section-heading>p:last-child { margin:0; color:var(--muted); font-size:.8rem; }
.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:540px; padding:25px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); background:linear-gradient(150deg,rgba(255,255,255,.025),transparent); }.capability-grid article>span { color:var(--lime); font:.52rem var(--mono); }.capability-grid h3 { margin:35px 0 16px; font-size:2rem; letter-spacing:-.04em; }.capability-grid p { color:var(--muted); font-size:.75rem; }.capability-grid small { display:block; margin-top:35px; color:#727286; font:.48rem var(--mono); letter-spacing:.08em; }
.cap-icon { position:relative; width:150px; aspect-ratio:1; margin:45px auto; border:1px solid var(--line); border-radius:50%; }.cap-icon i { position:absolute; display:block; border-radius:50%; background:var(--indigo); box-shadow:0 0 18px rgba(116,101,255,.6); }.cap-icon--observe i:nth-child(1) { top:20%; left:25%; width:16px; aspect-ratio:1; }.cap-icon--observe i:nth-child(2) { right:17%; bottom:26%; width:9px; aspect-ratio:1; background:var(--lime); }.cap-icon--observe i:nth-child(3) { bottom:12%; left:22%; width:6px; aspect-ratio:1; }.cap-icon--reason::before,.cap-icon--reason::after { position:absolute; inset:28%; border:1px dashed var(--indigo); transform:rotate(45deg); content:""; }.cap-icon--reason::after { inset:40%; border-style:solid; background:var(--lime); box-shadow:0 0 20px var(--lime); }.cap-icon--act i { top:50%; left:18%; width:64%; height:1px; border-radius:0; }.cap-icon--act i:nth-child(2) { transform:rotate(45deg); }.cap-icon--act i:nth-child(3) { transform:rotate(-45deg); }
.how { display:grid; grid-template-columns:1.15fr .85fr; min-height:100svh; border-block:1px solid var(--line); background:#080811; }.workflow-demo { display:grid; place-items:center; padding:6vw; border-right:1px solid var(--line); background:radial-gradient(circle,rgba(116,101,255,.14),transparent 58%); }.workflow-window { width:100%; border:1px solid rgba(154,146,255,.3); border-radius:8px; background:#0d0d18; box-shadow:0 35px 100px rgba(0,0,0,.45); }.workflow-window>header { display:flex; gap:7px; align-items:center; padding:12px; border-bottom:1px solid var(--line); }.workflow-window>header i { width:6px; aspect-ratio:1; border-radius:50%; background:#444459; }.workflow-window>header span { margin-left:10px; color:var(--muted); font:.47rem var(--mono); }.workflow-window>header b { margin-left:auto; color:var(--lime); font:.45rem var(--mono); }.workflow-body { padding:22px; }.workflow-body aside { padding:15px; border:1px solid var(--line); background:#111122; }.workflow-body aside span,.workflow-body aside small { display:block; color:var(--muted); font:.45rem var(--mono); }.workflow-body aside strong { display:block; margin:8px 0; font-size:.85rem; }.workflow-steps { margin:20px 0; }.workflow-steps>div { display:grid; grid-template-columns:28px 1fr auto; gap:12px; align-items:center; padding:13px 0; border-bottom:1px solid var(--line); }.workflow-steps span,.workflow-steps b { color:var(--muted); font:.46rem var(--mono); }.workflow-steps p { margin:0; font-size:.62rem; }.workflow-steps b { color:var(--lime); }.workflow-steps .is-running { padding-inline:10px; background:rgba(116,101,255,.09); }.workflow-steps .is-running b { color:#a79fff; animation:blink 1.4s ease-in-out infinite; }.workflow-body footer { display:flex; justify-content:space-between; align-items:center; padding:13px; background:var(--lime); color:#111; }.workflow-body footer span { font:.47rem var(--mono); }.workflow-body footer strong { font-size:.74rem; }
.how-copy { display:flex; flex-direction:column; justify-content:center; padding:clamp(70px,8vw,130px) clamp(25px,5vw,80px); }.how-copy h2 { margin:35px 0 55px; font-size:clamp(2.5rem,4.5vw,4.7rem); line-height:1.08; letter-spacing:-.055em; }.how-copy ol { margin:0; padding:0; list-style:none; }.how-copy li { display:grid; grid-template-columns:38px 1fr; gap:20px; padding:20px 0; border-top:1px solid var(--line); }.how-copy li>span { color:var(--lime); font:.5rem var(--mono); }.how-copy h3 { margin:0 0 5px; font-size:1rem; }.how-copy li p { margin:0; color:var(--muted); font-size:.69rem; }
.control { background:#07070d; }.control-console { display:grid; grid-template-columns:180px 1fr 180px; overflow:hidden; border:1px solid var(--line); border-radius:7px; background:var(--panel); }.console-nav { display:flex; flex-direction:column; padding:18px; border-right:1px solid var(--line); }.console-nav span { margin-bottom:25px; color:var(--muted); font:.46rem var(--mono); }.console-nav button { padding:10px; border:0; border-radius:3px; background:transparent; color:#85859a; font:500 .56rem var(--sans); text-align:left; }.console-nav button:first-of-type { background:rgba(116,101,255,.15); color:#fff; }.console-main { padding:20px; }.permission { display:grid; grid-template-columns:1fr auto; gap:10px; padding:18px 0; border-bottom:1px solid var(--line); }.permission>span { font-size:.7rem; font-weight:700; }.permission>strong { color:#aaa1ff; font:.47rem var(--mono); }.permission>small { color:var(--muted); font:.47rem var(--mono); }.permission>i { position:relative; grid-column:1/-1; display:block; height:3px; background:#27273a; }.permission>i b { display:block; width:55%; height:100%; background:var(--indigo); box-shadow:0 0 12px var(--indigo); }.permission>i.level-high b { width:85%; background:var(--lime); }.permission>i.level-low b { width:20%; background:#747489; }.control-console>aside { padding:25px; border-left:1px solid var(--line); background:#0e0e1a; }.control-console>aside p { color:var(--muted); font:.45rem var(--mono); }.control-console>aside strong { display:block; margin-top:25px; font-size:2.7rem; letter-spacing:-.07em; }.control-console>aside span { color:var(--muted); font-size:.5rem; }.control-console>aside hr { margin:25px 0; border:0; border-top:1px solid var(--line); }.trust-row { display:grid; grid-template-columns:repeat(5,1fr); margin-top:30px; border-block:1px solid var(--line); }.trust-row span { padding:15px; border-right:1px solid var(--line); color:#a5a5b6; font:.46rem var(--mono); text-align:center; }.disclaimer { color:#66667a; font-size:.48rem; }
.plans { display:grid; grid-template-columns:1fr .7fr; gap:10vw; align-items:center; min-height:100svh; padding:clamp(90px,12vw,180px) clamp(20px,8vw,130px); background:linear-gradient(145deg,#0a0920,#05050a 58%); }.plan-card { padding:32px; border:1px solid #8174ff; border-radius:8px; background:linear-gradient(160deg,rgba(116,101,255,.18),rgba(11,11,20,.94)); box-shadow:0 30px 100px rgba(53,36,177,.18); }.plan-card>p { color:var(--lime); font:.52rem var(--mono); }.plan-card h3 { margin:35px 0; font-size:clamp(2rem,3.5vw,3.7rem); line-height:1; letter-spacing:-.06em; }.plan-card>div { display:flex; justify-content:space-between; padding:13px 0; border-top:1px solid var(--line); font-size:.6rem; }.plan-card>div span { color:var(--muted); }.plan-card .primary-button { width:100%; margin-top:35px; }.plan-card>small { display:block; margin-top:15px; color:var(--muted); font:.45rem var(--mono); text-align:center; }
.demo { position:relative; overflow:hidden; padding:clamp(110px,14vw,220px) 20px; text-align:center; }.demo h2 { margin:35px 0; font-size:clamp(4rem,10vw,11rem); line-height:.78; letter-spacing:-.085em; }.demo h2 em { color:transparent; font-style:normal; -webkit-text-stroke:1px #9890ff; }.demo>p:not(.section-label,.demo-feedback) { max-width:580px; margin:50px auto; color:var(--muted); font-size:.8rem; }.demo .primary-button { position:relative; z-index:2; }.demo-orb { position:absolute; top:50%; left:50%; width:min(80vw,900px); aspect-ratio:1; border:1px solid rgba(116,101,255,.22); border-radius:50%; transform:translate(-50%,-50%); }.demo-orb i { position:absolute; inset:30%; border-radius:50%; background:rgba(116,101,255,.16); filter:blur(30px); animation:pulse 4s ease-in-out infinite; }.demo-feedback { position:relative; z-index:2; max-width:640px; margin:35px auto 0; padding:14px; border:1px solid var(--line); background:rgba(5,5,10,.7); color:#c5c2e8; font-size:.65rem; }
.noa-footer { display:grid; grid-template-columns:auto 1fr 1fr auto; gap:35px; align-items:center; padding:34px clamp(18px,4vw,60px); border-top:1px solid var(--line); background:#05050a; }.noa-footer p,.noa-footer>a:last-child { margin:0; color:var(--muted); font-size:.5rem; }
@keyframes rotateOrbit { to { transform:translate(-50%,-50%) rotate(360deg); } }@keyframes pulse { 50% { opacity:.45; transform:scale(.88); } }@keyframes blink { 50% { opacity:.35; } }
@media (max-width:900px) {
  .noa-header { grid-template-columns:auto 1fr auto; }.menu-toggle { display:block; justify-self:end; padding:8px 10px; }.header-cta { display:none; }
  .noa-nav { position:fixed; inset:76px 0 auto; display:flex; flex-direction:column; gap:0; overflow:hidden; padding:20px; border-bottom:1px solid var(--line); background:#090911; opacity:0; visibility:hidden; pointer-events:none; transform:translateY(-140%); transition:transform 300ms ease,opacity 200ms ease,visibility 0s linear 300ms; }.noa-nav[data-open] { opacity:1; visibility:visible; pointer-events:auto; transform:none; transition-delay:0s; }.noa-nav a { padding:13px; border-bottom:1px solid var(--line); }
  .hero { grid-template-columns:1fr; }.hero-copy { min-height:85svh; }.system-stage { min-height:80svh; border-top:1px solid var(--line); border-left:0; }
  .section-heading { grid-template-columns:1fr; }.section-heading h2 { margin:25px 0; }.capability-grid { grid-template-columns:1fr; }.capability-grid article { min-height:420px; }
  .how,.plans { grid-template-columns:1fr; }.workflow-demo { min-height:75svh; border-right:0; border-bottom:1px solid var(--line); }.control-console { grid-template-columns:1fr; }.console-nav { display:none; }.control-console>aside { border-top:1px solid var(--line); border-left:0; }.trust-row { grid-template-columns:repeat(2,1fr); }
  .plan-card { max-width:600px; width:100%; margin:auto; }.noa-footer { grid-template-columns:auto 1fr; }
}
@media (max-width:540px) {
  .noa-header { min-height:66px; padding-inline:15px; }.noa-nav { inset:66px 0 auto; }
  .hero { padding-top:66px; }.hero-copy { min-height:90svh; padding:65px 19px; }.hero h1 { font-size:3.55rem; }.hero-actions { align-items:flex-start; flex-direction:column; gap:18px; }.system-stage { min-height:650px; }.system-core { width:130px; }.orbit--outer { width:88%; }.orbit--inner { width:58%; }.system-node { min-width:100px; padding:8px; }.node--one { top:15%; left:4%; }.node--two { top:22%; right:2%; }.node--three { bottom:20%; left:2%; }.node--four { right:3%; bottom:13%; }.system-log { width:56%; right:3%; }.signal-strip { grid-template-columns:1fr; }.signal-strip p { border-right:0; border-bottom:1px solid var(--line); }
  .platform,.control { padding-inline:19px; }.capability-grid article { min-height:440px; }.workflow-demo { min-height:600px; padding:20px; }.workflow-body { padding:12px; }.workflow-steps>div { grid-template-columns:24px 1fr; }.workflow-steps b { display:none; }.how-copy { padding:85px 20px; }.control-console { overflow:visible; }.trust-row { grid-template-columns:1fr; }.trust-row span { border-bottom:1px solid var(--line); }
  .plans { padding-inline:19px; }.demo h2 { font-size:4.1rem; }.noa-footer { grid-template-columns:1fr; }
}
.hero-copy { padding-block:clamp(52px,5vw,82px); }
.eyebrow { margin:4vh 0 18px; }
.hero h1 { font-size:clamp(3.2rem,4.5vw,5.5rem); }.hero h1 em { white-space:nowrap; }
.hero-copy>p:not(.concept-label,.eyebrow,.microcopy) { margin:22px 0 0; }
.hero-offer { width:min(100%,680px); margin-top:24px; padding:18px; border:1px solid rgba(157,151,255,.34); border-radius:6px; background:linear-gradient(145deg,rgba(116,101,255,.13),rgba(11,11,20,.88)); box-shadow:0 20px 55px rgba(0,0,0,.2); }
.offer-top { display:grid; grid-template-columns:1fr auto; gap:24px; align-items:start; }
.offer-product { margin:0 0 5px; color:var(--lime); font:700 .58rem var(--mono); letter-spacing:.1em; }
.offer-audience { max-width:410px; margin:0; color:#d1d1df; font-size:.65rem; }
.offer-price { margin:0; text-align:right; }
.offer-price small,.offer-price span { display:block; color:var(--muted); font:.44rem var(--mono); letter-spacing:.06em; }
.offer-price strong { display:block; margin:3px 0; color:#fff; font-size:1.08rem; white-space:nowrap; }
.offer-benefits { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; margin:15px 0; padding:0; border:1px solid var(--line); background:var(--line); list-style:none; }
.offer-benefits li { padding:9px 10px; background:#0d0d18; color:#bdbdcd; font-size:.54rem; line-height:1.45; }
.offer-benefits li::before { margin-right:7px; color:var(--lime); content:"✓"; }
.hero-offer .hero-actions { gap:20px; }
.hero-offer .primary-button { min-width:200px; padding-block:12px; }
.hero-offer .microcopy { margin:10px 0 0; }
@media (max-width:900px) {
  .hero-copy { min-height:100svh; }
}
@media (max-width:540px) {
  .hero-copy { min-height:auto; padding:44px 19px 55px; }
  .eyebrow { margin:26px 0 15px; }
  .hero h1 { font-size:3.05rem; }
  .hero-copy>p:not(.concept-label,.eyebrow,.microcopy) { margin-top:17px; font-size:.72rem; }
  .hero-offer { margin-top:18px; padding:14px; }
  .offer-top { grid-template-columns:1fr; gap:10px; }
  .offer-price { text-align:left; }
  .offer-benefits { grid-template-columns:1fr; margin:12px 0; }
  .offer-benefits li { padding:7px 9px; }
  .hero-offer .hero-actions { gap:12px; }
  .hero-offer .primary-button { width:100%; min-width:0; }
}
/* --- Sprint expansion: problems / specs / proof / plans / flow / faq / operator --- */
.problems { padding:clamp(90px,11vw,160px) clamp(20px,6vw,95px) 0; }
.pain-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.pain-grid article { padding:26px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); background:linear-gradient(150deg,rgba(255,255,255,.02),transparent); }
.pain-grid article > span { color:var(--lime); font:700 .52rem var(--mono); }
.pain-grid h3 { margin:20px 0 12px; font-size:1.15rem; letter-spacing:-.02em; }
.pain-grid p { margin:0; color:var(--muted); font-size:.72rem; }

.spec-table-wrap { margin-top:60px; overflow-x:auto; }
.spec-table { width:100%; border-collapse:collapse; border:1px solid var(--line); }
.spec-table caption { margin-bottom:14px; color:var(--lime); font:700 .55rem var(--mono); letter-spacing:.1em; text-align:left; text-transform:uppercase; }
.spec-table th,.spec-table td { padding:14px 16px; border:1px solid var(--line); text-align:left; vertical-align:top; font-size:.68rem; }
.spec-table thead th { color:var(--muted); font:700 .5rem var(--mono); letter-spacing:.08em; text-transform:uppercase; background:#0d0d18; }
.spec-table tbody th { color:#fff; font-weight:700; white-space:nowrap; }
.spec-table tbody td { color:#b5b5c7; }
.spec-table tbody td:last-child { color:var(--muted); font:.58rem var(--mono); white-space:nowrap; }

.proof { padding:clamp(100px,12vw,180px) clamp(20px,6vw,95px); background:#080811; border-block:1px solid var(--line); }
.stat-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; margin-bottom:70px; background:var(--line); border:1px solid var(--line); }
.stat-grid div { padding:28px 20px; background:#0b0b14; }
.stat-grid strong { display:block; font-size:clamp(1.9rem,3vw,2.6rem); letter-spacing:-.04em; color:var(--lime); }
.stat-grid span { display:block; margin-top:10px; color:var(--muted); font-size:.62rem; }
.voice-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--line); border:1px solid var(--line); }
.voice-grid blockquote { margin:0; padding:26px; background:#0b0b14; }
.voice-grid p { margin:0 0 20px; color:#d5d5e5; font-size:.78rem; line-height:1.7; }
.voice-grid cite { display:block; color:var(--muted); font:.58rem var(--mono); font-style:normal; }
.voice-grid cite b { color:#fff; }
.voice-person { display:flex; gap:12px; align-items:center; }
.voice-person img { width:44px; height:44px; border:1px solid var(--line); border-radius:50%; object-fit:cover; flex:none; filter:saturate(1.05) contrast(1.03); }

.plans { display:block; min-height:auto; }
.plan-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin-top:60px; }
.plan-grid .plan-card { padding:28px; border:1px solid var(--line); border-radius:8px; background:var(--panel); box-shadow:none; }
.plan-grid .plan-card > p { display:flex; gap:10px; align-items:center; margin:0; color:var(--lime); font:700 .52rem var(--mono); letter-spacing:.1em; }
.plan-grid .plan-card > p span { padding:3px 8px; border-radius:99px; background:var(--indigo); color:#fff; font-size:.48rem; }
.plan-grid .plan-card h3 { margin:22px 0 26px; font-size:clamp(1.5rem,2.6vw,2.1rem); letter-spacing:-.04em; }
.plan-grid .plan-card h3 small { display:block; margin-top:6px; color:var(--muted); font:.48rem var(--mono); letter-spacing:.04em; }
.plan-grid .plan-card ul { margin:0 0 26px; padding:0; list-style:none; }
.plan-grid .plan-card li { padding:10px 0; border-top:1px solid var(--line); color:#b5b5c7; font-size:.66rem; }
.plan-grid .plan-card li::before { margin-right:9px; color:var(--lime); content:"✓"; }
.plan-grid .plan-card .ghost-link { font-size:.65rem; text-decoration:underline; text-underline-offset:5px; }
.plan-grid .plan-card.is-featured { border-color:#8174ff; background:linear-gradient(160deg,rgba(116,101,255,.18),rgba(11,11,20,.94)); box-shadow:0 25px 80px rgba(53,36,177,.18); }

.flow { padding:clamp(100px,12vw,180px) clamp(20px,6vw,95px); background:#07070d; border-top:1px solid var(--line); }
.number-steps { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; margin:0; padding:0; list-style:none; background:var(--line); border:1px solid var(--line); }
.number-steps li { padding:24px; background:#0b0b14; }
.number-steps span { color:var(--lime); font:700 .5rem var(--mono); }
.number-steps h3 { margin:16px 0 10px; font-size:1rem; }
.number-steps p { margin:0; color:var(--muted); font-size:.68rem; }

.faq { padding:clamp(100px,12vw,180px) clamp(20px,6vw,95px); }
.faq-list { display:grid; gap:1px; margin-top:20px; background:var(--line); border:1px solid var(--line); }
.faq-list details { padding:20px 22px; background:#0b0b14; }
.faq-list summary { cursor:pointer; color:#f0f0ff; font-size:.78rem; font-weight:700; list-style:none; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary::before { display:inline-block; margin-right:12px; color:var(--lime); content:"+"; }
.faq-list details[open] summary::before { content:"–"; }
.faq-list details p { margin:14px 0 0 22px; color:var(--muted); font-size:.68rem; line-height:1.7; }

.operator-info { display:grid; grid-template-columns:repeat(5,1fr); gap:1px; max-width:1000px; margin:60px auto 0; background:var(--line); border:1px solid var(--line); text-align:left; }
.operator-info div { padding:16px; background:rgba(11,11,20,.7); }
.operator-info dt { margin:0 0 8px; color:var(--lime); font:700 .46rem var(--mono); letter-spacing:.08em; text-transform:uppercase; }
.operator-info dd { margin:0; color:#c3c3d4; font-size:.62rem; line-height:1.55; }
.demo .disclaimer { max-width:640px; margin:26px auto 0; }

@media (max-width:900px) {
  .pain-grid,.number-steps { grid-template-columns:1fr; }
  .stat-grid { grid-template-columns:repeat(2,1fr); }
  .voice-grid,.plan-grid,.case-grid { grid-template-columns:1fr; }
  .operator-info,.security-detail { grid-template-columns:repeat(2,1fr); }
  .plan-terms { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:540px) {
  .problems,.proof,.plans,.flow,.faq { padding-inline:19px; }
  .spec-table th,.spec-table td { padding:10px; font-size:.62rem; }
  .operator-info,.security-detail,.plan-terms { grid-template-columns:1fr; }
}

/* --- Sprint 2 expansion: photos / case stories / security & plan detail --- */
.problems-photo,.platform-photo,.flow-photo { margin:56px 0; }
.problems-photo img,.platform-photo img,.flow-photo img { display:block; width:100%; height:auto; aspect-ratio:1200/670; border:1px solid var(--line); border-radius:8px; object-fit:cover; filter:saturate(1.05) contrast(1.03); }
.problems-photo figcaption,.platform-photo figcaption,.flow-photo figcaption { display:flex; flex-wrap:wrap; gap:8px 14px; align-items:baseline; margin-top:14px; color:#c3c3d4; font-size:.68rem; line-height:1.6; }
.problems-photo figcaption span,.platform-photo figcaption span,.flow-photo figcaption span { padding:3px 8px; border:1px solid rgba(199,255,94,.35); border-radius:3px; background:rgba(199,255,94,.05); color:var(--lime); font:700 .5rem var(--mono); letter-spacing:.06em; white-space:nowrap; }
.problems-photo figcaption b,.platform-photo figcaption b,.flow-photo figcaption b { margin-left:auto; color:#70708a; font:400 .48rem var(--mono); font-style:normal; letter-spacing:.04em; white-space:nowrap; }

.case-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1px; margin:50px 0 60px; background:var(--line); border:1px solid var(--line); }
.case-card { padding:26px; background:#0b0b14; }
.case-photo { margin:0 0 20px; }
.case-photo img { display:block; width:100%; height:auto; aspect-ratio:1200/670; border:1px solid var(--line); border-radius:6px; object-fit:cover; filter:saturate(1.05) contrast(1.03); }
.case-label { margin:0 0 18px; color:var(--lime); font:700 .52rem var(--mono); letter-spacing:.08em; text-transform:uppercase; }
.case-before-after { display:grid; gap:16px; margin:0; }
.case-before-after div > span { display:inline-block; margin-bottom:8px; padding:3px 9px; border-radius:3px; font:700 .48rem var(--mono); letter-spacing:.06em; }
.case-before-after div:first-child span { background:rgba(255,255,255,.08); color:#c9c9da; }
.case-before-after div:last-child span { background:rgba(199,255,94,.12); color:var(--lime); }
.case-before-after p { margin:0; color:#b5b5c7; font-size:.72rem; line-height:1.7; }

.security-detail { display:grid; grid-template-columns:repeat(5,1fr); gap:1px; margin-top:24px; background:var(--line); border:1px solid var(--line); }
.security-detail div { padding:16px; background:#0e0e1a; }
.security-detail dt { margin:0 0 8px; color:var(--lime); font:700 .46rem var(--mono); letter-spacing:.06em; }
.security-detail dd { margin:0; color:#b5b5c7; font-size:.6rem; line-height:1.6; }

.plan-terms { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; margin-top:36px; background:var(--line); border:1px solid var(--line); }
.plan-terms div { padding:16px; background:rgba(11,11,20,.75); }
.plan-terms dt { margin:0 0 8px; color:var(--lime); font:700 .46rem var(--mono); letter-spacing:.06em; text-transform:uppercase; }
.plan-terms dd { margin:0; color:#c3c3d4; font-size:.62rem; line-height:1.6; }

.demo p.reassurance { max-width:520px; margin:-16px auto 40px; color:#8f8fa5; font-size:.62rem; line-height:1.7; }

/* --- Sprint 4 responsive fixes: grids added after the breakpoints above must be
   re-applied here (later source order wins), and mobile body copy/legibility --- */
@media (max-width:900px) {
  .case-grid,.security-detail { grid-template-columns:repeat(2,1fr); }
  .plan-terms { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:540px) {
  .case-grid,.security-detail,.plan-terms { grid-template-columns:1fr; }
  .security-detail dd,.plan-terms dd { font-size:.75rem; }

  /* keep the orchestration-graph WAREHOUSE node clear of the log panel */
  .node--four { top:44%; right:3%; bottom:auto; }

  /* spec table: scroll inside instead of crushing columns unreadably thin */
  .spec-table { min-width:640px; }
  .spec-table th,.spec-table td { font-size:.78rem; }

  /* body copy readability floor (~14px) for actual sentence-length content */
  .hero-copy>p:not(.concept-label,.eyebrow,.microcopy) { font-size:.875rem; line-height:1.7; }
  .pain-grid p,.capability-grid p,.how-copy li p,.case-before-after p,.voice-grid p,
  .faq-list details p,.number-steps p { font-size:.875rem; line-height:1.7; }
}

@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
  [data-reveal] { opacity:1; transform:none; }
}
