/* Mobile public layout and ad placements around the mobile radio. */
.mobile-radio-ad{display:none}
@media(max-width:768px){
 body.public-site{min-width:0}
 body.public-site .site-header .container{display:grid;grid-template-columns:64px minmax(0,1fr) 34px;gap:10px;flex-wrap:nowrap}
 body.public-site .site-header .brand{grid-column:1;grid-row:1}
 body.public-site .site-header .logo{width:64px;max-width:100%;height:auto}
 body.public-site .site-header .header-onair{grid-column:2;grid-row:1;width:100%;max-width:none;grid-template-columns:38px minmax(0,1fr) 26px;gap:6px;padding:7px 6px}
 body.public-site .header-onair .strip-artwork{width:38px;height:38px}
 body.public-site .header-onair .strip-program strong{font-size:10px}
 body.public-site .header-onair .strip-live-label{font-size:6px}
 body.public-site .header-onair #stripProgramTime{font-size:7px}
 body.public-site .site-header .site-theme-toggle{grid-column:3;grid-row:1;margin:0;width:34px;min-width:34px;min-height:34px}
 body.public-site .mobile-menu a{min-height:42px;padding:10px 12px;font-size:14px}
 body.public-site .mobile-menu__content{padding:7px 12px}
 body.public-site main{min-width:0;max-width:100%;box-sizing:border-box}
 body.public-site .home-page{padding:16px!important}
 body.public-site .newsroom-topbar{gap:12px}.newsroom-topbar form{width:100%}
 body.public-site input:not([type=range]),body.public-site textarea,body.public-site select{font-size:16px}
 body.public-site .home-banner-rail button{width:32px;height:32px}
 body.public-site #listen .mobile-player-container{display:flex;flex-direction:column;align-items:stretch;gap:20px;margin:0}
 body.public-site #listen .mobile-radio-ad{display:flex;justify-content:center;width:100%;margin:0;min-width:0}
 body.public-site #listen .mobile-radio-ad:empty{display:none}
 body.public-site #listen .mobile-radio-ad .player-ad{display:block!important;width:300px;min-width:0;max-width:100%;height:250px;min-height:250px;margin:0;overflow:hidden;flex-shrink:0;background:transparent;border:0}
 body.public-site #listen .mobile-radio-ad .player-ad>a{display:block;width:100%;height:250px}
 body.public-site #listen .mobile-radio-ad img{display:block;width:100%;height:250px;object-fit:contain}
 body.public-site #listen .mobile-player{width:100%;margin:0;box-sizing:border-box;border-radius:18px;padding:22px 18px;background:linear-gradient(125deg,#cd166f,#791050);box-shadow:0 10px 24px #670a3820}
 body.public-site .mobile-player-play{width:72px;height:72px}
 body.public-site .mobile-player-mute{min-width:44px;min-height:44px}
 body.public-site .mobile-station-tagline{white-space:normal;line-height:1.6}
 body.public-site #home-gallery .stories-slider{padding:0}
 body.public-site .home-story h3,body.public-site #home-gallery .story-card .story-caption{font-size:14px;line-height:1.7}
 body.public-site .article-page .article-byline{gap:12px}.article-page .article-body{overflow-wrap:anywhere}
 body.public-site .footer-nav{flex-wrap:wrap;justify-content:center;gap:12px}
 body.public-site .floating-player-btn{min-width:40px;min-height:40px}
}
@media(max-width:359px){
 body.public-site .site-header{padding:8px 10px}
 body.public-site .site-header .container{grid-template-columns:54px minmax(0,1fr) 32px;gap:6px}
 body.public-site .home-page{padding:10px!important}
 body.public-site .home-news-grid,body.public-site #home-gallery .stories-row,body.public-site .news-listing .post-container,body.public-site .gallery-page #gallery-list{grid-template-columns:1fr}
 body.public-site .header-onair .strip-artwork{width:32px;height:34px}
 body.public-site .site-header .header-onair{grid-template-columns:32px minmax(0,1fr) 24px;gap:5px}
}
/* Dedicated mobile presentation. Desktop rules and creative files stay unchanged. */
@media(max-width:768px){
 body.public-site .site-header{position:sticky;padding:10px 16px;background:linear-gradient(110deg,#ce0066,#970450);box-shadow:0 5px 18px #45002015}
 body.public-site .site-header .container{grid-template-columns:74px minmax(0,1fr) 38px;gap:10px}
 body.public-site .site-header .logo{width:74px}
 body.public-site .site-header .header-onair{background:#ffffff10;border:1px solid #ffffff24;border-radius:10px;grid-template-columns:minmax(0,1fr) 32px;padding:9px 10px;gap:8px}
 body.public-site .header-onair .strip-artwork{display:none}
 body.public-site .header-onair .strip-program{grid-column:1;gap:4px}
 body.public-site .header-onair .strip-play{grid-column:2;width:32px;height:32px;font-size:12px}
 body.public-site .header-onair .strip-program strong{font-size:12px}.public-site .header-onair .strip-live-label{font-size:7px;letter-spacing:1.2px}
 body.public-site .header-onair #stripProgramTime{font-size:9px}
 body.public-site .site-header .site-theme-toggle{width:38px;height:38px;background:#ffffff15}
 body.public-site .mobile-menu{background:#fff;border-bottom:1px solid #eee1e8}
 body.public-site .mobile-menu__content{padding:9px 12px}
 body.public-site .mobile-menu ul{gap:8px}
 body.public-site .mobile-menu a{color:#8e1a58;background:#fff3f9;border:1px solid #f2d8e5;border-radius:10px;font-size:13px;padding:9px 12px;min-height:40px}
 body.public-site .mobile-menu a[aria-current=page]{background:#c80065;color:#fff;border-color:#c80065}
 body.public-site .mobile-menu a i{margin-right:6px}
 body.public-site .home-banner-track{gap:14px;overflow-x:auto;scroll-padding:0}
 body.public-site .home-banner-slide{flex:0 0 100%;aspect-ratio:3/2;border-radius:16px;clip-path:inset(0 round 16px);background:transparent}
 body.public-site .home-banner-slide .home-banner-image{width:100%;height:100%;object-fit:contain;border-radius:16px}
 body.public-site .home-banner-slide picture{width:100%;height:100%;display:block}
 body.public-site .home-banner-rail{margin:0 0 24px}
 body.public-site #home-gallery #bannerCarousel1 img{aspect-ratio:3/2;height:auto;object-fit:contain;max-height:none}
 body.public-site #listen .mobile-radio-ad .player-ad{width:300px;height:250px;max-width:100%;border-radius:12px;overflow:hidden}
 html[data-theme=dark] body.public-site .mobile-menu{background:#201525;border-color:#49304a}
 html[data-theme=dark] body.public-site .mobile-menu a{background:#352039;border-color:#57324c;color:#ffd3e8}
 html[data-theme=dark] body.public-site .mobile-menu a[aria-current=page]{background:#bd0060;color:#fff}
}
@media(max-width:359px){body.public-site .site-header{padding:9px 10px}body.public-site .site-header .container{grid-template-columns:60px minmax(0,1fr) 34px;gap:7px}body.public-site .site-header .logo{width:60px}body.public-site .header-onair .strip-program strong{font-size:11px}}
@media(max-width:768px){
 body.public-site .home-banner-slide:not(:has(source[media])){aspect-ratio:2.3/1}
 body.public-site #home-gallery #bannerCarousel1 .carousel-item:not(:has(source[media])) img{aspect-ratio:auto}
}
/* Mobile social shortcuts replace the on-air header banner. */
.mobile-header-social{display:none}
@media(max-width:768px){
 body.public-site .site-header .header-onair{display:none}
 body.public-site .site-header .container{grid-template-columns:74px minmax(0,1fr) 38px}
 body.public-site .mobile-header-social{display:flex;grid-column:2;grid-row:1;align-items:center;justify-content:flex-end;gap:8px}
 .mobile-header-social a{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;font-size:14px;text-decoration:none;color:#fff;flex-shrink:0}
 .mobile-header-social .social-facebook{background:#1877f2}.mobile-header-social .social-twitter{background:#171717}.mobile-header-social .social-youtube{background:#f00022}.mobile-header-social .social-instagram{background:linear-gradient(35deg,#f9b54c,#e72b75,#8547ce)}
 .mobile-header-social a:focus-visible{outline:2px solid #fff;outline-offset:3px}
 body.public-site .topbar-social{display:none}
 body.public-site .newsroom-topbar .topbar-actions{display:none}
}
@media(max-width:359px){body.public-site .site-header .container{grid-template-columns:60px minmax(0,1fr) 34px;gap:6px}.mobile-header-social a{width:29px;height:29px;font-size:13px}body.public-site .mobile-header-social{gap:5px}}
/* Compact mobile ad-and-radio stack, with clear controls and no large empty gaps. */
@media(max-width:768px){
 body.public-site #listen{margin:12px 0 24px;padding:0}
 body.public-site #listen .mobile-player-container{gap:14px}
 body.public-site #listen .mobile-radio-ad{padding:0;align-items:center;line-height:0}
 body.public-site #listen .mobile-radio-ad .player-ad{margin:0 auto!important;min-height:250px;height:250px;width:300px;max-width:100%;border-radius:10px;border:1px solid #f1e7ef;background:#fff;box-sizing:border-box}
 body.public-site #listen .mobile-radio-ad .player-ad>a,body.public-site #listen .mobile-radio-ad .player-ad img{margin:0;padding:0;width:100%;height:100%;object-fit:contain}
 body.public-site #listen #mobileRadioPlayer{display:grid;grid-template-columns:64px minmax(0,1fr);grid-template-rows:auto auto auto auto;gap:10px 18px;padding:20px;border-radius:18px;text-align:left;box-shadow:0 8px 24px #6e0d3520}
 body.public-site #mobileRadioPlayer .mobile-player-header{grid-column:1/-1;grid-row:1;margin:0 0 8px}
 body.public-site #mobileRadioPlayer .mobile-station-meta{gap:12px;align-items:center}
 body.public-site #mobileRadioPlayer .mobile-station-logo{width:46px;height:46px;object-fit:contain;box-shadow:none;border-radius:10px}
 body.public-site #mobileRadioPlayer .mobile-station-name{font-size:19px;line-height:1.5;margin:0;color:#fff;text-align:left}
 body.public-site #mobileRadioPlayer .mobile-station-tagline{font-size:11px;line-height:1.6;text-align:left;white-space:normal}
 body.public-site #mobileRadioPlayer .mobile-player-main-controls{grid-column:1;grid-row:2/4;margin:0;align-items:center}
 body.public-site #mobileRadioPlayer .mobile-player-play{width:64px;height:64px;border:0;background:#fff;color:#b7005e;box-shadow:0 0 0 5px #ffffff12;font-size:24px}
 body.public-site #mobileRadioPlayer .mobile-player-visual{grid-column:2;grid-row:2;height:24px;margin:0;justify-content:flex-start;align-items:center;gap:5px}
 body.public-site #mobileRadioPlayer .mobile-player-timeline{grid-column:2;grid-row:3;justify-content:space-between;gap:10px;margin:0}
 body.public-site #mobileRadioPlayer .mobile-player-timeline input:disabled{display:none}
 body.public-site #mobileRadioPlayer .mobile-time{font-size:11px;min-width:0;font-variant-numeric:tabular-nums}
 body.public-site #mobileRadioPlayer .mobile-live{font-size:9px;letter-spacing:1px;padding-left:14px}
 body.public-site #mobileRadioPlayer .mobile-live:before{width:6px;height:6px}
 body.public-site #mobileRadioPlayer .mobile-player-volume-control{grid-column:1/-1;grid-row:4;display:flex;align-items:center;gap:12px;margin:10px 0 0;padding-top:12px;border-top:1px solid #ffffff20}
 body.public-site #mobileRadioPlayer .mobile-player-mute{width:42px;height:42px;min-width:42px;min-height:42px;font-size:17px;border:1px solid #ffffff30;background:#ffffff14;box-shadow:none}
 body.public-site #mobileRadioPlayer .mobile-volume-slider{flex:1;width:100%;min-width:0;margin:0}
 body.public-site #mobileRadioPlayer button:focus-visible,body.public-site #mobileRadioPlayer input:focus-visible{outline:2px solid #fff;outline-offset:4px}
 html[data-theme=dark] body.public-site #listen .mobile-radio-ad .player-ad{background:#241b2c;border-color:#49304a}
}
/* Mobile Large Rectangle creative size; desktop placements remain unchanged. */
@media(max-width:768px){
 body.public-site #listen .mobile-radio-ad .player-ad{width:336px;max-width:100%;height:282px;min-height:282px;box-sizing:border-box}
 body.public-site #listen .mobile-radio-ad .player-ad>a,body.public-site #listen .mobile-radio-ad .player-ad img{width:100%;height:282px;object-fit:contain}
}
@media(max-width:768px){body.public-site .home-story h3,body.public-site #home-gallery .story-card .story-caption{font-size:18px;line-height:1.65}}
