:root{--gallery-gold:#f0bc61}
.gallery-story [hidden]{display:none!important}
.gallery-story .holding-header nav{gap:26px}
.gallery-story .holding-header nav a[aria-current]{color:var(--gallery-gold)}
.gallery-section{border-bottom:1px solid #777369;background:#100f0c;padding:58px 0 62px}
.gallery-container{width:min(1240px,calc(100% - 64px));margin:auto}
.gallery-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:30px;border-left:2px solid var(--gallery-gold);padding-left:22px}
.gallery-heading .eyebrow{font:700 12px Arial,sans-serif;color:var(--gallery-gold);margin:0 0 12px;letter-spacing:0}
.gallery-heading h1,.gallery-heading h2{max-width:none;font-family:Impact,Haettenschweiler,'Arial Black',sans-serif;font-size:46px;line-height:1.08;letter-spacing:0;margin:0 0 12px;text-transform:uppercase}
.gallery-heading p:not(.eyebrow){color:#c9bfa9;font-size:17px;margin:0;line-height:1.6}
.gallery-heading .gallery-credit{font-size:14px!important;margin-top:12px!important}
.gallery-credit a{color:var(--gallery-gold);text-underline-offset:3px}
.gallery-link{color:var(--cream);font-size:15px;font-weight:700;white-space:nowrap;text-decoration:none;padding-bottom:5px;border-bottom:1px solid var(--gallery-gold)}
.gallery-link span{margin-left:14px;color:var(--gallery-gold)}
.photo-total{font-size:14px;color:#a7a69c;white-space:nowrap;padding-bottom:5px}
.photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.photo-tile{display:block;width:100%;border:0;border-radius:2px;padding:0;position:relative;overflow:hidden;cursor:zoom-in;background:#20211e;aspect-ratio:3/2}
.photo-tile img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease}
.photo-tile:hover img{transform:scale(1.035)}
.photo-tile:focus-visible{outline:3px solid var(--gallery-gold);outline-offset:3px}
.photo-number{position:absolute;bottom:9px;right:9px;padding:4px 7px;background:#080808d9;color:#fff;font:11px Arial,sans-serif;opacity:0;transition:opacity .2s}
.photo-tile:hover .photo-number,.photo-tile:focus-visible .photo-number{opacity:1}
.gallery-bottom{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;margin-top:30px}
.gallery-bottom p{font-size:13px;color:#a7a69c;margin:0}
.gallery-full{padding-top:52px}
.gallery-full .gallery-heading{margin-bottom:38px}
.gallery-full .gallery-heading h1{font-size:58px}
.gallery-preview .photo-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:220px 220px}
.gallery-preview .photo-tile{aspect-ratio:auto;height:100%}
.gallery-preview .photo-tile:first-child{grid-column:span 2;grid-row:span 2}
.gallery-preview .photo-tile:first-child img{object-position:40% center}
.gallery-full .photo-grid{display:block}
.gallery-full .photo-batch{columns:3;column-gap:16px}
.gallery-full .photo-tile{aspect-ratio:auto;margin:0 0 16px;break-inside:avoid}
.gallery-full .photo-tile img{height:auto;object-fit:contain;aspect-ratio:var(--photo-ratio)}
.photo-viewer{inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:76px 84px 48px;border:0;background:#080808fa;color:#fff;overflow:hidden}
.photo-viewer::backdrop{background:#000}
.photo-viewer[open]{display:flex;align-items:center;justify-content:center}
.photo-viewer figure{width:100%;height:100%;margin:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px}
.photo-viewer figure img{display:block;width:100%;height:calc(100% - 56px);object-fit:contain;touch-action:pan-y}
.photo-viewer figcaption{font:13px/1.5 Arial,sans-serif;color:#b8b5ae;text-align:center}
.photo-viewer .gallery-credit{margin:3px 0 0}
.viewer-toolbar{position:absolute;top:16px;left:24px;right:16px;display:flex;align-items:center;justify-content:space-between;font:14px Arial,sans-serif}
.viewer-icon{width:48px;height:48px;display:grid;place-items:center;background:transparent;border:1px solid #4f4d47;color:var(--gallery-gold);font:32px Arial,sans-serif;cursor:pointer;border-radius:2px}
.viewer-icon:hover{background:#222}
.viewer-icon:focus-visible{outline:3px solid var(--gallery-gold);outline-offset:3px}
.viewer-prev,.viewer-next{position:absolute;top:calc(50% - 24px)}
.viewer-prev{left:18px}.viewer-next{right:18px}
.viewer-error{position:absolute;top:45%;left:15%;right:15%;text-align:center;background:#111;padding:20px}
@media(max-width:1000px){.gallery-story .holding-header{gap:24px}.gallery-story .holding-header nav{gap:16px;font-size:14px}.gallery-preview .photo-grid{grid-template-rows:170px 170px}.gallery-heading h2{font-size:38px}.gallery-link{font-size:14px}}
@media(max-width:760px){.gallery-story .holding-header nav{gap:12px 18px;font-size:13px}.gallery-section{padding:36px 0 40px}.gallery-container{width:calc(100% - 32px)}.gallery-heading{display:block;margin-bottom:22px;padding-left:16px}.gallery-heading h2,.gallery-full .gallery-heading h1{font-size:37px}.gallery-heading p:not(.eyebrow){font-size:16px}.gallery-link,.photo-total{display:inline-block;margin-top:18px}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.gallery-preview .photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:240px 140px 140px;gap:8px}.gallery-preview .photo-tile:first-child{grid-row:span 1}.gallery-full .photo-grid{columns:2;column-gap:8px}.gallery-full .photo-tile{margin-bottom:8px}.photo-viewer{padding:76px 12px 100px}.viewer-prev,.viewer-next{top:auto;bottom:22px}.viewer-prev{left:calc(50% - 58px)}.viewer-next{right:calc(50% - 58px)}}
@media(max-width:760px){.gallery-full .photo-grid{columns:auto}.gallery-full .photo-batch{columns:2;column-gap:8px}}
@media(prefers-reduced-motion:reduce){.photo-tile img,.photo-number{transition:none}}
