:root,
[data-theme="dark"] {
  --theme-page-bg: #000;
  --theme-section-bg: #06060a;
  --theme-surface: #0d0d12;
  --theme-surface-hover: #16161d;
  --theme-text-primary: #f6f6f8;
  --theme-text-secondary: #d4d4d8;
  --theme-text-muted: #8b8b94;
  --theme-border: rgba(255, 255, 255, 0.1);
  --theme-shadow: rgba(0, 0, 0, 0.45);
  --theme-header-bg: rgba(6, 6, 10, 0.86);
  --theme-input-bg: rgba(255, 255, 255, 0.05);
  --theme-focus-ring: #1ec8e6;
  --text-3: #aeb0b8;
}

.footer-heading {
  margin: 0 0 20px;
  color: var(--theme-text-secondary);
  font-family: var(--font-display);
  font-size: 13px;
  font-weight: 680;
  letter-spacing: 0;
  text-transform: uppercase;
}

html[data-theme="light"] {
  --theme-page-bg: #f5f7fa;
  --theme-section-bg: #ffffff;
  --theme-surface: #eef1f5;
  --theme-surface-hover: #e4e8ee;
  --theme-text-primary: #14161a;
  --theme-text-secondary: #343a43;
  --theme-text-muted: #66707c;
  --theme-border: rgba(20, 22, 26, 0.14);
  --theme-shadow: rgba(35, 43, 55, 0.14);
  --theme-header-bg: rgba(255, 255, 255, 0.9);
  --theme-input-bg: rgba(20, 22, 26, 0.04);
  --theme-focus-ring: #087f9a;

  /* Compatibility layer for the current component system. */
  --bg-0: #f5f7fa;
  --bg-1: #ffffff;
  --bg-2: #eef1f5;
  --bg-3: #e4e8ee;
  --surface: rgba(20, 22, 26, 0.045);
  --surface-2: rgba(20, 22, 26, 0.075);
  --surface-3: rgba(20, 22, 26, 0.11);
  --stroke: rgba(20, 22, 26, 0.12);
  --stroke-2: rgba(20, 22, 26, 0.2);
  --text-0: #14161a;
  --text-1: #343a43;
  --text-2: #59636f;
  --text-3: #66707c;
  --cyan-bright: #066f87;
}

html {
  accent-color: var(--theme-focus-ring);
}

::selection {
  color: var(--theme-text-primary);
  background: color-mix(in srgb, var(--theme-focus-ring) 28%, transparent);
}

:where(a, button, input, select, textarea, summary):focus-visible {
  outline: 2px solid var(--theme-focus-ring);
  outline-offset: 3px;
}

:where(button, input, select, textarea):disabled {
  cursor: not-allowed;
  opacity: 0.58;
}

.skip-link {
  position: fixed;
  top: 12px;
  left: 12px;
  z-index: 1000;
  padding: 10px 14px;
  color: var(--theme-text-primary);
  background: var(--theme-section-bg);
  border: 2px solid var(--theme-focus-ring);
  border-radius: 6px;
  box-shadow: 0 10px 28px var(--theme-shadow);
  font: 700 14px/1.2 var(--font-text, sans-serif);
  text-decoration: none;
  transform: translateY(calc(-100% - 24px));
  transition: transform 150ms ease-out;
}

.skip-link:focus-visible { transform: translateY(0); }
.main-content { scroll-margin-top: 88px; }
.main-content:focus { outline: none; }

[data-theme="light"] body {
  background: var(--theme-page-bg);
  color: var(--theme-text-primary);
}

/* Shared typography outside media overlays and gradient controls. */
[data-theme="light"] :is(.section, .fmt-hero, .about-page, .content-page) :is(h1, h2, h3, h4),
[data-theme="light"] .article-body strong,
[data-theme="light"] .occasion-card h3 a,
[data-theme="light"] .service-card h3 a,
[data-theme="light"] .child-card h3 a,
[data-theme="light"] .blog-card h3,
[data-theme="light"] .service-more,
[data-theme="light"] .occasion-more,
[data-theme="light"] .child-hub-link {
  color: var(--theme-text-primary) !important;
}

[data-theme="light"] .lead,
[data-theme="light"] .offer,
[data-theme="light"] .article-body,
[data-theme="light"] .article-body p,
[data-theme="light"] .article-body li {
  color: var(--theme-text-secondary);
}

/* Header and navigation. */
[data-theme="light"] .nav,
[data-theme="light"] .nav.scrolled {
  background: var(--theme-header-bg);
  border-bottom-color: var(--theme-border);
  box-shadow: 0 10px 32px var(--theme-shadow);
}

[data-theme="light"] .nav-logo,
[data-theme="light"] .mm-top,
[data-theme="light"] .mm-item:hover > .mm-top,
[data-theme="light"] .mm-item.open > .mm-top,
[data-theme="light"] .mm-item:focus-within > .mm-top {
  color: var(--theme-text-primary);
}

[data-theme="light"] .mm-panel {
  background: rgba(255, 255, 255, 0.98);
  border-color: var(--theme-border);
  box-shadow: 0 24px 60px -24px var(--theme-shadow);
}

[data-theme="light"] .mm-link:hover { background: var(--theme-surface); }
[data-theme="light"] .mm-ico { border-color: var(--theme-border); }
[data-theme="light"] .mm-ico svg { color: #24303b; }
[data-theme="light"] .mm-txt b { color: var(--theme-text-primary); }
[data-theme="light"] .mm-txt i { color: var(--theme-text-muted); }
[data-theme="light"] .nav-burger span { background: var(--theme-text-primary); }
[data-theme="light"] .nav-phone {
  background: linear-gradient(135deg, #087f9a, #7047a2);
  box-shadow: 0 8px 24px -12px rgba(8, 127, 154, 0.62);
}
[data-theme="light"] .nav-phone:hover {
  background: linear-gradient(135deg, #066f87, #623d91);
  box-shadow: 0 12px 28px -10px rgba(8, 127, 154, 0.7);
}

@media (max-width: 1199px) {
  [data-theme="light"] .megamenu {
    background: rgba(255, 255, 255, 0.98);
  }
  [data-theme="light"] .mm-item { border-bottom-color: var(--theme-border); }
  [data-theme="light"] .mm-top { color: var(--theme-text-primary); }
}

/* Global theme picker. */
.theme-picker {
  position: relative;
  flex: 0 0 auto;
  margin-left: auto;
  z-index: 130;
}

.theme-trigger {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  padding: 0;
  color: var(--theme-text-secondary);
  background: var(--theme-input-bg);
  border: 1px solid var(--theme-border);
  border-radius: 50%;
  cursor: pointer;
  transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1),
    background-color 180ms cubic-bezier(0.4, 0, 0.2, 1),
    border-color 180ms cubic-bezier(0.4, 0, 0.2, 1),
    transform 120ms ease-out;
}

.theme-trigger:hover {
  color: var(--theme-text-primary);
  background: var(--theme-surface-hover);
  border-color: color-mix(in srgb, var(--theme-focus-ring) 52%, var(--theme-border));
}

.theme-trigger:active { transform: scale(0.96); }
.theme-trigger:focus-visible,
.theme-menu button:focus-visible {
  outline: 2px solid var(--theme-focus-ring);
  outline-offset: 3px;
}

.theme-icon {
  display: none;
  width: 19px;
  height: 19px;
}

[data-theme-preference="system"] .theme-icon--system,
[data-theme-preference="light"] .theme-icon--light,
[data-theme-preference="dark"] .theme-icon--dark { display: block; }

.theme-menu {
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  width: 174px;
  padding: 5px;
  background: color-mix(in srgb, var(--theme-section-bg) 96%, transparent);
  border: 1px solid var(--theme-border);
  border-radius: 8px;
  box-shadow: 0 18px 48px -18px var(--theme-shadow);
  backdrop-filter: blur(20px) saturate(150%);
  -webkit-backdrop-filter: blur(20px) saturate(150%);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(-5px) scale(0.98);
  transform-origin: top right;
  transition: opacity 180ms cubic-bezier(0.4, 0, 0.2, 1),
    transform 180ms cubic-bezier(0.4, 0, 0.2, 1),
    visibility 0s linear 180ms;
}

.theme-picker.is-open .theme-menu {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0) scale(1);
  transition-delay: 0s;
}

.theme-menu button {
  width: 100%;
  min-height: 38px;
  display: grid;
  grid-template-columns: 22px 1fr 12px;
  align-items: center;
  gap: 9px;
  padding: 7px 9px;
  color: var(--theme-text-secondary);
  background: transparent;
  border: 0;
  border-radius: 6px;
  font: 500 13px/1.2 var(--font-text, sans-serif);
  letter-spacing: 0;
  text-align: left;
  cursor: pointer;
  transition: color 150ms ease-out, background-color 150ms ease-out;
}

.theme-menu button:hover { background: var(--theme-surface); }
.theme-menu button[aria-checked="true"] {
  color: var(--theme-text-primary);
  background: color-mix(in srgb, var(--theme-focus-ring) 12%, transparent);
}
.theme-menu button > svg { width: 18px; height: 18px; }
.theme-menu button > i {
  width: 7px;
  height: 7px;
  justify-self: end;
  border: 1px solid var(--theme-border);
  border-radius: 50%;
}
.theme-menu button[aria-checked="true"] > i {
  background: var(--theme-focus-ring);
  border-color: var(--theme-focus-ring);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--theme-focus-ring) 16%, transparent);
}

@media (max-width: 560px) {
  .nav-phone { width: 36px; height: 36px; padding: 3px !important; }
  .nav-phone .pico { width: 28px; height: 28px; }
  .nav-phone .phone-text { display: none; }
  .theme-trigger { width: 36px; height: 36px; }
  .theme-menu {
    position: fixed;
    top: calc(var(--nav-h, 56px) + 8px);
    right: max(14px, env(safe-area-inset-right));
    width: min(214px, calc(100vw - 28px));
    padding: 8px;
    background: var(--theme-section-bg);
    border-color: color-mix(in srgb, var(--theme-focus-ring) 26%, var(--theme-border));
    box-shadow: 0 18px 46px -18px var(--theme-shadow), 0 0 0 1px color-mix(in srgb, var(--theme-border) 76%, transparent);
    transform: translateY(-4px) scale(0.98);
    transform-origin: top right;
    z-index: 240;
  }
  .theme-menu button {
    min-height: 42px;
    font-size: 14px;
  }
}

/* Shared cards, bands and framed content. */
[data-theme="light"] :is(
  .service-card, .occasion-card, .child-card, .blog-card, .case,
  .occasion-facts, .occasion-profile-group, .child-profile > dl,
  .child-profile > article, .service-use-grid article,
  .content-checklist li, .content-tips article, .related-article-grid article,
  .related-entity-columns > div, .content-related-grid a,
  .content-hub-grid > a, .about-facts a, .about-roles article,
  .about-process li, .venue-passport, .venue-card, .venue-feature,
  .venue-facts, .venue-list-group, .niche, .related-service-list > a,
  .service-includes article, .occasion-venues a
) {
  background-color: var(--theme-surface);
  border-color: var(--theme-border);
  box-shadow: none;
}

[data-theme="light"] :is(.service-band, .about-band, .content-band, .related-content, .related-entities) {
  background: var(--theme-surface);
  border-color: var(--theme-border);
}

[data-theme="light"] :is(
  .service-card-body > p:not(.service-card-kicker), .occasion-card-body > p,
  .service-use-grid p, .about-roles p, .about-process p,
  .content-tips p, .content-hub-grid p, .related-article-grid article span,
  .child-profile p, .child-rules p, .venue-feature p,
  .venue-list-group li, .niche .meta, .related-service-list small
) { color: var(--theme-text-secondary); }

[data-theme="light"] :is(
  .occasion-card dd, .occasion-profile-group h3, .occasion-facts dd,
  .child-card dd, .child-profile dd, .service-process p,
  .related-entity-columns a, .content-checklist p,
  .content-related-grid a, .about-requisites dd
  , .venue-facts dd, .venue-list-group h3, .venue-more,
  .niche .name, .niche .meta b, .related-service-list > a,
  .occasion-venues a, .service-includes p
) { color: var(--theme-text-primary); }

[data-theme="light"] .fmt-hero .offer,
[data-theme="light"] .content-answer,
[data-theme="light"] .about-answer {
  color: #414a55 !important;
}

[data-theme="light"] .niche .glyph {
  background: color-mix(in srgb, var(--c1) 14%, #fff);
  border-color: color-mix(in srgb, var(--c1) 30%, var(--theme-border));
}
[data-theme="light"] .niche .glyph svg { color: #24303b; }
[data-theme="light"] .service-includes article { border-top-color: var(--c1); }

/* Legacy components that use light tokens but keep hard-coded dark-theme text. */
[data-theme="light"] :is(
  .venue .specs .v, .case-client, .case-meta, .step .n,
  .venue-filter-summary b, .venue-filter-reset, .trust-logo .trust-name
) { color: var(--theme-text-primary); }

[data-theme="light"] .venue-filter-options button:hover,
[data-theme="light"] .venue-filter-options button:focus-visible,
[data-theme="light"] .venue-filter-options button.is-active {
  color: var(--theme-text-primary);
  border-color: color-mix(in srgb, var(--theme-focus-ring) 55%, var(--theme-border));
}

/* Interactive controls on light surfaces. The home hero CTA is restored below. */
[data-theme="light"] .phone-cta {
  color: #fff;
  background: linear-gradient(135deg, #087f9a 0%, #7047a2 100%);
  box-shadow: 0 16px 38px -18px rgba(8, 127, 154, 0.72);
}
[data-theme="light"] .phone-cta:hover {
  box-shadow:
    0 24px 54px -18px rgba(8, 127, 154, 0.62),
    0 14px 34px -18px rgba(112, 71, 162, 0.58);
}
[data-theme="light"] .phone-cta .label small { color: #e6f4f7; }
[data-theme="light"] .giant-phone {
  color: #fff;
  background: linear-gradient(135deg, #087f9a 0%, #7047a2 100%);
  box-shadow:
    0 24px 60px -22px rgba(8, 127, 154, 0.52),
    0 16px 44px -24px rgba(112, 71, 162, 0.48);
}
[data-theme="light"] .giant-phone:hover {
  box-shadow:
    0 32px 72px -22px rgba(8, 127, 154, 0.58),
    0 20px 50px -22px rgba(112, 71, 162, 0.52);
}
[data-theme="light"] .btn-ghost:hover {
  border-color: color-mix(in srgb, var(--theme-focus-ring) 48%, var(--theme-border));
}
[data-theme="light"] .level-cta-btn {
  color: var(--theme-text-primary);
  background: color-mix(in srgb, var(--theme-section-bg) 88%, transparent);
  border-color: var(--theme-border);
}
[data-theme="light"] .level-cta-btn:hover {
  color: var(--theme-text-primary);
  background: linear-gradient(135deg,
    color-mix(in srgb, var(--c1) 13%, #fff),
    color-mix(in srgb, var(--c2) 11%, #fff));
}
[data-theme="light"] .level-cta-btn--featured,
[data-theme="light"] .level-cta-btn--featured:hover {
  color: #fff;
  background: linear-gradient(135deg,
    color-mix(in srgb, var(--c1) 72%, #075d70),
    color-mix(in srgb, var(--c2) 74%, #503278));
}
[data-theme="light"] .level .pill {
  color: var(--theme-text-primary);
  background: linear-gradient(135deg,
    color-mix(in srgb, var(--c1) 14%, #fff),
    color-mix(in srgb, var(--c2) 12%, #fff));
  border-color: var(--theme-border);
}
[data-theme="light"] .level.featured .pill { color: #fff; }
[data-theme="light"] .tab:hover,
[data-theme="light"] .tab[aria-selected="true"],
[data-theme="light"] .quiz-opt.selected,
[data-theme="light"] .quiz-back:hover {
  color: var(--theme-text-primary);
}
[data-theme="light"] .tab[aria-selected="true"],
[data-theme="light"] .quiz-opt.selected {
  background: linear-gradient(120deg, rgba(8, 127, 154, 0.14), rgba(112, 71, 162, 0.12));
  border-color: color-mix(in srgb, var(--theme-focus-ring) 58%, var(--theme-border));
}
[data-theme="light"] .date-modal-actions .date-modal-apply {
  color: var(--theme-text-primary);
  background: linear-gradient(120deg, rgba(8, 127, 154, 0.16), rgba(112, 71, 162, 0.14));
  border-color: color-mix(in srgb, var(--theme-focus-ring) 58%, var(--theme-border));
}
[data-theme="light"] .email-cta {
  color: var(--theme-text-primary);
  background: linear-gradient(135deg, #eef9fb, #f5effa);
  box-shadow: 0 24px 64px -34px rgba(42, 61, 80, 0.32);
}
[data-theme="light"] .email-cta:hover {
  box-shadow:
    0 32px 72px -34px rgba(8, 127, 154, 0.34),
    0 20px 52px -32px rgba(112, 71, 162, 0.3);
}
[data-theme="light"] .email-cta-text small { color: var(--theme-text-secondary); }
[data-theme="light"] .email-cta-text b {
  background: linear-gradient(120deg, #075f74 0%, #075f74 42%, #7047a2 100%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
[data-theme="light"] .email-cta-arrow {
  color: var(--theme-text-primary);
  background: rgba(255, 255, 255, 0.72);
  border-color: var(--theme-border);
}
[data-theme="light"] .email-cta:hover .email-cta-arrow {
  background: #fff;
  border-color: color-mix(in srgb, var(--theme-focus-ring) 48%, var(--theme-border));
}

[data-theme="light"] .step .n {
  background: var(--theme-section-bg);
  border-color: var(--theme-border);
}

/* Forms and disclosure controls. */
[data-theme="light"] :is(.field input, .field select, .field textarea, .quiz-date-row input[type="date"]) {
  background: var(--theme-input-bg);
  border-color: var(--theme-border);
  color: var(--theme-text-primary);
  color-scheme: light;
}

[data-theme="light"] .field select option {
  background: #fff;
  color: var(--theme-text-primary);
}

[data-theme="light"] :is(.field-label, .field-hint, .lead-disclaimer) { color: var(--theme-text-secondary); }
[data-theme="light"] :is(.field input, .field textarea)::placeholder { color: var(--theme-text-muted); opacity: 1; }
[data-theme="light"] .field.field--invalid :is(input, select, textarea) {
  border-color: #c5324f;
  box-shadow: 0 0 0 3px rgba(197, 50, 79, 0.12);
}
[data-theme="light"] .field.field--invalid .field-hint { color: #a11f39; }
[data-theme="light"] :is(.service-faq details, .faq details) {
  background: var(--theme-section-bg);
  border-color: var(--theme-border);
}
[data-theme="light"] :is(.service-faq summary, .faq summary) { color: var(--theme-text-primary); }
[data-theme="light"] :is(.service-faq p, .faq .answer) { color: var(--theme-text-secondary); }
[data-theme="light"] .faq summary .plus::before,
[data-theme="light"] .faq summary .plus::after { background: var(--theme-text-primary); }

/* Footer. */
[data-theme="light"] .footer {
  background: var(--theme-section-bg);
  border-color: var(--theme-border);
}
[data-theme="light"] .footer-brand .logo,
[data-theme="light"] .footer-heading,
[data-theme="light"] .footer a,
[data-theme="light"] .footer dd { color: var(--theme-text-primary); }
[data-theme="light"] .footer a:hover { color: #087f9a; }
[data-theme="light"] .footer :is(p, span, dt, li) { color: var(--theme-text-secondary); }
[data-theme="light"] .footer-bot { border-color: var(--theme-border); }
[data-theme="light"] .footer-contacts a {
  background: var(--theme-surface);
  border-color: var(--theme-border);
}

/* Contacts page has local legacy styles authored for the dark palette. */
[data-theme="light"] .contacts-kicker { color: #066f87; }
[data-theme="light"] .contacts-hero h1,
[data-theme="light"] .contacts-status b,
[data-theme="light"] .contact-action b,
[data-theme="light"] .contact-panel h2,
[data-theme="light"] .contact-list :is(strong, a) { color: var(--theme-text-primary); }
[data-theme="light"] .contacts-status span,
[data-theme="light"] .contact-action > span:not(.ico) { color: var(--theme-text-secondary); }
[data-theme="light"] .contact-list small { color: var(--theme-text-muted); }
[data-theme="light"] .contacts-status {
  background: linear-gradient(160deg, rgba(30, 200, 230, 0.12), rgba(191, 90, 242, 0.08));
  border-color: var(--theme-border);
  box-shadow: 0 24px 60px -34px var(--theme-shadow);
}
[data-theme="light"] .contact-action,
[data-theme="light"] .contact-panel {
  background: color-mix(in srgb, var(--theme-section-bg) 92%, transparent);
  border-color: var(--theme-border);
  box-shadow: 0 18px 50px -38px var(--theme-shadow);
}
[data-theme="light"] .contact-action:hover {
  background: var(--theme-section-bg);
  border-color: color-mix(in srgb, var(--theme-focus-ring) 48%, var(--theme-border));
}
[data-theme="light"] .contact-list li { border-top-color: var(--theme-border); }
[data-theme="light"] .contact-list a:hover { color: #087f9a; }
[data-theme="light"] .contacts-cta .secondary {
  color: var(--theme-text-primary);
  background: var(--theme-surface);
  border-color: var(--theme-border);
}
[data-theme="light"] :is(.contacts-map, .contacts-map__fallback) {
  background: var(--theme-surface);
  border-color: var(--theme-border);
}
[data-theme="light"] .contacts-map :is(iframe, ymaps) { filter: none; }
[data-theme="dark"] .contacts-map :is(iframe, ymaps) {
  filter: saturate(0.82) brightness(0.72) contrast(1.12);
}

[data-theme="light"] :is(
  .bubble figcaption, .params .v, .related-article-grid h3 a
) { color: var(--theme-text-primary); }
[data-theme="light"] :is(.occasion-audience, .related-article-grid p) {
  color: #066f87 !important;
}

[data-theme="light"] :is(
  .eyebrow .n, .service-card-kicker, .service-includes article > span,
  .content-hub-grid > a > span, .content-checklist li > span,
  .content-related-grid span, .about-evidence caption
) { color: #066f87 !important; }

[data-theme="light"] :is(
  .addon-note, .tl-item .what small, .occasion-venues small,
  .related-service-list small, .related-entity-columns small,
  .about-evidence th, .about-requisites dt
) { color: var(--theme-text-secondary); }

[data-theme="light"] :is(.inc-list li b, .tl-item .what b) {
  color: var(--theme-text-primary);
}

[data-theme="light"] .about-requisites a { color: #066f87; }

[data-theme="dark"] :is(.footer-heading, .addon-note, .tl-item .what small,
  .occasion-venues small, .related-service-list small, .related-entity-columns small,
  .about-evidence th, .about-requisites dt, .scroll-cue span, .made-with
) { color: var(--theme-text-secondary); }

[data-theme="dark"] :is(.eyebrow .n, .service-card-kicker) {
  color: #58d9ef !important;
}

@media (max-width: 768px) {
  .footer-heading { margin-bottom: 12px; font-size: 10.5px; }
}

/* Elements intentionally kept light over photos or brand gradients. */
[data-theme="light"] :is(
  .btn-grad, .phone-cta, .nav-phone, .fmt-hero-media .tag,
  .venue-card-media, .occasion-card-media > span, .child-card-media span,
  .service-card-media, .vgal .tag, .vgal-count, .vt-name,
  .lead-success, .hero .word-inner
) { color: #fff; }

/* The home hero remains a dark photographic surface in both themes. */
[data-theme="light"] .hero .phone-cta {
  background: linear-gradient(135deg, #0e0e16 0%, #1a0d24 100%);
  box-shadow: none;
}
[data-theme="light"] .hero .phone-cta:hover {
  box-shadow:
    0 28px 70px -12px rgba(30, 200, 230, 0.42),
    0 14px 32px -10px rgba(191, 90, 242, 0.36),
    0 0 0 1px rgba(255, 255, 255, 0.05) inset;
}
[data-theme="light"] .hero :is(
  .hero-sub, .eyebrow .l, .cta-secondary,
  .hero-stat .l, .hero-stat .l b, .hero-stat .v .unit
) { color: #f6f6f8; }
[data-theme="light"] .hero .eyebrow .n { color: #67e2f7 !important; }
[data-theme="light"] .hero .phone-cta .label small { color: #d4d4d8; }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
  .skip-link,
  .theme-trigger,
  .theme-menu,
  .theme-menu button { transition: none; }
}
