
/* Visibility & layout fixes for images/galleries */
img, picture, video { max-width: 100%; height: auto; display: block; }
.gallery, .photos, .before-after, .image-grid { display: grid; gap: 16px; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); }
.gallery img, .photos img, .before-after img, .image-grid img { opacity: 1 !important; visibility: visible !important; filter: none !important; }
figure{ margin:0 }
.before-after .after, .before-after .before { position: relative; }
section, .section { position: relative; z-index: 1; }
#services, #book, #gallery, #contact { scroll-margin-top: 86px; } /* anchor offset under sticky header */

/* Logo placement enhancement */
.site-header .site-logo{ height:56px; width:auto; object-fit:contain }
.hero .brand-badge{ max-width: 360px; border-radius: 16px; border: 1px solid rgba(255,255,255,.25); }
