  /* Programme choice cards  */
    .prog-cards { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
    .prog-card {
      background:white; border-radius:16px; border:1.5px solid var(--border);
      overflow:hidden; transition:all 0.25s;
    }
    .prog-card:hover { transform:translateY(-5px); box-shadow:0 16px 48px rgba(13,43,107,0.13); border-color:transparent; }
    .prog-card-head { padding:28px 24px 22px; }
    .prog-card-icon { font-size:36px; margin-bottom:14px; }
    .prog-card-title { font-family:'Playfair Display',serif; font-size:20px; font-weight:700; color:var(--navy); margin-bottom:6px; }
    .prog-card-sub   { font-size:13px; color:var(--text-muted); line-height:1.6; margin-bottom:16px; }
    .prog-card-fee   { font-size:22px; font-weight:700; margin-bottom:4px; }
    .prog-card-fee-label { font-size:12px; color:var(--text-muted); }
    .prog-card-body  { padding:0 24px 24px; border-top:1px solid var(--border); }
    .prog-card-body ul { list-style:none; padding:0; margin:18px 0 20px; display:flex; flex-direction:column; gap:8px; }
    .prog-card-body li { font-size:13px; color:var(--text-mid); display:flex; align-items:flex-start; gap:8px; line-height:1.5; }
    .prog-card-body li::before { content:'✓'; font-weight:700; flex-shrink:0; }
    .prog-card-btn {
      display:block; text-align:center; padding:11px;
      border-radius:9px; font-size:13px; font-weight:700;
      text-decoration:none; transition:opacity 0.2s;
    }
    .prog-card-btn:hover { opacity:0.85; }

    /* Steps — bold card layout */
    .steps-grid {
      display: grid;
      grid-template-columns: repeat(5,1fr);
      gap: 16px;
    }
    .step-card {
      border-radius: 16px;
      padding: 28px 18px 24px;
      text-align: center;
      position: relative;
      transition: transform 0.2s;
    }
    .step-card:hover { transform: translateY(-4px); }
    .step-card::after {
      content: attr(data-arrow);
      position: absolute;
      right: -14px;
      top: 50%;
      transform: translateY(-50%);
      font-size: 20px;
      color: rgba(255,255,255,0.35);
      z-index: 2;
    }
    .step-card:last-child::after { display:none; }
    .step-icon {
      font-size: 32px;
      margin-bottom: 14px;
      display: block;
    }
    .step-num-badge {
      position: absolute;
      top: 14px;
      left: 16px;
      width: 28px;
      height: 28px;
      border-radius: 50%;
      background: rgba(255,255,255,0.25);
      color: white;
      font-size: 12px;
      font-weight: 800;
      display: flex;
      align-items: center;
      justify-content: center;
    }
    .step-card-title {
      font-size: 14px;
      font-weight: 700;
      color: white;
      margin-bottom: 8px;
      line-height: 1.3;
    }
    .step-card-desc {
      font-size: 12px;
      color: rgba(255,255,255,0.75);
      line-height: 1.65;
    }

    /* FAQ */
    .faq-item { border-bottom:1px solid var(--border); }
    .faq-q {
      padding:18px 0; font-size:15px; font-weight:600; color:var(--navy);
      cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:16px;
    }
    .faq-q .faq-icon { font-size:20px; color:var(--royal); flex-shrink:0; transition:transform 0.25s; }
    .faq-a { display:none; padding:0 0 18px; font-size:14px; color:var(--text-mid); line-height:1.75; }
    .faq-item.open .faq-a   { display:block; }
    .faq-item.open .faq-icon { transform:rotate(45deg); }

    @media(max-width:900px) {
      .prog-cards { grid-template-columns:1fr; max-width:480px; margin:0 auto; }
      .steps-row { flex-direction:column; gap:24px; }
      .steps-row::before { display:none; }
    }


   /* RESPONSIVE: Admissions Page  */

  @media (max-width: 900px) {
    /* Programme cards: single column */
    .prog-cards {
      grid-template-columns: 1fr !important;
      max-width: 480px;
      margin-left: auto;
      margin-right: auto;
    }
    /* Steps grid: 3 col then 1 col */
    .steps-grid {
      grid-template-columns: repeat(2,1fr) !important;
      gap: 12px !important;
    }
    .steps-grid > div::after { display: none !important; }
  }
  @media (max-width: 600px) {
    .steps-grid { grid-template-columns: 1fr !important; }
    /* Comparison table wrapper */
    .compare-table-wrap,
    [style*="overflow-x:auto"] {
      overflow-x: auto !important;
      -webkit-overflow-scrolling: touch;
    }
    .compare-table { min-width: 520px; }
    /* FAQ */
    .faq-q { font-size: 14px !important; }
    /* CTA buttons */
    [style*="display:flex"][style*="gap:16px"][style*="justify-content:center"] {
      flex-direction: column !important;
      align-items: center !important;
    }
    [style*="display:flex"][style*="gap:16px"][style*="justify-content:center"] a {
      width: 100% !important;
      max-width: 320px !important;
      text-align: center !important;
    }
  }

  .compare-table { width:100%; border-collapse:separate; border-spacing:0; border-radius:16px; overflow:hidden; box-shadow:0 4px 20px rgba(13,43,107,0.10); }
      .compare-table thead tr { background:var(--navy); }
      .compare-table th { padding:18px 20px; font-size:13px; font-weight:700; color:white; text-align:center; }
      .compare-table th:first-child { text-align:left; color:rgba(255,255,255,0.65); font-weight:500; }
      .compare-table th.sat-col  { border-bottom:3px solid #1A3FA8; background:linear-gradient(180deg,#0D2B6B,#1A3FA8); }
      .compare-table th.eve-col  { border-bottom:3px solid #E8531A; background:linear-gradient(180deg,#9a2a04,#E8531A); }
      .compare-table th.onl-col  { border-bottom:3px solid #16A34A; background:linear-gradient(180deg,#14532d,#16A34A); }
      .compare-table td { padding:14px 20px; font-size:13px; border-bottom:1px solid #F1F5F9; vertical-align:middle; }
      .compare-table td:first-child { font-weight:700; color:var(--navy); background:white; }
      .compare-table td:not(:first-child) { text-align:center; color:var(--text-mid); }
      .compare-table tr:last-child td { border-bottom:none; }
      .compare-table tr:nth-child(even) td { background:#FAFBFE; }
      .compare-table tr:nth-child(even) td:first-child { background:#FAFBFE; }
      .check { color:#16A34A; font-weight:700; }
