/* Real image elements allow native lazy loading, aspect ratio and decoding. */
.visual-photo{position:relative;overflow:hidden;background:none;isolation:isolate}
.visual-photo>img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2,.7,.3,1)}
.item:hover .visual-photo>img{transform:scale(1.025)}
.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:20px}
.gallery-button{min-width:0}.gallery-button .photo{height:290px}
.coffee .gallery-button:nth-child(4),.nails .gallery-button:nth-child(5){margin-top:28px}
.spa .gallery-button:nth-child(5),.boutique .gallery-button:nth-child(5){margin-top:36px}
.heritage .gallery-button:nth-child(4){border-radius:100px 100px 18px 18px}
.restaurant .gallery-button:nth-child(4) .photo{height:340px}
.wellness .gallery-button:nth-child(4){border-radius:20px 20px 48% 48%}
@media(max-width:650px){
 .gallery-grid,.barber .gallery-grid,.spa .gallery-grid,.restaurant .gallery-grid,.nails .gallery-grid,.aesthetic .gallery-grid,.boutique .gallery-grid,.wellness .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .gallery-button:first-child{grid-column:auto}.gallery-button,.heritage .gallery-button,.boutique .gallery-button,.wellness .gallery-button{border-radius:18px}
 .gallery-button .photo,.gallery-button:first-child .photo,.restaurant .gallery-button:nth-child(4) .photo{height:170px}
 .gallery-button:nth-child(n){transform:none;margin-top:0}.gallery-button span.label{min-height:48px;align-items:center;padding:12px 11px;font-size:10px;line-height:1.5;gap:8px}
 .gallery-button:nth-child(3){grid-column:1/-1}.gallery-button:nth-child(3) .photo{height:235px}
 .gallery-button:nth-child(6){grid-column:1/-1}.gallery-button:nth-child(6) .photo{height:215px}
 .item .visual-photo{height:220px}.story-art .visual-photo{height:265px}.story-art .inset{height:165px}
 .actions .pill{width:fit-content;max-width:100%;padding:12px 18px}.pill{box-shadow:0 6px 16px #0000000b}
 .site-nav .pill{box-shadow:none}.hero-media{background-position:center}
}
@media(max-width:360px){.gallery-button .photo,.gallery-button:first-child .photo{height:145px}.gallery-button:nth-child(3) .photo{height:215px}.item .visual-photo{height:200px}}
@media(prefers-reduced-motion:reduce){.visual-photo>img{transition:none}}
