.course-hub{max-width:var(--content-max);margin:0 auto;padding:var(--space-5)var(--space-4)var(--space-7);color:var(--text)}.course-hero{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-5);padding:clamp(1.5rem,3vw,2.5rem);margin-bottom:var(--space-5);background:var(--bg-article);border:1px solid var(--border-subtle);border-radius:var(--radius-lg)}@media(min-width:768px){.course-hero{grid-template-columns:minmax(0,1.4fr)minmax(0,1fr);align-items:center}}.course-eyebrow{display:inline-block;margin:0 0 var(--space-3);padding:4px 12px;font-size:.8125rem;font-weight:600;letter-spacing:.02em;color:var(--accent-violet);background:var(--brand-50);border-radius:var(--radius-pill);text-transform:uppercase}.course-title{margin:0 0 var(--space-3);font-size:clamp(1.75rem,1.2rem + 2vw,2.5rem);line-height:1.15;color:var(--text-strong)}.course-tagline{margin:0 0 var(--space-4);font-size:1.0625rem;line-height:1.65;color:var(--text-soft)}.course-badges{list-style:none;margin:0 0 var(--space-5);padding:0;display:flex;flex-wrap:wrap;gap:var(--space-2)}.course-badges li{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;font-size:.875rem;color:var(--text-soft);background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:var(--radius-pill)}.course-cta-row{display:flex;flex-wrap:wrap;gap:var(--space-3)}.course-cta-primary,.course-cta-secondary{display:inline-flex;align-items:center;gap:8px;padding:12px 22px;font-weight:600;font-size:1rem;border-radius:var(--radius-md);text-decoration:none}.course-cta-primary{color:var(--color-white);background:var(--brand-900)}.course-cta-secondary{color:var(--text-strong);background:var(--surface-1);border:1px solid var(--border-strong)}.course-hero-media{margin:0}.course-hero-media img{width:100%;height:auto;border-radius:var(--radius-md);display:block}.course-hero-media--placeholder{display:grid;place-items:center;aspect-ratio:16/10;border-radius:var(--radius-md);background:linear-gradient(135deg,var(--brand-900) 0%,var(--accent-violet) 65%,var(--accent-blue) 100%);color:var(--color-white);font-weight:800;font-size:clamp(3rem,8vw,5rem);letter-spacing:-.04em;text-shadow:0 4px 24px rgba(0,0,0,.25)}.course-intro{margin:0 0 var(--space-6);padding:0 var(--space-3);font-size:1.0625rem;line-height:1.75;color:var(--text)}.course-intro p{margin:0 0 var(--space-4)}.course-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0 var(--space-3)var(--space-5);font-size:.9375rem;color:var(--text-muted)}.course-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4);margin-bottom:var(--space-7)}@media(min-width:768px){.course-grid{grid-template-columns:minmax(0,1fr)minmax(0,1fr)}}.course-card{padding:var(--space-5);background:var(--bg-article);border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.course-card h2{margin:0 0 var(--space-3);font-size:1.125rem;font-weight:700;color:var(--text-strong)}.course-card ul{margin:0;padding-left:0;list-style:none}.course-card li{padding:6px 0 6px 28px;font-size:.9375rem;line-height:1.55;color:var(--text-soft)}.course-syllabus{margin-top:var(--space-6)}.course-syllabus-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-3);margin:0 var(--space-3)var(--space-4);padding-bottom:var(--space-3);border-bottom:2px solid var(--border-subtle)}.course-syllabus-head h2{margin:0;font-size:1.5rem;font-weight:700;color:var(--text-strong)}.course-chapters{list-style:none;padding:0;margin:0}.course-chapter{margin-bottom:var(--space-3)}.course-chapter-details{background:var(--bg-article);border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:hidden}.course-chapter-summary{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:var(--space-3);padding:var(--space-4);cursor:pointer;list-style:none;font-size:1rem}.course-chapter-summary::-webkit-details-marker{display:none}.course-lessons{list-style:none;margin:0;padding:0 var(--space-4)var(--space-3)}.course-lesson-link{display:grid;grid-template-columns:auto 1fr auto;gap:var(--space-3);align-items:center;padding:var(--space-3)0;border-top:1px solid var(--border-subtle);color:var(--text);text-decoration:none}