@import "./editorial.css";
/* Shared by Next.js and Astro. Source: config/navigation.shared.ts and tokens.ts. */
@font-face { font-family: Inter; font-style: normal; font-weight: 100 900; font-display: swap; src: url("./fonts/inter-latin-wght-normal.woff2") format("woff2"); }
@font-face { font-family: "Noto Serif"; font-style: normal; font-weight: 100 900; font-display: swap; src: url("./fonts/noto-serif-latin-wght-normal.woff2") format("woff2"); }
:where(a, button, input, summary, select, textarea):focus-visible { outline: 3px solid var(--color-action-rose); outline-offset: 3px; }
h2.font-serif { line-height: var(--type-section-h2-lh); }
.serif { font-weight: 400; }
/* Shared Cover Story masthead. Identical on Next, Astro, tools and shop. */
.site-header { --nav-text-primary:var(--ed-ink); --nav-text-secondary:var(--ed-muted); --nav-border-soft:var(--ed-rule); --nav-surface-subtle:var(--ed-panel); --nav-surface-card:var(--ed-paper); --nav-focus-rose:var(--ed-wine); color:var(--ed-ink); position:relative; z-index:40; background:var(--ed-paper); line-height:1.4; }
.site-header__container { box-sizing:border-box; max-width:var(--ed-width); width:100%; padding-inline:var(--ed-gutter); margin-inline:auto; }
.site-header__row { position:relative; display:flex; align-items:center; min-height:68px; gap:16px; border-bottom:1px solid var(--ed-rule); }
.site-header__brand { display:inline-flex; align-items:center; min-height:44px; flex-shrink:0; margin-right:auto; color:var(--ed-ink); font-family:"Noto Serif",Georgia,serif; font-size:30px; font-weight:400; letter-spacing:-1.4px; text-decoration:none; }
.site-header__motto { display:none; font:400 12px/1.5 Inter,system-ui,sans-serif; color:var(--ed-muted); }
.site-header__nav { display:none; align-items:center; gap:30px; }
.site-header__nav-link { display:inline-flex; align-items:center; min-height:44px; color:var(--ed-muted); font:400 12px/1.5 Inter,system-ui,sans-serif; letter-spacing:0; text-decoration:none; white-space:nowrap; }
.site-header__nav-link:hover,.site-header__nav-link[aria-current] { color:var(--ed-ink); text-decoration:underline; text-underline-offset:6px; text-decoration-thickness:1px; }
.site-header__cta { box-sizing:border-box; display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:8px 0; flex-shrink:0; border-radius:0; background:transparent; color:var(--ed-wine); font:400 12px/1.5 Inter,system-ui,sans-serif; letter-spacing:0; text-decoration:none; }
.site-header__cta:hover { background:transparent; color:var(--ed-wine-hover); text-decoration:underline; text-underline-offset:4px; }
.site-header__cta--top,.site-header__cta-long { display:none; }
.site-header__menu { flex-shrink:0; }
.site-header__menu summary { box-sizing:border-box; min-height:44px; padding:10px 8px; border:1px solid var(--ed-rule); border-radius:0; color:var(--ed-ink); font:400 12px/22px Inter,system-ui,sans-serif; cursor:pointer; list-style:none; }
.site-header__menu summary::-webkit-details-marker { display:none; }
.site-header__menu[open] summary { background:var(--ed-panel); }
.site-header__panel { position:absolute; z-index:50; top:100%; left:0; right:0; display:grid; gap:8px; max-height:calc(100dvh - 84px); overflow-y:auto; padding:16px; border:1px solid var(--ed-rule); border-radius:0; background:var(--nav-surface-card); box-shadow:0 12px 24px rgb(41 37 33 / 8%); }
.site-header__panel .site-header__nav-link { padding-inline:8px; }
.site-header :is(a,summary):focus-visible { outline:3px solid var(--ed-wine); outline-offset:3px; }
@media(min-width:480px) { .site-header__cta--top { display:inline-flex; } .site-header__cta--mobile { display:none; } }
@media(max-width:1023px) { .site-header__brand { font-size:27px; } .site-header__cta { padding-inline:8px; } }
@media(max-width:600px) { .site-header__brand { font-size:25px; letter-spacing:-1.2px; } .site-header__cta { font-size:11px; padding-inline:6px; } .site-header__row { gap:8px; } }
/* Keep all three controls on a 320px row without clipping. */
@media (max-width: 359px) {
  .site-header__container { padding-inline:16px; }
  .site-header__brand { font-size:23px; white-space:nowrap; }
  .site-header__row { gap:2px; }
  .site-header__cta { padding-inline:5px; }
  .site-header__menu summary { padding-inline:6px; }
}
.footer-link,.footer-privacy-choice { display:inline-flex; align-items:center; min-height:44px; padding-block:8px; text-align:left; }
@media(min-width:1024px) {
  .site-header__row { display:grid; grid-template-columns:auto 1fr auto; column-gap:26px; padding-top:22px; border-bottom:0; }
  .site-header__brand { margin:0; }
  .site-header__motto { display:block; }
  .site-header__nav { display:flex; grid-column:1/-1; grid-row:2; border-block:1px solid var(--ed-rule); margin-top:20px; min-height:48px; }
  .site-header__cta--top { grid-column:3; grid-row:1; }
  .site-header__menu,.site-header__cta-short { display:none; }
  .site-header__cta-long { display:inline; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
