:root {
  --ink: #122322;
  --paper: #f2f0e9;
  --card: #fffdf7;
  --sea: #157f78;
  --line: rgba(18, 35, 34, 0.16);
  --muted: #596965;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--paper); font: 17px/1.65 Georgia, "Times New Roman", serif; }
a { color: inherit; }
img { max-width: 100%; object-fit: contain; }
.seo-header, footer { display: flex; align-items: center; justify-content: space-between; gap: 2rem; padding: 1.1rem max(5vw, 1.25rem); background: var(--ink); color: white; }
.seo-header { position: sticky; top: 0; z-index: 5; }
.seo-header nav, footer nav, .actions { display: flex; flex-wrap: wrap; gap: 1rem; align-items: center; }
.seo-header a, footer a { text-decoration: none; }
.seo-logo { font: 900 1.45rem/1 Arial, sans-serif; letter-spacing: -.08em; }
main { width: min(1180px, 90vw); margin: 0 auto; padding: 4rem 0 6rem; }
.seo-hero { max-width: 860px; margin-bottom: 3.5rem; }
.brand-hero { display: grid; grid-template-columns: minmax(170px, 260px) 1fr; gap: 2.5rem; align-items: center; max-width: none; }
.eyebrow { color: var(--sea); font: 700 .73rem/1.2 Arial, sans-serif; letter-spacing: .2em; text-transform: uppercase; }
h1, h2, h3 { font-family: Arial, sans-serif; line-height: 1.02; letter-spacing: -.045em; }
h1 { max-width: 900px; margin: .45rem 0 1.1rem; font-size: clamp(3rem, 8vw, 7.4rem); }
h2 { margin-top: 3.5rem; font-size: clamp(2rem, 4vw, 3.4rem); }
.card-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 1rem; }
.editorial-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin: 3rem 0; }
.editorial-grid article { padding: 1.35rem; border: 1px solid var(--line); background: var(--card); }
.editorial-grid h2 { margin: 0 0 .75rem; font-size: 1.55rem; }
.card-grid article, .board-summary, .stats div, .data-note { padding: 1.35rem; border: 1px solid var(--line); background: var(--card); }
.card-grid article img { width: 180px; height: 64px; }
.card-grid h2 { margin: 1rem 0 .25rem; font-size: 1.45rem; }
.stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 1rem; }
.stats strong, .stats span { display: block; }
.stats strong { font: 800 1.7rem/1 Arial, sans-serif; }
.stats span, .data-note { color: var(--muted); }
.model-links, .name-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: .65rem 2rem; padding-left: 1.2rem; }
.model-links span { display: block; color: var(--muted); font-size: .88rem; }
.breadcrumbs { display: flex; gap: .65rem; margin-bottom: 2rem; color: var(--muted); font-size: .9rem; }
.breadcrumbs span::before { content: "/"; margin-right: .65rem; }
.board-hero { display: grid; grid-template-columns: minmax(260px, .8fr) 1.2fr; gap: clamp(2rem, 6vw, 6rem); align-items: center; }
.board-hero img { width: 100%; max-height: 620px; }
.board-summary dl { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 1rem; }
.guidance { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 1rem; }
.guidance div { padding: 1rem; border-left: 3px solid var(--sea); background: var(--card); }
.guidance dt { color: var(--muted); font-size: .85rem; }
.guidance dd { margin: .15rem 0 0; font-weight: 700; }
.region-links { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: .75rem; }
.region-links a { padding: 1rem; border: 1px solid var(--line); background: var(--card); font-weight: 700; }
.board-summary dt { color: var(--muted); font-size: .85rem; }
.board-summary dd { margin: .15rem 0 0; font-weight: 700; }
.table-wrap { overflow-x: auto; border: 1px solid var(--line); background: var(--card); }
table { width: 100%; border-collapse: collapse; }
th, td { padding: .8rem 1rem; border-bottom: 1px solid var(--line); text-align: left; white-space: nowrap; }
th { font-family: Arial, sans-serif; }
.button { display: inline-block; padding: .8rem 1.1rem; border: 1px solid var(--ink); background: var(--ink); color: white; text-decoration: none; font: 700 .9rem/1 Arial, sans-serif; }
.button.secondary { background: transparent; color: var(--ink); }
.text-link { font-weight: 700; }
.not-found { min-height: 72vh; display: grid; align-content: center; }
.guide { max-width: 850px; }
.guide section { margin: 3.5rem 0; }
.guide p { max-width: 76ch; }
.lede { font-size: 1.25rem; }
.faq details { margin: .75rem 0; padding: 1rem; border: 1px solid var(--line); background: var(--card); }
.faq summary { cursor: pointer; font-family: Arial, sans-serif; font-weight: 700; }
.comparison-choice { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin: 3rem 0; }
.comparison-choice article, .comparison-availability > div { padding: 1.35rem; border: 1px solid var(--line); background: var(--card); }
.comparison-choice h2 { margin-top: 0; font-size: 1.6rem; }
.comparison-availability { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.comparison-availability a { display: block; margin: .45rem 0; }
.not-found h1 { max-width: 780px; }
footer { align-items: flex-start; }
footer p { max-width: 620px; margin: 0; }
@media (max-width: 720px) {
  .seo-header { align-items: flex-start; }
  .seo-header nav { justify-content: flex-end; font-size: .85rem; }
  main { padding-top: 2.5rem; }
  .brand-hero, .board-hero { grid-template-columns: 1fr; }
  .editorial-grid { grid-template-columns: 1fr; }
  .comparison-choice, .comparison-availability { grid-template-columns: 1fr; }
  .brand-hero img { max-height: 100px; }
  footer { display: grid; }
}
