/* =========================================================
   ASBM University — Academics / Doctoral Programme (Ph.D.)
   ========================================================= */

/* ---------- Disciplines ---------- */
.dc-grid { display: grid; grid-template-columns: repeat(2, 1fr); column-gap: 40px; border-top: 1px solid var(--line); }
.dc-item { position: relative; padding: 26px 0 30px; border-bottom: 1px solid var(--line); }
.dc-item::after { content: ""; position: absolute; left: 0; bottom: -1px; height: 2px; width: 0; background: var(--gold); transition: width .5s var(--ease); }
.dc-item:hover::after { width: 100%; }
.dc-num { display: block; font-size: .8rem; font-weight: 700; color: var(--gold-dark); margin-bottom: 8px; }
.dc-item h3 { font-family: var(--font-serif); font-weight: 600; font-size: 1.35rem; margin-bottom: 8px; }
.dc-item p { font-size: .86rem; color: var(--muted); line-height: 1.65; margin: 0; }

/* ---------- Selection ---------- */
.dc-select { padding: 72px 0; color: #fff; background: radial-gradient(circle at 85% 50%, rgba(245, 179, 36, .12), transparent 40%), var(--navy-900); }
.dc-select-text { color: rgba(255, 255, 255, .72); max-width: 480px; }
.dc-weights { display: flex; gap: 56px; margin-bottom: 18px; }
.dc-weight-num { display: block; font-family: var(--font-serif); font-weight: 600; font-size: clamp(3rem, 6vw, 4.4rem); line-height: 1; color: var(--gold); }
.dc-weight small { font-size: .82rem; color: rgba(255, 255, 255, .7); }
.dc-split { display: flex; gap: 4px; height: 10px; border-radius: 10px; overflow: hidden; background: rgba(255, 255, 255, .08); max-width: 420px; }
.dc-split span { width: 0; transition: width 1.4s var(--ease); }
.dc-split span:first-child { background: var(--gold); }
.dc-split span:last-child { background: rgba(255, 255, 255, .55); transition-delay: .4s; }
.dc-split.is-visible span { width: var(--w); }

/* ---------- Eligibility ---------- */
.dc-checks { list-style: none; margin: 0; padding: 0; }
.dc-checks li { display: flex; gap: 12px; align-items: flex-start; padding: 10px 0; font-size: .95rem; color: var(--ink); }
.dc-checks i { flex: 0 0 22px; width: 22px; height: 22px; border-radius: 50%; display: grid; place-items: center; background: #e5f6ec; color: var(--green); font-size: .9rem; margin-top: 1px; }

/* ---------- Fees card ---------- */
.dc-fees { background: var(--soft); border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 24px; }
.dc-fees dl { margin: 0; }
.dc-fees dl > div { display: grid; grid-template-columns: 1fr 1.3fr; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--line); transition: padding .3s var(--ease); }
.dc-fees dl > div:last-child { border-bottom: 0; }
.dc-fees dl > div:hover { padding-left: 6px; }
.dc-fees dt { font-size: .8rem; font-weight: 500; color: var(--muted); }
.dc-fees dd { margin: 0; font-size: .9rem; font-weight: 700; color: var(--navy-900); }

/* =========================================================
   Responsive
   ========================================================= */
@media (max-width: 767.98px) {
    .dc-grid { grid-template-columns: 1fr; }
    .dc-select { padding: 56px 0; }
}
@media (max-width: 575.98px) {
    .dc-weights { gap: 32px; }
    .dc-fees dl > div { grid-template-columns: 1fr; gap: 2px; }
}
