/* FOOY — gallery */
.gallery-hero{background:#0d1712;color:#f2efe5;padding:clamp(4.2rem,8vw,8rem) 0 5rem;overflow:hidden;position:relative}.gallery-hero:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 20% 10%,rgba(93,125,80,.19),transparent 50%)}.gallery-hero-grid{position:relative;display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(2rem,5vw,5rem);align-items:center}.gallery-hero .section-kicker{color:#cfb67e;margin:0 0 1.4rem}.gallery-heading h1{font-family:Georgia,serif;font-size:clamp(3.5rem,6.8vw,6.8rem);line-height:.99;font-weight:400;letter-spacing:-.054em;margin:0 0 1.5rem}.gallery-heading h1 em{color:#cfb67e;font-weight:400}.gallery-lead{color:#d1d7cd;font-size:clamp(1.12rem,1.5vw,1.28rem);line-height:1.68;max-width:560px}.gallery-hero-meta{display:flex;flex-wrap:wrap;gap:.65rem;align-items:center;text-transform:uppercase;font-size:.72rem;letter-spacing:.08em;margin-top:2.1rem;color:#c8b99a}.gallery-hero-picture{background:#263a2d;border:1px solid rgba(255,255,255,.16);padding:10px;transform:rotate(1deg);box-shadow:0 25px 70px rgba(0,0,0,.3)}.gallery-hero-picture img{display:block;width:100%;height:auto}.gallery-hero-picture-caption{font-size:.72rem;letter-spacing:.11em;padding:.7rem .5rem .2rem;display:flex;justify-content:space-between;gap:.5rem;color:#d0b77e}.gallery-hero-picture-caption span{color:#eaeadd}.gallery-section{background:#f2efe5;padding:6.5rem 0 7rem}.gallery-section-heading{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2rem}.gallery-section-heading .section-kicker{margin:0 0 1rem;color:#987a49}.gallery-section-heading h2{font-family:Georgia,serif;font-size:clamp(2.7rem,4.5vw,4.7rem);line-height:1.08;font-weight:400;letter-spacing:-.04em;margin:0}.gallery-section-heading p{max-width:310px;color:#566359;font-size:.96rem;margin:0}.gallery-filters{display:flex;flex-wrap:wrap;gap:.6rem;margin:2.8rem 0 2rem}.filter-chip{font:inherit;cursor:pointer;appearance:none;border:1px solid #c8cbbf;color:#435046;border-radius:999px;background:transparent;font-size:.9rem;font-weight:650;letter-spacing:.005em;padding:.68rem 1.02rem}.filter-chip span{font-size:.72rem;opacity:.62;margin-left:.3rem}.filter-chip.is-active,.filter-chip:hover{background:#21392a;color:#fff;border-color:#21392a}.filter-chip:focus-visible,.gallery-card-link:focus-visible,.lightbox-content button:focus-visible,.lightbox-full:focus-visible{outline:3px solid #bf9656;outline-offset:3px}.gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem}.gallery-card{background:#e9e6db;border:1px solid #d7d4c6;min-width:0;transition:box-shadow .2s,transform .2s}.gallery-card[hidden]{display:none}.gallery-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(20,35,25,.13)}.gallery-card-link{display:block;color:inherit;text-decoration:none;height:100%}.gallery-card-photo{display:flex;align-items:center;justify-content:center;background:#182920;aspect-ratio:1.52;overflow:hidden;padding:.55rem}.gallery-card-photo img{width:100%;height:100%;object-fit:contain;display:block;transition:transform .3s}.gallery-card:hover img{transform:scale(1.012)}.gallery-card-body{display:flex;flex-direction:column;min-height:218px;padding:1.65rem}.gallery-tag{font-size:.72rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:#8a6934;margin-bottom:.8rem}.gallery-card-title{font-family:Georgia,serif;font-weight:400;font-size:clamp(1.45rem,2.1vw,2rem);line-height:1.18;letter-spacing:-.025em;margin-bottom:.7rem}.gallery-card-description{color:#4d5a51;font-size:.97rem;line-height:1.58;max-width:58ch;flex-grow:1}.gallery-card-action{font-size:.84rem;font-weight:800;letter-spacing:.03em;display:flex;align-items:center;gap:.5rem;margin-top:1.25rem;color:#416449}.gallery-disclaimer{font-size:.86rem;color:#657266;line-height:1.65;margin:2.5rem 0 0;padding:1.3rem 0;border-top:1px solid #c7cbbf}.gallery-next{background:#d8c5a1;padding:4.5rem 0}.gallery-next-row{display:flex;justify-content:space-between;align-items:center;gap:2.5rem}.gallery-next .section-kicker{color:#785c2e;margin:0 0 .8rem}.gallery-next h2{font-family:Georgia,serif;font-size:clamp(2.2rem,3.8vw,3.75rem);font-weight:400;letter-spacing:-.04em;line-height:1.08;margin:0 0 .8rem}.gallery-next p{max-width:700px;margin:0;font-size:1.04rem}.gallery-next .button{flex-shrink:0;background:#15251c;color:#fff;align-items:center;gap:1rem}.gallery-next .button:hover{background:#294331}.gallery-lightbox{padding:0;border:0;background:#111b14;color:#fff;max-width:100vw;width:calc(100vw - 2rem);max-height:calc(100vh - 2rem);height:auto;overflow:auto;box-shadow:0 0 0 9999px rgba(0,0,0,.4)}.gallery-lightbox::backdrop{background:rgba(4,9,6,.88)}.lightbox-content{padding:.5rem 1rem 1rem}.lightbox-top,.lightbox-bottom{display:flex;align-items:center;justify-content:space-between;gap:1rem}.lightbox-top{padding:.3rem .5rem .7rem}.lightbox-title{margin:0;font-weight:650;font-size:.97rem}.lightbox-close{cursor:pointer;color:#fff;background:#2e3b32;border:0;border-radius:50%;height:2.3rem;width:2.3rem;font-size:1rem}.lightbox-stage{display:grid;grid-template-columns:36px minmax(0,1fr) 36px;align-items:center;gap:.5rem}.lightbox-image{width:100%;height:auto;max-height:76vh;object-fit:contain}.lightbox-prev,.lightbox-next{cursor:pointer;border:0;background:rgba(255,255,255,.08);color:#fff;border-radius:50%;font-size:2rem;width:36px;height:50px}.lightbox-prev:hover,.lightbox-next:hover{background:rgba(255,255,255,.22)}.lightbox-bottom{padding:.6rem .5rem .25rem;font-size:.8rem;color:#bec8bb}.lightbox-full{color:#e4c995;text-decoration:none}.lightbox-full:hover{text-decoration:underline}@media(max-width:930px){.gallery-hero-grid{grid-template-columns:1fr}.gallery-hero-picture{max-width:780px;transform:none}.gallery-section-heading{align-items:start;flex-direction:column}.gallery-next-row{flex-direction:column;align-items:start}}@media(max-width:680px){.gallery-hero{padding:4rem 0 3rem}.gallery-hero-meta{font-size:.66rem}.gallery-section{padding:4rem 0}.gallery-grid{grid-template-columns:1fr}.gallery-card-body{min-height:unset;padding:1.35rem}.gallery-card-photo{aspect-ratio:1.5}.gallery-filters{gap:.4rem;margin:2rem 0 1.6rem}.filter-chip{font-size:.78rem;padding:.6rem .8rem}.gallery-lightbox{width:100vw;max-height:100vh}.lightbox-content{padding:.4rem}.lightbox-top,.lightbox-bottom{padding:.4rem}.lightbox-stage{gap:.2rem;grid-template-columns:25px minmax(0,1fr) 25px}.lightbox-prev,.lightbox-next{width:25px;font-size:1.4rem}.lightbox-image{max-height:74vh}}
