
  @media (max-width:576px) {
        .h-sm-100vh {
          min-height: 100vh;
        }
      }
input {
      box-sizing: border-box; 
      overflow: hidden;
      width: 100%; 
  }
  .recurring-payment-bg {
    background-image: url("/images/recurring-payment.svg");
    background-size: cover;
    background-repeat: no-repeat;
    border-bottom-left-radius: 5rem; 
    border-bottom-right-radius: 5rem; 
    border-top-left-radius: 0; 
    border-top-right-radius: 0; 
    background-position: 0 -160px;
  }
  .card-container {
    display: grid;
    grid-template-columns: repeat(2, 0fr); /* Two columns */
    gap: 30px;    
  }

  .card {
    background-color: white;
    color: black;    
    border-radius: 12px;
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.2);    
    position: relative;
    transition: transform 0.3s, box-shadow 0.3s;
    margin: auto;
    width: 200px;
    height: 220px;
  }

  @media (min-width: 992px) {
    .card:nth-child(1),
    .card:nth-child(3) {
        transform: translateY(-20px); /* Move the 1st and 3rd cards up */
    }

    .card:nth-child(2),
    .card:nth-child(4) {
        transform: translateY(20px); /* Move the 2nd and 4th cards down */
    } 
  }

  .form-bg {
    
    box-shadow: 1px 2px 3px #00000029;
    border: 0.5px solid #92BDCB;
    border-radius: 25px;
    backdrop-filter: blur(38px); /* Apply background blur */
    -webkit-backdrop-filter: blur(28px);
  }

  .checkbox-container {     
    
    grid-template-columns: repeat(4, 1fr);
  }
  .form-check-label {
    cursor: pointer;
    background: #FFFFFF 0% 0% no-repeat padding-box;
    box-shadow: 0px 1px 5px #0000002E;
    border-radius: 5px;
    width: 95%;
    height: auto;
    border: 1px solid #DDF6F0;
    padding: 10px;
  }

  .service_list {
    text-align: center;
    width: 100%;
  }

  .service_list input[type="checkbox"]:checked + label{
    box-shadow: 0px 1px 3px #00987171;
    border: 1px solid #019E7F;
  }
  
  .service_name {
  width: 100%;
  font-weight: 600;
  margin: 8px auto;
  color: #000;
  }

  .service_list{
  width: 100%;
  }

  .service_check_list{
  text-align: left;
  visibility: visible;
  border: 1px solid #B50068;
  width: 12px;
  height: 12px;
  padding: 1px;
  border-radius: 50px;
  position: relative;
  }

  .service_check_list svg{
  visibility: hidden;
  border-radius: 50px;
  background: transparent linear-gradient(180deg, #a50faa 0%, #790c5d 100%) 0% 0% no-repeat padding-box;
  position: absolute;
  left: 0px;
  top: 0px;
  width: 10px;
  }

  .service_check_list path{
  stroke: #fff;
  }

  .service_list input[type="checkbox"]:checked + label .service_check_list svg{
  visibility: visible;
  }

    
  .input-field-container .form-control{
    background-color:#FFFFFF;
    box-shadow: inset 0px 3px 6px #0000007C;
    border-radius: 10px;
  }
  .input-field-container .input-field-animation:focus ~ label,
  .input-field-container .input-field-animation:valid ~ label,
  .input-field-container .input-field-animation:not([value=""]) ~ label{
  background:linear-gradient(transparent 90%,  transparent 48%);
    color:blue !important;

  top: -10px !important;
  }
  .top-5px {
    top: 5px !important;
}

.input-field-container .form-control:focus ~ label,
  .input-field-container .form-control:valid ~ label,
  .input-field-container .form-control:not([value=""]) ~ label,
  .input-field-container textarea:focus ~ label,
  .input-field-container textarea:valid ~ label,
  .input-field-container textarea:not([value=""]) ~ label {
    top: -10px !important;
    font-size: 11px;
    color:blue !important;
    transition: all 0.2s cubic-bezier(0.4,0,0.2,1);
    background: linear-gradient(transparent 90%, transparent 48%);
    z-index: 2;
  }
  .input-field-container label {
    transition: all 0.2s cubic-bezier(0.4,0,0.2,1);
    pointer-events: none;
    left: 10px;
    top: 12px;
    position: absolute;
    background: transparent;
    z-index: 1;
  }

  @media (max-width: 500px) {
    .checkbox-container {
        grid-template-columns: repeat(2, 1fr) !important;
        grid-template-rows: repeat(2, 1fr);
        gap: 10px;
    }

    .card-container{
      display: block;      
    }

    .card {
      width: 80vw;
      height: auto;
      margin: 10px auto 0;
    }
}

  /* Remove border on phone number input focus */
  .phone-number-container input:focus {
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
  }

  /* Make all form fields the same height as phone number field */
  .input-field-container .form-control,
  .phone-number-container input {
    height: 44px;
    min-height: 44px;
    padding-top: 10px;
    padding-bottom: 10px;
    box-sizing: border-box;
  }

