.gallery-intro{padding-block:85px 50px}.gallery-intro h1{font-size:clamp(60px,7vw,100px);margin-block:23px 35px}.gallery-intro-bottom{display:flex;justify-content:space-between;gap:25px;align-items:end}.gallery-intro-bottom p{font-size:13px;line-height:1.9;color:var(--muted)}.gallery-count{font-size:8px;letter-spacing:2px;color:var(--gold);white-space:nowrap;padding-bottom:5px}.gallery-section{padding-bottom:80px}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.gallery-photo{display:block;position:relative;aspect-ratio:2/3;overflow:hidden;background:#1b1c19}.gallery-photo:nth-child(3n+2){transform:translateY(45px)}.gallery-photo img{width:100%;height:100%;object-fit:cover;transition:transform .5s,filter .5s}.gallery-photo:hover img,.gallery-photo:focus-visible img{transform:scale(1.035);filter:brightness(.8)}.gallery-photo-label{position:absolute;bottom:18px;right:18px;left:18px;font-size:9px;letter-spacing:1px;text-align:center;padding:12px 18px;background:#101110b8;color:#e8d4ad;opacity:0;transition:opacity .2s}.gallery-photo:hover .gallery-photo-label,.gallery-photo:focus-visible .gallery-photo-label{opacity:1}.gallery-ending{padding-top:120px;display:flex;align-items:center;justify-content:center;gap:25px;flex-wrap:wrap;text-align:center}.gallery-ending p{width:100%;font-family:var(--serif);font-size:27px;line-height:1.5;color:#d9c8a8;margin-bottom:10px}.photo-viewer{position:fixed;inset:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;padding:22px 4%;border:0;background:#0c0d0cfa;color:var(--light);overflow:hidden}.photo-viewer[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:15px}.photo-viewer::backdrop{background:#000e}.viewer-top,.viewer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px}.viewer-top{min-height:40px}.viewer-top>span{font-size:11px;letter-spacing:1.5px;color:var(--gold)}.photo-viewer button{color:var(--gold);background:transparent;border:1px solid #c7ac7955;cursor:pointer;font:inherit;font-size:12px;padding:12px 18px;min-height:44px}.photo-viewer button:hover{background:#c7ac7915}.viewer-close{display:flex;align-items:center;gap:20px}.viewer-close span{font-size:22px;line-height:1}.viewer-image-wrap{display:flex;align-items:center;justify-content:center;min-height:0}.viewer-image-wrap img{width:100%;height:100%;object-fit:contain}.viewer-bottom{min-height:55px}.viewer-bottom p{font-size:11px;text-align:center;line-height:1.7;color:var(--muted);max-width:550px}.viewer-open{overflow:hidden}
@media(max-width:800px){.gallery-grid{gap:16px}.gallery-intro{padding-top:60px}.gallery-intro-bottom p{font-size:12px}.gallery-count{font-size:7px;letter-spacing:1px}.gallery-photo-label{left:10px;right:10px;bottom:10px;font-size:8px}}
@media(max-width:580px){.gallery-intro{padding-block:50px 35px}.gallery-intro h1{font-size:65px;line-height:1.12;margin-block:20px 25px}.gallery-intro-bottom{display:block}.gallery-count{display:block;margin-top:22px;font-size:8px;letter-spacing:1.6px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gallery-photo:nth-child(3n+2){transform:none}.gallery-photo:nth-child(even){transform:translateY(25px)}.gallery-ending{padding-top:75px;gap:22px}.gallery-ending p{font-size:23px}.gallery-section{padding-bottom:55px}.photo-viewer{padding:12px 4%;gap:10px}.photo-viewer button{padding:11px 13px;font-size:11px}.viewer-bottom{flex-wrap:wrap;gap:12px;justify-content:space-between}.viewer-bottom p{order:-1;width:100%;font-size:10px;min-height:32px}.gallery-photo-label{display:none}.gallery-intro h1{letter-spacing:-2px}}
@media(prefers-reduced-motion:reduce){.gallery-photo img,.gallery-photo-label{transition:none}}
