/**
 * MH24 Herbst-Farbschema v1.0.0
 * Scope: only the seasonal MH24 front end while autumn is active.
 * Avoid layout, position, image, and decorative banner overrides.
 * Normal-size WCAG AA contrast: cream on forest green 6.74:1;
 * white on CTA burnt orange (#A85420) 5.31:1;
 * dark brown on cream 8.91:1; ochre on deep green (#244734) 4.65:1.
 */
body.mh24-season-herbst {
  --mh24-autumn-primary: #2F5D43;
  --mh24-autumn-primary-dark: #244734;
  --mh24-autumn-canvas: #F6F1E7;
  --mh24-autumn-surface: #FFFDF9;
  --mh24-autumn-pumpkin: #C96A2B;
  --mh24-autumn-button: #A85420; /* darker for white-button text, >= 4.5:1 */
  --mh24-autumn-button-hover: #863D18;
  --mh24-autumn-ochre: #D6A64D;
  --mh24-autumn-ink: #5A3B2A;
  --mh24-autumn-muted: #6B5B4B;
  --mh24-autumn-border: #CFC4B2;
  --mh24-autumn-cream: #F6F1E7;
  --mh24-autumn-sage: #A7B48A;
  --mh24-autumn-focus: #A85420;
  --mh24-autumn-shadow: 0 8px 24px rgba(55, 42, 24, .07);

  background-color: var(--mh24-autumn-canvas);
  color: var(--mh24-autumn-ink);
  accent-color: var(--mh24-autumn-primary);
}

/* 1. Common backgrounds and reading color – all public templates. */
body.mh24-season-herbst #main,
body.mh24-season-herbst .site-main,
body.mh24-season-herbst .default-main {
  color: var(--mh24-autumn-ink);
}
body.mh24-season-herbst :is(.entry-content, .section, .mh24-results-section) :is(p, li) {
  color: var(--mh24-autumn-ink);
}
body.mh24-season-herbst #main :is(h1, h2, h3, h4, h5, h6),
body.mh24-season-herbst .entry-content :is(h1, h2, h3, h4, h5, h6) {
  color: var(--mh24-autumn-primary);
}
/* Hero panels have dark backgrounds. Correct their heading/body text explicitly. */
body.mh24-season-herbst :is(.archive-hero, .mh24-operator-hero, .mh24-betreiber-hero) {
  background-color: var(--mh24-autumn-primary);
  color: var(--mh24-autumn-cream);
}
body.mh24-season-herbst :is(.archive-hero, .mh24-operator-hero, .mh24-betreiber-hero) :is(h1, h2, h3, p, .kicker, .eyebrow) {
  color: var(--mh24-autumn-cream);
}
/* Keep the photo-based home hero as-is: do not obscure Lotti or the banner text. */

/* 2. Real header and navigation; do not target WP admin bar. */
body.mh24-season-herbst :is(.site-header.mh24-site-header, .mh24-site-header),
body.mh24-season-herbst :is(.mh24-header-top, .mh24-header-bottom) {
  background-color: var(--mh24-autumn-primary);
  color: var(--mh24-autumn-cream);
}
body.mh24-season-herbst :is(.mh24-site-header, .mh24-header-top, .mh24-header-bottom) :is(a, .brand, .mh24-site-wordmark, .mh24-header-icon, .header-action) {
  color: var(--mh24-autumn-cream);
}
body.mh24-season-herbst :is(.mh24-site-header, .mh24-header-top, .mh24-header-bottom) :is(a:hover, a[aria-current="page"], .current-menu-item > a, .current_page_item > a) {
  color: var(--mh24-autumn-ochre);
}
body.mh24-season-herbst .mh24-site-nav :is(a:focus-visible, button:focus-visible),
body.mh24-season-herbst .mh24-site-header :is(a:focus-visible, button:focus-visible) {
  outline-color: var(--mh24-autumn-ochre);
}
body.mh24-season-herbst .mh24-site-nav :is(.sub-menu, .mh24hc-experiences-submenu, .mh24hc-experiences-dropdown) {
  background-color: var(--mh24-autumn-primary-dark);
  color: var(--mh24-autumn-cream);
}
body.mh24-season-herbst .mh24-site-nav :is(.sub-menu, .mh24hc-experiences-submenu, .mh24hc-experiences-dropdown) a {
  color: var(--mh24-autumn-cream);
}

/* 3. Cards, listings, filter panels and dashboards – no layout changes. */
body.mh24-season-herbst :is(
  .listing-card, .content-box, .search-box, .filter-box, .widget,
  .mh24-home-search-wrap, .mh24-filters, .mh24nl-formbox,
  .mh24-dashboard-card, .mh24-operator-card, .mh24-betreiber-card,
  .wp-block-group.is-style-card
) {
  background-color: var(--mh24-autumn-surface);
  border-color: var(--mh24-autumn-border);
}
body.mh24-season-herbst :is(.listing-card, .mh24-dashboard-card, .mh24-operator-card, .mh24-betreiber-card) {
  box-shadow: var(--mh24-autumn-shadow);
}
body.mh24-season-herbst :is(.listing-card, .mh24-home-feature, .mh24-dashboard-card) :is(.eyebrow, .kicker) {
  color: var(--mh24-autumn-muted);
}
body.mh24-season-herbst :is(.listing-card, .mh24-home-below, .mh24-results-section) a:not(.btn):not(.button) {
  text-underline-offset: .17em;
}
body.mh24-season-herbst :is(.mh24-home-category, .mh24-home-cat-icon) {
  border-color: var(--mh24-autumn-border);
}
body.mh24-season-herbst .mh24-home-cat-icon {
  background-color: #F7EAD6;
  color: var(--mh24-autumn-primary-dark);
}

/* 4. Search and newsletter forms, consistent across all templates. */
body.mh24-season-herbst :is(
  .mh24-home-search, .find-form.mh24-filters, .mh24-filters,
  .mh24nl-formbox, .mh24nl-wrap, .mh24nl-inner
) :is(label, legend, .mh24nl-email-label) {
  color: var(--mh24-autumn-primary-dark);
}
body.mh24-season-herbst :is(
  .mh24-home-search, .find-form.mh24-filters, .mh24-filters,
  .mh24nl-formbox, .entry-content, .mh24-dashboard, .mh24-betreiber-dashboard
) :is(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="submit"]), select, textarea) {
  background-color: #FFFFFF;
  color: var(--mh24-autumn-ink);
  border-color: #A99C89;
}
body.mh24-season-herbst :is(input, textarea)::placeholder {
  color: #6B5B4B;
  opacity: 1;
}
body.mh24-season-herbst :is(input[type="checkbox"], input[type="radio"]) {
  accent-color: var(--mh24-autumn-primary-dark);
}
body.mh24-season-herbst .mh24nl-wrap {
  background-color: var(--mh24-autumn-canvas);
}
body.mh24-season-herbst .mh24nl-wrap :is(p, .mh24nl-small, .mh24nl-consent, .mh24nl-legal) {
  color: var(--mh24-autumn-muted);
}
body.mh24-season-herbst .mh24nl-formbox :is(a, .mh24nl-legal a) {
  color: var(--mh24-autumn-primary-dark);
  text-decoration: underline;
  text-underline-offset: .16em;
}
body.mh24-season-herbst .mh24nl-copy :is(h1, h2, h3) {
  color: var(--mh24-autumn-primary-dark);
}
body.mh24-season-herbst :is(.mh24-home-search-field, .mh24hc-side-field, .field) :is(label, strong) {
  color: var(--mh24-autumn-primary-dark);
}

/* 5. CTAs: contrast-safe burnt orange plus green secondary action. */
body.mh24-season-herbst :is(
  .btn-primary, .mh24-home-search-submit, .mh24nl-formbox button[type="submit"],
  .mh24nl-formbox input[type="submit"], .wp-block-button__link,
  .wp-element-button, .elementor-button
) {
  background-color: var(--mh24-autumn-button);
  border-color: var(--mh24-autumn-button);
  color: #FFFFFF;
}
body.mh24-season-herbst :is(
  .btn-primary, .mh24-home-search-submit, .mh24nl-formbox button[type="submit"],
  .mh24nl-formbox input[type="submit"], .wp-block-button__link,
  .wp-element-button, .elementor-button
):hover {
  background-color: var(--mh24-autumn-button-hover);
  border-color: var(--mh24-autumn-button-hover);
  color: #FFFFFF;
}
body.mh24-season-herbst :is(.btn-secondary, .button-secondary, .mh24-site-add) {
  background-color: var(--mh24-autumn-primary-dark);
  border-color: var(--mh24-autumn-primary-dark);
  color: var(--mh24-autumn-cream);
}
body.mh24-season-herbst :is(.btn-secondary, .button-secondary, .mh24-site-add):hover {
  background-color: #1C3829;
  color: var(--mh24-autumn-cream);
}
/* Never style disabled buttons to look enabled. */
body.mh24-season-herbst :is(button, input[type="submit"], .btn)[disabled],
body.mh24-season-herbst :is(button, input[type="submit"], .btn)[aria-disabled="true"] {
  opacity: .65;
  cursor: not-allowed;
}

/* 6. Footer – a dark finish, obvious, contrast-compliant links. */
body.mh24-season-herbst :is(.mh24-site-footer, .site-footer, footer.site-footer) {
  background-color: var(--mh24-autumn-primary-dark);
  color: var(--mh24-autumn-cream);
}
body.mh24-season-herbst :is(.mh24-site-footer, .site-footer) :is(
  h2, h3, h4, h5, p, small, span, li, .mh24-footer-note, .mh24-footer-info, .mh24-footer-bottom
) {
  color: var(--mh24-autumn-cream);
}
body.mh24-season-herbst :is(.mh24-site-footer, .site-footer) a {
  color: var(--mh24-autumn-ochre);
  text-decoration: underline;
  text-underline-offset: .18em;
}
body.mh24-season-herbst :is(.mh24-site-footer, .site-footer) a:hover {
  color: #FFFFFF;
  text-decoration-thickness: .12em;
}

/* 7. General a11y: clearly visible keyboard navigation without restyling the admin. */
body.mh24-season-herbst :is(a, button, [role="button"], input, select, textarea):focus-visible {
  outline: 3px solid var(--mh24-autumn-focus);
  outline-offset: 3px;
}
body.mh24-season-herbst :is(.mh24-site-header, .mh24-site-footer) :is(a, button, [role="button"]):focus-visible {
  outline-color: var(--mh24-autumn-ochre);
}
body.mh24-season-herbst a.skip-link:focus {
  background-color: #FFFFFF;
  color: var(--mh24-autumn-primary-dark);
  outline: 3px solid var(--mh24-autumn-focus);
  z-index: 100000;
}
body.mh24-season-herbst :is(.mh24-home-search, .mh24-filters, .mh24nl-formbox) :is(button, input[type="submit"], select) {
  min-height: 44px;
}
body.mh24-season-herbst :is(.mh24nl-formbox, .mh24-home-search, .mh24-filters) :is(a, button):not(.skip-link) {
  text-underline-offset: .15em;
}
@media (max-width: 767px) {
  body.mh24-season-herbst :is(.mh24-home-search, .mh24-filters, .mh24nl-formbox) :is(button, input[type="submit"], select) {
    min-height: 44px;
  }
}
@media (prefers-reduced-motion: reduce) {
  body.mh24-season-herbst :is(.btn, button, a, input, select, textarea) {
    scroll-behavior: auto;
    transition-duration: .01ms;
    animation-duration: .01ms;
  }
}
