
/* Shared inner-page system. Preserve content and interactive controls. */
html body.page-open{background:#EFE9DE;color:#211D18;font-family:Inter,sans-serif}
html body.page-open :is(h1,h2,h3){font-family:'Cormorant Garamond',serif;text-shadow:none;letter-spacing:-.015em}
html body.page-open :is(p,li,.crumb,.eyebrow,.chip,.ac-chips,.tc-rail button,.c-go,.c-chip,.bio-role){font-family:Inter,sans-serif;letter-spacing:normal;text-transform:none}
html body.page-open :is(p,li){line-height:1.7}
html body.page-open section{background-image:none!important}
html body.page-open :is(.t-hero,.tm-hero){background:#33352B!important;color:#F7F4EE;padding:calc(var(--nav-h,80px) + 48px) 0 0;min-height:0}
html body.page-open :is(.t-hero,.tm-hero)::before,html body.page-open :is(.t-hero,.tm-hero)::after{content:none!important}
html body.page-open .t-hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(48px,7vw,112px);align-items:start;padding:0;min-height:580px}
.page-open .t-hero-grid>div{align-self:start;padding-bottom:64px}
html body.page-open :is(.t-hero,.tm-hero) h1{font-size:clamp(46px,5vw,76px);line-height:1.08;max-width:20ch;margin:24px 0 32px}
html body.page-open :is(.t-hero,.tm-hero) :is(.lede,.crumb){color:#F7F4EE!important}
html body.page-open .lede{max-width:52ch;font-size:clamp(17px,1.35vw,20px);line-height:1.65}
html body.page-open .t-hero-img{position:relative;inset:auto;align-self:end;justify-self:end;width:100%;max-width:480px;height:auto;aspect-ratio:auto;margin:80px 0 0;overflow:hidden;border:0!important;box-shadow:none!important;border-radius:0!important;transform:none!important}
html body.page-open .t-hero-img img{display:block;width:100%;height:auto;max-height:580px;object-fit:cover;opacity:1;filter:none;border-radius:0!important}
html body.page-open .t-hero-img::after{content:none!important}
html body.page-open .hero-meta{display:flex;flex-wrap:wrap;gap:8px 24px;margin:24px 0 32px}
html body.page-open :is(.chip,.c-chip,.ac-chips span,.bio-exp,.bio-specs span,.tm-stats span){background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0;color:inherit}
html body.page-open :is(.chip,.c-chip,.ac-chips span,.bio-exp,.tm-stats span)::before,html body.page-open :is(.chip,.c-chip)::after{content:none!important}
html body.page-open :is(.about-card,.book-card,.tabs-card,.c-card,.c-products,.c-home,.prose,.tc-qa,.step>div,.faq details,.bio,.bio-media,.ix-plate,.ix-row){background:transparent!important;background-image:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;backdrop-filter:none!important;padding:0;transform:none!important}
html body.page-open :is(.about-card,.book-card,.tabs-card,.c-card,.bio,.ix-plate)::before,html body.page-open :is(.about-card,.book-card,.tabs-card,.c-card,.bio,.ix-plate)::after{content:none!important}
html body.page-open :is(.vp2-grid,.vp5-grid){gap:clamp(48px,7vw,112px);align-items:start}
html body.page-open :is(.vp2-grid,.vp5-grid)>:last-child:has(img){align-self:end;margin-top:64px}
html body.page-open section:not(.t-hero):not(.tm-hero):not(.ix-hero){padding-block:clamp(56px,7vw,104px)}
html body.page-open :is(.about-card,.prose,.book-card,.bio-copy) p{max-width:60ch;margin:0 0 24px}
html body.page-open .ac-chips{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:32px;padding:0;border:0}
.page-open .ac-chips i{font-style:normal;font-weight:600;margin-bottom:8px}
html body.page-open :is(.story-rail,.sr-slide,.ba-figure,.bio-photo,.v-shot,.ix-thumb){border:0!important;box-shadow:none!important;border-radius:0!important}
html body.page-open .sr-cap{position:static;background:transparent;color:#37382F;padding:16px 0;backdrop-filter:none}
.page-open .sr-cap i{display:none}
html body.page-open .c-grid{gap:56px 64px;margin-top:48px}
html body.page-open .c-card h3{font-size:32px;line-height:1.15;margin-bottom:20px}
html body.page-open .c-foot{border:0;padding:0;margin-top:24px;gap:16px;flex-wrap:wrap}
html body.page-open .c-go{background:#858C79;color:#211D18!important;border:0;border-radius:999px;min-height:48px;padding:12px 24px;font:500 14px/1.5 Inter,sans-serif;text-decoration:none}
html body.page-open .c-go::after{content:none}
html body.page-open .tabs-card{gap:48px}
html body.page-open .tc-rail button{background:transparent;border:0;border-radius:0;box-shadow:none;color:#37382F;text-align:left;padding:12px 0;font-size:16px}
html body.page-open .tc-rail button.is-on{color:#211D18;font-weight:600;text-decoration:underline;text-underline-offset:6px}
html body.page-open :is(.step,.tc-qa){border:0;padding-block:24px}
html body.page-open .step::before{content:none}
html body.page-open :is(.mq,.tm-stats,.ix-legend){display:none!important} html body.page-open footer .foot-sign .foot-mark{background:#211d18;-webkit-mask-image:url(img/logo-black.png);mask-image:url(img/logo-black.png)}
html body.page-open .bio{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(48px,7vw,112px);padding-block:64px;align-items:start}
.page-open .bio-copy{grid-column:1;grid-row:1}.page-open .bio-media{grid-column:2;grid-row:1;align-self:end;justify-self:end;width:100%;max-width:440px}
.page-open .bio-exp{display:block;position:static;margin-top:16px;font-size:14px}
.page-open .bio-specs{gap:8px 16px}
@media(max-width:900px){html body.page-open .t-hero-grid,html body.page-open .bio{grid-template-columns:minmax(0,1fr);gap:32px;min-height:0}html body.page-open .t-hero-img{margin:0;width:min(100%,420px);max-width:100%}.page-open .t-hero-grid>div{padding-bottom:0}html body.page-open :is(.vp2-grid,.vp5-grid){grid-template-columns:1fr;gap:32px}html body.page-open :is(.vp2-grid,.vp5-grid)>:last-child:has(img){margin-top:0}.page-open .bio-copy,.page-open .bio-media{grid-column:1;grid-row:auto}.page-open .bio-media{max-width:420px}html body.page-open .c-grid{grid-template-columns:1fr;gap:48px}html body.page-open :is(.t-hero,.tm-hero){padding-top:calc(var(--nav-h,72px) + 32px)}html body.page-open .tc-rail{gap:8px 24px}.page-open .t-hero-img img{max-height:none!important}}

/* Override legacy viewport padding: same top-left / bottom-right composition as Home. */
html body.page-open :is(.t-hero,.tm-hero){display:block!important;min-height:0!important;padding:calc(var(--nav-h,80px) + 48px) 0 0!important;text-align:left!important}
html body.page-open .container.t-hero-grid{width:min(1240px,calc(100% - 48px))!important;max-width:1240px!important;margin-inline:auto!important;padding:0 0 56px!important;min-height:calc(100svh - var(--nav-h,80px) - 48px);align-items:start!important}
html body.page-open .t-hero-grid>div{margin:0!important;padding:0 0 64px!important;text-align:left!important;align-self:start!important}
html body.page-open .t-hero-img{margin:96px 0 0!important;max-width:520px!important;width:100%!important;align-self:end!important;justify-self:end!important}
html body.page-open :is(.section-head,.book-band,.book-card,.about-card,.ix-intro,.bio-copy,.pricer,.results-page-heading){text-align:left!important}
html body.page-open :is(.book-band,.book-card) :is(h2,p){margin-left:0!important;margin-right:0!important}
html body.page-open .vp2-grid:not(:has(img)){grid-template-columns:minmax(0,1fr)!important;max-width:72ch}
html body.page-open .hero-meta{display:none!important}
html body.page-open :is(.pricer,.steps,.faq){margin-left:0!important;margin-right:0!important}
@media(max-width:900px){html body.page-open .container.t-hero-grid{width:calc(100% - 48px)!important;margin-inline:auto!important;padding:0 0 40px!important;min-height:0!important}.page-open .t-hero-grid>div{padding-right:24px!important}html body.page-open .t-hero-img{margin:0!important;max-width:420px!important}html body.page-open :is(.t-hero,.tm-hero){padding-top:calc(var(--nav-h,72px) + 32px)!important}}

/* Match the approved homepage SKIN CONCERNS label. */
html body.page-open :is(.eyebrow,.pr-kicker,.pr-k-label,.foot-h){font-family:Inter,Arial,sans-serif!important;font-size:14px!important;font-weight:700!important;line-height:1.5!important;letter-spacing:.01em!important;text-transform:uppercase!important}

/* Booking panels are open on bone backgrounds; keep inherited copy readable. */
html body.page-open .book-card { color: #211d18 !important; }
html body.page-open .book-card p,
html body.page-open .book-card .bc-sub,
html body.page-open .book-card .bc-links span { color: #4a443b !important; }
html body.page-open .book-card .bc-sub a,
html body.page-open .book-card .bc-links a { color: #33352b !important; border-color: rgba(33,29,24,.18); }
html body.page-open .book-card .bc-links { border-color: rgba(33,29,24,.18); }
html body.page-open .book-card .bc-links a { grid-template-columns: minmax(0,1fr) max-content; }
html body.page-open .book-card .bc-links a::after { content: none !important; }
@media (max-width: 560px) {
  html body.page-open .book-card .bc-links a { grid-template-columns: 1fr; grid-template-areas: 'name' 'price'; }
}

/* Detail-page actions use the approved filled sage treatment. */
html body.page-open a.rg-more,
html body.page-open .bento-card .bmeta a {
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  min-height:48px;
  width:max-content;
  max-width:100%;
  margin-top:24px;
  padding:12px 24px!important;
  background:#858c79!important;
  color:#211d18!important;
  border:1px solid transparent!important;
  border-radius:999px!important;
  font:500 14px/1.4 Inter,Arial,sans-serif!important;
  letter-spacing:normal!important;
  text-transform:none!important;
  text-decoration:none!important;
}
html body.page-open a.rg-more:hover,
html body.page-open .bento-card .bmeta a:hover { background:#9da48f!important; text-decoration:none!important; }
html body.page-open a.rg-more:focus-visible,
html body.page-open .bento-card .bmeta a:focus-visible { outline:2px solid currentColor; outline-offset:4px; }

/* Pricing and suitability selectors: sage controls with a clear active state. */
html body.page-open .pricing-clean .pr-arr { display:none!important; }
html body.page-open.treatment-detail .pricing-clean .pricer .pr-dot,
html body.page-open .tc-rail button {
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  min-height:44px;
  width:auto;
  padding:10px 18px!important;
  border:1px solid transparent!important;
  border-radius:999px!important;
  background:#858c79!important;
  color:#211d18!important;
  font:500 14px/1.4 Inter,Arial,sans-serif!important;
  letter-spacing:normal!important;
  text-transform:none!important;
  text-decoration:none!important;
}
html body.page-open.treatment-detail .pricing-clean .pricer .pr-dot.is-on,
html body.page-open .tc-rail button.is-on {
  border-color:#33352b!important;
  box-shadow:inset 0 0 0 1px #33352b!important;
  text-decoration:none!important;
}
html body.page-open.treatment-detail .pricing-clean .pricer .pr-dot:focus-visible,
html body.page-open .tc-rail button:focus-visible { outline:2px solid #33352b; outline-offset:3px; }
/* Selected information tabs use a tonal change, without a black ring. */
html body.page-open .tc-rail button.is-on{border-color:transparent!important;box-shadow:none!important;background:#969d8a!important}
/* Keep treatment-card notes above consistently aligned actions. */
html body.page-open .c-card{display:flex;flex-direction:column}
html body.page-open .c-card .c-foot{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:flex-end;gap:12px!important;min-height:90px;margin-top:auto}
html body.page-open .c-card .c-go{margin:0!important;align-self:flex-start}
html body.page-open .c-card .c-foot{margin-top:auto!important}
#main .c-grid .c-card .c-foot{margin-top:auto!important;justify-content:flex-end!important}
html body.page-open.concern-detail .c-card .c-foot{margin-top:auto!important;justify-content:flex-end!important;gap:12px!important}
