.gallery-hero{position:relative;min-height:92vh;padding:0!important;overflow:hidden;background:var(--brand-blue);color:#fff}
.gallery-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%}
.gallery-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgb(var(--brand-blue-rgb) / 94.902%) 0%,rgb(var(--brand-blue-rgb) / 85.098%) 44%,rgb(var(--brand-blue-rgb) / 41.961%) 72%,rgb(var(--brand-blue-rgb) / 14.902%) 100%)}
.gallery-hero-inner{position:relative;z-index:1;display:flex;min-height:92vh;flex-direction:column;justify-content:center;padding:150px 0 90px}
.gallery-hero-copy{width:100%;max-width:900px}
.gallery-hero .eyebrow{margin-bottom:26px}
.gallery-hero h1{max-width:900px;margin:0;font:600 clamp(2rem,6.5vw,5.5rem)/1.05 Archivo,sans-serif;letter-spacing:-.055em;text-transform:none}
.gallery-hero h1 span{display:block;white-space:nowrap}
.gallery-hero p{margin:30px 0 0;color:#eef1f5;font-size:1.125rem;font-weight:500}
.gallery-content{background:#f3f1eb}
.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.gallery-grid a{position:relative;display:block;overflow:hidden;background:#d9d6ce;aspect-ratio:4/3;border-radius:14px;box-shadow:0 8px 24px #11182712}
.gallery-grid img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .55s ease,filter .55s ease}
.gallery-grid a::after{content:"View";position:absolute;right:15px;bottom:15px;padding:8px 11px;background:rgb(var(--brand-blue-rgb) / 85.098%);color:#fff;font-size:0.625rem;letter-spacing:.12em;text-transform:uppercase;opacity:0;transform:translateY(8px);transition:.3s}
@media(hover:hover){.gallery-grid a:hover img{transform:scale(1.045);filter:saturate(1.08)}.gallery-grid a:hover::after{opacity:1;transform:none}}
.gallery-visit{background:var(--red);color:#fff;padding:82px 0!important}
.gallery-visit>.shell{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:48px;align-items:center}
.gallery-visit .section-title{max-width:760px;font-size:clamp(2.25rem,4vw,3.625rem);line-height:1.04}
.gallery-visit p{margin:18px 0 0;color:#fff;font-size:1rem}
.gallery-visit .actions{display:flex;flex-direction:row;align-items:center;justify-content:flex-end;gap:11px}
.gallery-visit .button{display:inline-flex;align-items:center;justify-content:space-between;gap:18px;min-width:170px;min-height:50px;box-sizing:border-box;padding:14px 28px;border-radius:2px;color:#fff;font:700 0.875rem/1.4 var(--font-body);white-space:nowrap}
.gallery-visit .button span{margin-left:0}
@media(max-width:1000px){.gallery-visit .actions{justify-content:flex-start}}
@media(max-width:600px){.gallery-visit .actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.gallery-visit .button{min-width:0;padding:14px 16px;gap:10px}}
@media(max-width:380px){.gallery-visit .actions{grid-template-columns:1fr}}
.gallery-lightbox[hidden]{display:none}
.gallery-lightbox{position:fixed;inset:0;z-index:100;display:grid;grid-template-columns:72px minmax(0,1fr) 72px;align-items:center;padding:32px;background:rgb(var(--brand-blue-rgb) / 92.941%);backdrop-filter:blur(8px)}
.gallery-lightbox figure{display:flex;min-width:0;max-width:min(1180px,100%);max-height:calc(100vh - 64px);margin:auto;flex-direction:column;align-items:center}
.gallery-lightbox figure>img{display:block;max-width:100%;max-height:calc(100vh - 122px);border-radius:14px;object-fit:contain;box-shadow:0 24px 70px #0009}
.gallery-lightbox figcaption{display:flex;width:100%;justify-content:space-between;gap:24px;padding-top:14px;color:#e8eaf0;font-size:0.75rem}
.gallery-lightbox-count{white-space:nowrap;color:#fff9}
.gallery-lightbox-close,.gallery-lightbox-arrow{border:0;background:#ffffff14;color:#fff;cursor:pointer;transition:.25s}
.gallery-lightbox-close{position:absolute;right:22px;top:18px;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;font-size:1.875rem;line-height:1}
.gallery-lightbox-arrow{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;font-size:2.375rem;line-height:1}
.gallery-lightbox-arrow:hover,.gallery-lightbox-arrow:focus,.gallery-lightbox-close:hover,.gallery-lightbox-close:focus{background:var(--red);outline:none}
body.gallery-lightbox-open{overflow:hidden}
@media(max-width:1000px){.gallery-hero-shade{background:linear-gradient(90deg,rgb(var(--brand-blue-rgb) / 96.863%) 0%,rgb(var(--brand-blue-rgb) / 90.980%) 48%,rgb(var(--brand-blue-rgb) / 36.863%) 100%)}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-visit>.shell{grid-template-columns:1fr;gap:36px}}
@media(max-width:600px){.gallery-hero,.gallery-hero-inner{min-height:92vh}.gallery-hero-inner{justify-content:flex-start;padding:120px 0 130px}.gallery-hero-copy{position:relative;z-index:2}.gallery-hero-image{object-position:58% center}.gallery-hero-shade{background:linear-gradient(90deg,rgb(var(--brand-blue-rgb) / 96.078%) 0%,rgb(var(--brand-blue-rgb) / 83.137%) 68%,rgb(var(--brand-blue-rgb) / 41.961%) 100%)}.gallery-grid{grid-template-columns:1fr;gap:14px}.gallery-grid a{border-radius:11px}.gallery-hero h1{font-size:clamp(1.75rem,7.2vw,2.6875rem)}.gallery-hero p{font-size:1rem}.gallery-visit>.shell{gap:30px}.gallery-visit .actions{width:100%}.gallery-lightbox{grid-template-columns:44px minmax(0,1fr) 44px;padding:18px 8px}.gallery-lightbox-arrow{width:40px;height:40px;font-size:1.875rem}.gallery-lightbox-close{right:10px;top:10px}.gallery-lightbox figcaption{padding-inline:6px}}
