/* STM Course Detail Styles — stm-detail.css */
.stm-detail-page { max-width: 1200px; margin: 0 auto; font-family: var(--font-family); }
.stm-detail-hero { padding: 48px 24px 56px; text-align: center; position: relative; min-height: min(52vh, 580px); display: flex; flex-direction: column; align-items: center; justify-content: center; }
.stm-detail-page[data-stage="seed"] .stm-detail-hero { background: linear-gradient(135deg, var(--seed-base) 0%, var(--seed-tint3) 100%); }
.stm-detail-title { font: var(--font-page-title); color: white; margin: 0 0 12px; }
.stm-detail-chip { background: rgba(255,255,255,0.85); color: var(--stm-navy); padding: 6px 16px; border-radius: 20px; font-size: 14px; font-weight: 600; }
.stm-detail-info-row { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--space-m); padding: var(--space-l); }
.stm-detail-info-card { background: var(--seed-tint1); border-radius: var(--radius-card); padding: var(--space-l); text-align: center; position: relative; overflow: hidden; }
.stm-detail-blocks { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--space-m); padding: 0 var(--space-l); }
.stm-detail-block { background: white; border: 1px solid var(--stm-tan); border-radius: var(--radius-card); padding: var(--space-l); position: relative; overflow: hidden; }
.stm-detail-sessions { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: var(--space-m); padding: var(--space-l); }
.stm-detail-instructor { padding: var(--space-l); margin: var(--space-l); background: var(--seed-tint1); border-radius: var(--radius-card); border-top: 2.25px solid var(--seed-base); }
.stm-detail-cta-banner { padding: var(--space-xl); text-align: center; background: var(--seed-tint1); border-radius: var(--radius-card); margin: var(--space-l); border-top: 2.25px solid var(--seed-base); }
@media (max-width: 768px) { .stm-detail-info-row { grid-template-columns: repeat(2, 1fr); } .stm-detail-blocks { grid-template-columns: 1fr; } }
