/* Seasonal layer. Set theme to classic in season.json and rebuild to remove it. */
html.halloween body{--ink:#f7f3ff;--muted:#c6bfdc;--green:#58edba;--line:#ffffff24;--pale:#272042;--purple:#c4a1ff;background:#171333;color:var(--ink)}
.halloween .site-header{background:#171333ed;border-color:var(--line)}
.halloween .logo .logo-window{mix-blend-mode:screen}.halloween .logo-window img{filter:grayscale(1) invert(1) brightness(2)}.halloween .logo .brand-slogan{color:#c6bfdc}
.halloween .primary{color:#12372c}.halloween .outline{color:#f7f3ff;border-color:#a39bb8}.halloween .outline:hover{background:#ffffff12;border-color:var(--jade)}
.halloween .icon-button,.halloween .filter{background:#292244;color:#f7f3ff}.halloween .filter.active{background:#00e094;color:#12372c}
.halloween .benefits>span,.halloween .plan-name,.halloween .plan-card ul,.halloween .coverage-note{color:var(--muted)}
.halloween .plan-card,.halloween .product-card,.halloween .info-card,.halloween .lesson-card,.halloween .contact-form{background:#241e40;border-color:var(--line)}
.halloween .plan-featured{border-color:#00e09470;box-shadow:0 6px 36px #00e0940c}.halloween .plan-tag{color:#12372c}.halloween .plan-card:hover{box-shadow:0 12px 35px #0002}
.halloween .soft-section{background:linear-gradient(#1e183b,#211a3f)}
.halloween .community-panel,.halloween .game-card,.halloween .portal-note{background:#2b204c}.halloween .community-panel .eyebrow{color:#ceb1ff}.halloween .learn-panel{background:#222b3b}.halloween .symbol{background:#392659;color:#c4a1ff}
.halloween .guide-band>img{mix-blend-mode:normal}.halloween .learn-panel>img{mix-blend-mode:normal;border-radius:20px}
.halloween .product-art{background:#fff}.halloween .product-detail .hero-art{border-radius:24px}
.halloween .footer{background:#120f29}.halloween .footer-bottom{color:#b2a9ca}.halloween .footer .social-links a{background:#292244;color:#65efc4;border-color:var(--line)}
.halloween dialog{background:#241e40}.halloween dialog::backdrop{background:#090617b8}.halloween .assistant-links a{background:#34294d}.halloween .assistant-launcher{background:#2e2349;border-color:#756392;color:white}.halloween .assistant-launcher>img{width:60px;height:68px;margin-top:-15px}.halloween .assistant-greeting img{height:150px}
.halloween input:not([type=checkbox]),.halloween select,.halloween textarea{background:#19152e;border-color:#706582;color:#f7f3ff}.halloween ::placeholder{color:#aca2bd}.halloween .contact-copy img{z-index:0}
.halloween .wheel-pointer{color:#ffc576}.halloween .wheel>span{color:#00845e}.halloween .wheel{border-color:#584371}.halloween .qty-controls button{border-color:#706582}
.halloween :focus-visible{outline-color:#ffc576}.halloween .hero-art{border-radius:24px}.halloween .home-hero .hero-art{border-radius:0}
.halloween-stage{position:relative;width:110%;margin-left:-5%;isolation:isolate}.home-hero .halloween-stage .hero-art{width:100%;margin:0;height:auto;aspect-ratio:3/2;object-fit:contain;mask-image:radial-gradient(ellipse 72% 70% at 52% 51%,#000 45%,transparent 97%)}
.halloween .home-hero{min-height:550px;position:relative}.halloween .home-hero h1{font-size:clamp(40px,4.4vw,65px)}.season-badge{color:#ffc576!important;display:inline-flex;align-items:center;gap:8px}.season-badge:before{content:'';width:6px;height:6px;background:#ffc576;box-shadow:0 0 14px #ffb35b;border-radius:50%}
.season-controls{display:inline-flex;align-items:center;gap:8px;margin-top:23px;font-size:11px;color:#bcb1d2}.season-pause{border:1px solid #ffffff38;border-radius:24px;padding:7px 12px;min-height:35px;color:#e7def4;font-size:11px}.season-pause:hover{background:#ffffff12}
.halloween-stage .ghost{position:absolute;pointer-events:none;width:38px;height:46px;border-radius:50% 50% 20% 20%;background:linear-gradient(135deg,#fff,#d7c5fc);box-shadow:0 0 25px #d7c5fc44;opacity:0;animation:ghost-visit 18s ease-in-out infinite;z-index:2}.ghost:before{content:'';position:absolute;top:17px;left:11px;width:4px;height:7px;border-radius:50%;background:#332650;box-shadow:12px 0 #332650}.ghost:after{content:'';position:absolute;bottom:-5px;left:0;width:100%;height:12px;background:radial-gradient(circle at 6px 0,#dfd0ff 7px,transparent 8px) 0 0/13px 12px repeat-x}.ghost-one{left:5%;top:23%}.halloween-stage .ghost-two{right:8%;top:8%;width:29px;height:35px;animation-delay:8s;animation-duration:23s}.ghost-two:before{top:12px;left:7px;box-shadow:10px 0 #332650}.halloween-stage .glow{position:absolute;left:48%;top:46%;width:7%;height:9%;border-radius:50%;background:#ffb550;filter:blur(22px);opacity:.17;pointer-events:none;animation:lantern-glow 4s ease-in-out infinite}
@keyframes ghost-visit{0%,8%,60%,100%{opacity:0;transform:translate(0,10px) rotate(-6deg)}18%,45%{opacity:.65}30%{transform:translate(13px,-14px) rotate(8deg)}53%{opacity:0;transform:translate(24px,-30px) rotate(-4deg)}}
@keyframes lantern-glow{50%{opacity:.38;transform:scale(1.25)}}
.halloween .effects-paused .ghost,.halloween .effects-paused .glow,.halloween .effects-paused .guide-band>img{animation-play-state:paused}.halloween .effects-paused .ghost{opacity:0}
@media(max-width:860px){.halloween .header-inner nav{background:#211a3b}.halloween .home-hero h1{font-size:43px}.halloween .home-hero{min-height:400px}.halloween-stage{width:105%;margin-left:-3%}}
@media(max-width:600px){.halloween .home-hero{min-height:0}.halloween .home-hero h1{font-size:41px}.halloween-stage{width:calc(100% + 20px);margin:8px -10px 0}.home-hero .halloween-stage .hero-art{width:100%;max-height:none}.halloween-stage .ghost{width:28px;height:35px}.ghost:before{top:12px;left:7px;box-shadow:10px 0 #332650}.halloween-stage .ghost-two{display:none}.season-controls{margin-top:18px}.halloween .contact-copy img{opacity:.65}}
@media(prefers-reduced-motion:reduce){.halloween-stage .ghost,.halloween-stage .glow,.season-controls{display:none}}
