/* modern.css */
:root{--bg:#07090c;--panel:#11151b;--panel2:#171c23;--line:#2a3039;--text:#f4f6f8;--muted:#a6afb9;--red:#dc2228;--red2:#ff4248;--green:#8aaa3a;--max:1440px;--radius:22px;--shadow:0 24px 70px rgba(0,0,0,.36)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:radial-gradient(circle at 15% 0,rgba(138,170,58,.09),transparent 28%),var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.65}
img{max-width:100%}
a{color:inherit}
button,input{font:inherit}
.site-header{position:sticky;top:0;z-index:50;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:min(var(--max),calc(100% - 40px));min-height:174px;margin:auto;padding:8px 0 12px;background:rgba(7,9,12,.9);backdrop-filter:blur(18px)}
.site-header:before{content:"";position:fixed;z-index:-1;left:0;right:0;top:0;height:174px;background:rgba(7,9,12,.9);border-bottom:1px solid var(--line)}
.brand{display:block;width:290px;height:122px}
.brand img{width:100%;height:100%;object-fit:contain}
.main-nav{display:flex;align-items:center;justify-content:center;gap:7px}
.main-nav a{padding:10px 13px;border-radius:10px;color:#c7cdd4;text-decoration:none;font-size:.9rem;font-weight:700}
.main-nav a:hover,.main-nav a.active{background:var(--panel2);color:#fff}
.main-nav .nav-cta{background:var(--red);color:#fff}
.main-nav .nav-cta:hover{background:var(--red2)}
.nav-toggle{display:none;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:#fff;padding:10px 14px}
main{width:min(var(--max),calc(100% - 40px));margin:auto}
.hero{min-height:620px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:50px;padding:70px clamp(26px,6vw,76px);border:1px solid var(--line);border-radius:30px;background:linear-gradient(115deg,rgba(13,16,21,.98),rgba(19,24,27,.9)),radial-gradient(circle at 80% 40%,rgba(220,34,40,.28),transparent 34%);box-shadow:var(--shadow);overflow:hidden}
.eyebrow{margin:0 0 10px;color:var(--red2);font-size:.76rem;font-weight:900;letter-spacing:.17em;text-transform:uppercase}
.hero h1,.team-intro h1{margin:0;font-size:clamp(3.6rem,8vw,7.4rem);line-height:.85;letter-spacing:-.06em;text-transform:uppercase}
.hero h1 span{color:transparent;-webkit-text-stroke:1px #c3cad2}
.hero-lead{max-width:650px;margin:27px 0 32px;color:var(--muted);font-size:1.08rem}
.listener-stats{display:flex;gap:12px;margin:-8px 0 27px}
.listener-stats>div{min-width:130px;padding:12px 15px;border:1px solid var(--line);border-radius:14px;background:rgba(7,9,12,.72);box-shadow:inset 0 1px rgba(255,255,255,.04)}
.listener-stats span{display:block;color:#fff;font-size:1.65rem;font-weight:950;line-height:1}
.listener-stats small{display:block;margin-top:6px;color:var(--muted);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.radio-player{margin:25px 0 26px;padding:17px;border:1px solid rgba(255,66,72,.48);border-radius:18px;background:linear-gradient(135deg,rgba(220,34,40,.16),rgba(7,9,12,.92) 50%,rgba(138,170,58,.1));box-shadow:0 16px 34px rgba(0,0,0,.28),inset 0 1px rgba(255,255,255,.05)}
.twitch-column>.radio-player{margin:0 0 20px}
.radio-player-topline{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:13px;color:var(--muted);font-size:.7rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.radio-live-badge{display:inline-flex;align-items:center;gap:8px;color:#fff}.radio-live-badge i{width:8px;height:8px;border-radius:50%;background:var(--red2);box-shadow:0 0 0 5px rgba(255,66,72,.14);animation:liveBlink 1.6s ease-in-out infinite}
.radio-player-main{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:15px}.radio-play{display:grid;place-items:center;width:58px;height:58px;border:0;border-radius:50%;background:linear-gradient(145deg,var(--red2),#9f1015);color:#fff;cursor:pointer;box-shadow:0 10px 25px rgba(220,34,40,.32)}.radio-play:hover{transform:scale(1.04)}.radio-play span{font-size:1.15rem;line-height:1;margin-left:3px}.radio-play.is-playing span{margin-left:0;font-size:1rem;font-weight:950}
.radio-player-copy{min-width:0}.radio-player-copy strong,.radio-player-copy span{display:block}.radio-player-copy strong{font-size:1.05rem;letter-spacing:.03em}.radio-player-copy span{color:var(--muted);font-size:.82rem}
.radio-volume{display:grid;gap:5px;width:115px;color:var(--muted);font-size:.65rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.radio-volume input{width:100%;accent-color:var(--red2);cursor:pointer}
.button-row,.contact-actions{display:flex;gap:12px;flex-wrap:wrap}
.button,.broadcast-form button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;padding:0 20px;border:1px solid transparent;border-radius:12px;text-decoration:none;font-weight:850;cursor:pointer}
.button.primary,.broadcast-form button{background:var(--red);color:#fff}
.button.primary:hover,.broadcast-form button:hover{background:var(--red2)}
.button.secondary{border-color:var(--line);background:transparent;color:#fff}
.button.secondary:hover{background:var(--panel2)}
.hero-art{justify-self:center;width:min(340px,33vw);aspect-ratio:1;border:2px solid #343b44;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,#202630 0 13%,#07090c 14% 20%,#1b2028 21% 23%,#050608 24% 100%);box-shadow:0 0 0 22px rgba(255,255,255,.025),0 35px 70px #000;animation:spin 15s linear infinite}
.hero-art span{font-size:clamp(1.5rem,4vw,3rem);font-weight:950;letter-spacing:.12em;color:var(--red2)}
.twitch-live-card{align-self:center;min-width:0;overflow:hidden;border:1px solid #6441a5;border-radius:20px;background:#050507;box-shadow:0 28px 60px rgba(0,0,0,.48),0 0 0 7px rgba(145,71,255,.08)}
.twitch-column{align-self:center;min-width:0}
.twitch-column .twitch-live-card{width:100%}
.twitch-ad-banner{margin-top:20px}
.twitch-live-head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;padding:0 16px;border-bottom:1px solid #3a285a;background:linear-gradient(90deg,rgba(145,71,255,.34),rgba(220,34,40,.12))}
.twitch-live-head span{display:flex;align-items:center;gap:9px;font-size:.76rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.twitch-live-head i{width:8px;height:8px;border-radius:50%;background:#bf94ff;box-shadow:0 0 0 5px rgba(145,71,255,.2);animation:liveBlink 1.6s ease-in-out infinite}
.twitch-live-head a{color:#e8dcff;text-decoration:none;font-size:.78rem;font-weight:750}
.twitch-live-head a:hover{color:#fff}
.twitch-feed{height:430px;background:#000}
.twitch-feed iframe{display:block;width:100%;height:100%;border:0}
@keyframes liveBlink{50%{opacity:.35;transform:scale(.82)}}
.section{padding:90px 0}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:22px;margin-bottom:28px}
.section h2,.team-intro h1{margin:0;font-size:clamp(2.3rem,5vw,4.8rem);line-height:.96;letter-spacing:-.045em;text-transform:uppercase}
.live-pill{display:inline-flex;align-items:center;gap:8px;padding:9px 13px;border:1px solid rgba(220,34,40,.45);border-radius:999px;background:rgba(220,34,40,.1);font-size:.76rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase}
.live-pill i{width:8px;height:8px;border-radius:50%;background:var(--red2);box-shadow:0 0 0 5px rgba(220,34,40,.14)}
.studio-box{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow)}
.studio-box>.section-heading{margin:0;padding:22px 24px;border-bottom:1px solid var(--line);background:linear-gradient(90deg,#171c23,#0d1116)}
.broadcast-grid{display:grid;grid-template-columns:minmax(0,1fr) 350px;grid-template-areas:"youtube chat";gap:0}
.broadcast-grid .video-panel{grid-area:youtube}
.broadcast-grid .chat-panel{grid-area:chat}
.studio-box .panel{border:0;border-radius:0}
.studio-box .chat-panel{border-left:1px solid var(--line)}
.live-ad-banner{display:block;width:100%;margin:24px auto 0;overflow:hidden;border:1px solid #414955;border-radius:14px;background:#0b0e12;box-shadow:0 14px 34px rgba(0,0,0,.34);transition:transform .2s ease,border-color .2s ease}
.live-ad-banner:hover{transform:translateY(-3px);border-color:var(--red2)}
.live-ad-banner img{display:block;width:100%;height:auto;aspect-ratio:8/1;object-fit:cover}
.youtube-ad-banner{grid-area:banner;display:block;justify-self:stretch;align-self:stretch;width:100%;max-width:none;min-width:0;height:100px;margin:0;border:0;border-top:1px solid var(--line);border-radius:0;box-shadow:none}
.youtube-ad-banner img{width:100%;height:100px;aspect-ratio:auto;object-fit:fill}
.rotating-ad-track{container-type:inline-size;width:100%;margin-top:24px;overflow:hidden}
.host-moving-track{container-type:inline-size;width:100%;margin-top:12px;overflow:hidden}
.host-moving-banner{display:block;width:min(800px,100%);max-width:800px;overflow:hidden;border:1px solid #414955;border-radius:14px;background:#0b0e12;animation:adBounce 16s ease-in-out infinite alternate}
.host-moving-banner img{display:block;width:100%;height:auto;aspect-ratio:2172/724;object-fit:contain}
.host-moving-banner:hover{animation-play-state:paused;border-color:var(--red2)}
.host-moving-banner:focus-visible{outline:3px solid var(--green);outline-offset:3px}
.music-links+.rotating-ad-track{margin:4px 0 8px}
.rotating-ad-banner{width:min(800px,100%);height:auto;aspect-ratio:8/1;max-width:800px;margin:0;animation:adBounce 14s ease-in-out infinite alternate}
.rotating-ad-banner img{width:100%;height:100%;aspect-ratio:8/1;object-fit:cover;transition:opacity .35s ease}
.rotating-ad-banner.changing{opacity:0}
.rotating-ad-banner{transition:opacity .35s ease,border-color .2s ease}
.rotating-ad-banner:hover{transform:none;animation-play-state:paused}
@keyframes adBounce{from{transform:translateX(0)}to{transform:translateX(calc(100cqw - 100%))}}
.rotating-ad-banner .vision-innovation-ad{height:100%;min-height:0;aspect-ratio:auto}
.host-show-ad{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;padding:5px 18px;background:radial-gradient(circle at 8% 50%,#bd1b21,transparent 32%),linear-gradient(110deg,#090b0f 0%,#264006 45%,#970c13 100%);color:#fff;text-align:center}
.host-show-ad strong{font-size:clamp(1.1rem,3vw,2.1rem);font-weight:950;line-height:1;letter-spacing:.07em}
.host-show-ad .host-show-copy{margin-top:2px;color:#c9ff6f;font-weight:800;text-transform:uppercase;letter-spacing:.07em}
.host-show-ad .host-show-flags{display:block;max-width:100%;overflow:hidden;margin-top:1px;color:#fff;font-size:1rem;line-height:1.1;letter-spacing:.03em;white-space:nowrap}
.host-show-ad small{margin-top:3px;font-size:.85rem;font-weight:800}
.host-show-ad[hidden]{display:none}
@media(max-width:600px){.host-show-ad{padding:2px 6px}.host-show-ad strong{font-size:clamp(.65rem,3vw,1rem)}.host-show-ad .host-show-copy{display:none}.host-show-ad .host-show-flags{font-size:clamp(.55rem,2vw,.8rem)}.host-show-ad small{font-size:clamp(.5rem,2vw,.7rem)}.rotating-ad-banner .vision-innovation-ad{padding:3px 7px;gap:0}.rotating-ad-banner .vision-innovation-ad strong{font-size:clamp(.65rem,3vw,1rem)}.rotating-ad-banner .vis-services,.rotating-ad-banner .vis-cta{display:none}}
@media(prefers-reduced-motion:reduce){.rotating-ad-banner,.host-moving-banner{animation:none}}
.vision-innovation-ad{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(190px,.8fr) minmax(320px,2fr) auto;grid-template-areas:"kicker brand cta" "kicker services cta";align-items:center;column-gap:28px;width:100%;aspect-ratio:8/1;min-height:100px;padding:16px clamp(20px,3vw,48px);overflow:hidden;background:linear-gradient(115deg,#020813 0%,#071d38 48%,#020913 100%);color:#fff;text-align:left}
.vision-innovation-ad::before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,transparent 0 70%,rgba(17,128,220,.2)),linear-gradient(115deg,transparent 0 62%,rgba(229,24,55,.16) 62% 64%,transparent 64%)}
.vis-kicker{grid-area:kicker;align-self:stretch;display:grid;place-items:center;padding:8px 18px;border-left:5px solid #e51937;background:rgba(255,255,255,.06);font-size:clamp(.72rem,1.05vw,.95rem);font-weight:900;letter-spacing:.12em;line-height:1.25;text-transform:uppercase;color:#8fd0ff}
.vision-innovation-ad strong{grid-area:brand;font-size:clamp(1.15rem,2.35vw,2.2rem);font-weight:1000;letter-spacing:.035em;line-height:1;color:#fff;text-shadow:0 0 20px rgba(39,157,255,.24)}
.vis-services{grid-area:services;font-size:clamp(.68rem,1vw,.95rem);font-weight:700;letter-spacing:.04em;color:#c8d8e8;white-space:nowrap}
.vis-services i{margin:0 .45em;color:#e51937;font-style:normal}
.vis-cta{grid-area:cta;padding:12px 16px;border:1px solid rgba(143,208,255,.45);border-radius:999px;background:rgba(0,0,0,.3);font-size:clamp(.68rem,.9vw,.88rem);font-weight:900;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;color:#fff}
.vision-innovation-ad[hidden]{display:none}
@media(max-width:760px){.vision-innovation-ad{grid-template-columns:1fr auto;grid-template-areas:"brand cta" "services services";gap:8px 14px;min-height:92px;padding:13px 16px}.vis-kicker{display:none}.vision-innovation-ad strong{font-size:clamp(.95rem,4vw,1.45rem)}.vis-services{font-size:clamp(.55rem,2vw,.72rem);white-space:normal}.vis-cta{padding:9px 10px;font-size:.58rem}}
@media(max-width:720px){.youtube-ad-banner,.youtube-ad-banner img{height:auto}.youtube-ad-banner img{aspect-ratio:8/1;object-fit:cover}}
.panel{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel)}
.video-frame{aspect-ratio:16/9;display:grid;place-items:center;background:#020304}
.video-frame iframe,.chat-frame iframe{width:100%;height:100%;border:0}
.empty-state{text-align:center;padding:32px}
.empty-state .play{display:grid;place-items:center;width:70px;height:70px;margin:0 auto 18px;border-radius:50%;background:var(--red);font-size:1.45rem}
.empty-state h3{margin:0 0 6px;font-size:1.4rem}
.empty-state p,.chat-frame p{margin:0;color:var(--muted)}
.player-info,.panel-title{display:flex;justify-content:space-between;align-items:center;gap:15px;min-height:60px;padding:0 18px;border-top:1px solid var(--line)}
.player-info span,.panel-title span{color:var(--muted);font-size:.82rem}
.panel-title{border-top:0;border-bottom:1px solid var(--line)}
.chat-frame{height:calc(100% - 60px);min-height:390px;display:grid;place-items:center;padding:28px;text-align:center;background:#0a0d11}
.broadcast-form{margin-top:18px;padding:20px;border:1px solid var(--line);border-radius:16px;background:var(--panel)}
.broadcast-form label{display:block;margin-bottom:9px;font-weight:800}
.broadcast-form>div{display:grid;grid-template-columns:1fr auto;gap:10px}
.broadcast-form input{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:12px;background:#090c10;color:#fff;outline:none}
.broadcast-form input:focus{border-color:#707b88;box-shadow:0 0 0 3px rgba(138,170,58,.14)}
.broadcast-form p{min-height:22px;margin:7px 0 0;color:#ff8a8e;font-size:.85rem}
.schedule-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.schedule-card{padding:26px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(145deg,var(--panel2),#0d1015)}
.schedule-card>span{color:var(--green);font-size:.76rem;font-weight:900;letter-spacing:.15em;text-transform:uppercase}
.schedule-card h3{margin:12px 0 7px;font-size:1.35rem}
.schedule-card p{margin:0 0 13px;color:var(--muted)}
.schedule-card strong{color:#fff}
.about-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.about-copy p{color:var(--muted);font-size:1.04rem}
.about-copy strong{display:inline-block;margin-top:8px;color:#fff}
.ad-zone{margin:18px 0 28px;padding:clamp(22px,4vw,42px);border:1px solid #3c434d;border-radius:24px;background:#10151b;box-shadow:var(--shadow)}
.ad-zone-head{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 auto 22px;max-width:850px}
.ad-zone-head h2{margin:0;font-size:clamp(2rem,4vw,3rem);line-height:1.1;letter-spacing:-.035em;text-transform:uppercase}
.sponsor-button{flex:none;background:var(--red);color:#fff}
.ad-zone-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}.ad-zone-actions .button{white-space:nowrap}
.sponsor-button:hover{background:var(--red2)}
.sponsor-ticker{display:flex;flex-wrap:wrap;gap:8px;margin:0 auto 24px;max-width:850px}
.sponsor-ticker span{padding:8px 12px;border:1px solid #3d464f;border-radius:999px;background:#1a222a;color:#dce4e8;font-size:.75rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.promo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;width:100%;max-width:none;margin:0;align-items:stretch}
.promo-grid>.promo,.promo-grid>.donation-card{min-width:0;width:100%;height:100%}
.promo-grid>.promo{display:flex;flex-direction:column}
.promo-grid>.promo img,.promo-grid>.promo video{width:100%;height:100%;min-height:260px;object-fit:cover;flex:1}
.promo-grid>.promo-community-ad img{object-fit:contain}
.promo-grid>.donation-card{display:flex;flex-direction:column;justify-content:center}
.promo-grid>.promo-music{grid-column:1/-1}
@media(max-width:900px){.promo-grid{grid-template-columns:1fr}.promo-grid>.promo-music{grid-column:auto}.promo-grid>.promo img,.promo-grid>.promo video{min-height:0}}
.promo{display:block;min-width:0;overflow:hidden;border:1px solid #3d464f;border-radius:13px;background:#171e25;transition:border-color .2s ease,background-color .2s ease}
.promo:hover{border-color:var(--red2);background:#202a33}
.promo:focus-visible{outline:3px solid var(--green);outline-offset:3px}
.promo-label{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;color:#e8edf0;font-size:.8rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.promo-label span{color:var(--green);font-size:1rem;line-height:1}
.promo img{display:block;width:100%;height:auto;aspect-ratio:8/1;object-fit:contain;background:#090c10}
.promo-host img{aspect-ratio:2170/725}
.promo-community-ad img{aspect-ratio:3/2;object-fit:contain;background:#090c10}
.contact-card{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-bottom:90px;padding:36px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(135deg,var(--panel2),#0d1115)}
.contact-card h2{font-size:clamp(2rem,4vw,3.5rem)}
.contact-card p:not(.eyebrow){color:var(--muted)}
footer{display:flex;align-items:center;justify-content:space-between;gap:18px;width:min(var(--max),calc(100% - 40px));margin:auto;padding:30px 0;border-top:1px solid var(--line);color:var(--muted);font-size:.88rem}
footer img{width:88px;height:48px;object-fit:contain}
footer a{color:#fff}
.team-intro{max-width:850px;padding:80px 0 50px}
.team-intro>p:last-child{max-width:680px;color:var(--muted);font-size:1.08rem}
.team-list{display:grid;gap:24px;padding-bottom:90px}
.profile-card{padding:clamp(24px,5vw,46px);border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(145deg,var(--panel2),#0d1015);box-shadow:var(--shadow)}
.profile-header{display:flex;align-items:center;gap:25px;margin-bottom:26px}
.profile-header h2{margin:0;font-size:clamp(2rem,5vw,4rem);line-height:1;letter-spacing:-.04em}
.profile-logo{display:grid;place-items:center;overflow:hidden;flex:0 0 auto;border:1px solid #3a424d;border-radius:16px;background:#fff}
.profile-logo img{width:100%;height:100%;object-fit:contain}
.plush-logo{width:210px;height:120px}
.inferno-logo{width:210px;height:120px;background:#000}
.influence{display:grid;grid-template-columns:190px 1fr;gap:20px;margin-bottom:25px;padding:18px;border-left:4px solid var(--red);background:rgba(255,255,255,.035)}
.influence span{color:var(--green);font-size:.76rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.influence p{margin:0}
.profile-bio{columns:2;column-gap:40px}
.profile-bio p{margin-top:0;color:#c2c9d0;break-inside:avoid}
@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:900px){.hero{grid-template-columns:1fr;min-height:auto}.twitch-live-card{width:100%;max-width:620px}.hero-copy{position:relative;z-index:1}.broadcast-grid,.about-grid{grid-template-columns:1fr}.chat-frame{min-height:360px}.schedule-grid{grid-template-columns:1fr}.about-grid{gap:20px}.profile-bio{columns:1}}
@media(max-width:900px){.broadcast-grid{grid-template-areas:"youtube" "chat"}.studio-box .chat-panel{border-left:0;border-top:1px solid var(--line)}}
@media(max-width:720px){.site-header{width:calc(100% - 28px);min-height:78px}.site-header:before{height:78px}.brand{width:125px;height:64px}.nav-toggle{display:block}.main-nav{display:none;position:absolute;top:79px;left:0;right:0;flex-direction:column;align-items:stretch;padding:12px;border:1px solid var(--line);border-radius:14px;background:#0b0e12;box-shadow:var(--shadow)}.main-nav.open{display:flex}.main-nav a{padding:12px 14px}main,footer{width:calc(100% - 28px)}.hero{padding:50px 24px;border-radius:22px}.hero h1{font-size:3.7rem}.section{padding:65px 0}.section-heading{align-items:flex-start;flex-direction:column}.broadcast-form>div{grid-template-columns:1fr}.contact-card{align-items:flex-start;flex-direction:column}.team-intro{padding-top:55px}.profile-header{align-items:flex-start;flex-direction:column}.plush-logo,.inferno-logo{width:190px;height:107px}.influence{grid-template-columns:1fr;gap:6px}footer{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-art,.promo-advertise,.twitch-live-head i{animation:none}.promo{transition:none}}
@media(max-width:560px){.radio-player-main{grid-template-columns:auto 1fr}.radio-volume{grid-column:1/-1;width:100%}.radio-player-topline{align-items:flex-start;flex-direction:column;gap:4px}}
@media(max-width:720px){.ad-zone{margin:18px 0 28px;padding:24px 18px}.ad-zone-head{align-items:flex-start;flex-direction:column;gap:16px}.sponsor-ticker{gap:7px}.sponsor-ticker span{font-size:.68rem;padding:7px 10px}.promo-label{padding:9px 12px}}
@media(max-width:720px){.site-header{min-height:88px}.site-header:before{height:88px}.brand{width:160px;height:76px}.main-nav{top:89px}}
@media(max-width:720px){.site-header{min-height:142px;padding:7px 0 10px}.site-header:before{height:142px}.brand{width:230px;height:96px}.nav-toggle{padding:7px 18px}.main-nav{top:143px}}
.portal-shell{max-width:none;min-height:calc(100vh - 108px);padding:70px 0 100px}.portal-intro h1{margin:0;font-size:clamp(2.8rem,7vw,5.8rem);line-height:.9;letter-spacing:-.055em;text-transform:uppercase}.portal-intro>p:last-child{color:var(--muted)}.portal-card{margin-top:34px;padding:clamp(24px,5vw,44px);border:1px solid var(--line);border-radius:24px;background:linear-gradient(145deg,var(--panel2),#0d1015);box-shadow:var(--shadow)}.portal-card h2,.portal-card h3{margin-top:0}.portal-title{display:flex;align-items:center;justify-content:space-between;gap:20px}.portal-form{display:grid;gap:17px}.portal-form label{display:grid;gap:7px;color:#d9dee3;font-weight:800}.portal-form input,.portal-form select{width:100%;padding:14px;border:1px solid var(--line);border-radius:12px;background:#090c10;color:#fff}.portal-form .button{justify-self:start}.portal-sub{margin-top:34px;padding-top:30px;border-top:1px solid var(--line)}.form-error{color:#ff8a8e}.form-success{color:#b9da6b}@media(max-width:720px){.portal-shell{min-height:calc(100vh - 88px);padding-top:48px}.portal-title{align-items:flex-start;flex-direction:column}}

/* logo-size.css */
.site-header{min-height:275px}
.site-header::before{height:275px}
.brand{width:550px;height:220px}
@media(max-width:720px){
  .site-header{min-height:190px}
  .site-header::before{height:190px}
  .brand{width:min(310px,100%);height:122px}
  .main-nav{top:191px}
}

/* logo-grid.css */
.home-page,
body{
  background-color:#07090c;
  background-image:
    radial-gradient(circle at 12% 16%,rgba(138,170,58,.09),transparent 24%),
    radial-gradient(circle at 88% 42%,rgba(220,34,40,.1),transparent 28%),
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:auto,auto,40px 40px,40px 40px;
  background-attachment:fixed;
}
.site-header::before{
  background:
    radial-gradient(circle at 50% 45%,rgba(220,34,40,.24),transparent 36%),
    radial-gradient(circle at 18% 55%,rgba(138,170,58,.13),transparent 25%),
    radial-gradient(circle at 82% 55%,rgba(138,170,58,.13),transparent 25%),
    linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px),
    linear-gradient(180deg,#11161d 0%,#07090c 88%);
  background-size:auto,auto,auto,32px 32px,32px 32px,auto;
  box-shadow:inset 0 -1px rgba(255,66,72,.45),0 18px 50px rgba(0,0,0,.38);
}
.brand{
  position:relative;
  isolation:isolate;
  filter:drop-shadow(0 12px 24px rgba(0,0,0,.7));
}
.header-top .brand::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:12% 8%;
  border-radius:50%;
  background:radial-gradient(ellipse at 57% 45%,rgba(255,39,58,.38),transparent 58%),radial-gradient(ellipse at 34% 62%,rgba(151,224,48,.24),transparent 62%);
  filter:blur(22px);
  opacity:.8;
  pointer-events:none;
  animation:logo-neon-breathe 5s ease-in-out infinite;
}
.header-top .brand img{
  position:relative;
  filter:drop-shadow(0 0 6px rgba(255,54,68,.72)) drop-shadow(0 0 18px rgba(255,40,56,.36)) drop-shadow(0 0 7px rgba(174,227,76,.32));
}
.header-top .brand:hover img,
.header-top .brand:focus-visible img{
  filter:drop-shadow(0 0 8px rgba(255,70,82,.95)) drop-shadow(0 0 25px rgba(255,40,56,.58)) drop-shadow(0 0 10px rgba(174,227,76,.5));
}
@keyframes logo-neon-breathe{
  50%{opacity:1;transform:scale(1.04)}
}
@media(prefers-reduced-motion:reduce){
  .header-top .brand::before{animation:none}
}
.main-nav{
  padding:4px 9px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:14px;
  background:rgba(5,7,10,.72);
  box-shadow:0 10px 30px rgba(0,0,0,.3);
  backdrop-filter:blur(10px);
}
@media(max-width:720px){
  .site-header::before{background-size:auto,auto,auto,24px 24px,24px 24px,auto}
  .main-nav{padding:12px}
}

/* usability.css */
/* Give the station artwork and the content room in the viewport. */
.site-header{position:relative}
.hero{min-height:0;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);grid-template-areas:"left sponsor" "onair tv" "feedback tv" "tagline tagline" "engagement engagement";align-items:start;gap:clamp(20px,2.5vw,32px);padding:clamp(26px,4vw,48px)}
.hero .twitch-column{display:contents}
.hero-left-stack{grid-area:left;display:flex;flex-direction:column;justify-content:space-between;align-self:stretch;gap:clamp(12px,1.5vw,18px);min-width:0}
.hero .radio-player{margin:0}
.hero .hero-copy{min-width:0;margin-top:auto}
.hero .hero-intro-card{margin-top:14px}
.hero .on-air-section{grid-area:onair;min-width:0;padding:0}
.hero .on-air-section .digital-live-heading{gap:10px;margin-bottom:12px}
.hero .on-air-section .on-air-live-button{min-height:70px;font-size:clamp(1.25rem,2.2vw,2rem)}
.hero .on-air-section .station-clock{min-width:155px}
.hero .on-air-section .station-clock span{font-size:1.3rem}
.hero .on-air-section .on-air-card{grid-template-columns:auto minmax(0,1fr);gap:12px;padding:18px}
.hero .on-air-section .on-air-actions{grid-column:1/-1;justify-content:flex-start;max-width:none}
.hero .on-air-section .on-air-progress{padding-top:11px}
.hero .twitch-ad-banner{grid-area:tagline;margin:0}
.hero-media-stack{display:contents}
.hero-video-panel{grid-area:tv;overflow:hidden;border-radius:18px;background:#0a0d12}
.hero-video-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 14px;background:#161b23;color:#fff;font-size:.9rem;text-transform:uppercase;letter-spacing:.06em}
.hero-video-heading span{color:#aeb9c8;font-size:.7rem}
.hero-video-panel .empty-state{padding:18px}
.hero-video-panel .empty-state h3{font-size:1.1rem}
.hero-video-panel .player-info{padding:11px 14px}
.hero-sponsor-slot{grid-area:sponsor;position:relative;align-self:start;width:100%;aspect-ratio:2/3;overflow:hidden;border-radius:20px;background:#07101a}
.hero-sponsor-slot .hero-sponsor-ad{height:100%;aspect-ratio:auto}
.hero-sponsor-slot .hero-sponsor-ad[hidden],.hero-sponsor-video[hidden],.hero-sponsor-video-link[hidden]{display:none}
.hero-sponsor-video{display:block;width:100%;height:100%;object-fit:contain;background:#080a0d;border:1px solid #78343b;border-radius:20px}
.hero-sponsor-video-link{position:absolute;right:16px;top:16px;padding:8px 12px;border-radius:8px;background:rgba(8,10,13,.88);color:#fff;text-decoration:none;font-size:.78rem;font-weight:800}
.hero-sponsor-video-link:focus-visible{outline:3px solid #a8cc57;outline-offset:3px}
.hero-banner-controls{position:absolute;z-index:3;inset:0;display:flex;align-items:center;justify-content:space-between;padding:8px;pointer-events:none}
.hero-banner-controls button{pointer-events:auto;display:grid;place-items:center;width:44px;height:52px;border:1px solid rgba(255,255,255,.55);border-radius:12px;background:rgba(4,7,10,.78);color:#fff;font-family:inherit;font-size:2.25rem;font-weight:700;line-height:1;cursor:pointer;box-shadow:0 4px 16px rgba(0,0,0,.35)}
.hero-banner-controls button:hover{background:rgba(25,34,44,.95);border-color:#fff}
.hero-banner-controls button:focus-visible{outline:3px solid #a8cc57;outline-offset:3px}
.hero h1{font-size:clamp(2.9rem,5.3vw,5.4rem);line-height:.94}
.hero-station-copy{font-size:1rem}
.hero .listener-stats{grid-area:stats;justify-self:end;margin:0}
.section{padding:18px 0}
.team-intro{padding-top:54px}
.twitch-feed{height:auto;aspect-ratio:16/9}
.social-live-chat{margin-top:18px;padding:16px;border:1px solid var(--line);border-radius:16px;background:#0d1118}
.social-live-chat-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}
.social-live-chat-heading strong{color:#fff;font-size:1rem}
.social-live-chat-heading span{color:var(--muted);font-size:.78rem}
.social-live-chat-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.social-chat-link{display:flex;align-items:center;gap:10px;min-width:0;min-height:64px;padding:9px 11px;border:1px solid #383e4a;border-radius:11px;background:#151923;color:#fff;text-decoration:none;transition:border-color .2s,background .2s}
.social-chat-link:hover,.social-chat-link:focus-visible{border-color:#abb4c5;background:#1b2330}
.social-chat-link>span:nth-child(2){display:flex;flex:1;flex-direction:column;min-width:0}
.social-chat-link strong{font-size:.88rem;line-height:1.2}
.social-chat-link small{overflow:hidden;color:#b7beca;font-size:.68rem;text-overflow:ellipsis;white-space:nowrap}
.social-chat-link b{font-size:1.15rem;font-weight:500}
.social-chat-icon{display:grid;flex:0 0 34px;place-items:center;width:34px;height:34px;border-radius:9px;background:#ab437e;color:#fff;font-size:.9rem;font-weight:900}
.social-chat-facebook .social-chat-icon{background:#2854a5;font-size:1.35rem}
.social-chat-twitch .social-chat-icon{background:#7440b4}
.social-chat-youtube .social-chat-icon{background:#d52631;font-size:1rem}
.social-chat-link small{font-size:.76rem}
.hero-sponsor-ad{display:flex;flex-direction:column;justify-content:center;align-self:start;width:100%;height:auto;aspect-ratio:2/3;padding:26px clamp(20px,3vw,34px);overflow:hidden;border:1px solid #78343b;border-radius:20px;background:radial-gradient(circle at 100% 0%,rgba(230,46,55,.25),transparent 55%),linear-gradient(120deg,#11131a,#251317 80%,#15171c);color:#fff;text-decoration:none;box-shadow:0 18px 38px rgba(0,0,0,.28)}
.hero-sponsor-content{display:flex;flex-direction:column;justify-content:center}
.hero-sponsor-ad.is-flyer{padding:0;background:#071526;border-color:#c59739}
.hero-sponsor-ad img{display:block;width:100%;height:100%;object-fit:contain}
.hero-sponsor-ad img[hidden],.hero-sponsor-ad .hero-sponsor-content[hidden]{display:none}
.hero-sponsor-ad:hover,.hero-sponsor-ad:focus-visible{border-color:#e34a53}
.hero-sponsor-kicker{color:#f4aeb2;font-size:.76rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.hero-sponsor-content>strong{margin:13px 0 8px;font-size:clamp(2rem,4vw,3.5rem);font-weight:950;line-height:.94;letter-spacing:-.05em}
.hero-sponsor-detail{color:#d5c7ca;font-size:.82rem;line-height:1.5}
.hero-sponsor-detail i{color:#eb515a;font-style:normal}
.hero-sponsor-cta{align-self:flex-start;margin-top:18px;padding:9px 13px;border-radius:8px;background:#d52c36;font-size:.76rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em}
.hero-sponsor-cta b{margin-left:8px}
.listener-stats>div{min-width:164px;padding:10px 16px 12px;border-color:#663238;background:linear-gradient(155deg,#140d10,#080b10);box-shadow:inset 0 0 16px rgba(240,49,57,.1),0 0 16px rgba(240,49,57,.08);text-align:right}
.listener-stats span{color:#ff4e56;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:2rem;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:.12em;text-shadow:0 0 12px rgba(255,49,62,.72)}
.listener-stats span.count-flip{transform-origin:center;animation:visitorFlip .65s ease-out both}
@keyframes visitorFlip{0%{transform:rotateX(-90deg);opacity:.15}65%{transform:rotateX(18deg);opacity:1}100%{transform:rotateX(0)}}
@media(prefers-reduced-motion:reduce){.listener-stats span.count-flip{animation:none}}
.listener-stats small{color:#f0b0b4;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.72rem;letter-spacing:.13em}
.social-chat-link:focus-visible{outline:3px solid var(--green);outline-offset:2px}
.chat-only-grid{display:block}
.chat-only-grid .chat-panel{width:100%;border-left:0}
.twitch-ad-banner{position:relative;isolation:isolate;display:grid;place-items:center;height:100px;min-height:100px;padding:15px 18px;overflow:hidden;border:1px solid rgba(255,66,72,.7);border-radius:14px;background:radial-gradient(circle at 20% 50%,rgba(220,34,40,.35),transparent 44%),radial-gradient(circle at 85% 50%,rgba(138,170,58,.18),transparent 42%),linear-gradient(105deg,#080b10,#18202a 52%,#080b10);text-align:center;transform:none}
.twitch-ad-banner::before{content:"";position:absolute;z-index:-1;inset:0;opacity:.65;background:repeating-linear-gradient(120deg,transparent 0 35px,rgba(255,255,255,.035) 35px 37px);pointer-events:none}
.twitch-ad-banner::after{content:"";position:absolute;inset:auto 16px 12px;height:3px;border-radius:999px;background:linear-gradient(90deg,var(--red2),var(--green),var(--red2));box-shadow:0 0 15px rgba(255,66,72,.35);pointer-events:none}
.twitch-ad-banner strong{display:block;width:max-content;max-width:none;color:#fff;font-size:20px;font-weight:950;line-height:1.15;letter-spacing:-.015em;text-shadow:0 2px 12px #000;white-space:nowrap;text-transform:uppercase}
.twitch-ad-banner:hover{transform:none;border-color:rgba(255,66,72,.7)}
.hero .twitch-ad-banner{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:10px;width:100%;height:auto;min-height:0;margin:0;padding:0;overflow:visible;border:0;border-radius:0;background:none;box-shadow:none}
.hero .twitch-ad-banner::before,.hero .twitch-ad-banner::after{display:none}
.hero .twitch-ad-banner:hover{border:0;transform:none}
.hero .twitch-ad-banner strong{width:auto;max-width:100%;font-size:clamp(1.1rem,2.2vw,2rem);line-height:1.2;letter-spacing:.015em;white-space:normal;text-wrap:balance}
.hero-special-banner{display:block;width:100%;aspect-ratio:2048/682;overflow:hidden;border:1px solid rgba(255,187,78,.68);border-radius:8px;background:#050608;box-shadow:0 0 10px rgba(255,193,72,.54),0 0 28px rgba(233,54,57,.28),0 0 48px rgba(176,225,61,.15),inset 0 0 18px rgba(255,194,73,.22)}
.hero-special-banner img{display:block;width:100%;height:100%;object-fit:contain}
.hero-special-banner:focus-visible{outline:3px solid var(--green);outline-offset:3px}
.rotating-ad-banner img[hidden]{display:none}
.radio-play:focus-visible,.nav-toggle:focus-visible,.main-nav a:focus-visible{outline:3px solid var(--green);outline-offset:3px}
@media(max-width:900px){
  .hero{grid-template-columns:minmax(0,1fr);grid-template-areas:"left" "sponsor" "tv" "onair" "feedback" "tagline" "engagement"}
  .hero-left-stack{justify-content:flex-start;align-self:start}
  .hero .hero-copy{margin-top:clamp(16px,2vw,26px)}
}
@media(max-width:720px){
  .site-header{min-height:190px}
  .site-header::before{height:190px}
  .brand{width:min(310px,100%);height:122px}
  .main-nav{top:191px}
  .hero{padding:24px 18px;gap:22px}
  .hero h1{font-size:clamp(2.55rem,11vw,3.8rem)}
  .social-live-chat-heading{display:block}
  .social-live-chat-heading span{display:block;margin-top:4px}
  .social-live-chat-links{grid-template-columns:1fr}
  .portal-shell{padding-top:42px}
}


/* DJ DIEGOTT – video fit only. DO NOT resize card/grid/frame. */
.artiste-watch-card #video-frame.artiste-watch-frame{
  position:relative !important;
  overflow:hidden !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  box-sizing:border-box !important;
  background:#05070a;
}
.artiste-watch-card #video-frame.artiste-watch-frame > video{
  position:static !important;
  display:block !important;
  width:auto !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  margin:auto !important;
  padding:0 !important;
  inset:auto !important;
  transform:none !important;
  object-fit:contain !important;
  object-position:center center !important;
  aspect-ratio:9 / 16;
  box-sizing:border-box !important;
  background:#05070a;
}
.artiste-watch-card #video-frame.artiste-watch-frame > img{
  max-width:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
}


/* DJ DIEGOTT – restore visible card/grid; video stays INSIDE it */
.artiste-watch-card{
  position:relative !important;
  display:grid !important;
  grid-template-rows:auto minmax(0,1fr) !important;
  overflow:hidden !important;
  box-sizing:border-box !important;
  border:2px solid rgba(255,202,92,.95) !important;
  border-radius:14px !important;
  box-shadow:
    0 0 8px rgba(255,202,92,.82),
    0 0 20px rgba(255,82,82,.52),
    0 0 34px rgba(108,224,255,.30) !important;
  background:#05070a !important;
}
.artiste-watch-card .hero-video-heading{
  position:relative !important;
  z-index:2 !important;
  margin:0 !important;
  padding:10px 12px !important;
  box-sizing:border-box !important;
  background:rgba(3,6,12,.94) !important;
}
.artiste-watch-card #video-frame.artiste-watch-frame{
  position:relative !important;
  inset:auto !important;
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  aspect-ratio:auto !important;
  overflow:hidden !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  box-sizing:border-box !important;
  background:#05070a !important;
}
.artiste-watch-card #video-frame.artiste-watch-frame > video,
.artiste-watch-card #video-frame.artiste-watch-frame > img{
  position:static !important;
  inset:auto !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  margin:0 !important;
  padding:0 !important;
  transform:none !important;
  object-fit:contain !important;
  object-position:center center !important;
  box-sizing:border-box !important;
}


/* DJ DIEGOTT – VIDEO SIZE ONLY. Card/grid/frame/glow intentionally untouched. */
.artiste-watch-card #video-frame.artiste-watch-frame > video{
  width:auto !important;
  height:88% !important;
  max-width:88% !important;
  max-height:88% !important;
  aspect-ratio:9 / 16 !important;
  object-fit:contain !important;
  object-position:center center !important;
  margin:auto !important;
  align-self:center !important;
  justify-self:center !important;
}
@media(max-width:900px){
  .artiste-watch-card #video-frame.artiste-watch-frame > video{
    height:84% !important;
    max-width:84% !important;
    max-height:84% !important;
  }
}


/* DJ DIEGOTT – reduce CARD/GRID footprint only */
@media(min-width:901px){
  .artiste-watch-card{
    height:360px !important;
    min-height:0 !important;
    max-height:360px !important;
    align-self:start !important;
  }
}
@media(max-width:900px){
  .artiste-watch-card{
    height:300px !important;
    min-height:0 !important;
    max-height:300px !important;
  }
}


/* DJ DIEGOTT – extend card/grid/video together into the gap below */
@media(min-width:901px){
  .artiste-watch-card{
    height:510px !important;
    min-height:510px !important;
    max-height:510px !important;
    align-self:start !important;
  }
  .artiste-watch-card #video-frame.artiste-watch-frame{
    min-height:0 !important;
    height:100% !important;
  }
  .artiste-watch-card #video-frame.artiste-watch-frame > video{
    width:auto !important;
    height:94% !important;
    max-width:94% !important;
    max-height:94% !important;
    aspect-ratio:9 / 16 !important;
    object-fit:contain !important;
    object-position:center center !important;
    margin:auto !important;
  }
}
@media(max-width:900px){
  .artiste-watch-card{
    height:390px !important;
    min-height:390px !important;
    max-height:390px !important;
  }
  .artiste-watch-card #video-frame.artiste-watch-frame{
    min-height:0 !important;
    height:100% !important;
  }
  .artiste-watch-card #video-frame.artiste-watch-frame > video{
    width:auto !important;
    height:92% !important;
    max-width:92% !important;
    max-height:92% !important;
    aspect-ratio:9 / 16 !important;
    object-fit:contain !important;
    object-position:center center !important;
    margin:auto !important;
  }
}

/* header-social.css */
.site-header{min-height:0;padding:8px 0 12px}
.site-header::before{height:100%}
.header-top{display:flex;align-items:center;justify-content:center;gap:clamp(20px,4vw,64px);width:100%}
.header-top .brand{flex:0 1 650px;max-width:650px;height:260px;min-width:0}
.header-social{display:grid;grid-template-columns:repeat(2,minmax(122px,1fr));gap:6px;width:min(300px,35%)}
.header-social-button{display:flex;align-items:center;justify-content:space-between;gap:5px;min-height:34px;padding:5px 8px;border:1px solid rgba(255,255,255,.21);border-radius:8px;background:#171b23;color:#fff;text-decoration:none;font-size:.72rem;font-weight:700;box-shadow:0 5px 18px rgba(0,0,0,.25);transition:background .15s,border-color .15s,transform .15s}
.header-social-button strong{font-size:.64rem;text-transform:uppercase;letter-spacing:.01em;white-space:nowrap}
.header-social-button.youtube{border-color:#ba3036}.header-social-button.youtube strong{color:#ff7076}
.header-social-button.facebook{border-color:#365ea5}.header-social-button.facebook strong{color:#8eb5ff}
.header-social-button.instagram{border-color:#ac518e}.header-social-button.instagram strong{color:#efa6d8}
.header-social-button.twitch{border-color:#7448ad}.header-social-button.twitch strong{color:#c7a4ff}
.header-social-button:hover{background:#252c39;transform:translateY(-2px)}
.header-social-button:focus-visible{outline:3px solid #a8cc57;outline-offset:3px}
@media(max-width:900px){.header-top .brand{flex-basis:480px;height:200px}.header-social{width:min(300px,43%);grid-template-columns:1fr 1fr}.header-social-button{flex-direction:column;justify-content:center;gap:1px;padding:5px 4px;font-size:.68rem}.header-social-button strong{font-size:.62rem}}
@media(max-width:720px){.site-header{padding:8px 0 12px}.header-top{flex-direction:column;gap:3px}.header-top .brand{flex:none;width:min(330px,100%);height:132px}.header-social{width:min(100%,390px);grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.header-social-button{min-height:38px;font-size:.62rem}.header-social-button strong{font-size:.56rem}.main-nav{top:100%}.nav-toggle{order:2;margin-top:5px}}

/* TikTok: same dimensions and hover behavior as the existing social icons. */
.header-social-button.tiktok{border-color:#59dce3;color:#fff}

/* team-dropdown.css */
.team-list{gap:14px;width:100%;margin:0 auto}
.team-list .profile-card{padding:0;overflow:hidden;border-color:#38424f;background:linear-gradient(130deg,#191f29,#0e1219)}
.team-list .profile-header{display:flex;flex-direction:row;align-items:center;gap:22px;min-height:176px;margin:0;padding:18px clamp(18px,3vw,30px);list-style:none;cursor:pointer}
.team-list .profile-header::-webkit-details-marker{display:none}
.team-list .profile-header:hover{background:rgba(255,255,255,.035)}
.team-list .profile-header:focus-visible{outline:3px solid #b7db6e;outline-offset:-4px}
.team-list .profile-header h2{margin:0;font-size:clamp(1.5rem,3.6vw,2.8rem)}
.team-list .profile-name{display:flex;flex:1;align-items:center;gap:15px;flex-wrap:wrap;min-width:0}
.team-list .profile-country-flag{display:block;flex:none;width:42px;height:28px;object-fit:cover;border:1px solid rgba(255,255,255,.6);border-radius:3px;box-shadow:0 2px 10px rgba(0,0,0,.3)}
.team-list .profile-logo{width:145px;height:145px}
.team-list .plush-logo{background:#f7f7f5;padding:8px}
.team-list .plush-logo img{display:block;object-fit:contain}
.team-list .profile-chevron{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border:1px solid #56616d;border-radius:50%;background:#232b36;color:#e6f5c9;font-size:2rem;line-height:1;transition:transform .2s ease,background .2s}
.team-list .profile-card[open] .profile-chevron{transform:rotate(180deg);background:#32431d}
.team-list .profile-details{padding:0 clamp(18px,3vw,30px) 28px;border-top:1px solid #39424c}
.team-list .influence{margin-top:25px}
@media(max-width:600px){
  .team-list .profile-header{gap:13px;min-height:100px;padding:14px}
  .team-list .profile-logo{flex:0 0 94px;width:94px;height:94px;border-radius:9px}
  .team-list .profile-header h2{font-size:clamp(1.2rem,5.5vw,1.8rem)}
  .team-list .profile-name{gap:9px}
  .team-list .profile-country-flag{width:35px;height:23px}
  .team-list .profile-chevron{flex-basis:34px;width:34px;height:34px;font-size:1.5rem}
  .team-list .profile-details{padding:0 16px 18px}
}
@media(prefers-reduced-motion:reduce){.team-list .profile-chevron{transition:none}}
.team-list .profile-card{background:#111923}
.team-list .profile-header{position:relative;min-height:260px;background:linear-gradient(90deg,rgba(4,8,16,.92),rgba(4,8,16,.72),rgba(4,8,16,.4)),url('/images/logo.png?v=header-logo-20261007') center/cover no-repeat}
.team-list #plush-international .profile-header{background-image:linear-gradient(90deg,rgba(4,8,16,.93),rgba(4,8,16,.75),rgba(4,8,16,.42)),url('/images/plushsound.png')}
.team-list #inferno-asylum .profile-header{background-image:linear-gradient(90deg,rgba(4,8,16,.93),rgba(4,8,16,.75),rgba(4,8,16,.42)),url('/images/infernoasylum.png')}
.team-list .profile-logo{width:154px;height:154px;flex:none;display:grid;place-items:center;box-shadow:0 8px 30px #0009}
.team-list .profile-country-flag{width:78px;height:52px;border-radius:5px}
.team-actions{display:flex;gap:15px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:13px 30px;background:#141e29;border-top:1px solid #39424c}
.team-time{color:#e6eee5;font-weight:600}
.team-like{background:#273947;border:1px solid #8fc4aa;border-radius:22px;color:white;padding:8px 16px;cursor:pointer;font:inherit}
.team-like[aria-pressed=true]{background:#406f4c}
.dj-entry{width:100%;margin:24px auto 52px;padding:clamp(22px,4vw,40px);border:1px solid #38424f;border-radius:18px;background:#151c26}
.dj-entry .dj-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.dj-entry label{display:flex;flex-direction:column;gap:7px;margin:12px 0;color:#eff6ee;font-weight:600}
.dj-entry input,.dj-entry select,.dj-entry textarea{box-sizing:border-box;width:100%;padding:12px;background:#09121b;border:1px solid #65727e;border-radius:8px;color:white;font:inherit}
.dj-entry .honeypot{position:absolute;left:-10000px;width:1px;height:1px}
@media(max-width:600px){.team-list .profile-header{min-height:180px}.team-list .profile-logo{width:94px;height:94px}.team-list .profile-country-flag{width:48px;height:32px}.dj-entry .dj-fields{grid-template-columns:1fr}.team-actions{padding:12px 16px}}
.team-list .profile-header{flex-wrap:wrap}
.team-list .team-actions{flex:1 0 100%;order:4;margin:0;padding:8px 0;background:transparent;border:0}
.team-list .team-time{max-width:80%}
/* Published DJ profiles: each DJ logo becomes a subtle card background. */
.team-list .published-dj-profile{position:relative;isolation:isolate;background:linear-gradient(130deg,rgba(17,25,35,.94),rgba(9,13,19,.96));}
.team-list .published-dj-profile::before{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(8,12,18,.76),rgba(8,12,18,.9)),var(--dj-logo,none);background-repeat:no-repeat;background-position:center;background-size:cover;opacity:.72;pointer-events:none;}
.published-dj-profile .profile-name{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.dj-country{display:inline-flex;align-items:center;gap:7px;font-size:1.45rem}.dj-country small{font-size:.78rem;letter-spacing:.03em;color:#d7dde7}.published-dj-profile .profile-bio p{max-width:78ch;text-shadow:0 1px 2px #000}.published-dj-profile .influence{position:relative}

/* Dynamic DJ cards match the Plush/Inferno profile treatment without the ASYLUM fallback artwork. */
.team-list .published-dj-profile .profile-header{
  background-image:linear-gradient(90deg,rgba(4,8,16,.93),rgba(4,8,16,.75),rgba(4,8,16,.42)),var(--dj-logo,none);
  background-color:#111923;
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
}
.team-list .published-dj-profile::before{display:none;}

/* Full DJ profile logo backgrounds + fixed biography paragraphs */
.team-list .built-in-logo-bg{position:relative;isolation:isolate;background:linear-gradient(130deg,rgba(17,25,35,.94),rgba(9,13,19,.96));overflow:hidden}
.team-list .built-in-logo-bg::before{content:"";position:absolute;inset:0;z-index:-1;background-repeat:no-repeat;background-position:center;background-size:cover;opacity:.26;pointer-events:none}
.team-list .plush-full-bg::before{background-image:linear-gradient(rgba(8,12,18,.62),rgba(8,12,18,.84)),url("/images/plushsound.png")}
.team-list .inferno-full-bg::before{background-image:linear-gradient(rgba(8,12,18,.62),rgba(8,12,18,.84)),url("/images/infernoasylum.png")}
.team-list .profile-bio{columns:1!important;display:block!important}
.team-list .profile-bio p{display:block;margin:0 0 1.15rem!important;break-inside:avoid;white-space:normal}
.team-list .profile-bio p:last-child{margin-bottom:0!important}

/* Published DJ logo: visible independently from optional profile background */
.published-dj-profile .published-dj-logo{display:flex;align-items:center;justify-content:center;flex:0 0 auto;width:118px;height:118px;border-radius:16px;overflow:hidden;background:rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.16);box-shadow:0 8px 24px rgba(0,0,0,.35)}
.published-dj-profile .published-dj-logo img{width:100%;height:100%;object-fit:contain;display:block}
@media(max-width:600px){.published-dj-profile .published-dj-logo{width:88px;height:88px}}

/* Keep each DJ logo visible while an expanded profile is scrolled/read. */
.team-list details[open] > .profile-header{
  position:sticky;
  top:0;
  z-index:24;
  box-shadow:0 12px 28px rgba(0,0,0,.42);
}
.team-list details[open] > .profile-header .profile-logo{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
}
.team-list details[open] > .profile-details{
  position:relative;
  z-index:1;
}
@media(max-width:600px){
  .team-list details[open] > .profile-header{top:0;min-height:132px;align-items:center;flex-direction:row;}
  .team-list details[open] > .profile-header .profile-logo{width:82px;height:82px;flex:0 0 82px;}
}

/* FINAL: one continuous DJ logo background across header + expanded biography. */
.team-list .published-dj-profile{
  background-image:linear-gradient(rgba(8,12,18,.72),rgba(8,12,18,.90)),var(--dj-logo,none)!important;
  background-color:#111923!important;
  background-position:center!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
}
.team-list .published-dj-profile::before{display:none!important;}
.team-list .published-dj-profile > .profile-header{
  background-image:none!important;
  background-color:rgba(4,8,16,.38)!important;
}
.team-list .published-dj-profile > .profile-details{
  background:rgba(4,8,16,.34)!important;
}
/* Built-in Plush and Inferno use the same continuous-card treatment. */
.team-list .built-in-logo-bg::before{display:none!important;}
.team-list .plush-full-bg{
  background-image:linear-gradient(rgba(8,12,18,.72),rgba(8,12,18,.90)),url('/images/plushsound.png')!important;
  background-position:center!important;background-size:cover!important;background-repeat:no-repeat!important;
}
.team-list .inferno-full-bg{
  background-image:linear-gradient(rgba(8,12,18,.72),rgba(8,12,18,.90)),url('/images/infernoasylum.png')!important;
  background-position:center!important;background-size:cover!important;background-repeat:no-repeat!important;
}
.team-list .built-in-logo-bg > .profile-header{background-image:none!important;background-color:rgba(4,8,16,.38)!important;}
.team-list .built-in-logo-bg > .profile-details{background:rgba(4,8,16,.34)!important;}

/* FINAL ALIGNMENT: every Meet the Team logo uses one size and one clean grid. */
.team-list .profile-header{
  display:grid!important;
  grid-template-columns:154px minmax(0,1fr) 52px!important;
  grid-template-areas:"logo name chevron" "actions actions actions"!important;
  align-items:center!important;
  column-gap:22px!important;
  row-gap:12px!important;
  padding:24px 30px!important;
  box-sizing:border-box!important;
}
.team-list .profile-header > .profile-logo{
  grid-area:logo!important;
  width:154px!important;
  height:154px!important;
  min-width:154px!important;
  min-height:154px!important;
  margin:0!important;
  border-radius:16px!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
}
.team-list .profile-header > .profile-logo img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
}
.team-list .profile-header > .profile-name{grid-area:name!important;margin:0!important;align-self:center!important;}
.team-list .profile-header > .profile-chevron{grid-area:chevron!important;justify-self:end!important;margin:0!important;}
.team-list .profile-header > .team-actions{grid-area:actions!important;width:100%!important;margin:0!important;box-sizing:border-box!important;}
.team-list .profile-details{box-sizing:border-box!important;padding-left:30px!important;padding-right:30px!important;}

@media(max-width:600px){
  .team-list .profile-header,
  .team-list details[open] > .profile-header{
    grid-template-columns:104px minmax(0,1fr) 38px!important;
    grid-template-areas:"logo name chevron" "actions actions actions"!important;
    column-gap:12px!important;
    row-gap:10px!important;
    padding:16px!important;
    min-height:unset!important;
  }
  .team-list .profile-header > .profile-logo,
  .team-list details[open] > .profile-header .profile-logo,
  .published-dj-profile .published-dj-logo{
    width:104px!important;
    height:104px!important;
    min-width:104px!important;
    min-height:104px!important;
    flex-basis:104px!important;
  }
  .team-list .profile-details{padding-left:16px!important;padding-right:16px!important;}
  .team-list .team-actions{padding-left:0!important;padding-right:0!important;}
}

/* digital-nav.css */
/* Compact digital navigation across the public pages and portal. */
.main-nav{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:4px;margin:5px auto 0;max-width:1280px}
.main-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:5px 8px;border:1px solid #35414d;border-radius:7px;background:linear-gradient(180deg,#172331,#101820);color:#e4ecf0;font-size:.78rem;line-height:1.15;letter-spacing:.015em;text-decoration:none;white-space:nowrap;box-shadow:inset 0 1px #ffffff13}
.main-nav a:hover,.main-nav a.active,.main-nav a[aria-current=page]{border-color:#9aca65;background:#233c31;color:#fff}
.main-nav a.join-link{border-color:#8fc996;background:linear-gradient(180deg,#254d3c,#193228);color:#fff}
.main-nav a.nav-live{gap:6px;border-color:#ff6363;background:linear-gradient(180deg,#9b292e,#64171d);color:#fff;font-weight:850;letter-spacing:.055em;box-shadow:0 0 0 1px #ff6c5540,0 0 14px #ed414054,inset 0 1px #ffffff38}
.main-nav a.nav-live::before{content:"";width:7px;height:7px;flex:none;border-radius:50%;background:#ffdad3;box-shadow:0 0 8px #fff,0 0 12px #ff6c55}
.main-nav a.nav-live:hover,.main-nav a.nav-live:focus-visible{background:linear-gradient(180deg,#bd383a,#7d1e25);box-shadow:0 0 0 1px #ff9a8c80,0 0 20px #ed414080}
.main-nav a:focus-visible,.button:focus-visible{outline:3px solid #b7db6e;outline-offset:2px}
.button,.music-page .button{min-height:36px;padding:6px 12px;border-radius:8px;font-size:.82rem;letter-spacing:.02em;background-image:linear-gradient(180deg,#ffffff10,#00000021)}
.home-page .community-chat-link,.home-page .sponsor-button,.join-page .button{min-height:36px;padding:6px 12px;border-radius:8px;font-size:.82rem}
.join-page .join-intro{max-width:980px;margin:0 auto;padding-bottom:6px}
.join-page .join-intro h1{margin-bottom:10px}
.join-page .join-intro p:not(.eyebrow){max-width:720px;color:#cbd5da}
.join-page .dj-entry{margin-top:16px}
@media(max-width:720px){.home-page .main-nav,.join-page .main-nav,body:not(.music-page):not(.home-page):not(.join-page) .main-nav{display:none;position:absolute;top:100%;left:0;right:0;z-index:30;flex-direction:column;align-items:stretch;max-height:70vh;overflow:auto;padding:10px;background:#0b111a;border:1px solid #35414d;border-radius:12px;box-shadow:0 12px 30px #0009}.home-page .main-nav.open,.join-page .main-nav.open,body:not(.music-page):not(.home-page):not(.join-page) .main-nav.open{display:flex}.main-nav a{min-height:36px;justify-content:flex-start;padding:8px 11px}.music-page .main-nav{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;padding:7px 12px;scrollbar-width:thin}.music-page .main-nav a{flex:none}}

/* site-like.css */
.hero .station-like-panel{grid-area:likes;display:flex;align-items:center;justify-content:space-between;gap:18px;min-width:0;padding:14px 18px;border:1px solid #48624b;border-radius:15px;background:linear-gradient(105deg,#15241e,#121a22 70%)}.station-like-panel>div{display:grid;gap:2px}.station-like-panel>div strong{color:#fff;font-size:1rem}.station-like-panel>div span{color:#b8c9c0;font-size:.82rem}
.station-like-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:8px 14px;border:1px solid #a7cf71;border-radius:9px;background:#294d34;color:#f2f8ec;font:inherit;font-size:.9rem;font-weight:850;cursor:pointer;white-space:nowrap}.station-like-button:hover{background:#376344}.station-like-button[aria-pressed=true]{border-color:#d5f0a2;background:#4b7139}.station-like-button b{display:inline-grid;place-items:center;min-width:2em;padding:2px 7px;border:1px solid #a9c591;border-radius:6px;background:#152b23;color:#fff;font-variant-numeric:tabular-nums}.station-like-button:focus-visible{outline:3px solid #a8cc57;outline-offset:3px}.station-like-button:disabled{opacity:.6;cursor:wait}
.station-like-compact{margin-left:auto}.station-like-compact .station-like-button{min-height:36px;padding:6px 10px;font-size:.76rem}.station-like-compact .station-like-button strong{font-size:inherit}
.audience-meter{display:flex;align-items:center;gap:9px;margin-top:13px;padding:10px 12px;border-top:1px solid #5a3b3f;color:#e3eee3}.audience-meter>span:nth-child(2){display:flex;align-items:baseline;gap:6px}.audience-meter strong{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:1.3rem;font-variant-numeric:tabular-nums;color:#d6ef9b}.audience-meter small{font-size:.76rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.audience-refresh{margin-left:auto;color:#aabdb5;font-size:.7rem}.audience-pulse{width:8px;height:8px;border-radius:50%;background:#a8d969;box-shadow:0 0 10px #b3eb82}.audience-bars{display:flex;align-items:end;gap:3px;height:18px;margin-left:4px}.audience-bars i{width:3px;height:5px;background:#8da575;border-radius:2px}.audience-meter.has-audience .audience-bars i:nth-child(2){height:10px}.audience-meter.has-audience .audience-bars i:nth-child(3){height:16px}.audience-meter.has-audience .audience-bars i:nth-child(4){height:12px}.audience-meter.has-audience .audience-bars i:nth-child(5){height:8px}
@media(max-width:700px){.hero .station-like-panel{align-items:stretch;flex-direction:column}.station-like-button{width:100%;white-space:normal}.station-like-compact{margin:8px 0 0}.station-like-compact .station-like-button{width:auto}.audience-refresh{font-size:.62rem}}
.stream-readout{display:grid;grid-template-columns:minmax(120px,.7fr) minmax(0,1.3fr);gap:8px 14px;margin-top:15px;padding:14px;border:1px solid #44606b;border-radius:12px;background:linear-gradient(135deg,#09141b,#12222a 60%,#101720);box-shadow:inset 0 1px #d8f8ff17,0 0 18px #4dbcc518}
.stream-readout-count,.stream-readout-music{display:grid;align-content:start;min-width:0;gap:3px}
.stream-readout-count>span,.stream-readout-music>span{color:#9dbcc3;font:800 .68rem/1.3 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.1em}
.stream-readout-count strong{color:#d5f5a6;font:900 2rem/1 ui-monospace,SFMono-Regular,Consolas,monospace;font-variant-numeric:tabular-nums;text-shadow:0 0 15px #a5d87688}
.stream-readout-music strong{color:#f2f9fb;font-size:.9rem;line-height:1.35;white-space:normal;overflow-wrap:anywhere}
.stream-equalizer{grid-column:1/-1;display:flex;align-items:center;gap:4px;height:24px;padding-top:5px;border-top:1px solid #46606a99}
.stream-equalizer i{display:block;flex:1;height:4px;border-radius:2px;background:linear-gradient(0deg,#80d4d9,#cff18c);box-shadow:0 0 5px #73d5db55;transform-origin:bottom}
.radio-player.is-playing .stream-equalizer i{animation:streamBeat .9s ease-in-out infinite alternate}
.radio-player.is-playing .stream-equalizer i:nth-child(3n){animation-duration:.65s;animation-delay:-.3s}
.radio-player.is-playing .stream-equalizer i:nth-child(4n){animation-duration:1.2s;animation-delay:-.5s}
@keyframes streamBeat{0%{height:4px}45%{height:20px}100%{height:9px}}
.hero .listener-stats{display:flex;align-items:stretch;justify-self:end;gap:10px;flex-wrap:wrap}
.hero-engagement-row{grid-area:engagement;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr) minmax(0,1.15fr);align-items:stretch;gap:10px;min-width:0;margin-top:-8px}
.hero .hero-engagement-row .listener-stats{display:contents}
.hero .hero-engagement-row .visitor-total-card{grid-column:1;grid-row:1}
.hero .hero-engagement-row .listener-stats .audience-meter{grid-column:2;grid-row:1}
.hero .hero-engagement-row .listener-stats>div{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0;min-height:76px;margin:0;padding:10px 14px;text-align:left}
.hero .hero-engagement-row .listener-stats small{margin:0 0 4px;font-size:.72rem;line-height:1.2;white-space:nowrap}
.hero .hero-engagement-row #total-listeners{font-size:clamp(1.4rem,2.2vw,1.8rem);letter-spacing:.02em;line-height:1.1;white-space:nowrap}
.hero .hero-engagement-row .listener-stats .audience-meter{flex-direction:row;justify-content:center;gap:9px}
.hero .hero-engagement-row .audience-eye{flex:none;width:25px;height:25px;color:#c9eaa4;filter:drop-shadow(0 0 8px rgba(143,202,108,.5))}
.hero .hero-engagement-row .audience-meter>span:nth-child(2){display:flex;flex-direction:column;align-items:flex-start;gap:0;margin:0}
.hero .hero-engagement-row .audience-meter strong{font-size:clamp(1.4rem,2.2vw,1.8rem);line-height:1.1}
.hero .hero-engagement-row .station-like-panel{grid-area:1/3/2/4;justify-content:center;min-width:0;min-height:76px;padding:10px 12px}
.hero .hero-engagement-row .station-like-button{width:100%;min-width:0;max-width:260px;min-height:42px;padding:6px 10px;white-space:nowrap;text-align:center}
@media(max-width:800px){.hero-engagement-row{margin-top:0}}
@media(max-width:520px){.hero-engagement-row{gap:6px}.hero .hero-engagement-row .listener-stats>div{min-height:68px;padding:7px}.hero .hero-engagement-row .listener-stats small{font-size:.7rem;line-height:1.2}.hero .hero-engagement-row #total-listeners,.hero .hero-engagement-row .audience-meter strong{font-size:1.18rem;letter-spacing:0}.hero .hero-engagement-row .listener-stats .audience-meter{padding:7px;gap:5px}.hero .hero-engagement-row .audience-eye{width:22px;height:22px}.hero .hero-engagement-row .station-like-panel{min-height:68px;padding:7px}.hero .hero-engagement-row .station-like-button{min-height:36px;padding:4px;gap:3px;font-size:.74rem}.hero .hero-engagement-row .station-like-button strong{font-size:inherit}.hero .hero-engagement-row .station-like-button b{padding:2px 4px}}
.listener-stats .audience-meter{display:flex;align-items:center;gap:10px;min-width:164px;margin:0;padding:10px 16px 12px;border:1px solid #44634e;border-radius:14px;background:linear-gradient(155deg,#0d1b18,#080b10);box-shadow:inset 0 0 16px #88cf7c15,0 0 16px #88cf7c13;text-align:right}
.listener-stats .audience-meter>span:nth-child(2){display:grid;justify-items:end;gap:0;margin-left:auto}
.listener-stats .audience-meter strong{color:#c9eaa4;font-size:2rem;line-height:1;text-shadow:0 0 12px #8fca6c77}
.listener-stats .audience-meter small{margin-top:6px;color:#b7d1b8;font-size:.72rem;letter-spacing:.13em}
@media(max-width:520px){.stream-readout{grid-template-columns:1fr 1.2fr;padding:11px}.stream-readout-count strong{font-size:1.7rem}.hero .listener-stats{justify-self:stretch}.listener-stats>div,.listener-stats .audience-meter{flex:1;min-width:130px}}
@media(prefers-reduced-motion:reduce){.radio-player.is-playing .stream-equalizer i{animation:none}}
/* Present the station activity as one centered line without individual cards. */
.hero .hero-engagement-row{display:flex;align-items:center;justify-content:center;gap:clamp(16px,4vw,54px);min-height:58px;margin-top:0}
.hero .hero-engagement-row .listener-stats>div,
.hero .hero-engagement-row .station-like-panel{min-width:0;min-height:0;margin:0;padding:0;border:0;border-radius:0;background:none;box-shadow:none}
.hero .hero-engagement-row .listener-stats>div{align-items:center;text-align:center}
.hero .hero-engagement-row .visitor-total-card small{margin:0 0 3px}
.hero .hero-engagement-row .listener-stats .audience-meter{justify-content:center;gap:7px}
.hero .hero-engagement-row .station-like-panel{display:flex;justify-content:center}
.hero .hero-engagement-row .station-like-button{width:auto;min-height:38px}
@media(max-width:520px){.hero .hero-engagement-row{gap:clamp(8px,2.5vw,16px);min-height:56px}.hero .hero-engagement-row .listener-stats>div,.hero .hero-engagement-row .station-like-panel{min-height:0;padding:0}.hero .hero-engagement-row .station-like-button{min-height:34px}}

/* header-refined.css */
/* A quieter station masthead: brand, social actions, then two balanced rows of links. */
.site-header{isolation:isolate;align-items:stretch;gap:0;min-height:0;padding:8px 0 12px;background:transparent}
.site-header::before{position:absolute;inset:0 auto 0 50%;width:100vw;height:auto;transform:translateX(-50%);background:linear-gradient(180deg,#101923f5,#090e15f5);border-bottom:1px solid #3d4c56;box-shadow:0 10px 28px #0006}
.site-header .header-top{display:grid;grid-template-columns:minmax(270px,390px) minmax(0,1fr);align-items:center;justify-content:space-between;gap:clamp(16px,4vw,50px);min-height:132px;padding:0 8px}
.site-header .header-top .brand{display:block;flex:none;width:100%;max-width:390px;height:128px;min-width:0}
.site-header>.brand{align-self:center;width:min(345px,100%);height:116px}
.site-header .header-social{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:4px;width:100%;max-width:510px;justify-self:end}
.site-header .header-social::before{display:none}
.site-header .header-social-button{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:3px;min-height:30px;padding:4px 5px;border:1px solid #3a4b56;border-radius:7px;background:#17232e;color:#eaf1f5;font-size:.66rem;line-height:1.1;white-space:nowrap;box-shadow:none;transition:background .15s,border-color .15s,transform .15s}
.site-header .header-social-button strong{font-size:.6rem;line-height:1.1;letter-spacing:.01em}
.site-header .header-social-button:hover{transform:translateY(-1px);background:#223341}
.site-header .main-nav{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:3px 5px;width:100%;max-width:none;margin:0;padding:8px 0 0;border:0;border-top:1px solid #34434d;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none}
.site-header .main-nav::before{content:"EXPLORE";flex-basis:100%;padding:0 0 4px;color:#91adba;font-size:.69rem;font-weight:850;letter-spacing:.11em;line-height:1}
.site-header .main-nav a{min-height:34px;padding:7px 11px;border:1px solid transparent;border-radius:8px;background:transparent;color:#c9d4db;font-size:.8rem;font-weight:750;letter-spacing:.005em;box-shadow:none}
.site-header .main-nav a:hover,.site-header .main-nav a.active,.site-header .main-nav a[aria-current=page]{border-color:#52616a;background:#263440;color:#fff}
.site-header .main-nav a.join-link{border-color:#405e4b;background:#1c3429;color:#ddf1df}
.site-header .main-nav a.nav-live{border-color:#f3747e;background:linear-gradient(145deg,#aa2632,#781b25);color:#fff;letter-spacing:.06em;box-shadow:0 0 15px #df334844}
.site-header .main-nav a.nav-live:hover,.site-header .main-nav a.nav-live:focus-visible{background:linear-gradient(145deg,#cc3541,#98232d);box-shadow:0 0 19px #ed414080}
.site-header .main-nav .nav-row-break{flex-basis:100%;height:0}
@media(max-width:900px){
  .site-header .header-top{grid-template-columns:minmax(235px,305px) minmax(0,1fr);min-height:116px;gap:12px}
  .site-header .header-top .brand{height:110px}
  .site-header .header-social{max-width:500px}
  .site-header .header-social-button{padding:4px 3px;font-size:.61rem}
  .site-header .header-social-button strong{font-size:.56rem}
}
@media(max-width:720px){
  .site-header{min-height:0;padding:5px 0 10px}
  .site-header .header-top{grid-template-columns:1fr;gap:0;justify-items:center;padding:0 4px}
  .site-header .header-top .brand{height:110px;max-width:320px}
  .site-header>.brand{height:106px;width:min(310px,100%)}
  .site-header .header-social{grid-template-columns:repeat(2,minmax(0,1fr));max-width:330px}
  .site-header .header-social-button{min-height:30px;padding:4px 5px;font-size:.66rem;text-align:center}
  .site-header .header-social-button strong{font-size:.59rem}
  .site-header .nav-toggle{align-self:stretch;order:2;min-height:38px;margin:6px 0 0;padding:7px 12px;border-color:#50616b;background:#1a2935}
  .site-header .main-nav{display:none;top:100%;margin:0;padding:10px;border:1px solid #45535d;border-radius:0 0 12px 12px;background:#0b141e;box-shadow:0 18px 36px #0009}
  .site-header .main-nav.open{display:flex;flex-direction:column;align-items:stretch}
  .site-header .main-nav a{width:100%;justify-content:flex-start;min-height:38px;padding:8px 12px;font-size:.88rem}
  .site-header .main-nav .nav-row-break{display:none}
  .music-page .site-header .main-nav{display:flex;position:static;flex-direction:row;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;padding:8px 0 2px;border:0;border-top:1px solid #34434d;border-radius:0;background:transparent;box-shadow:none}
  .music-page .site-header .main-nav a{width:auto;flex:none;min-height:38px;padding:8px 10px;font-size:.8rem}
  .music-page .site-header .main-nav::before{display:none}
}
@media(max-width:420px){
  .site-header .header-social-button{font-size:.65rem}
  .site-header .header-social-button strong{font-size:.58rem}
}

/* digital-buttons.css */
/* Station controls: compact console keys with clear active and focus states. */
:root{--key-edge:#536c76;--key-face:#162932;--key-glow:#b8e77d}
body :is(.button,.broadcast-form button,.main-nav a,.header-social-button,.nav-toggle,.community-tabs button,.artist-filters button,.chart-tabs button,.schedule-tabs button,.library-tabs button,.team-like,.music-root-like,.feedback-recommend,.event-submit button,#event-submit,.chat-send-row button,.chat-emoji-row button,.chat-media-button){
  border-radius:6px;
  border:1px solid var(--key-edge);
  background-image:linear-gradient(180deg,#ffffff12 0%,transparent 42%,#00000033 100%);
  background-color:var(--key-face);
  box-shadow:inset 0 1px 0 #e6fbff24,inset 0 -2px 0 #06101688,0 2px 0 #05090d;
  color:#edf6f4;
  font-weight:800;
  letter-spacing:.045em;
  text-decoration:none;
  transition:border-color .16s,background-color .16s,box-shadow .16s,transform .16s;
}
body :is(.button,.broadcast-form button,.main-nav a,.header-social-button,.nav-toggle,.community-tabs button,.artist-filters button,.chart-tabs button,.schedule-tabs button,.library-tabs button,.team-like,.music-root-like,.feedback-recommend,.event-submit button,#event-submit,.chat-send-row button,.chat-emoji-row button,.chat-media-button):is(:hover,:focus-visible){
  border-color:var(--key-glow);
  background-color:#24443d;
  box-shadow:inset 0 1px 0 #f0ffe548,0 2px 0 #05090d,0 0 0 1px #a7e77635,0 0 14px #a7e77630;
}
body :is(.button,.broadcast-form button,.main-nav a,.header-social-button,.nav-toggle,.community-tabs button,.artist-filters button,.chart-tabs button,.schedule-tabs button,.library-tabs button,.team-like,.music-root-like,.feedback-recommend,.event-submit button,#event-submit,.chat-send-row button,.chat-emoji-row button,.chat-media-button):focus-visible{outline:2px solid #e4ffae;outline-offset:3px}
body :is(.button,.broadcast-form button,.main-nav a,.header-social-button,.nav-toggle,.community-tabs button,.artist-filters button,.chart-tabs button,.schedule-tabs button,.library-tabs button,.team-like,.music-root-like,.feedback-recommend,.event-submit button,#event-submit,.chat-send-row button,.chat-emoji-row button,.chat-media-button):active{transform:translateY(1px);box-shadow:inset 0 2px 5px #0008}
body :is(.button,.broadcast-form button,.main-nav a,.header-social-button,.nav-toggle,.community-tabs button,.artist-filters button,.chart-tabs button,.schedule-tabs button,.library-tabs button,.team-like,.music-root-like,.feedback-recommend,.event-submit button,#event-submit,.chat-send-row button,.chat-emoji-row button,.chat-media-button):disabled{opacity:.55;cursor:not-allowed;box-shadow:inset 0 1px #ffffff14}

/* The navigation is one consistent row of small, readable digital keys. */
body .site-header .main-nav a{min-height:36px;padding:7px 10px;border-color:#405762;background-color:#172a34;background-image:linear-gradient(180deg,#ffffff10,transparent 46%,#0004);box-shadow:inset 0 1px #def7ff1b,0 2px 0 #05090d;font-size:.8rem}
body .site-header .main-nav a:is(:hover,:focus-visible),body .site-header .main-nav a.active,body .site-header .main-nav a[aria-current=page]{border-color:#b8e77d;background-color:#294637;color:#f7ffe7;box-shadow:inset 0 1px #ffffff35,0 2px 0 #05090d,0 0 12px #a7e77635}
body .site-header .main-nav a.join-link{border-color:#87bb83;background-color:#235038;color:#f3ffe8}
body .site-header .main-nav a.nav-live{border-color:#ff6b70;background-color:#d51f32;background-image:linear-gradient(180deg,#ff5964,#bc1027 55%,#890d1e);color:#fff;box-shadow:inset 0 1px #ffd5d7a0,0 2px 0 #490813,0 0 17px #ff365080;font-weight:900;letter-spacing:.09em}
body .site-header .main-nav a.nav-live:is(:hover,:focus-visible){background-color:#ee3044;background-image:linear-gradient(180deg,#ff6673,#d81731);box-shadow:0 2px 0 #490813,0 0 22px #ff5368}
body .site-header .header-social-button{border-color:var(--social-border,#486776);background-color:var(--social-bg,#142832);box-shadow:inset 0 1px #ffffff20,0 2px 0 #05090d}
body .site-header .header-social-button strong{color:var(--social-ink,#c8efa4)}
body .site-header .header-social-button.youtube{--social-border:#bf454f;--social-bg:#35191d;--social-ink:#ff858d}
body .site-header .header-social-button.facebook{--social-border:#527ec2;--social-bg:#172b49;--social-ink:#9cc5ff}
body .site-header .header-social-button.instagram{--social-border:#ad538f;--social-bg:#3b1e36;--social-ink:#f3a4d9}
body .site-header .header-social-button.twitch{--social-border:#8254ba;--social-bg:#2d2045;--social-ink:#d0adff}
body .site-header .header-social-button:is(:hover,:focus-visible){border-color:var(--social-ink);background-color:var(--social-bg);box-shadow:inset 0 1px #ffffff35,0 2px 0 #05090d,0 0 12px var(--social-border)}
body .button.primary,body .broadcast-form button,body #event-submit,body .chat-send-row button{border-color:#ea777e;background-color:#9b2735;color:#fff;box-shadow:inset 0 1px #ffffff50,0 2px 0 #360b13,0 0 12px #c52e4050}
body .button.secondary{border-color:#7aa19e;background-color:#173139;color:#eaf6f1}
body :is(.community-tabs button,.artist-filters button,.schedule-tabs button,.library-tabs button)[aria-pressed=true],body :is(.chart-tabs button,.schedule-tabs button,.library-tabs button)[aria-selected=true]{border-color:#b8e77d;background-color:#31513b;color:#fff;box-shadow:inset 0 1px #ffffff3d,0 0 12px #b8e77d42}
@media(max-width:720px){body .site-header .main-nav a{min-height:42px;font-size:.88rem}body .site-header .header-social-button{min-height:30px}}
@media(prefers-reduced-motion:reduce){body :is(.button,.main-nav a,.header-social-button,.nav-toggle,.community-tabs button,.artist-filters button,.chart-tabs button){transition:none}}

/* caribbean-flags.css */
/* Smooth, single-line station ticker beneath the navigation. */
.station-message-strip{width:100%;max-width:none;margin:7px 0 10px;overflow:hidden;background:transparent;border:0;box-shadow:none}
.station-message-viewport{width:100%;overflow:hidden}
.station-message-reel{display:flex;flex-wrap:nowrap;width:max-content;white-space:nowrap;animation:station-message-left 34s linear infinite;will-change:transform;transform:translate3d(0,0,0);backface-visibility:hidden}
.station-message-list{display:flex;flex:none;flex-wrap:nowrap;align-items:center;gap:24px;min-height:38px;padding:4px 24px 4px 0;white-space:nowrap;font:900 1.1rem/1.3 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.055em;text-transform:uppercase;filter:saturate(1.25)}
.station-message-list>*{display:inline-block;flex:0 0 auto;white-space:nowrap}
.station-message-list strong,.station-message-slogan,.station-message-notice,.station-message-separator{animation:station-ticker-colors 12s linear infinite}
.station-message-slogan{animation-delay:-3s}.station-message-notice{animation-delay:-6s}.station-message-separator{animation-delay:-9s}
@keyframes station-message-left{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
@keyframes station-ticker-colors{0%,100%{color:#38f8ff;text-shadow:0 0 1px rgba(56,248,255,.30)}20%{color:#fff34d;text-shadow:0 0 1px rgba(255,243,77,.28)}40%{color:#62ff72;text-shadow:0 0 1px rgba(98,255,114,.28)}60%{color:#ff5bd8;text-shadow:0 0 1px rgba(255,91,216,.28)}80%{color:#ff704d;text-shadow:0 0 1px rgba(255,112,77,.28)}}
@media(max-width:640px){.station-message-strip{width:100%;margin:5px 0 8px}.station-message-list{gap:20px;min-height:36px;padding:4px 20px 4px 0;font-size:1.1rem;letter-spacing:.035em}}
@media(prefers-reduced-motion:reduce){.station-message-reel,.station-message-list strong,.station-message-slogan,.station-message-notice,.station-message-separator{animation:none}.station-message-viewport{overflow-x:auto}.station-message-reel .station-message-list:last-child{display:none}}

/* seasonal-theme.css */
/* Editorial theme rotation retains the original logo, red LIVE status, and page layout. */
html[data-season]{--season-main:#f7a852;--season-secondary:#ad7ce0;--season-haze:rgba(242,127,39,.16);--season-card:#19141f;--season-label:"HALLOWEEN VIBES";--line:#493647}
html[data-season="miami"]{--line:#3a5966}
html[data-season="thanksgiving"]{--line:#544037}
html[data-season="carnival"]{--line:#34545a}
/* Subtle steel bars stay behind opaque content cards on all station pages. */
html[data-season] body{background-color:#080b10;background-image:radial-gradient(ellipse 60% 460px at 50% 0,var(--season-haze),transparent),linear-gradient(180deg,transparent 0 190px,rgba(112,136,147,.055) 190px 207px,transparent 207px),repeating-linear-gradient(90deg,transparent 0 38px,rgba(130,159,169,.065) 38px 40px,rgba(60,79,89,.11) 40px 56px,rgba(130,159,169,.055) 56px 59px,transparent 59px 96px);background-size:auto,100% 525px,auto;background-attachment:fixed}
html[data-season] .site-header::before{background:linear-gradient(135deg,rgba(25,17,30,.97),rgba(10,18,25,.97) 58%,rgba(25,15,28,.97));border-bottom-color:var(--season-main);box-shadow:0 10px 28px #0009,0 1px 18px var(--season-haze)}
html[data-season]:not([data-season="halloween"]) .site-header::before{background:linear-gradient(135deg,var(--season-card),#0b121b 65%,var(--season-card))}
html[data-season] .site-header .brand img{filter:drop-shadow(0 0 8px var(--season-haze)) drop-shadow(0 0 16px var(--season-haze))}
html[data-season] .site-header .main-nav{border-top-color:var(--line)}
html[data-season] .site-header .main-nav a:hover,html[data-season] .site-header .main-nav a[aria-current=page]{border-color:var(--season-main);background:var(--season-card)}
html[data-season] .site-header .main-nav a.nav-live{border-color:#f3747e;background:linear-gradient(145deg,#aa2632,#781b25)}
html[data-season] .hero{border-color:var(--line);background:radial-gradient(circle at 72% 11%,var(--season-haze),transparent 36%),linear-gradient(125deg,#11141c,var(--season-card) 60%,#0d141b);box-shadow:0 24px 70px #0008,0 0 28px var(--season-haze)}
html[data-season] .home-page .hero .radio-player{border-color:var(--season-main);box-shadow:inset 0 1px #ffffff2d,0 12px 28px #0009,0 0 22px var(--season-haze),0 0 38px color-mix(in srgb,var(--season-secondary) 26%,transparent)}
html[data-season] .home-page .hero .radio-player::before{background:linear-gradient(90deg,var(--season-secondary),var(--season-main),var(--season-secondary))}
html[data-season] .home-page .radio-player-topline{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
html[data-season] .home-page .radio-player-topline::after{content:var(--season-label);color:var(--season-main);font-size:.66rem;font-weight:900;letter-spacing:.1em;text-shadow:0 0 9px var(--season-haze)}
html[data-season] .home-page .stream-readout{border-color:var(--line);background:linear-gradient(90deg,#0a151e,var(--season-card))}
html[data-season] .panel,html[data-season] .music-card,html[data-season] .portal-card{border-color:var(--line)}
html[data-season] .section-heading .eyebrow,html[data-season] .team-intro .eyebrow{color:var(--season-main)}
html[data-season] .button.secondary:hover{border-color:var(--season-main);background:var(--season-card)}
html[data-season] .site-header .header-social-button:hover{border-color:var(--season-main)}
html[data-season="halloween"] .hero{background:radial-gradient(circle at 80% 12%,rgba(119,56,148,.22),transparent 30%),radial-gradient(circle at 12% 75%,rgba(244,123,42,.10),transparent 37%),linear-gradient(125deg,#10131b,#1a1420 58%,#0d141b)}
html[data-season="halloween"] .home-page .hero .hero-copy .home-headline{filter:drop-shadow(0 0 11px rgba(221,115,39,.24))}
html[data-season="miami"] .hero{background:radial-gradient(circle at 79% 14%,rgba(72,223,219,.19),transparent 35%),radial-gradient(circle at 17% 71%,rgba(231,87,160,.17),transparent 38%),linear-gradient(125deg,#101820,#171727 60%,#0c1c25)}
html[data-season="miami"] .site-header::before{background:linear-gradient(135deg,#131728f7,#101d28f7 60%,#211629f7)}
html[data-season="miami"] .home-page .hero .hero-copy .home-headline{filter:drop-shadow(0 0 11px rgba(72,223,219,.19))}
html[data-season="thanksgiving"] .hero{background:radial-gradient(circle at 75% 16%,rgba(237,189,115,.15),transparent 36%),linear-gradient(125deg,#13151a,#1b1618 59%,#181b1e)}
@media(max-width:720px){html[data-season] .home-page .radio-player-topline::after{font-size:.6rem}html[data-season] .site-header::before{box-shadow:0 5px 18px #0009}}
@media(prefers-reduced-motion:reduce){html[data-season] .site-header .brand img{transition:none}}

/* app-install.css */
.app-install-launch{position:fixed;right:18px;bottom:18px;z-index:80;display:flex;align-items:center;gap:7px;min-height:42px;padding:8px 14px;border:1px solid #9bc858;border-radius:999px;background:#12201c;color:#f5f8f3;box-shadow:0 8px 30px #0009,0 0 16px #a8db5540;font:800 .85rem/1.2 system-ui,sans-serif;cursor:pointer}
.app-install-launch:hover,.app-install-launch:focus-visible{background:#233b2a;outline:2px solid #d0f49d;outline-offset:2px}
.app-install-dialog{width:min(520px,calc(100% - 28px));max-height:min(90vh,760px);padding:0;border:1px solid #62807d;border-radius:20px;background:#101923;color:#f4f7f8;box-shadow:0 25px 90px #000d;overflow:auto}
.app-install-dialog::backdrop{background:rgba(2,5,9,.78);backdrop-filter:blur(5px)}
.app-install-panel{padding:24px;display:grid;gap:14px;font:inherit}
.app-install-head{display:flex;align-items:start;justify-content:space-between;gap:12px}
.app-install-head h2{margin:2px 0 0;font:900 1.65rem/1.15 system-ui,sans-serif}
.app-install-eyebrow{margin:0;color:#c7e796;font:850 .72rem/1.2 system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase}
.app-install-close{flex:none;width:36px;height:36px;border:1px solid #53636a;border-radius:9px;background:#1c2b33;color:#fff;font-size:1.35rem;cursor:pointer}
.app-install-panel>p{margin:0;color:#c7d3d8;line-height:1.5}
.app-install-qr-wrap{display:grid;justify-items:center;gap:8px;padding:16px;border:1px solid #3b535c;border-radius:13px;background:#16242c}
.app-install-qr{display:block;width:min(224px,100%);height:auto;padding:8px;border-radius:10px;background:#fff}
.app-install-qr-wrap span{color:#d9e6e8;font-size:.85rem;text-align:center}
.app-install-actions{display:flex;flex-wrap:wrap;gap:9px}
.app-install-actions button{min-height:42px;padding:9px 15px;border:1px solid #9ac36d;border-radius:8px;background:#344d2f;color:#fff;font:800 .88rem system-ui,sans-serif;cursor:pointer}
.app-install-actions .app-install-copy{border-color:#536875;background:#20313b}
.app-install-actions button[hidden]{display:none}
.app-install-help{margin:0;padding-left:19px;color:#b9cbd0;font-size:.88rem;line-height:1.5}
.app-install-help li+li{margin-top:5px}
.app-install-note{min-height:1.3em;color:#cfe69e;font-size:.82rem}
@media(max-width:600px){.app-install-launch{right:12px;bottom:12px;min-height:40px;padding:8px 12px}.app-install-panel{padding:19px}}

/* help-chat.css */

#station-help{padding:24px;display:flex;justify-content:center;font-family:Arial,sans-serif}#station-help .help-window{width:390px;max-width:100%;background:#111923;color:#f5f7fa;border:1px solid #394852;border-radius:18px;overflow:hidden;box-shadow:0 12px 36px #0003}#station-help .help-head{padding:18px 20px;border-bottom:1px solid #394852;background:#192630;display:flex;align-items:center;gap:12px}#station-help .help-mark{color:#ffd181;font-weight:800;font-size:20px}#station-help .help-title{font-size:17px;font-weight:700}#station-help .help-sub{color:#bacbd5;font-size:13px;margin-top:5px}#station-help button,#station-help input,#station-help textarea{font:inherit}#station-help .help-body{padding:18px}#station-help .help-tabs{display:flex;gap:8px;margin-bottom:20px}#station-help button{border:1px solid #516777;background:#172632;color:#eff5fa;border-radius:9px;padding:10px 12px;cursor:pointer;min-height:44px}#station-help .help-tabs button{flex:1;font-size:14px;font-weight:700}#station-help .help-tabs button[aria-selected=true]{background:#efbe70;color:#141b21;border-color:#efbe70}#station-help .help-bubble{padding:14px;background:#21313e;border-radius:12px;line-height:1.6;font-size:15px;margin-bottom:14px}#station-help .help-questions{display:grid;gap:8px}#station-help .help-questions button{text-align:left;font-size:14px}#station-help .help-answer{margin-top:16px;color:#e0edf4;font-size:15px;line-height:1.6;border-left:3px solid #efbe70;padding-left:12px}#station-help .help-form{display:grid;gap:14px}#station-help label{display:grid;gap:6px;font-size:14px;color:#c8d5df}#station-help input,#station-help textarea{box-sizing:border-box;width:100%;padding:12px;border:1px solid #536a79;border-radius:8px;background:#090f16;color:#fff;font-size:16px}#station-help textarea{min-height:110px;resize:vertical}#station-help .help-send{background:#b32838;border-color:#e2707b;font-weight:700;color:#fff}#station-help .help-note{color:#b7c8d3;font-size:13px;line-height:1.6;margin:0}#station-help .help-footer{border-top:1px solid #394852;padding:12px 20px;font-size:12px;color:#b8c7d0}#station-help [hidden]{display:none!important}#station-help button:focus-visible{outline:3px solid #f6d49e;outline-offset:2px}@media(max-width:400px){#station-help{padding:12px}.help-body{padding:14px}}

#station-help{position:fixed;z-index:2000;bottom:18px;right:18px;padding:0;display:block;max-width:calc(100vw - 36px);pointer-events:none}#station-help .help-window{pointer-events:auto;max-height:calc(100dvh - 104px);overflow-y:auto;margin-bottom:12px}#station-help .help-launch{pointer-events:auto;display:flex;align-items:center;gap:8px;margin-left:auto;background:#a32235;border:1px solid #e87882;color:#fff;font-weight:700;box-shadow:0 4px 18px #0005}#station-help .help-close{margin-left:auto;padding:8px;min-width:44px;background:transparent}#station-help .help-answer a{display:inline-block;margin-top:10px;color:#ffdc95;text-underline-offset:3px}#station-help .help-footer{font-size:13px}#station-help button:disabled{opacity:.6;cursor:wait}@media(max-width:440px){#station-help{bottom:12px;right:12px;max-width:calc(100vw - 24px)}#station-help .help-window{width:calc(100vw - 24px)}}

#station-help .help-email{color:#ffdc95;text-underline-offset:3px;font-size:14px;align-self:start}

/* Keep Help Chat clear of the existing Get the app control. */
#station-help{bottom:76px;right:18px}
#station-help .help-launch{min-height:40px;padding:8px 11px;gap:6px;border-radius:999px;font-size:14px;line-height:1.2}
#station-help .help-window{max-height:calc(100dvh - 150px)}
@media(max-width:600px){#station-help{bottom:66px;right:12px;max-width:calc(100vw - 24px)}#station-help .help-window{max-height:calc(100dvh - 130px)}}

/* 2026-10-04: floating-control lane — Help sits above Get the app, never under Back to Top. */
#station-help{right:18px!important;bottom:72px!important}
@media(max-width:640px){#station-help{right:12px!important;bottom:66px!important}}

/* visitor-flags.css */
.visitor-country-counter{width:184px;max-width:100%;box-sizing:border-box;padding:10px 12px;background:#111f2a;border:1px solid #40535c;border-radius:9px;color:#eef4f7;font-family:Arial,sans-serif;text-align:left;align-self:start;justify-self:start;margin-right:auto}
.visitor-country-counter h3{font:500 11px/1.3 Arial,sans-serif;letter-spacing:.09em;margin:0 0 9px;color:#c7d8df;text-transform:uppercase}
.visitor-country-flags{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 10px}
.visitor-country-flag{display:flex;align-items:center;gap:5px;min-width:0;color:#eef4f7;font:500 12px/1.3 Arial,sans-serif;font-variant-numeric:tabular-nums}
.visitor-country-flag .country-emoji{font-size:21px;line-height:1;flex:none}
.visitor-country-flag .country-count{overflow-wrap:anywhere}
.visitor-country-counter .visitor-country-total{font:400 11px/1.4 Arial,sans-serif;color:#a9bcc7;margin:9px 0 0}
.visitor-country-counter details{margin-top:8px;font-size:12px}.visitor-country-counter summary{cursor:pointer;color:#c7d8df;padding:4px 0}
.visitor-country-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid #263a46;font-size:14px;color:#eef4f7}
.visitor-country-row:last-child{border-bottom:0}.visitor-country-row .country-emoji{font-size:23px;line-height:1;flex:none}.visitor-country-row .country-count{margin-left:auto;font-variant-numeric:tabular-nums}
.visitor-country-counter .visitor-country-row{font-size:12px;gap:6px}.visitor-country-counter .visitor-country-row .country-emoji{font-size:18px}
.visitor-country-note{color:#bdcbd3;font-size:14px;line-height:1.5}.visitor-country-counter p{max-width:none}

/* Public visitor country statistics are dashboard-only (2026-10-12). */
html body footer .visitor-country-counter { display:none !important; }

/* back-to-top.css */
/* ASYLUM RADIO LIVE — independent viewport-fixed Back to Top */
.back-to-top-wrap{display:none!important}
#asylum-back-to-top.back-to-top{
  position:fixed!important;
  right:18px!important;
  bottom:126px!important;
  left:auto!important;
  top:auto!important;
  z-index:2147483646!important;
  display:flex!important;
  width:max-content!important;
  max-width:calc(100vw - 36px)!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  min-height:42px!important;
  margin:0!important;
  padding:9px 13px!important;
  border:1px solid #e87882!important;
  border-radius:999px!important;
  background:#a32235!important;
  color:#fff!important;
  box-shadow:0 4px 18px #0008!important;
  font:700 14px/1.2 Arial,sans-serif!important;
  text-decoration:none!important;
  cursor:pointer!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:none!important;
}
#asylum-back-to-top.back-to-top:hover,#asylum-back-to-top.back-to-top:focus-visible{background:#b92a3f!important;outline:2px solid #f6d49e;outline-offset:2px}
@media(max-width:640px){#asylum-back-to-top.back-to-top{right:12px!important;bottom:116px!important;min-height:40px!important;padding:8px 11px!important;font-size:13px!important}}
html{scroll-behavior:smooth}

/* header-tight.css */
/* ASYLUM RADIO LIVE — extra-wide MAIN PUBLIC GRID pages + compact brand-color social icons */
:root{--main-grid-max:2560px}

/* Only the main public pages that contain content grids are widened.
   Admin/portal, schedule, forms, join and other non-grid pages keep their existing width. */
body:has(.home-directory-grid) main,
body:has(.artist-grid) .artists-shell,
body:has(.community-story-grid) .community-shell,
body:has(.carnival-worldwide-grid) main,
body:has(.music-news-grid) main,
body:has(.music-roots-grid) .roots-shell{
  width:calc(100% - 16px)!important;
  max-width:var(--main-grid-max)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Widen only the principal public content grids. */
.home-directory-grid,.artist-grid,.community-story-grid,.community-carnival-grid,
.regional-sports-grid,.carnival-worldwide-grid,.music-news-grid,.music-roots-grid,
.broadcast-grid,.promo-grid{
  width:100%!important;
  max-width:none!important;
}

@media(min-width:1500px){
  .artist-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important}
  .home-directory-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  .community-carnival-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}

@media(max-width:900px){
body:has(.home-directory-grid) main,body:has(.artist-grid) .artists-shell,body:has(.community-story-grid) .community-shell,body:has(.carnival-worldwide-grid) main,body:has(.music-news-grid) main,body:has(.music-roots-grid) .roots-shell{width:calc(100% - 16px)!important}
}
@media(max-width:720px){
body:has(.home-directory-grid) main,body:has(.artist-grid) .artists-shell,body:has(.community-story-grid) .community-shell,body:has(.carnival-worldwide-grid) main,body:has(.music-news-grid) main,body:has(.music-roots-grid) .roots-shell{width:calc(100% - 14px)!important}
}

/* mobile-social-under-logo.css */
/* Mobile only: keep the four existing social buttons centered, clean and evenly spaced under the station logo. */
@media (max-width: 720px) {
  .site-header .header-top {
    align-items: center !important;
  }

  .site-header .header-social,
  header .social-links,
  header .social-icons,
  header .social-media {
    width: min(92vw, 340px) !important;
    max-width: 340px !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    justify-content: center !important;
    align-items: stretch !important;
    justify-items: stretch !important;
    gap: 8px !important;
    margin: 6px auto 8px !important;
    padding: 0 4px !important;
    box-sizing: border-box !important;
    justify-self: center !important;
    text-align: center !important;
  }

  .site-header .header-social-button {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 42px !important;
    padding: 6px 8px !important;
    box-sizing: border-box !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 2px !important;
    text-align: center !important;
    line-height: 1.1 !important;
  }

  .site-header .header-social-button strong {
    white-space: nowrap !important;
  }
}

/* mobile-alignment-fix.css */
/* ASYLUM RADIO LIVE — final mobile alignment layer.
   Loaded last so legacy responsive rules cannot push public pages off-screen. */
*,*::before,*::after{box-sizing:border-box}
html,body{max-width:100%;overflow-x:hidden}
img,video,iframe,svg,canvas{max-width:100%}

@media (max-width:720px){
  html{-webkit-text-size-adjust:100%}
  body{width:100%;margin:0}

  /* Keep the site frame centered and inside the phone viewport. */
  .site-header,main,footer{
    width:calc(100% - 20px)!important;
    max-width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .site-header{min-height:0!important;padding:5px 0 10px!important}
  .site-header::before{height:auto!important}
  .site-header .header-top{width:100%;grid-template-columns:minmax(0,1fr)!important;padding:0!important}
  .site-header .header-top .brand,.site-header>.brand{
    width:min(100%,320px)!important;
    max-width:320px!important;
    height:104px!important;
    margin:0 auto!important;
  }
  .site-header .brand img{width:100%!important;max-width:100%!important;height:100%!important;object-fit:contain!important}
  .site-header .header-social{width:min(100%,340px)!important;max-width:340px!important;margin:4px auto 8px!important}
  .site-header .nav-toggle{width:100%;margin:5px 0 0!important}
  .site-header .main-nav{left:0!important;right:0!important;top:100%!important;width:100%!important;max-width:100%!important}

  /* Homepage: one clean column, consistent gutters. */
  .hero{
    width:100%!important;
    max-width:100%!important;
    grid-template-columns:minmax(0,1fr)!important;
    padding:22px 14px!important;
    gap:20px!important;
    border-radius:18px!important;
  }
  .hero-left-stack,.twitch-column,.hero-media-stack,.hero-copy,.radio-player,
  .hero-sponsor-slot,.hero-video-panel,.on-air-section,.feedback-card{
    min-width:0!important;width:100%!important;max-width:100%!important;
  }
  .hero h1,.home-headline{font-size:clamp(2rem,10vw,3rem)!important;line-height:.98!important;overflow-wrap:anywhere}
  .hero-station-copy,.hero-intro-card{max-width:100%!important}

  /* Player stays usable without widening the page. */
  .radio-player{padding-left:12px!important;padding-right:12px!important}
  .radio-player-main{grid-template-columns:auto minmax(0,1fr)!important;gap:10px!important}
  .radio-player-copy,.radio-player-details,.stream-readout,.stream-readout-music{min-width:0!important}
  .radio-player-details strong,.radio-player-details span,.stream-readout strong{overflow-wrap:anywhere}
  .radio-volume{grid-column:1/-1!important;width:100%!important;max-width:none!important}
  .radio-volume input{width:100%!important;max-width:100%!important}
  body.arl-radio-playing .radio-player{max-height:52vh!important}

  /* Generic public sections/cards should never exceed the viewport. */
  .section,.panel,.promo-grid,.promo,.home-directory-grid,.home-directory-card,
  .artists-shell,.artist-grid,.artist-card,.community-shell,.community-story-grid,
  .community-carnival-grid,.regional-sports-grid,.carnival-worldwide-grid,
  .music-news-grid,.music-roots-grid,.roots-shell,.event-ad-shell,.twitch-live-main,
  .broadcast-grid,.about-grid,.schedule-grid,.contact-card,.donation-card{
    min-width:0!important;max-width:100%!important;
  }
  .artists-shell,.community-shell,.roots-shell,.event-ad-shell,.twitch-live-main{
    width:100%!important;margin-left:auto!important;margin-right:auto!important;
  }
  .artist-grid,.home-directory-grid,.community-story-grid,.community-carnival-grid,
  .regional-sports-grid,.carnival-worldwide-grid,.music-news-grid,.music-roots-grid,
  .broadcast-grid,.promo-grid{grid-template-columns:minmax(0,1fr)!important}

  /* Media, banners and controls scale to the available card width. */
  .hero-sponsor-ad,.hero-sponsor-ad img,.hero-special-banner,.hero-special-banner img,
  .promo img,.promo video,.video-frame,.video-frame iframe,.twitch-stage,
  .twitch-video,.twitch-chat,.twitch-ad-rotator{width:100%!important;max-width:100%!important}
  input,select,textarea,button{max-width:100%}
  table{max-width:100%}

  /* Long text/links must wrap instead of creating horizontal scroll. */
  p,h1,h2,h3,h4,a,span,strong,small,label,td,th{overflow-wrap:anywhere}
  footer{padding-left:4px!important;padding-right:4px!important}
}

@media (max-width:420px){
  .site-header,main,footer{width:calc(100% - 14px)!important}
  .hero{padding:18px 10px!important}
  .site-header .header-top .brand,.site-header>.brand{height:96px!important;max-width:300px!important}
  .site-header .header-social{gap:6px!important}
  .site-header .header-social-button{padding:5px 4px!important;font-size:.62rem!important}
  .site-header .header-social-button strong{font-size:.56rem!important}
  .radio-player{padding-left:9px!important;padding-right:9px!important}
}

/* asylum-sticky-player-preview.css */
/* Electric cyan bottom player — no additional player, no live text */
#asylum-sticky-player{position:fixed;left:50%;bottom:12px;transform:translateX(-50%);z-index:99999;box-sizing:border-box;display:flex;align-items:center;justify-content:center;gap:15px;max-width:calc(100vw - 24px);min-height:62px;padding:10px 20px;border:1px solid #00e5ff;border-radius:999px;background:rgba(7,22,29,.96);box-shadow:0 0 15px rgba(0,229,255,.38),0 0 37px rgba(0,229,255,.22);backdrop-filter:blur(12px);color:#00e5ff}
#asylum-sticky-player .asp-dot{display:block;flex:0 0 11px;width:11px;height:11px;border-radius:50%;background:#00e5ff;box-shadow:0 0 12px rgba(0,229,255,.9)}
#asylum-sticky-player.is-playing .asp-dot{animation:aspCyanDot 1.5s ease-in-out infinite}
#asylum-sticky-player .asp-bars{height:32px;display:flex;align-items:center;gap:4px}
#asylum-sticky-player .asp-bars i{width:4px;height:9px;background:#00e5ff;border-radius:5px}
#asylum-sticky-player.is-playing .asp-bars i{animation:aspCyanWave .75s ease-in-out infinite alternate}
#asylum-sticky-player .asp-bars i:nth-child(2){animation-delay:.1s}#asylum-sticky-player .asp-bars i:nth-child(3){animation-delay:.2s}#asylum-sticky-player .asp-bars i:nth-child(4){animation-delay:.3s}#asylum-sticky-player .asp-bars i:nth-child(5){animation-delay:.4s}#asylum-sticky-player .asp-bars i:nth-child(6){animation-delay:.5s}#asylum-sticky-player .asp-bars i:nth-child(7){animation-delay:.6s}
#asylum-sticky-player .asp-play{width:38px;height:38px;flex:0 0 38px;border:1px solid #00e5ff;border-radius:50%;background:rgba(0,229,255,.13);color:#00e5ff;font-size:18px;cursor:pointer}
#asylum-sticky-player .asp-volume{display:flex;align-items:center}#asylum-sticky-player .asp-volume input{width:90px;accent-color:#00e5ff;cursor:pointer}
#asylum-sticky-player .asp-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@keyframes aspCyanWave{from{height:7px}to{height:30px}}@keyframes aspCyanDot{50%{opacity:.4;box-shadow:0 0 19px #00e5ff}}
body{padding-bottom:95px!important}
@media(max-width:640px){#asylum-sticky-player{bottom:8px;gap:10px;min-height:55px;padding:8px 14px}#asylum-sticky-player .asp-volume input{width:65px}body{padding-bottom:80px!important}}
@media(prefers-reduced-motion:reduce){#asylum-sticky-player *{animation:none!important}}

/* electric-cyan-glow.css */
/* Asylum Radio Live — cyan neon glow on cards ONLY. */
:root { --asylum-neon-cyan: #00e5ff; }
/* Apply only to card elements, never to page, grids, player or layout wrappers. */
:is(.music-root-card,.music-card,.regional-sport-card,.carnival-card,.portal-card,.community-carnival-card,.listen-card,.hero-intro-card,.artiste-watch-card,.on-air-card,.visitor-total-card,.feedback-dj-card,.donation-card,.chat-agreement-card,.card,.grid-card,.feature-card,.dj-card,.team-card,.ad-card,.sponsor-card,.banner-card,.video-card,.content-card,.schedule-card,.artist-card,.stat-card,.info-card,.promo-card,.glass-card,[class$="-card"]):not(.radio-player):not(.main-player):not(.player-shell):not(.sticky-player):not(.visitor-total-card) {
  box-shadow: 0 0 0 1px rgba(0,229,255,.8), 0 0 11px rgba(0,229,255,.43), 0 0 21px rgba(0,229,255,.18) !important;
}

/* header-position-swap.css */
/* Exact position swap: original social slot -> menu; original menu row -> social. */
@media (min-width: 901px) {
  .site-header:has(> .header-top > .header-social):has(> .main-nav) {
    display:grid !important;
    grid-template-columns:minmax(280px, 42%) minmax(0,1fr);
    grid-template-rows:auto auto;
    align-items:center;
    column-gap:14px;
  }
  .site-header > .header-top {display:contents !important;}
  .site-header > .header-top > .brand {grid-column:1;grid-row:1;justify-self:center;}
  .site-header > .main-nav {grid-column:2;grid-row:1;display:flex !important;flex-wrap:wrap;align-content:center;justify-content:flex-end;gap:5px;min-width:0;width:100%;margin:0;padding:8px;position:relative;top:auto;}
  .site-header > .main-nav a {font-size:clamp(9px,.72vw,12px) !important;padding:5px 7px !important;letter-spacing:.025em;border:1px solid rgba(0,240,255,.4);border-radius:6px;box-shadow:inset 0 0 7px rgba(0,240,255,.08);}
  .site-header > .main-nav .nav-row-break {display:none !important;}
  .site-header > .header-top > .header-social {grid-column:1/-1;grid-row:2;justify-self:center;width:min(100%,650px) !important;display:flex !important;flex-wrap:wrap;justify-content:center;gap:8px;}
  .site-header > .header-top > .header-social .header-social-button {min-width:115px;}
  .site-header > .nav-toggle {display:none !important;}
}
/* Keep the existing mobile navigation behavior. */

/* Menu cleanup: remove the decorative EXPLORE heading, keep all links. */
.site-header .main-nav::before { content:none !important; display:none !important; }
@media (min-width:901px) {
  .site-header > .main-nav {
    align-items:center !important;
    align-content:center !important;
    justify-content:flex-end !important;
    gap:6px !important;
    padding:6px 8px !important;
  }
  .site-header > .main-nav a {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:32px;
    margin:0 !important;
    white-space:nowrap;
  }
}

/* neo-borderless-menu.css */
/* Compact borderless neo-digital navigation; no layout changes. */
.site-header .main-nav a,
.site-header .main-nav a.join-link,
.site-header .main-nav a.nav-live {
  border: 0 !important;
  outline-offset: 3px;
  border-radius: 3px !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 4px 6px !important;
  min-height: 25px !important;
  font-size: 10px !important;
  font-weight: 650;
  line-height: 1.2;
  letter-spacing: .075em !important;
  text-transform: uppercase;
  color: #c9faff !important;
  text-shadow: 0 0 5px rgba(0,235,255,.25);
  transition: color .15s ease,text-shadow .15s ease;
}
.site-header .main-nav {gap: 3px !important;}
.site-header .main-nav a:hover,
.site-header .main-nav a.active,
.site-header .main-nav a[aria-current="page"] {
  color: #ffffff !important;
  text-shadow: 0 0 7px rgba(0,240,255,.75) !important;
}
.site-header .main-nav a.nav-live {color:#ff8f96 !important;}
.site-header .main-nav a.nav-live::before {width:5px;height:5px;}
@media(max-width:900px){
  .site-header .main-nav a {font-size:11px !important;min-height:32px !important;padding:7px 9px !important;}
}
