/* ===== PROGRAMS PAGE – TYPOGRAPHY ALIGNED ===== */

.programs-hero {
  background: #0a5c3d;
  padding: 60px 20px;
  color: #ffffff;
  font-family: 'Inter', 'Segoe UI', Arial, sans-serif;
}

.programs-hero-inner {
  max-width: 1100px;
  margin: auto;
}

.programs-hero .breadcrumb {
  font-size: 13px;
  font-weight: 500;
  opacity: 0.9;
}

.programs-hero p {
  font-size: 16px;
  font-weight: 400;
  color: #e3f4ec;
  line-height: 1.7;
  margin-top: 8px;
}

/* ================= PROGRAMS ================= */

.programs-section {
  max-width: 1100px;
  margin: 60px auto;
  padding: 0 20px;
}

.program-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
  margin-bottom: 50px;
  align-items: start;
}

/* Reverse layout */
.program-row.reverse {
  direction: rtl;
}

.program-row.reverse > * {
  direction: ltr;
}

/* ================= PROGRAM INFO ================= */

.program-info h3 {
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 6px;
}

.program-info p {
  font-size: 14px;
  font-weight: 400;
  color: #555;
  line-height: 1.7;
}

/* ================= ICON ================= */

.prog-icon {
  width: 44px;
  height: 44px;
  background: #e9fbf3;
  border-radius: 50%;
  display: grid;
  place-items: center;
  margin-bottom: 12px;
  transition: transform 0.35s ease;
}

.prog-icon svg {
  width: 20px;
  height: 20px;
}

/* ================= FEATURES ================= */

.program-features {
  background: #ffffff;
  border: 1px solid #eef0f3;
  border-radius: 12px;
  padding: 22px;
  transition: transform 0.35s ease, box-shadow 0.35s ease;
}

.program-features h4 {
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 10px;
}

.program-features ul {
  padding-left: 16px;
}

.program-features li {
  font-size: 13px;
  font-weight: 400;
  color: #555;
  line-height: 1.7;
  margin-bottom: 6px;
  transition: transform 0.25s ease;
}

/* ================= APPROACH ================= */

.programs-approach {
  background: #e9fbf3;
  padding: 60px 20px;
  text-align: center;
  animation: softZoom 1s ease both;
}

.programs-approach h3 {
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 12px;
}

.programs-approach p {
  max-width: 900px;
  margin: auto;
  font-size: 14px;
  font-weight: 400;
  color: #555;
  line-height: 1.7;
}

/* ================= HOVER EFFECTS ================= */

.program-row:hover .prog-icon {
  transform: rotate(-6deg) scale(1.08);
}

.program-features:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 36px rgba(10, 92, 61, 0.15);
}

.program-features li:hover {
  transform: translateX(6px);
}

.program-info {
  transition: transform 0.3s ease;
}

.program-row:hover .program-info {
  transform: translateY(-4px);
}

/* ================= MOBILE SAFE ================= */

@media (max-width: 768px) {
  .program-info h3 {
    font-size: 16px;
  }
}
