/* BMW Fonts */
@font-face {
    font-family: "BMWTypeNextTT-Bold";
    src: url("/vp_pages/themes/bmw/assets/fonts/BMWTypeNextTT-Bold.eot");
    src: url("/vp_pages/themes/bmw/assets/fonts/BMWTypeNextTT-Bold.eot?#iefix") format("embedded-opentype"),
    url("/vp_pages/themes/bmw/assets/fonts/BMWTypeNextTT-Bold.woff") format("woff"),
    url("/vp_pages/themes/bmw/assets/fonts/BMWTypeNextTT-Bold.woff2") format("woff2"),
    url("/vp_pages/themes/bmw/assets/fonts/BMWTypeNextTT-Bold.ttf") format("truetype");
    font-style: normal;
}

@font-face {
    font-family: "BMWTypeNextTT-Regular";
    src: url("/vp_pages/themes/bmw/assets/fonts/BMWTypeNextTT-Regular.eot");
    src: url("/vp_pages/themes/bmw/assets/fonts/BMWTypeNextTT-Regular.eot?#iefix") format("embedded-opentype"),
    url("/vp_pages/themes/bmw/assets/fonts/BMWTypeNextTT-Regular.woff") format("woff"),
    url("/vp_pages/themes/bmw/assets/fonts/BMWTypeNextTT-Regular.woff2") format("woff2"),
    url("/vp_pages/themes/bmw/assets/fonts/BMWTypeNextTT-Regular.ttf") format("truetype");
    font-style: normal;
}

@font-face {
    font-family: "BMWTypeNextTT-Thin";
    src: url("/vp_pages/themes/bmw/assets/fonts/BMWTypeNextTT-Thin.eot");
    src: url("/vp_pages/themes/bmw/assets/fonts/BMWTypeNextTT-Thin.eot?#iefix") format("embedded-opentype"),
    url("/vp_pages/themes/bmw/assets/fonts/BMWTypeNextTT-Thin.woff") format("woff"),
    url("/vp_pages/themes/bmw/assets/fonts/BMWTypeNextTT-Thin.woff2") format("woff2"),
    url("/vp_pages/themes/bmw/assets/fonts/BMWTypeNextTT-Thin.ttf") format("truetype");
    font-style: normal;
}

@font-face {
    font-family: "BMWTypeNextTT-Light";
    src: url("/vp_pages/themes/bmw/assets/fonts/BMWTypeNextTT-Light.eot");
    src: url("/vp_pages/themes/bmw/assets/fonts/BMWTypeNextTT-Light.eot?#iefix") format("embedded-opentype"),
    url("/vp_pages/themes/bmw/assets/fonts/BMWTypeNextTT-Light.woff") format("woff"),
    url("/vp_pages/themes/bmw/assets/fonts/BMWTypeNextTT-Light.woff2") format("woff2"),
    url("/vp_pages/themes/bmw/assets/fonts/BMWTypeNextTT-Light.ttf") format("truetype");
    font-style: normal;
}


*, *:before, *:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

body {
    font-family: BMWTypeNextTT-Light, Arial, Helvetica, sans-serif;
    padding: 0;
    margin: 0;
    font-size: 15px;
    line-height: 22px;
    text-rendering: optimizeSpeed;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: greyscale;
    color: #262626;
}

h1 {
    font-family: BMWTypeNextTT-Bold, Arial, Helvetica, sans-serif;
    font-size: 32px;
}

h2 {
    font-size: 22px;
}

h3 {
    font-size: 30px;
    line-height: 45px;
    font-weight: 400;
}

h4 {
    font-family: BMWTypeNextTT-Bold, Arial, Helvetica, sans-serif;
    font-size: 13px;
}

a {
    font-family: BMWTypeNextTT-Bold, Arial, Helvetica, sans-serif;
    color: #4d4d4d;
    text-decoration: underline;
}

a:hover, a:focus {
    color: #262626;
    text-decoration: none;
}

small {
    opacity: 1;
}

.main {
    margin-bottom: 3em;
}

.constraint {
    max-width: 1200px;
    width: 90%;
    margin: 0 auto;
    padding-top: 0;
}

.player-constraint {
    max-width: 720px;
}

.flex-container {
    flex-direction: row;
}

.flex-container-col, .flex-container.bumper-ad {
    flex-direction: column;
}

.header .flex-container {
    flex-direction: row-reverse;
}

.flex-container {
    flex-direction: row-reverse;
}

.bumper-ad__cta-container {
    flex-direction: row;
}

.flex-section {
    display: flex;
    flex: 1;
    justify-content: flex-start;
    align-items: center;
}

.flex--start {
    justify-content: center;
    align-items: flex-start;
}

.flex--end {
    justify-content: flex-end;
}

.brand-claim-container {
    border-top: 1px solid #e6e6e6;
    margin: 24px 75px 0 0;
    text-align: right;
}

.brand-claim-container-service-eu {
    border-top: 1px solid #e6e6e6;
    margin: 24px 0 0 0;
    display: flex;
    justify-content: space-between;
}

.brand-claim-container-service {
    border-top: 1px solid #e6e6e6;
    margin: 24px 75px 0 0;
    display: flex;
    justify-content: space-between;
}

/**
 * Override the positioning of the text on Arabic pages.
 */
html[lang="ar"] .brand-claim-container {
    margin: 24px 0 0 75px;
    text-align: left;
}

html[lang="ar"] .brand-claim-container-service {
    text-align: left;
    border-top: 1px solid #e6e6e6;
    margin: 24px 0 0 75px;
    display: flex;
    justify-content: space-between;
}

html[lang="ar"] .social {
    text-align: right;
}

@media only screen and (max-width: 767px) {
    html[lang="ar"] .social .ion-social-twitter {
        margin: 0 .1em 0 20px;
    }

    html[lang="ar"] .social .ion-email {
        margin: 0 .1em 0 0;
    }
}

.brand-claim-bold-text {
    font-family: BMWTypeNextTT-Bold, Arial, Helvetica, sans-serif;
}

.header {
    margin: 22px 0 0 0;
}

.header a {
    text-decoration: none;
}

.header__logo {
    width: 53px;
    height: 53px;
}

.header__logo-service {
    width: 100px;
    height: 50px;
}

.header__title {
    font-size: 1.25em;
    font-weight: 400;
    color: #262626;
}

.subtitle {
    margin-top: 40px;
    margin-bottom: 25px;
}

.col-left {
    width: 57%;
}

.col-right {
    width: 40%;
}

.flex-gap {
    gap: 2em;
}

.flex--space-between {
    justify-content: space-between;
}

.flex-item {
    flex: 1;
    flex-basis: 100%;
}

.first {
    margin-top: 0;
}

.last {
    margin-bottom: 0;
}

.cta, .evhc-cta--primary, .finance-wrapper .cta--primary,
.cta--secondary, .evhc-cta--secondary, #js-document-verification_unlock__btn, .js-evhc-reject {
    font-family: BMWTypeNextTT-Bold, Arial, Helvetica, sans-serif;
    font-size: 1em;
    height: 52px;
    margin: 10px 0;
    background: #1c69d4;
    color: #fff;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    padding: 8px 24px;
    border: 0;
    border-radius: 3px;
    outline: #1c69d4 solid 1px;
    outline-offset: calc(1px * -1);
    cursor: pointer;
    -webkit-transition: none;
    transition: none;
    text-align: center;
    text-decoration: none;
    min-width: 220px;
}

.cta:hover, .cta:focus, .evhc-cta--primary:hover, .evhc-cta--primary:focus,
.finance-wrapper .cta--primary:hover, .finance-wrapper .cta--primary:focus,
#js-document-verification_unlock__btn:focus, #js-document-verification_unlock__btn:hover {
    color: #fff;
    text-decoration: none;
    background: #0653b6;
    border: 0;
    outline: #0653b6 solid 2px;
    outline-offset: calc(2px * -1);
}

#js-document-verification_unlock__btn {
    background: #1c69d4;
    color: #fff;
}

.cta--secondary, .evhc-cta--secondary, .evhc-summary .cta, .js-evhc-reject {
    background-color: rgb(255 255 255 / 0%);
    color: #262626;
    outline: #262626 solid 1px;
}

.cta--secondary:hover, .cta--secondary:focus, .evhc-cta--secondary:hover, .evhc-cta--secondary:focus,
.evhc-summary .cta:focus, .evhc-summary .cta:hover, .js-evhc-reject:hover, .js-evhc-reject:focus {
    color: #262626;
    text-decoration: none;
    background-color: rgb(255 255 255 / 0%);
    border-width: 0;
    outline: #262626 solid 2px;
    outline-offset: calc(2px * -1);
}

.js-evhc-approve {
    margin-right: 1em;
}

.bmwcn_ws .booking-cta-container p, .crbw_ws .booking-cta-container p {
    font-size: 9px;
    color: #999;
}

.confirmation-dialog .total-price {
    color: #236cd1;
    font-weight: bold;
}

.evhc-summary {
    margin-top: 40px;
    background-color: #DDE8F9;
    padding: 1em;
    border-width: 0;
}

.details-table {
    border-width: 0;
}

.details-table, td, th {
    border-color: #e6e6e6;
}

.details-table tr, .details-table tr:nth-of-type(even) {
    background-color: transparent;
}

.details-table td.details-table__title {
    padding-left: 14px;
}

.details-table__title {
    font-family: BMWTypeNextTT-Bold, Arial, Helvetica, sans-serif;
    padding: 1em 0;
}

.details-table__detail {
    padding: 1em 14px 1em 0;
}

.social {
    background-color: #E6E6E6;
    padding: 3em 1.333333333em 1em 1.333333333em;
    color: #262626;
    margin-top: 4em;
}

.social h4 {
    font-family: BMWTypeNextTT-Light, Arial, Helvetica, sans-serif;
    color: #262626;
    font-size: 18px;
    font-weight: 400;
    margin: 0 0 1.388888889em 20px;
}

.social p {
    color: #8e8e8e;
    margin: 0 0 0 20px;
}

.footer {
    border-top: 3em solid #E6E6E6;
    padding-top: 45px;
    margin-top: 0;
    margin-bottom: 2em;
}

.footer p {
    color: #262626;
    margin: 0;
}

.social {
    margin: 1em 0 0 0;
    text-align: left;
}

.social .social__p {
    font-size: 18px;
    line-height: 24px;
    margin-bottom: 20px;
    color: #262626;
}

.social .icon {
    margin: 0 .1em 0 20px;
}

.social a {
    color: #666;
}

.social a:hover, .social a:focus {
    text-decoration: none;
    color: #262626;
}

hr {
    border-top: 1px solid #bbb;
    margin: 1em 0 3em 0;
}

input[type=text]:focus, textarea:focus, input[type=checkbox]:focus, select:active {
    border-color: #236cd1;
    box-shadow: 0 0 5px rgba(35,108,209,0.51);
}

.box {
    margin: 2em 0 0 0;
}

.box label {
    font-family: BMWTypeNextTT-Bold, Arial, Helvetica, sans-serif;
}

.box h2, .tootle__title strong, #js-document-verification__form h3 {
    font-family: BMWTypeNextTT-Light, Arial, Helvetica, sans-serif;
    font-size: 30px;
    line-height: 45px;
    font-weight: 400;
}

#js-custom_content {
    margin: 2em 0;
}

.js-codeweavers__vehicle_reserve_container .one-half {
    width: 49%;
}

@media only screen and (min-width: 1024px) {
    .js-codeweavers__vehicle_reserve_container .desk--one-quarter {
        width: 24%;
    }
}

.contact-form-wrapper p {
    margin-bottom: 2em;
}

.box input[type=text], .contact-form-wrapper textarea {
    margin-top: .5em;
}

#citnow-appraise input[type=text] {
    margin-top: 0;
}

.finance-wrapper {
    margin: 2em 0 0 0 !important;
}

.app-wrapper {
    display: none;
}

.photo-gallery {
    margin: 2em 0;
    text-align: center;
    background-color: #f4f4f4;
    border: 1px solid #ccc;
    padding: 1.25em 0 .5em 0;
}

.dealership-card--logo-wide {
    max-width: 100%;
    max-height: 100%;
}

ul.legal-list {
    margin: 2em 0 0 0;
}

.legal-list li {
    font-family: BMWTypeNextTT-Bold, Arial, Helvetica, sans-serif;
    margin-right: 2em;
    display: inline-block;
    font-size: 1em;
}

.legal-list li a {
    text-decoration: none;
}

.legal-list li a:focus, .legal-list li a:hover {
    text-decoration: none;
    color: #1c69d4;
}

#js-document-verification__form li {
    word-wrap: break-word;
}

#js-document-verification__form h3, #js-document-verification__form p {
    margin-top: 0;
}

#js-document-verification_modal__dialog ul {
    list-style-type: none;
}

#js-document-verification_modal__dialog li {
    margin-left: 0;
}

.ui-widget.ui-widget input, .ui-widget.ui-widget select, .ui-widget.ui-widget textarea, .ui-widget.ui-widget button {
    font-family: BMWTypeNextTT-Bold, Arial, Helvetica, sans-serif;
    font-size: 1em;
}

.evhc-table th {
    font-family: BMWTypeNextTT-Bold, Arial, Helvetica, sans-serif;
    font-weight: 400;
}


/* ==========================================================================
   Icon Work from Guidelines
   ========================================================================== */
.evhc-report-container input[type=checkbox]:checked+.check-box, .evhc-report-container .check-box.checked {
    border-color: #1c69d4;
}

.evhc-report-container .check-box::before, .evhc-report-container .check-box::after {
    background-color: #1c69d4;
}

.evhc-action__icon {
    display: none;
}


/* ==========================================================================
   Live Video Styles
   ========================================================================== */
.live-video {
    background: none !important;
    position: relative;
    z-index: 1;
    padding: 1em 0 0 0;
}

.live-video button.start-call {
    margin: 0 !important;
    font-size: 1.8em !important;
    line-height: 1.375;
    padding-bottom: .3em;
}

.live-video #onCall {
    width: 100% !important;
}

@media screen and (min-width: 44em) {
    .live-video #onCall {
        width: 50% !important;
    }
}

@media (orientation: landscape) {
    .live-video .media {
        display: block !important;
        width: 95% !important;
    }
}

.lv-feature__explainer #explainerText {
    margin-top: 1.5em;
    margin-bottom: 3em;
}

.live-video .review {
    width: 100%;
    max-width: 1200px;
}

@media (min-width: 1366px) and (orientation: landscape) {
    .live-video .review {
        width: 100%;
        max-width: 1200px;
    }
}

.live-video .review h1, .live-video  .review h2, .live-video  .review h3,  .live-video  .review h4, .live-video  .review th,  .live-video  .review label {
    color: #202020 !important;
    font-weight: normal;
}

.live-video textarea {
    display: block;
    width: 100%;
    min-height: 10em;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: .25em;
    background: #fff;
    padding: .25em .5em;
    margin-top: 1em;
    line-height: 1;
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

.live-video button.send_review {
    font-family: BMWTypeNextTT-Bold, Arial, Helvetica, sans-serif;
    font-size: 1em;
    height: 52px;
    margin: 10px 0;
    background: #1c69d4;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 24px;
    border: 0;
    cursor: pointer;
    -webkit-transition: none;
    transition: none;
    width: auto;
}

.live-video button.send_review:focus, .live-video button.send_review:hover {
    color: #fff;
    text-decoration: none;
    background: #0653b6;
    border: 0;
}

.lv-content__error--vppages .error {
    width: 100%;
    max-width: 1200px;
    margin: 3em auto 0 auto;
}

.live-video .reqMark::after {
    content: '*';
    display: inline-block;
    color: #ec1b34;
}

.live-video .review-gratification h1, .live-video .review-gratification h2, .live-video .review-gratification h3, .live-video .review-gratification h4, .live-video .review-gratification th, .live-video .review-gratification label {
    color: #262626;
}

.live-video .review h4 {
    font-family: BMWTypeNextTT-Bold, Arial, Helvetica, sans-serif;
    font-size: 15px;
}

.fullscreen .live-video {
    background: #000 !important;
}


/* ==========================================================================
   Media Queries
   ========================================================================== */
@media only screen and (max-width: 1279px) {
    h3, .box h2, .tootle__title strong, #js-document-verification__form h3 {
        font-size: 24px;
        line-height: 36px;
    }
}

@media only screen and (max-width: 1023px) {
    body {
        font-size: 14px;
    }

    .col-right, .col-left {
        float: none;
        width: 100%;
        margin: 0;
    }

    .col-right {
        margin-top: 2em;
    }

    .flex-container {
        flex-direction: column;
    }

    .header .flex-container {
        flex-direction: row-reverse;
    }

    .flex-gap {
        gap: 0;
    }

    .app-wrapper {
        display: block;
        background: #E6E6E6;
        margin: 0 0 1em 0;
        padding: 1em;
    }

    .app-logo-mybmw {
        width: 58px;
        height: 58px;
        margin-right: 2em;
    }

    .app-wrapper h2 {
        font-size: 17px;
        line-height: 1.2;
        font-family: BMWTypeNextTT-Light, Arial, Helvetica, sans-serif;
        font-weight: normal;
    }

    .logo-android, .logo-ios {
        margin: 5px 5px 0 0;
        max-height: 35px;
    }
}

@media only screen and (max-width: 767px) {
    body {
        font-size: 12px;
    }

    h1 {
        font-size: 22px;
    }

    h2 {
        font-size: 17px;
    }

    .header {
        margin: 17px 0 0 0;
    }

    .header__logo {
        width: 36px;
        height: 36px;
    }

    .brand-claim-container p, .brand-claim-container-service-eu p, .brand-claim-container-service p {
        display: none;
    }

    .social {
        text-align: center;
    }

    .cta, .evhc-cta--primary, #js-document-verification_unlock__btn {
        min-width: 180px;
    }

    .evhc-key {
        padding-bottom: 1.5em;
    }

    .evhc-report-container {
        font-size: 10px;
    }

    .footer {
        text-align: center;
    }

    .social .ion-social-twitter {
        margin: 0 .1em 0 0;
    }

    .app-wrapper img {
        margin-right: 1em;
    }
}

#cookieConsent .col-left {
    margin: 0;
}

#cookieConsent .col-right {
    margin-top: 0;
}

@media screen and (max-width: 63.75em) {
    #cookieConsent .col-left, #cookieConsent .col-right {
        width: 100%;
        float: none;
    }

    #cookieConsent a.cookieConsentOK {
        float: none;
        margin: 10px 0 0 0;
    }
}

@media screen and (min-width: 48em) {
    #cookieConsent .col-left {
        margin: 0;
    }
}

.autotorinocream_ws .header__title {
    padding-left: 0;
}

.autotorinocream_ws .header__dealer-logo {
    max-width: 100px;
}

@media only screen and (min-width: 36.25em) {
    .autotorinocream_ws .header__dealer-logo {
        max-width: 200px;
    }
    .autotorinocream_ws .header__title {
        padding-right: 20px;
    }
}

@media screen and (min-width: 48em) {
    .autotorinocream_ws .header__title {
        padding-left: 20px;
    }
    .autotorinocream_ws .header__dealer-logo {
        max-width: 300px;
    }
}