.nf_form-control {
  display: block;
  width: 100%;
  padding: .375rem .75rem;
  font-size: 1rem;
  line-height: 1.5;
  color: #495057;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ced4da;
  border-radius: .25rem;
  transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}
.nf-input-group
{
  position: relative;
  display: flex;
flex-direction: row;
  align-content: center;
  align-items: center;
  justify-content: space-between;
}
.nf_form .nf-input-group {
  border: 1px solid #ced4da;
  border-radius: .25rem;
  align-self: baseline;
  align-items: center;
  width: 100px;
  background-color: #fff;
}
.nf_form .nf-input-group .nf_form-control {
  margin-bottom: 0px;
margin-right: 10px;
border-color: transparent;
}
.nf_form .nf-input-group .btn {
 color: #000;
  font-size: 12px;
  background-color: transparent;
  border: none;
}

button, input, optgroup, select, textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}
.nf_text-center {
  text-align: center !important;
}
.row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  /* margin-right: -15px;
  margin-left: -15px; */
}
 .nf_col-md-9,.nf_col-md-3 {
  position: relative;
  width: 100%;
  min-height: 1px;
  padding-right: 15px;
  padding-left: 15px;
}
.col-12,.col-md-12,.col-lg-6
{
width:100%;
}
@media (min-width: 768px) {
  .nf_col-md-9 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%;
  }
  .nf_col-md-3 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
  }
}
.d-none {
  display: none !important;
}
@media (min-width: 992px) {
  .d-lg-block {
    display: block !important;
  }
}
@media (min-width: 768px) {
  .d-md-block {
    display: block !important;
  }
}

/*------------------------*/
.nf_main_steper {
  width: 100%;
  display: flex;
  position: relative;
  margin-top: 50px;
}

.nf_stepper {
  width: 20rem;
  background-color: #041f42;
  padding: 35px;
  border-radius: 15px;
}

.nf_steps {
  position: relative;
  padding: 0.5rem 0;
  padding-bottom: 35px;
  color: #fff;
}

.nf_steps:after {
  content: '';
  position: absolute;
  height: 100%;
  border: 1px dashed #fff;
  left: calc(50px / 3);
  top: 5px;
  z-index: 1;
}

.nf_steps.step-active span {
  background-color: #fff;
}

.nf_steps span {
  border-top-left-radius: 0;
  border-bottom-right-radius: 0;
  border-top-right-radius: 10px;
  border-bottom-left-radius: 10px;
  border: 1px solid #15b391;
  position: relative;
  z-index: 2;
  padding: 7px 6px;
  margin-right: 25px;
  font-size: 20px;
  font-weight: 600;
  background-color: #041f42;
}

.nf_steps:last-child:after {
  display: none;
}

.nf_form {
  background: #fff;
  text-align: left;
  width: 71%;
  display: none;
   padding-right: 5rem;
  padding-left: 5rem;
  /* padding-left: 5rem; */
  overflow: hidden;
}

.nf_form h1 {
  color: #041f42;
  font-size: 32px;
  font-weight: 700;
  position: relative;
  margin-bottom: 40px;
}

.nf_form h1 span {
  display: block;
  color: #113422;
}

.nf_form h1:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -20px;
  width: 50px;
  height: 5px;
  background-color: #041f42;
}

.nf_form label {
  color: #041f42;
  margin-bottom: 15px;
  font-weight: 600;
}

.nf_form .nf_form-control {
  margin-bottom: 15px;
  border-color: #29abe2;
  color: #041f42;
  height: 50px !important;
}

.nf_form .input-group {
  border: 1px solid #29abe2;
  border-radius: 15px;
  align-self: baseline;
  align-items: center;
  width: 100px;
  background-color: #fff;
}

.nf_form .input-group .nf_form-control {
  margin-bottom: 0;
  border: 0;
  border-radius: 0;
  height: auto !important;
  border-right: 1px solid #29abe2;
  background-color: transparent;
}

.nf_form .input-group .btn {
  background-color: #fff;
  border-radius: 50%;
  padding: 2px 4px;
  color: #000;
  font-size: 12px;
  background-color: transparent;
}

.nf_form .input-group .btn:focus, .nf_form .input-group .btn:visited, .nf_form .input-group .btn:active {
  box-shadow: none;
}

.nf_form .input-group .input-group-btn:first-child {
  border-right: 1px solid #29abe2;
}

.form__btn {
  background-color: #010657;
  font-size: 16px;
  font-weight: 700;
  text-transform: uppercase;
  border-style: solid;
  border-width: 1px 1px 1px 1px;
  border-color: #D8D8D8;
  border-radius: 5px 5px 5px 5px;
  padding: 10px 30px 10px 30px;

  /* background: #041f42;
  color: #fff;
  outline: none;
  border: none;
  padding: 0.5rem 0.7rem;
  width: auto;
  margin: 1rem auto;
  border-top-left-radius: 0;
  border-bottom-right-radius: 0;
  border-top-right-radius: 10px;
  border-bottom-left-radius: 10px;
  text-transform: uppercase;
  font-weight: 700;
  cursor: pointer; */
}

.form__btn.next {
  background-image: linear-gradient(64deg, #103221 57%, #31552F 96%);
}

.form__btn.next:hover {
  background-color: transparent;
 background-image: none;
  border-color: #103221;
  color: #103221;
}

.nf_form--message-text {
  width: 100%;
  background: #fff;
  color: #444;
  padding: 2rem 1rem;
  text-align: center;
  font-size: 1.4rem;
  box-shadow: 0.2rem 0.2rem 0.5rem rgba(51, 51, 51, 0.2);
  animation: fadeIn 0.8s;
  border-radius: 1rem;
  margin-left: 5rem;
}

.nf_form-active {
  z-index: 1;
  display: block;
}

.nf_form-active-animate {
  animation: moveRight 1s;
}

.nf_form-inactive {
  display: block;
  animation: moveLeft 1s;
}

.step-active {
  color: #15b391;
  font-weight: 700;
  font-size: 18px;
}

.custom-control-label::before {
  background-color: #fff;
  border: 1px solid #29abe2;
}

.custom-checkbox .custom-control-input:checked ~ .custom-control-label::before {
  background-color: #113422;
}
.sponsorshipRadio,
.unlimitedVisasRadio
{
  display: flex;
  flex-direction: column;
}

@media screen and (max-width: 992px) {
  .nf_main_steper {
    flex-direction: column;
  }
  .nf_stepper {
    width: 100%;
    display: flex;
    white-space: nowrap;
    overflow: auto;
    justify-content: space-between;
    align-items: end;
  }
  .nf_steps {
    padding-bottom: 0;
  }
  .nf_steps:after {
    height: 1px;
    top: 24px;
    width: 100%;
  }
  .nf_steps emp {
    display: block;
    font-size: 10px;
    margin-top: 10px;
    width: 60px;
    white-space: break-spaces;
  }
  .nf_form {
    width: 100%;
    padding-left: 0;
    padding-top: 25px;
  }
}


 .requirements_table table{
              font-size:1.3rem;
              color:#041f42;
              line-height: 3rem;
          }
          .requirements_table table tr td span{
              color:#113422;
          }
          .requirements_table table tr td{
              border-bottom:1px solid #ccc;
              padding:0px 10px;
          }
          .requirements_table table tr th{
              background: #041f42;
              color:#fff;
              padding:0px 10px;
          }
          .final-step {
                margin: 30px 0px;
            }
          .iti.iti--allow-dropdown{
              width:100%;
          }
          .thanks-tick {
             width: 180px;
          }
          .sm-wrapper{
              width:100%;
          }
          .sm-wrapper h1{
            color: #041f42;
            font-size: 3rem;
            font-weight: 700;
            position: relative;
            margin-bottom: 40px;
          }
          .sm-wrapper p strong{
            color: #041f42;
            font-size: 1.3rem;
            font-weight: 700;
            position: relative;
            margin-bottom: 40px;
          }
          ul.sm-icons-list{
              list-style:none;
              padding-bottom: 50px;
              text-align: center;
              margin: 0 auto;
              width: fit-content;
              width: -moz-fit-content;
              width: -webkit-fit-content;
              padding-left: 0px;
          }
          ul.sm-icons-list li{
                float:left;
                margin: 0px 9px;
          }
          ul.sm-icons-list li img{
              width:30px;
          }
          .nf_steps.step-active span {
                background-color: #fff;
                padding: 10px;
            }
        @media screen and (max-width: 768px){
            .nf_steps emp{
                width: 100%;
                font-size: 1.3rem;
                line-height: 1.6rem;
            }
            .nf_steps:after,.nf_steps,.nf_steps:before{
                display:none;
            }
            .step-active{
                margin:0 auto;
                display:block;
                text-align:center;
            }
            .nf_steps.step-active span{
                margin:0px;
            }

  .nf_form {
    padding-left: 0;
    padding-right: 0px;
  }
        }