*{box-sizing:border-box;margin:0;padding:0}
body{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#f7f5ef;color:#243126}.voltar{position:fixed;top:18px;left:24px;z-index:20;background:#26382b;color:#fff;padding:10px 15px;border-radius:999px;font-size:13px;font-weight:700;box-shadow:0 8px 20px rgba(0,0,0,.12)}.voltar:hover{background:#314b39}.voltar:focus-visible,.filtro:focus-visible,.fechar:focus-visible,.nav:focus-visible{outline:3px solid #b68b4b;outline-offset:3px}
.galeria-section{max-width:1400px;margin:auto;padding:90px 28px}
.galeria-header{text-align:center;max-width:800px;margin:0 auto 42px}
.galeria-header span{font-size:12px;letter-spacing:4px;font-weight:800;color:#8a6b3d}
.galeria-header h1{font-family:Georgia,serif;font-size:clamp(38px,5vw,68px);line-height:1.05;margin:15px 0}
.galeria-header h1 em{font-style:italic;color:#9b7745}
.galeria-header p{font-size:17px;line-height:1.7;color:#687067}
.filtros{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-bottom:35px}
.filtro{border:1px solid #d7d0c2;background:transparent;color:#435046;padding:11px 20px;border-radius:999px;cursor:pointer;transition:.25s;font-weight:600}
.filtro:hover,.filtro.ativo{background:#26382b;color:#fff;border-color:#26382b}
.galeria-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:250px;gap:16px}
.foto-card{position:relative;overflow:hidden;border-radius:18px;cursor:pointer;background:#ddd}
.foto-card.grande{grid-column:span 2;grid-row:span 2}
.foto-card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.foto-card:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 45%,rgba(0,0,0,.72));opacity:.8}
.foto-card:hover img{transform:scale(1.07)}
.foto-info{position:absolute;z-index:2;bottom:20px;left:22px;color:#fff}
.foto-info strong{display:block;font-family:Georgia,serif;font-size:23px}
.foto-info span{display:block;font-size:13px;margin-top:5px;opacity:.9}
.lightbox{position:fixed;inset:0;background:rgba(8,12,9,.94);display:none;align-items:center;justify-content:center;z-index:9999;padding:30px}
.lightbox.aberto{display:flex}
.lightbox figure{max-width:min(1200px,88vw);max-height:90vh;text-align:center}
.lightbox img{max-width:100%;max-height:82vh;object-fit:contain;border-radius:8px}
.lightbox figcaption{color:#fff;margin-top:12px;font-size:15px}
.fechar,.nav{position:fixed;border:0;background:rgba(255,255,255,.12);color:#fff;cursor:pointer;border-radius:50%;display:grid;place-items:center}
.fechar{right:25px;top:20px;width:48px;height:48px;font-size:34px}
.nav{top:50%;transform:translateY(-50%);width:54px;height:54px;font-size:45px;line-height:1}
.anterior{left:25px}.proximo{right:25px}
@media(max-width:900px){.galeria-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:220px}.foto-card.grande{grid-column:span 2}}
@media(max-width:560px){.voltar{top:10px;left:12px;font-size:12px;padding:9px 12px}.galeria-section{padding:72px 16px}.galeria-grid{grid-template-columns:1fr;grid-auto-rows:280px}.foto-card.grande{grid-column:span 1;grid-row:span 1}.nav{width:44px;height:44px;font-size:35px}.anterior{left:8px}.proximo{right:8px}.lightbox{padding:12px}}
