/* V20: a one-row header and a hero composed around the available screen. */
.site-header{height:64px;min-height:64px;flex-wrap:nowrap}
.site-header .site-brand{display:flex;align-items:baseline;gap:0;min-height:0}
.site-brand .brand-short{font-weight:800}
.site-brand .brand-rest{font-weight:760;margin-left:4px}
.site-brand .brand-year{font-weight:450;margin-left:8px}
.site-header .site-nav{display:flex;flex-basis:auto;flex-wrap:nowrap;height:auto;order:0;margin-left:auto;gap:24px;padding:0;background:transparent}
.hero{height:100svh;min-height:560px;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:16px;padding:calc(var(--site-header-height) + 20px) var(--gutter) 12px}
.hero-stage{width:100%;height:100%;min-height:0;grid-template-columns:minmax(0,1.2fr) minmax(290px,.8fr);align-items:stretch;max-width:1140px;gap:clamp(32px,5vw,80px);margin:0 auto}
.hero-art{height:100%;min-height:0}
.hero-art img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain}
.hero-info{justify-content:center;gap:clamp(12px,2.2svh,24px);padding:0}
.hero-date strong{font-size:clamp(48px,8svh,78px)}
.hero-date time>span{font-size:clamp(20px,3svh,29px);letter-spacing:-.025em;margin-top:8px}
.hero-venue{width:100%;max-width:340px}
.hero-venue>span{font-size:12px;margin-bottom:10px}
.hero-venue .hero-luma{font-size:18px;line-height:1.2;min-height:54px;margin:0;padding:16px 20px;background:var(--cobalt);color:var(--paper);font-weight:700}
.hero-description{max-width:36ch;font-size:clamp(14px,1.7svh,17px);line-height:1.45}
.hero-actions{max-width:340px}
.hero-actions .text-link{border-color:#1010ce55;color:var(--cobalt);padding:8px 0}
.hero-footer{padding-top:8px}
.hero-footer a{min-height:32px}
.site-footer .motion-toggle{border:0;padding:0;min-width:0;min-height:44px;font-size:10px;opacity:.7}
.site-footer .motion-icon{display:none}
.footer-love{margin-top:12px!important;color:var(--paper)}
.footer-love span{color:var(--pink);margin-left:3px}
.ticket-brand img{filter:grayscale(1) sepia(1) saturate(8) hue-rotate(183deg) contrast(1.1);mix-blend-mode:multiply}
@media(max-width:760px){
 :root{--site-header-height:56px}
 .site-header{height:56px;min-height:56px;padding:0 12px;gap:10px}
 .site-header .site-brand{font-size:17px;flex-shrink:0}
 .site-header .brand-rest,.site-header .brand-year{display:none}
 .site-header .site-nav{flex:1;gap:4px;justify-content:space-between;min-width:0}
 .site-header .site-nav a{font-size:11px;min-height:44px;padding:8px 4px}
 .site-header .site-nav a:last-child{font-size:11px;min-height:40px;padding:10px 8px}
 .hero{min-height:680px;gap:12px;padding:calc(var(--site-header-height) + 16px) var(--gutter) 12px}
 .hero-kicker{gap:12px;font-size:9px}
 .hero-kicker>p{max-width:25ch}
 .hero-kicker>span{max-width:13ch;text-align:right}
 .hero-stage{display:grid;grid-template-columns:1fr;grid-template-rows:minmax(220px,1fr) auto;gap:14px;min-height:0}
 .hero-art{width:100%;max-width:480px;margin:auto}
 .hero-info{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px;align-items:center;max-width:480px;width:100%;margin:auto}
 .hero-date strong{font-size:clamp(34px,9vw,46px)}
 .hero-date time>span{font-size:13px;margin-top:5px}
 .hero-venue{max-width:none}
 .hero-venue>span{font-size:9px;margin-bottom:6px}
 .hero-venue .hero-luma{min-height:46px;padding:12px 10px;font-size:13px;gap:8px}
 .hero-description{grid-column:1/-1;max-width:none;font-size:13px;line-height:1.4}
 .hero-actions{grid-column:1/-1;max-width:none;display:block}
 .hero-actions .text-link{display:flex;font-size:11px;min-height:32px;padding:5px 0}
 .hero-footer{font-size:9px;gap:12px}
 .hero-footer a{gap:8px}
 .site-footer{flex-wrap:wrap}
 .site-footer .motion-toggle{flex-basis:100%;font-size:10px}
}
@media(max-height:600px) and (min-width:761px){
 .hero{height:auto;min-height:560px}
 .hero-art{max-height:360px}
}
@media print{
 .hero{height:auto;min-height:0;display:block;padding-top:24px}
 .hero-stage{height:auto;grid-template-columns:1fr 1fr}
 .hero-art{height:90mm}
 .site-footer .motion-toggle{display:none}
}
