/* Care settings share the original petrol, cyan and mint palette. */
:root {
  --private-paper:var(--ice);
  --private-ink:var(--ink);
  --private-accent:var(--ink);
  --private-line:var(--line);
  --private-muted:var(--muted);
}
.activities-section { background:var(--paper); }
.care-overview {
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.25fr);
  align-items:end;
  gap:100px;
  margin-bottom:35px;
}
.care-overview h2 { margin:0; font-size:clamp(42px,4.2vw,58px); line-height:1.07; letter-spacing:-2px; }
.activities-section .care-overview h2 em { color:var(--ink); }
.care-overview>div { min-width:0; }
.care-overview-note { padding-left:48px; }
.care-overview>p,.care-overview>div>p { margin:0; max-width:520px; font-size:16px; line-height:1.8; color:var(--muted); }
.care-orientation { display:flex; flex-wrap:wrap; align-items:center; gap:8px 24px; margin-top:18px; }
.care-orientation a { display:inline-flex; align-items:center; gap:9px; min-height:44px; padding:7px 0; border-bottom:1px solid var(--line); font-size:12px; line-height:1.5; font-weight:500; }
.care-orientation a:hover { color:var(--petrol); border-color:var(--cyan); }
.care-key { display:inline-block; width:7px; height:7px; flex:0 0 7px; border-radius:50%; }
.care-key-family { background:var(--cyan); }
.care-key-private { background:var(--mint); }
.care-areas { position:relative; min-width:0; }
.care-family,.care-private {
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.25fr);
  align-items:start;
  gap:100px;
  position:relative;
  min-width:0;
  padding:0;
  margin:0;
  background:transparent;
  color:var(--ink);
  scroll-margin-top:30px;
}
.care-private { margin-top:64px; }
.care-family-intro,.care-private-heading { min-width:0; }
.care-label,.pathway-eyebrow { display:flex; align-items:center; gap:10px; margin:0 0 20px; font-size:9px; line-height:1.7; letter-spacing:1.1px; font-weight:500; color:var(--petrol); }
.care-family h3,.care-private h3 { margin:0 0 20px; max-width:460px; font-size:42px; line-height:1.1; letter-spacing:-1.5px; }
.care-family h3 em,.care-private h3 em { font-family:'Instrument Serif',Georgia,serif; font-style:normal; font-weight:400; letter-spacing:-.5px; color:var(--petrol); }
.care-family-intro>p:not(.care-label),.care-private-heading>p:not(.care-label) { font-size:16px; line-height:1.85; color:var(--muted); max-width:450px; }
.care-family-intro>p:last-child { margin-bottom:0; }
.care-private-heading .care-private-note { font-size:12px; line-height:1.8; margin:20px 0 0; padding-top:18px; border-top:1px solid var(--line); }
/* The thread runs 16px inside each panel; content starts at 48px. */
.care-family-content { min-width:0; padding:32px 32px 32px 48px; background:#20596a; color:#fff; }
.care-audience { margin:0 0 14px; padding:0 0 24px; border-bottom:1px solid #ffffff30; font-size:14px; line-height:1.85; color:#d1e7ec; }
.family-points>div { display:flex; align-items:flex-start; gap:18px; padding:19px 0; }
.family-points>div>span { padding-top:3px; flex:0 0 24px; font:400 26px/1.1 'Instrument Serif',Georgia,serif; color:#8ad8d7; }
.family-points>div>div { min-width:0; }
.family-points h4 { margin:0 0 10px; font-size:18px; line-height:1.4; letter-spacing:-.2px; font-weight:500; }
.family-points p { margin:0; font-size:16px; line-height:1.85; color:#e0edf0; }
.family-points p a,.care-family-note a { text-decoration:underline; text-underline-offset:3px; }
.care-family-actions { display:flex; align-items:center; flex-wrap:wrap; gap:16px 24px; margin:26px 0 22px; }
.care-family-actions .button { gap:18px; white-space:normal; text-align:left; }
.care-family-content .text-link { color:#d7f4ef; font-size:13px; }
.care-family-content .text-link:hover { color:var(--mint); }
.care-family-note { margin:0; font-size:12px; line-height:1.8; color:#c1dbe2; }
.care-family-content :focus-visible { outline-color:var(--mint); }
.care-private-content { min-width:0; padding:16px 28px 24px 48px; background:#e8fcfe; }
.pathway-grid { min-width:0; }
.pathway-grid>.pathway-card { display:block; min-width:0; margin:0; padding:0; border-top:1px solid #b6d9df; scroll-margin-top:30px; }
.pathway-grid>.pathway-card:last-child { border-bottom:1px solid #b6d9df; }
.pathway-summary-row { display:grid; grid-template-columns:26px minmax(0,1fr) 34px; gap:16px; align-items:start; min-height:138px; padding:26px 0; list-style:none; cursor:pointer; }
.pathway-summary-row::-webkit-details-marker { display:none; }
.pathway-summary-row::marker { content:''; }
.pathway-ordinal { font:400 28px/1.15 'Instrument Serif',Georgia,serif; color:var(--petrol); }
.pathway-summary-row>.pathway-ordinal { padding-top:2px; font-size:24px; }
.pathway-summary-heading { display:block; min-width:0; }
.pathway-name { display:block; margin:0 0 10px; font-size:22px; line-height:1.25; letter-spacing:-.5px; font-weight:600; color:var(--ink); }
.pathway-teaser { display:block; font:400 30px/1.13 'Instrument Serif',Georgia,serif; letter-spacing:-.35px; color:var(--petrol); }
.pathway-toggle { display:flex; align-items:center; padding-top:1px; color:var(--ink); }
.pathway-toggle-label { display:none; }
.pathway-toggle-icon { display:flex; align-items:center; justify-content:center; flex:0 0 34px; width:34px; height:34px; border:1px solid #85b7c2; border-radius:50%; font:400 24px/1 var(--sans); }
.pathway-card[open]>.pathway-summary-row .pathway-toggle-icon { transform:rotate(45deg); background:var(--mint); border-color:var(--mint); }
.pathway-expanded { padding:0 0 28px; min-width:0; color:var(--ink); }
.pathway-expanded>.pathway-summary { margin:0 0 20px; font-size:16px; line-height:1.85; }
.pathway-expanded-intro p { margin:0 0 20px; font-size:16px; line-height:1.9; }
.pathway-qualification { margin:0 0 20px; font-size:14px; line-height:1.75; color:var(--petrol); font-weight:500; }
.pathway-highlights { display:flex; flex-wrap:wrap; gap:8px; list-style:none; padding:0; margin:24px 0 28px; }
.pathway-highlights li { padding:8px 10px; border:1px solid #b8d8df; background:#ffffff70; font-size:12px; line-height:1.5; }
.pathway-expanded-steps>section { padding:23px 0; border-top:1px solid #b6d9df; }
.pathway-expanded h5 { margin:0 0 15px; font-size:21px; line-height:1.35; letter-spacing:-.4px; font-weight:500; }
.pathway-expanded-steps p { margin:0; font-size:16px; line-height:1.9; }
.pathway-expanded-steps p+p { margin-top:18px; }
.pathway-expanded-prepare { margin:22px 0 28px; padding:23px 22px; background:var(--paper); border-left:2px solid var(--cyan); }
.pathway-expanded-prepare h5 { font-size:20px; }
.pathway-expanded-prepare ul { padding-left:18px; margin:0; }
.pathway-expanded-prepare li { padding:5px 0; font-size:16px; line-height:1.85; }
.pathway-expanded-sources { border-top:1px solid #b6d9df; padding:7px 0 18px; }
.pathway-expanded-sources>summary { display:flex; align-items:center; justify-content:space-between; gap:18px; min-height:44px; list-style:none; font-size:13px; font-weight:500; cursor:pointer; }
.pathway-expanded-sources>summary::-webkit-details-marker { display:none; }
.pathway-expanded-sources>summary::after { content:'+'; font-size:20px; font-weight:400; }
.pathway-expanded-sources[open]>summary::after { content:'−'; }
.pathway-expanded-sources ul { margin:0; padding-left:18px; }
.pathway-expanded-sources li { margin:10px 0; font-size:13px; line-height:1.85; }
.pathway-expanded-sources a { text-decoration:underline; text-underline-offset:3px; overflow-wrap:anywhere; }
.pathway-card-actions { padding-top:22px; border-top:1px solid #b6d9df; }
.private-booking-cta { max-width:100%; }
.button-private { background:var(--ink); color:#fff; white-space:normal; text-align:left; gap:22px; max-width:100%; }
.button-private:hover { background:var(--petrol); }
.button-private[disabled],.button-private[disabled]:hover { background:#d4e9ed; color:var(--muted); font-size:12px; min-height:44px; cursor:default; letter-spacing:0; }
.private-booking-note { display:block; margin-top:8px; max-width:550px; font-size:11px; line-height:1.7; color:var(--muted); }
.care-private-content :focus-visible,.pathway-page :focus-visible { outline-color:var(--cyan); }
.thread-current.activities-section .chapter-index { color:var(--cyan); }
.thread-reading.pathway-card { border-top-color:var(--cyan); }
.family-points .care-step.thread-reading { background:#ffffff08; }
.family-points .care-step.thread-reading h4 { color:var(--mint); }
.pathway-expanded-steps>section.thread-reading { border-top-color:var(--cyan); background:#ffffff38; }
.pathway-expanded-steps>section.thread-reading h5 { color:var(--petrol); }
.pathway-read { display:inline-flex; align-items:center; gap:24px; min-height:44px; padding:9px 0; border-bottom:1px solid var(--private-accent); font-size:14px; font-weight:600; }
.pathway-read:hover { color:var(--petrol); }
.pathway-read>span { font-size:23px; }

/* Existing detail routes remain readable as independent pages. */
.pathway-page { background:var(--private-paper); color:var(--private-ink); }
.pathway-wrap { max-width:1160px; margin:0 auto; padding-left:54px; padding-right:54px; }
.pathway-header { display:flex; align-items:center; justify-content:space-between; gap:24px; padding-top:25px; padding-bottom:25px; border-bottom:1px solid var(--private-line); }
.pathway-back { display:inline-flex; align-items:center; gap:12px; min-height:44px; font-size:13px; border-bottom:1px solid var(--private-line); }
.pathway-brand { display:flex; align-items:center; gap:12px; font:400 19px/1.3 'Instrument Serif',Georgia,serif; }
.pathway-brand small { display:block; margin-top:4px; font:400 8px/1.6 var(--sans); letter-spacing:1px; color:var(--private-muted); }
.pathway-header img { width:32px; height:40px; }
.pathway-hero { padding-top:66px; padding-bottom:50px; position:relative; }
.pathway-hero:before { content:''; position:absolute; left:15px; top:75px; bottom:0; width:1px; background:var(--private-line); }
.pathway-hero .pathway-eyebrow { margin-bottom:24px; }
.pathway-hero h1 { margin:0 0 20px; font-size:clamp(35px,4.5vw,56px); line-height:1.12; letter-spacing:-2px; }
.pathway-hero .pathway-subtitle { max-width:850px; margin-bottom:35px; font:400 clamp(41px,5.5vw,69px)/1.06 'Instrument Serif',Georgia,serif; letter-spacing:-1.2px; }
.pathway-hero .pathway-intro { max-width:790px; font-size:19px; line-height:1.85; }
.pathway-hero .pathway-intro p { margin-bottom:25px; }
.pathway-facts { display:flex; flex-wrap:wrap; gap:10px; padding:0 0 15px; margin:32px 0 0; list-style:none; }
.pathway-facts>li { padding:10px 15px; border:1px solid var(--private-line); font-size:12px; line-height:1.5; }
.pathway-body { max-width:850px; margin:0 auto; }
.pathway-step { display:grid; grid-template-columns:48px minmax(0,1fr); gap:0 24px; padding:36px 0; border-top:1px solid var(--private-line); }
.pathway-step-number { grid-column:1; grid-row:1/3; font:400 31px/1.3 'Instrument Serif',Georgia,serif; color:var(--private-accent); }
.pathway-step>div { min-width:0; grid-column:2; grid-row:1/3; }
.pathway-step h2 { margin:0 0 18px; font-size:26px; line-height:1.25; letter-spacing:-.65px; font-weight:500; }
.pathway-step p { margin:0; font-size:17px; line-height:1.9; }
.pathway-step p+p { margin-top:18px; }
.pathway-prepare { max-width:850px; margin:28px 0 48px; padding:30px 34px; background:var(--paper); border-left:2px solid var(--private-accent); }
.pathway-prepare h2 { font-size:25px; line-height:1.3; letter-spacing:-.5px; }
.pathway-prepare ul { padding-left:20px; margin-bottom:0; }
.pathway-prepare li { padding:5px 0; font-size:15px; line-height:1.85; }
.pathway-booking { max-width:850px; margin:0 auto 45px; padding:44px 40px; background:#d5f3f5; }
.pathway-booking>.pathway-wrap { padding:0; }
.pathway-booking h2 { margin-bottom:18px; font:400 42px/1.1 'Instrument Serif',Georgia,serif; letter-spacing:-.5px; }
.pathway-booking h2 em { color:var(--private-accent); font-weight:400; }
.pathway-booking p { max-width:620px; font-size:15px; line-height:1.8; }
.pathway-sources { max-width:850px; margin:0 auto; padding:24px 0; border-top:1px solid var(--private-line); }
.pathway-sources h2 { font-size:18px; letter-spacing:0; }
.pathway-sources ul { padding-left:20px; }
.pathway-sources li { margin:10px 0; font-size:13px; line-height:1.8; }
.pathway-sources a { text-decoration:underline; text-underline-offset:3px; overflow-wrap:anywhere; }
.pathway-related { max-width:850px; margin:0 auto; padding:30px 0 50px; }
.pathway-related h2 { font-size:22px; letter-spacing:-.5px; }
.pathway-related>div>a { display:flex; width:100%; align-items:center; gap:20px; min-height:44px; padding:16px 0; border-bottom:1px solid var(--private-line); font-size:14px; }
.pathway-related a>span:nth-child(2) { flex:1; }
.pathway-related a small { display:block; margin-top:5px; font-size:13px; font-weight:400; line-height:1.6; }
.pathway-related .pathway-ordinal { font-size:25px; }
.pathway-footer { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:15px 28px; padding-top:25px; padding-bottom:30px; border-top:1px solid var(--private-line); font-size:12px; }
.pathway-footer p { margin:0; font-size:14px; }
.pathway-footer p>span { font-size:11px; }
.pathway-footer nav { display:flex; flex-wrap:wrap; gap:10px 25px; }
.pathway-footer a { display:inline-flex; align-items:center; min-height:44px; }

@media(min-width:801px) {
  .care-family-intro,.care-private-heading { position:sticky; top:40px; align-self:start; }
}
@media(max-width:800px) {
  .care-overview { grid-template-columns:minmax(0,1fr); gap:25px; margin-bottom:35px; }
  .care-overview h2 { font-size:clamp(40px,7.5vw,54px); letter-spacing:-1.8px; }
  .care-overview>p,.care-overview>div>p { max-width:none; }
  .care-overview-note { padding-left:44px; }
  .care-orientation { gap:8px 20px; margin-top:15px; }
  .care-orientation a { font-size:12px; }
  .care-family,.care-private { grid-template-columns:minmax(0,1fr); gap:28px; }
  .care-private { margin-top:64px; }
  .care-family h3,.care-private h3 { max-width:570px; font-size:38px; letter-spacing:-1px; }
  .care-family-intro>p:not(.care-label),.care-private-heading>p:not(.care-label) { max-width:600px; }
  .care-label { font-size:8px; letter-spacing:.8px; margin-bottom:18px; }
  .care-family-content { padding:28px 20px 28px 44px; }
  .care-private-content { padding:8px 20px 20px 44px; }
  .family-points>div { gap:14px; padding:18px 0; }
  .family-points>div>span { flex-basis:20px; font-size:24px; }
  .family-points h4 { font-size:18px; }
  .care-family-actions { display:block; }
  .care-family-actions .button { display:flex; justify-content:space-between; width:100%; padding:14px 16px; font-size:13px; }
  .care-family-actions .text-link { margin-top:15px; }
  .pathway-summary-row { grid-template-columns:24px minmax(0,1fr) 32px; column-gap:13px; min-height:134px; padding:25px 0; }
  .pathway-name { font-size:22px; }
  .pathway-teaser { font-size:30px; }
  .pathway-toggle-icon { width:32px; height:32px; flex-basis:32px; font-size:23px; }
  .pathway-expanded { padding-bottom:26px; }
  .pathway-expanded-prepare { padding:22px 18px; }
  .pathway-expanded h5 { font-size:20px; }
  .pathway-expanded-prepare h5 { font-size:19px; }
  .button-private { display:flex; justify-content:space-between; width:100%; font-size:13px; }
  .button-private[disabled] { justify-content:center; padding:12px; font-size:11px; }
  .pathway-wrap { padding-left:24px; padding-right:24px; }
  .pathway-header { padding-top:18px; padding-bottom:18px; }
  .pathway-back { font-size:11px; gap:8px; }
  .pathway-brand { font-size:15px; gap:9px; }
  .pathway-brand small { font-size:6px; letter-spacing:.5px; }
  .pathway-brand img { width:29px; height:36px; }
  .pathway-hero { padding-top:42px; padding-bottom:26px; }
  .pathway-hero:before { display:none; }
  .pathway-hero h1 { font-size:36px; letter-spacing:-1.5px; }
  .pathway-hero .pathway-subtitle { font-size:48px; margin-bottom:25px; }
  .pathway-hero .pathway-intro { font-size:17px; }
  .pathway-facts { padding-bottom:30px; gap:7px; }
  .pathway-facts>li { font-size:10px; padding:8px 10px; }
  .pathway-body { padding:0 24px; }
  .pathway-step { grid-template-columns:26px minmax(0,1fr); gap:0 14px; padding:28px 0; }
  .pathway-step-number { font-size:24px; }
  .pathway-step h2 { font-size:23px; letter-spacing:-.5px; }
  .pathway-step p { font-size:16px; line-height:1.85; }
  .pathway-prepare { margin:22px 0 30px; padding:22px 20px; }
  .pathway-prepare h2 { font-size:24px; }
  .pathway-booking { margin:0 24px 30px; padding:28px 22px; }
  .pathway-booking h2 { font-size:36px; }
  .pathway-booking p { font-size:14px; }
  .pathway-sources { margin:0 24px; }
  .pathway-related { padding:25px 24px 35px; }
  .pathway-related h2 { font-size:21px; }
  .pathway-related>div>a { gap:14px; }
  .pathway-related .pathway-ordinal { font-size:22px; }
  .pathway-related a small { font-size:12px; }
  .pathway-footer { display:block; }
  .pathway-footer nav { margin-top:18px; }
  .pathway-footer p { font-size:13px; }
}
@media(max-width:390px) {
  .care-overview h2 { font-size:40px; }
  .care-family h3,.care-private h3 { font-size:34px; }
  .care-orientation { column-gap:16px; }
  .care-orientation a { font-size:11px; }
  .pathway-summary-row { grid-template-columns:minmax(0,1fr) 28px; row-gap:12px; column-gap:10px; min-height:0; padding:24px 0; }
  .pathway-summary-row>.pathway-ordinal { grid-column:1; grid-row:1; font-size:23px; padding-top:0; }
  .pathway-summary-heading { grid-column:1/-1; grid-row:2; }
  .pathway-toggle { grid-column:2; grid-row:1; padding-top:0; }
  .pathway-toggle-icon { width:28px; height:28px; flex-basis:28px; font-size:21px; }
  .pathway-name { font-size:21px; }
  .pathway-teaser { font-size:29px; }
  .family-points>div { display:block; }
  .family-points>div>span { display:block; margin-bottom:10px; }
  .pathway-header { gap:16px; }
  .pathway-back { font-size:10px; }
  .pathway-brand { font-size:13px; }
  .pathway-brand small { display:none; }
  .pathway-brand img { width:23px; }
  .pathway-wrap { padding-left:20px; padding-right:20px; }
  .pathway-hero h1 { font-size:32px; }
  .pathway-hero .pathway-subtitle { font-size:43px; }
  .pathway-body { padding:0 20px; }
  .pathway-prepare { padding:20px 18px; }
  .pathway-prepare li { font-size:14px; }
  .pathway-booking { margin-left:20px; margin-right:20px; }
  .pathway-sources { margin-left:20px; margin-right:20px; padding-left:0; padding-right:0; }
  .pathway-related { padding-left:20px; padding-right:20px; }
  .pathway-step { column-gap:12px; }
}
@media(hover:hover) {
  .pathway-summary-row:hover .pathway-toggle-icon { background:#b8efe5; border-color:#76cdb8; }
  .pathway-summary-row:hover .pathway-name { color:var(--petrol); }
}
@media(prefers-reduced-motion:no-preference) {
  .family-points .care-step,.pathway-expanded-steps>section { transition:background .3s,border-color .3s; }
  .pathway-toggle-icon { transition:transform .25s,background .25s,border-color .25s; }
  .pathway-read>span { transition:transform .25s; }
  .pathway-read:hover>span { transform:translate(3px,-3px); }
}
@media print {
  .care-orientation,.pathway-header,.private-booking-cta,.pathway-related,.pathway-footer,.pathway-booking { display:none; }
  .care-family,.care-private,.care-overview { display:block; padding:25px 0; }
  .care-family-intro,.care-private-heading { position:static; }
  .care-family-content,.care-private-content,.pathway-page { background:#fff; color:#000; padding:20px 0; }
  .care-family-content p,.family-points>div>span { color:#333; }
  .pathway-summary-row { display:block; }
  .pathway-toggle { display:none; }
  .pathway-expanded { display:block!important; }
  .pathway-expanded-prepare { background:#fff; }
  .pathway-expanded-steps>section,.pathway-step,.pathway-prepare { break-inside:avoid; }
  .pathway-wrap { padding:0; }
  .pathway-hero { padding-top:0; }
  .pathway-hero:before { display:none; }
  .pathway-body { max-width:none; }
}
