/* Approved clinic presentation adapted to source-bound service and area variants. */
body[data-nm-location-template] .nm-loc-hero { width:min(1180px,calc(100% - 48px));margin:48px auto;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,1fr);gap:48px;align-items:start;color:#1e3565; }
body[data-nm-location-template] .nm-loc-summary h1 { font:400 clamp(34px,4.2vw,56px)/1.08 "Tiempos Fine",Georgia,serif;letter-spacing:-.025em;margin:0 0 24px;text-wrap:balance;overflow-wrap:break-word; }
body[data-nm-location-template] .nm-loc-summary>p { font:400 18px/1.6 "TodaySansNow Pro",Arial,sans-serif;margin:0 0 24px;max-width:680px; }
body[data-nm-location-template] .nm-loc-summary>a { display:inline-flex!important;position:static!important;align-items:center;justify-content:center;min-height:48px;padding:14px 24px;border-radius:28px;background:#9acf8c!important;color:#1e3565!important;font:700 18px/1.3 "TodaySansNow Pro",Arial,sans-serif;text-decoration:none; }
body[data-nm-location-template] .nm-loc-details { padding:28px;background:#f2f7f8;border:1px solid #d7e2e8;border-radius:14px;font:400 17px/1.55 "TodaySansNow Pro",Arial,sans-serif; }
body[data-nm-location-template] .nm-loc-details :is(p,a,details) { margin:0 0 16px;color:#1e3565;font:inherit; }
body[data-nm-location-template] .nm-loc-details>a { display:block;min-height:40px;text-decoration:underline;text-underline-offset:3px; }
body[data-nm-location-template] .nm-loc-details .nm-clinic-hours { display:block; }
body[data-nm-location-template] .nm-loc-format { font-weight:700!important; }
body[data-nm-location-template] .nm-loc-content,body[data-nm-location-template] .nm-loc-related { width:min(1180px,calc(100% - 48px));margin:56px auto;color:#1e3565;box-sizing:border-box; }
body[data-nm-location-template] .nm-loc-content :is(h2,h3),body[data-nm-location-template] .nm-loc-related :is(h2,h3) { color:#1e3565;font-family:"Tiempos Fine",Georgia,serif;font-weight:400;line-height:1.2;letter-spacing:-.015em; }
body[data-nm-location-template] .nm-loc-content h2 { font-size:clamp(28px,3vw,40px);margin:0 0 20px; }
body[data-nm-location-template] .nm-loc-content h3 { font-size:26px;margin:24px 0 12px; }
body[data-nm-location-template] .nm-loc-content :is(p,li,td,th),body[data-nm-location-template] .nm-loc-related :is(p,li) { font:400 17px/1.65 "TodaySansNow Pro",Arial,sans-serif;max-width:100%; }
body[data-nm-location-template] .nm-loc-content a,body[data-nm-location-template] .nm-loc-related a { color:#1e3565;text-decoration:underline;text-underline-offset:3px; }
body[data-nm-location-template] .nm-loc-content>section { padding:24px 0;border-bottom:1px solid #d7e2e8; }
body[data-nm-location-template] .nm-loc-related>* { max-width:100%;width:auto;margin:24px 0;box-sizing:border-box; }
body[data-nm-location-template] .nm-loc-content table { display:block;max-width:100%;overflow:auto; }
body[data-nm-location-template] .nm-loc-content summary { cursor:pointer;padding-block:18px;min-height:44px; }
body[data-nm-location-template] .nm-loc-content summary h2 { display:inline;font-size:clamp(23px,2.4vw,32px); }
body[data-nm-location-template] :is(a,button,summary,input):focus-visible { outline:3px solid #39727d;outline-offset:4px; }
body[data-nm-location-template] .nm-loc-content .nm-loc-accordion { border-bottom:1px solid #d7e2e8;padding:0; }
body[data-nm-location-template] .nm-loc-accordion>div { padding:0 0 24px;max-width:900px; }
@media(max-width:760px){
 body[data-nm-location-template] .nm-loc-hero { width:calc(100% - 32px);grid-template-columns:minmax(0,1fr);gap:24px;margin:28px auto; }
 body[data-nm-location-template] .nm-loc-summary h1 { font-size:38px; }
 body[data-nm-location-template] .nm-loc-details { padding:22px; }
 body[data-nm-location-template] .nm-loc-content,body[data-nm-location-template] .nm-loc-related { width:calc(100% - 32px);margin:36px auto; }
}
@media(max-width:360px){body[data-nm-location-template] .nm-loc-summary h1{font-size:33px;}}
body[data-nm-location-template] .nm-loc-areas ul { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;list-style:none;padding:0; }
body[data-nm-location-template] .nm-loc-areas li { border:1px solid #d7e2e8;border-radius:10px;background:#f4f8fb; }
body[data-nm-location-template] .nm-loc-areas a { display:flex;align-items:center;min-height:48px;padding:14px 18px; }
@media(max-width:760px){body[data-nm-location-template] .nm-loc-areas ul{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:400px){body[data-nm-location-template] .nm-loc-areas ul{grid-template-columns:minmax(0,1fr);}}
body[data-nm-location-links] .nm-loc-areas { width:min(1180px,calc(100% - 48px));margin:56px auto;color:#1e3565; }
body[data-nm-location-links] .nm-loc-areas h2 { font:400 clamp(30px,3vw,42px)/1.2 "Tiempos Fine",Georgia,serif; }
body[data-nm-location-links] .nm-loc-areas ul { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;list-style:none;padding:0; }
body[data-nm-location-links] .nm-loc-areas li { border:1px solid #d7e2e8;border-radius:10px;background:#f4f8fb; }
body[data-nm-location-links] .nm-loc-areas a { display:flex;min-height:48px;align-items:center;padding:14px 18px;color:#1e3565;font:400 17px/1.5 "TodaySansNow Pro",Arial,sans-serif; }
@media(max-width:760px){body[data-nm-location-links] .nm-loc-areas{width:calc(100% - 32px)}body[data-nm-location-links] .nm-loc-areas ul{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:400px){body[data-nm-location-links] .nm-loc-areas ul{grid-template-columns:minmax(0,1fr);}}

/* Keep source-family width rules from expanding the shared clinic header. */
body[data-nm-location-template] .main-page-header.astoria-shared-header { display:flex!important;align-items:center;flex-wrap:nowrap;justify-content:space-between;width:100%!important;max-width:100%;min-width:0;box-sizing:border-box; }
body[data-nm-location-template] .main-page-header.astoria-shared-header .call-out-container { min-width:0;flex:0 0 auto;width:auto!important; }
@media(max-width:1199px){
 body[data-nm-location-template] .main-page-header.astoria-shared-header .logo{flex:0 0 auto!important;width:146px!important;}
 body[data-nm-location-template] .main-page-header.astoria-shared-header .nav-container{display:none!important;}
}
@media(max-width:600px){body[data-nm-location-template] .main-page-header.astoria-shared-header .logo{width:132px!important;}}
