@font-face{font-family:Cormorant;src:url('/assets/CormorantGaramond-Medium.woff') format('woff');font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:Cormorant;src:url('/assets/CormorantGaramond-SemiBold.woff') format('woff');font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:Montserrat;src:url('/assets/Montserrat-Regular.woff') format('woff');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Montserrat;src:url('/assets/Montserrat-Medium.woff') format('woff');font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:Montserrat;src:url('/assets/Montserrat-SemiBold.woff') format('woff');font-style:normal;font-weight:600;font-display:swap}
:root{--green:#3f5b52;--deep:#293f38;--sand:#c9b8a9;--paper:#f7f5f2;--sage:#d7ded7;--bronze:#8a7462;--ink:#283d35;--muted:#606b65;--line:#d9ded7;--white:#fff;--serif:Cormorant,Georgia,serif;--sans:Montserrat,Arial,sans-serif;--ease:cubic-bezier(.2,.65,.3,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);font-family:var(--sans);color:var(--ink);font-size:16px;line-height:1.75;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button:disabled{cursor:not-allowed}button,a,summary{touch-action:manipulation}:focus-visible{outline:3px solid var(--bronze);outline-offset:5px}::selection{background:var(--sage);color:var(--deep)}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.07}h2{font-size:clamp(2.7rem,4.5vw,4.2rem);letter-spacing:-.025em}p+p{margin-top:1rem}button svg,a svg{flex-shrink:0}.icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.arrow{font-size:1.35rem;font-family:Arial,sans-serif;font-weight:400;line-height:1}.container{width:min(1220px,calc(100% - 112px));margin-inline:auto}.eyebrow{font-family:var(--sans);font-size:.75rem;font-weight:600;line-height:1.65;letter-spacing:.15em;text-transform:uppercase}.section{padding:110px 0}.muted{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}.skip-link{position:fixed;z-index:200;left:20px;top:-100px;padding:12px 20px;background:var(--green);color:white}.skip-link:focus{top:12px}.btn{min-height:54px;display:inline-flex;align-items:center;justify-content:center;gap:24px;border:1px solid transparent;padding:15px 26px;border-radius:5px;font-size:.875rem;font-weight:500;line-height:1.55;transition:background .2s,transform .2s,border-color .2s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--green);color:white}.btn-primary:hover{background:var(--deep)}.btn-outline{background:transparent;border-color:var(--line);color:var(--green)}.btn-outline:hover{background:var(--sage);border-color:var(--sage)}.btn-light{background:var(--paper);color:var(--green)}.btn-light:hover{background:white}.text-link{display:inline-flex;align-items:center;gap:22px;font-weight:500;font-size:.875rem;padding:10px 0;border-bottom:1px solid var(--sand);transition:gap .2s}.text-link:hover{gap:30px}.site-header{position:sticky;top:0;z-index:40;background:rgba(247,245,242,.96);border-bottom:1px solid rgba(63,91,82,.12);backdrop-filter:blur(18px)}.header-inner{min-height:96px;display:flex;align-items:center;justify-content:space-between;gap:35px}.wordmark{display:flex;gap:13px;align-items:center;flex-shrink:0}.wordmark img{width:42px;height:49px;object-fit:contain}.wordmark-name{display:block;font-family:var(--serif);font-size:1.625rem;letter-spacing:.035em;line-height:1.1}.wordmark-sub{display:block;margin-top:5px;font-size:.75rem;letter-spacing:.13em;line-height:1.4;text-transform:uppercase}.desktop-nav{display:flex;align-items:center;gap:27px}.desktop-nav>a:not(.btn){font-size:.875rem;white-space:nowrap;padding-block:10px;border-bottom:1px solid transparent}.desktop-nav>a:not(.btn):hover{border-color:var(--green)}.desktop-nav .btn{min-height:46px;padding:12px 21px}.menu-button{display:none;border:1px solid var(--line);background:transparent;border-radius:4px;width:46px;height:46px;align-items:center;justify-content:center}.mobile-nav{padding:10px 0 23px;border-top:1px solid var(--line)}.mobile-nav a{display:block;padding:12px 0}.mobile-nav .btn{margin-top:10px}.hero{padding:64px 0 50px;position:relative}.hero-grid{display:grid;grid-template-columns:1.04fr 1fr;gap:70px;align-items:center}.hero-copy{padding:8px 0 26px}.hero .eyebrow{color:var(--green);max-width:340px}.hero h1{font-size:clamp(3.5rem,6.5vw,6.25rem);letter-spacing:-.045em;line-height:.99;margin:28px 0 26px}.hero h1 em{font-style:normal;color:var(--bronze)}.hero-intro{color:var(--muted);max-width:415px;line-height:1.9}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:34px;flex-wrap:wrap}.hero-portrait{position:relative;align-self:stretch;margin:0}.portrait-frame{height:580px;overflow:hidden;border-radius:160px 8px 8px 8px;background:var(--sage)}.portrait-frame img{width:100%;height:100%;object-fit:cover;object-position:center 39%}.portrait-caption{position:absolute;bottom:24px;left:-25px;width:calc(100% - 34px);max-width:375px;background:var(--paper);border:1px solid rgba(63,91,82,.13);padding:19px 25px;box-shadow:0 8px 30px rgba(41,63,56,.055);border-radius:4px}.portrait-caption .doctor-name{font-family:var(--serif);font-size:1.8rem;line-height:1.12}.portrait-caption p{margin-top:5px;font-size:.75rem;color:var(--muted);line-height:1.6}.hero-bottom{display:flex;gap:20px;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);margin-top:55px;padding-bottom:27px;font-size:.75rem;color:var(--muted)}.hero-bottom a{display:flex;gap:18px;align-items:center}.hero-bottom .specialties-line{letter-spacing:.1em;text-transform:uppercase;font-size:.75rem}.section-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:100px;align-items:end;margin-bottom:55px}.section-heading .eyebrow{margin-bottom:17px}.section-heading>p{max-width:400px;color:var(--muted);padding-bottom:5px}.specialty-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.specialty-card{padding:35px 30px 37px 0;display:flex;flex-direction:column}.specialty-card+.specialty-card{border-left:1px solid var(--line);padding-left:35px}.specialty-number{display:block;font-size:.75rem;letter-spacing:.1em;color:var(--bronze);margin-bottom:32px}.specialty-card h3{font-size:2.35rem;margin-bottom:18px}.specialty-card>p{font-size:.9375rem;color:var(--muted);margin-bottom:21px}.specialty-card ul{margin:0 0 29px;padding-left:18px;font-size:.875rem;line-height:1.85}.specialty-card li{padding-left:3px;margin:5px 0}.specialty-card li::marker{color:var(--bronze)}.specialty-card .text-link{align-self:flex-start;margin-top:auto}.about-section{background:#edf0eb;padding:96px 0}.about-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:94px;align-items:start}.about-brand-panel{min-height:610px;background:var(--green);color:var(--paper);border-radius:6px;padding:60px 47px;display:flex;flex-direction:column;justify-content:space-between;position:sticky;top:135px}.about-brand-panel img{height:114px;width:108px;object-fit:contain;align-self:flex-start;object-position:left}.about-brand-panel h2{font-size:3.65rem;line-height:1.06;margin:42px 0 40px}.about-brand-panel p{border-top:1px solid rgba(247,245,242,.3);padding-top:22px;font-size:.875rem;line-height:1.9;color:#e3e9e2}.about-copy .eyebrow{margin-bottom:16px}.about-copy h2{font-size:3.5rem;margin-bottom:22px}.about-copy>p{color:var(--muted)}.registrations{font-size:.75rem;line-height:1.8;margin:22px 0 29px;padding:16px 0;border-block:1px solid #cdd5cb}.timeline{list-style:none;margin:0;padding:0}.timeline li{padding:18px 0 18px 23px;border-left:1px solid #b6c3b7;position:relative;margin-left:4px}.timeline li:before{content:'';width:7px;height:7px;position:absolute;left:-4px;top:25px;border-radius:50%;background:var(--bronze)}.timeline time{font-size:.75rem;color:var(--muted)}.timeline strong{display:block;font-size:.875rem;font-weight:600;margin:3px 0}.timeline p{font-size:.875rem;line-height:1.7;color:var(--muted)}.credentials{margin-top:25px;border-block:1px solid #cdd5cb}.credentials summary{padding:16px 0;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:.875rem;font-weight:500;cursor:pointer;list-style:none}.credentials summary::-webkit-details-marker{display:none}.credentials summary:after{content:'+';font-size:1.6rem;font-weight:400;line-height:1}.credentials[open] summary:after{content:'−'}.credentials-list{margin:0;padding:0 0 15px;list-style:none}.credentials-list li{padding:14px 0;border-top:1px solid #d7ded4;font-size:.875rem;color:var(--muted)}.credentials-list strong{display:block;color:var(--ink);font-weight:500}.care-section{padding:74px 0}.care-heading{text-align:center;max-width:690px;margin:0 auto 40px}.care-heading .eyebrow{margin-bottom:17px}.care-heading h2{font-size:3.1rem}.care-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.care-item{padding-top:24px;border-top:1px solid var(--sand)}.care-item .eyebrow{color:var(--bronze);margin-bottom:14px}.care-item h3{font-size:1.9rem;margin-bottom:12px}.care-item p{color:var(--muted);font-size:.875rem}.faq-section{background:white}.faq-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:100px}.faq-intro{align-self:start;position:sticky;top:140px}.faq-intro .eyebrow{margin-bottom:18px}.faq-intro h2{margin-bottom:22px}.faq-intro>p{color:var(--muted);max-width:300px}.faq-intro .text-link{margin-top:27px}.faq-tabs{display:flex;gap:8px;padding-bottom:22px;flex-wrap:wrap}.faq-tabs button{background:transparent;border:1px solid var(--line);border-radius:30px;padding:9px 15px;font-size:.8125rem;color:var(--green);min-height:42px}.faq-tabs button[aria-pressed=true]{background:var(--green);border-color:var(--green);color:white}.faq-item{border-top:1px solid var(--line)}.faq-item:last-child{border-bottom:1px solid var(--line)}.faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:24px 0;cursor:pointer;list-style:none;font-size:.9375rem;line-height:1.65;font-weight:500}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:'+';font-weight:400;font-size:1.5rem;color:var(--bronze);line-height:1;flex-shrink:0}.faq-item[open] summary:after{content:'−'}.faq-answer{padding:0 24px 26px 0;font-size:.875rem;color:var(--muted);line-height:1.9}.faq-answer strong{color:var(--ink);font-weight:600}.faq-source{margin-top:16px!important;font-size:.75rem;line-height:1.65}.faq-source a{color:var(--green);text-decoration:underline;text-underline-offset:3px}.faq-note{font-size:.75rem;color:var(--muted);margin-top:25px;line-height:1.85}.contact-section{padding:90px 0}.contact-panel{background:var(--green);border-radius:7px;color:var(--paper);padding:58px 66px;display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:center}.contact-panel .eyebrow{color:var(--sage);margin-bottom:20px}.contact-panel h2{font-size:3.7rem;margin-bottom:21px}.contact-panel p{font-size:.9375rem;color:#e2e8e0}.contact-actions{display:flex;flex-direction:column;align-items:flex-start;gap:20px}.contact-actions .btn{width:100%;max-width:325px}.contact-actions .contact-phone{font-family:var(--serif);font-size:2rem;margin-bottom:3px}.contact-actions small{font-size:.75rem;color:#e2e8e0;max-width:330px}.site-footer{padding:43px 0 24px;border-top:1px solid var(--line)}.footer-main{display:flex;justify-content:space-between;align-items:start;gap:50px;padding-bottom:38px}.footer-main .wordmark img{width:34px;height:42px}.footer-main .wordmark-name{font-size:1.5rem}.footer-registrations{font-size:.75rem;color:var(--muted);line-height:1.85}.footer-bottom{display:flex;justify-content:space-between;gap:28px;border-top:1px solid var(--line);padding-top:21px;font-size:.75rem;color:var(--muted)}.privacy-link{background:none;border:0;color:var(--muted);font-size:inherit;padding:0;text-decoration:underline;text-underline-offset:4px}.floating-contact{position:fixed;bottom:27px;right:25px;z-index:35;width:53px;height:53px;border-radius:50%;background:var(--green);color:white;display:flex;align-items:center;justify-content:center;box-shadow:0 3px 20px rgba(41,63,56,.17);border:1px solid #668175;transition:transform .2s}.floating-contact:hover{transform:translateY(-3px)}.floating-contact svg{width:26px;height:26px}.dialog{border:1px solid var(--line);border-radius:12px;padding:36px;max-width:560px;width:calc(100% - 40px);color:var(--ink);background:var(--paper)}.dialog::backdrop{background:rgba(22,41,33,.45);backdrop-filter:blur(3px)}.dialog h2{font-size:2.4rem;margin:12px 0 20px}.dialog p{font-size:.875rem;color:var(--muted)}.dialog-close{border:0;background:transparent;position:absolute;top:14px;right:14px;width:36px;height:36px;font-size:1.5rem;color:var(--green)}.dialog .btn{margin-top:23px}.noscript{padding:18px 30px;background:var(--sage);font-size:.875rem}.reveal{animation:soft-entry .7s var(--ease) both}@keyframes soft-entry{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
/* Appointment surface. Availability rules live in agenda-config.js. */
.booking-main{padding:44px 0 80px}.back-link{font-size:.8125rem;display:inline-flex;gap:12px;align-items:center;color:var(--muted);padding:8px 0}.booking-heading{margin:24px 0 30px;display:flex;justify-content:space-between;gap:30px;align-items:end}.booking-heading .eyebrow{margin-bottom:12px}.booking-heading h1{font-size:clamp(2.75rem,4.5vw,4rem);letter-spacing:-.025em}.booking-heading>p{font-size:.875rem;color:var(--muted);max-width:280px}.demo-notice{background:#ece8df;border:1px solid #dad1c3;padding:15px 21px;border-radius:5px;display:flex;gap:13px;align-items:start;margin-bottom:30px;font-size:.8125rem;line-height:1.75;color:#625140}.demo-notice svg{margin-top:3px;flex-shrink:0}.demo-notice strong{font-weight:600}.booking-layout{display:grid;grid-template-columns:1fr 325px;gap:30px;align-items:start}.booking-card{background:white;border:1px solid var(--line);border-radius:8px;padding:30px 35px}.step-label{display:flex;align-items:center;gap:12px;font-size:.875rem;font-weight:600;margin-bottom:19px}.step-number{width:27px;height:27px;border:1px solid var(--sand);border-radius:50%;display:inline-flex;justify-content:center;align-items:center;font-size:.75rem;font-weight:500;color:var(--bronze);flex-shrink:0}.specialty-options{display:flex;gap:9px;flex-wrap:wrap;border:0;padding:0;margin:0 0 28px}.specialty-option{position:relative;flex:1;min-width:120px}.specialty-option input{position:absolute;opacity:0;width:1px;height:1px}.specialty-option span{border:1px solid var(--line);border-radius:4px;padding:11px 10px;text-align:center;display:block;font-size:.8125rem;cursor:pointer;transition:all .18s}.specialty-option input:checked+span{background:var(--green);color:white;border-color:var(--green)}.specialty-option input:focus-visible+span{outline:3px solid var(--bronze);outline-offset:3px}.calendar-time-grid{display:grid;grid-template-columns:1fr 175px;gap:30px;border-top:1px solid var(--line);padding-top:26px}.calendar-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px}.calendar-heading h2{font-family:var(--sans);font-size:.9375rem;line-height:1.5;font-weight:500;text-transform:capitalize}.month-nav{display:flex;gap:6px}.month-nav button{height:36px;width:36px;border:1px solid var(--line);background:white;border-radius:4px;color:var(--green);font-size:1.25rem}.month-nav button:disabled{opacity:.35}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.weekday{font-size:.75rem;color:var(--muted);text-align:center;padding:6px 0 10px}.calendar-day{position:relative;background:transparent;border:1px solid transparent;color:var(--green);padding:0;min-height:40px;aspect-ratio:1;font-size:.8125rem;display:flex;align-items:center;justify-content:center;border-radius:4px}.calendar-day.available{background:#edf2ec;border-color:#dce5da}.calendar-day.available:hover{background:var(--sage);border-color:var(--green)}.calendar-day:disabled{color:#a4aaa5;background:transparent}.calendar-day[aria-pressed=true]{background:var(--green)!important;color:white;border-color:var(--green)}.calendar-day.is-today:after{content:'';width:4px;height:4px;background:currentColor;position:absolute;bottom:4px;left:calc(50% - 2px);border-radius:50%}.calendar-key{display:flex;gap:16px;flex-wrap:wrap;margin-top:18px;font-size:.75rem;color:var(--muted)}.calendar-key span{display:flex;gap:6px;align-items:center}.key-sample{width:10px;height:10px;border:1px solid #dce5da;border-radius:2px;background:#edf2ec}.key-disabled{background:transparent;border-color:#cdd2cd}.timezone{font-size:.75rem;color:var(--muted);margin-top:15px;display:flex;gap:8px;align-items:center}.time-section{border-left:1px solid var(--line);padding-left:25px}.time-section h3{font-family:var(--sans);font-size:.875rem;font-weight:500;line-height:1.6;min-height:24px}.selected-date-short{color:var(--muted);font-size:.75rem;line-height:1.7;margin:6px 0 14px}.times{display:grid;grid-template-columns:1fr;gap:8px}.time-button{min-height:39px;border:1px solid var(--line);border-radius:4px;font-size:.8125rem;color:var(--green);background:white}.time-button:hover{background:#edf2ec}.time-button[aria-pressed=true]{background:var(--green);color:white;border-color:var(--green)}.time-empty{font-size:.8125rem;line-height:1.7;color:var(--muted);padding-top:12px}.month-empty{font-size:.8125rem;background:var(--paper);padding:15px;margin-top:14px;border-radius:4px;color:var(--muted)}.booking-summary{border-radius:8px;background:#e9eee7;border:1px solid #d9e1d5;padding:29px 26px;position:sticky;top:124px}.summary-doctor{display:flex;align-items:center;gap:13px;padding-bottom:23px;border-bottom:1px solid #cbd7c8}.summary-doctor img{width:51px;height:61px;object-fit:contain}.summary-doctor h2{font-size:1.8rem;line-height:1.1}.summary-doctor p{font-size:.75rem;margin-top:4px;color:var(--muted)}.summary-label{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;margin:24px 0 20px;font-weight:500}.summary-list{margin:0}.summary-list>div{margin-bottom:17px}.summary-list dt{font-size:.75rem;color:var(--muted)}.summary-list dd{margin:3px 0 0;font-size:.875rem;line-height:1.65;font-weight:500}.summary-list .unselected{font-weight:400;color:var(--muted)}.booking-summary .btn{width:100%;margin-top:14px;gap:14px}.booking-summary .btn:disabled{background:#c2cec0;color:#40503d;transform:none}.summary-help{font-size:.75rem;color:var(--muted);margin-top:14px;line-height:1.75}.booking-real-contact{margin-top:26px;padding-top:21px;border-top:1px solid #cbd7c8;font-size:.8125rem}.booking-real-contact a{text-decoration:underline;text-underline-offset:4px}.booking-tip{font-size:.8125rem;line-height:1.85;color:var(--muted);margin:24px 5px;max-width:650px}.booking-success{max-width:730px;margin:30px auto 55px;background:white;border:1px solid var(--line);border-radius:10px;padding:50px;text-align:center}.success-symbol{display:flex;width:64px;height:64px;border:1px solid var(--sand);border-radius:50%;color:var(--green);align-items:center;justify-content:center;margin:0 auto 22px}.success-symbol svg{width:27px;height:27px}.booking-success h2{font-size:3rem;margin-bottom:16px}.booking-success>p{font-size:.9375rem;color:var(--muted)}.success-summary{background:var(--paper);border-radius:5px;padding:20px;margin:28px 0;font-size:.9375rem}.success-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.booking-success .eyebrow{margin-bottom:15px;color:var(--bronze)}
@media(min-width:1600px){.hero{padding-top:80px}.portrait-frame{height:650px}.hero-grid{gap:100px}}
@media(max-width:1150px){.container{width:calc(100% - 72px)}.desktop-nav{gap:17px}.desktop-nav>a:not(.btn){font-size:.8125rem}.wordmark-name{font-size:1.45rem}.wordmark-sub{font-size:.75rem}.hero-grid{gap:44px}.portrait-frame{height:560px}.hero-actions{gap:20px}.about-grid{gap:55px}.about-brand-panel{padding:45px 30px;min-height:575px}.about-brand-panel h2{font-size:3.2rem}.faq-layout{gap:60px}.booking-layout{grid-template-columns:1fr 290px;gap:20px}.booking-card{padding:26px}.calendar-time-grid{gap:20px;grid-template-columns:1fr 145px}.time-section{padding-left:18px}.booking-summary{padding:24px 21px}}
@media(max-width:950px){.desktop-nav{display:none}.menu-button{display:flex}.hero-grid{gap:40px;grid-template-columns:1fr .9fr}.portrait-frame{height:520px;border-top-left-radius:120px}.hero h1{font-size:4.5rem}.hero-actions{flex-direction:column;align-items:flex-start;gap:12px}.hero-intro{font-size:.9375rem}.portrait-caption{left:-15px;padding:17px;width:calc(100% - 8px)}.portrait-caption .doctor-name{font-size:1.6rem}.section{padding:80px 0}.section-heading{gap:50px}.specialty-card{padding-right:20px}.specialty-card+.specialty-card{padding-left:22px}.specialty-card h3{font-size:2rem}.about-grid{gap:40px;grid-template-columns:.8fr 1.2fr}.about-brand-panel{padding:35px 28px;min-height:520px}.about-brand-panel h2{font-size:2.8rem}.about-copy h2{font-size:3rem}.contact-panel{padding:44px;gap:40px}.contact-panel h2{font-size:3.2rem}.booking-layout{grid-template-columns:1fr}.booking-summary{position:static;display:grid;grid-template-columns:1fr 1fr;column-gap:40px}.summary-doctor{grid-column:1/-1}.summary-label{grid-column:1/-1}.summary-list{grid-row:3/7}.booking-real-contact{grid-column:2}.calendar-time-grid{grid-template-columns:1fr 210px;gap:40px}.time-section{padding-left:30px}.times{grid-template-columns:1fr 1fr}.calendar-day{min-height:45px;max-height:55px;aspect-ratio:auto}.booking-card{padding:32px}.hero-bottom .specialties-line{max-width:500px}.faq-layout{gap:40px;grid-template-columns:.75fr 1.25fr}.care-grid{gap:30px}.footer-main{gap:30px}}
@media(max-width:700px){html{scroll-padding-top:90px}.container{width:calc(100% - 40px)}.header-inner{min-height:80px;gap:15px}.wordmark img{width:33px;height:40px}.wordmark{gap:9px}.wordmark-name{font-size:1.45rem}.wordmark-sub{font-size:.75rem;letter-spacing:.11em}.hero{padding:37px 0 15px}.hero-grid{grid-template-columns:1fr;gap:27px}.hero-copy{padding-bottom:0}.hero .eyebrow{font-size:.75rem;max-width:none;letter-spacing:.13em}.hero h1{font-size:clamp(3.75rem,12vw,5.4rem);line-height:1;margin:23px 0 24px}.hero-intro{font-size:.9375rem;max-width:480px}.hero-actions{flex-direction:row;align-items:center;gap:21px;margin-top:27px}.hero-actions .btn{padding:14px 19px;gap:17px}.hero-actions .text-link{font-size:.8125rem;gap:12px}.portrait-frame{height:440px;border-top-left-radius:115px}.portrait-frame img{object-position:center 31%}.hero-portrait{margin-top:5px;padding-bottom:18px}.portrait-caption{bottom:0;left:14px;width:calc(100% - 28px);max-width:none;padding:17px 21px}.portrait-caption .doctor-name{font-size:1.7rem}.portrait-caption p{font-size:.75rem;max-width:270px}.hero-bottom{margin-top:30px;align-items:start;padding-bottom:22px;gap:20px}.hero-bottom .specialties-line{font-size:.75rem;max-width:235px;line-height:1.9}.hero-bottom a{font-size:.75rem;gap:12px;line-height:1.7}.section{padding:65px 0}h2{font-size:2.9rem}.section-heading{grid-template-columns:1fr;gap:22px;margin-bottom:31px}.section-heading>p{font-size:.9375rem;max-width:500px}.section-heading .eyebrow{margin-bottom:14px}.specialty-grid{grid-template-columns:1fr}.specialty-card,.specialty-card+.specialty-card{padding:29px 0;border-left:0}.specialty-card+.specialty-card{border-top:1px solid var(--line)}.specialty-number{margin-bottom:17px}.specialty-card h3{font-size:2.4rem;margin-bottom:14px}.specialty-card>p{margin-bottom:12px;max-width:470px}.specialty-card ul{margin-bottom:16px}.about-section{padding:60px 0}.about-grid{grid-template-columns:1fr;gap:35px}.about-brand-panel{position:static;min-height:0;padding:32px;display:grid;grid-template-columns:1fr auto;gap:15px 25px}.about-brand-panel img{width:55px;height:70px;grid-column:2;grid-row:1}.about-brand-panel h2{font-size:2.75rem;grid-column:1;grid-row:1;margin:0}.about-brand-panel p{grid-column:1/-1;font-size:.8125rem;margin-top:10px;padding-top:18px}.about-copy h2{font-size:3rem}.about-copy>p{font-size:.9375rem}.registrations{font-size:.75rem}.care-section{padding:60px 0}.care-heading{text-align:left;margin-bottom:29px}.care-heading h2{font-size:2.8rem}.care-grid{grid-template-columns:1fr;gap:26px}.care-item{padding-top:22px}.care-item h3{font-size:2rem}.faq-layout{grid-template-columns:1fr;gap:35px}.faq-intro{position:static}.faq-intro h2{font-size:3rem}.faq-intro>p{max-width:480px;font-size:.9375rem}.faq-intro .text-link{margin-top:15px}.faq-tabs{gap:7px;padding-bottom:19px}.faq-tabs button{padding:9px 13px;font-size:.75rem}.faq-item summary{font-size:.875rem;padding:21px 0;gap:17px}.faq-answer{padding-right:7px}.contact-section{padding:55px 0}.contact-panel{grid-template-columns:1fr;padding:33px 27px;gap:32px}.contact-panel h2{font-size:3.1rem}.contact-panel p{font-size:.875rem}.contact-actions{gap:15px}.contact-actions .btn{max-width:none}.contact-actions .contact-phone{font-size:1.9rem}.footer-main{flex-direction:column;gap:22px;padding-bottom:25px}.footer-bottom{flex-direction:column;gap:11px;padding-right:50px}.floating-contact{width:49px;height:49px;bottom:18px;right:15px}.booking-main{padding:23px 0 35px}.booking-heading{display:block;margin:19px 0 23px}.booking-heading h1{font-size:3rem}.booking-heading>p{margin-top:17px;max-width:none;font-size:.8125rem}.demo-notice{padding:14px 16px;font-size:.75rem;margin-bottom:20px;gap:10px}.booking-card{padding:23px 17px}.step-label{font-size:.8125rem;margin-bottom:17px}.specialty-options{gap:7px;margin-bottom:22px}.specialty-option{min-width:90px}.specialty-option span{font-size:.75rem;padding:11px 7px}.calendar-time-grid{grid-template-columns:1fr;gap:25px;padding-top:23px}.calendar-heading{margin-bottom:10px}.calendar-day{min-height:42px;max-height:none;aspect-ratio:1.17}.time-section{border-left:0;border-top:1px solid var(--line);padding:23px 0 0}.selected-date-short{margin-top:7px}.times{grid-template-columns:repeat(3,1fr);gap:8px}.time-button{min-height:43px}.calendar-grid{gap:4px}.weekday{font-size:.75rem}.calendar-key{font-size:.75rem}.booking-summary{display:block;padding:25px}.summary-list{display:grid;grid-template-columns:1fr 1fr;gap:0 17px}.summary-list>div:first-child{grid-column:1/-1}.summary-list dd{font-size:.875rem}.summary-label{margin:21px 0 17px}.booking-summary .btn{margin-top:8px}.booking-tip{font-size:.75rem;margin-top:19px}.booking-success{padding:33px 23px;margin-top:20px}.booking-success h2{font-size:2.7rem}.booking-success>p{font-size:.875rem}.success-actions{flex-direction:column}.success-actions .btn{width:100%}.dialog{padding:32px 25px}.dialog h2{font-size:2.3rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Reading sizes and narrow-screen resilience. */
.hero-intro,.section-heading>p,.specialty-card>p,.about-copy>p,.care-item p,.faq-intro>p,.faq-answer,.contact-panel p,.dialog p,.booking-success>p{font-size:1rem}
.specialty-card ul,.timeline p,.credentials-list li{font-size:.9375rem}
.faq-item summary{font-size:1rem}
.faq-tabs button,.specialty-option span,.time-button,.calendar-day,.step-label,.back-link,.booking-real-contact,.time-empty,.month-empty,.summary-help,.selected-date-short,.booking-tip{font-size:.875rem}
.header-inner .wordmark-sub{font-size:.75rem;letter-spacing:.035em}
.summary-label{font-family:var(--sans);line-height:1.6}
.specialty-options legend{width:100%;float:left}.specialty-options legend+label{clear:left}
.booking-card,.calendar-section,.hero-copy,.about-copy,.faq-intro,.summary-doctor>div{min-width:0}
@media(max-width:1150px){.header-inner .wordmark-sub{display:none}}
@media(max-width:700px){.hero .eyebrow,.hero-bottom .specialties-line,.hero-bottom a{font-size:.75rem}.header-inner .wordmark-name{font-size:1.3rem}.header-inner .wordmark{flex-shrink:1}.hero h1{font-size:clamp(3.5rem,12vw,5.4rem)}.hero-actions{gap:12px 20px}.portrait-frame{height:480px}.specialty-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.specialty-options legend{grid-column:1/-1;float:none}.specialty-option{min-width:0}.specialty-option span{font-size:.8125rem}.calendar-day{font-size:.875rem}.faq-source{font-size:.75rem}}

.specialty-number,.care-item .eyebrow,.booking-success .eyebrow,.step-number{color:#76614f}
@media(max-width:380px){.header-inner{gap:8px}.header-inner .wordmark img{width:28px;height:35px}.header-inner .wordmark-name{font-size:1.1rem}}
/* Ginecologia e mastologia orientam a apresentação; obstetrícia permanece acessível. */
.specialty-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.obstetrics-secondary{margin-top:28px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0}
.obstetrics-secondary summary{display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;font-family:var(--serif);font-size:1.65rem;color:var(--green)}
.obstetrics-note{font:400 .875rem/1.6 var(--sans);color:var(--muted)}
.obstetrics-content{max-width:760px;padding-top:18px;font-size:1rem}
.obstetrics-content ul{margin:14px 0 20px;padding-left:20px}
@media(max-width:700px){.specialty-grid{grid-template-columns:1fr}.obstetrics-secondary summary{align-items:flex-start;flex-direction:column;gap:4px}.obstetrics-note{font-size:.875rem}}
