.gallery{background:var(--night);color:var(--cream);padding:clamp(4.5rem,9vw,7.5rem) 0 clamp(5rem,9vw,7rem)}
.gallery-head{text-align:center;max-width:680px;margin:0 auto clamp(2.6rem,5vw,3.6rem)}
.gallery .eyebrow{display:inline-block;font-family:'Montserrat',sans-serif;font-size:.66rem;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:var(--rust);margin-bottom:1rem}
.gallery h2{font-family:'Yeseva One',serif;font-weight:400;font-size:clamp(1.8rem,3.6vw,2.8rem);letter-spacing:.05em;color:var(--cream)}
.gallery-sub{font-family:'Yeseva One',serif;font-size:clamp(1.05rem,1.7vw,1.3rem);color:rgba(246,244,240,.78);margin-top:1rem;line-height:1.5}
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:clamp(150px,20vw,248px);gap:clamp(.55rem,1.1vw,.95rem)}
.g-item{position:relative;overflow:hidden;opacity:1;transform:none;transition:opacity 1s ease,transform 1.1s cubic-bezier(.2,.7,.2,1)}
.g-item.armed{opacity:0;transform:translateY(34px)}
.g-item.in{opacity:1;transform:none}
.g-item:nth-child(1){grid-column:span 2;grid-row:span 2}
.g-item:nth-child(2){grid-column:span 2}
.g-item:nth-child(5){grid-column:span 2}
.g-item:nth-child(6){grid-column:span 2}
.g-item img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1);transition:transform 1.5s cubic-bezier(.2,.7,.2,1)}
.g-item.armed img{transform:scale(1.16)}
.g-item.in img{transform:scale(1)}
.g-item:hover img{transform:scale(1.06)}
.g-cap{position:absolute;left:0;right:0;bottom:0;padding:2rem 1.3rem .95rem;font-family:'Montserrat',sans-serif;font-size:.62rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--cream);background:linear-gradient(transparent,rgba(20,15,10,.78));opacity:0;transform:translateY(8px);transition:opacity .4s,transform .4s}
.g-item:hover .g-cap{opacity:1;transform:none}
@media(max-width:760px){.gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:clamp(128px,38vw,190px)}}
