/* 4.2 Show Hub */
.show-hub-hero{position:relative;min-height:620px;background-image:linear-gradient(90deg,rgba(3,7,15,.92),rgba(3,7,15,.64),rgba(3,7,15,.85)),var(--show-hero);background-size:cover;background-position:center;color:#fff;overflow:hidden}.show-hub-backdrop{position:absolute;inset:-30px;background:inherit;filter:blur(14px);transform:scale(1.04);opacity:.32}.show-hub-hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:minmax(260px,420px) minmax(0,1fr);gap:clamp(32px,6vw,88px);align-items:center;padding-block:clamp(80px,10vw,150px)}.show-hub-art{position:relative}.show-hub-art img{width:100%;aspect-ratio:1;object-fit:contain;object-position:center;border-radius:28px;background:rgba(5,8,14,.78);box-shadow:0 28px 80px rgba(0,0,0,.48)}.show-live-pill{position:absolute;left:18px;top:18px;padding:9px 14px;border-radius:999px;background:#e60155;color:#fff;font-weight:800}.show-hub-intro h1{font-size:clamp(3rem,7vw,7.4rem);line-height:.88;margin:.18em 0}.show-resident-link{color:#fff;font-size:1.15rem;font-weight:750}.show-hub-intro>p{max-width:780px;font-size:clamp(1rem,1.6vw,1.35rem);color:rgba(255,255,255,.78)}.show-hub-badges,.show-hub-actions,.show-socials{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.show-hub-badges span{padding:8px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);backdrop-filter:blur(14px)}.show-countdown{margin-top:26px;padding:18px 20px;border-left:3px solid var(--brand-primary);background:rgba(255,255,255,.07);border-radius:0 16px 16px 0}.show-countdown small,.show-countdown span{display:block;color:rgba(255,255,255,.62)}.show-countdown strong{display:block;font-size:1.4rem}.show-socials a{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font-size:.72rem;font-weight:800}.show-hub-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:44px}.show-about,.show-section{padding:clamp(24px,4vw,48px);border:1px solid rgba(20,30,50,.1);border-radius:24px;background:#fff;margin-bottom:28px}.show-about h2{font-size:clamp(2rem,4vw,4rem)}.show-description{font-size:1.08rem;line-height:1.8;color:#445}.show-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:28px}.show-facts span{padding:16px;border-radius:16px;background:#f5f7fb}.show-facts small,.show-facts strong{display:block}.show-episode-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.show-episode-card{display:grid;grid-template-columns:150px 1fr;gap:18px;padding:16px;border:1px solid #e7eaf1;border-radius:20px}.show-episode-card img{width:150px;height:150px;object-fit:cover;border-radius:16px}.show-episode-card time{color:#718096;font-size:.84rem}.show-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.show-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:16px}.show-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.show-related-grid>a{display:block;color:inherit;background:#f6f8fb;border-radius:20px;overflow:hidden}.show-related-grid img{width:100%;aspect-ratio:16/10;object-fit:cover}.show-related-grid>a div{padding:16px}.show-hub-sidebar{position:sticky;top:110px;align-self:start;display:grid;gap:16px}.show-hub-sidebar section{padding:24px;border-radius:22px;background:#0c1322;color:#fff}.show-hub-sidebar small,.show-hub-sidebar span{display:block;color:rgba(255,255,255,.62)}.show-hub-sidebar strong{display:block;font-size:1.45rem;margin:4px 0}.show-hub-sidebar a{color:#fff}.show-score-bar{height:8px;border-radius:999px;background:rgba(255,255,255,.12);overflow:hidden;margin:12px 0}.show-score-bar span{height:100%;background:linear-gradient(90deg,var(--brand-primary),var(--brand-secondary))}.show-card-link{display:inline-flex;margin-top:10px;font-weight:750}@media(max-width:900px){.show-hub-hero-inner,.show-hub-layout{grid-template-columns:1fr}.show-hub-art{max-width:340px;margin:auto}.show-hub-intro{text-align:center}.show-hub-badges,.show-hub-actions,.show-socials{justify-content:center}.show-hub-sidebar{position:static;grid-template-columns:repeat(2,1fr)}.show-episode-grid{grid-template-columns:1fr}.show-related-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.show-hub-hero{min-height:auto}.show-hub-hero-inner{padding-block:56px}.show-hub-art{max-width:240px}.show-hub-sidebar{grid-template-columns:1fr}.show-facts{grid-template-columns:1fr}.show-episode-card{grid-template-columns:86px 1fr}.show-episode-card img{width:86px;height:86px}.show-gallery,.show-related-grid{grid-template-columns:1fr}}


/* 4.2.1 modern multi-slot show schedule */
.schedule-hero{background:radial-gradient(circle at 80% 20%,rgba(0,89,231,.24),transparent 38%),radial-gradient(circle at 15% 85%,rgba(230,1,85,.2),transparent 36%),#080b12}.modern-schedule-days{display:grid;gap:28px}.modern-schedule-day{background:#fff;border:1px solid rgba(13,25,45,.08);border-radius:28px;padding:clamp(20px,3vw,34px);box-shadow:0 22px 70px rgba(13,25,45,.09)}.modern-schedule-day>header{display:flex;justify-content:space-between;align-items:end;padding-bottom:20px;border-bottom:1px solid rgba(13,25,45,.09)}.modern-schedule-day>header small{color:#0059e7;font-weight:800;letter-spacing:.16em}.modern-schedule-day>header h2{margin:3px 0 0;color:#11182a;font-size:clamp(1.35rem,2.4vw,2rem)}.modern-schedule-day>header>span{color:#647087}.modern-schedule-list{display:grid}.modern-schedule-card{display:grid;grid-template-columns:86px 74px minmax(0,1fr) auto;align-items:center;gap:20px;padding:18px 4px;border-bottom:1px solid rgba(13,25,45,.08);color:#11182a;text-decoration:none;transition:.25s}.modern-schedule-card:last-child{border-bottom:0}.modern-schedule-card:hover{transform:translateX(8px)}.modern-schedule-card time{display:flex;flex-direction:column}.modern-schedule-card time strong{font-size:1.35rem}.modern-schedule-card time span{color:#8791a4;font-size:.82rem}.modern-schedule-art img{width:64px;height:64px;object-fit:cover;border-radius:18px}.modern-schedule-copy>div{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.modern-schedule-copy>div>span:not(.schedule-type){font-size:.72rem;color:#7a8496}.modern-schedule-copy h3{margin:5px 0 2px;font-size:1.12rem}.modern-schedule-copy p{margin:0;color:#6e788b}.modern-schedule-card>b{font-size:.78rem;color:#0059e7}.schedule-type{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:.67rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;background:rgba(0,89,231,.1);color:#0059e7}.schedule-type.repeat{background:rgba(230,1,85,.09);color:#c50049}.schedule-type.special{background:rgba(255,170,0,.13);color:#966000}.show-airtime-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.show-airtime-grid article{position:relative;overflow:hidden;background:linear-gradient(145deg,#fff,#f3f6fb);border:1px solid rgba(14,28,51,.08);border-radius:22px;padding:22px;display:grid;gap:14px;box-shadow:0 16px 42px rgba(14,28,51,.08)}.show-airtime-day{display:flex;align-items:center;gap:10px}.show-airtime-day small{width:42px;height:42px;border-radius:13px;background:linear-gradient(135deg,#e60155,#0059e7);display:grid;place-items:center;color:#fff;font-weight:900}.show-airtime-day strong{color:#152038}.show-airtime-time strong{display:block;color:#0b1220;font-size:2rem;line-height:1}.show-airtime-time span{color:#748096;font-size:.82rem}.show-airtime-grid .schedule-type{justify-self:start}
@media(max-width:720px){.modern-schedule-card{grid-template-columns:64px 54px 1fr;gap:12px}.modern-schedule-card>b{display:none}.modern-schedule-art img{width:52px;height:52px;border-radius:14px}.modern-schedule-day{border-radius:20px;padding:18px 14px}.modern-schedule-day>header{align-items:start}.modern-schedule-day>header>span{font-size:.75rem}.show-airtime-grid{grid-template-columns:1fr 1fr}}@media(max-width:460px){.show-airtime-grid{grid-template-columns:1fr}}


/* 4.2.2 – moderne Wochenprogramm-Übersicht */
.weekly-program{background:linear-gradient(180deg,#f4f7fb 0%,#eef2f8 100%)}


/* 4.2.3 Modern weekly schedule inspired by the established 320 FM program flow */
.schedule-hero-v2{padding-bottom:70px;background:radial-gradient(circle at 82% 18%,rgba(0,89,231,.46),transparent 31%),radial-gradient(circle at 14% 76%,rgba(230,1,85,.4),transparent 34%),#080b13}
.schedule-week{padding:0 0 96px;background:linear-gradient(180deg,#eef1f6 0,#f7f8fa 210px,#f7f8fa 100%)}
.schedule-day-nav-wrap{position:sticky;top:86px;z-index:90;padding:14px 0;border-bottom:1px solid rgba(15,27,49,.08);background:rgba(247,248,250,.9);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 12px 30px rgba(15,27,49,.06)}
.schedule-day-nav{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}
.schedule-day-link{display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:10px;min-height:58px;padding:9px 12px;border:1px solid rgba(15,27,49,.08);border-radius:17px;background:rgba(255,255,255,.72);color:#6d788b;transition:transform .2s ease,border-color .2s ease,background .2s ease,color .2s ease,box-shadow .2s ease}
.schedule-day-link>span{grid-row:1/3;display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:#edf1f7;color:#536176;font-size:.68rem;font-weight:950;letter-spacing:.08em}
.schedule-day-link strong{align-self:end;font-size:.79rem;line-height:1.05}
.schedule-day-link small{align-self:start;font-size:.66rem;color:#99a2b1}
.schedule-day-link:hover{transform:translateY(-2px);border-color:rgba(0,89,231,.2);box-shadow:0 12px 28px rgba(15,27,49,.09)}
.schedule-day-link.is-active,.schedule-day-link.is-today.is-active{background:linear-gradient(135deg,#0059e7,#1749b8);border-color:transparent;color:#fff;box-shadow:0 15px 32px rgba(0,89,231,.25)}
.schedule-day-link.is-active>span{background:rgba(255,255,255,.16);color:#fff}.schedule-day-link.is-active small{color:rgba(255,255,255,.72)}
.schedule-day-link.is-today:not(.is-active){border-color:rgba(230,1,85,.18)}
.schedule-day-select-wrap{display:none}
.schedule-days{display:grid;gap:54px;padding-top:48px}
.schedule-day-section{scroll-margin-top:180px}
.schedule-day-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:17px;padding:0 5px}
.schedule-day-name{display:flex;align-items:center;gap:16px}.schedule-day-name>span{display:grid;place-items:center;width:54px;height:54px;border-radius:17px;background:#0c1321;color:#fff;font-size:.77rem;font-weight:950;letter-spacing:.12em;box-shadow:0 12px 28px rgba(15,27,49,.15)}
.schedule-day-section.is-today .schedule-day-name>span{background:linear-gradient(135deg,#e60155,#b40045)}
.schedule-day-name small{display:block;color:#0059e7;font-size:.68rem;font-weight:950;letter-spacing:.16em}.schedule-day-name h2{margin:3px 0 0;font-size:clamp(1.7rem,3vw,2.65rem);line-height:.95;letter-spacing:-.05em;color:#111827}
.schedule-day-date{text-align:right}.schedule-day-date strong,.schedule-day-date span{display:block}.schedule-day-date strong{font-size:.86rem;color:#263247}.schedule-day-date span{margin-top:3px;color:#8791a2;font-size:.72rem;font-weight:750;text-transform:uppercase;letter-spacing:.08em}
.schedule-show-list{display:grid;gap:10px}
.schedule-show-row{position:relative;border:1px solid rgba(15,27,49,.075);border-radius:21px;background:rgba(255,255,255,.94);box-shadow:0 12px 36px rgba(15,27,49,.06);overflow:hidden;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.schedule-show-row:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(#0059e7,#e60155);opacity:0;transition:.22s}
.schedule-show-row:hover{transform:translateY(-3px);border-color:rgba(0,89,231,.18);box-shadow:0 20px 48px rgba(15,27,49,.11)}.schedule-show-row:hover:before,.schedule-show-row.is-live:before{opacity:1}
.schedule-show-row.is-live{border-color:rgba(230,1,85,.22);box-shadow:0 18px 48px rgba(230,1,85,.1)}
.schedule-show-main{position:relative;display:grid;grid-template-columns:88px minmax(0,1fr) 150px 30px;align-items:center;gap:21px;min-height:112px;padding:12px 21px 12px 12px;color:#101827;text-decoration:none}
.schedule-show-art{position:relative;width:88px;height:88px}.schedule-show-art img{width:100%;height:100%;object-fit:cover;border-radius:16px;background:#0d1320;box-shadow:0 10px 24px rgba(15,27,49,.14)}.schedule-show-art span{position:absolute;left:7px;bottom:7px;padding:5px 7px;border-radius:999px;background:#e60155;color:#fff;font-size:.57rem;font-weight:950;letter-spacing:.12em;box-shadow:0 5px 14px rgba(230,1,85,.3)}
.schedule-show-info{min-width:0}.schedule-show-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:7px}.schedule-show-meta>span:not(.schedule-type){color:#798599;font-size:.66rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.schedule-show-info h3{margin:0;color:#111827;font-size:clamp(1.05rem,2vw,1.36rem);line-height:1.08;letter-spacing:-.025em}.schedule-show-info p{margin:6px 0 0;color:#6f7b8d;font-size:.84rem;font-weight:650}
.schedule-show-time{padding-left:22px;border-left:1px solid rgba(15,27,49,.085);text-align:right}.schedule-show-time strong,.schedule-show-time span{display:block}.schedule-show-time strong{font-size:1.72rem;line-height:1;color:#0e1727;letter-spacing:-.055em}.schedule-show-time span{margin-top:7px;color:#8892a2;font-size:.72rem;font-weight:700}.schedule-show-arrow{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#eef2f7;color:#0059e7;font-weight:950;transition:transform .2s ease,background .2s ease,color .2s ease}.schedule-show-row:hover .schedule-show-arrow{transform:translateX(3px);background:#0059e7;color:#fff}
.schedule-day-empty{display:grid;place-items:center;min-height:98px;border:1px dashed rgba(15,27,49,.14);border-radius:20px;background:rgba(255,255,255,.45);color:#8791a1;font-size:.84rem}
@media(max-width:980px){.schedule-day-nav-wrap{top:86px}.schedule-day-nav{grid-template-columns:repeat(7,minmax(90px,1fr));overflow-x:auto;padding-bottom:3px;scrollbar-width:none}.schedule-day-nav::-webkit-scrollbar{display:none}.schedule-show-main{grid-template-columns:78px minmax(0,1fr) 125px 30px;gap:16px}.schedule-show-art{width:78px;height:78px}}
@media(max-width:680px){.schedule-week{padding-bottom:70px}.schedule-day-nav-wrap{top:72px;padding:10px 0}.schedule-day-nav{display:none}.schedule-day-select-wrap{display:grid;gap:5px}.schedule-day-select-wrap span{font-size:.63rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#657187}.schedule-day-select-wrap select{width:100%;min-height:48px;padding:0 15px;border:1px solid rgba(15,27,49,.1);border-radius:15px;background:#fff;color:#172033;font-weight:850;box-shadow:0 8px 24px rgba(15,27,49,.07)}.schedule-days{gap:40px;padding-top:32px}.schedule-day-section{scroll-margin-top:150px}.schedule-day-heading{align-items:center;margin-bottom:13px}.schedule-day-name{gap:11px}.schedule-day-name>span{width:44px;height:44px;border-radius:14px}.schedule-day-name h2{font-size:1.45rem}.schedule-day-date strong{font-size:.74rem}.schedule-day-date span{font-size:.61rem}.schedule-show-list{gap:9px}.schedule-show-main{grid-template-columns:68px minmax(0,1fr) auto;gap:13px;min-height:94px;padding:11px 12px}.schedule-show-art{width:68px;height:68px}.schedule-show-art img{border-radius:14px}.schedule-show-info h3{font-size:1rem}.schedule-show-info p{font-size:.75rem}.schedule-show-meta{gap:6px;margin-bottom:5px}.schedule-show-time{grid-column:2;justify-self:start;padding:0;border:0;text-align:left;display:flex;align-items:baseline;gap:7px}.schedule-show-time strong{font-size:1.12rem}.schedule-show-time span{margin:0;font-size:.66rem}.schedule-show-arrow{grid-column:3;grid-row:1/3;width:28px;height:28px}.schedule-show-info{grid-column:2}.schedule-show-art{grid-row:1/3}.schedule-show-row:before{width:3px}}

/* 4.2.4 – Programm pro Wochentag im responsiven Drei-Spalten-Raster */
.schedule-day-section .schedule-show-list{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  align-items:stretch;
}
.schedule-day-section .schedule-show-row{
  min-width:0;
  height:100%;
  border-radius:22px;
  overflow:hidden;
  background:#fff;
  border:1px solid rgba(15,27,49,.09);
  box-shadow:0 14px 36px rgba(15,27,49,.075);
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
.schedule-day-section .schedule-show-row:hover{
  transform:translateY(-5px);
  border-color:rgba(0,89,231,.25);
  box-shadow:0 22px 48px rgba(15,27,49,.13),0 0 0 1px rgba(230,1,85,.06);
}
.schedule-day-section .schedule-show-row:before{height:4px;width:100%;inset:0 0 auto}
.schedule-day-section .schedule-show-main{
  display:grid;
  grid-template-columns:82px minmax(0,1fr);
  grid-template-rows:auto 1fr auto;
  gap:14px 16px;
  min-height:100%;
  padding:18px;
  align-items:start;
}
.schedule-day-section .schedule-show-art{
  grid-column:1;
  grid-row:1/3;
  width:82px;
  height:82px;
}
.schedule-day-section .schedule-show-info{
  grid-column:2;
  grid-row:1/3;
  align-self:center;
}
.schedule-day-section .schedule-show-info h3{
  font-size:clamp(1.03rem,1.5vw,1.28rem);
  line-height:1.12;
}
.schedule-day-section .schedule-show-info p{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.schedule-day-section .schedule-show-time{
  grid-column:1/3;
  grid-row:3;
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:12px;
  width:100%;
  padding:14px 0 0;
  border-left:0;
  border-top:1px solid rgba(15,27,49,.085);
  text-align:left;
}
.schedule-day-section .schedule-show-time strong{font-size:1.45rem}
.schedule-day-section .schedule-show-time span{margin:0;text-align:right}
.schedule-day-section .schedule-show-arrow{
  position:absolute;
  right:15px;
  top:15px;
}
.schedule-day-section .schedule-show-main{position:relative}
@media(max-width:1020px){
  .schedule-day-section .schedule-show-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:680px){
  .schedule-day-section .schedule-show-list{grid-template-columns:1fr;gap:12px}
  .schedule-day-section .schedule-show-main{grid-template-columns:68px minmax(0,1fr);padding:14px;min-height:112px}
  .schedule-day-section .schedule-show-art{width:68px;height:68px}
  .schedule-day-section .schedule-show-time{grid-column:1/3;display:flex;justify-content:flex-start;gap:8px}
  .schedule-day-section .schedule-show-time strong{font-size:1.18rem}
}

/* 4.2.8 – Modern Upcoming Show */
.upcoming-modern{position:relative;display:grid;grid-template-columns:112px minmax(0,1fr);align-items:center;gap:26px;padding:30px;background:linear-gradient(145deg,#fff 0%,#f7f9ff 58%,#eef3ff 100%);border:1px solid rgba(0,89,231,.12);overflow:hidden;isolation:isolate}
.upcoming-modern:before{content:"";position:absolute;right:-70px;top:-90px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(0,89,231,.16),transparent 68%);z-index:-1}
.upcoming-artwork{position:relative;width:112px;aspect-ratio:1;border-radius:24px;overflow:hidden;background:#0b0d14;box-shadow:0 18px 42px rgba(9,11,18,.18)}
.upcoming-artwork img{width:100%;height:100%;object-fit:contain;background:#0b0d14;position:relative;z-index:2}
.upcoming-artwork-glow{position:absolute;inset:12%;background:linear-gradient(135deg,var(--pink),var(--blue));filter:blur(28px);opacity:.36;z-index:1}
.upcoming-content{min-width:0;display:flex;flex-direction:column;justify-content:center}
.upcoming-heading-row{display:flex;align-items:center;justify-content:space-between;gap:12px}
.upcoming-type{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;background:rgba(0,89,231,.08);color:var(--blue);font-size:.67rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.upcoming-modern .upcoming-date{margin:18px 0 5px;color:var(--muted);font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.upcoming-modern h2{margin:0;font-size:clamp(1.55rem,2.5vw,2.45rem);line-height:.98;letter-spacing:-.05em;text-wrap:balance}
.upcoming-dj{margin:8px 0 0;color:#525867;font-size:.98rem;font-weight:700}
.upcoming-footer{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-top:22px;padding-top:18px;border-top:1px solid rgba(9,11,18,.09)}
.upcoming-modern .time{margin:0;color:var(--blue);font-size:clamp(2.5rem,4vw,4rem);line-height:.8;font-weight:950;letter-spacing:-.08em}
.upcoming-modern .time small{font-size:.72rem;letter-spacing:.04em;font-weight:850;text-transform:uppercase}
.upcoming-link{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:0 15px;border-radius:999px;background:var(--ink);color:#fff;font-size:.78rem;font-weight:850;transition:transform .2s ease,background .2s ease,box-shadow .2s ease}
.upcoming-link:hover{transform:translateY(-2px);background:var(--blue);box-shadow:0 12px 24px rgba(0,89,231,.24)}
@media(max-width:1160px){.upcoming-modern{grid-template-columns:92px minmax(0,1fr);gap:20px;padding:26px}.upcoming-artwork{width:92px;border-radius:20px}.upcoming-footer{align-items:center;flex-wrap:wrap}}
@media(max-width:680px){.upcoming-modern{grid-template-columns:78px minmax(0,1fr);align-items:start;gap:16px;padding:22px}.upcoming-artwork{width:78px;border-radius:18px}.upcoming-heading-row{grid-column:1/-1}.upcoming-type{display:none}.upcoming-modern .upcoming-date{margin-top:10px}.upcoming-modern h2{font-size:1.65rem}.upcoming-footer{grid-column:1/-1;margin-top:17px}.upcoming-link{min-height:40px}.upcoming-modern .time{font-size:2.8rem}}

/* 4.2.9 – Harmonious Broadcast Zone */
.broadcast-zone{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(300px,1fr);background:#10131b;border:1px solid rgba(255,255,255,.09);border-radius:30px;box-shadow:0 30px 80px rgba(9,11,18,.22);overflow:hidden;min-height:430px}
.broadcast-zone .broadcast-now{border-radius:0;box-shadow:none;min-width:0;position:relative}
.broadcast-zone .broadcast-now:after{content:"";position:absolute;right:0;top:8%;bottom:8%;width:1px;background:linear-gradient(transparent,rgba(255,255,255,.15),transparent)}
.upcoming-broadcast{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:25px;padding:40px 34px;background:linear-gradient(160deg,#f8f9fc 0%,#fff 62%,#f1f4fb 100%);color:var(--ink);overflow:hidden;isolation:isolate;transition:background .25s ease}
.upcoming-broadcast:before{content:"";position:absolute;width:240px;height:240px;right:-120px;bottom:-130px;border-radius:50%;background:radial-gradient(circle,rgba(0,89,231,.13),transparent 68%);z-index:-1;transition:transform .35s ease,opacity .35s ease}
.upcoming-broadcast:hover{background:linear-gradient(160deg,#fff 0%,#f8faff 65%,#eef3ff 100%)}
.upcoming-broadcast:hover:before{transform:scale(1.14);opacity:.9}
.upcoming-broadcast-art{position:relative;width:96px;height:96px;border-radius:22px;padding:8px;background:linear-gradient(135deg,rgba(230,1,85,.14),rgba(0,89,231,.16));border:1px solid rgba(0,89,231,.12);box-shadow:0 16px 34px rgba(9,11,18,.12);flex:0 0 auto}
.upcoming-broadcast-art:before{content:"";position:absolute;inset:14px;background:linear-gradient(135deg,var(--pink),var(--blue));filter:blur(22px);opacity:.22}
.upcoming-broadcast-art img{position:relative;width:100%;height:100%;object-fit:contain;border-radius:15px;background:#0d1018;z-index:1;transition:transform .3s ease}
.upcoming-broadcast:hover .upcoming-broadcast-art img{transform:scale(1.035)}
.upcoming-broadcast-copy{min-width:0;width:100%}
.upcoming-broadcast-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.upcoming-broadcast .upcoming-type{background:rgba(0,89,231,.07);font-size:.62rem;min-height:25px;padding-inline:9px}
.upcoming-broadcast h2{margin:0;font-size:clamp(1.65rem,2.25vw,2.35rem);line-height:.98;letter-spacing:-.05em;text-wrap:balance}
.upcoming-broadcast-dj{margin:9px 0 0;color:#5b6070;font-size:.96rem;font-weight:750}
.upcoming-broadcast-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:20px;color:#525867;font-size:.78rem;font-weight:850;letter-spacing:.045em;text-transform:uppercase}
.upcoming-broadcast-meta span,.upcoming-broadcast-meta time{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border-radius:999px;background:rgba(9,11,18,.055)}
.upcoming-broadcast-action{display:inline-flex;align-items:center;gap:8px;margin-top:20px;color:var(--blue);font-size:.79rem;font-weight:900;letter-spacing:.025em}
.upcoming-broadcast-action b{transition:transform .2s ease}
.upcoming-broadcast:hover .upcoming-broadcast-action b{transform:translate(2px,-2px)}
@media(max-width:1100px){.broadcast-zone{grid-template-columns:1fr;min-height:0}.broadcast-zone .broadcast-now:after{display:none}.upcoming-broadcast{display:grid;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:24px;padding:28px 32px;border-top:1px solid rgba(255,255,255,.09)}.upcoming-broadcast-art{grid-row:1}.upcoming-broadcast-copy{grid-column:2}}
@media(max-width:680px){.broadcast-zone{border-radius:24px}.upcoming-broadcast{grid-template-columns:76px minmax(0,1fr);gap:16px;padding:22px 20px}.upcoming-broadcast-art{width:76px;height:76px;border-radius:18px;padding:6px}.upcoming-broadcast-art img{border-radius:12px}.upcoming-broadcast-top{margin-bottom:9px}.upcoming-broadcast .upcoming-type{display:none}.upcoming-broadcast h2{font-size:1.55rem}.upcoming-broadcast-dj{font-size:.88rem}.upcoming-broadcast-meta{margin-top:14px}.upcoming-broadcast-action{margin-top:14px}.broadcast-zone .live-info{padding:30px 24px}.broadcast-zone .streams{flex-wrap:wrap}}


/* 4.3.4 – Startseiten-Player: proportionales Cover in hoher Broadcast-Zone */
.broadcast-zone .broadcast-now{
  grid-template-columns:minmax(280px,340px) minmax(0,1fr);
  align-items:stretch;
}
.broadcast-zone .live-cover{
  min-height:0;
  max-height:none;
  height:100%;
  padding:24px;
  display:grid;
  place-items:center;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 45%,rgba(0,89,231,.16),transparent 55%),
    radial-gradient(circle at 25% 80%,rgba(230,1,85,.13),transparent 48%),
    #11141d;
}
.broadcast-zone .live-cover img{
  width:100%;
  height:auto;
  max-width:340px;
  max-height:340px;
  aspect-ratio:1 / 1;
  object-fit:contain;
  object-position:center;
  border-radius:22px;
  background:#0b0d13;
  box-shadow:0 22px 52px rgba(0,0,0,.32);
}
@media(max-width:1100px){
  .broadcast-zone .broadcast-now{grid-template-columns:minmax(240px,300px) minmax(0,1fr)}
  .broadcast-zone .live-cover{padding:22px}
  .broadcast-zone .live-cover img{max-width:300px;max-height:300px}
}
@media(max-width:680px){
  .broadcast-zone .broadcast-now{grid-template-columns:1fr}
  .broadcast-zone .live-cover{height:auto;aspect-ratio:auto;padding:20px}
  .broadcast-zone .live-cover img{width:min(100%,300px);max-width:300px;max-height:300px}
}


/* 2.7.5 – Programm: Wochentage dauerhaft am oberen Content-Rand halten */
.schedule-week{
  position:relative;
  overflow:visible!important;
  contain:none!important;
}
.schedule-week>.schedule-day-nav-wrap{
  position:-webkit-sticky!important;
  position:sticky!important;
  top:86px!important;
  z-index:950!important;
  width:100%;
  align-self:start;
  overflow:visible;
  transform:none!important;
  isolation:isolate;
}
.schedule-week>.schedule-day-nav-wrap::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:rgba(247,248,250,.96);
  backdrop-filter:blur(20px) saturate(145%);
  -webkit-backdrop-filter:blur(20px) saturate(145%);
}
.schedule-week .schedule-day-section{scroll-margin-top:184px}
@media(max-width:980px){
  .schedule-week>.schedule-day-nav-wrap{top:86px!important}
}
@media(max-width:680px){
  .schedule-week>.schedule-day-nav-wrap{top:72px!important;z-index:950!important}
  .schedule-week .schedule-day-section{scroll-margin-top:148px}
}


/* 2.7.7 – Programm-Navigation final */
.schedule-nav-shell{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px}
.schedule-view-tools{display:inline-flex;align-items:center;gap:4px;padding:4px;border:1px solid rgba(15,27,49,.09);border-radius:14px;background:rgba(255,255,255,.92);box-shadow:0 8px 22px rgba(15,27,49,.055)}
.schedule-view-tools a{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:42px;padding:0 14px;border-radius:10px;color:#68758a;font-size:.7rem;font-weight:900;letter-spacing:.04em;text-decoration:none;white-space:nowrap;transition:background .18s ease,color .18s ease,box-shadow .18s ease}
.schedule-view-tools a span{font-size:.7rem;opacity:.68}.schedule-view-tools a:hover{color:#111827;background:#f0f3f8}.schedule-view-tools a.active{color:#fff;background:#0d1421;box-shadow:0 7px 18px rgba(13,20,33,.18)}.schedule-view-tools a.active:first-child{background:linear-gradient(135deg,#e60155,#bd0046)}
.schedule-week>.schedule-day-nav-wrap.is-fixed{position:fixed!important;top:var(--schedule-header-offset,var(--site-header-height,86px))!important;left:0!important;right:0!important;width:100%!important;z-index:990!important;margin:0!important}
.schedule-nav-spacer{display:none;width:100%}.schedule-nav-spacer.is-active{display:block}.schedule-day-section[hidden]{display:none!important}
.schedule-week.view-today .schedule-day-nav{opacity:.72}.schedule-week.view-today .schedule-day-link.is-today{opacity:1}
@media(max-width:980px){.schedule-nav-shell{grid-template-columns:1fr;gap:8px}.schedule-view-tools{justify-self:start}}
@media(max-width:680px){.schedule-day-nav-wrap{padding:8px 0!important}.schedule-nav-shell{gap:8px}.schedule-view-tools{display:grid;grid-template-columns:1fr 1fr;width:100%}.schedule-view-tools a{min-height:40px;padding:0 10px}.schedule-day-select-wrap{margin:0}}


/* 2.8.5 – Heute/Woche mittig in der Wochentagsnavigation */
.schedule-nav-shell{
  grid-template-columns:minmax(0,1fr)!important;
  justify-items:stretch;
}
.schedule-view-tools{
  justify-self:center!important;
  margin:0 auto 8px!important;
}
.schedule-day-nav{
  width:100%;
  justify-content:center;
}
@media(max-width:980px){
  .schedule-nav-shell{grid-template-columns:minmax(0,1fr)!important}
  .schedule-view-tools{justify-self:center!important}
}
@media(max-width:680px){
  .schedule-view-tools{
    width:min(100%,320px)!important;
    margin-inline:auto!important;
  }
}


/* 2.13.1 – schedule navigation consolidation */
.schedule-week>.schedule-day-nav-wrap{
  isolation:isolate;
  width:100%;
}
.schedule-nav-shell{min-width:0}
.schedule-day-nav{overscroll-behavior-x:contain;scroll-snap-type:x proximity}
.schedule-day-link{scroll-snap-align:center}
@media (min-width:681px) and (max-width:1100px){
  .schedule-week>.schedule-day-nav-wrap{
    top:var(--schedule-header-offset,var(--site-header-height,86px))!important;
    padding-block:10px!important;
  }
  .schedule-day-nav{
    display:flex!important;
    grid-template-columns:none!important;
    gap:8px;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }
  .schedule-day-nav::-webkit-scrollbar{display:none}
  .schedule-day-link{flex:0 0 auto;min-width:94px}
}
@media (max-width:680px){
  .schedule-week>.schedule-day-nav-wrap{
    top:var(--schedule-header-offset,var(--site-header-height,72px))!important;
  }
  .schedule-view-tools{position:relative;z-index:2}
}
