/* Responsive layer */
@media (max-width: 1180px) {
  .menu-btn { display: inline-flex; }
  .nav { position: fixed; inset: calc(var(--head-h) + 34px) 0 0; background: var(--ivory); padding: 8px var(--gut) 40px; overflow-y: auto; visibility: hidden; opacity: 0; transition: opacity .2s, visibility .2s; z-index: 95; }
  .nav.is-open { visibility: visible; opacity: 1; }
  .nav ul { flex-direction: column; gap: 0; }
  .nav li { border-bottom: 1px solid var(--rule); }
  .nav a { display: block; padding: 16px 0; font: 800 1.7rem/1.15 var(--head); letter-spacing: -.035em; text-transform: none; }
  .nav a::after { display: none; }
  .nav a[aria-current] { color: var(--ink); text-decoration: underline; text-decoration-color: var(--sun); text-decoration-thickness: 3px; text-underline-offset: 6px; }
  .week { grid-template-columns: repeat(7, minmax(120px, 1fr)); }
  .week { overflow-x: auto; padding-bottom: 10px; }
}

@media (max-width: 1024px) {
  .post-body { grid-template-columns: minmax(0, 1fr); max-width: 760px; }
  .post-side { display: none; }
  .legal-body { grid-template-columns: minmax(0, 1fr); }
  .legal-toc { display: none; }
  .foot-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .foot-brand { grid-column: 1 / -1; }
  .picks-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pick-tile:nth-child(even) { margin-top: 28px; }
  .topic { grid-template-columns: 40px minmax(0, 1fr) 96px 24px; }
  .topic-d { grid-column: 2; grid-row: 2; }
  .topic-img { grid-column: 3; grid-row: 1 / span 2; }
  .topic .arr { grid-column: 4; grid-row: 1 / span 2; }
  .topic-n { grid-row: 1; }
}

@media (max-width: 860px) {
  :root { --head-h: 66px; }
  .logo img { height: 32px; }
  .topline-cats { display: none; }
  .hero, .post-hero, .page-hero, .space-grid, .latest, .featured, .contact, .lead-story, .disclosure-band, .shelf-row, .values, .about-cols, .nf, .picks-head { grid-template-columns: minmax(0, 1fr); }
  .hero-art { width: min(88%, 480px); }
  .post-art { justify-self: center; width: min(94%, 520px); }
  .post-hero-copy { order: 2; }
  .post-hero .crumbs { display: block; }
  .back { margin-bottom: 18px; }
  .post-art { order: 1; }
  .post-frame { aspect-ratio: 4 / 3; }
  .page-hero-c > div:first-child { order: 0; }
  .page-hero-c .geo-sun { right: 0; }
  .page-hero-img > img { max-height: 380px; }
  .page-hero-d .page-hero-img { max-width: 340px; }
  .arch-img { width: min(80%, 360px); }
  .feat-main { padding-bottom: 0; }
  .feat-media { border-radius: 14px 14px 14px 60px; }
  .feat-card { position: static; width: 100%; margin-top: 16px; padding: 0; border: 0; background: none; }
  .latest-head { position: static; }
  .strip-row { grid-template-columns: repeat(2, 1fr); }
  .strip-item { padding: 18px 14px; }
  .strip-item:nth-child(odd) { border-left: 0; padding-left: 0; }
  .strip-item:nth-child(n+3) { border-top: 1px solid var(--rule); }
  .stagger, .grid-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .stagger .card:nth-child(3n+2) { margin-top: 0; }
  .stagger .card:nth-child(3n+2) .card-media { aspect-ratio: 4 / 3; border-radius: 12px; }
  .space-art { max-width: 520px; }
  .shelf-row.alt .shelf-img { order: 0; }
  .contact-form { position: static; }
  .principles ol { grid-template-columns: minmax(0, 1fr); }
  .principles li, .principles li:first-child { padding: 18px 0; border-left: 0; border-top: 1px solid var(--rule); }
  .principles li:first-child { border-top: 0; }
  .news-copy { padding-right: clamp(32px, 6vw, 84px); padding-bottom: 150px; }
  .news-copy::after { width: 120px; }
  .week { display: block; overflow: visible; padding: 0; }
  .day { display: grid; grid-template-columns: 74px minmax(0, 1fr); min-height: 0; padding: 14px 10px 14px 0; border-left: 0; border-top: 1px solid var(--rule); column-gap: 8px; }
  .day:first-child { padding-left: 0; border-top: 0; }
  .day-name { grid-row: span 2; font-size: 2rem; margin: 0; }
  .day.is-today { border-top-color: transparent; padding-left: 12px; }
}

@media (max-width: 600px) {
  body { font-size: 1.03rem; }
  .btn { width: 100%; }
  .head-cta { display: none; }
  .btn.btn-sm.head-cta { display: none; }
  .logo img { height: 28px; }
  .head-row { gap: 8px; }
  .hero h1 { font-size: clamp(2.7rem, 13.2vw, 3.8rem); }
  .stagger, .grid-3, .grid-2 { grid-template-columns: minmax(0, 1fr); }
  .tip-grid { grid-template-columns: minmax(0, 1fr); }
  .tip-disc { width: 96px; font-size: 2rem; }
  .tip-text { min-height: 0; }
  .mini { grid-template-columns: 88px 1fr; }
  .topic { padding-block: 14px; grid-template-columns: 30px minmax(0, 1fr) 70px; column-gap: 12px; }
  .topic .arr { display: none; }
  .topic-img { height: 70px; border-radius: 35px 35px 6px 6px; }
  .topic-name { font-size: 1.7rem; }
  .topic-d { font-size: .94rem; }
  .picks-row { gap: 14px; }
  .prose { font-size: 1.07rem; }
  .prose > p:first-child, .prose > .disclosure + p { font-size: 1.16rem; }
  .prose .toolbox ul { columns: 1; }
  .callout, .toolbox, .checklist { padding: 18px; }
  .steps > li { padding-left: 46px; }
  .pick-card { grid-template-columns: minmax(0, 1fr); }
  .pick-media { min-height: 0; height: 140px; }
  .prevnext { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .pn-next { text-align: left; }
  .foot-grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .foot-grid > div:last-child { grid-column: 1 / -1; }
  .contact-card { grid-template-columns: minmax(0, 1fr); }
  .shelf-lists { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .list-search, .list-search input { width: 100%; }
  .filters { display: block; }
  .chips { margin-bottom: 12px; }
  .row { grid-template-columns: 64px minmax(0, 1fr) 20px; }
  .post-sun { width: 100px; height: 100px; left: -20px; }
  .post-square { width: 32px; height: 32px; left: -8px; }
  .post-dots { right: -8px; }
  .post-frame { border-radius: 14px 90px 14px 14px; }
  .geo-sun { left: -7%; }
  .geo-ring { right: 0; }
  .geo-dots { right: 0; }
  .page-hero-c .geo-sun { right: 0; }
  .consent-acts .btn { width: auto; flex: 1 1 auto; }
  .to-top { right: 14px; bottom: 14px; }
}
