@font-face{font-family:Site;src:local('Avenir Next'),local('Avenir'),local('Segoe UI');font-display:swap}:root{--ink:#234e43;--muted:#61746c;--sage:#28775f;--pale:#edf4ef;--paper:#fcfcf8;--cream:#f2f5ee;--line:#dce6dd;--pink:#18815d;--radius:5px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:115px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.8 Site,'Avenir Next','Segoe UI',Arial,sans-serif}body.menu-is-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--pink);outline-offset:5px}img{max-width:100%;display:block}h1,h2:where(:not(.seo-h2-as-h3)),:is(h3,h2:where(.seo-h2-as-h3)),h4,p{margin-top:0}h1,h2:where(:not(.seo-h2-as-h3)),:is(h3,h2:where(.seo-h2-as-h3)),h4{font-weight:400;line-height:1.15;letter-spacing:-.035em}h1{font-size:clamp(40px,4.5vw,69px)}h2:where(:not(.seo-h2-as-h3)){font-size:clamp(31px,3.3vw,48px)}:is(h3,h2:where(.seo-h2-as-h3)){font-size:25px}em{font-family:inherit;font-style:normal;font-weight:inherit;color:var(--sage)}.top{display:flex;justify-content:space-between;background:var(--ink);color:#fcf7f8;font-size:12px;padding:7px 5%;letter-spacing:.03em}header{height:105px;position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:24px;padding:12px 5%;background:#fcfcf8f5;backdrop-filter:blur(15px);border-bottom:1px solid var(--line)}.brand{display:block;flex-shrink:0;width:265px}.brand img{width:100%;height:78px;object-fit:contain}nav.desktop{display:flex;align-items:center;gap:26px;margin:auto;font-size:14px}nav.desktop a{position:relative;white-space:nowrap}nav.desktop a:hover:after,nav.desktop a[aria-current=page]:after{content:'';height:1px;background:var(--pink);position:absolute;bottom:-8px;left:0;right:0}.header-actions{display:flex;gap:8px;align-items:center}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;border:1px solid var(--ink);background:var(--ink);color:white;padding:15px 23px;font-size:14px;line-height:1.5;border-radius:2px}.button:hover{background:#316553}.button.outline{background:transparent;color:var(--ink);border-color:#a2b8ac}.button.outline:hover{background:#e5f0e8}.button.booking{background:var(--sage);border-color:var(--sage);color:white}.button[aria-disabled=true]{cursor:default}.button.small{padding:12px 15px;font-size:12px;gap:12px;white-space:nowrap}.menu-toggle{display:none;background:transparent;border:1px solid var(--line);width:43px;height:43px;padding:10px;color:var(--ink)}.menu-toggle span{height:1px;background:currentColor;display:block;margin:5px 0}.menu-overlay[hidden]{display:none}.menu-overlay{position:fixed;inset:0;z-index:100;background:var(--paper);display:flex;flex-direction:column;padding:20px 7%;overflow-y:auto}.overlay-top{display:flex;justify-content:space-between;align-items:center}.overlay-top .brand{width:240px}.menu-close{background:none;border:1px solid var(--line);border-radius:50%;width:45px;height:45px;font-size:26px;color:var(--ink)}.menu-overlay nav{display:flex;flex-direction:column;padding:30px 0;gap:0;margin:auto 0}.menu-overlay nav a{font-size:clamp(28px,6vw,48px);padding:13px 0;border-bottom:1px solid var(--line);font-weight:400;letter-spacing:-.04em;display:flex;justify-content:space-between}.overlay-bottom{padding:20px 0;font-size:14px}.overlay-bottom .header-actions{margin-bottom:20px;flex-wrap:wrap}.container{padding-left:8%;padding-right:8%}.section{padding-top:85px;padding-bottom:85px}.eyebrow{display:flex;align-items:center;gap:12px;text-transform:uppercase;letter-spacing:.19em;font-size:11px;font-weight:600;margin-bottom:23px}.eyebrow:before{content:'';height:1px;width:25px;background:currentColor}.hero{display:grid;grid-template-columns:1fr 1fr;background:var(--cream);min-height:610px}.hero-copy{padding:65px 10% 65px 16%;align-self:center}.hero-copy h1{margin-bottom:25px}.hero-copy>p{max-width:430px;color:var(--muted);font-size:16px;line-height:1.85}.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.hero-photo{position:relative;overflow:hidden;min-height:420px}.hero-photo>img{height:100%;width:100%;object-fit:cover;position:absolute;object-position:55% center}.image-note{position:absolute;bottom:25px;left:25px;font-size:11px;text-transform:uppercase;letter-spacing:.1em;background:#fcf7f8ed;padding:9px 14px}.info-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding:25px 8%;border-bottom:1px solid var(--line)}.info-strip>div{border-right:1px solid var(--line);padding-left:20px}.info-strip>div:first-child{padding-left:0}.info-strip>div:last-child{border:0}.info-strip b{font-size:15px;font-weight:500;display:block}.info-strip span{font-size:14px;color:var(--muted)}.split{display:grid;grid-template-columns:1fr 1.1fr;gap:85px;align-items:center}.split .copy>p{color:var(--muted)}.text-link{font-size:14px;display:inline-flex;align-items:center;gap:25px;padding:6px 0;border-bottom:1px solid #ab8a9a;margin-top:10px}.text-link:hover{color:var(--pink)}.pale{background:var(--pale)}.section-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:35px;gap:40px}.section-head h2:where(:not(.seo-h2-as-h3)){margin-bottom:0}.section-head>p{max-width:300px;font-size:15px;color:var(--muted);margin:0}.specialty-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.specialty-card{padding:28px;background:#fcfcf8;display:flex;flex-direction:column;min-height:220px;border:1px solid #e7dce1;transition:transform .18s,box-shadow .18s}.specialty-card:hover{transform:translateY(-3px);box-shadow:0 10px 20px #234e4309}.card-index{font-size:11px;letter-spacing:.12em;color:#826474;display:flex;justify-content:space-between}.specialty-card :is(h3,h2:where(.seo-h2-as-h3)){font-size:23px;margin:24px 0 15px}.specialty-card p{font-size:14px;color:var(--muted);line-height:1.8;margin-bottom:20px}.specialty-card .more{font-size:12px;margin-top:auto;display:flex;justify-content:space-between}.feature{display:grid;grid-template-columns:1fr 1fr}.feature img{height:530px;width:100%;object-fit:cover}.feature .copy{padding:70px 15%;background:#f3eae7;align-content:center}.feature p{color:var(--muted);font-size:16px}.team-preview{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.portrait-pair{display:grid;grid-template-columns:1fr 1fr;gap:15px}.portrait-pair img{width:100%;aspect-ratio:4/5;object-fit:cover}.portrait-pair div:nth-child(2){padding-top:35px}.portrait-pair p{margin:14px 0 0;font-size:14px}.faq-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:85px;align-items:start}.faq-layout .lead{color:var(--muted);font-size:16px}.faqs{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;padding:22px 32px 22px 0;position:relative;font-size:16px;line-height:1.5}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:4px;top:20px;font-size:23px;font-weight:300}details[open]>summary:after{content:'−'}details .answer{padding:0 30px 22px 0;font-size:16px;color:var(--muted)}details .answer p:last-child{margin-bottom:0}.contact-band{background:var(--ink);color:#fff}.contact-band .split{grid-template-columns:1.1fr 1fr;gap:90px}.contact-band p{color:#ddcfd5;font-size:16px}.contact-band em{color:#e5ccd7}.contact-band .button{background:#efe1e7;border-color:#efe1e7;color:var(--ink)}.contact-band .button.outline{background:transparent;border-color:#bca2ae;color:white}.contact-band .button.booking{background:#efe1e7;color:var(--ink)}.contact-data{border-top:1px solid #8d7481}.contact-data>div{display:flex;justify-content:space-between;gap:30px;border-bottom:1px solid #826774;padding:19px 0;font-size:15px}.contact-data span{color:#ddcfd5}.contact-data :is(h3,h2:where(.seo-h2-as-h3)){font-size:28px}.breadcrumb{font-size:12px;color:#84717b;margin-bottom:25px}.breadcrumb a{text-decoration:underline;text-underline-offset:4px}.specialty-hero{background:var(--cream);display:grid;grid-template-columns:1.1fr 1fr;min-height:510px}.specialty-hero .copy{padding:45px 9% 50px 14%;align-self:center}.specialty-hero h1{font-size:clamp(38px,3.7vw,57px);margin-bottom:25px}.specialty-hero .intro{font-size:16px;line-height:1.85;color:var(--muted)}.specialty-hero .visual{position:relative;min-height:400px}.specialty-hero .visual img{height:100%;width:100%;object-fit:cover;position:absolute}.topics{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.topics span{border:1px solid #dfd0d8;font-size:11px;padding:6px 10px;background:#fcf7f8}.jump-links{padding:18px 8%;display:flex;gap:30px;font-size:12px;border-bottom:1px solid var(--line);flex-wrap:wrap}.jump-links a:hover{color:var(--pink)}.specialty-body{display:grid;grid-template-columns:1fr 285px;gap:75px;align-items:start}.editorial-section{padding:0 0 40px;margin-bottom:40px;border-bottom:1px solid var(--line)}.editorial-section:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}.editorial-section .number{font-size:12px;letter-spacing:.12em;color:var(--sage);margin-bottom:20px;display:block}.editorial-section h2:where(:not(.seo-h2-as-h3)){font-size:32px;max-width:600px;line-height:1.25;margin-bottom:22px}.editorial-section p{font-size:16px;color:#6c5963;line-height:1.95;max-width:720px}.sidebar{background:var(--pale);padding:30px;position:sticky;top:130px}.sidebar :is(h3,h2:where(.seo-h2-as-h3)){font-size:25px}.sidebar p{font-size:14px;color:var(--muted)}.sidebar .button{width:100%;padding:13px 15px;gap:10px;margin-bottom:10px}.sidebar .small-note{font-size:12px;line-height:1.7}.source-note{font-size:11px;color:#88747f;margin-top:30px}.source-note a{text-decoration:underline}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.related-card{border-top:1px solid #bca2b0;padding:25px 20px;background:#f7f0f3;display:flex;flex-direction:column}.related-card :is(h3,h2:where(.seo-h2-as-h3)){font-size:23px;line-height:1.3;min-height:60px}.related-card .text-link{align-self:flex-start;margin-top:auto}.page-heading{padding-top:45px;padding-bottom:50px;background:var(--cream)}.page-heading h1{max-width:900px;margin-bottom:20px}.page-heading>p{max-width:670px;color:var(--muted)}.clinic-picture{width:100%;height:400px;object-fit:cover}.team-intro p{color:var(--muted)}.doctors{display:grid;grid-template-columns:1fr 1fr;gap:28px}.doctor-card{border:1px solid var(--line);background:var(--paper)}.doctor-card .portrait{width:100%;aspect-ratio:1.22;object-fit:cover;object-position:50% 30%}.doctor-info{padding:33px}.doctor-info .role{font-size:12px;letter-spacing:.05em;color:var(--sage);margin-bottom:16px}.doctor-info :is(h3,h2:where(.seo-h2-as-h3)){font-size:31px;margin-bottom:18px}.doctor-info p{font-size:16px;color:var(--muted)}.doctor-info ul{padding-left:18px;font-size:15px;line-height:1.9}.staff-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.staff-grid img{width:100%;aspect-ratio:1;object-fit:cover;object-position:center 25%}.staff-grid :is(h3,h2:where(.seo-h2-as-h3)){font-size:23px;margin:20px 0 8px}.staff-grid p{font-size:15px;color:var(--muted)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:40px}.step{border-top:1px solid #baa1af;padding-top:23px}.step b{display:block;color:var(--sage);font-size:14px;margin-bottom:25px}.step :is(h3,h2:where(.seo-h2-as-h3)){font-size:23px}.step p{font-size:15px;color:var(--muted)}.profile{display:grid;grid-template-columns:350px 1fr;gap:70px;align-items:start}.profile-image{position:sticky;top:130px}.profile-image img{width:100%;aspect-ratio:4/5;object-fit:cover}.profile-content>p{font-size:16px;color:var(--muted)}.profile-content h2:where(:not(.seo-h2-as-h3)){font-size:31px;margin-top:40px}.timeline{list-style:none;margin:0;padding:0}.timeline li{border-top:1px solid var(--line);padding:20px 0;font-size:16px}.timeline b{display:block;font-size:14px;font-weight:500;color:var(--sage);margin-bottom:6px}.article-layout{display:grid;grid-template-columns:1fr 260px;gap:70px;align-items:start}.reading{max-width:850px}.reading .article-lead{font-size:18px;color:var(--muted);line-height:1.8}.reading img.article-img{width:100%;max-height:380px;object-fit:cover;margin:30px 0}.reading h2:where(:not(.seo-h2-as-h3)){font-size:29px;margin:36px 0 20px}.reading :is(h3,h2:where(.seo-h2-as-h3)){font-size:23px;margin:30px 0 18px}.reading p{line-height:1.95;color:#6f5c66}.article-section{padding:25px 0;border-bottom:1px solid var(--line)}.article-section p{margin-bottom:0}.article-section p+p{margin-top:20px}.article-section .number{font-size:12px;letter-spacing:.12em;color:var(--sage)}.blog-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:30px}.blog-card{border:1px solid var(--line)}.blog-card img{aspect-ratio:1.8;object-fit:cover;width:100%}.blog-card .copy{padding:30px}.blog-card h2:where(:not(.seo-h2-as-h3)){font-size:30px}.blog-card p{font-size:16px;color:var(--muted)}.form-section{background:var(--cream)}form{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{font-size:14px;display:flex;flex-direction:column;gap:7px}input,textarea{width:100%;padding:13px;border:1px solid #cebac5;background:var(--paper);color:var(--ink);border-radius:0}.full{grid-column:1/-1}.form-note{font-size:14px;color:var(--muted);max-width:750px}form .button{justify-self:start}.form-status{font-size:15px;margin:0}.footer-top{display:grid;grid-template-columns:1.3fr 1fr 1fr .8fr;gap:30px;padding:45px 5%}.footer-top .brand{width:240px}.footer-top :is(h3,h2:where(.seo-h2-as-h3)){font-size:15px;letter-spacing:0;margin-bottom:14px}.footer-top p,.footer-top a:not(.brand){font-size:12px;color:var(--muted)}.footer-links{display:flex;flex-direction:column;gap:7px}.footer-bottom{display:flex;justify-content:space-between;gap:25px;border-top:1px solid var(--line);margin:0 5%;padding:20px 0;font-size:11px;color:var(--muted)}.skip{position:fixed;top:-100px}.skip:focus{top:5px;left:5px;z-index:200;background:white;padding:12px}.demo-label{position:fixed;bottom:12px;left:12px;font-size:11px;z-index:25;background:#fcfcf8ed;border:1px solid var(--line);padding:5px 10px;pointer-events:none}.notice{padding:18px 25px;background:var(--pale);font-size:15px;color:var(--muted);border-left:2px solid var(--sage)} @media(min-width:1750px){body{max-width:1800px;margin:auto}header{padding-left:6%;padding-right:6%}}@media(max-width:1200px){header{padding:12px 4%;gap:18px}.brand{width:210px}nav.desktop{gap:16px;font-size:12px}.button.small{font-size:11px;padding:11px 12px}.specialty-body{gap:45px;grid-template-columns:1fr 245px}.split{gap:50px}.faq-layout{gap:50px}} @media(max-width:1000px){nav.desktop{display:none}.header-actions{margin-left:auto}.menu-toggle{display:block}.hero-copy{padding:45px 10% 45px 12%}.hero{min-height:530px}.specialty-hero .copy{padding-left:10%}.specialty-grid{grid-template-columns:repeat(2,1fr)}.specialty-body{gap:30px}.container{padding-left:6%;padding-right:6%}.split{gap:35px}.contact-band .split{gap:35px}.team-preview{gap:35px}.profile{grid-template-columns:260px 1fr;gap:40px}.footer-top{grid-template-columns:1fr 1fr}.footer-top .brand{width:220px}} @media(max-width:700px){html{scroll-padding-top:85px}.top{font-size:10px;padding:6px 5%}.top .hours-top{display:none}header{height:83px;padding:8px 5%;gap:10px}.brand{width:166px}.brand img{height:65px}header .header-actions{gap:5px}header .header-actions .button{font-size:11px;padding:9px 10px;gap:6px}header .phone-label{display:none}header .phone-icon{display:inline}.menu-toggle{width:36px;height:36px;padding:8px;flex-shrink:0}.hero{grid-template-columns:1fr}.hero-copy{padding:43px 7% 45px}.hero-copy h1{font-size:47px}.hero-photo{min-height:380px;max-height:460px}.hero-photo img{object-position:50% 35%}.hero-copy>p{font-size:16px}.eyebrow{font-size:10px;margin-bottom:20px}.info-strip{padding:23px 7%;gap:15px;grid-template-columns:1fr}.info-strip>div{border:0;padding-left:0;display:flex;justify-content:space-between;gap:20px}.info-strip b,.info-strip span{font-size:12px}.section{padding-top:55px;padding-bottom:55px}.container{padding-left:7%;padding-right:7%}.split{grid-template-columns:1fr;gap:25px}h2:where(:not(.seo-h2-as-h3)){font-size:35px}.section-head{display:block}.section-head>p{margin-top:22px;max-width:none}.specialty-grid{grid-template-columns:1fr;gap:12px}.specialty-card{padding:25px;min-height:200px}.specialty-card :is(h3,h2:where(.seo-h2-as-h3)){font-size:24px;margin-top:20px}.feature{grid-template-columns:1fr}.feature img{height:370px}.feature .copy{padding:45px 7%}.team-preview{grid-template-columns:1fr;gap:35px}.faq-layout{grid-template-columns:1fr;gap:25px}.faq-layout h2:where(:not(.seo-h2-as-h3)){margin-bottom:20px}.contact-band .split{grid-template-columns:1fr;gap:30px}.contact-data>div{font-size:14px}.specialty-hero{grid-template-columns:1fr}.specialty-hero .copy{padding:30px 7% 40px}.specialty-hero h1{font-size:42px}.specialty-hero .intro{font-size:16px}.specialty-hero .visual{min-height:330px}.specialty-hero .visual img{object-position:50% 35%}.jump-links{padding:17px 7%;gap:12px 23px;font-size:11px}.specialty-body{grid-template-columns:1fr;gap:40px}.editorial-section{padding-bottom:30px;margin-bottom:30px}.editorial-section h2:where(:not(.seo-h2-as-h3)){font-size:29px}.editorial-section p{font-size:16px}.sidebar{position:static}.related-grid{grid-template-columns:1fr}.related-card :is(h3,h2:where(.seo-h2-as-h3)){min-height:auto}.page-heading{padding-top:30px;padding-bottom:35px}.page-heading h1{font-size:42px}.doctors{grid-template-columns:1fr}.doctor-info{padding:27px}.doctor-info :is(h3,h2:where(.seo-h2-as-h3)){font-size:29px}.staff-grid{grid-template-columns:1fr;gap:35px}.staff-grid img{max-height:390px;object-fit:cover}.steps{grid-template-columns:1fr;gap:20px}.step b{margin-bottom:15px}.profile{grid-template-columns:1fr;gap:30px}.profile-image{position:static;max-width:350px}.article-layout{grid-template-columns:1fr;gap:35px}.blog-grid{grid-template-columns:1fr}.clinic-picture{height:310px}.footer-top{padding:35px 7%;gap:30px}.footer-top .brand{width:190px}.footer-top>div:first-child{grid-column:1/-1}.footer-bottom{font-size:10px;flex-wrap:wrap;gap:12px}form{grid-template-columns:1fr}.full{grid-column:auto}summary{font-size:16px;padding-top:19px;padding-bottom:19px}.faqs .answer{font-size:15px}.menu-overlay .brand{width:230px}.menu-overlay nav a{font-size:33px;padding:17px 0}.overlay-bottom .header-actions{margin-left:0}.demo-label{font-size:10px;bottom:6px;left:6px}.phone-icon{display:none}} @media(min-width:701px){.phone-icon{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}} @media(max-width:700px){header .brand{width:145px}header .header-actions .button{padding:8px;font-size:10px;gap:5px}header .header-actions{gap:5px}}@media(max-width:380px){header{gap:8px}header .brand{width:112px}.menu-toggle{width:32px;height:32px;padding:6px}header .header-actions .button{padding:8px 7px;font-size:10px}} .nav-specialties{border:0;position:relative}.nav-specialties>summary{font-size:inherit;line-height:inherit;letter-spacing:inherit;padding:0;white-space:nowrap;display:flex;align-items:center;justify-content:space-between;gap:8px}.nav-specialties>summary:after{display:none}.chevron{width:12px;height:12px;display:block;flex:0 0 12px;transform:none}.nav-specialties[open]>summary .chevron{transform:none} .desktop-specialties .specialties-panel{position:absolute;top:calc(100% + 23px);left:50%;transform:translateX(-50%);width:565px;max-height:calc(100dvh - 170px);overflow-y:auto;background:var(--paper);border:1px solid var(--line);box-shadow:0 16px 45px #234e4317;padding:18px;display:grid;grid-template-columns:1fr 1fr;gap:2px 15px} .desktop-specialties .specialties-panel a{padding:12px;font-size:14px;white-space:normal;display:flex;align-items:center;justify-content:space-between;gap:15px;line-height:1.4;border-bottom:1px solid var(--line)}.desktop-specialties .specialties-panel a:hover,.desktop-specialties .specialties-panel a[aria-current=page]{background:var(--pale)}.desktop-specialties .specialties-panel a:after{display:none}.specialties-panel .all-specialties{grid-column:1/-1;color:var(--ink);font-weight:600} .contents{display:flex;flex-direction:column;margin-bottom:25px}.contents a{font-size:12px;line-height:1.5;padding:9px 0;border-bottom:1px solid var(--line)}.contents a:hover{color:var(--pink)}.sidebar-contact{padding-top:18px;border-top:1px solid var(--line)}.sidebar-contact :is(h3,h2:where(.seo-h2-as-h3)){font-size:22px;margin-bottom:18px}.specialty-sidebar{max-height:calc(100dvh - 150px);overflow-y:auto;scrollbar-width:thin}.editorial-section p+p{margin-top:20px}.editorial-section p:last-child{margin-bottom:0}.editorial-section{scroll-margin-top:130px} @media(max-width:1000px){.mobile-specialties{border-bottom:1px solid var(--line)}.menu-overlay nav .mobile-specialties>summary{font-size:clamp(28px,6vw,48px);letter-spacing:-.04em;line-height:1.15;padding:18px 0}.menu-overlay .specialties-panel{padding:0 0 20px 15px;display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.menu-overlay .specialties-panel a{font-size:16px;letter-spacing:0;line-height:1.5;padding:12px 0;gap:15px}.menu-overlay nav .mobile-specialties .chevron{font-size:25px}.mobile-specialties .specialties-panel .all-specialties{font-size:14px}.menu-overlay nav{flex-shrink:0}.overlay-top{flex-shrink:0}.overlay-bottom{flex-shrink:0}} @media(max-width:700px){.menu-overlay nav .mobile-specialties>summary{font-size:33px;padding:17px 0}.menu-overlay .specialties-panel{grid-template-columns:1fr;padding-left:15px}.specialty-sidebar{max-height:none;overflow:visible}.editorial-section{scroll-margin-top:105px}.contents a{font-size:14px}.sidebar-contact .button{width:auto}.editorial-section h2:where(:not(.seo-h2-as-h3)){font-size:28px}} .nav-specialties:not([open])>.specialties-panel{display:none} .top{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:20px}.top>span:first-child{justify-self:start}.top .hours-top{grid-column:2;justify-self:center}.top>a{grid-column:3;justify-self:end} .nav-specialties>summary{align-items:center}.nav-specialties>summary .chevron,.nav-specialties[open]>summary .chevron{width:12px;height:12px;transform:none;flex:0 0 12px;align-self:center;margin:0;transition:none}.desktop-specialties[open]:after{content:'';position:absolute;left:0;right:0;top:100%;height:25px} .feature{grid-template-columns:1fr 1.1fr;overflow:hidden;border-radius:4px;background:#f3eae7}.feature img{height:100%;min-height:430px;max-height:540px;object-fit:cover;object-position:50% 40%}.feature .copy{padding:50px 12%;background:transparent}.feature .copy h2:where(:not(.seo-h2-as-h3)){line-height:1.2}.feature .copy p{font-size:16px} @media(min-width:1001px) and (max-width:1200px){nav.desktop{font-size:13px;gap:17px}.brand{width:195px}.button.small{font-size:11px;padding:11px}.header-actions{gap:7px}header{gap:16px}} @media(max-width:700px){.top{grid-template-columns:1fr auto;gap:3px 10px;padding:7px 5%;font-size:10px}.top .hours-top{display:block;grid-column:1/-1;grid-row:1;justify-self:center;text-align:center}.top>span:first-child{grid-column:1;grid-row:2}.top>a{grid-column:2;grid-row:2}.feature{grid-template-columns:1fr}.feature img{height:350px;min-height:0;max-height:none;object-position:50% 35%}.feature .copy{padding:32px 7%}.menu-overlay .nav-specialties>summary .chevron{width:14px;height:14px;flex-basis:14px}header .header-actions .button{font-size:10px}} @media(max-width:380px){header .header-actions .button{font-size:9px}.brand{flex-shrink:0}} :root{--page-gutter:8%}.container,.info-strip,.jump-links{padding-left:var(--page-gutter);padding-right:var(--page-gutter)}@media(max-width:1000px){:root{--page-gutter:6%}}@media(max-width:700px){:root{--page-gutter:7%}} h1 em,h2:where(:not(.seo-h2-as-h3)) em,:is(h3,h2:where(.seo-h2-as-h3)) em,h4 em{color:inherit;font:inherit}h1,h2:where(:not(.seo-h2-as-h3)),:is(h3,h2:where(.seo-h2-as-h3)),h4{overflow-wrap:normal;word-break:normal}.specialty-card :is(h3,h2:where(.seo-h2-as-h3)){margin-top:0}.contact-band h2:where(:not(.seo-h2-as-h3)){font-size:clamp(30px,2.8vw,40px);letter-spacing:-.025em} .related-section h2:where(:not(.seo-h2-as-h3)) em{color:var(--sage);font-family:inherit;font-style:normal;font-weight:inherit} .contact-data>div{display:grid;grid-template-columns:minmax(80px,1fr) minmax(0,2fr);align-items:start;gap:24px}.contact-data>div>:last-child{justify-self:stretch;text-align:left;overflow-wrap:anywhere}@media(max-width:700px){.contact-data>div{grid-template-columns:minmax(70px,1fr) minmax(0,2fr);gap:18px}} @media(max-width:1000px){header{justify-content:space-between}header>.header-actions{display:none}header>.brand{width:min(320px,calc(100% - 70px));height:72px;overflow:hidden;display:flex;align-items:center}header>.brand img{width:100%;height:auto;max-width:none;flex:0 0 100%;object-fit:initial}.menu-toggle{margin-left:auto;flex-shrink:0}.overlay-top>.brand{width:min(320px,calc(100% - 65px));height:72px;overflow:hidden;display:flex;align-items:center}.overlay-top>.brand img{width:100%;height:auto;max-width:none;flex:0 0 100%;object-fit:initial}.overlay-bottom .header-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 0 22px;width:100%}.overlay-bottom .header-actions .button{font-size:15px;padding:16px 18px;min-height:54px;justify-content:center;gap:10px}.overlay-bottom .header-actions .phone-label{display:inline}.overlay-bottom .header-actions .phone-icon{display:none}} @media(max-width:700px){header{height:88px;padding:8px 5%;gap:12px}header>.brand{width:clamp(220px,72vw,300px);height:64px}.menu-toggle{width:42px;height:42px;padding:10px}.overlay-top>.brand{height:64px}.overlay-bottom .header-actions{grid-template-columns:1fr}.overlay-bottom .header-actions .button{font-size:16px}} .cardio-doctors{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.cardio-doctors .doctor-card{display:block}.cardio-doctors img{width:100%;height:auto;aspect-ratio:1;object-fit:cover}.cardio-doctors .doctor-info{padding:25px}.cardio-doctors :is(h3,h2:where(.seo-h2-as-h3)){font-size:27px}.feature-image img{width:100%;height:100%;object-fit:cover;min-height:380px}.feature-copy{padding:50px}.specialty-hero>div:first-child img{width:100%;height:390px;object-fit:cover}.specialty-intro{padding:30px}.brand img{mix-blend-mode:multiply}header>.brand{width:215px}header>.brand img{height:88px;object-fit:contain}.overlay-top>.brand{width:215px;height:94px}.overlay-top>.brand img{height:94px;object-fit:contain}footer .brand img{height:auto}@media(max-width:1000px){header{height:112px}header>.brand{width:220px;height:94px;overflow:visible}header>.brand img{height:94px;object-fit:contain}.cardio-doctors{grid-template-columns:1fr 1fr}}@media(max-width:700px){.cardio-doctors{grid-template-columns:1fr}.feature-copy{padding:30px 0}.feature-image img{min-height:260px}.specialty-intro{padding:0}.specialty-hero>div:first-child img{height:280px}header>.brand{width:220px;max-width:calc(100% - 60px)}} header>.brand,.overlay-top>.brand{width:340px;height:auto;max-width:calc(100% - 65px);overflow:visible;display:block}header>.brand img,.overlay-top>.brand img{display:block;width:100%;height:auto;max-width:100%;object-fit:contain}footer .brand{width:340px;max-width:100%}footer .brand img{width:100%;height:auto}@media(max-width:1000px){header{height:90px}header>.brand,.overlay-top>.brand{width:340px;height:auto}header>.brand img,.overlay-top>.brand img{height:auto}}@media(max-width:700px){header{height:82px}header>.brand,.overlay-top>.brand{width:340px;max-width:calc(100% - 58px);height:auto}header>.brand img,.overlay-top>.brand img{height:auto}} body.booking-is-open{overflow:hidden} .booking-dialog{padding:0;border:1px solid var(--line);border-radius:6px;width:min(1080px,calc(100vw - 48px));max-width:none;max-height:calc(100dvh - 48px);background:var(--paper);color:var(--ink);overflow:auto;overscroll-behavior:contain;box-shadow:0 24px 90px #241a2255} .booking-dialog::backdrop{background:#241a22a8} .booking-heading{position:sticky;top:0;z-index:1;background:var(--paper);display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 28px;border-bottom:1px solid var(--line)} .booking-heading h2:where(:not(.seo-h2-as-h3)){font-size:27px;letter-spacing:-.025em;margin:0 0 5px;line-height:1.25} .booking-heading p{font-size:14px;color:var(--muted);margin:0} .booking-close{width:44px;height:44px;flex-shrink:0;display:grid;place-items:center;padding:0;border:1px solid var(--line);background:transparent;color:var(--ink);font-size:29px;line-height:1;border-radius:50%} .booking-close:hover{background:var(--pale)} .booking-content{padding:12px 20px 20px;background:#fff} .booking-loading{padding:15px 10px;margin:0;color:var(--muted);font-size:15px} .booking-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding:16px 28px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)} .booking-footer a{text-decoration:underline;text-underline-offset:3px;color:var(--ink)} @media(max-width:700px){.booking-dialog{width:100%;height:100dvh;max-height:100dvh;max-width:100%;margin:0;inset:0;border:0;border-radius:0}.booking-heading{padding:16px 5%;padding-top:max(16px,env(safe-area-inset-top))}.booking-heading h2:where(:not(.seo-h2-as-h3)){font-size:22px}.booking-content{padding:5px 0 15px}.booking-footer{padding:18px 5%;padding-bottom:max(18px,env(safe-area-inset-bottom))}.booking-footer span{display:block}.booking-dialog iframe{min-height:520px}} @media(max-width:700px){.top{display:flex;justify-content:center;align-items:center;padding:8px 5%;gap:0;text-align:center}.top>span:first-child,.top>a{display:none}.top .hours-top{display:block;margin:0;text-align:center;font-size:11px;line-height:1.5}} @media(max-width:1000px){ .menu-overlay nav>a,.menu-overlay nav .mobile-specialties>summary{display:flex;align-items:center;justify-content:space-between;font-size:clamp(28px,6vw,48px);font-weight:400;letter-spacing:-.04em;line-height:1.3;padding:17px 0;margin:0;white-space:normal} } @media(max-width:700px){.menu-overlay nav>a,.menu-overlay nav .mobile-specialties>summary{font-size:33px}} .menu-toggle,.menu-close{border:0;border-radius:0;background:transparent} .cookie-panel{position:fixed;z-index:150;bottom:20px;left:20px;right:20px;max-width:1100px;margin:auto;background:var(--paper);color:var(--ink);padding:25px 30px;border:1px solid var(--line);box-shadow:0 8px 40px #123e5126;display:grid;grid-template-columns:1fr 210px;gap:30px}.cookie-copy h2:where(:not(.seo-h2-as-h3)){font-size:24px;margin:0 0 12px}.cookie-copy p{font-size:14px;line-height:1.7;margin-bottom:8px}.cookie-copy>a{text-decoration:underline;font-size:13px}.cookie-actions{display:flex;gap:10px;flex-wrap:wrap}.cookie-panel .cookie-actions{flex-direction:column;justify-content:center}.cookie-actions button{border:1px solid var(--ink);background:var(--paper);color:var(--ink);border-radius:2px;padding:11px 16px;font-size:14px;cursor:pointer}.cookie-actions button:hover{background:var(--pale)}.cookie-preferences{width:min(650px,calc(100% - 30px));max-height:90dvh;padding:28px;border:1px solid var(--line);background:var(--paper);color:var(--ink);overflow:auto}.cookie-preferences::backdrop{background:#123e5180}.cookie-dialog-head{display:flex;justify-content:space-between;align-items:center;gap:15px}.cookie-dialog-head h2:where(:not(.seo-h2-as-h3)){font-size:27px;margin:0}.cookie-dialog-head button{border:0;background:transparent;color:var(--ink);font-size:30px;padding:0 6px}.cookie-preferences p{font-size:14px;line-height:1.6;margin:12px 0}.cookie-category{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid var(--line);padding:16px 0}.cookie-category p{margin:5px 0 0}.cookie-category input{width:22px;height:22px;flex-shrink:0;accent-color:var(--ink)}.cookie-category>span{font-size:12px;white-space:nowrap}.footer-bottom button{font:inherit;color:inherit;border:0;background:none;padding:0;cursor:pointer;text-align:left}@media(max-width:700px){.cookie-panel{bottom:0;left:0;right:0;max-height:75dvh;overflow:auto;padding:22px 6%;grid-template-columns:1fr;gap:15px}.cookie-panel .cookie-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.cookie-panel .cookie-actions button:last-child{grid-column:1/-1}.cookie-copy h2:where(:not(.seo-h2-as-h3)){font-size:22px}.cookie-preferences{padding:22px}.cookie-dialog-head h2:where(:not(.seo-h2-as-h3)){font-size:24px}} .map-section{padding-top:0}.map-frame{width:100%;height:450px;border:1px solid var(--line);background:var(--pale)}.map-frame iframe{display:block;width:100%;height:100%;border:0}.map-placeholder{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:35px}.map-placeholder p{max-width:650px;color:var(--muted);font-size:15px}.map-placeholder p:first-child{font-size:20px;color:var(--ink)}@media(max-width:700px){.map-frame{height:380px}.map-placeholder{padding:24px}.map-placeholder .button{justify-content:center;text-align:center}}
/* Mobile call shortcut; keep the original phone button inside the menu. */
.mobile-call-shortcut{display:none;color:var(--ink);text-decoration:none;flex-shrink:0}.mobile-call-shortcut svg{display:block}.mobile-call-shortcut:focus-visible{outline:2px solid currentColor;outline-offset:3px}@media(max-width:1320px){header .mobile-call-shortcut{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:10px}header>.mobile-call-shortcut{margin-left:auto}header>.menu-toggle{margin-left:0}header>.brand{max-width:calc(100% - 110px)}}
.doctor-card .portrait,.staff-grid img,.profile-image img,.portrait-pair img{height:auto}

/* Vector arrows: independent of the platform emoji font. */
svg.cta-arrow{display:inline-block;width:1em;height:1em;min-width:1em;vertical-align:-.12em;flex-shrink:0;overflow:visible;pointer-events:none}

/* Identical logo dimensions in the closed header and open mobile menu. */
@media(max-width:1320px){
header{gap:12px}
header>.brand,.overlay-top>.brand{width:min(340px,calc(90vw - 110px));min-width:0;max-width:none;height:auto;flex:0 0 auto;display:block;overflow:visible}
header>.brand img,.overlay-top>.brand img{display:block;width:100%;max-width:100%;height:auto;flex:none;object-fit:contain;transform:none;filter:none}
}

/* Mobile specialty sidebar: separate appointment actions and keep one divider. */
@media(max-width:1000px){
.specialty-sidebar .sidebar-contact{display:flex;flex-wrap:wrap;align-items:center;gap:16px 20px;border-top:0}
.specialty-sidebar .sidebar-contact>h3,.specialty-sidebar .sidebar-contact>h2,.specialty-sidebar .sidebar-contact>.small-note{flex-basis:100%;margin:0}
.specialty-sidebar .sidebar-contact>.button,.specialty-sidebar .sidebar-contact>.text-link{margin:0}
}
@media(max-width:700px){.specialty-sidebar .sidebar-contact{flex-direction:column;align-items:flex-start}.specialty-sidebar .sidebar-contact>h3,.specialty-sidebar .sidebar-contact>h2,.specialty-sidebar .sidebar-contact>.small-note{flex-basis:auto}}
