@font-face{font-family:"Prata";src:url("assets/fonts/v2-4.ttf") format("truetype");font-weight:400;font-display:swap}
@font-face{font-family:"Jost";src:url("assets/fonts/v2-1.ttf") format("truetype");font-weight:400;font-display:swap}
@font-face{font-family:"Jost";src:url("assets/fonts/v2-2.ttf") format("truetype");font-weight:500;font-display:swap}
@font-face{font-family:"Bricolage";src:url("assets/fonts/bricolage-400.ttf") format("truetype");font-weight:400;font-display:swap}
@font-face{font-family:"Bricolage";src:url("assets/fonts/bricolage-700.ttf") format("truetype");font-weight:700;font-display:swap}
@font-face{font-family:"Bricolage";src:url("assets/fonts/bricolage-800.ttf") format("truetype");font-weight:800;font-display:swap}
@font-face{font-family:"Manrope";src:url("assets/fonts/manrope-400.ttf") format("truetype");font-weight:400;font-display:swap}
@font-face{font-family:"Manrope";src:url("assets/fonts/manrope-600.ttf") format("truetype");font-weight:600;font-display:swap}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;overflow-x:hidden}
img{display:block;max-width:100%}
a{color:inherit;text-underline-offset:.22em}
button,a{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible{outline:3px solid currentColor;outline-offset:4px}
::selection{background:#496947;color:#fff}
.folder-button{cursor:pointer}
.gallery-dialog{width:100vw;height:100dvh;max-width:none;max-height:none;border:0;padding:0;background:#f4f3ef;color:#20211f;overflow:auto}
.gallery-dialog::backdrop{background:#111}
.gallery-head{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;background:rgba(244,243,239,.94);border-bottom:1px solid #c8c9c2;backdrop-filter:blur(10px)}
.gallery-head h2{margin:0;font:400 clamp(1.8rem,4vw,3rem) Prata,serif}
.gallery-close,.gallery-back{border:1px solid #292a26;background:transparent;color:inherit;padding:.65rem .85rem;font:500 .65rem Jost,Arial,sans-serif;text-transform:uppercase;letter-spacing:.16em;cursor:pointer}
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;padding:1rem}
.gallery-thumb{border:0;background:transparent;padding:0;text-align:left;color:inherit;cursor:zoom-in}
.gallery-thumb img{width:100%;aspect-ratio:4/5;object-fit:cover;background:#ddd}
.gallery-thumb span{display:block;margin-top:.55rem;font:500 .65rem Jost,Arial,sans-serif;text-transform:uppercase;letter-spacing:.14em}
.gallery-viewer{position:fixed;z-index:8;inset:0;background:#111;color:#fff;display:none;place-items:center;padding:3.5rem 4rem 4.5rem}
.gallery-viewer.is-open{display:grid}
.gallery-viewer img{width:auto;max-width:100%;height:auto;max-height:calc(100dvh - 8rem);object-fit:contain}
.gallery-viewer p{position:absolute;left:50%;bottom:1rem;transform:translateX(-50%);margin:0;font:400 1rem Prata,serif}
.gallery-back{position:absolute;right:1rem;top:1rem;border-color:rgba(255,255,255,.5);color:#fff}
@media(max-width:760px){.gallery-grid{grid-template-columns:repeat(2,1fr);gap:.7rem;padding:.7rem}.gallery-viewer{padding:3.5rem .5rem 4.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
