/* Service navigation and patient-facing service pages. */
.nav-services{position:relative;display:flex;align-items:center;gap:2px}.nav-services>a{padding:15px 0;font-size:15px;font-weight:600;position:relative}.nav-services>a[aria-current]:after{content:'';position:absolute;left:0;bottom:3px;width:22px;height:2px;background:var(--red)}.services-menu-toggle{background:transparent;min-width:30px;min-height:44px;color:var(--navy);font-size:18px}.services-menu{position:absolute;top:100%;left:0;min-width:320px;width:340px;max-width:calc(100vw - 40px);background:#fff;border:1px solid var(--line);box-shadow:0 18px 36px #14224b20;z-index:40;padding:8px}.services-menu[hidden]{display:none!important}.site-header nav .services-menu a{display:block;padding:14px 15px;border-bottom:1px solid var(--line);font-size:16px;line-height:1.5;color:var(--navy);white-space:normal}.site-header nav .services-menu a:last-child{border-bottom:0;font-weight:700;color:var(--blue)}.site-header nav .services-menu a:hover,.site-header nav .services-menu a:focus-visible{background:var(--soft)}
.service-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:34px}.service-card{border:1px solid var(--line);background:#fff;min-width:0;display:flex;flex-direction:column}.service-card-image{height:230px;background:#f0f2f7;overflow:hidden}.service-card-image img{display:block;width:100%;height:100%;object-fit:cover}.service-card-image.contain img{object-fit:contain}.service-card-copy{padding:26px;display:flex;flex-direction:column;flex:1}.service-card-copy h3{font-size:24px;line-height:1.3;margin-bottom:14px}.service-card-copy p{font-size:18px;line-height:1.6;color:#505b70;margin-bottom:24px}.service-card-copy .text-link{margin-top:auto;font-size:17px}.service-card-copy h3 a:hover{color:var(--blue)}.services-home{background:#f5f6fa}.services-home .section-heading>div:last-child p{max-width:440px}.services-home .section-heading .text-link{font-size:18px}.services-introduction .lead{max-width:850px}.service-related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin-top:28px}.service-related-grid a{display:block;border:1px solid var(--line);padding:24px;font-weight:700;font-size:20px;color:var(--blue)}.service-related-grid a:hover{background:var(--soft)}.service-related-grid small{display:block;font-size:16px;font-weight:400;color:#505b70;margin-top:10px}
.service-detail-hero .interior-hero-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:50px;align-items:center}.service-detail-photo{margin:0}.service-detail-photo img{width:100%;height:340px;object-fit:cover;display:block;border-radius:4px}.service-detail-photo.contain img{object-fit:contain;background:#eff1f6}.service-detail-photo figcaption{font-size:14px;color:#505b70;margin-top:9px}.service-detail-hero h1{font-size:clamp(36px,4vw,54px)}.service-detail-actions{display:flex;gap:18px;flex-wrap:wrap;margin-top:24px}.service-detail-actions .button{white-space:normal}.service-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;margin-top:30px}.service-detail-grid article{padding:26px;background:var(--soft)}.service-detail-grid h3{font-size:23px}.service-detail-grid p{font-size:18px;color:#505b70;margin-bottom:0}.service-visit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}.service-visit-grid h2{font-size:29px}.service-visit-grid p{font-size:18px;line-height:1.7}.service-notice{border-left:4px solid var(--blue);padding:20px 24px;background:var(--soft);margin-top:36px}.service-notice p{font-size:18px;margin:0;color:#414958}.service-contact-strip{display:flex;justify-content:space-between;align-items:center;gap:24px;border-top:1px solid var(--line);padding-top:26px;margin-top:36px}.service-contact-strip p{font-size:18px;margin:0}.service-contact-strip a{flex-shrink:0}
@media(min-width:1051px) and (max-width:1450px){.site-header nav{gap:12px}.header-inner{gap:16px}}
@media(max-width:1050px){.nav-services{display:flex;flex-wrap:wrap;border-bottom:1px solid var(--line)}.nav-services>a{flex:1;font-size:18px}.services-menu-toggle{margin-left:auto;width:44px}.services-menu{position:static;width:100%;max-width:none;min-width:0;box-shadow:none;border:0;border-top:1px solid var(--line);padding:0 0 8px;max-height:45vh;overflow:auto;flex-basis:100%}.service-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.service-detail-hero .interior-hero-grid{gap:30px}.service-detail-photo img{height:300px}.service-detail-grid{grid-template-columns:1fr}.service-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.service-card-grid{grid-template-columns:1fr}.service-card-image{height:240px}.service-card-copy{padding:24px}.service-detail-hero .interior-hero-grid{grid-template-columns:1fr;gap:26px}.service-detail-photo img{height:280px}.service-detail-hero h1{font-size:36px}.service-detail-actions{gap:12px}.service-detail-actions .button{width:100%;justify-content:center}.service-visit-grid{grid-template-columns:1fr;gap:24px}.service-contact-strip{align-items:flex-start;flex-direction:column}.service-related-grid{grid-template-columns:1fr}.service-card-copy p,.service-detail-grid p,.service-visit-grid p,.service-notice p{font-size:17px}}
@media(min-width:1051px) and (max-width:1280px){.site-header #main-navigation{display:none;position:absolute;left:0;right:0;top:104px;flex-direction:column;align-items:stretch;gap:0;margin-left:0;background:white;padding:18px 25px 25px;border-top:1px solid var(--line);box-shadow:0 20px 35px #14224b14;max-height:calc(100dvh - 110px);overflow:auto}.site-header #main-navigation.open{display:flex}.site-header .mobile-toggle{display:inline-flex!important}.site-header .mobile-contact{display:block!important}.site-header #main-navigation>a{padding:14px 0;border-bottom:1px solid var(--line)}.site-header .nav-departments{justify-content:space-between;border-bottom:1px solid var(--line)}.site-header .nav-services{flex-wrap:wrap;border-bottom:1px solid var(--line)}.site-header .nav-services>a{flex:1}.site-header .services-menu{position:static;width:100%;max-width:none;min-width:0;box-shadow:none;border:0;border-top:1px solid var(--line);padding:0 0 8px;max-height:45vh;overflow:auto;flex-basis:100%}.site-header .services-menu-toggle{width:44px}}
