/* Temporary semantic tokens and components; original styles stay intact. */
html.halloween-season{--bg:#1a100e;--text:#fff4eb;--muted:#d7bbaa;--line:rgba(255,205,166,.24);--glass:rgba(91,48,32,.44);--glass-strong:rgba(121,67,43,.65);--accent:#ffbe87;--blue:#ffbe87;--cyan:#ffd3a4;--violet:#ffbe87;--glass-shadow:inset 0 1px 0 #fff1d738,inset 0 -1px 0 #ffbd8612,0 18px 52px #1b07042e}
html.halloween-season body{background:radial-gradient(ellipse at 10% 0%,#a04a242e,transparent 55%),radial-gradient(ellipse at 95% 45%,#bd5f2226,transparent 60%),var(--bg);color:var(--text)}
.halloween-season .glass{background:linear-gradient(135deg,#ffe3ba1f,#ffb08008 58%),var(--glass);border-color:var(--line);box-shadow:var(--glass-shadow)}
.halloween-season .topbar,.halloween-season .topbar.scrolled{background:linear-gradient(135deg,#ffd3ad19,#b9653610),#241611b8;border-color:var(--line)}
.halloween-season .primary-btn{background:linear-gradient(125deg,#ffe4be,#ffba80 65%,#efa58b);color:#3a1c12;border-color:#fff0d5a6;box-shadow:inset 0 1px 0 #fff9e8bf,inset 0 -2px 0 #9b502e2e,0 8px 24px #e6834033}
.halloween-season .primary-btn:hover{background:linear-gradient(125deg,#fff0d4,#ffcd9c 65%,#ffc2a2)}
.halloween-season .secondary-btn{background:linear-gradient(135deg,#ffddbd24,#ffc69a0b);border-color:#ffd2aa4d;color:var(--text)}
.halloween-season .secondary-btn:hover{background:#ffc89b2e;border-color:#ffe4c980}
.halloween-season input,.halloween-season textarea,.halloween-season select,.halloween-season .rich-editor{background:#261710a3;border-color:#deb79766;color:var(--text)}
.halloween-season input::placeholder,.halloween-season textarea::placeholder{color:#c9ae99}
.halloween-season .auth-modal{background:linear-gradient(135deg,#ffca9e24,#cf825c17),#291b16f2}
.halloween-season .category-btn.active,.halloween-season .wiki-item-icon,.halloween-season .stat-icon,.halloween-season .notice-icon{background:#e9a46e24;color:#ffcf9f}
.halloween-season .hero.hero-with-assets h1{color:#fff5e9;text-shadow:0 2px 32px #ffbf8a1f}.halloween-season .hero h2{color:#ffe0bd}
.halloween-season .join-method-card,.halloween-season .join-method-card:nth-child(2){background:var(--glass)}
.halloween-season .pass-stat{background:linear-gradient(120deg,#c77b3c40,#c8755e36);border-color:#ffc39642}
.halloween-season .pass-checkout-status{color:var(--muted)}
/* The campaign uses the same rounded, layered glass as the main site. */
html.halloween-landing{--campaign-surface:rgba(93,51,34,.28);--campaign-border:rgba(255,219,186,.25);--campaign-shadow:inset 0 1px 0 rgba(255,245,225,.35),inset 0 -1px 0 rgba(255,192,140,.07),0 24px 70px rgba(17,5,3,.3)}
.halloween-landing body{background:#180f0d;color:#fff3e7}
.halloween-landing .night{background:radial-gradient(ellipse at 85% 15%,#e8792638,transparent 50%),radial-gradient(ellipse at 5% 80%,#a34a362b,transparent 60%),#180f0d}
.halloween-landing .night:before{background:linear-gradient(90deg,#1b110fe0,#24130f99),url('/assets/halloween-20261025/harvest.jpg') center/cover;opacity:.5}
.halloween-landing header{padding:24px 30px;margin-top:22px;border:1px solid var(--campaign-border);border-radius:25px;background:linear-gradient(135deg,#ffdda31c,#ffcca005),#3d241a66;backdrop-filter:blur(26px) saturate(150%);-webkit-backdrop-filter:blur(26px) saturate(150%);box-shadow:var(--campaign-shadow);color:#e8c8ab}
.halloween-landing .hero{gap:68px;padding:54px 12px 48px}.halloween-landing h1{font-weight:700;letter-spacing:-.055em;font-size:clamp(58px,7vw,98px);line-height:1.03}.halloween-landing h1 em{color:#ffc18e}.halloween-landing .eyebrow{color:#edb78a}.halloween-landing .intro{color:#ffdec2}.halloween-landing .description{color:#d5bca8}
.halloween-landing .offer{border:1px solid var(--campaign-border);border-radius:26px;background:linear-gradient(135deg,#ffe1b924,#ec9d6709),var(--campaign-surface);padding:23px 26px;box-shadow:var(--campaign-shadow);backdrop-filter:blur(28px) saturate(155%);-webkit-backdrop-filter:blur(28px) saturate(155%)}
.halloween-landing .offer-label{color:#e1b997}.halloween-landing .offer-main>span{color:#ffd4aa;background:#ffbe8c1a;border:1px solid #ffd2ac40;border-radius:18px;padding:5px 12px;font-size:27px}.halloween-landing .offer strong{color:#fff0da}.halloween-landing .offer p{color:#efd2b7}.halloween-landing .offer small{color:#c7a98e}
.halloween-landing figure{transform:rotate(1.5deg);padding:12px;border:1px solid var(--campaign-border);border-radius:34px;background:linear-gradient(135deg,#ffdfb72b,#ffc89508),#3e261e60;box-shadow:var(--campaign-shadow);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}
.halloween-landing figure:before{display:none}.halloween-landing figure img{border-radius:24px;filter:saturate(.85) contrast(1.05) brightness(.82);box-shadow:none}.halloween-landing figure:after{inset:12px;border-radius:24px}.halloween-landing figcaption{bottom:35px;left:35px}
.halloween-landing footer{border:0;padding:0 0 12px}.halloween-landing footer a{min-height:54px;border-radius:17px;padding:0 24px;box-shadow:inset 0 1px 0 #fff7e52e,0 8px 24px #190a0626;transition:background .2s,transform .2s}
.halloween-landing .site{background:linear-gradient(135deg,#ffe5c424,#ffc28c0b);border:1px solid #ffd4b04d;backdrop-filter:blur(18px);color:#ffe7ce}.halloween-landing .site span{color:#ffc592}
.halloween-landing .buy{background:linear-gradient(125deg,#ffe5bf,#ffc18b 65%,#f2ad91);border-color:#ffedd4b3;color:#3c2014;box-shadow:inset 0 1px 0 #fff9ebbf,0 8px 30px #e9964c2e}.halloween-landing .buy:hover{background:linear-gradient(125deg,#fff0d5,#ffd2a6 65%,#ffc6aa);transform:translateY(-2px)}.halloween-landing .site:hover{background:#ffddbb26;transform:translateY(-2px)}.halloween-landing .fine{color:#b99c85;padding:0 8px}
@media(max-width:760px){.halloween-landing header{padding:17px 20px;margin-top:16px;border-radius:22px}.halloween-landing .hero{padding:35px 0;gap:30px}.halloween-landing figure{border-radius:28px;padding:9px;transform:none}.halloween-landing figure img,.halloween-landing figure:after{border-radius:20px}.halloween-landing figure:after{inset:9px}.halloween-landing footer{gap:12px}.halloween-landing footer a{font-size:11px;padding:0 15px;gap:10px}.halloween-landing .offer{padding:20px;border-radius:23px}.halloween-landing h1{font-size:clamp(52px,12vw,82px)}}
@media(max-width:380px){.halloween-landing footer{align-items:stretch}.halloween-landing footer a{flex:1;justify-content:center;font-size:10px;padding:0 10px}.halloween-landing .offer-main{gap:8px}.halloween-landing .offer strong{font-size:20px}}
@media(prefers-reduced-motion:reduce){.halloween-landing footer a{transition:none}}

.pass-promo-banner{padding:20px 24px;margin:0 0 28px;border-radius:22px}.pass-promo-banner strong{display:block;font-size:16px;line-height:1.5}.pass-promo-banner p{margin:7px 0 0;color:var(--muted);font-size:14px;line-height:1.6}

/* Keep the campaign image in the background; foreground art stays sharp. */
.halloween-landing .night:before{inset:-32px;filter:blur(18px);transform:scale(1.035)}
