/* One dark Visit composition: directions belong with the practical information. */
.visit-page .page-masthead{min-height:96px;padding-block:12px;background:#000;color:#fff;border:0}
.visit-page .page-home{width:170px}
.visit-page .page-logo{filter:invert(1)}
.visit-page .visit-poster{min-height:calc(var(--screen-height) - 96px);padding:12px 0 24px;align-items:center}
.visit-page .poster-title>span{font-size:clamp(24px,3.8svh,38px);margin-bottom:10px}
.visit-page .poster-title>strong{font-size:clamp(54px,min(11.8vw,13.8svh),152px);line-height:.92}
.visit-page .poster-stage{grid-template-columns:minmax(270px,.8fr) minmax(0,1.6fr);grid-template-areas:"hours pearl";gap:clamp(30px,5vw,72px);margin-top:clamp(18px,3svh,30px);min-height:0;max-width:none}
.visit-page .poster-lamp-pair{width:100%;max-width:900px;gap:20px}
.visit-page .poster-lamp svg{width:100%;height:clamp(180px,36svh,380px);max-width:none}
.visit-page .poster-time{margin-top:10px;font-size:clamp(34px,3.2vw,46px)}
.visit-page .poster-days{margin-top:10px}
.visit-page .poster-muted{margin-top:3px}
.visit-page .poster-admission{margin-top:16px}
.visit-page .poster-admission br{display:none}
.visit-page .poster-admission>span{margin-left:4px}
.visit-page .poster-location{display:block;margin-top:20px;padding-top:16px;border-top:1px solid #555}
.visit-page .poster-location address{display:block;margin-top:7px}
.visit-page .poster-location address strong{display:block;font-size:clamp(21px,2.2vw,30px);line-height:1.2}
.visit-page .poster-location address>span{display:block;font-size:14px;line-height:1.5;margin-top:5px}
.visit-page .poster-directions{display:inline-flex;min-height:44px;min-width:160px;margin-top:10px;padding:8px 0;border-bottom:2px solid #fff;font-size:14px;font-weight:700}
.visit-page .poster-directions:hover{text-decoration:underline;text-underline-offset:5px}
@media(max-width:900px) and (min-width:651px){
 .visit-page .poster-stage{grid-template-columns:minmax(270px,1fr) minmax(0,1fr);gap:24px}
 .visit-page .poster-lamp-pair{gap:10px}
 .visit-page .poster-location address strong{font-size:24px}
}
@media(max-width:650px){
 .visit-page .page-masthead{min-height:80px;padding-block:10px}
 .visit-page .page-home{width:140px;min-width:130px}
 .visit-page .programme-menu summary{top:18px}
 .visit-page .visit-poster{min-height:calc(var(--screen-height) - 80px);padding:8px 0 20px;align-items:center}
 .visit-page .poster-title>span{font-size:24px;margin-bottom:8px}
 .visit-page .poster-title>strong{font-size:clamp(36px,12.3vw,76px)}
 .visit-page .poster-stage{display:flex;flex-direction:column;align-items:stretch;gap:14px;margin-top:14px}
 .visit-page .poster-lamp-pair{width:100%;max-width:230px;margin-inline:auto}
 .visit-page .poster-lamp svg{height:clamp(100px,16svh,155px);width:100%}
 .visit-page .poster-time{font-size:clamp(34px,10.5vw,46px);margin-top:8px}
 .visit-page .poster-days{font-size:16px;margin-top:8px;line-height:1.5}
 .visit-page .poster-muted{font-size:13px;line-height:1.5}
 .visit-page .poster-admission{font-size:14px;line-height:1.5;margin-top:12px}
 .visit-page .poster-location{margin-top:16px;padding-top:14px}
 .visit-page .poster-location .poster-label{font-size:11px}
 .visit-page .poster-location address{margin-top:6px}
 .visit-page .poster-location address strong{font-size:22px}
 .visit-page .poster-location address>span{font-size:13px;margin-top:3px}
 .visit-page .poster-directions{min-height:44px;margin-top:7px;min-width:150px}
}
/* Natural document flow wins over fitting when the screen is short or text is enlarged. */
@media(max-height:600px){.visit-page .visit-poster{min-height:0;padding-block:12px 24px}.visit-page .poster-title>strong{font-size:clamp(36px,9.5vw,82px)}}
@media(forced-colors:active){.visit-page .page-masthead{background:Canvas;color:CanvasText}.visit-page .page-logo{filter:none}.visit-page .poster-directions{border-color:LinkText}}
