/* Bounded scenes. CSS animation exists only while art is engaged and visible. */
:is(.season-product,.spook-monthly,.season-detail-art){--season-color:#fc9761;--season-rgb:252 151 97;--season-second:#bb8dff;isolation:isolate}
[data-season-tone=ruby]{--season-color:#ff7187;--season-rgb:255 113 135;--season-second:#809bff}
[data-season-tone=lg]{--season-color:#ef94b2;--season-rgb:239 148 178;--season-second:#dc3067}
[data-season-tone=lynx]{--season-color:#68abf0;--season-rgb:104 171 240;--season-second:#2355f3}
[data-season-tone=copper]{--season-color:#ffb26e;--season-rgb:255 178 110;--season-second:#fb6698}
[data-season-tone=neon]{--season-color:#64f1ff;--season-rgb:100 241 255;--season-second:#ff54d9}
[data-season-tone=violet]{--season-color:#c49cff;--season-rgb:196 156 255;--season-second:#7affe2}
[data-season-tone=ice]{--season-color:#8dccff;--season-rgb:141 204 255;--season-second:#699bff}
[data-season-tone=lilac]{--season-color:#d3a7ff;--season-rgb:211 167 255;--season-second:#ffcc8c}
[data-season-tone=teal]{--season-color:#7cf0ba;--season-rgb:124 240 186;--season-second:#e4d775}
[data-season-tone=crimson]{--season-color:#ff879e;--season-rgb:255 135 158;--season-second:#ffd398}
[data-season-tone=cyan]{--season-color:#76f3ee;--season-rgb:118 243 238;--season-second:#977dff}
[data-season-tone=amber]{--season-color:#ffc574;--season-rgb:255 197 116;--season-second:#ff684b}
[data-season-tone=green]{--season-color:#bcf095;--season-rgb:188 240 149;--season-second:#ffe396}
[data-season-tone=lavender]{--season-color:#dec0ff;--season-rgb:222 192 255;--season-second:#85cdff}
[data-season-tone=blood-mist]{--season-color:#f26970;--season-rgb:242 105 112;--season-second:#b0cfcd}
#shop.spooktober-season #products .season-product[data-season-tone=blood-mist]{border:1px solid #be354b;box-shadow:0 0 0 1px #c9364826,0 10px 34px #0006,0 0 28px #8d132524;background:linear-gradient(150deg,#28151b,#100e13 75%)}
#shop.spooktober-season #products .season-product[data-season-tone=blood-mist] .product-info{background:linear-gradient(140deg,#b4142522,transparent 72%)}
#shop.spooktober-season #products .season-product[data-season-tone=blood-mist][data-season-active=true]{border-color:#ff7680;box-shadow:0 18px 45px #0009,0 0 0 1px #d8415340,0 0 42px #c02e4b55}
#shop.spooktober-season #products .season-product[data-season-tone=blood-mist][data-season-active=true] .cover{transform:scale(1.065);filter:brightness(.91) saturate(.85) contrast(1.09)}
#products .season-product{transition:transform .38s cubic-bezier(.16,1,.3,1),border-color .35s,box-shadow .4s}
#products .season-product .choose-tickets{background:color-mix(in srgb,var(--season-color) 76%,#f6e7df);border-color:var(--season-color);color:#141217}
#products .season-product .choose-tickets:hover{box-shadow:0 0 18px rgb(var(--season-rgb)/.25);background:var(--season-color)}
:is(.season-product,.spook-monthly,.season-detail-art) :focus-visible{outline-color:var(--season-color)}
#products .season-reward-badge{position:absolute;z-index:7;top:10px;right:10px;display:grid;place-items:center;min-width:35px;height:30px;padding:4px 8px;border:1px solid rgb(var(--season-rgb)/.55);border-radius:6px;background:#101017eb;color:#fff4ed;font-size:.9375rem;font-weight:850;line-height:1;letter-spacing:-.015em;box-shadow:0 3px 16px #0005,inset 0 1px #ffffff15}
#products .season-product .cover,.season-detail-art>img{transition:transform 1s cubic-bezier(.16,1,.3,1),filter .65s;transform-origin:50% 58%;will-change:auto}
#shop.spooktober-season #products .season-product[data-season-active=true]{z-index:3;transform:translateY(-5px);border-color:rgb(var(--season-rgb)/.86);box-shadow:0 19px 48px #0009,0 0 28px rgb(var(--season-rgb)/.2),inset 0 0 0 1px rgb(var(--season-rgb)/.14)}
#shop.spooktober-season #products .season-product[data-season-active=true] .cover{transform:translateY(-3px) scale(1.095);filter:brightness(1.13) saturate(1.1) drop-shadow(0 10px 8px #0005)}
#shop.spooktober-season .spook-monthly[data-season-active=true] .rare-drop-image{transform:translateY(-3px) scale(1.04);filter:drop-shadow(0 16px 14px #0009) drop-shadow(0 0 18px rgb(var(--season-rgb)/.14))}
.season-detail-art{position:relative;overflow:hidden;outline-offset:-4px}
.season-detail-art:focus-visible{outline:2px solid var(--season-color)}
.season-detail-art[data-season-active=true]>img{transform:translateY(-3px) scale(1.045);filter:brightness(1.09) saturate(1.08)}
.season-fx{position:absolute;inset:0 0 auto;height:var(--gallery-art-height,auto);aspect-ratio:4/5;z-index:4;overflow:hidden;pointer-events:none;user-select:none;color:var(--season-color);opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s;contain:paint}
.season-fx *{box-sizing:border-box;pointer-events:none;animation:none;--season-motion:none}
.season-fx [data-season-index="0"]{--i:0}.season-fx [data-season-index="1"]{--i:1}.season-fx [data-season-index="2"]{--i:2}.season-fx [data-season-index="3"]{--i:3}.season-fx [data-season-index="4"]{--i:4}.season-fx [data-season-index="5"]{--i:5}.season-fx [data-season-index="6"]{--i:6}.season-fx [data-season-index="7"]{--i:7}.season-fx [data-season-index="8"]{--i:8}.season-fx [data-season-index="9"]{--i:9}.season-fx [data-season-index="10"]{--i:10}.season-fx [data-season-index="11"]{--i:11}.season-fx [data-season-index="12"]{--i:12}.season-fx [data-season-index="13"]{--i:13}.season-fx [data-season-index="14"]{--i:14}
.season-fx>.season-scene{position:absolute;inset:0;overflow:hidden}
.season-detail-art>.season-fx,#shop .spook-monthly .rare-drop-art>.season-fx{inset:0;height:100%;aspect-ratio:auto}
[data-season-active=true] .season-fx{opacity:1;visibility:visible}
[data-season-active=true] .season-fx *{animation:var(--season-motion,none)}
.season-volume{position:absolute;inset:-12%;background:radial-gradient(ellipse at 50% 108%,rgb(var(--season-rgb)/.6),transparent 52%),radial-gradient(ellipse at 0 45%,rgb(var(--season-rgb)/.23),transparent 45%),radial-gradient(ellipse at 100% 15%,color-mix(in srgb,var(--season-second) 30%,transparent),transparent 45%);filter:blur(14px);mix-blend-mode:screen;--season-motion:season-volume-in 1.2s ease-out both}
.season-chroma{position:absolute;inset:-50%;background:linear-gradient(115deg,transparent 40%,rgb(var(--season-rgb)/.04) 43%,rgb(var(--season-rgb)/.25) 47%,#fff7 48%,color-mix(in srgb,var(--season-second) 35%,transparent) 49%,transparent 55%);mix-blend-mode:screen;--season-motion:season-chroma-pass 1.65s cubic-bezier(.2,.65,.2,1) both}
.season-lens{position:absolute;inset:0;box-shadow:inset 0 0 32px rgb(var(--season-rgb)/.12);background:linear-gradient(180deg,transparent 65%,rgb(var(--season-rgb)/.075));--season-motion:season-lens-in .6s ease both}
.season-vector{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:currentColor;overflow:visible}
@keyframes season-volume-in{from{opacity:0;transform:scale(.76)}to{opacity:1;transform:scale(1)}}
@keyframes season-chroma-pass{from{transform:translateX(-55%);opacity:0}15%{opacity:1}75%{opacity:.65}to{transform:translateX(55%);opacity:0}}
@keyframes season-lens-in{from{opacity:0}to{opacity:1}}
/* SILENT HILL f: pale mist recedes as red spider lilies bloom at the edges. */
.season-fx--blood-mist .season-chroma{display:none}
.season-fx--blood-mist .season-volume{background:radial-gradient(ellipse at 0 95%,#a00a2877,transparent 50%),radial-gradient(ellipse at 100% 68%,#b215354d,transparent 45%);filter:blur(13px)}
.season-sh-veil{position:absolute;inset:0;background:linear-gradient(180deg,#101e2840,transparent 40%,#21070a75);--season-motion:season-sh-awaken 1.8s ease-out both}
.season-sh-fog{position:absolute;left:-45%;bottom:-7%;width:190%;height:50%;background:radial-gradient(ellipse at 24% 65%,#b4c6c564,transparent 48%),radial-gradient(ellipse at 67% 35%,#b9d2d252,transparent 49%);filter:blur(13px);--season-motion:season-sh-fog 8s ease-in-out infinite alternate}
.season-sh-fog--back{bottom:31%;height:43%;opacity:.45;--season-motion:season-sh-fog 11s -4s ease-in-out infinite alternate-reverse}
.season-sh-fog--front{mix-blend-mode:screen}
.season-sh-vignette{position:absolute;inset:0;box-shadow:inset 0 0 42px #310813a8;background:radial-gradient(ellipse at 50% 44%,transparent 42%,#500b221c 75%);--season-motion:season-sh-breathe 5s ease-in-out infinite alternate}
.season-sh-roots,.season-sh-veins{stroke:#aa1d37;stroke-width:3;stroke-linecap:round;stroke-dasharray:650;stroke-dashoffset:650;filter:drop-shadow(0 0 4px #ca294d70);--season-motion:season-sh-grow 2.5s .15s cubic-bezier(.2,.6,.3,1) both}
.season-sh-veins{stroke:#ef5e6e;stroke-width:1.5;--season-motion:season-sh-grow 3s .35s ease-out both}
.season-sh-flower{position:absolute;left:3%;bottom:13%;width:70px;height:70px;transform-origin:50% 100%;--season-motion:season-sh-bloom 1.7s .3s cubic-bezier(.16,.75,.3,1) both,season-sh-sway 6s 2s ease-in-out infinite alternate}
.season-sh-flower[data-season-index="1"]{left:auto;right:0;bottom:22%;width:60px;height:60px;--season-motion:season-sh-bloom 1.9s .55s cubic-bezier(.16,.75,.3,1) both,season-sh-sway 7s 2.5s ease-in-out infinite alternate-reverse}
.season-sh-flower[data-season-index="2"]{left:17%;bottom:2%;width:48px;height:48px;--season-motion:season-sh-bloom 1.7s .9s cubic-bezier(.16,.75,.3,1) both,season-sh-sway 5s 2.8s ease-in-out infinite alternate}
.season-sh-flower>b{position:absolute;left:49%;top:54%;width:2px;height:95px;transform:rotate(-7deg);transform-origin:top;background:linear-gradient(#971e36,#3d352b00);box-shadow:0 0 5px #c51c2533}
.season-sh-filament{position:absolute;left:32%;top:12%;width:36%;height:50%;border:2px solid #ed3458;border-right:1px solid #ff8b8b;border-bottom-color:transparent;border-radius:85% 8% 68% 10%;transform-origin:50% 82%;transform:rotate(calc(var(--i)*60deg));box-shadow:-3px -1px 6px #a90b2633}
.season-sh-filament::after{content:'';position:absolute;left:48%;bottom:10%;width:1px;height:155%;border-left:1px solid #ff7e8d;border-radius:100%;transform:rotate(-18deg);transform-origin:bottom;opacity:.75}
.season-sh-petal{position:absolute;left:calc(6% + var(--i)*10.8%);bottom:-4%;width:calc(5px + var(--i)*.4px);height:calc(11px + var(--i)*.5px);border-radius:90% 0 90% 0;background:linear-gradient(135deg,#ff6d80,#b41039 60%,#450b1c);box-shadow:0 0 4px #d1264b33;--season-motion:season-sh-petals 6.5s calc(var(--i)*-.63s) ease-in-out infinite}
@keyframes season-sh-awaken{from{opacity:0}to{opacity:.8}}
@keyframes season-sh-fog{from{transform:translate(-7%,8%) scale(1);opacity:.3}to{transform:translate(9%,-9%) scale(1.1);opacity:.65}}
@keyframes season-sh-breathe{from{opacity:.45}to{opacity:.95}}
@keyframes season-sh-grow{to{stroke-dashoffset:0}}
@keyframes season-sh-bloom{from{opacity:0;scale:.2;rotate:-25deg;translate:0 25px}to{opacity:1;scale:1;rotate:0deg;translate:0 0}}
@keyframes season-sh-sway{from{transform:rotate(-4deg)}to{transform:rotate(7deg)}}
@keyframes season-sh-petals{0%{opacity:0;transform:translate(0,20px) rotate(0deg)}16%{opacity:.85}75%{opacity:.7}100%{opacity:0;transform:translate(-35px,-310px) rotate(210deg)}}
@media(prefers-reduced-motion:reduce){.season-sh-petal,.season-sh-fog{display:none}.season-sh-roots,.season-sh-veins{stroke-dashoffset:0}.season-sh-filament{transform:rotate(calc(var(--i)*60deg))!important}}
/* LG main: the display wakes in tiles and catches a broad glass reflection. */
.season-fx--power .season-volume{opacity:.6;background:radial-gradient(ellipse at 50% 80%,#cc224342,transparent 62%)}
.season-power-screen{position:absolute;inset:19% 15% 29%;border:1px solid #fdb6c94d;border-radius:3px;box-shadow:0 0 23px #ff446b29,inset 0 0 26px #ff446b14;transform:perspective(600px) rotateY(-7deg);--season-motion:season-power-on 1.15s cubic-bezier(.2,.8,.2,1) both}
.season-power-reflection{position:absolute;inset:12% 12% 27%;background:linear-gradient(115deg,transparent 25%,#ffd5e700 37%,#ffe2ee45 48%,#ff9ac715 51%,transparent 65%);clip-path:polygon(3% 0,100% 6%,96% 100%,0 92%);mix-blend-mode:screen;--season-motion:season-glass-light 3.5s .1s ease-in-out infinite}
.season-power-ground{position:absolute;left:20%;right:20%;bottom:17%;height:9%;border-radius:50%;background:#e8526d3b;filter:blur(14px);--season-motion:season-volume-in 1s ease-out both}
.season-pixel{position:absolute;left:calc(13% + var(--i)*6.2%);top:calc(22% + var(--i)*3%);width:calc(4px + var(--i)*.6px);height:7px;background:#ffdce6;box-shadow:0 0 15px #ef6990;--season-motion:season-pixel-wake 1.5s calc(var(--i)*.055s) ease-out both}
@keyframes season-power-on{0%{opacity:0;transform:scaleY(.015)}30%{opacity:.65;transform:scaleY(.02)}70%{opacity:.55;transform:scaleY(1)}100%{opacity:.25;transform:scaleY(1)}}
@keyframes season-pixel-wake{0%{opacity:0;transform:translateY(16px) scale(.2)}35%{opacity:.75}100%{opacity:0;transform:translateY(-26px) scale(.5)}}
@keyframes season-glass-light{0%,100%{opacity:.12;transform:translateX(-12%)}50%{opacity:.5;transform:translateX(18%)}}
/* The hero gets a rear lighting rig, never a translucent panel over the actual display. */
#shop .spook-monthly .season-fx--power{z-index:2}
#shop .spook-monthly .season-power-screen{display:none}
#shop .spook-monthly .season-power-reflection{inset:-6% 0 -4%;clip-path:none;background:conic-gradient(from 218deg at 50% 78%,transparent 0 9deg,#f183b035 13deg,#ffe4f12b 16deg,transparent 24deg 93deg,#f296b723 99deg,transparent 111deg);mask-image:radial-gradient(ellipse at 50% 60%,#000,transparent 71%);--season-motion:season-lg-light-rig 3.6s ease-in-out infinite alternate}
#shop .spook-monthly .season-power-ground{bottom:11%;left:14%;right:14%;height:12%;background:#e14b793b;filter:blur(10px)}
@keyframes season-lg-light-rig{from{opacity:.4;transform:rotate(-4deg) scale(.95)}to{opacity:.8;transform:rotate(5deg) scale(1.05)}}
/* LG second: red scanning volume, deliberate HUD lock and live equalizer. */
.season-hud-grid{position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 22px,#ff7b8910 23px 24px),repeating-linear-gradient(90deg,transparent 0 22px,#ff7b890d 23px 24px);mask-image:linear-gradient(transparent 15%,#000 90%);--season-motion:season-hud-grid-in .8s ease-out both}
.season-hud-sweep{position:absolute;left:5%;right:5%;top:12%;height:22%;border-bottom:2px solid #ffd3dd99;background:linear-gradient(transparent,#ff4a7838);box-shadow:0 9px 18px -12px #ff6280;--season-motion:season-hud-scan 3.6s .2s ease-in-out infinite}
.season-hud-brackets{stroke:#ffb9c9;stroke-width:3;filter:drop-shadow(0 0 6px #ff456b);transform-origin:center;--season-motion:season-hud-lock .75s cubic-bezier(.2,.8,.2,1) both}
.season-hud-ruler{stroke:#ff829d;stroke-width:2;opacity:.5}
.season-hud-bars{position:absolute;display:flex;align-items:flex-end;gap:3px;right:10%;bottom:12%;width:43px;height:29px}
.season-hud-bar{flex:1;height:calc(20% + var(--i)*11%);background:#ffabbc;box-shadow:0 0 8px #ff4c7e66;transform-origin:bottom;--season-motion:season-hud-bar 1.3s calc(var(--i)*-.17s) ease-in-out infinite alternate}
@keyframes season-hud-grid-in{from{opacity:0;transform:perspective(250px) rotateX(40deg)}to{opacity:.7;transform:none}}
@keyframes season-hud-scan{0%{opacity:0;transform:translateY(-25%)}15%{opacity:.8}75%{opacity:.55;transform:translateY(215%)}100%{opacity:0;transform:translateY(230%)}}
@keyframes season-hud-lock{from{opacity:0;transform:scale(1.16)}60%{opacity:1;transform:scale(.97)}to{opacity:.8;transform:scale(1)}}
@keyframes season-hud-bar{from{transform:scaleY(.35);opacity:.4}to{transform:scaleY(1);opacity:1}}
/* AXE: the cyan / magenta X becomes a light sculpture. */
.season-fx--axe .season-volume{background:radial-gradient(ellipse at 5% 75%,#03d5ff66,transparent 50%),radial-gradient(ellipse at 95% 20%,#ff30cd66,transparent 50%);filter:blur(19px)}
.season-neon-x{position:absolute;left:48%;top:-8%;width:5%;height:115%;border-radius:50%;mix-blend-mode:screen;--season-motion:season-neon-strike 1s cubic-bezier(.1,.8,.2,1) both;--angle:31deg;transform:rotate(var(--angle));background:linear-gradient(#8ff6ff,#18c6ff 22%,#18c6ff00 45%,#18c6ff00 57%,#28e1ff 78%,#deffff);box-shadow:0 0 13px #09d9ff88,0 0 35px #04afff44}
.season-neon-x--pink{--angle:-31deg;--season-motion:season-neon-strike 1s .1s cubic-bezier(.1,.8,.2,1) both;background:linear-gradient(#fff2ff,#ff4adb 22%,#ff4adb00 45%,#ff4adb00 57%,#ff38bb 78%,#ffd8ff);box-shadow:0 0 13px #ff36d477,0 0 35px #ff36d444}
.season-neon-floor{position:absolute;left:0;right:0;bottom:4%;height:25%;background:repeating-linear-gradient(90deg,transparent 0 28px,#4befff44 29px 30px),repeating-linear-gradient(0deg,transparent 0 23px,#ee68ff44 24px 25px);transform:perspective(130px) rotateX(55deg);mask-image:linear-gradient(transparent,#0008);--season-motion:season-neon-floor 2.5s linear infinite}
.season-neon-shard{position:absolute;left:calc(6% + var(--i)*9.1%);top:calc(10% + var(--i)*7.4%);width:4px;height:24px;background:#8effff;box-shadow:0 0 13px #3ef1ff;transform:rotate(30deg);--season-motion:season-neon-fragment 2.8s calc(var(--i)*.12s) ease-out infinite}
.season-neon-shard:nth-child(2n){background:#ffa7ea;box-shadow:0 0 12px #ff45d8;transform:rotate(-30deg)}
@keyframes season-neon-strike{from{opacity:0;transform:rotate(var(--angle)) scaleY(.1)}45%{opacity:1}to{opacity:.8;transform:rotate(var(--angle)) scaleY(1)}}
@keyframes season-neon-floor{to{background-position:0 24px}}
@keyframes season-neon-fragment{0%,10%{opacity:0;translate:0 25px;scale:.4}22%{opacity:1}85%,100%{opacity:0;translate:0 -46px;scale:.7}}
/* VEDICI: four saturated flavour columns and a spreading energy ring. */
.season-energy-column{--energy:#9d67ff;position:absolute;left:calc(3% + var(--i)*24%);bottom:0;width:25%;height:88%;transform-origin:50% 100%;--season-motion:season-energy-rise 1.2s calc(var(--i)*.09s) cubic-bezier(.2,.8,.2,1) both}
.season-energy-column:nth-child(2){--energy:#5adfab}.season-energy-column:nth-child(3){--energy:#fbab42}.season-energy-column:nth-child(4){--energy:#ff577c}
.season-energy-column::before{content:'';position:absolute;inset:0 -25%;background:radial-gradient(ellipse at 50% 105%,var(--energy),transparent 65%);filter:blur(12px);opacity:.46}
.season-energy-column i{position:absolute;bottom:6%;left:35%;width:30%;height:76%;border-radius:50%;background:linear-gradient(transparent,var(--energy));filter:blur(8px);opacity:.32;--season-motion:season-energy-breathe 3.2s calc(var(--i)*-.6s) ease-in-out infinite alternate}
.season-energy-column b{position:absolute;left:0;right:0;bottom:12%;height:20%;border:2px solid var(--energy);border-radius:50%;box-shadow:0 0 16px var(--energy);transform:scaleY(.4);opacity:.5}
.season-energy-ring{position:absolute;left:15%;right:15%;bottom:3%;height:30%;border:3px solid #f7d7ff66;border-radius:50%;box-shadow:0 0 20px #a965ff77;--season-motion:season-energy-ring 3.8s ease-out infinite}
.season-energy-spark{position:absolute;left:calc(5% + var(--i)*8%);bottom:calc(6% + var(--i)*2%);width:3px;height:17px;border-radius:50%;background:#cda4ff;box-shadow:0 0 10px currentColor;--season-motion:season-energy-spark 3.3s calc(var(--i)*.16s) ease-out infinite}
.season-energy-spark:nth-of-type(3n){background:#7affc9}.season-energy-spark:nth-of-type(3n + 1){background:#ffc47b}.season-energy-spark:nth-of-type(3n + 2){background:#ff839f}
@keyframes season-energy-rise{from{opacity:0;transform:scaleY(.15)}to{opacity:1;transform:scaleY(1)}}
@keyframes season-energy-breathe{from{opacity:.18;transform:scaleX(.65)}to{opacity:.5;transform:scaleX(1.1)}}
@keyframes season-energy-ring{0%{opacity:0;transform:scale(.45,.2)}25%{opacity:.7}100%{opacity:0;transform:scale(1.5,.6)}}
@keyframes season-energy-spark{0%{opacity:0;transform:translateY(8px) scaleY(.3)}20%{opacity:.8}100%{opacity:0;transform:translateY(-160px) scaleY(.1)}}
/* Steam: a digital pass opens in perspective while data tiles ascend. */
.season-voucher-halo{position:absolute;inset:0;background:conic-gradient(from 15deg at 72% 75%,transparent,#2b91ff20,transparent 30%,#80e2ff30,transparent 63%);--season-motion:season-voucher-halo 6s ease-in-out infinite alternate}
.season-digital-ticket{position:absolute;right:9%;bottom:12%;width:37%;height:25%;perspective:500px;transform:rotate(-12deg);--season-motion:season-voucher-arrive 1.1s cubic-bezier(.16,1,.3,1) both}
.season-ticket-face,.season-ticket-flap{position:absolute;inset:0;border:1px solid #c5efffb0;border-radius:7px;background:linear-gradient(140deg,#397aceed,#142646ed);box-shadow:0 10px 25px #0006,0 0 18px #75caff55;transform-origin:left}
.season-ticket-face{display:flex;flex-direction:column;justify-content:center;align-items:center;color:#edfbff;--season-motion:season-voucher-unfold 1.3s .15s cubic-bezier(.16,1,.3,1) both}
.season-ticket-face b{font-size:22px;line-height:1.1;letter-spacing:-.06em}.season-ticket-face small{font-size:9px;letter-spacing:.17em;margin-top:6px}.season-ticket-face i{height:5px;width:58%;margin-top:9px;background:repeating-linear-gradient(90deg,#afeaff 0 1px,transparent 1px 3px)}
.season-ticket-flap{transform:translate(-13%,9%) rotate(-7deg);background:linear-gradient(145deg,#253c64ef,#142036ef);border-color:#79b4ff77}
.season-digital-grid{position:absolute;inset:0;background:radial-gradient(circle,#8fcfff 1px,transparent 1.7px);background-size:17px 17px;opacity:.22;mask-image:radial-gradient(ellipse at 75% 85%,#000,transparent 58%);--season-motion:season-data-drift 6s linear infinite}
.season-data-block{position:absolute;left:calc(8% + var(--i)*9%);bottom:calc(6% + var(--i)*5%);width:7px;height:7px;background:#9eeaff88;box-shadow:0 0 11px #4b9eff;--season-motion:season-data-rise 3s calc(var(--i)*.15s) ease-out infinite}
@keyframes season-voucher-arrive{from{opacity:0;translate:25px 30px;scale:.7}to{opacity:1;translate:0 0;scale:1}}
@keyframes season-voucher-unfold{from{transform:rotateY(-100deg);filter:brightness(.4)}to{transform:rotateY(-14deg);filter:brightness(1)}}
@keyframes season-voucher-halo{from{transform:scale(1);opacity:.4}to{transform:scale(1.15);opacity:1}}
@keyframes season-data-drift{to{background-position:0 -34px}}
@keyframes season-data-rise{0%{opacity:0;transform:translateY(18px) rotate(0)}25%{opacity:.8}to{opacity:0;transform:translateY(-100px) rotate(90deg)}}
/* Board-game credit: shaded dice tumble onto a lit tabletop. */
.season-dice-table{position:absolute;left:-10%;right:-10%;bottom:-5%;height:38%;background:radial-gradient(ellipse,#c887ff4d,transparent 68%);transform:perspective(200px) rotateX(35deg)}
.season-die{position:absolute;width:43px;height:43px;left:9%;bottom:12%;transform:rotate(-18deg);--season-motion:season-die-tumble 1.25s calc(var(--i)*.15s) cubic-bezier(.2,.7,.2,1) both;--roll:-18deg;filter:drop-shadow(0 10px 8px #0007)}
.season-die--1{left:auto;right:10%;bottom:21%;width:38px;height:38px;--roll:19deg;transform:rotate(19deg)}
.season-die--2{left:25%;bottom:29%;width:27px;height:27px;--roll:-8deg;transform:rotate(-8deg);opacity:.85}
.season-die-front{position:absolute;inset:0;border:1px solid #f2d9ff;border-radius:6px;background:linear-gradient(135deg,#e7cfff,#a273c1);box-shadow:inset 0 2px 2px #fff7,inset -3px -4px 5px #67337c66;z-index:2}
.season-die-side{position:absolute;top:4px;bottom:-4px;right:-7px;width:10px;transform:skewY(32deg);border-radius:2px;background:#684681;border:1px solid #bd92d1}
.season-die-top{position:absolute;top:-5px;left:4px;right:-3px;height:8px;transform:skewX(50deg);border-radius:2px;background:#efdfff;border:1px solid #deb9ef}
.season-pip{position:absolute;width:14%;height:14%;border-radius:50%;background:#3b234c;box-shadow:inset 0 1px 1px #000a;left:23%;top:23%}.season-pip:nth-child(2){left:auto;right:23%;top:auto;bottom:23%}.season-pip:nth-child(3){left:43%;top:43%}.season-pip:nth-child(4){left:auto;right:23%;top:23%}.season-pip:nth-child(5){left:23%;top:auto;bottom:23%}
.season-dice-orbit{position:absolute;left:4%;right:4%;bottom:3%;height:26%;border:2px solid #e2c0ff44;border-radius:50%;transform:rotate(-8deg);box-shadow:0 0 18px #b575ff30;--season-motion:season-dice-ring 3.3s ease-out infinite}
.season-dice-spark{position:absolute;left:calc(9% + var(--i)*12%);bottom:calc(8% + var(--i)*4%);width:3px;height:3px;background:#ffdfb6;box-shadow:0 0 9px #dfb3ff;--season-motion:season-data-rise 3s calc(var(--i)*.17s) ease-out infinite}
@keyframes season-die-tumble{from{opacity:0;transform:translateY(-80px) rotate(calc(var(--roll) - 180deg)) scale(.4)}65%{opacity:1;transform:translateY(7px) rotate(calc(var(--roll) + 7deg)) scale(1.05)}to{opacity:1;transform:translateY(0) rotate(var(--roll)) scale(1)}}
@keyframes season-dice-ring{0%{opacity:0;scale:.7}30%{opacity:1}to{opacity:0;scale:1.2}}
/* Rodozář: the forest closes at the edges; fireflies cut through the mist. */
.season-forest-trunk{fill:#052720c4;stroke:#7dea9b44;stroke-width:1.5;filter:drop-shadow(0 0 7px #74cc5933);transform-origin:bottom;--season-motion:season-tree-grow 1.4s cubic-bezier(.16,1,.3,1) both}
.season-forest-trunk--right{fill:#152619d9;--season-motion:season-tree-grow 1.4s .12s cubic-bezier(.16,1,.3,1) both}
.season-forest-mist{position:absolute;left:-20%;right:-20%;bottom:-6%;height:32%;border-radius:50%;background:radial-gradient(ellipse,#9ae2b852,transparent 70%);filter:blur(12px);--season-motion:season-forest-mist 5.5s ease-in-out infinite alternate}
.season-forest-mist--far{bottom:21%;left:-40%;opacity:.45;--season-motion:season-forest-mist 7s -2s ease-in-out infinite alternate-reverse}
.season-firefly{position:absolute;left:calc(4% + var(--i)*6.6%);bottom:calc(12% + var(--i)*4.5%);width:4px;height:4px;border-radius:50%;background:#e4ffc1;box-shadow:0 0 7px 2px #c7ff9380,0 0 17px 5px #65f49530;--season-motion:season-firefly-dance 4s calc(var(--i)*-.29s) ease-in-out infinite}
.season-firefly:nth-of-type(3n){width:2px;height:2px;background:#affff1;--season-motion:season-firefly-dance 5.2s calc(var(--i)*-.22s) ease-in-out infinite reverse}
@keyframes season-tree-grow{from{opacity:0;transform:scaleY(.45) translateY(70px)}to{opacity:1;transform:scaleY(1) translateY(0)}}
@keyframes season-forest-mist{from{transform:translateX(-8%) scale(.85);opacity:.4}to{transform:translateX(8%) scale(1.15);opacity:.75}}
@keyframes season-firefly-dance{0%,100%{opacity:.12;transform:translate(-6px,7px) scale(.55)}35%{opacity:.9;transform:translate(9px,-12px) scale(1.1)}70%{opacity:.5;transform:translate(-11px,-21px) scale(.7)}}
/* Karneval hříchů: a crimson card fan and crossing theatre spotlights. */
.season-spotlight{position:absolute;left:-30%;top:-18%;width:80%;height:120%;background:conic-gradient(from 166deg at 50% 0,transparent,#ffd7a13a 9deg,#ffd7a107 20deg,transparent 29deg);filter:blur(4px);transform-origin:50% 0;--season-motion:season-spotlight-pan 5.5s ease-in-out infinite alternate}
.season-spotlight--right{left:auto;right:-30%;background:conic-gradient(from 166deg at 50% 0,transparent,#ed92be50 9deg,#f8769b08 20deg,transparent 29deg);--season-motion:season-spotlight-pan 5.5s ease-in-out infinite alternate-reverse}
.season-card-fan{position:absolute;left:50%;bottom:7%;width:55px;height:87px;transform:translateX(-50%);filter:drop-shadow(0 10px 12px #0007)}
.season-playing-card{position:absolute;inset:0;border:1px solid #e4bd85;border-radius:5px;background:linear-gradient(135deg,#532534ef,#211624f5);box-shadow:inset 0 0 0 4px #3d2230,inset 0 0 0 5px #b3895f88,0 0 12px #0006;transform-origin:50% 112%;--fan:calc((var(--i) - 2)*23deg);--season-motion:season-cards-fan 1.15s calc(var(--i)*.05s) cubic-bezier(.16,1,.3,1) both}
.season-playing-card:nth-child(2n){background:linear-gradient(140deg,#672837f2,#301121f5)}
.season-playing-card svg{position:absolute;left:22%;top:25%;width:56%;height:50%;fill:#f4bf9d;filter:drop-shadow(0 0 6px #ed8f7540)}
.season-playing-card b{position:absolute;left:8px;top:8px;width:5px;height:7px;background:#e8bd91;clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}
.season-confetti{position:absolute;left:calc(7% + var(--i)*9.3%);top:calc(11% + var(--i)*5%);width:5px;height:9px;background:#ffc5a0;--season-motion:season-confetti-fall 4s calc(var(--i)*-.23s) ease-in-out infinite}
.season-confetti:nth-of-type(2n){background:#d26b90;width:3px;height:7px}
@keyframes season-spotlight-pan{from{transform:rotate(-12deg);opacity:.4}to{transform:rotate(13deg);opacity:.95}}
@keyframes season-cards-fan{from{opacity:0;transform:translateY(45px) rotate(0)}to{opacity:1;transform:translateY(0) rotate(var(--fan))}}
@keyframes season-confetti-fall{0%{opacity:0;transform:translate(0,-35px) rotate(0)}20%{opacity:.8}100%{opacity:0;transform:translate(20px,120px) rotate(210deg)}}
/* Voidtrain: a thick plasma portal opens above moving perspective rails. */
.season-portal-haze{position:absolute;left:5%;right:5%;top:5%;height:72%;border-radius:50%;background:radial-gradient(ellipse,transparent 48%,#5aece83b 61%,#4878ff19 72%,transparent 78%);filter:blur(8px);--season-motion:season-portal-open 1.3s cubic-bezier(.16,1,.3,1) both}
.season-portal-ring{position:absolute;left:8%;right:8%;top:7%;height:67%;border:4px solid #92fff07a;border-radius:50%;box-shadow:0 0 16px #53deff66,inset 0 0 18px #61ffd24d;outline:1px solid #b1fff02b;outline-offset:8px;--season-motion:season-portal-open 1.1s cubic-bezier(.16,1,.3,1) both,season-portal-turn 11s 1.1s linear infinite}
.season-portal-ring::before{content:'';position:absolute;inset:-7px;border-radius:50%;border:6px solid transparent;border-left-color:#c4fff2;border-right-color:#657eff;filter:blur(1px)}
.season-portal-ring--inner{inset:11% 13% auto;height:59%;border-width:1px;border-style:dashed;box-shadow:none;outline:0;--season-motion:season-portal-open 1.3s cubic-bezier(.16,1,.3,1) both,season-portal-turn 17s 1.3s linear infinite reverse}
.season-portal-ring--inner::before{display:none}
.season-railway{position:absolute;left:0;right:0;bottom:-12%;height:46%;transform:perspective(170px) rotateX(47deg);transform-origin:50% 100%;mask-image:linear-gradient(transparent,#000 24%)}
.season-railway i,.season-railway b{position:absolute;left:22%;top:0;bottom:0;width:4px;background:linear-gradient(90deg,#b3f7ef,#427681);box-shadow:0 0 10px #74ffe87a}.season-railway b{left:auto;right:22%}
.season-railway em{position:absolute;inset:0 19%;background:repeating-linear-gradient(0deg,transparent 0 32px,#799695 33px 38px,#cff3e1 38px 40px);--season-motion:season-tracks-run .8s linear infinite}
.season-portal-debris{position:absolute;left:calc(3% + var(--i)*10%);top:calc(12% + var(--i)*7%);width:5px;height:9px;background:#c0fff1;clip-path:polygon(0 0,100% 22%,72% 100%,16% 77%);box-shadow:0 0 10px #6fffd5;--season-motion:season-portal-debris 3.4s calc(var(--i)*-.17s) linear infinite}
@keyframes season-portal-open{from{opacity:0;transform:scale(.4) rotate(-20deg)}to{opacity:1;transform:scale(1) rotate(0)}}
@keyframes season-portal-turn{to{transform:rotate(360deg)}}
@keyframes season-tracks-run{to{background-position:0 40px}}
@keyframes season-portal-debris{0%{opacity:0;transform:translateY(30px) rotate(0)}25%{opacity:.8}to{opacity:0;transform:translateY(-80px) rotate(130deg)}}
/* Guntouchables: one warm impact wave, scattered brass, then low ember glow. */
.season-impact-haze{position:absolute;inset:0;background:radial-gradient(ellipse at 10% 74%,#ff9a456b,transparent 40%),radial-gradient(ellipse at 95% 5%,#ff51332b,transparent 40%);--season-motion:season-impact-warm 1.2s ease-out both}
.season-impact-ring{position:absolute;left:-12%;bottom:9%;width:55%;height:40%;border:4px solid #ffd79199;border-radius:50%;box-shadow:0 0 18px #ff9d5380;--season-motion:season-impact-wave 1.4s ease-out both}
.season-impact-rays{position:absolute;left:13%;bottom:27%;width:1px;height:1px}
.season-impact-ray{position:absolute;width:5px;height:70px;bottom:0;left:0;transform-origin:50% 100%;background:linear-gradient(transparent,#ffdf9bc7);border-radius:50%;--ray-angle:calc(var(--i)*45deg);--season-motion:season-impact-ray .9s calc(var(--i)*.012s) ease-out both}
.season-shell{position:absolute;right:calc(7% + var(--i)*10%);top:calc(20% + var(--i)*10%);width:9px;height:23px;border:1px solid #ffe4a7;border-radius:4px 4px 2px 2px;background:linear-gradient(90deg,#956019,#ffe3a0 45%,#d99536 66%,#9e6219);box-shadow:0 3px 5px #0006;--season-motion:season-shell-eject 1.8s calc(var(--i)*.12s) cubic-bezier(.16,.6,.3,1) both}
.season-impact-reticle{stroke:#ffdaac88;stroke-width:2;--season-motion:season-hud-lock .9s ease both}
@keyframes season-impact-warm{from{opacity:0;transform:scale(.7)}35%{opacity:1}to{opacity:.5;transform:scale(1)}}
@keyframes season-impact-wave{from{opacity:.75;transform:scale(.1)}to{opacity:0;transform:scale(1.7)}}
@keyframes season-impact-ray{from{opacity:0;transform:rotate(var(--ray-angle)) scaleY(.2)}30%{opacity:.85}to{opacity:0;transform:rotate(var(--ray-angle)) scaleY(1.2)}}
@keyframes season-shell-eject{from{opacity:0;transform:translate(-45px,65px) rotate(-70deg) scale(.5)}30%{opacity:1}70%{opacity:1;transform:translate(6px,-13px) rotate(100deg) scale(1)}to{opacity:.45;transform:translate(14px,8px) rotate(145deg) scale(.9)}}
/* Urban Jungle: broad shaded leaves unfurl around the artwork in warm sun. */
.season-garden-sun{position:absolute;right:-25%;top:-22%;width:75%;height:70%;border-radius:50%;background:radial-gradient(ellipse,#fff1a359,transparent 70%);filter:blur(12px);--season-motion:season-volume-in 1.3s ease both}
.season-vine{stroke:#507c45;stroke-width:4;stroke-linecap:round;stroke-dasharray:450;stroke-dashoffset:450;--season-motion:season-vine-grow 1.4s ease-out both}
.season-vine--right{stroke:#86b878;--season-motion:season-vine-grow 1.4s .12s ease-out both}
.season-leaf{--leaf-angle:-38deg;position:absolute;left:2%;bottom:6%;width:27%;height:14%;border-radius:3% 95% 3% 95%;background:linear-gradient(140deg,#b1df86,#639352 52%,#32552f);box-shadow:inset 2px 2px 5px #dfffad55,0 8px 12px #0004;transform-origin:8% 86%;--season-motion:season-leaf-unfurl 1.35s calc(var(--i)*.085s) cubic-bezier(.16,1,.3,1) both}
.season-leaf::after{content:'';position:absolute;left:7%;bottom:10%;width:100%;height:1px;background:#d0efa17d;transform:rotate(-36deg);transform-origin:left}
.season-leaf:nth-of-type(2){left:-4%;bottom:23%;width:24%;height:12%;--leaf-angle:-69deg}.season-leaf:nth-of-type(3){left:1%;bottom:40%;width:18%;height:11%;--leaf-angle:-28deg}.season-leaf:nth-of-type(4){left:6%;bottom:14%;width:26%;height:14%;--leaf-angle:-5deg}
.season-leaf:nth-of-type(5){left:auto;right:-2%;bottom:7%;width:30%;height:16%;--leaf-angle:146deg}.season-leaf:nth-of-type(6){left:auto;right:-13%;bottom:25%;width:29%;height:14%;--leaf-angle:125deg}.season-leaf:nth-of-type(7){left:auto;right:-5%;bottom:40%;width:24%;height:12%;--leaf-angle:160deg}.season-leaf:nth-of-type(8){left:auto;right:2%;bottom:17%;width:24%;height:12%;--leaf-angle:180deg}
.season-pollen{position:absolute;left:calc(9% + var(--i)*11%);bottom:calc(18% + var(--i)*7%);width:3px;height:3px;border-radius:50%;background:#f6ffb9;box-shadow:0 0 9px #d7fa8759;--season-motion:season-firefly-dance 5.2s calc(var(--i)*-.35s) ease-in-out infinite}
@keyframes season-vine-grow{to{stroke-dashoffset:0}}
@keyframes season-leaf-unfurl{from{opacity:0;transform:rotate(calc(var(--leaf-angle) - 25deg)) scale(.05,.3)}to{opacity:.9;transform:rotate(var(--leaf-angle)) scale(1)}}
/* Pocket Mirror: moonlit glass separates into a floating prismatic frame. */
.season-mirror-moon{position:absolute;right:12%;top:9%;width:46px;height:46px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fff6f2,#d3c5ec 60%,#8e80b2);box-shadow:0 0 22px #e4cdff77,0 0 55px #c8abff44;--season-motion:season-moon-rise 1.4s ease-out both}
.season-mirror-moon::after{content:'';position:absolute;inset:6px;border-radius:50%;background:radial-gradient(circle at 29% 60%,#9287af44 0 7%,transparent 10%),radial-gradient(circle at 65% 30%,#9287af33 0 12%,transparent 16%)}
.season-mirror-moonlight{position:absolute;right:-5%;top:12%;height:95%;width:60%;background:linear-gradient(125deg,transparent,#dbd6ff22 42%,#9bc7ff08 60%,transparent);transform:rotate(20deg);--season-motion:season-volume-in 1.5s ease both}
.season-mirror-ring{position:absolute;inset:8% 8% 11%;border:2px solid #e1c9ff66;border-radius:50%;box-shadow:0 0 18px #beafff33,inset 0 0 24px #9c94ff26;--season-motion:season-mirror-awake 1.6s ease-out both}
.season-glass-shard{position:absolute;left:0;top:13%;width:26%;height:25%;clip-path:polygon(0 0,100% 32%,23% 100%);background:linear-gradient(125deg,#e7e8ff99,#9c95d01a 45%,#fceaff88 47%,#bfb6ff20 54%,#8bb7ef66);filter:drop-shadow(0 0 5px #c2b6ff88);--glass-angle:-12deg;--season-motion:season-glass-separate 1.2s calc(var(--i)*.06s) cubic-bezier(.16,1,.3,1) both,season-glass-float 4.5s calc(1.2s + var(--i)*.06s) ease-in-out infinite alternate}
.season-glass-shard:nth-of-type(2){left:auto;right:-2%;top:21%;width:25%;--glass-angle:140deg}.season-glass-shard:nth-of-type(3){left:3%;top:auto;bottom:5%;width:31%;height:21%;--glass-angle:34deg}.season-glass-shard:nth-of-type(4){left:auto;right:1%;top:auto;bottom:8%;width:29%;height:23%;--glass-angle:175deg}.season-glass-shard:nth-of-type(5){left:22%;top:1%;width:16%;height:15%;--glass-angle:58deg}.season-glass-shard:nth-of-type(6){left:auto;right:8%;top:1%;width:18%;height:13%;--glass-angle:108deg}.season-glass-shard:nth-of-type(7){left:1%;top:47%;width:17%;height:19%;--glass-angle:-30deg}.season-glass-shard:nth-of-type(8){left:auto;right:-1%;top:49%;width:17%;height:18%;--glass-angle:185deg}
.season-mirror-dust{position:absolute;left:calc(6% + var(--i)*11%);top:calc(17% + var(--i)*8%);width:2px;height:6px;background:#f2e9ff;box-shadow:0 0 7px #c1b9ff;--season-motion:season-data-rise 4s calc(var(--i)*-.24s) ease-out infinite}
@keyframes season-moon-rise{from{opacity:0;transform:translateY(25px) scale(.8)}to{opacity:.9;transform:none}}
@keyframes season-mirror-awake{from{opacity:0;transform:scale(.86);filter:blur(5px)}to{opacity:.6;transform:scale(1);filter:blur(0)}}
@keyframes season-glass-separate{from{opacity:0;transform:rotate(calc(var(--glass-angle) - 25deg)) scale(.65)}to{opacity:.65;transform:rotate(var(--glass-angle)) scale(1)}}
@keyframes season-glass-float{from{translate:0 0;opacity:.5}to{translate:3px -7px;opacity:.8}}
@media(width < 540px){.season-fx{border-radius:9px 9px 0 0}.season-digital-ticket{width:34%;height:24%}.season-mirror-moon{width:38px;height:38px}}
/* November keeps the measured gallery and alert gutters. Only its visual layer changes. */
#shop.spooktober-season.november-season{--spook-amber:#b0c8e0;--spook-rgb:176 200 224;--spook-cream:#e0ecf6;--accent:#b0c8e0;--accent-light:#e0ecf6}
#shop.november-season .november-campaign{border-color:#abc7dd26;background:radial-gradient(ellipse at 50% 160%,#587d9e20,transparent 70%),linear-gradient(110deg,#12161d,#16131e);min-height:70px}
#shop.november-season .november-campaign::after{background:linear-gradient(90deg,transparent,#c1d8eb70,transparent)}
#shop.november-season .november-campaign .spook-campaign-kicker{color:#a9b8c6;font-size:.5625rem;letter-spacing:.12em}
#shop.november-season .november-campaign .spook-campaign-kicker>span{background:#b5cfe3}
#shop.november-season #spook-campaign-title{font-family:'Arial Black','Segoe UI',sans-serif;font-weight:850;font-size:clamp(.95rem,1.3vw,1.35rem);line-height:1.25;letter-spacing:.085em;color:#e9f0f7;text-shadow:none}
#shop.november-season .november-mark{width:30px;height:30px;flex:none;fill:none;stroke:#bcd5e9;stroke-width:1.2;filter:drop-shadow(0 0 8px #8eb6db44)}
#shop.november-season .november-mark path:last-child{fill:#bcd5e9;stroke:none}
#shop.november-season .november-campaign .spook-campaign-description{color:#bdc5cf;font-size:.625rem;letter-spacing:.08em;white-space:nowrap}
#shop.november-season .november-campaign .spook-campaign-description>span{margin-inline:6px;color:#737b94}
#shop.spooktober-season.november-season .hero{border-bottom-color:#9eb9d32c}
#shop.spooktober-season.november-season .hero-copy .eyebrow{color:#b6c8d8}
#shop.spooktober-season.november-season .hero-copy .eyebrow>span{background:#b7cfe2;box-shadow:0 0 18px #a0caff30}
#shop.spooktober-season.november-season .hero-description strong{color:#e2eaf3}
#shop.spooktober-season.november-season .account-orbit-track{stroke:#b4cde11c}
#shop.spooktober-season.november-season .account-orbit-light{stroke:#bed8ef70;filter:drop-shadow(0 0 5px #90b9da40)}
#shop.spooktober-season.november-season #products .product-card{border-color:rgb(var(--season-rgb,176 200 224)/.24);background:linear-gradient(145deg,#1b1d25,#101118 75%)}
#shop.spooktober-season.november-season #products .season-product[data-season-active=true]{border-color:rgb(var(--season-rgb)/.86)}
#shop.spooktober-season.november-season #products .product-info{background:linear-gradient(130deg,rgb(var(--season-rgb,176 200 224)/.055),transparent 72%)}
#shop.spooktober-season.november-season #products .purchase-link{color:#c4d6e6;text-decoration-color:#9ebdd34d}
#shop.spooktober-season.november-season #products .purchase-link:hover{color:#fff;text-decoration-color:#d6eaf4}
#shop.spooktober-season.november-season #products .card-purchase{border-color:rgb(var(--season-rgb,176 200 224)/.18)}
.reward-value{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 9px;margin:0 0 11px;color:#aeb6c3;font-size:.6875rem;line-height:1.4}
.reward-value strong{color:#e7eaf0;font-size:.8125rem;font-weight:650;white-space:nowrap}
.detail-info .reward-value{margin:4px 0 15px;padding:10px 12px;border:1px solid #d0def01c;border-radius:6px;background:#c3d5e807;font-size:.75rem}
.detail-info .reward-value strong{font-size:.875rem}
[data-season-tone=ocean]{--season-color:#7bdcda;--season-rgb:123 220 218;--season-second:#e9bd72}
[data-season-tone=celtic]{--season-color:#8ee2b6;--season-rgb:142 226 182;--season-second:#e5c276}
/* Uncropped official packshots sit on a deliberate light studio surface. */
#shop.spooktober-season.november-season #products .season-product:is([data-season-tone=ocean],[data-season-tone=celtic]) .artwork{background:#fff;border-bottom:1px solid rgb(var(--season-rgb)/.3)}
#products .season-product:is([data-season-tone=ocean],[data-season-tone=celtic]) .art-backdrop{opacity:0}
#products .season-product:is([data-season-tone=ocean],[data-season-tone=celtic]) .cover{padding:14px;transform-origin:50% 50%}
#shop.spooktober-season.november-season #products .season-product:is([data-season-tone=ocean],[data-season-tone=celtic])[data-season-active=true] .cover{transform:translateY(-3px) scale(1.035);filter:drop-shadow(0 9px 6px #15333820)}
.season-detail-art:is([data-season-tone=ocean],[data-season-tone=celtic]){background:#fff}
.season-detail-art:is([data-season-tone=ocean],[data-season-tone=celtic])>img{padding:16px;transform-origin:center}
.season-detail-art:is([data-season-tone=ocean],[data-season-tone=celtic])[data-season-active=true]>img{transform:translateY(-3px) scale(1.025);filter:drop-shadow(0 9px 6px #15333820)}
.season-fx:is(.season-fx--tide-crown,.season-fx--celtic) .season-chroma{display:none}
.season-fx:is(.season-fx--tide-crown,.season-fx--celtic) .season-volume{opacity:.35;mix-blend-mode:multiply}
.season-fx:is(.season-fx--tide-crown,.season-fx--celtic) .season-lens{box-shadow:inset 0 0 35px rgb(var(--season-rgb)/.15);background:linear-gradient(180deg,transparent 74%,rgb(var(--season-rgb)/.12))}
/* Zvrať osud: a compass finds north, the king's crown rises, sea trails frame both books. */
.season-tide-light{position:absolute;inset:0;background:radial-gradient(ellipse at 0 0,#dcba7845,transparent 30%),radial-gradient(ellipse at 100% 100%,#1eabb53b,transparent 38%);--season-motion:season-volume-in 1.1s ease-out both}
.season-compass{stroke:#296e7e;stroke-width:1.2;opacity:.6;transform-box:fill-box;transform-origin:center;--season-motion:season-compass-awake 1.6s cubic-bezier(.16,1,.3,1) both}
.season-compass circle:first-child{stroke-dasharray:2 5;stroke:#9b804d}
.season-compass-rose{fill:#d7ad7133;stroke:#9b804d;stroke-width:1.5}
.season-story-crown{stroke:#a7803c;stroke-width:2;stroke-linejoin:round;stroke-linecap:round;fill:#dfb55e22;transform-box:fill-box;transform-origin:center;filter:drop-shadow(0 0 6px #dfb44b60);--season-motion:season-crown-rise 1.1s .18s cubic-bezier(.16,1,.3,1) both,season-crown-hover 4s 1.3s ease-in-out infinite alternate}
.season-tide-route{stroke:#3a9da0;stroke-width:1;stroke-dasharray:5 9;opacity:.4;--season-motion:season-route-drift 12s linear infinite}
.season-tide-fog{position:absolute;inset:69% -18% -12%;background:radial-gradient(ellipse at 26% 70%,#47b8bf45,transparent 57%),radial-gradient(ellipse at 75% 65%,#dfb56338,transparent 49%);filter:blur(10px);--season-motion:season-tide-breathe 5s ease-in-out infinite alternate}
.season-tide-waves{position:absolute;left:-35%;right:-35%;bottom:-22%;height:34%;transform:rotate(-7deg)}
.season-tide-wave{position:absolute;inset:calc(var(--i)*-8%) 0 0;border:1px solid #429aa777;border-radius:45% 55% 0 0;background:linear-gradient(#60d8d91c,transparent);--season-motion:season-tide-roll 4.5s calc(var(--i)*-.8s) ease-in-out infinite alternate}
.season-story-spark{position:absolute;left:calc(5% + var(--i)*10%);bottom:calc(5% + var(--i)*1.5%);width:3px;height:3px;background:#ad8035;border-radius:50%;box-shadow:0 0 6px #deb04b77;--season-motion:season-story-rise 4.5s calc(var(--i)*-.39s) ease-out infinite}
@keyframes season-compass-awake{from{opacity:0;transform:rotate(-115deg) scale(.4)}to{opacity:.6;transform:rotate(0) scale(1)}}
@keyframes season-crown-rise{from{opacity:0;translate:0 25px;rotate:-13deg;scale:.65}to{opacity:.8;translate:0 0;rotate:0deg;scale:1}}
@keyframes season-crown-hover{from{transform:translateY(0)}to{transform:translateY(-5px)}}
@keyframes season-route-drift{to{stroke-dashoffset:-140}}
@keyframes season-tide-roll{from{transform:translate(-4%,6%) rotate(-3deg)}to{transform:translate(5%,-12%) rotate(3deg)}}
@keyframes season-tide-breathe{from{opacity:.4;transform:translateX(-6%)}to{opacity:.8;transform:translateX(7%)}}
@keyframes season-story-rise{0%{opacity:0;transform:translate(0,7px) scale(.5)}20%{opacity:.65}to{opacity:0;transform:translate(-12px,-100px) scale(.3)}}
/* Inis: gilded Celtic knots draw into a forest ring while leaves gather at the edges. */
.season-celtic-aura{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 104%,#22a7793b,transparent 42%),radial-gradient(ellipse at 0 18%,#d1b86e2e,transparent 36%);--season-motion:season-volume-in 1.3s ease-out both}
.season-celtic-seal{stroke:#b09344;stroke-width:1;opacity:.42;stroke-dasharray:1200;stroke-dashoffset:1200;--season-motion:season-knot-reveal 2s ease-out both}
.season-celtic-seal circle:nth-child(2){stroke:#257d5e;stroke-dasharray:2 8;stroke-dashoffset:0}
.season-celtic-knots{stroke-width:2;stroke-linecap:round;stroke:#99762c}
.season-celtic-bough{stroke:#267a58;stroke-width:1.3;fill:#52a77922;opacity:.7;transform-origin:50% 100%;--season-motion:season-bough-grow 1.65s cubic-bezier(.2,.75,.2,1) both}
.season-celtic-mist{position:absolute;left:-15%;right:-15%;bottom:-14%;height:34%;background:radial-gradient(ellipse,#198d5b35,transparent 67%);filter:blur(10px);--season-motion:season-tide-breathe 5.5s ease-in-out infinite alternate-reverse}
.season-celtic-leaf{position:absolute;left:2%;bottom:calc(9% + var(--i)*9%);width:9px;height:20px;border-radius:90% 0 90% 0;background:linear-gradient(135deg,#ccd081,#34805d 72%);box-shadow:0 2px 4px #1e5c3522;--leaf-drift:14px;--season-motion:season-celtic-leaves 4.8s calc(var(--i)*-.43s) ease-in-out infinite}
.season-celtic-leaf:nth-of-type(2n){left:auto;right:2%;--leaf-drift:-14px;background:linear-gradient(135deg,#e6c46b,#67915a)}
.season-celtic-ember{position:absolute;left:calc(5% + var(--i)*12.5%);bottom:2%;width:2px;height:5px;background:#bc9444;box-shadow:0 0 6px #caae4466;--season-motion:season-story-rise 4s calc(var(--i)*-.42s) ease-out infinite}
@keyframes season-knot-reveal{from{stroke-dashoffset:1200;opacity:0}to{stroke-dashoffset:0;opacity:.42}}
@keyframes season-bough-grow{from{opacity:0;transform:scaleY(.7) translateY(70px)}to{opacity:.7;transform:scaleY(1) translateY(0)}}
@keyframes season-celtic-leaves{0%{opacity:0;transform:translate(0,30px) rotate(-25deg)}25%{opacity:.8}75%{opacity:.6}to{opacity:0;transform:translate(var(--leaf-drift),-90px) rotate(100deg)}}
/* AXE: twin neon strokes lock into an X, then a shock ring sheds prismatic fragments. */
.season-fx--axe-nova .season-volume{background:radial-gradient(ellipse at 0 35%,#00c7f34a,transparent 49%),radial-gradient(ellipse at 100% 68%,#f923cf42,transparent 49%)}
.season-axe-aura{position:absolute;inset:-10%;background:conic-gradient(from 45deg at 50% 50%,transparent 15%,#40e6ff24 24%,transparent 34% 64%,#ff31cd26 74%,transparent 85%);--season-motion:season-axe-aura 4.5s ease-in-out infinite alternate}
.season-fx--axe-nova .season-neon-x{opacity:.6}
.season-axe-shock{position:absolute;left:9%;right:9%;top:24%;height:50%;border:2px solid #6cf3ff;border-radius:50%;box-shadow:0 0 14px #09c8f36e,inset 0 0 14px #ff39c933;--season-motion:season-axe-shock 2.9s .2s ease-out infinite}
.season-axe-shock--second{border-color:#fa63dd;--season-motion:season-axe-shock 2.9s 1.65s ease-out infinite}
.season-axe-trace{stroke:#88f4ff;stroke-width:2;stroke-linecap:square;stroke-dasharray:600;stroke-dashoffset:600;filter:drop-shadow(0 0 5px #18b8e2);opacity:.65;--season-motion:season-axe-trace 1.1s .1s ease-out both}
.season-axe-chip{position:absolute;left:calc(2% + var(--i)*8.5%);bottom:calc(3% + var(--i)*2.5%);width:calc(3px + var(--i)*.5px);height:calc(13px + var(--i)*1.2px);clip-path:polygon(0 0,100% 20%,62% 100%,13% 70%);background:linear-gradient(#b6fcff,#03b7ff);--chip-drift:-18px;--season-motion:season-axe-fragments 2.3s calc(var(--i)*-.16s) cubic-bezier(.1,.5,.3,1) infinite}
.season-axe-chip:nth-of-type(2n){background:linear-gradient(#ffbbfa,#f51dbb);--chip-drift:18px}
@keyframes season-axe-aura{from{opacity:.3;transform:rotate(-7deg) scale(.9)}to{opacity:.8;transform:rotate(7deg) scale(1.05)}}
@keyframes season-axe-shock{0%{opacity:0;transform:scale(.4,.3)}15%{opacity:.52}70%,100%{opacity:0;transform:scale(1.65,1.15)}}
@keyframes season-axe-trace{to{stroke-dashoffset:0}}
@keyframes season-axe-fragments{0%{opacity:0;transform:translate(0,25px) rotate(-20deg) scale(.3)}16%{opacity:.9}to{opacity:0;transform:translate(var(--chip-drift),-200px) rotate(130deg) scale(.5)}}
/* VEDICI: three tilted energy orbits and a controlled violet burst around the pack. */
.season-fx--energy-vortex .season-volume{background:radial-gradient(ellipse at 50% 105%,#a95cff66,transparent 62%),radial-gradient(ellipse at 0 25%,#6beccc25,transparent 40%)}
.season-vortex-aura{position:absolute;inset:-10%;background:conic-gradient(from 5deg at 50% 55%,transparent 0 40deg,#c185ff2b 70deg,transparent 100deg 200deg,#70edce28 250deg,transparent 290deg);mask-image:radial-gradient(ellipse,transparent 20%,#000 55%,transparent 72%);--season-motion:season-vortex-turn 8s linear infinite}
.season-vortex-ring{position:absolute;left:1%;right:1%;top:16%;height:65%;border:2px solid #d6adff88;border-left-color:#8fffe3b3;border-right-color:transparent;border-radius:50%;box-shadow:0 0 15px #b06eff3d;--vortex-angle:-31deg;--vortex-delay:0s;--season-motion:season-vortex-orbit 4s var(--vortex-delay) ease-in-out infinite alternate}
.season-vortex-ring--second{left:5%;right:5%;top:27%;height:43%;border-color:#7be8ce88;border-top-color:transparent;--vortex-angle:29deg;--vortex-delay:-1.7s}
.season-vortex-ring--third{left:2%;right:2%;top:39%;height:22%;border-color:#d9b4ff80;border-bottom-color:transparent;--vortex-angle:-15deg;--vortex-delay:-2.7s}
.season-fx--energy-vortex .season-energy-column{opacity:.4}
.season-vortex-bolt{stroke:#e7c5ff;stroke-width:1.4;stroke-linejoin:round;filter:drop-shadow(0 0 6px #a13fee);stroke-dasharray:600;stroke-dashoffset:600;--season-motion:season-vortex-charge 2.8s .2s ease-out infinite}
.season-vortex-mote{position:absolute;left:calc(2% + var(--i)*8.6%);bottom:calc(1% + var(--i)*3%);width:4px;height:9px;border-radius:50%;background:#d7afff;box-shadow:0 0 8px #ba72ff;--mote-drift:24px;--season-motion:season-vortex-rise 3.2s calc(var(--i)*-.21s) ease-in-out infinite}
.season-vortex-mote:nth-of-type(3n){background:#8cffde;box-shadow:0 0 8px #68e6b5;--mote-drift:-24px}
@keyframes season-vortex-turn{to{transform:rotate(360deg)}}
@keyframes season-vortex-orbit{from{opacity:.2;transform:rotate(var(--vortex-angle)) scale(.86)}to{opacity:.72;transform:rotate(calc(var(--vortex-angle) + 15deg)) scale(1.05)}}
@keyframes season-vortex-charge{0%{opacity:0;stroke-dashoffset:600}30%{opacity:.6;stroke-dashoffset:0}65%,100%{opacity:0;stroke-dashoffset:0}}
@keyframes season-vortex-rise{0%{opacity:0;transform:translate(0,25px) scale(.4)}20%{opacity:.75}70%{opacity:.6}to{opacity:0;transform:translate(var(--mote-drift),-180px) scale(.25)}}
@media(width < 1100px){#shop.november-season .november-campaign .spook-campaign-kicker{font-size:.5rem;letter-spacing:.06em}#shop.november-season .november-campaign{padding-inline:18px;gap:12px}#shop.november-season .november-campaign .spook-campaign-description{font-size:.5625rem;letter-spacing:.02em}}
@media(width < 760px){#shop.november-season .november-campaign{gap:8px;padding:12px}#shop.november-season #spook-campaign-title{font-size:1rem}.november-mark{width:24px;height:24px}}
@media(prefers-reduced-motion:reduce){
  .season-product,.season-detail-art>img,#products .season-product .cover,.season-fx{transition:none!important}
  .season-fx *{animation:none!important}
  .season-product:is(:hover,:focus-within) .season-fx,.spook-monthly:is(:hover,:focus-within) .season-fx,.season-detail-art:is(:hover,:focus-within) .season-fx{opacity:.55;visibility:visible}
  .season-chroma,.season-impact-rays,.season-impact-ring,.season-hud-sweep,.season-pixel,.season-energy-spark,.season-neon-shard,.season-data-block,.season-confetti,.season-shell,.season-portal-debris{display:none}
  .season-playing-card{transform:rotate(var(--fan))}.season-leaf{transform:rotate(var(--leaf-angle))}.season-glass-shard{transform:rotate(var(--glass-angle))}.season-vine{stroke-dashoffset:0}
  #shop.spooktober-season #products .season-product[data-season-active=true],#shop.spooktober-season #products .season-product[data-season-active=true] .cover,.season-detail-art[data-season-active=true]>img{transform:none!important}
  .season-tide-waves,.season-story-spark,.season-celtic-leaf,.season-celtic-ember,.season-axe-shock,.season-axe-chip,.season-vortex-bolt,.season-vortex-mote{display:none}
  .season-celtic-seal,.season-axe-trace{stroke-dashoffset:0}
  .season-vortex-ring{transform:rotate(var(--vortex-angle));opacity:.3}
}
