/* L6-PURGE-SIGNUP 2026-10-26 */
/* L6-PURGE-SIGNUP (2026-10-26): the 40 inline style attrs of pricing.html moved here verbatim as pr-* classes.
   :not(#pr) = specificity guard (1-1-0) so each class beats .card.featured / .featured-tag / .cta exactly like
   the inline attr did; el.style.* still wins; the !important media overrides beat both. Lives in its own sheet
   (not the page <style>) so pricing.html stays inside the Lane LP gz budget. Spec: docs/lanes/L6_design.md. */
:root {
  --pr-white-a06: rgba(255,255,255,0.06);
  --pr-white-a10: rgba(255,255,255,0.1);
  --pr-ink-0b: #0B0A08;
  --pr-gold-a28: rgba(197,165,102,.28);
  --pr-gold-a18: rgba(197,165,102,.18);
  --pr-slate-0b0d10: #0b0d10;
  --pr-black-a45: rgba(0,0,0,.45);
  --pr-muted-89: #897D66;
  --pr-muted2-bc: #BCAE92;
}
.pr-nav:not(#pr) { position:sticky;top:0;z-index:100;display:flex;align-items:center;gap:12px;padding:12px 24px;background:var(--bg);border-bottom:1px solid var(--pr-white-a06);backdrop-filter:blur(8px) }
.pr-brand:not(#pr) { display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--text);font-weight:700;font-size:15px;letter-spacing:-.2px;min-height:44px }
.pr-brand-mark:not(#pr) { flex-shrink:0 }
.pr-spacer:not(#pr) { flex:1 }
.pr-nav-signin:not(#pr) { font-size:13px;color:var(--muted);text-decoration:none;padding:0 14px;border:1px solid var(--pr-white-a10);border-radius:6px;font-weight:500;min-height:44px;display:inline-flex;align-items:center;box-sizing:border-box;white-space:nowrap;flex-shrink:0 }
.pr-nav-cta:not(#pr) { font-size:13px;font-weight:600;color:var(--pr-ink-0b);background:var(--accent);text-decoration:none;padding:0 16px;min-height:44px;display:inline-flex;align-items:center;border-radius:6px;white-space:nowrap;flex-shrink:0 }
.pr-lead-promo:not(#pr) { font-size:14px;color:var(--accent);margin-top:16px;font-weight:600 }
.pr-c-accent:not(#pr) { color:var(--accent) }
.pr-shot:not(#pr) { max-width:920px;margin:0 auto 40px;border:1px solid var(--pr-gold-a28);border-radius:10px;overflow:hidden;background:var(--pr-slate-0b0d10);box-shadow:0 18px 48px var(--pr-black-a45) }
.pr-shot-img:not(#pr) { display:block;width:100%;height:auto }
.pr-shot-cap:not(#pr) { padding:10px 14px;font-size:11.5px;color:var(--muted);border-top:1px solid var(--pr-gold-a18);letter-spacing:.02em }
.pr-grid:not(#pr) { grid-template-columns:repeat(auto-fit, minmax(300px, 1fr));gap:24px;max-width:920px;margin:0 auto }
.pr-card-featured:not(#pr) { border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset }
.pr-tag-featured:not(#pr) { background:var(--accent);color:var(--pr-ink-0b) }
.pr-fineprint:not(#pr) { font-size:11px;color:var(--muted);margin-top:14px;text-align:center }
.pr-card-hair:not(#pr) { border-color:var(--hairline) }
.pr-tag-ghost:not(#pr) { background:transparent;border:1px solid var(--muted);color:var(--muted) }
.pr-sub-promo:not(#pr) { color:var(--accent);font-weight:600 }
.pr-mt4:not(#pr) { margin-top:4px }
.pr-link-inherit:not(#pr) { color:inherit;text-decoration:underline }
.pr-cta-ghost:not(#pr) { background:transparent;border:1px solid var(--accent);color:var(--accent) }
.pr-mt36:not(#pr) { margin-top:36px }
.pr-method:not(#pr) { text-align:center;margin-top:14px;font-size:12px;line-height:1.6;color:var(--pr-muted-89);max-width:640px;margin-left:auto;margin-right:auto }
.pr-method-link:not(#pr) { color:var(--pr-muted2-bc);letter-spacing:.03em;text-decoration:underline;text-underline-offset:2px;white-space:nowrap }
.pr-cell-note:not(#pr) { font-size:11px;font-weight:500;color:var(--muted) }
.pr-fs11:not(#pr) { font-size:11px }
.pr-footnote:not(#pr) { font-size:11px;color:var(--muted);text-align:center;margin-top:14px;line-height:1.6 }
.pr-mt48:not(#pr) { margin-top:48px }
.pr-mb12:not(#pr) { margin-bottom:12px }
.pr-mt32:not(#pr) { margin-top:32px }
.pr-fs14:not(#pr) { font-size:14px }
.pr-c-muted:not(#pr) { color:var(--muted) }
.pr-m0:not(#pr) { margin:0 }
.pr-fs20:not(#pr) { font-size:20px }
/* /L6-PURGE-SIGNUP */

/* ── W-8 token purge: styles moved from pricing.html <style> block ── */

  :root {
    /* Noir (2026-06-18): warm obsidian + cream + champagne gold */
    --bg: #0B0A08; --card: #15120E; --border: #241F18;
    --text: #F6EEE0; --muted: #897D66; --accent: #C5A566;
    --green: #79AC84; --gold: #C5A566; --red: #C77B6B;
  }
  .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}
  * { box-sizing: border-box; }
  a { color: var(--gold); }  /* no browser-default-blue links */

  body {
    margin: 0; min-height: 100vh; background: var(--bg); color: var(--text);
    font-family: var(--font-body);
    line-height: 1.55;
  }
  .container { max-width: 1100px; margin: 0 auto; padding: 60px 24px; }
  .hero { text-align: center; margin-bottom: 40px; }
  h1 { font-size: 38px; margin: 0 0 12px; font-weight: 400; font-family: var(--font-display); font-synthesis: none; }
  h2 { font-family: var(--font-display); font-weight: 400; font-synthesis: none; }
  .lead { color: var(--muted); font-size: 18px; max-width: 620px; margin: 0 auto; }

  /* ── Toggle ──────────────────────────────────────────────── */
  .toggle-section {
    display: flex; flex-direction: column; align-items: center; gap: 10px;
    margin: 32px 0 40px;
  }
  .toggle-label { font-size: 13px; color: var(--muted); }
  .toggle-row {
    display: flex; justify-content: center; gap: 0;
    user-select: none;
  }
  .toggle-btn {
    background: var(--card); border: 1px solid var(--border); color: var(--muted);
    padding: 11px 28px; cursor: pointer; font-size: 14px; font-weight: 500;
    transition: all 0.15s;
  }
  .toggle-btn:first-child { border-radius: 7px 0 0 7px; border-right: none; }
  .toggle-btn:last-child { border-radius: 0 7px 7px 0; }
  .toggle-btn.active { background: var(--accent); color: #0B0A08; border-color: var(--accent); font-weight: 700; }
  .save-tag {
    display: inline-block; background: rgba(201, 163, 91, 0.15);
    color: var(--gold); padding: 2px 9px; border-radius: 4px;
    font-size: 11px; font-weight: 700; margin-left: 8px; letter-spacing: 0.3px;
    vertical-align: middle;
  }
  .save-callout {
    font-size: 13px; color: var(--gold); font-weight: 600;
    min-height: 20px; transition: opacity 0.2s;
  }
  .save-callout.hidden { opacity: 0; }

  /* ── Pricing grid ────────────────────────────────────────── */
  .grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 20px;
    align-items: start;
  }
  .card {
    background: var(--card); border: 1px solid var(--border);
    border-radius: 10px; padding: 32px 24px; position: relative;
  }
  .card.featured { border-color: var(--accent); box-shadow: 0 0 0 1px var(--accent); }
  .card.anchor {
    opacity: 0.6;
    border-style: dashed;
    filter: saturate(0.5);
  }
  .featured-tag, .anchor-tag {
    position: absolute; top: -12px; left: 50%; transform: translateX(-50%);
    padding: 3px 14px; border-radius: 4px; font-size: 11px;
    font-weight: 700; letter-spacing: 0.5px; white-space: nowrap;
  }
  .featured-tag { background: var(--accent); color: #0B0A08; }
  .anchor-tag { background: #A99BB0; color: #A99BB0; border: 1px solid #A99BB0; }
  .tier-name { font-size: 14px; color: var(--muted); margin-bottom: 6px; letter-spacing: 0.5px; text-transform: uppercase; }
  .price-row { display: flex; align-items: baseline; gap: 8px; margin-bottom: 4px; }
  .price-num { font-size: 64px; font-weight: 700; letter-spacing: -0.02em; line-height: 1; font-family: var(--font-mono); font-variant-numeric: tabular-nums; }
  .price-unit { color: var(--muted); }
  .price-sub { font-size: 13px; color: var(--muted); margin-bottom: 24px; min-height: 18px; }
  ul { list-style: none; padding: 0; margin: 0 0 28px; }
  li {
    padding: 8px 0; padding-left: 28px; position: relative;
    font-size: 14px; color: var(--text);
  }
  li::before {
    content: "✓"; position: absolute; left: 0; top: 8px;
    color: var(--accent); font-weight: 700;
  }
  .cta {
    display: block; background: var(--accent); color: #0B0A08;
    padding: 14px; border-radius: 6px; text-decoration: none;
    font-weight: 600; text-align: center; font-size: 15px;
    transition: opacity 0.15s;
  }
  .cta:hover { opacity: 0.9; }
  .cta-ghost {
    display: block; background: transparent;
    border: 1px solid #A99BB0; color: #A99BB0;
    padding: 14px; border-radius: 6px; text-decoration: none;
    font-weight: 500; text-align: center; font-size: 14px;
    transition: background 0.15s;
  }
  .cta-ghost:hover { background: rgba(109,40,217,0.12); }
  .coming-soon {
    text-align: center; font-size: 12px; color: #A99BB0;
    margin-top: 10px; opacity: 0.8;
  }

  /* ── Comparison table ───────────────────────────────────── */
  .compare {
    margin-top: 72px; padding-top: 52px; border-top: 1px solid var(--border);
  }
  .compare h2 {
    text-align: center; font-size: 24px; margin-bottom: 8px; font-weight: 600;
  }
  .compare-sub {
    text-align: center; color: var(--muted); font-size: 14px; margin-bottom: 36px;
  }
  .table-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; }
  /* Mobile swipe affordance (QA 2026-08-26): right-edge fade + hint so a
     clipped table reads as scrollable, not broken. Fade sits on the
     non-scrolling wrapper so it stays pinned while the table pans. */
  .table-wrap { position: relative; }
  .table-swipe-hint { display: none; }
  @media (max-width: 700px) {
    .table-wrap::after {
      content: ''; position: absolute; top: 0; right: 0; bottom: 0;
      width: 72px; pointer-events: none; z-index: 3;
      background: linear-gradient(90deg, rgba(11,10,8,0) 0%, rgba(11,10,8,.55) 45%, rgba(11,10,8,1) 100%);
    }
    .table-swipe-hint {
      display: block; text-align: center; color: var(--muted);
      font-size: 11px; padding: 8px 0 0; letter-spacing: .04em;
    }
    /* Column sizing so the NEXT column peeks at 390px (peek = the real
       "this scrolls" affordance) + sticky label column so rows stay
       readable mid-swipe. */
    .compare .compare-table { table-layout: fixed; width: 832px; min-width: 832px; font-size: 12.5px; }
    .compare .compare-table thead th, .compare .compare-table tbody td { padding: 9px 10px; }
    .compare .compare-table thead th:first-child,
    .compare .compare-table tbody td:first-child {
      position: sticky; left: 0; z-index: 2;
      background: #0B0A08; width: 128px;
      white-space: normal;
    }
    .compare .compare-table tbody tr:nth-child(even) td:first-child { background: #100F0C; }
    .compare .compare-table thead th:not(:first-child),
    .compare .compare-table tbody td:not(:first-child) { width: 176px; white-space: normal; }
    .compare .compare-table thead th { white-space: normal; }
  }
  .compare-table {
    width: 100%; border-collapse: collapse; min-width: 820px;
    font-size: 14px;
  }
  .compare-table thead th {
    padding: 12px 16px; text-align: center; font-weight: 600;
    background: #0d1420; border-bottom: 2px solid var(--border);
    white-space: nowrap;
  }
  .compare-table thead th:first-child { text-align: left; }
  .compare-table thead .col-apex {
    color: var(--accent); border-bottom-color: var(--accent);
  }
  .compare-table tbody tr:nth-child(even) { background: rgba(255,255,255,0.02); }
  .compare-table tbody td {
    padding: 10px 16px; border-bottom: 1px solid var(--border);
    text-align: center; vertical-align: middle;
  }
  .compare-table tbody td:first-child { text-align: left; color: var(--text); font-weight: 500; }
  .compare-table tbody td.apex-win { color: var(--green); font-weight: 600; }
  .compare-table tbody td.neutral { color: var(--muted); }
  .compare-table tbody td.them-no { color: #8B8F98; } /* Lane LP: contrast >=4.5:1 */
  .compare-table .price-row-cell { font-weight: 700; }
  .compare-table .apex-price { color: var(--accent); font-size: 16px; }
  .compare-table .comp-price { color: var(--muted); font-size: 13px; }

  /* ── Founding offer ─────────────────────────────────────── */
  .founding {
    margin-top: 72px; padding: 36px 32px; border: 1px solid var(--gold);
    border-radius: 12px; background: rgba(245,158,11,0.05);
    max-width: 680px; margin-left: auto; margin-right: auto;
    margin-top: 72px;
  }
  .founding h2 {
    text-align: center; font-size: 20px; margin: 0 0 20px; font-weight: 600;
    color: var(--gold);
  }
  .founding ul { margin-bottom: 0; }
  .founding li { color: var(--text); }
  .founding li::before { color: var(--gold); }
  .founding .slots {
    text-align: center; margin-top: 18px;
    font-size: 13px; color: var(--muted);
  }
  .founding .slots strong { color: var(--gold); }

  /* ── Footer ─────────────────────────────────────────────── */
  .footnote {
    text-align: center; margin-top: 60px; color: var(--muted); font-size: 13px;
  }
  .footnote a { color: var(--muted); }
  .disclaimer-footer {
    margin-top: 40px; padding: 20px 24px;
    border-top: 1px solid var(--border);
    font-size: 12px; color: var(--muted); text-align: center; line-height: 1.6;
  }
  .disclaimer-footer a, .price-sub a { color: var(--gold); text-decoration: underline; text-underline-offset: 2px; }
  /* LANE FN 0921: prose links in disclaimer + price-sub → 44px hit rect via vertical padding (LP2 pattern) */
  .disclaimer-footer a, .price-sub a { padding-top: 15px; padding-bottom: 15px; }
  .disclaimer-footer a:hover, .price-sub a:hover { color: var(--accent); }

  /* ── Responsive ─────────────────────────────────────────── */
  @media (max-width: 820px) {
    .grid {
      grid-template-columns: 1fr;
      max-width: 460px;
      margin: 0 auto;
    }
    .card.anchor { opacity: 0.55; }
    h1 { font-size: 28px; }
  }
  @media (max-width: 520px) {
    .container { padding: 32px 14px 64px; }
    .hero { margin-bottom: 28px; }
    h1 { font-size: 24px; line-height: 1.2; }
    .lead { font-size: 14px; }
    .toggle-btn { padding: 10px 16px; font-size: 13px; }
    .toggle-section { margin-bottom: 28px; }
    .price-num { font-size: 48px; }
    .price-unit { font-size: 13px; }
    .card { padding: 24px 18px; }
    .featured-tag, .anchor-tag { font-size: 10px; padding: 3px 10px; }
    .compare { margin-top: 44px; padding-top: 32px; }
    .compare h2 { font-size: 20px; }
    .founding h2 { font-size: 18px; }
    .footnote .cta { font-size: 14px; padding: 13px; }
  }
  /* ── Council 2026-09-29 site-perfect lane (P2-1 nav, P2-2 table) ── */
  @media (max-width: 480px) {
    .site-nav { padding: 10px 12px !important; gap: 8px !important; }
    .site-nav .nav-btn { padding: 0 11px !important; font-size: 12px !important; }
    .compare-table { width: 100% !important; min-width: 0 !important; table-layout: fixed; font-size: 11px; }
    .compare-table th, .compare-table td { padding: 7px 5px !important; }
    .compare-table th:first-child, .compare-table td:first-child { position: static !important; width: 40% !important; }
    .compare-table th:not(:first-child), .compare-table td:not(:first-child) { width: 30% !important; }
    .table-scroll { overflow-x: visible !important; }
    .table-wrap::after, .table-swipe-hint { display: none !important; }
  }

/* ── W-8 icon-gold: SVG icon token (currentColor → var(--gold)) ── */
.icon-gold { color: var(--gold); }
