/* Seasonal decoration is restricted to site chrome. Main content stays neutral. */
body.theme-seasonal .site-header,
body.theme-seasonal footer {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: color-mix(in srgb,var(--theme-surface) 90%,var(--chrome-accent));
}
body.theme-seasonal .site-header > *,
body.theme-seasonal footer > * { position: relative; z-index: 1; }
body.theme-seasonal .site-header::before,
body.theme-seasonal footer::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: var(--theme-banner) top center / cover no-repeat;
  opacity: 1;
  z-index: 0;
}
body.theme-seasonal .site-header::after,
body.theme-seasonal footer::after { content: none; }
body.theme-seasonal footer::before { background-position: bottom center; }
body.theme-seasonal .brand,
body.theme-seasonal .footer-brand,
body.theme-seasonal .site-header nav a,
body.theme-seasonal footer nav a {
  background: var(--theme-surface);
  color: var(--theme-text);
  border-radius: 8px;
  padding: 6px 9px;
}
body.theme-seasonal .site-header nav a,
body.theme-seasonal footer nav a { border: 1px solid var(--theme-border); }
/* Seasonal selectors never introduce artwork, motifs, or gradients under content. */
body.theme-seasonal main { background-image: none; }
body.theme-seasonal main::before,
body.theme-seasonal main::after,
body.theme-seasonal main .decorated::before,
body.theme-seasonal main .decorated::after { content: none; background-image: none; }
