/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/cormorant-garamond-4db21dbf.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(fonts/cormorant-garamond-4db21dbf.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/cormorant-garamond-4db21dbf.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/cormorant-garamond-abcaa8b4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonts/cormorant-garamond-abcaa8b4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/cormorant-garamond-abcaa8b4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/cormorant-garamond-abcaa8b4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonts/barlow-condensed-49f2730e.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/barlow-condensed-5048d744.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/barlow-condensed-e7616768.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(fonts/barlow-condensed-00a5e45f.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/dm-sans-002a94d0.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonts/dm-sans-002a94d0.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/dm-sans-002a94d0.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/dm-sans-002a94d0.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
:root { --ink:#1c2b26; --ink-2:#263b34; --deep:#152b25; --warm:#faf8f3; --cream:#f0ede5; --line:#dddcd4; --gold:#e8bf7a; --gold-deep:#cfaa6c; --muted:#687169; --white:#fff; --serif:Georgia,serif; --heading:'Barlow Condensed','Arial Narrow',Impact,sans-serif; --body:'DM Sans',Arial,Helvetica,sans-serif; }
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:var(--warm);color:var(--ink);font-family:var(--body);line-height:1.55;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit}button,input,select{font:inherit}button{cursor:pointer}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{line-height:1}h1,h2,h3{font-family:var(--heading);text-transform:uppercase;letter-spacing:-.012em}h2{font-size:clamp(2.9rem,6vw,5.2rem);font-weight:700;letter-spacing:-.02em}h3{font-size:clamp(1.7rem,2.8vw,2.5rem)}p{margin-bottom:1rem}.container{width:min(1200px,calc(100% - 80px));margin-inline:auto}.eyebrow{font-size:.73rem;line-height:1.4;font-weight:700;letter-spacing:.18em;text-transform:uppercase;display:flex;align-items:center;gap:11px}.eyebrow:before{content:'';height:2px;width:27px;background:currentColor;display:inline-block}.light{color:#fff}.muted{color:var(--muted)}.center{text-align:center}.flex-between{display:flex;align-items:center;justify-content:space-between;gap:24px}.hidden{display:none!important}
.btn{appearance:none;border:0;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;gap:26px;text-transform:uppercase;font-size:.86rem;font-weight:800;line-height:1.2;letter-spacing:.035em;padding:19px 24px;min-height:60px;transition:transform .2s,background .2s,color .2s;white-space:normal;text-align:center;border-radius:0}.btn:hover{transform:translateY(-2px)}.btn:focus-visible,.pill:focus-visible,.faq-item summary:focus-visible{outline:3px solid #a57b32;outline-offset:4px}.btn-gold{background:var(--gold);color:var(--ink)}.btn-gold:hover{background:#f4d294}.btn-dark{background:var(--deep);color:white}.btn-dark:hover{background:#345043}.btn-outline{border:1px solid #c3c6bf;background:transparent;color:var(--ink)}.btn-outline:hover{background:#e9e9e0}.btn-arrow{font-size:1.25rem;line-height:1}.btn-full{width:100%}.inline-link{text-decoration:underline;text-underline-offset:3px}.money{font-family:var(--heading);font-weight:700;letter-spacing:-.02em}
/* logo */
.site-header{position:relative;z-index:5}.site-header.dark{background:var(--deep);color:#fff;border-bottom:1px solid rgba(255,255,255,.16)}.site-header.light-head{background:#fbfaf6;color:var(--ink);border-bottom:1px solid var(--line)}.header-inner{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:20px}.logo{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;min-width:154px;height:54px}.logo img{display:block;max-width:172px;max-height:52px;width:auto;height:auto;object-fit:contain}.site-header.light-head .logo img{filter:brightness(0) saturate(100%)}.logo-fallback{display:none;font-family:var(--serif);font-style:italic;font-size:2rem;letter-spacing:-.06em;line-height:.73}.logo-fallback small{font:700 .5rem var(--body);letter-spacing:.35em;font-style:normal;display:block;text-align:center;margin-top:9px}.header-right{display:flex;align-items:center;gap:24px}.header-city{font-size:.73rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;opacity:.75}.header-phone{font-weight:700;font-size:.88rem;text-decoration:none;white-space:nowrap}.header-cta{background:var(--gold);padding:12px 19px;color:var(--ink);text-decoration:none;text-transform:uppercase;letter-spacing:.04em;font-size:.74rem;font-weight:800}.header-cta:hover{background:#f2ce94}
/* hero */
.hero{background:var(--deep);color:white;position:relative;overflow:hidden;padding:56px 0 80px}.hero:after{content:' ';position:absolute;left:0;bottom:0;width:100%;height:17px;background:repeating-linear-gradient(90deg,#c9ac7a 0 3px,transparent 3px 11px);opacity:.13}.hero-layout{display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:5.4%;position:relative;z-index:1}.hero-copy{padding:12px 0}.hero .eyebrow{color:var(--gold)}.hero h1{font-size:clamp(4.4rem,7.8vw,8.25rem);font-weight:800;line-height:.83;letter-spacing:-.035em;margin:29px 0 22px}.hero h1 .smaller{display:block;font-size:.56em;letter-spacing:-.012em;margin-bottom:.17em}.hero h1 .accent{display:block;color:var(--gold)}.hero-offer{display:inline-flex;align-items:center;gap:10px;background:rgba(236,196,125,.12);color:#fae3b6;border:1px solid rgba(236,196,125,.42);font-size:clamp(.85rem,1.3vw,1.1rem);text-transform:uppercase;letter-spacing:.07em;font-weight:800;padding:11px 16px;margin-bottom:19px}.hero-text{max-width:500px;color:#e4e9e4;font-size:1.07rem;line-height:1.65;margin-bottom:26px}.hero-price-row{display:flex;align-items:flex-end;gap:17px;margin-bottom:21px;flex-wrap:wrap}.hero-price{font-size:clamp(4rem,5.7vw,6.3rem);line-height:.83;color:white}.price-meta{display:flex;flex-direction:column;gap:4px;justify-content:flex-end;padding-bottom:5px;font-size:.84rem}.price-meta s{color:#b6c3b9;font-weight:600;font-size:1.05rem}.saving{color:var(--gold);text-transform:uppercase;font-size:.78rem;font-weight:800;letter-spacing:.05em}.hero-button{min-width:330px}.fineprint{color:#aebcb1;font-size:.75rem;line-height:1.5;margin:12px 0 0}.hero-trust{margin-top:32px;display:flex;flex-wrap:wrap;gap:10px 23px;color:#d9e3d9;font-size:.75rem;font-weight:600}.hero-trust span:before{content:'✓';color:var(--gold);font-weight:800;margin-right:8px}.hero-visual{align-self:stretch;min-height:630px;position:relative;background:#53645a;overflow:hidden}.hero-visual img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:68% center;filter:saturate(.82) contrast(1.03)}.hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 49%,rgba(7,22,17,.64) 100%);pointer-events:none}.photo-fallback{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:42px;text-align:center;background:radial-gradient(ellipse at 60% 40%,#516c5d 0,#244238 40%,#142b24 85%);color:#f6f3e9}.photo-fallback .wave{font-size:8rem;line-height:1;font-family:var(--serif);font-style:italic;opacity:.2}.photo-fallback strong{font-family:var(--heading);font-size:4rem;text-transform:uppercase;letter-spacing:.06em;line-height:.9}.photo-fallback small{margin-top:20px;text-transform:uppercase;letter-spacing:.18em;font-weight:700;font-size:.69rem}.hero-photo-mark{position:absolute;z-index:2;bottom:28px;left:30px;right:30px;display:flex;align-items:end;justify-content:space-between;gap:10px}.mark-left{font-family:var(--heading);font-size:2.2rem;font-weight:700;text-transform:uppercase;letter-spacing:.02em;line-height:.94}.mark-caption{font-size:.65rem;letter-spacing:.13em;text-transform:uppercase;text-align:right;line-height:1.55;color:#f4e6ce;font-weight:700}
/* section shared */
.section{padding:92px 0}.section-tight{padding:67px 0}.section-label{font-size:.7rem;letter-spacing:.17em;text-transform:uppercase;font-weight:800;color:#94744e;display:flex;align-items:center;gap:12px;margin-bottom:22px}.section-label:before{content:'';width:27px;height:2px;background:#b69b77}.section-title{margin-bottom:23px}.section-lede{max-width:690px;font-size:1.03rem;line-height:1.7;color:#58635a}.cta-inline{margin-top:28px}.bg-white{background:#fff}.bg-cream{background:var(--cream)}.bg-dark{background:var(--deep);color:#fff}.line{width:100%;height:1px;background:var(--line)}
/* results */
.results-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:7%;align-items:center}.results-copy h2{font-size:clamp(3.1rem,5.8vw,5.4rem)}.results-copy strong{color:var(--ink)}.result-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.result-panel{background:#d1d5ce;overflow:hidden;position:relative;aspect-ratio: .87}.result-panel img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center}.result-tag{position:absolute;z-index:2;bottom:10px;left:10px;display:inline-block;padding:8px 14px;background:var(--deep);color:white;font-size:.72rem;letter-spacing:.15em;font-weight:700}.result-panel[data-result=after] .result-tag{background:var(--gold);color:var(--ink)}.result-fallback{position:absolute;inset:0;background:linear-gradient(135deg,#aebcb0,#718878);display:flex;align-items:center;justify-content:center;color:#fff;font-family:var(--heading);text-transform:uppercase;font-size:2.4rem;padding:30px;text-align:center}.result-panel img:not([hidden]) + .result-fallback{display:none}.results-foot{font-size:.72rem;color:#828980;line-height:1.55;margin:14px 0 0;text-align:right}.proof-callout{margin-top:25px;border-top:1px solid var(--line);padding-top:16px;color:var(--muted);font-size:.8rem}.proof-callout strong{color:var(--ink)}
/* three concerns */
.concerns{background:#efebe2;border-block:1px solid #e1ddd4}.concern-intro{display:grid;grid-template-columns: .95fr 1.05fr;gap:9%;align-items:end}.concern-intro h2{font-size:clamp(3rem,5.5vw,5.3rem);margin:0}.concern-intro p{font-size:1.03rem;color:#536157;margin-bottom:7px}.concern-list{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:48px;border-top:1px solid #cecfc6}.concern-item{padding:28px 26px 10px 0;border-right:1px solid #d1d0c7}.concern-item:not(:first-child){padding-left:26px}.concern-item:last-child{border:0}.concern-item .index{font-family:var(--heading);color:#ae9776;font-size:1.8rem;font-weight:700}.concern-item h3{font-size:1.75rem;letter-spacing:0;margin:12px 0}.concern-item p{color:#627066;font-size:.9rem;max-width:260px}
/* treatment */
.treatment-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:8%;align-items:center}.treatment-card{height:525px;position:relative;background:#233d36;overflow:hidden}.treatment-card img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center;inset:0}.treatment-card:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(14,33,25,.8))}.treatment-card figcaption{position:absolute;z-index:2;bottom:22px;left:25px;right:25px;font-size:.75rem;color:#fff;font-weight:600}.treatment-card .photo-fallback{z-index:0}.treatment-copy h2{margin-bottom:20px}.treatment-points{border-top:1px solid var(--line);margin:25px 0 0;padding:0;list-style:none}.treatment-points li{display:flex;gap:14px;align-items:flex-start;border-bottom:1px solid var(--line);padding:14px 0;font-size:.88rem}.treatment-points li strong{display:block;color:var(--ink);font-size:.9rem;margin-bottom:4px}.treatment-points .check{color:#69876a;font-size:1.1rem;font-weight:900}
/* promo */
.promo{background:#1c332b;padding:85px 0;color:#fff;overflow:hidden}.promo-grid{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}.promo h2{font-size:clamp(3.8rem,6vw,6.4rem);margin:20px 0}.promo h2 em{font-style:normal;color:var(--gold)}.promo-copy{color:#bdcbc1;max-width:380px}.promo-card{background:#f8f6f1;color:var(--ink);padding:37px 42px;box-shadow:16px 16px 0 rgba(236,192,123,.15)}.promo-card .super{font-size:.7rem;letter-spacing:.2em;font-weight:800;text-transform:uppercase;color:#9b805b;padding-bottom:14px;border-bottom:1px solid #d7d4cb}.promo-card .session-main{font-family:var(--heading);font-weight:800;font-size:4.7rem;line-height:.9;text-transform:uppercase;margin:23px 0 10px}.promo-card .session-main span{color:#aa8651}.promo-card .session-detail{font-size:.86rem;color:#656e67}.promo-card .card-rule{border-top:1px solid #dcdad3;margin:23px 0}.promo-card .small-price{text-transform:uppercase;letter-spacing:.11em;font-size:.66rem;font-weight:700;color:#737b70}.promo-card .card-price-row{display:flex;justify-content:space-between;gap:10px;align-items:end}.promo-card .discount-price{font-size:5.8rem;line-height:1}.promo-card .regular-price{color:#89918a;font-size:1.13rem;text-decoration:line-through;font-weight:700}.promo-card .save{display:inline-block;margin:16px 0 23px;background:#e9dcc2;color:#665035;font-size:.7rem;padding:7px 11px;letter-spacing:.13em;text-transform:uppercase;font-weight:800}
/* process */
.process-head{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:end}.process-head h2{margin:0}.process-head p{color:#566157;margin-bottom:10px}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:48px}.process-item{border-top:2px solid var(--ink);padding:18px 4px 0 0}.process-item .number{font-family:var(--heading);color:#a78759;font-size:3.5rem;line-height:1}.process-item h3{font-size:2rem;margin:20px 0 12px}.process-item p{font-size:.9rem;color:#647067;line-height:1.7}
/* testimonials */
.review-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.review-card{padding:35px 39px;background:#fff;border:1px solid #e4e2da;display:flex;flex-direction:column;justify-content:space-between;min-height:260px}.review-card blockquote{font-family:var(--serif);font-size:1.58rem;line-height:1.35;letter-spacing:-.015em;margin:0 0 28px}.review-person{font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em}.review-source{display:block;font-weight:400;text-transform:none;letter-spacing:0;color:#7a857b;font-size:.73rem;margin-top:7px}
/* FAQ */
.faq-layout{display:grid;grid-template-columns:.67fr 1.33fr;gap:10%}.faq-intro h2{margin-bottom:22px}.faq-wrap{border-top:1px solid #d2d5cc}.faq-item{border-bottom:1px solid #d2d5cc}.faq-item summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 0;font-weight:800;font-size:1rem}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:'+';font-size:1.4rem;font-weight:400;color:#8d7956}.faq-item[open] summary:after{content:'−'}.faq-item p{font-size:.87rem;color:#5f6b62;line-height:1.75;max-width:660px;padding:0 25px 16px 0}
/* final offer */
.final-cta{background:var(--gold);color:var(--ink);padding:72px 0}.final-grid{display:flex;align-items:center;justify-content:space-between;gap:35px}.final-cta h2{font-size:clamp(3.2rem,5.4vw,5.6rem);margin:9px 0 14px}.final-cta .over{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;font-weight:800}.final-cta p{margin:0;color:#574a39}.final-cta .btn-dark{min-width:320px}
/* footer */
footer{background:#0f211b;color:#b1c0b5;padding:46px 0 70px}.footer-grid{display:grid;grid-template-columns:1.25fr 1fr .8fr;gap:40px}.footer-brand{font-family:var(--serif);font-style:italic;font-size:2rem;color:white;line-height:1}.footer-brand small{font:700 .53rem var(--body);letter-spacing:.3em;display:block;margin:10px 0 23px}.footer-small{font-size:.73rem;color:#a4b1a6;line-height:1.7}.footer-heading{color:#dfc89f;font-size:.7rem;font-weight:800;letter-spacing:.17em;text-transform:uppercase;margin-bottom:15px}.footer-links{display:flex;flex-direction:column;align-items:start;gap:9px}.footer-links a{font-size:.8rem;text-decoration:underline;text-underline-offset:3px}.footer-bottom{border-top:1px solid #30463a;margin-top:32px;padding-top:17px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:.68rem;color:#90a197}
/* mobile bottom */
.sticky-offer{position:fixed;left:0;right:0;bottom:0;z-index:20;padding:10px 14px;background:#fff;box-shadow:0 -6px 30px rgba(0,0,0,.16);display:none;align-items:center;justify-content:space-between;gap:12px}.sticky-copy{font-size:.66rem;text-transform:uppercase;font-weight:800;letter-spacing:.05em}.sticky-copy strong{display:block;font-family:var(--heading);font-size:1.7rem;line-height:1}.sticky-offer .btn{padding:12px 17px;min-height:46px;font-size:.72rem}
/* schedule / confirmation */
.sub-hero{background:#f7f5ee;padding:55px 0 42px}.progress-row{display:flex;gap:8px;align-items:center;justify-content:center;color:#69736a;margin-bottom:30px}.progress-row .prog{font-size:.69rem;text-transform:uppercase;font-weight:800;letter-spacing:.15em;padding:9px 13px;border:1px solid #cdd2c8}.progress-row .prog.active{background:var(--deep);border-color:var(--deep);color:white}.progress-row .progress-line{height:1px;width:27px;background:#b4bdb2}.sub-hero h1{font-size:clamp(3.25rem,6.8vw,6rem);max-width:800px;text-align:center;margin:0 auto 19px}.sub-hero .sub-copy{text-align:center;font-size:1.02rem;max-width:620px;margin:0 auto;color:#68716b;line-height:1.7}.schedule-layout{display:grid;grid-template-columns:1.3fr .7fr;gap:32px;align-items:start;margin-top:0}.schedule-main{background:white;border:1px solid #e4e2da;padding:37px 42px}.schedule-aside{background:#203930;color:white;padding:33px;position:sticky;top:20px}.schedule-aside .aside-top{color:#d3b684;text-transform:uppercase;font-size:.68rem;letter-spacing:.16em;font-weight:800}.schedule-aside h2{font-size:3rem;margin:19px 0 13px}.schedule-aside .aside-price{font-size:5rem;line-height:1;color:white}.schedule-aside .aside-strike{color:#b3c2b9;text-decoration:line-through;font-size:.86rem}.schedule-aside .aside-saving{font-size:.72rem;color:#e5c78d;text-transform:uppercase;letter-spacing:.1em;font-weight:800;margin-top:13px}.schedule-aside hr{border:0;border-top:1px solid #52665b;margin:25px 0}.schedule-aside .aside-note{font-size:.8rem;line-height:1.7;color:#d5e1d7}.schedule-main h2{font-size:2.5rem;letter-spacing:-.01em;margin:0 0 8px}.schedule-main .small-lede{font-size:.9rem;color:#737b74;margin-bottom:26px;line-height:1.7}.field-label{display:block;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.09em;margin-bottom:11px}.pill-list{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:27px}.pill{border:1px solid #cdd4cd;background:#fff;padding:10px 15px;font-size:.79rem;font-weight:700;border-radius:100px;cursor:pointer;transition:background .2s,border-color .2s}.pill[aria-pressed=true]{background:var(--deep);border-color:var(--deep);color:#fff}.calendar-box{background:#f7f8f5;min-height:340px;border:1px solid #dce1da;overflow:hidden}.calendar-placeholder{min-height:340px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;text-align:center}.calendar-graphic{width:62px;height:62px;border:2px solid #b7c9b8;border-radius:6px;position:relative;margin-bottom:19px;color:#728778;display:flex;justify-content:center;align-items:center;font-family:var(--heading);font-size:2.3rem}.calendar-graphic:before{content:'';width:100%;height:13px;background:#b7c9b8;position:absolute;top:0;left:0}.calendar-placeholder h3{font-size:2rem;margin-bottom:8px}.calendar-placeholder p{max-width:390px;font-size:.83rem;color:#68736a;line-height:1.7}.calendar-placeholder .btn{margin-top:12px}.calendar-frame{width:100%;min-height:700px;border:0;background:white}.booking-note{padding-top:18px;color:#6f7a71;font-size:.75rem;line-height:1.7}.privacy-note{font-size:.74rem;color:#788079;line-height:1.65;border-top:1px solid #e3e5e0;margin-top:30px;padding-top:15px}.location-strip{margin:34px 0 80px;padding:25px 35px;background:#eaece6;display:flex;align-items:center;justify-content:space-between;gap:25px}.location-strip strong{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;margin-bottom:7px}.location-strip p{font-size:.83rem;color:#566158;margin:0}.location-strip a{font-size:.81rem;font-weight:800;text-decoration:underline;text-underline-offset:3px}
/* thank you */
.confirm-page{background:#f8f7f1;min-height:70vh;padding:67px 0 100px}.confirm-card{max-width:810px;margin:0 auto;background:white;padding:46px;border:1px solid #e0e2db}.confirm-icon{width:55px;height:55px;border:2px solid #71907b;color:#547761;border-radius:50%;display:flex;justify-content:center;align-items:center;font-size:1.7rem;font-weight:700;margin-bottom:21px}.confirm-card h1{font-size:clamp(3.1rem,6.5vw,5.2rem);margin:0 0 18px}.confirm-card .lead{font-size:1rem;color:#657267;line-height:1.7;max-width:620px}.details-box{background:#f3f3ed;border:1px solid #e0e2d9;padding:25px;margin-top:30px}.details-box h2{font-size:2.2rem;margin:0 0 18px}.detail-row{display:grid;grid-template-columns:145px 1fr;gap:10px;padding:10px 0;border-top:1px solid #dcdfd6;font-size:.88rem}.detail-row .label{color:#7e887e}.detail-row .value{font-weight:700}.detail-actions{display:flex;gap:11px;flex-wrap:wrap;margin-top:23px}.detail-actions .btn{min-height:50px;padding:14px 21px;font-size:.73rem}.what-next{margin:34px 0 0;border-top:1px solid #dfe2da;padding-top:29px}.what-next h2{font-size:2.3rem}.next-list{margin:17px 0 0;padding:0;list-style:none}.next-list li{display:flex;gap:15px;margin-bottom:15px;font-size:.85rem;color:#58665b}.next-list .num{color:#ad874e;font-weight:800}.confirm-offer{margin-top:40px;border-top:4px solid var(--gold);background:#efece4;padding:22px 25px;display:flex;align-items:center;justify-content:space-between;gap:18px}.confirm-offer .right-money{font-family:var(--heading);font-size:3.25rem;line-height:1}.confirm-offer .tiny{font-size:.68rem;color:#7c8579;letter-spacing:.09em;text-transform:uppercase;font-weight:800}.confirm-offer strong{font-size:.94rem}.preview-banner{padding:12px 20px;background:#fff2d3;border-bottom:1px solid #e0bd67;text-align:center;font-size:.78rem;color:#694c13}
/* media */
@media(max-width:1050px){.hero-layout{gap:3%}.hero-visual{min-height:570px}.hero h1{font-size:clamp(4.1rem,8vw,7rem)}.header-city{display:none}.container{width:min(1200px,calc(100% - 50px))}.promo-card{padding:29px}.promo-card .session-main{font-size:3.9rem}.discount-price{font-size:5rem!important}}
@media(max-width:780px){.container{width:calc(100% - 34px)}.header-inner{min-height:68px}.site-header .logo{min-width:120px;height:50px}.logo img{max-height:45px;max-width:140px}.header-phone{font-size:.76rem}.header-cta{display:none}.hero{padding:24px 0 48px}.hero-layout{display:flex;flex-direction:column;align-items:stretch;gap:28px}.hero-copy{padding:0}.hero h1{font-size:clamp(4.3rem,13vw,7.1rem);margin:17px 0 20px}.hero-offer{font-size:.82rem;padding:10px 12px;margin-bottom:14px}.hero-text{font-size:.96rem;line-height:1.6;margin-bottom:19px}.hero-price{font-size:5.1rem}.hero-button{width:100%;min-width:0}.hero-visual{min-height:0;height:470px;width:100%}.hero-trust{margin-top:23px;font-size:.7rem}.hero-photo-mark{bottom:20px;left:20px;right:20px}.section{padding:64px 0}.section-tight{padding:52px 0}.results-grid,.treatment-grid,.promo-grid,.faq-layout,.schedule-layout{grid-template-columns:1fr;gap:26px}.results-copy{max-width:680px}.results-copy h2{margin-bottom:15px}.result-panel{aspect-ratio: .88}.results-foot{text-align:left}.concern-intro,.process-head{grid-template-columns:1fr;gap:14px}.concern-list{margin-top:30px}.treatment-card{height:390px;order:-1}.promo{padding:62px 0}.promo-card{box-shadow:none}.process-grid{gap:16px}.review-grid{gap:12px}.review-card{padding:25px;min-height:235px}.faq-layout{gap:10px}.final-grid{display:block}.final-cta .btn{margin-top:26px}.footer-grid{grid-template-columns:1fr 1fr;gap:26px}.footer-grid>div:first-child{grid-column:span 2}.sticky-offer{display:flex;transform:translateY(110%);transition:transform .25s}.sticky-offer.visible{transform:translateY(0)}body{padding-bottom:0}.schedule-aside{position:static;order:-1}.location-strip{margin-top:22px}.confirm-page{padding:34px 0 65px}}
@media(max-width:540px){h2{font-size:clamp(2.7rem,12vw,4rem)}.hero{padding-bottom:30px}.hero .eyebrow{font-size:.66rem}.hero h1{font-size:clamp(3.8rem,15vw,5.9rem)}.hero-text{font-size:.9rem}.hero-price{font-size:4.55rem}.hero-price-row{gap:12px}.price-meta{font-size:.75rem}.hero-visual{height:355px}.hero-photo-mark .mark-left{font-size:1.8rem}.hero-photo-mark .mark-caption{font-size:.55rem}.result-photo-grid{gap:6px}.result-tag{left:6px;bottom:6px;font-size:.56rem;padding:6px 8px}.results-foot{font-size:.69rem}.concern-list{grid-template-columns:1fr;gap:0}.concern-item{padding:17px 0 8px!important;border-right:0;border-bottom:1px solid #d1d0c7!important}.concern-item:last-child{border-bottom:0!important}.concern-item h3{margin:2px 0 7px}.concern-item .index{font-size:1.5rem}.concern-item p{margin-bottom:7px;max-width:100%}.treatment-card{height:290px}.treatment-grid{gap:27px}.promo-card{padding:23px}.promo-card .session-main{font-size:3.85rem}.promo-card .discount-price{font-size:4.5rem!important}.process-grid{grid-template-columns:1fr;gap:12px;margin-top:26px}.process-item{display:grid;grid-template-columns:65px 1fr;gap:0 10px;padding:14px 0 5px}.process-item .number{grid-row:span 2;font-size:3.1rem}.process-item h3{margin:0 0 5px;font-size:1.6rem}.process-item p{margin:0 0 8px}.review-grid{grid-template-columns:1fr}.review-card{min-height:auto}.review-card blockquote{font-size:1.3rem}.final-cta{padding:52px 0}.final-cta .btn{width:100%;min-width:0}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.sub-hero{padding:34px 0 29px}.sub-hero h1{font-size:3.5rem}.progress-row .prog{font-size:.61rem;padding:8px 9px}.progress-row .progress-line{width:12px}.schedule-main,.schedule-aside{padding:24px 19px}.schedule-main h2{font-size:2.2rem}.schedule-aside h2{font-size:2.5rem}.schedule-aside .aside-price{font-size:4.4rem}.location-strip{padding:20px;display:block}.location-strip a{display:inline-block;margin-top:10px}.calendar-placeholder{padding:25px 16px}.calendar-placeholder .btn{width:100%}.confirm-card{padding:25px 20px}.confirm-card h1{font-size:3.6rem}.detail-row{grid-template-columns:1fr;gap:2px}.confirm-offer{align-items:flex-start;flex-direction:column}.detail-actions{flex-direction:column}.detail-actions .btn{width:100%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
[hidden]{display:none!important}

/* Device-width refinements after responsive QA */
@media(max-width:540px){
  .hero-offer{display:block;text-align:center;line-height:1.5;letter-spacing:.045em}
  .hero-offer span{margin:0 6px}
  .hero-visual .photo-fallback strong, .treatment-card .photo-fallback strong{font-size:clamp(2.4rem,9vw,3.9rem)}
  .sub-hero h1{font-size:clamp(2.75rem,11vw,3.1rem);letter-spacing:-.035em;overflow-wrap:anywhere}
  .schedule-main h2{overflow-wrap:anywhere}
  .location-strip p{overflow-wrap:break-word}
}

@media(max-width:780px){body[data-page="offer"] footer{padding-bottom:130px}}

/* Updated hero: genuine CellSound before/after is the first visual proof. */
.hero-visual.hero-beforeafter{display:flex;flex-direction:column;min-height:570px;height:auto;background:#e3e3dc;color:var(--ink);overflow:hidden}
.hero-beforeafter:after{display:none}
.hero-comparison-header{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#e8bf7a;color:#152b25;padding:15px 18px;font-size:.73rem;line-height:1.25;letter-spacing:.085em;font-weight:800}
.hero-comparison-source{font-size:.62rem;letter-spacing:.11em;opacity:.7;text-align:right}
.hero-comparison-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;flex:1;min-height:0;background:#152b25}
.hero-beforeafter-panel{margin:0;position:relative;min-width:0;min-height:0;overflow:hidden;background:#294a38}
.hero-beforeafter-panel img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%;filter:none}
.hero-beforeafter-panel figcaption{position:absolute;z-index:3;left:13px;bottom:13px;background:#fff;color:#19372b;font-size:.7rem;letter-spacing:.13em;font-weight:800;padding:9px 12px}
.hero-beforeafter-panel[data-comparison="after"] figcaption{background:#e8bf7a}
.hero-comparison-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;font-size:.7rem;line-height:1.5;letter-spacing:.01em;padding:12px}
.hero-beforeafter-panel img:not([hidden])+.hero-comparison-fallback{display:none}
.hero-comparison-disclaimer{background:#f6f3ec;color:#526057;font-size:.71rem;line-height:1.45;margin:0;padding:13px 18px}
@media(max-width:900px){.hero-visual.hero-beforeafter{height:470px;min-height:0}}
@media(max-width:540px){.hero-visual.hero-beforeafter{height:390px;min-height:0}.hero-comparison-header{padding:12px 10px;font-size:.64rem}.hero-comparison-source{font-size:.53rem}.hero-beforeafter-panel figcaption{font-size:.62rem;left:8px;bottom:8px;padding:7px 9px}.hero-comparison-disclaimer{padding:11px 12px;font-size:.68rem}}

/* NUVELL LIGHT EDITION — designed as an understated editorial clinic campaign. */
:root {
  --ink: #2f2c28;
  --ink-2: #49433d;
  --deep: #3d3933;
  --warm: #fcfaf7;
  --cream: #f5f0e9;
  --line: #e3dbd0;
  --gold: #c3aa8b;
  --gold-deep: #9d8063;
  --muted: #766f67;
  --white: #fff;
  --serif: 'Cormorant Garamond', Georgia, 'Times New Roman', serif;
  --heading: 'Cormorant Garamond', Georgia, 'Times New Roman', serif;
  --body: 'DM Sans', Arial, Helvetica, sans-serif;
}
body { background:var(--warm); color:var(--ink); font-family:var(--body); font-size:15px; }
h1,h2,h3 { font-family:var(--heading); text-transform:none; letter-spacing:-.042em; font-weight:600; line-height:1.04; }
h2 { font-size:clamp(3.2rem,5.6vw,5.6rem); }
h3 { font-size:clamp(1.8rem,2.7vw,2.5rem); }
h1 em,h2 em,h3 em { font-weight:500; color:var(--gold-deep); }
.container { width:min(1220px,calc(100% - 96px)); }
.section {padding:98px 0;}
.section-label { font-size:.67rem; letter-spacing:.18em; color:#977f68; font-weight:700; margin-bottom:22px; }
.section-label:before { background:var(--gold); height:1px; width:30px; }
.eyebrow { color:var(--ink-2); font-size:.7rem; font-weight:700; letter-spacing:.2em; }
.eyebrow:before { width:26px; height:1px; background:var(--gold-deep); }
.small-dot { color:var(--gold-deep); padding:0 2px; }
.section-lede {color:var(--muted); font-size:1rem; line-height:1.85;}
.bg-cream {background:var(--cream)}
.btn { min-height:58px; border-radius:2px; padding:18px 25px; letter-spacing:.05em; font-weight:700; font-size:.78rem; transition:background .2s ease,transform .2s ease; }
.btn-dark {background:var(--deep);color:#fff;}
.btn-dark:hover {background:#615449;}
.btn-gold {background:var(--gold);color:var(--ink)}
.btn-gold:hover {background:#d8bea0}
.btn:focus-visible,.pill:focus-visible,.faq-item summary:focus-visible {outline:2px solid #9d8063;outline-offset:3px;}
.inline-link { color:inherit; text-decoration-color:var(--gold-deep); text-underline-offset:4px; }
/* Branded header — quiet rather than attention grabbing. */
.site-header.dark,.site-header.light-head {background:#fcfaf7;color:var(--ink);border-bottom:1px solid var(--line)}
.header-inner {min-height:89px;}
.logo {justify-content:flex-start;}
.logo img {max-width:172px;max-height:51px;}
.site-header.light-head .logo img,.site-header.dark .logo img {filter:brightness(0) saturate(100%) opacity(.76)}
.logo-fallback {color:#38332e;font-family:var(--serif);font-size:2.55rem;font-weight:500;letter-spacing:-.065em;line-height:.69;}
.logo-fallback small {font-size:.41rem;letter-spacing:.4em; margin-top:12px;}
.header-city {color:#8a8075;opacity:1;font-size:.66rem;letter-spacing:.18em;}
.header-phone {font-size:.8rem;font-weight:600;}
.header-cta {background:transparent;color:var(--ink);border:1px solid #b6a58f;font-weight:700;font-size:.71rem;padding:12px 20px;}
.header-cta:hover {background:#eee7de;}
/* Light editorial hero, price-free. */
.hero {background:#fcfaf7; color:var(--ink); padding:69px 0 82px;}
.hero:after {display:none;}
.hero-layout {grid-template-columns:1fr .98fr;gap:6.5%;align-items:center;}
.hero-copy {padding:0;}
.hero .eyebrow {color:#85715e;}
.hero h1 {font-size:clamp(5.1rem,7.05vw,8.25rem);line-height:.83;font-weight:500;letter-spacing:-.07em;max-width:650px;margin:34px 0 30px;}
.hero h1 em {display:block;font-weight:500;color:#a98c6f;font-style:italic;letter-spacing:-.065em;margin-top:.07em;}
.hero-offer {display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:19px 0 17px;border:0;border-top:1px solid #cbbdac;border-bottom:1px solid #e2d6c7;background:none;color:var(--ink);margin:0 0 22px;letter-spacing:normal;text-transform:none;width:100%;}
.offer-kicker {font:700 .65rem var(--body);letter-spacing:.18em;color:#98816c;}
.hero-offer strong {font:600 clamp(1.38rem,2.1vw,2rem)/1.25 var(--body);letter-spacing:-.045em;color:#39352f;text-transform:uppercase;}
.hero-offer i {font-style:normal;color:#a78a69;}
.offer-mark {font-family:var(--serif);font-size:1.45em;font-weight:400;color:#bbaa94;padding:0 7px;vertical-align:-.04em;}
.offer-detail {color:#777068;font-size:.78rem;font-weight:500;text-transform:none;letter-spacing:0;}
.hero-text {color:#625a51;font-size:1rem;line-height:1.8;max-width:520px;margin:0 0 24px;}
.hero-button {min-width:0;width:100%;max-width:375px;justify-content:space-between;}
.hero-subactions {margin-top:13px;display:flex;flex-direction:column;align-items:flex-start;gap:7px;color:#8a8076;font-size:.74rem;line-height:1.5;}
.faq-price-link,.text-link {color:#6f5d4d;text-decoration:none;border-bottom:1px solid #a9957b;font-weight:700;font-size:.74rem;letter-spacing:.02em;padding-bottom:3px;}
.faq-price-link:hover,.text-link:hover {color:#302b25;}
.hero-trust {margin-top:31px;padding-top:18px;border-top:1px solid #e5ded3;gap:7px 17px;color:#80776c;font-weight:500;font-size:.69rem;}
.hero-trust span:before {content:'•';color:#b3916d;font-size:1rem;vertical-align:-.06em;margin-right:7px;}
/* Patient photography. Images are sourced externally pending approved local files. */
.hero-visual.hero-beforeafter {min-height:603px; height:auto; background:#ebe4db; border:1px solid #e1d6c9; box-shadow:15px 15px 0 #f1ece6; }
.hero-beforeafter:after {display:none}
.hero-comparison-header {background:#f3ede4;color:#685749;min-height:48px;padding:15px 17px;border-bottom:1px solid #e1d7ca;font-size:.66rem;font-weight:700;letter-spacing:.14em;}
.hero-comparison-source {opacity:.85;color:#9d8a75;font-size:.6rem;}
.hero-comparison-grid {background:#eee9e1;gap:4px;}
.hero-beforeafter-panel {background:linear-gradient(145deg,#e9e2d7,#d9ccba);}
.hero-beforeafter-panel[data-comparison=after] {background:linear-gradient(145deg,#e8e0d4,#d3c3ae)}
.hero-beforeafter-panel img {object-fit:cover;filter:none;}
.hero-comparison-fallback {color:#786b5c;font:italic 500 1.35rem/1.25 var(--serif);padding:24px 18px;letter-spacing:0;}
.hero-beforeafter-panel:before {content:'';position:absolute;z-index:0;left:20%;right:20%;top:46%;border-top:1px solid rgba(113,92,69,.25)}
.hero-beforeafter-panel figcaption,.hero-beforeafter-panel[data-comparison=after] figcaption {background:#fcfaf7;color:#574b3f;bottom:17px;left:14px;padding:8px 13px;border:1px solid #e5dbd0;font-size:.65rem;letter-spacing:.15em;}
.hero-comparison-disclaimer {background:#fcfaf7;color:#948879;border-top:1px solid #e4dacf;padding:12px 17px;font-size:.65rem;}
/* Concerns: straightforward editorial rows, not cards. */
.concerns {background:#f5f1eb;border-color:#e9e0d6;}
.concern-intro h2 {font-size:clamp(3.3rem,5.9vw,5.6rem);font-weight:500;letter-spacing:-.055em;line-height:.99;}
.concern-intro p {color:#706960;line-height:1.85;font-size:1rem;}
.concern-list {border-top:1px solid #d6c9ba;margin-top:49px;}
.concern-item {border-color:#e1d6c9;padding-top:28px;}
.concern-item:not(:first-child) {padding-left:30px;}
.concern-item .index {font:italic 500 2.3rem var(--serif);color:#ad9477;}
.concern-item h3 {font-size:1.85rem;font-weight:600;line-height:1.1;letter-spacing:-.04em;margin:13px 0 11px;}
.concern-item p {font-size:.87rem;color:#776f65;line-height:1.75;}
/* Treatment, no faux device graphics. */
.treatment-copy h2 {margin-bottom:20px;}
.treatment-card {background:#e8e0d6;}
.photo-fallback {background:#e6ddd1;color:#7f715f;}
.photo-fallback .wave {font-family:var(--serif);font-size:6rem;color:#b8a58b;opacity:.42;}
.photo-fallback strong {font-family:var(--serif);font-size:3.7rem;font-weight:600;letter-spacing:.01em;text-transform:none;}
.photo-fallback small {font-size:.64rem;letter-spacing:.12em;color:#877a68;}
.treatment-card figcaption {background:rgba(252,250,247,.94);color:#635747;}
.treatment-points li {border-color:var(--line);color:#686158;}
.treatment-points .check {color:#a98d6e;}
/* Six-session promotional package. No pricing outside FAQs. */
.promo {background:#eee7dc;color:var(--ink);padding:93px 0;}
.promo-grid {grid-template-columns:.96fr 1.04fr;gap:9%;}
.promo .eyebrow {color:#92755a;}
.promo h2 {font-size:clamp(4.2rem,6.6vw,7.1rem);line-height:.9;font-weight:500;letter-spacing:-.06em;margin:27px 0;}
.promo h2 em {color:#a58868;font-style:italic;font-weight:500;}
.promo-copy {color:#62594f;font-size:1.02rem;line-height:1.75;max-width:470px;}
.promo-note {font-size:.83rem;color:#81766b;line-height:1.7;max-width:460px;margin:14px 0 21px;}
.promo-card {background:#fcfaf7;border:1px solid #d9cbbd;box-shadow:none;padding:43px 43px 31px;}
.promo-card .super {border-color:#e4d9ce;color:#9d8063;font-size:.66rem;font-weight:700;}
.promo-sessions {padding:11px 0 10px;}
.session-line {display:flex;align-items:center;gap:25px;}
.session-number {font:500 clamp(6.2rem,9vw,9.7rem)/.95 var(--serif);letter-spacing:-.09em;color:#3c3630;}
.session-description {font-size:1.02rem;color:#62574c;line-height:1.4;}
.session-description b {font-size:.76rem;color:#9c7f60;letter-spacing:.07em;}
.session-divider {display:flex;align-items:center;gap:13px;color:#b19678;font-size:.66rem;font-weight:700;letter-spacing:.16em;margin:1px 0;}
.session-divider:before,.session-divider:after {content:'';height:1px;background:#e4d9ce;flex:1;}
.free-sessions .session-number {color:#a4886b;}
.promo-card .session-detail {padding:12px 0 21px;border-top:1px solid #e9e0d6;color:#70665c;font-size:.82rem;}
.promo-card .btn-full {justify-content:space-between;}
.promo-card-note {text-align:center;margin:12px 0 0;color:#8b8074;font-size:.68rem;}
/* Process and patient feedback. */
.process-head h2 {line-height:.94;font-weight:500;}
.process-head p {color:#777067;line-height:1.78;}
.process-grid {gap:30px;}
.process-item {border-top:1px solid #c4b7a8;}
.process-item .number {font:italic 500 3.6rem var(--serif);color:#b39a7d;}
.process-item h3 {font-weight:600;font-size:2rem;margin:14px 0 9px;}
.process-item p {color:#766e63;line-height:1.7;}
.review-grid {gap:22px;}
.review-card {border-color:#e2d9ce;min-height:260px;padding:39px 43px;}
.review-card blockquote {font:500 2rem/1.27 var(--serif);letter-spacing:-.025em;color:#413a34;}
.review-person {color:#5c5348;font-size:.7rem;letter-spacing:.13em;}
.review-source {color:#96897a;}
/* FAQs are the sole price disclosure location. */
.faq-layout {grid-template-columns:.65fr 1.35fr;gap:10%;}
.faq-intro h2 {font-weight:500;line-height:.92;}
.faq-wrap,.faq-item {border-color:#e3d9cc;}
.faq-item summary {font-size:.92rem;font-weight:600;color:#3c3832;line-height:1.5;padding:24px 0;}
.faq-item summary:after {font-family:var(--serif);font-size:1.9rem;color:#a48b6c;}
.faq-item p {color:#71685f;font-size:.86rem;line-height:1.85;}
.faq-item p strong {color:#39332e;font-weight:700;}
/* Final CTA: restrained pale linen. */
.final-cta {background:#e7dbcb;padding:78px 0;color:var(--ink);border-top:1px solid #e1d3c2;}
.final-cta h2 {font-size:clamp(3.8rem,6vw,6rem);line-height:.92;font-weight:500;margin:17px 0 19px;}
.final-cta h2 em {font-style:italic;color:#9f8060;}
.final-cta .over {color:#8d765f;font-size:.68rem;}
.final-cta p {color:#6b6156;max-width:590px;line-height:1.75;font-size:.88rem;}
.final-cta .btn-dark {min-width:310px;}
/* Pale, understated footer. */
footer {background:#f8f5f0;color:#736a60;padding:52px 0 50px;border-top:1px solid #e3d9cc;}
.footer-brand {color:#3c3530;font-family:var(--serif);font-size:2.6rem;font-weight:500;letter-spacing:-.065em;}
.footer-small {color:#80766d;}
.footer-heading {color:#987d63;font-size:.68rem;font-weight:700;}
.footer-bottom {border-color:#e4dbd0;color:#8c8175;}
/* Sticky CTA on mobile, with offer only, no dollar pricing. */
.sticky-offer {background:rgba(252,250,247,.98);border-top:1px solid #ded3c6;box-shadow:0 -4px 24px rgba(73,56,39,.08);}
.sticky-copy {font-size:.6rem;color:#9e8770;}
.sticky-copy strong {font:700 .85rem/1.25 var(--body);color:#342f2a;letter-spacing:-.02em;white-space:nowrap;margin-top:4px;}
.sticky-offer .btn {min-height:48px;padding:11px 15px;font-size:.67rem;white-space:nowrap;}
/* Schedule and booking confirmation share the same palette. */
.sub-hero {background:#f7f2eb;padding:61px 0 43px;border-bottom:1px solid #e8ded2;}
.progress-row {color:#867a6f;margin-bottom:32px;}
.progress-row .prog {border-color:#d8c9b7;color:#887d71;font-size:.64rem;font-weight:700;}
.progress-row .prog.active {background:#4a4138;border-color:#4a4138;color:#fff;}
.progress-row .progress-line {background:#d2c4b3;}
.sub-hero h1 {font-size:clamp(4rem,6.8vw,6.5rem);line-height:.94;max-width:820px;font-weight:500;letter-spacing:-.058em;}
.sub-hero .sub-copy {color:#776f64;}
.schedule-main {background:#fff;border-color:#e2d8cc;padding:41px 43px;}
.schedule-main h2 {font-size:3.1rem;font-weight:500;letter-spacing:-.055em;}
.schedule-main .small-lede {color:#81776d;}
.field-label {color:#5f554b;font-size:.7rem;letter-spacing:.12em;font-weight:700;}
.pill {border:1px solid #d4c7b8;background:#fffcf9;color:#6e6154;font-weight:600;}
.pill[aria-pressed=true] {background:#4c4138;border-color:#4c4138;color:#fff;}
.calendar-box {background:#fbf8f4;border-color:#e3d8cb;}
.calendar-placeholder p {color:#807368;}
.calendar-graphic {border-color:#c5b5a0;color:#aa9074;font-family:var(--serif);font-weight:500;}
.calendar-graphic:before {background:#c5b5a0;}
.calendar-placeholder h3 {font-size:2.5rem;font-weight:500;}
.booking-note,.privacy-note {color:#82766c;}
.schedule-aside {background:#ede4d8;color:var(--ink);border:1px solid #e0d1c0;padding:43px 37px;top:25px;}
.schedule-aside .aside-top {color:#987e61;letter-spacing:.17em;font-size:.67rem;}
.schedule-aside h2 {font-size:clamp(4.2rem,5vw,5.2rem);font-weight:500;line-height:.89;letter-spacing:-.055em;margin:29px 0 24px;}
.schedule-aside h2 em {color:#9c7f60;display:inline-block;font-style:italic;font-weight:500;}
.aside-rule {height:1px;background:#d7c7b4;margin-bottom:26px;}
.schedule-aside .aside-big {font:500 1.75rem/1.15 var(--serif);color:#4f453b;}
.schedule-aside .aside-note {color:#776b5e;font-size:.84rem;line-height:1.75;}
.aside-link {display:inline-block;margin-top:10px;color:#574a3f;text-decoration:none;border-bottom:1px solid #b69b7a;font-weight:700;font-size:.78rem;padding-bottom:5px;}
.aside-small {font-size:.67rem;letter-spacing:.1em;text-transform:uppercase;color:#a0907e;margin-top:38px;}
.location-strip {background:#f2ece5;}
.location-strip p {color:#76695c;}
.confirm-page {background:#f7f3ed;}
.confirm-card {border-color:#e2d6c8;}
.confirm-card h1 {font-size:clamp(3.3rem,6vw,5.6rem);font-weight:500;line-height:.93;letter-spacing:-.055em;}
.confirm-card .lead {color:#776d63;}
.confirm-icon {border-color:#ab967e;color:#8e7a61;}
.details-box {background:#faf7f2;border-color:#e8dfd4;}
.details-box h2,.what-next h2 {font-size:2.8rem;font-weight:500;}
.detail-row {border-color:#e9e0d5;}
.detail-row .label {color:#897c70;}
.next-list .num {color:#ac9375;}
.next-list li {color:#756a5f;}
.confirm-offer {background:#f1ebe3;border-top:2px solid #bba48a;align-items:center;}
.confirm-offer .tiny {color:#92785f;}
.confirm-detail {font-size:.79rem;color:#85776a;margin-top:8px;line-height:1.6;}
.confirm-faq {font-size:.75rem;font-weight:700;text-decoration:none;border-bottom:1px solid #a58b6b;padding-bottom:3px;white-space:nowrap;}
/* Responsive refinements: independent mobile hierarchy. */
@media(max-width:1050px){
 .container {width:min(1200px,calc(100% - 54px));}
 .hero h1 {font-size:clamp(4.2rem,7.3vw,6.8rem);}
 .hero-visual.hero-beforeafter {min-height:550px;}
 .promo-card {padding:34px;}
}
@media(max-width:780px){
 .container {width:calc(100% - 36px);}
 .header-inner {min-height:71px;}
 .hero {padding:34px 0 57px;}
 .hero-layout {display:flex;flex-direction:column;gap:32px;align-items:stretch;}
 .hero h1 {font-size:clamp(4.7rem,12vw,7.4rem);margin:27px 0 26px;line-height:.87;}
 .hero-offer {padding:17px 0;}
 .hero-offer strong {font-size:clamp(1.3rem,4.5vw,1.75rem);}
 .hero-text {font-size:.96rem;line-height:1.75;}
 .hero-visual.hero-beforeafter {height:515px;min-height:0;box-shadow:8px 8px 0 #f1ece6;}
 .hero-trust {margin-top:25px;}
 .section {padding:68px 0;}
 .concern-intro,.process-head,.treatment-grid,.promo-grid,.faq-layout,.schedule-layout {grid-template-columns:1fr;gap:25px;}
 .concern-intro h2 {font-size:clamp(3.3rem,8vw,5.3rem);}
 .promo {padding:69px 0;}
 .promo h2 {font-size:clamp(4.1rem,10vw,6rem);}
 .promo-intro {padding-bottom:4px;}
 .promo-card {box-shadow:none;}
 .treatment-card {order:-1;}
 .process-grid {gap:20px;}
 .review-card {padding:27px;min-height:190px;}
 .faq-layout {gap:8px;}
 .final-cta {padding:67px 0;}
 .final-grid {display:block;}
 .final-cta .btn {margin-top:28px;}
 .schedule-aside {order:-1;position:static;}
 .schedule-aside h2 {font-size:4.7rem;}
 .confirm-page {padding:37px 0 70px;}
 .sticky-offer {display:flex;transform:translateY(110%);transition:transform .25s;}
 .sticky-offer.visible {transform:translateY(0);}
 body[data-page='offer'] footer {padding-bottom:125px;}
}
@media(max-width:540px){
 .header-phone {font-size:.75rem;}
 .hero {padding-top:26px;padding-bottom:41px;}
 .hero .eyebrow {font-size:.61rem;letter-spacing:.13em;}
 .hero h1 {font-size:clamp(4.05rem,15vw,5.9rem);margin:22px 0 25px;}
 .hero-offer {text-align:left;}
 .hero-offer strong {font-size:clamp(1.3rem,5.6vw,1.65rem);}
 .offer-mark {padding:0 4px;}
 .offer-detail {font-size:.75rem;}
 .hero-button {width:100%;max-width:none;}
 .hero-subactions {font-size:.69rem;}
 .hero-visual.hero-beforeafter {height:377px;min-height:0;}
 .hero-comparison-header {font-size:.57rem;padding:12px 10px;}
 .hero-comparison-source {font-size:.52rem;}
 .hero-comparison-fallback {font-size:1.08rem;padding:20px;}
 .hero-beforeafter-panel figcaption {left:8px;bottom:8px;padding:7px 9px;}
 .hero-comparison-disclaimer {font-size:.62rem;padding:11px 12px;}
 h2 {font-size:clamp(3.1rem,13vw,4.45rem);}
 .concern-intro h2 {font-size:clamp(3.4rem,13vw,5rem);}
 .concern-list {grid-template-columns:1fr;margin-top:31px;}
 .concern-item,.concern-item:not(:first-child) {border-right:0;border-bottom:1px solid #e3d7c9;padding:19px 0 12px;}
 .concern-item h3 {margin:5px 0;}
 .concern-item p {margin-bottom:8px;}
 .treatment-card {height:300px;}
 .promo h2 {font-size:clamp(4.2rem,15vw,5.6rem);}
 .promo-card {padding:26px 22px;}
 .session-number {font-size:7.3rem;}
 .session-description {font-size:.9rem;}
 .process-grid {grid-template-columns:1fr;}
 .process-item {display:grid;grid-template-columns:62px 1fr;gap:0 9px;}
 .process-item .number {grid-row:span 2;font-size:3.6rem;}
 .process-item h3 {font-size:1.82rem;margin:0 0 5px;}
 .process-item p {margin:0 0 12px;}
 .review-grid {grid-template-columns:1fr;}
 .review-card blockquote {font-size:1.8rem;}
 .faq-item summary {font-size:.9rem;}
 .final-cta h2 {font-size:clamp(3.8rem,14vw,5.5rem);}
 .final-cta .btn {width:100%;min-width:0;}
 .footer-grid {grid-template-columns:1fr;}
 .footer-grid>div:first-child {grid-column:auto;}
 .sub-hero {padding:40px 0 35px;}
 .sub-hero h1 {font-size:clamp(3.5rem,12vw,4.6rem);overflow-wrap:normal;letter-spacing:-.056em;}
 .schedule-main,.schedule-aside {padding:28px 22px;}
 .schedule-main h2 {font-size:2.7rem;}
 .schedule-aside h2 {font-size:4.3rem;}
 .calendar-placeholder {padding:25px 15px;}
 .calendar-placeholder h3 {font-size:2.1rem;}
 .location-strip {padding:22px;}
 .confirm-card {padding:28px 22px;}
 .confirm-card h1 {font-size:clamp(3.4rem,12vw,4.5rem);}
 .confirm-offer {flex-direction:column;align-items:flex-start;gap:18px;}
 .confirm-faq {white-space:normal;}
 .sticky-copy strong {font-size:.77rem;}
 .sticky-offer .btn {font-size:.63rem;padding:11px 12px;}
}
/* Final mobile CRO adjustment: place actual booking controls ahead of offer recap. */
@media(max-width:780px){
  .schedule-main{order:1;}
  .schedule-aside{order:2;}
  .sub-hero h1{font-size:clamp(3.25rem,9.8vw,4.3rem);}
}
