/* Shared navigation and programme orientation; existing brand/content remain intact. */
:root{--family-forest:#17332e;--family-paper:#f5f3ed;--family-white:#fffdfa;--family-peach:#f0c59b;--family-muted:#4c6159;--family-line:#cbd2c9;--family-header-height:92px}
html{scroll-padding-top:calc(var(--family-header-height) + 24px)}
.site-header.family-header{position:sticky;top:0;left:auto;transform:none;display:block;width:100%;min-height:0;padding:0;margin:0;background:var(--family-forest);color:var(--family-white);z-index:30;border-bottom:1px solid #ffffff20}
.site-header.family-header:before{display:none}
.family-header .header-inner{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:92px;gap:24px}
.family-header .brand{display:flex;align-items:center;flex-shrink:0;gap:12px;color:var(--family-white);text-decoration:none}
.family-header .brand>span{font:400 18px/1.1 Manrope,Arial,sans-serif;letter-spacing:-.035em}
.family-header .brand strong{font-weight:700}
.family-header .brand svg{color:var(--family-peach);width:32px;height:32px;flex-shrink:0}
.family-header .brand small{display:block;align-self:center;font:400 12px/1 Manrope,Arial,sans-serif;letter-spacing:.025em;white-space:nowrap;color:#d2ddd7}
.family-header #navigation{display:flex;position:static;width:auto;padding:0;flex-direction:row;align-items:center;gap:24px;flex-wrap:nowrap;border:0;box-shadow:none;background:transparent;font-size:14px}
.family-header #navigation>a,.family-header #navigation>button{display:inline-flex;flex:none;width:auto;align-items:center;justify-content:center;min-height:44px;padding:8px 0;margin:0;font:500 14px/1.4 Manrope,Arial,sans-serif;white-space:nowrap;text-decoration:none;color:var(--family-white)}
.family-header #navigation .family-action{padding:11px 17px;background:var(--family-peach);color:var(--family-forest);border:1px solid var(--family-peach);border-radius:3px;min-height:46px;font-weight:700}
.family-header #navigation>a:hover,.family-menu summary:hover{text-decoration:underline;text-underline-offset:6px}
.family-header #navigation .family-action:hover{background:#ffdab3;text-decoration:none}
.family-header .menu-toggle{display:none}
.family-header :focus-visible{outline:3px solid var(--family-peach);outline-offset:4px}
.family-menu{position:relative;border:0!important;margin:0!important;padding:0!important;background:transparent}
.family-menu>summary,.family-menu[open]>summary{list-style:none;display:flex;align-items:center;gap:10px;min-height:44px;padding:8px 0;cursor:pointer;font:500 14px/1.4 Manrope,Arial,sans-serif;border:0;color:var(--family-white)}
.family-menu>summary::-webkit-details-marker{display:none}
.family-menu>summary:after{content:'+';position:static;display:inline-block;transform:none;inset:auto;width:auto;height:auto;margin:0;font:400 20px/1 Manrope,Arial,sans-serif;color:inherit}
.family-menu[open]>summary:after{content:'−'}
.family-options{position:absolute;top:calc(100% + 15px);left:-22px;width:330px;padding:12px;background:var(--family-paper);color:var(--family-forest);border:1px solid var(--family-line);box-shadow:0 12px 28px #07171228;border-radius:3px;max-height:70vh;overflow:auto}
.family-menu:not([open]) .family-options{display:none}
.family-header #navigation .family-options a{display:block;min-height:44px;padding:12px 14px;color:var(--family-forest);text-decoration:none;border-radius:2px;white-space:normal}
.family-options a:hover,.family-options a[aria-current]{background:#e4e8df}
.family-options strong{display:block;font:600 23px/1.2 Cormorant,Georgia,serif}
.family-options small{display:block;font:400 13px/1.45 Manrope,Arial,sans-serif;margin-top:3px;color:var(--family-muted)}
.family-options .family-compare{border-top:1px solid var(--family-line);margin-top:8px;font-size:14px;font-weight:700}
.family-options :focus-visible{outline-color:var(--family-forest)}
.programme-chooser{background:var(--family-paper);color:var(--family-forest);padding-block:64px}
.programme-chooser .family-intro{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:end;margin-bottom:32px}
.family-kicker{font:700 12px/1.5 Manrope,Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#8c432c;margin:0 0 12px}
.programme-chooser h2,.programme-overview h2{font:500 clamp(37px,4vw,56px)/1.06 Cormorant,Georgia,serif;letter-spacing:-.03em;margin:0}
.family-intro>p{font:400 16px/1.65 Manrope,Arial,sans-serif;margin:0;max-width:560px;color:var(--family-muted)}
.family-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px;border-top:1px solid var(--family-line)}
.family-card{padding:26px 0;border-bottom:1px solid var(--family-line);display:grid;grid-template-columns:155px 1fr;gap:20px;text-decoration:none;color:var(--family-forest)}
.family-card h3{font:500 35px/1.1 Cormorant,Georgia,serif;letter-spacing:-.02em;margin:0}
.family-card p{font:400 15px/1.6 Manrope,Arial,sans-serif;margin:9px 0 0;color:var(--family-muted)}
.family-card .family-audience{font-weight:700;font-size:14px;color:var(--family-forest);margin:0}
.family-card .family-card-link{display:inline-block;font:600 13px/1.4 Manrope,Arial,sans-serif;margin-top:14px;text-decoration:underline;text-underline-offset:5px}
.family-card:hover h3{color:#8c432c}
.family-card:focus-visible{outline:3px solid #8c432c;outline-offset:5px}
.family-guidance{display:flex;gap:24px;justify-content:space-between;align-items:center;margin-top:24px;font:400 14px/1.6 Manrope,Arial,sans-serif}
.family-guidance p{margin:0;max-width:760px;color:var(--family-muted)}
.family-guidance a{flex-shrink:0;font-weight:700;text-underline-offset:5px}
.programme-overview{padding-block:46px;background:var(--family-paper);color:var(--family-forest);border-bottom:1px solid var(--family-line)}
.programme-overview .overview-heading{display:grid;grid-template-columns:.85fr 1.3fr;gap:48px;align-items:start;margin-bottom:28px}
.overview-heading>div:last-child>p{font:400 16px/1.65 Manrope,Arial,sans-serif;margin:0;color:var(--family-muted);max-width:720px}
.overview-heading .overview-audience{font-weight:650!important;color:var(--family-forest)!important;margin-bottom:10px!important}
.overview-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;border-top:1px solid var(--family-line);border-bottom:1px solid var(--family-line)}
.overview-facts>div{padding:20px 22px 20px 0;margin:0}
.overview-facts dt{font:700 12px/1.5 Manrope,Arial,sans-serif;letter-spacing:.035em;color:var(--family-muted);margin:0 0 7px}
.overview-facts dd{font:500 16px/1.5 Manrope,Arial,sans-serif;margin:0}
.overview-facts dd small{display:block;font:400 13px/1.55 Manrope,Arial,sans-serif;color:var(--family-muted);margin-top:7px}
.overview-next{display:flex;justify-content:space-between;align-items:center;gap:28px;margin-top:23px}
.overview-next p{font:400 14px/1.65 Manrope,Arial,sans-serif;margin:0;max-width:660px;color:var(--family-muted)}
.overview-links{display:flex;align-items:center;gap:22px;flex-shrink:0}
.overview-links a{font:650 14px/1.4 Manrope,Arial,sans-serif;text-underline-offset:5px;min-height:44px;display:inline-flex;align-items:center}
.family-footer{border-top:1px solid #ffffff30;padding-block:26px;background:var(--family-forest);color:var(--family-white)}
.family-footer .wrap{display:flex;align-items:center;justify-content:space-between;gap:25px}
.family-footer p{font:400 13px/1.6 Manrope,Arial,sans-serif;margin:0;color:#d2ddd7}
.family-footer nav{display:flex;flex-wrap:wrap;gap:8px 25px}
.family-footer a{font:500 19px/1.5 Cormorant,Georgia,serif;min-height:44px;display:inline-flex;align-items:center;text-decoration:none;color:var(--family-white)}
.family-footer a:hover{text-decoration:underline;text-underline-offset:5px}
.family-footer a[aria-current]{color:var(--family-peach);text-decoration:underline;text-underline-offset:5px}
.preview-status{padding:10px 24px;background:#e7e9e0;color:var(--family-forest);text-align:center;font:400 12px/1.5 Manrope,Arial,sans-serif}
.preview-status a{font-weight:700;text-underline-offset:3px}
.worksheet-next{border-top:1px solid var(--family-line);padding-top:26px;margin-top:28px;font-size:16px}
.worksheet-next h2{font-size:24px}
.worksheet-next a{display:inline-flex;min-height:44px;align-items:center;margin-right:20px}
.hero .eyebrow,.hero-meta,.role-note{font-size:14px!important}
body.family-main .hero{padding-top:80px}
body.family-carecraft .hero{padding-top:64px}
.research-aside{top:calc(var(--family-header-height) + 26px)}
@media(max-width:1150px){
 :root{--family-header-height:80px}
 .family-header .header-inner{min-height:80px}
 .family-header .menu-toggle{display:flex;align-items:center;justify-content:center;gap:12px;min-height:44px;min-width:55px;padding:8px 0;background:transparent;color:var(--family-white);font-size:14px;border:0}
 .family-header .menu-toggle span{display:inline;font-size:20px}
 .family-header #navigation{display:none;position:absolute;inset:100% 0 auto;width:100%;padding:20px 24px 26px;flex-direction:column;align-items:stretch;gap:4px;background:var(--family-forest);max-height:calc(100dvh - 80px);overflow:auto;border-top:1px solid #ffffff30;box-shadow:0 14px 22px #0003}
 .family-header #navigation.is-open{display:flex}
 .family-header #navigation>a,.family-header #navigation>button{display:flex;justify-content:flex-start;min-height:46px;font-size:16px;padding:10px 0;white-space:normal}
 .family-header #navigation .family-action{justify-content:center;padding:12px 18px;margin-top:8px}
 .family-menu>summary{font-size:16px;min-height:46px;justify-content:space-between}
 .family-options{position:static;width:100%;margin-block:4px 12px;box-shadow:none;max-height:none}
 .family-card{grid-template-columns:1fr;gap:12px}
 .overview-next{align-items:flex-start;flex-direction:column;gap:12px}
}
@media(max-width:650px){
 .family-header .header-inner{gap:8px;padding-inline:20px}
 .family-header .brand{gap:9px}
 .family-header .brand>span{font-size:16px}
 .family-header .brand svg{width:26px;height:29px}
 .family-header .brand small{font-size:11px}
 .programme-chooser{padding-block:40px}
 .programme-chooser .family-intro,.programme-overview .overview-heading{grid-template-columns:1fr;gap:18px;margin-bottom:24px}
 .family-cards{grid-template-columns:1fr}
 .family-card{grid-template-columns:110px 1fr;gap:20px;padding-block:23px}
 .family-card h3{font-size:29px}
 .family-card p{font-size:14px}
 .family-guidance{align-items:flex-start;flex-direction:column;gap:12px}
 .programme-overview{padding-block:34px}
 .overview-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
 .overview-facts>div{padding-block:17px}
 .overview-facts>div:nth-child(n+3){border-top:1px solid var(--family-line)}
 .overview-facts dd{font-size:15px}
 .overview-links{flex-wrap:wrap;gap:12px 25px}
 .family-footer .wrap{flex-direction:column;align-items:flex-start;gap:10px}
 .family-footer nav{gap:4px 22px}
 body.family-main .hero,body.family-carecraft .hero{padding-top:45px}
}
@media(max-width:370px){.family-header .header-inner{padding-inline:14px}.family-header .brand{gap:7px}.family-header .brand>span{font-size:15px}.family-header .brand small{font-size:10px}.family-header .brand svg{width:23px}.family-header .menu-toggle{min-width:44px;font-size:12px}.family-header .menu-toggle span{display:none}.family-card{grid-template-columns:1fr;gap:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{.site-header.family-header,.family-footer,.preview-status,.overview-links,.worksheet-next{display:none!important}.programme-chooser,.programme-overview{padding-block:20px;break-inside:avoid}.overview-facts{grid-template-columns:repeat(4,1fr)}html{scroll-padding-top:0}}
