/* A calmer reading journey: compact fee comparisons and visual treatment facts.
   Scoped to treatment guides; the pricing hub remains unchanged. */
html:has(.treatment-journey-site) { scroll-behavior: auto; }
.treatment-journey-site.treatment-site .treatment-overview .editorial-grid {
  grid-template-columns: .9fr 1.1fr;
  gap: clamp(30px, 5vw, 78px);
  align-items: start;
}
.treatment-journey-site.treatment-site .treatment-overview .editorial-grid h2 {
  max-width: 19ch;
  font-size: clamp(2rem, 3.3vw, 3.15rem);
  line-height: 1.14;
  text-wrap: balance;
}
.treatment-journey-site.treatment-site .treatment-overview .editorial-grid p:not(.eyebrow) {
  line-height: 1.75;
}
.treatment-journey-site.treatment-site .treatment-glance {
  background: #f6f3ed;
  padding: clamp(38px, 5vw, 64px) 0;
  border-color: #e4ddd1;
}
.treatment-journey-site.treatment-site .treatment-glance h2 {
  font-size: clamp(2rem, 3vw, 2.8rem);
  margin-bottom: 24px;
}
.treatment-journey-site.treatment-site .treatment-facts {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  border: 0;
  background: transparent;
}
.treatment-journey-site.treatment-site .treatment-facts > div {
  padding: 22px;
  min-height: 154px;
  background: #fff;
  border: 1px solid #e1d8c9;
  border-radius: 12px;
  box-shadow: 0 3px 12px #29221804;
}
.treatment-journey-site.treatment-site .treatment-facts dt {
  gap: 12px;
  color: #655330;
  font-size: .72rem;
  line-height: 1.4;
  letter-spacing: .055em;
  margin-bottom: 15px;
}
.treatment-journey-site .treatment-fact-icon {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  flex: none;
  background: #f5efdf;
  border: 1px solid #e8dcc2;
  border-radius: 50%;
}
.treatment-journey-site.treatment-site .treatment-fact-icon svg { width: 22px; height: 22px; }
.treatment-journey-site.treatment-site .treatment-facts dd {
  font-size: 1rem;
  line-height: 1.5;
  color: #24221e;
}
.treatment-journey-site.treatment-site .treatment-risk {
  padding: 20px 22px;
  margin-top: 20px;
  border: 1px solid #e1d8c9;
  border-left: 3px solid #b2996c;
  border-radius: 8px;
  background: #ffffff8c;
}

/* Every existing single-session and course link remains individually visible. */
.treatment-journey-site .service-page-nav a:first-child { color: #695a4b; font-weight: 400; }
.treatment-journey-site .service-page-nav a[href="#prices"] { color: #765c33; font-weight: 700; }
.treatment-journey-site.treatment-site .treatment-prices .treatment-price-list {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
  border: 1px solid #ded7cb;
  border-radius: 12px;
  background: #fff;
}
.treatment-journey-site.treatment-site .treatment-prices .treatment-compact-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(250px, .7fr);
  align-items: center;
  column-gap: clamp(20px, 3vw, 38px);
  row-gap: 14px;
  padding: 20px clamp(20px, 2.5vw, 28px);
  border: 0;
  border-bottom: 1px solid #e6e0d7;
  border-radius: 0;
  background: transparent;
}
.treatment-journey-site.treatment-site .treatment-prices .treatment-compact-has-course {
  grid-template-columns: minmax(0, .9fr) minmax(450px, 1.5fr);
}
.treatment-journey-site.treatment-site .treatment-prices .treatment-compact-row:last-child { border-bottom: 0; }
.treatment-journey-site.treatment-site .treatment-prices .treatment-compact-row:hover { background: #fbf9f5; }
.treatment-journey-site.treatment-site .treatment-compact-row > .treatment-option-copy { min-width: 0; }
.treatment-journey-site.treatment-site .treatment-compact-row h3 {
  font: 700 1.05rem/1.4 var(--sans);
  margin: 0 0 5px;
}
.treatment-journey-site.treatment-site .treatment-compact-row .treatment-option-copy p {
  font-size: .88rem;
  line-height: 1.55;
  max-width: 60ch;
  margin-bottom: 0;
}
.treatment-journey-site.treatment-site .treatment-compact-row .treatment-explore {
  padding: 8px 0 0;
  min-height: 32px;
  border: 0;
  background: none;
  justify-content: flex-start;
  color: #71552d;
  font-size: .78rem;
}
.treatment-journey-site .treatment-inline-rates {
  display: grid;
  grid-template-columns: repeat(var(--rate-count), minmax(0, 1fr));
  gap: 0;
  margin: 0;
  min-width: 0;
}
.treatment-journey-site .treatment-inline-rates > div {
  padding: 10px 16px;
  min-width: 0;
  border-left: 1px solid #e4ddd1;
}
.treatment-journey-site .treatment-inline-rates > .treatment-inline-course { background: #f9f5ed; }
.treatment-journey-site .treatment-inline-rates dt {
  font: 600 .75rem/1.4 var(--sans);
  color: #66563c;
}
.treatment-journey-site .treatment-inline-rates dd { margin: 9px 0 0; }
.treatment-journey-site .treatment-inline-rates dd > strong { font: 700 1.4rem/1.3 var(--sans); color: #25221d; }
.treatment-journey-site .treatment-inline-single dd { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.treatment-journey-site .treatment-compact-has-course .treatment-inline-single dd { display: block; }
.treatment-journey-site .treatment-inline-rates .button {
  min-width: 0;
  min-height: 44px;
  padding: 10px 14px;
  font-size: .78rem;
  white-space: normal;
}
.treatment-journey-site .treatment-compact-has-course .treatment-inline-rates > div { display: flex; flex-direction: column; }
.treatment-journey-site .treatment-compact-has-course .treatment-inline-rates dd { display: flex; flex-direction: column; align-items: stretch; gap: 0; flex: 1; }
body.treatment-journey-site #main .treatment-compact-has-course .treatment-inline-rates .button {
  margin-top: auto;
  padding: 9px 0;
  border: 0;
  border-top: 1px solid #cdbc9e;
  border-radius: 0;
  min-height: 40px;
  background: transparent;
  color: #282116;
  width: 100%;
  text-align: left;
  justify-content: space-between;
  font-size: .78rem;
  letter-spacing: 0;
}
.treatment-journey-site .treatment-inline-saving {
  display: block;
  margin: 5px 0 0;
  color: #71552d;
  font: 600 .72rem/1.5 var(--sans);
}
.treatment-journey-site .treatment-inline-saving s { color: #787166; font-weight: 400; margin-right: 5px; }
.treatment-journey-site .treatment-inline-rates .course-booking-link { margin-top: 9px; padding-top: 9px; min-height: 40px; font-size: .78rem; }
.treatment-journey-site .treatment-price-extras { grid-column: 1 / -1; min-width: 0; }
.treatment-journey-site .treatment-pricing-guide {
  display: grid;
  grid-template-columns: 1fr minmax(260px, .65fr);
  align-items: center;
  gap: 24px;
  border: 1px solid #dfd3be;
  background: #f7f2e8;
  border-radius: 10px;
  padding: 20px 24px;
  margin: 0 0 26px;
}
.treatment-journey-site .treatment-pricing-guide > div:only-child { grid-column: 1 / -1; }
.treatment-journey-site .treatment-pricing-guide strong { font: 700 1rem/1.5 var(--sans); }
.treatment-journey-site .treatment-pricing-guide p { font-size: .87rem; line-height: 1.6; margin: 5px 0 0; max-width: 66ch; }
.treatment-journey-site .treatment-pricing-guide .treatment-payment-note {
  margin: 0;
  padding: 0 0 0 24px;
  border: 0;
  border-left: 1px solid #dfd3be;
}
.treatment-journey-site .treatment-pricing-guide .treatment-payment-note img { width: 66px; height: 42px; }
.treatment-journey-site .treatment-pricing-guide .treatment-payment-note > small { font-size: .72rem; }
.treatment-journey-site .filler-package-grid { grid-template-columns: 1fr; gap: 0; border: 1px solid #ded7cb; border-radius: 12px; background: #fff; }
.treatment-journey-site .filler-package-chip { display: grid; grid-template-columns: minmax(0, 1fr) minmax(90px, 140px) minmax(180px, .65fr); gap: 24px; align-items: center; padding: 16px 24px; border: 0; border-bottom: 1px solid #e6e0d7; border-radius: 0; background: transparent; }
.treatment-journey-site .filler-package-chip:last-child { border-bottom: 0; }
.treatment-journey-site .filler-package-chip > strong { font: 700 1.4rem/1.3 var(--sans); }
.treatment-journey-site .filler-package-chip .button { grid-column: auto; margin: 0; min-height: 44px; }

/* Laser uses the same readable rows, with six- and ten-session totals. */
.treatment-journey-site .laser-tariff-list {
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
  border: 1px solid #ded7cb;
  border-radius: 12px;
  background: #fff;
}
.treatment-journey-site .laser-tariff-card {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(450px, 1.5fr);
  align-items: center;
  gap: 24px;
  border: 0;
  border-bottom: 1px solid #e6e0d7;
  border-radius: 0;
  background: transparent;
  padding: 20px 24px;
}
.treatment-journey-site .laser-tariff-card:last-child { border-bottom: 0; }
.treatment-journey-site .laser-tariff-card:hover { background: #fbf9f5; }
.treatment-journey-site .laser-tariff-area h4 { font: 700 1.05rem/1.4 var(--sans); }
.treatment-journey-site .laser-tariff-area p { font-size: .79rem; }
.treatment-journey-site .laser-tariff-values > div { padding: 10px 16px; border-color: #e4ddd1; }
.treatment-journey-site .laser-tariff-values > div:not(:first-child) { background: #f9f5ed; }
.treatment-journey-site .laser-tariff-values dt { font: 600 .75rem/1.4 var(--sans); text-transform: none; letter-spacing: 0; }
.treatment-journey-site .laser-tariff-values dd { font: 700 1.4rem/1.3 var(--sans); margin: 9px 0 0; }
.treatment-journey-site .laser-tariff-values .laser-price-booking { display: block; padding-bottom: 4px; }
.treatment-journey-site .laser-rate-saving { display: block; font: 600 .72rem/1.5 var(--sans); color: #71552d; }

@media (max-width: 1000px) {
  .treatment-journey-site.treatment-site .treatment-prices .treatment-compact-has-course,
  .treatment-journey-site .laser-tariff-card { grid-template-columns: minmax(0, .8fr) minmax(380px, 1.4fr); gap: 18px; }
  .treatment-journey-site .treatment-inline-rates > div,
  .treatment-journey-site .laser-tariff-values > div { padding-inline: 12px; }
}
@media (max-width: 800px) {
  .treatment-journey-site.treatment-site .treatment-overview .editorial-grid { grid-template-columns: 1fr; gap: 24px; }
  .treatment-journey-site.treatment-site .treatment-overview .editorial-grid h2 { max-width: 25ch; }
  .treatment-journey-site.treatment-site .treatment-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .treatment-journey-site.treatment-site .treatment-prices .treatment-compact-row,
  .treatment-journey-site.treatment-site .treatment-prices .treatment-compact-has-course,
  .treatment-journey-site .laser-tariff-card {
    grid-template-columns: minmax(0, 1fr);
    padding: 20px;
    gap: 16px;
  }
  .treatment-journey-site .treatment-inline-rates > div:first-child,
  .treatment-journey-site .laser-tariff-values > div:first-child { padding-left: 0; border-left: 0; }
  .treatment-journey-site .treatment-pricing-guide { grid-template-columns: 1fr; gap: 16px; }
  .treatment-journey-site .treatment-pricing-guide .treatment-payment-note { padding: 14px 0 0; border: 0; border-top: 1px solid #dfd3be; }
  .treatment-journey-site .filler-package-chip { grid-template-columns: 1fr auto; gap: 12px; padding: 18px; }
  .treatment-journey-site .filler-package-chip .button { grid-column: 1 / -1; }
}
@media (max-width: 480px) {
  .treatment-journey-site.treatment-site .treatment-facts { gap: 10px; }
  .treatment-journey-site.treatment-site .treatment-facts > div { padding: 16px 14px; min-height: 0; }
  .treatment-journey-site.treatment-site .treatment-facts dt { align-items: start; flex-direction: column; gap: 10px; }
  .treatment-journey-site.treatment-site .treatment-facts dd { font-size: .9rem; }
  .treatment-journey-site.treatment-site .treatment-risk { display: block; padding: 17px; }
  .treatment-journey-site.treatment-site .treatment-risk p { margin-top: 8px; }
  .treatment-journey-site.treatment-site .treatment-prices .treatment-compact-row,
  .treatment-journey-site .laser-tariff-card { padding: 18px 16px; gap: 14px; }
  .treatment-journey-site .treatment-inline-rates > div,
  .treatment-journey-site .laser-tariff-values > div { padding: 9px 8px; }
  .treatment-journey-site .treatment-inline-rates dt,
  .treatment-journey-site .laser-tariff-values dt { font-size: .68rem; }
  .treatment-journey-site .treatment-inline-rates dd > strong,
  .treatment-journey-site .laser-tariff-values dd { font-size: 1.12rem; }
  .treatment-journey-site .treatment-inline-rates .course-booking-link,
  .treatment-journey-site .laser-price-booking > small { font-size: .7rem; gap: 4px; }
  body.treatment-journey-site #main .treatment-compact-has-course .treatment-inline-rates .button { font-size: .7rem; gap: 4px; }
  .treatment-journey-site .treatment-inline-saving,
  .treatment-journey-site .laser-rate-saving { font-size: .66rem; }
  .treatment-journey-site .treatment-pricing-guide { padding: 18px; }
}
