.care-plan-guide { --care-plan-ink: #284b53; --care-plan-muted: #50676d; margin-top: 42px; color: var(--care-plan-ink); font-size: 17px; line-height: 1.65; scroll-margin-top: 28px; }
.care-plan-guide * { box-sizing: border-box; }
.care-plan-guide p { font-size: 17px; line-height: 1.65; }
.care-plan-heading { max-width: 790px; margin-bottom: 28px; }
.care-plan-kicker { display: block; margin-bottom: 12px; font-size: 16px; font-weight: 650; letter-spacing: 1.2px; color: #52746c; }
.care-plan-heading h2 { font-size: clamp(29px,3vw,39px); line-height: 1.2; font-weight: 550; letter-spacing: -.8px; }
.care-plan-heading p { max-width: 700px; margin-top: 16px; color: var(--care-plan-muted); }
.care-plan-timeline-heading { margin: 28px 0 18px; }
.care-plan-guide h3 { font-size: 22px; line-height: 1.35; font-weight: 600; letter-spacing: -.35px; }
.care-plan-timeline-heading p { color: var(--care-plan-muted); margin-top: 8px; }
.care-plan-timeline { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; list-style: none; padding: 0; margin: 0; }
.care-plan-step { min-width: 0; padding: 24px 21px; border: 1px solid #d7e6dc; border-radius: 20px; background: #f0f7f2; }
.care-plan-day { display: inline-flex; align-items: center; min-height: 38px; padding: 6px 11px; margin-bottom: 18px; border-radius: 10px; background: #fff; color: #42665a; font-size: 16px; font-weight: 650; }
.care-plan-step h4 { margin: 0; color: var(--care-plan-ink); font-size: 20px; font-weight: 600; line-height: 1.4; letter-spacing: -.3px; }
.care-plan-step p { color: var(--care-plan-muted); margin: 12px 0 0; }
.care-plan-step-sky { background: #edf6fa; border-color: #d3e5ec; }
.care-plan-step-sky .care-plan-day { color: #3e6a7a; }
.care-plan-step-lilac { background: #f5f0fa; border-color: #e3d8ed; }
.care-plan-step-lilac .care-plan-day { color: #725e83; }
.care-plan-step-sand { background: #fbf6e9; border-color: #e9dfc4; }
.care-plan-step-sand .care-plan-day { color: #7b6a3c; }
.care-plan-physio { display: flex; align-items: flex-start; gap: 18px; margin: 20px 0 28px; padding: 24px 26px; border: 1px solid #d7e5eb; border-radius: 20px; background: #f3f8fb; }
.care-plan-person-mark { display: grid; place-items: center; width: 46px; height: 46px; flex-shrink: 0; border-radius: 15px; background: #dcecf2; color: #446f7c; font-size: 22px; font-weight: 650; }
.care-plan-physio p { margin: 10px 0 0; color: var(--care-plan-muted); }
.care-plan-content-grid { display: grid; grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr); gap: 20px; }
.care-plan-panel { min-width: 0; padding: 27px; border: 1px solid #dfe8e6; border-radius: 22px; background: #fff; }
.care-plan-panel-label { display: block; margin-bottom: 12px; color: #5a7771; font-size: 16px; font-weight: 600; letter-spacing: 1px; }
.care-plan-panel p { margin: 13px 0 0; color: var(--care-plan-muted); }
.care-plan-food { background: #f8fbf6; border-color: #dce7d7; }
.care-plan-food .button { margin-top: 20px; min-height: 48px; width: 100%; justify-content: space-between; gap: 12px; font-size: 16px; text-align: left; }
.care-plan-professionals { margin: 18px 0 0; }
.care-plan-professionals > div { padding: 14px 0; border-top: 1px solid #e4eceb; }
.care-plan-professionals dt { font-size: 17px; line-height: 1.5; font-weight: 650; color: #355c63; }
.care-plan-professionals dd { margin: 5px 0 0; color: var(--care-plan-muted); font-size: 17px; line-height: 1.65; }
.care-plan-questions { margin: 24px 0; border: 1px solid #dbe6e3; border-radius: 18px; background: #fff; overflow: hidden; }
.care-plan-questions summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 64px; padding: 17px 24px; font-size: 18px; line-height: 1.45; font-weight: 600; cursor: pointer; list-style: none; }
.care-plan-questions summary::-webkit-details-marker { display: none; }
.care-plan-details-mark { display: grid; place-items: center; min-width: 32px; height: 32px; border-radius: 50%; background: #edf4f0; color: #496f61; font-size: 25px; font-weight: 400; line-height: 1; }
.care-plan-questions[open] .care-plan-details-mark { transform: rotate(45deg); }
.care-plan-details-body { padding: 0 24px 23px; color: var(--care-plan-muted); }
.care-plan-details-body ol { padding-left: 24px; margin: 10px 0 18px; }
.care-plan-details-body li { padding-left: 4px; margin-top: 12px; font-size: 17px; }
.care-plan-details-body p { margin: 0; padding: 17px 19px; background: #f3f7f4; border-radius: 13px; }
.care-plan-support-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
.care-plan-support, .care-plan-emergency { min-width: 0; padding: 24px 26px; border: 1px solid #dce7e6; border-radius: 19px; background: #eff6f4; }
.care-plan-support p, .care-plan-emergency p { margin: 11px 0 0; color: var(--care-plan-muted); }
.care-plan-emergency { display: flex; align-items: flex-start; gap: 14px; border-color: #ead5d1; background: #fff3ef; }
.care-plan-emergency h3 { color: #814b40; }
.care-plan-emergency p { color: #765149; }
.care-plan-emergency-mark { display: grid; place-items: center; min-width: 32px; height: 32px; border-radius: 50%; background: #f1d8d1; color: #814b40; font-size: 22px; font-weight: 650; line-height: 1; }
.care-plan-guide summary:focus-visible, .care-plan-guide button:focus-visible, #care-plan-title:focus-visible { outline: 3px solid #387a91; outline-offset: 4px; }
@media (max-width:1100px) {
  .care-plan-timeline { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
  .care-plan-content-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width:760px) {
  .care-plan-guide { margin-top: 32px; }
  .care-plan-heading h2 { font-size: 31px; }
  .care-plan-content-grid, .care-plan-support-grid { grid-template-columns: 1fr; gap: 16px; }
  .care-plan-physio { padding: 23px; }
  .care-plan-panel, .care-plan-support, .care-plan-emergency { padding: 24px; }
}
@media (max-width:590px) {
  .care-plan-timeline { grid-template-columns: 1fr; gap: 13px; }
  .care-plan-step { padding: 23px; }
  .care-plan-day { margin-bottom: 13px; }
  .care-plan-physio { gap: 13px; padding: 22px 20px; }
  .care-plan-person-mark { width: 40px; height: 40px; border-radius: 13px; }
  .care-plan-guide h3 { font-size: 21px; }
  .care-plan-questions summary { padding: 18px 20px; }
  .care-plan-details-body { padding: 0 20px 22px; }
}
@media (prefers-reduced-motion:reduce) {
  .care-plan-guide *, .care-plan-guide { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}
