:root{color-scheme:light;--ivory:#fbf8f6;--white:#fffdfc;--ink:#302a2d;--muted:#695d62;--rose:#995d77;--rose-light:#f1e3e9;--lavender:#e9e2ed;--line:#e5dadd;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--ivory);font:400 1rem/1.65 "DM Sans",Arial,sans-serif}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}h1,h2,h3,p,figure{margin-top:0}h1,h2,h3{line-height:1.13}h1,h2,.footer-brand{font-family:"DM Serif Display",Georgia,serif;font-weight:400;letter-spacing:-.022em}h1{font-size:clamp(3rem,5.2vw,5.35rem);max-width:11ch;margin-bottom:1.55rem}h2{font-size:clamp(2.4rem,3.9vw,4.1rem);margin:0 0 1.7rem;max-width:15ch}h3{font-size:1.27rem;font-weight:600;letter-spacing:-.015em}p{margin-bottom:1.2rem}.container{width:min(var(--max),calc(100% - 3rem));margin-inline:auto}.skip-link{position:absolute;left:1rem;top:-5rem;background:var(--ink);color:white;padding:.7rem;z-index:20}.skip-link:focus{top:1rem}:focus-visible{outline:3px solid #8d4b72;outline-offset:3px}
.site-header{background:rgba(251,248,246,.97);position:relative;z-index:10;border-bottom:1px solid var(--line)}.header-inner{width:min(1360px,calc(100% - 3rem));min-height:94px;margin:auto;display:flex;align-items:center;gap:2rem}.brand{display:flex;align-items:center;gap:.75rem;flex:none;line-height:1.12}.brand-mark{font-family:Georgia,serif;font-size:2rem;letter-spacing:-.1em;color:var(--rose)}.brand-dot{padding:0 .14em;color:#caa7b5}.brand-text{font-size:.87rem;font-weight:700;letter-spacing:.025em;text-transform:uppercase}.nav{display:flex;align-items:center;justify-content:center;gap:clamp(.75rem,1.3vw,1.5rem);margin-left:auto}.nav a{font-size:.85rem;font-weight:600;white-space:nowrap;padding:.5rem .1rem}.nav a:hover,.footer a:hover,.contact-links a:hover{text-decoration:underline;text-underline-offset:5px}.header-actions{display:flex;align-items:center;gap:.8rem}.language{display:flex;align-items:center;gap:.25rem;font-size:.85rem;color:var(--muted);white-space:nowrap}.language a{padding:.45rem .15rem}.language a[aria-current]{font-weight:700;color:var(--rose)}.menu-toggle{display:none}
.eyebrow{display:inline-block;margin-bottom:1.2rem;color:var(--rose);font-size:.79rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:.7rem 1.65rem;border:1px solid var(--rose);border-radius:4px;font-weight:700;text-align:center}.button.primary{background:var(--rose);color:white}.button.primary:hover{background:#7e465e}.text-link{font-weight:700;color:#824b63;border-bottom:1px solid currentColor;padding-bottom:.16rem}.text-link:hover{color:#62364a}.hero{overflow:hidden}.hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:clamp(2rem,5vw,6rem);min-height:640px;padding-block:4rem 5rem}.hero-copy{position:relative;z-index:1}.hero-roles{font-size:1.01rem;font-weight:600;color:var(--rose);max-width:38rem}.hero-text,.lead{font-size:clamp(1.12rem,1.6vw,1.33rem);line-height:1.62}.hero-text{max-width:38rem}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:2rem;margin-top:2.1rem}.hero-image{height:min(690px,58vw);min-height:540px;position:relative}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:center 39%;border-radius:230px 230px 7px 7px}.image-corner{position:absolute;left:-1.2rem;bottom:-1.2rem;width:43%;height:38%;border-left:1px solid #caacba;border-bottom:1px solid #caacba;pointer-events:none}
.section{padding-block:clamp(5rem,9vw,9rem);scroll-margin-top:1rem}.section-intro{margin-bottom:2.5rem}.section-intro h2{margin-bottom:0}.about{background:var(--white)}.about-grid{display:grid;grid-template-columns:1.08fr .75fr;gap:clamp(3rem,9vw,10rem);align-items:center}.about-grid p{max-width:39rem}.about h3{margin-top:2.2rem}.credentials{list-style:none;margin:2rem 0 0;padding:0;display:grid;gap:.6rem}.credentials li{border-top:1px solid var(--line);padding:.7rem 0;font-size:.93rem;font-weight:600}.about-photo{margin:0;aspect-ratio:4/5;overflow:hidden}.about-photo img{width:100%;height:100%;object-fit:cover;object-position:center 30%}
.services{background:#f5f0f0}.service-list{border-top:1px solid #d8c9cc;display:grid;grid-template-columns:1fr 1fr;column-gap:3.5rem}.service{display:grid;grid-template-columns:2rem 1fr;gap:1rem;border-bottom:1px solid #d8c9cc;padding:1.65rem 0 1.45rem;min-height:155px}.service-index{font-family:Georgia,serif;font-size:1rem;color:var(--rose)}.service h3{margin-bottom:.5rem}.service p{color:var(--muted);margin:0;max-width:29rem}
.home-birth{background:#30282e;color:#fff9f8}.home-birth .eyebrow{color:#d9b8c7}.home-birth .section-intro h2{max-width:20ch}.home-copy{display:grid;grid-template-columns:1.25fr .75fr;gap:5rem;align-items:end}.home-copy .lead{max-width:45rem}.care-note{border-top:1px solid #9a7989;padding-top:1.5rem}.care-note p{color:#e7d8df;margin-bottom:0}.story-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1.2rem;margin-top:3.4rem}.story-grid figure{margin:0}.story-grid img{width:100%;height:310px;object-fit:cover;filter:grayscale(100%)}.story-grid figure:nth-child(2) img{object-position:center 33%}.story-grid figcaption{color:#e6d8df;padding-top:.75rem;font-size:.85rem}.section-action{margin-top:2.5rem}.home-birth .text-link{color:#f0d0de}
.after-birth{background:var(--white)}.after-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,7vw,8rem);align-items:center}.after-image{aspect-ratio:1.1;overflow:hidden}.after-image img{width:100%;height:100%;object-fit:cover}.after-grid .lead{max-width:36rem}.wrap-section{background:var(--lavender)}.wrap-grid{display:grid;grid-template-columns:1fr .8fr;gap:5rem;align-items:center}.wrap-grid img{width:100%;height:370px;object-fit:cover;object-position:center 42%;border-radius:4px}.wrap-grid h2{margin-bottom:1.4rem}.wrap-grid p{max-width:34rem}
.pricing{background:var(--white)}.pricing-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:clamp(3rem,8vw,8rem)}.muted{color:var(--muted);max-width:20rem}.price-list{border-top:1px solid var(--line)}.price-row{display:flex;justify-content:space-between;gap:2rem;padding:1.1rem 0;border-bottom:1px solid var(--line)}.price-row strong{white-space:nowrap;font-size:1.05rem}.reviews{background:#f6f0f2}.review-panel{max-width:740px}.review-panel [role=tablist]{display:flex;border-bottom:1px solid #cdbbc4;gap:2rem}.review-panel [role=tab]{border:0;background:none;padding:.8rem .2rem;font-weight:700;color:var(--muted);border-bottom:2px solid transparent}.review-panel [role=tab][aria-selected=true]{color:var(--rose);border-color:var(--rose)}.review-panel [role=tabpanel]{padding:2rem 0 0}.review-panel [role=tabpanel] p{font-size:1.15rem;max-width:37rem}.review-panel [hidden]{display:none}
.contact{background:var(--ivory)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,9vw,9rem)}.contact-links{display:flex;flex-direction:column;align-items:start;gap:.7rem;margin-top:2.5rem}.contact-phone{font-family:Georgia,serif;font-size:clamp(1.6rem,3vw,2.5rem);letter-spacing:-.03em;color:var(--rose)}.contact-links span{color:var(--muted);margin-bottom:1rem}.contact form{display:grid;gap:1rem;background:var(--white);padding:clamp(1.35rem,3vw,2.5rem);border:1px solid var(--line);border-radius:5px}.contact form>label:not(.consent){display:grid;gap:.35rem;font-weight:600}.contact input:not([type=checkbox]),.contact textarea,.contact select{width:100%;border:1px solid #b9aeb2;background:white;border-radius:3px;padding:.75rem .8rem;color:var(--ink);min-height:48px}.contact textarea{resize:vertical;min-height:100px}.form-note{font-size:.85rem;color:var(--muted);margin:0}.consent{display:flex;align-items:start;gap:.6rem;font-size:.88rem}.consent input{width:19px;height:19px;flex:none;accent-color:var(--rose);margin-top:.2rem}.consent a{text-decoration:underline;text-underline-offset:3px}.contact form .button{justify-self:start}.footer{background:var(--ink);color:#f6eef1;padding:3.5rem 0}.footer-inner{display:flex;justify-content:space-between;gap:3rem}.footer-brand{font-size:1.65rem}.footer p{color:#d5c9ce;font-size:.9rem;margin:.65rem 0 0}.footer-links{display:flex;flex-wrap:wrap;justify-content:end;align-content:start;gap:.7rem 1.5rem;font-size:.9rem}.privacy-page{padding:6rem 0 8rem;min-height:70vh}.narrow{max-width:780px}.privacy-page h1{max-width:none}.privacy-page section{border-top:1px solid var(--line);padding:1.4rem 0}.privacy-page section h2{font:600 1.25rem/1.3 "DM Sans",Arial,sans-serif;letter-spacing:0;margin:0 0 .6rem}.privacy-page section p{color:var(--muted)}.privacy-page .text-link{display:inline-block;margin-top:2rem}
@media(max-width:1050px){.header-inner{min-height:76px}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--ivory);padding:1rem 1.5rem 1.5rem;border-bottom:1px solid var(--line);box-shadow:0 14px 24px #302a2d15;flex-direction:column;align-items:stretch}.nav.open{display:flex}.nav a{padding:.5rem 0;font-size:1rem}.header-actions{margin-left:auto}.menu-toggle{width:42px;height:42px;border:0;background:none;display:flex;flex-direction:column;justify-content:center;gap:5px;padding:8px}.menu-toggle span{width:24px;height:2px;background:var(--ink)}}
@media(max-width:760px){.container,.header-inner{width:min(100% - 2rem,var(--max))}.hero-grid{display:flex;flex-direction:column-reverse;align-items:stretch;gap:2rem;padding:1.2rem 0 4rem;min-height:0}.hero-image{height:400px;min-height:0;width:100%;max-width:550px;margin:auto}.hero-image img{border-radius:185px 185px 4px 4px;object-position:center 41%}.hero-copy{padding:0 .15rem}h1{font-size:clamp(2.9rem,10vw,4.4rem);max-width:12ch;margin-bottom:1rem}h2{font-size:clamp(2.35rem,8vw,3.6rem)}.hero-roles{font-size:.94rem}.hero-text,.lead{font-size:1.08rem}.hero-actions{gap:1.3rem}.section{padding-block:4.5rem}.about-grid,.after-grid,.wrap-grid,.pricing-grid,.contact-grid,.home-copy{grid-template-columns:1fr;gap:2rem}.about-photo{max-width:440px;aspect-ratio:1;order:-1}.service-list{grid-template-columns:1fr}.service{min-height:0}.story-grid{grid-template-columns:1fr 1fr;gap:.75rem}.story-grid figure:nth-child(3){display:none}.story-grid img{height:210px}.story-grid figcaption{font-size:.8rem}.after-image{aspect-ratio:1.35}.wrap-grid img{height:310px}.pricing-grid{gap:1rem}.contact-grid{gap:2.7rem}.contact-links{margin-top:1.4rem}.footer-inner{flex-direction:column}.footer-links{justify-content:start}.privacy-page{padding:4rem 0 6rem}}
@media(max-width:430px){.brand-text{font-size:.72rem}.brand-mark{font-size:1.7rem}.header-inner{gap:.4rem}.hero-image{height:330px}.hero-actions{align-items:stretch;flex-direction:column;gap:1rem}.hero-actions .text-link{align-self:flex-start}.story-grid img{height:170px}.price-row{gap:1rem}.price-row strong{font-size:.98rem}.contact form .button{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.mobile-cta{display:none}
@media(max-width:760px){
  body:has(.mobile-cta){padding-bottom:70px}
  .mobile-cta{display:block;position:fixed;z-index:8;bottom:0;left:0;right:0;background:var(--rose);color:white;text-align:center;font-weight:700;padding:.75rem 1rem calc(.75rem + env(safe-area-inset-bottom));box-shadow:0 -2px 12px #302a2d26}
}
.review-panel{max-width:900px}
.review-panel [role=tabpanel]{min-height:245px}
.review-carousel{padding-top:.3rem}
.review-summary{font-size:1.12rem;font-weight:700;margin-bottom:1rem}
.review-stage{display:grid;grid-template-columns:42px minmax(0,1fr) 42px;gap:.7rem;align-items:center}
.review-viewport{overflow:hidden;background:var(--white);border:1px solid var(--line);border-radius:6px}
.review-track{display:flex;transition:transform .5s ease;will-change:transform}
.review-card{min-width:100%;padding:clamp(1.2rem,3vw,2.2rem);display:flex;flex-direction:column;align-items:start;min-height:295px}
.review-card blockquote{font-family:Georgia,serif;font-size:clamp(1.12rem,2.2vw,1.5rem);line-height:1.5;margin:0 0 1.5rem;max-height:230px;overflow:auto;width:100%}
.review-author{display:flex;align-items:center;gap:.8rem;margin-top:auto;margin-bottom:.8rem}
.review-author img{width:42px;height:42px;border-radius:50%;object-fit:cover}
.review-author>div{display:flex;align-items:center;flex-wrap:wrap;gap:.2rem .7rem;font-size:.88rem}
.review-author a,.review-author strong{font-weight:700}
.review-stars{color:#945c74;letter-spacing:.08em}
.review-time{color:var(--muted)}
.review-source{font-size:.86rem;text-decoration:underline;text-underline-offset:3px;color:var(--rose)}
.review-arrow{width:42px;height:42px;border:1px solid var(--line);background:var(--white);border-radius:50%;color:var(--ink);font:2rem/1 Georgia,serif}
.review-arrow:hover{border-color:var(--rose);color:var(--rose)}
.review-foot{display:flex;align-items:center;justify-content:space-between;margin:1rem 3.5rem .5rem;font-size:.86rem;color:var(--muted)}
.google-attribution{font:400 1rem/1.2 Arial,sans-serif;white-space:nowrap;color:#5e5e5e}
.review-order{font-size:.82rem!important;color:var(--muted);margin:0 3.5rem 1rem}
#google-extra-attribution{margin:0 3.5rem;font-size:.83rem}
#google-extra-attribution a{text-decoration:underline}
@media(max-width:760px){.review-stage{grid-template-columns:32px minmax(0,1fr) 32px;gap:.3rem}.review-arrow{width:32px;height:32px;font-size:1.5rem}.review-card{min-height:325px}.review-foot,.review-order,#google-extra-attribution{margin-left:2.3rem;margin-right:2.3rem}}
@media(prefers-reduced-motion:reduce){.review-track{transition:none}}
.lactation{background:var(--ivory)}
.lactation-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(2rem,5vw,5rem);align-items:center}
.lactation .section-intro h2{max-width:19ch}
.lactation-copy{max-width:40rem}
.lactation-points{display:grid;grid-template-columns:1fr 1fr;gap:.5rem 1.2rem;list-style:none;margin:1.7rem 0;padding:0}
.lactation-points li{border-top:1px solid var(--line);padding:.65rem 0;font-size:.92rem;font-weight:600}
.lactation-action{display:flex;gap:1.2rem;align-items:center;margin-top:1.9rem}.lactation-action span{font-weight:700;white-space:nowrap}
.lactation-photo{margin:0}.lactation-photo img{width:100%;height:auto}
.qualifications{background:var(--white)}
.qualifications-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(2rem,7vw,7rem);align-items:center}
.qualifications-grid h2{max-width:20ch}.qualifications-grid p{max-width:35rem}
.qualifications-photos{display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-items:center}
.qualifications-photos img{width:100%;aspect-ratio:3/4;object-fit:cover}
@media(max-width:760px){.lactation-grid,.qualifications-grid{grid-template-columns:1fr}.lactation-photo{grid-row:1;max-width:550px}.qualifications-photos{max-width:550px}}
@media(max-width:430px){.lactation-points{grid-template-columns:1fr}.lactation-action{align-items:flex-start;flex-direction:column}}
.service{min-height:0}.service>div{min-width:0}.service .service-includes{margin-top:1.25rem}.service .text-link{display:inline-block;margin-top:1.1rem;font-size:.91rem}
.service-includes{margin:1.5rem 0}.service-includes>span{display:block;font-size:.8rem;font-weight:700;color:var(--rose);margin-bottom:.45rem;letter-spacing:.025em}
.care-points{padding-left:1.1rem;margin:0;display:grid;gap:.25rem;color:var(--muted);font-size:.91rem;line-height:1.5}
.service-fee{display:flex;flex-direction:column;gap:.16rem;margin:1.4rem 0 .5rem}.service-fee strong{font-size:1rem}.service-fee small{font-size:.8rem;line-height:1.45;color:var(--muted)}
.detail-copy p{max-width:49rem}.detail-copy p:first-child{font-size:clamp(1.08rem,1.5vw,1.25rem);line-height:1.65}
.home-birth .detail-copy p{max-width:45rem}.home-birth .detail-actions{margin-top:2rem;max-width:54rem}.home-birth .detail-actions .service-includes>span{color:#e4bace}.home-birth .care-points,.home-birth .service-fee small{color:#e7d8df}.home-birth .detail-actions .text-link{display:inline-block;margin-top:.8rem}
.after-birth .after-grid{align-items:start}.after-birth .after-image{align-self:center}.after-birth .service-includes{margin-top:1.8rem}.after-birth .text-link,.wrap-section .text-link{display:inline-block;margin-top:.8rem}
.lactation .lactation-points{padding:0;list-style:none}.lactation .lactation-points li{border-top:1px solid var(--line);padding:.6rem 0}.lactation .service-fee{margin:1.4rem 0 1.2rem}
.wrap-section .care-points{color:var(--ink)}.wrap-section .service-fee small{color:#524650}
@media(max-width:760px){.service{padding:1.8rem 0}.home-copy{align-items:start}.after-birth .after-image{max-width:550px}}
