.facility .facility-map{overflow:hidden}
.facility .facility-optics,.facility .facility-map .apron-life{position:absolute;inset:0;width:100%;height:100%}
.facility .apron-life{pointer-events:none;z-index:0}
.facility .facility-map:before{z-index:1}
.facility .facility-map .sector-pin{z-index:2}
.facility .facility-map:has(.illuminated) picture img{filter:none}
.facility .facility-map .map-legend{bottom:16px;left:18px;pointer-events:none}
@media(max-width:830px){
 .facility .facility-map .map-legend{display:none}
}
@media(prefers-reduced-motion:reduce){.facility .apron-life{display:none}}

/* Give the absolutely positioned photographic layers a definite stage.
   An auto-sized grid item with only an aspect ratio can collapse in WebKit. */
@media (max-width:830px) and (orientation:portrait) {
 #facility.facility {grid-template-columns:minmax(0,1fr);min-height:0;gap:0;padding:34px 0 24px}
 #facility .facility-copy {display:contents}
 #facility .facility-copy>:is(.ey,h2,p,nav) {margin-left:var(--g);margin-right:var(--g)}
 #facility .facility-copy .ey {grid-row:1;margin-block:0 7px}
 #facility .facility-copy h2 {grid-row:2;font-size:clamp(47px,12.4vw,83px);line-height:.96;margin-block:0 9px}
 #facility .facility-copy h2 br {display:none}
 #facility .facility-copy p {grid-row:3;margin-block:0 15px;max-width:34ch;font-size:15px;line-height:1.38}
 #facility .facility-map {grid-row:4;justify-self:stretch;align-self:start;width:100%;min-width:0;min-height:0;height:auto;aspect-ratio:1672/941}
 #facility .facility-copy nav {grid-row:5;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 11px;margin-block:7px 0}
 #facility .facility-map::before {background:linear-gradient(0deg,#06151a55,transparent 18%);pointer-events:none}
}
@media (max-width:950px) and (orientation:landscape) {
 #facility.facility {display:grid;grid-template-columns:minmax(162px,.43fr) minmax(0,1fr);align-items:center;min-height:0;gap:12px;padding:17px 0}
 #facility .facility-copy {min-width:0;padding:0 0 0 max(14px,env(safe-area-inset-left))}
 #facility .facility-copy h2 {margin:8px 0;font-size:clamp(35px,5.3vw,58px);line-height:.97}
 #facility .facility-copy p {font-size:14px;line-height:1.32;margin:8px 0 12px}
 #facility .facility-copy nav {display:grid;grid-template-columns:minmax(0,1fr);margin:0}
 #facility .facility-map {justify-self:stretch;align-self:center;width:100%;min-width:0;min-height:0;height:auto;aspect-ratio:1672/941}
}
@media (max-width:830px) and (orientation:portrait),(max-width:950px) and (orientation:landscape){
 #facility .facility-copy nav a {display:grid;grid-template-columns:2ch minmax(0,1fr) auto;gap:6px;align-items:center;min-height:46px;padding:6px 1px;font:600 clamp(13px,3vw,16px)/1.24 system-ui;overflow-wrap:normal;word-break:normal}
 #facility .facility-copy nav small {font:600 10px/1 ui-monospace,monospace;letter-spacing:0;white-space:nowrap}
 #facility .facility-copy nav b {margin:0}
 #facility .facility-map .sector-pin {white-space:nowrap;min-height:44px;min-width:44px;font:600 clamp(10px,2.75vw,12px)/1.1 system-ui;transform:translate(-50%,-78%);touch-action:manipulation}
 #facility .sector-pin i,#facility .sector-pin b {padding:5px;white-space:nowrap;overflow-wrap:normal}
 #facility .sector-pin i {font:700 10px/1.1 ui-monospace,monospace}
 #facility .sector-pin::after {left:50%;top:calc(50% + 10px);height:4px;border-color:#ffd9a6}
 #facility .sector-pin::before {content:'';position:absolute;left:calc(50% - 2px);top:calc(50% + 12px);width:4px;height:4px;border-radius:50%;background:#ffce86}
 #facility .sector-pin:focus-visible {outline:2px solid #ddfff7;outline-offset:1px}
}
