:root{
  --ink:#0F0B08; --bark:#1E140D; --cream:#F2E8D8;
  --bronze:#A9713F; --ember:#D4A464; --smoke:#8A7A6A;
}
*{margin:0;padding:0;box-sizing:border-box;}
html,body{height:100%;background:var(--ink);color:var(--cream);font-family:'Manrope',sans-serif;overflow-x:hidden;}
a{color:inherit;}

.page{position:relative;min-height:100vh;display:flex;flex-direction:column;overflow:hidden;}

header{display:flex;justify-content:space-between;align-items:center;padding:5vw 6vw 0;position:relative;z-index:5;}
.brandmark{display:flex;align-items:center;gap:10px;}
.brand-o-wrap{
  width:48px;height:48px;border-radius:50%;
  border:1px solid rgba(212,164,100,.55);
  display:flex;align-items:center;justify-content:center;
  position:relative;cursor:pointer;transition:border-color .3s, transform .3s;
}
.brand-o-wrap:hover{border-color:var(--ember);transform:scale(1.04);}
.brand-o{font-family:'Playfair Display',serif;font-style:italic;font-weight:700;font-size:28px;color:var(--ember);line-height:1;}
.brand-rest{font-family:'Space Mono',monospace;font-size:12px;letter-spacing:.28em;text-transform:uppercase;color:var(--cream);}
.logo-wisp{width:40px;height:40px;}


.socials-top{display:grid;grid-template-columns:repeat(4,auto);gap:10px 14px;justify-items:center;}
.socials-top a{color:var(--smoke);display:flex;transition:color .3s;}
.socials-top svg{width:16px;height:16px;}
.socials-top a:hover{color:var(--ember);}



.hero{position:relative;flex:1;display:flex;align-items:center;justify-content:center;min-height:78vh;text-align:center;}
.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg, rgba(15,11,8,.15) 0%, rgba(15,11,8,.85) 88%);}
.hero-inner{position:relative;z-index:2;padding:0 6vw;}
.hero-name{font-family:'Fraunces',serif;font-weight:600;font-size:clamp(52px,14vw,150px);line-height:.92;letter-spacing:-.01em;transform:translate(-38vw,-28vh) scale(.94);opacity:0;}
.page.loaded .hero-name{animation:slideIn 1.15s cubic-bezier(.16,.9,.2,1) .2s forwards;}
@keyframes slideIn{to{transform:translate(0,0) scale(1);opacity:1;}}
.hero-tagline{margin:18px auto 0;max-width:36ch;color:var(--smoke);font-size:15px;line-height:1.6;opacity:0;}
.page.loaded .hero-tagline{animation:fadeup .9s .9s forwards;}
@keyframes fadeup{0%{opacity:0;transform:translateY(10px);}100%{opacity:1;transform:translateY(0);}}

.hero-foot{position:absolute;left:0;right:0;bottom:6vw;z-index:2;display:flex;justify-content:space-between;align-items:center;padding:0 5vw;}
.copyright{font-family:'Space Mono',monospace;font-size:10px;letter-spacing:.08em;color:var(--smoke);}
.explore-btn{display:flex;align-items:center;gap:14px;background:none;border:none;cursor:pointer;font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--cream);}
.explore-btn .rule{width:1px;height:22px;background:rgba(242,232,216,.35);}
.explore-btn:hover{color:var(--ember);}
.explore-btn:hover .rule{background:var(--ember);}

.menu-overlay{position:fixed;inset:0;background:rgba(15,11,8,.4);backdrop-filter:blur(2px);opacity:0;pointer-events:none;transition:opacity .4s ease;z-index:20;}
.menu-overlay.open{opacity:1;pointer-events:auto;}

.menu-panel{position:fixed;top:50%;left:50%;transform:translate(-50%,-46%) scale(.96);width:min(320px,86vw);background:rgba(15,11,8,.28);backdrop-filter:blur(3px);padding:34px 30px;opacity:0;pointer-events:none;text-align:center;transition:opacity .45s cubic-bezier(.2,.8,.2,1), transform .45s cubic-bezier(.2,.8,.2,1);z-index:21;}
.menu-panel.open{opacity:1;pointer-events:auto;transform:translate(-50%,-50%) scale(1);}
.menu-panel nav ul{list-style:none;}
.menu-panel nav ul a{display:block;padding:11px 0;font-family:'Fraunces',serif;font-size:19px;font-weight:500;text-decoration:none;border-bottom:1px solid rgba(242,232,216,.07);transition:color .3s;}
.menu-panel nav ul a:hover{color:var(--ember);}

.tour-view{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:10vw 6vw;gap:10px;}

.tour-eyebrow{font-family:'Anton',sans-serif;font-size:clamp(20px,5vw,30px);letter-spacing:.04em;color:transparent;-webkit-text-stroke:1.4px var(--cream);animation:shake 3.2s ease-in-out infinite;}
.tour-headline{font-family:'Anton',sans-serif;font-size:clamp(38px,10vw,84px);color:var(--ember);line-height:1;}
.tour-dot{width:8px;height:8px;border-radius:50%;background:var(--bronze);margin:18px auto;}
.tour-empty{font-family:'Anton',sans-serif;font-size:clamp(22px,6vw,40px);color:var(--cream);line-height:1.05;}
@keyframes shake{0%,100%{transform:translateX(0) rotate(0);}5%{transform:translateX(-3px) rotate(-1deg);}10%{transform:translateX(3px) rotate(1deg);}15%{transform:translateX(-2px);}20%{transform:translateX(0);}}
.back-home{margin-top:32px;font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--smoke);background:none;border:1px solid rgba(242,232,216,.25);padding:12px 24px;cursor:pointer;}
.back-home:hover{color:var(--ember);border-color:var(--ember);}

.wisp{position:fixed;width:70px;height:70px;border-radius:50%;pointer-events:none;z-index:40;background:radial-gradient(circle, rgba(242,232,216,.5) 0%, rgba(169,113,63,.32) 45%, rgba(169,113,63,0) 75%);filter:blur(7px);transform:translate(-50%,-50%) scale(.4);opacity:0;animation:puff 1.6s ease-out forwards;}
@keyframes puff{0%{opacity:0;transform:translate(-50%,-50%) scale(.4);}18%{opacity:.85;}100%{opacity:0;transform:translate(-50%,-120%) scale(1.8);}}

@media(max-width:600px){
  .menu-panel nav ul a{font-size:17px;padding:9px 0;}
}


.about-hero{display:flex;align-items:center;gap:6vw;flex:1;padding:8vw 6vw 4vw;}

.about-portrait-wrap{position:relative;width:38%;flex-shrink:0;opacity:0;transform:scale(1.04);}
.page.loaded .about-portrait-wrap{animation:photoIn 1.2s cubic-bezier(.16,.9,.2,1) forwards;}
@keyframes photoIn{to{opacity:1;transform:scale(1);}}
.about-portrait{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:top;display:block;}

.portrait-tag{position:absolute;left:12px;bottom:12px;background:rgba(15,11,8,.6);backdrop-filter:blur(4px);padding:8px 12px;font-family:'Space Mono',monospace;font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--cream);}

.about-copy{flex:1;border-left:1px solid rgba(242,232,216,.08);padding-left:34px;}
.about-copy .eyebrow{position:relative;padding-bottom:14px;margin-bottom:4px;opacity:0;}
.about-copy .eyebrow::after{content:"";position:absolute;left:0;bottom:0;width:32px;height:1px;background:var(--bronze);}
.page.loaded .about-copy .eyebrow{animation:fadeup .8s .3s forwards;}

.about-headline{font-family:'Fraunces',serif;font-weight:600;font-size:clamp(30px,4.4vw,48px);line-height:1.15;margin:8px 0 22px;opacity:0;}
.page.loaded .about-headline{animation:fadeup .9s .5s forwards;}

.about-body{color:var(--smoke);font-size:15px;line-height:1.75;max-width:58ch;margin-bottom:18px;opacity:2;}
.page.loaded .about-body:nth-of-type(1){animation:fadeup .9s .75s forwards;}
.page.loaded .about-body:nth-of-type(2){animation:fadeup .9s .95s forwards;}
.about-body:first-of-type::first-letter{font-family:'Fraunces',serif;font-size:52px;font-weight:600;color:var(--ember);float:left;line-height:.75;margin:4px 10px 0 0;}

.influences-block{margin-top:34px;padding-top:20px;border-top:1px solid rgba(242,232,216,.1);opacity:0;}
.page.loaded .influences-block{animation:fadeup .9s 1.15s forwards;}
.placeholder-note{margin-top:10px;font-family:'Space Mono',monospace;font-size:12px;line-height:1.6;color:var(--bronze);border:1px dashed rgba(169,113,63,.5);padding:14px;}

@media(max-width:750px){
  .about-hero{flex-direction:column;padding-top:12vw;}
  .about-portrait-wrap{width:100%;}
  .about-portrait{aspect-ratio:16/10;}
  .about-copy{border-left:none;padding-left:0;}
}

.music-hero{padding:9vw 6vw 3vw;max-width:70ch;}
.music-headline{font-family:'Fraunces',serif;font-weight:600;font-size:clamp(30px,4.4vw,46px);line-height:1.2;margin:10px 0 14px;opacity:0;}
.page.loaded .music-headline{animation:fadeup .9s .3s forwards;}
.music-sub{color:var(--smoke);font-size:15px;line-height:1.6;opacity:0;}
.page.loaded .music-sub{animation:fadeup .9s .5s forwards;}

.release-block,.catalog-block,.platforms-block{padding:0 6vw;margin-bottom:6vw;opacity:0;}
.page.loaded .release-block{animation:fadeup .9s .7s forwards;}
.page.loaded .catalog-block{animation:fadeup .9s .85s forwards;}
.page.loaded .platforms-block{animation:fadeup .9s 1s forwards;}

.release-card{margin-top:14px;padding:30px;border:1px solid rgba(242,232,216,.1);background:linear-gradient(135deg, var(--bark), rgba(30,20,13,.4));}
.release-card h3{font-family:'Fraunces',serif;font-weight:600;font-size:26px;margin-bottom:12px;}

.platform-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:14px;}
.platform-pill{padding:12px 22px;border:1px solid rgba(242,232,216,.3);font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.15em;text-transform:uppercase;text-decoration:none;color:var(--cream);transition:.3s;}
.platform-pill:hover{border-color:var(--ember);color:var(--ember);}


/* ---------- SLIDER ---------- */
.slider{position:relative;flex:1;overflow:hidden;cursor:grab;}
.slider:active{cursor:grabbing;}
.slide-track{position:absolute;inset:0;display:flex;transition:transform .7s cubic-bezier(.65,0,.35,1);}

.slide{position:relative;flex:0 0 100%;}


.slide-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}


.slide-overlay{position:absolute;inset:0;background:linear-gradient(180deg, rgba(15,11,8,.1) 0%, rgba(15,11,8,.88) 85%);}
.slide-content{position:absolute;left:6vw;bottom:calc(6vw + 60px);z-index:2;}

.slide-label{font-family:'Anton',sans-serif;font-size:clamp(38px,8vw,84px);letter-spacing:.01em;color:var(--cream);line-height:1;
  opacity:0;transform:translateY(14px);}
.slide.active .slide-label{animation:fadeup .8s .15s forwards;}
.slide-browse{display:inline-block;margin-top:14px;font-family:'Space Mono',monospace;font-size:12px;letter-spacing:.15em;text-transform:uppercase;color:var(--bronze);text-decoration:none;opacity:0;}
.slide.active .slide-browse{animation:fadeup .8s .35s forwards;}
.slide-browse .arrow{display:inline-block;transition:transform .3s;}
.slide-browse:hover{color:var(--ember);}
.slide-browse:hover .arrow{transform:translate(3px,3px);}

.slide-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:52px;height:52px;border-radius:50%;background:rgba(15,11,8,.45);backdrop-filter:blur(3px);border:1px solid rgba(242,232,216,.3);color:var(--cream);display:flex;align-items:center;justify-content:center;font-size:0;cursor:pointer;transition:background .3s,border-color .3s,transform .2s;}
.slide-nav:hover{background:var(--ember);border-color:var(--ember);color:var(--ink);transform:translateY(-50%) scale(1.06);}
.slide-nav.prev{left:5vw;}
.slide-nav.next{right:5vw;}
.slide-nav.prev::before{content:"←";font-size:24px;font-weight:700;}
.slide-nav.next::before{content:"→";font-size:24px;font-weight:700;}

@media(max-width:700px){
  .slide-nav{width:44px;height:44px;}
  .slide-nav.prev::before,.slide-nav.next::before{font-size:20px;}
}


/* ---------- LATEST RELEASE ---------- */
.listen-btn{display:inline-flex;align-items:center;gap:10px;background:var(--cream);color:var(--ink);padding:14px 26px;font-family:'Space Mono',monospace;font-size:12px;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;transition:.3s;}
.listen-btn:hover{background:var(--ember);}
.listen-btn .arrow{transition:transform .3s;}
.listen-btn:hover .arrow{transform:translateX(4px);}


.cd-slide{background:radial-gradient(ellipse at 50% 40%, #2a1c11 0%, #0f0b08 70%);cursor:pointer;}
.cd-scene{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;transition:opacity 1s ease;}
.cd-active .cd-scene{opacity:.12;}

.cd-case{width:180px;height:180px;}
.cd-disc{
  width:100%;height:100%;border-radius:50%;position:relative;
  background:
    repeating-radial-gradient(circle at 50% 50%, rgba(242,232,216,.08) 0 2px, transparent 2px 6px),
    conic-gradient(from 0deg, var(--bronze), var(--ember), var(--bark), var(--bronze));
  box-shadow:0 0 40px rgba(212,164,100,.35), inset 0 0 30px rgba(0,0,0,.4);
  animation:cdIdle 9s linear infinite;
}
.cd-disc::after{content:"";position:absolute;top:50%;left:50%;width:26px;height:26px;background:var(--ink);border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 3px rgba(242,232,216,.15);}
@keyframes cdIdle{to{transform:rotate(360deg);}}
.cd-disc.spinning{animation:cdSpin .6s linear infinite;}
@keyframes cdSpin{to{transform:rotate(360deg);}}

.cd-caption{font-family:'Anton',sans-serif;font-size:clamp(22px,5vw,32px);letter-spacing:.05em;color:var(--cream);}
.cd-subcaption{font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--bronze);animation:pulse 2.4s ease-in-out infinite;}

.cd-overlay-msg{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;opacity:0;pointer-events:none;transition:opacity 1s ease;padding:0 8vw;}
.cd-overlay-msg.show{opacity:1;pointer-events:auto;}
.cd-line1{font-family:'Fraunces',serif;font-style:italic;font-weight:500;font-size:clamp(20px,4vw,30px);color:var(--cream);margin-bottom:10px;}
.cd-line2{font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--smoke);margin-top:18px;}
.cd-line3{font-family:'Fraunces',serif;font-size:18px;color:var(--cream);margin-bottom:16px;}


.ambient-tag{position:absolute;top:8vw;left:50%;transform:translateX(-50%);z-index:3;pointer-events:none;}
.ambient-tag span{font-family:'Space Mono',monospace;font-size:9px;letter-spacing:.3em;text-transform:uppercase;color:#1B0F07;}
.ambient-tag span::after{content:"|";margin-left:2px;animation:blinkCursor .9s steps(1) infinite;}
@keyframes blinkCursor{50%{opacity:0;}}


.release-page{max-width:520px;margin:0 auto;padding:9vw 6vw 4vw;text-align:center;}

.release-cover{width:100%;aspect-ratio:1/1;margin:0 auto 24px;opacity:0;transform:scale(1.04);overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.5);}
.page.loaded .release-cover{animation:photoIn 1s cubic-bezier(.16,.9,.2,1) forwards;}
.release-cover img{width:100%;height:100%;object-fit:cover;display:block;}

.release-title{font-family:'Fraunces',serif;font-weight:600;font-size:clamp(26px,5vw,38px);opacity:0;}
.page.loaded .release-title{animation:fadeup .8s .2s forwards;}
.release-artist{font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--smoke);margin:8px 0 30px;opacity:0;}
.page.loaded .release-artist{animation:fadeup .8s .35s forwards;}

.platform-list{border-top:1px solid rgba(242,232,216,.1);}
.platform-row{
  display:flex;align-items:center;gap:16px;padding:16px 4px;
  border-bottom:1px solid rgba(242,232,216,.1);text-decoration:none;color:var(--cream);
  opacity:0;transition:background .25s;
}
.page.loaded .platform-row{animation:fadeup .6s forwards;}
.page.loaded .platform-row:nth-child(1){animation-delay:.5s;}
.page.loaded .platform-row:nth-child(2){animation-delay:.58s;}
.page.loaded .platform-row:nth-child(3){animation-delay:.66s;}
.page.loaded .platform-row:nth-child(4){animation-delay:.74s;}
.page.loaded .platform-row:nth-child(5){animation-delay:.82s;}
.page.loaded .platform-row:nth-child(6){animation-delay:.9s;}
.page.loaded .platform-row:nth-child(7){animation-delay:.98s;}
.page.loaded .catalog-card:nth-child(7){animation-delay:.88s;}
.page.loaded .catalog-card:nth-child(8){animation-delay:.96s;}

.platform-row:hover{background:rgba(242,232,216,.04);}

.platform-icon{width:38px;height:38px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:8px;}
.platform-icon svg{width:100%;height:100%;}
.platform-name{flex:1;text-align:left;font-family:'Manrope',sans-serif;font-size:15px;font-weight:500;}
.platform-action{display:flex;align-items:center;gap:8px;font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--smoke);}
.platform-action .arrow{font-size:9px;color:var(--ember);}

.catalog-page{padding:9vw 6vw 4vw;}
.eyebrow{opacity:0;}
.page.loaded .eyebrow{animation:fadeup .7s .1s forwards;}
.catalog-heading{font-family:'Fraunces',serif;font-weight:600;font-size:clamp(34px,6vw,60px);margin-top:8px;opacity:0;}
.page.loaded .catalog-heading{animation:fadeup .8s .25s forwards;}

.catalog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:24px;margin-top:34px;}
.catalog-card{text-decoration:none;color:var(--cream);opacity:0;}
.page.loaded .catalog-card{animation:fadeup .7s forwards;}
.page.loaded .catalog-card:nth-child(1){animation-delay:.4s;}
.page.loaded .catalog-card:nth-child(2){animation-delay:.48s;}
.page.loaded .catalog-card:nth-child(3){animation-delay:.56s;}
.page.loaded .catalog-card:nth-child(4){animation-delay:.64s;}
.page.loaded .catalog-card:nth-child(5){animation-delay:.72s;}
.page.loaded .catalog-card:nth-child(6){animation-delay:.8s;}

.catalog-cover{aspect-ratio:1/1;overflow:hidden;margin-bottom:12px;}
.catalog-cover img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;}
.catalog-card:hover .catalog-cover img{transform:scale(1.06);}
.catalog-card h3{font-family:'Fraunces',serif;font-weight:600;font-size:16px;line-height:1.3;}
.catalog-date{font-family:'Space Mono',monospace;font-size:10px;letter-spacing:.1em;color:var(--smoke);margin-top:4px;}

.menu-socials{display:flex;flex-wrap:nowrap;justify-content:center;align-items:center;gap:9px;margin-top:22px;}
.menu-socials a{color:var(--smoke);display:flex;flex-shrink:0;transition:color .3s;}
.menu-socials svg{width:15px;height:15px;}
.menu-socials a:hover{color:var(--ember);}

#effects {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 9999;
}

.videos-page{padding:9vw 6vw 4vw;}
.video-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:34px;}
.video-card{text-decoration:none;color:var(--cream);opacity:0;animation:fadeup .7s forwards;transition:transform .3s;}
.video-card:hover{transform:translateY(-6px);}
.video-thumb{position:relative;aspect-ratio:16/9;overflow:hidden;background:var(--bark);}
.video-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s;}
.video-card:hover .video-thumb img{transform:scale(1.05);}
.video-play{position:absolute;bottom:8px;right:8px;font-size:0;width:52px;height:37px;background:rgba(20,20,20,.8);border-radius:10px;display:flex;align-items:center;justify-content:center;transition:transform .25s,background .25s;}
.video-play::after{content:"";width:0;height:0;border-style:solid;border-width:8px 0 8px 13px;border-color:transparent transparent transparent #fff;margin-left:3px;}
.video-card:hover .video-play{transform:scale(1.08);background:#FF0000;}

.video-watch{position:absolute;bottom:10px;left:10px;font-family:'Space Mono',monospace;font-size:10px;letter-spacing:.1em;text-transform:uppercase;background:rgba(15,11,8,.7);padding:6px 10px;opacity:0;transform:translateY(6px);transition:.3s;}
.video-card:hover .video-watch{opacity:1;transform:translateY(0);}
.video-card h3{font-family:'Fraunces',serif;font-weight:600;font-size:16px;margin-top:12px;line-height:1.3;}
.video-channel{font-family:'Space Mono',monospace;font-size:10px;color:var(--smoke);margin-top:2px;}

@media(max-width:600px){
  .video-grid{gap:10px;}
  .video-play{width:42px;height:30px;border-radius:8px;}
  .video-play::after{border-width:6px 0 6px 10px;}
  .video-card h3{font-size:13px;}
}

.stage-coming-soon{position:relative;flex:1;overflow:hidden;background:radial-gradient(ellipse at 50% 0%, #241c12 0%, #0f0b08 65%);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;}

.stage-haze{position:absolute;inset:-10% -20%;background:radial-gradient(ellipse at 20% 60%, rgba(169,113,63,.12), transparent 60%),radial-gradient(ellipse at 80% 70%, rgba(242,232,216,.06), transparent 55%);filter:blur(30px);animation:hazeDrift 14s ease-in-out infinite alternate;pointer-events:none;}
@keyframes hazeDrift{0%{transform:translateX(-3%);}100%{transform:translateX(3%);}}

.spotlight{position:absolute;top:-10%;left:50%;width:260px;height:440px;transform:translateX(-50%);background:conic-gradient(from 180deg at 50% 0%, transparent 35%, rgba(212,164,100,.4) 50%, transparent 65%);filter:blur(16px);pointer-events:none;animation:spotSweep 7s ease-in-out infinite, spotPulse 3.2s ease-in-out infinite;transition:opacity 1s;}
.spotlight-2{width:180px;background:conic-gradient(from 180deg at 50% 0%, transparent 38%, rgba(242,232,216,.22) 50%, transparent 62%);animation-duration:9s,4s;animation-direction:reverse,normal;}
@keyframes spotSweep{0%,100%{transform:translateX(-58%) rotate(-4deg);}50%{transform:translateX(-42%) rotate(4deg);}}
@keyframes spotPulse{0%,100%{opacity:.55;}50%{opacity:.9;}}

.stage-floor-glow{position:absolute;bottom:8%;left:50%;width:340px;height:90px;transform:translateX(-50%);background:radial-gradient(ellipse, rgba(212,164,100,.35) 0%, rgba(212,164,100,0) 70%);filter:blur(6px);animation:spotPulse 3.2s ease-in-out infinite;pointer-events:none;transition:opacity 1s;}

.mic-stand{position:absolute;bottom:10%;left:50%;transform:translateX(-50%);width:3px;height:180px;background:linear-gradient(to bottom, rgba(15,11,8,.9), rgba(15,11,8,.6));z-index:2;pointer-events:none;transition:opacity 1s;}
.mic-stand::before{content:"";position:absolute;bottom:-6px;left:50%;transform:translateX(-50%);width:46px;height:6px;background:rgba(15,11,8,.85);border-radius:3px;}
.mic-head{position:absolute;top:-14px;left:50%;transform:translateX(-50%);width:16px;height:20px;background:radial-gradient(circle at 40% 30%, rgba(60,45,30,.95), rgba(15,11,8,.95));border-radius:50% 50% 45% 45%;}

.dust-motes{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden;transition:opacity 1s;}
.dust-motes span{position:absolute;bottom:-10px;width:3px;height:3px;border-radius:50%;background:rgba(242,232,216,.6);box-shadow:0 0 4px rgba(212,164,100,.8);animation:moteRise linear infinite;}
.dust-motes span:nth-child(1){left:38%;animation-duration:8s;animation-delay:0s;}
.dust-motes span:nth-child(2){left:45%;animation-duration:10s;animation-delay:1.5s;}
.dust-motes span:nth-child(3){left:52%;animation-duration:9s;animation-delay:.5s;}
.dust-motes span:nth-child(4){left:60%;animation-duration:11s;animation-delay:2.5s;}
.dust-motes span:nth-child(5){left:42%;animation-duration:7.5s;animation-delay:3s;}
.dust-motes span:nth-child(6){left:55%;animation-duration:9.5s;animation-delay:4s;}
.dust-motes span:nth-child(7){left:48%;animation-duration:8.5s;animation-delay:1s;}
@keyframes moteRise{0%{transform:translateY(0);opacity:0;}10%{opacity:.9;}90%{opacity:.4;}100%{transform:translateY(-320px) translateX(14px);opacity:0;}}

.stage-flash{position:absolute;inset:0;background:var(--cream);opacity:0;pointer-events:none;z-index:5;}
.stage-flash.flash{animation:flashPulse .5s ease-out;}
@keyframes flashPulse{0%{opacity:0;}15%{opacity:.55;}100%{opacity:0;}}

.stage-active .mic-stand,.stage-active .dust-motes,.stage-active .stage-floor-glow{opacity:.15;}


.stage-content{position:relative;z-index:2;text-align:center;transition:opacity 1s;}
.stage-active .stage-content{opacity:.1;}
.stage-caption{font-family:'Fraunces',serif;font-weight:600;font-size:clamp(30px,6vw,50px);color:var(--cream);margin-top:10px;}
.stage-sub{font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--bronze);margin-top:10px;animation:pulse 2.4s ease-in-out infinite;}

.stage-overlay-msg{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;text-align:center;opacity:0;pointer-events:none;transition:opacity 1s ease;padding:0 8vw;}
.stage-overlay-msg.show{opacity:1;pointer-events:auto;}
.stage-line1{font-family:'Fraunces',serif;font-style:italic;font-size:clamp(20px,4vw,28px);color:var(--cream);}
.stage-line1b{font-family:'Fraunces',serif;font-weight:600;font-size:clamp(24px,5vw,34px);color:var(--ember);margin-bottom:14px;}
.stage-line2{font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--smoke);margin-top:14px;}
.stage-line3{font-family:'Fraunces',serif;font-size:18px;color:var(--cream);margin-bottom:16px;}

.gallery-page{padding:9vw 6vw 4vw;}

.gallery-filters{display:flex;gap:12px;margin-top:26px;opacity:0;}
.page.loaded .gallery-filters{animation:fadeup .7s .3s forwards;}
.filter-btn{background:none;border:1px solid rgba(242,232,216,.25);color:var(--smoke);padding:10px 20px;font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:.3s;}
.filter-btn.active,.filter-btn:hover{border-color:var(--ember);color:var(--ember);}

.gallery-masonry{column-count:2;column-gap:14px;margin-top:30px;}
@media(min-width:700px){.gallery-masonry{column-count:3;}}
.gallery-item{break-inside:avoid;margin-bottom:14px;cursor:pointer;overflow:hidden;position:relative;opacity:0;animation:fadeup .6s forwards;}
.gallery-item:nth-child(1){animation-delay:.4s;} .gallery-item:nth-child(2){animation-delay:.46s;}
.gallery-item:nth-child(3){animation-delay:.52s;} .gallery-item:nth-child(4){animation-delay:.58s;}
.gallery-item:nth-child(5){animation-delay:.64s;} .gallery-item:nth-child(6){animation-delay:.7s;}
.gallery-item img{width:100%;display:block;transition:transform .4s;}
.gallery-item:hover img{transform:scale(1.05);}
.gallery-item.hidden{display:none;}

.lightbox{position:fixed;inset:0;background:rgba(15,11,8,.95);z-index:60;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .4s;}
.lightbox.open{opacity:1;pointer-events:auto;}
.lightbox-img{max-width:88vw;max-height:80vh;object-fit:contain;}
.lightbox-close{position:absolute;top:24px;right:24px;background:none;border:none;color:var(--cream);font-size:22px;cursor:pointer;}
.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--cream);font-size:38px;cursor:pointer;padding:10px 16px;transition:color .3s;}
.lightbox-nav:hover{color:var(--ember);}
.lightbox-prev{left:8px;} .lightbox-next{right:8px;}

.news-hero{position:relative;height:44vh;overflow:hidden;display:flex;align-items:flex-end;justify-content:center;padding-bottom:7vw;}
.news-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 20%;filter:saturate(.8) brightness(.95);}
.news-photo-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,11,8,.05) 0%,rgba(15,11,8,.15) 40%,var(--cream) 92%);}
.news-wordmark{position:relative;z-index:2;font-family:'Fraunces',serif;font-weight:500;font-size:clamp(24px,6vw,44px);letter-spacing:.3em;color:var(--cream);text-indent:.3em;}

.news-form-section{max-width:560px;margin:0 auto;padding:6vw 6vw 10vw;}
.news-headline{font-family:'Fraunces',serif;font-weight:600;font-size:clamp(28px,5vw,42px);text-align:center;}
.news-intro{color:var(--smoke);font-size:15px;line-height:1.7;text-align:center;margin:16px 0 40px;}

.news-form{display:flex;flex-direction:column;gap:22px;}
.news-form label{display:flex;flex-direction:column;gap:8px;font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--smoke);}
.req{color:var(--ember);} .opt{text-transform:none;letter-spacing:0;color:var(--smoke);opacity:.7;}
.news-form input,.news-form select{background:transparent;border:1px solid rgba(242,232,216,.3);border-radius:4px;color:var(--cream);font-family:'Manrope',sans-serif;font-size:15px;padding:14px;outline:none;transition:border-color .3s;}
.news-form input:focus,.news-form select:focus{border-color:var(--ember);}
.news-form select option{background:var(--ink);}

.whatsapp-row{display:flex;align-items:center;gap:8px;border:1px solid rgba(242,232,216,.3);border-radius:4px;padding:0 14px;}
.whatsapp-prefix{font-family:'Manrope',sans-serif;font-size:15px;color:var(--smoke);}
.whatsapp-row input{border:none;flex:1;padding:14px 0;}

.news-checkboxes{display:flex;flex-direction:column;gap:14px;margin-top:6px;}
.check-row{flex-direction:row !important;align-items:flex-start;gap:10px;text-transform:none;letter-spacing:0;font-family:'Manrope',sans-serif;font-weight:700;font-size:13px;color:var(--cream);}

.check-row input{accent-color:var(--ember);width:16px;height:16px;margin-top:2px;flex-shrink:0;}

.join-btn{margin-top:10px;background:var(--cream);color:var(--ink);border:none;padding:16px;font-family:'Space Mono',monospace;font-size:12px;letter-spacing:.15em;text-transform:uppercase;cursor:pointer;transition:background .3s;}
.join-btn:hover{background:var(--ember);}
.form-status{text-align:center;font-family:'Space Mono',monospace;font-size:12px;color:var(--bronze);min-height:18px;}


.news-light{background:var(--cream);color:var(--ink);}
.news-light .brand-rest,.news-light .copyright,.news-light .explore-btn{color:var(--ink);}
.news-light .explore-btn .rule{background:rgba(15,11,8,.35);}
.news-light .explore-btn:hover{color:var(--bronze);}
.news-light .explore-btn:hover .rule{background:var(--bronze);}
.news-light .socials-top a{color:var(--bronze);}
.news-light .socials-top a:hover{color:var(--ink);}
.news-light .news-photo-overlay{
background:linear-gradient(
180deg,
rgba(8,7,6,.18) 0%,
rgba(23,15,10,.55) 45%,
rgba(38,24,16,.82) 75%,
rgba(15,10,8,.96) 100%
);
}
.news-light .news-wordmark{color:var(--ink);}
.news-light .news-headline{color:var(--ink);}
.news-light .news-intro{color:#6b5b48;}
.news-light .news-form label{color:#8a7a68;}
.news-light .news-form input,.news-light .news-form select{color:var(--ink);border-color:rgba(15,11,8,.25);background:rgba(255,255,255,.4);}
.news-light .news-form input:focus,.news-light .news-form select:focus{border-color:var(--bronze);}
.news-light .whatsapp-prefix{color:#8a7a68;}
.news-light .whatsapp-row{border-color:rgba(15,11,8,.25);background:rgba(255,255,255,.4);}

.news-light .check-row{color:var(--ink);}
.news-light .join-btn{background:var(--ink);color:var(--cream);}
.news-light .join-btn:hover{background:var(--bronze);color:var(--ink);}



/* ================= SUCCESS PAGE ================= */
.success-page{flex:1;display:flex;align-items:center;justify-content:center;padding:8vw 6vw;position:relative;overflow:hidden;}
.success-glow{position:absolute;top:50%;left:50%;width:520px;height:520px;transform:translate(-50%,-50%);background:radial-gradient(circle, rgba(212,164,100,.16) 0%, rgba(212,164,100,0) 70%);filter:blur(10px);pointer-events:none;}
.success-card{position:relative;z-index:2;text-align:center;max-width:480px;}

.success-check-wrap{width:88px;height:88px;margin:0 auto 34px;position:relative;opacity:0;transform:scale(.7);}
.page.loaded .success-check-wrap{animation:successPop .7s cubic-bezier(.2,1.4,.4,1) .1s forwards;}
@keyframes successPop{to{opacity:1;transform:scale(1);}}
.success-check-ring{width:100%;height:100%;border-radius:50%;border:1px solid rgba(212,164,100,.5);display:flex;align-items:center;justify-content:center;box-shadow:0 0 40px rgba(212,164,100,.25);}
.success-check-ring svg{width:38px;height:38px;}
.success-check-ring path{fill:none;stroke:var(--ember);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:40;stroke-dashoffset:40;}
.page.loaded .success-check-ring path{animation:drawCheck .6s ease .55s forwards;}
@keyframes drawCheck{to{stroke-dashoffset:0;}}

.success-eyebrow{opacity:0;}
.page.loaded .success-eyebrow{animation:fadeup .8s .75s forwards;}
.success-headline{font-family:'Fraunces',serif;font-weight:600;font-size:clamp(28px,5vw,44px);line-height:1.2;margin:10px 0 20px;opacity:0;}
.page.loaded .success-headline{animation:fadeup .9s .9s forwards;}
.success-body{color:var(--smoke);font-size:15px;line-height:1.75;max-width:44ch;margin:0 auto;opacity:0;}
.page.loaded .success-body{animation:fadeup .9s 1.05s forwards;}

.success-signoff{margin-top:34px;opacity:0;}
.page.loaded .success-signoff{animation:fadeup .9s 1.2s forwards;}
.success-signoff .love{font-family:'Fraunces',serif;font-style:italic;font-size:17px;color:var(--cream);}
.success-signoff .band{font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--bronze);margin-top:6px;}

.success-home-btn{margin-top:44px;display:inline-flex;align-items:center;gap:12px;background:var(--cream);color:var(--ink);border:none;padding:16px 30px;font-family:'Space Mono',monospace;font-size:12px;letter-spacing:.15em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:background .3s,transform .2s;opacity:0;}
.page.loaded .success-home-btn{animation:fadeup .9s 1.4s forwards;}
.success-home-btn:hover{background:var(--ember);transform:translateY(-2px);}
.success-home-btn .arrow{transition:transform .3s;}
.success-home-btn:hover .arrow{transform:translateX(4px);}

/* ================= PREMIUM CONTACT PAGE ================= */
.contact-page{flex:1;padding:8vw 6vw 4vw;max-width:760px;margin:0 auto;width:100%;}
.contact-headline{font-family:'Fraunces',serif;font-weight:600;font-size:clamp(32px,6vw,54px);text-align:center;margin:10px 0 14px;opacity:0;}
.page.loaded .contact-headline{animation:fadeup .9s .25s forwards;}
.contact-sub{color:var(--smoke);font-size:15px;line-height:1.7;text-align:center;max-width:46ch;margin:0 auto 5vw;opacity:0;}
.page.loaded .contact-sub{animation:fadeup .9s .4s forwards;}

.contact-panel{border:1px solid rgba(242,232,216,.12);background:linear-gradient(160deg, rgba(30,20,13,.55), rgba(15,11,8,.2));padding:5vw 6vw;opacity:0;}
.page.loaded .contact-panel{animation:fadeup .9s .55s forwards;}
.contact-panel-label{font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--bronze);position:relative;padding-bottom:14px;margin-bottom:22px;}
.contact-panel-label::after{content:"";position:absolute;left:0;bottom:0;width:32px;height:1px;background:var(--bronze);}
.contact-panel-intro{color:var(--smoke);font-size:14.5px;line-height:1.7;margin-bottom:28px;max-width:52ch;}

.contact-rows{border-top:1px solid rgba(242,232,216,.1);}
.contact-row{display:flex;align-items:center;gap:18px;padding:20px 2px;border-bottom:1px solid rgba(242,232,216,.1);text-decoration:none;color:var(--cream);transition:background .25s,padding-left .25s;}
.contact-row:hover{background:rgba(242,232,216,.04);padding-left:10px;}
.contact-row-icon{width:42px;height:42px;border-radius:50%;border:1px solid rgba(212,164,100,.4);flex-shrink:0;display:flex;align-items:center;justify-content:center;}
.contact-row-icon svg{width:17px;height:17px;stroke:var(--ember);fill:none;stroke-width:1.8;}
.contact-row-icon svg.filled{fill:var(--ember);stroke:none;}
.contact-row-text{flex:1;text-align:left;}
.contact-row-label{font-family:'Space Mono',monospace;font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--smoke);margin-bottom:4px;}
.contact-row-value{font-family:'Manrope',sans-serif;font-size:16px;font-weight:500;}
.contact-row-arrow{font-family:'Space Mono',monospace;font-size:9px;color:var(--ember);flex-shrink:0;transition:transform .25s;}
.contact-row:hover .contact-row-arrow{transform:translateX(4px);}

.epk-block{margin-top:6vw;padding:5vw 6vw;border:1px dashed rgba(169,113,63,.5);text-align:center;opacity:0;}
.page.loaded .epk-block{animation:fadeup .9s .7s forwards;}
.epk-badge{display:inline-block;font-family:'Space Mono',monospace;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--bronze);border:1px solid rgba(169,113,63,.5);padding:6px 14px;border-radius:20px;margin-bottom:18px;}
.epk-title{font-family:'Fraunces',serif;font-weight:600;font-size:22px;margin-bottom:12px;}
.epk-body{color:var(--smoke);font-size:14.5px;line-height:1.7;max-width:48ch;margin:0 auto;}

@media(max-width:600px){
  .contact-panel,.epk-block{padding:9vw 7vw;}
  .contact-row{gap:14px;}
  .contact-row-icon{width:36px;height:36px;}
}

/* ================= NEWS CHECKBOX EMPHASIS ================= */
.check-row{font-weight:400;transition:font-weight .15s;}
.check-row input:checked ~ span{font-weight:700;}
.news-light .check-row input:checked ~ span{color:var(--ink);}

/* ================= LIVE PERFORMANCES — ADMIN-READY GRID ================= */
.live-events-grid{padding:9vw 6vw 4vw;}
.live-events-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:34px;}
.live-events-title{font-family:'Anton',sans-serif;font-size:clamp(30px,6vw,52px);color:var(--ember);}
.live-event-card{display:flex;align-items:center;gap:20px;border:1px solid rgba(242,232,216,.12);padding:22px;margin-bottom:14px;text-decoration:none;color:var(--cream);opacity:0;animation:fadeup .6s forwards;transition:border-color .25s,background .25s;}
.live-event-card:hover{border-color:var(--ember);background:rgba(242,232,216,.03);}
.live-event-date{flex-shrink:0;text-align:center;font-family:'Space Mono',monospace;border:1px solid rgba(212,164,100,.4);padding:10px 14px;min-width:64px;}
.live-event-date .day{font-family:'Anton',sans-serif;font-size:22px;color:var(--ember);line-height:1;}
.live-event-date .mon{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--smoke);margin-top:4px;}
.live-event-info{flex:1;}
.live-event-info h3{font-family:'Fraunces',serif;font-weight:600;font-size:19px;margin-bottom:4px;}
.live-event-venue{font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.05em;color:var(--smoke);}
.live-event-cta{font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--ember);flex-shrink:0;}

/* ================= TOUR — ADMIN-READY LIST ================= */
.tour-list-page{padding:9vw 6vw 4vw;}
.tour-list-heading{text-align:center;margin-bottom:6vw;}
.tour-list-eyebrow{font-family:'Anton',sans-serif;font-size:clamp(18px,4vw,26px);letter-spacing:.04em;color:transparent;-webkit-text-stroke:1.2px var(--cream);}
.tour-list-title{font-family:'Anton',sans-serif;font-size:clamp(34px,8vw,64px);color:var(--ember);line-height:1;margin-top:6px;}
.tour-date-row{display:flex;align-items:center;gap:20px;padding:22px 2px;border-bottom:1px solid rgba(242,232,216,.1);opacity:0;animation:fadeup .6s forwards;}
.tour-date-row .td-date{font-family:'Space Mono',monospace;font-size:12px;letter-spacing:.1em;color:var(--bronze);width:110px;flex-shrink:0;}
.tour-date-row .td-info{flex:1;}
.tour-date-row .td-info h3{font-family:'Fraunces',serif;font-weight:600;font-size:17px;}
.tour-date-row .td-city{font-family:'Space Mono',monospace;font-size:11px;color:var(--smoke);margin-top:3px;}
.tour-date-row .td-tix{font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--ember);text-decoration:none;border:1px solid rgba(212,164,100,.4);padding:10px 18px;flex-shrink:0;transition:.25s;}
.tour-date-row .td-tix:hover{background:var(--ember);color:var(--ink);}

@media(max-width:600px){
  .live-event-card{flex-wrap:wrap;}
  .tour-date-row{flex-wrap:wrap;gap:10px;}
  .tour-date-row .td-tix{margin-left:auto;}
}