/*demo form styles*/

.demo-request-block {
    --error: #f93c3c;
}

    .demo-request-block .form-radio {
        font-size: 14px;
        line-height: 15px
    }

        .demo-request-block .form-radio i {
            transform: rotate(15deg)
        }

        .demo-request-block .form-radio span {
            margin-left: 8px;
            margin-right: 8px
        }

        .demo-request-block .form-radio .fa {
            font-size: 16px
        }

    .demo-request-block .form-submit button {
        margin: 14px 0;
        width: 100%;
    }

    .demo-request-block .form-submit p {
        color: #386c97;
        font-size: 14px;
        line-height: 16px
    }

    .demo-request-block .form-submit #no-credit-card-required-text {
        font-weight: 500;
    }

@media screen and (min-width: 768px) {
    .demo-request-block .form-disclaimer {
        font-size: 16px;
        margin-top: 50px;
        line-height: 24px
    }

    .demo-request-block .form-group {
        font-size: 18px
    }

    .demo-request-block .form-radio .fa {
        position: relative;
        top: -10px
    }

    .demo-request-block #radio-row {
        margin-top: 20px
    }

        .demo-request-block #radio-row div {
            text-align: left;
            width: fit-content;
            padding-right: .5rem
        }
}

.demo-request-block .input-validation-error {
    border: 1px solid var(--error)
}

    .demo-request-block .input-validation-error:focus {
        box-shadow: unset
    }

.demo-request-block .field-validation-error {
    font-size: 13px;
    font-weight: 700;
    color: var(--error)
}

.demo-request-block .field-validation-valid {
    display: none
}

.demo-request-block .language-toggle span {
    min-width: 80px;
    display: inline-block;
    text-align: center;
    padding-bottom: 1rem;
    cursor: pointer;
    font-size: 1rem;
    color: #666;
    font-weight: 500
}

    .demo-request-block .language-toggle span.selected {
        border-bottom: 4px solid #0089CD; /*TaxSlayerPro Cerulean*/
        color: #000;
        font-weight: 700
    }

.demo-request-block .hero-layout .english, .demo-request-block .hero-layout .spanish {
    display: none
}

.demo-request-block .hero-layout[data-language=english] .english, .demo-request-block .hero-layout[data-language=spanish] .spanish {
    display: inline-block
}

.demo-request-block .hero-layout form {
    border-radius: 20px;
    box-shadow: 0px 17px 27px rgba(0, 0, 0, 0.08);
    width: 100%;
    background-color: #FFF;
}

    .demo-request-block .hero-layout form button {
        font-size: 16px;
        text-transform: unset;
        color: #fff;
        font-weight: 700
    }

        .demo-request-block .hero-layout form button.btn-secondary:not([disabled]):hover {
            background: #212329;
            border-color: unset
        }

    .demo-request-block .hero-layout form label {
        font-size: 14px
    }

        .demo-request-block .hero-layout form label .red {
            color: #f93c3c
        }

    .demo-request-block .hero-layout form input, .demo-request-block .hero-layout form select {
        height: 40px;
        border-radius: 4px
    }

@media (min-width: 860px) {
    .demo-request-block .hero-layout[data-language=spanish] .form-group.number {
        min-width: 148px !important;
        max-width: 148px !important
    }
}

@media (max-width: 859px) {
    .demo-request-block .hero-layout form p > * {
        display: block;
        margin: 1rem;
        font-size: 1rem
    }
}

.demo-request-block .hero-layout form #EmailAddress::placeholder, .demo-request-block .hero-layout form #Phone::placeholder {
    font-weight: 400;
    font-size: 13px;
    color: #777
}

.demo-request-block .hero-layout form #Phone {
    opacity: 1;
    color: #777;
    font-family: RobotoMono-Regular;
    font-size: 13px;
    font-weight: 400;
    font-style: normal;
    letter-spacing: 2px
}

.demo-request-block .hero-layout form #radio-row-v3.error .form-radio-wrap-v3 {
    border: 1px solid var(--error) !important
}

.demo-request-block .hero-layout form #radio-row-v3 .form-radio-wrap {
    display: block
}

@media (min-width: 860px) {
    .demo-request-block .hero-layout form #radio-row-v3 .form-radio-wrap {
        display: flex;
        justify-content: space-between
    }

        .demo-request-block .hero-layout form #radio-row-v3 .form-radio-wrap .form-radio-wrap-v3 {
            width: 192px;
            height: 40px
        }
}

.demo-request-block .hero-layout form #radio-row-v3 .form-radio-wrap .form-radio-wrap-v3 {
    border-radius: 4px;
    border: 1px solid #ccc;
    opacity: 1;
    background-color: #fff;
    cursor: pointer;
    position: relative;
    padding: 8px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

    .demo-request-block .hero-layout form #radio-row-v3 .form-radio-wrap .form-radio-wrap-v3 .popover .arrow, .demo-request-block .hero-layout form #radio-row-v3 .form-radio-wrap .form-radio-wrap-v3.selected .unchecked, .demo-request-block .hero-layout form #radio-row-v3 .form-radio-wrap .form-radio-wrap-v3:not(.selected) .checked {
        display: none
    }

    .demo-request-block .hero-layout form #radio-row-v3 .form-radio-wrap .form-radio-wrap-v3.selected {
        border-color: #1b8550;
        background-color: #f8fcf7
    }

    .demo-request-block .hero-layout form #radio-row-v3 .form-radio-wrap .form-radio-wrap-v3 .popover {
        min-height: 160px;
        min-width: 300px;
        font-size: 15px;
        padding-bottom: 8px;
        border-radius: 4px;
        border: 1px solid #838383;
        opacity: 1;
        background-color: #fff
    }

        .demo-request-block .hero-layout form #radio-row-v3 .form-radio-wrap .form-radio-wrap-v3 .popover .popover-title {
            font-size: 15px;
            font-weight: 700;
            background-color: unset;
            border: unset;
            padding-bottom: unset
        }

        .demo-request-block .hero-layout form #radio-row-v3 .form-radio-wrap .form-radio-wrap-v3 .popover::after {
            content: unset
        }

    .demo-request-block .hero-layout form #radio-row-v3 .form-radio-wrap .form-radio-wrap-v3 .radio-info {
        display: flex;
        align-items: center;
        flex-grow: 2;
        padding-left: 8px;
        font-size: 13px
    }

        .demo-request-block .hero-layout form #radio-row-v3 .form-radio-wrap .form-radio-wrap-v3 .radio-info img {
            display: inline-block;
            padding-right: 8px
        }

    .demo-request-block .hero-layout form #radio-row-v3 .form-radio-wrap .form-radio-wrap-v3 input {
        height: unset;
        margin: unset
    }

@media (min-width: 860px) {
    .demo-request-block .hero-layout form {
        border-radius: 20px;
        box-shadow: 0px 17px 27px rgba(0, 0, 0, 0.08);
        padding: 2.333rem 2.5rem 3rem;
        max-width: 506px;
    }

        .demo-request-block .hero-layout form .name, .demo-request-block .hero-layout form .number.state {
            display: flex;
            justify-content: space-between
        }

            .demo-request-block .hero-layout form .name > .form-group, .demo-request-block .hero-layout form .number.state > .form-group {
                min-width: 192px
            }

                .demo-request-block .hero-layout form .name > .form-group.number, .demo-request-block .hero-layout form .number.state > .form-group.number {
                    min-width: 132px;
                    max-width: 132px
                }

                .demo-request-block .hero-layout form .name > .form-group.state-code, .demo-request-block .hero-layout form .number.state > .form-group.state-code {
                    min-width: 250px
                }
}

@media (max-width: 859px) {
    .demo-request-block .hero-layout form {
        padding: 1.6rem 1rem 2.2rem
    }
}

@media (min-width: 1200px) {
    .demo-request-block .hero-layout {
        background-size: cover;
        background-repeat: no-repeat;
    }
}

@media (min-width: 760px) and (max-width:1200px) {
    .demo-request-block .hero-layout {
        background-size: cover !important;
        background-repeat: no-repeat !important;
    }
}

@media (max-width: 859px) {
    .demo-request-block .hero-layout {
        background: unset;
    }
}

@media (min-width: 860px) {
    .demo-request-block .hero-layout form {
        margin-top: -23px;
    }
}

@media (min-width: 993px) {
    .demo-request-block .language-toggle {
        display: flex;
        justify-content: center;
        align-items: center;
        margin-left: -340px;
        margin-bottom: 20px;
    }

    .demo-request-block .hero-layout .container {
        display: flex;
        justify-content: center;
    }
}

@media (min-width: 768px) and (max-width:992px) {
    .demo-request-block .hero-layout {
        padding-left: 80px;
        padding-right: 80px;
    }
}

@media (min-width: 768px) and (max-width:992px) {
    .demo-request-block .language-toggle {
        padding-left: 87px;
    }
}

@media (min-width: 860px) {
    .demo-request-block .language-toggle {
        display: flex;
        align-items: flex-start;
        justify-content: center;
        margin-left: -335px;
    }
}

@media (min-width: 768px) {
    .demo-request-block .language-toggle {
        padding-left: 132px;
        padding-right: 80px;
    }

    .demo-request-block .language-toggle {
        margin-bottom: 20px;
    }
}

@media (min-width: 768px) and (max-width: 859px) {
    .demo-request-block .language-toggle {
        margin-bottom: 0;
    }
}

.demo-request-block .btn-secondary {
    background-color: #36852e;
}

.demo-request-block .field-validation-error {
    color: #f00;
    margin-top: 4px;
}

.demo-request-block .form-radio-wrap {
    position: relative;
    display: inline-block;
    margin-bottom: 8px;
}

@media screen and (max-width:767px) {
    .demo-request-block .form-radio-wrap .form-radio {
        justify-content: flex-start;
    }

    .demo-request-block .form-radio-wrap {
        margin-bottom: 20px;
    }

    .demo-request-block .form-radio span:not(.radio-custom) {
        margin-left: 24px;
    }
}

/*Custom Radio Buttons*/

/* Customize the label (the container) */
.demo-request-block .form-radio {
    display: block;
    position: relative;
    padding-left: 35px;
    margin-bottom: 12px;
    cursor: pointer;
    font-size: 22px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

    /* Hide the browser's default radio button */
    .demo-request-block .form-radio input {
        position: absolute;
        opacity: 0;
        cursor: pointer;
        height: 0;
        width: 0;
    }

/* Create a custom radio button */
.demo-request-block .radio-custom {
    position: absolute;
    top: 0;
    left: 0;
    height: 20px;
    width: 20px;
    background-color: white;
    border: 3px solid #dce9f5;
    border-radius: 50%;
    box-shadow: 0 0 0 6px #b4bfc9;
}

/* On mouse-over, add a grey background color */
.demo-request-block .form-radio:hover input ~ .radio-custom {
    background-color: #ccc;
}

/* When the radio button is checked, add a blue background */
.demo-request-block .form-radio input:checked ~ .radio-custom {
    background-color: #5fa656;
}

    /* Show the indicator (dot/circle) when checked */
    .demo-request-block .form-radio input:checked ~ .radio-custom:after {
        display: block;
    }

/* Style the indicator (dot/circle) */
.demo-request-block .form-radio .radio-custom:after {
    top: 9px;
    left: 9px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: white;
}

.demo-request-block label.form-radio {
    display: inline-block;
}

.demo-request-block .form-radio-wrap i {
    font-family: 'Open Sans',sans-serif;
    transform: translate(-50%,-50%);
    background-color: #666;
    border-radius: 50%;
    cursor: pointer;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    line-height: 16px;
    vertical-align: middle;
    display: inline-flex;
    justify-content: center;
    height: 16px;
    width: 16px;
}

.demo-request-block .form-radio-wrap.active i {
    background: #5fa656;
}

.demo-request-block .form-radio-wrap i span {
    margin: auto;
    font-size: 12px;
}

.demo-request-block .form-control {
    height: 50px;
}

    .demo-request-block .form-control.input-validation-error {
        border-color: #f00;
    }

@media screen and (max-width: 425px) {
    .demo-request-block .form-radio-wrap {
        margin-bottom: 8px !important;
    }

    .demo-request-block label.form-radio {
        display: inline-flex !important;
        align-items: center !important;
    }
}

.demo-request-block #demo-form-title {
    font-size: 30px;
    font-weight: 700;
    text-align: left;
    padding-bottom: 30px;
}

.demo-request-block #demo-form-disclaimer {
    color: #6E7481; /* TaxSlayerPro Graphite */
    font-size: 12px;
    text-align: center;
    line-height: 18px;
    margin-top: 40px;
}

    .demo-request-block #demo-form-disclaimer a {
        color: #6E7481; /* TaxSlayerPro Graphite */
    }

        .demo-request-block #demo-form-disclaimer a:hover {
            text-decoration: underline;
        }
