/* ================================================================
   about.css — Page-specific styles for about.html
================================================================ */

/* ----------------------------------------------------------------
   INTRO GRID
---------------------------------------------------------------- */
.about__intro-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4rem;
  align-items: center;
}

.about__img-wrap { position: relative; }

.about__img {
  width: 100%;
  aspect-ratio: 4/3;
  /* background: linear-gradient(135deg, var(--navy-mid) 0%, #2a4a6e 100%); */
  border-radius: var(--radius);
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(255,255,255,.3);
  font-size: 4rem;
}

.about__badge {
  position: absolute;
  bottom: -1.25rem;
  right: -1.25rem;
  background: var(--crimson);
  color: var(--white);
  border-radius: var(--radius);
  padding: 1.25rem 1.5rem;
  text-align: center;
  box-shadow: var(--shadow-md);
}
.about__badge-year { font-family: var(--font-display); font-size: 2rem; font-weight: 700; line-height: 1; }
.about__badge-text { font-size: 0.75rem; font-weight: 300; opacity: 0.85; margin-top: 0.25rem; }

/* ----------------------------------------------------------------
   MISSION / VISION / VALUES
---------------------------------------------------------------- */
.mvv__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--gap);
}

.mvv-card {
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  padding: 2rem;
  text-align: center;
  transition: box-shadow var(--transition), transform var(--transition);
}
.mvv-card:hover { box-shadow: var(--shadow-md); transform: translateY(-4px); }

.mvv-card__icon {
  width: 3.5rem;
  height: 3.5rem;
  background: rgba(139,26,26,.08);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--crimson);
  font-size: 1.25rem;
  margin: 0 auto 1.25rem;
}
.mvv-card__title { font-family: var(--font-display); font-size: 1.125rem; font-weight: 700; color: var(--navy); margin-bottom: 0.75rem; }
.mvv-card__text  { font-size: 0.9rem; font-weight: 300; color: var(--text-body); line-height: 1.7; }

/* ----------------------------------------------------------------
   LEADERSHIP GRID
---------------------------------------------------------------- */
.leadership__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--gap);
}

.leader-card {
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  padding: 1.75rem;
  text-align: center;
  transition: box-shadow var(--transition), transform var(--transition);
}
.leader-card:hover { box-shadow: var(--shadow-md); transform: translateY(-4px); }

.leader-card__avatar {
  width: 4rem;
  height: 4rem;
  background: linear-gradient(135deg, var(--navy-mid), #2d5486);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(255,255,255,.7);
  font-size: 1.5rem;
  margin: 0 auto 1rem;
}
.leader-card__name { font-family: var(--font-display); font-size: 1rem; font-weight: 700; color: var(--navy); margin-bottom: 0.25rem; }
.leader-card__role { font-size: 0.75rem; font-weight: 500; color: var(--crimson); letter-spacing: 0.04em; margin-bottom: 0.75rem; text-transform: uppercase; }
.leader-card__bio  { font-size: 0.8125rem; font-weight: 300; color: var(--text-body); line-height: 1.6; }

/* ----------------------------------------------------------------
   PROGRAMMES
---------------------------------------------------------------- */
.prog__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--gap);
}

.prog-item {
  display: flex;
  gap: 1rem;
  align-items: flex-start;
  padding: 1.5rem;
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  transition: box-shadow var(--transition), transform var(--transition);
}
.prog-item:hover { box-shadow: var(--shadow-md); transform: translateY(-3px); }

.prog-item__icon { font-size: 1.25rem; color: var(--crimson); flex-shrink: 0; margin-top: 0.15rem; }
.prog-item__title { font-size: 0.9375rem; font-weight: 500; color: var(--navy); margin-bottom: 0.375rem; }
.prog-item__desc  { font-size: 0.8125rem; font-weight: 300; color: var(--text-body); line-height: 1.6; }

/* ----------------------------------------------------------------
   FACILITIES
---------------------------------------------------------------- */
.facilities__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--gap);
}

.facility-card {
  background: var(--off-white);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  padding: 1.75rem;
  transition: box-shadow var(--transition), transform var(--transition);
}
.facility-card:hover { box-shadow: var(--shadow-md); transform: translateY(-3px); }

.facility-card__icon { font-size: 1.75rem; color: var(--crimson); margin-bottom: 1rem; display: block; }
.facility-card__title { font-family: var(--font-display); font-size: 1rem; font-weight: 700; color: var(--navy); margin-bottom: 0.5rem; }
.facility-card__desc  { font-size: 0.875rem; font-weight: 300; color: var(--text-body); line-height: 1.6; }

/* ----------------------------------------------------------------
   RESPONSIVE
---------------------------------------------------------------- */
@media (max-width: 1024px) {
  .mvv__grid        { grid-template-columns: repeat(2, 1fr); }
  .leadership__grid { grid-template-columns: repeat(2, 1fr); }
  .prog__grid       { grid-template-columns: repeat(2, 1fr); }
  .facilities__grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 768px) {
  .about__intro-grid { grid-template-columns: 1fr; gap: 3rem; }
  .about__badge      { bottom: -1rem; right: 0; }
  .mvv__grid         { grid-template-columns: 1fr; }
  .leadership__grid  { grid-template-columns: 1fr 1fr; }
  .prog__grid        { grid-template-columns: 1fr; }
  .facilities__grid  { grid-template-columns: 1fr; }
}

@media (max-width: 480px) {
  .leadership__grid { grid-template-columns: 1fr; }
}
