/* Gallery and Visit Us only; original shared V3 styles stay intact. */
html:has(.gv-page){scroll-behavior:auto}
.gv-page{--gv-gap:clamp(30px,4.5vw,66px)}
.gv-hero{display:grid;grid-template-columns:1fr 1.03fr;gap:var(--gv-gap);align-items:center;padding-block:55px 62px}
.gv-hero h1{font-size:clamp(44px,3.8vw,56px);line-height:1.16}
.gv-hero>div>p{font-size:17px;line-height:1.9;color:var(--muted);margin-top:25px;max-width:55ch}
.gv-hero>div>.btn{margin-top:28px;font-size:13px}
.gv-hero-photo{position:relative;overflow:hidden;border-radius:24px;aspect-ratio:1.18;background:var(--mint)}
.gv-hero-photo>img{width:100%;height:100%;object-fit:cover}
.gv-gallery{padding-bottom:65px;scroll-margin-top:25px}
.gv-filters{display:flex;flex-wrap:wrap;gap:12px}
.gv-filters a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;border:1px solid var(--line);border-radius:100px;padding:11px 20px;color:var(--teal);font-size:13px;line-height:1.5;font-weight:600}
.gv-filters a[aria-current=true]{background:var(--teal);border-color:var(--teal);color:var(--white)}
.gv-filters a:hover{border-color:var(--teal)}
.gv-result{font-size:13px;color:var(--muted);line-height:1.8;margin-top:19px;font-variant-numeric:tabular-nums}
.gv-disclosure{font-size:11px;color:var(--muted);line-height:1.85;margin-top:10px;margin-bottom:27px}
.gv-wall{columns:3;column-gap:25px;list-style:none;margin:0;padding:0}
.gv-item{break-inside:avoid;margin-bottom:30px;scroll-margin-top:25px}
.gv-item figure{margin:0}
.gv-open{position:relative;display:block;width:100%;border:0;padding:0;background:none;color:var(--teal);border-radius:21px}
.gv-photo{position:relative;overflow:hidden;border-radius:21px;background:var(--mint);aspect-ratio:var(--gv-ratio,1.5)}
.gv-photo>img{width:100%;height:auto}
.gv-photo .atlas-square{position:relative;inset:auto;width:100%;height:auto;aspect-ratio:1;transform:none;overflow:hidden}
.gv-photo .atlas{position:absolute;width:600%;height:400%;max-width:none;left:calc(var(--col)*-100%);top:calc(var(--row)*-100%);object-fit:fill}
.gv-photo .placeholder{font-size:9px}
.gv-enlarge{position:absolute;top:11px;inset-inline-end:11px;display:inline-flex;align-items:center;gap:8px;background:var(--white);color:var(--teal);border-radius:100px;padding:7px 11px;font-size:10px;line-height:1.5}
.gv-enlarge .icon{width:16px;height:16px}
.gv-item figcaption{display:flex;justify-content:space-between;align-items:start;gap:15px;margin:13px 2px 0;color:var(--teal);font-size:14px;line-height:1.6;font-weight:600}
.gv-item figcaption small{font-size:10px;line-height:1.8;color:var(--muted);font-weight:400;text-align:end}
.gv-cta{padding-block:56px;background:#edf6ee}
.gv-cta>.wrap{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center}
.gv-cta h2{font-size:clamp(35px,3.4vw,47px);line-height:1.2;max-width:23ch}
.gv-cta p{font-size:15px;line-height:1.9;color:var(--muted);margin-top:20px}
.gv-actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:29px;align-items:center}
.gv-actions .btn{font-size:13px;gap:11px;padding-inline:21px}
.gv-cta .gv-actions{margin-top:0;flex-direction:column;align-items:stretch}
.gv-lightbox{padding:0;border:0;border-radius:24px;background:var(--white);color:var(--teal);width:min(1100px,calc(100vw - 40px));max-width:none;max-height:calc(100dvh - 30px);overflow:auto;overscroll-behavior:contain}
.gv-lightbox::backdrop{background:#153538d9}
.gv-lightbox-panel{position:relative;padding:55px 25px 20px}
.gv-lightbox figure{margin:0}
.gv-close{position:absolute;top:8px;inset-inline-end:10px;width:44px;height:44px;display:grid;place-items:center;background:var(--white);border:1px solid var(--line);border-radius:100%;color:var(--teal)}
.gv-lightbox-image{touch-action:pan-y;user-select:none}
.gv-lightbox .gv-photo{width:min(100%,calc((100dvh - 240px)*var(--gv-ratio,1.5)));margin-inline:auto;border-radius:16px}
.gv-lightbox figcaption{padding-top:17px;text-align:center}
.gv-lightbox h2{font-size:23px;line-height:1.45}
.gv-lightbox-category{margin-inline:auto;font-size:12px;line-height:1.7;color:var(--muted);margin-top:5px}
.gv-lightbox-controls{display:flex;align-items:center;justify-content:center;gap:28px;margin-top:14px}
.gv-lightbox-controls button{display:grid;place-items:center;min-width:46px;min-height:46px;background:none;border:1px solid var(--line);color:var(--teal);border-radius:100%}
.gv-lightbox-controls span{font-size:12px;line-height:1.7;font-variant-numeric:tabular-nums}
.gv-visit-figure{margin:0}
.gv-visit-figure>figcaption{font-size:11px;line-height:1.8;color:var(--muted);margin-top:12px}
.gv-location{display:grid;grid-template-columns:1fr 1fr;gap:var(--gv-gap);padding-block:25px 67px;align-items:start;scroll-margin-top:25px}
.gv-location h2,.gv-before h2,.gv-transport h2,.gv-faq h2{font-size:36px;line-height:1.3}
.gv-location h3{font-size:23px;line-height:1.45;color:var(--teal);margin-top:24px}
.gv-location address{font-style:normal;font-size:16px;color:var(--muted);line-height:1.9;margin-top:17px}
.gv-location-copy>p{font-size:14px;line-height:1.85;color:var(--muted);margin-top:13px}
.gv-location dl{margin:26px 0 22px;display:grid;gap:15px}
.gv-location dt{font-size:12px;font-weight:700;color:var(--teal)}
.gv-location dd{margin:4px 0 0;font-size:15px;line-height:1.8;color:var(--muted)}
.gv-location dd a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:5px}
.gv-location-copy>.btn{font-size:13px}
.gv-map-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:415px;border-radius:24px;padding:38px 28px;background:#eaf5fb;text-align:center}
.gv-map-panel>.icon{width:51px;height:51px;color:var(--teal)}
.gv-map-panel h3{font-size:31px;margin-top:22px}
.gv-map-panel p{font-size:15px;margin-top:12px;color:var(--teal)}
.gv-map-panel>span{display:block;font-size:11px;line-height:1.8;color:var(--muted);margin-top:16px}
.gv-map-panel>.btn{font-size:13px;margin-top:25px}
.gv-map>p{font-size:12px;line-height:1.85;color:var(--muted);margin-top:16px}
.gv-before{background:#eaf5fb;padding-block:54px}
.gv-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--gv-gap);margin-top:30px}
.gv-info-grid h3{font-size:25px;line-height:1.4;color:var(--teal)}
.gv-info-grid p{font-size:15px;color:var(--muted);line-height:1.95;margin-top:19px;max-width:65ch}
.gv-info-grid .text-link{font-size:13px;min-height:44px;margin-top:17px}
.gv-transport{padding-block:58px}
.gv-faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:var(--gv-gap);padding-block:8px 62px}
[dir=rtl] .gv-page h1,[dir=rtl] .gv-page h2,[dir=rtl] .gv-page h3{letter-spacing:0;line-height:1.5}
@media(max-width:1000px){.gv-hero h1{font-size:43px}.gv-hero>div>p{font-size:15px}.gv-wall{columns:2}.gv-location h2,.gv-before h2,.gv-transport h2,.gv-faq h2{font-size:32px}.gv-location address,.gv-info-grid p{font-size:14px}.gv-actions .btn{font-size:12px;padding-inline:16px}}
@media(max-width:700px){.gv-hero{grid-template-columns:1fr;gap:28px;padding-block:34px 39px}.gv-hero h1{font-size:42px}.gv-hero>div>p{font-size:15px;margin-top:21px}.gv-hero>div>.btn{font-size:12px;margin-top:23px}.gv-hero-photo{aspect-ratio:1.4;border-radius:22px}.gv-filters{gap:9px}.gv-filters a{font-size:11px;padding-inline:14px;min-height:45px}.gv-result{font-size:12px;margin-top:16px}.gv-disclosure{font-size:10px;margin-top:9px;margin-bottom:23px}.gv-wall{column-gap:18px}.gv-item{margin-bottom:25px}.gv-item figcaption{font-size:13px;gap:10px}.gv-item figcaption small{font-size:9px}.gv-gallery{padding-bottom:39px}.gv-cta{padding-block:39px}.gv-cta>.wrap{grid-template-columns:1fr;gap:24px}.gv-cta h2{font-size:34px}.gv-cta .gv-actions{align-items:start}.gv-actions{gap:10px;margin-top:24px}.gv-actions .btn{font-size:11px;min-height:49px;padding-inline:16px;gap:9px}.gv-lightbox{width:calc(100vw - 24px);border-radius:20px}.gv-lightbox-panel{padding:55px 13px 17px}.gv-lightbox h2{font-size:20px}.gv-lightbox .gv-photo{border-radius:14px}.gv-lightbox-category{font-size:11px}.gv-location{grid-template-columns:1fr;gap:32px;padding-block:6px 40px}.gv-location h2,.gv-before h2,.gv-transport h2,.gv-faq h2{font-size:30px}.gv-location h3{font-size:22px;margin-top:22px}.gv-location address{font-size:14px;margin-top:15px}.gv-location-copy>p{font-size:13px}.gv-location dd{font-size:14px}.gv-location dl{gap:13px;margin-top:22px}.gv-map-panel{min-height:340px;border-radius:22px;padding:30px 22px}.gv-map-panel h3{font-size:27px}.gv-map>p{font-size:11px}.gv-before{padding-block:38px}.gv-info-grid{grid-template-columns:1fr;gap:29px;margin-top:25px}.gv-info-grid h3{font-size:23px}.gv-info-grid p{font-size:14px;margin-top:16px}.gv-transport{padding-block:38px}.gv-faq{grid-template-columns:1fr;gap:24px;padding-block:3px 39px}}
@media(max-width:520px){.gv-wall{columns:1}.gv-item figcaption{font-size:14px}.gv-item figcaption small{font-size:10px}}
@media(prefers-reduced-motion:reduce){.gv-page{scroll-behavior:auto}}
