/* 5.4.0 — liquid glass choices and mobile refinement.
   Loaded after clean.css. No external assets or animation dependency. */
.presell-home .portrait-hero {
  height: auto;
  min-height: 100svh;
  padding: 112px max(48px, calc((100% - 1120px)/2)) 56px;
  text-align: left;
  border-bottom: 0;
}
.presell-home .portrait-hero-content {
  position: relative;
  inset: auto;
  width: min(560px, 56%);
  margin: 0;
  padding: 0;
  align-items: flex-start;
  color: #463524;
}
.presell-home .portrait-hero-content h1.presell-question {
  font-size: clamp(38px, 4.3vw, 62px);
  line-height: 1.08;
  color: #493723;
  letter-spacing: -1.8px;
  text-shadow: none;
}
.presell-home .portrait-hero-content h1.presell-question em {color:#805e38; white-space:normal}
.presell-home .portrait-hero-content h1:after {display:none}
.presell-home .portrait-hero-content .presell-instruction {font-size:16px;line-height:1.6;margin:5px 0 24px;text-shadow:none}
.presell-home .portrait-hero-shade {background:linear-gradient(90deg,#f4eee6f2 0%,#f4eee6b8 45%,#f4eee626 100%)}
.presell-home .clinic-hero-gallery {inset:32px 24px 32px 36%;opacity:.78}
.presell-home .choice-cards {max-width:none;gap:16px}
.presell-home .choice-card {
  --glass-tint: #e6ceb0;
  display:grid;
  grid-template-columns:48px minmax(0,1fr) 40px;
  grid-template-rows:auto auto auto;
  column-gap:16px;
  row-gap:5px;
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:24px;
  min-height:150px;
  border:1px solid #fffdf6;
  border-radius:24px;
  background:linear-gradient(125deg,#ffffffdb 0%,#fffaf0b8 48%,#f5e7d3a8 100%);
  -webkit-backdrop-filter:blur(22px) saturate(135%);
  backdrop-filter:blur(22px) saturate(135%);
  box-shadow:inset 0 1px 0 #fff,inset 0 -1px 0 #bba18044,0 10px 30px #5d43201a;
  color:#403222;
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
  text-align:left;
}
.presell-home .choice-card:nth-child(2) {--glass-tint:#dfcfb9}
.presell-home .choice-card:nth-child(3) {--glass-tint:#d7c9b3}
.presell-home .choice-card:before {
  content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(ellipse at 100% 0%,var(--glass-tint),transparent 65%),linear-gradient(115deg,transparent 28%,#ffffff8c 29%,#ffffff18 45%,transparent 46%);
  opacity:.65;
}
.presell-home .choice-card:after {content:'';position:absolute;inset:4px;border:1px solid #ffffff75;border-radius:20px;pointer-events:none}
.presell-home .choice-card .choice-symbol {grid-column:1;grid-row:1 / 3;width:48px;height:48px;display:grid;place-items:center;border:1px solid #fff;border-radius:16px;color:#76552e;background:linear-gradient(140deg,#ffffffd9,#dfc9aa80);box-shadow:inset 0 1px 0 #fff,0 4px 12px #67492712}
.choice-symbol svg {width:28px;height:28px}
.presell-home .choice-card .choice-number {display:block;grid-column:3;grid-row:1;text-align:right;font:11px/1.5 var(--sans);letter-spacing:.12em;color:#756048}
.presell-home .choice-card h2 {grid-column:2;grid-row:1;margin:0;font-family:var(--sans);font-size:22px;line-height:1.2;letter-spacing:-.65px;max-width:none;color:#403222;align-self:center}
.presell-home .choice-card>p {display:block;grid-column:2 / 4;grid-row:2;margin:0;font-size:13px;line-height:1.6;color:#63513d}
.presell-home .choice-link {grid-column:2 / 4;grid-row:3;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:7px 0 0;padding:10px 0 0;border-top:1px solid #9b7d5233;font-size:12px;font-weight:600;color:#644827;line-height:1.5}
.presell-home .choice-link b {position:static;transform:none;flex:none;display:grid;place-items:center;width:34px;height:34px;border:1px solid #ffffff94;border-radius:50%;background:linear-gradient(135deg,#977243,#614223);box-shadow:0 4px 10px #70502c26;color:#fff;font-size:20px;font-weight:400}
.presell-home .portrait-hero-content>small {font-size:11px;line-height:1.6;color:#62513d;margin-top:22px}
.presell-home .clinic-motion {right:32px;bottom:12px;min-height:44px;padding:8px 16px;border-radius:100px;background:#faf6eee6;color:#594329;border:1px solid #fff}
@media(hover:hover) and (pointer:fine) {
  .presell-home .choice-card:hover {transform:translateY(-3px);border-color:#bca079;box-shadow:inset 0 1px #fff,0 16px 36px #5d43202e}
}
.presell-home .choice-card:active {transform:scale(.99)}
.presell-home .choice-card:focus-visible {outline:3px solid #795a33;outline-offset:4px}
/* Comfortable hit targets and bounded menus on phones and tablets. */
@media(max-width:1100px) {
  .mobile-nav nav {max-height:calc(100dvh - 100px);overflow-y:auto;overscroll-behavior:contain;padding-bottom:calc(24px + env(safe-area-inset-bottom));border-radius:0 0 24px 24px}
  .mobile-nav nav a {min-height:48px}
  .mobile-nav summary::-webkit-details-marker {display:none}
}
@media(max-width:860px) {
  .presell-home .portrait-hero {padding:100px 28px 64px}
  .presell-home .portrait-hero-content {width:min(560px,80%)}
  .presell-home .clinic-hero-gallery {left:20%;opacity:.55}
}
@media(max-width:640px) {
  html {scroll-padding-top:90px}
  body {font-size:16px}
  .container {width:calc(100% - 40px)}
  .section {padding-block:52px}
  .header-inner {min-height:72px;gap:12px}
  .header-actions {gap:8px;flex-shrink:0}
  .site-header {-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}
  .header-actions>.button {display:none}
  .original-brand .brand-name {font-size:24px}
  .original-brand .brand-sub {font-size:7px;letter-spacing:.14em}
  .original-brand .brand-mark {width:42px;height:42px;object-fit:contain}
  .mobile-nav>summary {width:46px;height:46px}
  .button,.button.small {font-size:13px;min-height:52px;line-height:1.5;white-space:normal;max-width:100%;gap:14px;padding:8px 8px 8px 20px}
  .button .button-icon {flex:0 0 36px;width:36px;height:36px}
  .section-heading h2,.treatment-body h2 {font-size:clamp(29px,8.2vw,36px);letter-spacing:-1px;line-height:1.16}
  .section-heading>p,.treatment-body p,.procedure-hero p,.clean-doctor p,.method-row p,.step p,.faq-list details p,.clean-faq p {font-size:15px;line-height:1.75}
  .eyebrow {font-size:10px;letter-spacing:.13em}
  .clean-home:not(.presell-home) .portrait-hero {height:auto;min-height:570px;padding:290px 20px 32px}
  .clean-home:not(.presell-home) .portrait-hero-content {position:relative;inset:auto;width:100%;padding:0;margin:0}
  .clean-home:not(.presell-home) .portrait-hero-content h1 em {font-size:clamp(36px,10.8vw,64px);white-space:normal}
  .clean-home:not(.presell-home) .portrait-hero-content>p {font-size:15px}
  .clean-home:not(.presell-home) .portrait-hero-content>small {font-size:11px;color:#fff3df}
  .clean-home:not(.presell-home) .portrait-hero-kicker {font-size:11px;background:#faf4e9eb;border-radius:24px;padding:8px 12px;top:16px;color:#594329}
  .clean-home:not(.presell-home) .clinic-motion {min-height:44px;bottom:0;font-size:11px}
  .clean-ribbon {flex-wrap:wrap;gap:8px 16px;font-size:11px;padding:20px}
  .clean-ribbon b {display:none}
  .clean-treatments,.blog-grid {gap:22px}
  .clean-treatment {border-radius:22px;box-shadow:0 8px 24px #58442b0b}
  .clean-treatment .treatment-glass {padding:20px}
  .treatment-glass strong {font-size:23px;gap:12px}
  .treatment-glass i {font-size:12px;min-height:40px;display:flex;align-items:center}
  .clean-result-grid {scroll-padding-inline:2px;gap:14px;padding:3px 2px 16px}
  .clean-result-grid>a {flex-basis:88%}
  .new-clinical-grid,.treatment-page .results-grid {grid-template-columns:minmax(0,1fr);gap:20px}
  .new-clinical-grid figcaption,.treatment-page .results-grid figcaption {font-size:13px;line-height:1.6}
  .method-row {border-radius:24px}
  .method-row article {padding:28px 24px}
  .method-row .button,.clean-doctor .button,.center-cta .button,.contact-inner .button {width:100%;justify-content:space-between}
  .clean-doctor>.container {gap:30px}
  .clean-doctor h2 {font-size:40px}
  .doctor-photo {border-radius:24px}
  .playlist-stage {height:auto;aspect-ratio:9/14;max-height:72svh;border-radius:22px}
  .playlist-stage video,.playlist-stage iframe {height:100%;width:100%}
  .playlist-item {min-height:80px;padding:12px;gap:12px;text-align:left}
  .playlist-item-copy strong {font-size:14px;line-height:1.4}
  .playlist-item-copy small,.playlist-count,.playlist-source {font-size:12px}
  .playlist-title {font-size:15px;line-height:1.5}
  .playlist-sidebar ol {max-height:300px;overscroll-behavior-y:contain}
  .steps {gap:18px}
  .step {padding:22px 18px;border:1px solid #d8cbbb;border-radius:18px;background:#fffaf3}
  .step h3 {font-size:25px}
  .info-card {padding:26px 22px;border-radius:22px}
  .feature-list {font-size:14px;line-height:1.7}
  .faq-list summary,.clean-faq summary {min-height:64px;font-size:15px;line-height:1.5;gap:16px}
  .faq-list summary span,.clean-faq summary span {flex-shrink:0}
  .clinic-address {border-radius:22px;padding:26px 20px}
  .clinic-map-links a,.text-link {min-height:44px;display:inline-flex;align-items:center;font-size:13px}
  .blog-card {border-radius:22px}
  .blog-card-copy {padding:24px}
  .blog-card p {font-size:15px;line-height:1.75}
  .blog-article .entry-content {font-size:16px;overflow-wrap:anywhere}
  .blog-article .entry-content pre {overflow-x:auto}
  .blog-topics {gap:8px}
  .blog-topics a {min-height:44px;display:flex;align-items:center}
  input,textarea,select {font-size:16px;max-width:100%}
  .footer {padding-bottom:calc(128px + env(safe-area-inset-bottom))}
  .footer-grid>div>a:not(.brand),.footer-bottom a {min-height:44px;display:flex;align-items:center;font-size:13px}
  .footer-grid p,.footer-bottom p,.medical-note,.case-disclaimer {font-size:12px;line-height:1.75}
  .mobile-cta {left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));border:1px solid #fff;border-radius:24px;padding:8px 10px;background:#faf6eeeb;box-shadow:inset 0 1px #fff,0 8px 32px #49372326;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}
  .mobile-cta>span {display:none}
  .mobile-cta .button {width:100%;justify-content:space-between;min-height:48px;font-size:13px}
  .lightbox {max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);border-radius:20px}
  .lightbox-close {min-width:44px;min-height:44px}
  /* Pre-sell remains a natural-height, scrollable page at any text size. */
  .presell-home .portrait-hero {min-height:100svh;padding:94px 20px 72px;text-align:left}
  .presell-home .portrait-hero-content {width:100%;margin:0;padding:0;align-items:stretch}
  .presell-home .portrait-hero-kicker {top:28px;left:20px;right:20px;font-size:11px;text-align:left;letter-spacing:.01em;color:#63513b}
  .presell-home .portrait-hero-content h1.presell-question {font-size:clamp(37px,10vw,48px);letter-spacing:-1.2px;margin-bottom:8px}
  .presell-home .portrait-hero-content .presell-instruction {font-size:15px;margin:0 0 24px}
  .presell-home .clinic-hero-gallery {inset:66px -90px 30px 0;opacity:.5}
  .presell-home .portrait-hero-shade {background:linear-gradient(130deg,#f4eee6eb,#f4eee68c 55%,#eadbc8b8)}
  .presell-home .choice-cards {gap:16px}
  .presell-home .choice-card {grid-template-columns:42px minmax(0,1fr) 22px;gap:6px 12px;min-height:166px;padding:22px 20px;border-radius:24px}
  .presell-home .choice-card .choice-symbol {width:42px;height:42px;border-radius:14px}
  .presell-home .choice-card h2 {font-size:21px;letter-spacing:-.5px}
  .presell-home .choice-card>p {font-size:13px}
  .presell-home .choice-link {font-size:12px;margin-top:8px}
  .presell-home .portrait-hero-content>small {font-size:11px;text-align:center}
  .presell-home .clinic-motion {bottom:14px;right:20px;font-size:11px}
}
@media(max-width:359px) {
  .container {width:calc(100% - 32px)}
  .presell-home .portrait-hero {padding-inline:16px}
  .presell-home .choice-card {padding:20px 16px;column-gap:10px;grid-template-columns:36px minmax(0,1fr) 18px}
  .presell-home .choice-card .choice-symbol {width:36px;height:36px}
  .presell-home .choice-card h2 {font-size:19px}
  .presell-home .choice-link {font-size:11px}
}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))) {
  .presell-home .choice-card {background:linear-gradient(135deg,#fffdf9,#eee1cf)}
  .site-header,.mobile-nav nav,.mobile-cta {background:#faf6ef}
}
@media(prefers-reduced-transparency:reduce) {
  .presell-home .choice-card,.site-header,.mobile-nav nav,.mobile-cta {background:#faf6ef;backdrop-filter:none;-webkit-backdrop-filter:none}
}
@media(prefers-reduced-motion:reduce) {
  .presell-home .choice-card {transition:none}
  .presell-home .choice-card:hover,.presell-home .choice-card:active {transform:none}
  .clinic-motion,.guest-motion {display:none}
}
/* Keep photo controls compact; older mobile rules also supplied a top inset. */
.presell-home .clinic-motion {top:auto}
@media(max-width:640px){.clean-home:not(.presell-home) .clinic-motion{top:64px;bottom:auto}}
/* Override legacy card selectors so clinical photos retain their full frame. */
.clean-treatments .clean-treatment {display:flex;flex-direction:column;height:auto;aspect-ratio:auto;border:1px solid #d8cbbb;border-radius:22px;background:#f2ece3;box-shadow:0 8px 24px #58442b0b}
.clean-treatments .clean-treatment>img {width:100%;height:auto;aspect-ratio:1;object-fit:contain;padding:8px;transform:none}
.clean-treatments .clean-treatment .treatment-glass {position:static;inset:auto;margin:0;padding:22px;border:0;border-top:1px solid #d8cbbb;border-radius:0;background:linear-gradient(125deg,#fffcf7,#eee2d0);color:#493622;box-shadow:inset 0 1px #fff;flex:1}
.clean-treatments .clean-treatment .treatment-glass strong {font-size:23px;font-weight:400;margin-bottom:16px;color:#493622}
.clean-treatments .clean-treatment .treatment-glass i {min-height:44px;color:#654b2b;border-color:#cdbb9f;display:flex;align-items:center;font-size:12px}
.clean-treatments .treatment-glass .procedure-plus {color:#795a33}
@media(hover:hover){.clean-treatments .clean-treatment:hover .treatment-glass{background:linear-gradient(125deg,#fffcf7,#e6d5ba)}}
.presell-home .choice-card .choice-number {position:static}
@media(max-width:640px){.clean-home:not(.presell-home) .portrait-hero-content h1:after{display:none}}

/* 5.4.1 — consistent vector icons in choice cards. */
.choice-link .link-arrow-icon {display:block;width:18px;height:18px;flex:none}
/* 5.5.0 — image-first treatment pages and vector controls throughout the theme. */
.site-icon {display:inline-block;width:18px;height:18px;flex:0 0 18px;vertical-align:middle;fill:none;stroke:currentColor}
.site-icon--close {width:24px;height:24px}
.lightbox-close {display:grid;place-items:center}
.bio-footer-star .site-icon,.bio-portrait-seal .site-icon {width:24px;height:24px}
.clinical-hero {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);grid-template-areas:'heading photo' 'intro photo' 'actions photo';gap:24px 56px;padding-block:48px;align-items:start}
.clinical-heading {grid-area:heading;align-self:end;min-width:0}
.clinical-heading h1 {font-family:var(--serif);font-size:clamp(36px,4.5vw,60px);line-height:1.06;letter-spacing:-1.5px;color:#59412a;margin:16px 0 0}
.clinical-feature {grid-area:photo;min-width:0;margin:0;overflow:hidden;border:1px solid #d9c9b4;border-radius:24px;background:#f0e8dd;box-shadow:0 10px 32px #59412512}
.clinical-feature-photo {position:relative;display:block;aspect-ratio:1;width:100%;background:#eee7dd}
.clinical-feature-photo>img {display:block;width:100%;height:100%;object-fit:contain;padding:8px}
.clinical-expand {position:absolute;bottom:16px;right:16px;display:flex;align-items:center;gap:7px;padding:8px 12px;min-height:36px;border-radius:12px;border:1px solid #fff;background:#fffaf1ef;color:#5b4228;font-size:11px}
.clinical-feature figcaption {display:flex;flex-direction:column;gap:4px;padding:14px 18px;border-top:1px solid #ddcfbb;background:#fffcf7;color:#67513b;font-size:11px;line-height:1.5}
.clinical-feature figcaption strong {font-size:10px;letter-spacing:.08em;font-weight:600}
.clinical-intro {grid-area:intro;min-width:0}
.clinical-intro .clinical-tagline {font:italic 30px/1.2 var(--serif);color:#81613c;margin-bottom:14px}
.clinical-intro>p:not(.clinical-tagline) {font-size:15px;line-height:1.8;color:#635646;max-width:460px}
.clinical-actions {grid-area:actions;display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px}
.clinical-actions .text-link {font-size:13px}
.clinical-gallery-hint {display:none}
.treatment-page .results-grid.clinical-gallery {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.treatment-page .clinical-gallery figure {margin:0;min-width:0;border:1px solid #d8cbbb;border-radius:20px;overflow:hidden;background:#fffcf7;box-shadow:0 8px 24px #58442b0a}
.treatment-page .clinical-gallery figure>a {position:relative;display:block;width:100%;aspect-ratio:1;border:0;border-radius:0;background:#eee7dd;box-shadow:none}
.treatment-page .clinical-gallery figure>a>img {width:100%;height:100%;max-height:none;aspect-ratio:1;object-fit:contain;padding:8px}
.treatment-page .clinical-gallery figcaption {min-height:48px;display:flex;align-items:center;padding:12px 16px;font-size:12px;color:#654f38;background:#fffcf7;border-top:1px solid #dfd3c3}
.treatment-page .clinical-gallery figure>a>span {display:flex;align-items:center;gap:6px;padding:7px 10px;min-height:32px;border-radius:10px;background:#fffaf1ee;color:#594229;font-size:11px}
@media(max-width:900px) {
 .clinical-hero {gap:20px 28px;padding-block:32px}
 .treatment-page .results-grid.clinical-gallery {grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
}
@media(max-width:640px) {
 .clinical-hero {grid-template-columns:minmax(0,1fr);grid-template-areas:'heading' 'photo' 'intro' 'actions';gap:18px;padding-block:20px 30px}
 .clinical-heading .eyebrow {font-size:9px;letter-spacing:.1em}
 .clinical-heading h1 {font-size:clamp(27px,7.7vw,35px);line-height:1.1;letter-spacing:-.8px;margin-top:8px}
 .clinical-feature {width:100%;max-width:440px;justify-self:center;border-radius:20px}
 .clinical-feature-photo {aspect-ratio:1}
 .clinical-feature figcaption {padding:10px 14px;font-size:10px;gap:2px}
 .clinical-feature figcaption strong {font-size:9px}
 .clinical-expand {right:12px;bottom:12px;font-size:10px;padding:6px 10px}
 .clinical-intro .clinical-tagline {font-size:25px;margin-bottom:8px}
 .clinical-intro>p:not(.clinical-tagline) {font-size:14px;line-height:1.7;max-width:none}
 .clinical-actions {display:flex;flex-direction:column;align-items:stretch;gap:8px}
 .clinical-actions .button {width:100%;justify-content:space-between}
 .clinical-actions .text-link {align-self:center;min-height:44px}
 .treatment-page .cases-section {padding-block:34px;background:#f2ece3}
 .treatment-page .cases-section .section-heading {margin-bottom:16px;padding-bottom:18px}
 .treatment-page .cases-section .section-heading h2 {font-size:29px}
 .treatment-page .cases-section .section-heading>p {font-size:14px;margin-top:12px}
 .clinical-gallery-hint {display:block;font-size:12px;color:#705638;line-height:1.6;margin:0 0 14px}
 .treatment-page .results-grid.clinical-gallery {display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:88%;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:2px;padding:3px 2px 14px;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#a78b66 #e9dfd0}
 .treatment-page .clinical-gallery figure {scroll-snap-align:start}
 .treatment-page .clinical-gallery figcaption {min-height:44px}
 .treatment-page .clinical-gallery figure>a>img {padding:6px}
 .treatment-page .case-disclaimer {font-size:11px;line-height:1.7;margin-top:14px}
 .treatment-page .playlist-stage {aspect-ratio:4/5;max-height:65svh}
 .treatment-page .playlist-stage video {object-fit:contain}
}
