:root {
  --olive: #8e9769;
  --olive-dark: #596044;
  --olive-deep: #3f4731;
  --olive-soft: #d9dcc9;
  --cream: #f7f4ed;
  --cream-dark: #ece6da;
  --ink: #201713;
  --ink-soft: #655d57;
  --white: #ffffff;
  --container: 1120px;
  --shadow: 0 24px 70px rgba(45, 51, 34, .12);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: "DM Sans", Arial, sans-serif;
  color: var(--ink);
  background: var(--cream);
  line-height: 1.72;
}
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
.wrap { width: min(calc(100% - 40px), var(--container)); margin-inline: auto; }
.treatment-header {
  position: sticky;
  top: 0;
  z-index: 30;
  border-bottom: 1px solid rgba(89,96,68,.12);
  background: rgba(247,244,237,.92);
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
}
.header-inner { min-height: 92px; display:flex; align-items:center; justify-content:space-between; gap:28px; }
.brand { width: min(405px, 48vw); }
.brand img { width:100%; height:auto; }
.header-actions { display:flex; align-items:center; gap:22px; }
.back-link { color: var(--olive-deep); font-size:14px; font-weight:700; }
.button {
  min-height: 48px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 22px;
  border-radius:999px;
  background:var(--olive-dark);
  color:white;
  font-weight:800;
  font-size:14px;
  transition:transform .2s ease, background .2s ease, box-shadow .2s ease;
}
.button:hover { transform:translateY(-2px); background:var(--olive-deep); box-shadow:0 12px 28px rgba(63,71,49,.2); }
.treatment-hero {
  position:relative;
  overflow:hidden;
  padding:105px 0 90px;
  background:
    radial-gradient(circle at 86% 18%, rgba(142,151,105,.19), transparent 25%),
    linear-gradient(180deg,#faf8f3 0%,var(--cream) 100%);
}
.treatment-hero::after {
  content:"";
  position:absolute;
  width:340px;
  height:340px;
  right:-110px;
  bottom:-180px;
  border:1px solid rgba(142,151,105,.25);
  border-radius:50%;
}
.eyebrow {
  display:inline-block;
  margin-bottom:18px;
  color:var(--olive-dark);
  font-size:12px;
  font-weight:800;
  letter-spacing:.17em;
  text-transform:uppercase;
}
h1,h2,h3,p { margin-top:0; }
h1,h2,h3 { font-family:"Playfair Display",Georgia,serif; font-weight:500; letter-spacing:-.03em; }
h1 { max-width:920px; margin-bottom:24px; font-size:clamp(50px,7vw,82px); line-height:1.02; }
.lead { max-width:780px; margin-bottom:34px; color:var(--ink-soft); font-size:20px; }
.hero-tags { display:flex; flex-wrap:wrap; gap:10px; }
.hero-tags span { padding:9px 13px; border:1px solid rgba(89,96,68,.15); border-radius:999px; background:rgba(255,255,255,.55); color:var(--olive-deep); font-size:12px; font-weight:700; }
.content-section { padding:92px 0 110px; background:white; }
.content-grid { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(290px,.75fr); gap:70px; align-items:start; }
.info-block { padding:0 0 40px; margin-bottom:40px; border-bottom:1px solid rgba(89,96,68,.13); }
.info-block:last-child { margin-bottom:0; border-bottom:0; }
.info-block h2 { margin-bottom:17px; font-size:36px; line-height:1.12; }
.info-block p, .info-block li { color:var(--ink-soft); font-size:17px; }
.info-block ul { margin:18px 0 0; padding-left:21px; }
.info-block li + li { margin-top:9px; }
.side-card {
  position:sticky;
  top:125px;
  padding:32px;
  border-radius:28px;
  background:var(--olive-dark);
  color:white;
  box-shadow:var(--shadow);
}
.side-card .eyebrow { color:var(--olive-soft); }
.side-card h3 { margin-bottom:15px; font-size:31px; line-height:1.12; }
.side-card p { color:rgba(255,255,255,.72); }
.side-card .button { width:100%; margin:15px 0 26px; background:var(--cream); color:var(--olive-deep); }
.side-card .button:hover { background:white; }
.clinic-mini { padding-top:21px; border-top:1px solid rgba(255,255,255,.16); color:rgba(255,255,255,.72); font-size:13px; }
.clinic-mini strong { display:block; margin-bottom:5px; color:white; font-size:14px; }
.related { padding:76px 0; background:var(--cream-dark); }
.related-shell { display:flex; align-items:center; justify-content:space-between; gap:30px; }
.related h2 { margin:0; font-size:38px; }
.text-link { color:var(--olive-deep); font-weight:800; border-bottom:1px solid rgba(63,71,49,.35); padding-bottom:3px; }
.treatment-footer { padding:48px 0 28px; background:#f1ede4; border-top:1px solid rgba(89,96,68,.12); }
.footer-top { display:flex; justify-content:space-between; gap:30px; align-items:flex-start; }
.footer-brand img { width:min(360px,60vw); margin-bottom:12px; }
.footer-brand p { color:var(--ink-soft); font-size:14px; }
.footer-links { display:flex; gap:18px; flex-wrap:wrap; color:var(--olive-deep); font-size:13px; font-weight:700; }
.footer-bottom { margin-top:34px; padding-top:18px; border-top:1px solid rgba(89,96,68,.13); color:var(--ink-soft); font-size:12px; }
.whatsapp-fab {
  position:fixed;
  right:20px;
  bottom:20px;
  z-index:25;
  min-height:54px;
  display:inline-flex;
  align-items:center;
  gap:9px;
  padding:0 18px;
  border-radius:999px;
  background:#25d366;
  color:white;
  box-shadow:0 16px 38px rgba(16,133,69,.32);
  font-weight:800;
  font-size:13px;
}
.whatsapp-fab svg { width:23px; fill:white; }
@media (max-width: 820px) {
  .header-inner { min-height:78px; }
  .brand { width:min(330px,62vw); }
  .header-actions .button { display:none; }
  .treatment-hero { padding:78px 0 68px; }
  .content-section { padding:72px 0 85px; }
  .content-grid { grid-template-columns:1fr; gap:45px; }
  .side-card { position:static; }
  .related-shell { align-items:flex-start; flex-direction:column; }
  .footer-top { flex-direction:column; }
}
@media (max-width: 560px) {
  .wrap { width:min(calc(100% - 28px),var(--container)); }
  .brand { width:min(255px,68vw); }
  .back-link { font-size:12px; white-space:nowrap; }
  h1 { font-size:47px; }
  .lead { font-size:17px; }
  .info-block h2 { font-size:31px; }
  .info-block p, .info-block li { font-size:16px; }
  .side-card { padding:27px 23px; }
  .related h2 { font-size:32px; }
  .whatsapp-fab { right:12px; bottom:12px; min-height:52px; padding:0 15px; }
}
