/* Treatment browsing, price-first journeys, and focused service guides. */
.treatment-journey-site { --journey-header-height: 127px; --journey-gold: #a58450; }
html:has(.treatment-journey-site) { scroll-padding-top: 0; }
.treatment-journey-site main [id] { scroll-margin-top: calc(var(--journey-header-height) + 76px); }
.treatment-switcher { background: #fff; padding: 20px 0 22px; border-bottom: 1px solid var(--line); }
.treatment-switch-heading { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 15px; }
.treatment-switch-heading nav { display: flex; flex-wrap: wrap; align-items: center; gap: 11px; font-size: .8rem; }
.treatment-switch-heading a { text-decoration: none; color: var(--ink); }
.treatment-switch-heading nav > span { color: #b1a899; }
.treatment-switch-heading .treatment-family-prices { font-size: .78rem; white-space: nowrap; color: #76603e; }
.treatment-switch-links { display: flex; gap: 8px; overflow-x: auto; scrollbar-width: thin; padding: 2px 2px 8px; scroll-padding-inline: 3px; }
.treatment-switch-rail { display: flex; align-items: center; gap: 9px; min-width: 0; }
.treatment-switch-rail > nav { flex: 1; min-width: 0; }
.treatment-rail-arrow { width: 34px; height: 34px; flex: none; padding: 0; border: 1px solid #d2c7b5; border-radius: 50%; background: #fff; color: #5f5038; font-size: 1rem; }
.treatment-rail-arrow[hidden] { display: none; }
.treatment-rail-arrow:disabled { opacity: .35; cursor: default; }
.treatment-switch-links a { flex: none; display: inline-flex; align-items: center; min-height: 43px; padding: 9px 17px; border: 1px solid #dcd6cc; border-radius: 999px; background: #fff; color: #292823; font: 700 .82rem/1.35 var(--sans); text-decoration: none; white-space: nowrap; }
.treatment-switch-links a:hover { border-color: var(--journey-gold); background: #faf7f1; }
.treatment-switch-links a[aria-current="page"] { background: #191917; border-color: #191917; color: #fff; }
.treatment-switch-links a.is-parent { border-color: var(--journey-gold); background: #f6f1e8; }
.treatment-switch-links a:focus-visible, .treatment-option-tabs a:focus-visible { outline: 2px solid #836536; outline-offset: 3px; }
.treatment-sibling-options { margin-top: 13px; padding-top: 13px; border-top: 1px solid #eee9e1; }
.treatment-sibling-options > span { display: block; margin-bottom: 9px; font-size: .72rem; color: #786b58; }
.treatment-switch-links-secondary a { min-height: 35px; font-size: .75rem; padding: 7px 12px; }
.treatment-journey-site.treatment-site .service-hero-compact { padding: 35px 0 42px; background: #f8f6f2; }
.treatment-journey-site.treatment-site .service-hero-copy { padding: 5px 0; }
.treatment-journey-site.treatment-site .service-hero-grid { gap: clamp(32px,5vw,70px); grid-template-columns: 1.1fr .9fr; }
.treatment-journey-site.treatment-site .service-hero-compact h1 { font-size: clamp(2.7rem,4.5vw,4.45rem); max-width: 20ch; line-height: 1.06; margin-bottom: 17px; }
.treatment-journey-site.treatment-site .service-hero-compact .service-hero-line { font-size: clamp(1.3rem,2vw,1.85rem); line-height: 1.3; margin-bottom: 14px; max-width: 36ch; }
.treatment-journey-site.treatment-site .service-hero-compact .service-hero-copy > p:last-of-type { font-size: 1rem; line-height: 1.65; max-width: 63ch; }
.treatment-journey-site.treatment-site .service-hero-compact .eyebrow { margin-bottom: 13px; }
.treatment-journey-site.treatment-site .treatment-hero-media { height: clamp(270px,29vw,370px); box-shadow: none; border-radius: 12px; }
.treatment-journey-site.treatment-site .hero-actions { margin-top: 22px; align-items: center; gap: 20px; }
.treatment-journey-site.treatment-site .hero-actions .button { min-width: 185px; }
.treatment-hero-help { display: inline-block; color: #5e503c; font-size: .88rem; text-underline-offset: 4px; }
.treatment-journey-site .service-page-nav { position: sticky; top: var(--journey-header-height); z-index: 25; background: #fffffff5; border-bottom: 1px solid #ddd6ca; backdrop-filter: blur(12px); }
.treatment-journey-site .service-page-nav > .container { display: flex; gap: 29px; overflow-x: auto; padding-block: 7px; scrollbar-width: thin; }
.treatment-journey-site .service-page-nav a { display: inline-flex; align-items: center; flex: none; min-height: 43px; white-space: nowrap; text-decoration: none; font-size: .84rem; }
.treatment-journey-site .service-page-nav a:first-child { color: #765c33; font-weight: 700; }
.treatment-journey-site.treatment-site .treatment-prices { padding: 48px 0 56px; background: #faf9f6; }
.treatment-journey-site.treatment-site .treatment-prices .section-head { gap: 35px; margin-bottom: 25px; align-items: end; }
.treatment-journey-site.treatment-site .treatment-prices .section-head h2 { font-size: clamp(2rem,3vw,2.8rem); max-width: none; line-height: 1.15; margin: 0; }
.treatment-journey-site.treatment-site .treatment-prices .section-head > p { font-size: .94rem; line-height: 1.6; margin-bottom: 0; max-width: 48ch; }
.treatment-option-tabs { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 25px; }
.treatment-option-tabs a { display: inline-flex; align-items: center; min-height: 44px; padding: 11px 21px; border: 1px solid #cfc5b3; background: #fff; border-radius: 6px; color: #342f26; text-decoration: none; font: 700 .86rem/1.3 var(--sans); }
.treatment-option-tabs a[aria-selected="true"] { background: #1c1c19; border-color: #1c1c19; color: #fff; }
.treatment-journey-site [data-treatment-panel][hidden] { display: none !important; }
.treatment-journey-site.treatment-site .treatment-price-list { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; border: 0; align-items: stretch; }
.treatment-journey-site.treatment-site .treatment-price-row { display: flex; flex-direction: column; align-items: stretch; gap: 16px; padding: 25px; margin: 0; background: #fff; border: 1px solid #dfd8cd; border-radius: 11px; min-width: 0; }
.treatment-journey-site.treatment-site .treatment-price-row:hover { border-color: #b59a70; }
.treatment-journey-site.treatment-site .treatment-price-row h3 { font: 400 clamp(1.35rem,1.8vw,1.75rem)/1.22 var(--serif); margin: 0 0 10px; }
.treatment-journey-site.treatment-site .treatment-option-copy p { font-size: .88rem; line-height: 1.6; margin: 0; color: #655f54; }
.treatment-journey-site.treatment-site .treatment-price-value { color: #191917; font: 700 1.85rem/1.2 var(--sans); text-align: left; }
.treatment-journey-site.treatment-site .treatment-single-label { display: inline; font: 400 .74rem/1.4 var(--sans); text-align: left; margin-left: 8px; }
.treatment-journey-site.treatment-site .treatment-row-actions { display: flex; flex-direction: column; align-items: stretch; margin-top: auto; width: 100%; gap: 8px; }
.treatment-journey-site.treatment-site .treatment-row-actions .button { flex: none; min-width: 0; width: 100%; min-height: 44px; padding: 12px 13px; font-size: .78rem; }
.treatment-journey-site.treatment-site .treatment-row-actions .treatment-explore { order: 2; padding-block: 8px; min-height: 40px; border-color: transparent; text-decoration: underline; text-underline-offset: 4px; }
.treatment-journey-site.treatment-site .treatment-course-note { display: flex; flex-direction: column; gap: 4px; margin: 0; padding: 15px; border: 1px solid #d9c7a7; border-radius: 6px; background: #f8f2e6; color: #695638; }
.treatment-journey-site .treatment-course-note > span:first-child { font-size: .74rem; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; }
.treatment-journey-site .treatment-course-note > strong { font-size: 1.6rem; color: #30271b; }
.treatment-journey-site .treatment-course-note .course-saving { font-size: .8rem; color: #675132; }
.treatment-journey-site .course-saving s { margin-right: 8px; color: #8d8170; }
.treatment-journey-site .treatment-course-note small { font-size: .71rem; line-height: 1.4; }
.treatment-journey-site .filler-package-panel { display: block; margin: 0; padding: 0; background: transparent; border: 0; }
.treatment-journey-site .filler-package-panel > div:first-child { max-width: 740px; margin-bottom: 25px; }
.treatment-journey-site .filler-package-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 15px; }
.treatment-journey-site .filler-package-chip { background: #fff; padding: 20px; border: 1px solid #ddd4c5; border-radius: 10px; }
.treatment-journey-site.treatment-site .skin-booster-groups { display: block; }
.treatment-journey-site .skin-booster-group > header { margin-bottom: 22px; padding: 0; max-width: none; }
.treatment-journey-site .skin-booster-group > header h3 { font-size: 1.45rem; margin-bottom: 6px; }
.treatment-journey-site.treatment-site .skin-booster-group .treatment-price-list { grid-template-columns: repeat(2,minmax(0,1fr)); }
.treatment-journey-site .laser-price-group { margin-top: 0; }
.treatment-journey-site .laser-group-heading { margin-bottom: 22px; }
.treatment-journey-site .laser-tariff-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 17px; }
.treatment-journey-site .laser-tariff-card { display: flex; flex-direction: column; gap: 18px; padding: 23px; border: 1px solid #ded5c7; border-radius: 10px; background: #fff; }
.treatment-journey-site .laser-tariff-values { width: 100%; grid-template-columns: repeat(3,minmax(0,1fr)); }
.treatment-journey-site .laser-tariff-action { margin-top: auto; }
.treatment-journey-site .laser-tariff-action .button { width: 100%; }
.treatment-journey-site .laser-consultation-card { margin-top: 28px; }
.treatment-journey-site .mini-treatment-intro { display: grid; grid-template-columns: 1.2fr .8fr; gap: clamp(32px,5vw,70px); align-items: center; }
.treatment-journey-site .mini-top-price { padding: 27px; border: 1px solid #cbb892; border-radius: 12px; background: #fff; }
.treatment-journey-site .mini-top-price > strong { display: block; margin-bottom: 14px; font: 700 2.15rem/1.25 var(--sans); }
.treatment-journey-site .mini-top-price > p:not(.eyebrow) { font-size: .88rem; line-height: 1.6; }
.treatment-journey-site .mini-top-price > .button { width: 100%; margin-top: 15px; }
.treatment-journey-site .mini-top-price > .treatment-hero-help { margin-top: 17px; font-size: .8rem; }
.treatment-journey-site .mini-clinical-note { display: block; }
.treatment-journey-site .mini-clinical-note > div { max-width: 880px; }
.treatment-journey-site .blood-panel-group { margin-top: 0; }

@media (max-width: 1000px) {
  .treatment-journey-site.treatment-site .treatment-price-list { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .treatment-journey-site.treatment-site .treatment-prices .section-head { display: block; }
  .treatment-journey-site.treatment-site .treatment-prices .section-head > p { margin-top: 15px; max-width: 75ch; }
  .treatment-journey-site .filler-package-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .treatment-journey-site.treatment-site .service-hero-compact h1 { font-size: 2.8rem; }
}
@media (max-width: 700px) {
  .treatment-switcher { padding: 15px 0; }
  .treatment-switch-heading { align-items: start; gap: 12px; }
  .treatment-switch-heading .treatment-family-prices { font-size: .7rem; }
  .treatment-switch-heading nav { font-size: .72rem; gap: 6px; }
  .treatment-switch-links { padding-right: 3px; }
  .treatment-switch-links a { font-size: .77rem; padding: 9px 14px; }
  .treatment-journey-site.treatment-site .service-hero-grid, .treatment-journey-site .mini-treatment-intro { grid-template-columns: 1fr; gap: 24px; }
  .treatment-journey-site.treatment-site .service-hero-compact { padding: 27px 0; }
  .treatment-journey-site.treatment-site .service-hero-compact h1 { font-size: clamp(2.15rem,8vw,3rem); }
  .treatment-journey-site.treatment-site .treatment-hero-media { height: 225px; }
  .treatment-journey-site.treatment-site .service-hero-compact .hero-actions .button { width: auto; min-width: 0; }
  .treatment-journey-site .service-page-nav > .container { width: 100%; padding-inline: 18px; gap: 23px; }
  .treatment-journey-site.treatment-site .treatment-prices { padding: 34px 0 40px; }
  .treatment-journey-site.treatment-site .treatment-price-list,
  .treatment-journey-site.treatment-site .skin-booster-group .treatment-price-list,
  .treatment-journey-site .laser-tariff-list { grid-template-columns: 1fr; }
  .treatment-journey-site.treatment-site .treatment-price-row { padding: 21px; gap: 15px; }
  .treatment-option-tabs { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 6px; }
  .treatment-option-tabs a { white-space: nowrap; flex: none; padding: 11px 15px; font-size: .8rem; }
  .treatment-journey-site .filler-package-grid { gap: 10px; }
  .treatment-journey-site .filler-package-chip { padding: 16px 12px; }
  .treatment-journey-site .filler-package-chip .button { min-width: 0; padding-inline: 8px; font-size: .72rem; }
  .treatment-journey-site .laser-tariff-card { padding: 20px; }
  .treatment-journey-site .laser-tariff-values dd { font-size: 1.05rem; }
  .treatment-journey-site .mini-top-price { padding: 23px; }
}
