/* Extra styles added Nov 2026 (AuDHD assessments, Cherry AADI / Supervision / About pages).
   Builds on the tokens and components in /_astro/index.CR19vu9S.css; no new colours or fonts. */

/* No single orphaned word on headings */
h1,h2{text-wrap:balance}

/* Homepage pricing */
.price__total{color:var(--muted);font-size:.95rem;margin:0 0 2px}
.pricing-sub{margin-top:100px}
.price-solo{max-width:calc((var(--maxw) - 48px - 44px) / 3);margin:0 auto}

/* Subpage hero */
.page-hero{padding:72px 0 64px}
.page-hero .lead{margin-top:20px}
.page-hero .hero__cta{margin-top:28px}

/* Key facts (Time / Service / Tool) */
.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:48px}
.label{display:block;text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:600;color:var(--mint);margin-bottom:10px}
.card.fact p{color:var(--cream)}

/* Long-form text */
.prose{max-width:68ch;margin:0 auto}
.prose p{color:var(--muted);font-size:1.08rem;margin:0 0 1.15em}
.prose p:last-child{margin-bottom:0}
.prose a,.link{text-decoration:underline;text-underline-offset:3px}
.note{color:var(--muted);margin-top:32px}

/* Checked list (same tick as the pricing cards) */
.checklist{list-style:none;padding:0;margin:0;display:grid;gap:16px}
.checklist li{color:var(--muted);padding-left:30px;position:relative;font-size:1.04rem}
.checklist li:before{content:"";position:absolute;left:0;top:9px;width:12px;height:7px;border-left:2px solid var(--mint);border-bottom:2px solid var(--mint);transform:rotate(-45deg)}
.checklist a{text-decoration:underline;text-underline-offset:3px}

/* Price cards without a button */
.price--info .price__amount{margin-bottom:0}
.price--info p{margin-top:14px}

/* Supervisor details */
.details{margin:0;display:grid;gap:0}
.details div{display:grid;grid-template-columns:150px 1fr;gap:14px;padding:13px 0;border-bottom:1px solid var(--line)}
.details div:first-child{padding-top:0}
.details div:last-child{border-bottom:0;padding-bottom:0}
.details dt{color:var(--muted);font-size:.9rem}
.details dd{margin:0;color:var(--cream);overflow-wrap:anywhere}

/* Syllabus (nested numbered list: 1. / a. / i.) */
.syllabus{margin:0 auto;max-width:820px;padding-left:1.6em;display:grid;gap:30px;color:var(--muted)}
.syllabus>li{padding-left:6px}
.syllabus>li::marker{color:var(--mint);font-family:var(--font-head);font-weight:600;font-size:1.1rem}
.syllabus .sy-head{display:block;color:var(--cream);font-family:var(--font-head);font-size:1.2rem;font-weight:600;line-height:1.3;margin-bottom:12px}
.syllabus ol{margin:0;padding-left:2em;display:grid;gap:9px}
.syllabus ol li{padding-left:4px}
.syllabus ol ol{margin-top:12px;padding-left:2.4em}
.syllabus ol li:has(> ol) + li{margin-top:16px}
.syllabus .sy-sub{color:var(--cream);font-weight:600}
.syllabus .sy-note{color:var(--cream);font-weight:500}

/* Skills to learn */
.skill-list{list-style:none;padding:0;margin:0 auto;max-width:900px;display:grid;grid-template-columns:repeat(3,1fr);gap:16px 28px}
.skill-list li{color:var(--cream);padding-left:30px;position:relative}
.skill-list li:before{content:"";position:absolute;left:0;top:9px;width:12px;height:7px;border-left:2px solid var(--mint);border-bottom:2px solid var(--mint);transform:rotate(-45deg)}
.skill-list small{display:block;color:var(--muted);font-size:.9rem;margin-top:2px}
.skill-list .wide{grid-column:1 / -1}

/* About page portrait */
.about-photo img{width:100%;border-radius:24px;border:1px solid var(--line-strong);box-shadow:var(--shadow);object-fit:cover;aspect-ratio:4/5}

/* Closing call to action */
.cta-end{text-align:center}
.cta-end .hero__cta{justify-content:center;margin-top:26px}

@media(max-width:900px){
  .facts{grid-template-columns:1fr}
  .skill-list{grid-template-columns:1fr 1fr}
  .about-photo{max-width:380px;margin:0 auto}
  .pricing-sub{margin-top:56px}
}
@media(max-width:560px){
  .details div{grid-template-columns:1fr;gap:2px}
  .skill-list{grid-template-columns:1fr}
  .syllabus{padding-left:1.3em}
  .syllabus ol{padding-left:1.35em}
  .syllabus ol ol{padding-left:1.7em}
  .syllabus ol li{padding-left:2px}
}
