.form-group {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    position: relative
}

.form-group.flex-row-center {
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-align: center;
    align-items: center
}

.form-group.form-success .label {
    color: #278829
}

.form-group.form-success .form-input,
.form-group.form-success .form-otp,
.form-group.form-success input {
    border: 1px solid #278829
}

.form-group.form-success .error {
    color: #278829
}

.form-group.form-success .error::after {
    font-family: icomoon;
    position: absolute;
    content: "î¤¬";
    font-size: inherit;
    color: #278829;
    left: 0;
    top: .125rem;
    margin-left: 1px;
    box-sizing: border-box
}

.form-group.form-error .label {
    color: #eb0000
}

.form-group.form-error .form-input,
.form-group.form-error .form-otp,
.form-group.form-error input {
    border: 1px solid #eb0000
}

.form-group.form-error .error {
    color: #eb0000
}

.form-group.form-error .error::after {
    font-family: icomoon;
    position: absolute;
    content: "î¥";
    font-size: inherit;
    color: #eb0000;
    left: 0;
    top: .125rem;
    margin-left: 1px;
    box-sizing: border-box
}

.form-group.form-disable .label {
    color: #b4b4b4
}

.form-group.form-disable .form-input,
.form-group.form-disable .form-otp,
.form-group.form-disable input {
    border: 1px solid #b4b4b4;
    background: #f1f1f1;
    pointer-events: none;
    opacity: .7;
    cursor: not-allowed
}

.form-group .date-input-wrap {
    position: relative
}

.form-group .calender-icon {
    font-size: 1.5rem;
    position: absolute;
    right: 8px;
    top: 50%;
    color: #404040;
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

.form-group .label {
    color: #282828;
    font-family: Lato-Regular;
    font-size: .875rem;
    line-height: 20px;
    letter-spacing: .24px;
    margin-bottom: .5rem
}

.form-group .label .star {
    color: #d84646;
    font-family: Lato-Regular;
    font-size: .875rem;
    line-height: 20px;
    letter-spacing: .24px
}

.form-group input[type=date]::-webkit-calendar-picker-indicator {
    display: none;
    -webkit-appearance: none
}

.form-group .input-box,
.form-group .select-box {
    padding: .75rem .5rem;
    border-radius: .25rem;
    border: .0625rem solid #e2e2e2;
    background: #fff;
    color: #9d9d9d;
    outline: 0;
    font-family: Lato-Regular;
    font-size: .875rem;
    line-height: 1.25rem;
    letter-spacing: .015rem
}

.form-group .select-box {
    position: relative;
    padding: 0;
    overflow: hidden;
    z-index: 1
}

.form-group .select-box .select-card {
    appearance: none;
    padding: .75rem .5rem;
    width: 100%;
    color: #9d9d9d;
    cursor: pointer;
    position: relative;
    outline: 0;
    z-index: 2;
    background: #fff
}

.form-group .select-box .icon-down-arrow {
    color: #404040;
    position: absolute;
    z-index: 2;
    cursor: pointer;
    right: 1rem;
    top: .75rem;
    transition: transform .3s ease
}

.form-group .select-box.active .icon-down-arrow {
    -ms-transform: rotate(180deg);
    transform: rotate(180deg)
}

.form-group .radio-group {
    display: -ms-flexbox;
    display: flex;
    padding: .75rem 0
}

.form-group .radio-option {
    margin-right: 8px
}

.form-group .radio-option:last-child {
    margin-right: 0
}

.form-group input[type=radio] {
    margin-right: .375rem
}

.form-group .radio-option {
    position: relative;
    padding-left: 1.5625rem;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center
}

.form-group .radio-option input[type=radio] {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0
}

.form-group .radio-option input[type=radio]:checked~.checkmark {
    border-color: #ed1164
}

.form-group .radio-option input[type=radio]:checked~.checkmark::after {
    position: absolute;
    content: "";
    top: 50%;
    left: 50%;
    height: 7px;
    width: 7px;
    background-color: #ed1164;
    border-radius: 50%;
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.form-group .radio-option .checkmark {
    position: absolute;
    top: 50%;
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    left: 0;
    height: 16px;
    width: 16px;
    background-color: #fff;
    border-radius: 50%;
    border: 2px solid #404040
}

.form-group .flex-group {
    display: -ms-flexbox;
    display: flex
}

.form-group .flex-group label {
    margin: 0
}

.form-group .flex-group .request-text {
    color: #6e6e6e;
    font-size: .875rem;
    line-height: 1.25rem;
    letter-spacing: .015rem
}

.form-group .flex-group .robot-label {
    color: #111928;
    font-size: 1rem;
    line-height: 1.5rem
}

.form-group.captcha-box {
    -ms-flex-direction: unset;
    flex-direction: unset;
    padding: .5rem;
    border-radius: .375rem;
    border: .0625rem solid #dfe4ea;
    background: #fff;
    -ms-flex-align: center;
    align-items: center
}

.form-group .captcha-icon {
    margin-left: .5rem
}

.form-group .form-otp {
    border: 1px solid #e2e2e2;
    background: #fff;
    padding: .875rem 1rem;
    height: 3.5rem;
    width: 3.5rem;
    border-radius: .25rem;
    color: #282828;
    text-align: center;
    font-family: Lato-Bold;
    font-size: 1.25rem;
    line-height: 26px;
    letter-spacing: .16px
}

.form-group .form-otp:not(:last-child) {
    margin-right: .5rem
}

.form-group .form-desc {
    color: #282828;
    font-family: Lato-Regular;
    font-size: .875rem;
    line-height: 20px;
    letter-spacing: .24px
}

.form-group .form-desc.otp-timer {
    color: #6e6e6e
}

.form-group .form-desc.otp-timer a.links-text {
    margin-left: 2.5rem;
    font-size: .75rem;
    font-family: Lato-Bold;
    line-height: .75rem;
    letter-spacing: .0625rem;
    text-transform: uppercase
}

.form-group .form-desc .email-id,
.form-group .form-desc .mobile-num,
.form-group .form-desc .timer {
    margin-inline: 5px
}

.stepper {
    display: -ms-flexbox;
    display: flex;
    list-style: none;
    padding: 0;
    margin: 0 auto;
    max-width: 800px;
    position: relative
}

.stepper .step {
    position: relative;
    text-align: center;
    -ms-flex: 1;
    flex: 1;
    z-index: 1
}

.stepper .step:not(:first-child)::before {
    content: "";
    position: absolute;
    top: .625rem;
    left: 0;
    width: 42%;
    height: 2px;
    background: #ccc;
    z-index: -1
}

.stepper .step:not(:last-child)::after {
    content: "";
    position: absolute;
    top: .625rem;
    right: 0;
    width: 42%;
    height: 2px;
    background: #ccc;
    z-index: -1
}

.stepper .step .circle {
    width: 1.25rem;
    height: 1.25rem;
    border-radius: 50%;
    border: 2px solid #b4b4b4;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 0 auto 1rem;
    background: #fff
}

.stepper .step .step-no {
    color: #b4b4b4;
    font-family: Lato-Regular;
    font-size: .75rem;
    line-height: 12px;
    letter-spacing: .32px;
    text-transform: uppercase
}

.stepper .step.completed .circle {
    color: #fff;
    border: 0
}

.stepper .step.completed .circle::before {
    font-size: 1.25rem;
    font-family: icomoon;
    position: absolute;
    content: "î¤¬";
    color: #28a745
}

.stepper .step.completed .circle .step-no {
    display: none
}

.stepper .step.active .circle {
    background-color: #ed1164;
    color: #fff;
    border: 0
}

.stepper .step.active .circle .step-no {
    color: #fff
}

.stepper .step .step-name {
    color: #282828;
    text-align: center;
    font-family: Lato-Regular;
    font-size: .75rem;
    line-height: 18px;
    letter-spacing: .32px
}

.form-container {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 -.9375rem
}

.form-container .form-group {
    max-width: 23.125rem
}

.form-container.form-2 .form-group {
    width: calc(50% - 1.875rem);
    max-width: 100%;
    margin: .9375rem
}

.form-container.form-3 .form-group {
    width: calc(33.333% - 1.875rem);
    max-width: 100%;
    margin: .9375rem
}

.form-container.form-2 .form-group.w-100,
.form-container.form-3 .form-group.w-100,
.form-container.form-group.w-100 {
    width: 100%
}

input[name=phone] {
    padding-left: 38px
}

span.mob-no-ext {
    font-size: 14px;
    position: absolute;
    left: 8px;
    bottom: 15px
}

.otp-timer .disable {
    pointer-events: none;
    opacity: .5;
    cursor: not-allowed
}

.form-group .opt-input {
    position: relative
}

@media only screen and (max-width:1024px) {
    .form-container.form-2 .form-group {
        width: calc(50% - 1.875rem)
    }
}

@media only screen and (max-width:991px) {
    .form-container.form-3 .form-group {
        width: calc(50% - 1.875rem)
    }
}

@media only screen and (max-width:767px) {
    .form-group {
        max-width: 100%
    }

    .form-container {
        margin: 0 -.5rem
    }

    .form-container.form-2 .form-group {
        margin: 0 8px 25px;
        width: 100%
    }

    .form-container.form-2 .form-group:last-child {
        margin-bottom: 0
    }

    .form-container.form-3 .form-group {
        margin: 8px;
        width: 100%
    }

    .form-container.form-3 .form-group:last-child {
        margin-bottom: 0
    }
}