/* Treatment pages: the clinic's editorial palette, concise facts and real results. */
.service-hero { background:#eee5d9; padding:55px 0 60px; }
.service-hero-grid { display:grid; grid-template-columns:1.08fr .92fr; gap:clamp(40px,6vw,90px); align-items:center; }
.service-hero-copy { padding:22px 0; }
.service-hero .breadcrumb { display:inline-block; margin-bottom:38px; color:#695a4b; font-size:.875rem; }
.service-hero .eyebrow { font-size:.8125rem; letter-spacing:.11em; margin-bottom:20px; }
.service-hero h1 { font-size:clamp(50px,5.1vw,77px); line-height:1.02; margin:0 0 24px; overflow-wrap:break-word; }
.service-hero-copy .service-hero-line { font:clamp(26px,2.4vw,35px)/1.25 var(--serif); color:#886244; margin-bottom:22px; }
.service-hero-copy>p:last-of-type { font-size:1.0625rem; color:#685b4f; line-height:1.8; max-width:48ch; }
.service-hero .hero-actions { margin-top:30px; display:flex; flex-wrap:wrap; gap:22px; }
.treatment-site .button { text-transform:none; letter-spacing:.025em; }
.service-hero-image { margin:0; position:relative; background:#e4d7c5; height:510px; overflow:hidden; }
.service-hero-image>img { width:100%; height:100%; object-fit:cover; }
.service-hero-image.treatment-hero-portrait { background:#fff; }
.service-hero-image.treatment-hero-portrait>img { object-fit:contain; object-position:center bottom; }
.service-hero-image figcaption { position:absolute; left:0; right:0; bottom:0; display:flex; justify-content:space-between; gap:18px; padding:16px 22px; color:#fff8ec; background:#29241ec9; font-size:.8125rem; }
.mini-treatment-hero .service-hero-line { max-width:20ch; }
.service-page-nav { background:#fbf8f3; border-bottom:1px solid var(--line); }
.service-page-nav>.container { display:flex; gap:30px; overflow-x:auto; padding-top:19px; padding-bottom:19px; }
.service-page-nav a { flex:none; font-size:.875rem; color:#695a4b; text-decoration:none; border-bottom:1px solid transparent; }
.service-page-nav a:hover { color:#201f1e; border-color:currentColor; }
.treatment-site main [id] { scroll-margin-top:150px; }
.treatment-site .section { padding:85px 0; }
.treatment-site h2 { font-size:clamp(40px,4.2vw,61px); }
.treatment-site .editorial-grid { grid-template-columns:.85fr 1.15fr; gap:85px; }
.treatment-site .editorial-grid p:not(.eyebrow) { font-size:1.0625rem; line-height:1.9; }
.treatment-overview .editorial-grid h2 { margin-bottom:0; }
.treatment-glance { padding:42px 0; background:#eee5d9; color:#332a21; }
.treatment-glance .eyebrow { color:#dbb994; }
.treatment-site .treatment-glance h2 { font-size:36px; margin-bottom:25px; }
.treatment-glance h2 em { color:#d4af88; }
.treatment-facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px; margin:0; }
.treatment-facts>div { padding:18px 21px; background:#fcfaf6; border:1px solid #d9c9b7; }
.treatment-facts dt { display:flex; align-items:center; gap:12px; color:#886244; font-size:.75rem; letter-spacing:.065em; text-transform:uppercase; margin-bottom:11px; }
.treatment-facts dt svg { width:25px; height:25px; flex:none; }
.treatment-facts dd { margin:0; font-size:.9375rem; line-height:1.6; }
.treatment-risk { display:grid; grid-template-columns:155px 1fr; gap:20px; padding-top:22px; margin-top:0; }
.treatment-risk strong { color:#76563b; font-size:.8125rem; font-weight:500; }
.treatment-risk p { margin:0; font-size:.875rem; color:#625446; }
.treatment-facts-note { font-size:.75rem; color:#7a6b5c; margin:13px 0 0; }
.treatment-benefits { background:#fcfaf7; }
.treatment-benefit-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; margin-top:40px; }
.treatment-benefit-grid article { padding-top:22px; border-top:1px solid #bdab96; }
.treatment-benefit-grid span { color:#936b49; font-size:.875rem; }
.treatment-benefit-grid h3 { font-size:clamp(24px,2.3vw,31px); line-height:1.3; margin:16px 0 0; }
.treatment-results { background:#eee6da; }
.treatment-result-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; }
.treatment-result-grid.result-grid-single { max-width:800px; grid-template-columns:1fr; margin:auto; }
.treatment-result-card { margin:0; background:#fff; border:1px solid #d9cbbb; min-width:0; }
.result-card-heading { display:flex; align-items:center; justify-content:space-between; padding:15px 21px; border-bottom:1px solid #e6ddd2; color:#7a6857; font-size:.8125rem; letter-spacing:.06em; }
.result-photo-stage { --result-stage-height:400px; min-width:0; display:grid; place-items:center; background:#fff; height:var(--result-stage-height); }
.result-photo-crop { position:relative; width:min(100%,calc(var(--result-stage-height) * var(--result-aspect))); aspect-ratio:var(--result-ratio); overflow:hidden; }
.result-photo-crop>img { position:absolute; max-width:none; width:var(--result-width); height:auto; left:var(--result-left); top:var(--result-top); }
.result-label { position:absolute; z-index:1; top:10px; padding:5px 9px; background:#faf7f0ed; color:#443527; border:1px solid #cabbac99; font-size:.75rem; letter-spacing:.08em; text-transform:uppercase; line-height:1.2; }
.result-label-before { left:10px; }
.result-side .result-label-after { left:calc(50% + 10px); }
.result-stacked .result-label-after { left:10px; top:calc(50% + 10px); }
.treatment-result-card figcaption { padding:18px 21px; border-top:1px solid #e6ddd2; font:1.5rem/1.3 var(--serif); color:#493a2d; }
.result-note { max-width:450px; margin:22px 0 0; font-size:.8125rem; color:#6d5b4b; }
.result-section-grid { display:grid; grid-template-columns:.95fr 1.05fr; gap:80px; align-items:center; }
.treatment-site .result-section-intro h2 { font-size:clamp(36px,3.5vw,49px); }
.result-section-intro>p:not(.eyebrow):not(.result-note) { color:#6d5b4b; max-width:38ch; }
.result-carousel { width:100%; max-width:600px; margin-left:auto; }
.result-carousel-toolbar { display:flex; align-items:center; justify-content:space-between; padding:14px 0 0; color:#7a6857; font-size:.8125rem; }
.result-carousel-toolbar[hidden] { display:none; }
.result-carousel-toolbar>div { display:flex; gap:8px; }
.result-carousel-toolbar button { border:1px solid #bca58c; background:transparent; color:#6e5038; width:42px; height:40px; font-size:1.2rem; cursor:pointer; }
.result-carousel-toolbar button:hover { background:#d8c5ad; }
.treatment-result-card.is-active { animation:result-reveal .45s ease; }
@keyframes result-reveal { from {opacity:.35} to {opacity:1} }
@media(prefers-reduced-motion:reduce) { .treatment-result-card.is-active { animation:none; } }
.treatment-results-premium { background:#e9dfd2; }
.result-premium-intro { display:grid; grid-template-columns:1fr .72fr; gap:70px; align-items:end; margin-bottom:42px; }
.treatment-site .result-premium-intro h2 { margin:0; font-size:clamp(39px,4.2vw,61px); }
.result-premium-intro>p { margin:0 0 5px; color:#675748; }
.result-carousel-wide { max-width:none; margin:0; }
.treatment-result-premium { overflow:hidden; background:#f8f4ed; border-color:#cdbca9; }
.result-premium-shell { display:grid; grid-template-columns:minmax(0,1fr) 250px; min-height:480px; }
.result-premium-media { position:relative; display:grid; place-items:center; min-width:0; overflow:hidden; background:#f8f4ed; border-right:1px solid #d5c6b5; }
.result-premium-media>img { width:100%; height:480px; object-fit:contain; object-position:center; }
.result-premium-caption { display:flex; flex-direction:column; justify-content:flex-end; min-width:0; padding:34px 27px; border:0; background:#302a24; color:#fff8ee; }
.treatment-result-card .result-premium-caption { border:0; color:#fff8ee; }
.result-premium-caption .eyebrow { margin:0 0 auto; color:#d8b791; font:700 .72rem/1.5 var(--sans); }
.result-premium-caption strong { font:clamp(25px,2.4vw,36px)/1.12 var(--serif); font-weight:400; }
.result-premium-caption>span:not(.eyebrow) { margin-top:12px; color:#d7cabd; font-size:.78rem; letter-spacing:.08em; text-transform:uppercase; }
.result-premium-caption small { margin-top:28px; color:#ad9d8d; font-size:.72rem; letter-spacing:.1em; }
.result-note-wide { max-width:780px; margin-top:20px; }
.treatment-results-posters { background:#e9dfd2; }
.result-poster-carousel { min-width:0; }
.result-poster-viewport { width:100%; overflow:hidden; }
.result-poster-track { display:flex; gap:22px; align-items:flex-start; will-change:transform; transition:transform .68s cubic-bezier(.22,.61,.36,1); }
.result-poster-card { flex:0 0 calc((100% - 44px)/3); margin:0; min-width:0; background:transparent; }
.result-poster-card img { display:block; width:100%; height:auto; object-fit:contain; background:#f9f6f0; box-shadow:0 15px 38px rgba(55,42,30,.12); }
.result-poster-toolbar { padding-top:18px; }
.result-poster-carousel:focus-visible { outline:2px solid #8e6746; outline-offset:8px; }
@media(max-width:900px) {
  .result-poster-card { flex-basis:calc((100% - 18px)/2); }
  .result-poster-track { gap:18px; }
}
@media(max-width:620px) {
  .result-poster-viewport { overflow:visible; }
  .result-poster-carousel { overflow:hidden; }
  .result-poster-card { flex-basis:88%; }
  .result-poster-track { gap:14px; }
  .result-poster-card img { box-shadow:0 10px 28px rgba(55,42,30,.12); }
}
@media(prefers-reduced-motion:reduce) {
  .result-poster-track { transition:none; }
}
.treatment-prices .section-head { align-items:flex-end; }
.treatment-price-list { border-top:1px solid #bfae98; }
.treatment-price-row { display:grid; grid-template-columns:minmax(0,1fr) 135px 165px; gap:30px; align-items:center; padding:21px 0; border-bottom:1px solid #d6cbbb; }
.treatment-price-row h3 { font:clamp(22px,2vw,28px)/1.35 var(--serif); margin:0; }
.treatment-option-copy p { font-size:.875rem; color:#796958; line-height:1.7; max-width:63ch; margin:8px 0 0; }
.treatment-price-value { font:1.65rem/1.2 var(--serif); text-align:right; }
.treatment-price-row .button { padding:14px 18px; min-height:48px; gap:20px; font-size:.875rem; }
.laser-prices .section-head { margin-bottom:22px; }
.laser-price-nav { display:flex; flex-wrap:wrap; gap:9px; margin:0 0 28px; }
.laser-price-nav a { display:inline-flex; align-items:center; gap:14px; padding:11px 16px; border:1px solid #bca891; color:#43362b; background:#fbf8f2; font-size:.8125rem; text-decoration:none; transition:background .2s,color .2s; }
.laser-price-nav a:hover,.laser-price-nav a:focus-visible { color:#fff; background:#43362b; }
.laser-consultation-card { display:grid; grid-template-columns:minmax(0,1fr) auto auto; align-items:center; gap:28px; padding:26px 30px; background:#302a24; color:#fff; }
.laser-consultation-card .eyebrow { margin:0 0 5px; color:#d5b28c; }
.laser-consultation-card h3 { margin:0 0 6px; color:#fff; font:clamp(24px,2.4vw,34px)/1.15 var(--serif); }
.laser-consultation-card p:not(.eyebrow) { max-width:70ch; margin:0; color:#e0d5ca; font-size:.875rem; }
.laser-consultation-card>strong { font:1.8rem/1 var(--serif); white-space:nowrap; }
.laser-consultation-card .button { min-width:170px; justify-content:space-between; }
.laser-price-policy { margin:22px 0 32px; padding:16px 18px; border-left:3px solid #927151; background:#eee5d9; color:#514337; font-size:.875rem; }
.laser-price-group { margin:0 0 42px; scroll-margin-top:130px; }
.laser-group-heading { display:flex; align-items:end; justify-content:space-between; gap:30px; padding:0 0 17px; border-bottom:1px solid #9f8971; }
.laser-group-heading h3 { margin:0; font:clamp(28px,3vw,42px)/1.13 var(--serif); }
.laser-group-heading p { max-width:53ch; margin:0; color:#6d5e50; font-size:.875rem; }
.laser-tariff-card { display:grid; grid-template-columns:minmax(150px,.9fr) minmax(300px,1.5fr) minmax(160px,.65fr); align-items:center; gap:20px; padding:18px 0; border-bottom:1px solid #d6cbbb; scroll-margin-top:130px; }
.laser-tariff-area h4 { margin:0; font:clamp(20px,2vw,25px)/1.25 var(--serif); }
.laser-tariff-area h4 a { color:#3c3026; text-decoration:none; }
.laser-tariff-area h4 a:hover,.laser-tariff-area h4 a:focus-visible { text-decoration:underline; text-underline-offset:4px; }
.laser-tariff-area h4 span { color:#957657; font:1rem/1 var(--sans); }
.laser-tariff-area p { margin:5px 0 0; color:#786959; font-size:.75rem; }
.laser-tariff-values { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; margin:0; }
.laser-tariff-values>div { min-width:0; padding:0 10px; border-left:1px solid #ded2c4; }
.laser-tariff-values dt { color:#786959; font-size:.6875rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }
.laser-tariff-values dd { margin:5px 0 0; color:#382b22; font:clamp(19px,1.8vw,25px)/1.15 var(--serif); white-space:nowrap; }
.laser-tariff-action .button { width:100%; min-height:48px; justify-content:space-between; padding:12px; font-size:.75rem; }
.laser-price-footnote { max-width:84ch; margin:6px 0 0; color:#6d5e50; font-size:.875rem; }
.laser-mini-price-note { margin:0 0 16px; font-size:.75rem; line-height:1.5; }
.treatment-price-divider { padding:32px 0 20px; background:#f0e8dc; border-bottom:1px solid #d6cbbb; }
.treatment-price-divider h3 { font-size:2rem; margin:0 22px 8px; }
.treatment-price-divider p { font-size:.875rem; color:#685b4f; margin:0 22px; }
.treatment-price-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:70px; }
.treatment-quote p { font-size:1rem; }
.treatment-site .booking-guidance { margin:24px 0 0; color:#776553; font-size:.875rem; }
.treatment-journey { background:#f1e9de; }
.treatment-journey-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:40px; margin-top:38px; }
.journey-number { display:block; color:#947150; font:2.8rem/1 var(--serif); padding-top:23px; border-top:1px solid #bcaa94; }
.treatment-journey-grid h3 { margin:25px 0 16px; font-size:1.85rem; line-height:1.2; }
.treatment-journey-grid p { color:#685b4f; line-height:1.8; font-size:1rem; margin:0; }
.treatment-clinician-grid { display:grid; grid-template-columns:190px minmax(0,1fr) auto; gap:38px; align-items:center; }
.treatment-clinician-grid>img { width:190px; height:225px; object-fit:contain; object-position:center bottom; background:#fff; }
.treatment-clinician h2 { margin-bottom:16px; }
.treatment-clinician .eyebrow { margin-bottom:15px; }
.treatment-clinician p { font-size:1rem; color:#685b4f; margin-bottom:15px; }
.treatment-clinician .treatment-clinician-name { font-size:1.1rem; font-weight:500; color:#332a21; margin-bottom:5px; }
.treatment-clinician .treatment-clinician-role { font-size:.875rem; color:#886244; }
.treatment-site .related .service-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.treatment-site .application-grid .treatment-book { margin-top:18px; }
.treatment-site .article-body>.treatment-book,.treatment-site .clinical-note>.treatment-book { display:flex; width:fit-content; margin-top:24px; }
.treatment-site .home-callback { padding:85px 0; }

/* Treatment pages move quickly from context to choice. */
.service-hero-compact { padding:40px 0 45px; }
.service-hero-compact .service-hero-copy { max-width:910px; padding:0; }
.service-hero-compact .breadcrumb { margin-bottom:25px; }
.service-hero-compact h1 { max-width:13ch; font-size:clamp(48px,5.4vw,76px); margin-bottom:17px; }
.service-hero-compact .service-hero-line { max-width:28ch; margin-bottom:13px; }
.service-hero-compact .service-hero-copy>p:last-of-type { max-width:62ch; }
.service-hero-compact .hero-actions { margin-top:23px; }

.treatment-evidence { margin-top:30px; padding:22px 24px; border-left:3px solid #9b7452; background:#f5eee5; }
.treatment-evidence>span { display:block; margin-bottom:8px; color:#80644d; font-size:.6875rem; letter-spacing:.1em; text-transform:uppercase; }
.treatment-evidence-links { display:grid; grid-template-columns:1fr; gap:9px; }
.treatment-evidence-links a { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:4px 10px; align-items:end; min-height:0; padding:16px 18px; color:#33291f; background:#fffaf3; border:1px solid #d4c5b4; font:1.05rem/1.35 var(--serif); text-decoration:none; }
.treatment-evidence-links a:hover { color:#fff; background:#3b3027; border-color:#3b3027; }
.treatment-evidence-links small { grid-column:1/-1; color:#876a51; font:600 .625rem/1.2 var(--sans); letter-spacing:.08em; text-transform:uppercase; }
.treatment-evidence-links a:hover small { color:#d9bc9a; }
.treatment-evidence a b { font-weight:400; }
.treatment-evidence p { margin:10px 0 0!important; color:#77685a!important; font-size:.75rem!important; line-height:1.55!important; }

.skin-booster-groups { display:grid; gap:28px; }
.treatment-option-group { padding:30px 0 9px; border-bottom:1px solid #bda991; }
.treatment-option-group:first-child { padding-top:0; }
.treatment-option-group .eyebrow { margin:0; color:#765539; }
.skin-booster-group { border:1px solid #d2c3b2; background:#fbf8f2; }
.skin-booster-group>header { display:grid; grid-template-columns:.8fr 1.2fr; gap:24px 50px; padding:30px 34px 27px; background:#eee5d9; }
.skin-booster-group>header .eyebrow { grid-column:1/-1; margin:0; }
.skin-booster-group>header h3 { margin:0; font:clamp(31px,3.2vw,44px)/1.12 var(--serif); }
.skin-booster-group>header>p:last-child { margin:0; color:#67584a; line-height:1.7; }
.skin-booster-group .treatment-price-list { padding:0 34px; }

.skin-ageing { color:#f7f0e7; background:#2e2924; }
.skin-ageing-grid { display:grid; grid-template-columns:.74fr 1.26fr; gap:clamp(42px,7vw,105px); align-items:start; }
.skin-ageing .eyebrow { color:#d7b892; }
.skin-ageing h2 { color:#fffaf3; }
.skin-ageing h2 em { color:#d7b892; }
.skin-ageing-intro>p:not(.eyebrow) { color:#d9cec2; line-height:1.8; }
.skin-ageing-caveat { padding-left:17px; border-left:2px solid #b9916a; font-size:.8125rem; }
.skin-ageing-controls { display:grid; gap:18px; margin-top:30px; }
.skin-ageing-controls label { display:grid; gap:10px; color:#f5eee5; font-size:.8125rem; letter-spacing:.04em; }
.skin-ageing-controls output { justify-self:end; margin-top:-28px; color:#d7b892; font:1.45rem/1 var(--serif); }
.skin-ageing-controls input { width:100%; accent-color:#d7b892; }
.skin-ageing-controls select { width:100%; min-height:48px; padding:0 14px; color:#302821; background:#f8f2e9; border:1px solid #aa9076; font:inherit; }
.skin-ageing-panel { padding:34px; color:#392f27; background:#f6f0e7; }
.skin-ageing-stage { display:flex; align-items:baseline; justify-content:space-between; gap:20px; padding-bottom:23px; border-bottom:1px solid #d3c4b3; }
.skin-ageing-stage span { color:#87674b; font:clamp(30px,3.4vw,47px)/1 var(--serif); }
.skin-ageing-stage strong { max-width:28ch; text-align:right; font-size:.8125rem; font-weight:500; }
.skin-ageing-chart { margin:25px 0; padding:18px 18px 14px; background:#fffaf3; border:1px solid #d5c7b7; }
.skin-ageing-chart svg { display:block; width:100%; height:auto; overflow:visible; }
.skin-chart-grid path { fill:none; stroke:#e3d9cc; stroke-width:1; }
.skin-chart-axis path { fill:none; stroke:#8c7a68; stroke-width:1.3; }
.skin-chart-axis text { fill:#756555; font:11px var(--sans); }
.skin-chart-axis .skin-chart-x-label,.skin-chart-axis .skin-chart-y-label { fill:#4f4135; font-weight:600; letter-spacing:.04em; }
.skin-chart-line { fill:none; stroke-width:4; stroke-linecap:round; stroke-linejoin:round; }
.skin-chart-collagen { stroke:#9a6546; }
.skin-chart-elastin { stroke:#446f70; }
.skin-chart-age-line { stroke:#332b24; stroke-width:1.5; stroke-dasharray:4 5; transition:.25s ease; }
.skin-chart-age-label-bg { fill:#332b24; transition:.25s ease; }
.skin-chart-age-label { fill:#fff; font:600 11px var(--sans); transition:.25s ease; }
.skin-chart-dot { stroke:#fffaf3; stroke-width:3; transition:.25s ease; }
.skin-chart-collagen-dot { fill:#9a6546; }
.skin-chart-elastin-dot { fill:#446f70; }
.skin-ageing-chart figcaption { display:flex; flex-wrap:wrap; gap:9px 20px; margin-top:7px; color:#514438; font-size:.75rem; }
.skin-ageing-chart figcaption span { display:inline-flex; align-items:center; gap:7px; }
.skin-chart-key { display:inline-block; width:24px; height:3px; }
.skin-chart-key.collagen { background:#9a6546; }
.skin-chart-key.elastin { background:#446f70; }
.skin-ageing-chart>p { margin:10px 0 0; color:#776859; font-size:.6875rem; line-height:1.55; }
.skin-ageing-result { padding:25px; background:#e9ddce; }
.skin-ageing-result h3 { margin:8px 0 12px; font:clamp(24px,2.5vw,34px)/1.25 var(--serif); }
.skin-ageing-result>p { color:#5f5044; font-size:.8125rem; line-height:1.65; }
.skin-recommendations { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; margin-top:20px; }
.skin-recommendations article { display:flex; flex-direction:column; min-width:0; padding:17px; background:#f8f2e9; border:1px solid #c9b6a1; }
.skin-recommendation-rank { color:#8a694c; font-size:.625rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.skin-recommendations h4 { margin:10px 0 8px; color:#352c25; font:1.15rem/1.2 var(--serif); }
.skin-recommendations p { margin:0 0 15px; color:#67574a; font-size:.72rem; line-height:1.55; }
.skin-recommendations a { margin-top:auto; color:#47372a; font-size:.6875rem; font-weight:600; text-decoration:underline; text-underline-offset:3px; }
.skin-ageing-sources { display:flex; flex-wrap:wrap; gap:8px 17px; margin-top:22px; font-size:.72rem; }
.skin-ageing-sources span { width:100%; color:#87674b; letter-spacing:.08em; text-transform:uppercase; }
.skin-ageing-sources a { color:#4a3a2d; text-decoration:underline; text-underline-offset:3px; }

.juvederm-panel { background:#29241e; color:#fffaf2; }
.juvederm-grid { display:grid; grid-template-columns:.78fr 1.22fr; gap:80px; align-items:start; }
.juvederm-panel .eyebrow { color:#d9b994; }
.juvederm-logo-frame { display:grid; place-items:center; max-width:430px; min-height:215px; margin-top:18px; padding:30px; background:#f5f4f3; border:1px solid #6b5f54; }
.juvederm-logo-frame img { width:min(100%,360px); height:auto; }
.juvederm-panel h2 { color:#fffaf2; }
.juvederm-panel h2 em { color:#d9b994; }
.juvederm-panel p { color:#ded4c8; }
.juvederm-panel .under-link { color:#fffaf2; }
.juvederm-legal { max-width:62ch; margin-top:24px; font-size:.75rem; opacity:.72; }

.treatment-explainer { background:#f0e8dd; }
.treatment-explainer-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; margin-top:38px; background:#cdbdaa; border:1px solid #cdbdaa; }
.treatment-explainer-grid article { padding:32px; background:#fbf8f2; }
.treatment-explainer-grid article>span { display:block; color:#9a7452; font:2.55rem/1 var(--serif); }
.treatment-explainer-grid .eyebrow { margin:26px 0 12px; }
.treatment-explainer-grid h3 { margin:0 0 13px; font:clamp(25px,2.4vw,34px)/1.2 var(--serif); }
.treatment-explainer-grid article>p:last-child { margin:0; color:#67584a; line-height:1.75; }
.treatment-explainer-note { display:grid; grid-template-columns:.45fr 1.55fr; gap:30px; margin-top:22px; padding:25px 30px; color:#f8f1e8; background:#302a24; }
.treatment-explainer-note strong { color:#d8b994; font:1.25rem/1.3 var(--serif); }
.treatment-explainer-note p { margin:0; color:#ded4c9; line-height:1.7; }

.face-map-section { background:#f2ece3; overflow:hidden; }
.face-map-grid { display:grid; grid-template-columns:minmax(0,.9fr) minmax(390px,1.1fr); gap:clamp(42px,7vw,100px); align-items:center; }
.face-map-copy>p:not(.eyebrow):not(.face-map-note) { color:#6b5a4a; max-width:54ch; }
.face-map-current { border-left:2px solid #9c7554; padding:3px 0 3px 18px; margin:24px 0; min-height:82px; }
.face-map-current span { display:block; color:#3e3025; font:1.3rem/1.2 var(--serif); }
.face-map-current p { margin:7px 0 0; color:#6d5c4c; font-size:.875rem; line-height:1.55; }
.face-map-choices { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; }
.face-map-choice { display:grid; grid-template-columns:31px minmax(0,1fr) auto; align-items:center; gap:10px; min-height:48px; padding:8px 10px; border:1px solid #cbbdad; color:#3f3328; background:#f8f4ed; font-size:.8125rem; line-height:1.35; transition:.2s ease; }
.face-map-choice>span { display:grid; place-items:center; width:28px; height:28px; border-radius:50%; color:#755a42; border:1px solid #b69b80; font-size:.6875rem; }
.face-map-choice>b { font-weight:400; }
.face-map-choice:hover,.face-map-choice:focus-visible,.face-map-choice.is-active { color:#fff; background:#302921; border-color:#302921; }
.face-map-choice:hover>span,.face-map-choice:focus-visible>span,.face-map-choice.is-active>span { color:#2f261e; background:#d7b891; border-color:#d7b891; }
.face-map-note { margin:18px 0 0; color:#786858; font-size:.75rem; }
.face-map-figure { position:relative; width:min(100%,590px); margin:0 0 0 auto; background:#ece3d6; overflow:hidden; box-shadow:0 22px 60px #5b46321a; }
.face-map-image { display:block; width:100%; aspect-ratio:4/5; object-fit:cover; transition:opacity .22s ease; }
.face-map-image.is-swapping { opacity:.38; }
.face-region-bracket { position:absolute; z-index:2; left:var(--bx); top:var(--by); width:var(--bw); height:var(--bh); pointer-events:none; filter:drop-shadow(0 1px 1px #fff9); transition:left .25s ease,top .25s ease,width .25s ease,height .25s ease; background:linear-gradient(#171513,#171513) left top/24px 3px no-repeat,linear-gradient(#171513,#171513) left top/3px 24px no-repeat,linear-gradient(#171513,#171513) right top/24px 3px no-repeat,linear-gradient(#171513,#171513) right top/3px 24px no-repeat,linear-gradient(#171513,#171513) left bottom/24px 3px no-repeat,linear-gradient(#171513,#171513) left bottom/3px 24px no-repeat,linear-gradient(#171513,#171513) right bottom/24px 3px no-repeat,linear-gradient(#171513,#171513) right bottom/3px 24px no-repeat; }
.face-map-mode { position:absolute; z-index:2; left:18px; right:18px; bottom:48px; display:flex; justify-content:center; }
.face-map-mode[hidden] { display:none; }
.face-map-mode button { min-height:38px; padding:8px 14px; border:1px solid #7f6a58; color:#3c3026; background:#fffaf2e8; font:600 .75rem/1 var(--sans); cursor:pointer; }
.face-map-mode button+button { border-left:0; }
.face-map-mode button.is-active { color:#fff; background:#352b23; }
.face-map-figure figcaption { position:absolute; left:0; right:0; bottom:0; padding:12px 18px; color:#fff; background:#2e271fd9; font-size:.75rem; letter-spacing:.05em; }

.treatment-price-row-guided { grid-template-columns:minmax(0,1fr) 105px 286px; }
.treatment-row-actions { display:flex; align-items:center; justify-content:flex-end; gap:9px; }
.treatment-row-actions .button { min-width:132px; justify-content:space-between; }
.treatment-row-actions .button-line { color:#33291f; border:1px solid #9a8169; background:transparent; }
.treatment-row-actions .button-line:hover { color:#fff; background:#43362b; }
.filler-package-panel { display:grid; grid-template-columns:.85fr 1.15fr; gap:50px; align-items:center; margin-top:45px; padding:36px; background:#eee5d9; }
.filler-package-panel h3 { margin:8px 0 13px; font:clamp(26px,3vw,39px)/1.2 var(--serif); }
.filler-package-panel h3 em { color:#8a6749; }
.filler-package-panel p:not(.eyebrow) { color:#6d5d4f; font-size:.875rem; }
.filler-package-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.filler-package-chip { display:grid; grid-template-columns:1fr auto; align-items:center; gap:8px; padding:13px 12px; color:#44362b; background:#fbf8f2; border:1px solid #d2c3b2; }
.filler-package-chip span { color:#786552; }
.filler-package-chip .button { grid-column:1/-1; min-height:34px; padding:8px 10px; justify-content:space-between; color:#4a392b; border:1px solid #bba68e; font-size:.72rem; }

.mini-treatment-hero h1 { max-width:17ch; }
.face-map-compact .face-map-grid { grid-template-columns:.85fr 1.15fr; }
.face-map-compact .face-map-choices { grid-template-columns:1fr; }
.face-map-compact .face-map-choice { max-width:430px; }
.mini-explainer-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; background:#d4c7b8; border:1px solid #d4c7b8; }
.mini-explainer-grid article { padding:34px; background:#fbf8f2; }
.mini-explainer-grid article>span { color:#927151; font:2.5rem/1 var(--serif); }
.mini-explainer-grid h2 { margin:17px 0 13px; font-size:clamp(28px,2.6vw,39px); }
.mini-explainer-grid p:last-child { color:#67584b; }
.mini-clinical-note { display:grid; grid-template-columns:minmax(0,1fr) 260px; gap:45px; align-items:center; margin-top:40px; padding:30px 34px; color:#f8f1e8; background:#302a24; }
.mini-clinical-note p { color:#ded4c9; }
.mini-brand-note { font-size:.8125rem; opacity:.85; }
.mini-price { padding-left:32px; border-left:1px solid #7d6b5b; }
.mini-price>span { display:block; color:#d5b28c; font-size:.75rem; text-transform:uppercase; letter-spacing:.09em; }
.mini-price>strong { display:block; margin:8px 0 18px; color:#fff; font:2rem/1.1 var(--serif); }
@media(max-width:1000px) {
  .laser-tariff-card { grid-template-columns:minmax(140px,.8fr) minmax(280px,1.3fr); }
  .laser-tariff-action { grid-column:2; }
  .laser-tariff-action .button { width:auto; }
  .laser-consultation-card { grid-template-columns:minmax(0,1fr) auto; }
  .laser-consultation-card .button { grid-column:1/-1; justify-self:start; }
  .service-hero-grid { gap:35px; grid-template-columns:1.05fr .95fr; }
  .service-hero-image { height:440px; }
  .service-hero h1 { font-size:clamp(45px,5.8vw,62px); }
  .treatment-site .editorial-grid,.treatment-price-grid { gap:40px; }
  .treatment-clinician-grid { grid-template-columns:150px minmax(0,1fr); gap:28px; }
  .treatment-clinician-grid>img { width:150px; }
  .treatment-clinician-grid>a { grid-column:2; }
  .treatment-journey-grid { gap:27px; }
  .face-map-grid { gap:38px; grid-template-columns:minmax(0,1fr) minmax(340px,.85fr); }
  .face-map-choices { grid-template-columns:1fr; }
  .treatment-price-row-guided { grid-template-columns:minmax(0,1fr) 90px 250px; gap:20px; }
  .treatment-row-actions .button { min-width:116px; padding:12px; }
}
@media(max-width:700px) {
  .laser-group-heading { display:block; }
  .laser-group-heading p { margin-top:9px; }
  .laser-consultation-card,.laser-tariff-card { display:grid; grid-template-columns:1fr; gap:16px; }
  .laser-consultation-card { padding:22px; }
  .laser-consultation-card .button,.laser-tariff-action { grid-column:auto; }
  .laser-tariff-card { padding:22px 0; }
  .laser-tariff-values>div { padding:0 7px; }
  .laser-tariff-values>div:first-child { padding-left:0; border-left:0; }
  .laser-tariff-values dt { font-size:.625rem; }
  .laser-tariff-values dd { font-size:clamp(16px,4.6vw,22px); }
  .laser-tariff-action .button { width:100%; }
  .service-hero { padding:32px 0 38px; }
  .service-hero-grid,.treatment-site .editorial-grid,.treatment-price-grid { grid-template-columns:1fr; gap:28px; }
  .service-hero-copy { padding:0; }
  .service-hero .breadcrumb { margin-bottom:28px; }
  .service-hero h1 { font-size:clamp(43px,10vw,62px); }
  .service-hero-image { height:310px; }
  .service-hero-image figcaption { font-size:.75rem; padding:13px 16px; }
  .service-page-nav>.container { gap:22px; }
  .treatment-site .section,.treatment-site .home-callback { padding:60px 0; }
  .treatment-site h2 { font-size:clamp(38px,9.7vw,50px); }
  .treatment-glance { padding:35px 0; }
  .treatment-facts { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .treatment-facts>div { padding:15px 13px; }
  .treatment-facts dt { display:block; letter-spacing:.03em; font-size:.6875rem; }
  .treatment-facts dt svg { display:block; margin-bottom:10px; }
  .treatment-facts dd { font-size:.875rem; }
  .treatment-risk { grid-template-columns:1fr; gap:10px; }
  .treatment-benefit-grid { grid-template-columns:1fr; gap:23px; }
  .treatment-benefit-grid article { display:grid; grid-template-columns:28px minmax(0,1fr); gap:16px; align-items:start; }
  .treatment-benefit-grid h3 { margin:0; font-size:1.65rem; }
  .treatment-result-grid { grid-template-columns:1fr; gap:24px; }
  .result-section-grid { grid-template-columns:1fr; gap:28px; }
  .result-carousel { max-width:500px; margin:auto; }
  .result-photo-stage { --result-stage-height:280px; }
  .result-section-intro h2 { margin-bottom:20px; }
  .result-section-intro .result-note { margin-top:15px; }
  .result-premium-intro { grid-template-columns:1fr; gap:18px; margin-bottom:28px; }
  .result-premium-shell { grid-template-columns:1fr; min-height:0; }
  .result-premium-media { border-right:0; border-bottom:1px solid #d5c6b5; }
  .result-premium-media>img { height:330px; }
  .result-premium-caption { min-height:175px; padding:24px 22px; }
  .result-premium-caption .eyebrow { margin-bottom:28px; }
  .result-premium-caption small { margin-top:18px; }
  .result-label { font-size:.75rem; padding:5px 7px; }
  .treatment-price-row { grid-template-columns:minmax(0,1fr) 110px; gap:15px 18px; padding:22px 0; }
  .treatment-price-row h3 { font-size:1.5rem; }
  .treatment-price-value { font-size:1.55rem; }
  .treatment-price-row .button { grid-column:1/-1; justify-self:start; min-width:150px; }
  .treatment-journey-grid { grid-template-columns:1fr; gap:30px; }
  .treatment-journey-grid h3 { margin:18px 0 13px; }
  .treatment-clinician-grid { grid-template-columns:105px minmax(0,1fr); gap:22px; align-items:start; }
  .treatment-clinician-grid>img { width:105px; height:145px; }
  .treatment-clinician-grid>div { min-width:0; }
  .treatment-clinician h2 { font-size:2.4rem; }
  .treatment-clinician-grid>a { grid-column:1/-1; }
  .treatment-site .related .service-grid { grid-template-columns:1fr; }
  .service-hero-compact { padding:28px 0 34px; }
  .service-hero-compact .breadcrumb { margin-bottom:20px; }
  .service-hero-compact h1 { font-size:clamp(41px,11vw,57px); }
  .treatment-evidence { padding:19px 18px; }
  .treatment-evidence-links { grid-template-columns:1fr; }
  .treatment-evidence-links a { min-height:auto; }
  .skin-booster-group>header { grid-template-columns:1fr; gap:13px; padding:25px 20px; }
  .skin-booster-group .treatment-price-list { padding:0 20px; }
  .skin-ageing-grid { grid-template-columns:1fr; gap:30px; }
  .skin-ageing-panel { padding:24px 19px; }
  .skin-ageing-stage { display:grid; }
  .skin-ageing-stage strong { text-align:left; }
  .skin-ageing-chart { padding:12px 8px 10px; }
  .skin-chart-axis .skin-chart-y-label { font-size:9px; }
  .skin-recommendations { grid-template-columns:1fr; }
  .juvederm-grid,.face-map-grid,.face-map-compact .face-map-grid,.filler-package-panel,.mini-explainer-grid,.mini-clinical-note,.treatment-explainer-grid,.treatment-explainer-note { grid-template-columns:1fr; }
  .juvederm-grid { gap:30px; }
  .face-map-copy { order:2; }
  .face-map-figure { order:1; margin:auto; max-width:480px; }
  .face-map-choices { grid-template-columns:1fr; }
  .face-region-bracket { background-size:18px 3px,3px 18px,18px 3px,3px 18px,18px 3px,3px 18px,18px 3px,3px 18px; }
  .treatment-price-row-guided { grid-template-columns:minmax(0,1fr) auto; }
  .treatment-row-actions { grid-column:1/-1; justify-content:flex-start; flex-wrap:wrap; }
  .treatment-row-actions .button { min-width:135px; }
  .filler-package-panel { gap:25px; margin-top:32px; padding:26px 20px; }
  .filler-package-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .mini-explainer-grid { gap:1px; }
  .mini-explainer-grid article { padding:26px 22px; }
  .mini-clinical-note { gap:24px; padding:27px 22px; }
  .mini-price { padding:22px 0 0; border-left:0; border-top:1px solid #7d6b5b; }
}

/* Compact device presentation for technology-led treatments. */
.treatment-technology{padding-top:58px;padding-bottom:58px;background:#eee6da;border-top:1px solid #d4c6b6;border-bottom:1px solid #d4c6b6}.technology-grid{display:grid;grid-template-columns:minmax(320px,.82fr) minmax(0,1.18fr);gap:clamp(42px,7vw,90px);align-items:center}.technology-grid figure{margin:0;background:#f8f4ed;border:1px solid #cdbca9}.technology-grid figure>img{display:block;width:100%;height:360px;object-fit:contain;background:#f8f4ed}.technology-grid figcaption{padding:12px 15px;border-top:1px solid #d4c6b6;color:#776655;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}.technology-grid h2{font-size:clamp(38px,4.2vw,58px);margin:0 0 20px}.technology-grid>div>p:not(.eyebrow){max-width:62ch;color:#665749;line-height:1.78}.technology-note{padding-left:16px;border-left:2px solid #9c7554;font-size:.8rem!important}.technology-grid .under-link{display:inline-block;margin-top:8px}@media(max-width:760px){.technology-grid{grid-template-columns:1fr;gap:30px}.technology-grid figure>img{height:300px}.treatment-technology{padding-top:45px;padding-bottom:45px}}

/* Expanded device mini guides */
.device-mini-guide{background:#171816;color:#f7f0e6}.device-mini-guide .section-head{align-items:end}.device-mini-guide .section-head h2{color:#fff}.device-mini-guide .section-head>p{color:#cfc3b4}.device-mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#6f62534f;border:1px solid #6f62534f}.device-mini-grid article{position:relative;min-height:290px;padding:40px;background:#20211f}.device-mini-grid article>span{display:block;margin-bottom:60px;color:#b58c68;font:2.35rem/1 var(--serif)}.device-mini-grid h3{margin:0 0 16px;color:#fff;font-size:clamp(30px,3vw,42px);line-height:1.08}.device-mini-grid p{margin:0;color:#cfc5b9;font-size:.94rem;line-height:1.78}.mini-treatment-hero+.treatment-technology{border-top:0}
@media(max-width:700px){.device-mini-grid{grid-template-columns:1fr}.device-mini-grid article{min-height:0;padding:30px 24px}.device-mini-grid article>span{margin-bottom:38px}}

/* NICE-informed body goals planner */
.body-goals{background:#eee5d8;border-top:1px solid #d2c2af;border-bottom:1px solid #d2c2af}.body-planner-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr);gap:1px;background:#c8b7a3;border:1px solid #c8b7a3}.body-bmi-card,.body-bmi-result,.body-area-planner{padding:clamp(26px,4vw,48px);background:#fbf8f2}.body-card-heading{display:flex;gap:18px;align-items:flex-start;margin-bottom:28px}.body-card-heading>span{color:#947151;font:2.45rem/1 var(--serif)}.body-card-heading h3{margin:4px 0 0;font:clamp(30px,3.1vw,43px)/1.05 var(--serif)}.body-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:22px}.body-form-grid label{display:grid;gap:8px;color:#705d4d;font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.body-form-grid input,.body-form-grid select{width:100%;min-height:50px;padding:10px 12px;border:1px solid #c5b39f;background:#fff;color:#28241f;font:400 .9rem var(--sans)}.body-waist-field{grid-column:1/-1}.body-bmi-card .button{border:0;cursor:pointer}.body-form-note{margin:18px 0 0;color:#756655;font-size:.72rem;line-height:1.6}.body-bmi-result{display:flex;flex-direction:column;background:#24231f;color:#f7f0e7}.body-bmi-result>span,.body-area-result>span{color:#c69b72;font-size:.68rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase}.body-bmi-result h3,.body-area-result h3{margin:12px 0 10px;color:inherit;font:clamp(30px,3.1vw,44px)/1.08 var(--serif)}.body-bmi-result>p{color:#d2c7ba;line-height:1.65}.body-bmi-result dl{display:grid;gap:1px;margin:26px 0;background:#71675b55;border:1px solid #71675b55}.body-bmi-result dl>div{display:grid;grid-template-columns:1fr auto;gap:20px;padding:14px;background:#2d2c27}.body-bmi-result dt{color:#baa995;font-size:.72rem}.body-bmi-result dd{margin:0;text-align:right;font-weight:600}.body-bmi-result .under-link{margin-top:auto;color:#f2d6b7}.body-area-planner{grid-column:1/-1}.body-area-options{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}.body-area-options button{display:grid;justify-items:center;gap:12px;min-height:130px;padding:18px 9px;border:1px solid #cdbda9;background:#fff;color:#41372e;cursor:pointer}.body-area-options button:hover,.body-area-options button.is-active{border-color:#7e5f45;background:#25231f;color:#fff}.body-area-options i{display:grid;place-items:center;width:54px;height:54px;border:1px solid currentColor;border-radius:50%;font:normal 1.8rem/1 var(--serif)}.body-area-options span{font-size:.72rem;font-weight:600;text-align:center}.body-area-result{display:grid;grid-template-columns:minmax(180px,.36fr) minmax(0,1fr);gap:8px 34px;margin-top:26px;padding:27px;background:#e8dccd;border-left:3px solid #936e4e}.body-area-result>span,.body-area-result>h3{grid-column:1}.body-area-result>p,.body-area-result>div{grid-column:2}.body-area-result>p{grid-row:1/3;margin:0;color:#625448;line-height:1.7}.body-area-result>div{display:flex;flex-wrap:wrap;gap:8px 17px;margin-top:8px}.body-area-result a{color:#6c4c32;font-size:.78rem;font-weight:700}.body-planner-caveat{grid-column:1/-1;display:grid;grid-template-columns:.35fr 1fr;gap:30px;padding:23px 30px;background:#f7f2e9}.body-planner-caveat strong{font:1.35rem/1.2 var(--serif)}.body-planner-caveat p{margin:0;color:#685a4e;font-size:.78rem;line-height:1.65}.mini-decision{padding-top:0}.mini-decision .mini-clinical-note{margin-top:0}
@media(max-width:900px){.body-area-options{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.body-planner-grid{grid-template-columns:1fr}.body-form-grid{grid-template-columns:1fr}.body-waist-field{grid-column:auto}.body-area-planner,.body-planner-caveat{grid-column:auto}.body-area-options{grid-template-columns:repeat(2,minmax(0,1fr))}.body-area-result,.body-planner-caveat{grid-template-columns:1fr}.body-area-result>*{grid-column:1!important;grid-row:auto!important}.body-bmi-card,.body-bmi-result,.body-area-planner{padding:27px 20px}}
