/* Photography stays at the centre of the experience. */
html.has-photo-viewer{overflow:hidden}
#kb-site-preview .gallery-open{cursor:pointer}
#kb-site-preview .gallery-open:focus-visible{outline:2px solid #642b7b;outline-offset:5px}
#kb-site-preview #gallery-dialog.photo-viewer{position:fixed;inset:0;width:100vw;height:100vh;height:100dvh;max-width:none;max-height:none;box-sizing:border-box;margin:0;padding:0;border:0;border-radius:0;background:#171719;color:#fff;overflow:hidden}
#kb-site-preview #gallery-dialog.photo-viewer[open]{display:grid;grid-template-rows:minmax(0,1fr) auto}
#kb-site-preview #gallery-dialog.photo-viewer::backdrop{background:#171719}
#kb-site-preview #gallery-dialog.photo-viewer #gallery-viewport{grid-row:1;box-sizing:border-box;display:flex;align-items:center;justify-content:center;min-width:0;min-height:0;width:100%;height:100%;max-height:none;padding:56px 72px 8px;overflow:hidden;overscroll-behavior:contain;touch-action:pan-y pinch-zoom}
#kb-site-preview #gallery-dialog.photo-viewer #gallery-image{display:block;width:100%;height:100%;max-width:none;max-height:none;margin:0;object-fit:contain;object-position:center;background:transparent;user-select:none}
#kb-site-preview #gallery-dialog.photo-viewer #gallery-caption{grid-row:2;box-sizing:border-box;max-width:84ch;margin:0 auto;padding:12px 24px max(20px,env(safe-area-inset-bottom));color:#d7d5d9;font-family:inherit;font-size:12px;line-height:1.5;text-align:center;letter-spacing:.02em}
#kb-site-preview #gallery-dialog.photo-viewer>button{position:absolute;z-index:2;display:grid;place-items:center;width:46px;height:46px;padding:0;border:1px solid #ffffff30;border-radius:50%;background:#171719b8;color:#fff;cursor:pointer;transition:background .15s ease,border-color .15s ease}
#kb-site-preview #gallery-dialog.photo-viewer>button:hover{background:#3b3a40;border-color:#ffffff70}
#kb-site-preview #gallery-dialog.photo-viewer>button:focus-visible{outline:2px solid #fff;outline-offset:4px}
#kb-site-preview #gallery-dialog.photo-viewer>button[hidden]{display:none!important}
#kb-site-preview #gallery-dialog.photo-viewer>button svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
#kb-site-preview #gallery-dialog.photo-viewer .photo-viewer-close{top:max(16px,env(safe-area-inset-top));right:max(20px,env(safe-area-inset-right))}
#kb-site-preview #gallery-dialog.photo-viewer .photo-viewer-prev{top:calc(50% - 23px);left:max(16px,env(safe-area-inset-left))}
#kb-site-preview #gallery-dialog.photo-viewer .photo-viewer-next{top:calc(50% - 23px);right:max(16px,env(safe-area-inset-right))}
#kb-site-preview .emerald-opening-photo{padding:0 5.6%}
#kb-site-preview .emerald-opening-photo figure{margin:0}
#kb-site-preview .emerald-opening-photo .gallery-open{display:block;width:100%;background:transparent}
#kb-site-preview .emerald-opening-photo img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
#kb-site-preview .emerald-opening-photo figcaption{padding-top:12px;font-size:12px;letter-spacing:.04em;color:#69616b}
#kb-site-preview .emerald-material-story .grid3{align-items:start;gap:36px}
#kb-site-preview .emerald-material-story h2{font-size:27px;line-height:1.2;margin:0 0 16px}
#kb-site-preview .emerald-material-story p{font-size:16px;line-height:1.7}
#kb-site-preview .emerald-material-story>.action{margin-top:28px}
@media(max-width:600px){
 #kb-site-preview #gallery-dialog.photo-viewer #gallery-viewport{padding:64px 12px 8px}
 #kb-site-preview #gallery-dialog.photo-viewer #gallery-caption{padding:10px 20px max(18px,env(safe-area-inset-bottom));font-size:11px}
 #kb-site-preview #gallery-dialog.photo-viewer>button{width:44px;height:44px}
 #kb-site-preview #gallery-dialog.photo-viewer .photo-viewer-close{right:12px;top:max(12px,env(safe-area-inset-top))}
 #kb-site-preview #gallery-dialog.photo-viewer .photo-viewer-prev{left:8px}
 #kb-site-preview #gallery-dialog.photo-viewer .photo-viewer-next{right:8px}
 #kb-site-preview .emerald-opening-photo{padding:0 20px}
 #kb-site-preview .emerald-material-story .grid3{gap:24px}
}
