/* ============ COURSES / BATCHES ============ */
.batch-grid{ display:grid; gap: var(--sp-4); grid-template-columns: 1fr; }
@media (min-width: 720px){ .batch-grid{ grid-template-columns: repeat(2,1fr); } }
@media (min-width: 1100px){ .batch-grid{ grid-template-columns: repeat(4,1fr); } }

.batch-card{
  background: var(--paper-50); border-radius: var(--radius-lg);
  border: 1px solid var(--slate-100); box-shadow: var(--shadow-card);
  padding: var(--sp-4); display:flex; flex-direction:column; gap: var(--sp-2);
  position:relative;
}
.batch-card .tag{
  align-self:flex-start; font-family: var(--font-mono); font-size:0.68rem; letter-spacing:0.06em;
  text-transform:uppercase; font-weight:700; padding: 0.3em 0.7em; border-radius: var(--radius-pill);
}
.batch-card.tag-dropper .tag{ background: var(--ember-100); color: var(--ember-600); }
.batch-card.tag-integrated .tag{ background: var(--ridge-900); color:#fff; }
.batch-card.tag-foundation .tag{ background: var(--pine-100); color: var(--pine-600); }
.batch-card.tag-prefoundation .tag{ background: var(--merit-gold-100); color: var(--merit-gold-600); }

.batch-card h3{ font-size: var(--step-1); margin-top:0.2rem; }
.batch-card .grade{ font-family: var(--font-display); font-weight:800; font-size: var(--step-2); color: var(--ridge-900); }
.batch-card .desc{ color: var(--slate-600); font-size: var(--step--1); flex:1; }

.batch-date{
  font-family: var(--font-mono); font-size: 0.78rem; color: var(--slate-600);
  border-top: 1px dashed var(--slate-200); padding-top: var(--sp-2); margin-top: var(--sp-1);
}
.batch-date b{ color: var(--ridge-900); display:block; font-size: 0.85rem; }
.batch-countdown{ font-family: var(--font-mono); font-size:0.72rem; color: var(--ember-600); margin-top:0.3rem; }

.other-batches{
  margin-top: var(--sp-6); background: var(--ridge-900); color:#fff; border-radius: var(--radius-lg);
  padding: var(--sp-5);
}
.other-batches h3{ color:#fff; font-size: var(--step-1); }
.other-batches ul{ display:flex; flex-wrap:wrap; gap: 0.6rem; margin-top: var(--sp-3); }
.other-batches li{
  font-family: var(--font-mono); font-size: var(--step--1); padding: 0.5em 1em;
  background: rgba(255,255,255,0.08); border: 1px solid rgba(255,255,255,0.16); border-radius: var(--radius-pill);
}

.feature-strip{ display:grid; gap: var(--sp-3); grid-template-columns: repeat(2,1fr); margin-top: var(--sp-6); }
@media (min-width: 860px){ .feature-strip{ grid-template-columns: repeat(4,1fr); } }
.feature-item{
  background: var(--dusk-100); border-radius: var(--radius-md); padding: var(--sp-4); text-align:center;
}
.feature-item .icon{ width:40px; height:40px; margin:0 auto var(--sp-2); color: var(--ridge-900); }
.feature-item h4{ font-size: var(--step--1); }
