/* Local proposal: photograph, connection, distributed readability, then information. */
.header{position:fixed!important;inset:0 0 auto!important;background:transparent!important;border-bottom:0!important;color:#fffaf0;isolation:isolate;transition:background .25s,box-shadow .25s}
.header::before{content:'';position:absolute;inset:0 0 -55px;z-index:-1;pointer-events:none;background:linear-gradient(180deg,rgba(12,18,23,.42),rgba(12,18,23,.20) 48%,transparent);transition:opacity .25s}
.header .brand strong,.header .brand small,.header #menu a{color:#fffaf0!important}
.header #menu{font-size:16px!important;font-weight:600;gap:28px}
.header #menu a{display:inline-flex;align-items:center;min-height:44px;line-height:1.5;text-shadow:0 1px 4px #0008}
.header #menu a:hover{color:#f1d8aa!important}
.header .application-actions a{font-size:15px!important;min-height:46px!important;border-color:#fffaf0ae!important;color:#fffaf0!important;background:#17212c20!important;text-shadow:0 1px 4px #0008}
.header .application-actions a:hover{background:#fffaf01c!important;border-color:#f1d8aa!important}
.header a:focus-visible,.header button:focus-visible{outline:2px solid #ebd1a3!important;outline-offset:5px}
.header.scrolled{background:#fffdfbf5!important;color:#293139;box-shadow:0 2px 16px #17212c0c;backdrop-filter:blur(12px)}
.header.scrolled::before{opacity:0}
.header.scrolled .brand strong,.header.scrolled .brand small,.header.scrolled #menu a,.header.scrolled .application-actions a{color:#293139!important;text-shadow:none}
.header.scrolled .application-actions a{border-color:#929187!important;background:transparent!important}
.header .brand img{object-fit:contain}
.header .brand img{filter:none;mix-blend-mode:normal}
/* The photo does the emotional work; no extra blanket of navy. */
body.readable-type .hero.hero-image-only{display:block;background:#10212b}
body.readable-type .hero.hero-image-only>.hero-visual{position:relative}
.hero-image{opacity:0!important;transition:none!important}
.hero-image-piano.is-active{inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:right 50%!important;opacity:1!important;transform:none!important;filter:none!important}
.hero-visual.photo-active .shade{background:linear-gradient(90deg,#10212b26,transparent 58%)!important}
body.readable-type .hero.hero-image-only .hero-inner{width:100%!important;min-height:clamp(540px,calc(100svh - 212px),900px)!important;padding:150px clamp(32px,7vw,144px) 120px!important;justify-content:center!important}
.hero h1{text-shadow:0 2px 12px #0002}
.hero .slogan{color:#f0d5a5}
.hero .hero-link{background:#10212b20;border-color:#ddc49b;color:#fffaf0}
/* The practical information shares one warm surface, connected to the photograph's gold. */
body.readable-type .hero.hero-image-only>.event-bar{position:relative!important;background:#f5f1e9!important;color:#293139!important;border:0}
body.readable-type .hero.hero-image-only>.event-bar .wrap{padding-block:23px!important}
body.readable-type .hero.hero-image-only>.event-bar .event-announcement h2,
body.readable-type .hero.hero-image-only>.event-bar .event-facts dd,
body.readable-type .hero.hero-image-only>.event-bar .event-facts>div:last-child dd{color:#293139!important}
body.readable-type .hero.hero-image-only>.event-bar .event-facts dt{color:#806038!important}
body.readable-type .hero.hero-image-only>.event-bar .event-weekday,
body.readable-type .hero.hero-image-only>.event-bar .event-announcement a,
body.readable-type .hero.hero-image-only>.event-bar .event-venue-parent{color:#596169!important}
body.readable-type .hero.hero-image-only>.event-bar .event-facts dd,
body.readable-type .hero.hero-image-only>.event-bar .event-facts>div:last-child dd{font-size:27px!important}
body.readable-type .hero-summary{background:#f5f1e9!important;border:0}
body.readable-type .hero-summary .event-summary{border-top:1px solid #dcd4c5;padding-block:19px 23px}
body.readable-type .hero-summary .event-summary p>span{color:#806038!important}
.stage-section{background:#fffdfb}
@media(min-width:761px) and (max-width:1100px){.header-row{padding-inline:32px!important;gap:14px!important}.header #menu{gap:15px!important;font-size:15px!important}.header .brand strong{font-size:18px!important}.header .application-actions a{padding-inline:12px!important}}
@media(max-width:760px){
.header .header-row{padding-top:14px;padding-bottom:8px}
.header .menu-button{filter:brightness(0) invert(1)}.header.scrolled .menu-button{filter:none}
.header .application-actions a{font-size:15px!important;min-height:44px!important;background:transparent!important}
.header .application-actions .application-check-link::after{border-color:#d3ba8c!important}
.header #menu.open{background:#fffdfb!important;margin-top:6px;padding:8px 18px 12px!important;box-shadow:0 12px 24px #0002}
.header #menu a{min-height:48px;font-size:16px!important;color:#293139!important;text-shadow:none;border-color:#dfdfd7!important}
body.readable-type .hero.hero-image-only .hero-inner{min-height:clamp(560px,76svh,690px)!important;padding:160px 24px 78px!important;justify-content:flex-start!important}
.hero-image-piano.is-active{object-position:79% 50%!important}
.hero-visual.photo-active .shade{background:linear-gradient(180deg,#10212b55 0%,#10212b22 40%,transparent 75%)!important}
body.readable-type .hero.hero-image-only>.event-bar .wrap{padding-block:23px!important;row-gap:17px!important}
body.readable-type .hero.hero-image-only>.event-bar .event-announcement h2{font-size:29px!important}
body.readable-type .hero.hero-image-only>.event-bar .event-facts{row-gap:15px!important}
body.readable-type .hero.hero-image-only>.event-bar .event-facts dd,
body.readable-type .hero.hero-image-only>.event-bar .event-facts>div:last-child dd{font-size:23px!important}
body.readable-type .hero.hero-image-only>.event-bar .event-facts>div+div{border-color:#dcd4c5}
body.readable-type .hero-summary .event-summary{padding-block:20px 24px;gap:17px}
}
@media(prefers-reduced-motion:reduce){.header,.header::before{transition:none!important}}

.header .brand-symbol{width:40px;height:40px;flex-shrink:0}@media(max-width:760px){.header .brand-symbol{width:30px;height:34px}}
/* Preserve a reading zone without allowing a flat navy field to dominate shorter windows. */
@media(min-width:761px){.hero-image-piano.is-active{left:-12%!important;right:auto!important;width:112%!important}}
.header .brand-symbol{border:0!important;outline:0;stroke:none;background:transparent}
