.gallery-page{min-height:calc(100vh - 80px)}
.gallery-hero{padding:7rem 4vw 3.5rem;background:var(--ink);color:var(--white)}
.gallery-hero h1{font-size:clamp(3.8rem,8vw,8.5rem);letter-spacing:-.075em;line-height:.86;margin:0;max-width:1000px}
.gallery-hero h1 em{font-style:normal;color:var(--lime)}
.gallery-hero .lead{color:#c9cdc5;margin-bottom:0;max-width:720px}
.gallery-section{padding:5rem 4vw 8rem;background:#090c09;color:#fff}
.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;max-width:1500px;margin:0 auto}
.gallery-grid a{display:block;min-width:0;overflow:hidden;background:#1b201b;border:1px solid rgba(255,255,255,.12)}
.gallery-grid img{display:block;width:100%;max-width:100%;height:auto;transition:transform .45s ease,filter .45s ease}
.gallery-grid a:hover img{transform:scale(1.015);filter:brightness(1.04)}
.gallery-note{text-align:center;color:#aeb6aa;font-size:.8rem;margin:1.25rem 0 0}
.gallery-actions{display:flex;justify-content:center;gap:1rem;margin-top:2.5rem}
@media(max-width:900px){.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.gallery-page{min-height:calc(100vh - 68px)}.gallery-hero{padding:4rem 5vw 3rem}.gallery-hero h1{font-size:3.7rem}.gallery-section{padding:3rem 5vw 5rem}.gallery-grid{grid-template-columns:minmax(0,1fr)}.gallery-actions{align-items:stretch;flex-direction:column}}
.gallery-hero .lead{max-width:780px}.gallery-group{max-width:1500px;margin:0 auto 3.5rem}.gallery-group h2{font-size:clamp(1.7rem,3vw,2.8rem);letter-spacing:-.05em;line-height:1.1;margin:0 0 1.25rem}.gallery-grid figure{min-width:0;margin:0}.gallery-grid figcaption{color:#c9cdc5;font-size:.9rem;line-height:1.5;margin:.75rem .1rem 0}
