.salon-content.salon-profile{overflow-y:auto;overscroll-behavior:contain}
.salon-profile>.salon-profile-inner{position:relative;inset:auto;width:100%;max-width:760px;box-sizing:border-box;margin:0 auto;padding:30px 22px 44px}
.salon-profile-inner .salon-full-address{display:block;margin:0 auto 20px;font-style:normal;font-size:16px;line-height:1.65;color:var(--ivory);max-width:520px;overflow-wrap:anywhere}
.salon-full-address span{display:block}.salon-full-address[hidden],.salon-profile-inner [data-salon-reviews][hidden]{display:none!important}
.salon-profile-inner .salon-reviews-link{display:inline-block;margin:16px auto 0;min-height:44px;padding:10px 0;font-size:14px;line-height:1.5}
.salon-profile-inner .salon-hours{max-width:540px;margin:26px auto 0;padding:24px;border:1px solid #be9e5c50;border-radius:18px;background:linear-gradient(130deg,#22241d,#141914);text-align:left}
.salon-hours h2{font-size:19px;line-height:1.4;color:var(--ivory);margin:0 0 18px;font-weight:600}
.salon-hours-list{margin:0}.salon-hours-row{display:grid;grid-template-columns:minmax(100px,1fr) minmax(0,1.7fr);gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid #ffffff12;font-size:14px;line-height:1.5}.salon-hours-row:last-child{border-bottom:0}.salon-hours-row dt{font-weight:500}.salon-hours-row dd{margin:0;text-align:right;color:#ddd9ce}.salon-hours-row.is-today dt,.salon-hours-row.is-today dd{color:#e0c489}.salon-hours-row small{display:block;font-size:10px;font-weight:400;letter-spacing:.02em}.salon-profile-inner .salon-hours p{font-size:14px;line-height:1.6;margin:0;color:var(--muted);text-align:left}.salon-profile-inner .salon-hours .salon-hours-note{font-size:12px;margin-top:16px}
@media(max-width:420px){.salon-profile>.salon-profile-inner{padding:24px 16px 36px}.salon-profile-inner .salon-hours{padding:18px 15px}.salon-hours-row{grid-template-columns:94px minmax(0,1fr);gap:8px;font-size:13px}}


/* Fiche publique : identité, réservation et informations pratiques. */
.salon-content.salon-profile{background:radial-gradient(ellipse at 20% 0%,#be9e5c12,transparent 60%)}
.salon-profile>.salon-profile-inner{max-width:1120px;padding:36px 28px 48px;display:grid;gap:28px;align-items:start}
.salon-profile-overview{min-width:0;padding:30px 24px;text-align:center;border:1px solid #c5ac7429;border-radius:24px;background:linear-gradient(155deg,#272b23db,#141914ed);box-shadow:0 18px 50px #0002}
.salon-profile-overview .salon-brand-block{max-width:320px;margin:0 auto 22px;padding:0}
.salon-profile-overview .salon-brand-logo{width:144px;height:120px;object-fit:contain;margin:0 auto;padding:12px;box-sizing:border-box;border-radius:20px;background:#ffffff08}
.salon-profile-overview .salon-brand-placeholder{width:104px;height:104px;margin:0 auto;border:1px solid #cdb57a66;border-radius:28px;background:linear-gradient(140deg,#403c2b,#22291f);box-shadow:inset 0 1px #ffffff12;font-size:44px;color:#e2cb94}
.salon-profile-inner .salon-brand-block .salon-heart{left:0;right:auto;top:0;width:44px;height:44px;font-size:29px;border:1px solid #ffffff1c;border-radius:50%;background:#ffffff05}
.salon-profile-inner .salon-profile-overview h1{font-size:clamp(26px,3vw,38px);line-height:1.2;font-weight:600;letter-spacing:-.025em;margin:0 0 14px;overflow-wrap:anywhere}
.salon-profile-overview .salon-full-address{font-size:14px;line-height:1.7;color:#c6c8be;margin-bottom:26px}
.salon-profile-overview .salon-book-tariff{display:inline-flex;align-items:center;justify-content:center;min-height:50px;max-width:100%;padding:14px 26px;border:1px solid #ddc084;border-radius:14px;background:linear-gradient(120deg,#e2c78e,#be9e5c);color:#191c16;font-size:15px;font-weight:650;box-shadow:0 6px 20px #0002;cursor:pointer}
.salon-profile-overview .salon-contact-actions{gap:4px 22px;margin:24px auto 0;padding-top:18px;border-top:1px solid #ffffff12}
.salon-profile-overview .salon-contact-actions button{font-size:14px}
.salon-profile-overview .salon-reviews-link{margin:6px auto 0;color:#cfb77f;font-size:13px;text-decoration:none}
.salon-profile-inner .salon-hours{box-sizing:border-box;width:100%;max-width:none;margin:0;padding:28px;border:1px solid #ffffff16;border-radius:24px;background:linear-gradient(145deg,#252b23,#191e19);box-shadow:0 16px 45px #0002}
.salon-hours h2{font-size:20px;letter-spacing:-.02em;padding-bottom:18px;border-bottom:1px solid #ffffff16;margin-bottom:8px}
.salon-hours-row{padding:11px 10px;gap:10px;border-bottom-color:#ffffff0b;border-radius:8px}
.salon-hours-row.is-today{background:#c4a56413;box-shadow:inset 3px 0 #c4a564;border-bottom-color:transparent}
.salon-hours-row.is-today dt{font-weight:650}.salon-hours-row dd{font-variant-numeric:tabular-nums;font-size:13px}
.salon-profile-overview button:focus-visible{outline:2px solid #efd7a3;outline-offset:4px}
@media(hover:hover){.salon-profile-overview .salon-book-tariff:hover{background:#ead2a2;box-shadow:0 8px 24px #0004}.salon-profile-overview .salon-heart:hover{background:#ffffff10}.salon-profile-overview .salon-reviews-link:hover{text-decoration:underline;text-underline-offset:4px}}
@media(min-width:900px){.salon-profile>.salon-profile-inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:26px;padding-top:34px}.salon-profile-overview{padding:34px 28px}}
@media(max-width:520px){.salon-profile>.salon-profile-inner{padding:18px 14px 32px;gap:18px}.salon-profile-overview{padding:24px 18px;border-radius:20px}.salon-profile-inner .salon-hours{padding:22px 16px;border-radius:20px}.salon-profile-overview .salon-contact-actions{gap:2px 16px}.salon-profile-overview .salon-brand-logo{height:106px}.salon-profile-overview .salon-book-tariff{width:100%}.salon-hours-row{grid-template-columns:90px minmax(0,1fr);padding:10px 8px}}

@media(min-width:900px){.salon-profile>.salon-profile-inner{align-items:stretch}}


.salon-prestations{grid-column:1/-1;min-width:0;padding:28px;border:1px solid #ffffff16;border-radius:24px;background:linear-gradient(145deg,#252b23,#191e19);text-align:left}
.salon-prestations-heading{padding-bottom:22px;border-bottom:1px solid #ffffff16}.salon-prestations-eyebrow{font-size:10px;letter-spacing:.14em;color:#cfb77f}.salon-prestations h2{margin:8px 0 0;font-size:24px;line-height:1.3;color:var(--ivory)}
.salon-prestation{padding:22px 0;border-bottom:1px solid #ffffff16}.salon-prestation:last-child{border-bottom:0;padding-bottom:0}.salon-prestation h3{font-size:17px;line-height:1.4;font-weight:600;margin:0 0 12px;overflow-wrap:anywhere;color:var(--ivory)}
.salon-prestation-option{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:18px;align-items:center;padding:10px 0}.salon-prestation-description{display:grid;gap:5px;font-size:14px;overflow-wrap:anywhere}.salon-prestation-description small{color:#b9bdb2;font-size:13px}.salon-prestation-option strong{font-size:16px;color:#e0c489;white-space:nowrap;font-variant-numeric:tabular-nums}
.salon-prestation-option button{min-height:44px;padding:11px 18px;border:1px solid #c6aa6c80;border-radius:10px;background:#c6aa6c12;color:#ead2a2;font:inherit;font-size:13px;font-weight:600;cursor:pointer}.salon-prestation-option button:focus-visible{outline:2px solid #efd7a3;outline-offset:3px}.salon-profile-inner .salon-prestations-empty{font-size:14px;line-height:1.6;text-align:left;margin:22px 0 0;color:#b9bdb2}
@media(hover:hover){.salon-prestation-option button:hover{background:#c6aa6c;color:#171b15}}
@media(max-width:520px){.salon-prestations{padding:22px 16px;border-radius:20px}.salon-prestations h2{font-size:21px}.salon-prestation-option{grid-template-columns:minmax(0,1fr) auto;gap:10px}.salon-prestation-option button{grid-column:1/-1;justify-self:stretch}.salon-prestation{padding:18px 0}}
