
/* Rehabilitation service pages and shared nested navigation. */
[hidden]{display:none!important}
html{scroll-padding-top:119px}


.rehab-service-page .site-header{top:0}
.rehab-service-page .site-header .header-inner{min-height:88px}
.nav-dropdown>.nav-subgroup{position:relative;border-top:1px solid #ffffff20}
.nav-subgroup>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;min-height:49px;padding:12px 14px;font-size:.94rem;line-height:1.5;cursor:pointer;border-radius:5px}
.nav-subgroup>summary::-webkit-details-marker{display:none}
.nav-subgroup>summary:after{content:'';width:7px;height:7px;border-right:1.5px solid #8bd8c5;border-bottom:1.5px solid #8bd8c5;transform:rotate(-45deg);margin-right:2px}
.nav-subgroup[open]>summary,.nav-subgroup>summary:hover{background:var(--teal)}
.rehab-submenu{position:absolute;top:-3px;left:calc(100% + 8px);width:280px;padding:8px;background:var(--deep);border:1px solid #8bd8c533;border-top:3px solid #8bd8c5;border-radius:7px;box-shadow:0 12px 28px #143d4e30}
.nav-subgroup:not([open])>.rehab-submenu{display:none}
@media(min-width:1121px) and (hover:hover) and (pointer:fine){.nav-subgroup[open]::after{content:'';position:absolute;top:0;left:100%;width:8px;height:100%}}
.rehab-submenu a{border-top:0!important}
.rehab-submenu a[aria-current=page]{background:#26766b;color:white}
.service-hero{padding:146px 0 49px;background:#edf5f2;border-bottom:1px solid #dbe8e3}
.service-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}
.service-hero h1{font-size:clamp(2.8rem,4.4vw,3.7rem);max-width:590px;line-height:1.09;letter-spacing:-.035em}
.service-hero .eyebrow{font-size:.78rem;margin-bottom:17px;letter-spacing:.13em}
.service-tagline{font:400 1.45rem/1.4 var(--serif);color:var(--teal);margin-top:22px;max-width:490px}
.service-hero-intro>p:first-child{font-size:1.05rem;line-height:1.8;max-width:570px}
.service-hero-actions{display:flex;align-items:center;gap:24px;margin-top:24px}
.service-direct{font-size:.83rem;line-height:1.55;color:var(--muted);max-width:155px}
.service-tabs{border-bottom:1px solid var(--line);background:#fff}
.service-tabs .container{display:flex;align-items:center;gap:38px;overflow:auto;scrollbar-width:thin}
.service-tabs a{flex-shrink:0;display:block;padding:20px 0 17px;color:var(--muted);font-size:.92rem;font-weight:600;text-decoration:none;border-bottom:3px solid transparent}
.service-tabs a[aria-current=page]{color:var(--teal);border-bottom-color:var(--teal)}
.service-tabs a:hover{color:var(--teal)}
.service-content{padding:58px 0 64px}
.service-content-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);gap:78px;align-items:start}
.service-content h2{font-size:2.15rem;margin-bottom:12px}
.service-section-note{font-size:.96rem;color:var(--muted);margin-bottom:26px;max-width:580px}
.service-list{border-top:1px solid var(--line)}
.service-detail{border-bottom:1px solid var(--line);scroll-margin-top:109px}
.service-detail>summary{display:block;list-style:none;position:relative;cursor:pointer;padding:22px 44px 22px 0}
.service-detail>summary::-webkit-details-marker{display:none}
.service-detail>summary:after{content:'+';position:absolute;right:4px;top:20px;font:400 1.7rem/1 var(--sans);color:var(--teal)}
.service-detail[open]>summary:after{content:'−'}
.service-detail>summary:hover .service-detail-title{color:var(--teal)}
.service-detail-title{display:block;font:400 1.4rem/1.25 var(--serif);color:var(--blue)}
.service-detail-short{display:block;margin-top:8px;font-size:.925rem;line-height:1.6;color:var(--muted)}
.service-detail-content{padding:0 28px 24px 0;font-size:.96rem;line-height:1.8}
.service-detail-content p{margin-bottom:14px}
.service-text-link{color:var(--teal);font-size:.9rem;font-weight:650;text-decoration:underline;text-underline-offset:4px}
.service-text-link:hover{color:var(--deep)}
.service-team{border-left:1px solid var(--line);padding-left:34px}
.service-team h2{font-size:1.8rem;line-height:1.25;margin-top:2px}
.service-team-intro{font-size:.9rem;line-height:1.7;color:var(--muted);margin:10px 0 21px}
.service-provider-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 19px}
.service-provider-grid.single{grid-template-columns:1fr;max-width:310px}
.provider-photo-link{display:block;position:relative;background:var(--pale);overflow:hidden;border-radius:3px;text-decoration:none}
.provider-photo-link img{width:100%;aspect-ratio:4/4.7;object-fit:cover;object-position:center 30%;transition:transform .18s}
a.provider-photo-link:hover img{transform:scale(1.035)}
.single .provider-photo-link img{aspect-ratio:4/4.3;object-position:center 25%}

.provider-name{font:400 1.23rem/1.3 var(--serif);color:var(--blue);margin-top:12px}
.single .provider-name{font-size:1.65rem;margin-top:17px}
.provider-name a{text-decoration:none}
.provider-name a:hover{text-decoration:underline;text-underline-offset:4px}
.provider-credentials{font-size:.74rem;line-height:1.5;color:var(--muted);margin-top:4px}
.provider-focus{font-size:.8rem;line-height:1.5;margin-top:7px;color:var(--ink)}
.provider-booking{display:inline-block;font-size:.78rem;line-height:1.5;margin-top:10px;color:var(--teal);font-weight:600;text-underline-offset:3px}

.service-team-footnote{font-size:.82rem;line-height:1.7;color:var(--muted);margin-top:26px}
.service-team-footnote a{color:var(--teal);text-underline-offset:3px}
.service-start{padding:36px 0;background:#f1f6f8;border-block:1px solid var(--line)}
.service-start .container{display:flex;align-items:center;justify-content:space-between;gap:40px}
.service-start h2{font-size:1.95rem;margin-bottom:8px}
.service-start p{font-size:.95rem;color:var(--muted);max-width:730px}
.service-start a{color:var(--teal);text-underline-offset:3px}
.service-start .button{flex-shrink:0;color:white}
.footer-grid{grid-template-columns:minmax(280px,1fr) 210px 140px 140px}
.footer-grid nav a{line-height:1.85}

@media(max-width:1180px){.service-hero-grid{gap:42px}.service-content-grid{gap:40px}.service-team{padding-left:25px}.main-navigation{gap:20px}.service-hero h1{font-size:3.2rem}.footer-grid{grid-template-columns:minmax(250px,1fr) 200px 125px 125px}}
@media(max-width:1120px){.rehab-submenu{position:static;width:auto;box-shadow:none;margin:2px 0 7px 14px;border:0;border-left:1px solid #83b3a7;padding:1px 4px 1px 9px;background:transparent;color:var(--blue)}.nav-subgroup>summary{color:var(--blue)}.nav-subgroup>summary:after{border-color:var(--teal);transform:rotate(45deg)}.nav-subgroup[open]>summary,.nav-subgroup>summary:hover{background:#e9f4ef}.rehab-submenu a{color:var(--blue)!important;padding:11px 12px}.rehab-submenu a[aria-current=page]{background:#e2eee9}.service-hero{padding-top:136px}}
@media(max-width:850px){.service-hero-grid{grid-template-columns:1fr;gap:25px}.service-hero-intro>p:first-child{max-width:700px}.service-content-grid{gap:35px;grid-template-columns:minmax(0,1.25fr) minmax(250px,1fr)}.service-provider-grid{gap:23px 14px}.provider-name{font-size:1.07rem}.service-content h2{font-size:1.9rem}.service-team h2{font-size:1.6rem}.footer-grid{grid-template-columns:1fr 1fr;gap:32px 40px}.service-hero{padding-bottom:35px}}
@media(max-width:650px){.container{width:calc(100% - 40px)}.rehab-service-page .site-header .header-inner{min-height:80px}.service-hero{padding:114px 0 33px}.service-hero h1{font-size:2.7rem}.service-tagline{font-size:1.32rem;margin-top:17px}.service-hero-intro>p:first-child{font-size:1rem}.service-hero-actions{gap:19px}.service-direct{font-size:.78rem}.service-tabs .container{gap:25px}.service-tabs a{font-size:.82rem;padding-block:17px 14px}.service-content{padding:34px 0 38px}.service-content-grid{grid-template-columns:1fr;gap:37px}.service-content h2{font-size:2rem}.service-team{border-left:0;border-top:1px solid var(--line);padding:29px 0 0}.service-provider-grid{gap:27px 23px}.provider-name{font-size:1.35rem}.provider-credentials{font-size:.8rem}.provider-focus{font-size:.9rem}.provider-booking{font-size:.85rem}.single .provider-photo-link img{aspect-ratio:4/4.7}.service-provider-grid.single{max-width:320px}.service-team h2{font-size:1.8rem}.service-detail-title{font-size:1.3rem}.service-detail-short{font-size:.9rem}.service-start .container{flex-direction:column;align-items:flex-start;gap:21px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px 20px}.footer-brand{grid-column:1/-1}.footer-grid nav h3{font-size:.94rem}.service-team-intro{font-size:.96rem}.service-team-footnote{margin-top:22px}}
@media(prefers-reduced-motion:reduce){.provider-photo-link img{transition:none}html{scroll-behavior:auto}}

.service-link-arrow{display:inline-block;width:13px;height:13px;vertical-align:-1px;margin-left:4px}

@media(max-width:1120px){.rehab-submenu{color:#f5fbfa}.rehab-submenu a{color:#f5fbfa!important}.rehab-submenu a[aria-current=page]{color:var(--blue)!important}.nav-subgroup>summary{color:#f5fbfa}.nav-subgroup[open]>summary,.nav-subgroup>summary:hover{color:var(--blue)}.rehab-service-page .main-navigation{max-height:calc(100svh - 88px);overflow-y:auto}}
@media(max-width:650px){.service-hero-actions{flex-direction:column;align-items:flex-start;gap:12px}.service-hero-actions .button{white-space:nowrap}.service-direct{max-width:none;font-size:.82rem}}

a.provider-photo-link:hover img.erin-portrait{transform:scale(1.22)}

/* Teal opening text introduces the services. */
.service-introduction{margin:0 0 34px;font:400 1.08rem/1.75 var(--sans);color:var(--ink)}
.service-introduction-opening{display:block;margin-bottom:12px;font-size:1.4rem;font-weight:600;line-height:1.4;letter-spacing:-.015em;color:var(--teal)}
@media(max-width:650px){.service-introduction{margin-bottom:28px;font-size:1rem}.service-introduction-opening{font-size:1.28rem}}
