/* Only content-specific layout and photo treatment live here. Typography,
   hero rhythm, breadcrumbs, buttons and FAQs use the shared care components. */
.wh-hero-image img{object-position:right top}
.wh-section-heading{max-width:46rem;margin-bottom:2.5rem}
.wh-benefits,.wh-steps{list-style:none;padding:0;margin:0}
.wh-benefits>li,.wh-steps>li{padding:clamp(1.4rem,3vw,2rem);background:#fff}
.wh-reading{max-width:760px;margin-inline:auto}
.wh-practitioner{display:grid;grid-template-columns:minmax(220px,340px) minmax(0,1fr);gap:clamp(2rem,6vw,5rem);align-items:center;max-width:1050px;margin-inline:auto}
.wh-practitioner img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:var(--radius)}
.wh-steps{counter-reset:visit;margin-top:2rem}
.wh-steps>li{counter-increment:visit}
.wh-steps>li::before{content:counter(visit,decimal-leading-zero);display:block;color:var(--iv-gold-readable,var(--brass));font-weight:800;margin-bottom:1rem}
.wh-booking .wh-booking-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr);gap:3rem}
.wh-booking address{font-style:normal}
.wh-booking a:not(.btn){color:var(--ivory)}
.wh-safety{border-left:3px solid var(--brass);padding-left:clamp(1.4rem,4vw,2.2rem)}
@media(min-width:1025px){.wh-benefits{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1024px){.wh-practitioner{grid-template-columns:minmax(180px,260px) minmax(0,1fr);gap:2rem}}
@media(max-width:760px){
 /* A flowing photo replaces the shared hero's reserved background-photo space. */
 .wh-hero{flex-direction:column;padding-bottom:0!important}
 .wh-hero>.wrap{order:1}
 .wh-hero-image{position:relative;inset:auto;order:2;width:100%;z-index:auto}
 .wh-hero-image img{height:auto;aspect-ratio:1;object-fit:cover}
 .wh-hero::after{display:none}
 .wh-benefits,.wh-practitioner,.wh-steps,.wh-booking .wh-booking-grid{grid-template-columns:1fr}
 .wh-practitioner img{max-width:280px}
 .wh-booking .wh-booking-grid{gap:2rem}
}
