.engage-section{
  background:#f2f2f2;
  padding:100px 0;
}

.engage-grid{
  display:grid;
  grid-template-columns:1fr 1.4fr;
  gap:60px;
}

.section-title{
  color:#000;
  font-size:32px;
  margin-bottom:30px;
  font-weight: 700;
}

.get-involved{
  background:linear-gradient(135deg,#ffb703,#ffd166);
  padding:40px;
  border-radius:24px;
}

.engage-cards{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:20px;
}

.engage-card{
  position:relative;
  background:#111;
  border-radius:16px;
  height:160px;
  text-align:center;
  color:#ffb703;
  font-weight:600;
  text-decoration:none;
  overflow:hidden;
  transition:all .4s ease;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
}

.engage-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,#ffb703,#ffd166);
  transform:translateY(100%);
  transition:.5s ease;
  z-index:1;
}

.engage-card .card-icon,
.engage-card span{
  position:relative;
  z-index:2;
  transition:.4s ease;
}

.card-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:10px;
}

.f-frame{
  width:60px;
  height:60px;
  display:flex;
  align-items:center;
  justify-content:center;
}

.f-frame svg{
  width:100%;
  height:100%;
  object-fit:contain;
  fill:#ffb703;
  transition:.4s ease;
}

.engage-card span{
  font-size:16px;
}

.engage-card:hover::before{
  transform:translateY(0);
}

.engage-card:hover{
  transform:translateY(-6px);
  box-shadow:0 20px 40px rgba(255,183,3,.45);
}

.engage-card:hover span{
  color:#111;
}

.engage-card:hover .f-frame svg{
  fill:#111;
  transform:scale(1.1);
}

/* ==========================
   TESTIMONIALS
========================== */

.testimonials{
  background:rgba(255,255,255,.05);
  padding:40px;
  border-radius:24px;
  color: #000;
  box-shadow: 0 12px 30px rgba(0,0,0,.12);
}

.testimonial-slider{
  position:relative;
  overflow:hidden;
}

.testimonial-track{
  display:flex;
  transition:transform .6s ease;
}

.testimonial{
  min-width:100%;
  opacity:.4;
  transition:.4s ease;
}

.testimonial.active{
  opacity:1;
}

.testimonial p{
  font-size:18px;
  line-height:1.7;
  text-align:justify;
}

.testimonial h4{
  margin-top:15px;
  color:#ffb703;
}

.testimonial span{
  font-size:14px;
  opacity:.7;
}

.testimonial-controls{
  position:absolute;
  right:0;
  bottom:-50px;
  display:flex;
  gap:12px;
}

.testimonial-controls button{
  width:42px;
  height:42px;
  border-radius:50%;
  border:none;
  background:#ffb703;
  color:#111;
  font-size:20px;
  cursor:pointer;
  transition:.3s ease;
}

.testimonial-controls button:hover{
  transform:translateY(-2px);
  box-shadow:0 8px 20px rgba(255,183,3,.5);
}


/* === Micro Interactions === */

.engage-card{
  will-change: transform;
}

.engage-card:active{
  transform:scale(.97);
}

/* Ripple effect */
.engage-card{
  overflow:hidden;
}

.engage-card::after{
  content:"";
  position:absolute;
  width:20px;
  height:20px;
  background:rgba(255,255,255,.4);
  border-radius:50%;
  transform:scale(0);
  opacity:0;
  pointer-events:none;
}

.engage-card.ripple::after{
  animation:ripple 0.6s ease;
}

@keyframes ripple{
  to{
    transform:scale(15);
    opacity:0;
  }
}


.engage-section,
.engage-grid,
.get-involved,
.testimonials,
.engage-cards,
.testimonial-slider,
.testimonial-track,
.testimonial {
  max-width: 100%;
  box-sizing: border-box;
}

.engage-card {
  width: 100%;
  min-width: 0;
}

.testimonial-track {
  min-width: 100%;
}

/* ================== RESPONSIVE  ================== */

@media (max-width: 1024px) {
  .engage-grid {
    grid-template-columns: 1fr;
    gap: 50px;
  }
}

@media (max-width: 768px) {
  .engage-section {
    padding: 80px 16px;
  }

  .get-involved,
  .testimonials {
    padding: 30px 24px;
  }

  .engage-cards {
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
  }

  .engage-card {
    height: auto;
    min-height: 140px;
  }

  .testimonial p {
    font-size: 16px;
  }
}

@media (max-width: 520px) {
  .engage-section {
    padding: 60px 12px;
  }

  .engage-cards {
    grid-template-columns: 1fr;
  }

  .get-involved,
  .testimonials {
    padding: 24px 18px;
  }

  .section-title {
    font-size: 26px;
    text-align: center;
  }

  .testimonial p {
    font-size: 15px;
  }

  .testimonial-controls {
    right: 50%;
    transform: translateX(50%);
    bottom: -40px;
  }
}
