:root{--ink:#30263f;--lavender:#ece9f8;--peach:#efb19b;--pale-peach:#fff0e8;--accent:#a95139;--line:#d7d0e5;--heading:'Fredoka',Arial,sans-serif;--body:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:#fff;color:var(--ink);font:17px/1.6 var(--body);-webkit-font-smoothing:antialiased}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--heading);font-weight:600;line-height:1.06;letter-spacing:-.035em}h2{font-size:56px}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #8951bf;outline-offset:5px}.wrap{width:calc(100% - 96px);max-width:1320px;margin-inline:auto}.header{min-height:112px;display:flex;align-items:center;justify-content:space-between;gap:24px;position:relative}.brand{display:flex;align-items:center;gap:17px;flex-shrink:0}.brand img{width:88px;height:88px;object-fit:contain}.brand>span{font:600 28px/1.1 var(--heading);letter-spacing:-.5px}.brand small{display:block;font:500 10px/1.6 var(--body);text-transform:uppercase;letter-spacing:3.3px;margin-top:7px}.header nav{display:flex;align-items:center;gap:28px;font-size:15px;font-weight:500}.header nav>a:not(.button):hover{color:var(--accent)}.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:16px 25px;background:var(--ink);color:#fff;border-radius:6px;font-weight:700;font-size:16px;line-height:1.4;transition:transform .2s,background .2s;min-height:52px}.button:hover{background:#4d3b65;transform:translateY(-2px)}.button.white{background:#fff;color:var(--ink)}.button.white:hover{background:var(--lavender)}.button.peach{color:var(--ink)}.button.peach:hover{background:#f4c4b2}.menu-toggle{display:none}.hero-heading{background:var(--lavender);text-align:center;position:relative;isolation:isolate;overflow:hidden;padding:55px 0 43px}.hero-heading .wrap{position:relative;z-index:1}.hero h1{font-size:clamp(70px,8.8vw,128px);font-weight:700;line-height:.98;letter-spacing:-.045em}.hero h1>span{color:var(--accent)}.hero-heading p{font-size:22px;line-height:1.5;margin-top:25px}.circle{position:absolute;width:260px;height:260px;border-radius:50%;background:var(--peach);top:-115px;right:-80px}.diamond{position:absolute;width:160px;height:160px;border:23px solid #c2adee;border-radius:16px;transform:rotate(45deg);bottom:-40px;left:-75px}.hero-bottom{display:grid;grid-template-columns:2.15fr 1fr;min-height:320px}.baby-photo{background:#f5f5f5;min-width:0;display:flex;align-items:center}.baby-photo img{width:100%;height:100%;object-fit:cover}.hello{background:var(--peach);padding:34px 35px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.hello h2{font-size:clamp(42px,4.8vw,70px);font-weight:600;line-height:.98}.hello p{font-size:20px;margin:15px 0 20px}.hello .button{font-size:15px;padding-inline:21px;white-space:nowrap}.quick-contact{display:grid;grid-template-columns:1fr 1fr;min-height:90px;align-items:center}.quick-contact a{display:flex;align-items:center;justify-content:center;gap:20px;font-size:17px}.quick-contact a+a{border-left:3px solid var(--lavender)}.quick-contact strong{text-transform:uppercase;font-size:15px;letter-spacing:.7px}.location-mark{font-size:32px;font-weight:600}.divider{color:#9a8bae}.quick-contact a:hover{color:var(--accent)}.section{padding-block:78px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:35px}.section-heading h2{font-size:58px}.section-heading p{max-width:310px;border-left:2px solid #bcb1cf;padding-left:25px;font-size:20px;line-height:1.5}.service-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:18px}.service{grid-column:span 2;position:relative;isolation:isolate;border:1px solid var(--line);border-radius:8px;overflow:hidden;min-height:365px;padding:25px;transition:transform .2s,border-color .2s}.service:hover{transform:translateY(-5px);border-color:#8d76b4}.service.wide{grid-column:span 3;min-height:320px}.lavender{background:var(--lavender)}.pale-peach{background:var(--pale-peach);border-color:#f4c9b7}.peach{background:var(--peach)}.number{display:block;font:600 32px/1 var(--heading);color:var(--accent);margin-bottom:12px}.service h3{font-size:32px;position:relative;z-index:2;letter-spacing:-.025em}.service p{font-size:15px;line-height:1.5;max-width:57%;margin-top:16px;position:relative;z-index:2}.explore{position:absolute;left:25px;bottom:22px;font-size:16px;font-weight:700;color:var(--accent);display:flex;gap:12px;z-index:2}.service-art{position:absolute;right:-4px;bottom:0;width:45%;aspect-ratio:3/5;background-image:url('assets/care-characters-white.png');background-size:500% 100%;background-repeat:no-repeat;pointer-events:none;z-index:1}.art-one{background-position:0% 50%}.art-two{background-position:25% 50%}.art-three{background-position:50% 50%}.art-four{background-position:75% 50%}.art-five{background-position:100% 50%}.wide .service-art{width:36%;max-height:290px}.wide p{max-width:52%}.about{background:var(--ink);color:white;padding:56px 0}.about-grid{display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:60px}.doctor-photo{width:100%;height:540px;object-fit:cover;object-position:center 37%}.about h2{font-size:62px;line-height:1.05}.about h2 span{color:var(--peach)}.about-intro{font-size:25px;line-height:1.45;margin-top:24px}.about-copy>p:not(.about-intro){max-width:650px;color:#e6e0ed;margin-top:18px;font-size:16px}.about-copy .qualifications{font-size:13px!important;line-height:1.7}.about .button{margin-top:26px}.parents{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:start}.parents h2{font-size:45px;line-height:1.08;margin-bottom:22px}.resource-links a{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #cfc3e9;padding:17px 0;font-size:20px;font-weight:500}.resource-links a:last-child{color:var(--accent)}.resource-links a:hover{color:var(--accent)}.resource-links span{font-size:25px}.faq{background:var(--lavender);padding:32px;border-radius:8px}.faq h2{margin-bottom:25px}details{border-bottom:1px solid #cfc3e9}details:last-child{border:0}summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:22px;font-size:19px;font-weight:500;padding:20px 0}summary::-webkit-details-marker{display:none}summary span{font-size:25px;line-height:1;transition:transform .2s}details[open] summary span{transform:rotate(180deg)}details>p,.faq-answer{padding-bottom:20px;font-size:15px;line-height:1.7}.faq-answer p+p{margin-top:10px}details a{text-decoration:underline}.contact{padding-bottom:45px}.contact>h2{text-align:center;font-size:72px;line-height:1.03;margin-bottom:38px}.practice-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.practice{border-radius:8px;padding:30px 34px}.practice-title{display:flex;align-items:center;gap:23px;margin-bottom:18px}.practice-title>span{font:600 52px/1 var(--heading);color:#8d4937}.practice.lavender .practice-title>span{color:#75628e}.practice h3{font-size:34px}.practice address{font-style:normal;font-size:18px;line-height:1.6}.phone{display:flex;align-items:center;gap:16px;font:600 33px/1.2 var(--heading);margin:22px 0}.phone:hover{text-decoration:underline}.phone svg{width:30px;height:30px}.practice .button{min-width:235px}.say-hello{background:var(--peach);padding-block:30px}.say-hello .wrap{display:flex;align-items:center;justify-content:space-between;gap:30px}.say-hello h2{font-size:54px}.say-hello .button{font-size:21px;min-height:66px}.footer{display:flex;align-items:center;justify-content:space-between;gap:26px;padding-block:18px;font-size:13px}.footer-logo img{width:84px;height:84px;object-fit:contain}.footer>a:not(.footer-logo):hover{text-decoration:underline}.skip-link{position:absolute;top:-90px;left:20px;z-index:10;background:var(--ink);color:#fff;padding:14px}.skip-link:focus{top:10px}
@media(min-width:1600px){.hero-bottom{max-height:430px}.baby-photo img{object-fit:contain}}
@media(max-width:1180px){.wrap{width:calc(100% - 56px)}.brand>span{font-size:23px}.brand small{font-size:8px;letter-spacing:2px}.brand img{width:76px;height:76px}.header nav{gap:19px;font-size:14px}.header .button{padding:13px 18px;font-size:14px}.hello{padding:26px}.hello p{font-size:17px}.hello .button{white-space:normal;font-size:14px}.quick-contact a{gap:13px;font-size:15px}.quick-contact strong{font-size:12px}.section-heading h2{font-size:48px}.service{padding:21px;min-height:355px}.service h3{font-size:28px}.service p{font-size:14px;max-width:62%}.explore{left:21px;font-size:14px}.service-art{width:42%}.about-grid{gap:40px}.about h2{font-size:50px}.about-intro{font-size:22px}.parents{gap:30px}.parents h2{font-size:37px}.resource-links a{font-size:18px}.faq{padding:25px}summary{font-size:17px}.practice{padding:26px}.practice h3{font-size:28px}.practice address{font-size:16px}.practice-title{gap:16px}.say-hello h2{font-size:44px}.say-hello .button{font-size:18px}}
@media(max-width:900px){.brand>span{display:none}.hero-heading{padding-block:47px}.hero-heading p{font-size:19px}.hero-bottom{grid-template-columns:1.65fr 1fr}.baby-photo img{object-fit:contain}.hello h2{font-size:45px}.quick-contact a{gap:10px;flex-wrap:wrap;padding:15px 10px}.quick-contact .location-mark{display:none}.section-heading{gap:30px}.section-heading h2{font-size:42px}.section-heading p{font-size:17px;max-width:250px}.service h3{font-size:25px}.service p{max-width:100%}.service-art{width:38%;opacity:1}.service{min-height:390px}.service .explore{font-size:13px}.wide{min-height:340px!important}.wide p{max-width:65%}.about-grid{gap:30px}.about h2{font-size:42px}.doctor-photo{height:510px}.parents{grid-template-columns:1fr;gap:40px}.parents h2{font-size:43px}.practice h3{font-size:26px}.practice-title>span{font-size:40px}.phone{font-size:28px}.contact>h2{font-size:60px}.say-hello h2{font-size:38px}.footer{font-size:11px;gap:15px}}
@media(max-width:640px){.wrap{width:calc(100% - 36px)}.header{min-height:94px;gap:16px}.brand img{width:75px;height:75px}.brand{gap:10px}.brand>span{display:block;font-size:19px}.brand small{font-size:7px;letter-spacing:1.2px}.menu-toggle{display:flex;gap:8px;align-items:center;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:5px;padding:9px 10px;font-size:12px}.header nav{display:none;position:absolute;top:90px;right:0;left:0;background:white;padding:16px;border:1px solid var(--line);border-radius:6px;z-index:5;box-shadow:0 10px 25px #30263f15}.header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}.header nav>a{padding:13px}.header nav .button{margin-top:10px}.hero-heading{padding:38px 0 32px}.hero h1{font-size:clamp(43px,10.5vw,65px);line-height:1.01;letter-spacing:-.035em}.hero-heading p{font-size:15px;margin-top:22px;line-height:1.6}.hero-heading p br{display:none}.circle{width:110px;height:110px;right:-60px;top:-50px}.diamond{width:75px;height:75px;border-width:10px;left:-43px;bottom:-28px;border-radius:7px}.hero-bottom{grid-template-columns:1fr}.baby-photo img{height:auto;aspect-ratio:1900/750;object-fit:contain}.hello{padding:25px 22px;display:grid;grid-template-columns:1fr 1.15fr;gap:8px 18px;align-items:center}.hello h2{font-size:34px;grid-row:1/3}.hello p{font-size:14px;margin:0}.hello .button{font-size:12px;padding:12px 14px;gap:8px;min-height:47px}.quick-contact{min-height:0;grid-template-columns:1fr;padding-block:8px}.quick-contact a{padding:13px 0;justify-content:space-between;flex-wrap:nowrap;gap:8px;font-size:14px}.quick-contact a+a{border-left:0;border-top:1px solid var(--lavender)}.quick-contact strong{font-size:11px;letter-spacing:.3px}.section{padding-block:45px}.section-heading{display:block;margin-bottom:25px}.section-heading h2{font-size:38px}.section-heading p{max-width:100%;border-left:0;padding:0;margin-top:20px;font-size:16px}.service-grid{grid-template-columns:1fr;gap:14px}.service,.service.wide{grid-column:auto;min-height:310px!important;padding:22px}.number{font-size:27px;margin-bottom:9px}.service h3{font-size:29px;max-width:100%}.service p,.wide p{font-size:14px;max-width:57%;margin-top:15px;line-height:1.55}.service-art,.wide .service-art{width:40%;max-height:245px;right:1px;bottom:0}.service .explore{font-size:14px;left:22px;bottom:20px}.about{padding:32px 0}.about-grid{grid-template-columns:1fr;gap:30px}.doctor-photo{height:390px;object-position:center 32%}.about h2{font-size:42px}.about-intro{font-size:20px;margin-top:22px}.about-copy>p:not(.about-intro){font-size:15px}.about-copy .qualifications{font-size:12px!important}.about .button{font-size:14px}.parents{gap:32px}.parents h2{font-size:35px}.resource-links a{font-size:17px;padding:17px 0}.faq{padding:22px}.faq h2{font-size:32px}summary{font-size:16px;padding:18px 0}.contact{padding-bottom:30px}.contact>h2{font-size:42px;margin-bottom:25px}.practice-grid{grid-template-columns:1fr;gap:16px}.practice{padding:25px 22px}.practice h3{font-size:28px}.practice-title{gap:13px;margin-bottom:17px}.practice-title>span{font-size:37px}.practice address{font-size:15px}.phone{font-size:29px;margin:20px 0}.practice .button{font-size:14px;min-width:210px}.say-hello{padding:26px 0}.say-hello .wrap{display:block}.say-hello h2{font-size:37px;margin-bottom:20px}.say-hello .button{font-size:16px;min-height:55px;width:100%}.footer{display:grid;grid-template-columns:65px 1fr;gap:12px 15px;padding-block:20px;font-size:11px}.footer-logo{grid-row:span 3}.footer-logo img{width:65px;height:65px}.footer>a{overflow-wrap:anywhere}.footer>span{grid-column:2}.footer>a:last-child{grid-column:2}}
@media(max-width:360px){.brand>span{font-size:16px}.brand small{font-size:6px}.brand img{width:65px;height:65px}.hero h1{font-size:39px}.hello{gap:8px 12px;padding:22px 18px}.hello h2{font-size:31px}.practice h3{font-size:24px}.service p{max-width:60%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

.service-art{mix-blend-mode:multiply}
.art-three{clip-path:inset(0 7% 0 0)}
@media(min-width:641px){.wide .service-art{width:30%;max-height:none}}
/* Original content, full page navigation and article layouts. */
#navigation{gap:20px}.nav-group{position:relative;border:0;font-size:14px}.nav-group summary{cursor:pointer;padding:12px 0;list-style:none;display:flex;gap:7px;align-items:center}.nav-group summary:after{content:'';display:block;width:7px;height:7px;flex:0 0 7px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:translateY(-2px) rotate(45deg);transform-origin:center;transition:transform .18s ease;margin-left:3px;margin-right:3px}.nav-group[open]>summary:after{transform:translateY(2px) rotate(225deg)}@media(prefers-reduced-motion:reduce){.nav-group summary:after{transition:none}}.nav-group>div{position:absolute;z-index:50;top:100%;left:-24px;width:310px;max-height:70vh;overflow:auto;background:white;padding:16px;border:1px solid var(--line);border-radius:12px;box-shadow:0 16px 40px #30263f20}.nav-group>div a{display:block;padding:9px 10px;line-height:1.4}.nav-group>div a:hover{background:var(--lavender)}.hero h1{font-size:clamp(42px,5.8vw,82px)}.hello h2{font-size:clamp(30px,3.4vw,49px)}.original-intro{max-width:1060px}.prose{font-size:17px;line-height:1.8;overflow-wrap:anywhere}.prose h2{font-size:clamp(27px,3vw,40px);line-height:1.2;margin:35px 0 20px}.prose h3{font-size:26px;line-height:1.3;margin:30px 0 14px}.prose p{margin:0 0 20px}.prose ul,.prose ol{padding-left:24px;margin:15px 0 25px}.prose li{margin-bottom:9px}.prose a:not(.button){text-decoration:underline;text-underline-offset:4px}.prose img{display:block;max-width:100%;height:auto;max-height:650px;object-fit:contain;margin:24px auto;border-radius:14px}.prose iframe{width:100%;height:340px;border:0;border-radius:16px}.prose table{width:100%;border-collapse:collapse;margin:25px 0}.prose th,.prose td{padding:12px;border-bottom:1px solid var(--line);text-align:left}.prose details,.faq details{border:1px solid var(--line);border-radius:14px;padding:18px 22px;margin:12px 0}.prose summary,.faq summary{font-weight:600;cursor:pointer;line-height:1.5;display:list-item}.prose details[open] summary,.faq details[open] summary{margin-bottom:18px}.prose details p{margin-top:14px}.content-block:empty{display:none}.content-block{margin:0 0 20px}.content-block>a:only-child{display:inline-block;margin:8px 0}.page-banner{padding:52px 0 58px;background:var(--lavender);border-bottom:1px solid var(--line)}.page-banner h1{font-size:clamp(36px,5vw,62px);line-height:1.1;max-width:960px;margin:20px 0 0;overflow-wrap:anywhere}.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 275px;gap:70px;padding-top:60px;padding-bottom:80px}.article-aside{align-self:start;background:var(--pale-peach);border-radius:20px;padding:26px}.article-aside h2{font-size:25px;margin:0 0 16px}.article-aside h2:not(:first-child){margin-top:30px}.article-aside>a{display:block;font-size:14px;line-height:1.5;margin:0 0 14px}.article-aside .button{margin-top:30px}.site-footer{background:var(--lavender);padding:55px 0 25px}.footer-brand{display:flex;align-items:center;gap:22px;margin-bottom:35px}.footer-brand img{width:90px;border-radius:12px}.footer-brand h2{font-size:30px}.footer-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 30px;margin-bottom:40px;font-size:14px}.footer-links a{overflow-wrap:anywhere}.site-footer p{font-size:13px}.service{min-height:570px}.service.wide{min-height:420px}.service h3{font-size:30px}.service p p{margin:0}.service .service-art{bottom:38px;height:150px}.service.wide p{max-width:65%}.services .section-heading h2{font-size:clamp(32px,4vw,52px);max-width:850px}.services .section-heading{align-items:flex-end}.about-copy h2{font-size:42px}.about-copy h3{font-size:28px}.about-copy p{font-size:17px;line-height:1.7}.parents{align-items:start}.faq{min-width:0}.faq summary{font-size:17px}.faq p,.faq li{font-size:15px;line-height:1.75}.faq ul{padding-left:20px}.original-details{max-width:950px}.original-details img{max-height:100px;max-width:240px}.contact-form{background:var(--pale-peach);padding:30px;border-radius:20px}.contact-form label{display:block;margin-bottom:18px;font-weight:600}.contact-form input,.contact-form textarea{display:block;width:100%;border:1px solid var(--line);border-radius:8px;padding:13px;font:inherit;background:white;margin-top:7px}.contact-form p{font-size:14px}.contact-form .button{border:0;cursor:pointer}.say-hello h2{font-size:clamp(27px,3vw,40px);max-width:700px}.prose .content-block img[src*='childhood_illnesses'],.prose .content-block img[src*='neonatal_care'],.prose .content-block img[src*='immunisations'],.prose .content-block img[src*='neuro_developmental'],.prose .content-block img[src*='nebulisation_spirometry']{max-height:100px;margin-left:0}.prose .content-block img[src*='logo']{max-height:150px}
@media(max-width:900px){.article-layout{gap:30px;grid-template-columns:minmax(0,1fr) 225px}#navigation{gap:12px}.service{min-height:650px}.service.wide{min-height:470px}.service h3{font-size:27px}.nav-group>div{width:270px}.header .brand span{font-size:16px}}
@media(max-width:760px){.article-layout{display:block;padding-top:35px}.article-aside{margin-top:45px}.page-banner{padding:30px 0 40px}.prose{font-size:16px}.footer-links{grid-template-columns:repeat(2,minmax(0,1fr))}.nav-group>div{position:static;width:100%;box-shadow:none;max-height:none;border:0;padding:0 12px}.nav-group summary{padding:12px 0}.nav-group{width:100%}#navigation{max-height:80vh;overflow:auto}.service,.service.wide{min-height:540px}.service.wide p{max-width:100%}.service.wide .service-art{width:100%;height:160px}.service .service-art{height:160px}.contact-form{padding:20px}.hero h1{font-size:44px}.about-copy h2{font-size:36px}.footer-brand h2{font-size:25px}}
.related-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.related-service-grid>a{padding:25px;border-radius:18px;background:var(--lavender);text-decoration:none!important}.related-service-grid>a:nth-child(even){background:var(--pale-peach)}.related-service-grid img{height:75px!important;width:75px;object-fit:contain;margin:0 0 20px!important}.related-service-grid h3{font-size:23px;margin:0}.prose h4{font-size:24px}.original-details details>ul{list-style:none;padding:0}.original-details details>ul>p{padding:20px;background:var(--pale-peach);border-radius:12px}.original-intro h2{margin-top:0}.original-intro p{margin-bottom:22px}.prose a:empty{display:none}.prose p:empty{display:none}@media(max-width:500px){.related-service-grid{grid-template-columns:1fr}}
.prose img[src*='best-paediatrician-in-durban-kwazulu-natal']{width:90px;max-height:90px;margin:0 0 24px}.about-copy h2:not(:first-child){font-size:27px;margin-top:20px}.prose .content-block>p>a:only-child{display:inline-block}.prose .content-block>p:has(>a:only-child){margin:14px 0}
@media(max-width:760px){.service,.service.wide{display:flex;flex-direction:column;min-height:0;padding:25px}.service p,.service.wide p{width:100%;max-width:none}.service .service-art,.service.wide .service-art{position:relative;inset:auto;display:block;width:160px;height:160px;min-height:160px;align-self:flex-end;margin:20px 0 5px}.service .explore{position:static;margin-top:10px}.service h3{max-width:100%}.service-art.art-three{clip-path:inset(0 7% 0 0)}}
/* Keep navigation visible without covering page content or anchor targets. */
:root{--nav-height:112px}body{padding-top:var(--nav-height)}html{scroll-padding-top:calc(var(--nav-height) + 24px)}.header.wrap{position:fixed;inset:0 0 auto;z-index:1000;width:100%;max-width:none;height:var(--nav-height);margin:0;padding-inline:max(48px,calc((100% - 1320px)/2));background:#fff;box-shadow:0 1px 0 var(--line)}.skip-link{z-index:1100}.nav-group>div{max-height:calc(100dvh - var(--nav-height) - 24px)}
@media(max-width:1180px){.header.wrap{padding-inline:28px}}
@media(max-width:640px){:root{--nav-height:94px}.header.wrap{padding-inline:18px}.header #navigation{top:var(--nav-height);left:18px;right:18px;max-height:calc(100dvh - var(--nav-height) - 16px);overflow:auto}.nav-group>div{max-height:none}}
/* Use one type scale for navigation links and dropdown triggers. */
.header #navigation>a,.header #navigation .nav-group,.header #navigation .nav-group summary,.header #navigation .nav-group>div a{font-family:var(--body);font-size:inherit;font-weight:500;line-height:1.5;letter-spacing:normal}.header #navigation .nav-group summary{gap:7px}.header #navigation .nav-group summary:hover{color:var(--accent)}
.practice-map{display:block;width:100%;height:320px;border:0;border-radius:12px;margin-top:28px;background:#f5f5f5}.practice{min-width:0}@media(max-width:640px){.practice-map{height:280px;margin-top:22px}}

/* Keep the longer homepage introduction balanced and readable. */
.hero h1{font-size:clamp(36px,5.1vw,72px);line-height:1.08;max-width:1120px;margin-inline:auto}
.hero-heading p{max-width:950px;margin:24px auto 0;font-size:clamp(16px,1.5vw,20px);line-height:1.7}
@media(max-width:640px){.hero h1{font-size:36px}.hero-heading p{text-align:left;margin-top:20px}}

/* Vector arrows keep the same appearance on iOS and desktop. */
.direction-arrow{display:inline-block;width:1em;height:1em;flex-shrink:0;vertical-align:-.12em;fill:none;stroke:currentColor}

.footer-review{display:flex;align-items:center;justify-content:space-between;gap:40px;padding-top:36px;padding-bottom:36px;border-top:1px solid #ffffff30}.footer-review-copy{max-width:640px;min-width:0}.footer-review-label{text-transform:uppercase;font-size:11px;letter-spacing:1.6px;color:#eee6f7}.footer-review h2{font-size:30px;line-height:1.3;margin:12px 0}.footer-review p{font-size:15px;line-height:1.7;color:#eee6f7;margin:0 0 20px}.footer-review-button{display:inline-flex;align-items:center;gap:20px;background:white;color:#594379;border-radius:7px;padding:12px 18px;font-size:14px;font-weight:600;border-bottom:3px solid #4285f4}.footer-review-button:hover{background:#f4f0f8}.footer-review-qr{flex:none;display:flex;flex-direction:column;align-items:center;padding:10px 10px 12px;border-radius:12px;background:#fff;color:#594379;gap:5px}.footer-review-qr img{display:block;width:160px;height:160px;max-width:none}.footer-review-qr span{font:500 12px/1.5 Arial,sans-serif}.footer-review a:focus-visible{outline:3px solid #d4c3ed;outline-offset:5px}.footer-review .visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}@media(max-width:600px){.footer-review{flex-direction:column;align-items:flex-start;gap:24px}.footer-review h2{font-size:26px}.footer-review-qr{align-self:center}}

.footer-review{position:relative;background:#fff;border:1px solid #e8eaed;border-radius:16px;padding:32px;margin-top:20px;margin-bottom:32px;overflow:hidden;color:#202124}.footer-review:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(to right,#4285f4 0 25%,#ea4335 25% 50%,#fbbc05 50% 75%,#34a853 75%)}.footer-review-label{color:#1a73e8}.footer-review h2{color:#202124}.footer-review p{color:#5f6368}.footer-review-button{color:#3c4043;border:1px solid #dadce0;border-radius:8px;gap:12px}.footer-review-button:hover{background:#f1f6ff;border-color:#4285f4}.footer-review-button svg{flex:none}.footer-review-qr{border:1px solid #e8eaed;color:#3c4043}.footer-review-qr>span{display:flex;align-items:center;gap:7px}.footer-review-qr>span svg{width:17px;height:17px}.footer-review a:focus-visible{outline-color:#4285f4}@media(max-width:600px){.footer-review{padding:26px 20px}}

.footer-review,.footer-review *{box-sizing:border-box}.footer-review{width:100%;max-width:1200px;margin-left:auto;margin-right:auto;font-family:Arial,sans-serif}.footer-review a{text-decoration:none}.footer-review svg{width:24px;height:24px}
.google-reviews{min-width:0;text-align:center}.google-reviews h2{font-size:clamp(34px,4vw,54px);margin:0 0 26px}.gr-ratings{display:flex;justify-content:center;gap:28px;flex-wrap:wrap}.gr-rating{display:grid;grid-template-columns:auto auto;gap:5px 14px;text-align:left;align-items:center;position:relative}.gr-rating>span:first-child{grid-column:1/-1;font-weight:600}.gr-rating strong{font-size:34px;line-height:1.2}.gr-rating>span:nth-last-child(2){grid-column:1/-1;font-size:14px;text-decoration:underline;text-underline-offset:4px}.gr-stars{position:relative;display:inline-block;width:110px;height:30px;font:24px/30px Arial,sans-serif;letter-spacing:2px;text-align:left;white-space:nowrap;vertical-align:middle}.gr-stars>span:first-child{color:#d5d7da}.gr-stars>span:last-child{color:#fbbc05;position:absolute;left:0;top:0;overflow:hidden}.gr-checked{font-size:12px;color:#65616c;margin:20px 0 30px}.gr-track{position:relative;display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding:5px 3px 18px;min-width:0;overscroll-behavior-x:contain}.gr-card{flex:0 0 calc((100% - 40px)/3);min-width:0;scroll-snap-align:start;background:#f6f5f8;border:1px solid #e7e3ed;border-radius:16px;text-align:left;padding:27px;display:flex;flex-direction:column}.gr-person{display:flex;gap:13px;align-items:center;margin-bottom:18px;min-width:0}.gr-initials{display:grid;place-items:center;flex:none;width:45px;height:45px;border-radius:50%;background:#e5def3;color:#49355c;font-weight:700}.gr-person h3{font:600 17px/1.35 var(--body);letter-spacing:0;overflow-wrap:anywhere;margin:0}.gr-person div>span{font-size:12px;color:#68626e}.gr-card .gr-stars{font-size:21px}.gr-summary-label{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:#6f6579;margin:15px 0 7px}.gr-text{font-size:16px;line-height:1.7;margin-bottom:24px}.gr-card>a{position:relative;margin-top:auto;font-size:13px;text-decoration:underline;text-underline-offset:4px}.gr-controls{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:18px}.gr-controls[hidden]{display:none}.gr-controls button{width:44px;height:44px;border:1px solid #d2c9de;border-radius:50%;background:#fff;color:#30263f;font-size:24px;cursor:pointer}.gr-controls button:disabled{opacity:.35;cursor:default}.gr-range{font-size:13px;min-width:110px}.gr-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.google-reviews a:focus-visible,.gr-track:focus-visible,.gr-controls button:focus-visible{outline:3px solid #8951bf;outline-offset:3px}.footer-review a{position:relative}.footer-review h2{font-family:var(--heading);letter-spacing:-.025em}.site-footer .footer-review p{font-size:15px}.footer-review svg{display:inline-block;width:24px;height:24px;max-width:24px;flex:none}.google-review-invitations{margin-bottom:45px}.footer-review-label{line-height:1.6}.footer-review-qr{position:relative}.footer-review-qr:after{content:'Opens in a new tab';font-size:10px;color:#70757a}
@media(max-width:1000px){.gr-card{flex-basis:calc((100% - 20px)/2)}}
@media(max-width:600px){.gr-card{flex-basis:100%;padding:24px}.gr-ratings{gap:25px}.gr-rating{font-size:13px}.gr-rating strong{font-size:30px}.gr-stars{width:100px;font-size:22px}.gr-checked{max-width:300px;margin:20px auto 25px}.footer-review-button{gap:9px;padding:12px;font-size:13px}.footer-review h2{font-size:28px}}
.gr-stars{width:max-content}.gr-stars>span:first-child{display:block}.gr-stars>span:last-child{height:100%}.footer-review-qr img{image-rendering:pixelated}

.parent-library{color:var(--ink);background:#fff}.parent-library .wrap{width:88%;max-width:1490px}.parent-resources{padding-top:56px;padding-bottom:60px}.parent-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:36px}.parent-library h2{font:600 64px/1.05 var(--heading);letter-spacing:-.035em;margin:0}.parent-all{display:inline-flex;align-items:center;gap:9px;font-size:18px;font-weight:500;border-bottom:1px solid currentColor;padding-bottom:6px}.parent-library svg{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.parent-all svg{width:19px;height:19px}.parent-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.parent-feature{display:flex;align-items:center;gap:35px;background:var(--lavender);padding:30px 38px;min-height:156px;border-radius:7px;min-width:0;transition:background .2s,transform .2s}.parent-feature:nth-child(2){background:var(--peach)}.parent-feature:hover{transform:translateY(-3px);background:#e0d9f1}.parent-feature:nth-child(2):hover{background:#eaa68f}.parent-feature-icon{width:64px;height:72px;stroke-width:2.5!important}.parent-feature h3{font:600 clamp(23px,2vw,32px)/1.15 var(--heading);letter-spacing:-.02em;margin:0 0 18px}.parent-read{display:flex;align-items:center;gap:16px;font-size:18px;text-decoration:underline;text-underline-offset:7px}.parent-read svg,.parent-topics svg{width:24px;height:24px}.parent-topics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:42px;margin-top:30px}.parent-topics a{display:flex;justify-content:space-between;align-items:center;gap:18px;min-width:0;min-height:70px;padding:16px 3px;border-bottom:1px solid #c8bfdc;font-size:18px;line-height:1.5}.parent-topics a:hover{color:var(--accent)}.parent-faq{background:var(--lavender);padding:56px 0 36px}.parent-faq-layout{display:grid;grid-template-columns:32% 1fr;gap:28px}.parent-faq-heading .parent-all{margin-top:28px}.parent-questions{min-width:0}.parent-questions details{border:0;border-bottom:1px solid #bcb0d5;border-radius:0;margin:0;padding:0}.parent-questions details:last-child{border-bottom:1px solid #bcb0d5}.parent-questions summary{display:flex;align-items:center;gap:35px;justify-content:space-between;list-style:none;padding:20px 0;min-height:80px;font:500 24px/1.45 var(--body);cursor:pointer}.parent-questions summary::-webkit-details-marker{display:none}.parent-questions summary>svg{width:36px;height:36px;stroke-width:1.5}.parent-questions details[open] .disclosure-plus{d:path('M10 16h12')}.parent-answer{max-width:840px;padding:0 60px 24px 0;font-size:17px;line-height:1.85}.parent-answer p{margin:0 0 18px}.parent-answer p:last-child{margin-bottom:0}.parent-answer ul,.parent-answer ol{padding-left:23px}.parent-answer a{text-decoration:underline;text-underline-offset:3px}.parent-library a:focus-visible,.parent-library summary:focus-visible{outline:3px solid #8951bf;outline-offset:5px}
@media(max-width:1200px){.parent-feature{padding:25px;gap:20px}.parent-feature-icon{width:50px}.parent-topics{column-gap:28px}.parent-topics a{font-size:16px}.parent-questions summary{font-size:20px}.parent-library h2{font-size:52px}}
@media(max-width:800px){.parent-library .wrap{width:calc(100% - 40px)}.parent-feature{gap:14px;padding:22px 18px}.parent-feature-icon{width:40px;height:58px}.parent-feature h3{font-size:22px}.parent-read{font-size:15px}.parent-topics{grid-template-columns:repeat(2,minmax(0,1fr))}.parent-faq-layout{grid-template-columns:1fr;gap:30px}.parent-faq-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.parent-faq-heading .parent-all{margin:0}.parent-answer{padding-right:10px}}
@media(max-width:600px){.parent-resources{padding-block:44px}.parent-heading{margin-bottom:25px}.parent-library h2{font-size:40px}.parent-all{font-size:14px;gap:6px;white-space:nowrap}.parent-features{grid-template-columns:1fr;gap:12px}.parent-feature{min-height:124px;padding:22px 28px;gap:25px}.parent-feature-icon{width:48px;height:60px}.parent-feature h3{font-size:28px;margin-bottom:12px}.parent-topics{grid-template-columns:1fr;margin-top:20px}.parent-topics a{font-size:16px;min-height:62px}.parent-faq{padding-block:40px}.parent-questions summary{font-size:18px;gap:20px;padding-block:20px;min-height:80px}.parent-questions summary>svg{width:30px;height:30px}.parent-answer{font-size:16px}.parent-faq-layout{gap:20px}}
@media(prefers-reduced-motion:reduce){.parent-feature{transition:none}.parent-feature:hover{transform:none}}

.parent-questions details[open] summary>span{transform:none}
.trusted-resources{padding-block:38px 48px;border-top:1px solid #ded7e7}.trusted-resources h2{font-size:30px;margin-bottom:10px}.trusted-resources>div>p{font-size:15px;color:#6a5f76}.trusted-resources ul{list-style:none;padding:0;margin:25px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.trusted-resources li{border-left:2px solid #d1c4e1;padding-left:18px}.trusted-resources li>a{display:flex;justify-content:space-between;gap:12px;font-size:17px;font-weight:600;line-height:1.5}.trusted-resources li>a:hover{text-decoration:underline;text-underline-offset:4px}.trusted-resources li>span{display:block;font-size:12px;color:#7a6789;margin-top:9px}.trusted-resources li>p{font-size:14px;line-height:1.7;margin-top:8px}@media(max-width:700px){.trusted-resources ul{grid-template-columns:1fr;gap:24px}.trusted-resources h2{font-size:27px}}

.site-footer.footer-v2{padding:0;background:#fff;color:var(--ink)}.footer-reviews-wrap{padding-top:35px;padding-bottom:20px}.foot-main{background:#fff}.foot-wrap{width:94%;max-width:1490px;margin:auto}.foot-main svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}.foot-brand-row{display:flex;justify-content:space-between;align-items:center;gap:36px;padding:60px 0 40px;border-bottom:1px solid #d4cbe0}.foot-brand{display:flex;align-items:center;gap:30px}.foot-brand img{width:116px;height:116px;object-fit:contain}.foot-brand h2{font:600 clamp(30px,3.7vw,56px)/1.1 var(--heading);letter-spacing:-.025em;margin:0 0 8px}.foot-brand>span>span{font-size:22px;letter-spacing:3px}.foot-social{display:flex;gap:26px}.foot-social a{width:66px;height:66px;display:grid;place-items:center;border:1.5px solid #84798e;border-radius:50%;transition:background .2s,transform .2s}.foot-social svg{width:32px;height:32px}.foot-social a:hover{background:var(--lavender);transform:translateY(-3px)}.foot-columns{display:grid;grid-template-columns:1.25fr .62fr 1fr 1.55fr;padding:42px 0 58px}.foot-columns>div,.foot-columns>nav{min-width:0;padding:0 26px;border-left:1px solid #d4cbe0}.foot-columns>:first-child{border:0;padding-left:0}.foot-columns>:last-child{padding-right:0}.foot-main h3{font:600 34px/1.2 var(--heading);margin:0 0 28px;letter-spacing:-.02em}.foot-group>div{display:flex;flex-direction:column;gap:20px}.foot-group a{font-size:17px;line-height:1.5}.foot-group a:hover,.foot-bottom a:hover{color:var(--accent);text-decoration:underline;text-underline-offset:4px}.foot-contact>a{display:flex;align-items:center;gap:18px;margin:0 0 28px;font-size:18px;min-width:0}.foot-contact>a:last-child{margin:0}.foot-contact>a>span:last-child{min-width:0}.foot-icon{display:grid;place-items:center;background:#fde6da;width:50px;height:50px;border-radius:50%;flex:none}.foot-label{display:block;font-size:14px;letter-spacing:.5px;margin-bottom:4px}.foot-value{font-weight:600;overflow-wrap:anywhere}.foot-contact>a:last-child .foot-value{font-size:15px;font-weight:400}.foot-contact a:hover .foot-icon{background:var(--peach)}.foot-resources>div{display:grid;grid-template-rows:repeat(6,auto);grid-auto-flow:column;grid-template-columns:1fr 1fr;gap:18px 26px}.foot-resources a{font-size:16px}.foot-locations{background:var(--lavender)}.foot-locations>.foot-wrap{display:grid;grid-template-columns:repeat(3,1fr);padding:25px 0}.foot-locations a{display:flex;align-items:center;justify-content:center;gap:18px;font-size:18px;min-height:44px;border-right:1px solid #c6b8d9}.foot-locations a:last-child{border:0}.foot-locations svg{color:#b66d55;width:30px;height:30px}.foot-locations a:hover{text-decoration:underline;text-underline-offset:4px}.foot-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #d4cbe0;margin-top:30px;padding:24px 0 28px}.site-footer .foot-bottom p{font-size:15px;margin:0}.foot-bottom>a{display:flex;align-items:center;gap:18px;min-height:44px;font-size:15px}.foot-main a:focus-visible{outline:3px solid #8951bf;outline-offset:5px}.foot-main a{border-radius:3px}
@media(max-width:1150px){.foot-columns{grid-template-columns:1.15fr .65fr 1fr;row-gap:40px}.foot-columns>.foot-resources{grid-column:1/-1;border:0;border-top:1px solid #d4cbe0;padding:30px 0 0}.foot-resources>div{grid-template-rows:repeat(3,auto);grid-template-columns:repeat(4,1fr)}.foot-brand>span>span{font-size:17px;letter-spacing:2px}.foot-social{gap:14px}.foot-social a{width:52px;height:52px}.foot-locations a{font-size:15px;gap:10px}.foot-wrap{width:90%}}
@media(max-width:700px){.foot-brand-row{align-items:flex-start;flex-direction:column;gap:25px;padding:35px 0}.foot-brand{gap:18px}.foot-brand img{width:76px;height:86px}.foot-brand h2{font-size:29px}.foot-brand>span>span{font-size:12px;letter-spacing:1px}.foot-social a{width:48px;height:48px}.foot-social svg{width:25px;height:25px}.foot-columns{grid-template-columns:1fr 1.25fr;gap:32px 18px;padding:32px 0}.foot-columns>.foot-contact{grid-column:1/-1;padding:0 0 8px;border:0}.foot-columns>nav{border:0;padding:0}.foot-main h3{font-size:28px;margin-bottom:20px}.foot-group a,.foot-resources a{font-size:15px}.foot-group>div{gap:17px}.foot-columns>.foot-resources{padding-top:25px;border-top:1px solid #d4cbe0}.foot-resources>div{grid-template-rows:repeat(6,auto);grid-template-columns:1fr 1fr;gap:17px 22px}.foot-contact>a{margin-bottom:20px;gap:15px}.foot-locations>.foot-wrap{grid-template-columns:1fr;padding:12px 0}.foot-locations a{justify-content:flex-start;border:0;border-bottom:1px solid #c6b8d9;padding:12px 0;font-size:16px}.foot-bottom{margin-top:18px;gap:20px;align-items:flex-start}.site-footer .foot-bottom p,.foot-bottom>a{font-size:12px}.foot-bottom>a{gap:8px;white-space:nowrap;min-height:24px}.foot-bottom svg{width:20px;height:20px}}
@media(prefers-reduced-motion:reduce){.foot-social a{transition:none}}
.foot-main .foot-social a{border-radius:50%}
@media(min-width:1151px){.foot-group a{font-size:20px}.foot-resources a{font-size:18px}.foot-contact>a{font-size:22px}.foot-label{font-size:16px}.foot-contact>a:last-child .foot-value{font-size:16px}}
/* Slightly quieter footer typography, preserving the existing hierarchy. */
.foot-brand h2{font-size:clamp(28px,3.3vw,48px)}
.foot-brand>span>span{font-size:18px}
.foot-main h3{font-size:29px}
.foot-group a{font-size:16px}
.foot-resources a{font-size:15px}
.foot-contact>a{font-size:17px}
.foot-label{font-size:13px}
.foot-contact>a:last-child .foot-value{font-size:14px}
.foot-locations a{font-size:16px}
@media(min-width:1151px){.foot-group a{font-size:18px}.foot-resources a{font-size:16px}.foot-contact>a{font-size:19px}.foot-label{font-size:14px}.foot-contact>a:last-child .foot-value{font-size:15px}}
@media(max-width:1150px){.foot-brand>span>span{font-size:15px}.foot-locations a{font-size:14px}}
@media(max-width:700px){.foot-brand h2{font-size:26px}.foot-brand>span>span{font-size:11px}.foot-main h3{font-size:25px}.foot-group a,.foot-resources a{font-size:14px}.foot-locations a{font-size:15px}}

/* Shared layout system: content dictates height, images stay with their labels. */
:root{--layout-line:#d4cbe0}.wrap{max-width:1240px;width:90%}.section{padding-top:64px;padding-bottom:64px}.page-banner{background:var(--lavender);padding:28px 0 34px;margin:0}.page-banner .wrap{display:block}.page-banner nav{display:flex;align-items:center;gap:10px;font:400 14px/1.5 var(--body);margin-bottom:12px}.page-banner nav a{text-decoration:none}.page-banner nav a:hover{text-decoration:underline}.page-banner h1{font:600 clamp(32px,3.6vw,50px)/1.13 var(--heading);letter-spacing:-.025em;max-width:1100px;margin:0;overflow-wrap:break-word}.article-page,.library-page,.services-page,.contact-page{padding-top:42px;padding-bottom:56px}.reading-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:54px;align-items:start}.reading-content{min-width:0;font:400 17px/1.8 var(--body);display:flow-root}.reading-content h2,.reading-content h3,.reading-content h4{font-family:var(--heading);line-height:1.25;letter-spacing:-.015em;margin:32px 0 14px;scroll-margin-top:140px;overflow-wrap:break-word}.reading-content h2{font-size:32px}.reading-content h3{font-size:26px}.reading-content h4{font-size:23px}.reading-content>.content-block:first-child h2{margin-top:0;font-size:36px}.reading-content>.content-block:nth-child(2) h2{font-size:26px}.reading-content .content-block{margin:0}.reading-content p{margin:0 0 20px}.reading-content ul,.reading-content ol{padding-left:23px;margin:0 0 24px}.reading-content li{padding-left:4px;margin:0 0 10px}.reading-content li::marker{color:#aa5943}.reading-content a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.reading-content .article-media{float:right;width:42%;margin:5px 0 24px 28px;clear:right}.reading-content .article-media img{display:block;width:100%;height:auto;max-height:330px;object-fit:contain;margin:0;border-radius:8px}.reading-content .article-media p{margin:0}.reading-content .article-media+ .content-block h3{margin-top:14px}.reading-content .article-service-icon{width:74px;height:74px;object-fit:contain;float:right;margin:0 0 15px 20px}.reading-content img{max-width:100%;height:auto;max-height:400px;object-fit:contain}.reading-content table{width:100%;border-collapse:collapse;font-size:15px;display:block;overflow-x:auto}.reading-content th,.reading-content td{padding:12px;border:1px solid var(--layout-line)}.reading-aside{position:sticky;top:136px;min-width:0}.article-toc{background:var(--lavender);padding:23px;border-radius:8px;max-height:52vh;overflow-y:auto}.reading-aside h2{font:600 23px/1.25 var(--heading);margin:0 0 18px}.article-toc a{display:block;padding:9px 0;border-bottom:1px solid #d4cbe0;font:400 14px/1.45 var(--body)}.article-toc a:last-child{border:0}.article-toc a:hover{color:var(--accent)}.reading-booking{background:var(--pale-peach);padding:24px;margin-top:20px;border-radius:8px}.reading-booking>a:not(.button){display:block;font-size:18px;margin-bottom:10px}.reading-booking .button{font-size:11px;padding:13px 15px;display:flex;justify-content:center;margin-top:20px;min-height:44px}.appointment-strip{clear:both;margin-top:38px;padding:25px 28px;background:var(--lavender);display:flex;align-items:center;justify-content:space-between;gap:24px;border-radius:8px}.appointment-strip p{font:500 23px/1.3 var(--heading);margin:0}.appointment-strip .button{flex:none;font-size:13px}.related-services{clear:both;margin-top:42px;border-top:1px solid var(--layout-line);padding-top:30px}.related-services>h2{font:600 30px/1.2 var(--heading);margin:0 0 20px}.related-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 26px}.related-links>a{display:flex;gap:15px;align-items:center;padding:18px 0;border-bottom:1px solid var(--layout-line);font-size:15px;line-height:1.4;min-width:0}.related-links img{width:50px;height:50px;object-fit:contain;flex:none}.related-links>a>span:last-child{margin-left:auto;color:var(--accent);font-size:22px}.related-links a:hover{color:var(--accent)}
.service-directory{display:block}.service-row{display:grid;grid-template-columns:85px minmax(180px,.9fr) minmax(0,1.8fr) 44px;gap:28px;align-items:center;border-bottom:1px solid var(--layout-line);padding:27px 0;min-height:130px}.service-row>img{width:75px;height:75px;object-fit:contain}.service-row h3{font:600 26px/1.2 var(--heading);margin:0;letter-spacing:-.015em}.service-row p{font:400 16px/1.65 var(--body);margin:0}.row-arrow{display:grid;place-items:center;background:var(--peach);width:44px;height:44px;border-radius:50%;font-size:25px}.service-row:hover .row-arrow{background:var(--ink);color:#fff}.service-row:hover h3{color:var(--accent)}.services .section-heading{margin-bottom:22px}.services .section-heading h2{max-width:850px;font-size:44px;line-height:1.15}.services-page>h2{font-size:28px;margin:0}.library-intro{font-size:18px;line-height:1.65;margin:0 0 28px}.library-intro p{margin:0}.resource-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 26px}.resource-entry{display:flex;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--layout-line);padding-bottom:17px;min-width:0}.resource-entry>img{width:100%;aspect-ratio:1.9;object-fit:cover;border-radius:5px;margin-bottom:16px}.resource-entry h2{font:600 23px/1.25 var(--heading);margin:0 0 12px}.resource-entry>span{font-size:14px;color:var(--accent);display:flex;gap:15px;margin-top:auto}.resource-entry:hover h2{text-decoration:underline;text-underline-offset:4px}.library-more{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:25px}.library-more a{padding:20px 0;border-bottom:1px solid var(--layout-line);display:flex;justify-content:space-between;gap:20px}.library-more a:hover{color:var(--accent)}
.contact-intro{font-size:18px;line-height:1.7;margin-bottom:30px}.contact-intro>p:first-child{font:600 28px/1.3 var(--heading);margin:0 0 18px}.contact-intro ul{list-style:none;padding:0;display:flex;gap:24px;flex-wrap:wrap;margin:8px 0}.contact-intro>ul:first-of-type{display:none}.contact-locations{display:grid;grid-template-columns:1fr 1fr;gap:36px}.contact-location{min-width:0}.contact-location h2{font:600 29px/1.25 var(--heading);margin:0 0 13px}.contact-location ul{list-style:none;padding:0;margin:0 0 20px;font-size:17px;line-height:1.7}.contact-location li{margin-bottom:8px}.contact-location h2:nth-of-type(2){font:500 14px var(--body);margin:10px 0}.contact-location iframe{width:100%;height:260px;border:0;border-radius:8px;display:block}.contact-location>p{margin:0}.contact-lower{display:grid;grid-template-columns:1.1fr 1fr;gap:50px;margin-top:40px}.contact-lower h2,.contact-hours h3{font:600 30px/1.2 var(--heading);margin:0 0 22px}.contact-form{padding:0;background:transparent;border-radius:0;display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.contact-form>label:nth-child(n+3),.contact-form>p{grid-column:1/-1}.contact-form label{font-size:14px;margin-bottom:15px}.contact-form input,.contact-form textarea{padding:12px;border-color:var(--layout-line);margin-top:6px}.contact-form textarea{min-height:110px}.contact-form>.button{justify-self:start}.contact-hours ul{list-style:none;padding:0;margin:0}.contact-hours li{padding:13px 16px;border-bottom:1px solid var(--layout-line);font-size:16px}.contact-hours li:nth-child(odd){background:var(--lavender)}.contact-hours table{width:100%;border-collapse:collapse}.contact-hours td,.contact-hours th{padding:12px;border-bottom:1px solid var(--layout-line);text-align:left}.reading-content details{border:0;border-bottom:1px solid var(--layout-line);padding:0;margin:0;border-radius:0}.reading-content summary{font:500 21px/1.4 var(--body);padding:22px 30px 22px 0;cursor:pointer;list-style:none;position:relative}.reading-content summary:after{content:'+';position:absolute;right:0;top:22px;font-size:24px}.reading-content details[open]>summary:after{content:'−'}.reading-content details[open] summary span{transform:none}.reading-content summary::-webkit-details-marker{display:none}.reading-content details>div,.reading-content details>p{padding:0 0 18px}.reading-content summary a{pointer-events:none;color:inherit;text-decoration:none}.faq-page .reading-content>.article-media{display:none}.biography-page .article-media{float:left;width:30%;margin:0 25px 20px 0}.biography-page .article-media img{max-height:280px;object-fit:cover;object-position:top}.biography-page .article-media+.article-media{float:right;margin:0 0 20px 15px}.notfound-page .reading-layout{display:block;max-width:760px;margin:auto}.notfound-page{text-align:center}.notfound-page>p>a{display:inline-block;padding:15px 25px;background:var(--ink);color:white;border-radius:6px}.original-intro{max-width:1000px}.original-intro h2{font-size:32px}.original-intro p{font-size:17px;line-height:1.8}.about.section{padding:64px 0}.original-details{max-width:1000px}.original-details details{padding:15px 0}.original-details summary{font-size:18px}.original-details details>ul>p{margin:12px 0}.site-footer.footer-v2{border-top:1px solid var(--layout-line)}.footer-reviews-wrap{padding-top:28px}.google-review-invitations{margin-bottom:0}.foot-brand-row{padding-top:35px}.page-banner a:focus-visible,.reading-aside a:focus-visible,.service-row:focus-visible,.resource-entry:focus-visible,.related-links a:focus-visible{outline:3px solid #8951bf;outline-offset:4px}
@media(max-width:1050px){.reading-layout{grid-template-columns:minmax(0,1fr) 235px;gap:30px}.article-toc{padding:18px}.reading-booking{padding:18px}.service-row{grid-template-columns:65px minmax(150px,.9fr) minmax(0,1.5fr) 40px;gap:18px}.service-row img{width:60px;height:60px}.service-row h3{font-size:23px}.service-row p{font-size:15px}.related-links{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-lower{gap:30px}.resource-entry h2{font-size:21px}.reading-content .article-media{width:45%}}
@media(max-width:760px){.wrap{width:90%}.section{padding-block:40px}.page-banner{padding:22px 0 26px}.page-banner h1{font-size:34px}.article-page,.library-page,.services-page,.contact-page{padding-top:28px;padding-bottom:36px}.reading-layout{display:flex;flex-direction:column;gap:28px}.reading-content{font-size:16px;line-height:1.8;width:100%}.reading-content h2,.reading-content>.content-block:first-child h2{font-size:28px}.reading-content h3{font-size:23px}.reading-content>.content-block:nth-child(2) h2{font-size:23px}.reading-content .article-media{float:none;width:100%;margin:18px 0}.reading-content .article-media img{max-height:290px;width:100%;object-fit:contain}.reading-aside{position:static;width:100%;display:grid;grid-template-columns:1fr;gap:18px}.article-toc{max-height:230px}.reading-booking{margin:0}.reading-booking .button{max-width:280px}.appointment-strip{margin-top:28px;flex-direction:column;align-items:flex-start;padding:23px}.appointment-strip p{font-size:22px}.related-services{margin-top:30px}.related-links{grid-template-columns:1fr}.related-links>a{min-height:76px}.related-links img{width:44px;height:44px}.service-row{grid-template-columns:58px 1fr 38px;gap:14px;padding:24px 0}.service-row h3{font-size:24px}.service-row>p{grid-column:2/4;font-size:15px;grid-row:2}.row-arrow{grid-column:3;grid-row:1;width:38px;height:38px}.service-row>img{width:55px;height:55px}.services .section-heading h2{font-size:32px}.services .section-heading{display:block}.services .section-heading p{margin-top:18px}.resource-directory{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 20px}.resource-entry h2{font-size:22px}.library-more{grid-template-columns:1fr;gap:0}.contact-locations,.contact-lower{grid-template-columns:1fr;gap:30px}.contact-intro>p:first-child{font-size:25px}.contact-intro ul{gap:12px 20px}.contact-location iframe{height:250px}.contact-location h2{font-size:26px}.contact-lower{margin-top:32px}.biography-page .article-media,.biography-page .article-media+.article-media{float:none;width:100%;margin:0 0 20px}.biography-page .article-media img{max-height:380px;object-fit:contain}.reading-content summary{font-size:19px}.original-intro h2{font-size:28px}.original-details details{margin-bottom:5px}}
@media(max-width:500px){.resource-directory{grid-template-columns:1fr}.resource-entry>img{aspect-ratio:1.75}.resource-entry h2{font-size:25px}.contact-form{grid-template-columns:1fr}.contact-form>label{grid-column:1}.service-row>p{grid-column:1/4}.reading-content .article-service-icon{width:58px;height:58px}.contact-intro ul{display:block}.contact-intro li{margin-bottom:9px}}
.article-faq-link{clear:both;padding:18px 0;border-top:1px solid var(--layout-line)}.article-faq-link a{font:500 22px/1.3 var(--heading)}
@media(min-width:1150px){.google-review-invitations{display:grid;grid-template-columns:1fr 1fr;gap:24px}.footer-review{margin:0;padding:24px;gap:20px;height:100%}.footer-review h2{font-size:25px}.footer-review-qr img{width:160px;height:160px}.footer-review-button{font-size:12px;padding:12px;gap:8px}.site-footer .footer-review p{font-size:14px}}
.biography-page .reading-layout{display:block}.biography-page .reading-content{display:grid;grid-template-columns:290px minmax(0,1fr);gap:40px}.biography-page .biography-gallery .article-media{float:none;width:100%;margin:0 0 22px}.biography-page .biography-gallery img{width:100%;max-height:360px;object-fit:contain;object-position:center}.biography-copy>:first-child h3{margin-top:0}.biography-copy h2{font-size:32px}.contact-location iframe{background:var(--lavender)}
@media(max-width:760px){.biography-page .reading-content{display:flex;flex-direction:column;gap:25px}.biography-gallery{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}.biography-page .biography-gallery .article-media{margin:0}.biography-page .biography-gallery img{height:220px;object-fit:contain}.biography-copy h2{font-size:27px}}
.reading-content summary{text-decoration:none}.reading-content summary p{margin:0}.reading-content summary>h2,.reading-content summary>h3{font:inherit;margin:0}.archive-page{padding:42px 0 56px;display:grid;grid-template-columns:1fr 1fr;gap:36px}.archive-entry{border-bottom:1px solid var(--layout-line);padding:0 0 26px}.archive-entry h2{font:600 30px/1.2 var(--heading);margin:0 0 20px}.archive-entry p{font-size:17px;line-height:1.8}.archive-read{display:inline-block;margin-top:15px;color:var(--accent);text-decoration:underline;text-underline-offset:4px}.reading-content>.article-service-icon+.content-block h2{margin-top:0}.biography-gallery{align-self:start}
@media(max-width:760px){.archive-page{grid-template-columns:1fr;padding:28px 0}.reading-content>.article-service-icon{float:none;width:55px;height:55px;margin:0 0 12px}.reading-content h2,.reading-content h3{overflow-wrap:normal;word-break:normal}.biography-page .biography-gallery img{object-position:top}}
.contact-intro li{display:flex;align-items:center;gap:10px}.contact-intro svg{width:23px;height:23px;fill:none;stroke:var(--ink);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}.contact-intro a:hover{text-decoration:underline;text-underline-offset:4px}.faq-page .reading-booking{margin-top:0}.reading-content details:focus-within{outline:2px solid #8951bf;outline-offset:3px}

.practice-page{padding-top:42px;padding-bottom:60px}.practice-overview{display:grid;grid-template-columns:1fr 1.3fr;gap:54px;align-items:stretch}.practice-eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:12px;font-weight:700;margin:0 0 12px}.practice-details h2{font-size:36px;margin:0 0 12px}.practice-building{font-weight:700;margin:0 0 10px}.practice-details address{font-style:normal;line-height:1.7;max-width:390px}.practice-directions{display:inline-block;margin:16px 0 24px;text-underline-offset:5px}.practice-booking{border-top:1px solid #ddd7e7;padding-top:20px;display:flex;flex-wrap:wrap;gap:12px}.practice-booking h3{font-size:20px;width:100%;margin:0 0 6px}.practice-booking .button{font-size:14px;padding:14px 18px}.practice-whatsapp{background:#ece9f8!important;color:#30263f!important}.practice-email{font-size:14px;overflow-wrap:anywhere;margin-top:4px}.practice-map-panel{background:#ece9f8;border-radius:18px;overflow:hidden;display:flex;flex-direction:column;min-height:420px}.practice-map-panel iframe{width:100%;min-height:360px;flex:1;border:0}.practice-map-panel>div{padding:18px 22px;display:flex;justify-content:space-between;gap:12px;font-size:14px}.practice-map-panel>div>span{font-weight:700}.practice-information{display:grid;grid-template-columns:1fr 1.3fr;gap:54px;margin-top:48px;border-top:1px solid #ddd7e7;padding-top:32px}.practice-information h2,.practice-next h2{font-size:28px;margin:0 0 20px}.practice-opening dl{margin:0}.practice-opening dl>div{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #e8e3ed;font-size:15px}.practice-opening dd{margin:0;white-space:nowrap}.practice-services a{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #e8e3ed;text-decoration:none;font-size:15px}.practice-next{display:grid;grid-template-columns:1fr 1.3fr;gap:54px;margin-top:42px;padding:30px;background:#fcf0e8;border-radius:18px}.practice-next h2{margin-bottom:10px}.practice-next p{margin:0 0 12px}.practice-next a{display:inline-block;margin:4px 22px 0 0;text-underline-offset:5px}.practice-page a:hover{color:#77546b}.practice-page a.button:hover{color:white}.practice-page-link{display:inline-block;margin:16px 0;font-weight:600;text-underline-offset:5px}@media(max-width:850px){.practice-overview,.practice-information{gap:28px;grid-template-columns:1fr}.practice-next{grid-template-columns:1fr;gap:28px}.practice-map-panel{min-height:360px}.practice-map-panel iframe{min-height:310px}.practice-page{padding-top:28px}.practice-details h2{font-size:30px}.practice-information{margin-top:30px}.practice-opening dl>div{font-size:14px}}@media(max-width:400px){.practice-map-panel>div{padding:16px;font-size:12px}.practice-next{padding:22px}.practice-opening dl>div{gap:8px;font-size:13px}}

.hours-panel{background:#f3f0f8;border:1px solid #e4ddec;border-radius:20px;overflow:hidden;color:#30263f;margin:28px 0 0;line-height:1.5;min-width:0}.hours-heading{display:flex;align-items:center;gap:16px;padding:28px 30px 24px}.hours-clock{width:54px;height:54px;border-radius:50%;background:#e2dbef;display:grid;place-items:center;flex-shrink:0}.hours-clock svg{width:29px;height:29px}.hours-panel .hours-heading h2{font:600 30px/1.15 var(--heading);margin:0 0 5px}.hours-heading p{font:400 14px/1.5 var(--body);margin:0;color:#6f647c}.hours-panel .hours-schedule{margin:0;padding:0 30px;display:grid;grid-template-columns:1fr 1fr;gap:14px}.hours-panel .hours-schedule>div{display:block;border:0;padding:20px;background:#fff;border-radius:12px}.hours-schedule dt{font-size:14px;font-weight:600;margin-bottom:12px}.hours-panel .hours-schedule dd{margin:0;white-space:nowrap;font:500 26px/1.3 var(--heading);font-variant-numeric:tabular-nums}.hours-schedule dd span{font:500 12px var(--body)}.hours-schedule dd b{font:400 20px var(--body);margin:0 9px;color:#9a8ba8}.hours-panel .hours-schedule .hours-weekend{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;background:transparent;padding:10px 2px 18px;border-bottom:1px solid #ddd5e6;border-radius:0}.hours-weekend dt{margin:0}.hours-panel .hours-weekend dd{font:600 12px var(--body);letter-spacing:.03em;background:#e4deec;padding:7px 14px;border-radius:30px}.hours-note{padding:20px 30px 26px;display:grid;grid-template-columns:22px 1fr;gap:4px 8px;align-items:start}.hours-note>span{color:#8a5e73;font-size:21px}.hours-panel .hours-note p{font-size:14px;line-height:1.6;margin:0}.hours-note a{grid-column:2;font-size:13px;font-weight:600;margin-top:7px;text-underline-offset:4px}.contact-hours .hours-panel,.practice-opening .hours-panel{margin-top:0}.contact-hours .hours-schedule,.practice-opening .hours-schedule{grid-template-columns:1fr}.contact-hours .hours-schedule>div:not(.hours-weekend),.practice-opening .hours-schedule>div:not(.hours-weekend){display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px}.contact-hours .hours-schedule dt,.practice-opening .hours-schedule dt{margin:0}.contact-hours .hours-schedule dd,.practice-opening .hours-schedule dd{font-size:22px}.hours-panel a:focus-visible{outline:3px solid #8557a3;outline-offset:5px}@media(max-width:600px){.hours-heading{padding:24px 20px 20px}.hours-panel .hours-heading h2{font-size:26px}.hours-panel .hours-schedule{padding:0 20px;grid-template-columns:1fr;gap:10px}.hours-panel .hours-schedule>div:not(.hours-weekend){display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px}.hours-schedule dt{font-size:13px;margin:0}.hours-panel .hours-schedule dd{font-size:22px}.hours-schedule dd b{margin:0 5px}.hours-note{padding:18px 20px 24px}.hours-panel .hours-weekend dd{font-size:12px}.hours-clock{width:46px;height:46px}}@media(max-width:380px){.hours-panel .hours-schedule>div:not(.hours-weekend){display:block}.hours-panel .hours-schedule dt{margin-bottom:6px}}

/* No CSS-hidden initial state: blocked/missing scripts leave all content visible.
   gsap.fromTo establishes and animates each initial state synchronously. */
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .service-row .row-arrow,.resource-entry>span{transition:transform .2s ease}
 .service-row:hover .row-arrow{transform:translate(3px,-3px)}
 .resource-entry:hover>span{transform:translateX(3px)}
}
@media (hover:none),(pointer:coarse){.button:hover,.foot-social a:hover{transform:none}}
@media (prefers-reduced-motion:reduce){
 html{scroll-behavior:auto!important}
 *,*::before,*::after{animation:none!important;transition:none!important}
 .button:hover,.foot-social a:hover{transform:none!important}
}

.care-guide{display:grid;grid-template-columns:.85fr 1.4fr;gap:70px;padding-block:64px;border-top:1px solid #e0d9e8}.care-guide-intro h2{font-size:clamp(30px,3vw,44px);line-height:1.12;max-width:350px;margin:22px 0 18px}.care-guide-intro p{font-size:16px;line-height:1.7;max-width:340px;margin:0 0 20px;color:#655a70}.care-guide-intro>p:last-child{font-size:13px;margin-top:28px;color:#786d82}.guide-book{display:grid;place-items:center;width:58px;height:58px;border-radius:16px;background:#ece9f8;color:#645374}.guide-book svg{width:32px;height:32px}.care-guide-intro>a{font-size:14px;font-weight:600;text-decoration:underline;text-underline-offset:5px}.care-guide-chapters{border-top:1px solid #d8d0e2}.guide-chapter{border-bottom:1px solid #d8d0e2}.guide-chapter>summary{font:500 17px/1.5 var(--body);display:flex;gap:20px;padding:21px 0;list-style:none;align-items:center;justify-content:space-between}.guide-chapter>summary>span:first-child{font:inherit;transform:none}.editorial-plus{position:relative;width:24px;height:24px;flex:0 0 24px;border-radius:50%;background:#ece9f8;transform:none!important}.editorial-plus:before,.editorial-plus:after{content:'';position:absolute;width:10px;height:1.5px;background:#59486d;left:7px;top:11px}.editorial-plus:after{transform:rotate(90deg)}details[open]>summary .editorial-plus:after{transform:none}.guide-chapter-copy{padding:0 0 22px;font-size:16px;line-height:1.8}.guide-chapter-copy p{margin:0 0 16px}.guide-chapter-copy p:has(>u){font-weight:600}.guide-chapter-copy u{text-decoration:none}.heritage-reviews{margin-top:28px;border-top:1px solid #d8d0e2;padding-top:8px}.heritage-reviews>details>summary{display:flex;justify-content:space-between;gap:20px;padding:22px 0;list-style:none}.heritage-reviews>details>summary>span:first-child{transform:none;font:inherit}.heritage-reviews strong{display:block;font:600 25px/1.2 var(--heading)}.heritage-reviews small{display:block;font:400 13px/1.6 var(--body);color:#766b80;margin-top:7px}.heritage-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:0 0 24px}.heritage-quote{margin:0;padding:26px;background:#f5f2f9;border-radius:14px;border-top:3px solid #c7b7d9}.heritage-quote blockquote{margin:0;font-size:15px;line-height:1.8}.heritage-quote figcaption{margin-top:20px;padding-top:14px;border-top:1px solid #e0d9e8;font-size:13px;line-height:1.7;color:#665a72}.heritage-quote figcaption p:empty{display:none}.original-details{padding-top:20px!important}.care-guide summary:hover,.heritage-reviews summary:hover{color:#8c573f}.care-guide summary:focus-visible,.heritage-reviews summary:focus-visible{outline:3px solid #8951bf;outline-offset:4px}@media(max-width:760px){.care-guide{grid-template-columns:1fr;gap:26px;padding-block:40px}.care-guide-intro h2{max-width:none}.care-guide-intro>p:last-child{margin:18px 0 0}.heritage-grid{grid-template-columns:1fr}.guide-chapter>summary{font-size:15px;padding:18px 0}.heritage-reviews strong{font-size:23px}}
.heritage-reviews{text-align:left}.heritage-quote blockquote p{font-size:15px;line-height:1.8}.heritage-quote figcaption{font-weight:500}
