.home-page .hero-visual #hero-photo{display:block;width:100%;height:auto;aspect-ratio:6/5;object-fit:cover;object-position:center 58%}
.slideshow-toggle{position:absolute;right:25px;bottom:14px;z-index:2;border:0;border-radius:24px;padding:8px 13px;min-height:36px;font:12px 'DM Sans',sans-serif;background:var(--cream);color:var(--teal);cursor:pointer;box-shadow:0 1px 6px #0002}
.gallery-instruction{font-size:13px!important}.gallery-grid{columns:3;column-gap:24px;padding-bottom:60px}.gallery-tile{display:inline-block;width:100%;margin:0 0 24px;break-inside:avoid;border-radius:22px;overflow:hidden;text-decoration:none;background:#ebe8d9}.gallery-tile img{display:block;width:100%;height:auto;transition:filter .2s}.gallery-tile:hover img{filter:brightness(1.06)}.gallery-tile span{display:block;padding:14px 18px;font-size:13px;line-height:1.5}
.photo-dialog{position:fixed;inset:0;width:min(1100px,96vw);max-width:96vw;max-height:94dvh;margin:auto;padding:58px 20px 16px;border:0;border-radius:20px;background:var(--cream);color:var(--teal);overflow:auto}.photo-dialog::backdrop{background:rgb(15 30 31 / .85)}.photo-dialog figure{margin:0}.photo-dialog figure img{display:block;margin:auto;max-width:100%;width:auto;height:auto;max-height:66dvh;object-fit:contain;border-radius:8px}.photo-dialog figcaption{text-align:center;margin:12px auto;font-size:14px}.photo-close{position:absolute;right:18px;top:10px}.photo-dialog button{min-height:44px;border:1px solid var(--teal);border-radius:30px;padding:8px 17px;background:var(--cream);color:var(--teal);cursor:pointer;font:inherit}.photo-controls{display:flex;align-items:center;justify-content:space-between;gap:8px}.photo-controls span{font-size:12px}
@media(max-width:900px){.gallery-grid{columns:2}}
@media(max-width:600px){.gallery-grid{column-gap:12px}.gallery-tile{margin-bottom:12px;border-radius:14px}.photo-dialog{padding:58px 12px 14px}.photo-dialog figure img{max-height:60dvh}.photo-dialog button{font-size:13px}}
@media(prefers-reduced-motion:reduce){.gallery-tile img{transition:none}}

.hero-gallery-link{display:block;position:relative;border-radius:48% 48% 14px 14px;overflow:hidden;cursor:pointer}
