/* The supplied artwork stays intact. Lighting is restricted to the stage backdrop. */
.poster-hero{background:#061626}
.poster-hero .hero-grid{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:65px;padding-top:40px;padding-bottom:36px;min-height:0}
.poster-hero .hero-story{padding:20px 0}
.poster-hero .hero-logo{width:min(100%,470px)}
.poster-hero .hero-edition{margin-bottom:28px;font-size:11px}
.poster-hero .legacy-line{margin:25px 0 34px}
.poster-hero .hero-title h1{font-size:clamp(64px,6.2vw,90px)}
.poster-hero .hero-title h1>span{font-size:.66em;line-height:1.05}
.hero-program{max-width:450px;color:#bad9ec;font-size:16px;line-height:1.7;margin:26px 0 0}
.hero-program strong{font-weight:700;color:#e9f7ff;white-space:nowrap}
.poster-hero .hero-actions{margin-top:27px}
.poster-hero .hero-actions .button{gap:12px;padding-inline:20px}
.poster-hero .hero-date{display:flex;flex-direction:column;gap:7px;font-size:13px;letter-spacing:.04em;line-height:1.6}
.poster-hero .hero-date span{font-size:12px}
.poster-hero .stage-photo{opacity:.14;object-position:70% 27%;filter:blur(3px) saturate(.9);mask-image:linear-gradient(90deg,transparent,#000 70%)}
.poster-hero .stage-atmosphere{background:radial-gradient(ellipse at 75% 45%,#173d70,#081a2c 70%)}
.poster-hero .stage-haze{background:#6897ff29;animation:posterAmbient 24s ease-in-out infinite;filter:blur(65px)}
.poster-hero-art{width:100%;max-width:570px;justify-self:end;margin:0;padding:0;perspective:none;position:relative}
.poster-halo{position:absolute;inset:12% -12% 14%;border-radius:50%;background:radial-gradient(ellipse,#1a78ff3d,transparent 68%);filter:blur(25px);pointer-events:none;animation:posterAmbient 24s ease-in-out infinite}
.hero-poster-button{display:block;width:100%;padding:0;position:relative;border:1px solid #a8d9fb3d;border-radius:4px;box-shadow:0 22px 80px #01081199,0 0 45px #6793fd12;text-align:left;overflow:hidden;background:#030a14;transition:border-color .3s,box-shadow .3s}
.hero-poster-button:hover{border-color:#d9efff88;box-shadow:0 28px 85px #010811b3,0 0 50px #6793fd24}
.concert-poster{display:block!important;position:relative!important;inset:auto!important;width:100%;height:auto;padding:0!important;background:#030912!important;overflow:hidden;isolation:isolate;line-height:0!important;container-type:inline-size;aspect-ratio:1122/1402}
.concert-poster .poster-base{display:block;width:100%;height:auto;position:relative;z-index:0}
.poster-stage{position:absolute;left:0;right:0;top:0;height:62.5%;overflow:hidden;pointer-events:none;z-index:1;clip-path:polygon(0 0,100% 0,100% 100%,63% 100%,63% 94%,71% 93%,82% 89%,84% 80%,68% 77%,65% 78%,62% 69%,60% 56%,55% 48%,52% 44%,53% 36%,52% 27%,48% 21%,42% 19%,36% 20%,31% 25%,29% 33%,31% 43%,27% 48%,20% 51%,14% 56%,9% 61%,3% 70%,2% 80%,6% 87%,5% 100%,0 100%);mask-image:linear-gradient(180deg,transparent 0 19%,#000 24%);-webkit-mask-image:linear-gradient(180deg,transparent 0 19%,#000 24%)}
.poster-spectrum{width:100%;max-width:none;height:auto;position:absolute;top:0;left:0;filter:hue-rotate(0deg) saturate(1.18);animation:posterSpectrum 24s ease-in-out infinite}
.poster-color-haze{position:absolute;inset:17% -10% -10%;background:radial-gradient(ellipse at 77% 48%,#53a4ff3d,transparent 60%),radial-gradient(ellipse at 15% 70%,#518fff44,transparent 48%);mix-blend-mode:screen;filter:blur(10px);animation:posterHaze 24s ease-in-out infinite}
.poster-light{position:absolute;top:22%;height:115%;width:30%;transform-origin:50% 0;clip-path:polygon(48% 0,52% 0,100% 100%,0 100%);background:linear-gradient(180deg,#ebf8ffa6 0%,#97d8ff57 17%,#63a0f727 52%,transparent 93%);mix-blend-mode:screen;filter:blur(3px);opacity:.76;will-change:transform;animation:posterBeamSweep 10s ease-in-out infinite alternate}
.poster-light-one{left:43.7%;--light-start:-17deg;--light-end:18deg;transform:rotate(-17deg)}
.poster-light-two{left:75.4%;--light-start:13deg;--light-end:-25deg;animation-duration:13s;animation-delay:-5s;transform:rotate(13deg);opacity:.66}
.poster-light-three{top:-1%;left:3%;width:37%;height:120%;--light-start:28deg;--light-end:-7deg;animation-duration:16s;animation-delay:-9s;opacity:.4;transform:rotate(28deg)}
.poster-light-glints{position:absolute;inset:0;background:radial-gradient(ellipse 1.4% 2% at 58.7% 22.5%,#f1fbffe6,transparent 100%),radial-gradient(ellipse 1.4% 2% at 90.4% 22.5%,#f1fbffd9,transparent 100%);opacity:.8}
.poster-address{position:absolute;z-index:3;left:65.8%;right:5.2%;top:82.05%;height:4.85%;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:0;background:linear-gradient(100deg,#020810,#040a11 65%,#080e16);color:#65d0ee;font-family:'Barlow Condensed','Arial Narrow',sans-serif;font-weight:700;font-size:2.6cqw;line-height:.97;letter-spacing:-.015em;text-align:center;white-space:nowrap}
.poster-address>span{display:block}
.poster-expand{position:absolute;z-index:4;right:12px;top:12px;width:36px;height:36px;display:grid;place-items:center;background:#061424b8;border:1px solid #c5e9ff73;border-radius:50%;color:#ecfaff;font-size:22px;backdrop-filter:blur(10px)}
.poster-lighting{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:17px;position:relative;z-index:2;color:#c4dbea}
.lighting-label{font-size:10px;font-weight:700;letter-spacing:.15em;margin-right:auto}
.poster-lighting button{min-width:44px;min-height:44px;display:inline-flex;justify-content:center;align-items:center;gap:7px;border:1px solid transparent;border-radius:40px;font-size:11px;line-height:1.2;padding:9px 10px;color:#a7c2d6;transition:background .25s,border-color .25s,color .25s}
.poster-lighting button[aria-pressed=true]{background:#9bdcff14;border-color:#afdfff6b;color:#f0faff}
.poster-lighting button:hover{background:#c3e7ff14;color:white}
.poster-lighting button i{display:block;width:9px;height:9px;border-radius:50%;background:#7caeff;box-shadow:0 0 11px #69a2ff80}
.poster-lighting [data-light=purple] i{background:#c28cff;box-shadow:0 0 11px #b477ff80}
.poster-lighting [data-light=green] i{background:#76e4b7;box-shadow:0 0 11px #65e5ac80}
.poster-hint{margin:7px 0 0;text-align:center;font-size:11px;color:#90afc5;letter-spacing:.025em}
.poster-caption{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:3px}
.poster-caption .poster-hint{font-size:10px;margin:0;text-align:left;line-height:1.5;letter-spacing:.035em}
.poster-inline-motion{min-height:44px;flex-shrink:0;padding:4px 0 4px 9px;color:#b9d5e7;font-size:11px;border-bottom:1px solid #a8d2e729}
html:not([data-poster-light=auto]) .poster-spectrum{animation:none}
html[data-poster-light=purple] .poster-spectrum{filter:hue-rotate(58deg) saturate(1.25)}
html[data-poster-light=blue] .poster-spectrum{filter:hue-rotate(-15deg) saturate(1.28)}
html[data-poster-light=green] .poster-spectrum{filter:hue-rotate(-105deg) saturate(1.12)}
html:not([data-poster-light=auto]) .poster-color-haze{animation:none}
html[data-poster-light=purple] .poster-color-haze{filter:hue-rotate(60deg) blur(10px)}
html[data-poster-light=green] .poster-color-haze{filter:hue-rotate(-95deg) blur(10px)}
html[data-poster-light=purple] .poster-halo,html[data-poster-light=purple] .poster-hero .stage-haze{animation:none;background:#793fff23}
html[data-poster-light=green] .poster-halo,html[data-poster-light=green] .poster-hero .stage-haze{animation:none;background:#39cd9f1f}
html[data-poster-light=blue] .poster-halo,html[data-poster-light=blue] .poster-hero .stage-haze{animation:none;background:#337bff26}
.comfort-record{display:flex;gap:19px;align-items:center;width:100%;padding:16px 0;margin:24px 0 0;border-top:1px solid #c1d9e7;text-align:left}
.comfort-record>img{width:82px;height:82px;object-fit:cover;box-shadow:0 5px 14px #14384e22;transform:rotate(-4deg);transition:transform .3s}
.comfort-record:hover>img{transform:rotate(0)}
.comfort-record>span{display:flex;flex-direction:column;gap:5px}
.comfort-record small{font-size:10px;letter-spacing:.11em;color:#568199}
.comfort-record strong{font-family:var(--serif);font-size:22px;font-weight:500;line-height:1.15;color:#133e56}
.comfort-record>span>span{font-size:12px;color:#247897}
.venue-section .poster-venue-button{transform:none;border:1px solid #9dcbdf45;border-radius:3px;overflow:hidden}
.poster-venue-button>.poster-preview-caption{position:relative;display:block;padding:14px;background:#123348;color:#d8f3ff;font-size:11px;letter-spacing:.1em;line-height:1.5}
.venue-access-note{max-width:420px;margin:24px 0 0;color:#9ab9ce;font-size:13px;line-height:1.7}
.calendar-link{display:inline-flex;gap:15px;align-items:center;min-height:44px;font-size:13px;color:#b2e2fa;border-bottom:1px solid #9fc7de55;margin-top:5px}
.animated-poster-dialog{width:min(1120px,calc(100vw - 48px));max-width:none;max-height:92dvh;padding:0;border:1px solid #c7e7ff44;border-radius:6px;overflow:auto;color:#eff9ff;background:#071b2d}
.animated-poster-dialog>.close{position:sticky;float:right;top:12px;margin:12px 12px -58px 0;z-index:8;width:44px;height:44px;display:grid;place-items:center;border:1px solid #d2edff80;border-radius:50%;background:#071b2ded;color:white;font-size:21px;padding:0}
.poster-dialog-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center}
.poster-dialog-art{min-width:0}
.poster-dialog-info{padding:55px 35px 40px;min-width:0}
.poster-dialog-info .eyebrow{font-size:11px;color:#a8d3ee;letter-spacing:.13em}
.poster-dialog-info h2{font-size:56px;line-height:1.02;letter-spacing:-.04em}
.poster-dialog-info h2 em{color:#a5dfff;font-style:normal}
.poster-dialog-info>p:not(.eyebrow){font-size:14px;color:#adcadc;line-height:1.8;margin:24px 0}
.poster-dialog-date{display:flex;flex-direction:column;gap:6px}
.poster-dialog-date strong{color:#f5fbff;font-weight:700}
.poster-all-ages{display:block;margin-top:5px;color:#a9e5cc}
.poster-dialog-info .poster-lighting{flex-wrap:wrap;justify-content:flex-start;gap:4px;margin-top:20px}
.poster-dialog-info .lighting-label{flex-basis:100%;margin-bottom:7px}
.poster-motion-control{display:block;min-height:44px;padding:0;font-size:12px;color:#b7d4e7;margin:8px 0 19px;border-bottom:1px solid #a8cfe446}
.poster-dialog-info>.button{width:100%;margin-top:5px;font-size:14px}
@keyframes posterSpectrum{0%,12%,100%{filter:hue-rotate(-15deg) saturate(1.28)}33%,42%{filter:hue-rotate(58deg) saturate(1.25)}67%,79%{filter:hue-rotate(-105deg) saturate(1.12)}}
@keyframes posterHaze{0%,12%,100%{filter:hue-rotate(0deg) blur(10px);transform:translateX(0)}33%,42%{filter:hue-rotate(60deg) blur(10px);transform:translateX(3%)}67%,79%{filter:hue-rotate(-95deg) blur(10px);transform:translateX(-3%)}}
@keyframes posterBeamSweep{from{transform:rotate(var(--light-start))}to{transform:rotate(var(--light-end))}}
@keyframes posterAmbient{0%,12%,100%{filter:blur(40px) hue-rotate(0deg);opacity:.65}33%,42%{filter:blur(40px) hue-rotate(60deg);opacity:.85}67%,79%{filter:blur(40px) hue-rotate(-95deg);opacity:.7}}
.poster-offstage .poster-stage *,.poster-offstage .poster-stage *:before,.poster-offstage .poster-stage *:after{animation-play-state:paused!important}
@media(min-width:1600px){.poster-hero .hero-grid{padding-top:50px;padding-bottom:45px}.poster-hero .hero-title h1{font-size:96px}}
@media(max-width:1100px){.poster-hero .hero-grid{gap:36px;grid-template-columns:1fr 1fr}.poster-hero .hero-title h1{font-size:69px}.poster-hero .hero-story{padding:0}.poster-hero .hero-edition{font-size:10px}.poster-hero .legacy-line{margin:20px 0 28px}.hero-program{font-size:14px}.poster-hero .hero-actions{gap:9px}.poster-hero .hero-actions .button{font-size:12px;padding:16px 14px;gap:9px}.poster-lighting button{padding:8px;gap:5px;font-size:10px}.lighting-label{font-size:9px;letter-spacing:.1em}.poster-dialog-info{padding:45px 25px 30px}.poster-dialog-info h2{font-size:48px}}
@media(max-width:800px){.poster-hero .hero-grid{display:grid;grid-template-columns:1fr;gap:0;padding-top:24px;padding-bottom:27px}.poster-hero .hero-story{display:contents}.poster-hero .hero-edition{order:-3;font-size:10px;justify-content:center;margin-bottom:17px}.poster-hero .hero-edition>span:last-child{display:block;font-size:10px;margin-left:auto}.poster-hero-art{order:-2;width:100%;max-width:530px;justify-self:center;margin:0 0 31px;padding:0}.poster-hero .hero-logo{display:none}.poster-hero .hero-title{order:0}.poster-hero .hero-title h1{font-size:clamp(56px,14vw,82px);line-height:.96}.poster-hero .hero-title h1>span{font-size:.62em}.poster-hero .hero-title h1 em{display:inline}.poster-hero .anniversary-label{font-size:10px;margin-bottom:11px;letter-spacing:.055em}.poster-hero .legacy-line{order:2;margin:21px 0 0;font-size:10px;max-width:none}.poster-hero .legacy-line strong{font-size:13px}.hero-program{order:1;font-size:14px;line-height:1.8;margin-top:19px;margin-bottom:0;max-width:none}.poster-hero .hero-actions{order:3;margin-top:23px;display:grid;grid-template-columns:1fr 1fr}.poster-hero .hero-actions .button{font-size:12px;padding:15px 12px;min-height:54px;gap:8px}.poster-hero .hero-date{order:4;margin-top:18px;gap:4px;font-size:12px}.poster-hero .hero-date span{white-space:normal}.poster-hero .stage-photo{height:80%;object-position:center 25%;opacity:.1}.poster-hero .stage-haze{height:50%;top:8%;bottom:auto}.poster-hero .hero-floor{padding-top:14px;padding-bottom:16px}.poster-lighting{margin-top:12px;gap:3px}.poster-lighting button{font-size:10px;min-height:44px;padding:8px;gap:5px}.lighting-label{font-size:9px;letter-spacing:.08em}.poster-hint{font-size:10px;margin-top:4px}.poster-expand{width:32px;height:32px;font-size:20px;right:9px;top:9px}.poster-light{filter:blur(1.5px)}.poster-color-haze{filter:blur(5px)}.comfort-record{gap:16px}.comfort-record>img{width:70px;height:70px}.comfort-record strong{font-size:20px}.poster-venue-button .poster-preview-caption{font-size:10px}.animated-poster-dialog{width:calc(100vw - 20px);max-height:94dvh}.poster-dialog-layout{grid-template-columns:1fr}.poster-dialog-info{padding:28px 23px 32px}.poster-dialog-info h2{font-size:45px}.poster-dialog-info>p:not(.eyebrow){margin:19px 0;font-size:14px}.poster-dialog-info .poster-lighting{flex-wrap:nowrap;justify-content:space-between;gap:3px}.poster-dialog-info .lighting-label{flex-basis:auto;margin-bottom:0}.poster-dialog-info .poster-motion-control{margin-top:10px;margin-bottom:16px}.poster-dialog-info .poster-lighting button{font-size:10px}}
@media(max-width:370px){.poster-lighting button{padding:8px 6px}.lighting-label{font-size:8px}.poster-lighting button span{font-size:9px}.poster-hero .hero-actions{grid-template-columns:1fr}.poster-hero .hero-date{font-size:11px}.poster-hero .hero-edition{letter-spacing:.05em}.poster-dialog-info{padding-inline:18px}.poster-dialog-info .lighting-label{display:none}}
@media(prefers-reduced-motion:reduce){.poster-stage *,.poster-halo,.poster-hero .stage-haze{animation:none!important}.poster-spectrum{filter:hue-rotate(-15deg) saturate(1.15)}.hero-poster-button,.comfort-record>img{transition:none}.poster-light-one{transform:rotate(-6deg)}.poster-light-two{transform:rotate(7deg)}}
