@font-face{font-family:Cormorant;src:url('assets/fonts/cormorant-regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Cormorant;src:url('assets/fonts/cormorant-italic.woff2') format('woff2');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:Manrope;src:url('assets/fonts/manrope-regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Manrope;src:url('assets/fonts/manrope-medium.woff2') format('woff2');font-weight:500 700;font-style:normal;font-display:swap}
:root{--paper:#f9f7f3;--white:#fffdfc;--ink:#2a2422;--muted:#746b65;--taupe:#a7978c;--burgundy:#68424b;--sand:#e9e2da;--line:#dcd4cc;--serif:Cormorant,Georgia,serif;--sans:Manrope,Arial,sans-serif;--ease:cubic-bezier(.22,.68,0,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:115px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:1rem;-webkit-font-smoothing:antialiased}body:has(dialog[open]){overflow:hidden}button,a,input,summary{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button,a{color:inherit}button{cursor:pointer}a{text-decoration:none}button{border:0}img,video{display:block;max-width:100%}img{height:auto}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400}h2{font-size:clamp(3.375rem,5.3vw,4.75rem);line-height:1.01;letter-spacing:-.042em}em{font-weight:400}h1 em,h2 em,.philosophy p em{color:var(--burgundy)}p{line-height:1.7}svg{height:20px;width:20px;fill:none;stroke:currentColor;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round;flex:none}.icon-definitions{position:absolute;width:0;height:0;overflow:hidden}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--burgundy);outline-offset:6px}::selection{background:#ded0ca;color:var(--ink)}[hidden]{display:none!important}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:24px;top:12px;z-index:100;background:var(--ink);color:white;padding:12px 18px;border-radius:8px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.section-shell{max-width:1344px;padding-left:48px;padding-right:48px;margin-left:auto;margin-right:auto}.eyebrow,.small-label{font-size:0.75rem;letter-spacing:.06em;line-height:1.6;font-weight:500}.eyebrow{display:block}.section-number{color:var(--taupe);margin-right:17px}.button{display:inline-flex;align-items:center;justify-content:center;gap:26px;min-height:54px;padding:0 25px;border-radius:100px;background:var(--ink);color:var(--white);font-size:1rem;line-height:1.4;letter-spacing:.015em;transition:background .3s,color .3s,transform .4s var(--ease);white-space:nowrap}.button:hover{background:var(--burgundy);transform:translateY(-2px)}.button svg{width:17px;height:17px;transition:transform .4s var(--ease)}.button:hover svg{transform:translate(2px,-2px)}.button-small{font-size:0.8125rem;min-height:44px;gap:22px;padding:0 20px}.button-light{background:var(--white);color:var(--ink)}.button-light:hover{background:var(--sand);color:var(--ink)}.text-link,.inline-link{display:inline-flex;align-items:center;gap:18px;font-size:1rem;background:none;padding:12px 0;line-height:1.6}.text-link svg,.inline-link svg{width:17px;height:17px;transition:transform .35s var(--ease)}.text-link:hover svg,.inline-link:hover svg{transform:translate(4px,-2px)}.text-link{border-bottom:1px solid var(--line)}.inline-link{color:var(--burgundy)}.round-icon{display:flex;align-items:center;justify-content:center;flex:none;width:39px;height:39px;border:1px solid var(--line);border-radius:50%}.round-icon svg{width:17px;height:17px;transition:transform .4s var(--ease)}
/* The header floats quietly above the continuous opening scene. */
.site-header{position:fixed;z-index:30;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:27px 48px;transition:padding .4s var(--ease),background .4s,box-shadow .4s}.site-header.scrolled{padding-top:17px;padding-bottom:17px;background:rgba(249,247,243,.94);box-shadow:0 1px 0 rgba(220,212,204,.5);backdrop-filter:blur(16px)}.brand{display:flex;flex-direction:column;align-items:flex-start;gap:5px;flex:none}.brand-name{font:400 1.8125rem/.92 var(--serif);letter-spacing:-.04em}.brand-name>span{font-size:1.0625rem;font-style:italic;letter-spacing:-.025em}.brand-subtitle{font-size:0.75rem;letter-spacing:.16em;line-height:1.3;padding-left:2px}.header-actions{display:flex;align-items:center;gap:15px}
/* A single sticky stage preserves the relationship between all four image layers. */
.hero{position:relative;height:210svh;min-height:1360px}.hero-stage{position:sticky;top:0;height:100svh;min-height:640px;overflow:hidden;isolation:isolate}.hero-glow{position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 52% 56%,rgba(223,210,198,.35),transparent 46%),radial-gradient(ellipse at 22% 50%,rgba(244,219,208,.18),transparent 52%),linear-gradient(150deg,#fbfaf7 8%,#f6f1e9 68%,#f9f7f3)}.hero-copy{position:absolute;z-index:4;top:20%;left:50%;width:min(980px,78%);text-align:center;transform:translateX(-50%);transform-origin:50% 60%;will-change:transform,opacity}.hero-eyebrow{display:flex;align-items:center;justify-content:center;gap:9px;margin-bottom:29px;font-size:0.75rem;letter-spacing:.17em}.tiny-flower{font-size:1.5rem;color:var(--burgundy);line-height:1}.hero h1{font-size:clamp(5.25rem,7.78vw,7rem);line-height:.99;letter-spacing:-.047em}.hero h1>span,.hero h1>em{display:block}.hero h1 em{letter-spacing:-.058em}.hero-description{font-size:1.125rem;line-height:1.8;margin-top:24px;color:var(--muted)}.hero-description em{font-style:normal;color:var(--ink)}.hero-actions{display:flex;justify-content:center;align-items:center;gap:26px;margin-top:24px}.hero-actions .button{min-height:49px;font-size:0.8125rem;padding:0 23px;gap:22px}.hero-actions .text-link{font-size:0.8125rem;padding:12px 0;border-bottom:0}.floating-photo{position:absolute;z-index:2;overflow:hidden;border-radius:20px;will-change:transform,opacity;box-shadow:0 18px 44px -28px rgba(71,49,33,.35)}.floating-photo img{width:100%;height:100%;object-fit:cover}.floating-portrait{width:clamp(174px,15.6vw,240px);height:clamp(260px,23.5vw,350px);left:-31px;top:26%;transform:rotate(-6deg)}.floating-portrait img{object-position:center 33%}.floating-portrait:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(25,20,18,.42))}.floating-portrait figcaption{position:absolute;bottom:21px;left:25px;right:12px;z-index:1;color:white;font:400 1.3125rem/1.1 var(--serif);letter-spacing:-.02em}.floating-portrait figcaption span{display:block;font:400 0.75rem/1.8 var(--sans);margin-top:8px}.floating-flower{right:-35px;top:37%;width:clamp(184px,16.7vw,250px);height:clamp(230px,21vw,310px);transform:rotate(7deg)}.floating-flower img{object-position:74% center}.floating-flower figcaption{position:absolute;bottom:20px;left:25px;font:italic 1.5rem/1 var(--serif);color:#463b30}.floating-detail{left:18%;top:79%;width:125px;height:150px;transform:rotate(5deg)}.floating-detail img{object-position:center}.photo-dot{position:absolute;right:10px;bottom:10px;width:10px;height:10px;border:2px solid #fff;border-radius:50%}.hero-scroll-cue{position:absolute;right:12%;bottom:50px;display:flex;align-items:center;gap:17px;color:var(--muted);font-size:0.75rem;letter-spacing:.17em}.scroll-line{height:52px;width:1px;display:block;background:var(--line);position:relative;overflow:hidden}.scroll-line:after{content:"";position:absolute;top:0;left:0;height:22px;width:1px;background:var(--taupe);animation:scroll-cue 2.2s ease-in-out infinite}@keyframes scroll-cue{0%{transform:translateY(-23px)}100%{transform:translateY(54px)}}.hero-scene{position:absolute;z-index:5;top:0;left:48px;right:48px;height:calc(100svh - 144px);min-height:495px;overflow:hidden;border-radius:22px;transform:translateY(78svh) scale(.34);transform-origin:50% 0;will-change:transform;box-shadow:0 25px 80px -40px rgba(56,38,24,.25)}.hero-scene-picture>img{height:100%;width:100%;object-fit:cover;object-position:center 55%;transform:scale(1.04)}.scene-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,18,15,.57),rgba(20,18,15,0) 80%),linear-gradient(0deg,rgba(20,18,15,.26),transparent 50%);opacity:0}.scene-copy{position:absolute;bottom:10%;left:6%;color:white;opacity:0;transform:translateY(25px)}.scene-copy .eyebrow{font-size:0.75rem;margin-bottom:22px}.scene-copy h2{font-size:clamp(3.25rem,5.1vw,4.625rem);line-height:1.03;letter-spacing:-.035em}.scene-copy h2 em{color:#eee3d6}.scene-copy>p:not(.eyebrow){font-size:1rem;line-height:1.8;color:#f5f0eb;margin-top:22px}.scene-copy .button{margin-top:25px;min-height:45px;font-size:0.75rem;padding:0 21px;gap:22px}.scene-footnote{position:absolute;bottom:35px;right:35px;color:white;letter-spacing:.15em;font-size:0.75rem;opacity:0}
/* Editorial rhythm: large headings, useful space, and one treatment at a time. */
.care-section{padding-top:138px;padding-bottom:150px}.section-heading{display:grid;grid-template-columns:1fr 1.44fr;gap:40px;margin-bottom:76px}.section-kicker{padding-top:11px}.section-intro{margin-top:28px;font-size:1.125rem;color:var(--muted);line-height:1.85}.care-editorial{display:grid;grid-template-columns:1fr 1.06fr;gap:112px;align-items:center}.care-photo{height:610px;border-radius:22px;overflow:hidden;position:relative}.care-photo>img{width:100%;height:100%;object-fit:cover;object-position:center top;transform-origin:center top;transition:transform 1.4s var(--ease)}.care-photo:hover>img{transform:scale(1.035)}.care-photo:after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,rgba(36,30,26,.5))}.care-photo figcaption{position:absolute;z-index:1;bottom:28px;left:28px;right:28px;display:flex;align-items:center;justify-content:space-between;color:white;font:italic 1.6875rem var(--serif)}.care-photo figcaption svg{height:25px;width:25px}.treatments>.eyebrow{margin-bottom:31px;color:var(--muted);font-size:0.75rem}.treatment{border-top:1px solid var(--line)}.treatment:last-of-type{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer}summary::-webkit-details-marker{display:none}.treatment summary{display:flex;align-items:center;gap:21px;padding:27px 0}.treatment-number{font-size:0.75rem;color:var(--taupe);align-self:center}.treatment h3{font-size:2.5rem;letter-spacing:-.035em;line-height:1.15}.treatment .round-icon{margin-left:auto;width:34px;height:34px;border-color:transparent}.treatment[open] .round-icon{background:var(--sand)}.treatment[open] .round-icon svg{transform:rotate(45deg)}.treatment-body{padding:0 22px 31px 35px}.treatment-body .small-label{font-size:0.75rem;letter-spacing:.15em;color:var(--burgundy)}.treatment-body p{font-size:1rem;line-height:1.9;color:var(--muted);margin-top:14px}.treatment-body .inline-link{margin-top:15px;font-size:0.75rem;gap:20px}.treatment-note{font-size:0.75rem;line-height:1.9;color:var(--muted);margin-top:28px}
.philosophy{min-height:650px;position:relative;overflow:hidden;background:#e5d9c6;isolation:isolate}.philosophy-inner{position:relative;z-index:2;padding-top:106px;padding-bottom:106px}.philosophy-mark{font-size:1.8125rem;color:var(--burgundy);display:block;margin-bottom:34px}.philosophy-inner>p{overflow-wrap:anywhere;font-family:var(--serif);font-size:clamp(3.25rem,5.1vw,4.625rem);letter-spacing:-.04em;line-height:1.07}.philosophy-inner>.eyebrow{font-size:0.75rem;margin-top:34px}.philosophy-flower{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 62%;z-index:-2}.philosophy:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(240,232,217,.86),rgba(240,232,217,.53) 37%,transparent 70%)}.motion-toggle{position:absolute;bottom:24px;right:48px;z-index:3;display:flex;align-items:center;gap:9px;background:rgba(249,247,243,.8);color:var(--ink);border:1px solid rgba(255,255,255,.5);border-radius:50px;padding:11px 15px;font-size:0.75rem;min-height:44px;backdrop-filter:blur(10px)}.motion-toggle:before{content:"Ⅱ";font-size:1rem}.motion-toggle[aria-pressed="true"]:before{content:"▷"}
.doctor-section{padding-top:150px;padding-bottom:160px;display:grid;grid-template-columns:1fr 1fr;gap:140px;align-items:center}.doctor-copy>.eyebrow{font-size:0.75rem;margin-bottom:38px}.doctor-copy h2{margin-bottom:34px}.doctor-copy>p:not(.eyebrow){color:var(--muted);font-size:1rem;line-height:1.95;margin-top:18px;max-width:390px}.doctor-copy .doctor-lead{color:var(--ink)!important;font-size:1.125rem!important}.doctor-signoff{margin:30px 0 27px;display:flex;flex-direction:column;gap:11px}.signature{font:italic 2.1875rem/1.2 var(--serif);letter-spacing:-.035em}.doctor-signoff .small-label{font-size:0.75rem;color:var(--muted);letter-spacing:.12em}.doctor-copy .text-link{font-size:0.8125rem}.doctor-photo{position:relative;height:675px;border-radius:22px;background:#242425}.doctor-photo>img{width:100%;height:100%;object-fit:cover;border-radius:inherit;object-position:center 20%}.doctor-photo figcaption{position:absolute;bottom:30px;right:30px;left:30px;text-align:center;color:#fff;font-size:0.75rem;letter-spacing:.12em}.doctor-seal{position:absolute;bottom:63px;left:-50px;width:117px;height:117px;border-radius:50%;box-shadow:0 9px 25px rgba(46,34,27,.07);transform:rotate(-14deg)}.doctor-seal img{border-radius:50%;width:100%;height:100%}
.space-section{padding-top:110px;padding-bottom:120px;background:#eee9e2;border-radius:30px 30px 0 0}.space-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:70px;margin-bottom:66px}.space-heading .eyebrow{margin-bottom:28px;font-size:0.75rem}.space-heading>p{font-size:1rem;color:var(--muted);line-height:1.9;max-width:370px;padding-bottom:9px;padding-right:62px}.space-gallery{display:grid;grid-template-columns:1.55fr 1fr;gap:34px;align-items:start}.space-image{display:block;width:100%;padding:0;text-align:left;overflow:hidden;border-radius:22px;background:var(--sand);position:relative}.space-image>img{height:100%;width:100%;object-fit:cover;transition:transform 1s var(--ease)}.space-image:hover>img{transform:scale(1.035)}.space-image-large{height:620px}.space-image-large img{object-position:center 56%}.space-gallery-side{padding-top:96px}.space-gallery-side>.space-image{height:343px}.space-gallery-side>.space-image img{object-position:center 56%}.image-caption{display:flex;align-items:center;justify-content:space-between;position:absolute;left:28px;right:28px;bottom:25px;color:#fff;font-size:1rem;z-index:1}.space-image-large:after{content:"";position:absolute;bottom:0;left:0;right:0;height:130px;background:linear-gradient(transparent,rgba(35,26,19,.45))}.image-caption>.round-icon{width:44px;height:44px;border-color:rgba(255,255,255,.5)}.gallery-zoom{position:absolute;right:18px;bottom:18px;background:var(--paper);width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:50%}.space-caption{padding:29px 0 0 18px}.space-caption .eyebrow{font-size:0.75rem;letter-spacing:.16em;color:var(--muted)}.space-caption p{font:400 2.5rem/1.1 var(--serif);letter-spacing:-.035em;margin-top:17px}.space-caption p em{color:var(--burgundy)}
.faq-section{padding-top:142px;padding-bottom:145px;display:grid;grid-template-columns:1fr 1.44fr;gap:88px}.faq-heading .eyebrow{font-size:0.75rem;margin-bottom:29px}.faq-heading h2{font-size:4.1875rem}.faq-heading>p:last-child{color:var(--muted);font-size:1rem;line-height:1.9;margin-top:27px}.faq-list{padding-top:7px}.faq-list details{border-top:1px solid var(--line)}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{font-size:1rem;line-height:1.6;display:flex;justify-content:space-between;align-items:center;gap:28px;padding:27px 0}.faq-list summary svg{height:17px;width:17px;transition:transform .35s var(--ease)}.faq-list details[open] summary svg{transform:rotate(45deg)}.faq-list details>div{padding:0 50px 29px 0}.faq-list details p{font-size:1rem;color:var(--muted);line-height:1.95}.faq-list details .inline-link{font-size:0.8125rem;margin-top:15px}
.booking-section{position:relative;isolation:isolate;overflow:hidden;border-top:1px solid #eee7df;border-bottom:1px solid #e4dbd0}.booking-atmosphere{position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 52% 85%,rgba(201,175,152,.28),transparent 66%),radial-gradient(ellipse at 16% 50%,rgba(212,190,177,.13),transparent 45%),linear-gradient(100deg,#f3eee6,#f8f4ed 58%,#eee5da)}.booking-inner{text-align:center;padding-top:92px;padding-bottom:91px}.booking-inner>.tiny-flower{font-size:1.625rem}.booking-inner>.eyebrow{margin-top:19px;margin-bottom:29px;font-size:0.75rem}.booking-inner h2{font-size:4.75rem;line-height:1.01}.booking-inner>p:not(.eyebrow){font-size:1rem;color:var(--muted);line-height:1.9;margin-top:24px}.booking-inner .button{max-width:100%;padding-top:12px;padding-bottom:12px;white-space:normal;margin-top:27px;font-size:0.8125rem;gap:30px}.booking-caption{display:block;font-size:0.75rem;letter-spacing:.16em;color:var(--muted);margin-top:16px}
.site-footer{padding-top:62px;padding-bottom:28px}.footer-main{display:flex;align-items:center;justify-content:space-between;gap:35px;padding-bottom:56px}.footer-main>p{font:400 1.8125rem/1.06 var(--serif);letter-spacing:-.025em}.footer-main>p em{color:var(--burgundy)}.back-top{display:flex;min-height:44px;align-items:center;gap:27px;font-size:0.75rem}.back-top svg{border:1px solid var(--line);border-radius:50%;height:42px;width:42px;padding:12px}.footer-bottom{border-top:1px solid var(--line);padding-top:24px;display:flex;gap:35px;justify-content:space-between;color:var(--muted);font-size:0.75rem;letter-spacing:.02em}.footer-privacy{font-size:0.75rem;background:none;padding:0;min-height:24px;color:var(--muted);margin-top:-6px}
/* Dialogs are native: focus is contained and Escape always works. */
dialog{border:1px solid var(--line);border-radius:22px;background:var(--paper);color:var(--ink);padding:45px;width:520px;max-width:calc(100% - 32px);max-height:90svh;box-shadow:0 30px 100px rgba(36,26,20,.16)}dialog::backdrop{background:rgba(34,29,27,.4);backdrop-filter:blur(7px)}dialog[open]{animation:dialog-in .4s var(--ease)}@keyframes dialog-in{from{opacity:0;transform:translateY(15px) scale(.98)}to{opacity:1;transform:none}}.icon-button{width:44px;height:44px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;border-radius:50%;background:transparent;color:var(--ink)}.dialog-close{position:absolute;top:17px;right:17px;width:44px;height:44px}.dialog-close svg{width:16px;height:16px}dialog>.eyebrow{font-size:0.75rem;color:var(--muted);margin-bottom:22px}dialog h2{font-size:3.5rem;margin-bottom:23px}.dialog-intro{font-size:1rem;color:var(--muted);margin-bottom:22px}.booking-dialog fieldset{padding:0;margin:0;border:0}.interest-option{display:flex;align-items:center;position:relative;cursor:pointer;padding:16px 17px;margin-top:8px;border:1px solid var(--line);border-radius:12px;transition:background .25s,border-color .25s}.interest-option:has(input:checked){background:var(--sand);border-color:var(--taupe)}.interest-option:has(input:focus-visible){outline:2px solid var(--burgundy);outline-offset:3px}.interest-option>input{position:absolute;opacity:0;inset:0;width:100%;height:100%;cursor:pointer;margin:0}.interest-option>span:not(.radio-circle){font-size:1rem}.interest-option>span>span{display:block;font-size:0.75rem;color:var(--muted);margin-top:4px}.radio-circle{margin-left:auto;border:1px solid var(--taupe);width:17px;height:17px;border-radius:50%;position:relative}.interest-option:has(input:checked) .radio-circle:after{content:"";position:absolute;inset:3px;background:var(--burgundy);border-radius:50%}.booking-submit{width:100%;margin-top:21px;justify-content:space-between;font-size:0.8125rem}.dialog-footnote{text-align:center;margin-top:23px;font-size:0.75rem;color:var(--muted)}.booking-result h3{font-size:2.125rem;margin:16px 0}.booking-result>p{font-size:1rem;color:var(--muted);line-height:1.8}.booking-result .button{margin-top:22px;font-size:0.8125rem}.booking-result .booking-honesty{font-size:0.75rem;margin-top:18px;border-top:1px solid var(--line);padding-top:18px}.booking-result .inline-link{font-size:0.8125rem;margin-top:12px}.gallery-dialog{width:750px;padding:22px;background:#efe9e2;overflow:visible}.gallery-dialog .dialog-close{z-index:1;background:var(--paper)}.gallery-dialog figure img{height:70svh;max-height:750px;width:100%;object-fit:contain;border-radius:12px}.gallery-dialog figcaption{text-align:center;font-size:0.8125rem;margin-top:16px}.gallery-controls{display:flex;align-items:center;justify-content:center;gap:35px;margin-top:14px}.gallery-controls>span{font-size:0.75rem;letter-spacing:.1em}.gallery-controls .icon-button{width:44px;height:44px}.gallery-controls svg{width:15px;height:15px}.gallery-controls #gallery-prev svg{transform:rotate(180deg)}.privacy-dialog{width:580px}.privacy-dialog>p:not(.eyebrow){font-size:1rem;color:var(--muted);margin-top:18px;line-height:1.9}.js-motion .reveal{opacity:0;transform:translateY(35px);transition:opacity .95s var(--ease),transform .95s var(--ease)}.js-motion .reveal.is-visible{opacity:1;transform:translateY(0)}
@media(min-width:1600px){.hero-copy{top:21%}.hero-eyebrow{margin-bottom:34px}.hero h1{font-size:7rem}.floating-portrait{left:3%;width:245px;height:345px}.floating-flower{right:3%;width:240px;height:310px}.floating-detail{left:22%}.hero-scene{left:5%;right:5%}.site-header{padding-left:5%;padding-right:5%}.hero-description{font-size:1.125rem}}
@media(max-width:1150px){.site-header{padding-left:32px;padding-right:32px;gap:20px}.brand-name{font-size:1.6875rem}.section-shell{padding-left:40px;padding-right:40px}.hero-copy{width:83%;top:23%}.hero h1{font-size:5.875rem}.floating-portrait{left:-62px;top:24%;width:184px;height:270px}.floating-flower{right:-55px;top:42%;width:180px;height:235px}.floating-portrait figcaption{font-size:1.125rem}.floating-portrait figcaption span{display:none}.floating-detail{left:13%;width:112px;height:135px;top:79%}.hero-scene{left:32px;right:32px}.care-editorial{gap:64px}.care-photo{height:590px}.doctor-section{gap:85px}.doctor-photo{height:600px}.space-heading>p{padding-right:0}.space-image-large{height:590px}.faq-section{gap:55px}.hero-scroll-cue{right:9%;font-size:0.75rem}}
@media(max-width:900px){.hero-copy{top:23%;width:86%}.hero h1{font-size:5.375rem}.hero-description{font-size:1rem}.floating-portrait{left:-75px;top:30%;width:170px;height:250px}.floating-flower{right:-76px;width:173px;height:230px}.care-section{padding-top:105px;padding-bottom:100px}.section-heading{grid-template-columns:1fr 1.7fr;gap:25px}.section-kicker{font-size:0.75rem;line-height:1.8}.section-number{margin-right:10px}.section-intro{font-size:1rem}.care-editorial{gap:38px}.care-photo{height:535px}.treatment h3{font-size:2.125rem}.treatment summary{gap:13px}.treatment-body{padding-left:25px;padding-right:3px}.doctor-section{padding-top:110px;padding-bottom:115px;gap:55px}.doctor-photo{height:570px}.doctor-copy h2{font-size:3.625rem}.doctor-copy>p:not(.eyebrow){font-size:1rem}.doctor-seal{left:-35px;width:96px;height:96px}.space-image-large{height:520px}.space-gallery{gap:25px}.space-gallery-side{padding-top:75px}.space-gallery-side>.space-image{height:295px}.space-caption p{font-size:2.1875rem}.faq-section{padding-top:105px;padding-bottom:110px;gap:38px;grid-template-columns:1fr 1.65fr}.faq-heading h2{font-size:3.5rem}.faq-heading .eyebrow{font-size:0.75rem}.faq-list summary{font-size:1rem}.footer-main>p{font-size:1.625rem}.footer-main .brand-name{font-size:1.625rem}.footer-main .brand-subtitle{font-size:0.75rem}}
@media(max-width:680px){html{scroll-padding-top:92px}.section-shell{padding-left:24px;padding-right:24px}.site-header{padding:23px 24px;gap:10px}.site-header.scrolled{padding:18px 24px}.brand-name{font-size:1.625rem}.brand-name>span{font-size:1.125rem}.brand-subtitle{font-size:0.75rem;letter-spacing:.14em}.header-actions>.button{display:inline-flex}.hero{height:170svh;min-height:1180px}.hero-stage{min-height:680px}.hero-copy{top:20%;width:calc(100% - 40px)}.hero-eyebrow{font-size:0.75rem;gap:7px;margin-bottom:26px;letter-spacing:.13em}.hero-eyebrow>.tiny-flower{font-size:1.125rem}.hero h1{font-size:clamp(3.25rem,14.8vw,4rem);line-height:1.01;letter-spacing:-.05em}.hero-description{font-size:0.8125rem;line-height:1.9;margin-top:21px;max-width:290px;margin-left:auto;margin-right:auto}.hero-actions{margin-top:21px;gap:6px;flex-direction:column}.hero-actions .button{min-height:47px;font-size:0.75rem;padding:0 21px;gap:25px}.hero-actions .text-link{font-size:0.75rem;gap:10px;padding:11px 0}.hero-actions .text-link svg{height:14px;width:14px}.floating-portrait{width:126px;height:173px;left:-26px;top:67%;border-radius:15px;transform:rotate(-8deg)}.floating-portrait figcaption{left:16px;bottom:16px;font-size:1.125rem}.floating-flower{width:126px;height:159px;right:-31px;top:67%;border-radius:15px;transform:rotate(9deg)}.floating-flower figcaption{font-size:1.125rem;left:17px;bottom:15px}.floating-detail{display:none}.hero-scene{left:16px;right:16px;height:calc(100svh - 113px);min-height:557px;transform:translateY(82svh) scale(.5);border-radius:19px}.hero-scene-picture>img{object-position:center 55%}.hero-scroll-cue{display:none}.scene-shade{background:linear-gradient(0deg,rgba(25,21,17,.69),rgba(25,21,17,.13) 90%)}.scene-copy{left:24px;right:20px;bottom:34px}.scene-copy .eyebrow{font-size:0.75rem;margin-bottom:19px}.scene-copy h2{font-size:3rem;line-height:1.02;letter-spacing:-.045em}.scene-copy>p:not(.eyebrow){font-size:0.8125rem;margin-top:21px;line-height:1.9}.scene-copy .button{margin-top:22px;font-size:0.75rem;min-height:43px;padding:0 18px}.scene-footnote{display:none}.care-section{padding-top:75px;padding-bottom:80px}.section-heading{display:block;margin-bottom:43px}.section-kicker{font-size:0.75rem;margin-bottom:29px;padding:0}.section-heading h2{font-size:3.25rem}.section-intro{font-size:1rem;line-height:1.9;margin-top:24px}.desktop-break{display:none}.care-editorial{display:flex;flex-direction:column;gap:40px;align-items:stretch}.care-photo{height:430px;border-radius:19px}.care-photo>img{object-position:center top}.care-photo figcaption{left:23px;bottom:24px;right:23px;font-size:1.625rem}.treatments>.eyebrow{font-size:0.75rem;margin-bottom:22px}.treatment summary{padding:23px 0;gap:17px}.treatment h3{font-size:2.25rem}.treatment-number{font-size:0.75rem}.treatment-body{padding-left:29px;padding-right:16px;padding-bottom:26px}.treatment-body p{font-size:1rem;line-height:1.9}.treatment-body .inline-link{font-size:0.75rem;gap:15px;margin-top:12px}.treatment-note{font-size:0.75rem;margin-top:24px}.philosophy{min-height:700px}.philosophy-inner{padding-top:66px;text-align:center}.philosophy-mark{font-size:1.5rem;margin-bottom:23px}.philosophy-inner>p{font-size:3.0625rem;line-height:1.06;letter-spacing:-.045em}.philosophy-inner>.eyebrow{font-size:0.75rem;letter-spacing:.11em;margin-top:24px}.philosophy-flower{top:auto;bottom:0;left:-15%;height:74%;width:130%;max-width:none;object-position:75% center}.philosophy:after{background:linear-gradient(180deg,#eee4d6 2%,rgba(238,228,214,.97) 26%,rgba(238,228,214,.45) 48%,transparent 75%)}.motion-toggle{bottom:18px;right:18px;font-size:0.75rem;min-height:40px;padding:9px 12px}.doctor-section{padding-top:83px;padding-bottom:90px;display:flex;flex-direction:column;gap:49px;align-items:stretch}.doctor-copy>.eyebrow{font-size:0.75rem;margin-bottom:27px}.doctor-copy h2{font-size:3.3125rem;margin-bottom:26px}.doctor-copy>p:not(.eyebrow){font-size:1rem;line-height:1.95;max-width:none;margin-top:17px}.doctor-copy .doctor-lead{font-size:1.125rem!important}.doctor-signoff{margin-top:28px;margin-bottom:20px}.signature{font-size:2.125rem}.doctor-signoff .small-label{font-size:0.75rem}.doctor-copy .text-link{font-size:0.75rem}.doctor-photo{height:490px;border-radius:19px;margin-left:20px;margin-right:0}.doctor-seal{left:-22px;bottom:55px;width:95px;height:95px}.doctor-photo figcaption{font-size:0.75rem;bottom:26px}.space-section{padding-top:72px;padding-bottom:74px;border-radius:24px 24px 0 0}.space-heading{display:block;margin-bottom:37px}.space-heading .eyebrow{font-size:0.75rem;margin-bottom:26px}.space-heading h2{font-size:3.3125rem}.space-heading>p{font-size:1rem;line-height:1.9;margin-top:24px;max-width:none;padding:0}.space-gallery{display:flex;flex-direction:column;gap:23px}.space-image{border-radius:18px}.space-image-large{height:435px}.image-caption{left:22px;right:22px;bottom:23px;font-size:0.75rem}.space-gallery-side{padding-top:0;display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:center;width:100%}.space-gallery-side>.space-image{height:227px}.gallery-zoom{height:44px;width:44px;right:12px;bottom:12px}.gallery-zoom svg{height:16px;width:16px}.space-caption{padding:0}.space-caption .eyebrow{font-size:0.75rem;letter-spacing:.09em;line-height:1.9}.space-caption p{font-size:2rem;line-height:1.08;margin-top:15px}.faq-section{padding-top:78px;padding-bottom:78px;display:block}.faq-heading .eyebrow{font-size:0.75rem;margin-bottom:26px}.faq-heading h2{font-size:3.3125rem}.faq-heading>p:last-child{font-size:1rem;margin-top:22px}.faq-list{padding-top:34px}.faq-list summary{font-size:0.8125rem;line-height:1.9;padding:22px 0;gap:20px}.faq-list details>div{padding-right:23px;padding-bottom:25px}.faq-list details p{font-size:0.8125rem;line-height:1.9}.faq-list details .inline-link{font-size:0.75rem}.booking-inner{padding-top:72px;padding-bottom:70px}.booking-inner>.eyebrow{font-size:0.75rem;margin-top:20px;margin-bottom:24px}.booking-inner>.tiny-flower{font-size:1.5rem}.booking-inner h2{font-size:3rem}.booking-inner>p:not(.eyebrow){font-size:0.8125rem;line-height:1.9;margin-top:24px;max-width:280px;margin-left:auto;margin-right:auto}.booking-inner .button{min-height:50px;padding:0 22px;font-size:0.75rem;margin-top:25px;gap:26px}.booking-caption{font-size:0.75rem}.site-footer{padding-top:43px;padding-bottom:27px}.footer-main{display:grid;grid-template-columns:1fr auto;gap:28px;padding-bottom:36px}.footer-main .brand{grid-column:1/-1}.footer-main .brand-name{font-size:1.875rem}.footer-main .brand-subtitle{font-size:0.75rem}.footer-main>p{font-size:1.75rem}.back-top{font-size:0.75rem;gap:10px}.back-top svg{height:35px;width:35px;padding:10px}.footer-bottom{flex-wrap:wrap;font-size:0.75rem;gap:14px;padding-top:22px}.footer-bottom>span:first-child{width:100%}.footer-privacy{font-size:0.75rem;margin-left:auto;margin-top:-8px}dialog{padding:36px 25px;border-radius:19px}dialog h2{font-size:3.0625rem}.dialog-close{top:14px;right:14px;width:44px;height:44px}dialog>.eyebrow{font-size:0.75rem;margin-top:8px;margin-bottom:23px}.dialog-intro{font-size:0.8125rem}.interest-option{padding:14px}.interest-option>span:not(.radio-circle){font-size:1rem}.interest-option>span>span{font-size:0.75rem}.booking-submit{font-size:0.75rem;min-height:48px}.dialog-footnote{font-size:0.75rem}.booking-result h3{font-size:1.9375rem}.booking-result>p{font-size:1rem}.gallery-dialog{padding:15px;overflow:auto}.gallery-dialog figure img{height:65svh}.gallery-dialog figcaption{font-size:0.75rem}.privacy-dialog>p:not(.eyebrow){font-size:0.8125rem}.js-motion .reveal{transform:translateY(22px)}}
@media(max-width:375px){.hero-copy{top:19%}.hero h1{font-size:3.3125rem}.hero-eyebrow{margin-bottom:24px}.hero-description{max-width:270px}.hero-actions{margin-top:18px}.floating-portrait,.floating-flower{top:70%}.floating-portrait{width:118px;height:164px}.floating-flower{width:114px;height:148px}.hero-scene{transform:translateY(83svh) scale(.47)}.section-heading h2,.doctor-copy h2,.space-heading h2{font-size:3rem}.scene-copy h2{font-size:2.75rem}.philosophy-inner>p{font-size:2.875rem}.care-photo{height:400px}.doctor-photo{height:450px}.space-caption p{font-size:1.8125rem}.space-gallery-side{gap:16px}.space-gallery-side>.space-image{height:210px}.back-top{font-size:0.75rem;gap:8px}.footer-main>p{font-size:1.5625rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-motion .reveal{opacity:1;transform:none}.philosophy-flower{object-fit:cover}.motion-toggle{display:none}.button:hover{transform:none}}


/* Reading sizes stay consistent through the editorial layout and all viewports. */
html{scrollbar-gutter:stable}
.brand-subtitle{font-size:0.75rem;letter-spacing:.11em}
.button,.hero-actions .button,.hero-actions .text-link,.text-link,.inline-link,.treatment-body .inline-link,.doctor-copy .text-link,.faq-list details .inline-link,.booking-inner .button,.booking-submit,.booking-result .button,.booking-result .inline-link{font-size:0.8125rem}
.button-small{font-size:0.8125rem}
.hero-description{font-size:1.125rem}
.section-intro,.treatment-body p,.doctor-copy>p:not(.eyebrow),.space-heading>p,.faq-heading>p:last-child,.faq-list details p,.booking-inner>p:not(.eyebrow),.dialog-intro,.booking-result>p,.privacy-dialog>p:not(.eyebrow){font-size:1rem;line-height:1.75}
.faq-list summary{font-size:1rem;line-height:1.6}
.scene-copy>p:not(.eyebrow){font-size:1rem;line-height:1.7}
.scene-copy .button{font-size:0.8125rem;min-height:48px}
.treatment-note,.dialog-footnote,.booking-result .booking-honesty,.footer-bottom,.footer-privacy{font-size:0.75rem}
.floating-portrait figcaption span{font-size:0.75rem}
.doctor-copy .doctor-lead{font-size:1.125rem!important}
.interest-option>span:not(.radio-circle){font-size:1rem}
.interest-option>span>span{font-size:0.75rem}
.treatments>.eyebrow,.treatment-body .small-label,.doctor-copy>.eyebrow,.doctor-signoff .small-label,.space-heading .eyebrow,.space-caption .eyebrow,.faq-heading .eyebrow,.booking-inner>.eyebrow,.booking-caption,.scene-copy .eyebrow,.hero-eyebrow{font-size:0.75rem}
.section-number,.treatment-number{color:var(--muted)}
.floating-flower figcaption{background:rgba(249,247,243,.72);padding:6px 9px;border-radius:6px;left:16px;right:16px;bottom:16px;text-align:center}
.footer-main .brand-subtitle{font-size:0.75rem}
.footer-privacy{min-height:44px;margin-top:-16px}
.scene-footnote{font-size:0.75rem}
.motion-toggle{font-size:0.75rem}
.hero-scroll-cue{font-size:0.75rem}
.space-heading>p,.space-caption .eyebrow{color:#6b625c}
@media(max-width:1150px){.brand-name{font-size:1.6875rem}.brand-subtitle{font-size:0.75rem}.hero-copy{width:84%}.hero-actions{gap:19px}.care-editorial{gap:52px}.doctor-section{gap:75px}}
@media(max-width:900px){.care-editorial{gap:35px}.doctor-section{gap:52px}.hero-description{font-size:1.125rem}.hero-actions .text-link{max-width:205px}.scene-copy h2{font-size:3.875rem}.scene-copy>p:not(.eyebrow){font-size:1rem}.scene-copy .button{min-height:47px}}
@media(max-width:680px){
 .brand-subtitle{font-size:0.75rem;letter-spacing:.085em}.brand-name{font-size:1.6875rem}.site-header{padding-left:22px;padding-right:18px}.site-header.scrolled{padding-left:22px;padding-right:18px}
 .hero-stage{min-height:680px}.hero{min-height:1180px}.hero-copy{top:16%;width:calc(100% - 40px)}.hero-eyebrow{font-size:0.75rem;letter-spacing:.1em;margin-bottom:24px}.hero-description{font-size:1rem;line-height:1.7;max-width:330px;margin-top:20px}.hero-actions{margin-top:21px;gap:3px}.hero-actions .button{font-size:0.8125rem;min-height:49px}.hero-actions .text-link{font-size:0.8125rem;max-width:none;min-height:44px;padding:10px 0}.floating-portrait,.floating-flower{top:80%}.floating-portrait figcaption{font-size:1rem}.floating-flower figcaption{font-size:0.9375rem;left:11px;right:11px;padding:5px;bottom:11px}
 .hero-scene{transform:translateY(85svh) scale(.5);min-height:557px}.scene-copy{left:23px;right:23px;bottom:34px}.scene-copy h2{font-size:3rem}.scene-copy>p:not(.eyebrow){font-size:1rem;line-height:1.6;margin-top:21px}.scene-copy .eyebrow{font-size:0.75rem}.scene-copy .button{font-size:0.8125rem;min-height:46px;gap:15px;padding:0 19px}
 .care-section{padding-top:76px}.section-intro{font-size:1rem}.section-intro br{display:none}.section-heading h2,.doctor-copy h2,.space-heading h2,.faq-heading h2{font-size:3rem}.care-photo{height:455px}.treatment-body{padding-left:0;padding-right:0}.treatment-body p{font-size:1rem}.treatment-body .inline-link{font-size:0.8125rem;gap:13px;line-height:1.6;white-space:normal;min-height:44px}.treatment-note{font-size:0.75rem}.treatment h3{font-size:2.25rem}.treatment-body .small-label{font-size:0.75rem}
 .philosophy-inner>.eyebrow{font-size:0.75rem;max-width:280px;margin-left:auto;margin-right:auto}.philosophy-inner>p{font-size:clamp(2.25rem,10.25vw,2.625rem);text-wrap:balance}.motion-toggle{font-size:0.75rem;min-height:44px}
 .doctor-copy>p:not(.eyebrow){font-size:1rem;line-height:1.75}.doctor-copy .doctor-lead{font-size:1.125rem!important}.doctor-copy .text-link{font-size:0.8125rem}.doctor-signoff .small-label{font-size:0.75rem}.doctor-section{gap:45px}.doctor-photo{height:490px}.doctor-photo figcaption{font-size:0.75rem}
 .space-heading>p{font-size:1rem;line-height:1.75}.space-heading>p br{display:none}.space-caption .eyebrow{font-size:0.75rem;letter-spacing:.07em}.space-caption p{font-size:2rem}.image-caption{font-size:0.75rem}.space-gallery-side{gap:18px}.space-gallery-side>.space-image{height:250px}
 .faq-heading>p:last-child{font-size:1rem;line-height:1.75}.faq-list summary{font-size:1rem;line-height:1.6;padding:25px 0;gap:20px}.faq-list details p{font-size:1rem;line-height:1.75}.faq-list details>div{padding-right:0}.faq-list details .inline-link{font-size:0.8125rem;min-height:44px}.faq-list{padding-top:36px}
 .booking-inner>p:not(.eyebrow){font-size:1rem;line-height:1.75;max-width:320px}.booking-inner .button{font-size:0.8125rem}.booking-inner>.eyebrow{font-size:0.75rem;letter-spacing:.1em}.booking-caption{font-size:0.75rem}.footer-main .brand-subtitle{font-size:0.75rem}.back-top{font-size:0.75rem;gap:9px}.back-top svg{height:40px;width:40px}.footer-bottom,.footer-privacy{font-size:0.75rem}.footer-privacy{margin-top:-15px;min-height:44px}.footer-bottom{gap:18px}.footer-main{grid-template-columns:1fr auto}
 dialog>.eyebrow{font-size:0.75rem;max-width:260px}.dialog-intro,.booking-result>p,.privacy-dialog>p:not(.eyebrow){font-size:1rem;line-height:1.7}.interest-option>span:not(.radio-circle){font-size:1rem}.interest-option>span>span{font-size:0.75rem}.booking-submit{font-size:0.8125rem}.dialog-footnote{font-size:0.75rem}.booking-result .booking-honesty{font-size:0.75rem;line-height:1.7}.booking-result .inline-link{font-size:0.8125rem}.gallery-dialog figcaption{font-size:0.75rem}
}
@media(max-width:375px){.hero-copy{top:15%}.hero-eyebrow{font-size:0.75rem}.hero h1{font-size:3.3125rem}.hero-description{max-width:295px}.floating-portrait,.floating-flower{top:80%}.hero-scene{transform:translateY(86svh) scale(.47)}.brand-subtitle{font-size:0.75rem}.brand-name{font-size:1.625rem}.footer-main{column-gap:15px}.back-top{font-size:0.75rem;gap:7px}.footer-main>p{font-size:1.5625rem}.scene-copy h2{font-size:2.75rem}.philosophy-inner>p{font-size:clamp(2.25rem,10.25vw,2.625rem)}.doctor-photo{height:450px}.space-gallery-side>.space-image{height:240px}.space-caption p{font-size:1.8125rem}}


/* Compact comparisons use faithful previews; full records open on demand. */
.results-section{padding-top:105px;padding-bottom:110px;border-top:1px solid var(--line)}
.results-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:48px;margin-bottom:24px}
.results-heading h2{font-size:clamp(3rem,5.3vw,4.75rem)}
.results-heading>p{max-width:380px;font-size:1rem;color:var(--muted);line-height:1.75}
.comparison-help{display:none;margin-bottom:32px;color:var(--muted);font-size:.8125rem;line-height:1.7}
.results-section.has-comparisons .comparison-help{display:block}
.comparison-track{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin:32px 0 0}
.comparison-card{min-width:0}
.comparison-viewer{position:relative;display:flex;flex-direction:column;gap:16px;border-radius:22px;overflow:hidden;background:var(--sand);isolation:isolate}
.comparison-image{min-width:0;background:var(--paper)}
.comparison-image img{width:100%;height:auto;user-select:none;-webkit-user-drag:none}
.comparison-image figcaption{padding:12px 16px;font-size:.8125rem}
.comparison-before{order:-1}
.comparison-range,.comparison-divider,.comparison-label{display:none}
.comparison-viewer.is-ready{display:block;aspect-ratio:4/3;gap:0}
.comparison-viewer.is-ready .comparison-image{position:absolute;inset:0}
.comparison-viewer.is-ready .comparison-image img{width:100%;height:100%;object-fit:contain}
.comparison-viewer.is-ready .comparison-before{z-index:1;clip-path:inset(0 calc(100% - var(--split)) 0 0)}
.comparison-viewer.is-ready figcaption{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.comparison-viewer.is-ready .comparison-label{display:block;position:absolute;bottom:20px;z-index:3;padding:8px 20px;border-radius:100px;background:var(--white);color:var(--ink);font-size:.75rem;font-weight:500;line-height:1.5;pointer-events:none}
.comparison-label-before{left:20px}
.comparison-label-after{right:20px}
.comparison-viewer.is-ready .comparison-range{display:block;position:absolute;z-index:5;top:50%;left:0;width:100%;height:64px;transform:translateY(-50%);margin:0;opacity:0;cursor:ew-resize;touch-action:pan-y}
.comparison-viewer.is-ready .comparison-divider{display:block;position:absolute;z-index:4;top:0;bottom:0;left:var(--split);width:2px;background:var(--white);transform:translateX(-50%);pointer-events:none}
.comparison-handle{position:absolute;top:50%;left:50%;display:flex;align-items:center;justify-content:center;width:48px;height:48px;border:2px solid var(--white);border-radius:50%;background:var(--paper);color:var(--burgundy);transform:translate(-50%,-50%);box-shadow:0 2px 12px rgba(42,36,34,.15)}
.comparison-handle svg{width:24px;height:24px;stroke-width:1.5}
.comparison-range:focus-visible+.comparison-divider .comparison-handle{outline:3px solid var(--burgundy);outline-offset:4px}
.comparison-caption{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:20px 0 8px}
.comparison-caption h3{font-size:2rem;line-height:1.15;letter-spacing:-.025em;overflow-wrap:anywhere}
.comparison-originals{display:flex;gap:20px;flex-wrap:wrap}
.comparison-originals a{display:inline-flex;align-items:center;min-height:44px;color:var(--burgundy);font-size:.8125rem;text-decoration:underline;text-underline-offset:4px}
#result-prev svg{transform:rotate(180deg)}
.results-footnote{display:flex;justify-content:space-between;align-items:center;gap:32px;margin-top:36px;padding-top:24px;border-top:1px solid var(--line)}
.results-footnote>p{max-width:540px;font-size:.8125rem;color:var(--muted);line-height:1.7}
.results-footnote .inline-link{flex:none}
.results-dialog{width:1000px;padding:24px;background:var(--paper)}
.results-dialog .dialog-close{z-index:1;background:var(--paper)}
.result-photo-frame{height:65svh;position:relative;display:flex;align-items:center;justify-content:center}
.result-photo-frame>img{width:100%;height:100%;object-fit:contain}
.results-dialog figcaption{text-align:center;font-size:.875rem;line-height:1.6;margin-top:16px}
@media(max-width:900px){
 .results-heading{gap:32px}.results-heading>p{max-width:300px}
 .comparison-caption{align-items:flex-start;flex-direction:column;gap:8px}
 .results-footnote{align-items:flex-start;flex-direction:column;gap:12px}
}
@media(max-width:680px){
 .results-section{padding-top:72px;padding-bottom:76px}
 .results-heading{display:block;margin-bottom:20px}
 .results-heading h2{font-size:3rem}
 .results-heading>p{max-width:none;margin-top:22px}
 .comparison-help{margin-bottom:24px}
 .comparison-track{grid-template-columns:1fr;gap:32px;margin-top:24px}
 .comparison-viewer{border-radius:20px}
 .comparison-viewer.is-ready .comparison-label{bottom:14px;padding:6px 14px}
 .comparison-label-before{left:14px}.comparison-label-after{right:14px}
 .comparison-handle{width:48px;height:48px}
 .comparison-caption{padding-top:16px}
 .comparison-caption h3{font-size:1.75rem}
 .comparison-originals{gap:24px}
 .results-footnote{margin-top:28px;padding-top:20px}
 .results-dialog{padding:16px}.result-photo-frame{height:62svh}.results-dialog figcaption{font-size:.8125rem}
}


/* The LB outlines come directly from the supplied vector sublogo. */
.brand.has-monogram{display:flex;flex-direction:row;align-items:center;gap:16px}
.brand-monogram{width:56px;height:51px;object-fit:contain;flex:none}
.brand-wordmark{display:flex;flex-direction:column;gap:7px}
.brand-wordmark .brand-name{white-space:nowrap}
@media(max-width:1100px){
}
@media(max-width:680px){
 .site-header,.site-header.scrolled{padding:18px 20px;gap:8px}
 .brand.has-monogram{gap:11px}
 .brand-monogram{width:44px;height:40px}
 .brand-wordmark{gap:6px;max-width:195px}
 .brand-wordmark .brand-name{font-size:1.5rem}
 .brand-wordmark .brand-name>span{font-size:1rem}
 .brand-wordmark .brand-subtitle{font-size:0.75rem;line-height:1.5;letter-spacing:.055em;padding-left:0}
 .footer-main .brand-wordmark .brand-name{font-size:1.75rem}
 .footer-main .brand-wordmark .brand-subtitle{font-size:0.75rem}
}
@media(max-width:360px){.site-header,.site-header.scrolled{padding-left:16px;padding-right:16px}.site-header .brand-monogram{width:38px;height:35px}.site-header .brand.has-monogram{gap:8px}.site-header .brand-name{font-size:1.375rem}.site-header .brand-wordmark{max-width:181px}.footer-main .brand-wordmark .brand-name{font-size:1.5625rem}}

/* Official contact channels share the page's existing type and quiet dividers. */
.contact-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:40px;padding-top:24px;border-top:1px solid var(--line);text-align:left}
.contact-links>a{display:flex;flex-direction:column;justify-content:center;gap:5px;min-height:44px;font-size:0.8125rem;line-height:1.7;overflow-wrap:anywhere}
.contact-links>a:hover [data-contact-value]{text-decoration:underline;text-underline-offset:4px}
.contact-label{font-size:0.75rem;color:var(--muted)}
.footer-contacts{margin-top:0;margin-bottom:32px;padding-top:0;border-top:0}
.dialog-contact-note{font-size:0.8125rem;color:var(--muted);line-height:1.7;margin-top:18px}
@media(max-width:680px){.contact-links{grid-template-columns:1fr;gap:18px;margin-top:32px}.booking-inner .contact-links{text-align:center}.footer-contacts{margin-top:0;margin-bottom:28px}.dialog-contact-note{font-size:0.8125rem}}

/* Static narrative remains readable before initialization or when motion is reduced. */
html:not(.hero-motion) .hero{height:auto;min-height:0}html:not(.hero-motion) .hero-stage{height:auto;min-height:0;position:relative;overflow:hidden;padding-top:170px;padding-bottom:0}html:not(.hero-motion) .hero-copy{position:relative;left:auto;top:auto;margin:auto;transform:none!important;opacity:1!important}html:not(.hero-motion) .floating-photo,html:not(.hero-motion) .hero-scroll-cue{display:none}html:not(.hero-motion) .hero-scene{position:relative;left:auto;right:auto;top:auto;height:650px;min-height:0;width:calc(100% - 96px);margin:85px auto 0;transform:none!important}html:not(.hero-motion) .hero-scene-picture>img{transform:none!important}html:not(.hero-motion) .scene-shade,html:not(.hero-motion) .scene-copy,html:not(.hero-motion) .scene-footnote{opacity:1!important;transform:none!important}
@media(max-width:680px){html:not(.hero-motion) .hero-stage{padding-top:156px}html:not(.hero-motion) .hero-scene{width:calc(100% - 32px);height:570px;margin-top:62px}html:not(.hero-motion) .hero-copy{width:calc(100% - 40px)}html:not(.hero-motion) .care-section{padding-top:76px}}

/* The flower uses one GPU transform, paused outside the viewport. */
.philosophy-artwork{position:absolute;inset:-3%;z-index:-2;overflow:hidden;pointer-events:none}
.philosophy-artwork>.philosophy-flower{inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center 62%;transform:translate3d(-.6%,.4%,0) scale(1.04);animation:atmosphere-drift 18s ease-in-out infinite alternate;animation-play-state:paused}
.philosophy-artwork.is-playing>.philosophy-flower{animation-play-state:running;will-change:transform}
@keyframes atmosphere-drift{from{transform:translate3d(-.6%,.4%,0) scale(1.04)}to{transform:translate3d(.6%,-.4%,0) scale(1.065)}}
.hero-idle .hero-copy,.hero-idle .hero-scene,.hero-idle .floating-photo{will-change:auto}
.hero-scene{will-change:auto}
.hero-scene-picture>img{transform:none}
.scene-shade{background:linear-gradient(0deg,rgba(20,18,15,.66),transparent 75%),linear-gradient(90deg,rgba(20,18,15,.2),transparent 70%)}
.site-header .brand.has-monogram{width:56px;min-height:51px;gap:0;justify-content:center}
.site-header .brand-monogram{width:42px;height:auto}
@media(max-width:680px){.philosophy-artwork>.philosophy-flower{object-position:75% center}.site-header .brand.has-monogram{width:44px;min-height:44px}.site-header .brand-monogram{width:34px}}
@media(prefers-reduced-motion:reduce){.philosophy-artwork>.philosophy-flower{animation:none;transform:none}.philosophy-artwork.is-playing>.philosophy-flower{will-change:auto}}

/* Review refinements: readable metadata and a quieter editorial rhythm. */
.hero-scene-picture{display:block;position:absolute;inset:0;width:100%;height:100%}
.hero-eyebrow{font-size:.9375rem;letter-spacing:.035em}
.eyebrow,.small-label,.booking-caption,.scene-footnote,.hero-scroll-cue{letter-spacing:.06em}
.doctor-signoff .small-label{font-size:.8125rem;letter-spacing:.025em}
.brand-wordmark{min-width:0}
.footer-main .brand{min-width:0;flex-shrink:1}
.footer-main .brand-wordmark{max-width:16rem}
.footer-main .brand-wordmark .brand-name{white-space:normal;line-height:1.05}
.footer-main .brand-wordmark .brand-subtitle{font-size:.75rem;line-height:1.6;letter-spacing:.015em}
.care-section{padding-bottom:110px}
.doctor-section{padding-top:110px;border-top:1px solid var(--line)}
.section-heading h2{max-width:14ch;text-wrap:balance}
.space-heading h2{max-width:8ch}
.faq-heading h2{max-width:8ch}
@media(max-width:680px){
 .hero-eyebrow{font-size:.875rem;letter-spacing:.025em}
 .footer-main .brand-wordmark{max-width:calc(100% - 55px)}
 .care-section{padding-bottom:80px}
 .doctor-section{padding-top:76px}
 .space-caption .eyebrow{letter-spacing:.025em}
 .footer-bottom{gap:14px}
}

/* The original vector lettering rotates around the stationary LB. */
.doctor-seal{padding:0;border:0;background:#a5958b;transform:none;isolation:isolate}
.doctor-seal img{position:absolute;inset:0;pointer-events:none}
.doctor-seal-ring{animation:seal-rotation 32s linear infinite;animation-play-state:paused}
.doctor-seal.is-spinning .doctor-seal-ring{animation-play-state:running}
.doctor-seal[aria-pressed="true"] .doctor-seal-ring{animation-play-state:paused}
.doctor-seal:disabled{cursor:default;opacity:1}
@keyframes seal-rotation{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.doctor-seal-ring{animation:none}}

/* Glass appears only after scrolling; opaque fallback keeps the controls readable. */
.site-header{background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}
.site-header.scrolled{background:rgba(249,247,243,.94);box-shadow:inset 0 -1px 0 rgba(255,253,252,.8),0 1px 0 rgba(104,66,75,.08),0 8px 28px rgba(42,36,34,.045);-webkit-backdrop-filter:none;backdrop-filter:none}
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
 .site-header.scrolled{background:rgba(249,247,243,.66);-webkit-backdrop-filter:blur(20px) saturate(135%);backdrop-filter:blur(20px) saturate(135%)}
}

/* Follow scroll direction without moving the page or animating the glass blur. */
.site-header{transform:translateY(0);transition:transform .32s var(--ease),padding .4s var(--ease),background .4s,box-shadow .4s}
.site-header.is-hidden{transform:translateY(calc(-100% - 16px));pointer-events:none}

/* The introduction title enters once, with a short pause between its lines. */
.heading-line{display:block;clip-path:inset(-.12em -.08em -.16em)}
.heading-line>span,.heading-line>em{display:block}
@media(prefers-reduced-motion:no-preference){
 .js-motion .heading-reveal .heading-line>span,.js-motion .heading-reveal .heading-line>em{opacity:0;transform:translate3d(0,1.1em,0)}
 .js-motion .heading-reveal.is-visible .heading-line>span,.js-motion .heading-reveal.is-visible .heading-line>em{opacity:1;transform:none;transition:transform .9s cubic-bezier(.16,1,.3,1),opacity .7s ease}
 .js-motion .heading-reveal.is-visible .heading-line:nth-child(2)>em{transition-delay:.14s}
}

/* Procedure families use local, licensed bank vectors in the clinic's palette. */
.procedures-section{--procedure-surface:#332c2a;--procedure-surface-skin:#3b3032;--procedure-muted:#d2c6be;padding-top:112px;padding-bottom:112px;background:var(--ink);color:var(--paper)}
.procedures-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:48px;margin-bottom:48px}
.procedures-heading h2{max-width:14ch;overflow-wrap:anywhere}
.procedures-heading>p{max-width:390px;justify-self:end;color:var(--procedure-muted);font-size:1rem;line-height:1.75}
.procedures-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
.procedure-card{--procedure-divider:rgba(255,253,252,.2);display:flex;flex-direction:column;min-width:0;padding:32px;border:1px solid var(--procedure-divider);border-radius:22px;background:var(--procedure-surface);color:var(--paper)}
.procedure-card-harmony{background:var(--burgundy);color:var(--white)}
.procedure-card-skin{background:var(--procedure-surface-skin)}
.procedure-card-heading{min-width:0;padding-bottom:32px}
.procedure-illustration{display:block;width:80px;height:80px;margin-bottom:32px;color:var(--paper);fill:none;stroke:none}
.procedure-card-harmony .procedure-illustration{color:var(--white)}
.procedure-card h3{font-size:clamp(2rem,2.6vw,2.5rem);line-height:1.08;letter-spacing:-.03em;overflow-wrap:anywhere}
.procedure-list{list-style:none;padding:0;margin:0 0 32px;font-size:1rem;line-height:1.65}
.procedure-list li{padding:12px 0;border-top:1px solid var(--procedure-divider);overflow-wrap:break-word}
.procedure-contact{justify-content:space-between;gap:12px;min-height:44px;margin-top:auto;padding:8px 0 0;border-top:1px solid var(--procedure-divider);color:var(--paper);font-size:.8125rem;line-height:1.6;overflow-wrap:anywhere}
.procedure-card-harmony .procedure-contact{color:var(--white)}
.procedure-contact-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;flex:none;border:1px solid var(--procedure-divider);border-radius:50%;transition:background .3s var(--ease)}
.procedure-contact:hover .procedure-contact-icon{background:rgba(255,253,252,.12)}
.procedure-contact:focus-visible{outline-color:var(--white)}
.procedures-note{margin-top:24px;color:var(--procedure-muted);font-size:.8125rem;line-height:1.7}
@media(max-width:1150px){.procedures-grid{gap:16px}.procedure-card{padding:24px}.procedure-card h3{font-size:2rem}}
@media(max-width:900px){
 .procedures-section{padding-top:80px;padding-bottom:80px}
 .procedures-heading{gap:32px}
 .procedures-grid{grid-template-columns:1fr;gap:24px}
 .procedure-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);column-gap:40px;padding:32px}
 .procedure-card-heading{grid-row:span 2;padding-bottom:0}
 .procedure-illustration{margin-bottom:24px}
 .procedure-card h3{font-size:2.25rem}
 .procedure-list{margin-bottom:24px}
 .procedure-contact{align-self:end}
}
@media(max-width:680px){
 .procedures-section{padding-top:72px;padding-bottom:76px}
 .procedures-heading{display:block;margin-bottom:32px}
 .procedures-heading h2{font-size:3rem}
 .procedures-heading>p{margin-top:24px;max-width:360px}
 .procedures-heading>p br{display:none}
 .procedure-card{display:flex;padding:24px;border-radius:20px}
 .procedure-card-heading{display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:16px;padding-bottom:20px}
 .procedure-illustration{width:48px;height:48px;margin-bottom:0}
 .procedure-card h3{font-size:2rem}
 .procedure-list{margin-bottom:20px}
 .procedure-contact{align-self:stretch}
 .procedures-note{margin-top:24px}
}

/* Contact details and the building's map share one clear destination. */
.location-section{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:80px;padding-top:108px;padding-bottom:108px;align-items:stretch}
.location-copy{min-width:0}
.location-copy h2{overflow-wrap:anywhere;font-size:clamp(3rem,4.8vw,4.25rem);margin-bottom:32px}
.clinic-address{font-style:normal}
.clinic-address>.contact-label{display:block;margin-bottom:10px}
.clinic-address p{font-size:1rem;line-height:1.8}
.location-route{min-height:44px;margin-top:10px}
.location-contacts{grid-template-columns:1fr;gap:16px;margin-top:24px;padding-top:24px}
.location-contacts>a{align-items:flex-start;font-size:.9375rem}
.location-map{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:22px;background:var(--white)}
.location-map iframe{display:block;width:100%;height:100%;min-height:480px;flex:1;border:0}
.location-map-link{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:60px;padding:16px 22px;border-top:1px solid var(--line);font-size:.8125rem;color:var(--burgundy)}
.location-map-link:hover{text-decoration:underline;text-underline-offset:4px}
.location-map-link svg{width:17px;height:17px}
@media(max-width:1000px){.location-section{gap:48px}}
@media(max-width:800px){
 .location-section{grid-template-columns:1fr;gap:40px;padding-top:80px;padding-bottom:80px}
 .location-copy h2{margin-bottom:28px}
 .location-contacts{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}
 .location-map iframe{height:420px;min-height:0;flex:none}
}
@media(max-width:680px){
 .location-section{padding-top:72px;padding-bottom:72px;gap:32px}
 .location-contacts{grid-template-columns:1fr;gap:16px}
 .location-contacts>a{font-size:.875rem}
 .location-map{border-radius:18px}
 .location-map iframe{height:340px}
 .location-map-link{padding:16px 18px}
}
