/* Editorial galleries (preview-galleries 10/10/2026): A = hero + justified rows, B = editorial masonry */
.lfg{--gap:12px;margin:0 auto}
.lfg .shot{position:relative;margin:0;overflow:hidden;border-radius:6px;background:#ece7df;box-shadow:0 1px 2px rgba(0,0,0,.06)}
.lfg .shot-link{display:block;height:100%;position:relative}
.lfg .shot picture,.lfg .shot img{display:block;width:100%;height:100%}
.lfg .shot img{object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .4s}
.lfg .shot:hover img{transform:scale(1.03);filter:brightness(.94)}
.lfg .shot figcaption{position:absolute;left:0;right:0;bottom:0;margin:0;padding:2.2rem 1rem .8rem;color:#fff;font:500 .86rem/1.35 system-ui,-apple-system,sans-serif;background:linear-gradient(transparent,rgba(0,0,0,.6));opacity:0;transform:translateY(6px);transition:.35s;pointer-events:none}
.lfg .shot:hover figcaption,.lfg .shot:focus-within figcaption{opacity:1;transform:none}
.lfg .shot-link::after{content:"\00A9 Lisa Foster Photography";position:absolute;right:.7rem;top:.55rem;font:500 .62rem/1 system-ui,sans-serif;letter-spacing:.06em;color:rgba(255,255,255,.62);text-shadow:0 1px 2px rgba(0,0,0,.35);pointer-events:none}
.lfg .shot-link:focus-visible{outline:3px solid #c98b3a;outline-offset:2px}
/* Option A */
.lfg-a{display:flex;flex-wrap:wrap;gap:var(--gap)}
.lfg-a .shot{flex-grow:calc(var(--r)*100);flex-basis:calc(var(--r)*240px);aspect-ratio:var(--r)}
.lfg-a::after{content:"";flex:300 1 0}
.lfg-a .shot.hero{flex:1 1 100%;aspect-ratio:21/9}
.lfg-a .shot.hero img{object-position:50% var(--y,35%)}
.lfg-a .shot.hero figcaption{opacity:1;transform:none;font-size:1rem}
/* Option B */
.lfg-b{columns:3 280px;column-gap:var(--gap)}
.lfg-b .shot{break-inside:avoid;margin-bottom:var(--gap);display:block}
.lfg-b .shot img{height:auto}
.lfg-sub{font:600 .8rem/1 system-ui,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#7a6a58;margin:2.6rem 0 1rem}
.lfg-note{margin:1.6rem 0 0}
@media (max-width:700px){
 .lfg{--gap:8px}
 .lfg-a .shot{flex-basis:100%;aspect-ratio:var(--r)}
 .lfg-a .shot.hero{aspect-ratio:4/5}
 .lfg-a .shot.hero.wide{aspect-ratio:3/2}
 .lfg-b{columns:2}
 .lfg .shot figcaption{opacity:1;transform:none;font-size:.74rem;padding:1.4rem .6rem .5rem}
}
@media (prefers-reduced-motion:reduce){.lfg .shot img,.lfg .shot figcaption{transition:none}}
/* lightbox polish */
#lightbox{border:0;padding:0;background:transparent;max-width:96vw;max-height:96vh}
#lightbox::backdrop{background:rgba(14,12,10,.93)}
#lightbox .lightbox-bar{display:flex;justify-content:space-between;align-items:center;gap:1rem;color:#eee}
#lightbox .lightbox-bar button,#lightbox .lightbox-stage button{min-width:44px;min-height:44px;background:rgba(255,255,255,.08);color:#fff;border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:0 1rem;cursor:pointer}
#lightbox .lightbox-stage{display:flex;align-items:center;gap:.6rem}
#lightbox #lightbox-img{max-width:84vw;max-height:84vh;object-fit:contain}
