/* Structural defaults shared by every public page, independent of the chosen theme. */
:root {
  color-scheme: light;
  --layout-edge: clamp(1.25rem, 4vw, 4.5rem);
  --layout-focus: currentColor;
}
* { box-sizing: border-box; }
body { margin: 0; overflow-wrap: anywhere; }
img { display: block; max-width: 100%; }
button, select { font: inherit; }
[hidden] { display: none !important; }
:focus-visible { outline: 2px solid var(--layout-focus); outline-offset: 4px; }
.site-header__actions:not(:has(a, select)) { display: none; }
.theme-status-page { min-height: 100svh; overflow-x: clip; }
.site-status { min-height: 100svh; overflow: clip; }
.site-status__mark { position: absolute; pointer-events: none; }
.site-status__content { padding-block: 2rem; }
.site-status__footer a, .footer-column a { overflow-wrap: anywhere; }
.location-card { min-width: 0; }
.location-card__body { min-width: 0; }
.location-card__action { min-height: 2.75rem; }
.site-header__actions { min-width: 0; }
.footer-legal { gap: .75rem; }
.navigation-panel[inert] { pointer-events: none; }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* Shared typography selection and accessible interaction primitives. */
html[data-site-font="modern_sans"] { --display-font: "Avenir Next", Avenir, Montserrat, "Helvetica Neue", Arial, sans-serif; --body-font: "Avenir Next", Avenir, Montserrat, "Helvetica Neue", Arial, sans-serif; }
html[data-site-font="rounded_sans"] { --display-font: "Arial Rounded MT Bold", Nunito, Arial, sans-serif; --body-font: Nunito, "Helvetica Neue", Arial, sans-serif; }
html[data-site-font="classic_serif"] { --display-font: Georgia, "Times New Roman", serif; --body-font: Georgia, "Times New Roman", serif; }
html[data-site-font="system"] { --display-font: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; --body-font: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
html { scroll-behavior: smooth; }
body.navigation-open { overflow: hidden; }
a { color: inherit; }
.visually-hidden { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(0 0 0 0) !important; white-space: nowrap !important; }
.skip-link:focus { transform: translateY(0); }
body { background: var(--page); color: var(--ink); font: 400 1rem/var(--body-line-height, 1.65) var(--page-font, var(--body-font)); }
p { font-size: var(--paragraph-size, 1em); }
