.viewer > img,
.viewer > video {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

.viewer > video {
  background: #000;
}

.viewer {
  position: relative;
}

.viewer > .status {
  position: absolute;
  z-index: 5;
  top: -.45rem;
  left: .7rem;
  margin: 0;
  padding: .38rem .62rem;
  font-size: .62rem;
  box-shadow: .18rem .18rem 0 rgba(16,21,21,.8);
}

.landscape-player-hint {
  position: absolute;
  z-index: 6;
  top: 50%;
  left: 50%;
  width: max-content;
  max-width: calc(100% - 1.5rem);
  margin: 0;
  padding: .52rem .75rem;
  border: 0;
  border-left: .3rem solid #f1a268;
  border-radius: 0;
  background: #101515ed;
  color: #fff;
  font: 900 clamp(.54rem, 1.6vw, .74rem)/1.25 system-ui, sans-serif;
  font-weight: 900;
  letter-spacing: .1em;
  text-align: center;
  white-space: nowrap;
  transform: translate(-50%, -50%);
  opacity: 0;
  transition: opacity .2s ease;
  cursor: pointer;
}

.landscape-player-hint.visible { opacity: 1; }
.landscape-player-hint:hover,
.landscape-player-hint:focus-visible { background: #2258e8; }
.landscape-player-hint[hidden] { display: none; }
.fullscreen-cue-tap { display: none; }
@media (hover: none) and (pointer: coarse) {
  .fullscreen-cue-click { display: none; }
  .fullscreen-cue-tap { display: inline; }
}

.viewer > .paused-live-view {
  position: absolute;
  z-index: 2;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.viewer > .paused-live-view[hidden] {
  display: none;
}

.continue-live-view {
  position: absolute;
  z-index: 7;
  top: 50%;
  left: 50%;
  width: max-content;
  max-width: calc(100% - 2rem);
  padding: .85rem 1rem;
  border: 2px solid #fff;
  background: #101515;
  color: #fff;
  font: 950 clamp(.6rem, 2.4vw, .78rem)/1.35 system-ui, sans-serif;
  letter-spacing: .1em;
  cursor: pointer;
  transform: translate(-50%, -50%);
}

.continue-live-view span {
  white-space: nowrap;
}

.continue-live-view span + span::before { content: " "; }

.continue-live-view:hover,
.continue-live-view:focus-visible {
  background: #2258e8;
}

.continue-live-view[hidden] {
  display: none;
}

.viewer figcaption {
  z-index: 4;
}

.status.offline {
  background: #d8d9d1;
  color: #4a514e;
}

.status.offline i {
  background: #777;
}

.today-strip-group { display:grid; grid-template-columns:minmax(0,1fr); gap:.65rem; margin:0 0 .9rem; }
.today-strip-group.has-biergarten { grid-template-columns:minmax(0,2fr) minmax(14rem,1fr); }
.today-strip { display:grid; grid-template-columns:3.8rem auto auto 1fr auto; gap:clamp(.55rem,1.5vw,1.2rem); align-items:center; margin:0; padding:.55rem .8rem; background:#2258e8; color:#fff; font-weight:950; letter-spacing:.06em; }
.today-strip[hidden], .today-feature[hidden], .biergarten-strip[hidden], .biergarten-feature[hidden] { display:none; }
.today-strip-identity { display:grid; place-items:center; width:3.8rem; height:3rem; overflow:hidden; }
.today-strip-identity img { display:block; width:100%; height:100%; object-fit:contain; filter:drop-shadow(0 1px 2px rgba(0,0,0,.45)); }
.today-strip-identity.is-artwork { background:#fff; }
.today-strip-identity.is-artwork img { object-fit:cover; }
.today-strip > strong { padding:.25rem .45rem; background:#f9d328; color:#101515; transform:rotate(-5deg); }
.today-strip time { color:#f9d328; font-variant-numeric:tabular-nums; white-space:nowrap; }
.today-strip-title { color:#fff; font-family:Impact,"Arial Narrow",sans-serif; font-size:clamp(1.25rem,3vw,2.2rem); letter-spacing:.03em; text-decoration:none; }
.today-strip-more { padding:.4rem .55rem; background:#fff; color:#2258e8; font-size:.68rem; letter-spacing:.08em; text-decoration:none; white-space:nowrap; }
.today-feature { display:grid; grid-template-columns:minmax(150px,230px) 1fr; gap:clamp(1.25rem,4vw,3.5rem); align-items:center; margin-top:2.5rem; padding:clamp(1rem,2.5vw,2rem); background:#f9d328; box-shadow:.7rem .7rem 0 #f04437; }
.today-feature.no-art { grid-template-columns:1fr; }
.today-art img { display:block; width:100%; max-height:330px; object-fit:contain; }
.today-label { margin:0 0 .35rem; color:#2258e8; font-size:.8rem; font-weight:950; letter-spacing:.13em; }
.today-feature h2 { margin:0; font-family:Impact,"Arial Narrow",sans-serif; font-size:clamp(2.5rem,6vw,5.8rem); line-height:.86; text-transform:uppercase; }
.today-feature h2 a,.event-list h3 a { text-decoration:none; }
.today-feature p:not(.today-label) { max-width:680px; font-weight:750; }
.today-admission { color:#f04437; text-transform:uppercase; }
.today-link { display:inline-block; padding:.6rem .8rem; background:#101515; color:white; text-decoration:none; font-size:.72rem; font-weight:950; }
.biergarten-strip { display:grid; grid-template-columns:2.35rem 3.25rem minmax(0,1fr); gap:.55rem; align-items:center; min-width:0; padding:.48rem .7rem; color:#f8f5ec; background:#116e72; text-decoration:none; }
.biergarten-strip img { display:block; width:3.25rem; height:2.8rem; object-fit:contain; filter:drop-shadow(0 1px 2px rgba(0,0,0,.55)); }
.biergarten-copy { display:flex; min-width:0; flex-direction:column; line-height:1; }
.biergarten-copy>small { color:#f9d328; font-size:.53rem; font-weight:950; letter-spacing:.1em; }
.biergarten-strip strong { margin-top:.22rem; overflow:hidden; font-family:Impact,"Arial Narrow",sans-serif; font-size:1.18rem; letter-spacing:.035em; text-overflow:ellipsis; text-transform:uppercase; white-space:nowrap; }
.biergarten-strip time { display:flex; flex-wrap:wrap; gap:.08rem .34rem; margin-top:.22rem; color:#d9e8e5; font-size:.6rem; font-weight:850; letter-spacing:.04em; line-height:1.15; }
.biergarten-strip time span { min-width:0; white-space:nowrap; }
.biergarten-strip time span:first-child { color:#f9d328; }
.biergarten-date { display:grid; grid-template-rows:.72rem 1fr; width:2.35rem; height:2.8rem; overflow:hidden; color:#101515; background:#f8f5ec; text-align:center; text-shadow:none; box-shadow:0 2px 5px rgba(0,0,0,.55); }
.biergarten-date small { display:grid; place-items:center; color:#101515; background:#f1a268; font-size:.48rem; font-weight:950; letter-spacing:.06em; line-height:1; text-transform:uppercase; }
.biergarten-date strong { align-self:center; margin:0; overflow:visible; font-family:Impact,"Arial Narrow",sans-serif; font-size:1.2rem; line-height:1; }
.biergarten-feature { display:grid; grid-template-columns:5.5rem 2.8rem minmax(0,1fr) auto; gap:clamp(.8rem,2vw,1.5rem); align-items:center; margin:.8rem 0 0; padding:.8rem 1rem; color:#f8f5ec; background:#101515; border-left:.45rem solid #116e72; box-shadow:.45rem .45rem 0 #f1a268; }
.biergarten-feature .biergarten-date { width:2.8rem; height:3.25rem; }
.biergarten-feature .biergarten-date strong { font-size:1.45rem; }
.biergarten-mark img { display:block; width:5.5rem; height:3.25rem; object-fit:contain; filter:drop-shadow(0 1px 2px rgba(0,0,0,.7)); }
.biergarten-feature p { margin:0 0 .22rem; color:#75d1ca; font-size:.58rem; font-weight:950; letter-spacing:.12em; }
.biergarten-feature h2 { margin:0; font-family:Impact,"Arial Narrow",sans-serif; font-size:clamp(1.65rem,3vw,2.65rem); line-height:.95; text-transform:uppercase; }
.biergarten-feature .biergarten-details > span { display:block; margin-top:.3rem; color:#c9ceca; font-size:.72rem; font-weight:700; }
.biergarten-feature > a { grid-column:1/-1; margin:.1rem -1rem -.8rem; padding:.38rem .65rem; color:#101515; background:#f9d328; font-size:.58rem; font-weight:950; letter-spacing:.07em; text-align:center; text-decoration:none; white-space:nowrap; }
.event-countdown { display:inline-block; margin:0 0 .15rem; padding:.16rem .38rem; background:#f9d328; color:#101515; font-size:.62rem; font-weight:950; letter-spacing:.09em; line-height:1.2; text-transform:uppercase; transform:rotate(-1deg); }
@media(max-width:900px){
  .broadcast h1 em{display:block;margin-top:.08em;font-size:.52em;line-height:1.05;letter-spacing:.01em;white-space:nowrap}
  .viewer figcaption{position:static;display:flex;flex-direction:row;align-items:center;gap:.5rem;padding:.3rem .5rem;background:#101515;color:#cbd1ce;font-size:.54rem;line-height:1.15}
  .viewer figcaption span:last-child{margin-left:auto;white-space:nowrap}
}
@media(min-width:621px){
  .today-strip{position:relative;grid-template-columns:3.8rem 2.35rem auto minmax(0,1fr) auto;padding-top:1.82rem}
  .today-strip>strong{position:absolute;z-index:1;top:.18rem;left:.7rem;padding:.2rem .48rem;font-size:.72rem;transform:rotate(-3deg);box-shadow:.14rem .14rem 0 #101515}
  .today-strip-identity{grid-column:1}
  .today-strip-date{grid-column:2}
  .today-strip>time{grid-column:3}
  .today-strip-title{grid-column:4}
  .today-strip-more{grid-column:5}
  .biergarten-strip{position:relative;padding-top:1.15rem}
  .biergarten-strip time span[data-biergarten-strip-relative]{position:absolute;z-index:1;top:.18rem;left:.42rem;padding:.16rem .38rem;background:#f9d328;color:#101515;font-size:.58rem;letter-spacing:.08em;line-height:1;transform:rotate(-2deg);box-shadow:.1rem .1rem 0 #101515}
}
@media(min-width:621px) and (max-width:1150px){
  .today-strip-group.has-biergarten .today-strip{grid-template-columns:minmax(0,1fr) 3.8rem 2.1rem auto minmax(0,1fr);grid-template-rows:auto auto;padding-top:.55rem}
  .today-strip-group.has-biergarten .today-strip-identity{grid-column:2;grid-row:2}
  .today-strip-group.has-biergarten .today-strip-date{grid-column:3;grid-row:2;width:2.1rem;height:2.5rem}
  .today-strip-group.has-biergarten .today-strip>time{grid-column:4;grid-row:2}
  .today-strip-group.has-biergarten .today-strip-title{position:static;display:block;grid-column:1/6;grid-row:1;overflow:hidden;padding-inline:8.5rem;font-size:clamp(1.7rem,4vw,2.6rem);line-height:1;white-space:nowrap;text-align:center;text-overflow:ellipsis}
  .today-strip-group.has-biergarten .today-strip-more{position:absolute;z-index:2;right:-.45rem;bottom:-.45rem;box-shadow:.18rem .18rem 0 rgba(16,21,21,.28)}
  .today-strip-group.has-biergarten .biergarten-strip{grid-template-columns:minmax(0,1fr) 2.42rem 3.15rem minmax(7rem,10rem) minmax(0,1fr);gap:.48rem;padding-right:.55rem}
  .today-strip-group.has-biergarten .biergarten-strip>.biergarten-date{grid-column:2}
  .today-strip-group.has-biergarten .biergarten-strip>img{grid-column:3}
  .today-strip-group.has-biergarten .biergarten-strip>.biergarten-copy{grid-column:4}
  .today-strip-group.has-biergarten .biergarten-strip img{width:3.15rem;height:2.89rem}
  .today-strip-group.has-biergarten .biergarten-strip .biergarten-date{grid-template-rows:.74rem 1fr;width:2.42rem;height:2.89rem}
  .today-strip-group.has-biergarten .biergarten-strip .biergarten-date small{font-size:.48rem}
  .today-strip-group.has-biergarten .biergarten-strip .biergarten-date strong{font-size:1.24rem}
  .today-strip-group.has-biergarten .biergarten-copy>small{font-size:.53rem;line-height:1.05}
  .today-strip-group.has-biergarten .biergarten-strip strong{font-size:1.18rem}
  .today-strip-group.has-biergarten .biergarten-strip time{font-size:.62rem}
  .today-strip-group.has-biergarten .biergarten-strip time span[data-biergarten-strip-relative]{font-size:.67rem}
}
@media(min-width:621px) and (max-width:1150px){
  .today-strip-group.has-biergarten .today-strip-title.is-two-line{display:-webkit-box;white-space:normal;text-overflow:clip;-webkit-box-orient:vertical;-webkit-line-clamp:2}
}
@media(max-width:620px){.continue-live-view span{display:block}.continue-live-view span+span::before{content:none}.today-strip-group.has-biergarten{grid-template-columns:1fr}.today-strip{grid-template-columns:3rem minmax(0,1fr) auto;gap:.3rem .45rem;padding:.38rem .5rem;font-size:.72rem}.today-strip-identity{grid-column:1;grid-row:1/3;width:3rem;height:2.7rem}.today-strip strong{grid-column:2;grid-row:1;justify-self:start;padding:.16rem .3rem}.today-strip time{grid-column:3;grid-row:1}.today-strip-title{grid-column:2;grid-row:2;overflow:hidden;font-size:1.05rem;text-overflow:ellipsis;white-space:nowrap}.today-strip-more{grid-column:3;grid-row:2;padding:.28rem .4rem;font-size:.58rem}.biergarten-strip{grid-template-columns:2rem 2.6rem minmax(0,1fr);padding:.35rem .55rem}.biergarten-strip img{width:2.6rem;height:2.15rem}.biergarten-strip .biergarten-date{grid-template-rows:.55rem 1fr;width:2rem;height:2.15rem}.biergarten-strip .biergarten-date small{font-size:.38rem}.biergarten-strip .biergarten-date strong{font-size:.9rem}.biergarten-strip strong{font-size:1rem}.today-feature{grid-template-columns:105px 1fr;align-items:start}.today-feature h2{font-size:2.2rem}.today-feature p:not(.today-label){font-size:.78rem}.biergarten-feature{grid-template-columns:3.8rem 2.35rem minmax(0,1fr);padding:.65rem .7rem}.biergarten-mark img{width:3.8rem;height:2.4rem}.biergarten-feature .biergarten-date{grid-template-rows:.62rem 1fr;width:2.35rem;height:2.55rem}.biergarten-feature .biergarten-date strong{font-size:1.1rem}.biergarten-details{min-width:0}.biergarten-feature h2{font-size:1.55rem}.biergarten-feature .biergarten-details>span{font-size:.66rem}.biergarten-feature>a{grid-column:1/-1;margin:.1rem -.7rem -.65rem;justify-self:stretch;white-space:normal}}
@media(max-width:620px){
  .today-strip{grid-template-columns:2rem 2.6rem minmax(0,1fr) auto}
  .today-strip-date{display:grid;grid-column:1;grid-row:1/3;width:2rem;height:2.7rem}
  .today-strip .today-strip-date strong{grid-column:auto;grid-row:auto;justify-self:auto;padding:0;background:transparent;transform:none}
  .today-strip-identity{grid-column:2;grid-row:1/3;width:2.6rem}
  .today-strip>strong{grid-column:3;grid-row:1}
  .today-strip>time{grid-column:4;grid-row:1}
  .today-strip-title{grid-column:3;grid-row:2}
  .today-strip-more{grid-column:4;grid-row:2}
}
