/* Shared landing styles — brand tokens from home (dark #10171c, accent #e5342b) */
:root{
  --bg:#edf1f3;
  --surface:#ffffff;
  --nav:#10171c;
  --nav-ink:#eef2f3;
  --ink:#10171c;
  --ink-soft:#48575f;
  --ink-faint:#8497a1;
  --rec:#e5342b;
  --verify:#12866b;
  --line:#d7e0e3;
  --radius:4px;
  --font-display:"Big Shoulders Display","Arial Narrow",sans-serif;
  --font-body:"IBM Plex Sans","Helvetica Neue",Arial,sans-serif;
  --font-mono:"IBM Plex Mono",ui-monospace,Menlo,monospace;
  --container:880px;
}
*,*::before,*::after{ box-sizing:border-box; }
body{
  margin:0; background:var(--bg); color:var(--ink);
  font-family:var(--font-body); font-size:16px; line-height:1.55;
  -webkit-font-smoothing:antialiased;
}
a{ color:inherit; }
h1,h2,h3{ font-family:var(--font-display); text-wrap:balance; margin:0; line-height:0.96; font-weight:800; letter-spacing:0.002em; }
p{ margin:0; }
.container{ max-width:var(--container); margin:0 auto; padding:0 24px; }
.eyebrow{ font-family:var(--font-mono); font-weight:600; font-size:12px; letter-spacing:0.04em; text-transform:uppercase; color:var(--rec); display:flex; align-items:center; gap:8px; }
.eyebrow .rec-dot{ width:7px; height:7px; border-radius:50%; background:var(--rec); animation:blink 1.6s steps(1,end) infinite; }
@keyframes blink{ 0%,45%{ opacity:1; } 46%,100%{ opacity:0.15; } }
@media (prefers-reduced-motion:reduce){ *{ animation-duration:0.001ms !important; transition-duration:0.001ms !important; } }

.nav-bar{ background:var(--nav); color:var(--nav-ink); }
.nav{ display:flex; align-items:center; justify-content:space-between; padding:15px 0; gap:16px; }
.brand{ display:flex; align-items:center; gap:9px; font-family:var(--font-display); font-weight:800; font-size:19px; letter-spacing:0.01em; text-decoration:none; color:var(--nav-ink); }
.brand .dot{ width:8px; height:8px; border-radius:50%; background:var(--rec); animation:blink 1.6s steps(1,end) infinite; }
.nav a.cta{ font-weight:700; font-size:13px; font-family:var(--font-mono); text-decoration:none; background:var(--rec); color:#fff; padding:10px 16px; border-radius:var(--radius); white-space:nowrap; }

.disclosure-bar{ font-size:12px; font-family:var(--font-mono); color:var(--ink-faint); text-align:center; padding:9px 16px; border-bottom:1px solid var(--line); background:var(--surface); }

.hero{ padding:56px 0 40px; }
.hero h1{ margin-top:16px; font-size:clamp(34px,5.5vw,52px); max-width:18ch; text-transform:uppercase; }
.hero .lede{ margin-top:18px; font-size:17px; color:var(--ink-soft); max-width:54ch; }
.hero-actions{ margin-top:26px; display:flex; flex-wrap:wrap; gap:12px; }

.btn-primary{ font-weight:700; font-size:14.5px; font-family:var(--font-mono); background:var(--rec); color:#fff; border:none; padding:14px 22px; border-radius:var(--radius); text-decoration:none; display:inline-block; }
.btn-primary:hover{ filter:brightness(1.08); }
.btn-outline{ font-weight:700; font-size:14px; font-family:var(--font-mono); background:var(--rec); color:#fff; border:1.5px solid var(--rec); padding:12px 18px; border-radius:var(--radius); text-decoration:none; display:inline-block; }
.btn-outline:hover{ background:#c42a22; border-color:#c42a22; }
.btn-ghost{ font-weight:700; font-size:13.5px; font-family:var(--font-mono); background:transparent; color:var(--ink); border:1.5px solid var(--ink); padding:12px 18px; border-radius:var(--radius); text-decoration:none; display:inline-block; }

.cta-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:14px; margin:28px 0 8px; }
@media (max-width:640px){ .cta-grid{ grid-template-columns:1fr; } }
.cta-card{ background:var(--surface); border:1px solid var(--line); border-radius:8px; padding:22px 20px; display:flex; flex-direction:column; gap:10px; }
.cta-card h3{ font-size:22px; text-transform:uppercase; }
.cta-card p{ font-size:13.5px; color:var(--ink-soft); flex:1; }
.cta-card .btn-outline{ align-self:flex-start; margin-top:4px; }

.angle{ background:var(--nav); color:var(--nav-ink); padding:40px 0; margin:32px 0 0; }
.angle .lede{ color:#aebcc1; margin-top:12px; max-width:58ch; font-size:15px; }
.angle h2{ font-size:clamp(24px,3.5vw,34px); text-transform:uppercase; max-width:22ch; }

.back-link{ margin:28px 0 8px; font-family:var(--font-mono); font-size:13px; }
.back-link a{ color:var(--verify); text-decoration:none; font-weight:600; }
.back-link a:hover{ text-decoration:underline; }

footer{ padding:36px 0 50px; border-top:1px solid var(--line); margin-top:48px; }
.foot-legal{ font-size:12.5px; color:var(--ink-faint); font-family:var(--font-mono); line-height:1.5; max-width:62ch; }
.foot-links{ margin-top:14px; display:flex; gap:18px; font-family:var(--font-mono); font-size:12.5px; }
.foot-links a{ text-decoration:none; color:var(--ink-soft); }
.foot-links a:hover{ color:var(--ink); }

.cta-card .guide-link{ font-family:var(--font-mono); font-size:12px; font-weight:600; color:var(--verify); text-decoration:none; }
.cta-card .guide-link:hover{ text-decoration:underline; }
