:root{--paper:#f2f2ef;--ivory:#e5e5da;--light-sage:#becdaf;--sage:#91ac8d;--forest:#4e6d55;--ink:#26382d;--muted:#667168;--line:#26382d2a;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Manrope',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.7 var(--sans);-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button,a{color:inherit}button{cursor:pointer}a{text-decoration:none}button{border:0}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--forest);outline-offset:6px}p,h1,h2,h3{margin:0}img{display:block;width:100%;height:100%;object-fit:cover}h1,h2,h3{font-family:var(--serif);font-weight:400}em{font-weight:400;color:var(--forest)}.wrap{width:calc(100% - 112px);max-width:1488px;margin-inline:auto}.header{height:106px;display:flex;align-items:center;justify-content:space-between;gap:28px;border-bottom:1px solid var(--line)}.brand{font:400 44px/.9 "Cormorant Garamond",Georgia,serif;letter-spacing:5px;display:inline-block}.brand span{display:block;font:9px/1.4 var(--sans);letter-spacing:1.65px;margin-top:14px}.header nav{display:flex;gap:32px;font-size:14px}.header nav a{position:relative}.header nav a:after{content:'';position:absolute;bottom:-5px;left:0;width:0;height:1px;background:var(--forest);transition:width .3s}.header nav a:hover:after{width:100%}.header-book{background:none;font-size:14px;border-bottom:1px solid var(--ink);padding:8px 0}.header-book span{margin-left:25px;font-size:20px}.menu-toggle{display:none}.hero{padding-top:40px}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:500}.hero-top{display:flex;justify-content:space-between;align-items:center}.edition{font-family:var(--serif);font-style:italic;font-size:20px}.hero-copy{display:flex;align-items:end;justify-content:space-between;gap:40px;padding:29px 0 47px}h1{font-size:clamp(58px,5.6vw,92px);line-height:1.02;letter-spacing:-2.5px}.hero-aside{padding-bottom:3px;min-width:250px}.hero-aside p{font-size:14px;line-height:1.8;margin-bottom:25px;color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:48px;background:var(--forest);color:var(--paper);padding:17px 25px;font-size:14px;min-height:55px;transition:background .25s,transform .25s}.button span{font-size:23px;line-height:1}.button:hover{background:var(--ink);transform:translateY(-2px)}.hero-image{height:500px;position:relative;overflow:hidden;background:var(--ivory)}.hero-image img{object-position:center 56%;transition:transform 1.2s}.hero-image:hover img{transform:scale(1.025)}.image-note{position:absolute;left:32px;bottom:30px;background:var(--paper);padding:23px 30px;min-width:230px}.image-note span{font-size:10px;letter-spacing:1.4px}.image-note p{font:30px/1.05 var(--serif);margin-top:12px}.image-scroll{position:absolute;right:32px;bottom:32px;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--paper);font-size:24px}.image-caption{display:flex;justify-content:space-between;margin-top:15px;font-size:11px;letter-spacing:.8px;color:var(--muted)}.section{padding-block:120px}h2{font-size:clamp(44px,4.5vw,68px);line-height:1.05;letter-spacing:-1.4px}.philosophy{display:grid;grid-template-columns:1fr 2fr;gap:40px;padding-top:135px}.section-label{padding-top:12px}.philosophy h2{max-width:790px}.philosophy-bottom{display:grid;grid-template-columns:1fr 2fr;gap:46px;margin-top:45px}.monogram{font:italic 125px/.9 var(--serif);color:var(--sage);align-self:center;text-align:center}.philosophy-bottom p{max-width:500px}.muted{color:var(--muted);margin-top:20px}.text-link{background:transparent;border-bottom:1px solid var(--forest);display:inline-flex;align-items:center;justify-content:space-between;gap:36px;padding:0 0 9px;margin-top:28px;font-size:14px}.text-link span{font-size:21px}.text-link:hover{color:var(--forest)}.treatments{background:var(--ivory)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:55px}.section-heading h2{margin-top:27px}.section-heading>p{font-size:14px;color:var(--muted);padding-bottom:5px}.service{border-top:1px solid var(--line)}.service:last-child{border-bottom:1px solid var(--line)}.service summary{display:grid;grid-template-columns:55px 1.4fr 1fr 40px;align-items:center;gap:24px;padding:28px 0;cursor:pointer;list-style:none}.service summary::-webkit-details-marker{display:none}.service-number{font-size:12px;color:var(--muted)}.service h3{font-size:36px;line-height:1.15}.service-description{font-size:13px;color:var(--muted)}.plus{font-size:26px;justify-self:end;font-weight:400;transition:transform .3s}.service[open] .plus{transform:rotate(45deg)}.service summary:hover h3{color:var(--forest)}.service-body{padding:0 64px 30px 79px;max-width:790px;color:var(--muted);font-size:15px}.service-body .text-link{color:var(--ink);margin-top:15px}.expertise{display:grid;grid-template-columns:1.2fr 1fr;gap:100px;align-items:center}.expertise h2{margin-top:28px}.expertise-intro{max-width:430px;margin-top:29px;color:var(--muted)}.principles article{display:flex;gap:27px;padding:27px 0;border-bottom:1px solid var(--line)}.principles article:first-child{border-top:1px solid var(--line)}.principles article>span{font-size:12px;color:var(--forest);padding-top:10px}.principles h3{font-size:30px;margin-bottom:8px}.principles p{font-size:14px;color:var(--muted);max-width:360px}.space{display:grid;grid-template-columns:1fr 1fr;background:var(--forest);color:var(--paper)}.space-photo{min-height:610px;overflow:hidden}.space-photo img{object-position:22% center;max-height:740px}.space-copy{padding:90px 70px;align-self:center}.space h2{margin:30px 0}.space em{color:var(--light-sage)}.space-copy>p:not(.eyebrow){max-width:400px;margin-top:20px;color:#e4e9df;font-size:15px}.space-detail{display:block;margin-top:60px;font-size:10px;letter-spacing:1.6px;color:var(--light-sage)}.final-cta{text-align:center;position:relative;padding-block:130px 120px}.final-cta h2{margin:29px 0 21px;font-size:clamp(46px,5vw,78px)}.final-cta>p:not(.eyebrow){color:var(--muted);font-size:15px}.final-cta .button{margin-top:33px}.cta-flower{display:block;font-size:45px;line-height:1;color:var(--sage);margin-top:58px}footer{border-top:1px solid var(--line)}.footer-main{display:flex;justify-content:space-between;gap:45px;padding-block:53px}.footer-main>p{font:italic 25px/1.3 var(--serif);color:var(--forest)}.footer-main>div{display:flex;flex-direction:column;gap:12px;font-size:13px}.to-top{font-size:26px;align-self:start}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-block:20px;font-size:10px;color:var(--muted);letter-spacing:.5px}dialog{border:1px solid var(--line);background:var(--paper);color:var(--ink);width:min(540px,calc(100% - 32px));padding:50px;max-height:90dvh}dialog::backdrop{background:#15271ec4;backdrop-filter:blur(5px)}dialog h2{font-size:52px;margin:18px 0}.close-dialog{position:absolute;right:17px;top:10px;background:none;font-size:32px;width:40px;height:40px}.booking-note{font-size:13px;color:var(--muted);line-height:1.6;margin-bottom:22px}form{display:grid;gap:16px}label{display:grid;gap:6px;font-size:13px}input,select{border:1px solid var(--line);background:transparent;border-radius:0;padding:12px;width:100%;color:var(--ink);font-size:16px}form .button{margin-top:8px}#booking-success h3{font-size:34px}#booking-success p{font-size:15px;margin-top:16px}.skip-link{position:fixed;left:15px;top:-100px;background:var(--paper);padding:12px;z-index:10}.skip-link:focus{top:15px}.reveal{opacity:1}.motion .reveal{opacity:0;transform:translateY(18px);transition:opacity .7s,transform .7s}.motion .reveal.visible{opacity:1;transform:none}body.modal-open{overflow:hidden}
[hidden]{display:none!important}
@media(min-width:1600px){.hero-image{height:600px}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.header nav{gap:20px;font-size:12px}.brand{font-size:39px}.brand span{font-size:8px}.hero-copy{gap:24px}h1{font-size:64px}.hero-aside{min-width:218px}.hero-aside p{font-size:12px}.hero-image{height:440px}.section{padding-block:90px}.philosophy{grid-template-columns:1fr 2.5fr}.expertise{gap:45px}.service summary{grid-template-columns:35px 1.5fr 1fr 25px;gap:15px}.service h3{font-size:31px}.space-copy{padding:65px 40px}.space-photo{min-height:560px}.footer-main{gap:28px}}
@media(max-width:800px){.wrap{width:calc(100% - 40px)}.header{height:92px;gap:22px}.brand{font-size:35px}.brand span{font-size:7px;letter-spacing:1.2px;margin-top:10px}.header-book{margin-left:auto;font-size:12px}.header-book span{margin-left:12px}.menu-toggle{display:grid;gap:6px;padding:10px 0 10px 10px;background:none;width:34px}.menu-toggle span{height:1px;width:23px;background:var(--ink)}.header nav{display:none;position:absolute;left:0;top:92px;width:100%;padding:25px;background:var(--paper);border-bottom:1px solid var(--line);z-index:5;font-size:16px}.header nav.open{display:flex;flex-direction:column}.hero{padding-top:28px}.edition{font-size:16px}.eyebrow{font-size:10px;letter-spacing:1.5px}.hero-copy{display:block;padding:26px 0 30px}h1{font-size:clamp(43px,7.5vw,64px);letter-spacing:-1.3px;line-height:1.05}.hero-aside{display:flex;justify-content:space-between;align-items:end;margin-top:26px;gap:20px}.hero-aside p{font-size:12px;margin:0}.button{padding:14px 20px;gap:30px;font-size:13px;min-height:50px}.hero-image{height:450px}.image-note{left:20px;bottom:20px;padding:20px;min-width:190px}.image-note p{font-size:27px}.image-note span{font-size:8px}.image-scroll{bottom:20px;right:20px}.section{padding-block:75px}.philosophy{display:block}.philosophy-content{margin-top:28px}.philosophy-bottom{grid-template-columns:1fr 3fr;gap:20px;margin-top:32px}.monogram{font-size:90px}.section-heading{align-items:start;flex-direction:column;gap:24px;margin-bottom:35px}.section-heading h2{margin-top:20px}h2{font-size:48px}.service summary{grid-template-columns:28px 1fr 28px;padding:25px 0;gap:12px}.service-description{display:none}.service h3{font-size:32px}.service-body{padding:0 15px 25px 40px}.expertise{grid-template-columns:1fr;gap:35px}.expertise-intro{max-width:540px}.principles p{max-width:560px}.space{grid-template-columns:1fr}.space-photo{height:420px;min-height:0}.space-photo img{object-position:center 60%}.space-copy{padding:55px 30px 65px}.space-detail{margin-top:35px}.final-cta{padding-block:90px 70px}.footer-main{display:grid;grid-template-columns:1fr 1fr;gap:35px;padding-block:40px}.footer-main>.brand{justify-self:start}.footer-main>p{font-size:22px}.to-top{display:none}.footer-bottom{flex-wrap:wrap;gap:8px;font-size:9px}.footer-bottom>span:last-child{display:none}}
@media(max-width:450px){.edition{display:none}.hero-aside{align-items:start;gap:15px}.hero-aside p{font-size:11px}.hero-aside .button{gap:20px;padding:12px 17px}.hero-image{height:380px}.hero-image img{object-position:44% center}.image-caption{font-size:9px}.philosophy-bottom{display:block}.monogram{display:none}.philosophy-bottom p{font-size:15px}h2{font-size:42px}.service h3{font-size:27px}.space-photo{height:330px}.space-copy{padding-inline:25px}.final-cta h2{font-size:44px}.footer-main{gap:30px 20px}.footer-main>p{font-size:19px}dialog{padding:40px 25px}dialog h2{font-size:45px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.motion .reveal{opacity:1;transform:none}}

/* Inner pages */
.header nav a[aria-current="page"]:after{width:100%}.page-intro{padding-block:75px 80px}.page-intro h1{max-width:1000px;margin-top:28px}.page-lead{max-width:610px;margin-top:30px;color:var(--muted)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;border-top:1px solid var(--line)}.contact-grid h2{margin-top:25px}.contact-grid>div>p:not(.eyebrow){max-width:460px;margin-top:25px;color:var(--muted)}.contact-grid .button{margin-top:30px}.contact-details article{padding:26px 0;border-bottom:1px solid var(--line)}.contact-details article:first-child{padding-top:0}.contact-details h3{font-size:32px;margin-bottom:12px}.contact-details p{color:var(--muted);font-size:14px}@media(max-width:800px){.page-intro{padding-block:50px}.contact-grid{grid-template-columns:1fr;gap:45px}}

.header-book{background:var(--forest);color:var(--paper);border:0;padding:10px 18px;white-space:nowrap;transition:background .25s}.header-book:hover{background:var(--ink)}@media(max-width:800px){.header-book{padding:9px 13px}}

.hero-top .eyebrow{font-size:16px}@media(max-width:800px){.hero-top .eyebrow{font-size:14px}}

.hero-aside .hero-intro{font-family:var(--serif);font-size:24px;line-height:1.45;color:var(--ink);margin:0;max-width:370px;padding-left:22px;border-left:1px solid var(--sage)}.hero-intro>span,.hero-intro>em{display:block}.hero-intro>em{margin-top:10px;font-size:21px;line-height:1.4}@media(max-width:1100px){.hero-aside .hero-intro{font-size:21px;max-width:310px}.hero-intro>em{font-size:19px}}@media(max-width:800px){.hero-aside .hero-intro{font-size:21px;max-width:100%;padding-left:18px}.hero-intro>em{font-size:19px}}

.image-note>p:only-child{margin-top:0}

.clinic-preview{align-items:start}.clinic-wordmark{font:400 clamp(48px,5.5vw,84px)/1 var(--serif);letter-spacing:6px;color:var(--forest);padding-top:5px}.clinic-preview-copy{max-width:620px;margin-top:32px}.clinic-preview-copy p{font-size:16px;line-height:1.9;color:var(--muted)}.clinic-preview-copy .button{margin-top:30px}@media(max-width:800px){.clinic-wordmark{font-size:48px;letter-spacing:4px}.clinic-preview .philosophy-content{margin-top:30px}.clinic-preview-copy{margin-top:25px}}

.clinic-preview{grid-template-columns:2fr 1fr}.clinic-preview .philosophy-content{grid-column:1;grid-row:1}.clinic-preview .clinic-wordmark{grid-column:2;grid-row:1;justify-self:end}@media(max-width:800px){.clinic-preview{display:flex;flex-direction:column}.clinic-preview .philosophy-content{order:1;margin-top:0}.clinic-preview .clinic-wordmark{order:2;align-self:flex-end;margin-top:32px}}

.clinic-preview-copy .button{padding:10px 18px;min-height:0;font-size:14px;line-height:1.7}@media(max-width:800px){.clinic-preview-copy .button{padding:9px 13px;font-size:12px}}

/* Softer green buttons across all pages */
.button,.header-book{background:#c1cfb3;color:var(--ink)}.button:hover,.header-book:hover{background:#8ba687;color:var(--ink)}

.clinic-preview{display:block;text-align:center}.clinic-preview .philosophy-content{max-width:790px;margin-inline:auto;margin-top:0}.clinic-preview h2{margin-inline:auto}.clinic-preview-copy{margin-inline:auto;max-width:620px}



/* Service actions */
.service-body .text-link{border:0;background:#c1cfb3;color:var(--ink);padding:10px 18px;gap:24px;min-height:44px;font-size:14px;line-height:1.7;transition:background .25s}.service-body .text-link span{font-size:18px;line-height:1}.service-body .text-link:hover{background:#8ba687;color:var(--ink)}@media(max-width:800px){.service-body .text-link{font-size:12px;padding:9px 13px;gap:20px}}

.service-body .text-link{gap:12px;justify-content:center;align-items:center}.service-body .text-link span{display:inline-flex;align-items:center;justify-content:center;width:16px;height:20px;font-family:Arial,sans-serif;font-size:17px;line-height:1}

.expertise .text-link{gap:12px;align-items:center;justify-content:center}.expertise .text-link span{display:inline-flex;align-items:center;justify-content:center;width:16px;height:20px;font-family:Arial,sans-serif;font-size:17px;line-height:1}

/* Compact rooms feature */
.space-photo{min-height:480px;height:480px}.space-photo img{object-position:center 54%}.space-copy{padding:64px 70px;text-align:center}.space-copy>.eyebrow{margin-bottom:26px}.space-copy>h2{max-width:620px;margin:0 auto;color:var(--paper);font-size:clamp(36px,3vw,46px)}.space-copy>h2 em{color:var(--light-sage)}.space-copy>p.space-intro{max-width:500px;margin:26px auto 0;color:#e4e9df;font-size:15px;line-height:1.7}
@media(max-width:800px){.space-photo{height:360px;min-height:0}.space-copy{padding:48px 30px 55px}.space-copy>.eyebrow{margin-bottom:22px}.space-copy>h2{font-size:38px}.space-copy>p.space-intro{margin:24px auto 0;font-size:15px}}

footer{background:var(--ivory)}

.final-cta .cta-flower{display:none}.final-cta .button{padding:10px 18px;min-height:0;gap:12px}.final-cta .button span{display:inline-flex;align-items:center;justify-content:center;width:16px;height:20px;font-family:Arial,sans-serif;font-size:17px;line-height:1}

.footer-main{display:grid;grid-template-columns:auto 1fr auto auto;align-items:start}.footer-main>.footer-nav{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;gap:12px 28px;font-size:13px}.footer-main>.footer-contacts{display:flex;flex-direction:column;gap:7px;font-size:12px;color:var(--muted);white-space:nowrap}.footer-contacts a:hover,.footer-nav a:hover{color:var(--forest)}.footer-bottom{justify-content:center;text-align:center}.footer-bottom strong{margin-left:7px;color:var(--forest);font-weight:500}.footer-bottom>span{margin-inline:auto}
@media(max-width:800px){.footer-main{grid-template-columns:1fr;text-align:center}.footer-main>.brand{justify-self:center}.footer-main>.footer-nav{justify-self:center;gap:10px 20px}.footer-main>.footer-contacts{justify-self:center}.footer-bottom{justify-content:center}.footer-bottom>span{width:100%}}

.footer-contacts .instagram-link{display:grid;place-items:center;width:38px;height:38px;margin-top:4px;background:var(--light-sage);color:var(--ink);transition:background .25s}.footer-contacts .instagram-link:hover{background:var(--sage);color:var(--ink)}.instagram-link svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6}.instagram-link svg circle:last-child{fill:currentColor;stroke:none}
@media(max-width:800px){.footer-contacts .instagram-link{margin:4px auto 0}}

.footer-bottom strong{color:inherit;font:inherit;font-weight:inherit}

.footer-contacts .instagram-link{width:24px;height:24px;margin-top:2px;background:transparent}.footer-contacts .instagram-link:hover{background:transparent;color:var(--forest)}.instagram-link svg{width:16px;height:16px}

/* Detailed services page */
.services-hero{display:grid;grid-template-columns:.9fr 1.1fr;gap:72px;align-items:center;padding-block:72px 90px}.services-hero-copy h1{margin:24px 0 30px}.services-hero-copy>p:not(.eyebrow){max-width:570px;color:var(--muted);font-size:16px;line-height:1.85}.services-hero-copy .button{margin-top:32px;padding:11px 18px;min-height:0;gap:12px}.services-hero-copy .button span,.service-card .button span{display:inline-flex;align-items:center;font-family:Arial,sans-serif;font-size:17px}.services-hero-image{height:560px;position:relative;overflow:hidden}.services-hero-image img{object-position:center 52%}.services-hero-image>div{position:absolute;left:24px;bottom:24px;width:min(310px,calc(100% - 48px));padding:22px 25px;background:var(--paper)}.services-hero-image span{font-size:10px;letter-spacing:1.7px}.services-hero-image p{margin-top:8px;font:28px/1.1 var(--serif)}.service-jump{display:flex;justify-content:center;gap:16px 38px;flex-wrap:wrap;padding-block:22px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:13px}.service-jump a{position:relative}.service-jump a:after{content:'';position:absolute;left:0;bottom:-4px;width:0;height:1px;background:var(--forest);transition:width .25s}.service-jump a:hover:after{width:100%}.service-catalog{background:var(--ivory)}.services-title{display:grid;grid-template-columns:1fr 1.2fr;gap:60px;align-items:end;margin-bottom:58px}.services-title h2{margin-top:24px}.services-title>p:last-child{max-width:520px;color:var(--muted);justify-self:end}.service-card-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.service-card{display:flex;flex-direction:column;min-height:650px;padding:42px;background:var(--paper);scroll-margin-top:24px}.service-card:nth-child(3){background:var(--forest);color:var(--paper)}.service-card:nth-child(3) em,.service-card:nth-child(3) .service-card-top span{color:var(--light-sage)}.service-card:nth-child(3) .service-card-top p,.service-card:nth-child(3) .service-card-lead,.service-card:nth-child(3) .service-card-content p{color:#e4e9df}.service-card:nth-child(3) .service-card-content{border-color:#ffffff30}.service-card-top{display:flex;justify-content:space-between;gap:25px;padding-bottom:22px;border-bottom:1px solid var(--line);font-size:12px}.service-card-top span{color:var(--forest)}.service-card-top p{color:var(--muted)}.service-card>h2{font-size:clamp(42px,3.5vw,58px);margin-top:34px}.service-card-lead{max-width:590px;margin-top:18px;color:var(--muted);font-size:16px;line-height:1.75}.service-card-content{display:grid;grid-template-columns:1.15fr .85fr;gap:35px;margin-top:38px;padding-top:30px;border-top:1px solid var(--line)}.service-card-content h3{font:500 12px/1.5 var(--sans);letter-spacing:1.3px;text-transform:uppercase}.service-card-content ul{padding:0;margin:18px 0 0;list-style:none}.service-card-content li{position:relative;padding:7px 0 7px 18px;font-size:14px}.service-card-content li:before{content:'·';position:absolute;left:0;color:var(--sage);font-size:22px;line-height:1}.service-card-content>p{color:var(--muted);font-size:14px;line-height:1.8}.service-card>.button{align-self:flex-start;margin-top:auto;padding:10px 18px;min-height:0;gap:12px}.consultation-flow{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}.consultation-flow h2{margin-top:25px}.consultation-steps article{display:grid;grid-template-columns:40px 1fr;gap:20px;padding:26px 0;border-bottom:1px solid var(--line)}.consultation-steps article:first-child{border-top:1px solid var(--line)}.consultation-steps article>span{padding-top:7px;color:var(--forest);font-size:12px}.consultation-steps h3{font-size:30px}.consultation-steps p{max-width:430px;margin-top:7px;color:var(--muted);font-size:14px}
@media(max-width:1100px){.services-hero{gap:40px}.services-hero-image{height:500px}.service-card{padding:34px}.service-card-content{grid-template-columns:1fr}.services-title{gap:35px}}
@media(max-width:800px){.services-hero{grid-template-columns:1fr;gap:38px;padding-block:50px 65px}.services-hero-copy h1{margin-block:20px 24px}.services-hero-image{height:430px}.service-jump{justify-content:flex-start}.services-title{grid-template-columns:1fr;gap:22px}.services-title>p:last-child{justify-self:start}.service-card-grid{grid-template-columns:1fr}.service-card{min-height:0;padding:30px}.service-card-content{margin-top:28px}.service-card>.button{margin-top:32px}.consultation-flow{grid-template-columns:1fr;gap:40px}}
@media(max-width:450px){.services-hero-image{height:360px}.services-hero-image>div{left:16px;bottom:16px;padding:18px 20px}.services-hero-image p{font-size:24px}.service-card{padding:25px}.service-card>h2{font-size:39px}.service-card-top{display:block}.service-card-top p{margin-top:8px}.service-jump{gap:12px 22px}}

.services-page .page-intro h1{font-size:clamp(52px,5vw,80px)}
@media(max-width:800px){.services-page .page-intro h1{font-size:clamp(42px,7vw,58px)}}

/* Contact page */
.contact-hero{padding-block:78px 88px}.contact-hero-copy{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:80px;align-items:end;margin-top:31px}.contact-hero h1{font-size:clamp(58px,5.7vw,90px)}.contact-hero-copy>p{max-width:430px;color:var(--muted);font-size:15px;line-height:1.85;padding-bottom:8px}.contact-feature{background:var(--ivory)}.contact-feature-grid{display:grid;grid-template-columns:1fr 1fr;min-height:610px}.contact-feature-copy,.contact-location{padding:62px 70px;display:flex;flex-direction:column;justify-content:space-between}.contact-feature-copy{padding-left:0}.contact-location{border-left:1px solid var(--line);color:var(--ink)}.contact-primary{margin-block:42px}.contact-primary>div+div{margin-top:28px}.contact-primary span,.contact-social>span{display:block;font-size:9px;letter-spacing:1.5px;color:var(--muted);margin-bottom:10px}.contact-primary a{display:inline-block;font:400 clamp(40px,3.8vw,61px)/1.05 var(--serif)}.contact-primary em{color:var(--forest)}.contact-primary a:hover,.contact-social a:hover{color:var(--forest)}.contact-social{border-top:1px solid var(--line);padding-top:28px}.contact-social a{font:400 27px/1.2 var(--serif)}.contact-location-main{margin-block:42px}.contact-location-main h2{font-size:clamp(44px,4.2vw,66px);line-height:1.05}.contact-location-main h2 em{color:var(--forest)}.map-link{display:inline-block;margin-top:28px;padding-bottom:7px;border-bottom:1px solid var(--forest);font-size:13px}.map-link:hover{color:var(--forest)}.location-facts{display:grid;grid-template-columns:1fr 1fr;gap:38px;border-top:1px solid var(--line);padding-top:28px}.location-facts article>p:last-child,.location-facts dl{margin:16px 0 0;color:var(--muted);font-size:13px;line-height:1.75}.location-facts dl div{display:flex;justify-content:space-between;gap:20px}.location-facts dd{margin:0}.contact-booking{background:var(--forest);color:var(--paper);text-align:center;padding-block:105px 110px}.contact-booking h2{margin:26px 0 22px}.contact-booking h2 em{color:var(--light-sage)}.contact-booking .wrap>p:not(.eyebrow){color:#e7ece5;font-size:14px}.contact-booking .button{margin-top:31px;background:var(--light-sage);color:var(--ink)}.contact-booking .button:hover{background:var(--sage)}
@media(max-width:1100px){.contact-hero-copy{grid-template-columns:1fr;gap:26px}.contact-hero-copy>p{max-width:540px}.contact-feature-copy,.contact-location{padding-right:42px}.contact-feature-grid{grid-template-columns:1fr 1fr}.location-facts{grid-template-columns:1fr}}
@media(max-width:800px){.contact-hero{padding-block:50px 60px}.contact-hero-copy{grid-template-columns:1fr;gap:25px;margin-top:25px}.contact-hero-copy>p{padding:0}.contact-feature-grid{width:100%;grid-template-columns:1fr}.contact-feature-copy,.contact-location{width:calc(100% - 40px);margin-inline:auto;padding:60px 0}.contact-location{border-left:0;border-top:1px solid var(--line)}.contact-primary a{font-size:clamp(38px,9vw,54px)}.location-facts{grid-template-columns:1fr 1fr}.contact-booking{padding-block:80px}}
@media(max-width:480px){.contact-primary a{font-size:36px}.location-facts{grid-template-columns:1fr}.contact-location-main h2 br{display:none}}

.contact-page .contact-hero h1{font-size:clamp(48px,4.5vw,70px)}
.contact-booking .button{min-height:46px;padding:12px 18px;gap:18px;font-size:13px}
.contact-booking .button span{font-size:18px}
.contact-feature-copy{justify-content:flex-start}
.contact-list{border-top:1px solid var(--line);margin-top:54px}
.contact-list a{display:grid;grid-template-columns:125px 1fr;align-items:center;gap:24px;padding:24px 0;border-bottom:1px solid var(--line)}
.contact-list span{font-size:10px;letter-spacing:1.5px;color:var(--muted)}
.contact-list strong{font:400 15px/1.5 var(--sans);color:var(--ink)}
.contact-list a:hover strong{color:var(--forest)}
@media(max-width:480px){.contact-list{margin-top:38px}.contact-list a{grid-template-columns:92px 1fr;gap:14px;padding:20px 0}.contact-list strong{font-size:14px}}

/* Booking page */
.booking-back-link{font-size:13px;border-bottom:1px solid var(--forest);padding-bottom:5px}.booking-intro{padding-block:72px 78px}.booking-intro>div{display:grid;grid-template-columns:1.35fr .65fr;gap:80px;align-items:end;margin-top:28px}.booking-intro h1{font-size:clamp(54px,5.2vw,82px)}.booking-intro>div>p{max-width:430px;color:var(--muted);font-size:14px;padding-bottom:8px}.booking-area{background:var(--ivory);padding-block:64px 100px}.booking-progress{list-style:none;margin:0 0 55px;padding:0;display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line)}.booking-progress li{position:relative;padding:0 0 19px;color:var(--muted);font-size:12px;letter-spacing:.5px}.booking-progress li span{margin-right:12px;font-size:10px}.booking-progress li:after{content:'';position:absolute;left:0;bottom:-1px;width:0;height:2px;background:var(--forest);transition:width .3s}.booking-progress li.active,.booking-progress li.complete{color:var(--ink)}.booking-progress li.active:after,.booking-progress li.complete:after{width:100%}.booking-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.45fr);gap:70px;align-items:start}.appointment-form{display:block}.booking-step h2{margin:19px 0 38px;font-size:clamp(45px,4vw,62px)}.booking-choice-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line)}.booking-choice-grid label,.specialist-choice{display:block;position:relative}.booking-choice-grid input,.specialist-choice input,.time-options input{position:absolute;opacity:0;pointer-events:none}.booking-choice-grid label>span,.specialist-choice>span{min-height:148px;display:flex;flex-direction:column;padding:25px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .2s,color .2s}.booking-choice-grid b,.specialist-choice b{font:500 10px/1 var(--sans);color:var(--muted);margin-bottom:25px}.booking-choice-grid strong,.specialist-choice strong{font:400 28px/1.1 var(--serif)}.booking-choice-grid small,.specialist-choice small{margin-top:10px;color:var(--muted);font-size:12px}.booking-choice-grid input:checked+span,.specialist-choice input:checked+span{background:var(--forest);color:var(--paper)}.booking-choice-grid input:checked+span b,.booking-choice-grid input:checked+span small,.specialist-choice input:checked+span b,.specialist-choice input:checked+span small{color:var(--light-sage)}.booking-choice-grid input:focus-visible+span,.specialist-choice input:focus-visible+span,.time-options input:focus-visible+span{outline:2px solid var(--forest);outline-offset:-4px}.choice-wide{grid-column:1/-1}.choice-wide>span{min-height:120px!important}.specialist-options{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line)}.specialist-choice>span{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.date-time-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:50px}.date-field,.time-field{font-size:11px;letter-spacing:1.2px;text-transform:uppercase}.date-field input{margin-top:14px;padding:18px;border-color:var(--line);font-size:16px;text-transform:none}.time-field{border:0;padding:0;margin:0}.time-field legend{margin-bottom:14px}.time-options{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.time-options label{position:relative}.time-options span{display:grid;place-items:center;border:1px solid var(--line);min-height:58px;font-size:14px;letter-spacing:0;transition:background .2s,color .2s}.time-options input:checked+span{background:var(--forest);color:var(--paper)}.booking-hint{margin-top:25px;color:var(--muted);font-size:12px}.booking-fields{display:grid;grid-template-columns:1fr 1fr;gap:21px}.booking-fields label{font-size:11px;letter-spacing:1px;text-transform:uppercase}.booking-fields input,.booking-fields textarea{margin-top:6px;border:0;border-bottom:1px solid var(--line);padding:13px 0;background:transparent;font:14px/1.5 var(--sans);resize:vertical;text-transform:none}.booking-fields label:nth-child(4),.consent-field{grid-column:1/-1}.booking-fields label>span{color:var(--muted);text-transform:none;letter-spacing:0}.consent-field{display:flex;grid-template-columns:none;flex-direction:row;align-items:flex-start;gap:12px;margin-top:8px;text-transform:none!important;letter-spacing:0!important;font-size:12px!important}.consent-field input{width:17px;height:17px;margin:2px 0 0;accent-color:var(--forest)}.booking-actions{display:flex;align-items:center;justify-content:flex-end;gap:24px;margin-top:42px}.booking-prev{background:transparent;border-bottom:1px solid var(--forest);padding:10px 0;font-size:13px}.booking-next,.booking-submit{min-height:48px;padding:13px 20px;gap:22px}.step-error{color:#8a3f31;font-size:12px;margin-top:22px}.booking-summary{background:var(--paper);padding:35px;position:sticky;top:30px}.booking-summary dl{margin:31px 0 0}.booking-summary dl div{padding:19px 0;border-bottom:1px solid var(--line)}.booking-summary dt{font-size:9px;letter-spacing:1.3px;color:var(--muted);text-transform:uppercase}.booking-summary dd{margin:6px 0 0;font:400 21px/1.2 var(--serif)}.summary-note{font-size:11px;line-height:1.7;color:var(--muted);margin-top:28px}.booking-complete{text-align:center;max-width:760px;margin:30px auto;padding:70px;background:var(--paper)}.booking-complete>span{display:grid;place-items:center;width:55px;height:55px;border-radius:50%;background:var(--light-sage);margin:0 auto 28px;font-size:25px}.booking-complete h2{margin:22px 0}.booking-complete>p:not(.eyebrow){max-width:570px;margin-inline:auto;color:var(--muted);font-size:14px}.booking-complete .button{margin-top:30px}
@media(max-width:900px){.booking-intro>div{grid-template-columns:1fr;gap:24px}.booking-layout{grid-template-columns:1fr}.booking-summary{position:static;order:-1}.booking-summary dl{display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.date-time-grid{grid-template-columns:1fr}.booking-area{padding-top:50px}}
@media(max-width:650px){.booking-back-link{display:none}.booking-intro{padding-block:48px 55px}.booking-progress{overflow-x:auto;gap:30px}.booking-progress li{min-width:100px}.booking-progress li span{display:block;margin-bottom:5px}.booking-choice-grid,.specialist-options{grid-template-columns:1fr}.choice-wide{grid-column:auto}.booking-choice-grid label>span,.specialist-choice>span{min-height:125px}.booking-fields{grid-template-columns:1fr}.booking-fields label:nth-child(4),.consent-field{grid-column:auto}.time-options{grid-template-columns:repeat(2,1fr)}.booking-actions{justify-content:space-between}.booking-summary dl{grid-template-columns:1fr}.booking-complete{padding:50px 20px}}
.date-availability{display:block;margin-top:12px;color:#8a3f31;font-size:11px;line-height:1.55;letter-spacing:0;text-transform:none}.date-availability[hidden]{display:none}.time-options label.unavailable span{opacity:.35;text-decoration:line-through;cursor:not-allowed}
.booking-progress{grid-template-columns:repeat(5,1fr)}
.procedure-options{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.procedure-choice{display:block;position:relative}.procedure-choice input{position:absolute;opacity:0;pointer-events:none}.procedure-choice>span{min-height:128px;display:flex;flex-direction:column;padding:23px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .2s,color .2s}.procedure-choice b{font:500 10px/1 var(--sans);color:var(--muted);margin-bottom:19px}.procedure-choice strong{font:400 24px/1.12 var(--serif)}.procedure-choice small{margin-top:9px;color:var(--muted);font-size:12px}.procedure-choice input:checked+span{background:var(--forest);color:var(--paper)}.procedure-choice input:checked+span b,.procedure-choice input:checked+span small{color:var(--light-sage)}.procedure-choice input:focus-visible+span{outline:2px solid var(--forest);outline-offset:-4px}
@media(max-width:650px){.procedure-options{grid-template-columns:1fr}.procedure-choice>span{min-height:115px}}
.booking-complete .button{min-height:44px;padding:11px 18px;font-size:13px;gap:0}
.service .plus{font-size:0;transform:none}.service .plus::before{content:'↓';font-size:19px;font-family:var(--sans);font-weight:400}.service[open] .plus{transform:none}.service[open] .plus::before{content:'↑'}
.booking-choice-grid label>span,.procedure-choice>span,.specialist-choice>span,.time-options span{cursor:pointer;transition:background .22s,color .22s,box-shadow .22s,transform .22s}
@media(hover:hover){.booking-choice-grid input:not(:checked)+span:hover,.procedure-choice input:not(:checked)+span:hover,.specialist-choice input:not(:checked)+span:hover{background:#d8e2ce;box-shadow:inset 0 0 0 1px var(--forest);transform:translateY(-2px)}.time-options input:not(:checked):not(:disabled)+span:hover{background:#d8e2ce;border-color:var(--forest);transform:translateY(-2px)}}

@media(max-width:650px){
  .booking-page{overflow:hidden}.booking-page .wrap{width:calc(100% - 32px)}
  .booking-intro{padding-block:38px 44px}.booking-intro>div{margin-top:20px;gap:18px}.booking-intro h1{font-size:clamp(42px,13vw,55px);line-height:1}.booking-intro>div>p{font-size:13px;line-height:1.7;padding:0}
  .booking-area{padding-block:34px 65px}.booking-progress{grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:38px;border-bottom:0;overflow:visible}.booking-progress li{min-width:0;padding:0;text-align:center;font-size:0}.booking-progress li:after{display:none}.booking-progress li span{display:grid;place-items:center;width:32px;height:32px;margin:0 auto;border:1px solid var(--line);border-radius:50%;font-size:10px;transition:background .2s,color .2s,border-color .2s}.booking-progress li.active span{background:var(--forest);border-color:var(--forest);color:var(--paper)}.booking-progress li.complete span{background:var(--light-sage);border-color:var(--light-sage);color:var(--ink)}
  .booking-layout{display:flex;flex-direction:column;gap:36px}.appointment-form{width:100%}.booking-step h2{font-size:clamp(37px,11vw,48px);margin:15px 0 28px;letter-spacing:-.7px}.booking-choice-grid,.procedure-options,.specialist-options{grid-template-columns:1fr}.booking-choice-grid label>span,.specialist-choice>span,.procedure-choice>span{min-height:0;padding:20px}.booking-choice-grid b,.specialist-choice b,.procedure-choice b{margin-bottom:13px}.booking-choice-grid strong,.specialist-choice strong{font-size:25px}.procedure-choice strong{font-size:23px}.booking-choice-grid small,.specialist-choice small,.procedure-choice small{font-size:11px}
  .date-time-grid{gap:30px}.date-field input{min-height:54px}.time-options{grid-template-columns:repeat(2,1fr);gap:8px}.time-options span{min-height:52px}.booking-fields{gap:16px}.booking-fields input,.booking-fields textarea{font-size:16px}.consent-field{font-size:11px!important;line-height:1.55}
  .booking-actions{position:sticky;bottom:0;z-index:3;margin:34px -16px 0;padding:13px 16px;background:rgba(229,229,218,.96);box-shadow:0 -12px 25px rgba(38,56,45,.08);gap:16px}.booking-actions .button{flex:1;min-width:0;min-height:47px;padding:12px 16px;gap:14px}.booking-prev{flex:0 0 auto}
  .booking-summary{order:initial;width:100%;padding:25px;margin:0}.booking-summary dl{grid-template-columns:1fr 1fr;gap:0 20px}.booking-summary dl div{padding:15px 0}.booking-summary dd{font-size:18px}.summary-note{margin-top:22px}
  .booking-complete{margin:0;padding:45px 20px}.booking-complete h2{font-size:42px}.booking-complete .button{width:auto}
}
@media(max-width:390px){.booking-page .wrap{width:calc(100% - 24px)}.booking-summary dl{grid-template-columns:1fr}.booking-actions{margin-inline:-12px;padding-inline:12px}.booking-choice-grid strong,.specialist-choice strong{font-size:23px}}

/* Service category tabs */
.service-tab-heading{text-align:center}.service-tab-heading h2{margin-top:24px}.service-tabs{display:grid;grid-template-columns:repeat(4,1fr);margin-top:58px;border-bottom:1px solid var(--line)}.service-tab{position:relative;background:transparent;padding:18px 10px 17px;color:var(--muted);font-size:14px;white-space:nowrap}.service-tab:after{content:'';position:absolute;left:50%;bottom:-1px;width:0;height:2px;background:var(--forest);transform:translateX(-50%);transition:width .25s}.service-tab:hover,.service-tab[aria-selected="true"]{color:var(--ink)}.service-tab[aria-selected="true"]:after{width:100%}.service-panel{padding:72px 0 12px}.service-panel-heading{display:grid;grid-template-columns:1.35fr .65fr;gap:80px;align-items:end}.service-panel-heading h2{margin-top:25px}.service-panel-heading>p{max-width:430px;color:var(--muted);font-size:15px;line-height:1.8}.service-panel-lead{max-width:680px;margin-top:22px;color:var(--muted);font-size:17px;line-height:1.75}.service-panel-details{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-top:48px;padding-top:34px;border-top:1px solid var(--line)}.service-panel-details h3{font:500 12px/1.5 var(--sans);letter-spacing:1.4px;text-transform:uppercase}.service-panel-details ul{margin:19px 0 0;padding:0;list-style:none}.service-panel-details li{position:relative;padding:7px 0 7px 18px;font-size:14px}.service-panel-details li:before{content:'·';position:absolute;left:0;color:var(--sage);font-size:22px;line-height:1}.service-panel-details>div>p{max-width:480px;margin-top:19px;color:var(--muted);font-size:14px;line-height:1.8}.service-panel .service-book{gap:12px;margin-top:38px}.service-panel .service-book span{display:inline-flex;align-items:center;font-family:Arial,sans-serif;font-size:17px}.service-panel[hidden]{display:none}.service-panel:not([hidden]){animation:service-panel-in .35s ease}@keyframes service-panel-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:800px){.service-tab-heading{text-align:left}.service-tabs{display:flex;overflow-x:auto;justify-content:flex-start;margin-top:38px;scrollbar-width:none}.service-tabs::-webkit-scrollbar{display:none}.service-tab{flex:0 0 auto;padding-inline:18px}.service-tab:first-child{padding-left:0}.service-panel{padding-top:52px}.service-panel-heading{grid-template-columns:1fr;gap:26px}.service-panel-details{grid-template-columns:1fr;gap:34px;margin-top:36px}.service-panel-lead{font-size:16px}}

.services-page .service-catalog{padding-top:30px}
@media(max-width:800px){.services-page .service-catalog{padding-top:28px}}

.service-panel-heading-single{grid-template-columns:1fr}.service-panel-heading-single>div{max-width:760px}

.service-panel{padding-top:40px}.service-panel-heading h2{margin-top:0}
@media(max-width:800px){.service-panel{padding-top:32px}}

.procedure-list{margin-top:42px;border-bottom:1px solid var(--line)}.procedure-list-head,.procedure-row{display:grid;grid-template-columns:minmax(0,1fr) 90px 70px;gap:28px;align-items:center}.procedure-list-head{padding:0 0 12px;color:var(--muted);font-size:10px;letter-spacing:1.4px;text-transform:uppercase}.procedure-list-head span:nth-child(n+2){text-align:right}.procedure-row{padding:20px 0;border-top:1px solid var(--line)}.procedure-row h3{font-size:27px;line-height:1.15}.procedure-row p{margin-top:5px;color:var(--muted);font-size:13px;line-height:1.6}.procedure-row>span{text-align:right;color:var(--muted);font-size:13px}.procedure-row>strong{text-align:right;font:400 24px/1 var(--serif);color:var(--forest);white-space:nowrap}
@media(max-width:650px){.procedure-list{margin-top:32px}.procedure-list-head{display:none}.procedure-row{grid-template-columns:1fr auto;gap:10px 20px;padding:19px 0}.procedure-row>div{grid-column:1/-1}.procedure-row>span{text-align:left}.procedure-row>strong{text-align:right}.procedure-row h3{font-size:24px}}

.selection-help{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:start;border-top:1px solid var(--line)}.selection-help>.eyebrow{padding-top:8px}.selection-help-content{max-width:670px}.selection-help-content>p{font:400 clamp(27px,2.5vw,38px)/1.35 var(--serif);color:var(--ink)}.selection-help .button{margin-top:32px;padding:10px 18px;min-height:0;gap:12px}.selection-help .button span{display:inline-flex;align-items:center;font-family:Arial,sans-serif;font-size:17px}
@media(max-width:800px){.selection-help{grid-template-columns:1fr;gap:28px}.selection-help>.eyebrow{padding-top:0}.selection-help-content>p{font-size:28px}}

.selection-help{display:block;text-align:center}.selection-help>.eyebrow{padding-top:0}.selection-help-content{max-width:820px;margin:28px auto 0}.selection-help-content>p{line-height:1.32}.selection-help .button{margin-inline:auto}
@media(max-width:800px){.selection-help-content{margin-top:24px}}

/* About page */
.about-intro{padding-block:78px 105px}.about-intro h1{max-width:1050px;margin-top:28px;font-size:clamp(58px,5.2vw,86px)}.about-intro>p:last-child{max-width:680px;margin-top:32px;color:var(--muted);font-size:17px;line-height:1.85}.about-story{background:var(--ivory)}.about-story-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:center}.about-story-copy>p:not(.eyebrow){max-width:560px;font-size:17px;line-height:1.9}.about-story-copy>.eyebrow+ p{margin-top:34px;font:400 clamp(26px,2.3vw,34px)/1.45 var(--serif);color:var(--ink)}.about-story-copy>p:last-child{margin-top:27px;color:var(--muted)}.about-story-image{height:620px;overflow:hidden}.about-story-image img{object-position:center 55%}
@media(max-width:1000px){.about-story-grid{gap:48px}.about-story-image{height:560px}}
@media(max-width:800px){.about-intro{padding-block:52px 70px}.about-intro h1{font-size:clamp(46px,10vw,64px)}.about-intro>p:last-child{font-size:16px}.about-story-grid{grid-template-columns:1fr;gap:42px}.about-story-image{height:420px}.about-story-copy>p:not(.eyebrow){max-width:100%}}

.about-principles-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:50px}.about-principles-heading h2{text-align:right}.principle-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.principle-cards article{display:flex;flex-direction:column;min-height:350px;padding:36px;background:var(--ivory);transition:transform .3s,background .3s}.principle-cards article:nth-child(2){background:var(--light-sage)}.principle-cards article:hover{transform:translateY(-5px)}.principle-cards article>span{color:var(--forest);font-size:12px}.principle-cards h3{margin-top:auto;padding-top:75px;font-size:42px;line-height:1.05}.principle-cards p{margin-top:20px;color:var(--muted);font-size:14px;line-height:1.8}.principle-cards article:nth-child(2) p{color:var(--ink)}
@media(max-width:900px){.principle-cards{grid-template-columns:1fr}.principle-cards article{min-height:270px}.principle-cards h3{padding-top:55px}.about-principles-heading{align-items:start}.about-principles-heading h2{font-size:48px}}
@media(max-width:600px){.about-principles-heading{display:block}.about-principles-heading h2{margin-top:22px;text-align:left}.principle-cards article{padding:28px}.principle-cards h3{font-size:37px}}

.about-team{background:var(--ivory)}.team-heading{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:end;margin-bottom:52px}.team-heading h2{margin-top:25px}.team-heading>p{max-width:510px;justify-self:end;color:var(--muted);font-size:15px;line-height:1.8}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.team-card{background:var(--paper)}.team-photo{height:500px;overflow:hidden}.team-photo img{object-position:center 26%}.team-card-copy{padding:28px 30px 32px}.team-card h3{font-size:36px;line-height:1.1}.team-card-copy>p{margin-top:7px;color:var(--muted);font-size:13px}.team-card .text-link{gap:12px;margin-top:24px}.team-card .text-link span{display:inline-flex;align-items:center;font-family:Arial,sans-serif;font-size:17px}.specialist-dialog h2{margin-bottom:5px}.specialist-role{color:var(--forest);font:italic 25px/1.3 var(--serif)}.specialist-dialog dl{margin:30px 0 0}.specialist-dialog dl>div{display:grid;grid-template-columns:135px 1fr;gap:20px;padding:15px 0;border-top:1px solid var(--line)}.specialist-dialog dt{font-size:11px;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted)}.specialist-dialog dd{margin:0;font-size:14px}.close-specialist{position:absolute;right:17px;top:10px;background:none;font-size:32px;width:40px;height:40px}.specialist-book{margin-top:28px;padding:10px 18px;min-height:0;gap:12px}.specialist-book span{display:inline-flex;align-items:center;font-family:Arial,sans-serif;font-size:17px}
@media(max-width:1000px){.team-photo{height:430px}.team-card-copy{padding:24px}.team-card h3{font-size:31px}}
@media(max-width:800px){.team-heading{grid-template-columns:1fr;gap:24px}.team-heading>p{justify-self:start}.team-grid{grid-template-columns:1fr}.team-photo{height:540px}.specialist-dialog dl>div{grid-template-columns:1fr;gap:5px}}
@media(max-width:450px){.team-photo{height:430px}}

.about-story-copy{text-align:center;justify-self:center}.about-story-copy>p:not(.eyebrow){margin-left:auto;margin-right:auto}

.about-principles-heading{display:block}.about-principles-heading h2{margin-top:24px;text-align:left;white-space:nowrap}
@media(max-width:600px){.about-principles-heading h2{white-space:normal}}

@media(max-width:650px){
  .service-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line)}
  .service-tab,.service-tab:first-child{display:flex;align-items:center;justify-content:center;min-height:62px;padding:11px 8px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-size:12px;line-height:1.35;text-align:center;white-space:normal;transition:background .2s,color .2s}
  .service-tab:after{display:none}.service-tab[aria-selected="true"]{background:var(--forest);color:var(--paper)}
}
