/* Curriculum page specific styles */
:root {
  --hero-bg: linear-gradient(135deg, var(--color-primary-50), var(--warning-50) 50%, var(--success-50));
}

.hero {
  background: var(--hero-bg);
  padding-block: var(--space-14);
  border-bottom: 1px solid var(--color-border);
}
.hero-grid { display: grid; gap: var(--space-9); grid-template-columns: 1.05fr 0.95fr; align-items: center; }
.hero-copy .eyebrow { display: inline-block; font-weight: 700; color: var(--color-primary); background: var(--color-primary-50); padding: 4px 10px; border-radius: var(--radius-pill); margin-bottom: var(--space-4); }
.hero-copy p { color: var(--gray-700); }
.hero-actions { display: flex; gap: var(--space-5); margin-top: var(--space-6); flex-wrap: wrap; }
.hero-media { border-radius: var(--radius-xl); overflow: hidden; box-shadow: var(--shadow-md); }

.inline-nav { margin-top: var(--space-8); }
.inline-nav-list { display: flex; gap: var(--space-6); flex-wrap: wrap; }
.inline-nav a { text-decoration: none; color: var(--gray-700); font-weight: 600; border: 1px solid var(--color-border); padding: 8px 12px; border-radius: var(--radius-pill); background: #fff; }
.inline-nav a:hover { color: var(--color-primary); border-color: var(--color-primary-300); background: var(--color-primary-50); }

.section { padding-block: var(--space-14); }
.overview-highlights { margin-top: var(--space-7); }

.grid-cards { margin-top: var(--space-7); }
.course-card h3 { margin-bottom: var(--space-3); }
.course-card .muted { color: var(--color-muted); }
.feature-list { display: grid; gap: var(--space-3); }
.feature-list li { position: relative; padding-left: 28px; }
.feature-list li::before { content: ""; position: absolute; left: 0; top: 0.55em; width: 14px; height: 14px; border-radius: 50%; background: var(--success-200); box-shadow: inset 0 0 0 4px var(--success-500); }

.meta-list { display: grid; gap: 6px; margin-top: var(--space-4); }
details summary { cursor: pointer; font-weight: 600; color: var(--gray-800); }
details[open] summary { color: var(--color-primary); }

.outcomes-grid { margin-top: var(--space-7); }
.outcome-card ul { display: grid; gap: 6px; }

.activities-grid { gap: var(--space-10); align-items: center; }
.activity-list { display: grid; gap: 8px; margin-top: var(--space-5); }
.activity-media { border-radius: var(--radius-xl); overflow: hidden; box-shadow: var(--shadow-md); }

.instructors-grid { gap: var(--space-10); align-items: center; }
.team-cards { grid-template-columns: 1fr; gap: var(--space-7); margin-top: var(--space-6); }
.instructors-media { border-radius: var(--radius-xl); overflow: hidden; box-shadow: var(--shadow-md); }

.testimonial-grid { margin-top: var(--space-7); }
.testimonial-grid blockquote p { color: var(--gray-800); font-style: italic; }
.testimonial-grid cite { color: var(--color-muted); font-style: normal; }

.resources-grid { margin-top: var(--space-7); }

.pricing-grid { margin-top: var(--space-7); }
.pricing-card { position: relative; }
.pricing-card.highlight { outline: 3px solid var(--color-primary-200); box-shadow: var(--shadow-lg); }
.price { font-size: var(--text-3xl); font-weight: 800; letter-spacing: -0.02em; margin: 4px 0 16px; }
.price span { font-size: var(--text-base); color: var(--color-muted); font-weight: 600; }
.price-list { display: grid; gap: 6px; margin-bottom: var(--space-6); }
.small-print { color: var(--color-muted); margin-top: var(--space-6); }

@media (max-width: 1024px) {
  .hero-grid { grid-template-columns: 1fr; }
}
@media (max-width: 900px) {
  .grid-cols-3 { grid-template-columns: 1fr; }
  .grid-cols-2 { grid-template-columns: 1fr; }
}
