/* =========================================================================
   crypto.co.uk — base component styles (Phase 1)
   Design tokens are also exposed by theme.json; the custom properties below
   mirror them so the theme's patterns render identically on front end and in
   the block editor. Component classes are consumed by the theme's patterns.
   ========================================================================= */

:root {
  --c-ink:#0D1321; --c-ink-2:#28324A; --c-text:#3A465C; --c-muted:#6B7689; --c-faint:#9AA4B5;
  --c-bg:#FFFFFF; --c-surface:#F6F8FB; --c-surface-2:#EEF2F7; --c-border:#E3E8F0; --c-border-2:#D4DBE6;
  --c-accent:#2F6BFF; --c-accent-700:#1E47C4; --c-accent-50:#ECF1FF; --c-accent-ink:#0A2A7A;
  --c-positive:#0E9E84; --c-positive-50:#E6F6F2;
  --c-warning:#B7791F; --c-warning-50:#FBF3E2; --c-warning-bd:#ECD9AE;
  --c-dark:#0B1020; --c-dark-2:#121A30; --c-on-dark:#E8ECF5; --c-on-dark-mut:#9BA6BE;

  --font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,Helvetica,Arial,sans-serif;
  --font-mono:"SFMono-Regular",ui-monospace,"JetBrains Mono",Menlo,Consolas,monospace;

  --fs-display:clamp(2.5rem,5vw,3.5rem); --fs-h1:clamp(2rem,4vw,2.75rem);
  --fs-h2:clamp(1.6rem,3vw,2rem); --fs-h3:1.5rem; --fs-h4:1.25rem;
  --fs-lg:1.125rem; --fs-base:1rem; --fs-sm:.875rem; --fs-xs:.75rem;
  --lh-tight:1.1; --lh-snug:1.25; --lh-body:1.6;
  --fw-reg:400; --fw-med:500; --fw-sb:600; --fw-bold:700;
  --tr-tight:-0.02em; --tr-eyebrow:.14em;

  --sp-1:4px; --sp-2:8px; --sp-3:12px; --sp-4:16px; --sp-5:24px;
  --sp-6:32px; --sp-7:48px; --sp-8:64px; --sp-9:96px; --sp-10:128px;
  --r-sm:8px; --r-md:12px; --r-lg:16px; --r-xl:24px; --r-pill:999px;
  --sh-1:0 1px 2px rgba(13,19,33,.05),0 1px 1px rgba(13,19,33,.04);
  --sh-2:0 4px 16px rgba(13,19,33,.06),0 1px 3px rgba(13,19,33,.05);
  --sh-3:0 12px 40px rgba(13,19,33,.10),0 2px 8px rgba(13,19,33,.06);
  --wide:1120px;
  --transition:160ms cubic-bezier(.4,0,.2,1);
}

/* ---- Base ---- */
body{font-family:var(--font-sans);font-size:var(--fs-base);line-height:var(--lh-body);
  color:var(--c-text);background:var(--c-bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
:where(h1,h2,h3,h4){color:var(--c-ink);line-height:var(--lh-snug);font-weight:var(--fw-sb);letter-spacing:var(--tr-tight);}
a{color:var(--c-accent);text-decoration:none;} a:hover{color:var(--c-accent-700);}
:focus-visible{outline:3px solid var(--c-accent);outline-offset:2px;border-radius:4px;}
/* Ensure focus rings stay visible on dark sections (hero, CTA band, footer). */
.hero :focus-visible,.cta-band :focus-visible,.site-footer :focus-visible{outline-color:#fff;}
img{max-width:100%;height:auto;}

/* ---- Skip link (accessibility) ---- */
.skip-link{position:absolute;left:-9999px;top:0;z-index:100;}
.skip-link:focus{left:var(--sp-4);top:var(--sp-4);display:inline-flex;align-items:center;
  background:var(--c-accent);color:#fff;font-weight:var(--fw-sb);font-size:var(--fs-sm);
  padding:10px 16px;border-radius:var(--r-sm);box-shadow:var(--sh-2);text-decoration:none;}

/* ---- Layout helpers ---- */
.wrap{max-width:var(--wide);margin:0 auto;padding:0 var(--sp-5);}
.eyebrow{font-size:var(--fs-xs);font-weight:var(--fw-sb);letter-spacing:var(--tr-eyebrow);
  text-transform:uppercase;color:var(--c-accent);margin:0 0 var(--sp-3);}
.section{padding:var(--sp-9) 0;}
.section--tight{padding:var(--sp-8) 0;}
.section-head{max-width:640px;margin-bottom:var(--sp-7);}
.section-head h2{font-size:var(--fs-h2);margin:0 0 var(--sp-3);}
.section-head p{color:var(--c-muted);font-size:var(--fs-lg);margin:0;}

/* ---- Buttons ---- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);
  font-family:var(--font-sans);font-size:var(--fs-base);font-weight:var(--fw-sb);line-height:1;
  padding:14px 22px;border-radius:var(--r-md);cursor:pointer;border:1px solid transparent;
  transition:var(--transition);text-decoration:none;white-space:nowrap;}
.btn-primary{background:var(--c-accent);color:#fff;box-shadow:var(--sh-1);}
.btn-primary:hover{background:var(--c-accent-700);color:#fff;transform:translateY(-1px);box-shadow:var(--sh-2);}
.btn-secondary{background:#fff;color:var(--c-ink);border-color:var(--c-border-2);}
.btn-secondary:hover{border-color:var(--c-ink-2);color:var(--c-ink);}
.btn-ghost{background:transparent;color:var(--c-accent);}
.btn-ghost:hover{background:var(--c-accent-50);}
.btn-on-dark{background:#fff;color:var(--c-ink);}
.btn-on-dark:hover{background:var(--c-on-dark);}
.btn-sm{padding:9px 14px;font-size:var(--fs-sm);border-radius:var(--r-sm);}
.btn-row{display:flex;gap:var(--sp-3);flex-wrap:wrap;align-items:center;}

/* ---- Header ---- */
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.85);
  backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--c-border);}
.nav{display:flex;align-items:center;justify-content:space-between;height:68px;gap:var(--sp-5);}
.brand{display:flex;align-items:center;gap:10px;font-weight:var(--fw-bold);font-size:1.125rem;
  color:var(--c-ink);letter-spacing:var(--tr-tight);}
.brand .mark{width:26px;height:26px;border-radius:7px;background:linear-gradient(135deg,#2F6BFF,#0E9E84);box-shadow:var(--sh-1);}
.brand .tld{color:var(--c-muted);font-weight:var(--fw-sb);}
.nav-links{display:flex;align-items:center;gap:var(--sp-6);list-style:none;margin:0;padding:0;}
.nav-links a{color:var(--c-ink-2);font-size:var(--fs-sm);font-weight:var(--fw-med);}
.nav-links a:hover{color:var(--c-accent);}
.nav-cta{display:flex;align-items:center;gap:var(--sp-3);}
@media (max-width:860px){.nav-links{display:none;}}

/* ---- Hero ---- */
.hero{position:relative;overflow:hidden;background:
    radial-gradient(1200px 520px at 78% -12%,rgba(47,107,255,.28),transparent 60%),
    linear-gradient(180deg,var(--c-dark) 0%,var(--c-dark-2) 100%);color:var(--c-on-dark);}
.hero::after{content:"";position:absolute;inset:0;background-image:
    linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:48px 48px;mask-image:radial-gradient(760px 420px at 72% 0%,#000,transparent 72%);pointer-events:none;}
.hero .wrap{position:relative;z-index:1;padding-top:var(--sp-10);padding-bottom:var(--sp-10);}
.hero-inner{max-width:680px;}
.hero .badge{display:inline-flex;align-items:center;gap:8px;font-size:var(--fs-xs);letter-spacing:.1em;
  text-transform:uppercase;color:var(--c-on-dark);border:1px solid rgba(255,255,255,.2);
  border-radius:var(--r-pill);padding:6px 14px;margin-bottom:var(--sp-5);}
.hero .badge .dot{width:7px;height:7px;border-radius:50%;background:var(--c-positive);}
.hero h1{color:#fff;font-size:var(--fs-display);font-weight:var(--fw-bold);line-height:var(--lh-tight);margin:0;}
.hero .sub{color:var(--c-on-dark-mut);font-size:var(--fs-lg);margin:var(--sp-4) 0 var(--sp-6);max-width:560px;}
.hero .trust-row{display:flex;flex-wrap:wrap;gap:var(--sp-3);margin-top:var(--sp-7);}
.hero .trust{display:inline-flex;align-items:center;gap:var(--sp-2);font-size:var(--fs-sm);
  color:var(--c-on-dark);background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);
  border-radius:var(--r-pill);padding:8px 16px;}
.hero .trust .tick{color:var(--c-positive);font-weight:var(--fw-bold);}

/* ---- Start here cards ---- */
.start-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-4);}
@media (max-width:900px){.start-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:520px){.start-grid{grid-template-columns:1fr;}}
.start-card{display:flex;flex-direction:column;gap:var(--sp-3);background:#fff;border:1px solid var(--c-border);
  border-radius:var(--r-lg);padding:var(--sp-5);box-shadow:var(--sh-1);transition:var(--transition);}
.start-card:hover{box-shadow:var(--sh-3);transform:translateY(-2px);border-color:var(--c-border-2);}
.start-card .ic{width:42px;height:42px;border-radius:var(--r-md);background:var(--c-accent-50);
  color:var(--c-accent);display:flex;align-items:center;justify-content:center;font-size:1.1rem;}
.start-card .t{font-weight:var(--fw-sb);color:var(--c-ink);font-size:var(--fs-lg);}
.start-card .d{font-size:var(--fs-sm);color:var(--c-muted);}
.start-card .go{margin-top:auto;font-size:var(--fs-sm);font-weight:var(--fw-sb);color:var(--c-accent);}

/* ---- Comparison preview ---- */
.compare{background:var(--c-surface);}
.ex-list{display:flex;flex-direction:column;gap:var(--sp-4);}
.ex-card{display:grid;grid-template-columns:56px 1.4fr 1.4fr auto;gap:var(--sp-5);align-items:center;
  background:#fff;border:1px solid var(--c-border);border-radius:var(--r-lg);
  padding:var(--sp-5);box-shadow:var(--sh-1);transition:var(--transition);}
.ex-card:hover{box-shadow:var(--sh-2);border-color:var(--c-border-2);}
.ex-logo{width:56px;height:56px;border-radius:var(--r-md);box-shadow:var(--sh-1);}
.ex-id .name{font-weight:var(--fw-sb);color:var(--c-ink);font-size:var(--fs-lg);}
.ex-id .best{display:inline-block;margin-top:6px;font-size:var(--fs-xs);font-weight:var(--fw-sb);
  color:var(--c-accent-ink);background:var(--c-accent-50);border-radius:var(--r-pill);padding:3px 10px;}
.ex-feat{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:var(--fs-sm);color:var(--c-muted);}
.ex-feat li{display:flex;align-items:center;gap:8px;}
.ex-feat .tick{color:var(--c-positive);font-weight:var(--fw-bold);}
.ex-right{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:var(--sp-3);}
.rating{display:inline-flex;align-items:baseline;gap:8px;}
.rating .num{font-weight:var(--fw-bold);color:var(--c-ink);font-size:1.25rem;}
.rating .stars{color:var(--c-accent);letter-spacing:2px;font-size:var(--fs-sm);}
.rating .out{font-size:var(--fs-xs);color:var(--c-faint);}
.compare-note{margin-top:var(--sp-5);font-size:var(--fs-sm);color:var(--c-faint);}
@media (max-width:820px){
  .ex-card{grid-template-columns:48px 1fr;grid-template-areas:"logo id" "feat feat" "right right";row-gap:var(--sp-4);}
  .ex-logo{grid-area:logo;width:48px;height:48px;} .ex-id{grid-area:id;} .ex-feat{grid-area:feat;}
  .ex-right{grid-area:right;align-items:center;text-align:left;flex-direction:row;justify-content:space-between;}
}

/* ---- Methodology / how we compare ---- */
.method-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-7);align-items:start;}
@media (max-width:820px){.method-grid{grid-template-columns:1fr;}}
.method-list{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-4);}
@media (max-width:520px){.method-list{grid-template-columns:1fr;}}
.method-item{background:#fff;border:1px solid var(--c-border);border-radius:var(--r-md);padding:var(--sp-5);}
.method-item .h{display:flex;align-items:center;gap:10px;font-weight:var(--fw-sb);color:var(--c-ink);margin-bottom:6px;}
.method-item .h .ic{width:30px;height:30px;border-radius:8px;background:var(--c-accent-50);color:var(--c-accent);
  display:flex;align-items:center;justify-content:center;font-size:.9rem;}
.method-item p{font-size:var(--fs-sm);color:var(--c-muted);margin:0;}

/* ---- Guides ---- */
.guide-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-5);}
@media (max-width:900px){.guide-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:520px){.guide-grid{grid-template-columns:1fr;}}
.guide-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--c-border);
  border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-1);transition:var(--transition);}
.guide-card:hover{box-shadow:var(--sh-3);transform:translateY(-2px);}
.guide-card .thumb{height:120px;background:linear-gradient(135deg,var(--c-surface-2),#fff);
  border-bottom:1px solid var(--c-border);position:relative;}
.guide-card .thumb::after{content:"";position:absolute;inset:0;background-image:
    linear-gradient(rgba(47,107,255,.06) 1px,transparent 1px),
    linear-gradient(90deg,rgba(47,107,255,.06) 1px,transparent 1px);background-size:24px 24px;}
.guide-card .body{padding:var(--sp-5);display:flex;flex-direction:column;gap:var(--sp-2);flex:1;}
.guide-card .tag{font-size:var(--fs-xs);font-weight:var(--fw-sb);letter-spacing:.08em;text-transform:uppercase;color:var(--c-muted);}
.guide-card h3{font-size:var(--fs-h4);margin:0;}
.guide-card .meta{margin-top:auto;font-size:var(--fs-sm);color:var(--c-accent);font-weight:var(--fw-sb);}

/* ---- Risk / disclosure ---- */
.disclosure-band{background:var(--c-surface);}
.draft-flag{display:inline-block;font-size:var(--fs-xs);font-weight:var(--fw-sb);color:var(--c-warning);
  background:var(--c-warning-50);border:1px dashed var(--c-warning-bd);padding:2px 8px;border-radius:var(--r-sm);
  margin-bottom:var(--sp-4);text-transform:uppercase;letter-spacing:.06em;}
.disc-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-5);}
@media (max-width:820px){.disc-grid{grid-template-columns:1fr;}}
.risk{border-left:3px solid var(--c-warning);background:var(--c-warning-50);border-radius:var(--r-sm);
  padding:var(--sp-5);font-size:var(--fs-sm);color:#6B5417;}
.risk .label{display:inline-block;font-weight:var(--fw-sb);color:var(--c-warning);text-transform:uppercase;
  letter-spacing:.08em;font-size:var(--fs-xs);margin-bottom:6px;}
.disclosure{background:#fff;border:1px solid var(--c-border);border-radius:var(--r-sm);
  padding:var(--sp-5);font-size:var(--fs-sm);color:var(--c-muted);}
.disclosure strong{color:var(--c-ink-2);}

/* ---- CTA band ---- */
.cta-band{background:linear-gradient(180deg,var(--c-dark),var(--c-dark-2));color:#fff;border-radius:var(--r-xl);
  padding:var(--sp-8);text-align:center;position:relative;overflow:hidden;}
.cta-band h2{color:#fff;font-size:var(--fs-h2);margin:0 0 var(--sp-3);}
.cta-band p{color:var(--c-on-dark-mut);max-width:520px;margin:0 auto var(--sp-6);}

/* ---- FAQ (native details, no JS) ---- */
.faq{display:flex;flex-direction:column;gap:var(--sp-3);max-width:760px;}
.faq details{background:#fff;border:1px solid var(--c-border);border-radius:var(--r-md);padding:var(--sp-4) var(--sp-5);}
.faq summary{cursor:pointer;font-weight:var(--fw-sb);color:var(--c-ink);list-style:none;display:flex;justify-content:space-between;align-items:center;gap:var(--sp-4);}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:"+";color:var(--c-accent);font-weight:var(--fw-bold);font-size:1.25rem;}
.faq details[open] summary::after{content:"–";}
.faq details p{margin-top:var(--sp-3);font-size:var(--fs-sm);color:var(--c-muted);}

/* ---- Article / single ---- */
.article{max-width:720px;margin:0 auto;padding:var(--sp-8) var(--sp-5);}
.article .post-meta{font-size:var(--fs-sm);color:var(--c-muted);margin-bottom:var(--sp-5);}
.page-head{padding:var(--sp-8) 0 var(--sp-5);}

/* ---- Footer ---- */
.site-footer{background:var(--c-dark);color:var(--c-on-dark-mut);padding:var(--sp-8) 0 var(--sp-6);}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:var(--sp-6);}
@media (max-width:820px){.foot-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:520px){.foot-grid{grid-template-columns:1fr;}}
.site-footer .brand{color:#fff;margin-bottom:var(--sp-3);}
.site-footer .brand .tld{color:var(--c-on-dark-mut);}
.foot-about{font-size:var(--fs-sm);color:var(--c-on-dark-mut);max-width:280px;}
.foot-col h4{color:#fff;font-size:var(--fs-sm);text-transform:uppercase;letter-spacing:.08em;margin-bottom:var(--sp-4);}
.foot-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-3);}
.foot-col a{color:var(--c-on-dark-mut);font-size:var(--fs-sm);}
.foot-col a:hover{color:#fff;}
.foot-risk{border-top:1px solid rgba(255,255,255,.08);margin-top:var(--sp-7);padding-top:var(--sp-5);
  font-size:var(--fs-xs);color:var(--c-on-dark-mut);line-height:1.7;}
.foot-bottom{display:flex;justify-content:space-between;gap:var(--sp-4);flex-wrap:wrap;margin-top:var(--sp-5);
  font-size:var(--fs-xs);color:var(--c-faint);}

/* ---- Spacing reset for full-width section groups ---- */
.is-section{margin-top:0;margin-bottom:0;}

/* ---- Single exchange review (read-only) ---- */
.exchange-review{padding:var(--sp-8) 0;}
.exchange-head{display:flex;gap:var(--sp-5);align-items:flex-start;flex-wrap:wrap;margin-bottom:var(--sp-7);}
.exchange-logo-wrap{flex:none;width:88px;height:88px;border-radius:var(--r-lg);background:#fff;
  border:1px solid var(--c-border);box-shadow:var(--sh-1);overflow:hidden;display:flex;align-items:center;justify-content:center;}
.exchange-logo-wrap img,.exchange-logo{width:100%;height:100%;object-fit:cover;display:block;}
.exchange-head-main{flex:1 1 320px;min-width:0;}
.exchange-best{display:inline-block;font-size:var(--fs-xs);font-weight:var(--fw-sb);color:var(--c-accent-ink);
  background:var(--c-accent-50);border-radius:var(--r-pill);padding:4px 12px;margin-bottom:var(--sp-3);}
.exchange-title{font-size:var(--fs-h1);margin:0;}
.exchange-summary{color:var(--c-muted);font-size:var(--fs-lg);margin-top:var(--sp-3);}
.exchange-summary p{margin:0;}
.exchange-prose p{margin:0 0 var(--sp-3);}
.exchange-prose p:last-child{margin-bottom:0;}
.exchange-scores{display:flex;gap:var(--sp-3);flex:none;}
.exchange-score{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-md);
  padding:var(--sp-4) var(--sp-5);text-align:center;min-width:92px;}
.exchange-score-num{display:block;font-size:1.75rem;font-weight:var(--fw-bold);color:var(--c-ink);line-height:1;}
.exchange-score-label{display:block;font-size:var(--fs-xs);color:var(--c-muted);text-transform:uppercase;letter-spacing:.06em;margin-top:6px;}
.exchange-facts{list-style:none;margin:0 0 var(--sp-7);padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:var(--sp-3);}
@media (max-width:600px){.exchange-facts{grid-template-columns:1fr;}}
.exchange-facts li{display:flex;justify-content:space-between;gap:var(--sp-4);background:#fff;border:1px solid var(--c-border);
  border-radius:var(--r-sm);padding:var(--sp-3) var(--sp-4);font-size:var(--fs-sm);}
.exchange-facts .k{color:var(--c-muted);}
.exchange-facts .v{color:var(--c-ink);font-weight:var(--fw-sb);text-align:right;}
.exchange-section{margin-bottom:var(--sp-6);max-width:760px;}
.exchange-section h2{font-size:var(--fs-h3);margin:0 0 var(--sp-3);}
.exchange-section p{color:var(--c-text);margin:0;}
.exchange-proscons{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-6);margin-bottom:var(--sp-6);}
@media (max-width:600px){.exchange-proscons{grid-template-columns:1fr;}}
.exchange-proscons h2{font-size:var(--fs-h4);margin:0 0 var(--sp-3);}
.exchange-cons .mark{color:var(--c-muted);font-weight:var(--fw-bold);}
.exchange-reviewed{font-size:var(--fs-sm);color:var(--c-faint);margin-top:var(--sp-4);}

/* ---- Reduced motion: respect user preference ---- */
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{
    transition-duration:0.001ms !important;
    animation-duration:0.001ms !important;
    animation-iteration-count:1 !important;
    scroll-behavior:auto !important;
  }
  .btn:hover,.start-card:hover,.guide-card:hover,.ex-card:hover{transform:none !important;}
}

/* =========================================================================
   Production build — live data modules, neutral provider comparison, safety
   Additive only. Reuses the existing design tokens above.
   ========================================================================= */

:root{ --c-negative:#C0392B; --c-negative-50:#FCEBEA; }

/* ---- Accessibility utility ---- */
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;width:1px;
  margin:-1px;overflow:hidden;padding:0;position:absolute;word-wrap:normal !important;}

/* ---- Page head band (archive / listing headers) ---- */
.page-head-band{background:var(--c-surface);border-bottom:1px solid var(--c-border);}
.page-head-band h1{font-size:var(--fs-h1);margin:var(--sp-3) 0 var(--sp-3);}
.page-lede{color:var(--c-muted);font-size:var(--fs-lg);max-width:720px;margin:0;}

/* ---- Shared card surface for data modules ---- */
.market-snap,.sentiment,.defi-snap{background:#fff;border:1px solid var(--c-border);
  border-radius:var(--r-lg);padding:var(--sp-6);box-shadow:var(--sh-1);}
.market-head,.defi-head{margin-bottom:var(--sp-4);}
.market-title,.defi-title{font-size:var(--fs-h3);margin:0 0 var(--sp-2);}
.market-sub,.defi-sub{color:var(--c-muted);font-size:var(--fs-sm);margin:0;}

/* ---- Homepage / market page layout grids ---- */
.market-home-grid,.market-page-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-5);align-items:start;}
.market-home-grid > .market-snap,.market-page-grid > .market-snap{grid-column:1 / -1;}
.market-home-cta{grid-column:1 / -1;margin-top:var(--sp-2);}
@media (max-width:820px){.market-home-grid,.market-page-grid{grid-template-columns:1fr;}}

/* ---- Market table ---- */
.market-table-wrap{overflow-x:auto;}
.market-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm);}
.market-table thead th{text-align:right;color:var(--c-muted);font-weight:var(--fw-sb);
  font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;
  padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--c-border);}
.market-table thead th.m-col-name{text-align:left;}
.market-table tbody th,.market-table tbody td{padding:var(--sp-3);border-bottom:1px solid var(--c-surface-2);
  text-align:right;font-weight:var(--fw-med);color:var(--c-ink);}
.market-table tbody tr:last-child th,.market-table tbody tr:last-child td{border-bottom:0;}
.market-table th.m-col-name{text-align:left;font-weight:var(--fw-sb);}
.m-coin{display:flex;align-items:center;gap:var(--sp-3);}
.m-icon{width:24px;height:24px;border-radius:50%;flex:none;}
.m-coin-name{color:var(--c-ink);font-weight:var(--fw-sb);}
.m-coin-sym{color:var(--c-faint);font-weight:var(--fw-med);font-size:var(--fs-xs);text-transform:uppercase;}
.m-change{display:inline-flex;align-items:center;gap:4px;font-weight:var(--fw-sb);white-space:nowrap;}
.m-change--up{color:var(--c-positive);}
.m-change--down{color:var(--c-negative);}
.m-change--flat{color:var(--c-faint);}
.market-trending{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3);margin-top:var(--sp-5);
  padding-top:var(--sp-4);border-top:1px solid var(--c-surface-2);}
.market-trending-label{font-size:var(--fs-xs);font-weight:var(--fw-sb);text-transform:uppercase;
  letter-spacing:.08em;color:var(--c-accent);}
.market-trending-list{display:flex;flex-wrap:wrap;gap:var(--sp-2);list-style:none;margin:0;padding:0;}
.market-trending-list li{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-pill);
  padding:4px 12px;font-size:var(--fs-sm);color:var(--c-ink-2);}
.market-trending-list .tr-sym{color:var(--c-faint);font-size:var(--fs-xs);}
.market-foot,.sentiment-foot,.defi-foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--sp-2);
  margin:var(--sp-5) 0 0;font-size:var(--fs-xs);color:var(--c-faint);}
.market-attr,.sentiment-attr,.defi-attr{color:var(--c-faint);}

/* ---- Sentiment (Fear & Greed) ---- */
.sentiment-main{display:flex;gap:var(--sp-5);align-items:center;}
.sentiment-gauge{flex:none;width:96px;height:96px;border-radius:50%;display:flex;flex-direction:column;
  align-items:center;justify-content:center;border:6px solid var(--c-border);background:var(--c-surface);}
.sentiment-score{font-size:1.9rem;font-weight:var(--fw-bold);color:var(--c-ink);line-height:1;}
.sentiment-max{font-size:var(--fs-xs);color:var(--c-muted);}
.sentiment-eyebrow{font-size:var(--fs-xs);font-weight:var(--fw-sb);text-transform:uppercase;
  letter-spacing:.08em;color:var(--c-accent);margin:0 0 var(--sp-1);}
.sentiment-label{font-size:var(--fs-h4);font-weight:var(--fw-sb);color:var(--c-ink);margin:0 0 var(--sp-2);}
.sentiment-num{color:var(--c-muted);font-weight:var(--fw-med);font-size:var(--fs-sm);}
.sentiment-note{font-size:var(--fs-sm);color:var(--c-muted);margin:0;}
.sentiment--extreme-fear .sentiment-gauge{border-color:var(--c-negative);}
.sentiment--fear .sentiment-gauge{border-color:var(--c-warning);}
.sentiment--neutral .sentiment-gauge{border-color:var(--c-faint);}
.sentiment--greed .sentiment-gauge{border-color:var(--c-positive);}
.sentiment--extreme-greed .sentiment-gauge{border-color:var(--c-positive);}
@media (max-width:520px){.sentiment-main{flex-direction:column;text-align:center;}}

/* ---- DeFi / stablecoin snapshot ---- */
.defi-stats{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-4);margin-bottom:var(--sp-5);}
@media (max-width:520px){.defi-stats{grid-template-columns:1fr;}}
.defi-stat{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-md);padding:var(--sp-4);}
.defi-stat-num{display:block;font-size:1.5rem;font-weight:var(--fw-bold);color:var(--c-ink);line-height:1.1;}
.defi-stat-label{display:block;font-size:var(--fs-xs);color:var(--c-muted);margin-top:6px;}
.defi-chains-title{font-size:var(--fs-h4);margin:0 0 var(--sp-3);}
.defi-chains-list{list-style:none;margin:0;padding:0;counter-reset:chain;}
.defi-chains-list li{display:flex;justify-content:space-between;gap:var(--sp-4);padding:var(--sp-2) 0;
  border-bottom:1px solid var(--c-surface-2);font-size:var(--fs-sm);}
.defi-chains-list li:last-child{border-bottom:0;}
.defi-chain-name{color:var(--c-ink);font-weight:var(--fw-med);}
.defi-chain-tvl{color:var(--c-muted);font-weight:var(--fw-sb);}

/* ---- Neutral provider comparison ---- */
.provider-compare-note{color:var(--c-muted);font-size:var(--fs-sm);max-width:760px;margin:0 0 var(--sp-5);}
.provider-filter{margin-bottom:var(--sp-5);max-width:420px;}
.provider-filter-label{display:block;font-size:var(--fs-sm);font-weight:var(--fw-sb);color:var(--c-ink-2);margin-bottom:6px;}
.provider-filter-input{width:100%;padding:12px 16px;border:1px solid var(--c-border-2);border-radius:var(--r-md);
  font-size:var(--fs-base);font-family:var(--font-sans);background:#fff;}
.provider-filter-input:focus{outline:none;border-color:var(--c-accent);box-shadow:0 0 0 3px var(--c-accent-50);}
.provider-filter-empty{color:var(--c-muted);font-size:var(--fs-sm);margin:var(--sp-3) 0 0;}
/* (Legacy horizontal provider-card rules removed — the canonical provider
   card grid is the flex-column ".provider-grid .provider-card" defined below,
   which fixes the earlier overlap.) */
.provider-logo-mark{font-weight:var(--fw-bold);color:var(--c-accent);font-size:1.25rem;}

/* ---- Single provider profile additions ---- */
.exchange-actions{margin-top:var(--sp-4);}
.exchange-host{color:var(--c-on-dark-mut);font-weight:var(--fw-med);margin-left:6px;font-size:var(--fs-sm);}
.btn-primary .exchange-host{color:rgba(255,255,255,.8);}
.exchange-facts-title{font-size:var(--fs-h4);margin:0 0 var(--sp-3);}
.exchange-verify{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-md);
  padding:var(--sp-5);margin:var(--sp-6) 0;}
.exchange-verify p{margin:0;font-size:var(--fs-sm);color:var(--c-muted);}

/* ---- UK safety panel ---- */
.safety-section .safety-panel{display:grid;grid-template-columns:1.6fr 1fr;gap:var(--sp-7);align-items:center;
  background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-xl);padding:var(--sp-7);}
@media (max-width:820px){.safety-section .safety-panel{grid-template-columns:1fr;gap:var(--sp-5);}}
.safety-main h2{font-size:var(--fs-h2);margin:var(--sp-2) 0 var(--sp-3);}
.safety-main p{color:var(--c-muted);margin:0 0 var(--sp-5);}
.safety-points{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-3);}
.safety-points li{display:flex;align-items:flex-start;gap:var(--sp-2);font-size:var(--fs-sm);color:var(--c-ink-2);
  background:#fff;border:1px solid var(--c-border);border-radius:var(--r-md);padding:var(--sp-3) var(--sp-4);}
.safety-points .tick{color:var(--c-positive);font-weight:var(--fw-bold);}

/* =========================================================================
   Production polish pass — tighter rhythm, premium provider UI, logo tiles
   Additive; later rules intentionally refine earlier ones.
   ========================================================================= */

/* ---- Tighter vertical rhythm ---- */
.section{padding:var(--sp-8) 0;}
.section--tight{padding:var(--sp-7) 0;}
.section-head{margin-bottom:var(--sp-6);}
.hero .wrap{padding-top:var(--sp-9);padding-bottom:var(--sp-9);}

/* ---- Logo tiles (wordmark SVG or uploaded image) ---- */
.provider-logo{width:auto;height:auto;border:0;background:none;box-shadow:none;overflow:visible;
  display:inline-flex;align-items:center;flex:none;}
.provider-logo-img{height:40px;width:auto;max-width:170px;border-radius:10px;display:block;object-fit:contain;}
.provider-wordmark{display:inline-flex;align-items:center;height:40px;padding:0 14px;border-radius:10px;
  background:var(--c-ink);color:#fff;font-weight:var(--fw-bold);font-size:1rem;letter-spacing:-0.01em;}

/* ---- Compare: premium provider card grid ---- */
.compare-block-wrap{margin-top:0;}
.provider-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-5);}
@media (max-width:960px){.provider-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:600px){.provider-grid{grid-template-columns:1fr;}}
.provider-grid .provider-card{display:flex;flex-direction:column;align-items:flex-start;gap:var(--sp-3);
  grid-template-columns:none;background:#fff;border:1px solid var(--c-border);border-radius:var(--r-lg);
  padding:var(--sp-5);box-shadow:var(--sh-1);transition:var(--transition);height:100%;}
.provider-grid .provider-card:hover{box-shadow:var(--sh-3);transform:translateY(-2px);border-color:var(--c-border-2);}
.provider-card-top{display:flex;align-items:center;gap:var(--sp-4);width:100%;}
.provider-card .provider-id{min-width:0;}
.provider-card .provider-name{font-size:var(--fs-lg);margin:0;line-height:1.2;}
.provider-card .provider-name a{color:var(--c-ink);}
.provider-card .provider-name a:hover{color:var(--c-accent);}
.provider-type{display:block;margin-top:3px;font-size:var(--fs-xs);color:var(--c-muted);font-weight:var(--fw-med);}
.provider-grid .provider-tag{align-self:flex-start;margin:0;font-size:var(--fs-xs);font-weight:var(--fw-sb);
  color:var(--c-accent-ink);background:var(--c-accent-50);border-radius:var(--r-pill);padding:3px 10px;}
.provider-grid .provider-desc{font-size:var(--fs-sm);color:var(--c-text);margin:0;}
.provider-grid .provider-desc p{margin:0;}
.provider-grid .provider-check{font-size:var(--fs-xs);color:var(--c-faint);margin:0;}
.provider-grid .provider-actions{display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--sp-2);
  margin-top:auto;padding-top:var(--sp-3);width:100%;}

/* ---- Single provider page: hero + quick facts ---- */
.exchange-hero{display:flex;justify-content:space-between;align-items:center;gap:var(--sp-6);flex-wrap:wrap;
  padding:var(--sp-6) 0 var(--sp-5);border-bottom:1px solid var(--c-border);margin-bottom:var(--sp-6);}
.exchange-hero-main{display:flex;align-items:center;gap:var(--sp-5);flex:1 1 340px;min-width:0;}
.exchange-logo-tile{flex:none;}
.exchange-logo-tile .provider-logo-img{height:56px;max-width:220px;border-radius:12px;}
.exchange-logo-tile .provider-wordmark{height:56px;font-size:1.25rem;padding:0 18px;border-radius:12px;}
.exchange-hero-text{min-width:0;}
.exchange-type{display:inline-block;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.08em;
  color:var(--c-muted);font-weight:var(--fw-sb);margin-bottom:6px;}
.exchange-title{font-size:var(--fs-h1);margin:0;}
.exchange-summary{color:var(--c-muted);font-size:var(--fs-lg);margin-top:var(--sp-2);}
.exchange-summary p{margin:0;}
.exchange-hero-cta{display:flex;flex-direction:column;align-items:flex-start;gap:6px;flex:none;}
.exchange-hero-host{font-size:var(--fs-xs);color:var(--c-faint);}
@media (max-width:640px){.exchange-hero{flex-direction:column;align-items:flex-start;}.exchange-hero-main{flex-direction:column;align-items:flex-start;}}

.exchange-quickfacts{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);
  padding:var(--sp-3) var(--sp-5);margin-bottom:var(--sp-7);}
.exchange-quickfacts dl{margin:0;}
.qf-row{display:flex;justify-content:space-between;gap:var(--sp-5);padding:var(--sp-3) 0;border-bottom:1px solid var(--c-border);}
.qf-row:last-child{border-bottom:0;}
.qf-row dt{color:var(--c-muted);font-size:var(--fs-sm);font-weight:var(--fw-sb);margin:0;flex:none;}
.qf-row dd{margin:0;text-align:right;color:var(--c-ink);font-size:var(--fs-sm);}

.exchange-backlink{margin-top:var(--sp-6);font-weight:var(--fw-sb);}
.exchange-safety-reminder p{color:var(--c-text);font-size:var(--fs-sm);}

/* Provider comparison list left-aligned intro on the compare page */
.provider-compare .provider-filter{max-width:420px;}

/* =========================================================================
   Depth pass — brand logo mark, Updates engine, Crypto 101 hub
   ========================================================================= */

/* ---- Brand logo mark (uses local SVG icon; works on light & dark) ---- */
.brand .mark{background:url(../brand/icon.svg) center/contain no-repeat;border-radius:0;box-shadow:none;
  width:30px;height:30px;}
.site-footer .brand .mark{filter:none;}

/* ---- Latest Updates: pills + cards ---- */
.updates-section .section-head{margin-bottom:var(--sp-5);}
.updates-pills{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-bottom:var(--sp-5);}
.updates-pill{display:inline-flex;align-items:center;font-size:var(--fs-sm);font-weight:var(--fw-med);
  color:var(--c-ink-2);background:#fff;border:1px solid var(--c-border-2);border-radius:var(--r-pill);
  padding:7px 15px;transition:var(--transition);}
.updates-pill:hover{border-color:var(--c-accent);color:var(--c-accent);}
.updates-pill.is-active{background:var(--c-accent);border-color:var(--c-accent);color:#fff;}
.updates-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-5);}
@media (max-width:900px){.updates-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:600px){.updates-grid{grid-template-columns:1fr;}}
.update-card{display:flex;flex-direction:column;gap:var(--sp-2);background:#fff;border:1px solid var(--c-border);
  border-radius:var(--r-lg);padding:var(--sp-5);box-shadow:var(--sh-1);transition:var(--transition);height:100%;}
.update-card:hover{box-shadow:var(--sh-3);transform:translateY(-2px);border-color:var(--c-border-2);}
.update-card-meta{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);}
.update-cat{font-size:var(--fs-xs);font-weight:var(--fw-sb);letter-spacing:.04em;text-transform:uppercase;
  color:var(--c-accent-ink);background:var(--c-accent-50);border-radius:var(--r-pill);padding:3px 10px;}
.update-date{font-size:var(--fs-xs);color:var(--c-faint);}
.update-title{font-size:var(--fs-h4);margin:0;line-height:1.25;}
.update-title a{color:var(--c-ink);} .update-title a:hover{color:var(--c-accent);}
.update-excerpt{font-size:var(--fs-sm);color:var(--c-muted);margin:0;}
.update-more{margin-top:auto;font-size:var(--fs-sm);font-weight:var(--fw-sb);color:var(--c-accent);padding-top:var(--sp-2);}
.updates-section .btn-row{margin-top:var(--sp-6);}

/* Single update article */
.update-article{max-width:760px;margin:0 auto;padding:var(--sp-8) var(--sp-5);}
.update-article .update-meta{display:flex;gap:var(--sp-3);align-items:center;margin-bottom:var(--sp-4);}

/* ---- Crypto 101 hub ---- */
.hub-hero{background:radial-gradient(1000px 400px at 80% -10%,rgba(47,107,255,.10),transparent 60%),var(--c-surface);
  border-bottom:1px solid var(--c-border);}
.hub-hero .wrap{padding:var(--sp-9) var(--sp-5);}
.hub-hero h1{font-size:var(--fs-h1);margin:var(--sp-3) 0;}
.hub-hero .lede{color:var(--c-muted);font-size:var(--fs-lg);max-width:680px;margin:0;}
.pathway-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-4);}
@media (max-width:900px){.pathway-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:560px){.pathway-grid{grid-template-columns:1fr;}}
.pathway-card{display:flex;flex-direction:column;gap:6px;background:#fff;border:1px solid var(--c-border);
  border-radius:var(--r-lg);padding:var(--sp-5);box-shadow:var(--sh-1);transition:var(--transition);}
.pathway-card:hover{box-shadow:var(--sh-3);transform:translateY(-2px);border-color:var(--c-border-2);}
.pathway-card .pc-step{font-size:var(--fs-xs);font-weight:var(--fw-sb);letter-spacing:.08em;text-transform:uppercase;color:var(--c-accent);}
.pathway-card .pc-title{font-weight:var(--fw-sb);color:var(--c-ink);font-size:var(--fs-lg);}
.pathway-card .pc-desc{font-size:var(--fs-sm);color:var(--c-muted);}
.pathway-card .pc-go{margin-top:auto;font-size:var(--fs-sm);font-weight:var(--fw-sb);color:var(--c-accent);padding-top:var(--sp-2);}

/* Checklist + common mistakes + glossary */
.checklist{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-3);}
@media (max-width:600px){.checklist{grid-template-columns:1fr;}}
.checklist li{display:flex;gap:var(--sp-3);align-items:flex-start;background:#fff;border:1px solid var(--c-border);
  border-radius:var(--r-md);padding:var(--sp-4);font-size:var(--fs-sm);color:var(--c-ink-2);}
.checklist li::before{content:"\2713";color:var(--c-positive);font-weight:var(--fw-bold);flex:none;}
.mistakes-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-3);}
.mistakes-list li{display:flex;gap:var(--sp-3);background:var(--c-warning-50);border:1px solid var(--c-warning-bd);
  border-radius:var(--r-md);padding:var(--sp-4);font-size:var(--fs-sm);color:#6B5417;}
.mistakes-list li::before{content:"\26A0";flex:none;}
.glossary{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-4);}
@media (max-width:700px){.glossary{grid-template-columns:1fr;}}
.glossary .term{background:#fff;border:1px solid var(--c-border);border-radius:var(--r-md);padding:var(--sp-4);}
.glossary .term dt{font-weight:var(--fw-sb);color:var(--c-ink);margin-bottom:4px;}
.glossary .term dd{margin:0;font-size:var(--fs-sm);color:var(--c-muted);}
.hub-safety{background:var(--c-accent-50);border:1px solid #CFE0FF;border-radius:var(--r-lg);padding:var(--sp-6);
  display:flex;gap:var(--sp-5);align-items:center;flex-wrap:wrap;justify-content:space-between;}
.hub-safety p{margin:0;color:var(--c-accent-ink);max-width:640px;}

/* =========================================================================
   Final QA polish — layout correction, guide illustrations, tighter rhythm
   (Appended last so it is the single source of truth for these components.)
   ========================================================================= */

/* ---- Vertical rhythm: tighter, still premium ---- */
.section{padding:64px 0;}
.section--tight{padding:48px 0;}
.section-head{margin-bottom:28px;}
.hero .wrap{padding-top:84px;padding-bottom:84px;}
.compare .section-head,.market-section .section-head,.updates-section .section-head,.safety-section .section-head{margin-bottom:22px;}
/* A section that contains only a heading, followed by a separate block group,
   should not double up its spacing. */
.section.compare{background:#fff;padding-bottom:20px;}
.market-section,.updates-section.section{padding-bottom:24px;}
.compare-block-wrap,.market-home-grid,.updates-section .updates-list{padding-bottom:4px;}

/* ---- Guide cards: original illustrations, equal height, no empty pattern ---- */
.guide-grid{align-items:stretch;}
.guide-card{}
.guide-card .thumb{height:140px;background-color:var(--c-surface-2);
  background-size:cover;background-position:center;background-repeat:no-repeat;border-bottom:1px solid var(--c-border);}
.guide-card .thumb::after{content:none !important;display:none !important;}
.guide-card .thumb.thumb--basics{background-image:url(../illustrations/basics.svg);}
.guide-card .thumb.thumb--bitcoin{background-image:url(../illustrations/bitcoin.svg);}
.guide-card .thumb.thumb--ethereum{background-image:url(../illustrations/ethereum.svg);}
.guide-card .thumb.thumb--wallets{background-image:url(../illustrations/wallets.svg);}
.guide-card .thumb.thumb--exchanges{background-image:url(../illustrations/exchanges.svg);}
.guide-card .thumb.thumb--stablecoins{background-image:url(../illustrations/stablecoins.svg);}
.guide-card .thumb.thumb--safety{background-image:url(../illustrations/safety.svg);}
.guide-card .thumb.thumb--tax{background-image:url(../illustrations/tax.svg);}
.guide-card .thumb.thumb--fees{background-image:url(../illustrations/fees.svg);}
.guide-card .thumb.thumb--keys{background-image:url(../illustrations/keys.svg);}
.guide-card .thumb.thumb--volatility{background-image:url(../illustrations/volatility.svg);}

/* ---- Provider card grid: no overlap, equal heights, buttons inside ---- */
.provider-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:stretch;}
@media (max-width:980px){.provider-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:600px){.provider-grid{grid-template-columns:1fr;}}
.provider-grid .provider-card{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin:0;}
.provider-grid .provider-actions{margin-top:auto;padding-top:12px;width:100%;display:flex;gap:8px;flex-wrap:wrap;}
.provider-grid .provider-actions .btn{flex:0 0 auto;}
.compare-block-wrap .btn-row,.provider-compare + .btn-row{margin-top:28px;}

/* ---- Updates: pills wrap cleanly, cards align, CTA clears the grid ---- */
.updates-grid{align-items:stretch;}
.update-card{}
.updates-pills{margin-bottom:24px;row-gap:8px;}
.updates-list--full .updates-grid{margin-top:4px;}
.updates-section .btn-row{margin-top:28px;}

/* ---- Crypto 101 hub: intentional spacing, equal-height pathway cards ---- */
.pathway-grid{align-items:stretch;}
.pathway-card{}
.hub-hero .wrap{padding:72px var(--sp-5);}

/* ---- Start-here cards equal height ---- */
.start-grid{align-items:stretch;}
.start-card{}

/* ---- Definitive card-height override (removes leftover height:100% that
        collapsed grid row tracks and caused row overlap). align-items:stretch
        already equalises heights per row. ---- */
.provider-grid .provider-card,
.updates-grid .update-card,
.guide-grid .guide-card,
.start-grid .start-card,
.pathway-grid .pathway-card{height:auto;}

/* ---- Wordmark reads as one unit (gap only between mark and word) ---- */
.brand{gap:9px;letter-spacing:-0.02em;}
.brand-word{display:inline-block;white-space:nowrap;}
.brand .mark{width:28px;height:28px;}

/* =========================================================================
   Section banding — subtle alternating rhythm (white / pale cool)
   ========================================================================= */
.band-cool{background:var(--c-accent-50);}                 /* very light blue */
/* Let the pale-blue band show through banded homepage sections */
.section.compare{background:transparent;}
.market-section,.updates-section{background:transparent;}
/* On a pale band, the safety panel reads best as a crisp white card */
.safety-section .safety-panel{background:#fff;border-color:var(--c-border);}
/* Guide section on the hub: no grey fill (alternation handled at page level) */
.guide-section{background:transparent;}
/* Keep the closing disclosure band understated */
.disclosure-band{background:var(--c-surface);}

/* =========================================================================
   Consistent section CTAs — calm, left-aligned, with breathing room so they
   sit clearly within their section (never stranded on the next boundary).
   ========================================================================= */
.btn-row.section-cta{margin-top:36px;margin-bottom:0;justify-content:flex-start;gap:var(--sp-3);}
.btn-row.section-cta .btn{padding:13px 22px;font-size:var(--fs-base);}

/* Space below the CTA before the next section / band boundary */
.compare-block-wrap{padding-bottom:52px;}
.market-cta-wrap{padding-bottom:52px;}
.wrap.updates-section{padding-bottom:52px;}
.guide-grid-wrap{padding-bottom:52px;}

/* The market data grid no longer holds the CTA; keep its own bottom tight */
.market-home-grid{padding-bottom:0;}
