:root {
  --uae-ink: #102126;
  --uae-muted: #56676b;
  --uae-paper: #f4f0e7;
  --uae-paper-deep: #e9e1d3;
  --uae-card: #fffdf7;
  --uae-line: rgba(16, 33, 38, 0.15);
  --uae-night: #09262a;
  --uae-night-2: #10383a;
  --uae-green: #087d63;
  --uae-green-dark: #05614e;
  --uae-mint: #a7e4d0;
  --uae-copper: #d98f58;
  --uae-red: #bc4d4a;
  --uae-shadow: 0 24px 80px rgba(11, 34, 36, 0.11);
  --uae-radius: 22px;
}

* { box-sizing: border-box; }

html { scroll-behavior: smooth; scroll-padding-top: 92px; }

body {
  margin: 0;
  background: var(--uae-paper);
  color: var(--uae-ink);
  font-family: Geist, Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16px;
  line-height: 1.65;
  text-rendering: optimizeLegibility;
}

a { color: inherit; text-underline-offset: 3px; }
a:hover { color: var(--uae-green); }
button, input, select { font: inherit; }

.skip-link {
  position: fixed;
  z-index: 1000;
  top: 8px;
  left: 8px;
  transform: translateY(-160%);
  padding: 10px 16px;
  border-radius: 10px;
  background: #fff;
  color: var(--uae-ink);
}
.skip-link:focus { transform: translateY(0); }

.site-header {
  position: sticky;
  z-index: 80;
  top: 0;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  min-height: 72px;
  padding: 0 4vw;
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(9, 38, 42, 0.94);
  color: #f8f5ed;
  backdrop-filter: blur(18px);
}

.brand {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: inherit;
  font-size: 1.02rem;
  font-weight: 760;
  letter-spacing: -0.025em;
  text-decoration: none;
}

.brand-mark {
  display: inline-grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border: 1px solid rgba(255, 255, 255, 0.32);
  border-radius: 50%;
  color: var(--uae-mint);
  font-size: 0.72rem;
  letter-spacing: -0.06em;
}

.site-header nav {
  display: flex;
  justify-content: center;
  gap: clamp(16px, 3vw, 38px);
}

.site-header nav a,
.nav-cta {
  color: rgba(255, 255, 255, 0.77);
  font-size: 0.78rem;
  font-weight: 650;
  letter-spacing: 0.04em;
  text-decoration: none;
}

.site-header nav a:hover,
.nav-cta:hover { color: #fff; }

.nav-cta {
  padding: 10px 15px;
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 999px;
}

main { overflow: clip; }

.hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(290px, 0.55fr);
  gap: clamp(40px, 7vw, 110px);
  align-items: end;
  min-height: 690px;
  padding: clamp(82px, 10vw, 150px) max(5vw, calc((100vw - 1320px) / 2)) clamp(72px, 8vw, 120px);
  background:
    radial-gradient(circle at 82% 18%, rgba(167, 228, 208, 0.16), transparent 28%),
    linear-gradient(135deg, var(--uae-night), #071c20 72%);
  color: #f7f4ec;
}

.hero::after {
  content: "";
  position: absolute;
  right: -12vw;
  bottom: -36vw;
  width: 70vw;
  height: 70vw;
  border: 1px solid rgba(167, 228, 208, 0.1);
  border-radius: 50%;
  box-shadow: 0 0 0 8vw rgba(167, 228, 208, 0.025), 0 0 0 18vw rgba(167, 228, 208, 0.02);
  pointer-events: none;
}

.hero-grid {
  position: absolute;
  inset: 0;
  opacity: 0.16;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.12) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.08) 1px, transparent 1px);
  background-size: 80px 80px;
  mask-image: linear-gradient(90deg, #000, transparent 78%);
}

.hero-copy,
.hero-ledger { position: relative; z-index: 2; }

.eyebrow,
.section-kicker,
.ledger-label,
.mini-label {
  margin: 0 0 18px;
  color: var(--uae-green);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  line-height: 1.4;
  text-transform: uppercase;
}

.hero .eyebrow { color: var(--uae-mint); }

.hero h1 {
  max-width: 980px;
  margin: 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(3.1rem, 7.4vw, 7.8rem);
  font-weight: 400;
  letter-spacing: -0.062em;
  line-height: 0.92;
}

.hero h1 em {
  display: block;
  margin-top: 0.13em;
  color: var(--uae-mint);
  font-weight: 400;
}

.hero-deck {
  max-width: 760px;
  margin: 34px 0 0;
  color: rgba(255, 255, 255, 0.76);
  font-size: clamp(1.05rem, 1.55vw, 1.32rem);
  line-height: 1.6;
}

.hero-deck strong { color: #fff; }

.hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 34px;
}

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 20px;
  border: 1px solid transparent;
  border-radius: 999px;
  font-size: 0.82rem;
  font-weight: 760;
  text-decoration: none;
}

.button.primary { background: var(--uae-mint); color: var(--uae-night); }
.button.secondary { border-color: rgba(255, 255, 255, 0.3); color: #fff; }
.button.light { background: #fff; color: var(--uae-night); }
.button:hover { transform: translateY(-1px); color: inherit; }

.as-of {
  margin: 24px 0 0;
  color: rgba(255, 255, 255, 0.5);
  font-size: 0.74rem;
}

.hero-ledger {
  align-self: end;
  padding: 24px;
  border: 1px solid rgba(255, 255, 255, 0.17);
  border-radius: var(--uae-radius);
  background: rgba(255, 255, 255, 0.055);
  box-shadow: 0 30px 80px rgba(0, 0, 0, 0.17);
  backdrop-filter: blur(8px);
}

.hero-ledger .ledger-label { color: rgba(255, 255, 255, 0.53); }
.hero-ledger dl { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; margin: 0; background: rgba(255, 255, 255, 0.1); }
.hero-ledger dl div { padding: 16px; background: #0c2a2e; }
.hero-ledger dt { color: rgba(255, 255, 255, 0.5); font-size: 0.7rem; }
.hero-ledger dd { margin: 3px 0 0; color: #fff; font-size: 1.12rem; font-weight: 720; }
.hero-ledger > a { display: flex; justify-content: space-between; margin-top: 18px; color: var(--uae-mint); font-size: 0.82rem; text-decoration: none; }

.verdict-strip {
  display: grid;
  grid-template-columns: minmax(250px, 0.8fr) minmax(0, 1.2fr);
  gap: clamp(32px, 7vw, 100px);
  align-items: center;
  padding: clamp(45px, 6vw, 76px) max(5vw, calc((100vw - 1220px) / 2));
  background: var(--uae-copper);
  color: #1f1d18;
}

.verdict-strip span { font-size: 0.72rem; font-weight: 800; letter-spacing: 0.13em; text-transform: uppercase; }
.verdict-strip h2 { max-width: 520px; margin: 8px 0 0; font-family: Georgia, serif; font-size: clamp(1.8rem, 3.2vw, 3.2rem); font-weight: 400; line-height: 1.08; }
.verdict-strip p { margin: 0; font-size: clamp(1rem, 1.3vw, 1.18rem); line-height: 1.75; }

.section {
  width: min(1220px, 90vw);
  margin: 0 auto;
  padding: clamp(78px, 10vw, 145px) 0;
  border-bottom: 1px solid var(--uae-line);
}

.section-heading {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(260px, 0.65fr);
  gap: clamp(30px, 7vw, 95px);
  align-items: end;
  margin-bottom: 46px;
}

.section h2,
.split-section h2 {
  max-width: 820px;
  margin: 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(2.2rem, 5vw, 4.7rem);
  font-weight: 400;
  letter-spacing: -0.045em;
  line-height: 1.02;
}

.section-heading > p,
.split-section > div > p {
  margin: 0;
  color: var(--uae-muted);
  font-size: 1rem;
  line-height: 1.8;
}

.answer-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.answer-grid article {
  min-height: 310px;
  padding: 26px;
  border: 1px solid var(--uae-line);
  border-radius: var(--uae-radius);
  background: var(--uae-card);
  box-shadow: 0 10px 34px rgba(16, 33, 38, 0.035);
}

.answer-grid article:nth-child(2) { background: var(--uae-night); color: #fff; }
.answer-grid article span { display: block; min-height: 38px; color: var(--uae-muted); font-size: 0.7rem; font-weight: 760; letter-spacing: 0.09em; text-transform: uppercase; }
.answer-grid article:nth-child(2) span { color: rgba(255,255,255,.55); }
.answer-grid h3 { margin: 45px 0 0; font-size: 1rem; letter-spacing: 0.05em; }
.answer-grid strong { display: block; margin-top: 4px; color: var(--uae-green); font-family: Georgia, serif; font-size: clamp(2.4rem, 4vw, 4rem); font-weight: 400; line-height: 1; }
.answer-grid article:nth-child(2) strong { color: var(--uae-mint); }
.answer-grid p { margin: 28px 0 0; color: var(--uae-muted); font-size: 0.82rem; line-height: 1.65; }
.answer-grid article:nth-child(2) p { color: rgba(255,255,255,.65); }

.reading-note,
.callout,
.source-note {
  margin-top: 24px;
  padding: 20px 24px;
  border-left: 4px solid var(--uae-green);
  background: rgba(8, 125, 99, 0.07);
  color: var(--uae-muted);
  font-size: 0.9rem;
}
.reading-note strong,
.callout strong { color: var(--uae-ink); }

.ranking-section { width: min(1440px, 94vw); }

.rank-controls {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(190px, .6fr) auto auto minmax(190px, .6fr);
  gap: 12px;
  align-items: end;
  margin-bottom: 16px;
  padding: 18px;
  border: 1px solid var(--uae-line);
  border-radius: 18px;
  background: rgba(255, 253, 247, 0.68);
}

.rank-controls label:not(.check-control) { display: grid; gap: 6px; color: var(--uae-muted); font-size: 0.7rem; font-weight: 700; letter-spacing: .04em; }
.rank-controls input[type="search"],
.rank-controls select {
  width: 100%;
  min-height: 44px;
  padding: 0 12px;
  border: 1px solid var(--uae-line);
  border-radius: 10px;
  outline: none;
  background: #fff;
  color: var(--uae-ink);
}
.rank-controls input:focus,
.rank-controls select:focus { border-color: var(--uae-green); box-shadow: 0 0 0 3px rgba(8,125,99,.12); }
.check-control { display: flex; gap: 8px; align-items: center; min-height: 44px; padding: 0 12px; border: 1px solid var(--uae-line); border-radius: 10px; background: #fff; font-size: .76rem; white-space: nowrap; }
.check-control input { accent-color: var(--uae-green); }
#reset-table { min-height: 44px; padding: 0 16px; border: 0; border-radius: 10px; background: var(--uae-night); color: #fff; cursor: pointer; }
#table-status { align-self: center; margin: 0; color: var(--uae-muted); font-size: .78rem; text-align: right; }

.table-scroll {
  overflow: auto;
  border: 1px solid var(--uae-line);
  border-radius: var(--uae-radius);
  background: var(--uae-card);
  box-shadow: var(--uae-shadow);
}

table { width: 100%; border-collapse: collapse; font-variant-numeric: tabular-nums; }
th, td { padding: 15px 14px; border-bottom: 1px solid rgba(16,33,38,.1); text-align: left; white-space: nowrap; }
th { position: sticky; z-index: 3; top: 0; background: #e8e2d7; color: var(--uae-muted); font-size: .67rem; letter-spacing: .04em; text-transform: uppercase; }
th button { padding: 0; border: 0; background: transparent; color: inherit; font: inherit; text-transform: inherit; cursor: pointer; }
th button::after { content: " ↕"; opacity: .4; }
th button[data-active="true"]::after { content: " ↓"; color: var(--uae-green); opacity: 1; }
th button[data-active="true"][data-direction="asc"]::after { content: " ↑"; }
tbody tr:hover { background: rgba(8,125,99,.055); }
tbody tr[hidden] { display: none; }
tbody tr:last-child td { border-bottom: 0; }
.rank-cell { color: var(--uae-muted); font-size: .78rem; }
.stock-cell { min-width: 230px; }
.stock-cell a { display: grid; gap: 1px; text-decoration: none; }
.stock-cell strong { font-size: .88rem; }
.stock-cell span { max-width: 250px; overflow: hidden; color: var(--uae-muted); font-size: .7rem; text-overflow: ellipsis; }
.number-cell { text-align: right; font-size: .8rem; }
.positive { color: var(--uae-green-dark) !important; }
.negative { color: var(--uae-red) !important; }
.sector-pill,
.quality-mark { display: inline-flex; padding: 5px 8px; border-radius: 999px; background: rgba(16,33,38,.07); color: var(--uae-muted); font-size: .62rem; }
.quality-mark { background: rgba(8,125,99,.12); color: var(--uae-green-dark); font-weight: 700; }
.quality-mark.muted { background: rgba(188,77,74,.09); color: #8e5551; }
.table-footnote { max-width: 960px; margin: 18px 0 0; color: var(--uae-muted); font-size: .78rem; line-height: 1.7; }

.split-section {
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(420px, 1.2fr);
  gap: clamp(50px, 8vw, 110px);
  align-items: start;
}
.split-section h2 { margin-bottom: 34px; }
.split-section > div > p + p { margin-top: 22px; }

.return-chart {
  max-height: 850px;
  overflow: auto;
  padding: 22px;
  border: 1px solid var(--uae-line);
  border-radius: var(--uae-radius);
  background: var(--uae-card);
  box-shadow: var(--uae-shadow);
}
.chart-legend { display: flex; justify-content: flex-end; gap: 16px; margin-bottom: 14px; color: var(--uae-muted); font-size: .67rem; }
.chart-legend span { display: inline-flex; align-items: center; gap: 6px; }
.chart-legend i { width: 9px; height: 9px; border-radius: 50%; }
.chart-legend .up { background: var(--uae-green); }
.chart-legend .down { background: var(--uae-red); }
.return-row { display: grid; grid-template-columns: 88px minmax(180px,1fr) 62px; gap: 10px; align-items: center; min-height: 23px; font-size: .68rem; }
.return-row strong { text-align: right; font-size: .67rem; }
.return-symbol { color: var(--uae-muted); font-weight: 700; }
.return-axis { position: relative; height: 8px; background: linear-gradient(90deg, rgba(188,77,74,.05) 0 50%, rgba(8,125,99,.05) 50% 100%); }
.return-axis::after { content:""; position:absolute; left:50%; top:-3px; bottom:-3px; width:1px; background: rgba(16,33,38,.22); }
.return-fill { position: absolute; top: 1px; bottom: 1px; width: calc(var(--bar) / 2); border-radius: 2px; }
.return-fill.up { left: 50%; background: var(--uae-green); }
.return-fill.down { right: 50%; background: var(--uae-red); }

.test-section { width: min(1320px, 92vw); }
.test-verdict { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; overflow: hidden; border-radius: var(--uae-radius); background: rgba(255,255,255,.18); box-shadow: var(--uae-shadow); }
.test-verdict > div { min-height: 190px; padding: 28px; background: var(--uae-night); color: #fff; }
.test-verdict span { display:block; color:rgba(255,255,255,.5); font-size:.7rem; letter-spacing:.08em; text-transform:uppercase; }
.test-verdict strong { display:block; margin-top:28px; color:var(--uae-mint); font-family:Georgia,serif; font-size:clamp(2rem,3.4vw,3.5rem); font-weight:400; line-height:1; }
.test-verdict small { display:block; margin-top:8px; color:rgba(255,255,255,.55); }
.test-verdict > p { grid-column: 1 / -1; margin:0; padding:20px 28px; background:var(--uae-copper); color:#28221c; }

.month-grid { display:grid; grid-template-columns:repeat(14,minmax(72px,1fr)); gap:7px; margin-top:24px; overflow:auto; padding-bottom:6px; }
.month-cell { display:grid; gap:7px; min-width:72px; padding:10px; border:1px solid var(--uae-line); border-radius:10px; background:var(--uae-card); font-size:.62rem; }
.month-cell span { color:var(--uae-muted); }
.month-cell i { display:block; width:var(--month-bar); height:5px; border-radius:4px; background:var(--uae-green); }
.month-cell.lag i { margin-left:auto; background:var(--uae-red); }
.month-cell strong { font-size:.67rem; }

.test-columns { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:24px; }
.test-columns article { padding:28px; border:1px solid var(--uae-line); border-radius:var(--uae-radius); background:var(--uae-card); }
.test-columns h3 { margin:6px 0 12px; font-family:Georgia,serif; font-size:1.45rem; font-weight:400; line-height:1.15; }
.test-columns p { margin:0; color:var(--uae-muted); font-size:.85rem; }
.subheading { margin:58px 0 18px; font-family:Georgia,serif; font-size:clamp(1.6rem,3vw,2.6rem); font-weight:400; }
.table-scroll.compact { border-radius:16px; box-shadow:none; }
.compact td,.compact th { padding:13px 15px; font-size:.74rem; }

.audit-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.audit-grid article { min-height:235px; padding:26px; border:1px solid var(--uae-line); border-radius:var(--uae-radius); background:var(--uae-card); }
.audit-grid strong { display:block; color:var(--uae-green-dark); font-family:Georgia,serif; font-size:2.6rem; font-weight:400; line-height:1; word-break:break-word; }
.audit-grid span { display:block; margin-top:8px; font-size:.72rem; font-weight:760; letter-spacing:.08em; text-transform:uppercase; }
.audit-grid p { margin:26px 0 0; color:var(--uae-muted); font-size:.8rem; }
.audit-grid a { color:var(--uae-green-dark); }
.source-note { margin-top:28px; padding:28px; }
.source-note h3 { margin:0 0 12px; font-family:Georgia,serif; font-size:1.6rem; font-weight:400; color:var(--uae-ink); }
.source-note p { margin:0; }
.source-note p + p { margin-top:15px; }

.method-list { display:grid; gap:0; margin:0; padding:0; list-style:none; border-top:1px solid var(--uae-line); }
.method-list li { display:grid; grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr); gap:clamp(30px,8vw,120px); padding:30px 0; border-bottom:1px solid var(--uae-line); }
.method-list li > div { display:flex; gap:16px; align-items:flex-start; }
.method-list li span { display:grid; place-items:center; min-width:36px; height:36px; border-radius:50%; background:var(--uae-night); color:var(--uae-mint); font-size:.64rem; }
.method-list h3 { margin:3px 0 0; font-family:Georgia,serif; font-size:1.35rem; font-weight:400; line-height:1.2; }
.method-list p { margin:0; color:var(--uae-muted); font-size:.88rem; }
.method-list code { padding:2px 5px; border-radius:4px; background:rgba(16,33,38,.07); font-size:.76rem; }
.definitions-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-top:42px; }
.definitions-grid article { padding:22px; border-top:3px solid var(--uae-green); background:rgba(255,253,247,.62); }
.definitions-grid h3 { margin:0; font-size:.82rem; text-transform:uppercase; letter-spacing:.07em; }
.definitions-grid p { margin:12px 0 0; color:var(--uae-muted); font-size:.78rem; }

.source-links { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
.source-links a { display:flex; flex-direction:column; min-height:220px; padding:24px; border:1px solid var(--uae-line); border-radius:var(--uae-radius); background:var(--uae-card); text-decoration:none; }
.source-links a:hover { transform:translateY(-2px); box-shadow:var(--uae-shadow); }
.source-links span { color:var(--uae-green); font-size:.67rem; font-weight:760; letter-spacing:.09em; text-transform:uppercase; }
.source-links strong { margin-top:30px; font-family:Georgia,serif; font-size:1.3rem; font-weight:400; line-height:1.15; }
.source-links small { margin-top:auto; padding-top:24px; color:var(--uae-muted); }

.faq-list { border-top:1px solid var(--uae-line); }
.faq-list details { border-bottom:1px solid var(--uae-line); }
.faq-list summary { position:relative; padding:25px 52px 25px 0; font-family:Georgia,serif; font-size:clamp(1.18rem,2.2vw,1.7rem); line-height:1.25; cursor:pointer; list-style:none; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary::after { content:"+"; position:absolute; right:8px; top:22px; color:var(--uae-green); font-family:Geist,sans-serif; font-size:1.5rem; }
.faq-list details[open] summary::after { content:"−"; }
.faq-list details > div { max-width:900px; padding:0 0 26px; color:var(--uae-muted); }
.faq-list details p { margin:0; }

.research-cta {
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(240px,.4fr);
  gap:60px;
  align-items:end;
  padding:clamp(70px,10vw,130px) max(5vw,calc((100vw - 1220px)/2));
  background:var(--uae-green-dark);
  color:#fff;
}
.research-cta span { color:var(--uae-mint); font-size:.72rem; font-weight:760; letter-spacing:.1em; text-transform:uppercase; }
.research-cta h2 { max-width:840px; margin:14px 0 20px; font-family:Georgia,serif; font-size:clamp(2.4rem,5.7vw,5.2rem); font-weight:400; letter-spacing:-.045em; line-height:1; }
.research-cta p { max-width:720px; margin:0; color:rgba(255,255,255,.7); }
.research-cta > div:last-child { display:grid; gap:18px; }
.text-link { color:#fff; font-size:.8rem; text-decoration:none; }
.text-link:hover { color:var(--uae-mint); }

.disclosure { padding:34px max(5vw,calc((100vw - 1220px)/2)); background:#061a1d; color:rgba(255,255,255,.64); font-size:.75rem; }
.disclosure strong { color:#fff; text-transform:uppercase; letter-spacing:.08em; }
.disclosure p { max-width:1100px; margin:8px 0 0; }

footer {
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:30px;
  align-items:center;
  padding:34px max(5vw,calc((100vw - 1220px)/2));
  background:#041417;
  color:rgba(255,255,255,.62);
}
footer p { margin:0; font-size:.76rem; }
footer nav { display:flex; flex-wrap:wrap; gap:16px; }
footer nav a { color:inherit; font-size:.72rem; text-decoration:none; }
footer small { grid-column:1/-1; color:rgba(255,255,255,.36); font-size:.65rem; }

@media (max-width: 1080px) {
  .hero { grid-template-columns:1fr; min-height:auto; }
  .hero-ledger { max-width:620px; }
  .answer-grid { grid-template-columns:1fr 1fr; }
  .rank-controls { grid-template-columns:1fr 1fr auto; }
  #table-status { grid-column:1/-1; text-align:left; }
  .split-section { grid-template-columns:1fr; }
  .return-chart { max-height:none; }
  .month-grid { grid-template-columns:repeat(7,minmax(90px,1fr)); }
  .audit-grid { grid-template-columns:1fr 1fr; }
  .definitions-grid,.source-links { grid-template-columns:1fr 1fr; }
}

@media (max-width: 760px) {
  html { scroll-padding-top:70px; }
  .site-header { grid-template-columns:auto 1fr; min-height:64px; }
  .site-header nav { display:none; }
  .nav-cta { justify-self:end; padding:8px 11px; font-size:.68rem; }
  .hero { padding-top:82px; }
  .hero h1 { font-size:clamp(2.9rem,15vw,5.1rem); }
  .hero-actions { display:grid; }
  .button { width:100%; }
  .verdict-strip,.section-heading,.research-cta { grid-template-columns:1fr; }
  .section { width:min(92vw,680px); padding:76px 0; }
  .ranking-section,.test-section { width:94vw; }
  .answer-grid,.test-columns,.audit-grid,.definitions-grid,.source-links { grid-template-columns:1fr; }
  .answer-grid article { min-height:250px; }
  .rank-controls { grid-template-columns:1fr; }
  .check-control { white-space:normal; }
  #reset-table { width:100%; }
  .test-verdict { grid-template-columns:1fr; }
  .test-verdict > p { grid-column:auto; }
  .month-grid { grid-template-columns:repeat(14,86px); }
  .method-list li { grid-template-columns:1fr; gap:18px; }
  .research-cta { gap:35px; }
  footer { grid-template-columns:1fr; }
  footer small { grid-column:auto; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { transition-duration:.001ms !important; animation-duration:.001ms !important; animation-iteration-count:1 !important; }
}

@media print {
  .site-header,.hero-actions,.rank-controls,.research-cta,footer { display:none !important; }
  body { background:#fff; color:#000; }
  .hero { min-height:auto; padding:40px; background:#fff; color:#000; }
  .hero h1,.hero-deck,.hero .eyebrow,.as-of { color:#000; }
  .hero-ledger { color:#000; border-color:#999; }
  .hero-ledger dl div { background:#fff; }
  .hero-ledger dt,.hero-ledger dd { color:#000; }
  .section { width:100%; padding:35px 0; break-inside:avoid; }
  .table-scroll { overflow:visible; box-shadow:none; }
}
