.site-theme.gallery-page .common-layout { grid-template-columns:minmax(190px,22%) minmax(0,78%)!important; }
.site-theme.gallery-page .common-layout>.content-panel { padding-right:32px!important; padding-top:94px!important; }
.site-theme.gallery-page .brand-block { margin-bottom:20px; }
.site-theme.gallery-page .brand-block .hero-kicker { font-size:10px!important; }
.site-theme.gallery-page .page-title { margin:12px 0 18px!important; }
.site-theme.gallery-page .photography-page-section { padding:0!important; }
.site-theme.gallery-page .gallery-toolbar { display:flex; justify-content:space-between; align-items:center; gap:16px; margin:16px 0 18px; }
.gallery-toolbar p { margin:0; color:var(--muted); font-size:11px!important; }
.gallery-arrows { display:flex; gap:8px; flex-shrink:0; }
.gallery-arrow { width:42px; height:38px; border:1px solid var(--line); background:none; color:var(--paper); cursor:pointer; font-size:22px; }
.gallery-arrow:hover { border-color:var(--accent); background:#18090a; }
.site-theme.gallery-page .work-gallery.gallery-strip { --image-height:clamp(260px,44svh,520px); display:flex!important; gap:22px!important; width:100%; max-width:none; overflow-x:auto; overflow-y:hidden; scroll-snap-type:x proximity; overscroll-behavior-x:contain; scrollbar-color:#9d3338 #151010; scrollbar-width:thin; padding:0 0 18px; margin:0!important; cursor:grab; touch-action:pan-x pan-y; }
.site-theme.gallery-page .gallery-strip.is-dragging { cursor:grabbing; scroll-snap-type:none; user-select:none; }
.site-theme.gallery-page .gallery-strip .work-gallery-item { flex:0 0 auto; width:calc(var(--image-height)*var(--image-ratio,1.3)); max-width:84vw; margin:0; padding:0; border:0; background:none; scroll-snap-align:start; overflow:visible; }
.site-theme.gallery-page .gallery-strip .gallery-open { display:block; width:100%; height:var(--image-height); padding:0; border:0; background:#000; cursor:zoom-in; overflow:visible; }
.site-theme.gallery-page .gallery-strip .work-gallery-item img { display:block; width:100%!important; height:100%!important; max-height:none; object-fit:contain!important; padding:0; margin:0; border:0!important; background:none!important; filter:none!important; transform:none!important; opacity:1!important; }
.site-theme.gallery-page .gallery-strip figcaption { display:block; padding:13px 0 0; margin:0; text-align:left; background:none; border:0; }
.site-theme.gallery-page .gallery-strip figcaption strong { display:block; font-family:'Albert Sans',sans-serif; color:#eee9e5; font-size:13px; font-weight:500; }
.site-theme.gallery-page .gallery-strip figcaption span { display:block; margin-top:4px; font-size:10px; color:var(--muted); text-align:left; }
.site-theme.gallery-page .gallery-strip .work-gallery-item figcaption::after { content:none; }
.site-theme.gallery-page .gallery-strip .gallery-credit { display:none; }
.gallery-progress { height:1px; background:var(--line); margin:12px 0 24px; }
.gallery-progress span { display:block; width:100%; height:100%; transform:scaleX(var(--progress,.04)); transform-origin:left; background:var(--accent); }
.gallery-viewer { position:fixed; inset:0; width:100vw; height:100dvh; max-width:none; max-height:none; margin:0; padding:0; border:0; background:#050505; color:#eee9e5; }
.gallery-viewer::backdrop { background:rgba(0,0,0,.96); }
.gallery-viewer[open] { display:flex; flex-direction:column; }
.gallery-viewer .viewer-toolbar { display:flex; justify-content:space-between; align-items:center; gap:16px; padding:16px 22px; font-family:'JetBrains Mono',monospace; font-size:12px; }
.viewer-controls { display:flex; gap:10px; }
.gallery-viewer button { min-width:44px; min-height:44px; border:1px solid #423334; background:#100c0c; color:#eee; font:inherit; cursor:pointer; }
.gallery-viewer button:hover { border-color:#d74f58; }
.viewer-stage { display:flex; align-items:center; justify-content:center; position:relative; flex:1; min-height:0; overflow:auto; padding:12px 60px; touch-action:pan-x pan-y pinch-zoom; }
.gallery-viewer .viewer-image { display:block; width:auto; height:auto; max-width:100%; max-height:100%; object-fit:contain; cursor:zoom-in; }
.gallery-viewer .viewer-stage.is-zoomed { display:block; }
.gallery-viewer .is-zoomed .viewer-image { width:var(--zoom-width); max-width:none; max-height:none; cursor:zoom-out; margin:auto; }
.viewer-caption { margin:0; padding:16px 70px 24px; text-align:center; font-family:'JetBrains Mono',monospace; font-size:12px; color:#cdb6b7; }
.viewer-step { position:absolute; top:50%; z-index:2; transform:translateY(-50%); font-size:25px!important; }
.viewer-prev { left:8px; }.viewer-next { right:8px; }
body.gallery-viewing { overflow:hidden; }
html.gallery-viewing { overflow:hidden; }
@media(max-width:900px) { .site-theme.gallery-page .common-layout { grid-template-columns:minmax(0,1fr)!important; } .site-theme.gallery-page .art-panel { height:34svh; min-height:230px; } .site-theme.gallery-page .common-layout>.content-panel { padding:24px!important; } .site-theme.gallery-page .gallery-strip { --image-height:clamp(280px,49svh,520px); } .site-theme.gallery-page .gallery-strip .work-gallery-item { max-width:84vw; } }
@media(max-width:500px) { .gallery-toolbar { align-items:flex-end!important; } .gallery-toolbar p { max-width:22ch; } .gallery-viewer .viewer-toolbar { padding:10px; } .viewer-stage { padding:8px 40px; } .viewer-caption { padding:16px 24px; font-size:11px; } .gallery-viewer .viewer-step { min-width:32px; border:0; background:transparent; } .viewer-prev { left:0; }.viewer-next { right:0; } }
