/* Interaction polish within the approved blue, white and steel-gray palette. */
html{scroll-padding-top:112px}
img{-webkit-user-drag:none;-webkit-touch-callout:none;user-select:none}
picture,[data-photo],.leader-photo,.dialog-photo-stage{-webkit-touch-callout:none}
button,a{touch-action:manipulation}
.site-header{transition:box-shadow .18s ease}
.home-capability-rail{overscroll-behavior-x:contain}
.home-capability-rail:focus-visible{outline:2px solid var(--skg-blue-bright);outline-offset:3px}
.photo-open{width:100%;padding:0;border:0;border-radius:0;font:inherit;color:inherit;text-align:left;cursor:zoom-in}
.photo-open:disabled{cursor:default}
.photo-open:disabled .photo-enlarge>span:last-child{visibility:hidden}
.photo-is-open{overscroll-behavior:contain;padding-inline-end:var(--scrollbar-offset,0px)}
.photo-dialog{overscroll-behavior:contain}
.photo-dialog[open]{animation:photo-dialog-enter .16s ease-out}
.dialog-photo-stage{position:relative;block-size:min(58dvh,540px);min-height:0;overflow:hidden}
.photo-dialog .dialog-image{max-height:100%;max-width:100%;object-fit:contain}
.dialog-photo-stage[data-state="loading"] .dialog-image,.dialog-photo-stage[data-state="error"] .dialog-image{visibility:hidden}
.photo-loading{position:absolute;inset:0;display:none;place-items:center;pointer-events:none}
.photo-loading .loader-water{width:150px}
.dialog-photo-stage[data-state="loading"] .photo-loading{display:grid;animation:loader-enter .15s .12s both}
.photo-load-error{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:14px;padding:24px;text-align:center;color:#526273;font-size:14px;line-height:1.6}
.photo-retry{min-height:44px;padding:10px 20px;border:1px solid #0964cf;background:#fff;color:#0964cf;font:inherit;cursor:pointer}
.motion-ready [data-motion-region]:not(.motion-active) .footprint-dot-pulse,.motion-paused .footprint-dot-pulse{animation-play-state:paused}
@keyframes photo-dialog-enter{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(hover:hover) and (pointer:fine){
 .home-primary,.footprint-outline-link,.dialog-controls button,.dialog-close,.photo-retry{transition:background-color .18s ease,color .18s ease,border-color .18s ease}
 .connect-channel-arrow{transition:transform .18s ease}
 .connect-channel:hover .connect-channel-arrow{transform:translate(2px,-2px)}
}
@media(max-width:900px){
 html{scroll-padding-top:96px}
 .nav-ready .mobile-nav,.nav-ready .mobile-nav:not(.open){display:block;position:absolute;inset:100% 0 auto;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-6px);transition:opacity .16s ease,transform .16s ease;border-bottom:1px solid var(--line);box-shadow:0 14px 24px #16355214;max-height:calc(100dvh - 80px);overflow-y:auto}
 .nav-ready .mobile-nav.open{opacity:1;visibility:visible;pointer-events:auto;transform:none}
}
@media(max-width:620px){
 .dialog-photo-stage{block-size:min(55dvh,calc(66.667vw - 42px))}
 .photo-dialog .dialog-heading h2{overflow-wrap:anywhere}
}
@media(prefers-reduced-motion:reduce){
 .photo-dialog[open],.photo-loading,.photo-loading .water-layer{animation:none!important}
 .media-grid-originals figure:hover img,.photography-item .photo-open:hover img{transform:none}
}
