/* Annual palettes are set by seasonal-themes.js; Halloween is the safe default. */
:root{--season-surface:#ff4d26;--season-ink:#0b0b0c;--season-glow:#0b0b0c22}
.seasonal-section{background:var(--season-surface);color:var(--season-ink)}
.seasonal-copy h2{font-size:clamp(42px,5.1vw,80px)}
.seasonal-copy h2 span{color:inherit}
.seasonal-copy h2 .seasonal-heading-accent{color:var(--season-ink);opacity:.72}
.seasonal-copy .button-dark{background:var(--season-ink);color:var(--season-surface)}
.seasonal-copy .button-dark:hover{background:var(--season-ink);color:var(--season-surface);filter:brightness(1.16)}
.seasonal-art{position:relative;overflow:hidden;isolation:isolate;display:grid;place-items:center;min-height:500px;background:var(--season-surface);color:var(--season-ink);border-right:1px solid currentColor}
.seasonal-art:before{content:'';position:absolute;inset:24px;border:1px solid currentColor;opacity:.24;pointer-events:none}
.seasonal-art:after{content:'';position:absolute;width:70%;aspect-ratio:1;left:15%;top:50%;transform:translateY(-50%);background:var(--season-glow);z-index:-1;border-radius:50%;pointer-events:none}
.seasonal-orbit{position:absolute;width:69%;aspect-ratio:1;border:1px solid currentColor;opacity:.35;border-radius:50%;transform:rotate(20deg);pointer-events:none}
.seasonal-orbit:before,.seasonal-orbit:after{content:'';position:absolute;inset:12%;border:1px solid currentColor;border-radius:inherit}
.seasonal-orbit:after{inset:25%}
.seasonal-art-symbol{font-family:Georgia,'Times New Roman',serif;font-variant-emoji:text;font-size:clamp(170px,24vw,360px);line-height:1;position:relative;z-index:1;max-width:80%;text-align:center;user-select:none}
.seasonal-art-label{position:absolute;top:43px;left:43px;font:800 11px/1.5 var(--sans);letter-spacing:.1em;text-transform:uppercase;z-index:2}
.seasonal-art-signature{position:absolute;bottom:43px;left:43px;right:43px;display:flex;justify-content:space-between;gap:16px;font:700 10px/1.5 var(--sans);letter-spacing:.05em;z-index:2}
[data-theme-name]{font-size:10px;letter-spacing:.03em}
html[data-theme="halloween"] .seasonal-art{background:#0b0b0c;color:#ff4d26;border-right-color:#ffffff35}
html[data-theme="halloween"] .seasonal-art:after{background:#ff4d2618;border-radius:0;transform:translateY(-50%) rotate(45deg)}
html[data-theme="halloween"] .seasonal-orbit{border-radius:0;transform:rotate(45deg)}
html[data-theme="halloween"] .seasonal-copy h2 .seasonal-heading-accent{color:var(--paper);opacity:1}
html[data-theme="new-year"] .seasonal-orbit{border-radius:0;transform:rotate(45deg);width:60%}
html[data-theme="new-year"] .seasonal-art-symbol{transform:rotate(12deg)}
html[data-theme="winter"] .seasonal-orbit{border-radius:0;transform:rotate(30deg);width:57%}
html[data-theme="winter"] .seasonal-art:after{border-radius:0;transform:translateY(-50%) rotate(-15deg);width:57%;left:21.5%}
html[data-theme="valentines"] .seasonal-orbit{width:65%;aspect-ratio:1.15;border-radius:50% 50% 46% 46%;transform:rotate(-12deg)}
html[data-theme="valentines"] .seasonal-art-symbol{font-size:clamp(160px,23vw,340px);transform:rotate(-9deg)}
html[data-theme="spring"] .seasonal-orbit,html[data-theme="st-patricks"] .seasonal-orbit{border-radius:50% 0 50% 50%;transform:rotate(-30deg);width:61%}
html[data-theme="spring"] .seasonal-art:after,html[data-theme="st-patricks"] .seasonal-art:after{border-radius:50% 50% 50% 0;transform:translateY(-50%) rotate(20deg)}
html[data-theme="easter"] .seasonal-orbit{width:56%;aspect-ratio:.74;border-radius:52% 52% 46% 46%;transform:rotate(15deg)}
html[data-theme="easter"] .seasonal-art:after{width:57%;left:21.5%;aspect-ratio:.76;border-radius:52% 52% 46% 46%;transform:translateY(-50%) rotate(-15deg)}
html[data-theme="summer"] .seasonal-orbit{width:63%;border-style:dashed;transform:rotate(0)}
html[data-theme="summer"] .seasonal-art-symbol{font-family:Georgia,'Times New Roman',serif;font-size:clamp(170px,23vw,340px)}
html[data-theme="independence-day"] .seasonal-orbit{border-radius:0;transform:rotate(-10deg);width:61%}
html[data-theme="independence-day"] .seasonal-art:after{border-radius:0;transform:translateY(-50%) rotate(10deg);background:repeating-linear-gradient(0deg,var(--season-glow) 0,var(--season-glow) 20px,transparent 20px,transparent 40px)}
html[data-theme="autumn"] .seasonal-orbit,html[data-theme="thanksgiving"] .seasonal-orbit{width:60%;aspect-ratio:.8;border-radius:0 60% 0 60%;transform:rotate(35deg)}
html[data-theme="autumn"] .seasonal-art:after,html[data-theme="thanksgiving"] .seasonal-art:after{border-radius:0 65% 0 65%;transform:translateY(-50%) rotate(-15deg)}
html[data-theme="christmas"] .seasonal-orbit{border-radius:0;transform:rotate(45deg);width:57%}
html[data-theme="christmas"] .seasonal-art:after{border-radius:0;clip-path:polygon(50% 0,100% 100%,0 100%);transform:translateY(-50%);width:75%;left:12.5%}
html[data-theme]:not([data-theme="halloween"]) .button-dark:hover,html[data-theme]:not([data-theme="halloween"]) .music-quick-toggle:hover:not(:disabled){background:var(--accent);filter:brightness(1.07)}
html[data-theme]:not([data-theme="halloween"]) .shop-strip a,html[data-theme]:not([data-theme="halloween"]) .product-card h3 button:hover,html[data-theme]:not([data-theme="halloween"]) .text-link:hover{color:var(--ink);text-decoration:underline;text-underline-offset:4px}
html[data-theme]:not([data-theme="halloween"]) .seasonal-copy .button-dark:hover{background:var(--season-ink);filter:brightness(1.16)}
html[data-theme]:not([data-theme="halloween"]) .about-section .text-link:hover{color:var(--paper)}
html[data-theme]:not([data-theme="halloween"]) .music-playlist-toggle:hover,html[data-theme]:not([data-theme="halloween"]) .music-playlist-toggle[aria-expanded=true]{color:var(--accent)}
@media(max-width:850px){.seasonal-art{min-height:460px}.seasonal-art-label{top:34px;left:34px}.seasonal-art-signature{left:34px;right:34px;bottom:34px}.seasonal-art-symbol{font-size:29vw}}
@media(max-width:600px){.seasonal-art{min-height:340px;height:88vw;max-height:430px;border-right:0;border-bottom:1px solid currentColor}.seasonal-art:before{inset:18px}.seasonal-art-label{top:32px;left:32px;font-size:10px}.seasonal-art-signature{bottom:31px;left:32px;right:32px;font-size:9px}.seasonal-art-symbol{font-size:62vw}html[data-theme="valentines"] .seasonal-art-symbol,html[data-theme="summer"] .seasonal-art-symbol{font-size:60vw}.seasonal-copy h2{font-size:clamp(44px,12.4vw,72px)}.about-section h2{font-size:clamp(39px,10.8vw,62px)}[data-theme-name]{font-size:9px}}
@media(prefers-reduced-motion:reduce){.seasonal-art *,.seasonal-art:before,.seasonal-art:after{animation:none!important;transition:none!important}}
