.salon-header { position: relative; isolation: isolate; }
.salon-header .salon-cover { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -1; }
.salon-header .navigation-fold.is-open { display: block; }
.salon-text { white-space: pre-line; }
.salon-photo { max-width: 100%; height: auto; }
.salon-person { width: 90px; height: auto; float: left; margin: 0 1rem 1rem 0; }
.salon-gallery { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .5rem; }
.salon-gallery a img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.salon-gallery-dialog { max-width: min(90vw, 900px); border: 0; padding: 1rem; }
.salon-gallery-dialog::backdrop { background: rgb(0 0 0 / 75%); }
.salon-gallery-dialog img { display: block; max-width: 100%; max-height: 70vh; margin: .75rem auto; }
.salon-contact { background: #f4f6f7; }
.salon-contact [data-contact-status] { margin-top: 1rem; }
.salon-map { min-height: 300px; margin-bottom: 1rem; }
