/* Programs Section */
.program-card {
  transition: transform 0.4s ease, box-shadow 0.4s ease;
  border-radius: 15px;
  overflow: hidden;
}
.program-card:hover {
  transform: translateY(-12px) scale(1.03);
  box-shadow: 0 12px 30px rgba(0,0,0,0.2);
}
.program-card img {
  transition: transform 0.5s ease;
}
.program-card:hover img {
  transform: scale(1.1);
}

/* Testimonials Carousel */
#testimonialCarousel .carousel-item {
  transition: transform 1s ease-in-out, opacity 1s ease-in-out;
}
#testimonialCarousel .carousel-control-prev-icon,
#testimonialCarousel .carousel-control-next-icon {
  filter: invert(1);
}

/* Partners Carousel */
.grayscale {
  filter: grayscale(100%);
  transition: all 0.4s ease;
}
.grayscale:hover {
  filter: grayscale(0%);
  transform: scale(1.05);
}
#partnersCarousel .carousel-item {
  transition: transform 1s ease-in-out, opacity 1s ease-in-out;
}
#partnersCarousel .carousel-control-prev-icon,
#partnersCarousel .carousel-control-next-icon {
  filter: invert(1);
}

/* Highlights */
.highlight-edu { color:#ff7f00; font-weight:600; }
.highlight-health { color:#0077b6; font-weight:600; }
.highlight-water { color:#28a745; font-weight:600; }
.highlight-welfare { color:#ff4757; font-weight:600; }
/* Vision & Mission */
.vision-box, .mission-box {
  transition: transform 0.4s ease, box-shadow 0.4s ease;
}
.vision-box:hover, .mission-box:hover {
  transform: translateY(-8px);
  box-shadow: 0 12px 30px rgba(0,0,0,0.15);
}

/* Sub-box styling */
.sub-box {
  transition: transform 0.4s ease, background 0.4s ease;
}
.sub-box:hover {
  transform: scale(1.05);
  background: #fdfdfd;
}

/* Icon Circle */
.icon-circle {
  width: 80px;
  height: 80px;
  background: #e6f0ff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  animation: pulse 2s infinite;
}
@keyframes pulse {
  0% { transform: scale(1); box-shadow: 0 0 0 0 rgba(0, 87, 183, 0.4); }
  70% { transform: scale(1.1); box-shadow: 0 0 0 15px rgba(0, 87, 183, 0); }
  100% { transform: scale(1); box-shadow: 0 0 0 0 rgba(0, 87, 183, 0); }
}
/* Core Values Section */
.core-box {
  transition: transform 0.4s ease, box-shadow 0.4s ease;
  background: #fff;
}
.core-box:hover {
  transform: translateY(-10px);
  box-shadow: 0 12px 25px rgba(0,0,0,0.15);
}

/* Icon Circle */
.icon-circle-value {
  width: 70px;
  height: 70px;
  background: #f1f5ff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.4s ease;
  animation: float-icon 3s ease-in-out infinite;
}
.icon-circle-value:hover {
  background: #e0ebff;
  transform: rotate(10deg) scale(1.1);
}

/* Floating Animation */
@keyframes float-icon {
  0%   { transform: translateY(0); }
  50%  { transform: translateY(-8px); }
  100% { transform: translateY(0); }
}
/* Team Section */
.team-card {
  transition: transform 0.4s ease, box-shadow 0.4s ease;
}
.team-card:hover {
  transform: translateY(-10px);
  box-shadow: 0 15px 35px rgba(0,0,0,0.15);
}
.team-img {
  width: 120px;
  height: 120px;
  object-fit: cover;
  border-radius: 50%;
  border: 4px solid #f1f1f1;
  transition: transform 0.4s ease, border 0.4s ease;
}
.team-card:hover .team-img {
  transform: scale(1.1);
  border: 4px solid #ff7f00;
}
.social-icons a {
  margin: 0 6px;
  font-size: 15px;
  color: #555;
  transition: color 0.3s ease, transform 0.3s ease;
}
.social-icons a:hover {
  color: #ff7f00;
  transform: scale(1.2);
}
/* Governance Page Styling */
section h2 {
  font-size: 30px;
  color: #003366;
}
section p {
  font-size: 15px;
  line-height: 1.7;
  color: #444;
}
/* Policies Page */
.policy-card {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.policy-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 10px 25px rgba(0,0,0,0.15);
}
/* Financials Page */
.financial-card {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.financial-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 10px 25px rgba(0,0,0,0.15);
}
.financial-card h6 {
  font-size: 16px;
}
/* Certificates Page */
.certificate-card {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.certificate-card:hover {
  transform: translateY(-8px) scale(1.03);
  box-shadow: 0 12px 28px rgba(0,0,0,0.15);
}
.certificate-img {
  height: 180px;
  object-fit: cover;
  border-radius: 10px;
  transition: transform 0.4s ease;
}
.certificate-card:hover .certificate-img {
  transform: scale(1.05);
}
/* Team Section */
.team-card {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  border-radius: 15px;
}
.team-card:hover {
  transform: translateY(-10px) scale(1.03);
  box-shadow: 0 12px 30px rgba(0,0,0,0.2);
}
.team-img {
  width: 160px;
  height: 160px;
  object-fit: cover;
  border-radius: 50%;
  border: 5px solid #f1f1f1;
  transition: transform 0.4s ease;
}
.team-card:hover .team-img {
  transform: scale(1.1);
}
.social-links a {
  font-size: 18px;
  color: #555;
  transition: color 0.3s ease;
}
.social-links a:hover {
  color: #ff7f00;
}

/* Events */
.event-card {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  overflow: hidden;
}
.event-card:hover {
  transform: translateY(-8px) scale(1.02);
  box-shadow: 0 12px 28px rgba(0,0,0,0.15);
}
.event-img {
  height: 200px;
  width: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}
.event-card:hover .event-img {
  transform: scale(1.08);
}
/* Get Involved */
.involve-card {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  border-radius: 15px;
}
.involve-card:hover {
  transform: translateY(-10px) scale(1.03);
  box-shadow: 0 12px 30px rgba(0,0,0,0.2);
}
.icon-circle {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.4s ease;
}
.involve-card:hover .icon-circle {
  transform: rotate(10deg) scale(1.1);
}
/* Contact */
.map-container {
  overflow: hidden;
  border-radius: 15px;
}
form .form-control {
  border-radius: 10px;
  padding: 12px 15px;
  font-size: 15px;
}
form .btn {
  transition: all 0.3s ease;
}
form .btn:hover {
  background: #ff7f00;
  border-color: #ff7f00;
}
/* Career Page */
.career-card {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  border-radius: 15px;
}
.career-card:hover {
  transform: translateY(-10px) scale(1.03);
  box-shadow: 0 12px 28px rgba(0,0,0,0.2);
}
.career-card i {
  transition: transform 0.4s ease;
}
.career-card:hover i {
  transform: rotate(8deg) scale(1.1);
}
/* Financials */
.finance-card {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  border-radius: 15px;
}
.finance-card:hover {
  transform: translateY(-10px) scale(1.03);
  box-shadow: 0 12px 28px rgba(0,0,0,0.2);
}
.finance-card i {
  transition: transform 0.4s ease;
}
.finance-card:hover i {
  transform: rotate(8deg) scale(1.1);
}
/* Policies */
.policy-card {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  border-radius: 15px;
}
.policy-card:hover {
  transform: translateY(-10px) scale(1.03);
  box-shadow: 0 12px 28px rgba(0,0,0,0.2);
}
.policy-card i {
  transition: transform 0.4s ease;
}
.policy-card:hover i {
  transform: rotate(8deg) scale(1.1);
}
/* Trustees */
.trustee-card {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  border-radius: 15px;
}
.trustee-card:hover {
  transform: translateY(-10px) scale(1.03);
  box-shadow: 0 12px 30px rgba(0,0,0,0.2);
}
.trustee-img {
  width: 160px;
  height: 160px;
  object-fit: cover;
  border-radius: 50%;
  border: 5px solid #f1f1f1;
  transition: transform 0.4s ease;
}
.trustee-card:hover .trustee-img {
  transform: scale(1.1);
}
/* Governance Org Structure */
.org-structure {
  position: relative;
}
.org-box {
  padding: 20px 25px;
  border-radius: 12px;
  font-weight: 600;
  min-width: 220px;
  box-shadow: 0 6px 20px rgba(0,0,0,0.15);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.org-box:hover {
  transform: translateY(-8px) scale(1.03);
  box-shadow: 0 12px 30px rgba(0,0,0,0.25);
}
/* Governance Policy Cards */
.policy-card {
  border-radius: 12px;
  background: #fff;
  transition: all 0.4s ease;
}
.policy-card:hover {
  transform: translateY(-8px) scale(1.03);
  box-shadow: 0 12px 30px rgba(0,0,0,0.2);
}
.policy-card i {
  transition: transform 0.3s ease;
}
.policy-card:hover i {
  transform: scale(1.2);
}
