/* Halloween: retain the original files and reveal only their landscape bands. */
body.hse-theme.hse-season-halloween{background:#30205b}
body.hse-theme.hse-season-halloween .hse-hero{background:transparent}
body.hse-theme.hse-season-halloween .hse-hero::before{height:auto;aspect-ratio:2172/496;background-image:url('/img/theme/seasons/halloween-header-v2.png');background-size:100% auto;background-position:center center;background-repeat:no-repeat;-webkit-mask-image:linear-gradient(#000 76%,#000e 83%,#0009 90%,#0003 97%,transparent);mask-image:linear-gradient(#000 76%,#000e 83%,#0009 90%,#0003 97%,transparent)}
body.hse-theme.hse-season-halloween::before{height:auto;aspect-ratio:2172/556;background-image:url('/img/theme/seasons/halloween-footer-v2.png');background-size:100% auto;background-position:center center;background-repeat:no-repeat;-webkit-mask-image:linear-gradient(transparent,#0003 8%,#0009 16%,#000e 23%,#000 30%);mask-image:linear-gradient(transparent,#0003 8%,#0009 16%,#000e 23%,#000 30%)}
body.hse-season-halloween.hse-season-decor .hse-topbar{border-color:#ed8734;border-bottom-color:#ff9a3d;box-shadow:0 0 4px #ffb75b,0 0 17px #f6773680,inset 0 0 12px #e9672420;background:linear-gradient(120deg,#18162cf7,#101728f7 60%,#242039f7)}
body.hse-season-halloween.hse-season-decor .cont_web{border-color:#ffb662;box-shadow:0 0 5px #ffb55b,0 0 22px #ee6e3f70,inset 0 0 0 4px #fff7}
body.hse-season-halloween.hse-season-decor .hse-topbar::after{content:'';position:absolute;right:0;top:0;width:64px;height:64px;background:url('/img/theme/seasons/web.svg') center/contain no-repeat;transform:scaleX(-1);pointer-events:none;opacity:.65;border-radius:0 14px 0 0}
body.hse-season-halloween.hse-season-decor .hse-socialbar{position:relative}
body.hse-season-halloween.hse-season-decor .hse-socialbar::after{content:'';position:absolute;left:0;top:0;width:46px;height:46px;background:url('/img/theme/seasons/web.svg') center/contain no-repeat;pointer-events:none;opacity:.45;filter:drop-shadow(0 1px 1px #533569)}
.hss-ghosts{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:30;contain:strict}
.hss-ghosts span{position:absolute;left:0;top:0;width:150px;height:150px;background:url('/img/theme/seasons/ghost.png') center/contain no-repeat;opacity:.28;animation:hss-wander 57s linear infinite;will-change:transform}
.hss-ghosts span:nth-child(2){animation-name:hss-wander-two;animation-duration:71s;animation-delay:-28s;width:115px;height:115px;opacity:.23}
.hss-ghosts span:nth-child(3){animation-duration:83s;animation-delay:-43s;width:125px;height:125px;opacity:.20}
.hss-ghosts span:nth-child(4){animation-name:hss-wander-two;animation-duration:97s;animation-delay:-65s;opacity:.25}
@keyframes hss-wander{0%{transform:translate(-160px,65vh) rotate(-12deg)}25%{transform:translate(25vw,18vh) rotate(8deg)}50%{transform:translate(58vw,65vh) rotate(-8deg)}75%{transform:translate(85vw,28vh) rotate(12deg)}100%{transform:translate(calc(100vw + 160px),55vh) rotate(-12deg)}}
@keyframes hss-wander-two{0%{transform:translate(calc(100vw + 160px),15vh) scaleX(-1) rotate(8deg)}25%{transform:translate(72vw,60vh) scaleX(-1) rotate(-10deg)}50%{transform:translate(40vw,10vh) scaleX(-1) rotate(12deg)}75%{transform:translate(12vw,65vh) scaleX(-1) rotate(-8deg)}100%{transform:translate(-160px,30vh) scaleX(-1) rotate(8deg)}}
.hss-motion-paused .hss-ghosts span{animation-play-state:paused}
.hss-pause{position:fixed;bottom:14px;left:14px;z-index:40;padding:8px 12px;border:1px solid #b8a4d8;border-radius:20px;background:#24183ee8;color:#f8edff;font:12px/1.4 system-ui,sans-serif;cursor:pointer}
.hss-preview-note{position:fixed;bottom:60px;left:50%;transform:translateX(-50%);z-index:1001;width:max-content;max-width:calc(100% - 32px);box-sizing:border-box;padding:12px 18px;background:#fff3d9;border:1px solid #f2b858;border-radius:12px;box-shadow:0 4px 20px #0003;color:#4e315a;font:14px/1.5 system-ui,sans-serif}
.hss-preview-note a{font-weight:700;color:#663d78;margin-left:8px}
.hss-panel{font:15px/1.6 system-ui,sans-serif;color:#233f59}
.hss-panel header{margin:16px 0;padding:28px;border-radius:20px;background:linear-gradient(115deg,#231943,#593274);color:#fff}
.hss-panel header span{font-size:11px;letter-spacing:2px;color:#ffcb88}.hss-panel h1{font-size:clamp(24px,3vw,34px);line-height:1.2;margin:12px 0}.hss-panel header p{margin:0;color:#e3d9ed}
.hss-panel form{padding:22px;border:1px solid #d0dceb;border-radius:18px;background:#fff}
.hss-active,.hss-success{padding:12px 18px;background:#edf8ff;border-radius:12px}.hss-success{background:#e7f5ec;color:#176334}
.hss-options{display:grid;grid-template-columns:1fr 1fr;gap:16px}.hss-option{position:relative;display:grid;gap:8px;padding:14px;border:2px solid #dae2ed;border-radius:16px;cursor:pointer}.hss-option:has(input:checked){border-color:#a15cbe;background:#fbf6fd}.hss-option input{position:absolute;top:22px;left:22px;accent-color:#7b418f;width:18px;height:18px}.hss-option strong{font-size:20px}.hss-option small{color:#6f7890}
.hss-sample{height:100px;border-radius:9px;background:#d2f1fe url('/img/theme/hse-franky-top-v4.png') center/cover}.hss-sample-halloween{background:#30205b url('/img/theme/seasons/halloween-header-v2.png') center/cover}
.hss-panel fieldset{margin:22px 0;padding:18px;border:1px solid #d9deea;border-radius:12px}.hss-panel legend{padding:0 8px;font-weight:700}.hss-panel fieldset label{display:block;padding:8px 0}.hss-panel input[type=checkbox]{accent-color:#7b418f;width:18px;height:18px;vertical-align:middle;margin-right:8px}.hss-panel fieldset p{font-size:13px;color:#68788a}
.hss-panel .hss-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px;margin-bottom:18px}.hss-panel .hss-button{display:inline-flex;align-items:center;justify-content:center;padding:12px 20px;border:1px solid #693c85;border-radius:10px;background:#693c85;color:white;text-decoration:none;font:650 14px/1.4 system-ui,sans-serif;cursor:pointer}.hss-panel .hss-button.secondary{background:#f6effa;color:#693c85}.hss-panel .hss-button:hover{background:#47215f;color:white}.hss-panel :focus-visible,.hss-pause:focus-visible{outline:3px solid #f2a537;outline-offset:3px}
@media(max-width:900px){body.hse-theme.hse-season-halloween .hse-hero{height:22.83609576vw}.hss-ghosts span{width:100px;height:100px;opacity:.18}.hss-ghosts span:nth-child(n+3){display:none}}
@media(max-width:540px){.hss-options{grid-template-columns:1fr}.hss-panel form{padding:14px}.hss-panel header{padding:20px}.hss-preview-note{font-size:12px}.hss-actions>*{flex:1}}
@media(prefers-reduced-motion:reduce){.hss-ghosts,.hss-pause{display:none}.hss-ghosts span{animation:none}}

/* Ghosts stay in the gutters and disappear behind the central page. */
.hss-ghosts{z-index:0;visibility:hidden;--hss-left:0px;--hss-right:100vw;-webkit-mask-image:linear-gradient(to right,#000 calc(var(--hss-left) - 8px),transparent var(--hss-left),transparent var(--hss-right),#000 calc(var(--hss-right) + 8px));mask-image:linear-gradient(to right,#000 calc(var(--hss-left) - 8px),transparent var(--hss-left),transparent var(--hss-right),#000 calc(var(--hss-right) + 8px))}
.hss-ghosts.hss-side-space{visibility:visible}
body.hse-season-halloween .align_web{z-index:1}
.hss-ghosts span{left:var(--hss-left);right:auto;animation-name:hss-side-left}
.hss-ghosts span:nth-child(2),.hss-ghosts span:nth-child(4){left:auto;right:calc(100% - var(--hss-right));animation-name:hss-side-right}
@keyframes hss-side-left{0%,100%{transform:translate(-70%,78vh)}25%{transform:translate(-62%,56vh)}42%{transform:translate(-68%,44vh)}50%,53%{transform:translate(10%,38vh)}62%{transform:translate(-62%,30vh)}80%{transform:translate(-70%,15vh)}}
@keyframes hss-side-right{0%,100%{transform:translate(70%,12vh) scaleX(-1)}25%{transform:translate(62%,30vh) scaleX(-1)}42%{transform:translate(68%,42vh) scaleX(-1)}50%,53%{transform:translate(-10%,50vh) scaleX(-1)}62%{transform:translate(62%,60vh) scaleX(-1)}80%{transform:translate(70%,78vh) scaleX(-1)}}

/* Anniversary: sunset, burgundy velvet and warm gold. */
.hss-sample-anniversary{background:#651b29 url('/img/theme/seasons/anniversary-header.png') center/cover}
body.hse-theme.hse-season-anniversary{background:#36162c;color:#3b1830}
body.hse-theme.hse-season-anniversary .hse-hero{background:transparent;height:max(235px,16vw)}
body.hse-theme.hse-season-anniversary .hse-hero::before{height:auto;aspect-ratio:3/1;background-image:url('/img/theme/seasons/anniversary-header.png');background-size:100% auto;background-position:center top;background-repeat:no-repeat;-webkit-mask-image:linear-gradient(#000 68%,transparent 100%);mask-image:linear-gradient(#000 68%,transparent 100%)}
body.hse-theme.hse-season-anniversary::before{height:auto;aspect-ratio:3/1;background-image:url('/img/theme/seasons/anniversary-footer.png');background-size:100% auto;background-position:center bottom;background-repeat:no-repeat;-webkit-mask-image:linear-gradient(transparent,#000 38%);mask-image:linear-gradient(transparent,#000 38%)}
body.hse-season-anniversary .hse-topbar{border:2px solid #e6b548;border-bottom-color:#ffda75;background:linear-gradient(110deg,#230711f5,#520d21f5 48%,#260914f5);box-shadow:0 0 0 3px #4a1326,0 0 0 4px #a47532,0 8px 30px #18030cab,inset 0 1px 12px #ffcc511a}
body.hse-season-anniversary .hse-topbar::before,body.hse-season-anniversary .hse-topbar::after{content:'❧';position:absolute;top:-15px;font:30px Georgia,serif;color:#f6ce69;text-shadow:0 1px 2px #5d2500;pointer-events:none}
body.hse-season-anniversary .hse-topbar::before{left:25px}body.hse-season-anniversary .hse-topbar::after{right:25px;transform:scaleX(-1)}
body.hse-season-anniversary .hse-account-toggle,body.hse-season-anniversary .hse-online-pill{border-color:#c99b5255;background:#21081080}
body.hse-season-anniversary .hse-main-nav a:hover{background:#b67c2926;color:#ffe4a0}
body.hse-season-anniversary .cont_web{border:2px solid #efc263;background:linear-gradient(135deg,#fffaf0f7,#fff2dcef);box-shadow:0 0 0 5px #691d29,0 0 0 7px #c88b35,0 0 28px #ffb63b55,inset 0 0 0 5px #fff5d6;border-radius:24px}
body.hse-season-anniversary .hse-socialbar,body.hse-season-anniversary .cont_slide_n,body.hse-season-anniversary .hpn-card,body.hse-season-anniversary .cont_cent_p,body.hse-season-anniversary .hse-home-news,body.hse-season-anniversary .hse-sidebox{border-color:#e7c795;background-color:#fffdf7;box-shadow:0 3px 9px #77451818}
body.hse-season-anniversary .hpn-home{background:linear-gradient(140deg,#fffcf4,#fff5df);border:1px solid #efd6a5;border-radius:20px;padding:16px}
body.hse-season-anniversary .hpn-heading h2{color:#4e1328}
body.hse-season-anniversary .hpn-icon,body.hse-season-anniversary .hpn-heading>a{background:#fffaf0;color:#571d32;border-color:#e9c583}
body.hse-season-anniversary .hse-socialbar{background:linear-gradient(110deg,#fffdf8,#fff5df)}
body.hse-season-anniversary .hse-footer{color:#fff0cb}body.hse-season-anniversary .hse-footer a{color:#ffe3a2}
.hss-anniversary-banner{position:absolute;top:128px;left:50%;transform:translateX(-50%);width:min(540px,76vw);z-index:4;text-align:center;pointer-events:none;filter:drop-shadow(0 5px 5px #230611a0)}
.hss-anniversary-banner:before,.hss-anniversary-banner:after{content:'';position:absolute;top:22px;width:18%;height:49px;background:linear-gradient(#961a25,#550515);border:2px solid #e9b849;z-index:-1;clip-path:polygon(0 0,100% 0,100% 100%,0 100%,20% 50%)}
.hss-anniversary-banner:before{left:-6%;transform:rotate(-7deg)}.hss-anniversary-banner:after{right:-6%;transform:scaleX(-1) rotate(-7deg)}
.hss-anniversary-banner span{display:block;padding:16px 12px;border:3px solid #f3c75b;border-radius:50% 50% 30% 30% / 16% 16% 12% 12%;background:linear-gradient(180deg,#a2232e,#6e091b 55%,#3c0615);box-shadow:inset 0 0 0 2px #a45f22,inset 0 4px 10px #ffd76818;color:#ffe28a;font:700 clamp(12px,1.7vw,23px)/1.2 Georgia,serif;letter-spacing:2px;text-shadow:0 2px 1px #420411}
@media(max-width:800px){.hss-anniversary-banner{top:120px;width:65vw}.hss-anniversary-banner span{padding:12px 6px;letter-spacing:1px}.hss-anniversary-banner:before,.hss-anniversary-banner:after{height:35px;top:18px}body.hse-theme.hse-season-anniversary .hse-hero::before{background-size:auto 280px;height:280px;aspect-ratio:auto}body.hse-season-anniversary .hpn-home{padding:10px}}
@media(max-width:540px){.hss-anniversary-banner{top:112px;width:78vw}body.hse-theme.hse-season-anniversary .hse-hero{height:205px}body.hse-season-anniversary .cont_web{border-radius:18px;box-shadow:0 0 0 3px #691d29,0 0 0 4px #c88b35}body.hse-theme.hse-season-anniversary::before{min-height:230px;background-size:auto 230px}}
body.hse-theme.hse-season-anniversary .hse-hero{min-height:140px!important}
#hss-confetti{position:fixed;inset:0;width:100%;height:100%;z-index:15;pointer-events:none}
.hss-confetti-pause{position:fixed;right:16px;bottom:16px;z-index:1002;border:1px solid #dfb853;border-radius:24px;background:#3e1028ed;color:#ffdf8c;padding:10px 17px;font:600 12px/1.4 system-ui;box-shadow:0 3px 12px #24061550;cursor:pointer}
.hss-confetti-pause:focus-visible{outline:3px solid #ffcf59;outline-offset:3px}
@media(max-width:540px){body.hse-theme.hse-season-anniversary .hse-hero{min-height:125px!important}.hss-confetti-pause{right:10px;bottom:10px}}
/* Compact anniversary ribbon. */
.hss-anniversary-banner{width:min(390px,68vw)}
.hss-anniversary-banner span{padding:11px 10px;font-size:clamp(11px,1.3vw,17px);letter-spacing:1.5px;border-width:2px}
.hss-anniversary-banner:before,.hss-anniversary-banner:after{top:16px;height:35px}
@media(max-width:800px){.hss-anniversary-banner{width:min(360px,66vw)}.hss-anniversary-banner span{padding:10px 6px;letter-spacing:1px}.hss-anniversary-banner:before,.hss-anniversary-banner:after{top:14px;height:30px}}
@media(max-width:540px){.hss-anniversary-banner{width:70vw}.hss-anniversary-banner span{font-size:11px;letter-spacing:.5px;padding:9px 5px}.hss-anniversary-banner:before,.hss-anniversary-banner:after{height:27px;top:12px}}
/* Let the ribbon overlap the top edge of the page slightly. */
.hss-anniversary-banner{margin-top:28px;z-index:6}
