.clinic-gallery{min-width:0}
.clinic-gallery--interiors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}
.clinic-photo{min-width:0;margin:0}
.clinic-photo-link{position:relative;display:block;overflow:hidden;aspect-ratio:4/3;border-radius:.625rem;background:var(--sage);outline:1px solid oklch(32.9047% .03857062 251.65585 / .1);outline-offset:-1px}
.clinic-photo-link img{width:100%;height:100%;object-fit:cover}
.clinic-photo-link:focus-visible{outline:3px solid oklch(57.513% .100339 73.8936);outline-offset:4px}
.clinic-photo-open{position:absolute;right:.75rem;bottom:.75rem;display:grid;place-items:center;width:2.75rem;height:2.75rem;border-radius:.375rem;background:var(--green);color:var(--white);box-shadow:0 3px 12px oklch(32.9047% .03857062 251.65585 / .12);pointer-events:none;transition:opacity .18s}
.clinic-photo-open .icon{width:1.25rem;height:1.25rem}
.clinic-gallery figcaption{margin-top:.625rem;font-size:.9375rem;line-height:1.5;color:var(--muted)}
.clinic-gallery--facade{margin:1.75rem 0 0}
.clinic-gallery--facade .clinic-photo-link{aspect-ratio:4/3}
.has-clinic-gallery{overflow:hidden}
@media(hover:hover) and (pointer:fine){
 .clinic-photo-open{opacity:0}
 .clinic-photo-link:hover .clinic-photo-open,.clinic-photo-link:focus-visible .clinic-photo-open{opacity:1}
}
@media(max-width:64em){.clinic-gallery--interiors{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}}
@media(max-width:35em){.clinic-gallery--interiors{grid-template-columns:minmax(0,1fr)}}

/* PhotoSwipe retains its own image geometry, transitions, gestures and controls. */
.maximed-pswp{color:var(--white);font-family:var(--font-body);-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0);transition:backdrop-filter var(--pswp-transition-duration,333ms) cubic-bezier(.4,0,.22,1)}
.maximed-pswp--active{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.maximed-pswp .pswp__top-bar{height:3.75rem;padding:.375rem .75rem;gap:.625rem}
.maximed-pswp .pswp__counter{align-self:center;height:auto;margin:0;font-size:.9375rem;line-height:1.3;font-variant-numeric:tabular-nums}
.maximed-pswp .pswp__preloader{width:2.5rem;height:3rem}
.maximed-pswp .pswp__preloader .pswp__icn{width:1.5rem;height:1.5rem;left:.5rem;top:.75rem}
.maximed-pswp .pswp__button{width:3rem;height:3rem;min-width:3rem;padding:0;margin:0;border:1px solid oklch(100% 0 0 / .3);border-radius:.375rem;color:var(--white);background:oklch(32.9047% .03857062 251.65585 / .88);opacity:1;transition:background .18s,border-color .18s}
.maximed-pswp .pswp__button .pswp__icn{position:absolute;inset:0;width:1.375rem;height:1.375rem;margin:auto;fill:none;color:inherit;transform:none}
.maximed-pswp .pswp__button:focus-visible{outline:3px solid oklch(87.5% .065 80);outline-offset:4px}
.maximed-pswp .pswp__button--arrow{position:absolute;top:calc(50% - 1.5rem)}
.maximed-pswp .pswp__button--arrow--prev{left:.75rem;right:auto}
.maximed-pswp .pswp__button--arrow--next{right:.75rem;left:auto}
@media(hover:hover) and (pointer:fine){.maximed-pswp .pswp__button:hover{background:var(--green);border-color:var(--sage)}}
html[data-a11y-motion="reduce"] .clinic-photo-open,
html[data-a11y-motion="reduce"] .maximed-pswp .pswp__button{transition:none}
html[data-a11y-motion="reduce"] .maximed-pswp{-webkit-backdrop-filter:none;backdrop-filter:none;transition:none}
@media(prefers-reduced-motion:reduce){
 .clinic-photo-open,.maximed-pswp .pswp__button{transition:none}
 .maximed-pswp,.maximed-pswp--active{-webkit-backdrop-filter:none;backdrop-filter:none;transition:none}
}
