.overlay {
    position: fixed;
    display: none;
    top: 0; left: 0;
    width: 100%; height: 100%;
    background: rgba(0,0,0,0.6);
    z-index: 9999;
    justify-content: center;
    align-items: center;
}

/* Overlay */
.form-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.8);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9999;
  opacity: 75%
}

/* Popup container */
.form-popup {
  background: #ECECEC;
  padding: 30px;
  border-radius: 10px;
  width: 90%;
  max-width: 800px;
  position: relative;
  animation: fadeInUp 0.4s ease;
  font-family: 'Poppins', sans-serif;
  padding-top: 50px; /* sesuaikan 60–100px sesuai selera */
}

/* Close Button (X) */
.close-btn {
  position: absolute;
  top: 15px;
  right: 15px;
  width: 40px;
  height: 40px;
  background: #E20026;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;

  /* Tambahan untuk X putih & bold */
  color: #fff;            /* Warna putih */
  font-size: 40px;        /* Ukuran lebih besar */
  font-weight: bold;      /* Tebal */
  line-height: 1;         /* Agar X tidak turun */
}

/* Labels */
.form-popup label {
  font-weight: 900;
  font-size: 18px;
  margin-top: 15px;
  display: block;
  letter-spacing: 0.05em;
}

/* Inputs & Select & Textarea */
.form-popup input,
.form-popup select,
.form-popup textarea {
  width: 100%;
  padding: 10px;
  margin-top: 5px;
  margin-bottom: 15px;
  border: 1px solid #A0A09F;
  border-radius: 10px;
  font-size: 14px;
  box-sizing: border-box;
}

/* Tambahan khusus untuk dropdown select */
.form-popup select {
  padding-right: 2.5rem !important; /* kasih jarak di kanan */
  background-position: right 1rem center !important; /* geser panah sedikit */
  background-repeat: no-repeat !important;
  background-size: 1rem auto !important;

  /* Hilangkan panah bawaan browser */
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;

  /* Panah custom */
  background-image: url("data:image/svg+xml;utf8,<svg fill='%23A0A09F' height='16' viewBox='0 0 24 24' width='16' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/></svg>");
}

textarea {
  resize: vertical;
  min-height: 80px;
}

/* Submit Button */
.submit-btn {
  display: block;
  width: 200px;
  margin: 30px auto 0;
  padding: 12px 20px;
  background: #E20026;
  color: #fff;
  font-size: 20px;
  font-weight: 900;
  border: none;
  border-radius: 30px;
  cursor: pointer;
  letter-spacing: 0.05em;
}

.submit-btn:hover {
  background: #c10020;
}

/* Animation */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(40px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fadeInUp {
    from {transform: translateY(40px); opacity: 0;}
    to {transform: translateY(0); opacity: 1;}
}

input, select, textarea {
    width: 100%;
    margin-bottom: 12px;
    padding: 10px;
    border-radius: 4px;
    border: 1px solid #ccc;
}
/* Ubah tombol panah carousel (prev & next) */
.carousel-control-prev,
.carousel-control-next {
  background-color: transparent; /* default tanpa background */
  width: 50px;
  height: 50px;
  top: 50%;
  transform: translateY(-50%);
  border-radius: 50%;
  border: none;
  display: flex;
  justify-content: center;
  align-items: center;
  color: white; /* Warna panah default */
  font-size: 30px;
  transition: background-color 0.3s ease, color 0.3s ease;
}

/* Hover effect */
.carousel-control-prev:hover,
.carousel-control-next:hover {
  background-color: #d62828; /* Background hover merah */
  color: white; /* Warna panah saat hover */
}
/* Success Checkmark Animation */
.success-checkmark {
  width: 100px;
  height: 100px;
  border-radius: 50%;
  display: flex;                
  align-items: center;      
  justify-content: center;      
  margin: 0 auto;               
  position: relative;
  box-sizing: content-box;
}
.check-icon {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  border: 4px solid #4CAF50;
  position: relative;
  box-sizing: content-box;
}
.icon-line {
  height: 5px;
  background-color: #4CAF50;
  display: block;
  border-radius: 2px;
  position: absolute;
}
.line-tip {
  top: 38px;
  left: 14px;
  width: 25px;
  transform: rotate(45deg);
  animation: lineTip 0.3s ease forwards;
}
.line-long {
  top: 35px;
  right: 8px;
  width: 47px;
  transform: rotate(-45deg);
  animation: lineLong 0.3s ease forwards;
  animation-delay: 0.15s;
}
@keyframes lineTip {
  from { width: 0; }
  to { width: 25px; }
}
@keyframes lineLong {
  from { width: 0; }
  to { width: 47px; }
}