/* 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}

/* 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}}

/* 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}
}

/* music-roots.css */
.music-roots{padding-top:18px}
.music-roots-grid{display:grid;gap:12px;width:100%}
.music-root-entry{overflow:hidden;border:1px solid #46525c;border-radius:18px;background:#151d25}
.music-root-entry:has(.music-root-card[open]){border-color:#71803e;background:#19232b}
.music-root-card{border:0;background:transparent}
.music-root-card>summary{display:flex;align-items:center;gap:20px;min-height:108px;padding:16px 24px;cursor:pointer;list-style:none}
.music-root-card>summary::-webkit-details-marker{display:none}
.music-root-card>summary:focus-visible{outline:3px solid var(--green);outline-offset:-3px}
.music-root-flag{display:block;flex:0 0 96px;width:96px;height:64px;object-fit:contain;border:2px solid rgba(255,255,255,.78);border-radius:8px;background:#0e1318;box-shadow:0 7px 18px rgba(0,0,0,.3);transition:transform .2s ease}
.music-root-card>summary:hover .music-root-flag,.music-root-card>summary:focus-visible .music-root-flag{transform:scale(1.06)}
.music-root-label{flex:1;min-width:0}
.music-root-card>summary small{display:block;margin-bottom:6px;color:var(--green);font-size:.76rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.music-root-card>summary strong{display:block;color:#fff;font-size:clamp(1.25rem,2.5vw,1.85rem);line-height:1.18}
.music-roots-chevron{color:var(--green);font-size:2rem;line-height:1;transition:transform .2s ease}
.music-root-card[open] .music-roots-chevron{transform:rotate(180deg)}
.music-root-body{padding:22px 28px 28px;border-top:1px solid rgba(255,255,255,.12)}
.music-root-body h4{margin:16px 0 5px;color:#ff777c;font-size:1rem}
.music-root-body h4:first-child{margin-top:0}
.music-root-body p{margin:0 0 13px;color:#d4dce3;font-size:1rem;line-height:1.6}
.music-root-body a{display:inline-block;margin:8px 18px 0 0;color:#d3ec8b;font-weight:800;text-decoration:underline;text-underline-offset:4px}
.music-root-actions{display:flex;justify-content:flex-end;padding:0 24px 14px}
.music-root-like{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;padding:5px 12px;border:1px solid #627580;border-radius:999px;background:#25333b;color:#f2f7fa;font:inherit;font-size:.9rem;font-weight:800;cursor:pointer}
.music-root-like:hover{border-color:#d3ec8b;background:#33424a}
.music-root-like[aria-pressed="true"]{border-color:#d3ec8b;background:#344522;color:#ecffbd}
.music-root-like:focus-visible{outline:3px solid #d3ec8b;outline-offset:3px}
.music-root-like:disabled{cursor:wait;opacity:.65}
.music-root-like strong{min-width:1.3em;font-variant-numeric:tabular-nums}
.music-root-status{min-height:1.3em;margin:0;color:#d3ec8b;font-size:.9rem}
@media(max-width:680px){.music-root-card>summary{gap:12px;min-height:88px;padding:13px}.music-root-flag{flex-basis:70px;width:70px;height:47px}.music-root-body{padding:18px}.music-root-actions{padding:0 13px 12px}}
@media(prefers-reduced-motion:reduce){.music-roots-chevron,.music-root-flag{transition:none}}
.music-roots-home-link{display:flex;align-items:center;justify-content:space-between;gap:22px;margin:18px 0;padding:22px 26px;border:1px solid #50664e;border-radius:16px;background:linear-gradient(110deg,#142825,#16232c);box-shadow:inset 0 1px #ffffff14}
.music-roots-home-link h2{margin:0 0 6px;font-size:clamp(1.45rem,3vw,2rem);line-height:1.14}
.music-roots-home-link p:not(.eyebrow){margin:0;color:#cbdad8}
.music-roots-home-link .button{flex:none}
@media(max-width:680px){.music-roots-home-link{align-items:flex-start;flex-direction:column;padding:19px}.music-roots-home-link .button{width:100%}}

/* music-roots-page.css */
.roots-shell{width:min(var(--max),calc(100% - 40px));margin:0 auto;padding:28px 0 70px}
.roots-intro{max-width:none;margin:0 auto 18px;padding:clamp(24px,4vw,42px);border:1px solid #526448;border-radius:19px;background:radial-gradient(circle at 85% 20%,#35563866,transparent 38%),linear-gradient(130deg,#172b2b,#101923 72%)}
.roots-intro h1{max-width:800px;margin:0 0 13px;font-size:clamp(2.5rem,6vw,5rem);line-height:1.02;letter-spacing:-.05em;text-transform:uppercase}
.roots-intro h1 span{color:#c5e993}
.roots-intro>p:not(.eyebrow){max-width:700px;margin:0 0 16px;color:#d0dbdb;font-size:1.02rem;line-height:1.55}
.roots-intro>a{color:#cbea9d;font-weight:800;text-underline-offset:4px}
.roots-shell .music-roots{max-width:none;margin:0 auto;padding:0}
.roots-shell .music-roots>.section-heading{margin:0 0 15px}
.roots-shell .music-roots>.section-heading .eyebrow{display:none}
.roots-shell .music-roots>.section-heading h2{margin:0;font-size:1.3rem;color:#d9e6d1}
.roots-shell .music-roots-grid{max-width:none;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px}
.roots-shell .music-root-card>summary{min-height:115px}
.roots-shell .music-root-flag{flex-basis:112px;width:112px;height:75px}
.roots-shell .music-root-card>summary strong{font-size:clamp(1.07rem,1.8vw,1.4rem)}
.roots-shell .music-root-status{grid-column:1/-1}
@media(max-width:800px){.roots-shell .music-roots-grid{grid-template-columns:1fr}.roots-shell .music-root-card>summary strong{font-size:clamp(1.15rem,3vw,1.55rem)}}
@media(max-width:550px){.roots-shell{width:calc(100% - 28px);padding-top:16px}.roots-intro{padding:22px}.roots-shell .music-root-flag{flex-basis:80px;width:80px;height:54px}.roots-shell .music-root-card>summary{min-height:88px}}

/* Compact Caribbean Music Roots intro card only */
.roots-intro{margin-bottom:14px;padding:clamp(14px,2.2vw,22px)}
.roots-intro .eyebrow{margin-bottom:5px;font-size:.72rem}
.roots-intro h1{margin-bottom:7px;font-size:clamp(1.85rem,4vw,3.35rem);line-height:1}
.roots-intro>p:not(.eyebrow){margin-bottom:9px;font-size:.96rem;line-height:1.4}
.roots-intro>a{font-size:.94rem}
@media(max-width:550px){.roots-intro{padding:15px}.roots-intro h1{font-size:clamp(1.75rem,9vw,2.5rem)}}

/* 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}}
