:root { font-family: system-ui, sans-serif; color: #183b33; background: #fbfaf6; line-height: 1.6; }
body { margin: 0; }
a { color: #145848; text-underline-offset: .2em; }
:focus-visible { outline: 3px solid #a96800; outline-offset: 4px; }
.skip-link { position: fixed; left: 1rem; top: 1rem; background: white; padding: .75rem; transform: translateY(-200%); }
.skip-link:focus { transform: none; }
.care-shell { max-width: 68rem; margin: auto; padding: 1rem clamp(1rem, 5vw, 3rem); }
header nav, footer nav, .breadcrumbs { display: flex; gap: .75rem 1.5rem; flex-wrap: wrap; align-items: center; }
header nav a, footer nav a { display: inline-flex; align-items: center; min-height: 44px; }
header nav a:first-child { font-weight: 800; margin-right: auto; }
.care-hero { display: grid; align-items: center; gap: 2rem; padding-block: 2rem; }
.care-hero img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 1rem; }
h1 { font-size: clamp(2.25rem, 6vw, 4rem); line-height: 1.05; margin-block: 0 1rem; }
h2 { line-height: 1.15; }
.care-button { display: inline-block; background: #163c34; color: white; padding: .7rem 1rem; border-radius: .6rem; text-decoration: none; font-weight: 700; }
.care-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr)); padding: 0; gap: 1rem; list-style: none; }
.care-grid li, details { background: #fff; border: 1px solid #d4dfd8; border-radius: .75rem; padding: 1rem; }
.care-grid h3 { margin: 0; }
details { margin-block: .75rem; }
summary { cursor: pointer; font-weight: 700; padding-block: .35rem; }
@media (min-width: 50rem) { .care-hero { grid-template-columns: 1fr 1fr; } }
