/* Shared seasonal layer: palettes are generated as variables, never four stylesheets. */
/* Separate seasonal variables bypass the calendar's local fallback palette.
   Only colours change; Gutenberg values, typography and geometry stay intact. */
html[data-cna-season]:not([data-cna-season='legacy']) body.cna-active .cna-months .cna-level-0 {
  background: var(--cna-activity-0-bg) !important;
  color: var(--cna-activity-0-text) !important;
}
html[data-cna-season]:not([data-cna-season='legacy']) body.cna-active .cna-months .cna-level-1 {
  background: var(--cna-activity-1-bg) !important;
  color: var(--cna-activity-1-text) !important;
}
html[data-cna-season]:not([data-cna-season='legacy']) body.cna-active .cna-months .cna-level-2 {
  background: var(--cna-activity-2-bg) !important;
  color: var(--cna-activity-2-text) !important;
}
html[data-cna-season]:not([data-cna-season='legacy']) body.cna-active .cna-months .cna-level-3 {
  background: var(--cna-activity-3-bg) !important;
  color: var(--cna-activity-3-text) !important;
}
html[data-cna-season]:not([data-cna-season='legacy']) body.cna-hero main.container :is(.cna-page-banner,.cna-gallery-hero) {
  --cna-line: var(--cna-header-line);
}
html[data-cna-season]:not([data-cna-season='legacy']) body.cna-hero main.container :is(.cna-page-banner,.cna-gallery-hero) h1::after {
  background-image: var(--cna-season-ornament);
}
html[data-cna-season]:not([data-cna-season='legacy']) body.cna-language-flags :is(#navigation,#side-menu) a.cna-language-switch {
  color: var(--cna-language) !important;
}
html[data-cna-season]:not([data-cna-season='legacy']) body.cna-language-flags :is(#navigation,#side-menu) a.cna-language-switch:is(.cna-language-current,:hover,:focus-visible) {
  color: var(--cna-language-active) !important;
}
html[data-cna-season]:not([data-cna-season='legacy']) body.cna-language-flags :is(#navigation,#side-menu) a.cna-language-switch:focus-visible {
  outline-color: var(--cna-language-active) !important;
}
html[data-cna-season]:not([data-cna-season='legacy']) body.cna-language-flags :is(#navigation,#side-menu) .cna-language-separator {
  color: var(--cna-language-divider) !important;
}
html[data-cna-season]:not([data-cna-season='legacy']) body.cna-language-flags :is(#navigation,#side-menu) .cna-language-item.cna-language-end::after {
  background-color: var(--cna-language-divider);
}
html[data-cna-season]:not([data-cna-season='legacy']) body.cna-site footer.footer .footer-information > .align-left > p:first-child,
html[data-cna-season]:not([data-cna-season='legacy']) body.cna-site footer.footer .footer-information > .align-left > p:first-child :is(strong,b,span,a) {
  color: var(--cna-copyright) !important;
}
html[data-cna-season]:not([data-cna-season='legacy']) body.cna-site footer.footer .cna-footer-divider {
  border-top-color: var(--cna-footer-line);
}
html[data-cna-season]:not([data-cna-season='legacy']) body.cna-background.cna-forest main.container::before {
  background-image: var(--cna-season-image, none);
}
/* The original shared layer retains bottom anchoring, opacity, mask and mobile policy. */
html[data-cna-season]:not([data-cna-season='legacy']) body.cna-site main.container article.entry-content :is(p,.wp-block-list,.wp-block-heading) a[href]:is(:hover,:focus-visible):not(.wp-element-button,.wp-block-button__link,[role='button']):not(:has(img,picture,svg)) {
  color: var(--cna-link, var(--cna-text)) !important;
}
/* All four fact icons share the accent in every enabled season, including autumn. */
html[data-cna-season]:not([data-cna-season='legacy']) body.cna-cards main.container :is(.cna-fact-habitat,.cna-fact-food,.cna-fact-activity,.cna-fact-description)::before {
  background-color: var(--cna-copper);
}
/* One seasonal menu; popup lives under body to avoid clipped headers. */
body.cna-site :is(#navigation,.cna-season-mobile-toolbar) .cna-season-slot {
  display: inline-flex !important;
  align-items: center;
  align-self: center;
  vertical-align: middle;
  position: relative;
  flex: 0 0 auto;
  width: auto !important;
  min-width: 0;
  max-width: 100%;
  margin: var(--cna-season-offset-top,23px) 4px var(--cna-season-offset-bottom,23px) !important;
  padding: 0 !important;
  border: 0 !important;
  background: none !important;
  line-height: 18px;
}
body.cna-site :is(#navigation,.cna-season-mobile-toolbar) .cna-season-slot[hidden],
body.cna-site .cna-season-mobile-toolbar[hidden],
body.cna-site .cna-season-menu[hidden] { display: none !important; }
body.cna-site .cna-season-mobile-toolbar { display: none; }
body.cna-site .cna-season-trigger,
body.cna-site .cna-season-menu .cna-season-option {
  appearance: none;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin: 0 !important;
  padding: 0;
  min-width: 0;
  border: 0;
  border-radius: 4px;
  background: transparent;
  box-shadow: none;
  font: 500 14px/1.4 var(--cna-sans,Arial,sans-serif);
  text-transform: none;
  letter-spacing: normal;
  color: var(--cna-light,#FFF8EC);
  cursor: pointer;
}
body.cna-site .cna-season-trigger {
  position: relative;
  width: 32px;
  height: 20px;
  min-height: 0;
}
/* Extend the pointer target without increasing the existing navigation row. */
body.cna-site .cna-season-trigger::before { content: ''; position: absolute; inset: -10px 0; }
body.cna-site .cna-season-trigger-label { display: none; }
body.cna-site .cna-season-icon {
  display: block;
  flex: 0 0 20px;
  width: 20px;
  height: 20px;
  pointer-events: none;
}
body.cna-site .cna-season-icon-spring { color: #9DBB83; }
body.cna-site .cna-season-icon-summer { color: #D5B66F; }
body.cna-site .cna-season-icon-autumn { color: #C49A68; }
body.cna-site .cna-season-icon-winter { color: #87A9B7; }
body.cna-site .cna-season-icon-auto { color: var(--cna-light,#FFF8EC); }
body.cna-site .cna-season-menu {
  position: fixed;
  z-index: 1000001;
  box-sizing: border-box;
  width: 210px;
  max-width: calc(100vw - 16px);
  padding: 5px;
  border: 1px solid var(--cna-moss,#6C7254);
  border-radius: 6px;
  background: var(--cna-forest,#202D22);
  color: var(--cna-light,#FFF8EC);
  box-shadow: 0 6px 20px #0004;
  overflow: auto;
  overscroll-behavior: contain;
}
body.cna-site .cna-season-menu .cna-season-option {
  justify-content: flex-start;
  width: 100%;
  min-height: 40px;
  padding: 8px 10px;
  text-align: left;
}
body.cna-site .cna-season-option[aria-checked='true'],
body.cna-site .cna-season-option:hover {
  background: #ffffff12;
  color: var(--cna-amber,#D58B2F);
}
body.cna-site .cna-season-check { margin-inline-start: auto; visibility: hidden; }
body.cna-site .cna-season-option[aria-checked='true'] .cna-season-check { visibility: visible; }
body.cna-site :is(.cna-season-trigger,.cna-season-option):focus-visible {
  outline: 2px solid var(--cna-amber,#D58B2F);
  outline-offset: 2px;
}
@media (max-width: 1024px) {
  body.cna-site #nav-bar .cna-season-mobile-toolbar {
    display: flex;
    align-items: center;
    flex: 0 0 auto;
    width: auto;
    margin: 0 4px 0 auto !important;
    padding: 0 !important;
    border: 0;
    list-style: none;
    line-height: 0;
  }
  body.cna-site #nav-bar .cna-season-mobile-toolbar .cna-season-slot { margin: 0 !important; padding: 0 !important; float: none; }
  body.cna-site .cna-season-mobile-toolbar .cna-season-trigger { width: 40px; height: 24px; }
  body.cna-site .cna-season-mobile-toolbar .cna-season-trigger::before { inset: -10px -2px; }
  body.cna-site .cna-season-menu .cna-season-option { min-height: 44px; }
}
@media (prefers-reduced-motion: reduce) {
  body.cna-site :is(.cna-season-trigger,.cna-season-menu,.cna-season-option) { animation: none !important; transition: none !important; }
}
.cna-season-preview-notice {
  position: fixed;
  bottom: 8px;
  left: 8px;
  right: 8px;
  width: fit-content;
  max-width: calc(100% - 16px);
  z-index: 99999;
  padding: 8px 12px;
  background: #25383D;
  color: #fff;
  border: 1px solid #BCCDD0;
  font: 13px/1.5 sans-serif;
}
