.photo-gallery{background:#fff}
.photo-gallery{position:relative}
.photo-gallery .gallery-bar{margin-bottom:28px}
.photo-gallery .gallery-bar h2{font-size:32px}
.photo-gallery .gallery-controls{gap:8px}
.photo-gallery .gallery-controls button{border:0;background:#f5f6f7;border-radius:50%;width:44px;height:44px;padding:0;display:grid;place-items:center}
.photo-gallery .gallery-controls .gallery-open{width:auto;border-radius:4px;background:transparent;padding:0 4px 0 16px;font-size:12px;color:#737986}
.photo-gallery .gallery-picture{border-radius:6px;background:#f5f6f7}
.photo-gallery .gallery-image{height:auto;aspect-ratio:16/9;object-fit:cover;object-position:center;background:#f5f6f7}
.photo-gallery .gallery-info{padding:18px 0 14px;color:#374152;align-items:center}
.photo-gallery .gallery-caption{font-size:14px;font-weight:500}
.photo-gallery .gallery-count{font-size:11px;color:#737986;letter-spacing:1px}
.photo-gallery .gallery-thumbs{gap:12px;padding:4px 0 14px;scrollbar-width:thin;scrollbar-color:#dce0e5 transparent}
.photo-gallery .gallery-thumbs button{border:0;padding:0 0 6px;border-radius:0;border-bottom:2px solid transparent;opacity:.55;transition:opacity .2s,border-color .2s}
.photo-gallery .gallery-thumbs button:hover,.photo-gallery .gallery-thumbs button[aria-pressed=true]{opacity:1}
.photo-gallery .gallery-thumbs button[aria-pressed=true]{border-bottom-color:#c60101}
.photo-gallery .gallery-thumbs img{width:88px;height:62px;border-radius:3px}
@media(max-width:800px){.photo-gallery .gallery-bar{flex-direction:row;align-items:center;gap:16px}.photo-gallery .gallery-bar h2{font-size:24px}.photo-gallery .gallery-controls{flex-wrap:nowrap}.photo-gallery .gallery-controls .gallery-open{font-size:0;padding:0;width:40px}.photo-gallery .gallery-controls .gallery-open::after{content:"⤢";font-size:22px}.photo-gallery .gallery-controls button{width:36px;height:36px}.photo-gallery .gallery-image{aspect-ratio:4/3}.photo-gallery .gallery-thumbs img{width:72px;height:52px}}
.gallery-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:0 0 25px}
.gallery-bar h2{font-size:36px}
.gallery-controls{display:flex;gap:10px;align-items:center}
.gallery-controls button{background:#fff;color:#374152;border:1px solid #dce0e5;border-radius:4px;min-height:44px;padding:10px 16px;cursor:pointer;font-size:15px}
.gallery-controls button:hover{border-color:#c60101;color:#c60101}
.gallery-picture{display:block;width:100%;padding:0;border:0;border-radius:4px;overflow:hidden;background:#f0f0f0;cursor:zoom-in}
.gallery-image{display:block;width:100%;height:560px;object-fit:contain;background:#293340}
.gallery-info{display:flex;justify-content:space-between;gap:20px;padding:16px 0;font-size:13px;color:#737986}
.gallery-thumbs{display:flex;gap:10px;overflow:auto;padding:4px 0 12px}
.gallery-thumbs button{padding:0;border:2px solid transparent;border-radius:4px;background:none;cursor:pointer;flex-shrink:0}
.gallery-thumbs button[aria-pressed=true]{border-color:#c60101}
.gallery-thumbs img{display:block;width:96px;height:72px;object-fit:cover;border-radius:2px}
#photo-viewer{max-width:none;max-height:none;width:100%;height:100%;height:100dvh;margin:0;border:0;padding:24px;background:#111820;color:white}
#photo-viewer::backdrop{background:#111820}
.viewer-toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;height:50px}
.viewer-toolbar>div{display:flex;gap:10px}
#photo-viewer button{background:#ffffff12;border:1px solid #ffffff50;color:#fff;border-radius:4px;min-width:44px;min-height:44px;padding:10px;cursor:pointer}
.viewer-stage{display:flex;align-items:center;justify-content:space-between;gap:20px;height:calc(100% - 100px)}
.viewer-stage img{min-width:0;width:calc(100% - 128px);height:100%;object-fit:contain}
#photo-viewer .viewer-caption{text-align:center;font-size:13px;margin:14px 0;color:#e3e6ea}
@media(max-width:800px){.gallery-bar{align-items:flex-start;flex-direction:column}.gallery-bar h2{font-size:30px}.gallery-image{height:360px}.gallery-controls{flex-wrap:wrap}.gallery-thumbs img{width:80px;height:60px}#photo-viewer{padding:12px}.viewer-toolbar>span{font-size:11px}.viewer-stage{gap:6px}.viewer-stage img{width:calc(100% - 100px)}.viewer-caption{font-size:11px}}
