/* Extend the established identity; keep the original layout and logo. */
.scheduling-note{font-size:.8125rem;line-height:1.6;color:#5c655f;margin:16px 0 0}.hero .portrait-frame img{object-fit:cover;object-position:center 32%;filter:none}.hero-portrait{margin-top:0}.portrait-caption p{font-size:.75rem;line-height:1.7}.about-photo{margin:0;position:relative;align-self:start;overflow:hidden;border-radius:6px;background:#3F5B52}.about-photo img{display:block;width:100%;height:auto;aspect-ratio:2/3;object-fit:cover}.about-photo figcaption{padding:28px 32px;background:#3F5B52;color:#F7F5F2;font:500 2.4rem/1.1 var(--serif,'Cormorant Garamond'),Georgia,serif}.clinic-name{font-size:.9375rem;margin:6px 0;color:#F7F5F2}.contact-actions small{font-size:.75rem;line-height:1.65}.btn,.btn-primary,.text-link,.menu-button{min-height:44px}.wordmark-sub{line-height:1.7}.floating-contact{width:54px;height:54px;bottom:max(20px,env(safe-area-inset-bottom));right:max(20px,env(safe-area-inset-right))}.hero.lp-hero{background:#F7F5F2}.lp-hero .portrait-card{border-radius:100px 6px 6px 6px;box-shadow:none}.lp-hero .portrait-card .quote{border-radius:4px}.lp-hero .portrait-card img{object-position:center 30%}.topbar{background:#F7F5F2;backdrop-filter:none}.scenario,.card,.panel{box-shadow:none}.brand-text span{font-size:.75rem;letter-spacing:.07em}.navlinks a{font-size:.875rem}.btn.small{font-size:.875rem}.credentials-line{font-size:.8125rem!important}.fine{font-size:.8125rem!important}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #8A7462;outline-offset:5px}
@media(max-width:700px){.hero{padding-top:32px}.hero-grid{gap:30px}.hero h1{font-size:clamp(3.25rem,12vw,4.6rem)}.hero .portrait-frame{height:400px;border-radius:80px 5px 5px 5px}.hero .portrait-frame img{object-position:center 25%}.portrait-caption{position:relative;left:auto;bottom:auto;width:100%;margin:0;padding:20px 0;background:transparent;box-shadow:none;border:0}.hero-bottom{margin-top:12px}.about-photo{max-width:430px;margin:auto}.about-photo img{aspect-ratio:4/5;object-position:center 30%}.about-photo figcaption{font-size:2rem;padding:24px}.wordmark-sub{font-size:.625rem!important;letter-spacing:.04em}.header-inner .wordmark-name{font-size:1.25rem}.header-inner{gap:12px}.floating-contact{width:50px;height:50px;bottom:16px;right:16px}.contact-actions{align-items:flex-start}.contact-phone{font-size:1.4rem}.footer-registrations{font-size:.75rem}.section{padding-top:64px;padding-bottom:64px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal{opacity:1!important;transform:none!important}}

/* Keep above-the-fold content visible immediately, including with slow JavaScript. */
.hero .reveal{opacity:1;transform:none;transition:none;animation:none}

/* Final public-site polish. Scheduling and administration styles stay isolated. */
.institutional-page,.public-page{--section-space:clamp(64px,7vw,104px);color-scheme:light}
.institutional-page .container{width:min(1220px,calc(100% - clamp(40px,8vw,112px)))}
.institutional-page .section{padding-block:var(--section-space)}
.institutional-page .hero{padding:clamp(32px,4.5vw,64px) 0 32px}
.institutional-page .hero-grid{gap:clamp(32px,5vw,70px)}
.institutional-page .hero h1{font-size:clamp(3rem,6.1vw,5.7rem);line-height:1.03;margin:22px 0;text-wrap:balance}
.institutional-page .hero-intro{line-height:1.75;max-width:40ch}
.institutional-page .hero-actions{margin-top:26px;gap:12px 24px}
.institutional-page .hero-actions .btn{min-height:54px}
.institutional-page .hero .eyebrow{max-width:100%;letter-spacing:.105em}
.institutional-page .portrait-frame{height:clamp(520px,45vw,620px)}
.institutional-page .portrait-caption{max-width:375px}
.institutional-page .hero-bottom{margin-top:32px}
.institutional-page .hero-bottom a{min-height:44px}
.institutional-page .section-heading{gap:clamp(24px,5vw,64px)}
.institutional-page .specialty-card{min-width:0}
.institutional-page .specialty-card>p{max-width:46ch}
.institutional-page .specialty-card ul{line-height:1.85}
.institutional-page .obstetrics-secondary{padding:0}
.institutional-page .obstetrics-secondary summary{min-height:68px;padding-block:18px;list-style:none}
.institutional-page .obstetrics-secondary summary::-webkit-details-marker{display:none}
.institutional-page .obstetrics-secondary summary:after{content:'+';font:400 1.5rem/1 Montserrat,sans-serif;flex-shrink:0}
.institutional-page .obstetrics-secondary[open] summary:after{content:'−'}
.institutional-page .obstetrics-content{padding:0 0 24px;max-width:65ch}
.institutional-page .about-grid{gap:clamp(36px,6vw,84px)}
.institutional-page .about-photo figcaption{font-size:clamp(1.8rem,2.9vw,2.4rem);padding:24px clamp(20px,2.4vw,32px)}
.institutional-page .about-copy h2{text-wrap:balance}
.institutional-page .faq-tabs button{min-height:44px;font-size:.875rem}
.institutional-page .faq-answer{max-width:66ch}
.institutional-page .faq-source a{display:inline-block;padding-block:6px;text-underline-offset:4px}
.institutional-page .menu-button{flex-shrink:0}
.institutional-page .mobile-nav{max-height:calc(100svh - 80px);overflow-y:auto}
.institutional-page .site-footer{padding-bottom:max(32px,env(safe-area-inset-bottom))}
.institutional-page .footer-bottom{align-items:center;padding-right:64px}
.institutional-page .footer-bottom button{min-height:44px;padding:8px 4px}
.institutional-page .dialog{max-height:calc(100svh - 40px);overflow:auto}
.institutional-page .dialog-close{width:44px;height:44px}
.institutional-page .dialog h2{padding-right:24px}
.institutional-page .btn:active,.public-page .btn:active{transform:translateY(1px)}
.institutional-page .text-link:hover{gap:24px}

/* Same brand, typography and spacing on the existing auxiliary public pages. */
.public-page{min-height:100vh;min-height:100svh;display:flex;flex-direction:column}
.public-page>main{flex:1}
.public-page .wrap{width:min(1160px,calc(100% - 80px))}
.public-page .narrow{max-width:72ch}
.public-page main>section{padding-block:var(--section-space)}
.public-page .nav{min-height:88px}
.public-page .brand-symbol{background:transparent;border-radius:0;width:42px;height:49px}
.public-page .brand-symbol img{width:42px;height:49px}
.public-page .brand-text strong{font:500 1.5rem/1.1 'Cormorant Garamond',Georgia,serif;letter-spacing:.035em;color:var(--green)}
.public-page .brand-text span{font-size:.75rem;letter-spacing:.07em;color:var(--green);margin-top:4px}
.public-page .brand{min-width:0}
.public-page .brand-text{min-width:0}
/* Small text needs stronger contrast than decorative bronze on porcelain. */
.public-page .eyebrow,.public-page .num,.public-page .muted{color:var(--green)}
.public-page .about .eyebrow{color:var(--porcelain)}
.public-page .btn{border-radius:5px;min-height:54px;gap:18px;font-size:.875rem;line-height:1.5;padding:15px 24px;transition:background .18s,transform .18s}
.public-page .navlinks .btn{min-height:46px;padding:12px 18px;white-space:nowrap}
.public-page .hero.lp-hero{padding:clamp(32px,4.5vw,64px) 0 48px}
.public-page .hero-grid{grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);gap:clamp(32px,4.5vw,56px)}
.public-page .lp-hero h1{font-size:clamp(3rem,5.5vw,4.8rem);line-height:1.04;text-wrap:balance;margin:20px 0 22px}
.public-page .lp-hero h1 em{font-style:normal}
.public-page .lp-hero p{font-size:1rem;line-height:1.75;max-width:45ch}
.public-page .lp-hero p.eyebrow{font-size:.75rem;letter-spacing:.12em;color:var(--green);max-width:none}
.public-page .hero-actions{margin-top:24px;gap:12px 24px}
.public-page .text-link{min-height:44px;display:inline-flex;align-items:center;line-height:1.5}
.public-page .portrait-card{min-height:0;height:580px}
.public-page .portrait-card .quote{padding:20px;left:20px;right:20px;bottom:20px;background:var(--porcelain);backdrop-filter:none}
.public-page .portrait-card .quote .eyebrow{font-size:.75rem}
.public-page .trust-strip{padding-block:28px}
.public-page .trust-grid span{font-size:.875rem;line-height:1.65}
.public-page .section-title{gap:36px}
.public-page .section-title>p{max-width:48ch}
.public-page .section-title h2,.public-page .lp-heading{line-height:1.08;text-wrap:balance}
.public-page .scenario p,.public-page .values .timeline p,.public-page .faq details p{font-size:1rem;line-height:1.75}
.public-page .scenario h3{margin:16px 0 12px}
.public-page .about-intro{font-size:1rem;line-height:1.8}
.public-page .card{border-radius:6px;padding:28px}
.public-page .card h3{font-weight:500}
.public-page .values .timeline .item{border-radius:6px;padding:22px}
.public-page .faq{gap:0;border-top:1px solid var(--line)}
.public-page .faq details{border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;padding:0}
.public-page .faq summary{padding:20px 0;min-height:64px;line-height:1.65;font-weight:500}
.public-page .faq details p{padding-bottom:22px;margin-top:0}
.public-page .lp-faq{background:var(--porcelain)}
.public-page .booking-shell{min-height:0;padding-block:clamp(32px,5vw,64px)}
.privacy-page .booking-shell h2{font:500 clamp(1.85rem,3vw,2.3rem)/1.2 'Cormorant Garamond',Georgia,serif;color:var(--green);margin:34px 0 12px}
.privacy-page .booking-shell p{line-height:1.8;margin:0 0 16px}
.privacy-page .booking-shell a:not(.btn){text-underline-offset:4px}
.privacy-page .booking-shell .btn{margin-top:16px}
.error-page .booking-shell{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;max-width:1160px}
.error-page .page-heading{max-width:19ch;text-wrap:balance}
.error-page .booking-shell .btn{margin-top:16px}
.public-page>footer{background:var(--green);color:var(--porcelain);padding:36px 0 max(32px,env(safe-area-inset-bottom))}
.public-page footer .credentials-line{margin-top:16px!important}
.public-page footer a{display:inline-flex;align-items:center;min-height:44px;text-underline-offset:4px}
.public-page footer a:focus-visible,.institutional-page .contact-panel a:focus-visible{outline-color:var(--sage)}
.public-page .floating-contact{position:fixed;z-index:35;display:flex;align-items:center;justify-content:center;background:var(--green);color:var(--porcelain);border:1px solid var(--sage);border-radius:50%;box-shadow:0 3px 16px rgba(63,91,82,.16);transition:transform .18s}
.public-page .floating-contact svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.public-page .floating-contact:hover{transform:translateY(-2px)}
.floating-contact{bottom:max(20px,calc(env(safe-area-inset-bottom) + 12px));right:max(20px,env(safe-area-inset-right))}
@media(max-width:900px){
  .public-page .hero-grid{grid-template-columns:minmax(0,1fr)}
  .public-page .portrait-card{width:100%;max-width:460px;height:auto;aspect-ratio:4/5;justify-self:center}
  .public-page .portrait-card img{object-position:50% 30%}
  .public-page .lp-hero h1{font-size:clamp(2.8rem,7vw,4rem)}
  .public-page .lp-hero p{max-width:55ch}
}
@media(max-width:700px){
  .institutional-page .hero{padding-top:24px}
  .institutional-page .hero-grid{gap:26px}
  .institutional-page .hero h1{font-size:clamp(2.85rem,10.8vw,3.75rem);margin:18px 0 20px}
  .institutional-page .hero-actions{margin-top:22px;gap:10px 20px}
  .institutional-page .hero-intro{line-height:1.75}
  .institutional-page .scheduling-note{font-size:.75rem;margin-top:12px}
  .institutional-page .hero-portrait{width:100%;max-width:460px;justify-self:center;padding-bottom:0}
  .institutional-page .portrait-frame{height:auto;aspect-ratio:4/5}
  .institutional-page .hero .portrait-frame img{object-position:50% 30%}
  .institutional-page .portrait-caption{max-width:none;padding:16px 0 8px}
  .institutional-page .hero-bottom{margin-top:20px;flex-wrap:wrap;gap:8px 20px}
  .institutional-page .hero-bottom .specialties-line{max-width:30ch}
  .institutional-page h2,.institutional-page .about-copy h2,.institutional-page .faq-intro h2,.institutional-page .care-heading h2{font-size:clamp(2.5rem,8vw,3rem);line-height:1.1}
  .institutional-page .contact-panel{padding:28px 24px}
  .institutional-page .contact-panel h2{font-size:clamp(2.4rem,8vw,3rem)}
  .institutional-page .contact-actions .contact-phone{font-size:1.7rem}
  .institutional-page .contact-actions .btn{width:100%;padding-inline:16px}
  .institutional-page .specialty-card h3{font-size:2.3rem}
  .institutional-page .obstetrics-secondary summary{display:grid;grid-template-columns:1fr auto;gap:4px 12px}
  .institutional-page .obstetrics-note{grid-column:1;grid-row:2}
  .institutional-page .obstetrics-secondary summary:after{grid-column:2;grid-row:1/3}
  .institutional-page .about-photo{width:100%;max-width:430px}
  .institutional-page .footer-bottom{align-items:flex-start;padding-right:56px}
  .institutional-page .footer-main .wordmark{max-width:100%}
  .institutional-page .footer-main .wordmark-name{font-size:1.4rem}
  .public-page .wrap{width:calc(100% - 40px)}
  .public-page .nav{min-height:76px;gap:10px}
  .public-page .brand{gap:8px}
  .public-page .brand-symbol{width:30px;height:38px}
  .public-page .brand-symbol img{width:30px;height:38px}
  .public-page .brand-text strong{font-size:1.075rem;letter-spacing:.015em}
  .public-page .brand-text span{display:none}
  .public-page .navlinks .btn{font-size:.8125rem;padding:12px;min-height:44px}
  .public-page .hero.lp-hero{padding-top:28px;padding-bottom:40px}
  .public-page .lp-hero h1{font-size:clamp(2.8rem,10.8vw,3.6rem)}
  .public-page .hero-actions{gap:8px 20px}
  .public-page .hero-actions .btn{width:100%}
  .public-page .hero-actions .text-link{justify-content:flex-start}
  .public-page .portrait-card{border-radius:80px 6px 6px 6px}
  .public-page .portrait-card .quote{left:16px;right:16px;bottom:16px;padding:16px}
  .public-page .portrait-card .quote b{font-size:1.5rem}
  .public-page .section-title h2,.public-page .lp-heading{font-size:clamp(2.5rem,8vw,3rem)}
  .public-page>footer{padding-bottom:max(76px,calc(env(safe-area-inset-bottom) + 60px))}
  .floating-contact{width:50px;height:50px;bottom:max(16px,calc(env(safe-area-inset-bottom) + 10px));right:max(16px,env(safe-area-inset-right))}
}
