﻿/* Overrides for old styling */
h2 {
    margin: 0;
    padding: 18px 0 9px 0;
    font-size: 19px;
}
.outer_container {
    background: none;
}


.form_container {
    font-size: 120%;
    margin-bottom:3%;
}
    .form_container p {
        padding: 0 12px 16px 2%;
        line-height: normal;
        color: #121111;
        font-size: var(--fontsize);
        padding-bottom: 1vw;
        padding-bottom: clamp(15px, 1vw, 25px);
    }
    .form_heading h1, .form_container h2 {
        /*text-align: center;*/
        font-weight: 400;
        line-height: clamp(25px, 5vw, 38px);
        font-size: 2rem;
        color: #121111;
    }

.form_heading h1 {
    font-weight: bold;
}

.form_container h2 {
    font-size: 1.9rem;
}

.form_container h3 {
    font-size: 130%;
    font-weight: normal;
    color: #121111;
    border-top-left-radius: 7px;
    border-top-right-radius: 7px;
    padding: .7em .9em .5em .7em;
    position: relative;
    top: 3px;
}

.outer_container {
    max-width: 1040px;
    width: 94%;
}

.page_container {
    max-width: unset;
    padding: 0;
    overflow: visible;
}

.page_container p {
    color: #383838;
    font-size: 130%;
    padding-left: 0;
}

.form_heading {
    padding: 25px 0;
}

.progress_bar {
    margin-bottom: 4%;
    font-size: 18px;
}

.progress_item {
    margin: 0 1.5% 0 0;
    border-bottom: solid 4px #DADADA;
    background: #fff;
    color: #777;
    font-weight: normal;
    font-family: inherit;
    font-size: clamp(0.875rem, 0.5893rem + 1.1429vw, 1.375rem);
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
    padding-top:10px;
}

    .progress_item:hover {
        background-color: rgba(255,205,0,.25);
        border-bottom: solid 4px #f39200;
    }

    .progress_item_selected {
        top: 0;
        font-weight: normal;
        float: left;
        border-bottom: solid 4px #F7CB46;
        color: #000;
    }

.logo {
    background: url(../img/trade_direct_new_logo3.png)  no-repeat;
    background-size: 227px 60px;
    margin: 0px 0px 20px 0px;
    top: 10px;
    height: 60px;
    width:227px;
}

.quote_container_v2 {
    border: SOLID 4px #ccc;
}

.essential_box_container {
    background-color: #fff;
}

.classic_box_container {
    background-color: #fff;
}

.plus_box_container {
    background-color: #fff;
}

.form_input, .field_default, .form_field {
    font-family: inherit;
}

.form_question p {
    font-size: 14px;
    line-height: 1.4em;
}
.form_row p {
    font-size: 14px;
}
.plus_box_container h2, .classic_box_container h2, .essential_box_container h2, .summary_pay_button h2 {
    color: #222;
}

.plus_box_container p, .classic_box_container p, .essential_box_container p, .summary_pay_button p {
    color: #555;
}

.no_width {
    width:100%;
    margin-right:unset;
}

.premium {
    color: #444;
    text-shadow: unset;
}

.continue_btn {
    padding: 15px;
    max-width: 190px;
    min-width: 175px;
    background: unset;
}

.login_width_limiter {
    max-width: 680px;
}

.error_msg {
    color: red;
}

standard_msg {
    color: #C95E21;
}

.but_essentials {
    background-color: #DD6E2D;
    float: right;
    font-size: 15px;
}
.but_essentials:hover {
    background-color: #C95E21;
    color: #fff;
}

.but_classic {
    background-color: #D12E26;
    float: right;
    font-size:15px;
}
.but_classic:hover {
    background-color: #C12B23;
    color: #fff;
}
.new_renewal_btn {
    vertical-align: top;
    padding: 10px;
    text-decoration: none;
    height: auto;
    text-align: center;
    float: none;
    min-height: 0;
    font-weight: 700;
    font-size: 14px;
    line-height: 1;
    background: 0 0;
    cursor: pointer;
    border-radius: 100px;
    margin-bottom: 16px;
    color: #fff;
    background: #d12e26;
    border-color: #d12e26;
    padding: 15px 12px;
}

.but, .but_disabled, .but_gone {
    font-size:15px;
}

.back_btn {
    background-color: #777;
}

.btn_black {
    background-color: #000;
}

    .back_btn:hover {
        background-color: #333;
    }

.but_plus {
    background-color: #902216;
    float: right;
    font-size: 15px;
}
.but_plus:hover {
    background-color: #7B1D13;
    color: #fff;
}

.quote_container_v2 {
    min-height: 310px;
    background-image: url(../img/quote_corner.png);
    background-position: left bottom;
    background-repeat: no-repeat;
    background-image: url(../img/top_insert.png);
    background-position: top right;
}

.quote_box_height {
    min-height: 165px;
}

.i_help {
    background-color:#f2f2f2;
}

.i_help p {
    font-size: .9em;
    line-height: 1.3em;
    padding: 16px 27px 18px 1.7em;
    color: #000;
}

.right_content {
    width: 30%;
    float: right;
}

.left_content {
    width: 69%;
    float: left;
    overflow: visible;
}

.bullet_point_txt {
    width: 97%;
}
.radio {
    margin: .5rem -1% .5rem -1%;
    padding: 15px 15px 12px 1%;
    background-color: #eee;
}

.summary_pay_button {
    background-color: #d12e26;
    width: 100%;
    border-radius: 20px;
    padding:10px;
}
.summary_pay_button:hover {
    background-color: #bb2922;
}
.btn_with_arrow {
    background-image: unset;
    background-position: right top;
    background-repeat: no-repeat;
}

.summary_pay_button > .premium {
    color: #fff;
    font-size: 200%;
}

.qb_l {
    display: inline-block;
    width: 100%;
    margin: 0;
    padding: 0;
}

.qb_nvp {
    margin-top: 3px; /* Can be overridden in code to 13px in code */
    font-size: 12px; /* Can be overridden in code */
    padding-right: 10px;
    display: inline-block;
    width: 100%;
    text-shadow: 1px 1px 1px #fff;
    width: 100%;
    padding-top: 0;
    padding-bottom: 0;
}

.bullet_point {
    display: inline-block;
    position: absolute;
    top: 1px;
    left: 10px;
    margin: 0;
    width: 16px;
    height: 16px;
    background: #f39200 url(../img/dot.png) no-repeat top;
}

.haserror CaptureControl {
    border: 1px solid #910700;
    border-radius: 13px;
    box-shadow: 2px 2px 10px 1px rgba(0, 0, 0, 0.5);
    margin: 10px 0;
}

FormQuestion.haserror {
    gap: 4%;
}

    FormQuestion.haserror CaptureControl.holder {
        border: 1px solid #910700;
        /* background-color: #fff5f5;*/
        box-shadow: 2px 2px 10px 1px rgba(0, 0, 0, 0.3);
    }

FormQuestion Validation {
    display: none;
}

FormQuestion.haserror Validation {
    display: block;
}

FormQuestion.haserror ~ Validation {
    display: block;
}

    @media only screen and (max-width: 1010px) {

        .premium {
            font-size: 140%;
        }
    }

    @media only screen and (max-width:880px) {
        .quote_container_v2 {
            margin-right: 0;
            width: 100%;
            min-height: 0
        }

        .quote_box_height {
            min-height: 50px;
        }
    }

    @media only screen and (max-width:875px) {
        .left_content {
            width: 100%;
        }

        .right_content {
            width: 100%;
        }

        .quote_results_boxes {
            margin-top: 0;
        }
    }

    @media only screen and (max-width:500px) {
        .b_txt {
            margin-left: 2px;
        }

        .b_con {
            padding: 0 7px 0 5px;
        }

        .b_icon {
            margin-left: 5px;
        }

        .b_icon {
            display: none;
        }
    }