/* Inflect Edge — site foundation (Phase 1, hand-authored, zero-build).
 * Design system: docs/design-tokens.css + HANDOFF §4. Two fonts, hard ceiling.
 * Restraint IS the look: accent reserved for the ONE key element per view. */

/* ---------- tokens ---------- */
:root {
  /* text inks warmed to agree with the paper ground (was cool slate #1f2937/
     #6b7280 on warm sand — the undertone clash Agent D diagnosed).
     #292524 = 13.9:1 on wash; #57534e = 7.0:1 on wash, 7.6:1 on white. */
  --primary:#11110f; --accent:#d97706; --text:#292524; --muted:#57534e;
  /* paper = warm off-white archival stock (panel 3-0): 17.6:1 on the vault,
     perceptually still "white paper," measurably less halation than #fff.
     --wash steps a notch below paper for hierarchy INSIDE paper objects. */
  --paper:#f7f5f0; --wash:#f1ede4; --rule:#e2ddd3; --grey:#a29d93;
  --sand-1:#e9e5dc; --sand-2:#cfc9bd; --sand-3:#c9c3b6; --ink-1:#161613; --ink-2:#3a3933;
  --ok:#15803d; --err:#b91c1c;
  --err-dark:#fca5a5; /* error text on dark bands — #b91c1c is only ~3:1 there */
  /* AA-contrast accent for text/fills on light bg (#d97706 is 3.19:1 — fails AA) */
  --accent-deep:#b45309; --accent-deep-hover:#92400e;
  /* amber-toned text on --wash needs the darker step: #b45309 on wash is only
     4.61:1 (marginal); #92400e is 6.51:1. On dark bands use --accent itself
     (5.93:1 on #11110f, 6.26:1 on #080908). Ratios script-verified 2026-07-13. */
  --accent-wash:#92400e;
  --muted-wash:#57534e; /* alias of --muted since the warm-ink swap; kept for existing references */

  /* championship dark identity (owner direction 2026-07-13): the whole site
     lives on blackened carbon and warm neutral graphite; the only bright
     objects are the paper documents the product sells. The neutral ladder
     removes the former navy cast while retaining visible solid-step depth. */
  --ink-950:#080908;   /* blackened carbon page canvas */
  --vault-well:#050605;/* deepest recessed well */
  --vault-1:#10110f;   /* resting graphite */
  --surface-1:#171815; /* raised graphite */
  --surface-2:#20211d; /* controls and rails */
  --vault-4:#2a2b26;   /* topmost transient */
  /* hairline tiers: the load-bearing depth signal on dark (Linear/Vercel/
     Raycast production values). Decorative may dip below; functional never. */
  --hairline-1:rgba(255,255,255,.07);
  --hairline-2:rgba(255,255,255,.11);
  --hairline-3:rgba(255,255,255,.16);
  /* warm ivory and muted metal tiers; body never uses pure #fff */
  --text-hi:#f2eee4;
  --text-2:#b9b2a5;
  --text-3:#958e82;
  /* signal amber: the Bloomberg Terminal register (round 7b, verified
     comparables). H32 S88 L60 — softened and lifted, the premium band all
     the on-dark heavyweights share (Amazon/AWS 36deg, Bitcoin 33deg,
     Bloomberg 32deg); 9.01:1 on the vault. Panel's #ffb000 and interim
     #f59e0b both read too yellow to the owner at fill scale.
     #d97706/#b45309 remain the PAPER-context ambers. Dark-cockpit rule:
     amber only marks what is flagged, armed, or live; ONE amber fill per
     viewport (the CTA). */
  --accent-hot:#f39f41;
  --accent-hot-press:#f5ad5c;
  /* semantic signal-frame edges. The full-strength line names the state;
     the quieter trailing edge supplies hard depth without blur or glow. */
  --signal-edge:var(--accent-hot);
  --signal-edge-depth:rgba(243,159,65,.52);
  /* Owner-directed dk45 material edge: one bounded command frame may use the
     signal hue as a physical exposed edge. The darker step is a surface only,
     never text, status, or a second decorative accent. */
  --material-edge-depth:#8a4517;
  --material-rear:#0b0c0a;
  --signal-edge-paper:var(--accent-wash);
  --signal-edge-paper-depth:rgba(146,64,14,.56);
  --signal-step-dark:3px 3px 0 rgba(255,255,255,.09);
  --signal-step-paper:3px 3px 0 rgba(8,9,8,.18);

  /* elevation on dark (panel-ratified §4 amendment): TWO composed recipes
     only, no ad-hoc shadows, no glows, no gradients.
     --lift: raised dark surface (instrument frame).
     --seat: paper documents seated on the desk (plate line + pooled shadow). */
  --lift:0 24px 60px -24px rgba(0,0,0,.62);
  --seat:inset 0 0 0 1px rgba(0,0,0,.10), 0 1px 2px rgba(0,0,0,.45), 0 8px 24px -6px rgba(0,0,0,.55);

  /* motion (Carbon-productive grammar) — animate transform/opacity only */
  --ease-standard:cubic-bezier(.2,0,.38,.9);
  --ease-enter:cubic-bezier(0,0,.38,.9);
  --ease-exit:cubic-bezier(.2,0,1,.9);
  --ease-settle:cubic-bezier(0,0,.3,1);
  --dur-instant:90ms; --dur-fast:150ms; --dur-move:240ms;
  --dur-major:400ms; --dur-story:700ms;

  /* spacing scale — all new section/component spacing snaps to these */
  --s-1:4px; --s-2:8px; --s-3:16px; --s-4:24px;
  --s-5:40px; --s-6:64px; --s-7:96px; --s-8:128px;

  --font-display:Georgia,"Times New Roman",serif;
  --font-body:"Segoe UI",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;
  /* data-only monospace (Andrew-approved 2026-07-09 as the deliberate §4
     two-font-ceiling exception): URL readouts, timestamps, evidence lines.
     Never prose, never headings. OS-supplied — zero bytes downloaded. */
  --font-data:ui-monospace,Consolas,"Cascadia Mono","SF Mono",Menlo,monospace;
  --maxw:1120px; --gutter:24px;
}

/* ---------- reset ---------- */
*,*::before,*::after { box-sizing:border-box; }
* { margin:0; }
html { -webkit-text-size-adjust:100%; overflow-x:clip; }
body {
  font-family:var(--font-body); font-size:16px; line-height:1.5; color:var(--text-hi);
  background:var(--ink-950); -webkit-font-smoothing:antialiased; overflow-x:clip;
}
img,svg { max-width:100%; display:block; }
a { color:inherit; }
button,input,select { font:inherit; color:inherit; }

/* selection is a live state: the machine flashes amber when touched */
::selection { background:var(--accent-hot); color:var(--ink-950); }

/* the paper family: document objects keep their ink internals on the vault.
   :where() keeps specificity at zero so component rules always win. */
:where(.browser-frame,.price-card,.inspect-dialog) { color:var(--text); }
/* :is() (not :where) so this outranks the global white-heading rule */
:is(.browser-frame,.price-card,.inspect-dialog) :is(h1,h2,h3) { color:var(--primary); }

/* ---------- focus parity (PR1): every control shows focus, not just hover.
   Hot amber on the vault (9.01:1 non-text); paper contexts flip to the
   deep amber (bright ambers on paper are ~2:1 — fail non-text 3:1). */
:where(a,button,input,select,textarea,summary):focus-visible {
  outline:2px solid var(--accent-hot); outline-offset:2px; border-radius:2px;
  box-shadow:0 0 0 2px var(--ink-950);
}
:where(.browser-frame,.price-card,.inspect-dialog) :where(a,button,input,select,textarea,summary):focus-visible {
  outline-color:var(--primary);
  box-shadow:0 0 0 2px var(--paper);
}
@media (forced-colors:active) {
  :where(a,button,input,select,textarea,summary):focus-visible {
    outline:2px solid Highlight;
    outline-offset:2px;
    box-shadow:none !important;
  }
}

/* ---------- reduced motion: decorative animation stops entirely ---------- */
@media (prefers-reduced-motion: reduce) {
  *,*::before,*::after {
    animation-duration:.01ms !important; animation-iteration-count:1 !important;
    transition-duration:.01ms !important; scroll-behavior:auto !important;
  }
}

/* ---------- typography ---------- */
h1,h2,h3,.display { font-family:var(--font-display); font-weight:400; color:#fff; }
h1,.display { line-height:1.12; letter-spacing:-.01em; }
h1 { font-size:clamp(2rem,5vw,3rem); }
h2 { font-size:clamp(1.6rem,3.4vw,2.1rem); line-height:1.15; letter-spacing:-.01em; }
h3 { font-size:1.15rem; line-height:1.2; }
p { line-height:1.55; }
.lede { color:var(--text-2); font-size:1.075rem; }
.kicker {
  font-size:.6875rem; letter-spacing:.22em; text-transform:uppercase;
  color:var(--accent-hot); font-weight:600;
}
.mono {
  font-family:var(--font-body); font-size:.6875rem; letter-spacing:.16em;
  text-transform:uppercase; color:var(--text-2);
}

/* ---------- layout ---------- */
.wrap { max-width:var(--maxw); margin:0 auto; padding:0 var(--gutter); }
.section { padding:96px 0; }   /* premium floor per comparables (was 72) */
.close-band { padding-top:128px; }  /* the close is a destination (Vercel isolation) */
.section--tight { padding:52px 0; }
.center { text-align:center; }
.center .lede { max-width:44ch; margin-left:auto; margin-right:auto; }
.hairline { border-top:1px solid var(--hairline-1); }
.stack > * + * { margin-top:16px; }
/* one continuous vault: the old wash bands dissolve; sections separate by
   hairline + spacing, never band alternation (Linear/Resend grammar) */
.wash { background:transparent; }
main > .section:not(:first-child) { border-top:1px solid var(--hairline-1); }

/* ---------- header ---------- */
.site-header {
  position:sticky; top:0; z-index:20; background:rgba(8,9,8,.94);
  backdrop-filter:saturate(1.2) blur(6px); border-bottom:1px solid var(--hairline-1);
}
.site-header .bar { display:flex; align-items:center; justify-content:space-between; height:64px; }
.brand { display:flex; align-items:center; min-height:48px; gap:9px; text-decoration:none; }
.brand .mark { width:20px; height:20px; color:#fff; }
.brand .word { font-size:.85rem; font-weight:700; letter-spacing:.28em; color:#fff; }
.nav { display:flex; align-items:center; gap:26px; }
.nav a { text-decoration:none; font-size:.9rem; color:rgba(255,255,255,.75); }
.nav a:hover { color:#fff; }
.nav a[aria-current="page"],
.mobile-utility a[aria-current="page"],
.site-footer .links a[aria-current="page"] {
  color:#fff; font-weight:600; text-decoration:underline;
  text-decoration-thickness:1px; text-underline-offset:5px;
}
.nav-toggle { display:none; }
.mobile-utility { display:none; }

/* One fail-closed snapshot state across every entry point. The HTML starts
   unavailable; site-state.js is the only code allowed to reveal ready links. */
.intake-action--unavailable { display:none; }
html.intake-ready .intake-action--unavailable { display:none; }
html.intake-unavailable .intake-action--ready { display:none; }
html.intake-unavailable .intake-action--unavailable { display:inline-flex; }

/* ---------- buttons ---------- */
.btn {
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  font-weight:600; font-size:.95rem; line-height:1; border-radius:2px;
  padding:13px 22px; cursor:pointer; border:1.5px solid transparent; text-decoration:none;
  transition:background .15s,border-color .15s,color .15s;
}
/* secondary action: a paper button (the document family; Resend's "white is
   the loudest colour" — but here it yields P1 to the single amber fill) */
.btn--primary { background:var(--paper); color:var(--ink-950); }
.btn--primary:hover { background:#e9e4da; }
/* P1: the dark-text-on-lit-amber inversion (panel 2-1; Binance/ClickHouse/
   GOV.UK convergence). #080908 on #f39f41 = 9.35:1. The ONLY amber fill
   allowed in any viewport; hover lifts brightness, never dims (a lit
   surface). */
.btn--accent { background:var(--accent-hot); color:var(--ink-950); }
.btn--accent:hover { background:var(--accent-hot-press); }
/* quiet ghost: white stroke on the vault. The sticky header CTA uses this —
   it shares every viewport, so it must never be a second amber signal. */
.btn--outline { border-color:rgba(255,255,255,.28); color:#fff; background:transparent; }
.btn--outline:hover {
  border-color:var(--signal-edge);
  box-shadow:var(--signal-step-dark);
}
.btn--outline:focus-visible {
  border-color:var(--signal-edge);
  box-shadow:0 0 0 2px var(--ink-950), var(--signal-step-dark);
}
.btn--block { width:100%; }
.btn--sm { min-height:48px; padding:9px 16px; font-size:.85rem; }

/* ---------- mechanism step icons (drafting-instrument stroke grammar:
   24 grid, 1.5px, square caps, mitered joins) ---------- */
.rung .ricon { width:22px; height:22px; color:var(--text-3); margin-bottom:10px; }

/* ---------- artifact thumbnails: the four deliverables, typeset in CSS.
   Decorative (aria-hidden); the .pkg list carries the meaning.
   Density rule (Agent D): an anchor object needs REAL data texture — the
   skeleton content must FILL its frame. Fixed height, no empty voids. ---------- */
.artifacts { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; max-width:820px; margin:28px 0 8px; }
.art { text-align:center; }
.art-frame { position:relative; background:var(--paper); border:1px solid var(--rule); border-radius:8px; padding:14px 13px; display:grid; gap:6px; height:180px; align-content:start; overflow:hidden; box-shadow:var(--seat); }
.art-frame .ab { display:block; height:6px; background:var(--sand-1); border-radius:2px; }
.art-frame .ab.t { height:10px; background:var(--sand-2); margin-bottom:2px; }
.art-frame .ab.in { margin-left:11px; }
.art-gap { display:block; height:4px; }
.ab.w40{width:40%} .ab.w45{width:45%} .ab.w50{width:50%} .ab.w55{width:55%} .ab.w60{width:60%} .ab.w65{width:65%} .ab.w68{width:68%} .ab.w70{width:70%} .ab.w72{width:72%} .ab.w75{width:75%} .ab.w80{width:80%} .ab.w85{width:85%} .ab.w88{width:88%} .ab.w90{width:90%}
.art-chip { width:24px; height:6px; border-radius:99px; border:1px solid var(--accent-deep); } /* amber = finding semantics */
.art-frame.art-backlog { gap:8px; }
.arow { display:flex; gap:6px; align-items:center; }
.abox { width:8px; height:8px; border:1.5px solid var(--sand-3); flex:none; }
.arow .ab { flex:1; }
.art-lbl { display:block; margin-top:8px; font-size:.7rem; letter-spacing:.12em; text-transform:uppercase; color:var(--text-2); font-weight:600; }

/* ---------- scroll reveals: exactly TWO relationship groups site-wide
   (ledger cap: habituation kills capture value). Progressive enhancement:
   content is visible unless JS arms a group that is still below the fold.
   Opacity/transform only; layout space always reserved (CLS 0). ---------- */
@media (prefers-reduced-motion: no-preference) {
  [data-reveal].reveal-armed > * { opacity:0; transform:translateY(8px); }
  [data-reveal].reveal-go > * {
    opacity:1; transform:none;
    transition:opacity var(--dur-move) var(--ease-enter), transform var(--dur-move) var(--ease-enter);
  }
  [data-reveal].reveal-go > *:nth-child(2) { transition-delay:70ms; }
  [data-reveal].reveal-go > *:nth-child(3) { transition-delay:140ms; }
  [data-reveal].reveal-go > *:nth-child(4) { transition-delay:210ms; }
}

/* ---------- pill chips ---------- */
.badge {
  display:inline-block; font-size:.6875rem; font-weight:700; letter-spacing:.08em;
  padding:3px 10px; border-radius:99px; text-transform:uppercase;
}
.badge--accent { background:var(--accent-deep); color:#fff; }
.badge--outline { border:1.5px solid var(--rule); color:var(--muted); }

/* ---------- dark band (unified with the deep band: the two-darks mismatch
   was a bug — one vault color everywhere) ---------- */
.band-dark { background:var(--ink-950); color:#fff; }
.band-dark h2 { color:#fff; }
.band-dark .lede { color:rgba(255,255,255,.62); }
.band-dark .kicker { color:var(--accent-hot); }

/* ---------- stat band ---------- */
/* Numerals are NEVER Georgia (its figures are old-style, no lining alternates —
   they read literary, not instrumental). All figures: Segoe + tabular-nums. */
.stats { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; text-align:center; }
.stat .num { font-family:var(--font-body); font-weight:600; font-variant-numeric:tabular-nums; font-size:clamp(2.2rem,4.6vw,3rem); line-height:1; color:#fff; letter-spacing:-.01em; }
.stat .lbl { margin-top:12px; font-size:.82rem; color:var(--text-2); line-height:1.45; }
.band-dark .stat .num { color:#fff; }
.band-dark .stat .lbl { color:rgba(255,255,255,.6); }

/* ---------- rungs (3-step) — machined dark surfaces (structural, not
   documents), with amber display numerals as the section anchor: the
   ClickHouse/Binance stat-numeral move. Numerals are marks, not fills,
   so the CTA keeps its color-singleton status. ---------- */
.cols-3 { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.cols-3 .rung { background:var(--vault-1); border:1px solid var(--hairline-1); border-radius:10px; padding:24px 22px; box-shadow:inset 0 1px 0 rgba(255,255,255,.05); }
.rung .step { font-family:var(--font-body); font-size:2.4rem; font-weight:600; line-height:1; color:var(--accent-hot); font-variant-numeric:tabular-nums; margin-bottom:10px; }
.rung .rung-num { font-family:var(--font-display); font-size:1.6rem; color:#fff; }
.rung h3 { margin:10px 0 8px; }
.rung p { font-size:.92rem; color:var(--text-2); }
.rung .tag {
  display:block; font-size:.7rem; letter-spacing:.12em; text-transform:uppercase;
  color:var(--text-2); font-weight:600; margin-bottom:6px;
}

/* ---------- package list (PR2: the four audit deliverables) ---------- */
.pkg { list-style:none; margin:24px 0 0; padding:0; max-width:640px; }
.pkg li { padding:12px 0; border-bottom:1px solid rgba(255,255,255,.10); font-size:.95rem; color:var(--text-2); }
.pkg li strong { color:#fff; font-weight:600; }
.pkg-honesty { margin-top:14px; font-size:.95rem; font-weight:600; color:#fff; max-width:56ch; }

/* ---------- pricing anchor (numerals never Georgia) ---------- */
.price-anchor {
  font-family:var(--font-body); font-weight:600; font-variant-numeric:tabular-nums;
  font-size:clamp(3rem,8vw,4rem); letter-spacing:-.02em; line-height:1;
  color:var(--primary); margin:0 0 14px;
}
/* the white ledger card: price as a document object seated on the vault.
   The $2,500 stays INK (panel 3-0): a price is a recorded fact, not a
   signal; colored prices read sale-tag, ink reads invoice. */
.price-card { display:inline-block; background:var(--paper); border:1px solid var(--rule); border-radius:10px; padding:32px 44px 26px; margin-top:16px; max-width:520px; box-shadow:var(--seat); }
.price-card .mono { letter-spacing:.12em; line-height:1.8; color:var(--muted); }

/* ---------- comparison table ---------- */
.compare { width:100%; border-collapse:collapse; margin-top:32px; font-size:.9rem; }
.compare th,.compare td { text-align:left; padding:14px 16px; border-bottom:1px solid rgba(255,255,255,.12); }
.compare thead th { font-weight:600; color:rgba(255,255,255,.72); font-size:.8rem; }
.compare tbody th { font-weight:400; color:rgba(255,255,255,.6); }
.compare td { color:rgba(255,255,255,.85); }
.compare .col-us { background:rgba(243,159,65,.10); color:#fff; font-weight:600; }
.compare thead .col-us { color:var(--accent-hot); }
.compare-wrap { width:100%; max-width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch; }
.compare { min-width:520px; }

/* light-surface variant (PR2: comparison lives inside the wash package section) */
.compare--light { margin-top:20px; }
.compare--light th,.compare--light td { border-bottom:1px solid var(--rule); }
.compare--light thead th { color:var(--muted-wash); }
.compare--light tbody th { color:var(--muted-wash); }
.compare--light td { color:var(--text); }
.compare--light .col-us { background:rgba(180,83,9,.07); color:var(--text); font-weight:600; }
.compare--light thead .col-us { color:var(--accent-wash); }

/* ---------- evidence (browser frame) ---------- */
.split { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.05fr); gap:48px; align-items:start; }
.browser-frame { border:1px solid var(--rule); border-radius:10px; overflow:hidden; background:var(--paper); box-shadow:var(--seat); }
.browser-bar { height:34px; background:var(--sand-1); display:flex; align-items:center; gap:6px; padding:0 12px; }
.browser-bar span { width:9px; height:9px; border-radius:50%; background:var(--sand-3); flex:none; }
.browser-bar .url { flex:1; min-width:0; background:var(--wash); border-radius:5px; font-size:.78rem; color:var(--muted); padding:3px 10px; margin-left:8px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.finding { padding:22px; }
.finding .fn-head { display:flex; gap:10px; align-items:baseline; }
.finding .fn-num { font-family:var(--font-display); color:var(--accent-deep); }
.finding .fn-title { font-family:var(--font-display); font-size:1.15rem; }
.finding .quote { border-left:2px solid var(--rule); padding:6px 0 6px 14px; margin:16px 0; color:var(--text); font-size:.95rem; }
.finding .fn-copy { font-size:.9rem; color:var(--muted); }
.finding .fn-tail { margin-top:16px; font-size:.68rem; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); }

/* ---------- pricing ---------- */
/* plans are machined vault surfaces, NOT paper: paper is reserved for the
   documents the product produces; a plan is a container you choose. The
   recommended plan climbs the surface ladder, and its CTA is the page's
   single amber fill (the other plans carry amber strokes). */
.price-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; align-items:start; }
.plan { border:1px solid var(--hairline-1); border-radius:10px; padding:26px 22px; background:var(--vault-1); box-shadow:inset 0 1px 0 rgba(255,255,255,.05); }
.plan--feature { background:var(--surface-1); border-color:var(--hairline-3); position:relative; }
.plan .plan-name { font-size:.72rem; letter-spacing:.14em; text-transform:uppercase; color:var(--text-2); }
.plan .price { font-family:var(--font-body); font-weight:600; font-variant-numeric:tabular-nums; font-size:1.9rem; letter-spacing:-.01em; margin:8px 0 2px; color:#fff; }
.plan .per { font-variant-numeric:tabular-nums; }
.plan .price small { font-size:.9rem; color:var(--text-2); font-family:var(--font-body); }
.plan .per { font-size:.82rem; color:var(--text-2); }
.plan ul { list-style:none; padding:0; margin:18px 0; }
.plan li { font-size:.88rem; padding:6px 0; border-bottom:1px solid rgba(255,255,255,.10); color:var(--text-2); }
.plan .rec { /* annunciator pill: amber stroke, never a second amber fill */
  position:absolute; top:-11px; left:50%; transform:translateX(-50%);
  background:var(--ink-950); border:1px solid var(--accent-hot); color:var(--accent-hot);
  font-size:.6875rem; font-weight:700;
  letter-spacing:.08em; text-transform:uppercase; padding:3px 12px; border-radius:99px;
}
.fineprint { font-size:.68rem; letter-spacing:.08em; text-transform:uppercase; color:var(--text-2); margin-top:12px; text-align:center; }
.single-audit { border:1px solid var(--hairline-1); border-radius:10px; padding:24px; max-width:460px; margin:28px auto 0; text-align:center; background:var(--vault-1); box-shadow:inset 0 1px 0 rgba(255,255,255,.05); }
.single-audit .price-anchor { color:#fff; }

/* ---------- footer (dark: the page ends inside the vault; comparables
   end dark, and the old white flip after the dark close was a 4th
   terminal surface) ---------- */
.site-footer { background:var(--ink-950); border-top:1px solid rgba(255,255,255,.08); padding:34px 0; }
.site-footer .row { display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; }
.site-footer .word { font-size:.75rem; font-weight:700; letter-spacing:.28em; color:#fff; }
.site-footer .tag { font-size:.82rem; color:rgba(255,255,255,.6); text-align:center; flex:1; min-width:220px; }
.site-footer .links { display:flex; gap:18px; flex-wrap:wrap; }
.site-footer .links a { font-size:.85rem; color:rgba(255,255,255,.7); text-decoration:none; }
.site-footer .links a:hover { color:var(--accent-hot); }

/* Account workspace. Identity, entitlement, audit, and billing state arrive
   only after the engine-owned session and allowlisted bootstrap succeed. */
.account-page .account-canon { margin-top:30px; }
.account-page .account-canon [hidden] { display:none !important; }
.account-page .account-dashboard-bar {
  display:flex; align-items:center; justify-content:space-between; gap:24px;
  padding:18px 0; border-top:1px solid var(--hairline-2);
}
.account-page .account-profile { display:grid; gap:2px; }
.account-page .account-profile span {
  color:var(--text-3); font-size:.66rem; font-weight:700;
  letter-spacing:.12em; text-transform:uppercase;
}
.account-page .account-profile strong { color:var(--text-hi); font-size:.9rem; }
.account-page .account-dashboard-bar .btn { min-height:48px; }
.account-page .account-metrics {
  display:grid; grid-template-columns:repeat(4,minmax(0,1fr));
  gap:0; background:transparent;
  border-top:1px solid rgba(255,255,255,.13); border-bottom:1px solid rgba(255,255,255,.13);
}
.account-page .account-metric { min-width:0; min-height:152px; padding:26px 24px; background:transparent; }
.account-page .account-metric:not(:first-child) { border-left:1px solid var(--hairline-1); }
.account-page .account-metric > span {
  display:block; font-family:var(--font-mono); font-size:11.5px; font-weight:500;
  line-height:1.5; letter-spacing:.14em; text-transform:uppercase; color:#8a8a8a;
}
.account-page .account-metric:not(:last-child) strong {
  display:block; margin-top:15px; color:#f5f5f5; font-family:var(--font-display);
  font-size:48px; font-weight:400; line-height:1.1; letter-spacing:-.01em;
  font-variant-numeric:tabular-nums;
}
.account-page .account-metric:last-child strong {
  display:block; margin-top:15px; color:#f5f5f5; font-family:var(--font-body);
  font-size:15px; font-weight:600; line-height:1.4;
}
.account-page .account-metric p { margin-top:8px; color:var(--text-2); font-size:.8rem; }
.account-page .account-workspace {
  display:grid; grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);
  align-items:start; gap:24px; margin-top:24px;
}
.account-page .account-card { min-width:0; padding:26px 0 0 0; background:transparent; border:0; border-top:1px solid rgba(255,255,255,.13); }
.account-page .account-section-head {
  display:block; padding-bottom:14px;
  border-bottom:1px solid var(--hairline-2);
}
.account-page .account-section-head .section-index {
  font-family:var(--font-data); color:var(--text-3); font-size:.65rem;
  font-variant-numeric:tabular-nums; letter-spacing:.08em;
}
.account-page .account-section-head h2 { font-size:1.35rem; line-height:1.2; }
.account-page .account-section-head h2 + p,
.account-page .account-section-head div > p { margin-top:4px; color:var(--text-3); font-size:.76rem; }
.account-page .account-audit-list { margin-top:8px; }
.account-page .account-audit-row {
  display:grid; grid-template-columns:minmax(0,1fr) auto auto; align-items:center;
  gap:18px; padding:16px 0; border-bottom:1px solid var(--hairline-1);
}
.account-page .account-audit-client { display:grid; gap:3px; min-width:0; }
.account-page .account-audit-client strong { color:var(--text-hi); font-size:.9rem; }
.account-page .account-audit-client span {
  overflow:hidden; color:var(--text-3); font-family:var(--font-data);
  font-size:.68rem; text-overflow:ellipsis; white-space:nowrap;
}
.account-page .account-audit-meta { display:grid; justify-items:end; gap:5px; color:var(--text-3); font-size:.7rem; }
.account-page .account-state {
  width:max-content; padding:3px 8px; border:1px solid var(--hairline-2); border-radius:99px;
  color:var(--text-2); font-size:.6rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase;
}
.account-page .account-state--reserved,
.account-page .account-state--active { border-color:var(--signal-edge-depth); color:var(--accent-hot); }
.account-page .account-audit-new { color:var(--accent-hot); font-size:.65rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.account-page .account-ledger-note { margin-top:16px; color:var(--text-3); font-size:.76rem; line-height:1.55; }
.account-page .account-plan-name { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; padding:20px 0 16px; }
.account-page .account-plan-name > div { display:grid; gap:6px; }
.account-page .account-plan-name > div > span { color:var(--text-hi); font-weight:700; }
.account-page .account-plan-name strong { color:var(--text-hi); font-family:var(--font-body); font-size:1.3rem; font-variant-numeric:tabular-nums; }
.account-page .account-plan-name small { color:var(--text-2); font-size:.72rem; font-weight:400; }
.account-page .account-plan-data { margin:0; }
.account-page .account-plan-data div { display:grid; grid-template-columns:1fr auto; gap:12px; padding:11px 0; border-top:1px solid var(--hairline-1); }
.account-page .account-plan-data dt { color:var(--text-3); font-size:.72rem; }
.account-page .account-plan-data dd { color:var(--text-hi); font-size:.78rem; font-weight:600; text-align:right; }
.account-page .account-actions { display:grid; gap:0; margin-top:18px; }
.account-page .account-actions .btn {
  min-height:48px; width:100%; justify-content:flex-start; padding:13px 0;
  background:transparent; border:0; border-top:1px solid rgba(255,255,255,.13); border-radius:0;
  box-shadow:none;
}
.account-page .account-actions .btn:hover {
  color:#f5f5f5; background:transparent; border-color:rgba(255,255,255,.13);
  text-decoration:underline; text-underline-offset:5px;
}
.account-page .account-actions .btn:disabled { color:#8a8a8a; opacity:1; cursor:default; text-decoration:none; }
.account-page .account-notice {
  margin-top:24px; padding:14px 16px; color:var(--text-2); font-size:.84rem;
  background:var(--vault-well); border:1px solid var(--hairline-2); border-left:2px solid var(--hairline-3);
}
.account-page .account-dialog {
  position:fixed; inset:0; width:min(620px,calc(100% - 48px)); max-height:calc(100vh - 48px); margin:auto;
  padding:28px; overflow:auto; color:#f5f5f5; background:rgb(5,6,5);
  border:1px solid rgba(255,255,255,.2); border-radius:2px;
}
.account-page .account-dialog::backdrop { background:rgba(0,0,0,.72); }
.account-page .account-dialog-close {
  position:absolute; top:16px; right:16px; width:48px; height:48px; padding:0;
  color:var(--text-2); background:transparent; border:1px solid var(--hairline-2); border-radius:2px;
  font-size:1.5rem; line-height:1; cursor:pointer;
}
.account-page .account-dialog .kicker { color:var(--accent-hot); }
.account-page .account-dialog h2 { margin:12px 52px 0 0; font-size:1.8rem; }
.account-page .account-dialog h3 { margin-top:24px; font-family:var(--font-body); font-size:.78rem; letter-spacing:.1em; text-transform:uppercase; }
.account-page .account-dialog-lede { margin-top:14px; color:#a3a3a3; }
.account-page .account-dialog-form { display:grid; gap:10px; margin-top:22px; }
.account-page .account-dialog-form label:not(.account-check) { color:var(--text-hi); font-size:.8rem; font-weight:600; }
.account-page .account-dialog-form input:not([type="checkbox"]),
.account-page .account-dialog-form select {
  width:100%; min-height:48px; padding:11px 13px; color:var(--ink, #f5f5f5); background:var(--paper);
  border:1px solid var(--rule); border-radius:2px; font:inherit;
}
.account-page .account-dialog-form .btn { min-height:48px; margin-top:8px; }
/* r116 owner ruling (a): dialog-wide radius uniformity - every .btn inside
   the dialog (submit, refresh, retry) joins the 2px grammar; the global
   .btn stays r6 elsewhere (a sitewide sweep is its own owner option) */
.account-page .account-dialog .btn { border-radius:2px; }
.account-page .account-check {
  display:flex; align-items:center; gap:12px; min-height:48px; padding:11px 13px;
  color:var(--text-hi); border:1px solid var(--hairline-2); border-radius:2px;
}
.account-page .account-check input { width:20px; height:20px; accent-color:var(--text-2); }
.account-page .account-dialog-note { color:#a3a3a3; font-size:.76rem; line-height:1.55; }
.account-page .account-form-error { color:var(--err-dark); font-size:.8rem; }
.account-page .account-form-error:focus-visible,
.account-page .account-dialog-note[tabindex]:focus-visible {
  outline:2px solid var(--accent-hot); outline-offset:4px;
}
.account-page .account-refill-mount:not(:empty) {
  min-height:240px; margin-top:18px; padding:12px; overflow:hidden;
  background:var(--vault-well); border:1px solid var(--hairline-2); border-radius:8px;
}
.account-page .account-refill-mount:focus-within {
  outline:2px solid var(--accent-hot); outline-offset:3px;
}
.account-page .account-dialog-summary { margin:20px 0 0; }
.account-page .account-dialog-summary div { display:grid; grid-template-columns:1fr auto; gap:14px; padding:12px 0; border-top:1px solid var(--hairline-1); }
.account-page .account-dialog-summary dt { color:#8a8a8a; font-size:.78rem; }
.account-page .account-dialog-summary dd { color:var(--text-hi); font-size:.82rem; font-weight:600; text-align:right; }
.account-page .account-deliverable-list { list-style:none; display:grid; gap:8px; margin:12px 0 0; padding:0; }
.account-page .account-deliverable-list li { padding:10px 12px; color:var(--text-2); background:var(--vault-well); border:1px solid var(--hairline-1); }

/* ---------- passwordless authentication ----------
   Identity and session truth remain engine-owned. These surfaces provide the
   narrow website gateway states only: email challenge, code verification,
   post-checkout activation, Account bootstrap, and sign-out. */
.auth-main,
.account-runtime-main { min-height:calc(100svh - 64px); }
.auth-page [hidden],
.account-runtime-page [hidden] { display:none !important; }
.auth-shell { padding-block:80px 96px; }
.auth-panel { max-width:620px; }
.auth-heading h1 { max-width:16ch; margin:14px 0 16px; }
.auth-heading .lede { max-width:52ch; }
.auth-card {
  position:relative; margin-top:32px; padding:28px; background:rgba(255,255,255,.03);
  border:1px solid var(--hairline-2); border-radius:10px;
}
/* intake-panel corner brackets: one overlay pseudo, 8 gradient layers -
 * unclipped by the card radius (gradients on the card itself are) */
.auth-card::after {
  content:""; position:absolute; inset:-1px; pointer-events:none;
  background-image:
    linear-gradient(rgba(255,255,255,.35),rgba(255,255,255,.35)),
    linear-gradient(rgba(255,255,255,.35),rgba(255,255,255,.35)),
    linear-gradient(rgba(255,255,255,.35),rgba(255,255,255,.35)),
    linear-gradient(rgba(255,255,255,.35),rgba(255,255,255,.35)),
    linear-gradient(rgba(255,255,255,.35),rgba(255,255,255,.35)),
    linear-gradient(rgba(255,255,255,.35),rgba(255,255,255,.35)),
    linear-gradient(rgba(255,255,255,.35),rgba(255,255,255,.35)),
    linear-gradient(rgba(255,255,255,.35),rgba(255,255,255,.35));
  background-repeat:no-repeat;
  background-size:18px 1.5px, 1.5px 18px, 18px 1.5px, 1.5px 18px, 18px 1.5px, 1.5px 18px, 18px 1.5px, 1.5px 18px;
  background-position:left top, left top, right top, right top, left bottom, left bottom, right bottom, right bottom;
}
.auth-card h2 { font-size:1.55rem; }
.auth-copy { margin-top:8px; color:var(--text-2); font-size:.92rem; }
.auth-copy,
.auth-system-error > p,
.account-page .account-profile strong,
.account-page .account-plan-data dd,
.account-page .account-dialog :is(p,dd) { overflow-wrap:anywhere; }
.auth-pending,
.account-bootstrap-state {
  display:grid; grid-template-columns:auto 1fr; align-items:start; gap:14px;
  padding:18px 0;
}
.auth-pending strong,
.account-bootstrap-state strong { color:var(--text-hi); font-size:.95rem; }
.auth-pending p,
.account-bootstrap-state p { margin-top:4px; color:var(--text-2); font-size:.84rem; }
.auth-status-mark {
  width:10px; height:10px; margin-top:6px; background:var(--accent-hot);
  border:1px solid var(--accent-hot); border-radius:2px;
  box-shadow:var(--signal-step-dark);
}
.auth-step-label {
  display:block; margin-bottom:8px; color:var(--accent-hot); font-size:.68rem;
  font-weight:700; letter-spacing:.14em; text-transform:uppercase;
}
.auth-form { display:grid; gap:18px; margin-top:22px; }
.auth-form .btn { min-height:48px; }
.auth-field label { display:block; margin-bottom:7px; font-family:var(--font-mono); font-size:11.5px; font-weight:500; letter-spacing:.14em; text-transform:uppercase; color:var(--ink,#f5f5f5); }
.auth-field input {
  width:100%; min-height:52px; padding:12px 14px; color:var(--ink, #f5f5f5);
  caret-color:var(--accent-deep); background:var(--paper); border:1px solid var(--rule);
  border-radius:2px;
}
.auth-field input::placeholder { color:var(--muted); opacity:1; }
.auth-field input:focus { border-color:var(--signal-edge); }
.auth-code-input {
  text-align:center; font-family:var(--font-mono); font-size:16px; font-weight:500;
  letter-spacing:.34em; font-variant-numeric:tabular-nums;
}
.auth-hint { margin-top:6px; color:var(--text-3); font-size:.78rem; }
.auth-error { margin-top:6px; color:var(--err-dark); font-size:.8rem; }
.auth-security-note {
  margin-top:18px; padding-top:16px; color:var(--text-3); font-size:.78rem;
  border-top:1px solid var(--hairline-1);
}
.auth-secondary-actions,
.auth-error-actions {
  display:flex; align-items:center; justify-content:space-between; gap:18px;
  margin-top:20px;
}
.auth-text-button,
.auth-text-link {
  display:inline-flex; align-items:center; min-height:48px; padding:8px 0;
  color:var(--text-2); background:transparent; border:0; font-size:.84rem;
  text-decoration:underline; text-decoration-color:var(--hairline-3);
  text-underline-offset:5px; cursor:pointer;
}
.auth-text-button:hover,
.auth-text-link:hover { color:var(--accent-hot); text-decoration-color:var(--accent-hot); }
.auth-sandbox-note {
  display:grid; grid-template-columns:1fr auto; gap:5px 18px; margin-top:22px;
  padding:15px 16px; background:var(--vault-well); border:1px solid var(--hairline-2);
  border-left:2px solid var(--signal-edge);
}
.auth-sandbox-note[hidden] { display:none; }
.auth-sandbox-note strong {
  color:var(--text-2); font-size:.68rem; letter-spacing:.12em; text-transform:uppercase;
}
.auth-sandbox-note span {
  color:var(--accent-hot); font-size:1rem; font-weight:700; letter-spacing:.18em;
  font-variant-numeric:tabular-nums;
}
.auth-sandbox-note p { grid-column:1/-1; color:var(--text-3); font-size:.74rem; }
.auth-system-error { padding:2px 0; }
.auth-system-error h2 { max-width:22ch; }
.auth-system-error > p { margin-top:10px; color:var(--text-2); font-size:.9rem; }
.auth-system-error > .btn { min-height:48px; margin-top:22px; }
.auth-system-error .auth-error-actions .btn { min-height:48px; }
.auth-noscript {
  margin-top:20px; padding:14px 16px; color:var(--err-dark);
  border:1px solid var(--hairline-2); border-left:2px solid var(--err-dark);
}
.auth-card :is(button,input,select):disabled,
.account-runtime-panel :is(button,input,select):disabled { cursor:not-allowed; opacity:.62; }

/* Account renders only the authenticated, gateway-allowlisted bootstrap
   payload. It displays no fixture values and exposes no account surface before
   both session and bootstrap succeed. */
.account-runtime-shell { padding-block:64px 96px; }
.account-runtime-panel { max-width:1120px; }
.account-runtime-panel > h1 { margin:14px 0 16px; max-width:20ch; }
.account-sandbox-banner {
  margin-top:22px; padding:13px 16px; color:var(--text-2); font-size:.8rem;
  background:var(--vault-well); border:1px solid var(--hairline-2);
  border-left:2px solid var(--signal-edge);
}
.account-sandbox-banner strong { color:var(--text-hi); }
.account-bootstrap-state,
.account-bootstrap-error {
  max-width:720px; margin-top:30px; padding:24px; background:rgb(5,6,5);
  border:1px solid rgba(255,255,255,.13); border-radius:2px;
}
.account-bootstrap-error h2 { font-size:1.5rem; }
.account-runtime-page .nav button { min-height:48px; }
.auth-page .site-header .btn--sm { min-height:48px; }

@media (max-width:560px) {
  .auth-shell,
  .account-runtime-shell { padding-block:48px 64px; }
  .auth-card { margin-top:26px; padding:22px 20px; }
  .auth-heading h1 { font-size:2.25rem; }
  .auth-secondary-actions,
  .auth-error-actions { align-items:stretch; flex-direction:column; gap:2px; }
  .auth-text-button,
  .auth-text-link { justify-content:center; width:100%; }
  .auth-system-error .auth-error-actions .btn { width:100%; min-height:48px; }
  .account-bootstrap-state,
  .account-bootstrap-error { margin-top:24px; padding:20px; }
}

@media (max-width:340px) {
  .auth-card { padding:20px 16px; }
  .auth-heading h1 { font-size:2rem; }
  .auth-sandbox-note { grid-template-columns:1fr; }
  .auth-sandbox-note p { grid-column:1; }
}

/* The illustrative Sample keeps its blocked content edition, but its funnel
   surface follows the same endpoint truth as the rest of the site. */
.sample-final .intake-availability { display:none; }
.sample-final.intake-unavailable .intake-ready-only { display:none; }
.sample-final.intake-unavailable .intake-availability {
  display:grid; gap:6px; padding:4px 0 4px 16px;
  border-left:2px solid var(--accent-hot); color:var(--text-1); line-height:1.5;
}
.availability-link {
  width:max-content; margin-top:4px; color:var(--text-1); font-size:.9rem;
  text-underline-offset:4px; text-decoration-color:rgba(255,255,255,.35);
}
.availability-link:hover { color:#fff; text-decoration-color:#fff; }

/* ---------- utility CTA rule row ---------- */
.cta-rule { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:16px 0; }
.cta-rule .note { font-size:.85rem; color:var(--text-2); }

.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0; }

/* legal/document pages (PR5): proper h2 hierarchy, sized as document heads */
.doc h2 { font-size:1.15rem; line-height:1.2; letter-spacing:0; }

/* ============================================================
   PR1: deep band, hero, and the Evidence Instrument frame.
   Pure HTML/CSS/SVG, real text, zero assets. Builds once on
   load (≤1.6s, transform/opacity only), then rests forever.
   ============================================================ */

/* ---------- deep band (hero + final CTA housing) ---------- */
.band-deep { background:var(--ink-950); color:#fff; }
.band-deep h1,.band-deep h2 { color:#fff; }
.band-deep .kicker { color:var(--accent-hot); }    /* 9.35:1 on #080908 */
.band-deep .lede { color:rgba(255,255,255,.68); }

/* ---------- hero layout: copy+form dominant, small sample card right
   (panel vote: the form is the product action; the card is garnish at the
   ~20% attention share info-images actually earn) ---------- */
.hero { padding:40px 0 44px; } /* fold rule: next section must peek at common heights */
/* height tiers (Agent A): the hero adapts to effective viewport height so
   framed objects always complete and the next band always peeks */
@media (max-height:860px) {
  .hero { padding:24px 0 24px; }
  .hero .lede { margin-bottom:16px; }
  .hero h1 { margin-top:12px; }
  .hero .intake-panel { padding:16px 16px 12px; }
  .hero .field { margin-bottom:12px; }
}
.hero-grid { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(400px,.85fr); gap:64px; align-items:start; }
.hero h1 { margin:16px 0 16px; max-width:18ch; }
.hero .lede { margin-bottom:24px; max-width:48ch; }
.hero-grid > .hero-copy .lede { margin-bottom:0; }
.hero-grid > .intake-panel { width:100%; margin-top:48px; justify-self:end; }

/* ---------- instrument frame ---------- */
.instrument { margin:0; min-width:0; max-width:920px; }
.inst-frame {
  background:var(--surface-1); border-radius:10px; overflow:hidden;
  border:1px solid var(--hairline-2); border-top-color:rgba(255,255,255,.2);
  box-shadow:var(--lift); /* raised-surface recipe (§4 amendment, panel-ratified) */
}

/* header rail: URL readout · pipeline chips · timestamp */
.inst-rail { display:flex; align-items:center; gap:12px; padding:9px 14px; background:var(--surface-2); border-bottom:1px solid rgba(255,255,255,.07); }
.inst-url { display:flex; align-items:center; gap:7px; min-width:0; font-family:var(--font-data); font-size:.72rem; color:rgba(255,255,255,.75); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.inst-url svg { width:11px; height:11px; flex:none; color:rgba(255,255,255,.5); }
.inst-steps { margin-left:auto; display:flex; gap:6px; flex:none; }
.inst-step {
  font-size:.58rem; font-weight:600; letter-spacing:.1em; text-transform:uppercase;
  color:rgba(255,255,255,.5); border:1px solid rgba(255,255,255,.14);
  border-width:1px 2px 2px 1px; border-right-color:var(--hairline-1);
  border-bottom-color:var(--hairline-1); border-radius:5px; padding:2px 8px;
  white-space:nowrap; background:var(--surface-1);
}
.inst-step.active,
.inst-step[aria-selected="true"] {
  color:var(--accent-hot); border-top-color:var(--signal-edge);
  border-left-color:var(--signal-edge); border-right-color:var(--signal-edge-depth);
  border-bottom-color:var(--signal-edge-depth); background:var(--vault-well);
  box-shadow:var(--signal-step-dark);
}
/* chips are real tabs (interactive instrument): button reset + hover */
button.inst-step { cursor:pointer; font-family:var(--font-body); }
button.inst-step:hover { color:rgba(255,255,255,.85); border-color:rgba(255,255,255,.32); }
button.inst-step[aria-selected="true"]:hover {
  color:var(--accent-hot); border-top-color:var(--signal-edge);
  border-left-color:var(--signal-edge); border-right-color:var(--signal-edge-depth);
  border-bottom-color:var(--signal-edge-depth);
}

/* switchable views (user-driven only, never auto-cycling) */
.inst-views { min-width:0; }
.inst-findings[hidden] { display:none; }
@media (prefers-reduced-motion: no-preference) {
  .inst-findings.showing { animation:inst-fade var(--dur-fast) var(--ease-enter); }
}
.inst-pkgline { margin-top:12px; font-family:var(--font-data); font-size:.62rem; letter-spacing:.06em; text-transform:uppercase; color:rgba(255,255,255,.55); }
.iv-intro { font-size:.85rem; color:rgba(255,255,255,.75); margin-bottom:10px; line-height:1.45; }
.iv-gates, .iv-manifest { list-style:none; margin:0 0 12px; padding:0; display:grid; gap:8px; }
.iv-manifest li { font-family:var(--font-data); font-size:.7rem; color:rgba(255,255,255,.65); font-variant-numeric:tabular-nums; }
.iv-gates li { font-size:.85rem; color:#fff; padding:8px 11px; background:var(--surface-2); border:1px solid rgba(255,255,255,.09); border-radius:6px; }
.iv-gates .gate-sub { display:block; font-family:var(--font-data); font-size:.6rem; color:rgba(255,255,255,.55); margin-top:3px; letter-spacing:.02em; }

/* capture-view graticule over the page skeleton (the grid, on demand) */
.inst-grat { position:absolute; inset:0; opacity:0; transition:opacity var(--dur-fast) var(--ease-standard); pointer-events:none; }
.inst-grat .gv { position:absolute; top:0; bottom:0; width:1px; background:rgba(255,255,255,.10); }
.inst-grat .gh { position:absolute; left:0; right:0; height:1px; background:rgba(255,255,255,.10); }
.inst-body.view-capture .inst-grat { opacity:1; }
.inst-time { flex:none; font-family:var(--font-data); font-size:.66rem; color:rgba(255,255,255,.55); font-variant-numeric:tabular-nums; }

/* body: captured-page skeleton | finding cards */
.inst-body { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); }
.inst-page { position:relative; padding:18px 16px; display:grid; gap:13px; align-content:start; border-right:1px solid rgba(255,255,255,.07); overflow:hidden; }
.inst-page .sk { display:block; background:rgba(255,255,255,.09); border-radius:3px; min-height:9px; }
.inst-page .sk-row { display:flex; gap:8px; }
.inst-page .sk-row .sk { width:44px; height:8px; }
.inst-page .sk-row .sk:first-child { width:64px; background:rgba(255,255,255,.16); }
.sk-block { position:relative; display:grid; gap:8px; }
.sk-block .big { height:52px; background:rgba(255,255,255,.12); }
.sk-block .sub { height:9px; width:68%; }
.inst-page .sk-lines { display:grid; gap:8px; }
.inst-page .l90 { width:90%; } .inst-page .l75 { width:75%; } .inst-page .l55 { width:55%; }
.sk-block .btnbar { height:26px; width:112px; background:rgba(255,255,255,.16); }

/* evidence pins — amber IS the product semantic here (a flagged finding) */
.inst-pin {
  position:absolute; top:-8px; right:-8px; z-index:2; width:20px; height:20px;
  display:flex; align-items:center; justify-content:center; border-radius:50%;
  background:var(--ink-950); border:1.5px solid var(--accent-hot); color:var(--accent-hot);
  font-size:.6rem; font-weight:700; font-variant-numeric:tabular-nums;
}
.sk-block.flagged .btnbar { outline:1px solid var(--accent-hot); outline-offset:3px; }
.inst-flag-cap { font-family:var(--font-data); font-size:.58rem; color:rgba(255,255,255,.55); letter-spacing:.02em; }

/* finding cards — the deliverable's atomic unit, previewed */
.inst-findings { display:flex; flex-direction:column; gap:13px; padding:16px; }
.inst-card { position:relative; padding:11px 13px 12px; background:var(--surface-2); border:1px solid rgba(255,255,255,.09); border-radius:6px; }
.inst-card.c2 { margin-top:auto; }
.inst-card::before { /* leader stub toward the pinned region */
  content:""; position:absolute; top:20px; left:-17px; width:17px; height:1px;
  background:rgba(243,159,65,.45); transform-origin:left;
}
.inst-card-top { display:flex; align-items:center; gap:8px; }
.inst-num { font-family:var(--font-data); font-size:.66rem; color:var(--accent-hot); font-variant-numeric:tabular-nums; }
.inst-sev { font-size:.56rem; font-weight:700; letter-spacing:.09em; text-transform:uppercase; color:rgba(255,255,255,.55); border:1px solid rgba(255,255,255,.16); border-radius:99px; padding:1px 7px; }
.inst-title { font-family:var(--font-display); font-size:.92rem; line-height:1.25; color:#fff; margin-top:7px; }
.inst-ev { font-family:var(--font-data); font-size:.6875rem; color:rgba(255,255,255,.55); margin-top:7px; letter-spacing:.02em; }
/* data-text contrast (review fix): the prior low-opacity treatment failed AA;
   .55 measures 5.69:1 on surface-2 / 5.98:1 on surface-1 */

/* footer rail: settled log — the instrument FINISHES, it never loops */
.inst-log { list-style:none; margin:0; padding:10px 16px; border-top:1px solid rgba(255,255,255,.07); display:grid; gap:5px; }
.inst-log li { font-family:var(--font-data); font-size:.66rem; color:rgba(255,255,255,.55); font-variant-numeric:tabular-nums; }
.inst-log li:last-child { color:rgba(255,255,255,.8); }

/* epistemic-status caption (review fix): the frame is a sample, and says so. */
.inst-cap { margin-top:10px; font-family:var(--font-data); font-size:.62rem; letter-spacing:.08em; text-transform:uppercase; color:var(--text-2); }

/* The staggered build is GONE (Agent A: five peripheral onsets during first
   fixations caused involuntary oculomotor capture). The instrument now
   enters as ONE settled object via the reveal group wrapping it. */
@keyframes inst-fade { from { opacity:0; } to { opacity:1; } }

/* views grid slot replaces the old single findings column */
.inst-body { grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); }
.inst-views .inst-findings { display:flex; flex-direction:column; gap:13px; padding:16px; }
.inst-views .inst-findings[hidden] { display:none; }

@media (max-width:820px) {
  .hero-grid { grid-template-columns:1fr; gap:28px; }
  .hero .lede { max-width:none; }
  .hero-grid > .intake-panel { width:100%; max-width:560px; margin-top:0; justify-self:start; }
}
@media (max-width:560px) {
  .inst-body { grid-template-columns:1fr; }
  .inst-page { border-right:none; border-bottom:1px solid rgba(255,255,255,.07); }
  .inst-card::before { display:none; }  /* stubs have nothing to point at stacked */
  .inst-card.c2 { margin-top:0; }
  .inst-time { display:none; }
  .inst-rail { flex-wrap:wrap; row-gap:6px; }   /* URL keeps its own full line */
  .inst-url { flex:1 1 100%; }
  .inst-steps { margin-left:0; }
  /* condensed instrument (review fix): one pinned region, one finding,
     two log lines — same capture→evidence→queued chain, ~half the height */
  .inst-page .sk-lines, .sk-ctablk, .inst-card.c2, .inst-log .log-mid { display:none; }
}

/* ---------- responsive ---------- */
@media (max-width:820px){
  .cols-3,.price-grid,.stats { grid-template-columns:1fr; gap:28px; }
  .artifacts { grid-template-columns:repeat(2,1fr); max-width:340px; }
  .split { grid-template-columns:1fr; gap:32px; }
  .nav { gap:16px; }
  .section { padding:64px 0; }
  .account-page .account-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .account-page .account-metric:not(:first-child) { border-left:0; }
  .account-page .account-metric:nth-child(2n) { border-left:1px solid var(--hairline-1); }
  .account-page .account-metric:nth-child(n+3) { border-top:1px solid var(--hairline-1); }
  .account-page .account-workspace { grid-template-columns:1fr; }
}
@media (max-width:560px){
  .nav { gap:12px; }
  .nav .nav-hide { display:none; }
  .brand .word { letter-spacing:.18em; font-size:.78rem; }
  .site-footer .row { flex-direction:column; text-align:center; }
  .mobile-utility {
    display:block; background:var(--ink-950); border-bottom:1px solid var(--hairline-1);
  }
  .mobile-utility__inner {
    display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); height:48px;
  }
  .mobile-utility a {
    display:flex; align-items:center; justify-content:center; min-height:48px;
    color:var(--text-2); font-size:.85rem; text-decoration:none;
  }
  .mobile-utility a + a { border-left:1px solid var(--hairline-1); }
  .mobile-utility a:hover,
  .mobile-utility a[aria-current="page"] { color:#fff; }
  .site-footer .links {
    display:grid; grid-template-columns:repeat(2,minmax(0,1fr));
    column-gap:12px; row-gap:0; width:100%; max-width:340px;
  }
  .site-footer .links a {
    display:flex; align-items:center; justify-content:center; min-height:48px;
  }
  .account-page .account-status { grid-template-columns:1fr; }
  .account-page .account-status strong,
  .account-page .account-status p { grid-column:1; }
  .account-page .account-canon { margin-top:24px; }
  .account-page .account-dashboard-bar { align-items:stretch; flex-direction:column; gap:16px; }
  .account-page .account-dashboard-bar .btn { width:100%; }
  .account-page .account-metric { min-height:132px; }
  .account-page .account-audit-row { grid-template-columns:minmax(0,1fr) auto; gap:12px; }
  .account-page .account-audit-row .btn,
  .account-page .account-audit-row .account-audit-new { grid-column:1/-1; width:100%; min-height:48px; }
  .account-page .account-plan-name { align-items:flex-start; }
  .account-page .account-dialog { width:calc(100% - 24px); max-height:calc(100vh - 24px); padding:22px 20px; }
  .account-page .account-dialog-close { top:12px; right:12px; }
  .account-page .account-dialog h2 { font-size:1.55rem; }
  .account-page .account-dialog-summary div { grid-template-columns:1fr; gap:4px; }
  .account-page .account-dialog-summary dd { text-align:left; }
  .cta-rule { flex-direction:column; align-items:stretch; gap:12px; }
}
@media (max-width:340px){
  .account-page .account-metrics { grid-template-columns:1fr; }
  .account-page .account-metric:nth-child(2n) { border-left:0; }
  .account-page .account-metric:not(:first-child) { border-top:1px solid var(--hairline-1); }
}
/* ---------- final landing-page composition (2026-07-10 audit) ---------- */
.skip-link {
  position:fixed;
  z-index:100;
  top:8px;
  left:8px;
  display:flex;
  align-items:center;
  min-height:48px;
  padding:10px 14px;
  border-radius:6px;
  background:var(--paper);
  color:var(--ink-950);
  transform:translateY(-160%);
}
.skip-link:focus { transform:none; }

.landing-final .hero .kicker {
  display:block;
  font-size:.75rem;
  line-height:1.35;
  letter-spacing:.12em;
  font-weight:700;
}
.landing-final .hero .lede { max-width:52ch; }
.landing-final .hero { padding-bottom:16px; }
.landing-final main > .hero + .section { padding-top:20px; }
.landing-final .instrument-section h2 { max-width:34ch; margin:14px 0 12px; }
.landing-final .instrument-lede { max-width:56ch; margin-bottom:20px; }
.landing-final .instrument-section { padding-bottom:40px; }
.landing-final .instrument { width:100%; max-width:none; }
.landing-final .instrument-method-link {
  margin:12px 0 0;
  font-size:.82rem;
  line-height:1.5;
}
.landing-final .instrument-method-link a {
  color:var(--text-2);
  text-decoration-color:var(--text-3);
  text-underline-offset:.16em;
}
.landing-final .instrument-method-link a:hover,
.landing-final .instrument-method-link a:focus-visible {
  color:#fff;
  text-decoration-color:var(--accent-hot);
}
.landing-final .inst-cap--top { margin:0 0 10px; color:var(--text-2); font-size:.6875rem; }
.landing-final .inst-time { color:rgba(255,255,255,.72); text-transform:uppercase; letter-spacing:.08em; }
.landing-final .inst-step { min-height:44px; padding:10px 12px; font-size:.6875rem; }
.landing-final .inst-ev { font-size:.6875rem; line-height:1.45; }
.landing-final .field input::placeholder { color:var(--muted); opacity:1; }

/* Safe production default: the finished funnel appears only when the frozen
   intake endpoint is configured before snapshot.js runs. No-JS stays honest. */
:is(.landing-final,.pricing-final) .intake-copy--unavailable,
:is(.landing-final,.pricing-final) .intake-action--unavailable,
:is(.landing-final,.pricing-final) .intake-availability { display:none; }
:is(.landing-final,.pricing-final).intake-unavailable .intake-copy--ready,
:is(.landing-final,.pricing-final).intake-unavailable .intake-action--ready,
:is(.landing-final,.pricing-final).intake-unavailable .intake-ready-only { display:none; }
:is(.landing-final,.pricing-final).intake-unavailable .intake-copy--unavailable { display:inline; }
:is(.landing-final,.pricing-final).intake-unavailable .intake-action--unavailable { display:inline-flex; }
:is(.landing-final,.pricing-final).intake-unavailable .snapshot-form { display:none; }
:is(.landing-final,.pricing-final).intake-unavailable .intake-availability {
  display:grid;
  gap:6px;
  padding:4px 0 4px 16px;
  border-left:2px solid var(--accent-hot);
  color:var(--text-1);
  line-height:1.5;
}
:is(.landing-final,.pricing-final) .intake-availability strong { color:#fff; font-size:.9rem; }
:is(.landing-final,.pricing-final) .intake-availability span { color:var(--text-2); font-size:.82rem; }
:is(.landing-final,.pricing-final).intake-unavailable .intake-panel {
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
}
:is(.landing-final,.pricing-final).intake-unavailable .intake-panel .ibr { display:none; }
:is(.landing-final,.pricing-final).intake-unavailable .close-band { display:none; }
/* Published prices remain visible when billing is unavailable. The initial
   disabled fieldset and checkout controller lock every transactional control. */
.landing-final.billing-unavailable .package-payment-step { display:none; }
.landing-final.billing-unavailable .package-choice { cursor:default; pointer-events:none; }
.landing-final.billing-unavailable .package-choice:hover .package-choice-card,
.landing-final.billing-unavailable .package-choice-mode .package-choice:hover .package-choice-card {
  border-color:var(--hairline-1);
}
/* [r66 parity: rekeyed from .landing-final-only to both money pages - pricing's
 * billing-unavailable block (~2220) hides the payment step and kills pointer
 * events but never styled the disabled inputs, so they rendered bright
 * white-on-black there vs muted on landing (2026-07-21 audit medium #10).] */
:is(.landing-final,.pricing-final).billing-unavailable .package-card-signup input:disabled {
  cursor:not-allowed;
  color:var(--text-3);
  border-color:var(--hairline-1);
  background:var(--vault-well);
  opacity:1;
}

:is(.landing-final,.package-funnel) .package-summary {
  display:grid;
  grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);
  gap:32px 40px;
  margin-top:28px;
  padding-top:24px;
  border-top:1px solid var(--hairline-1);
}
:is(.landing-final,.package-funnel) .package-summary h3 {
  max-width:21ch;
  margin-top:10px;
  font-size:1.75rem;
  line-height:1.14;
}
:is(.landing-final,.package-funnel) .package-ledger {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  margin:0;
  border-top:0;
}
:is(.landing-final,.package-funnel) .package-item { padding:18px 22px 18px 0; border-bottom:1px solid var(--hairline-1); }
:is(.landing-final,.package-funnel) .package-item:nth-child(even) {
  padding-right:0;
  padding-left:22px;
  border-left:1px solid var(--hairline-1);
}
:is(.landing-final,.package-funnel) .package-item dt {
  color:#fff;
  font-size:.74rem;
  font-weight:600;
  letter-spacing:.1em;
  text-transform:uppercase;
}
:is(.landing-final,.package-funnel) .package-item dd {
  margin-top:7px;
  color:var(--text-2);
  font-size:.9rem;
  line-height:1.5;
}
:is(.landing-final,.package-funnel) .package-summary .pkg-honesty {
  max-width:31ch;
  margin:16px 0 0;
  color:var(--text-2);
  font-size:.86rem;
  line-height:1.5;
}

/* The landing close owns package choice and account identity. The payment
   build mounts Stripe Embedded Checkout in the final region. The
   billing-unavailable class keeps transactional controls fail-closed while
   published packages, prices, and terms remain readable. */
:is(.landing-final,.package-funnel) .package-start-section { padding:48px 0 80px; scroll-margin-top:84px; }
:is(.landing-final,.package-funnel) .package-start-layout {
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:32px;
  align-items:start;
}
:is(.landing-final,.package-funnel) .package-start-intro { position:static; }
:is(.landing-final,.package-funnel) .package-start-intro h2 { max-width:18ch; margin:14px 0; }
:is(.landing-final,.package-funnel) .package-start-intro .lede { max-width:30ch; }
.landing-final .package-start-intro {
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  grid-template-rows:auto auto auto;
  column-gap:64px;
  padding-bottom:30px;
  border-bottom:1px solid var(--hairline-1);
}
.landing-final .package-start-intro > .kicker { grid-column:1; grid-row:1; }
.landing-final .package-start-intro h2 { grid-column:1; grid-row:2 / span 2; max-width:16ch; margin-bottom:0; }
.landing-final .package-start-offer { grid-column:2; grid-row:2; max-width:38ch; margin-top:14px; }
.landing-final .package-start-offer strong {
  display:block;
  margin-bottom:5px;
  color:var(--text-hi);
  font-weight:600;
}
:is(.landing-final,.package-funnel) .package-start-invariant {
  max-width:34ch;
  margin-top:12px;
  color:var(--text-2);
  font-size:.86rem;
  line-height:1.55;
}
.landing-final .package-start-invariant { grid-column:2; grid-row:3; max-width:48ch; }
:is(.landing-final,.package-funnel) .package-start-form {
  scroll-margin-top:84px;
  padding:32px 0 0;
  border-top:1px solid var(--hairline-2);
  background:transparent;
}
:is(.landing-final,.package-funnel) .package-choice-groups {
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:64px;
  align-items:start;
}
:is(.landing-final,.package-funnel) .package-choice-mode {
  position:relative;
  min-width:0;
}
:is(.landing-final,.package-funnel) .package-choice-mode--monthly {
  display:block;
  padding:1px;
  isolation:isolate;
  overflow:visible;
  background:var(--accent-hot);
  clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% calc(100% - 30px),calc(100% - 30px) 100%,0 100%);
  filter:drop-shadow(8px 8px 0 var(--material-edge-depth));
}
:is(.landing-final,.package-funnel) .package-monthly-face {
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  grid-template-areas:
    "mast mast mast mast mast mast mast mast mast mast mast mast"
    "choices choices choices choices choices choices choices choices choices choices choices choices"
    "terms terms terms terms terms terms terms terms terms terms terms terms";
  align-items:stretch;
  min-width:0;
  min-height:100%;
  background:var(--vault-1);
  clip-path:polygon(0 0,calc(100% - 15px) 0,100% 15px,100% calc(100% - 29px),calc(100% - 29px) 100%,0 100%);
}
:is(.landing-final,.package-funnel) .package-choice-mode--single {
  display:grid;
  grid-template-columns:minmax(260px,304px) minmax(0,1fr);
  align-items:stretch;
  overflow:visible;
  padding-top:32px;
  border:0;
  border-top:1px solid var(--hairline-2);
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
:is(.landing-final,.package-funnel) .package-mode-label {
  margin:0 0 10px;
  color:var(--text-2);
  font-family:var(--font-body);
  font-size:.6875rem;
  font-weight:700;
  letter-spacing:.14em;
  line-height:1.4;
  text-transform:uppercase;
}
:is(.landing-final,.package-funnel) .package-mode-head {
  min-height:0;
  padding:28px 30px;
  border-bottom:1px solid var(--hairline-3);
  background:var(--vault-1);
}
:is(.landing-final,.package-funnel) .package-mode-head--monthly {
  grid-area:mast;
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:24px;
  align-items:end;
  min-width:0;
  padding:34px 36px 30px;
  border:0;
  border-bottom:1px solid var(--hairline-3);
  background:transparent;
  box-shadow:none;
}
:is(.landing-final,.package-funnel) .package-mode-head--monthly .package-mode-heading { grid-column:1 / span 5; }
:is(.landing-final,.package-funnel) .package-mode-head--single {
  display:flex;
  align-items:flex-start;
  padding:4px 34px 20px 0;
  border:0;
  background:transparent;
}
:is(.landing-final,.package-funnel) .package-mode-heading h2,
:is(.landing-final,.package-funnel) .package-mode-heading h3 {
  margin:4px 0 0;
  color:var(--text-hi);
  font-family:var(--font-display);
  font-size:1.875rem;
  font-weight:400;
  line-height:1.15;
}
:is(.landing-final,.package-funnel) .package-mode-heading p {
  max-width:34ch;
  margin-top:9px;
  color:var(--text-2);
  font-size:.78rem;
  line-height:1.45;
}
:is(.landing-final,.package-funnel) .package-mode-eyebrow {
  display:block;
  color:var(--text-2);
  font-size:.65rem;
  font-weight:700;
  letter-spacing:.14em;
  line-height:1.4;
  text-transform:uppercase;
}
:is(.landing-final,.package-funnel) .package-trial-anchor {
  grid-column:8 / -1;
  margin:0;
  padding:2px 0 2px 24px;
  border:0;
  border-left:1px solid var(--hairline-3);
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
:is(.landing-final,.package-funnel) .package-trial-anchor strong {
  display:block;
  color:#fff;
  font-weight:600;
  font-variant-numeric:tabular-nums;
  font-size:1.08rem;
  line-height:1.3;
}
:is(.landing-final,.package-funnel) .package-trial-anchor p { max-width:44ch; margin-top:6px; color:var(--text-2); font-size:.75rem; line-height:1.5; }
:is(.landing-final,.package-funnel) .package-choice-fieldset { min-width:0; margin:0; padding:0; border:0; }
:is(.landing-final,.package-funnel) .package-choice-fieldset legend { display:block; width:100%; margin:0 0 16px; }
:is(.landing-final,.package-funnel) .package-choice-error { margin-top:12px; }
:is(.landing-final,.package-funnel) .package-inline-instruction {
  max-width:54ch;
  margin:-4px 0 22px;
  color:var(--text-2);
  font-size:.82rem;
  line-height:1.5;
}
:is(.landing-final,.package-funnel) .package-step-label {
  display:block;
  margin-bottom:6px;
  color:var(--accent-hot);
  font-size:.6875rem;
  font-weight:700;
  letter-spacing:.14em;
  line-height:1.4;
  text-transform:uppercase;
}
:is(.landing-final,.package-funnel) .package-step-label[data-package-step] {
  display:flex;
  width:max-content;
  max-width:100%;
  margin-bottom:8px;
  padding:3px 7px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:2px;
  color:var(--text-3);
}
:is(.landing-final,.package-funnel) .package-step-label[data-package-step][aria-current="step"] {
  background:var(--vault-well);
  color:var(--text-2);
  box-shadow:var(--signal-step-dark);
}
:is(.landing-final,.package-funnel) [data-package-start]:has(.package-choice > input:checked) .package-step-label[data-package-step][aria-current="step"] {
  border-width:1px 2px 2px 1px;
  border-top-color:var(--signal-edge);
  border-left-color:var(--signal-edge);
  border-right-color:var(--signal-edge-depth);
  border-bottom-color:var(--signal-edge-depth);
  color:var(--accent-hot);
}
:is(.landing-final,.package-funnel) .package-step-title {
  display:block;
  color:#fff;
  font-family:var(--font-display);
  font-size:1.75rem;
  line-height:1.2;
}
:is(.landing-final,.package-funnel) .package-choice-grid {
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:0;
}
:is(.landing-final,.package-funnel) .package-choice-grid.package-choice-grid--monthly {
  grid-area:choices;
  display:flex;
  flex-direction:column;
  gap:14px;
  padding:38px 36px 14px;
  background:transparent;
}
:is(.landing-final,.package-funnel) .package-choice { position:relative; display:block; min-width:0; }
:is(.landing-final,.package-funnel) .package-choice-grid--monthly .package-choice {
  margin-left:auto;
  border:0;
}
:is(.landing-final,.package-funnel) .package-choice-grid--monthly .package-choice--studio { width:78%; }
:is(.landing-final,.package-funnel) .package-choice-grid--monthly .package-choice--agency { width:89%; }
:is(.landing-final,.package-funnel) .package-choice-grid--monthly .package-choice--partner { width:100%; }
:is(.landing-final,.package-funnel) .package-choice-mode--single > .package-choice {
  border:1px solid var(--hairline-3);
  border-top-color:rgba(255,255,255,.24);
  background:var(--vault-well);
  box-shadow:none;
}
:is(.landing-final,.package-funnel) .package-choice > input {
  position:absolute;
  width:1px;
  height:1px;
  margin:-1px;
  overflow:hidden;
  clip:rect(0 0 0 0);
  white-space:nowrap;
}
:is(.landing-final,.package-funnel) .package-choice-card {
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) 268px;
  scroll-margin-top:84px;
  min-height:152px;
  height:100%;
  gap:0;
  padding:0;
  border-style:solid;
  border-width:1px 1px 1px 0;
  border-color:var(--hairline-3);
  border-top-color:rgba(255,255,255,.22);
  border-right-color:var(--hairline-2);
  border-bottom-color:var(--vault-well);
  border-radius:0;
  background:var(--vault-1);
  box-shadow:4px 4px 0 var(--material-rear), 9px 9px 0 var(--vault-well);
}
:is(.landing-final,.package-funnel) .package-choice--studio .package-choice-card { min-height:152px; background:var(--vault-1); }
:is(.landing-final,.package-funnel) .package-choice--agency .package-choice-card { min-height:166px; background:var(--surface-1); }
:is(.landing-final,.package-funnel) .package-choice--partner .package-choice-card {
  grid-template-columns:minmax(0,1fr) 300px;
  min-height:194px;
  border-color:rgba(255,255,255,.22);
  border-top-color:rgba(255,255,255,.3);
  background:var(--surface-2);
}
:is(.landing-final,.package-funnel) .package-choice--single .package-choice-card {
  grid-template-columns:minmax(0,1fr) 300px;
  min-height:144px;
  border:0;
  background:var(--vault-1);
  box-shadow:none;
}
:is(.landing-final,.package-funnel) .package-choice-card::before {
  content:"";
  position:absolute;
  z-index:3;
  inset-block:0;
  inset-inline-start:0;
  width:4px;
  background:transparent;
  pointer-events:none;
}
:is(.landing-final,.package-funnel) .package-choice-card::after {
  content:"";
  position:absolute;
  z-index:2;
  inset:0;
  border:1px solid transparent;
  pointer-events:none;
}
:is(.landing-final,.package-funnel) .package-choice-select {
  display:grid;
  grid-template-columns:minmax(104px,.58fr) minmax(110px,.62fr) minmax(158px,1fr);
  gap:24px;
  align-items:center;
  min-height:152px;
  padding:24px 28px;
  cursor:pointer;
}
:is(.landing-final,.package-funnel) .package-choice--agency .package-choice-select { min-height:166px; }
:is(.landing-final,.package-funnel) .package-choice--partner .package-choice-select {
  grid-template-columns:minmax(112px,.52fr) minmax(150px,.72fr) minmax(190px,1fr);
  min-height:194px;
  padding:28px 32px;
}
:is(.landing-final,.package-funnel) .package-choice--single .package-choice-select { min-height:144px; }
:is(.landing-final,.package-funnel) .package-selected {
  position:absolute;
  z-index:3;
  top:14px;
  right:18px;
  display:block;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:var(--accent-hot);
  font-size:.625rem;
  font-weight:700;
  letter-spacing:.08em;
  line-height:1;
  text-transform:uppercase;
  visibility:hidden;
}
:is(.landing-final,.package-funnel) .package-choice > input:checked + .package-choice-card .package-selected { visibility:visible; }
:is(.landing-final,.package-funnel) .package-choice:hover .package-choice-card { border-color:rgba(255,255,255,.26); }
:is(.landing-final,.package-funnel) .package-choice > input:focus-visible + .package-choice-card {
  outline:2px solid var(--text-hi);
  outline-offset:4px;
}
:is(.landing-final,.package-funnel) .package-choice > input:checked + .package-choice-card {
  border-color:var(--hairline-3);
  box-shadow:4px 4px 0 var(--material-edge-depth), 9px 9px 0 var(--vault-well);
}
:is(.landing-final,.package-funnel) .package-choice-mode .package-choice:hover .package-choice-card {
  border-top-color:rgba(255,255,255,.3);
  border-right-color:var(--hairline-3);
  border-bottom-color:var(--vault-well);
}
:is(.landing-final,.package-funnel) .package-choice-mode .package-choice > input:checked + .package-choice-card {
  border-color:var(--hairline-3);
  box-shadow:4px 4px 0 var(--material-edge-depth), 9px 9px 0 var(--vault-well);
}
:is(.landing-final,.package-funnel) .package-choice-mode .package-choice > input:checked + .package-choice-card::before {
  background:var(--signal-edge);
}
:is(.landing-final,.package-funnel) .package-choice-mode .package-choice > input:checked + .package-choice-card::after {
  inset:-1px;
  border-style:solid;
  border-width:1px 2px 2px 1px;
  border-top-color:var(--signal-edge);
  border-left-color:var(--signal-edge);
  border-right-color:var(--material-edge-depth);
  border-bottom-color:var(--material-edge-depth);
}
:is(.landing-final,.package-funnel) .package-choice-mode .package-choice > input:focus-visible + .package-choice-card {
  outline-color:var(--text-hi);
  outline-offset:4px;
}
:is(.landing-final,.package-funnel) .package-choice-top {
  display:grid;
  gap:7px;
  min-width:0;
}
:is(.landing-final,.package-funnel) .package-choice-top > strong {
  display:block;
  color:var(--text-hi);
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
}
:is(.landing-final,.package-funnel) .package-choice-top > span {
  color:var(--text-3);
  font-size:.65rem;
  font-weight:700;
  letter-spacing:.1em;
  text-transform:uppercase;
}
:is(.landing-final,.package-funnel) .package-commercial {
  display:grid;
  min-width:0;
  gap:8px;
}
:is(.landing-final,.package-funnel) .package-price {
  display:block;
  margin-top:0;
  color:var(--text-hi);
  font-size:1.9rem;
  font-weight:600;
  font-variant-numeric:tabular-nums;
  letter-spacing:-.045em;
  line-height:1.05;
}
:is(.landing-final,.package-funnel) .package-choice--studio .package-price { font-size:1.9rem; }
:is(.landing-final,.package-funnel) .package-choice--agency .package-price { font-size:2.2rem; }
:is(.landing-final,.package-funnel) .package-choice--partner .package-price { font-size:2.75rem; }
:is(.landing-final,.package-funnel) .package-price small { margin-left:4px; color:var(--text-2); font-size:.72rem; font-weight:400; letter-spacing:0; }
:is(.landing-final,.package-funnel) .package-capacity {
  display:grid;
  gap:0;
  margin-top:0;
  padding-top:0;
  border-top:0;
  color:var(--text-2);
  font-size:.8rem;
  line-height:1.4;
}
:is(.landing-final,.package-funnel) .package-capacity strong {
  color:var(--text-hi);
  font-family:var(--font-body);
  font-size:2.8rem;
  font-weight:650;
  font-variant-numeric:tabular-nums;
  letter-spacing:-.06em;
  line-height:.88;
}
:is(.landing-final,.package-funnel) .package-choice--studio .package-capacity strong { font-size:3rem; }
:is(.landing-final,.package-funnel) .package-choice--agency .package-capacity strong { font-size:3.75rem; }
:is(.landing-final,.package-funnel) .package-choice--partner .package-capacity strong { font-size:5rem; }
:is(.landing-final,.package-funnel) .package-capacity span {
  margin-top:8px;
  color:var(--text-3);
  font-size:.64rem;
  font-weight:700;
  letter-spacing:.09em;
  text-transform:uppercase;
}
:is(.landing-final,.package-funnel) .package-unit { margin-top:0; color:var(--text-2); font-size:.73rem; line-height:1.4; }
:is(.landing-final,.package-funnel) .package-fit {
  margin-top:8px;
  color:var(--text-2);
  font-size:.61rem;
  font-weight:700;
  letter-spacing:.02em;
  line-height:1.4;
  text-transform:uppercase;
  white-space:nowrap;
}
:is(.landing-final,.package-funnel) .field.package-card-signup {
  position:relative;
  display:flex;
  min-width:0;
  margin:0;
  padding:22px;
  align-self:stretch;
  flex-direction:column;
  justify-content:center;
  border-top:0;
  border-left:1px solid var(--hairline-2);
  background:var(--vault-well);
  box-shadow:none;
}
:is(.landing-final,.package-funnel) .package-choice--partner .field.package-card-signup { padding:26px; }
:is(.landing-final,.package-funnel) .package-card-signup label {
  padding-right:76px;
  margin-bottom:7px;
  color:var(--text-hi);
  font-size:.65rem;
  font-weight:700;
  letter-spacing:.09em;
  text-transform:uppercase;
}
:is(.landing-final,.package-funnel) .field.package-card-signup input {
  min-height:48px;
  padding:10px 12px;
  border-color:var(--hairline-3);
  border-radius:2px;
  background:var(--ink-950);
  color:var(--text-hi);
  box-shadow:inset 0 1px 0 rgba(0,0,0,.6), inset 0 0 0 1px rgba(255,255,255,.025);
  caret-color:var(--accent-hot);
  color-scheme:dark;
  font-size:.83rem;
}
:is(.landing-final,.package-funnel) .field.package-card-signup input::placeholder { color:var(--text-3); opacity:1; }
:is(.landing-final,.package-funnel) .field.package-card-signup input:focus {
  border-color:var(--accent-hot);
  background:var(--vault-4);
  outline:2px solid var(--accent-hot);
  box-shadow:none;
}
:is(.landing-final,.package-funnel) .package-card-signup .err { font-size:.7rem; line-height:1.35; }
:is(.landing-final,.package-funnel) .package-plan-terms {
  grid-area:terms;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  margin:28px 36px 0;
  padding:24px 0 32px;
  border-top:1px solid var(--hairline-2);
  border-bottom:0;
  background:transparent;
  box-shadow:none;
}
:is(.landing-final,.package-funnel) .package-plan-terms > div { min-width:0; padding:0 20px; border-left:1px solid var(--hairline-2); }
:is(.landing-final,.package-funnel) .package-plan-terms > div:first-child { padding-left:0; border-left:0; }
:is(.landing-final,.package-funnel) .package-plan-terms > div:last-child { padding-right:0; }
:is(.landing-final,.package-funnel) .package-plan-terms strong,
:is(.landing-final,.package-funnel) .package-plan-terms span { display:block; }
:is(.landing-final,.package-funnel) .package-plan-terms strong { color:#fff; font-size:.75rem; font-weight:700; letter-spacing:.04em; }
:is(.landing-final,.package-funnel) .package-plan-terms span { margin-top:6px; color:var(--text-2); font-size:.76rem; line-height:1.5; }
:is(.landing-final,.package-funnel) .package-price-basis { margin-top:14px; color:var(--text-3); font-size:.72rem; line-height:1.45; }
:is(.landing-final,.package-funnel) .field { margin-bottom:16px; }
:is(.landing-final,.package-funnel) .field label {
  display:block;
  margin-bottom:6px;
  color:#fff;
  font-size:.85rem;
  font-weight:600;
}
:is(.landing-final,.package-funnel) .field input {
  width:100%;
  min-height:48px;
  padding:11px 13px;
  border:1px solid transparent;
  border-radius:6px;
  background:var(--paper);
  color:var(--ink, #f5f5f5);
  caret-color:var(--accent-deep);
}
:is(.landing-final,.package-funnel) .field input:focus {
  outline:2px solid var(--accent-hot);
  outline-offset:2px;
  box-shadow:0 0 0 2px var(--ink-950);
}
:is(.landing-final,.package-funnel) .field .err { display:none; margin-top:5px; color:var(--err-dark); font-size:.8rem; }
:is(.landing-final,.package-funnel) .field.invalid .err { display:block; }
:is(.landing-final,.package-funnel) .field.invalid input { border-color:var(--err); }
:is(.landing-final,.package-funnel) .field .hint { margin-top:5px; color:rgba(255,255,255,.62); font-size:.78rem; }
:is(.landing-final,.package-funnel) .package-payment-step {
  max-width:760px;
  margin:32px auto 0;
  padding-top:28px;
  border-top:1px solid var(--hairline-2);
}
:is(.landing-final,.package-funnel) .package-payment-head h3 { margin:0; font-size:1.65rem; }
:is(.landing-final,.package-funnel) .package-selection-summary {
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:10px 18px;
  align-items:baseline;
  margin-top:22px;
  padding:15px 0;
  border-top:1px solid var(--hairline-1);
  border-bottom:1px solid var(--hairline-1);
}
:is(.landing-final,.package-funnel) .package-selection-summary span {
  color:var(--text-3);
  font-size:.6875rem;
  font-weight:700;
  letter-spacing:.1em;
  text-transform:uppercase;
}
:is(.landing-final,.package-funnel) .package-selection-summary strong { color:#fff; font-size:.93rem; line-height:1.45; }
:is(.landing-final,.package-funnel) .package-terms { margin-top:18px; color:var(--text-2); font-size:.83rem; line-height:1.55; }
:is(.landing-final,.package-funnel) .package-test-notice {
  margin:0 0 22px;
  padding:12px 14px;
  border:1px solid var(--accent-hot);
  border-radius:6px;
  color:var(--text-2);
  font-size:.78rem;
  line-height:1.5;
}
:is(.landing-final,.package-funnel) .package-test-notice strong {
  display:block;
  color:#fff;
  font-size:.6875rem;
  letter-spacing:.1em;
  text-transform:uppercase;
}
:is(.landing-final,.package-funnel) .package-payment-state {
  min-height:1.4em;
  margin-top:14px;
  color:var(--text-2);
  font-size:.78rem;
  line-height:1.4;
}
:is(.landing-final,.package-funnel) .package-payment-step[data-state="error"] .package-payment-state { color:#ffb4a8; }
:is(.landing-final,.package-funnel) .package-payment-step[data-state="success"] .package-payment-state { color:#fff; }
:is(.landing-final,.package-funnel) .package-checkout-retry { min-height:48px; margin-top:10px; }
:is(.landing-final,.package-funnel) .package-checkout-retry[hidden],
:is(.landing-final,.package-funnel) [data-package-choice-error][hidden],
:is(.landing-final,.package-funnel) [data-package-account-continue][hidden],
:is(.landing-final,.package-funnel) .package-selection-summary[hidden],
:is(.landing-final,.package-funnel) .package-terms[hidden],
:is(.landing-final,.package-funnel) .package-complete[hidden],
:is(.landing-final,.package-funnel) .package-payment-step[hidden],
:is(.landing-final,.package-funnel) .package-test-notice[hidden],
.landing-final .billing-config-error[hidden] { display:none; }
:is(.landing-final,.package-funnel) .package-checkout-loader {
  margin-top:14px;
  color:var(--text-2);
  font-size:.78rem;
  line-height:1.4;
}
:is(.landing-final,.package-funnel) .stripe-checkout-mount {
  min-height:260px;
  margin-top:18px;
  overflow:hidden;
  border:1px solid var(--hairline-2);
  border-radius:8px;
  background:var(--paper);
  color-scheme:light;
}
:is(.landing-final,.package-funnel) .stripe-checkout-mount:empty { display:none; }
:is(.landing-final,.package-funnel) .stripe-checkout-mount:focus-within {
  border-width:1px 2px 2px 1px;
  border-top-color:var(--signal-edge);
  border-left-color:var(--signal-edge);
  border-right-color:var(--signal-edge-depth);
  border-bottom-color:var(--signal-edge-depth);
}
:is(.landing-final,.package-funnel) .package-payment-trust {
  margin-top:10px;
  color:var(--text-2);
  font-size:.75rem;
  line-height:1.45;
  text-align:center;
}
:is(.landing-final,.package-funnel) .package-complete {
  margin-top:20px;
  padding:22px;
  border:1px solid var(--hairline-2);
  border-radius:8px;
  background:rgba(255,255,255,.018);
}
:is(.landing-final,.package-funnel) .package-complete h4 {
  margin:0;
  color:#fff;
  font-family:var(--font-display);
  font-size:1.55rem;
  line-height:1.2;
}
:is(.landing-final,.package-funnel) .package-complete p {
  margin-top:8px;
  color:var(--text-2);
  font-size:.86rem;
  line-height:1.55;
}
:is(.landing-final,.package-funnel) .package-complete .btn { min-height:48px; margin-top:16px; }
:is(.landing-final,.package-funnel) .package-config-failure {
  padding:38px 0;
  border-top:1px solid var(--hairline-1);
  background:var(--vault-1);
}
:is(.landing-final,.package-funnel) .package-config-failure__inner {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}
:is(.landing-final,.package-funnel) .package-config-failure h2 { margin:0; font-size:1.35rem; }
:is(.landing-final,.package-funnel) .package-config-failure p { margin-top:6px; color:var(--text-2); font-size:.84rem; }

@media (max-width:1040px) {
  :is(.landing-final,.package-funnel) .package-mode-head--monthly {
    min-height:0;
    padding:30px 32px 28px;
  }
  :is(.landing-final,.package-funnel) .package-choice-mode--single { grid-template-columns:1fr; gap:18px; padding-top:0; }
  :is(.landing-final,.package-funnel) .package-mode-head--single { padding:0; }
}

@media (max-width:820px) {
  .landing-final .section { padding:56px 0; }
  .landing-final .instrument-section { padding-bottom:28px; }
  :is(.landing-final,.package-funnel) .package-summary { grid-template-columns:1fr; gap:16px; margin-top:28px; padding-top:24px; }
  :is(.landing-final,.package-funnel) .package-summary h3 { max-width:24ch; }
  :is(.landing-final,.package-funnel) .package-ledger { border-top:1px solid var(--hairline-1); }
  :is(.landing-final,.package-funnel) .package-start-section { padding:40px 0 64px; }
  :is(.landing-final,.package-funnel) .package-start-layout { grid-template-columns:1fr; gap:28px; }
  :is(.landing-final,.package-funnel) .package-start-intro { position:static; }
  .landing-final .package-start-intro { display:block; padding-bottom:26px; }
  :is(.landing-final,.package-funnel) .package-start-intro h2 { max-width:18ch; }
  :is(.landing-final,.package-funnel) .package-start-intro .lede,
  :is(.landing-final,.package-funnel) .package-start-invariant { max-width:54ch; }
  .landing-final .package-start-offer { margin-top:18px; }
  .landing-final .package-start-invariant { margin-top:10px; }
  :is(.landing-final,.package-funnel) .package-choice-groups { grid-template-columns:1fr; gap:40px; }
  :is(.landing-final,.package-funnel) .package-choice-card { grid-template-columns:minmax(0,1fr) minmax(220px,.42fr); }
  :is(.landing-final,.package-funnel) .package-choice-select { gap:16px; padding:20px; }
}

@media (max-width:700px) {
  :is(.landing-final,.package-funnel) .package-choice-mode .package-choice-card { grid-template-columns:1fr; }
  :is(.landing-final,.package-funnel) .field.package-card-signup {
    padding:16px 20px;
    border-top:1px solid var(--hairline-2);
    border-left:0;
    box-shadow:none;
  }
}

@media (max-width:560px) {
  .site-header .bar { height:68px; }
  .site-header .btn--sm { min-height:48px; }
  .landing-final .hero { padding-bottom:14px; }
  .landing-final main > .hero + .section { padding-top:30px; }
  .landing-final .hero .lede { margin-bottom:18px; }
  .landing-final .hero .intake-panel { padding:14px 16px 12px; }
  .landing-final .hero .field { margin-bottom:10px; }
  .landing-final .instrument-lede { margin-bottom:18px; }
  :is(.landing-final,.package-funnel) .package-ledger { grid-template-columns:1fr; }
  :is(.landing-final,.package-funnel) .package-item,
  :is(.landing-final,.package-funnel) .package-item:nth-child(even) { padding:15px 0; border-left:0; }
  .landing-final .instrument-section { padding-bottom:24px; }
  :is(.landing-final,.package-funnel) .package-start-section { padding:32px 0 58px; }
  :is(.landing-final,.package-funnel) .package-start-layout { gap:24px; }
  :is(.landing-final,.package-funnel) .package-start-form { padding:24px 0 0; }
  :is(.landing-final,.package-funnel) .package-choice-grid { grid-template-columns:1fr; gap:0; }
  :is(.landing-final,.package-funnel) .package-choice-grid.package-choice-grid--monthly {
    gap:12px;
    padding:28px 20px 16px;
  }
  :is(.landing-final,.package-funnel) .package-choice-groups { gap:36px; }
  :is(.landing-final,.package-funnel) .package-mode-head { min-height:0; padding:20px 18px; }
  :is(.landing-final,.package-funnel) .package-mode-head--monthly {
    display:block;
    padding:24px 20px 22px;
    border-bottom:1px solid var(--hairline-3);
  }
  :is(.landing-final,.package-funnel) .package-choice-mode--monthly {
    clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% calc(100% - 18px),calc(100% - 18px) 100%,0 100%);
    filter:drop-shadow(4px 4px 0 var(--material-edge-depth));
  }
  :is(.landing-final,.package-funnel) .package-monthly-face {
    clip-path:polygon(0 0,calc(100% - 9px) 0,100% 9px,100% calc(100% - 17px),calc(100% - 17px) 100%,0 100%);
  }
  :is(.landing-final,.package-funnel) .package-mode-head--single { padding:0; }
  :is(.landing-final,.package-funnel) .package-mode-heading h2,
  :is(.landing-final,.package-funnel) .package-mode-heading h3 { font-size:1.55rem; }
  :is(.landing-final,.package-funnel) .package-trial-anchor { margin-top:18px; padding:16px 0 0; border:0; border-top:1px solid var(--hairline-3); }
  :is(.landing-final,.package-funnel) .package-trial-anchor strong { font-size:.96rem; }
  :is(.landing-final,.package-funnel) .package-choice-grid--monthly .package-choice--studio { width:calc(100% - 24px); }
  :is(.landing-final,.package-funnel) .package-choice-grid--monthly .package-choice--agency { width:calc(100% - 12px); }
  :is(.landing-final,.package-funnel) .package-choice-grid--monthly .package-choice--partner { width:100%; }
  :is(.landing-final,.package-funnel) .package-choice-mode .package-choice-card {
    grid-template-columns:1fr;
    min-height:0;
    box-shadow:3px 3px 0 var(--material-rear), 5px 5px 0 var(--vault-well);
  }
  :is(.landing-final,.package-funnel) .package-choice-mode .package-choice > input:checked + .package-choice-card {
    box-shadow:3px 3px 0 var(--material-edge-depth), 5px 5px 0 var(--vault-well);
  }
  :is(.landing-final,.package-funnel) .package-choice--single .package-choice-card { box-shadow:none; }
  :is(.landing-final,.package-funnel) .package-choice-select {
    grid-template-columns:minmax(68px,.72fr) minmax(50px,.5fr) minmax(100px,1fr);
    grid-template-areas:"plan capacity commercial";
    gap:10px;
    min-height:92px;
    padding:16px 14px 15px;
  }
  :is(.landing-final,.package-funnel) .package-choice--studio .package-choice-select { min-height:96px; }
  :is(.landing-final,.package-funnel) .package-choice--agency .package-choice-select { min-height:108px; }
  :is(.landing-final,.package-funnel) .package-choice--partner .package-choice-select {
    grid-template-columns:minmax(68px,.72fr) minmax(50px,.5fr) minmax(100px,1fr);
    min-height:122px;
    padding:18px 14px 17px;
  }
  :is(.landing-final,.package-funnel) .package-choice--single .package-choice-select { min-height:96px; }
  :is(.landing-final,.package-funnel) .package-choice-top { grid-area:plan; align-self:center; gap:5px; }
  :is(.landing-final,.package-funnel) .package-choice-top > strong { font-size:.68rem; letter-spacing:.12em; }
  :is(.landing-final,.package-funnel) .package-choice-top > span { font-size:.56rem; letter-spacing:.07em; }
  :is(.landing-final,.package-funnel) .package-capacity { grid-area:capacity; align-self:center; }
  :is(.landing-final,.package-funnel) .package-commercial {
    grid-area:commercial;
    display:grid;
    align-self:center;
    gap:5px;
    padding-top:0;
    border-top:0;
  }
  :is(.landing-final,.package-funnel) .package-price { margin-top:0; font-size:1.55rem; }
  :is(.landing-final,.package-funnel) .package-choice--studio .package-price { font-size:1.48rem; }
  :is(.landing-final,.package-funnel) .package-choice--agency .package-price { font-size:1.62rem; }
  :is(.landing-final,.package-funnel) .package-choice--partner .package-price { font-size:1.82rem; }
  :is(.landing-final,.package-funnel) .package-price small { display:block; margin:3px 0 0; font-size:.62rem; }
  :is(.landing-final,.package-funnel) .package-capacity { margin-top:0; padding-top:0; }
  :is(.landing-final,.package-funnel) .package-capacity strong { font-size:2.15rem; }
  :is(.landing-final,.package-funnel) .package-choice--studio .package-capacity strong { font-size:2.1rem; }
  :is(.landing-final,.package-funnel) .package-choice--agency .package-capacity strong { font-size:2.55rem; }
  :is(.landing-final,.package-funnel) .package-choice--partner .package-capacity strong { font-size:3.2rem; }
  :is(.landing-final,.package-funnel) .package-capacity span { margin-top:5px; font-size:.55rem; letter-spacing:.06em; }
  :is(.landing-final,.package-funnel) .package-unit { font-size:.63rem; }
  :is(.landing-final,.package-funnel) .package-fit { margin-top:4px; font-size:.55rem; white-space:normal; }
  :is(.landing-final,.package-funnel) .field.package-card-signup {
    margin:0;
    padding:12px 14px 14px;
    border-top:1px solid var(--hairline-2);
    border-left:0;
    box-shadow:none;
  }
  :is(.landing-final,.package-funnel) .package-card-signup label { padding-right:72px; font-size:.6rem; }
  :is(.landing-final,.package-funnel) .package-plan-terms { grid-template-columns:1fr; margin:20px 18px 0; padding:0 0 20px; }
  :is(.landing-final,.package-funnel) .package-plan-terms > div,
  :is(.landing-final,.package-funnel) .package-plan-terms > div:first-child,
  :is(.landing-final,.package-funnel) .package-plan-terms > div:last-child { padding:16px 18px; border-top:1px solid var(--hairline-2); border-left:0; }
  :is(.landing-final,.package-funnel) .package-plan-terms > div:first-child { border-top:0; }
  :is(.landing-final,.package-funnel) .package-selection-summary { grid-template-columns:1fr; gap:4px; }
  :is(.landing-final,.package-funnel) .package-payment-head h3 { font-size:1.5rem; }
  :is(.landing-final,.package-funnel) .stripe-checkout-mount { min-height:240px; }
  :is(.landing-final,.package-funnel) .package-config-failure__inner { align-items:stretch; flex-direction:column; }
  :is(.landing-final,.package-funnel) .package-config-failure .btn { width:100%; }
  .landing-final .inst-steps { display:grid; grid-template-columns:repeat(3,1fr); width:100%; gap:6px; }
  .landing-final .inst-step { min-height:48px; width:100%; padding:10px 8px; font-size:.6875rem; }
  .landing-final .inst-time { display:none; }
}

@media (max-width:340px) {
  :is(.landing-final,.package-funnel) .package-start-section > .wrap {
    width:100%;
    padding-inline:8px;
  }
  :is(.landing-final,.package-funnel) .package-start-form { padding-inline:8px; }
  .landing-final .package-start-section > .wrap {
    width:auto;
    padding-inline:24px;
  }
  .landing-final .package-start-form {
    margin-inline:-16px;
    padding-inline:8px;
  }
  :is(.landing-final,.package-funnel) .package-choice-mode--monthly {
    filter:drop-shadow(3px 3px 0 var(--material-edge-depth));
  }
  :is(.landing-final,.package-funnel) .package-mode-head--monthly { padding:20px 14px 18px; }
  :is(.landing-final,.package-funnel) .package-choice-grid.package-choice-grid--monthly { padding:22px 12px 12px; }
  :is(.landing-final,.package-funnel) .package-choice-grid--monthly .package-choice--studio,
  :is(.landing-final,.package-funnel) .package-choice-grid--monthly .package-choice--agency,
  :is(.landing-final,.package-funnel) .package-choice-grid--monthly .package-choice--partner { width:100%; }
  :is(.landing-final,.package-funnel) .package-plan-terms { margin:16px 12px 0; padding-bottom:16px; }
  :is(.landing-final,.package-funnel) .package-choice-select {
    grid-template-columns:minmax(62px,.7fr) minmax(46px,.48fr) minmax(92px,1fr);
    gap:8px;
    padding:14px 12px;
  }
  :is(.landing-final,.package-funnel) .package-price { font-size:1.45rem; }
  :is(.landing-final,.package-funnel) .package-capacity strong { font-size:2rem; }
  :is(.landing-final,.package-funnel) .field.package-card-signup { padding:12px; }
  :is(.landing-final,.package-funnel) .package-selected { right:12px; }
  :is(.landing-final,.package-funnel) .package-card-signup label { padding-right:66px; letter-spacing:.06em; }
}

/* ---------- final pricing-page composition (2026-07-10 audit) ----------
   Prices and capacities stay public. Plan-specific continuation appears only
   after the same-origin billing state is verified. Shared package facts appear
   once so the plan cards compare only the attributes that change. */
.pricing-final .pricing-hero { padding:64px 0 56px; }
.pricing-final .pricing-hero-inner { max-width:960px; }
.pricing-final .pricing-hero h1 { max-width:17ch; margin:14px 0 16px; }
.pricing-final .pricing-hero .lede { max-width:59ch; }

.pricing-final .pricing-hero-actions { display:flex; align-items:center; gap:16px; margin-top:28px; }
.pricing-final .pricing-hero-actions .btn { min-height:48px; }
.pricing-final .pricing-hero-actions p { max-width:46ch; color:var(--text-2); font-size:.84rem; line-height:1.5; }

.pricing-final .pricing-options { scroll-margin-top:84px; }
.pricing-final .billing-action--ready { display:none; }
.pricing-final.billing-ready .billing-action--ready { display:inline-flex; }
.pricing-final.billing-ready .billing-action--unavailable { display:none; }
.pricing-final .purchase-availability {
  display:grid;
  gap:4px;
  max-width:680px;
  margin:0 0 28px;
  padding:13px 16px;
  border-left:2px solid var(--accent-hot);
  background:rgba(255,255,255,.035);
  line-height:1.5;
}
.pricing-final .purchase-availability strong { color:#fff; font-size:.9rem; }
.pricing-final .purchase-availability span { color:var(--text-2); font-size:.82rem; }

.pricing-final .pricing-package h2 { max-width:24ch; margin:14px 0 12px; }
.pricing-final .pricing-package > .wrap > .lede { max-width:60ch; }
.pricing-final .package-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  margin-top:32px;
  border-top:1px solid var(--hairline-1);
  border-bottom:1px solid var(--hairline-1);
}
.pricing-final .package-part { min-width:0; padding:24px 22px; border-left:1px solid var(--hairline-1); }
.pricing-final .package-part:first-child { border-left:0; }
.pricing-final .part-num { color:var(--accent-hot); font-family:var(--font-data); font-size:.6875rem; letter-spacing:.1em; }
.pricing-final .package-part h3 { margin:12px 0 8px; font-family:var(--font-body); font-size:1rem; font-weight:600; }
.pricing-final .package-part p { color:var(--text-2); font-size:.86rem; line-height:1.55; }

.pricing-final .option-heading h2 { margin:14px 0 0; }
.pricing-final .single-audit {
  display:grid;
  grid-template-columns:minmax(0,.55fr) auto minmax(0,1.35fr);
  align-items:center;
  gap:32px;
  max-width:none;
  margin:24px 0 72px;
  padding:24px 28px;
  text-align:left;
}
.pricing-final .single-name {
  color:var(--text-2);
  font-size:.72rem;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.pricing-final .single-audit .price-anchor {
  margin:0;
  color:#fff;
  font-family:var(--font-body);
  font-size:2rem;
  font-weight:600;
  font-variant-numeric:tabular-nums;
  letter-spacing:-.01em;
  line-height:1.2;
  white-space:nowrap;
}
.pricing-final .single-audit .price-anchor small { color:var(--text-2); font-size:.78rem; font-weight:400; }
.pricing-final .single-audit p { color:var(--text-2); font-size:.9rem; }

.pricing-final .monthly-block > h2 { max-width:24ch; margin:14px 0 12px; }
.pricing-final .monthly-block > .lede { max-width:60ch; margin:0 0 32px; }
.pricing-final .price-grid { gap:18px; align-items:stretch; }
.pricing-final .plan { display:flex; flex-direction:column; padding:28px 24px; }
.pricing-final .plan .plan-name {
  color:var(--text-2);
  font-family:var(--font-body);
  font-size:.72rem;
  font-weight:600;
  letter-spacing:.14em;
  line-height:1.3;
  text-transform:uppercase;
}
.pricing-final .plan .price { margin:10px 0 0; font-size:2rem; }
.pricing-final .plan-fit {
  margin-top:14px;
  padding-left:11px;
  border-left:2px solid var(--accent-hot);
  color:var(--text-2);
  font-size:.82rem;
  line-height:1.5;
}
.pricing-final .plan-fit strong { color:var(--accent-hot); font-weight:600; }
.pricing-final .plan-data { margin-top:24px; }
.pricing-final .plan-data div { padding:13px 0; border-top:1px solid var(--hairline-2); }
.pricing-final .plan-data dt {
  color:var(--text-3);
  font-size:.6875rem;
  font-weight:600;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.pricing-final .plan-data dd { margin-top:4px; color:var(--text-hi); font-size:.9rem; line-height:1.45; }
.pricing-final .plan-select {
  width:100%;
  min-height:48px;
  margin-top:auto;
  padding-top:12px;
  padding-bottom:12px;
}
.pricing-final .single-audit .plan-select { margin-top:20px; }
.pricing-final .capacity-policy {
  max-width:66ch;
  margin-top:28px;
  padding-left:16px;
  border-left:1px solid var(--hairline-3);
  color:var(--text-2);
  font-size:.9rem;
  line-height:1.6;
}
.pricing-final .capacity-policy strong { color:#fff; }

.pricing-final .field input::placeholder { color:var(--muted); opacity:1; }

@media (max-width:820px) {
  .pricing-final .section { padding:64px 0; }
  .pricing-final .pricing-hero { padding:52px 0 44px; }
  .pricing-final .package-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .pricing-final .package-part:nth-child(2n+1) { border-left:0; }
  .pricing-final .package-part:nth-child(n+3) { border-top:1px solid var(--hairline-1); }
  .pricing-final .single-audit { grid-template-columns:minmax(0,.6fr) auto minmax(0,1fr); gap:24px; }
}

@media (max-width:560px) {
  .pricing-final .section { padding:56px 0; }
  .pricing-final .pricing-hero { padding:38px 0 34px; }
  .pricing-final .pricing-hero h1 { margin-top:12px; }
  .pricing-final .pricing-hero-actions { align-items:stretch; flex-direction:column; gap:10px; }
  .pricing-final .pricing-hero-actions .btn { width:100%; }
  .pricing-final .pricing-hero-actions p { text-align:center; }
  .pricing-final .package-grid { grid-template-columns:1fr; }
  .pricing-final .package-part { padding:20px 0; border-left:0; }
  .pricing-final .package-part:nth-child(n+2) { border-top:1px solid var(--hairline-1); }
  .pricing-final .single-audit { grid-template-columns:1fr; gap:8px; margin-bottom:56px; padding:22px; }
  .pricing-final .single-audit .price-anchor { margin:2px 0; white-space:normal; }
  .pricing-final .monthly-block > .lede { margin-bottom:24px; }
  .pricing-final .price-grid { gap:18px; }
  .pricing-final .plan { padding:24px 22px; }
}

/* ---------- cross-page hierarchy pass (2026-07-10) ----------
   The pricing page uses different geometry for orientation, package proof,
   and the two true purchase modes. Shared typography and state semantics
   remain consistent with the landing page. */
.pricing-final .pricing-hero { padding:68px 0 56px; }
.pricing-final .pricing-hero h1 {
  max-width:17ch;
  margin:14px 0 16px;
}

.pricing-final .availability-summary {
  max-width:680px;
  margin-top:22px;
  padding-left:16px;
  border-left:2px solid var(--accent-hot);
}
.pricing-final .availability-row {
  grid-template-columns:minmax(150px,.52fr) minmax(0,1fr);
  gap:18px;
  padding:7px 0;
  border-top:1px solid var(--hairline-1);
}
.pricing-final .availability-row:not(.intake-copy) { display:grid; }
.pricing-final.intake-unavailable .availability-summary .availability-row.intake-copy--unavailable { display:grid; }
.pricing-final .availability-row:first-child { border-top:0; }
.pricing-final .availability-row strong { color:#fff; font-size:.86rem; }
.pricing-final .availability-row span { color:var(--text-2); font-size:.84rem; }
.pricing-final .availability-summary > p {
  max-width:64ch;
  padding-top:8px;
  color:var(--text-2);
  font-size:.8rem;
  line-height:1.5;
}

.pricing-final .pricing-package-layout {
  display:grid;
  grid-template-columns:minmax(250px,.82fr) minmax(0,1.68fr);
  gap:56px;
  align-items:start;
}
.pricing-final .package-intro h2 { max-width:15ch; margin:14px 0 14px; }
.pricing-final .package-intro .lede { max-width:36ch; }
.pricing-final .pricing-package .package-grid {
  grid-template-columns:repeat(2,minmax(0,1fr));
  margin:0;
  border-top:1px solid var(--hairline-2);
  border-bottom:1px solid var(--hairline-2);
}
.pricing-final .pricing-package .package-part { padding:24px 22px; border:0; }
.pricing-final .pricing-package .package-part:nth-child(2n) { border-left:1px solid var(--hairline-1); }
.pricing-final .pricing-package .package-part:nth-child(n+3) { border-top:1px solid var(--hairline-1); }

.pricing-final .purchase-modes {
  display:grid;
  grid-template-columns:minmax(220px,.72fr) minmax(0,2fr);
  gap:40px;
  align-items:start;
}
.pricing-final .purchase-mode { min-width:0; }
.pricing-final .purchase-mode--monthly {
  padding-left:40px;
  border-left:1px solid var(--hairline-2);
}
.pricing-final .option-heading h2 {
  max-width:12ch;
  margin:14px 0 0;
  font-size:clamp(1.65rem,2.7vw,2rem);
}
.pricing-final .single-audit {
  display:block;
  margin:28px 0 0;
  padding:24px 0;
  border-top:1px solid var(--hairline-2);
  border-bottom:1px solid var(--hairline-2);
  border-inline:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.pricing-final .single-audit .price-anchor { margin:10px 0 12px; white-space:normal; }
.pricing-final .single-audit p { max-width:30ch; }
.pricing-final .monthly-block > h2 {
  max-width:20ch;
  font-size:clamp(1.75rem,3vw,2.25rem);
}
.pricing-final .monthly-block > .lede { max-width:54ch; }
.pricing-final .price-grid { gap:16px; }
.pricing-final .plan { padding:26px 22px; }
.pricing-final .capacity-policy { margin-top:24px; }

@media (max-width:820px) {
  .pricing-final .pricing-package-layout { grid-template-columns:1fr; gap:32px; }
  .pricing-final .package-intro h2 { max-width:22ch; }
  .pricing-final .package-intro .lede { max-width:58ch; }
  .pricing-final .purchase-modes { grid-template-columns:1fr; gap:56px; }
  .pricing-final .purchase-mode--single { max-width:620px; }
  .pricing-final .purchase-mode--monthly {
    padding-left:0;
    padding-top:56px;
    border-left:0;
    border-top:1px solid var(--hairline-1);
  }
  .pricing-final .option-heading h2 { max-width:22ch; }
  .pricing-final .single-audit { max-width:none; }
}

@media (max-width:560px) {
  :is(.landing-final,.pricing-final).intake-unavailable .intake-panel { padding:0; }
  .pricing-final .pricing-hero { padding:42px 0 38px; }
  .pricing-final .availability-row { grid-template-columns:1fr auto; gap:12px; }
  .pricing-final .pricing-package .package-grid { grid-template-columns:1fr; }
  .pricing-final .pricing-package .package-part { padding:20px 0; border-left:0; }
  .pricing-final .pricing-package .package-part:nth-child(2n) { border-left:0; }
  .pricing-final .pricing-package .package-part:nth-child(n+2) { border-top:1px solid var(--hairline-1); }
  .pricing-final .purchase-modes { gap:48px; }
  .pricing-final .purchase-mode--monthly { padding-top:48px; }
  .pricing-final .single-audit { margin-top:24px; padding:22px 0; }
  .pricing-final .price-grid { gap:16px; }
}

/* ---------- pricing inline funnel and premium rhythm (2026-07-12) ----------
   Pricing begins with the actual Package -> Account -> Stripe sequence. The
   package radios are the comparison, so no duplicate cards or redirect CTA
   remain. Amber depth marks a ready funnel and explicit selection; the honest
   unavailable state stays neutral while keeping published prices readable. */
.pricing-final .pricing-hero { padding:56px 0 48px; scroll-margin-top:84px; }
.pricing-final .pricing-hero-copy { min-width:0; }
.pricing-final .pricing-hero .package-start-intro { position:static; }
.pricing-final .pricing-hero-copy h1 { max-width:12ch; margin:14px 0 16px; }
.pricing-final .pricing-hero-copy .lede { max-width:30ch; }
.pricing-final .pricing-package-form { min-width:0; }
.pricing-final.billing-ready .pricing-package-form {
  border-top-color:var(--hairline-2);
}
.pricing-final .purchase-availability {
  max-width:none;
  margin:0 0 24px;
  border-left-color:var(--hairline-3);
  background:transparent;
}
.pricing-final.billing-unavailable .package-payment-step { display:none; }
.pricing-final.billing-unavailable .package-choice { cursor:default; pointer-events:none; }
.pricing-final.billing-unavailable .package-choice:hover .package-choice-card { border-color:var(--hairline-1); }
.pricing-final.billing-unavailable .package-choice > input:checked + .package-choice-card {
  border:0;
  background:rgba(255,255,255,.018);
  box-shadow:inset 0 0 0 1px var(--hairline-1);
}
.pricing-final .package-payment-head h2 { margin:0; font-size:1.65rem; }
.pricing-final .package-complete h3 {
  margin:0;
  color:#fff;
  font-family:var(--font-display);
  font-size:1.55rem;
  line-height:1.2;
}

.pricing-final .pricing-package { padding:48px 0 40px; }
.pricing-final .pricing-package-layout {
  grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);
  gap:48px;
}
.pricing-final .pricing-package .package-grid {
  margin:0;
  overflow:hidden;
  border:1px solid var(--hairline-2);
  border-radius:10px;
  background:var(--vault-1);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}

.pricing-final .pricing-policy-section { padding:48px 0 72px; }
.pricing-final .pricing-policy-layout {
  display:grid;
  grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);
  gap:48px;
  align-items:start;
}
.pricing-final .pricing-policy-layout > div:first-child h2 { max-width:14ch; margin-top:14px; }
.pricing-final .pricing-policy-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  overflow:hidden;
  border:1px solid var(--hairline-2);
  border-radius:10px;
  background:var(--vault-1);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.pricing-final .pricing-policy-grid article { min-width:0; padding:22px 20px; border-left:1px solid var(--hairline-1); }
.pricing-final .pricing-policy-grid article:first-child { border-left:0; }
.pricing-final .pricing-policy-grid article > span {
  color:var(--accent-hot);
  font-family:var(--font-data);
  font-size:.6875rem;
  letter-spacing:.1em;
}
.pricing-final .pricing-policy-grid h3 {
  margin:12px 0 8px;
  font-family:var(--font-body);
  font-size:.95rem;
  font-weight:600;
}
.pricing-final .pricing-policy-grid p { color:var(--text-2); font-size:.82rem; line-height:1.55; }

@media (max-width:820px) {
  .pricing-final .pricing-hero { padding:44px 0 44px; }
  .pricing-final .pricing-hero-copy h1 { max-width:16ch; }
  .pricing-final .pricing-hero-copy .lede { max-width:58ch; }
  .pricing-final .pricing-package-layout,
  .pricing-final .pricing-policy-layout { grid-template-columns:1fr; gap:32px; }
  .pricing-final .pricing-policy-grid { grid-template-columns:1fr; }
  .pricing-final .pricing-policy-grid article { border-top:1px solid var(--hairline-1); border-left:0; }
  .pricing-final .pricing-policy-grid article:first-child { border-top:0; }
}

@media (max-width:560px) {
  .pricing-final .pricing-hero { padding:36px 0; }
  .pricing-final .package-payment-head h2 { font-size:1.5rem; }
  .pricing-final .pricing-package { padding:40px 0 28px; }
  .pricing-final .pricing-package .package-part { padding:20px 18px; }
  .pricing-final .pricing-policy-section { padding:40px 0 56px; }
  .pricing-final .pricing-policy-grid article { padding:20px 18px; }
}

@media (max-width:340px) {
  .pricing-final .pricing-hero > .wrap {
    width:100%;
    padding-inline:8px;
  }
}

/* ---------- Method page mechanism spine (2026-07-10) ----------
   A static, inspectable Capture -> Verify -> Deliver explanation. The visual
   hierarchy communicates scope and control; it does not simulate runtime work
   or claim a scientifically optimal geometry. All selectors are page-scoped. */
.method-final .intake-copy--unavailable,
.method-final .intake-action--unavailable { display:none; }
.method-final.intake-unavailable .intake-action--ready,
.method-final.intake-unavailable .intake-ready-only { display:none; }
.method-final.intake-unavailable .intake-copy--unavailable { display:inline; }
.method-final.intake-unavailable .intake-action--unavailable { display:inline-flex; }
.method-final.intake-unavailable .close-band { display:none; }

.method-final .method-hero { padding:72px 0 64px; }
.method-final .method-hero-grid {
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr);
  gap:64px;
  align-items:center;
}
.method-final .method-hero h1 {
  max-width:15ch;
  margin:14px 0 16px;
}
.method-final .method-hero .lede { max-width:52ch; }
.method-final .method-scope-strip {
  display:flex;
  flex-wrap:wrap;
  list-style:none;
  margin:24px 0 0;
  padding:12px 0;
  border-top:1px solid var(--hairline-1);
  border-bottom:1px solid var(--hairline-1);
}
.method-final .method-scope-strip li {
  color:var(--text-2);
  font-size:.78rem;
  font-weight:600;
  white-space:nowrap;
}
.method-final .method-scope-strip li + li::before {
  content:"";
  display:inline-block;
  height:12px;
  margin:0 12px;
  border-left:1px solid var(--hairline-2);
  vertical-align:-2px;
}
.method-final .method-hero-actions { margin-top:24px; }
.method-final .method-hero-actions .intake-ready-only {
  display:flex;
  align-items:center;
  gap:16px;
}
.method-final.intake-unavailable .method-hero-actions .intake-ready-only { display:none; }
.method-final .method-hero-actions p {
  max-width:30ch;
  color:var(--text-2);
  font-size:.82rem;
}
.method-final .method-action { min-height:48px; }
.method-final .method-availability {
  padding-left:16px;
  border-left:2px solid var(--accent-hot);
  scroll-margin-top:84px;
}
.method-final.intake-unavailable .method-availability {
  display:flex;
  flex-direction:column;
  gap:3px;
}
.method-final .method-availability strong { color:#fff; font-size:.9rem; }
.method-final .method-availability span { color:var(--text-2); font-size:.82rem; }

.method-final .method-map {
  list-style:none;
  margin:0;
  padding:0;
  border:1px solid var(--hairline-2);
  border-radius:10px;
  background:var(--vault-1);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.method-final .method-map li {
  display:grid;
  grid-template-columns:48px minmax(0,1fr);
  gap:16px;
  align-items:start;
  padding:24px;
  border-top:1px solid var(--hairline-1);
}
.method-final .method-map li:first-child { border-top:0; }
.method-final .method-map-num,
.method-final .method-gate-num {
  color:var(--accent-hot);
  font-family:var(--font-data);
  font-size:.6875rem;
  font-variant-numeric:tabular-nums;
  letter-spacing:.14em; /* r81 label tidy: DATA LABEL tier (was the .12em stray) */
}
.method-final .method-map strong {
  display:block;
  margin-bottom:4px;
  color:#fff;
  font-family:var(--font-display);
  font-size:1.15rem;
  font-weight:400;
}
.method-final .method-map div > span {
  display:block;
  color:var(--text-2);
  font-size:.86rem;
  line-height:1.5;
}

.method-final .method-layout {
  display:grid;
  grid-template-columns:minmax(230px,.72fr) minmax(0,1.28fr);
  gap:64px;
  align-items:start;
}
.method-final .method-section-head h2 {
  max-width:17ch;
  margin:14px 0 16px;
}
.method-final .method-section-head .lede { max-width:39ch; }
.method-final .method-scope-ledger {
  margin:0;
  border-top:1px solid var(--hairline-2);
  border-bottom:1px solid var(--hairline-2);
}
.method-final .method-scope-ledger > div {
  display:grid;
  grid-template-columns:140px minmax(0,1fr);
  gap:24px;
  padding:22px 0;
  border-top:1px solid var(--hairline-1);
}
.method-final .method-scope-ledger > div:first-child { border-top:0; }
.method-final .method-scope-ledger dt {
  color:var(--text-2);
  font-size:.6875rem;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.method-final .method-scope-ledger dd {
  color:var(--text-hi);
  font-size:.95rem;
  line-height:1.55;
}
.method-final .method-limit-note {
  max-width:35ch;
  margin-top:24px;
  padding-left:16px;
  border-left:2px solid var(--accent-hot);
  color:var(--text-2);
  font-size:.84rem;
}

.method-final .method-gates {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  list-style:none;
  margin:0;
  padding:0;
  border-top:1px solid var(--hairline-2);
  border-bottom:1px solid var(--hairline-2);
}
.method-final .method-gates li { min-width:0; padding:26px 24px; }
.method-final .method-gates li:nth-child(2n) { border-left:1px solid var(--hairline-1); }
.method-final .method-gates li:nth-child(n+3) { border-top:1px solid var(--hairline-1); }
.method-final .method-gates h3 { margin:9px 0 8px; color:#fff; }
.method-final .method-gates p { color:var(--text-2); font-size:.88rem; }

.method-final .method-output-grid {
  display:grid;
  grid-template-columns:minmax(190px,.78fr) minmax(280px,1.22fr);
  gap:24px;
  align-items:start;
}
.method-final .method-snapshot-output {
  padding:24px 0;
  border-top:1px solid var(--hairline-2);
  border-bottom:1px solid var(--hairline-2);
}
.method-final .method-snapshot-output h3 { margin:12px 0 18px; color:#fff; }
.method-final .method-snapshot-output ul { list-style:none; margin:0; padding:0; }
.method-final .method-snapshot-output li {
  padding:11px 0;
  border-top:1px solid var(--hairline-1);
}
.method-final .method-snapshot-output strong {
  display:block;
  color:#fff;
  font-size:.9rem;
}
.method-final .method-snapshot-output li span {
  display:block;
  margin-top:2px;
  color:var(--text-2);
  font-size:.78rem;
}
.method-final .method-paper {
  overflow-wrap:anywhere;
  padding:28px;
  border:1px solid var(--rule);
  border-radius:8px;
  background:var(--paper);
  box-shadow:var(--seat);
  color:var(--text);
}
.method-final .method-paper-label {
  color:var(--accent-wash);
  font-size:.6875rem;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.method-final .method-paper h3 {
  margin:10px 0 18px;
  color:var(--primary);
  font-size:1.35rem;
}
.method-final .method-paper ol { list-style:none; margin:0; padding:0; }
.method-final .method-paper li {
  display:grid;
  grid-template-columns:32px minmax(0,1fr);
  gap:10px;
  padding:11px 0;
  border-top:1px solid var(--rule);
  color:var(--text);
  font-size:.88rem;
  font-weight:600;
}
.method-final .method-paper li span {
  color:var(--accent-wash);
  font-family:var(--font-data);
  font-size:.6875rem;
  font-variant-numeric:tabular-nums;
}
.method-final .method-paper > p { margin-top:16px; color:var(--muted); font-size:.82rem; }
.method-final .method-strong-site {
  grid-column:1 / -1;
  max-width:62ch;
  padding-left:16px;
  border-left:2px solid var(--accent-hot);
  color:var(--text-2);
  font-size:.88rem;
}
.method-final .method-strong-site strong { color:#fff; }

.method-final .method-close h2 { margin:14px 0 16px; }
.method-final .method-close > .wrap > .lede { margin-bottom:28px; }

@media (max-width:820px) {
  .method-final .method-hero { padding:56px 0; }
  .method-final .method-hero-grid,
  .method-final .method-layout { grid-template-columns:minmax(0,1fr); gap:40px; }
  .method-final .method-hero h1 { max-width:17ch; }
  .method-final .method-hero .lede { max-width:58ch; }
  .method-final .method-section { padding:72px 0; }
  .method-final .method-section-head h2 { max-width:22ch; }
  .method-final .method-section-head .lede { max-width:58ch; }
  .method-final .method-output-grid { grid-template-columns:minmax(180px,.72fr) minmax(280px,1.28fr); }
}

@media (max-width:560px) {
  .method-final .method-hero { padding:42px 0 48px; }
  .method-final .method-hero-grid { gap:32px; }
  .method-final .method-scope-strip {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:0;
    padding:0;
  }
  .method-final .method-scope-strip li {
    padding:10px 8px 10px 0;
    white-space:normal;
  }
  .method-final .method-scope-strip li:nth-child(2n) {
    padding-left:12px;
    border-left:1px solid var(--hairline-1);
  }
  .method-final .method-scope-strip li:nth-child(n+3) { border-top:1px solid var(--hairline-1); }
  .method-final .method-scope-strip li + li::before { display:none; }
  .method-final .method-hero-actions .intake-ready-only { display:block; }
  .method-final .method-hero-actions .method-action { width:100%; }
  .method-final .method-hero-actions p { margin-top:10px; }
  .method-final .method-map li {
    grid-template-columns:40px minmax(0,1fr);
    gap:12px;
    padding:17px 16px;
  }
  .method-final .method-section { padding:56px 0; }
  .method-final .method-layout { gap:32px; }
  .method-final .method-scope-ledger > div {
    grid-template-columns:1fr;
    gap:6px;
    padding:18px 0;
  }
  .method-final .method-gates { grid-template-columns:1fr; }
  .method-final .method-gates li { padding:22px 0; border-left:0; }
  .method-final .method-gates li:nth-child(2n) { border-left:0; }
  .method-final .method-gates li:nth-child(n+2) { border-top:1px solid var(--hairline-1); }
  .method-final .method-output-grid { grid-template-columns:1fr; gap:28px; }
  .method-final .method-paper { padding:22px; }
  .method-final .method-close { padding-top:72px; }
}
