/*
Theme Name: MLB Theme
Theme URI: https://mejoreslibros.es
Description: Aggregations-engine for Spanish-language book ratings — Consensus Score + Polarisation Index. Editorial magazine layout. Stitch-derived tokens (literary_curator design system).
Version: 1.2.0
Text Domain: mlb
*/

:root{
  /* surfaces (Stitch literary_curator) */
  --bg:#fff8f2;
  --surface:#fff8f2;
  --surface-bright:#fff8f2;
  --surface-lowest:#ffffff;
  --surface-low:#fcf2e5;
  --surface-default:#f6eddf;
  --surface-high:#f0e7da;
  --surface-highest:#eae1d4;
  --surface-dim:#e2d9cc;

  /* ink */
  --ink:#1f1b13;
  --ink-variant:#56423d;
  --tertiary:#615d5a;
  --inverse-surface:#343027;
  --inverse-on-surface:#f9efe2;

  /* outline */
  --outline:#8a726c;
  --outline-variant:#ddc0b9;
  --rule:#e6dfd2;
  --rule-strong:#c9bfa9;

  /* terracotta */
  --primary:#a03f25;
  --primary-container:#c0573b;
  --on-primary:#ffffff;
  --on-primary-fixed-variant:#812911;

  /* fonts */
  --serif:'Newsreader','Source Serif Pro','Spectral',Georgia,serif;
  --sans:'Inter','IBM Plex Sans',system-ui,sans-serif;
  --mono:'IBM Plex Mono',ui-monospace,Menlo,monospace;

  /* spacing scale */
  --gutter:24px;
  --margin-x:32px;
  --section-gap:80px;
  --pull-inset:64px;

  /* radii */
  --r:4px;
  --r-lg:8px;

  /* container */
  --page:1280px;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:var(--bg);color:var(--ink);
  font-family:var(--serif);font-size:18px;line-height:1.6;font-weight:400;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--primary-container);text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
::selection{background:#fe8b6b;color:#75240c}

h1,h2,h3,h4{font-family:var(--serif);color:var(--ink);font-weight:500;letter-spacing:-.012em;line-height:1.2;margin:0}
h1{font-size:48px;line-height:1.1;letter-spacing:-.02em;font-weight:400}
h2{font-size:32px;line-height:1.2;font-weight:500}
h3{font-size:24px;line-height:1.3;font-weight:500}
h4{font-size:18px;line-height:1.3;font-weight:500}
em{font-style:italic;font-weight:400}

.mlb-page{max-width:var(--page);margin:0 auto;padding:0 var(--gutter)}

/* ============ HEADER ============ */
.mlb-header{
  position:sticky;top:0;z-index:50;width:100%;
  background:rgba(255,248,242,.82);
  backdrop-filter:blur(14px) saturate(140%);
  -webkit-backdrop-filter:blur(14px) saturate(140%);
  border-bottom:1px solid var(--rule);
}
.mlb-header__inner{max-width:var(--page);margin:0 auto;padding:0 var(--gutter);height:64px;display:flex;align-items:center;justify-content:space-between;gap:2rem}
.mlb-brand{display:flex;align-items:baseline;gap:.55rem;color:var(--ink);text-decoration:none}
.mlb-brand:hover{text-decoration:none}
.mlb-brand__mark{font-family:var(--serif);font-size:1.5rem;font-weight:900;letter-spacing:-.04em;color:var(--ink);font-style:italic}
.mlb-brand__name{font-family:var(--serif);font-size:1rem;font-weight:400;color:var(--ink-variant);letter-spacing:.01em;line-height:1}
.mlb-brand__name em{font-style:italic;color:var(--ink-variant)}
.mlb-brand__tld{color:var(--outline);margin-left:.15em}

.mlb-nav{display:flex;gap:2rem;align-items:center}
.mlb-nav a{
  font-family:var(--serif);font-size:15px;line-height:1;font-weight:400;
  text-transform:uppercase;letter-spacing:.04em;color:var(--ink-variant);
  text-decoration:none;transition:color .2s ease;
}
.mlb-nav a:hover{color:var(--primary-container);text-decoration:none}

@media (max-width:880px){
  .mlb-nav{display:none}
}

/* ============ MAIN ============ */
main.mlb-main{max-width:var(--page);margin:0 auto;padding:0 var(--gutter) var(--section-gap)}

/* ============ HERO (homepage) ============ */
.mlb-hero-home{
  display:grid;grid-template-columns:7fr 5fr;gap:var(--gutter);
  align-items:center;
  padding:64px 0 var(--section-gap);
}
.mlb-hero-home__copy{padding-right:48px}
.mlb-hero-home__rule{width:32px;height:2px;background:var(--primary-container);margin:0 0 32px}
.mlb-hero-home h1{
  font-family:var(--serif);font-size:clamp(2.4rem,1.6rem + 2.6vw,3.4rem);font-weight:400;
  letter-spacing:-.02em;line-height:1.05;color:var(--ink);
  margin:0 0 24px;max-width:34ch;
}
.mlb-hero-home h1 em{color:var(--ink);font-style:italic}
.mlb-hero-home__lede{
  font-family:var(--serif);font-size:18px;line-height:1.6;color:var(--ink-variant);
  max-width:46ch;margin:0 0 40px;
}
.mlb-hero-home__cta{
  display:inline-flex;align-items:center;gap:.4em;
  font-family:var(--sans);font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;
  color:var(--primary-container);
  border-bottom:1px solid var(--primary-container);padding-bottom:2px;
}
.mlb-hero-home__cta:hover{color:var(--primary);border-color:var(--primary);text-decoration:none}
.mlb-hero-home__cta::after{content:"→";font-family:var(--serif);font-size:14px;font-weight:400;line-height:1}

.mlb-hero-home__art{
  position:relative;height:400px;
  background:var(--surface-high);border-radius:var(--r-lg);
  border:1px solid color-mix(in srgb,var(--outline-variant) 30%,transparent);
  overflow:hidden;display:flex;align-items:center;justify-content:center;padding:32px;
}
.mlb-hero-home__art img{
  width:100%;height:100%;object-fit:cover;
  opacity:.85;mix-blend-mode:multiply;
  filter:grayscale(.9) contrast(1.15);
}

@media (max-width:880px){
  .mlb-hero-home{grid-template-columns:1fr;padding:32px 0 56px}
  .mlb-hero-home__copy{padding-right:0}
  .mlb-hero-home__art{height:300px}
}

/* ============ STATS ROW (full-bleed inline) ============ */
.mlb-stats{
  background:var(--surface-low);
  border-top:1px solid var(--outline-variant);border-bottom:1px solid var(--outline-variant);
  padding:32px 0;margin:0 0 var(--section-gap);
}
.mlb-stats__inner{
  max-width:980px;margin:0 auto;padding:0 var(--gutter);
  display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;
  font-family:var(--mono);font-size:14px;text-transform:uppercase;letter-spacing:.18em;color:var(--ink-variant);
}
.mlb-stats__item{display:flex;align-items:baseline;gap:.6em}
.mlb-stats__num{color:var(--primary-container);font-weight:500;font-variant-numeric:tabular-nums}
.mlb-stats__sep{width:4px;height:4px;background:var(--outline-variant);border-radius:50%}
@media (max-width:680px){
  .mlb-stats__sep{display:none}
  .mlb-stats__inner{justify-content:flex-start;gap:16px 32px}
}

/* ============ SECTION HEADER ============ */
.mlb-section{margin:0 0 var(--section-gap)}
.mlb-section__head{
  display:flex;align-items:baseline;justify-content:space-between;gap:1rem;
  border-bottom:1px solid var(--outline-variant);padding-bottom:16px;margin-bottom:32px;
}
.mlb-section__title{font-family:var(--serif);font-size:32px;font-weight:500;letter-spacing:-.012em;color:var(--ink);line-height:1.2;margin:0}
.mlb-section__more{
  font-family:var(--sans);font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;
  color:var(--primary-container);text-decoration:none;
}
.mlb-section__more:hover{text-decoration:underline}
.mlb-section__sub{font-family:var(--sans);font-size:14px;color:var(--ink-variant);max-width:55ch;margin:-16px 0 24px;line-height:1.5}

/* ============ BOOK CARDS ============ */
.mlb-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--gutter) 24px;row-gap:48px;margin:0 0 24px}
@media (min-width:768px){
  .mlb-grid{grid-template-columns:repeat(4,1fr)}
}
.mlb-card{display:flex;flex-direction:column;cursor:pointer;text-decoration:none;color:inherit}
.mlb-card:hover{text-decoration:none}
.mlb-card__cover{
  aspect-ratio:2/3;background:var(--surface-default);border-radius:var(--r);overflow:hidden;
  margin-bottom:16px;
}
.mlb-card__cover img{
  width:100%;height:100%;object-fit:cover;
  filter:grayscale(1) contrast(1.05);
  transition:filter .5s ease;
}
.mlb-card:hover .mlb-card__cover img{filter:grayscale(0) contrast(1)}
.mlb-card__title{font-family:var(--serif);font-size:24px;font-weight:500;line-height:1.3;color:var(--ink);margin:0 0 4px;letter-spacing:-.005em}
.mlb-card__author{font-family:var(--serif);font-size:16px;line-height:1.5;color:var(--ink-variant);font-style:italic;margin:0}
.mlb-card__author a{color:inherit;text-decoration:none}
.mlb-card__author a:hover{color:var(--primary-container)}

.mlb-card__meta{display:flex;align-items:center;gap:12px;margin-top:12px}

/* score: number + terracotta dot */
.mlb-score{
  display:inline-flex;align-items:center;gap:6px;
  font-family:var(--mono);font-size:14px;font-weight:500;color:var(--ink);
  font-variant-numeric:tabular-nums;line-height:1;
}
.mlb-score__dot{width:6px;height:6px;border-radius:50%;background:var(--primary-container);display:inline-block}

.mlb-tag{
  display:inline-flex;align-items:center;
  font-family:var(--sans);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;
  color:var(--tertiary);
  border:1px solid var(--outline-variant);padding:3px 8px;border-radius:2px;line-height:1;
}
.mlb-tag--polar-high{color:var(--on-primary-fixed-variant);border-color:#fe8b6b;background:#ffdbd1}
.mlb-tag--polar-low{color:#3d6045;border-color:#b6cdb8;background:#e3ece4}

/* ============ EDITORIAL PULL-LEAD ============ */
.mlb-pull{
  margin:var(--section-gap) 0;padding:64px 0;
  border-top:1px solid var(--outline-variant);border-bottom:1px solid var(--outline-variant);
  background:var(--surface-lowest);
}
.mlb-pull__inner{max-width:840px;margin:0 auto;padding:0 var(--gutter);text-align:center}
.mlb-pull__quote{
  font-family:var(--serif);font-size:clamp(28px,1.4rem + 2vw,40px);line-height:1.2;letter-spacing:-.018em;font-weight:400;
  color:var(--ink);margin:0 0 32px;
}
.mlb-pull__quote em{color:var(--primary-container);font-style:italic}
.mlb-pull__cta{
  display:inline-flex;align-items:center;gap:.4em;
  font-family:var(--sans);font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;
  color:var(--ink);border-bottom:1px solid var(--ink);padding-bottom:4px;
}
.mlb-pull__cta:hover{color:var(--primary-container);border-color:var(--primary-container);text-decoration:none}
.mlb-pull__cta::after{content:"→"}

/* ============ MAGAZINE RANK LIST (hubs / archive) ============ */
.mlb-list{margin:0;padding:0;list-style:none}
.mlb-list__head{
  display:grid;grid-template-columns:60px 100px 1fr 200px;gap:24px;
  padding:12px 0;border-bottom:1px solid var(--outline-variant);
  font-family:var(--sans);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--outline);
}
.mlb-list__row{
  display:grid;grid-template-columns:60px 100px 1fr 200px;gap:24px;
  padding:24px 0;border-bottom:1px solid var(--outline-variant);align-items:start;
  transition:background-color .15s ease;
}
.mlb-list__row:hover{background:var(--surface-low);margin-inline:-12px;padding-inline:12px}
.mlb-list__rank{font-family:var(--mono);font-size:14px;color:var(--primary-container);font-variant-numeric:tabular-nums;line-height:1.4}
.mlb-list__cover{aspect-ratio:2/3;background:var(--surface-default);border-radius:var(--r);overflow:hidden}
.mlb-list__cover img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.05);transition:filter .5s ease}
.mlb-list__row:hover .mlb-list__cover img{filter:grayscale(0)}
.mlb-list__title{font-family:var(--serif);font-size:24px;font-weight:500;line-height:1.3;color:var(--ink);margin:0 0 4px;letter-spacing:-.005em}
.mlb-list__title a{color:var(--ink);text-decoration:none}
.mlb-list__title a:hover{color:var(--primary-container)}
.mlb-list__author{font-family:var(--sans);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--outline);margin:0 0 8px}
.mlb-list__excerpt{font-family:var(--serif);font-size:15px;line-height:1.55;color:var(--ink-variant);margin:0;max-width:60ch}
.mlb-list__metrics{display:flex;flex-direction:column;gap:8px;font-family:var(--mono);font-size:12px;color:var(--ink-variant)}
.mlb-list__metric{display:flex;justify-content:space-between;gap:8px;align-items:baseline;text-transform:uppercase;letter-spacing:.08em;font-size:10px}
.mlb-list__metric .v{color:var(--ink);font-size:13px;letter-spacing:0;text-transform:none;font-weight:500}

@media (max-width:760px){
  .mlb-list__head{display:none}
  .mlb-list__row{grid-template-columns:30px 80px 1fr;gap:16px}
  .mlb-list__metrics{grid-column:1/-1;flex-direction:row;gap:16px;flex-wrap:wrap;margin-top:8px}
}

/* ============ SINGLE BOOK ============ */
.mlb-book{display:grid;grid-template-columns:320px 1fr;gap:64px;margin:48px 0 var(--section-gap)}
.mlb-book__cover{position:sticky;top:96px;align-self:start}
.mlb-book__cover-frame{
  aspect-ratio:2/3;background:var(--surface-default);overflow:hidden;border-radius:var(--r);
  border:1px solid var(--outline-variant);
}
.mlb-book__cover-frame img{width:100%;height:100%;object-fit:cover;filter:grayscale(.5) contrast(1.05)}
.mlb-book__title{font-family:var(--serif);font-size:clamp(2.2rem,1.4rem + 2.4vw,3.4rem);line-height:1.05;letter-spacing:-.02em;font-weight:400;margin:0 0 16px;color:var(--ink)}
.mlb-book__byline{font-family:var(--serif);font-size:18px;line-height:1.5;color:var(--ink-variant);margin:0 0 32px}
.mlb-book__byline a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--rule-strong);text-underline-offset:4px}
.mlb-book__byline a:hover{text-decoration-color:var(--primary-container);color:var(--primary-container)}

.mlb-consensus{
  display:flex;align-items:flex-end;gap:32px;justify-content:space-between;
  padding:24px 0 28px;border-top:1px solid var(--outline-variant);border-bottom:1px solid var(--outline-variant);
  margin:0 0 32px;
}
.mlb-consensus__value{display:flex;align-items:baseline;gap:12px}
.mlb-consensus__big{
  font-family:var(--mono);font-size:64px;font-weight:500;line-height:1;letter-spacing:-.03em;
  color:var(--ink);font-variant-numeric:tabular-nums;
}
.mlb-consensus__big::after{content:"";display:inline-block;width:10px;height:10px;background:var(--primary-container);border-radius:50%;margin-left:12px;vertical-align:.4em}
.mlb-consensus__sub{
  font-family:var(--sans);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;
  color:var(--outline);max-width:30ch;
}
.mlb-consensus__sub b{display:block;color:var(--ink);font-size:14px;letter-spacing:0;font-weight:500;text-transform:none;margin-bottom:4px;font-family:var(--serif);font-style:italic}
.mlb-consensus__pol{align-self:flex-end}

.mlb-meta{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:16px 32px;
  padding:24px 0;border-bottom:1px solid var(--outline-variant);margin:0 0 40px;
  font-family:var(--sans);
}
.mlb-meta__item{display:flex;flex-direction:column;gap:4px}
.mlb-meta__label{font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--outline)}
.mlb-meta__value{font-family:var(--serif);font-size:16px;font-weight:500;color:var(--ink);line-height:1.3}
.mlb-meta__value--mono{font-family:var(--mono);font-size:14px;font-weight:400}

.mlb-book__sources{
  margin:0 0 40px;padding:24px 28px;background:var(--surface-low);border-radius:var(--r);
}
.mlb-book__sources-head{font-family:var(--sans);font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--outline);margin:0 0 18px}

/* Inline explainer block (between consensus row and sources) */
.mlb-explainer{margin:0 0 24px}
.mlb-explainer__lead{
  font-family:var(--serif);font-size:16px;line-height:1.55;color:var(--ink);margin:0;
  max-width:64ch;
}
.mlb-explainer__lead strong{font-weight:500}
.mlb-explainer__pol{
  display:inline-block;color:var(--ink-variant);font-style:italic;margin-top:4px;font-size:15px;
}

/* Source bars — visualise each source's rating as a horizontal bar */
.mlb-source-bars{display:flex;flex-direction:column;gap:14px;margin:0 0 8px}
.mlb-source-bar{display:flex;flex-direction:column;gap:6px}
.mlb-source-bar__head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.mlb-source-bar__name{font-family:var(--sans);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-variant)}
.mlb-source-bar__stat{font-family:var(--mono);font-size:13px;color:var(--ink-variant);line-height:1.3}
.mlb-source-bar__stat strong{color:var(--ink);font-weight:500;font-size:15px;font-variant-numeric:tabular-nums}
.mlb-source-bar__n{color:var(--outline)}
.mlb-source-bar__track{
  position:relative;height:6px;background:var(--surface-default);border-radius:99px;overflow:hidden;
}
.mlb-source-bar__fill{
  position:absolute;top:0;left:0;height:100%;
  background:linear-gradient(90deg, var(--surface-default) 0%, var(--primary-container) 60%, var(--primary) 100%);
  border-radius:99px;
}

/* Disclosure ¿Cómo se calcula? */
.mlb-explainer__details{margin:20px 0 0;border-top:1px solid var(--outline-variant);padding-top:16px}
.mlb-explainer__details summary{
  font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;
  color:var(--primary-container);cursor:pointer;list-style:none;display:inline-flex;align-items:center;gap:6px;
}
.mlb-explainer__details summary::after{content:"+";font-size:14px;line-height:1;transition:transform .2s}
.mlb-explainer__details[open] summary::after{transform:rotate(45deg)}
.mlb-explainer__details summary:hover{color:var(--primary)}
.mlb-explainer__body{
  margin-top:14px;padding:0;
  font-family:var(--serif);font-size:15px;line-height:1.6;color:var(--ink-variant);max-width:60ch;
}
.mlb-explainer__body p{margin:0 0 1em}
.mlb-explainer__body p:last-child{margin-bottom:0}
.mlb-explainer__body strong{color:var(--ink);font-weight:500}
.mlb-explainer__body em{font-style:italic;color:var(--ink)}

.mlb-book__content{font-family:var(--serif);font-size:18px;line-height:1.65;color:var(--ink);max-width:64ch}
.mlb-book__content p{margin:0 0 1.2em}

@media (max-width:880px){
  .mlb-book{grid-template-columns:1fr;gap:32px}
  .mlb-book__cover{max-width:240px;margin:0 auto;position:static}
  .mlb-consensus{flex-direction:column;align-items:flex-start;gap:16px}
}

/* ============ AUTHOR PAGE ============ */
.mlb-author-head{padding:48px 0 32px;border-bottom:1px solid var(--outline-variant);margin-bottom:48px}
.mlb-author-head__meta{
  font-family:var(--sans);font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;
  color:var(--outline);margin:0 0 12px;display:flex;gap:16px;flex-wrap:wrap;align-items:center;
}
.mlb-author-head__verified{color:var(--primary-container);display:inline-flex;align-items:center;gap:4px}
.mlb-author-head__verified::before{content:"✓";font-family:var(--serif);font-size:14px}
.mlb-author-head h1{font-family:var(--serif);font-size:clamp(2.4rem,1.6rem + 2.4vw,3.6rem);font-weight:400;letter-spacing:-.02em;line-height:1.05;color:var(--ink);margin:0}
.mlb-author-bio{font-family:var(--serif);font-size:18px;line-height:1.7;color:var(--ink);max-width:68ch;margin:0 0 56px}
.mlb-author-bio p{margin:0 0 1.4em}

/* ============ FAQ ============ */
.mlb-faq{margin:48px 0 0}
.mlb-faq details{border-bottom:1px solid var(--outline-variant);padding:20px 0}
.mlb-faq summary{font-family:var(--serif);font-size:20px;font-weight:500;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:1rem;letter-spacing:-.005em;line-height:1.3}
.mlb-faq summary::after{content:'+';font-size:24px;color:var(--primary-container);font-family:var(--sans);transition:transform .2s}
.mlb-faq details[open] summary::after{transform:rotate(45deg)}
.mlb-faq details p{font-family:var(--serif);font-size:16px;line-height:1.65;color:var(--ink-variant);margin:16px 0 0}

/* ============ TILES ============ */
.mlb-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1px;background:var(--outline-variant);border-top:1px solid var(--outline-variant);border-bottom:1px solid var(--outline-variant)}
.mlb-tile{
  background:var(--bg);padding:24px 28px;display:flex;flex-direction:column;gap:6px;
  text-decoration:none;color:inherit;transition:background .15s ease;
}
.mlb-tile:hover{background:var(--surface-low);text-decoration:none}
.mlb-tile__count{font-family:var(--sans);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--outline)}
.mlb-tile__name{font-family:var(--serif);font-size:20px;font-weight:500;letter-spacing:-.005em;line-height:1.25;color:var(--ink);text-transform:capitalize}

/* ============ FOOTER ============ */
.mlb-footer{
  background:#f3eee2;border-top:1px solid var(--rule);
  margin-top:var(--section-gap);padding:48px var(--gutter);
}
.mlb-footer__inner{
  max-width:var(--page);margin:0 auto;
  display:grid;grid-template-columns:1fr 3fr;gap:48px;
}
.mlb-footer__brand{font-family:var(--serif);font-size:1.4rem;font-style:italic;color:var(--ink);margin-bottom:8px;display:block}
.mlb-footer__about{font-family:var(--serif);font-size:14px;line-height:1.55;color:var(--ink-variant);max-width:35ch}
.mlb-footer__nav{display:flex;flex-wrap:wrap;gap:24px;justify-content:flex-end;align-items:flex-end}
.mlb-footer__nav a{font-family:var(--serif);font-size:14px;line-height:1.4;color:var(--ink-variant);text-decoration:none;transition:color .2s}
.mlb-footer__nav a:hover{color:var(--primary-container);text-decoration:none}
@media (max-width:760px){
  .mlb-footer__inner{grid-template-columns:1fr;gap:24px}
  .mlb-footer__nav{justify-content:flex-start}
}

/* ============ STATIC PAGES ============ */
.mlb-page-content{max-width:720px;margin:48px auto var(--section-gap)}
.mlb-page-content h1{margin-bottom:24px}
.mlb-page-content h2{margin-top:48px}
.mlb-page-content p{font-family:var(--serif);font-size:18px;line-height:1.7;color:var(--ink);margin:0 0 1.4em;max-width:64ch}
.mlb-page-content ul,.mlb-page-content ol{font-family:var(--serif);font-size:18px;line-height:1.7;color:var(--ink);padding-left:24px;margin:0 0 1.4em}
.mlb-page-content li{margin-bottom:.6em}
.mlb-page-content code{font-family:var(--mono);font-size:14px;background:var(--surface-default);padding:2px 6px;border-radius:2px}
.mlb-page-content pre{font-family:var(--mono);font-size:14px;background:var(--surface-low);padding:16px 20px;border-radius:var(--r);overflow-x:auto;margin:0 0 1.4em;border:1px solid var(--outline-variant)}
.mlb-page-content pre code{background:none;padding:0}

/* compact rank list inside hub content */
.mlb-rank-list{margin:24px 0;padding:0;list-style:none;counter-reset:rk}
.mlb-rank-list li{
  border-bottom:1px solid var(--outline-variant);padding:14px 0 14px 56px;position:relative;
  counter-increment:rk;
}
.mlb-rank-list li::before{
  content:counter(rk,decimal-leading-zero);
  position:absolute;left:0;top:14px;
  font-family:var(--mono);font-size:14px;color:var(--primary-container);
  font-variant-numeric:tabular-nums;
}
.mlb-rank-list li strong{font-weight:500}
.mlb-rank-list li strong a{color:var(--ink);text-decoration:none}
.mlb-rank-list li strong a:hover{color:var(--primary-container)}
.mlb-rank-list li em{color:var(--ink-variant);font-style:italic;font-family:var(--serif);font-size:.95rem;font-weight:400}
