.intro-section{display:grid;grid-template-columns:1fr 1.35fr;gap:70px;padding-bottom:25px}.intro-section h2{font-size:38px}.intro-section p+p{margin-top:16px}.intro-section+.support{padding-top:55px}.consultation-details-link{text-align:center;margin-top:28px}.header nav a[aria-current="page"]{border-bottom:1px solid #fff;padding-bottom:5px}.document-hero{background:var(--cream);padding:65px 35px 55px;border-bottom:1px solid var(--line)}.document-hero-inner{max-width:1080px;margin:auto}.document-hero h1{font-size:clamp(35px,4vw,53px);max-width:900px;letter-spacing:-1.3px}.document-lead{font:21px/1.6 var(--serif);max-width:850px;margin:24px 0}.document-layout{max-width:1150px;padding:65px 35px 25px;margin:auto;display:grid;grid-template-columns:260px minmax(0,1fr);gap:70px;align-items:start}.document-aside{position:sticky;top:115px}.document-portrait{width:100%;height:240px;object-fit:cover;object-position:43% center;margin-bottom:28px}.contents-nav{display:flex;flex-direction:column;align-items:stretch;gap:0;margin:0;border-top:1px solid var(--line);padding-top:22px}.contents-nav .eyebrow{margin-bottom:10px}.contents-nav a{font-size:12px;line-height:1.6;font-weight:400;letter-spacing:0;text-transform:none;white-space:normal;padding:10px 0;border-bottom:1px solid var(--line);color:var(--teal-dark)}.document-copy{min-width:0}.editorial-section{margin-bottom:46px;scroll-margin-top:112px}.editorial-section h2{font-size:31px;letter-spacing:-.6px;margin-bottom:20px}.editorial-section p{font-size:16px;line-height:1.85;margin-bottom:16px}.editorial-section ul{margin:20px 0;padding-left:21px;color:var(--muted)}.editorial-section li{padding-left:6px;margin:0 0 13px;font-size:15px;line-height:1.75}.topic-details{display:grid;gap:26px;margin-top:28px}.topic-details section{padding-top:24px;border-top:1px solid var(--line);scroll-margin-top:112px}.topic-details h3{font-size:25px;margin-bottom:13px}.related-section{border-top:1px solid var(--line);padding-top:42px;padding-bottom:55px}.related-section h2{font-size:29px;margin-bottom:28px}.related-links{display:flex;flex-wrap:wrap;align-items:flex-start;gap:20px 35px}.related-links .text-link{max-width:330px}.document-layout+.consultations{padding-top:35px}
@media(max-width:1150px){.header nav{display:none;position:absolute;left:0;top:86px;right:0;background:var(--teal-dark);padding:20px 30px;flex-direction:column;align-items:stretch;gap:0;margin:0}.header nav.open{display:flex}.header nav a{padding:13px 0;border-bottom:1px solid #ffffff20;font-size:12px;white-space:normal}.header nav a[aria-current="page"]{padding-bottom:13px}.menu-toggle{display:block}.header-actions{margin-left:auto}}
@media(max-width:900px){.header nav{top:76px}.intro-section{gap:35px;grid-template-columns:1fr 1.2fr}.document-layout{grid-template-columns:210px minmax(0,1fr);gap:35px;padding:45px 28px 15px}.document-hero{padding:48px 28px}.document-portrait{height:200px}.editorial-section h2{font-size:28px}}
@media(max-width:650px){.header nav{top:72px}.intro-section{grid-template-columns:1fr;gap:24px;padding-bottom:15px}.intro-section h2{font-size:32px}.hero h1{font-size:35px}.hero-description{font-size:19px}.document-hero{padding:38px 22px}.document-hero h1{font-size:35px;letter-spacing:-.8px}.document-lead{font-size:19px}.document-layout{grid-template-columns:1fr;gap:34px;padding:35px 22px 10px}.document-aside{position:static}.document-portrait{max-width:360px;height:240px}.contents-nav{padding-top:17px}.contents-nav a{padding:8px 0}.editorial-section{margin-bottom:35px}.editorial-section h2{font-size:28px}.editorial-section p,.editorial-section li{font-size:15px;line-height:1.8}.related-section{padding-top:32px}.related-links{display:grid;gap:22px}.related-links .text-link{max-width:none}}

.intro-section ul,.about-copy ul{padding-left:22px;margin:18px 0;color:var(--muted)}.intro-section li,.about-copy li{padding-left:4px;margin-bottom:10px;line-height:1.7}.approach-details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0;margin-top:24px}.approach-details summary{cursor:pointer;color:var(--teal-dark);font-weight:600;line-height:1.6}.approach-details[open] summary{margin-bottom:20px}.approach-details summary:focus-visible{outline:2px solid var(--teal-dark);outline-offset:5px}
.unified-approach{max-width:none;background:var(--cream);display:grid;grid-template-columns:minmax(0,465px) minmax(0,465px);justify-content:center;gap:80px;padding:70px 35px;align-items:center}.unified-approach h2{font-size:39px}.unified-approach .text-link{margin-top:25px}.service-process{background:var(--cream)}.service-process .description{font-size:15px;line-height:1.8;flex:1}.followup-note{font-size:12px;margin-top:12px}.about-other{font-size:13px}.topic:last-child{grid-column:auto;max-width:none;justify-self:stretch}
@media(max-width:650px){.unified-approach{grid-template-columns:1fr;gap:25px;padding:48px 22px}.unified-approach h2{font-size:33px}.service-process{padding:26px 20px}.header-book{max-width:145px;white-space:normal;text-align:center;line-height:1.4}.topic:last-child{grid-column:auto;max-width:none;justify-self:stretch}}

/* Keep the family visible; move copy below the complete image on small screens. */
.hero-family{min-height:620px;background:#253c31;padding:72px 7% 80px;justify-content:flex-start;text-align:left;overflow:hidden}
.hero-family-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 62%}
.hero-family .hero-shade{background:linear-gradient(90deg,rgba(17,35,27,.76) 0%,rgba(17,35,27,.62) 30%,rgba(17,35,27,.24) 52%,transparent 72%)}
.hero-family .hero-content{width:43%;max-width:570px}
.hero-family h1{font-size:clamp(40px,4.1vw,59px);text-wrap:balance}
.hero-family .short-line{margin:25px 0}
.hero-family .hero-description{font-size:20px;line-height:1.6;margin:0;max-width:440px}
.hero-family .hero-down{left:50%}
@media(max-width:900px){
  .hero-family{min-height:0;padding:0;display:flex;flex-direction:column;align-items:stretch}
  .hero-family-image{position:static;height:auto;width:100%;aspect-ratio:3/2;object-fit:contain}
  .hero-family .hero-shade,.hero-family .hero-down{display:none}
  .hero-family .hero-content{width:100%;max-width:none;padding:36px 7% 44px}
  .hero-family h1{font-size:clamp(35px,6vw,49px)}
  .hero-family .hero-description{max-width:620px;font-size:19px}
  .hero-family .short-line{margin:21px 0}
}

.programme-includes{padding-left:18px;margin:0 0 25px;color:var(--muted);font-size:13px;line-height:1.7}.programme-includes li{margin-bottom:7px}.programme-price-note{font-size:13px;line-height:1.7;margin-top:12px;max-width:360px}.service-process p.description{flex:0;margin-bottom:18px}.service-process .text-link{margin-top:22px}
