/* Companion pages share the landing page's palette, readable type, and navigation. */
:root { color-scheme:light; --bg:#f8fafc; --bg-raised:#fff; --bg-sunk:#eef3f9; --hairline:#dce4ee; --hairline-strong:#bccbdc; --ink:#142337; --ink-2:#556478; --ink-3:#65748a; --ink-4:#65748a; --accent:#2363db; --accent-2:#184fac; --accent-soft:#e7efff; --container:1000px; }
[data-theme='dark'] { color-scheme:dark; --bg:#0c121d; --bg-raised:#131d2b; --bg-sunk:#182333; --hairline:#2b394e; --hairline-strong:#52647e; --ink:#edf2fb; --ink-2:#b3bfd1; --ink-3:#9cacc3; --ink-4:#9cacc3; --accent:#83b0ff; --accent-2:#accaff; --accent-soft:#1a2b49; }
html { scroll-padding-top:104px; }
body { font-size:16px; line-height:1.65; }
img { max-width:100%; }
a, p, li, td, th { overflow-wrap:break-word; }
:focus-visible { outline:3px solid var(--accent); outline-offset:4px; }
.nav { background:color-mix(in srgb,var(--bg) 95%,transparent); border-bottom:1px solid var(--hairline); }
.nav-inner { height:auto; min-height:84px; max-width:1280px; gap:20px; }
.brand { font-size:21px; letter-spacing:-.04em; flex-shrink:0; }
.brand img { width:38px; height:38px; object-fit:contain; }
.nav-theme { width:40px; height:40px; flex-shrink:0; }
.nav-theme svg { width:18px; height:18px; }
.nav-utils { flex-wrap:wrap; justify-content:flex-end; gap:12px; }
.back-link { font-family:var(--font-b); font-size:14px; text-transform:none; letter-spacing:0; min-height:40px; align-items:center; }
.content { max-width:900px; }
.doc-header { margin-bottom:40px; }
.doc-title { font-size:clamp(32px,4.5vw,52px); letter-spacing:-.04em; line-height:1.12; }
.doc-eyebrow, .doc-meta, .doc-footer, .sidebar-label { font-family:var(--font-b); font-size:12px; }
.doc-meta { letter-spacing:.025em; }
.body-text, .body-list, .body-list li { font-size:16px; line-height:1.7; }
.doc-lede, .doc-tagline { font-size:18px; line-height:1.7; }
.sidebar { top:84px; height:calc(100vh - 84px); }
.toc-list li a, .toc-list li.sub a { font-size:14px; padding-top:7px; padding-bottom:7px; }
.cta-primary { background:#2363db; color:#fff; }
.cta-primary, .cta-secondary { min-height:48px; font-size:14px; }
.doc-footer { letter-spacing:0; text-transform:none; gap:20px; }
.mobile-toc { display:none; }
.table-wrap { overflow-x:auto; }
@media(max-width:900px) {
  .mobile-toc { display:block; margin:24px 24px 0; padding:14px 18px; border:1px solid var(--hairline); border-radius:10px; background:var(--bg-raised); }
  .mobile-toc summary { cursor:pointer; color:var(--ink); font-weight:500; }
  .mobile-toc .toc-list { margin-top:12px; }
  .mobile-toc .toc-list a { padding-left:0; border-left:0; }
}
@media(max-width:600px) {
  .nav-inner { min-height:72px; padding:10px 18px; gap:12px; }
  .brand { font-size:18px; gap:6px; }
  .brand img { width:31px; height:31px; }
  .nav-utils { gap:7px; }
  .back-link { font-size:12px; max-width:105px; line-height:1.35; }
  .nav-theme { width:36px; height:36px; }
  .page { padding:0 18px 48px; }
  .content { padding:32px 18px 48px; min-width:0; }
  .pilot-hero { padding:42px 0 35px; margin-bottom:36px; }
  .doc-title { font-size:32px; }
  .doc-tagline, .doc-lede { font-size:16px; }
  .hero-cta { flex-wrap:wrap; }
  .hero-cta a { width:100%; justify-content:center; }
  .doc-footer { padding:22px 18px; }
  .mobile-toc { margin-inline:18px; }
  table { font-size:13px; }
}
@media(max-width:370px) {
  .nav-inner { gap:7px; }
  .brand { font-size:16px; }
  .brand img { width:27px; height:27px; }
  .back-link { max-width:74px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { animation:none!important; transition:none!important; } }
.manual-language { font: inherit; color: var(--ink); background: transparent; border: 1px solid var(--line); border-radius: 6px; padding: 7px; min-height: 40px; }
