body { background: var(--color-surface-alt); }
.it-hero { padding: 76px 0; background: radial-gradient(100% 120% at 12% 0%, #e7f5ec 0%, #fff7e6 58%, #ffffff 100%); }
.it-hero .container { max-width: 820px; }
.it-hero h1 { font-size: clamp(32px, 5vw, 54px); margin: 12px 0 18px; }
.it-hero p { max-width: 680px; font-size: 18px; color: var(--color-body); margin-bottom: 26px; }

/* Programme at a glance */
.glance-section { padding: 0 0 8px; margin-top: -34px; position: relative; z-index: 2; }
.glance-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.glance-card { background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius-md); box-shadow: var(--shadow-md); padding: 22px; display: flex; flex-direction: column; gap: 6px; }
.glance-label { font-size: 11.5px; font-weight: 800; color: var(--color-gold-dark); text-transform: uppercase; letter-spacing: 0.06em; }
.glance-card strong { font-size: 17px; color: var(--color-ink); }
.glance-card p { font-size: 13px; color: var(--color-body); }
@media (max-width: 900px) { .glance-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 520px) { .glance-grid { grid-template-columns: 1fr; } .glance-section { margin-top: -20px; } }
.track-section { padding: 72px 0 90px; }

/* Section heading (eyebrow + title + intro) */
.eyebrow { display: inline-block; font-size: 12.5px; font-weight: 700; color: var(--color-primary); text-transform: uppercase; letter-spacing: 0.08em; }
.section-heading { text-align: center; max-width: 620px; margin: 0 auto 40px; display: flex; flex-direction: column; gap: 10px; }
.section-heading h2 { font-size: 28px; letter-spacing: -0.02em; }
.section-heading p { font-size: 15px; color: var(--color-body); }

/* Programme detail cards (About the programme) */
.programme-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 22px; }
.programme-card { background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius-md); box-shadow: var(--shadow-sm); padding: 28px; display: flex; flex-direction: column; gap: 10px; transition: box-shadow 0.15s ease, transform 0.15s ease; }
.programme-card:hover { box-shadow: var(--shadow-md); transform: translateY(-3px); }
.programme-card-artisan { border-top: 4px solid var(--color-primary); }
.programme-card-it { border-top: 4px solid var(--color-gold); }
.programme-kicker { font-size: 12px; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; color: var(--color-primary-dark); }
.programme-card-it .programme-kicker { color: var(--color-gold-dark); }
.programme-card h3 { font-size: 20px; }
.programme-card p { color: var(--color-body); font-size: 14.5px; }
.programme-card .btn { align-self: flex-start; margin-top: 6px; }
@media (max-width: 700px) { .programme-grid { grid-template-columns: 1fr; } }
.it-tracks { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; }
.it-track { background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius-md); padding: 24px; box-shadow: var(--shadow-sm); display: flex; flex-direction: column; gap: 10px; }
.it-track-code { color: var(--color-primary); font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.it-track h3 { font-size: 21px; }
.it-track p { color: var(--color-body); font-size: 14px; }
.it-track-meta { color: var(--color-muted); font-size: 13px; }
.it-track a { align-self: flex-start; margin-top: auto; }
.tracks-status { color: var(--color-muted); margin-bottom: 18px; }
.tracks-status.error { color: var(--color-danger); }
@media (max-width: 700px) { .it-tracks { grid-template-columns: 1fr; } }
