/* Compact service overview; isolated from professional and booking layouts. */
.home-care-overview { grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.home-care-overview .home-care-card { display:flex; flex-direction:column; gap:12px; padding:20px; background:#fff; }
.home-care-overview .home-care-card h3 { font-size:19px; line-height:1.3; }
.care-overview-prices { display:flex; flex-wrap:wrap; gap:10px 18px; }
.home-care-overview .home-price { display:flex; flex-direction:column; gap:3px; font-size:12px; }
.home-care-overview .home-price strong { font-size:18px; }
.home-care-overview .text-link { margin-top:auto; padding:6px 0 0; min-height:36px; }
.care-page-overview { grid-template-columns:1fr; gap:24px; }
.care-page-overview .care-page-main { padding-top:0; }
.care-page-overview .care-page-main > p { max-width:780px; margin-bottom:20px; }
.care-page-overview .current-services { grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; align-items:stretch; }
.care-page-overview .current-services > .current-service { display:flex; flex-direction:column; padding:22px; scroll-margin-top:110px; }
.care-page-overview .current-service h3 { font-size:1.18rem; line-height:1.35; }
.care-page-overview .care-service-facts { margin:8px 0; gap:4px 12px; }
.care-page-overview .care-service-facts strong { font-size:1.15rem; }
.care-page-overview .care-service-facts span { font-size:.85rem; }
.care-page-overview .care-visit-label { margin:6px 0 0; font-size:.85rem; }
.care-page-overview .care-intake-note { margin:12px 0; padding:12px 0 0; border-top:1px solid var(--line); }
.care-page-overview .care-intake-note > p:first-child { font-size:.85rem; margin:0; }
.care-page-overview .care-duration-note { font-size:.78rem; }
.care-page-overview .care-detail-link { font-size:.9rem; margin:12px 0 4px; }
.care-explanation { margin:8px 0 16px; font-size:.9rem; }
.care-explanation summary { color:var(--navy); cursor:pointer; padding:8px 0; text-decoration:underline; text-underline-offset:3px; }
.care-explanation p { margin:8px 0; }
.care-page-overview .care-booking { margin-top:auto; width:100%; font-size:.9rem; min-height:46px; text-align:center; }
.care-page-overview .care-page-aside { max-width:none; padding:20px 24px; border-radius:12px; }
.care-page-overview .care-page-aside h3 { margin:8px 0; font-size:1.15rem; }
.care-page-overview .care-page-aside p { margin:8px 0; font-size:.95rem; }
@media(max-width:1000px) { .care-page-overview .current-services { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:700px) {
 .home-care-overview { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
 .home-care-overview .home-care-card { padding:14px; gap:10px; }
 .home-care-overview .home-care-card h3 { font-size:16px; overflow-wrap:break-word; }
 .home-care-overview .home-price strong { font-size:16px; }
 .home-care-overview .care-duration-note { font-size:11px; }
 .home-care-overview .text-link { font-size:13px; }
 .care-page-overview .current-services { gap:12px; }
 .care-page-overview .current-services > .current-service { padding:18px; }
}
@media(max-width:540px) { .care-page-overview .current-services > .current-service { padding:14px; } .care-page-overview .current-service h3 { font-size:1rem; } .care-page-overview .care-booking { font-size:.8rem; padding:10px 8px; } .care-page-overview .care-intake-note > p:first-child { font-size:.78rem; } }
@media(max-width:359px) { .care-page-overview .current-services { grid-template-columns:1fr; } }
@media(max-width:340px) { .home-care-overview { grid-template-columns:1fr; } }
