:root{--navy:#031a30;--navy2:#062744;--gold:#efc653;--gold2:#d9a931;--ink:#0a2038;--muted:#657181;--bg:#f3f5f7}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"DM Sans",sans-serif;color:var(--ink);background:var(--bg)}a{color:inherit}.container{width:min(1480px,calc(100% - 62px));margin:auto}
.site-header{background:linear-gradient(105deg,#02172a,#052a49);color:#fff}.header-grid{min-height:146px;display:grid;grid-template-columns:390px 180px 1fr auto;grid-template-rows:55px 65px;align-items:center;gap:0 32px}.brand{grid-row:1/3;display:block}.brand img{width:390px;max-width:100%;display:block}.script-tag{grid-row:1/3;font-family:"Pacifico";font-size:27px;line-height:1.28;color:#f6d36c;transform:rotate(-5deg);text-align:center}.top-meta{justify-self:end;display:grid;font-size:12px;line-height:1.2}.top-meta strong{color:var(--gold);font-size:14px}.nav{grid-column:3/5;align-self:end;justify-self:end;display:flex;gap:38px}.nav a{text-decoration:none;padding:0 0 20px;font-size:14px;font-weight:700;border-bottom:4px solid transparent}.nav a:hover{color:var(--gold);border-color:var(--gold)}.menu-toggle{display:none}
.hero{height:500px;position:relative;overflow:hidden;background:#15334c;color:white}.slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity .7s ease}.slide.active{opacity:1}.hero-content{height:100%;display:flex;position:relative;z-index:3;flex-direction:column;justify-content:center;align-items:flex-start}.hero h1{font-family:"Inter";font-size:clamp(36px,4.4vw,62px);line-height:1.12;margin:0;text-shadow:0 3px 14px #000b;font-weight:800}.hero h1 em{font-style:normal;color:var(--gold)}.listen-hero{margin-top:28px;border:0;border-radius:999px;background:linear-gradient(#ffe89b,#d5a22c);padding:10px 31px 10px 12px;display:flex;align-items:center;gap:18px;font-size:20px;font-weight:800;color:#0a223c;box-shadow:0 10px 24px #0005;cursor:pointer}.listen-hero span{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#06223e;color:#fff}.listen-hero.small{font-size:16px}.listen-hero.small span{width:42px;height:42px}
.location-card{position:absolute;right:17%;bottom:25px;z-index:3;background:#071d33d9;padding:9px 14px;border-radius:7px;display:flex;gap:10px;align-items:center}.location-card div{display:grid}.location-card strong{font-size:12px}.location-card small{font-size:10px}.pin{color:white}.feel-good{position:absolute;right:4%;bottom:25px;z-index:3;font-family:"Pacifico";color:white;font-size:20px;text-align:center;transform:rotate(-5deg);text-shadow:0 2px 8px #000}.feel-good span{color:var(--gold);font-size:26px}.slider-arrow{position:absolute;z-index:4;top:48%;width:52px;height:52px;border:0;border-radius:50%;background:#001426d8;color:white;font-size:40px;cursor:pointer}.slider-arrow.left{left:20px}.slider-arrow.right{right:20px}.slider-dots{position:absolute;z-index:4;bottom:14px;left:50%;display:flex;gap:10px}.slider-dots button{width:13px;height:13px;border-radius:50%;border:0;background:#fff}.slider-dots button.active{background:var(--gold)}
.player-strip{background:linear-gradient(90deg,#03192e,#062a48);color:white}.player-strip-inner{min-height:110px;display:flex;align-items:center;gap:20px}.album-art{width:80px;height:80px;background:#f0e9d4;color:#06233e;display:grid;place-items:center;font-weight:900;font-size:26px}.np{display:grid;min-width:330px}.np small{color:var(--gold);font-weight:800;font-size:10px}.np strong{font-size:18px}.np span{font-size:13px}.circle-control{margin-left:auto;width:56px;height:56px;border-radius:50%;border:2px solid #637a90;background:none;color:white;font-size:19px;cursor:pointer}.volume-ui{display:flex;align-items:center;gap:12px}.volume-ui i{width:150px;height:5px;border-radius:5px;background:linear-gradient(90deg,var(--gold) 58%,#466079 58%)}.outline-pill{border:1px solid #49647b;border-radius:999px;text-decoration:none;padding:14px 23px;font-size:11px;font-weight:800}
.dashboard{padding:18px 0;background:#f3f5f7}.dash-grid{display:grid;grid-template-columns:2fr 1fr;gap:18px}.panel{background:white;border-radius:10px;padding:18px;box-shadow:0 2px 10px #13283e0a}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.panel-head h2{font:800 28px "Inter";margin:0}.panel-head a{font-size:12px;color:#98710f;font-weight:800;text-decoration:none}.panel-head span{font-size:10px;color:#8a929c}.news-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.news-card{border:1px solid #e0e5e9;border-radius:8px;overflow:hidden;background:white}.news-img,.news-img img{width:100%;height:138px;object-fit:cover;display:block}.news-img.fallback{display:grid;place-items:center;background:linear-gradient(135deg,#083252,#0a2038);color:var(--gold);font-size:36px;font-weight:900}.news-copy{padding:10px}.news-copy h3{font-size:14px;line-height:1.22;margin:0 0 7px}.news-copy p{font-size:11px;color:#647080;line-height:1.4;margin:0 0 8px}.news-copy a{text-decoration:none;color:#946b08;font-size:10px;font-weight:800}.news-meta{font-size:9px;color:#8b939d}.fallback-message{padding:18px;background:#fff6d8;border-radius:8px}.weather-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.weather-card{border:1px solid #e2e6ea;border-radius:10px;padding:14px;min-height:138px}.weather-top{display:flex;justify-content:space-between}.weather-town{font-weight:800}.weather-icon{font-size:34px}.weather-temp{font:800 31px "Inter";margin-top:-2px}.weather-desc,.weather-meta{font-size:10px;color:#637080}.weather-meta{margin-top:8px}.weather-card.loading{background:linear-gradient(90deg,#f4f5f6,#fff,#f4f5f6);background-size:300%;animation:shimmer 1.4s infinite}@keyframes shimmer{to{background-position:-100%}}
.decade-ribbon{background:linear-gradient(90deg,#c99b35,#f0d589,#c89c3c);padding:18px 0}.ribbon-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.ribbon-grid>a,.dab-ribbon{display:flex;align-items:center;gap:14px;text-decoration:none}.round-icon,.dab-ribbon>span{font-size:38px}.ribbon-grid b{font:800 20px "Inter";display:block}.ribbon-grid small{font-size:11px}.dab-ribbon{justify-content:end}
footer{background:#03182b;color:#aebbc7;padding:30px 0}.footer-row{display:flex;align-items:center;justify-content:space-between;font-size:11px}.footer-row img{width:200px}.subhero{background:linear-gradient(115deg,#041a30,#08385d);color:white;padding:70px 0}.subhero span{color:var(--gold);font-size:11px;letter-spacing:2px;font-weight:800}.subhero h1{font:800 clamp(45px,7vw,80px) "Inter";margin:10px 0 0}.content-page{background:#f4f6f8;padding:70px 0;min-height:420px}.content-page h2{font:800 40px "Inter"}.two-column{display:grid;grid-template-columns:1fr 1fr;gap:50px}.feature-box{background:#fff;border-radius:14px;padding:35px;box-shadow:0 3px 18px #13263b10}.feature-box small{color:#9a7417;font-weight:800}.feature-box h3{font-size:24px}.music-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.music-grid article{padding:35px;border-radius:14px;background:white}.music-grid article>b{font:800 65px "Inter";color:#c79828}.music-grid h2{font-size:26px}.prose{max-width:800px}.prose p{font-size:18px;line-height:1.75;color:#566273}.full-news{grid-template-columns:repeat(3,1fr)}.note{font-size:12px;color:#78818a}
@media(max-width:1100px){.header-grid{grid-template-columns:310px 1fr auto;grid-template-rows:70px 55px}.brand img{width:310px}.script-tag{display:none}.brand{grid-row:1/3}.nav{grid-column:2/4}.dash-grid{grid-template-columns:1fr}.news-grid{grid-template-columns:repeat(2,1fr)}.full-news{grid-template-columns:repeat(2,1fr)}}
@media(max-width:780px){.container{width:calc(100% - 26px)}.header-grid{display:flex;min-height:88px;gap:12px}.brand img{width:225px}.top-meta{display:none}.menu-toggle{display:block;margin-left:auto;background:none;border:0;color:#fff;font-size:27px}.nav{display:none;position:absolute;z-index:30;top:88px;left:0;right:0;background:#031a30;padding:18px;flex-direction:column;gap:8px}.nav.open{display:flex}.nav a{padding:8px;border:0}.hero{height:470px}.hero h1{font-size:38px}.feel-good,.location-card{display:none}.player-strip-inner{min-height:95px}.volume-ui,.outline-pill{display:none}.np{min-width:0}.circle-control{margin-left:auto}.weather-grid,.news-grid,.full-news{grid-template-columns:1fr 1fr}.ribbon-grid{grid-template-columns:1fr 1fr}.two-column,.music-grid{grid-template-columns:1fr}}
@media(max-width:480px){.brand img{width:190px}.hero h1{font-size:32px}.news-grid,.full-news,.weather-grid{grid-template-columns:1fr}.ribbon-grid{grid-template-columns:1fr}.dab-ribbon{justify-content:start}.album-art{display:none}.footer-row{display:grid;gap:15px}}

/* Dynamic now-playing artist / release artwork */
.album-art{
  overflow:hidden;
  padding:0;
  background:#0b2238;
  flex:0 0 80px;
}
.album-art img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

.album-art img{
  width:100%;
  height:100%;
  object-fit:contain;
  background:#071d33;
}
.album-art img.has-artwork{
  object-fit:cover;
  background:#ddd;
}

/* Final professional contact page */
.contact-final{padding:72px 0 84px}
.contact-intro{max-width:760px;margin:0 auto 42px;text-align:center}
.contact-intro .eyebrow,.contact-bottom .eyebrow{color:#a47b17;font-size:11px;font-weight:800;letter-spacing:2.4px}
.contact-intro h2{margin:9px 0 13px;font:800 clamp(34px,4vw,50px) "Inter",sans-serif;color:#08213a}
.contact-intro p{margin:0;color:#657181;font-size:16px;line-height:1.7}
.contact-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch}
.contact-card{position:relative;background:#fff;border:1px solid #e1e6ea;border-radius:15px;padding:32px 28px 30px;box-shadow:0 8px 28px rgba(8,33,58,.06);display:flex;flex-direction:column;min-height:320px}
.contact-card.featured{border-top:4px solid #d8aa36;padding-top:29px}
.contact-icon{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;background:#08233d;color:#efc653;font-size:21px;margin-bottom:23px}
.contact-card small{color:#a47b17;font-weight:800;letter-spacing:1.5px;font-size:10px}
.contact-card h3{margin:7px 0 11px;font:800 23px/1.2 "Inter",sans-serif;color:#09223b}
.contact-card p{margin:0 0 24px;color:#697583;font-size:14px;line-height:1.65}
.contact-email{margin-top:auto;display:block;padding-top:20px;border-top:1px solid #e8ebee;color:#0a2945;text-decoration:none;font-weight:800;font-size:15px;overflow-wrap:anywhere}
.contact-email:after{content:" →";color:#b1831c}
.contact-email:hover{color:#a8780c}
.contact-bottom{margin-top:24px;padding:30px 34px;border-radius:15px;background:linear-gradient(110deg,#03182b,#073554);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:25px}
.contact-bottom h3{font:800 28px "Inter",sans-serif;margin:5px 0}
.contact-bottom p{margin:0;color:#c1ccd5;font-size:13px}
.contact-listen{flex:none;text-decoration:none;background:linear-gradient(#ffe89b,#d5a22c);color:#08213a;border-radius:999px;padding:12px 25px 12px 12px;font-weight:800;display:flex;align-items:center;gap:12px}
.contact-listen span{width:39px;height:39px;border-radius:50%;display:grid;place-items:center;background:#08213a;color:#fff}
@media(max-width:900px){.contact-cards{grid-template-columns:1fr}.contact-card{min-height:auto}.contact-bottom{align-items:flex-start;flex-direction:column}}

/* Final professional About page */
.about-final{padding:72px 0 82px}
.about-final .eyebrow{color:#a47b17;font-size:10px;font-weight:800;letter-spacing:2.3px}
.about-intro{max-width:880px;margin:0 auto 50px;text-align:center}
.about-intro h2{margin:10px 0 16px;font:800 clamp(39px,5vw,58px)/1.02 "Inter",sans-serif;color:#08213a}
.about-intro p{max-width:760px;margin:auto;color:#63707e;font-size:17px;line-height:1.75}
.about-story-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:25px;margin-bottom:65px}
.about-story-copy{background:#fff;padding:40px;border-radius:16px;border:1px solid #e2e6ea;box-shadow:0 8px 28px rgba(8,33,58,.05)}
.about-story-copy h3{font:800 32px/1.15 "Inter",sans-serif;margin:9px 0 17px;color:#08213a}
.about-story-copy>p{color:#657181;font-size:15px;line-height:1.75}
.about-decades{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;margin-top:29px}
.about-decades div{padding:19px 15px;background:#f5f6f8;border-radius:11px}
.about-decades b{display:block;font:800 31px "Inter",sans-serif;color:#bd8c1c}
.about-decades span{display:block;color:#657181;font-size:10px;margin-top:4px}
.about-highlight{border-radius:16px;background:linear-gradient(135deg,#03192d,#073554);padding:35px;color:#fff;display:flex;flex-direction:column;justify-content:center;box-shadow:0 14px 35px rgba(3,25,45,.17)}
.about-highlight img{width:290px;max-width:90%;margin:0 auto 25px}
.about-highlight small{color:#efc653;font-weight:800;letter-spacing:1.6px}
.about-highlight h3{font:800 28px/1.15 "Inter",sans-serif;margin:7px 0 12px}
.about-highlight p{color:#c5d0d9;line-height:1.6;font-size:14px}
.about-listen{margin-top:18px;width:max-content;display:flex;align-items:center;gap:12px;text-decoration:none;background:linear-gradient(#ffe89b,#d5a22c);color:#08213a;border-radius:999px;padding:10px 24px 10px 10px;font-weight:800}
.about-listen span{width:39px;height:39px;border-radius:50%;display:grid;place-items:center;background:#08213a;color:#fff}
.coverage-section{border-top:1px solid #dfe4e8;padding-top:58px}
.coverage-heading{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:29px}
.coverage-heading>div:first-child{max-width:790px}
.coverage-heading h2{font:800 clamp(38px,5vw,54px)/1.05 "Inter",sans-serif;margin:8px 0 13px;color:#08213a}
.coverage-heading p{margin:0;color:#657181;line-height:1.68;font-size:14px}
.coverage-badge{flex:none;background:#08213a;color:#fff;border-radius:12px;padding:16px 22px;text-align:center;display:grid}
.coverage-badge strong{color:#efc653;font:800 26px "Inter",sans-serif}
.coverage-badge span{font-size:9px;letter-spacing:2px;font-weight:800}
.coverage-layout{display:grid;grid-template-columns:1.18fr .82fr;gap:22px}
.coverage-map-card{background:#fff;border-radius:16px;border:1px solid #e0e5e9;padding:20px;box-shadow:0 7px 25px rgba(8,33,58,.05)}
.coverage-map{display:block;width:100%;height:auto;background:#f8fafb;border-radius:12px}
.coverage-map .map-point circle{fill:#08213a;stroke:#efc653;stroke-width:4}
.coverage-map .map-point text{font:700 13px "DM Sans",sans-serif;fill:#08213a}
.coverage-map .map-corridor{font:700 11px "DM Sans",sans-serif;fill:#9b7417}
.coverage-map .map-region{font:800 18px "Inter",sans-serif;letter-spacing:2px;fill:#9aa8b2}
.coverage-map .map-note{font:700 11px "DM Sans",sans-serif;fill:#94701a}
.map-legend{display:flex;gap:22px;flex-wrap:wrap;padding:15px 5px 0;color:#657181;font-size:10px}
.map-legend span{display:flex;align-items:center;gap:7px}
.legend-fill{width:17px;height:10px;background:#efc65388;border-radius:4px}
.legend-dot{width:10px;height:10px;background:#08213a;border:2px solid #efc653;border-radius:50%}
.legend-line{width:22px;border-top:3px dashed #c59621}
.coverage-copy{background:#fff;border-radius:16px;border:1px solid #e0e5e9;padding:31px;box-shadow:0 7px 25px rgba(8,33,58,.05)}
.coverage-copy h3{font:800 27px/1.15 "Inter",sans-serif;color:#08213a;margin:8px 0 13px}
.coverage-copy>p{font-size:14px;line-height:1.7;color:#657181}
.coverage-list{display:grid;gap:0;margin:21px 0;border-top:1px solid #e6eaed}
.coverage-list div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid #e6eaed}
.coverage-list b{font-size:13px;color:#0a2945}
.coverage-list span{font-size:11px;color:#7a858f;text-align:right}
.coverage-note{margin-top:20px;background:#fff7dc;border-left:4px solid #d6a531;border-radius:8px;padding:15px 17px}
.coverage-note strong{font-size:12px}
.coverage-note p{font-size:11px;line-height:1.55;color:#657181;margin:5px 0 0}
.coverage-source{display:inline-block;margin-top:18px;color:#9a7112;font-size:11px;font-weight:800;text-decoration:none}
.about-bottom{margin-top:28px;padding:31px 35px;border-radius:16px;background:linear-gradient(110deg,#03182b,#073554);display:flex;align-items:center;justify-content:space-between;gap:25px;color:#fff}
.about-bottom h3{font:800 27px "Inter",sans-serif;margin:5px 0}
.about-bottom p{margin:0;color:#c1ccd5;font-size:13px}
@media(max-width:940px){.about-story-grid,.coverage-layout{grid-template-columns:1fr}.coverage-heading{align-items:flex-start}.about-highlight img{width:245px}.coverage-badge{display:none}}
@media(max-width:650px){.about-final{padding-top:55px}.about-story-copy,.about-highlight,.coverage-copy{padding:25px}.about-decades{grid-template-columns:1fr}.coverage-heading{display:block}.coverage-map-card{padding:8px}.map-legend{padding:13px 8px}.coverage-list div{display:grid;gap:3px}.coverage-list span{text-align:left}.about-bottom{align-items:flex-start;flex-direction:column}}

