@font-face{font-family:Cormorant;src:url('serif.ttf') format('truetype');font-weight:400;font-display:swap}
    @font-face{font-family:Cormorant;src:url('serif-italic.ttf') format('truetype');font-style:italic;font-weight:400;font-display:swap}
    @font-face{font-family:Manrope;src:url('sans.ttf') format('truetype');font-weight:400;font-display:swap}
    @font-face{font-family:Manrope;src:url('sans-semibold.ttf') format('truetype');font-weight:600;font-display:swap}
    :root{--paper:#faf8f4;--ivory:#f1eade;--ink:#3b3933;--muted:#686259;--clay:#954c38;--blush:#dfc5ba;--line:#d9d0c4;--sand:#cbb8a3;--serif:Cormorant,Georgia,serif;--sans:Manrope,'Avenir Next',sans-serif;--gutter:clamp(24px,5.8vw,100px)}
    *{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:122px}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--sans);font-size:15px;line-height:1.75}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}a{color:inherit;text-decoration:none}button{color:inherit}button,a,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--clay);outline-offset:6px}button{cursor:pointer}p{margin:0 0 24px}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.05;margin:0}h2{font-size:clamp(40px,4.1vw,62px);letter-spacing:-1.3px}h3{font-size:34px}em{font-weight:400}img{max-width:100%}.wrap{padding-left:var(--gutter);padding-right:var(--gutter);max-width:1600px;margin:auto}.eyebrow{text-transform:uppercase;letter-spacing:.19em;font-size:10px;font-weight:600;line-height:1.6;margin-bottom:25px}.text-link{display:inline-flex;align-items:center;gap:25px;font-size:12px;font-weight:600;padding:9px 0;border-bottom:1px solid var(--clay)}.arrow{font-size:20px;font-weight:400;line-height:1}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;min-height:50px;background:var(--clay);color:#fffaf5;padding:15px 23px;border:1px solid var(--clay);font-size:11px;font-weight:600;letter-spacing:.025em;transition:background .2s,transform .2s}.button:hover{background:#783c2c}.button.outline{background:transparent;color:var(--ink);border-color:#aca195}.button.outline:hover{background:var(--ivory)}
    .skip-link{position:fixed;top:-100px;left:20px;z-index:300;background:var(--ink);color:white;padding:12px}.skip-link:focus{top:10px}.concept-bar{display:flex;justify-content:space-between;gap:16px;padding:7px var(--gutter);background:#e9e1d6;font-size:9px;letter-spacing:.12em;text-transform:uppercase}.concept-bar span:last-child{color:#61574d}header{position:sticky;top:0;z-index:30;background:var(--paper);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:25px;height:104px}.brand{display:block;width:84px;flex-shrink:0;line-height:0}.brand img{width:84px;height:87px;object-fit:contain;mix-blend-mode:multiply}.desktop-nav{display:flex;align-items:center;gap:28px;font-size:12px;line-height:1.4}.desktop-nav>a,.nav-treatment>button{padding:13px 0;white-space:nowrap}.desktop-nav>a{border-bottom:1px solid transparent}.desktop-nav [aria-current]{color:var(--clay);border-bottom-color:var(--clay)}.desktop-nav>a:hover,.nav-treatment>button:hover,.nav-treatment>button[aria-expanded="true"]{color:var(--clay)}.nav-treatment>button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;border:0;background:none;font:inherit;line-height:1.4}.chevron{display:block;width:12px;height:12px;flex:none;transition:transform .18s}.nav-treatment>button[aria-expanded="true"] .chevron,.mobile-treatments[open]>summary .chevron{transform:rotate(180deg)}
    .treatment-mega{position:absolute;top:100%;left:50%;transform:translateX(-50%);width:min(800px,calc(100% - var(--gutter) * 2));max-height:calc(100dvh - 145px);overflow-y:auto;overscroll-behavior:contain;background:var(--paper);padding:25px 30px 0;border:1px solid var(--line);border-top:2px solid var(--clay);box-shadow:0 16px 26px #3b393312}.treatment-mega[hidden]{display:none}.mega-heading{display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin-bottom:15px}.mega-heading p{font:30px/1.1 var(--serif);margin:0}.mega-heading span{font-size:10px;color:var(--muted)}.mega-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;column-gap:30px}.mega-grid li{min-width:0}.treatment-menu-link{display:flex;align-items:center;gap:15px;min-height:82px;padding:13px 0;border-bottom:1px solid #e6dfd5;transition:color .15s}.mega-grid li:nth-last-child(-n+2) .treatment-menu-link{border-bottom:0}.treatment-menu-link:hover,.treatment-menu-link:focus-visible{color:var(--clay)}.treatment-menu-link:hover .treatment-thumb,.treatment-menu-link:focus-visible .treatment-thumb{background:#e3d7c9}.treatment-menu-link:focus-visible{outline-offset:2px}.treatment-thumb{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;flex:0 0 52px;width:52px;height:56px;background:#ebe4da;color:#857565;transition:background .15s}.treatment-thumb svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:1.2}.treatment-thumb small{font:8px/1.2 var(--sans);letter-spacing:.03em}.treatment-link-copy{display:block;min-width:0}.treatment-link-copy strong{display:block;font-size:13px;font-weight:600;line-height:1.45}.treatment-link-copy small{display:block;margin-top:4px;font-size:10px;font-weight:400;line-height:1.5;color:var(--muted)}.mega-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);margin-top:10px;padding:17px 0}.mega-footer a{display:inline-flex;align-items:center;gap:18px;font-size:11px;font-weight:600}.mega-footer a:hover{color:var(--clay)}.mega-footer span{font-size:9px;color:var(--muted)}.mega-footer svg{width:15px;height:15px}
    .header-cta{display:flex;align-items:center;gap:24px}.header-phone{font-size:11px;white-space:nowrap}.header-cta .button{min-height:44px;padding:11px 17px;white-space:nowrap}.menu-button{display:none;border:0;background:none;width:44px;height:44px;align-items:center;justify-content:center}.menu-button span,.menu-button span:after{display:block;width:22px;height:1px;background:var(--ink);content:''}.menu-button span:after{transform:translateY(6px)}
    .hero{position:relative;min-height:610px;overflow:hidden;background:#eee4d8}.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(95deg,#eee6da 5%,#eee6daec 38%,#eee6da30 70%,transparent),linear-gradient(140deg,#e8d8c6 20%,#d2b9aa 60%,#c3aa9a)}.hero-art{position:absolute;inset:0 0 0 47%;overflow:hidden;background:repeating-linear-gradient(105deg,transparent 0,transparent 60px,#fff7ec15 61px,#fff7ec15 63px,transparent 90px);mask-image:linear-gradient(90deg,transparent,#000 30%)}.hero-art:before{content:'';position:absolute;inset:8% 10% 0 15%;border:1px solid #fff8ec80;border-bottom:0;border-radius:50% 50% 0 0;transform:rotate(8deg);box-shadow:35px 20px 70px #8b624319}.hero-art:after{content:'';position:absolute;inset:21% 20% -20% 27%;border:1px solid #fff8ec55;border-radius:50% 50% 0 0;transform:rotate(8deg)}.hero-content{position:relative;z-index:1;padding-top:83px;padding-bottom:78px}.hero h1{font-size:clamp(64px,6.4vw,96px);letter-spacing:-2.4px;max-width:800px;line-height:.99;margin-bottom:27px}.hero h1 em{display:block;color:#884d3c}.hero-copy{max-width:410px;font-size:13px;line-height:1.9;color:#59554d;margin-bottom:31px}.hero-actions{display:flex;align-items:center;gap:27px}.hero-actions .text-link{border-bottom:0;font-weight:400}.photo-caption{position:absolute;bottom:25px;right:var(--gutter);font-size:8px;letter-spacing:.2em;text-transform:uppercase;display:flex;align-items:center;gap:13px;color:#564a40}.photo-caption:before{content:'';width:28px;height:1px;background:currentColor}.hero-note{position:absolute;right:13%;top:44%;font-family:var(--serif);font-style:italic;font-size:26px;color:#6b5448;text-align:center;line-height:1.1}.hero-note small{display:block;font:8px var(--sans);letter-spacing:.2em;text-transform:uppercase;margin-top:12px}.pillars{border-bottom:1px solid var(--line)}.pillar-grid{display:grid;grid-template-columns:repeat(4,1fr);padding-top:27px;padding-bottom:27px}.pillar{display:flex;align-items:center;justify-content:center;gap:17px;padding:7px 14px;border-right:1px solid var(--line)}.pillar:first-child{padding-left:0;justify-content:flex-start}.pillar:last-child{border:0;padding-right:0}.pillar span{font:italic 18px var(--serif);color:#927361}.pillar p{margin:0;font-size:11px}
    .intro{display:grid;grid-template-columns:1fr 1fr;gap:90px;padding-top:103px;padding-bottom:102px}.intro h2{max-width:490px}.intro-copy{padding-top:39px;max-width:470px;color:var(--muted);font-size:13px}.intro-copy p{margin-bottom:23px}.intro-copy .text-link{color:var(--ink)}
    .treatments{background:var(--ivory);padding-top:86px;padding-bottom:91px}.section-title{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:52px}.section-title .eyebrow{margin-bottom:18px}.section-title p{max-width:345px;font-size:12px;color:var(--muted);margin:0 0 5px}.treatment-layout{display:grid;grid-template-columns:.88fr 1.12fr;gap:75px}.photo-block{position:relative;background:#d6c0b1;overflow:hidden;display:flex;align-items:center;justify-content:center;min-height:420px}.photo-block:before{content:'';position:absolute;inset:26px;border:1px solid #f9f3eb88}.photo-block .placeholder-label{text-align:center;z-index:1}.placeholder-label span{font-family:var(--serif);font-size:29px;font-style:italic;display:block;color:#62534a}.placeholder-label small{font-size:8px;text-transform:uppercase;letter-spacing:.17em;color:#62534a;display:block;margin-top:12px}.photo-block.treatment-photo{background:linear-gradient(135deg,#ded0bc,#c4ae9b);min-height:470px}.photo-block.treatment-photo:after{content:'';height:340px;width:340px;position:absolute;border-radius:50%;border:1px solid #f7f0e455;transform:translate(-45%,42%)}.photo-block .photo-caption{bottom:38px;left:41px;right:auto;font-size:7px}.treatment-list{border-top:1px solid #cfc3b4}.treatment-list details{border-bottom:1px solid #cfc3b4}.treatment-list summary{list-style:none;display:flex;align-items:center;gap:23px;cursor:pointer;padding:18px 0}.treatment-list summary::-webkit-details-marker{display:none}.treatment-list summary .num{font-size:9px;color:#806e5c;min-width:17px}.treatment-list summary h3{font-size:26px;line-height:1.15}.plus{margin-left:auto;font-size:21px;font-weight:400;transition:transform .2s;line-height:1}.treatment-list details[open] .plus{transform:rotate(45deg)}.treatment-list details p{font-size:12px;margin:0 32px 22px 40px;color:#62594d;line-height:1.8}.treatment-list details[open] summary h3{color:var(--clay)}
    .team{padding-top:103px;padding-bottom:100px}.team-layout{display:grid;grid-template-columns:1.08fr 1fr 1fr;gap:34px}.team-intro{padding-right:35px}.team-intro h2{margin-bottom:25px}.team-intro>p:not(.eyebrow){font-size:12px;color:var(--muted);max-width:260px}.team-intro .text-link{margin-top:12px}.team-person .photo-block{min-height:0;aspect-ratio:4/4.8;background:#e7dcd0}.team-person:nth-child(3) .photo-block{background:#d7c6ba}.team-person .placeholder-label span{font-size:24px}.team-person .photo-block:before{inset:18px}.team-person h3{font-size:29px;margin-top:23px;margin-bottom:7px}.team-role{font-size:9px;line-height:1.65;letter-spacing:.03em;color:var(--muted);margin:0}.team-person .team-bio{font-size:11px;line-height:1.8;margin-top:16px;color:var(--muted)}
    .consultation{background:#e6d4ca;text-align:center;padding:76px 24px 80px;border-top:1px solid #d4bfb3;border-bottom:1px solid #d4bfb3}.consultation h2{font-size:clamp(40px,4.6vw,68px);margin-bottom:24px}.consultation p:not(.eyebrow){max-width:510px;margin:0 auto 30px;font-size:13px;color:#615249}.consultation .eyebrow{margin-bottom:19px}
    .faq{display:grid;grid-template-columns:1fr 1.1fr;gap:85px;padding-top:98px;padding-bottom:98px}.faq h2{max-width:400px}.faq-list{border-top:1px solid var(--line);align-self:start}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:12px;padding:24px 0;cursor:pointer}.faq-list summary::-webkit-details-marker{display:none}.faq-list details p{font-size:12px;color:var(--muted);padding-right:30px;margin-bottom:24px}.faq-list details[open] .plus{transform:rotate(45deg)}
    footer{background:#eae2d7}.footer-main{padding-top:62px;padding-bottom:52px;display:grid;grid-template-columns:1.2fr 1fr 1fr 1.1fr;gap:40px}.footer-brand .brand{width:110px}.footer-brand .brand img{width:110px;height:114px}.footer-brand p{font-family:var(--serif);font-size:23px;line-height:1.2;margin:18px 0 0}.footer-col{padding-top:8px;font-size:11px}.footer-col h2{font:600 9px var(--sans);letter-spacing:.15em;text-transform:uppercase;margin-bottom:23px}.footer-col p{line-height:1.9;margin-bottom:12px}.footer-col>a{display:block;margin-bottom:9px;width:fit-content}.footer-col>a:hover{color:var(--clay)}.footer-col .text-link{margin-top:18px}.footer-bottom{border-top:1px solid #d4c9ba;padding-top:21px;padding-bottom:21px;display:flex;justify-content:space-between;font-size:8px;letter-spacing:.04em;color:#70665b}.mobile-bar{display:none}
    dialog{border:1px solid var(--line);background:var(--paper);color:var(--ink);padding:46px;max-width:470px;width:calc(100% - 40px)}dialog::backdrop{background:#302a2470;backdrop-filter:blur(5px)}dialog .close{position:absolute;top:10px;right:13px;border:0;background:none;font-size:27px;width:40px;height:40px}dialog h2{font-size:43px;margin-bottom:20px}dialog p:not(.eyebrow){font-size:13px;color:var(--muted);margin-bottom:25px}dialog .eyebrow{color:var(--clay)}.mobile-nav-dialog{max-width:none;width:85%;height:100dvh;max-height:100dvh;left:auto;right:0;margin:0;padding:80px 30px 30px}.mobile-nav-dialog nav{display:flex;flex-direction:column;gap:18px;font:34px var(--serif);margin-bottom:40px}.mobile-nav-dialog .eyebrow{font-family:var(--sans)}
    /* Quiet photo fields keep the review focused on the layout until photography is selected. */
    .hero{background:#eee6da}.hero:before{display:none}.hero-art{inset:0 0 0 62%;background:#e0d5c8;mask-image:none;border-left:1px solid #d5c7b8}.hero-art:before,.hero-art:after{display:none}.hero-note{font:13px/1.5 var(--sans);color:#76695c;right:10%;top:45%}.hero-note small{font-size:9px;letter-spacing:.02em;text-transform:none;margin-top:4px}.photo-caption{font-size:8px;letter-spacing:.08em}.photo-caption:before{display:none}.photo-block.treatment-photo{background:#ddd1c3}.photo-block:before,.photo-block.treatment-photo:after{display:none}.placeholder-label span,.team-person .placeholder-label span{font:13px/1.5 var(--sans);color:#76695c}.placeholder-label small{font-size:9px;letter-spacing:.02em;text-transform:none;margin-top:4px;color:#76695c}.team-person .photo-block,.team-person:nth-child(3) .photo-block{background:#e7ded3}.mobile-treatments>summary{display:flex;align-items:center;justify-content:space-between;gap:15px;cursor:pointer;list-style:none}.mobile-treatments>summary::-webkit-details-marker{display:none}.mobile-treatments>summary .chevron{width:16px;height:16px}.mobile-treatment-links{padding-top:12px}.mobile-treatment-links .mega-grid{display:block}.mobile-treatment-links .treatment-menu-link{min-height:69px;padding:10px 0;gap:12px;border-bottom:1px solid var(--line)}.mobile-treatment-links .treatment-thumb{flex-basis:40px;width:40px;height:44px}.mobile-treatment-links .treatment-thumb svg{width:16px;height:16px}.mobile-treatment-links .treatment-thumb small{font-size:7px}.mobile-treatment-links .treatment-link-copy strong{font-size:12px}.mobile-treatment-links .treatment-link-copy small{font-size:10px;margin-top:2px}.mobile-treatment-links .mega-footer{margin-top:0}.mobile-nav-dialog{padding-bottom:calc(30px + env(safe-area-inset-bottom));overscroll-behavior:contain}.mobile-nav-dialog nav>a{min-height:44px;display:flex;align-items:center}
    .mobile-treatment-links{font-family:var(--sans)}.mobile-treatments>summary{min-height:44px}
    @media(min-width:1600px){.hero-content{padding-top:100px;padding-bottom:100px}}
    @media(max-width:1100px){.desktop-nav{gap:19px}.header-phone{display:none}.hero-note{right:8%}.treatment-layout{gap:40px}.team-layout{gap:25px}.team-intro{padding-right:5px}.intro{gap:50px}.hero h1{font-size:74px}}
    @media(max-width:800px){html{scroll-padding-top:94px}.concept-bar{font-size:7px;padding:7px 20px;gap:8px}.concept-bar span:last-child{max-width:140px;text-align:right}.header-inner{height:82px;gap:15px}.brand,.brand img{width:61px;height:66px}.desktop-nav,.header-cta{display:none}.menu-button{display:flex}.mobile-header-actions{display:flex;align-items:center;gap:14px}.mobile-header-actions .phone-short{font-size:10px}.hero{min-height:0}.hero-content{padding-top:52px;padding-bottom:240px}.hero h1{font-size:clamp(52px,10vw,75px);letter-spacing:-1.5px;line-height:1.02}.hero .eyebrow{font-size:8px;letter-spacing:.15em;margin-bottom:24px}.hero-copy{font-size:12px;max-width:330px;line-height:1.9}.hero-actions{gap:20px;flex-wrap:wrap}.hero-actions .text-link{font-size:10px;gap:12px}.hero-actions .button{font-size:10px;padding:13px 18px;gap:18px;min-height:48px}.hero:before{background:linear-gradient(180deg,#eee6da 0%,#eee6daf5 42%,#eee6da40 100%),linear-gradient(140deg,#e8d8c6,#c3aa9a)}.hero-art{inset:40% -10% 0 20%;mask-image:linear-gradient(180deg,transparent,#000 50%)}.hero-note{top:auto;bottom:85px;right:12%;font-size:24px}.hero-note small{font-size:7px}.photo-caption{font-size:7px;bottom:23px}.pillar-grid{grid-template-columns:1fr 1fr;padding-top:17px;padding-bottom:17px;gap:7px 0}.pillar{gap:12px;padding:10px 10px;justify-content:flex-start}.pillar:nth-child(2){border:0}.pillar:nth-child(3){padding-left:0}.pillar p{font-size:9px}.pillar span{font-size:17px}.intro{grid-template-columns:1fr;gap:0;padding-top:62px;padding-bottom:60px}.intro h2{max-width:450px}.intro-copy{padding-top:25px;max-width:500px;font-size:12px}.intro-copy p{margin-bottom:15px}.section-title{display:block;margin-bottom:30px}.section-title p{margin-top:22px;max-width:450px}.treatments{padding-top:60px;padding-bottom:60px}.treatment-layout{grid-template-columns:1fr;gap:30px}.photo-block.treatment-photo{min-height:280px}.treatment-list summary{padding:18px 0}.treatment-list summary h3{font-size:27px}.team{padding-top:60px;padding-bottom:60px}.team-layout{grid-template-columns:1fr 1fr;gap:30px 20px}.team-intro{grid-column:1/-1;max-width:500px}.team-intro>p:not(.eyebrow){max-width:420px}.team-intro h2{max-width:370px}.team-intro .text-link{margin-top:0}.team-person h3{font-size:27px;line-height:1.08}.team-person .placeholder-label span{font-size:20px}.team-person .placeholder-label small{font-size:6px;letter-spacing:.1em}.team-person .photo-block:before{inset:12px}.team-role{font-size:8px}.team-person .team-bio{font-size:10px}.consultation{padding:60px 24px}.consultation p:not(.eyebrow){font-size:12px}.faq{grid-template-columns:1fr;gap:30px;padding-top:60px;padding-bottom:60px}.faq h2{max-width:300px}.faq-list summary{font-size:11px}.footer-main{grid-template-columns:1fr 1fr;gap:36px 25px;padding-top:40px;padding-bottom:40px}.footer-brand{grid-column:1/-1;display:flex;align-items:center;gap:30px}.footer-brand p{margin:0;font-size:26px}.footer-brand .brand,.footer-brand .brand img{width:82px;height:86px}.footer-main .footer-col:last-child{grid-column:1/-1}.footer-bottom{font-size:7px;gap:25px;padding-bottom:92px}.mobile-bar{position:fixed;z-index:35;bottom:0;inset-inline:0;display:flex;background:var(--paper);border-top:1px solid var(--line);padding:10px 20px calc(10px + env(safe-area-inset-bottom));gap:15px;align-items:center;justify-content:space-between}.mobile-bar>a{font-size:11px;display:flex;align-items:center;gap:8px}.mobile-bar .button{min-height:42px;font-size:10px;padding:10px 16px;gap:25px}dialog{padding:36px 25px}.mobile-nav-dialog{padding-top:75px}.mobile-nav-dialog nav{font-size:32px}}
    @media(max-width:1100px){.desktop-nav{gap:18px;font-size:11px}.hero-note{right:9%}}
    @media(max-width:800px){.hero-art{inset:auto 0 0;height:196px;mask-image:none;border-left:0;border-top:1px solid #d5c7b8}.hero-note{top:auto;bottom:86px;right:0;left:0;font-size:12px}.hero-note small{font-size:9px}.team-person .placeholder-label span{font-size:12px}.team-person .placeholder-label small{font-size:8px;letter-spacing:0}.mobile-nav-dialog nav{gap:12px}.mobile-nav-dialog .mega-grid{font-family:var(--sans)}}
    @media(min-width:801px){.mobile-header-actions{display:none}}
    /* Align the small pillar numerals to the same text baseline as their labels. */
    .pillar{align-items:baseline}.pillar>span,.pillar>p{font-family:var(--sans);font-size:11px;font-style:normal;line-height:1.4}.pillar>span{font-weight:600;font-variant-numeric:tabular-nums;flex:none}
    /* A continuous hover area connects the trigger to the panel below the header. */
    .desktop-nav{align-self:stretch}.nav-treatment{align-self:stretch;display:flex;align-items:center;position:static}
    .button{justify-content:center;gap:0;position:relative;isolation:isolate;overflow:hidden}
    .button[data-book]::after{content:'';position:absolute;inset:0;pointer-events:none;background:#fff;opacity:0;animation:cta-highlight 14s ease-in-out 5s infinite}.button.outline[data-book]::after{background:var(--clay)}
    .button[data-book]:hover::after,.button[data-book]:focus-visible::after{animation-play-state:paused;opacity:0!important}
    @keyframes cta-highlight{0%,14%,100%{opacity:0}7%{opacity:.1}}
    .hero-actions a[href="#treatments"] .arrow{display:inline-block;animation:scroll-nudge 4.8s ease-in-out 1.2s infinite}
    @keyframes scroll-nudge{0%,45%,100%{transform:translateY(0)}65%{transform:translateY(5px)}85%{transform:translateY(0)}}
    @media(max-width:800px){.pillar>span,.pillar>p{font-size:9px}}
    @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
    @media print{header{position:static}.concept-bar{display:flex}.mobile-bar,dialog{display:none!important}.hero,.treatments,.consultation,footer{-webkit-print-color-adjust:exact;print-color-adjust:exact}.team,.faq{break-inside:avoid}}

/* Shared inner-page structure. */
.treatment-page-link{padding:13px 0;border-bottom:1px solid transparent;white-space:nowrap}
.nav-treatment>button{width:26px;padding:13px 4px;gap:0}
.desktop-nav a[aria-current="page"]{color:var(--clay);border-bottom-color:var(--clay)}
.treatment-page-link:hover{color:var(--clay)}
.breadcrumbs{padding-top:27px;font-size:11px;color:var(--muted)}
.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:10px;list-style:none;margin:0;padding:0}
.breadcrumbs li+li:before{content:'/';margin-right:10px;color:var(--sand)}
.breadcrumbs a:hover{color:var(--clay)}
.page-hero{padding-top:50px;padding-bottom:53px;border-bottom:1px solid var(--line)}
.page-hero .eyebrow{margin-bottom:18px}
.page-hero h1{font-size:clamp(50px,6vw,82px);letter-spacing:-1.5px;max-width:900px;margin-bottom:25px}
.page-intro{font-size:14px;color:var(--muted);max-width:680px;margin:0;line-height:1.85}
.page-jump-links{display:flex;flex-wrap:wrap;gap:10px 27px;margin-top:28px;font-size:12px}
.page-jump-links a{border-bottom:1px solid var(--line);padding:7px 0}
.page-jump-links a:hover{color:var(--clay);border-bottom-color:var(--clay)}
.content-wrap{padding-top:56px;padding-bottom:80px}
.prose{font-size:14px;line-height:1.85;color:var(--muted)}
.prose p{margin:0 0 23px}.prose p:last-child{margin-bottom:0}
.prose ul{padding-left:20px;margin:16px 0 24px}.prose li{padding-left:4px;margin-bottom:8px}
.prose h2,.prose h3{color:var(--ink);margin-bottom:23px}
.pending-note{font-size:12px;color:var(--muted);border-left:2px solid var(--sand);padding:6px 0 6px 16px;line-height:1.8}
.profile-section{display:grid;grid-template-columns:minmax(230px,.85fr) minmax(0,1.5fr);gap:clamp(35px,6vw,90px);padding:18px 0 65px;margin-bottom:60px;border-bottom:1px solid var(--line);align-items:start;scroll-margin-top:20px}
.profile-section:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}
.profile-photo.photo-block{min-height:360px;aspect-ratio:4/4.8;background:#e7ded3}
.profile-copy h2{font-size:clamp(40px,4vw,58px);margin-bottom:15px}
.profile-copy .eyebrow{margin-bottom:18px}
.profile-role{font-size:12px;color:var(--clay);margin-bottom:25px}
.profile-copy .button,.profile-copy>.text-link{margin-top:26px}
.profile-preview{display:block}.profile-preview:hover .photo-block{background:#ddd0c2}
.team-person h3 a:hover{color:var(--clay)}.team-person .text-link{font-size:11px;margin-top:16px}
.team-intro .button{margin-top:9px}
.home-treatment-list{list-style:none;margin:0;padding:0;border-top:1px solid #cfc3b4}
.home-treatment-list li{border-bottom:1px solid #cfc3b4}
.home-treatment-list a{display:flex;align-items:center;gap:23px;padding:18px 0;min-height:68px}
.home-treatment-list a:hover{color:var(--clay)}
.home-treatment-list .num{font-size:9px;min-width:17px;color:#806e5c}
.home-treatment-list .treatment-name{font:26px/1.15 var(--serif)}
.home-treatment-list svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.2;margin-left:auto;flex:none}
.section-aside{max-width:345px}.section-aside .text-link{margin-top:12px}
.section-follow-link{margin-top:30px}
.service-section{display:grid;grid-template-columns:minmax(180px,.55fr) minmax(0,1.45fr);gap:clamp(30px,5vw,70px);border-bottom:1px solid var(--line);padding:40px 0;align-items:center;scroll-margin-top:20px}
.service-section:first-child{padding-top:0}.service-section:last-of-type{border-bottom:0}
.service-photo.photo-block{min-height:185px;aspect-ratio:4/3;background:#e7ded3}
.service-copy h2{font-size:clamp(34px,3.6vw,49px);margin-bottom:22px}
.service-copy .pending-note{margin-top:20px}
.page-consultation{padding:43px 0 12px;border-top:1px solid var(--line);margin-top:30px}
.page-consultation h2{font-size:clamp(36px,4vw,52px);margin-bottom:20px}
.page-consultation p{font-size:14px;max-width:680px;color:var(--muted)}
.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:55px 80px}
.contact-section{padding-top:22px;border-top:1px solid var(--line)}
.contact-section h2{font-size:clamp(34px,3.4vw,48px);margin-bottom:24px}
.contact-section .eyebrow{margin-bottom:15px}
.contact-section .button{margin-top:24px}
.contact-section .prose .text-link{font-size:14px}
.contact-map.photo-block{min-height:235px;margin-top:30px;background:#e7ded3}
.faq-page-layout{max-width:1050px;margin-top:35px}
.faq-page-list{margin-bottom:55px;border-top:1px solid var(--line)}
.faq-page-list details{border-bottom:1px solid var(--line)}
.faq-page-list summary{display:flex;align-items:center;justify-content:space-between;gap:25px;cursor:pointer;list-style:none;padding:25px 0}
.faq-page-list summary::-webkit-details-marker{display:none}
.faq-page-list summary .plus{font:24px var(--sans);flex:none}
.faq-page-list details[open] summary .plus{transform:rotate(45deg)}
.faq-page-list summary h2{font-size:clamp(25px,2.6vw,34px);letter-spacing:-.4px;line-height:1.15}
.faq-page-list .prose{padding:0 35px 28px 0}
.urgent-care{padding:35px 0;border-top:2px solid var(--clay);border-bottom:1px solid var(--line);margin:20px 0 45px}
.urgent-care h2{font-size:clamp(32px,3.4vw,46px)}
.mobile-treatment-links .mega-footer a[aria-current="page"]{color:var(--clay)}
@media(max-width:800px){
  .breadcrumbs{padding-top:22px;font-size:10px}.page-hero{padding-top:35px;padding-bottom:35px}
  .page-hero h1{font-size:50px;letter-spacing:-1px}.page-intro{font-size:13px}
  .content-wrap{padding-top:35px;padding-bottom:55px}.prose{font-size:13px}
  .profile-section{grid-template-columns:1fr;gap:30px;padding-bottom:40px;margin-bottom:40px}
  .profile-photo.photo-block{width:100%;max-width:360px;min-height:0;aspect-ratio:4/4.3}
  .profile-copy h2{font-size:42px}.profile-copy .eyebrow{margin-bottom:13px}
  .contact-layout{grid-template-columns:1fr;gap:35px}
  .service-section{grid-template-columns:1fr;gap:23px;padding:32px 0}
  .service-photo.photo-block{min-height:160px;aspect-ratio:auto;max-width:400px}
  .page-jump-links{gap:6px 18px}.page-jump-links .text-link{font-size:11px}
  .home-treatment-list a{gap:16px;padding:17px 0}.home-treatment-list .treatment-name{font-size:25px}
  .faq-page-list .prose{padding-right:5px}.faq-page-list summary{padding:22px 0}
  .faq-page-list summary h2{font-size:27px}.urgent-care{padding:28px 0}
}
