html {
    position: relative;
    min-height: 100%;
}

body {
    margin-bottom: 60px;
    /* Margin bottom by footer height */
}

html,
body {
    font-family: Lato, 'Montserrat', sans-serif;
    background-position: center top;
    background-size: cover;
}

.h2,
h2 {
    font-size: 30px;
    font-weight: 900;
}

.h3,
h3 {
    font-size: 24px;
    font-weight: 900;
}

.h4,
h4 {
    font-size: 18px;
    font-weight: 900;
}

.stepwizard-step p {
    margin-top: 10px;
}

.stepwizard-row {
    display: table-row;
}

.stepwizard {
    display: table;
    width: 100%;
    position: relative;
}

.stepwizard-step button[disabled] {
    opacity: 1 !important;
    filter: alpha(opacity=100) !important;
}

.stepwizard-row:before {
    top: 14px;
    bottom: 0;
    position: absolute;
    content: " ";
    width: 100%;
    height: 1px;
    background-color: #ccc;
    z-order: 0;
}

.stepwizard-step {
    display: table-cell;
    text-align: center;
    position: relative;
}

.form-input-error-msg {
    display: none;
    padding: 4px 0;
    margin-bottom: 5px;
    color: red;
    font-weight: bold;
    font-size: 0.8em;
    overflow: hidden;
}

.form-input-error-msg.show-error {
    display: block;
}

.alert.form-input-error-msg {
    padding: 4px;
    margin-bottom: 5px;
    color: #a94442;
    font-weight: bold;
}

.form-input-error-msg span.error-empty,
.form-input-error-msg span.error-wrong {
    display: none;
}

.form-input-error-msg span.error-empty.show-error,
.form-input-error-msg span.error-wrong.show-error {
    display: inline-block;
}

.error {
    border-color: red;
}

.full .btn-group>.btn:first-child {
    width: 275px;
}

.btn-group>.btn:first-child {
    width: 275px;
}

.btn-circle {
    margin-right: 10px;
    margin-top: -5px;
}

.setup-content .btn-lg,
.setup-content a.btn-lg {
    padding: 11px 18px;
    font-size: 18px;
}

.setup-content .btn,
.setup-content a.btn {
    white-space: inherit;
}

.setup-content .btn {
    width: 100%;
}

.newDiv {
    background-color: rgb(255, 255, 255, 0.89);
    padding: 15px 120px 15px 120px;
}

@media only screen and (max-width: 768px) {
    .newDiv {
        background-color: rgb(255, 255, 255, 0.89);
        padding: 15px 20px 15px 20px;
    }
}

.footer {
    position: absolute;
    text-align: center;
    bottom: 0;
    width: 100%;
    color: black;
    padding: 15px 50px 15px 50px;
}

.footer a {
    color: black;
}

.ml-4 {
    margin-right: 10px;
}

.mr-4 {
    margin-left: 10px;
}

.progress {
    height: 10px;
    background-color: #bbb5b5;
}

.smallDiv {
    margin-left: auto;
    margin-right: auto;
    width: 45%;
}

.smallDiv h2 {
    font-size: 28px;
}

.mt-4 {
    margin-top: 40px;
}

@media only screen and (max-width: 768px) {
    .r {
        text-align: center;
    }
}


/***Thank you style***/

.thank-you-page-bg {
    background-size: cover;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-position: center right;
}

.cross-sell-wrapper {
    border-radius: 2rem;
    background-color: #fff;
    box-shadow: rgb(55, 55, 55) 0 0 12px -4px;
    margin: 1rem .5rem;
}

.cross-sell-wrapper img {
    border-top-right-radius: 1rem;
    border-top-left-radius: 1rem;
    width: 100%;
}

.cross-sell-body {
    padding: 2rem 3rem 4rem 3rem;
}

.cross-sell-wrapper p {}

.cross-sell-home-improvement-title {
    color: #0070bb;
    font-weight: 700;
    font-size: 20px;
}

.cross-sell-auto-insurance-title {
    color: #fb8800;
    font-weight: 700;
    font-size: 20px;
}

.cross-sell-solar-title {
    color: #03822b;
    font-weight: 700;
    font-size: 20px;
}

.btn.auto-upgrade-cta {
    background: rgb(255, 196, 0) !important;
    background: linear-gradient(180deg, rgba(255, 196, 0, 1) 0%, rgba(255, 182, 8, 1) 100%) !important;
    color: #fff !important;
    font-size: 22px !important;
    font-weight: 600 !important;
    padding: 1.2rem 4rem !important;
    border-radius: .5rem !important;
    width: 100% !important;
}

.btn.home-improvement-cta {
    background: rgb(0, 127, 255) !important;
    background: linear-gradient(180deg, rgba(0, 127, 255, 1) 0%, rgba(0, 95, 255, 1) 100%) !important;
    color: #fff !important;
    font-size: 22px !important;
    font-weight: 600 !important;
    padding: 1.2rem 4rem !important;
    border-radius: .5rem !important;
    width: 100% !important;
}

.btn.solar-cta {
    background: rgb(91, 192, 44) !important;
    background: linear-gradient(180deg, rgba(91, 192, 44, 1) 0%, rgba(32, 179, 13, 1) 100%) !important;
    color: #fff !important;
    font-size: 22px !important;
    font-weight: 600 !important;
    padding: 1.2rem 4rem !important;
    border-radius: .5rem !important;
    width: 100% !important;
}

.thank-you-page-bg .row {
    max-width: 980px;
    margin: auto;
}

.thank-you-page-bg .col-sm-12,
.thank-you-page-bg .col-lg-6 {
    display: flex;
}

@media (min-width: 768px) {
    .thank-you-page-bg .row {
        display: flex;
    }
}

@media only screen and (max-width: 1200px) {
    .btn.home-improvement-cta,
    .btn.auto-upgrade-cta,
    .btn.solar-cta {
        font-size: 22px !important;
        padding: 1.5rem 0 !important;
    }
}

@media only screen and (max-width: 992px) {
    .btn.home-improvement-cta,
    .btn.auto-upgrade-cta,
    .btn.solar-cta {
        font-size: 20px !important;
    }
}

#bg-container {
    background-color: #fff;
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
    scroll-behavior: smooth;
    max-width: 980px;
    margin: 1rem auto;
}

.logo-form {
    display: block;
    text-align: center;
    font-weight: 900;
    color: #1d1d1d;
    font-size: 1.8rem;
    font-family: 'Montserrat';
}