/* VIA Radios content elements for WPBakery / JS Composer */
.via-builder-content { width:100%; max-width:none; margin:0; }
.via-builder-content::after { content:""; display:table; clear:both; }
.via-builder-content > .vc_row { width:var(--via-shell); margin-left:auto; margin-right:auto; }
.via-builder-content > .vc_row[data-vc-full-width="true"] { width:auto; }
.via-builder-content .wpb_content_element { margin-bottom:0; }
.via-builder-content .via-module { margin-top:clamp(22px,3vw,48px); margin-bottom:clamp(22px,3vw,48px); }
.via-builder-content .via-module--spacer { margin:0; }
.via-builder-content .via-module--marquee { width:100vw; margin-left:calc(50% - 50vw); }
.via-builder-content .via-module--hero { margin-top:0; margin-bottom:0; }
.via-module-grid { grid-template-columns:repeat(var(--via-cols,3),minmax(0,1fr)) !important; }
.via-module-grid.via-cols-1 { grid-template-columns:1fr !important; }
.via-module--heading .section-heading { margin-bottom:0; }
.via-module--heading .section-heading h2 { max-width:1050px; }
.via-richtext { color:color-mix(in srgb,var(--via-text) 90%,var(--via-muted)); font-size:clamp(1rem,1.3vw,1.14rem); line-height:1.85; }
.via-richtext > * + * { margin-top:1.25em; }
.via-richtext h2,.via-richtext h3,.via-richtext h4 { font-family:var(--via-font-head); letter-spacing:-.045em; line-height:1.08; }
.via-richtext h2 { font-size:clamp(2rem,4vw,3.6rem); }
.via-richtext h3 { font-size:clamp(1.55rem,2.8vw,2.45rem); }
.via-richtext a { color:var(--via-accent-2); text-decoration:underline; text-underline-offset:3px; }
.via-richtext blockquote { margin:2em 0; padding:10px 0 10px 28px; border-left:3px solid var(--via-accent); font-family:var(--via-font-head); font-size:1.35em; font-weight:750; }
.via-text--narrow { max-width:680px; }
.via-text--medium { max-width:900px; }
.via-text--wide { max-width:1180px; }
.via-align-center { text-align:center; }
.via-align-right { text-align:right; }
.via-image-frame,.via-video-frame { overflow:hidden; border-radius:calc(var(--via-radius) * 1.15); background:var(--via-surface); border:1px solid var(--via-soft-line); box-shadow:var(--via-shadow); }
.via-image-frame img { width:100%; height:100%; object-fit:cover; }
.via-image--wide .via-image-frame { aspect-ratio:16/9; }
.via-image--portrait .via-image-frame { aspect-ratio:4/5; }
.via-image--square .via-image-frame { aspect-ratio:1; }
.via-image--auto .via-image-frame img { height:auto; }
.via-module--image figcaption,.via-module--video figcaption { margin-top:10px; color:var(--via-muted); font-size:.8rem; }
.via-video-frame { position:relative; aspect-ratio:16/9; }
.via-video-frame iframe,.via-video-frame video,.via-video-frame .wp-video { width:100% !important; height:100% !important; border:0; }
.via-custom-ticker { animation-duration:var(--via-marquee-duration,28s) !important; }
.via-stats { display:grid; grid-template-columns:repeat(auto-fit,minmax(160px,1fr)); gap:12px; }
.via-stat { min-height:170px; display:flex; flex-direction:column; justify-content:flex-end; padding:24px; border:1px solid var(--via-soft-line); border-radius:var(--via-radius); background:linear-gradient(160deg,color-mix(in srgb,var(--via-surface) 92%,transparent),color-mix(in srgb,var(--via-accent) 8%,var(--via-surface))); }
.via-stat strong { font-family:var(--via-font-head); font-size:clamp(2.7rem,5vw,5.3rem); line-height:.9; letter-spacing:-.07em; }
.via-stat span { margin-top:14px; color:var(--via-muted); font-weight:700; }
.via-statement-author { position:relative; z-index:2; display:block; margin-top:22px; color:rgba(255,255,255,.72); font-weight:700; }
.via-cta { min-height:300px; padding:clamp(30px,5vw,70px); display:flex; align-items:flex-end; justify-content:space-between; gap:40px; overflow:hidden; position:relative; border-radius:calc(var(--via-radius) * 1.2); background:linear-gradient(135deg,color-mix(in srgb,var(--via-accent) 82%,#120e29),color-mix(in srgb,var(--via-accent-2) 52%,#0b1330)); color:#fff; }
.via-cta::after { content:""; position:absolute; width:36vw; aspect-ratio:1; right:-12vw; top:-18vw; border:1px solid rgba(255,255,255,.22); border-radius:50%; box-shadow:0 0 0 55px rgba(255,255,255,.035),0 0 0 110px rgba(255,255,255,.025); }
.via-cta > * { position:relative; z-index:1; }
.via-cta h2 { margin:8px 0 12px; max-width:850px; font-family:var(--via-font-head); font-size:clamp(2.7rem,5.5vw,6rem); line-height:.9; letter-spacing:-.07em; }
.via-cta p { max-width:700px; margin:0; color:rgba(255,255,255,.76); }
.via-module--spacer { height:var(--via-space-d,80px); }
.via-gallery { display:grid; gap:14px; }
.via-gallery figure { margin:0; overflow:hidden; border-radius:var(--via-radius); background:var(--via-surface); min-height:180px; }
.via-gallery img { width:100%; height:100%; object-fit:cover; }
.via-gallery--grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.via-gallery--grid figure { aspect-ratio:4/3; }
.via-gallery--mosaic { grid-template-columns:repeat(12,minmax(0,1fr)); grid-auto-rows:110px; }
.via-gallery--mosaic figure { grid-column:span 4; grid-row:span 3; }
.via-gallery--mosaic figure:first-child { grid-column:span 8; grid-row:span 5; }
.via-gallery--mosaic figure:nth-child(4n) { grid-column:span 5; }
.via-gallery--mosaic figure:nth-child(5n) { grid-column:span 7; }
.via-live-card { min-height:190px; padding:28px; display:flex; align-items:center; justify-content:space-between; gap:30px; border:1px solid var(--via-soft-line); border-radius:var(--via-radius); background:linear-gradient(135deg,var(--via-surface),color-mix(in srgb,var(--via-accent) 11%,var(--via-surface))); }
.via-live-card h3 { margin:8px 0; font-family:var(--via-font-head); font-size:clamp(2rem,4vw,4rem); line-height:.95; letter-spacing:-.055em; }
.via-live-card p { max-width:670px; margin:0; color:var(--via-muted); }
.via-live-play { flex:0 0 auto; width:72px; height:72px; }
.via-now-playing { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:18px; padding:18px; border:1px solid var(--via-soft-line); border-radius:var(--via-radius); background:color-mix(in srgb,var(--via-surface) 88%,transparent); }
.via-now-art { width:92px; height:92px; border-radius:18px; overflow:hidden; background:var(--via-surface-2); }
.via-now-art img,.via-now-art .artwork-fallback { width:100%; height:100%; object-fit:cover; display:block; }
.via-now-meta { min-width:0; display:grid; }
.via-now-meta strong { margin-top:5px; font-family:var(--via-font-head); font-size:clamp(1.4rem,2.7vw,2.7rem); line-height:1; letter-spacing:-.045em; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.via-now-meta > span:last-child { color:var(--via-muted); }
.via-now-playing--compact { max-width:720px; grid-template-columns:auto 1fr auto; padding:12px; border-radius:18px; }
.via-now-playing--compact .via-now-art { width:62px; height:62px; border-radius:13px; }
.via-spotlight { display:grid; grid-template-columns:minmax(300px,.95fr) minmax(0,1.05fr); min-height:440px; overflow:hidden; border:1px solid var(--via-soft-line); border-radius:calc(var(--via-radius) * 1.15); background:var(--via-surface); }
.via-spotlight--right .via-spotlight__media { order:2; }
.via-spotlight__media { min-height:420px; overflow:hidden; background:var(--via-surface-2); }
.via-spotlight__media img { width:100%; height:100%; object-fit:cover; transition:transform .8s cubic-bezier(.2,.75,.2,1); }
.via-spotlight:hover .via-spotlight__media img { transform:scale(1.035); }
.via-spotlight__media--square img { object-fit:cover; }
.via-spotlight__media--portrait img { object-position:top center; }
.via-spotlight__copy { display:flex; flex-direction:column; justify-content:center; align-items:flex-start; padding:clamp(30px,5vw,70px); }
.via-spotlight__copy h2 { margin:9px 0 16px; font-family:var(--via-font-head); font-size:clamp(2.5rem,5vw,5.6rem); line-height:.9; letter-spacing:-.07em; }
.via-spotlight__copy p { max-width:660px; margin:0 0 25px; color:var(--via-muted); }
.via-spotlight__meta { display:block; margin:0 0 16px; color:var(--via-accent-2); }
.via-spotlight__actions { display:flex; flex-wrap:wrap; gap:10px; }
.via-schedule { padding:clamp(26px,4vw,52px); border:1px solid var(--via-soft-line); border-radius:var(--via-radius); background:var(--via-surface); }
.via-schedule > h2 { margin:0 0 28px; font-family:var(--via-font-head); font-size:clamp(2.3rem,4vw,4.4rem); line-height:.95; letter-spacing:-.06em; }
.via-schedule__list { border-top:1px solid var(--via-line); }
.via-schedule__item { display:grid; grid-template-columns:100px 1fr auto; align-items:center; gap:20px; min-height:92px; border-bottom:1px solid var(--via-line); transition:padding .25s ease,background .25s ease; }
.via-schedule__item:hover { padding-inline:12px; background:color-mix(in srgb,var(--via-accent) 7%,transparent); }
.via-schedule__item time { font-family:var(--via-font-head); font-size:1.6rem; font-weight:900; letter-spacing:-.04em; color:var(--via-accent-2); }
.via-schedule__item div { display:grid; }
.via-schedule__item strong { font-family:var(--via-font-head); font-size:1.15rem; }
.via-schedule__item div span,.via-schedule__end { color:var(--via-muted); font-size:.82rem; }
.via-genres h3,.via-socials h3 { margin:0 0 20px; font-family:var(--via-font-head); font-size:clamp(1.8rem,3vw,3rem); letter-spacing:-.05em; }
.via-pills,.via-socials--pills > div { display:flex; flex-wrap:wrap; gap:9px; }
.via-pills a,.via-socials--pills a { display:inline-flex; align-items:center; gap:10px; min-height:44px; padding:0 15px; border:1px solid var(--via-line); border-radius:999px; background:color-mix(in srgb,var(--via-surface) 78%,transparent); font-weight:750; transition:transform .2s ease,border-color .2s ease,background .2s ease; }
.via-pills a:hover,.via-socials--pills a:hover { transform:translateY(-2px); border-color:var(--via-accent); background:color-mix(in srgb,var(--via-accent) 12%,var(--via-surface)); }
.via-pills span { color:var(--via-muted); font-size:.72rem; }
.via-socials--list > div { display:grid; border-top:1px solid var(--via-line); }
.via-socials--list a { display:flex; justify-content:space-between; padding:14px 0; border-bottom:1px solid var(--via-line); font-weight:750; }
.via-bento { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.via-bento__card { position:relative; min-height:220px; display:flex; flex-direction:column; justify-content:flex-end; padding:24px; overflow:hidden; border:1px solid var(--via-soft-line); border-radius:var(--via-radius); background:linear-gradient(150deg,var(--via-surface),color-mix(in srgb,var(--via-accent) 7%,var(--via-surface))); transition:transform .3s ease,border-color .3s ease; }
.via-bento__card--feature { grid-column:span 2; min-height:340px; background:linear-gradient(145deg,color-mix(in srgb,var(--via-accent) 28%,var(--via-surface)),var(--via-surface)); }
.via-bento__card:hover { transform:translateY(-5px); border-color:color-mix(in srgb,var(--via-accent-2) 45%,var(--via-line)); }
.via-bento__card strong { font-family:var(--via-font-head); font-size:clamp(1.7rem,3vw,3.2rem); line-height:.95; letter-spacing:-.055em; }
.via-bento__card small { max-width:420px; margin-top:10px; color:var(--via-muted); }
.via-bento__card > i { position:absolute; top:18px; right:20px; font-size:1.25rem; font-style:normal; }

@media (max-width:820px) {
  .via-builder-content > .vc_row { width:var(--via-shell); }
  .via-module-grid { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  .via-module-grid.via-cols-1 { grid-template-columns:1fr !important; }
  .via-gallery--grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .via-gallery--mosaic { grid-auto-rows:90px; }
  .via-gallery--mosaic figure,.via-gallery--mosaic figure:nth-child(4n),.via-gallery--mosaic figure:nth-child(5n) { grid-column:span 6; }
  .via-gallery--mosaic figure:first-child { grid-column:span 12; grid-row:span 4; }
  .via-cta { align-items:flex-start; flex-direction:column; }
  .via-spotlight { grid-template-columns:1fr; }
  .via-spotlight--right .via-spotlight__media { order:0; }
  .via-spotlight__media { min-height:360px; aspect-ratio:16/10; }
  .via-bento { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:560px) {
  .via-builder-content .via-module { margin-top:28px; margin-bottom:28px; }
  .via-module-grid { grid-template-columns:1fr !important; }
  .via-module--spacer { height:var(--via-space-m,40px); }
  .via-gallery--grid { grid-template-columns:1fr; }
  .via-gallery--mosaic { grid-template-columns:1fr; grid-auto-rows:auto; }
  .via-gallery--mosaic figure,.via-gallery--mosaic figure:first-child,.via-gallery--mosaic figure:nth-child(4n),.via-gallery--mosaic figure:nth-child(5n) { grid-column:auto; grid-row:auto; aspect-ratio:4/3; }
  .via-now-playing { grid-template-columns:auto 1fr; }
  .via-now-playing .player-play { grid-column:1/-1; width:100%; height:46px; border-radius:999px; }
  .via-now-art { width:70px; height:70px; }
  .via-schedule { padding:22px 17px; }
  .via-schedule__item { grid-template-columns:70px 1fr; gap:12px; }
  .via-schedule__end { display:none; }
  .via-bento { grid-template-columns:1fr; }
  .via-bento__card--feature { grid-column:auto; min-height:260px; }
  .via-live-card { align-items:flex-start; }
}
@media (min-width:561px) and (max-width:820px) {
  .via-module--spacer { height:var(--via-space-t,60px); }
}
