/* =========================================================
   FEE STRUCTURE PAGE — page-specific only.
   Loaded solely by fee-structure.php via $pageExtraCss.
   ========================================================= */

/* ---- Section scaffolding ---- */
.fs-section{ padding:72px 0 88px; }

.fs-kicker{
  display:inline-flex; align-items:center; gap:10px;
  font-size:.76rem; font-weight:700; letter-spacing:.14em;
  text-transform:uppercase; color:var(--green-700); margin-bottom:12px;
}
.fs-kicker::before{ content:''; width:22px; height:2px; background:var(--gold-500); }

.fs-heading{
  font-size:clamp(1.55rem, 2.4vw, 2.1rem);
  font-weight:800; color:var(--green-900); max-width:680px; margin:0 0 14px;
}
.fs-lede{
  max-width:720px;
  font-size:1rem; line-height:1.75; color:var(--ink-soft);
  margin:0 0 44px;
}

/* ---- Panel per programme level (B.Pharm / M.Pharm / D.Pharm) ---- */
.fs-panel{
  background:#fff;
  border:1px solid var(--line);
  border-radius:var(--radius-lg);
  overflow:hidden;
  margin-bottom:24px;
}
.fs-panel:last-of-type{ margin-bottom:32px; }
.fs-panel--tint{ background:var(--cream); }

.fs-panel-head{
  display:flex;
  align-items:flex-start;
  gap:20px;
  padding:26px 28px;
  border-bottom:1px solid var(--line);
}
.fs-panel-level{
  flex-shrink:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:88px;
  height:34px;
  padding:0 14px;
  border-radius:999px;
  background:var(--green-900);
  color:var(--gold-500);
  font-family:'Poppins',sans-serif;
  font-weight:800;
  font-size:.8rem;
  letter-spacing:.03em;
}
.fs-panel-head h3{
  font-size:1.05rem; font-weight:700; color:var(--green-900);
  margin:0 0 6px; line-height:1.4;
}
.fs-panel-head p{
  margin:0; font-size:.88rem; line-height:1.65; color:var(--ink-soft);
}

/* ---- Course rows (link out to the fee-structure PDF) ---- */
.fs-list{ display:flex; flex-direction:column; }
.fs-row{
  display:grid;
  grid-template-columns:44px 1fr auto auto;
  align-items:center;
  gap:18px;
  padding:16px 28px;
  border-bottom:1px solid var(--line);
  color:var(--ink);
  text-decoration:none;
  transition:background .15s ease;
}
.fs-row:last-child{ border-bottom:none; }
.fs-row:hover{ background:var(--green-100); }

.fs-row-num{
  font-family:'Poppins',sans-serif;
  font-weight:800;
  font-size:.8rem;
  color:var(--green-700);
  background:var(--green-100);
  border-radius:8px;
  padding:8px 0;
  text-align:center;
}
.fs-row:hover .fs-row-num{ background:#fff; }

.fs-row-body{ display:flex; flex-direction:column; gap:3px; min-width:0; }
.fs-row-name{
  font-size:.96rem; font-weight:700; color:var(--green-900);
}
.fs-row-duration{
  font-size:.8rem; color:var(--ink-soft);
}

.fs-row-filetype{
  font-size:.7rem; font-weight:700;
  color:var(--gold-600); background:rgba(240,168,0,.15);
  border-radius:6px; padding:4px 9px;
  letter-spacing:.04em; text-transform:uppercase;
  white-space:nowrap;
}

.fs-row-action{
  flex-shrink:0;
  display:flex; align-items:center; gap:6px;
  font-size:.8rem; font-weight:700; color:var(--green-700);
  white-space:nowrap;
}
.fs-row-action svg{ width:15px; height:15px; }

.fs-disclaimer{
  max-width:760px;
  font-size:.84rem;
  line-height:1.7;
  color:var(--ink-soft);
  font-style:italic;
  border-left:2px solid var(--gold-500);
  padding-left:16px;
}

@media (max-width:640px){
  .fs-panel-head{ flex-direction:column; gap:10px; padding:22px 20px; }
  .fs-row{ grid-template-columns:36px 1fr; padding:14px 20px; row-gap:8px; }
  .fs-row-filetype{ display:none; }
  .fs-row-action{ grid-column:2; }
}
