/* ══════════════════════════════════════════
   schools.css  —  All school page content
   Typography matched to live site screenshots
══════════════════════════════════════════ */

/* ══════════════════════════════════════════
   SECTION DIVIDER
   — "SCHOOL OF BUSINESS STUDIES"
   — 17px Montserrat 800, #1e2d6e, uppercase
   — letter-spacing: 2.5px
   — flanked by 2px navy lines
══════════════════════════════════════════ */
.section-divider {
  display:         flex;
  align-items:     center;
  justify-content: center;
  gap:             20px;
  margin-bottom:   32px;
}
.section-divider::before,
.section-divider::after {
  content:    '';
  flex:       1;
  max-width:  130px;
  height:     2px;
  background: #1e2d6e;
}
.section-divider h2 {
  font-family:    'Montserrat', sans-serif;
  font-weight:    800;
  font-size:      17px;
  color:          #1e2d6e;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  white-space:    nowrap;
}

/* ══════════════════════════════════════════
   INTRO SECTION
   — H2 title:  same as section-divider style
   — Tagline:   20px Montserrat 700, #1e2d6e
   — Body text: 15px Open Sans 400, #444,
                justified, line-height 1.88
══════════════════════════════════════════ */
.school-intro { padding: 64px 0 50px; text-align: center; }

.school-intro h2 {
  font-family:    'Montserrat', sans-serif;
  font-weight:    800;
  font-size:      17px;
  color:          #1e2d6e;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  display:        flex;
  align-items:    center;
  justify-content: center;
  gap:            20px;
  margin-bottom:  26px;
}
.school-intro h2::before,
.school-intro h2::after {
  content:    '';
  width:      130px;
  height:     2px;
  background: #1e2d6e;
  display:    block;
}

.school-intro .tagline {
  font-family:   'Montserrat', sans-serif;
  font-weight:   700;
  font-size:     20px;
  color:         #1e2d6e;
  margin-bottom: 18px;
  line-height:   1.3;
}

.school-intro p:not(.tagline) {
  font-family:  'Open Sans', sans-serif;
  font-size:    15px;
  font-weight:  400;
  color:        #444444;
  text-align:   justify;
  line-height:  1.88;
  max-width:    870px;
  margin:       0 auto;
}

/* ══════════════════════════════════════════
   WHY CHOOSE US
   — List labels:  Montserrat 700, #1e2d6e
   — List body:    Open Sans 400, 14.5px, #555
   — Square bullet: 18×18 navy block
══════════════════════════════════════════ */
.why-section { padding: 0 0 56px; }

.why-list { list-style: none; max-width: 900px; margin: 0 auto; }

.why-list li {
  display:       flex;
  align-items:   flex-start;
  gap:           12px;
  margin-bottom: 16px;
  font-family:   'Open Sans', sans-serif;
  font-size:     14.5px;
  font-weight:   400;
  color:         #555555;
  line-height:   1.75;
}
.why-list li::before {
  content:    '';
  display:    block;
  min-width:  18px;
  height:     18px;
  background: #1e2d6e;
  margin-top: 4px;
  flex-shrink: 0;
}
.why-list li strong {
  font-family: 'Open Sans', sans-serif;
  font-weight: 700;
  color:       #1e2d6e;
}

/* ══════════════════════════════════════════
   PROGRAMS OFFERED
   — Title:  18px, #2d6ea8 (blue accent)
   — Items:  15px Open Sans 700, #333
══════════════════════════════════════════ */
.programs-section { padding: 0 0 56px; }

/* Override divider lines to blue */
.programs-section .section-divider::before,
.programs-section .section-divider::after { display: none; }
.programs-section .section-divider h2 {
  font-size:      18px;
  color:          #2d6ea8;
  letter-spacing: 1px;
}

.programs-list {
  list-style:  disc;
  padding-left: 34px;
  max-width:   700px;
  margin:      0 auto;
}
.programs-list li {
  font-family:   'Open Sans', sans-serif;
  font-weight:   700;
  font-size:     15px;
  color:         #333333;
  margin-bottom: 12px;
  line-height:   1.5;
}

/* ══════════════════════════════════════════
   FEE / REQUIREMENTS TABS
   — Buttons: 13px Montserrat 700, navy border
   — Active:  white text on navy bg + arrow
══════════════════════════════════════════ */
.fee-section { padding: 0 0 70px; }

.fee-btns { display: flex; gap: 8px; }

.fee-btn {
  flex:            1;
  padding:         15px 12px;
  border:          2px solid #1e2d6e;
  background:      #ffffff;
  color:           #1e2d6e;
  font-family:     'Montserrat', sans-serif;
  font-weight:     700;
  font-size:       13px;
  letter-spacing:  0.4px;
  cursor:          pointer;
  border-radius:   5px;
  display:         flex;
  align-items:     center;
  justify-content: center;
  gap:             8px;
  transition:      background 0.18s, color 0.18s;
  position:        relative;
}
.fee-btn i { font-size: 15px; }

.fee-btn.active {
  background: #1e2d6e;
  color:      #ffffff;
}
.fee-btn.active::after {
  content:      '';
  position:     absolute;
  bottom:       -11px;
  left:         50%;
  transform:    translateX(-50%);
  border-left:  11px solid transparent;
  border-right: 11px solid transparent;
  border-top:   11px solid #1e2d6e;
  z-index:      2;
}

.fee-container-outer {
  border:        2px solid #1e2d6e;
  border-radius: 5px;
  margin-top:    14px;
  background:    #ffffff;
}

/* ── PANELS ── */
.fee-panel         { display: none; padding: 32px 34px; }
.fee-panel.active  { display: block; }

/* Panel intro text "(Paid Once)" */
.fee-panel > p {
  font-family: 'Open Sans', sans-serif;
  font-size:   14px;
  font-weight: 400;
  color:       #666666;
  margin-bottom: 16px;
}

/* Ordered lists inside panels */
.fee-panel ol {
  padding-left: 22px;
}
.fee-panel ol li {
  font-family:   'Open Sans', sans-serif;
  font-size:     14.5px;
  font-weight:   400;
  color:         #555555;
  margin-bottom: 10px;
  line-height:   1.6;
}

/* ══════════════════════════════════════════
   FEE TABLES
   — Section label (DIPLOMA/CERTIFICATE):
     13.5px Montserrat 700, uppercase, #333
   — TH: 12px Montserrat 700, uppercase,
         letter-spacing 0.8px
   — TD: 14px Open Sans 400, #444
══════════════════════════════════════════ */
.fee-table-group              { margin-bottom: 36px; }
.fee-table-group:last-child   { margin-bottom: 0; }

.fee-table-group h3 {
  font-family:    'Montserrat', sans-serif;
  font-weight:    700;
  font-size:      13.5px;
  color:          #333333;
  letter-spacing: 1px;
  text-transform: uppercase;
  margin-bottom:  12px;
}

.fee-table { width: 100%; border-collapse: collapse; display: block; overflow-x: auto; white-space: nowrap; }

.fee-table th {
  border:         1px solid #cccccc;
  padding:        12px 16px;
  text-align:     left;
  font-family:    'Montserrat', sans-serif;
  font-weight:    700;
  font-size:      12px;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  color:          #333333;
  background:     transparent;
}

.fee-table td {
  border:      1px solid #cccccc;
  padding:     12px 16px;
  font-family: 'Open Sans', sans-serif;
  font-size:   14px;
  font-weight: 400;
  color:       #444444;
  line-height: 1.5;
}

/* ── OTHER REQUIREMENTS DISCLAIMER ── */
.fee-disclaimer { margin-top: 22px; padding-top: 10px; }

.fee-disclaimer p {
  font-family:  'Open Sans', sans-serif;
  font-size:    14px;
  font-weight:  400;
  color:        #444444;
  line-height:  1.75;
}
.fee-disclaimer strong {
  font-weight: 700;
  color:       #333333;
}


/* ── RESPONSIVE ── */
@media (max-width: 900px) {
  .fee-container-outer { padding: 20px; }
  .fee-btn { padding: 12px 10px; font-size: 12px; }
}
@media (max-width: 600px) {
  .fee-btns { flex-direction: column; width: 100%; align-items: stretch; gap: 10px; }
}
