
        :root {
            --hero-bg: #7C3AED;
            --hero-mid: #6D28D9;
            --cp: #7C3AED;
            --cp-dark: #6D28D9;
            --cp-rgb: 124,58,237;
            --cp-on-dark: #ddd6fe;
            --cp-dark-text: #2e1065;
            --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, #f5f3ff 0%, #ede9fe 100%); border-color: #c4b5fd; }
        #why-us::before { background: linear-gradient(90deg, #7C3AED 0%, transparent 60%); }
        #why-us .section-eyebrow { background: rgba(124,58,237,.1); color: #6d28d9; }
        #why-us h2 { color: #2e1065; }
        #syllabus { background: linear-gradient(160deg, #eff6ff 0%, #eef2ff 100%); border-color: #bfdbfe; }
        #syllabus::before { background: linear-gradient(90deg, #2563eb 0%, transparent 60%); }
        #syllabus .section-eyebrow { background: rgba(37,99,235,.1); color: #1d4ed8; }
        #syllabus h2 { color: #1e3a8a; }
        #careers { background: linear-gradient(160deg, #f5f3ff 0%, #faf5ff 100%); border-color: #e9d5ff; }
        #careers::before { background: linear-gradient(90deg, #7c3aed 0%, transparent 60%); }
        #careers .section-eyebrow { background: rgba(124,58,237,.1); color: #7c3aed; }
        #careers h2 { color: #2e1065; }
        #tools { background: linear-gradient(150deg, #1a0533 0%, #2e1065 60%, #3b0a6d 100%); }
        .support-cta-card { background: linear-gradient(150deg, #1a0533 0%, #2e1065 100%); }
        .final-cta { background: linear-gradient(135deg, #1a0533 0%, #2e1065 60%, #3b0a6d 100%); }
        .final-cta::before { background: radial-gradient(circle, rgba(124,58,237,.15) 0%, transparent 70%); }
        .final-cta-eyebrow { background: rgba(221,214,254,.1); color: #ddd6fe; border: 1px solid rgba(221,214,254,.2); }

/* ── Phase group containers ── */
.l2l3-phase { margin-bottom: 2rem; }
.l2l3-phase-header {
    display: flex; align-items: center; gap: .75rem;
    padding: .75rem 1.25rem; border-radius: 10px;
    margin-bottom: .5rem;
    background: rgba(37,99,235,.06); border-left: 4px solid var(--cp);
}
.l2l3-phase-title { font-weight: 700; font-size: .95rem; color: var(--text-base); flex: 1; }
.l2l3-phase-weeks  { font-size: .8rem; color: var(--text-muted); font-weight: 500; white-space: nowrap; }
.l2l3-phase-badge  { font-size: .7rem; font-weight: 700; padding: 3px 10px; border-radius: 20px; white-space: nowrap; color: #fff; }
.l2l3-phase-badge.p1 { background: #10b981; }
.l2l3-phase-badge.p2 { background: #f59e0b; }
.l2l3-phase-badge.p3 { background: #3b82f6; }
.l2l3-phase-badge.p4 { background: #f97316; }
.l2l3-phase-badge.p5 { background: #ef4444; }
.l2l3-phase-badge.p6 { background: #7c3aed; }
.l2l3-phase-badge.p7 { background: #0f172a; }

/* ── Capstone option grid ── */
.l2l3-capstone-grid {
    display: grid; grid-template-columns: repeat(3,1fr); gap: 1rem; margin: 1rem 0 1.25rem;
}
.l2l3-capstone-option {
    background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 10px; padding: 1rem;
}
.l2l3-capstone-option h4 { font-size: .9rem; font-weight: 700; color: var(--text-base); margin: .25rem 0 .75rem; }
.capstone-opt-num { font-size: .7rem; font-weight: 700; color: var(--cp); text-transform: uppercase; letter-spacing: .05em; }
@media(max-width:640px) { .l2l3-capstone-grid { grid-template-columns: 1fr; } }

/* ── Key Insight callout ── */
.l2l3-insight-box {
    background: linear-gradient(135deg, #f0fdf4 0%, #dcfce7 100%);
    border: 2px solid #16a34a;
    border-radius: 12px;
    padding: 1.25rem 1.5rem;
    margin-top: 1.75rem;
    display: flex;
    align-items: flex-start;
    gap: 1rem;
}
.l2l3-insight-icon { font-size: 1.5rem; flex-shrink: 0; margin-top: .1rem; }
.l2l3-insight-body { flex: 1; }
.l2l3-insight-body strong { display: block; font-size: .95rem; font-weight: 700; color: #15803d; margin-bottom: .4rem; }
.l2l3-insight-compare { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem; margin-top: .5rem; }
.l2l3-insight-col { background: #fff; border-radius: 8px; padding: .75rem 1rem; }
.l2l3-insight-col .col-label { font-size: .75rem; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; margin-bottom: .4rem; }
.l2l3-insight-col.bad  .col-label { color: #dc2626; }
.l2l3-insight-col.good .col-label { color: #16a34a; }
.l2l3-insight-col ul { list-style: none; padding: 0; margin: 0; }
.l2l3-insight-col ul li { font-size: .82rem; color: var(--text-base); padding: .2rem 0; }
.l2l3-insight-col.bad  ul li::before { content: '\2716\0020'; color: #dc2626; }
.l2l3-insight-col.good ul li::before { content: '\2714\0020'; color: #16a34a; }
@media(max-width:600px) { .l2l3-insight-compare { grid-template-columns: 1fr; } }
