/* Shared styles for the public information pages (/about, /faq, /glossary,
   /what-it-does-today). Same tokens and radius rule as index.html: 6px small
   elements, 12px containers, 10px controls. No motion beyond the button press. */
:root{
  --bg:#0a0e14; --panel:#0e131b; --card:#131924;
  --line:#1e2836; --line-hi:#283445; --line-dim:#171f2a;
  --text:#e7edf5; --sec:#9aa8bc; --muted:#7a8798;
  --green:#3fc878; --green-hi:#5cd88f; --green-deep:#2a9a5c; --green-wash:#0d1712;
  --amber:#e0a54a;
  --sans:"Segoe UI Variable Display","Segoe UI",-apple-system,BlinkMacSystemFont,system-ui,sans-serif;
  --mono:"Cascadia Mono",ui-monospace,"SF Mono",Menlo,Consolas,monospace;
  --r-sm:6px; --r:12px; --r-ctl:10px;
  --pad:clamp(20px,5vw,40px);
}
*{box-sizing:border-box;margin:0;padding:0}
html{color-scheme:dark;scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--bg);color:var(--text);font-family:var(--sans);font-size:17px;line-height:1.6;
  -webkit-font-smoothing:antialiased;overflow-x:hidden}
::selection{background:rgba(63,200,120,.26)}
a{color:inherit}
:focus-visible{outline:2px solid var(--green-hi);outline-offset:3px;border-radius:var(--r-sm)}
.wrap{max-width:1040px;margin:0 auto;padding-left:var(--pad);padding-right:var(--pad);width:100%}

h1,h2,h3{text-wrap:balance;letter-spacing:-.018em;font-weight:650;line-height:1.12}
h1{font-size:clamp(32px,5vw,50px);line-height:1.06;max-width:18ch}
h1 .g{color:var(--green)}
h2{font-size:clamp(22px,3vw,30px);line-height:1.16;max-width:28ch}
h3{font-size:18px;line-height:1.3;letter-spacing:-.01em}
p{text-wrap:pretty}
.lead{color:var(--sec);font-size:clamp(16.5px,1.4vw,18.5px);max-width:62ch;line-height:1.62}
.lead b{color:var(--text);font-weight:600}
.mono{font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:700}

/* top bar with the page links */
.top{padding-top:22px}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px 28px;flex-wrap:wrap}
.lockup{display:flex;align-items:center;gap:11px;text-decoration:none}
.lockup svg{width:30px;height:30px;display:block;flex-shrink:0}
.lockup .wm{font-size:20px;font-weight:700;letter-spacing:-.5px;line-height:1}
.lockup .wm span{color:var(--green)}
.nav{display:flex;flex-wrap:wrap;gap:4px 6px}
.nav a{display:inline-flex;align-items:center;min-height:40px;padding:6px 12px;border-radius:var(--r-ctl);
  font-size:14.5px;color:var(--sec);text-decoration:none;border:1px solid transparent}
.nav a[aria-current="page"]{color:var(--text);border-color:var(--line-hi)}
@media (hover:hover){.nav a:hover{color:var(--text);background:rgba(63,200,120,.07)}}

/* page head */
.head{position:relative;padding:clamp(36px,6vw,64px) 0 clamp(24px,4vw,40px)}
.head::before{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,rgba(63,200,120,.05),transparent 60%),
    radial-gradient(900px 420px at 6% -10%,rgba(42,154,92,.14),transparent 70%)}
.head .wrap{position:relative}
.head .lead{margin-top:18px}
.rule{width:56px;height:3px;border-radius:var(--r-sm);background:var(--green);margin:22px 0 0}
.stamp{margin-top:14px;color:var(--muted);font-size:13.5px}

/* body sections */
.sec{padding:clamp(40px,6vw,64px) 0;border-top:1px solid var(--line)}
.sec.panel{background:var(--panel)}
.prose > *{max-width:68ch}
.prose p{color:var(--sec);margin-top:12px;line-height:1.62}
.prose p b{color:var(--text);font-weight:600}
.prose h2{margin-bottom:6px}
.prose h2 + p{margin-top:10px}
.prose ul{list-style:none;margin-top:12px}
.prose li{color:var(--sec);padding:8px 0;border-top:1px solid var(--line-dim);line-height:1.55}
.prose li:first-child{border-top:none}
.prose li b{color:var(--text);font-weight:600}
.prose a{color:var(--green);text-decoration:none;font-weight:600}
@media (hover:hover){.prose a:hover{color:var(--green-hi)}}

/* definition rows (glossary, FAQ, capabilities) */
.rows{margin-top:26px;border-top:1px solid var(--line-hi)}
.wrap > .rows:first-child{margin-top:0}
.row{display:grid;grid-template-columns:104px minmax(0,1fr);gap:8px 22px;padding:20px 0;
  border-bottom:1px solid var(--line-dim);align-items:start}
.row.plain{grid-template-columns:1fr}
.row h3{scroll-margin-top:24px}
.row p{margin-top:6px;color:var(--sec);font-size:15.5px;line-height:1.55;max-width:70ch}
.row p b{color:var(--text);font-weight:600}
.row p + p{margin-top:8px}
.tag{display:inline-flex;align-items:center;justify-content:center;font-family:var(--mono);
  font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;
  padding:6px 10px;border-radius:var(--r-sm);border:1px solid;white-space:nowrap;margin-top:3px}
.tag.live{color:var(--green-hi);border-color:rgba(63,200,120,.45);background:var(--green-wash)}
.tag.pilot{color:#8fb8e8;border-color:rgba(77,144,208,.45);background:#0d141d}
.tag.plan{color:var(--amber);border-color:rgba(224,165,74,.4);background:#171307}

/* person card */
.person{display:flex;gap:18px;align-items:flex-start;margin-top:22px}
.person img{width:92px;height:92px;border-radius:50%;object-fit:cover;border:2px solid var(--line-hi);flex-shrink:0;background:#1a2230}
.person h3{font-size:19px}
.person .role{color:var(--green);font-size:14px;margin-top:3px}
.bio{list-style:none;margin-top:10px}
.bio li{color:var(--sec);font-size:14.5px;line-height:1.5;padding:7px 0;border-top:1px solid var(--line-dim)}
.bio li:first-child{border-top:none;padding-top:0}
.note{border:1px solid rgba(63,200,120,.42);border-radius:var(--r);background:var(--green-wash);
  padding:16px 20px;font-size:15px;color:#cfe6d9;line-height:1.55;margin-top:22px;max-width:70ch}
.note b{color:var(--green-hi);font-weight:700}

/* buttons */
.cta{display:inline-flex;align-items:center;gap:10px;background:var(--green);color:#06130c;
  font-family:inherit;font-size:16px;font-weight:700;letter-spacing:-.005em;padding:14px 24px;
  border-radius:var(--r-ctl);text-decoration:none;border:1px solid var(--green);min-height:50px;
  transition:background .16s ease,transform .1s ease}
.cta:active{transform:scale(.97)}
.cta .arw{font-size:17px;line-height:1;transform:translateY(-.5px)}
.cta.ghost{background:transparent;color:var(--text);border-color:var(--line-hi)}
@media (hover:hover){
  .cta:hover{background:var(--green-hi);border-color:var(--green-hi)}
  .cta.ghost:hover{border-color:var(--green-deep);background:rgba(63,200,120,.07)}
}
.ctarow{margin-top:26px;display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px}

/* close and footer */
.close{padding:clamp(48px,7vw,80px) 0;border-top:1px solid var(--line);
  background:linear-gradient(180deg,var(--bg),var(--green-wash))}
.close .lead{margin-top:12px}
footer{border-top:1px solid var(--line);padding:30px 0 40px}
footer .wrap{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:18px 40px;align-items:start}
.fnote{color:var(--muted);font-size:13.5px;max-width:64ch;line-height:1.55;margin-top:12px}
.fnav{list-style:none;display:grid;gap:6px;font-size:14px}
.fnav a{color:var(--sec);text-decoration:none}
@media (hover:hover){.fnav a:hover{color:var(--text)}}
.fnav .k{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}

@media (width < 48rem){
  .row{grid-template-columns:1fr;gap:6px 0;padding:18px 0}
  .tag{margin-top:0}
  footer .wrap{grid-template-columns:1fr}
  .nav a{min-height:44px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .cta{transition:none}
}
