/* Shared editorial foundation. Page styles own layout, not duplicate brand rules. */
:root {
  --layout-width: 1280px;
  --layout-gutter: 4vw;
  --layout-inset: max(var(--layout-gutter), calc((100% - var(--layout-width)) / 2));
}
:is(.editorial, .member-editorial, .support-editorial) :where(a, button, input, select, textarea, summary):focus-visible { outline: 2px solid var(--rose); outline-offset: 4px; }
:is(.editorial, .member-editorial, .support-editorial) .section-kicker { font-size: 11px; font-weight: 600; letter-spacing: .12em; }
:is(.editorial, .member-editorial, .support-editorial) .site-footer { width: 100%; max-width: none; margin: 0; padding: 48px var(--layout-inset); background: var(--ink); color: var(--ivory); border: 0; gap: 28px; }
:is(.editorial, .member-editorial, .support-editorial) .site-footer .brand { color: var(--ivory); }
:is(.editorial, .member-editorial, .support-editorial) .site-footer .brand span { color: var(--pink); }
:is(.editorial, .member-editorial, .support-editorial) .site-footer .footer-brand p,
:is(.editorial, .member-editorial, .support-editorial) .footer-links a { color: var(--stone); font-size: 13px; font-weight: 400; line-height: 1.7; }
:is(.editorial, .member-editorial, .support-editorial) .footer-links { flex-wrap: wrap; gap: 14px 24px; }
:is(.editorial, .member-editorial, .support-editorial) .footer-links a:hover { color: var(--pink); }
@media (max-width: 600px) {
  :is(.member-editorial, .support-editorial) { --layout-gutter: 5vw; }
  :is(.member-editorial, .support-editorial) .site-footer { flex-direction: column; align-items: flex-start; padding-block: 40px; }
  :is(.member-editorial, .support-editorial) .footer-links { justify-content: flex-start; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}
