/* ═══════════════════════════════════════════════════════════
   RADIANZ — Landing V3 · "The ROI briefing"
   Editorial analyst-report. Light-first, restrained, data-forward.
   Refs: Ramp · Evidence · Pigment. Binds to --v2-* tokens.
   Outfit (display) · Inter (prose) · JetBrains Mono (figures only).
   ═══════════════════════════════════════════════════════════ */

.v3{
  --v3-accent:var(--v2-accent);
  /* AA-safe accent for small text on light paper (brand orange fails AA at 3.6:1) */
  --v3-accent-ink:#b8431f;
  --v3-line:var(--v2-border);
  --v3-mono:var(--v2-font-mono);
  font-family:var(--v2-font-body);
  color:var(--v2-text);
  background:var(--v2-bg);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
[data-bs-theme="dark"] .v3{--v3-accent-ink:var(--v2-accent-light)}
/* app.css sets a global [data-bs-theme="dark"] a{color:#4fc3f7} and p{color:...};
   re-assert the landing's own colors with higher specificity so links/leads stay on-brand. */
[data-bs-theme="dark"] .v3 a.v3-cta,
[data-bs-theme="dark"] .v3 a.v3-cta:hover{color:#fff}
[data-bs-theme="dark"] .v3 a.v3-textlink{color:var(--v2-text-bright)}
[data-bs-theme="dark"] .v3 a.v3-textlink:hover{color:var(--v3-accent-ink)}
[data-bs-theme="dark"] .v3 .v3-hero-lead,
[data-bs-theme="dark"] .v3 .v3-find-lead,
[data-bs-theme="dark"] .v3 .v3-close-lead,
[data-bs-theme="dark"] .v3 .v3-founding p,
[data-bs-theme="dark"] .v3 .v3-assure p{color:var(--v2-text-dim)}
.v3 *{box-sizing:border-box}
.v3 :where(h1,h2,h3,h4,p,ul,figure){margin:0}
.v3 :where(h1,h2,h3,h4,p,dd){overflow-wrap:break-word}
.v3 :where(.v3-cta,.v3-textlink,.v3-faq-q):focus-visible{outline:2px solid var(--v3-accent);outline-offset:3px;border-radius:5px}
.v3 :where(h1,h2,h3,h4){font-family:var(--v2-font-display);color:var(--v2-text-bright);letter-spacing:-0.02em}

/* container + spine */
.v3-wrap{max-width:1080px;margin:0 auto;padding:0 32px}
.v3-rule{border-top:1px solid var(--v3-line)}

/* mono marker (figures/labels) — no pills */
.v3-mk{font-family:var(--v3-mono);font-size:0.72rem;font-weight:500;letter-spacing:0.12em;text-transform:uppercase;color:var(--v2-text-dim)}
.v3-mk-ac{color:var(--v3-accent-ink)}
.v3-fig{font-family:var(--v3-mono);font-variant-numeric:tabular-nums}
.v3-fig-hi{color:var(--v2-text-bright);font-weight:600}

/* links / actions (restrained) */
.v3-cta{display:inline-flex;align-items:center;gap:9px;font-weight:600;font-size:1rem;padding:13px 22px;border-radius:var(--v2-radius-sm);
  background:var(--v3-accent);color:#fff;text-decoration:none;border:1px solid var(--v3-accent);transition:background .2s,transform .2s}
.v3-cta:hover{background:var(--v2-accent-hover)}
.v3-cta .a{transition:transform .2s}.v3-cta:hover .a{transform:translateX(3px)}
.v3-textlink{display:inline-flex;align-items:center;font-weight:600;font-size:0.98rem;color:var(--v2-text-bright);
  text-decoration:underline;text-decoration-color:var(--v3-line);text-decoration-thickness:1px;text-underline-offset:5px;
  padding-block:8px;transition:text-decoration-color .2s,color .2s}
.v3-textlink:hover{color:var(--v3-accent-ink);text-decoration-color:var(--v3-accent-ink)}

/* ══════ HERO ══════ */
.v3-hero{padding:clamp(76px,11vw,132px) 0 clamp(56px,7vw,88px)}
.v3-hero-top{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:clamp(36px,5vw,72px);align-items:start}
.v3-kicker{display:flex;align-items:center;gap:12px;margin-bottom:30px}
.v3-kicker .tick{width:22px;height:1px;background:var(--v3-accent)}
.v3-hero-title{font-size:clamp(2.7rem,5.6vw,4.1rem);line-height:1.04;font-weight:800;max-width:16ch;letter-spacing:-0.03em}
.v3-hero-title em{font-style:normal;color:var(--v3-accent)}
.v3-hero-lead{font-size:clamp(1.12rem,1.5vw,1.3rem);color:var(--v2-text-dim);margin:30px 0 40px;max-width:50ch;line-height:1.62}
.v3-hero-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap}
.v3-hero-note{font-family:var(--v3-mono);font-size:0.78rem;color:var(--v2-text-dim);margin-top:26px;letter-spacing:0.01em}

/* report cover-sheet metadata */
.v3-meta{border-top:2px solid var(--v2-text-bright);padding-top:16px}
.v3-meta-head{font-family:var(--v3-mono);font-size:0.7rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--v2-text-bright);font-weight:600;margin-bottom:6px}
.v3-meta-list{display:flex;flex-direction:column;gap:16px;margin-top:16px}
.v3-meta-list dt{font-family:var(--v3-mono);font-size:0.64rem;letter-spacing:0.08em;text-transform:uppercase;color:var(--v2-text-dim);margin-bottom:4px}
.v3-meta-list dd{font-family:var(--v3-mono);font-size:0.82rem;color:var(--v2-text-bright);margin:0;line-height:1.35}

/* ══════ EXHIBIT (framed figure) ══════ */
.v3-exhibit{margin-top:clamp(48px,7vw,80px);background:var(--v2-surface);border:1px solid var(--v3-line);border-radius:var(--v2-radius);
  padding:clamp(22px,3vw,34px) clamp(24px,3.4vw,40px) clamp(20px,2.4vw,30px);box-shadow:0 1px 2px rgba(16,16,28,.04),0 28px 60px -40px rgba(16,16,28,.5)}
.v3-ex-head{display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap;margin-bottom:24px;padding-bottom:18px;border-bottom:1px solid var(--v3-line)}
.v3-ex-cap{font-family:var(--v3-mono);font-size:0.76rem;letter-spacing:0.03em;color:var(--v2-text-dim)}
.v3-ex-cap b{color:var(--v2-text-bright);font-weight:600;letter-spacing:0.08em}
.v3-ex-legend{display:flex;gap:20px;font-family:var(--v3-mono);font-size:0.72rem;color:var(--v2-text-dim)}
.v3-ex-legend i{font-style:normal;display:inline-flex;align-items:center;gap:7px}
.v3-ex-legend .sw{width:16px;height:3px;border-radius:2px;display:inline-block}
.v3-ex-legend .sw.ship{background:var(--v3-accent)}
.v3-ex-legend .sw.spend{background:var(--v2-text-ghost)}
.v3-chart{width:100%;height:auto;display:block;overflow:visible}
.v3-chart .grid{stroke:var(--v3-line);stroke-width:1}
.v3-chart .axis{font-family:var(--v3-mono);font-size:11px;fill:var(--v2-text-ghost)}
.v3-chart .ship-area{fill:color-mix(in srgb,var(--v3-accent) 12%,transparent)}
.v3-chart .ship-line{fill:none;stroke:var(--v3-accent);stroke-width:2.5}
.v3-chart .spend-line{fill:none;stroke:var(--v2-text-ghost);stroke-width:1.5;stroke-dasharray:5 4}
.v3-chart .dot{fill:var(--v3-accent)}
.v3-chart .anno{font-family:var(--v3-mono);font-size:12px;fill:var(--v2-text-bright);font-weight:600}
.v3-chart .anno-sub{font-family:var(--v3-mono);font-size:11px;fill:var(--v2-text-dim)}
.v3-chart .pt{fill:var(--v3-accent)}
.v3-chart .brk{stroke:var(--v2-text-dim);stroke-width:1;stroke-dasharray:3 4;opacity:.7}
.v3-chart .brk-dot{fill:var(--v2-surface);stroke:var(--v3-accent);stroke-width:2}
.v3-chart .brk-lab{font-family:var(--v3-mono);font-size:11px;fill:var(--v2-text-dim)}
.v3-ex-foot{font-family:var(--v3-mono);font-size:0.68rem;color:var(--v2-text-dim);margin-top:16px;padding-top:14px;border-top:1px solid var(--v3-line)}

/* motion (calm, reduced-motion safe) */
@media (prefers-reduced-motion: no-preference){
  .v3-rise{opacity:0;transform:translateY(16px);animation:v3rise .7s cubic-bezier(.22,1,.36,1) both}
  @keyframes v3rise{to{opacity:1;transform:none}}
  .v3-has-js .v3-reveal{opacity:0;transform:translateY(22px);transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1)}
  .v3-has-js .v3-reveal.in{opacity:1;transform:none}
  .v3-chart .ship-line{stroke-dasharray:1;stroke-dashoffset:1;animation:v3draw 1.6s cubic-bezier(.22,1,.36,1) .25s forwards}
  @keyframes v3draw{to{stroke-dashoffset:0}}
  .v3-chart .ship-area,.v3-chart .spend-line,.v3-chart .pt,.v3-chart .dot,.v3-chart .anno,.v3-chart .brk,.v3-chart .brk-dot,.v3-chart .brk-lab{opacity:0;animation:v3fade .7s ease 1s forwards}
  .v3-chart .brk,.v3-chart .brk-dot,.v3-chart .brk-lab{animation-delay:1.3s}
}

/* micro-polish */
.v3-table tbody tr{transition:background .15s}
.v3-table tbody tr:hover{background:color-mix(in srgb,var(--v3-accent) 4%,transparent)}
@keyframes v3fade{to{opacity:1}}

/* ══════ THESIS (one analyst line) ══════ */
.v3-thesis{padding:clamp(48px,6vw,72px) 0}
.v3-thesis p{font-family:var(--v2-font-display);font-weight:600;font-size:clamp(1.4rem,2.6vw,1.9rem);line-height:1.3;color:var(--v2-text-bright);max-width:24ch;letter-spacing:-.01em}
.v3-thesis p em{font-style:normal;color:var(--v3-accent)}

/* ══════ FINDING (report row: label | content) ══════ */
.v3-find{display:grid;grid-template-columns:200px 1fr;gap:40px;padding:52px 0;align-items:start}
.v3-find-label{position:sticky;top:88px}
.v3-find-num{font-family:var(--v3-mono);font-size:0.9rem;color:var(--v3-accent-ink);font-weight:600}
.v3-find-tag{font-family:var(--v3-mono);font-size:0.72rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--v2-text-dim);margin-top:6px}
.v3-find h2{font-size:clamp(1.5rem,2.8vw,2rem);font-weight:700;line-height:1.14;max-width:18ch}
.v3-find-lead{color:var(--v2-text-dim);font-size:1.05rem;margin-top:14px;max-width:52ch;line-height:1.6}
.v3-find-exhibit{margin-top:26px}

/* report table (adoption) */
.v3-table{width:100%;border-collapse:collapse;font-size:0.86rem}
.v3-table th{font-family:var(--v3-mono);font-size:0.62rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--v2-text-ghost);
  text-align:left;font-weight:500;padding:0 0 10px}
.v3-table th.num,.v3-table td.num{text-align:right;font-family:var(--v3-mono);font-variant-numeric:tabular-nums}
.v3-table td{padding:12px 0;border-top:1px solid var(--v3-line);color:var(--v2-text);vertical-align:middle}
.v3-table td.name{font-family:var(--v3-mono);color:var(--v2-text-bright)}
.v3-bar{position:relative;height:8px;width:100%;max-width:220px;background:var(--v2-surface-2);border-radius:2px;overflow:hidden}
.v3-bar>span{position:absolute;inset:0 auto 0 0;background:var(--v3-accent);border-radius:2px}
.v3-seg{font-family:var(--v3-mono);font-size:0.74rem;text-transform:lowercase}
.v3-seg.power{color:var(--v3-accent-ink);font-weight:600}
.v3-seg.tried{color:var(--v2-text)}
.v3-seg.idle{color:var(--v2-text-ghost)}

/* funnel (impact/usage) */
.v3-funnel{display:flex;flex-direction:column;gap:12px;max-width:460px}
.v3-fn-row{display:grid;grid-template-columns:88px 1fr auto;gap:14px;align-items:center}
.v3-fn-row .lbl{font-family:var(--v3-mono);font-size:0.74rem;color:var(--v2-text-dim);text-transform:uppercase;letter-spacing:.06em}
.v3-fn-bar{height:10px;background:var(--v2-surface-2);border-radius:2px;position:relative;overflow:hidden}
.v3-fn-bar>span{position:absolute;inset:0 auto 0 0;background:var(--v3-accent);border-radius:2px}
.v3-fn-row .val{font-family:var(--v3-mono);font-variant-numeric:tabular-nums;color:var(--v2-text-bright);font-weight:600;font-size:0.9rem}

/* assurances list (control) */
.v3-assure{list-style:none;padding:0;display:flex;flex-direction:column;gap:18px}
.v3-assure li{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:start}
.v3-assure .ck{color:var(--v3-accent);font-size:0.8rem;margin-top:3px}
.v3-assure b{font-family:var(--v2-font-display);font-weight:600;color:var(--v2-text-bright);font-size:1rem}
.v3-assure p{color:var(--v2-text-dim);font-size:0.9rem;margin-top:3px;line-height:1.55}

/* ══════ PRICING (comparison table) ══════ */
.v3-pricing{padding:56px 0}
.v3-pricing-head{display:flex;justify-content:space-between;align-items:baseline;gap:20px;flex-wrap:wrap;margin-bottom:28px}
.v3-pricing-head h2{font-size:clamp(1.6rem,3vw,2.1rem);font-weight:700}
.v3-ptable{width:100%;border-collapse:collapse}
.v3-ptable th,.v3-ptable td{padding:14px 18px;text-align:left;border-top:1px solid var(--v3-line);font-size:0.9rem;vertical-align:top}
.v3-ptable thead th{border-top:none;vertical-align:bottom}
.v3-ptable .tier{font-family:var(--v2-font-display);font-weight:700;font-size:1.05rem;color:var(--v2-text-bright)}
.v3-ptable .tier small{display:block;font-family:var(--v3-mono);font-size:0.68rem;letter-spacing:.04em;color:var(--v2-text-dim);text-transform:uppercase;margin-top:4px;font-weight:400}
.v3-ptable .price{font-family:var(--v2-font-display);font-weight:800;font-size:1.7rem;color:var(--v2-text-bright)}
.v3-ptable .price small{font-family:var(--v3-mono);font-size:0.72rem;color:var(--v2-text-dim);font-weight:400}
.v3-ptable .rowlab{font-family:var(--v3-mono);font-size:0.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--v2-text-dim)}
.v3-ptable td.val{font-family:var(--v3-mono);font-variant-numeric:tabular-nums;color:var(--v2-text)}
.v3-ptable .yes{color:var(--v3-accent-ink)}
.v3-ptable .no{color:var(--v2-text-ghost)}
.v3-ptable col.rec,.v3-ptable td.rec,.v3-ptable th.rec{background:color-mix(in srgb,var(--v3-accent) 4%,transparent)}
.v3-ptable th.rec{border-top:2px solid var(--v3-accent)}
.v3-ptable tfoot td{border-top:1px solid var(--v3-line);padding-top:18px}

/* ══════ FOUNDING (contained panel, no separator lines) ══════ */
.v3-founding{display:grid;grid-template-columns:1fr auto;gap:32px;align-items:center;padding:36px 40px;
  background:var(--v2-surface);border:1px solid var(--v3-line);border-radius:var(--v2-radius);margin:8px 0}
.v3-founding h3{font-size:1.35rem;font-weight:700;margin-bottom:8px}
.v3-founding p{color:var(--v2-text-dim);font-size:0.98rem;max-width:56ch;line-height:1.55}
.v3-founding .spots{text-align:right;flex:none}
.v3-founding .spots b{font-family:var(--v2-font-display);font-size:2.6rem;font-weight:800;color:var(--v3-accent);line-height:1;display:block}
.v3-founding .spots small{font-family:var(--v3-mono);font-size:0.66rem;letter-spacing:.08em;text-transform:uppercase;color:var(--v2-text-dim)}

/* ══════ FAQ ══════ */
.v3-faq{padding:56px 0}
.v3-faq h2{font-size:clamp(1.6rem,3vw,2.1rem);font-weight:700;margin-bottom:24px}
.v3-faq-item{border-top:1px solid var(--v3-line)}
.v3-faq-item:first-child{border-top:none}
.v3-faq-q{width:100%;background:none;border:none;text-align:left;font-family:var(--v2-font-display);font-weight:600;font-size:1.08rem;color:var(--v2-text-bright);
  cursor:pointer;display:flex;justify-content:space-between;gap:18px;align-items:center;padding:20px 0}
.v3-faq-q:hover{color:var(--v3-accent-ink)}
.v3-faq-ic{font-family:var(--v3-mono);color:var(--v3-accent-ink);font-size:1.1rem;flex:none}
.v3-faq-a{padding:0 0 22px;color:var(--v2-text-dim);font-size:0.98rem;line-height:1.65;max-width:70ch}
.v3-faq-a b{color:var(--v2-text);font-weight:600}

/* ══════ CLOSE (editorial sign-off) ══════ */
.v3-close{padding:clamp(80px,11vw,128px) 0 clamp(64px,8vw,96px)}
.v3-close h2{font-size:clamp(2.3rem,5.2vw,3.6rem);font-weight:800;letter-spacing:-0.03em;line-height:1.02;max-width:15ch}
.v3-close-lead{color:var(--v2-text-dim);font-size:1.15rem;margin:24px 0 36px;max-width:46ch;line-height:1.55}
.v3-close-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}

/* ══════ RESPONSIVE ══════ */
@media(max-width:820px){
  .v3-hero-top{grid-template-columns:1fr;gap:36px}
  .v3-meta{max-width:380px}
  .v3-find{grid-template-columns:1fr;gap:20px}
  .v3-find-label{position:static}
  .v3-founding{grid-template-columns:1fr;gap:20px}
  .v3-founding .spots{text-align:left}
  .v3-ptable{display:block;overflow-x:auto;white-space:nowrap}
}
@media(max-width:520px){
  .v3-hero{padding:52px 0 0}
  .v3-hero-actions{gap:16px}
}
