/* D.A.K Immersion 6 — cinematic hero, moving panels and audio-reactive radio mode */
:root{
  --beat:0;
  --mid:0;
  --air:0;
  --reactor-scale:1;
  --laser-opacity:.08;
  --scene-glow:.35;
  --immersive-scroll:0;
  --portal-scale:.72;
  --portal-rotation:0deg;
  --sets-rotation:0deg;
  --radio-rotation:0deg;
}

body:before,body:after{content:"";position:fixed;pointer-events:none;left:50%;top:52%;border-radius:50%;z-index:0;mix-blend-mode:screen}
body:before{width:74vw;aspect-ratio:1;transform:translate(-50%,-50%) scale(var(--portal-scale));border:1px solid rgba(115,92,185,.12);box-shadow:0 0 120px rgba(75,24,150,.1),inset 0 0 120px rgba(49,231,255,.025)}
body:after{width:52vw;aspect-ratio:1;transform:translate(-50%,-50%) rotate(var(--portal-rotation));background:repeating-conic-gradient(from 0deg,rgba(49,231,255,.08) 0 .25deg,transparent .25deg 7deg);-webkit-mask:radial-gradient(circle,transparent 0 48%,#000 48.5% 49.2%,transparent 49.7%);opacity:.65}
#immersion-field{position:fixed;inset:0;z-index:0;width:100%;height:100%;pointer-events:none;mix-blend-mode:screen;opacity:.72}
main,footer{position:relative;z-index:1}

.hero{isolation:isolate;background:#030208;min-height:max(100svh,760px)}
.hero__media{
  inset:-7vh -8vw;
  background-position:50% 50%;
  background-size:cover;
  filter:saturate(1.18) contrast(1.12) brightness(.82);
  animation:stageBreath 12s ease-in-out infinite alternate;
  will-change:transform,filter;
}
.hero__veil{z-index:1;background:linear-gradient(180deg,rgba(2,1,7,.52),transparent 27%,rgba(2,1,7,.08) 58%,#06040a 108%),radial-gradient(ellipse at 50% 51%,transparent 0 29%,rgba(2,1,7,.22) 56%,rgba(2,1,7,.88) 100%)}
.hero:after{z-index:8;opacity:.7;background:linear-gradient(90deg,rgba(3,2,8,.86),transparent 18%,transparent 82%,rgba(3,2,8,.86)),linear-gradient(180deg,transparent 70%,rgba(4,2,9,.7))}
@keyframes stageBreath{0%{transform:scale(1.08) translate3d(-.5%,0,0);filter:saturate(1.05) contrast(1.12) brightness(.72)}100%{transform:scale(1.16) translate3d(.5%,-1.2%,0);filter:saturate(1.32) contrast(1.16) brightness(.93)}}

.hero-fx{position:absolute;inset:0;z-index:2;overflow:hidden;pointer-events:none;perspective:1100px;transform-style:preserve-3d}
.hero-fx:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(180deg,transparent 0 3px,rgba(123,87,255,.018) 4px),radial-gradient(ellipse at 50% 52%,transparent 0 38%,rgba(5,2,12,.18) 62%,rgba(2,1,6,.52) 100%);mix-blend-mode:screen;animation:signalFlicker 6s steps(2,end) infinite}
@keyframes signalFlicker{0%,96%,100%{opacity:.55}97%{opacity:.2}98%{opacity:.8}}
.hero-fx__wash{position:absolute;inset:-20%;background:conic-gradient(from 210deg at 50% 53%,transparent 0 14%,rgba(36,222,255,.13) 17%,transparent 21% 47%,rgba(164,65,255,.16) 51%,transparent 55% 82%,rgba(49,231,255,.09) 86%,transparent 91%);filter:blur(32px);mix-blend-mode:screen;animation:washSpin 24s linear infinite}
@keyframes washSpin{to{transform:rotate(360deg) scale(1.08)}}

.hero-fx__iris{position:absolute;left:50%;top:51%;border-radius:50%;transform:translate(-50%,-50%);mix-blend-mode:screen;opacity:.42;filter:drop-shadow(0 0 18px rgba(80,210,255,.22))}
.hero-fx__iris:before,.hero-fx__iris:after{content:"";position:absolute;inset:0;border-radius:inherit}
.hero-fx__iris--outer{width:min(76vw,1080px);aspect-ratio:1;background:repeating-conic-gradient(from 0deg,rgba(49,231,255,.7) 0 .35deg,transparent .35deg 4.5deg);-webkit-mask:radial-gradient(circle,transparent 0 47%,#000 47.3% 48%,transparent 48.4% 52%,#000 52.3% 53%,transparent 53.5%);animation:irisClock 34s linear infinite}
.hero-fx__iris--inner{width:min(55vw,790px);aspect-ratio:1;background:repeating-conic-gradient(from 15deg,rgba(157,92,255,.65) 0 .7deg,transparent .7deg 9deg);-webkit-mask:radial-gradient(circle,transparent 0 45%,#000 45.5% 47%,transparent 47.5%);animation:irisCounter 22s linear infinite}
@keyframes irisClock{to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes irisCounter{to{transform:translate(-50%,-50%) rotate(-360deg)}}

.hero-fx__streaks i{position:absolute;left:50%;top:52%;width:74vw;height:2px;transform-origin:0 50%;background:linear-gradient(90deg,rgba(255,255,255,.75),rgba(49,231,255,.24) 18%,transparent 72%);filter:blur(.6px) drop-shadow(0 0 9px #31e7ff);opacity:.24;animation:streakRush 4.8s ease-in-out infinite}
.hero-fx__streaks i:nth-child(1){transform:rotate(17deg);animation-delay:-1.2s}.hero-fx__streaks i:nth-child(2){transform:rotate(163deg);animation-delay:-2.9s}.hero-fx__streaks i:nth-child(3){transform:rotate(-15deg);animation-delay:-3.7s}.hero-fx__streaks i:nth-child(4){transform:rotate(195deg);animation-delay:-.4s}
@keyframes streakRush{0%,100%{width:18vw;opacity:0}38%{opacity:.52}70%{width:84vw;opacity:.12}}

.hero-panels{position:absolute;inset:0;transform-style:preserve-3d;perspective:1000px;overflow:hidden}
.hero-panel{--side:-1;position:absolute;left:50%;top:52%;width:clamp(190px,19vw,350px);aspect-ratio:16/9;padding:13px 14px;display:flex;flex-direction:column;justify-content:flex-end;gap:3px;overflow:hidden;border:1px solid rgba(128,224,255,.48);background:linear-gradient(180deg,transparent 22%,rgba(4,2,10,.95)),var(--panel-image) center/cover;color:white;box-shadow:inset 0 0 35px rgba(0,0,0,.35),0 0 38px rgba(49,231,255,.2);opacity:0;animation:panelTunnel 19s linear infinite;animation-delay:var(--panel-delay);transform-style:preserve-3d;will-change:transform,opacity,filter}
.hero-panel--right{--side:1;border-color:rgba(180,105,255,.42)}
.hero-panel:before{content:"";position:absolute;inset:-50%;background:linear-gradient(105deg,transparent 38%,rgba(255,255,255,.32) 49%,transparent 58%);transform:translateX(-60%) rotate(8deg);animation:panelSheen 4s ease-in-out infinite}
.hero-panel span,.hero-panel b{position:relative;z-index:1;text-shadow:0 2px 12px #000}.hero-panel span{font-size:7px;letter-spacing:.24em;color:#79efff}.hero-panel b{font:600 clamp(10px,1vw,15px) Space Grotesk;letter-spacing:.05em}
@keyframes panelTunnel{
  0%{opacity:0;filter:blur(8px);transform:translate3d(calc(var(--side)*4vw),8vh,-900px) rotateY(calc(var(--side)*-67deg)) rotateZ(calc(var(--side)*-6deg)) scale(.35)}
  12%{opacity:.18}
  43%{opacity:.76;filter:blur(.4px);transform:translate3d(calc(var(--side)*27vw),-4vh,-120px) rotateY(calc(var(--side)*-39deg)) rotateZ(calc(var(--side)*-2deg)) scale(.86)}
  72%{opacity:.3;filter:blur(1.5px);transform:translate3d(calc(var(--side)*54vw),-27vh,220px) rotateY(calc(var(--side)*-20deg)) rotateZ(calc(var(--side)*2deg)) scale(1.28)}
  100%{opacity:0;filter:blur(12px);transform:translate3d(calc(var(--side)*86vw),-47vh,600px) rotateY(calc(var(--side)*-12deg)) scale(1.8)}
}
@keyframes panelSheen{50%,100%{transform:translateX(70%) rotate(8deg)}}

.hero-lasers{position:absolute;inset:0;opacity:var(--laser-opacity);mix-blend-mode:screen;transition:opacity .7s ease}
.hero-lasers:before,.hero-lasers:after{content:"";position:absolute;inset:0;opacity:.7;filter:blur(7px);animation:laserFan 5.5s ease-in-out infinite alternate}
.hero-lasers:before{background:conic-gradient(from -34deg at 12% 93%,transparent 0 5deg,rgba(49,231,255,.18) 5.7deg 6.4deg,transparent 7deg 13deg,rgba(49,231,255,.12) 14deg 15deg,transparent 16deg 360deg)}
.hero-lasers:after{background:conic-gradient(from 198deg at 88% 93%,transparent 0 6deg,rgba(157,92,255,.2) 6.5deg 7.4deg,transparent 8deg 15deg,rgba(49,231,255,.12) 15.6deg 16.5deg,transparent 17deg 360deg);animation-direction:alternate-reverse}
@keyframes laserFan{to{transform:skewX(3deg) scaleX(1.08);opacity:1}}
.hero-lasers i{--laser-base:0deg;position:absolute;left:50%;top:54%;width:90vw;height:2px;transform-origin:0 50%;transform:rotate(var(--laser-base));background:linear-gradient(90deg,#fff 0,#31e7ff 5%,rgba(49,231,255,.2) 37%,transparent 76%);filter:drop-shadow(0 0 5px #31e7ff) drop-shadow(0 0 14px #31e7ff);animation:laserSweep 4.2s ease-in-out infinite alternate}
.hero-lasers i:nth-child(1){--laser-base:-29deg;animation-delay:-.2s}.hero-lasers i:nth-child(2){--laser-base:-19deg;animation-delay:-1.1s}.hero-lasers i:nth-child(3){--laser-base:-10deg;animation-delay:-2.3s}.hero-lasers i:nth-child(4){--laser-base:-4deg;animation-delay:-3.2s}.hero-lasers i:nth-child(5){--laser-base:184deg;animation-delay:-.7s}.hero-lasers i:nth-child(6){--laser-base:191deg;animation-delay:-1.8s}.hero-lasers i:nth-child(7){--laser-base:200deg;animation-delay:-2.8s}.hero-lasers i:nth-child(8){--laser-base:211deg;animation-delay:-3.8s}
@keyframes laserSweep{to{transform:rotate(calc(var(--laser-base) + 7deg));filter:drop-shadow(0 0 7px #fff) drop-shadow(0 0 22px #9d5cff)}}

.hero__orbit{z-index:3;box-shadow:0 0 55px rgba(112,59,255,var(--scene-glow));transition:filter .08s linear;filter:brightness(calc(.85 + var(--beat)))}
.hero-reactor{z-index:5;width:clamp(210px,23vw,380px);transform:translate(-50%,-50%) rotateX(var(--rx)) rotateY(var(--ry)) scale(var(--reactor-scale));transition:transform .09s linear;filter:drop-shadow(0 0 26px rgba(121,73,255,.55)) drop-shadow(0 0 75px rgba(49,231,255,.18))}
.reactor-core{background:radial-gradient(circle at 35% 30%,#fff 0,#8f7cff 7%,#231238 29%,#050308 67%);box-shadow:inset -20px -25px 50px #020103,0 0 38px rgba(157,92,255,.65),0 0 95px rgba(49,231,255,.2)}
.hero__title{z-index:6;filter:drop-shadow(0 0 22px rgba(75,25,145,.3));mix-blend-mode:screen}
.hero__word span{display:inline-block;background:linear-gradient(180deg,#fff 12%,#d8d3ee 55%,#827a91);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 0 45px rgba(157,92,255,.24)}
.hero__word--outline span{background:none;color:transparent;text-shadow:0 0 38px rgba(49,231,255,.2)}
.hero__eyebrow,.hero__bottom{z-index:10}

.radio-playing .hero__media{animation-duration:5.8s;filter:saturate(1.45) contrast(1.16) brightness(.95)}
.radio-playing .hero-fx__iris{opacity:.82;filter:brightness(calc(1 + var(--beat))) drop-shadow(0 0 26px rgba(49,231,255,.45))}
.radio-playing .hero-panel{animation-duration:13s;box-shadow:inset 0 0 35px rgba(0,0,0,.25),0 0 35px rgba(49,231,255,.28)}
.radio-playing .hero-fx__streaks i{animation-duration:2.8s}
.radio-playing .hero-lasers{opacity:var(--laser-opacity,.55)}
.radio-playing .hero__title{filter:drop-shadow(0 0 32px rgba(157,92,255,.52))}
.radio-playing .live-dock{border-color:rgba(49,231,255,.34);box-shadow:0 18px 70px rgba(0,0,0,.55),0 0 48px rgba(49,231,255,.2),inset 0 0 25px rgba(157,92,255,.08)}
.radio-online .hero-lasers{opacity:max(var(--laser-opacity),.48)}
.radio-online .hero-fx__iris{filter:brightness(1.18) drop-shadow(0 0 22px rgba(49,231,255,.32))}
.radio-online .hero-fx__streaks i{opacity:.38}

/* Scroll-directed depth beyond the opening screen. */
.manifesto,.crew,.sets,.sound,.radio,.final-cta{overflow:hidden;isolation:isolate}
.manifesto:after,.sets:before,.radio:before{content:"";position:absolute;pointer-events:none;border-radius:50%;mix-blend-mode:screen;filter:blur(1px)}
.manifesto:after{right:-18vw;top:8%;width:62vw;aspect-ratio:1;background:repeating-conic-gradient(rgba(157,92,255,.08) 0 .4deg,transparent .4deg 9deg);-webkit-mask:radial-gradient(circle,transparent 0 41%,#000 42% 43%,transparent 44%)}
.sets:before{left:50%;top:48%;width:82vw;aspect-ratio:1;transform:translate(-50%,-50%) rotate(var(--sets-rotation));background:repeating-conic-gradient(rgba(49,231,255,.07) 0 .25deg,transparent .25deg 5deg);-webkit-mask:radial-gradient(circle,transparent 0 44%,#000 44.5% 45%,transparent 45.5%);opacity:.55}
.sets-grid{perspective:1300px;transform-style:preserve-3d}
.set-card{transform-style:preserve-3d;transform:translate3d(0,var(--card-y,0px),var(--card-z,0px)) rotateX(var(--card-rx,0deg));transition:transform .22s ease-out,border-color .35s,box-shadow .35s}
.set-card:hover{z-index:3;border-color:rgba(49,231,255,.45);box-shadow:0 40px 100px rgba(0,0,0,.48),0 0 45px rgba(87,44,170,.2)}
.set-card__image:after{content:"";position:absolute;inset:-40%;background:linear-gradient(105deg,transparent 42%,rgba(255,255,255,.23) 49%,transparent 56%);transform:translateX(-70%) rotate(7deg);transition:transform .8s ease}.set-card:hover .set-card__image:after{transform:translateX(70%) rotate(7deg)}
.artist{--artist-energy:0}.artist:after{content:"";position:absolute;left:-20%;top:50%;width:40%;height:180%;transform:translate(-110%,-50%) skewX(-18deg);background:linear-gradient(90deg,transparent,rgba(49,231,255,.11),rgba(157,92,255,.16),transparent);filter:blur(18px);transition:transform 1s cubic-bezier(.2,.8,.2,1)}.artist:hover:after,.artist.scene-active:after{transform:translate(330%,-50%) skewX(-18deg)}
.radio:before{inset:-25%;background:conic-gradient(from 210deg at 50% 55%,transparent 0 8%,rgba(49,231,255,.13) 9%,transparent 10% 28%,rgba(157,92,255,.14) 29%,transparent 30% 62%,rgba(49,231,255,.1) 63%,transparent 64%);opacity:.35;transform:rotate(var(--radio-rotation));transition:opacity .5s}
.radio-online .radio:before{opacity:.82;animation:radioDome 8s ease-in-out infinite alternate}
@keyframes radioDome{to{filter:blur(8px) brightness(1.5);transform:rotate(14deg) scale(1.08)}}
.radio-player.club:after{content:"";position:absolute;inset:-30%;pointer-events:none;background:conic-gradient(from 190deg at 50% 58%,transparent 0 4%,rgba(49,231,255,.2) 4.5% 5%,transparent 5.5% 16%,rgba(157,92,255,.2) 16.5% 17%,transparent 17.5% 32%,rgba(255,255,255,.13) 32.5% 33%,transparent 33.5%);mix-blend-mode:screen;animation:clubLasers 4.6s ease-in-out infinite alternate}
@keyframes clubLasers{to{transform:rotate(18deg) scale(1.12);filter:blur(5px) brightness(1.5)}}
.scene-active .section-head h2,.scene-active.manifesto .manifesto__title{filter:drop-shadow(0 0 35px rgba(157,92,255,.16))}

@media(max-width:900px){
  .hero{min-height:100svh}.hero__media{inset:-3vh -28vw}.hero-fx__iris--outer{width:120vw}.hero-fx__iris--inner{width:88vw}.hero-panel{width:34vw}.hero-panel:nth-child(n+5){display:none}.hero-lasers i{width:130vw}.hero-reactor{width:47vw}.hero__title{font-size:21vw}
}
@media(max-width:620px){
  .hero__media{inset:0 -54vw;background-position:50% 48%}.hero-panel{width:42vw;opacity:.35}.hero-fx__streaks{opacity:.6}.hero-fx__iris--outer{width:145vw}.hero-fx__iris--inner{width:104vw}.hero-reactor{width:54vw}.hero__title{font-size:24vw;line-height:.73}.hero-lasers{opacity:.12}
}
@media(max-width:900px){body:before{width:130vw}body:after{width:100vw}.set-card{transform:none!important}#immersion-field{opacity:.5}}

/* Exact D.A.K LIVE mark: layered depth, chromatic trails and radio pulse. */
.hero__title--brand{display:grid;place-items:center;pointer-events:none;isolation:isolate}
.hero__brand-mark{position:relative;width:min(58vw,780px);aspect-ratio:1.75;display:grid;place-items:center;transform-style:preserve-3d;will-change:transform,filter;animation:brandFloat 5.8s ease-in-out infinite}
.hero__brand-mark img{position:relative;z-index:3;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 22px 28px rgba(0,0,0,.72)) drop-shadow(0 0 24px rgba(49,231,255,.25)) drop-shadow(0 0 58px rgba(92,42,220,.28));transform:translateZ(52px)}
.hero__brand-mark:before,.hero__brand-mark:after,.hero__brand-mark i,.hero__brand-mark b{content:"";position:absolute;inset:7% 2%;background:url('assets/dak-logo-live.png') center/contain no-repeat;pointer-events:none}
.hero__brand-mark:before{z-index:1;transform:translate3d(-9px,7px,-24px) scale(1.025);filter:hue-rotate(42deg) saturate(1.8) blur(2px);opacity:.4;mix-blend-mode:screen}
.hero__brand-mark:after{z-index:2;transform:translate3d(10px,-5px,-10px) scale(1.012);filter:hue-rotate(255deg) saturate(2) blur(1px);opacity:.3;mix-blend-mode:screen}
.hero__brand-mark i{z-index:4;inset:-18%;background:conic-gradient(from 40deg,transparent 0 18%,rgba(49,231,255,.5) 20%,transparent 23% 48%,rgba(157,92,255,.42) 50%,transparent 53%);-webkit-mask:radial-gradient(circle,transparent 0 47%,#000 48% 49%,transparent 50%);animation:brandOrbit 12s linear infinite}
.hero__brand-mark b{z-index:5;inset:9% 8%;background:linear-gradient(105deg,transparent 36%,rgba(255,255,255,.7) 48%,transparent 57%);mix-blend-mode:screen;clip-path:polygon(0 35%,100% 35%,100% 67%,0 67%);animation:brandSweep 3.9s ease-in-out infinite;opacity:.42}
.radio-playing .hero__brand-mark{animation:brandBeat .72s cubic-bezier(.2,.8,.2,1) infinite alternate;filter:saturate(1.15)}
.radio-playing .hero__brand-mark:before{animation:brandTrail .36s steps(2,end) infinite alternate;opacity:.62}
.radio-online .hero__brand-mark img{filter:drop-shadow(0 22px 28px rgba(0,0,0,.72)) drop-shadow(0 0 30px rgba(49,231,255,.34)) drop-shadow(0 0 72px rgba(92,42,220,.34))}
@keyframes brandFloat{50%{transform:translate3d(0,-9px,0) rotateX(2deg) rotateY(-2deg)}}
@keyframes brandBeat{to{transform:translate3d(0,-8px,0) scale(1.025) rotateX(2deg);filter:saturate(1.35) brightness(1.07)}}
@keyframes brandOrbit{to{transform:rotate(360deg)}}
@keyframes brandSweep{0%,35%{transform:translateX(-120%) skewX(-12deg)}70%,100%{transform:translateX(120%) skewX(-12deg)}}
@keyframes brandTrail{to{transform:translate3d(-14px,5px,-25px) scale(1.035);filter:hue-rotate(80deg) saturate(2.2) blur(2px)}}
@media(max-width:900px){.hero__brand-mark{width:min(92vw,620px);aspect-ratio:1.45}.hero__brand-mark i{inset:-8%}.hero__title--brand{margin:auto 0 14vh}}
@media(prefers-reduced-motion:reduce){.hero-panel,.hero-fx__iris,.hero-fx__wash,.hero-fx__streaks i,.hero-lasers i,.hero__media{animation:none!important}.hero-panel{display:none}}
