
        :root {
            --hero-bg: #E74C3C;
            --hero-mid: #C0392B;
            --cp: #E74C3C;
            --cp-dark: #C0392B;
            --cp-rgb: 231,76,60;
            --cp-on-dark: #fca5a5;
            --cp-dark-text: #7f1d1d;
            --text-base: #1e2d40;
            --text-muted: #64748b;
            --border: #e2e8f0;
            --card-bg: #ffffff;
            --page-bg: #f8fafc;
            --radius: 16px;
            --radius-sm: 10px;
            --shadow: 0 4px 20px rgba(15,30,54,.08);
        }
        /* Section colour overrides */
        #why-us { background: linear-gradient(160deg, #fff5f5 0%, #fff0f0 100%); border-color: #fecaca; }
        #why-us::before { background: linear-gradient(90deg, #E74C3C 0%, transparent 60%); }
        #why-us .section-eyebrow { background: rgba(231,76,60,.1); color: #B91C1C; }
        #why-us h2 { color: #7f1d1d; }
        #syllabus { background: linear-gradient(160deg, #eef6ff 0%, #f5f0ff 100%); border-color: #dde8f8; }
        #syllabus::before { background: linear-gradient(90deg, #6366f1 0%, transparent 60%); }
        #syllabus .section-eyebrow { background: rgba(99,102,241,.1); color: #4f46e5; }
        #syllabus h2 { color: #3730a3; }
        #careers { background: linear-gradient(160deg, #eff6ff 0%, #f0f9ff 100%); border-color: #bfdbfe; }
        #careers::before { background: linear-gradient(90deg, #2563eb 0%, transparent 60%); }
        #careers .section-eyebrow { background: rgba(37,99,235,.1); color: #1d4ed8; }
        #careers h2 { color: #1e3a8a; }
        #tools { background: linear-gradient(150deg, #1a0a0a 0%, #3b1010 60%, #7f1d1d 100%); }
        .support-cta-card { background: linear-gradient(150deg, #1a0505 0%, #3b1010 100%); }
        .final-cta { background: linear-gradient(135deg, #1a0505 0%, #3b1010 60%, #7f1d1d 100%); }
        .final-cta::before { background: radial-gradient(circle, rgba(231,76,60,.12) 0%, transparent 70%); }
        .final-cta-eyebrow { background: rgba(252,165,165,.1); color: #fca5a5; border: 1px solid rgba(252,165,165,.2); }

    /* ─── Zero-to-Expert: Who section ─── */
    #who { background: linear-gradient(160deg,#fff5f5 0%,#fff8f8 100%); border-color:#fecaca; }
    #who::before { background: linear-gradient(90deg,#E74C3C 0%,transparent 60%); }
    #who .section-eyebrow { background:rgba(231,76,60,.1); color:#B91C1C; }
    #who h2 { color:#7f1d1d; }
    .st-audience-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:1rem; margin:1.5rem 0; }
    .st-audience-card { background:#fff; border:1px solid #fecaca; border-radius:12px; padding:1.1rem 1.2rem; display:flex; align-items:flex-start; gap:.85rem; }
    .st-aud-icon { width:38px; height:38px; border-radius:10px; background:linear-gradient(135deg,#fef2f2,#fee2e2); display:flex; align-items:center; justify-content:center; color:#E74C3C; font-size:1rem; flex-shrink:0; }
    .st-audience-card h4 { font-size:.88rem; font-weight:700; color:#1e2d40; margin-bottom:.25rem; }
    .st-audience-card p { font-size:.78rem; color:#64748b; margin:0; line-height:1.45; }
    .st-prereq-box { background:#fff8f8; border:1px solid #fecaca; border-radius:12px; padding:1.4rem 1.6rem; margin-top:1.8rem; }
    .st-prereq-box h3 { font-size:.95rem; font-weight:700; color:#991b1b; margin-bottom:1rem; display:flex; align-items:center; gap:.5rem; }
    .st-prereq-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:.6rem .75rem; }
    .st-prereq-item { display:flex; align-items:center; gap:.6rem; font-size:.83rem; color:#374151; }
    .st-prereq-item i { color:#E74C3C; font-size:.75rem; }

    /* ─── Phase badges ─── */
    .st-phase { margin-bottom:1.8rem; border:1px solid #e2e8f0; border-radius:16px; overflow:hidden; }
    .st-phase-header { display:flex; align-items:center; gap:1rem; padding:1rem 1.4rem; background:#f8fafc; border-bottom:1px solid #e2e8f0; flex-wrap:wrap; }
    .st-phase-badge { display:inline-flex; align-items:center; gap:.4rem; padding:.28rem .75rem; border-radius:20px; font-size:.72rem; font-weight:700; letter-spacing:.04em; text-transform:uppercase; white-space:nowrap; }
    .st-phase-badge.p1 { background:#dcfce7; color:#166534; }
    .st-phase-badge.p2 { background:#dbeafe; color:#1e40af; }
    .st-phase-badge.p3 { background:#fef3c7; color:#92400e; }
    .st-phase-badge.p4 { background:#ffedd5; color:#9a3412; }
    .st-phase-badge.p5 { background:#ede9fe; color:#5b21b6; }
    .st-phase-badge.p6 { background:#ccfbf1; color:#134e4a; }
    .st-phase-badge.p7 { background:#e0e7ff; color:#3730a3; }
    .st-phase-badge.p8 { background:#f1f5f9; color:#1e293b; }
    .st-phase-title { font-size:1rem; font-weight:700; color:#1e2d40; }
    .st-phase-weeks { margin-left:auto; font-size:.78rem; color:#64748b; font-weight:600; white-space:nowrap; }
    .st-track-tag { display:inline-flex; align-items:center; gap:.3rem; padding:.18rem .6rem; border-radius:20px; font-size:.68rem; font-weight:700; letter-spacing:.04em; text-transform:uppercase; }
    .st-track-tag.beginner { background:#dcfce7; color:#166534; }
    .st-track-tag.foundation { background:#dbeafe; color:#1e40af; }
    .st-track-tag.intermediate { background:#fef3c7; color:#92400e; }
    .st-track-tag.advanced { background:#ede9fe; color:#5b21b6; }
    .st-track-tag.expert { background:#e0e7ff; color:#3730a3; }
    .st-phase > .module-list { padding:.75rem; background:#fff; }
    .st-phase > .module-list .module-item { border-radius:12px; }

    /* ─── Capstone grid ─── */
    .st-capstone-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:1rem; margin-top:1rem; }
    .st-capstone-opt { background:linear-gradient(135deg,#fff5f5,#fff0f0); border:1px solid #fecaca; border-radius:12px; padding:1rem 1.1rem; }
    .st-capstone-num { font-size:1.5rem; font-weight:800; color:#E74C3C; display:block; margin-bottom:.3rem; }
    .st-capstone-opt h4 { font-size:.85rem; font-weight:700; color:#1e2d40; margin-bottom:.3rem; }
    .st-capstone-opt p { font-size:.77rem; color:#64748b; margin:0; line-height:1.4; }
    