/* K-pop Demon Hunters: a separate theme from the existing K-pop party. */
.huntrix-characters,.demonhunters-title-derpy{display:none}
.hero-section.theme-demonhunters,.theme-demonhunters .hero{position:relative;min-height:720px;padding:0;overflow:hidden;color:#fff7ff;background:linear-gradient(180deg,rgba(20,16,47,.08) 20%,rgba(20,16,47,.9) 96%),url("assets/themes/demonhunters/concert-city-background.png") center/cover no-repeat}
.hero-section.theme-demonhunters:before,.hero-section.theme-demonhunters:after,.theme-demonhunters .hero:before,.theme-demonhunters .hero:after{display:none}
.hero-section.theme-demonhunters .hero-grid{position:relative;display:block;min-height:720px}
.hero-section.theme-demonhunters .theme-art-demonhunters,.theme-demonhunters .art{position:absolute;z-index:3;top:8px;right:0;width:58%;height:600px;margin:0;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none;overflow:visible;transform:none}
.theme-demonhunters .art>*{display:none}
.theme-demonhunters .art:before,.theme-demonhunters .art:after{display:none}
.hero-section.theme-demonhunters .huntrix-characters,.theme-demonhunters .huntrix-characters{display:block;position:absolute;z-index:4;left:0;bottom:0;width:100%;height:100%;object-fit:contain;transform-origin:50% 90%;animation:huntrixGentleFloat 6s ease-in-out infinite}
.hero-section.theme-demonhunters .hero-grid>div:last-child{position:absolute;z-index:7;left:0;bottom:56px;width:61%;text-align:left}
.hero-section.theme-demonhunters .hero-title,.theme-demonhunters .hero h2{color:#fff7ff;max-width:740px;margin:.55rem 0 1rem;font-size:clamp(3.4rem,6.8vw,6.4rem);line-height:.94;letter-spacing:-.035em;text-shadow:0 3px 20px rgba(9,6,24,.8)}
.hero-section.theme-demonhunters .hero-description,.theme-demonhunters .hero-copy p{color:#fff7ff;max-width:540px;font-weight:500;line-height:1.5;text-shadow:0 2px 14px #100c29}
.hero-section.theme-demonhunters .eyebrow,.theme-demonhunters .hero-copy small{color:#f3baf0;opacity:1;font-weight:800}
.hero-section.theme-demonhunters .demonhunters-title-derpy{display:inline-block;width:.8em;height:.7em;object-fit:contain;margin-left:.16em;vertical-align:-.03em;filter:drop-shadow(0 2px 5px #09061866)}
.hero-section.theme-demonhunters .music-pill{background:#29204fb8;color:#fff7ff;border:1px solid #e8b8ff44}
.hero-section.theme-demonhunters .hero-image-wrap{position:absolute;z-index:5;top:28px;right:0;width:50%;max-width:460px}
.event-countdown.theme-demonhunters{color:#fff7ff;background:linear-gradient(135deg,#241a50,#744ac0);box-shadow:0 16px 38px rgba(58,36,109,.24)}
.event-countdown.theme-demonhunters .countdown-units>div{background:#ffffff22;border:1px solid #ffffff33}
.theme-demonhunters{--tp:#7955ca;--ts:#e878b6;--ta:#f7c94c}
.theme-demonhunters .hero{min-height:610px}
.theme-demonhunters .art{height:500px;width:61%;top:0}
.theme-demonhunters .hero-copy{position:absolute;z-index:7;left:32px;bottom:36px;width:61%;text-align:left}
.theme-demonhunters .hero h2{font-size:clamp(42px,6vw,66px)}
.theme-demonhunters .hero-title-line{display:flex;align-items:flex-end;gap:8px}
.theme-demonhunters .hero-title-line .demonhunters-title-derpy{display:block;flex:0 0 auto;object-fit:contain;width:52px;height:44px;margin:0 0 10px}
@keyframes huntrixGentleFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@media(max-width:767.98px){
 .hero-section.theme-demonhunters,.hero-section.theme-demonhunters .hero-grid{min-height:780px}
 .hero-section.theme-demonhunters .container{padding-inline:24px}
 .hero-section.theme-demonhunters .theme-art-demonhunters{top:8px;right:-4%;width:108%;height:455px}
 .hero-section.theme-demonhunters .hero-grid>div:last-child{bottom:44px;width:100%}
 .hero-section.theme-demonhunters .hero-title{font-size:clamp(3rem,13vw,4.7rem)}
 .hero-section.theme-demonhunters .hero-description{font-size:1rem}
 .hero-section.theme-demonhunters .hero-image-wrap{top:26px;right:8%;width:84%}
 .theme-demonhunters .hero{min-height:730px}
 .theme-demonhunters .art{top:8px;right:0;width:100%;height:440px}
 .theme-demonhunters .hero-copy{left:24px;right:24px;bottom:34px;width:auto}
 .theme-demonhunters .hero h2{font-size:clamp(42px,12vw,58px)}
}
@media(prefers-reduced-motion:reduce){.hero-section.theme-demonhunters .huntrix-characters,.theme-demonhunters .huntrix-characters{animation:none}}

@media(max-width:767.98px){
 .hero-section.theme-demonhunters .theme-art-demonhunters{top:auto;bottom:260px;height:460px;right:0;width:100%}
 .theme-demonhunters .hero .art{top:auto;bottom:240px;height:440px;right:0;width:100%}
 .hero-section.theme-demonhunters .theme-art-demonhunters img,.theme-demonhunters .hero .art img{object-position:center bottom;bottom:0;top:auto}
}

/* Compact mobile scene: artwork followed by copy, with room for every title. */
@media(max-width:767.98px){
 .hero-section.theme-demonhunters,.theme-demonhunters .hero{min-height:0;background-position:center 65%}
 .hero-section.theme-demonhunters .hero-grid{min-height:0;display:flex;flex-direction:column;gap:16px;padding-block:24px 32px}
 .hero-section.theme-demonhunters .theme-art-demonhunters,
 .theme-demonhunters .hero .art,
 body.builder-preview .invitation.theme-demonhunters .hero .art{position:relative;top:auto;bottom:auto;right:auto;width:100%;height:clamp(260px,90vw,360px);flex:none;margin:0}
 .hero-section.theme-demonhunters .hero-grid>div:last-child{position:relative;left:auto;bottom:auto;width:100%}
 .hero-section.theme-demonhunters .hero-title{font-size:clamp(2.65rem,11.5vw,3.2rem)}
 .theme-demonhunters .hero{display:flex;flex-direction:column;gap:16px;padding:24px 24px 32px}
 .theme-demonhunters .hero .art{order:0}
 .theme-demonhunters .hero-copy{position:relative;left:auto;right:auto;bottom:auto;width:100%;order:1}
 .hero-section.theme-demonhunters .hero-image-wrap{position:relative;top:auto;right:auto;width:100%;max-width:360px;margin-inline:auto}
 .hero-section.theme-demonhunters .hero-image{max-height:360px;object-fit:contain}
}
