/* Salon and local guides share the site's visual language. */
.salons-page,.salon-show,.local-page{padding:clamp(32px,6vw,80px) 0;background:linear-gradient(180deg,#f5f3ff,#fff 650px)}
.salons-page__hero,.salon-show__hero,.local-hero{max-width:820px;margin-bottom:36px}
.salons-page h1,.salon-show h1,.local-page h1{font-size:clamp(2rem,5vw,3.5rem);line-height:1.15;letter-spacing:-.04em;margin:14px 0 20px}
.salons-page h2,.salon-show h2,.local-page h2{font-size:clamp(1.4rem,3vw,2rem);line-height:1.3;margin:0 0 18px}
.salons-page p,.salon-show p,.local-page p{line-height:1.75;margin:0 0 18px}
.local-eyebrow{display:block;color:#5753b4;font-size:.75rem;font-weight:800;letter-spacing:.12em}
.salons-grid,.salon-show__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:start}
.salon-show__grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}
.salon-card,.salon-show__contact,.salon-show__hours,.salon-intro,.salon-notice,.local-section{padding:clamp(22px,3vw,34px);border:1px solid #e2dff1;border-radius:24px;background:white;box-shadow:0 8px 28px #33295b08;min-width:0}
.salon-card{display:flex;flex-direction:column;height:100%;border-top:4px solid #7771d7}
.salon-card__header{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:24px}.salon-card__title{font-size:1.5rem;line-height:1.3;margin:0}
.salon-card__badge{padding:5px 12px;border-radius:30px;background:#eeecff;color:#514aa0;font-size:.8rem;font-weight:700}
.salon-card__body{flex:1}.salon-card__footer{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.salon-card__hours,.salon-show__hours ul{list-style:none;padding:0;margin:16px 0 0}
.salon-card__hours li,.salon-show__hours li{display:flex;justify-content:space-between;gap:18px;padding:9px 0;border-bottom:1px solid #eee;line-height:1.5;font-size:.9rem}.salon-show__hours small{display:block;font-weight:400}.salon-show__hours strong{text-align:right}
.salon-show__main,.salon-show__sidebar{display:grid;gap:24px}.salon-show__map{overflow:hidden;border-radius:24px;border:1px solid #ddd}.salon-show__map iframe{display:block;width:100%;height:340px;border:0}
.salon-show a,.salons-page a,.local-page a{overflow-wrap:anywhere}.breadcrumb-light{font-size:.85rem;margin-bottom:28px;line-height:1.7}.salon-intro ul{padding-left:20px;line-height:1.9}.salon-notice{background:#f3f1fc;box-shadow:none}
.salon-show__team{margin-top:48px}.salon-show__head-member{display:grid;grid-template-columns:220px minmax(0,1fr);gap:30px;align-items:start}.salon-show__head-member img{width:100%;height:280px;object-fit:cover;border-radius:24px}.salon-show__team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:20px}.salon-show__team-card{display:grid;gap:10px}.salon-show__team-card img{width:100%;max-height:240px;object-fit:cover;border-radius:18px}
.local-links{margin-top:48px;padding-top:32px;border-top:1px solid #dfdbef}.local-links__list{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0}.local-links__list a{display:block;padding:10px 16px;border:1px solid #d8d3ee;background:#fff;border-radius:30px;text-decoration:none;color:#514aa0;font-weight:600;font-size:.9rem}.local-links__list a:hover{background:#eeecff}
.local-section{margin:24px 0}.local-section li{line-height:1.8}.local-section details{padding:18px 0;border-top:1px solid #eee}.local-section summary{font-weight:700;cursor:pointer}.local-section details p{margin:14px 0 0}
@media(max-width:760px){.salons-grid,.salon-show__grid,.salon-show__head-member{grid-template-columns:1fr}.salon-show__head-member img{max-width:260px}.salon-card__footer .btn{width:100%;text-align:center}.salon-show__hero .lead{font-size:1rem}.salon-show__map iframe{height:280px}}
/* Leave room for the fixed brand header on inner pages. */
#main > .salons-page:first-child,#main > .salon-show:first-child,#main > .local-page:first-child{padding-top:190px}
@media(max-width:768px){.header__contact{display:none}.header__content{padding:16px 56px 16px 8px;align-items:flex-start}.header__brand{text-align:left}.header__title{margin:0 0 4px}.header__subtitle{font-size:10px}#main > .salons-page:first-child,#main > .salon-show:first-child,#main > .local-page:first-child{padding-top:120px}.salons-page>.container,.salon-show>.container,.local-page>.container{padding-left:18px;padding-right:18px}}
/* Dedicated salons reuse the homepage sections and design tokens. */
.salon-home__hero{padding-top:130px;padding-bottom:48px}.salon-home__hero .breadcrumb-light{margin-bottom:28px}.salon-home__hero .hero__title{margin-top:18px}.salon-home__hero .hero__description{color:var(--text-light);font-size:1rem;line-height:1.8}.salon-home__hero .hero__subtitle{line-height:1.5}.salon-home__address{margin-top:24px;color:var(--text-light);font-size:.88rem;line-height:1.7}.salon-home__photo{margin:0;display:block}.salon-home__photo img{height:auto;object-fit:contain}.salon-home__photo figcaption{text-align:center;font-size:.8rem;color:var(--text-light);margin-top:15px}.salon-home__highlights{display:flex;gap:32px;justify-content:center;flex-wrap:wrap;margin-top:36px;font-size:.9rem;font-weight:600;color:var(--text-light)}.salon-home__highlights i{color:var(--primary-color);margin-right:8px}.salon-home__welcome{padding:72px 0}.salon-home__intro{max-width:800px;margin:auto;text-align:center;line-height:1.9;color:var(--text-light)}.salon-home__intro p+p{margin-top:20px}.salon-home .presentation__content:not(:has(.presentation__image)){grid-template-columns:1fr;max-width:820px;margin:auto}.salon-home .prestations{padding:64px 0}.salon-home .informations{padding:72px 0}.salon-home .info-card{min-width:0}.salon-home .contact-info a{overflow-wrap:anywhere}.salon-home .horaires .heure{text-align:right}.salon-home .horaires small{display:block;max-width:180px;font-weight:400;font-size:.72rem;line-height:1.4}.salon-home__outro{padding:0 0 64px}.salon-home__other{text-align:center;margin-top:30px}.salon-home .galerie__cta{margin-top:0}.salon-home .salon-show__team-grid{margin-top:36px}
@media(max-width:768px){.salon-home__hero{padding-top:115px}.salon-home .container{padding-left:18px;padding-right:18px}.salon-home__hero .hero__card{padding:26px 22px;gap:30px}.salon-home__hero .hero__title{font-size:clamp(2rem,8vw,3rem)}.salon-home__hero .hero__actions{align-items:stretch;flex-direction:column}.salon-home__highlights{gap:14px;align-items:flex-start;flex-direction:column;margin-left:12px}.salon-home__welcome,.salon-home .informations{padding:48px 0}.salon-home .informations__grid{grid-template-columns:1fr}.salon-home .info-card{padding:26px 22px}.salon-home .presentation__content{gap:28px}}
/* These contact rows contain text only, without the legacy icon column. */
.salon-home .contact-info p{display:block;line-height:1.7;margin-bottom:16px;color:var(--text-light)}
.salon-home .contact-info a{display:inline-block;max-width:100%}
.salon-home .info-card .btn{max-width:100%;justify-content:center;white-space:normal;color:#fff}
.salon-home .info-card .btn:focus-visible{padding:var(--spacing-md) var(--spacing-xl);outline:3px solid var(--primary-light);outline-offset:3px}
