/*
 Theme Name:   Autovault Child
 Theme URI:    https://themewant.com/products/wordpress/autovault
 Description:  HAVAL / Атлант-М Запад — consolidated visual adjustments
 Author:       ReacThemes + project customisation
 Template:     autovault
 Version:      2.0.0
 License:      GNU General Public License v2 or later
*/

:root {
    --haval-dark: #121314;
    --haval-gray: #626970;
    --haval-red: #00cabf;
    --haval-text: #30363b;
    --haval-border: #d5d8dc;
    --haval-light: #f1f3f4;
}

/* =========================================================
   GLOBAL / HEADER
   ========================================================= */
html { margin-top: 0 !important; }
body.admin-bar,
body.logged-in { margin-top: 0 !important; padding-top: 0 !important; }
#wpadminbar { display: none !important; height: 0 !important; min-height: 0 !important; }
body.admin-bar header.eel-sticky-header,
body.logged-in header.eel-sticky-header,
body.logged-in:not(.elementor-editor-active) header.eel-sticky-header-on,
body.admin-bar .eel-sticky-header-on { top: 0 !important; }

/* Reliable Cyrillic typography on the demo's custom display widgets. */
.elementor-3901 .elementor-widget-eel-heading,
.elementor-3901 .elementor-widget-eel-heading .elementor-widget-container,
.elementor-3901 .elementor-widget-eel-heading .elementor-heading-title,
.elementor-3901 .elementor-widget-eel-heading [class*="title"],
.elementor-3901 .elementor-widget-rt-listing-grid,
.elementor-3901 .elementor-widget-icon-list .elementor-icon-list-text,
.elementor-2569 .eel-nav-menu,
.elementor-4168,
.elementor-2567 {
    font-family: Montserrat, Arial, sans-serif !important;
}

/* Highlight remains coloured by the theme, but without underline. */
.elementor-widget-eel-heading [class*="highlight"],
.elementor-widget-eel-heading u,
.elementor-widget-eel-heading mark {
    text-decoration: none !important;
    text-decoration-line: none !important;
}

/* Desktop submenu arrow without dependency on an icon font. */
@media (min-width: 1301px) {
    .elementor-2569 .eel-nav-menu > .menu-item-has-children > a {
        position: relative !important;
        padding-right: 19px !important;
    }
    .elementor-2569 .eel-nav-menu > .menu-item-has-children > a::before {
        content: "" !important;
        font-family: inherit !important;
        width: 7px !important;
        height: 7px !important;
        border: 0 !important;
        border-right: 1.5px solid currentColor !important;
        border-bottom: 1.5px solid currentColor !important;
        position: absolute !important;
        right: 3px !important;
        top: 47% !important;
        transform: translateY(-50%) rotate(45deg) !important;
        display: block !important;
        background: transparent !important;
    }
    .elementor-2569 .eel-nav-menu > .menu-item-has-children:hover > a::before {
        transform: translateY(-10%) rotate(225deg) !important;
    }
    .elementor-2569 .eel-nav-menu .sub-menu {
        width: 300px !important;
        min-width: 300px !important;
        max-width: none !important;
    }
    .elementor-2569 .eel-nav-menu .sub-menu a {
        white-space: nowrap !important;
    }
}

/* Switch to mobile navigation before Russian labels become cramped. */
@media (max-width: 1300px) {
    .elementor-2569 .elementor-element-c41b050,
    .elementor-2569 .elementor-element-425173b {
        width: 100% !important;
        max-width: 100% !important;
        --width: 100% !important;
    }
    .elementor-2569 .elementor-element-425173b {
        min-height: 110px !important;
        height: 110px !important;
        flex-wrap: nowrap !important;
        position: relative !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        align-items: center !important;
    }
    .elementor-2569 .elementor-element-ce983d7 {
        position: absolute !important;
        left: 10px !important;
        right: auto !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        width: 45px !important;
        min-width: 45px !important;
        max-width: 45px !important;
        flex: 0 0 45px !important;
        z-index: 20 !important;
    }
    .elementor-2569 .elementor-element-1212ab0 {
        width: 45px !important;
        min-width: 45px !important;
        max-width: 45px !important;
        --container-widget-width: 45px !important;
        --container-widget-flex-grow: 0 !important;
    }
    .elementor-2569 .elementor-element-1212ab0 .eel-nav-menu__toggle {
        display: flex !important;
        margin: 0 !important;
        justify-content: center !important;
        align-items: center !important;
    }
    .elementor-2569 .elementor-element-1212ab0 .eel-nav-menu__layout-horizontal {
        display: none !important;
    }
    .elementor-2569 .elementor-element-584f849 { margin-left: 58px !important; }

    .elementor-2569 .sidebar-on-mobile .unicon-chevron-down {
        font-size: 0 !important;
        font-family: inherit !important;
        transform: none !important;
        width: 24px !important;
        height: 24px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
    }
    .elementor-2569 .sidebar-on-mobile .unicon-chevron-down::before {
        content: "" !important;
        width: 8px !important;
        height: 8px !important;
        border-right: 1.5px solid currentColor !important;
        border-bottom: 1.5px solid currentColor !important;
        transform: rotate(45deg) !important;
    }
    .elementor-2569 .sidebar-on-mobile .unicon-chevron-down.active::before {
        transform: rotate(225deg) !important;
    }
}

/* =========================================================
   HOME PAGE
   ========================================================= */
/* Compact tabs and align them to the right of the section heading. */
.elementor-3901 .elementor-element-6a28a43 .rt-listing-grid-tabs,
.elementor-3901 .elementor-element-6a28a43 .rt-listing-tab-btn-items {
    column-gap: 6px !important;
    row-gap: 6px !important;
    gap: 6px !important;
}
.elementor-3901 .elementor-element-6a28a43 .rt-listing-tab-btn,
.elementor-3901 .elementor-element-6a28a43 .rt-listing-tab-btn-items > * {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 6px !important;
    padding-right: 6px !important;
    white-space: nowrap !important;
}
@media (min-width: 901px) {
    .elementor-3901 .elementor-element-6a28a43 .rt-listing-grid-tabs,
    .elementor-3901 .elementor-element-6a28a43 .rt-listing-tab-btn-items {
        justify-content: flex-end !important;
        margin-left: auto !important;
        max-width: 68% !important;
    }
}
@media (max-width: 900px) {
    .elementor-3901 .elementor-element-6a28a43 .rt-listing-grid-tabs,
    .elementor-3901 .elementor-element-6a28a43 .rt-listing-tab-btn-items {
        justify-content: flex-start !important;
        max-width: 100% !important;
    }
}

/* Long benefits must fit on one line on desktop. */
.elementor-3901 .elementor-element-6813a8b .elementor-icon-list-text,
.elementor-3901 .elementor-element-81497fb .elementor-icon-list-text,
.elementor-3901 .elementor-element-6813a8b li,
.elementor-3901 .elementor-element-81497fb li {
    font-size: 17px !important;
    line-height: 1.35 !important;
}
@media (min-width: 1000px) {
    .elementor-3901 .elementor-element-6813a8b .elementor-icon-list-text,
    .elementor-3901 .elementor-element-81497fb .elementor-icon-list-text {
        white-space: nowrap !important;
    }
}

/* Card metadata should inherit a Cyrillic-safe text font. */
.elementor-3901 .elementor-element-6a28a43 .listing-car-item-meta,
.elementor-3901 .elementor-element-6a28a43 .listing-car-item-meta span,
.elementor-3901 .elementor-element-6a28a43 .mvl-listing-card,
.elementor-3901 .elementor-element-6a28a43 .mvl-listing-card [class*="meta"] {
    font-family: Montserrat, Arial, sans-serif !important;
}

/* =========================================================
   SINGLE VEHICLE — CONTENT CONTRAST
   ========================================================= */
.elementor-2567 .elementor-element-2472c59,
.elementor-2567 .elementor-element-2472c59 p,
.elementor-2567 .elementor-element-2472c59 li,
.elementor-2567 .elementor-element-2e1e655,
.elementor-2567 .elementor-element-2e1e655 p,
.elementor-2567 .elementor-element-aa5d4be,
.elementor-2567 .elementor-element-aa5d4be span,
.elementor-2567 .elementor-element-aa5d4be li {
    color: #30363b !important;
    opacity: 1 !important;
}
.elementor-2567 .elementor-element-4cbd34e .item-label,
.elementor-2567 .elementor-element-4cbd34e [class*="label"],
.elementor-2567 .elementor-element-4cbd34e .mvl-listing-attribute-label {
    color: #4b535a !important;
    opacity: 1 !important;
}
.elementor-2567 .elementor-element-4cbd34e .heading-font,
.elementor-2567 .elementor-element-4cbd34e [class*="value"],
.elementor-2567 .elementor-element-4cbd34e .mvl-listing-attribute-value {
    color: #171a1d !important;
    opacity: 1 !important;
}
.single-listing_page .mvl-listing-description,
.single-listing_page .mvl-listing-description p,
.single-listing_page .listing-car-item-meta,
.single-listing_page .listing-car-item-meta span {
    color: #30363b !important;
    opacity: 1 !important;
}

/* Action row: readable immediately at all widths. */
.elementor-element.elementor-element-05ce87b .single-car-actions ul.list-unstyled,
.elementor-widget-motors-single-listing-actions .single-car-actions ul.list-unstyled {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
    gap: 10px !important;
}
.elementor-element.elementor-element-05ce87b .single-car-actions ul.list-unstyled > li,
.elementor-widget-motors-single-listing-actions .single-car-actions ul.list-unstyled > li {
    flex: 1 1 220px !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    display: flex !important;
}
.elementor-element.elementor-element-05ce87b .single-car-actions ul.list-unstyled > li > a,
.elementor-widget-motors-single-listing-actions .single-car-actions ul.list-unstyled > li > a {
    box-sizing: border-box !important;
    width: 100% !important;
    min-height: 46px !important;
    padding: 10px 14px !important;
    display: flex !important;
    align-items: center !important;
    border: 1px solid var(--haval-border) !important;
    border-radius: 7px !important;
    background: var(--haval-light) !important;
    color: var(--haval-text) !important;
    opacity: 1 !important;
    visibility: visible !important;
    text-decoration: none !important;
}
.elementor-element.elementor-element-05ce87b .single-car-actions ul.list-unstyled > li > a .stm-item-title,
.elementor-widget-motors-single-listing-actions .single-car-actions ul.list-unstyled > li > a .stm-item-title {
    display: inline !important;
    visibility: visible !important;
    opacity: 1 !important;
    color: var(--haval-text) !important;
    font-size: 14px !important;
    line-height: 1.3 !important;
}
.elementor-element.elementor-element-05ce87b .single-car-actions li.added-date-action > .added_date,
.elementor-widget-motors-single-listing-actions .single-car-actions li.added-date-action > .added_date {
    box-sizing: border-box !important;
    width: 100% !important;
    min-height: 46px !important;
    padding: 10px 14px !important;
    display: flex !important;
    align-items: center !important;
    border: 1px solid var(--haval-border) !important;
    border-radius: 7px !important;
    background: var(--haval-light) !important;
    color: var(--haval-text) !important;
    opacity: 1 !important;
    visibility: visible !important;
    text-transform: none !important;
    margin: 0 !important;
}
.elementor-element.elementor-element-05ce87b .single-car-actions .added_date .added_date_info,
.elementor-element.elementor-element-05ce87b .single-car-actions .added_date .added_date_info_text,
.elementor-widget-motors-single-listing-actions .single-car-actions .added_date .added_date_info,
.elementor-widget-motors-single-listing-actions .single-car-actions .added_date .added_date_info_text {
    display: inline !important;
    visibility: visible !important;
    opacity: 1 !important;
    color: var(--haval-text) !important;
    font-size: 14px !important;
}
.elementor-element.elementor-element-05ce87b .single-car-actions li > a > i,
.elementor-element.elementor-element-05ce87b .single-car-actions .added_date > i,
.elementor-widget-motors-single-listing-actions .single-car-actions li > a > i,
.elementor-widget-motors-single-listing-actions .single-car-actions .added_date > i {
    display: inline-block !important;
    position: static !important;
    margin: 0 9px 0 0 !important;
    color: var(--haval-red) !important;
    opacity: 1 !important;
    visibility: visible !important;
}
.elementor-element.elementor-element-05ce87b .single-car-actions ul.list-unstyled > li > a:hover,
.elementor-element.elementor-element-05ce87b .single-car-actions ul.list-unstyled > li > a:focus,
.elementor-widget-motors-single-listing-actions .single-car-actions ul.list-unstyled > li > a:hover,
.elementor-widget-motors-single-listing-actions .single-car-actions ul.list-unstyled > li > a:focus {
    border-color: var(--haval-red) !important;
    background: #fff !important;
    color: var(--haval-red) !important;
}
.elementor-element.elementor-element-05ce87b .single-car-actions ul.list-unstyled > li > a:hover .stm-item-title,
.elementor-element.elementor-element-05ce87b .single-car-actions ul.list-unstyled > li > a:focus .stm-item-title,
.elementor-widget-motors-single-listing-actions .single-car-actions ul.list-unstyled > li > a:hover .stm-item-title,
.elementor-widget-motors-single-listing-actions .single-car-actions ul.list-unstyled > li > a:focus .stm-item-title {
    color: var(--haval-red) !important;
}
/* Hide only the editor shortcut inside the date row. */
.elementor-element-05ce87b .added_date a { display: none !important; }

@media (max-width: 1024px) {
    .stm-single-car-page .elementor-widget-motors-single-listing-actions .single-car-actions ul.list-unstyled li a,
    .single-listing_template .elementor-widget-motors-single-listing-actions .single-car-actions ul.list-unstyled li a,
    .elementor-element.elementor-element-05ce87b .single-car-actions ul.list-unstyled li a {
        width: 100% !important;
        height: auto !important;
        min-height: 46px !important;
        padding: 10px 14px !important;
    }
    .stm-single-car-page .elementor-widget-motors-single-listing-actions .single-car-actions ul.list-unstyled li a span,
    .single-listing_template .elementor-widget-motors-single-listing-actions .single-car-actions ul.list-unstyled li a span,
    .elementor-element.elementor-element-05ce87b .single-car-actions ul.list-unstyled li a span,
    .stm-single-car-page .elementor-widget-motors-single-listing-actions .single-car-actions .added_date .added_date_info_text,
    .single-listing_template .elementor-widget-motors-single-listing-actions .single-car-actions .added_date .added_date_info_text,
    .elementor-element.elementor-element-05ce87b .single-car-actions .added_date .added_date_info_text {
        display: inline !important;
    }
    .stm-single-car-page .elementor-widget-motors-single-listing-actions .single-car-actions .added_date > i,
    .single-listing_template .elementor-widget-motors-single-listing-actions .single-car-actions .added_date > i,
    .elementor-element.elementor-element-05ce87b .single-car-actions .added_date > i {
        display: inline-block !important;
    }
}
@media (max-width: 700px) {
    .elementor-element.elementor-element-05ce87b .single-car-actions ul.list-unstyled > li,
    .elementor-widget-motors-single-listing-actions .single-car-actions ul.list-unstyled > li {
        flex-basis: 100% !important;
    }
}

/* Share title + exactly three platforms from the DB stay on one line. */
.elementor-2567 .elementor-element-fa87dc5 {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 14px !important;
}
.elementor-2567 .elementor-element-08a9992 {
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: max-content !important;
}
.elementor-2567 .elementor-element-08a9992 .elementor-heading-title {
    white-space: nowrap !important;
    font-size: 20px !important;
    line-height: 1.2 !important;
    margin: 0 !important;
}
.elementor-2567 .elementor-element-bd7cde2,
.elementor-2567 .elementor-element-bd7cde2 .eel-social-share,
.elementor-2567 .elementor-element-bd7cde2 .eel-social-buttons {
    flex: 0 0 auto !important;
    width: auto !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 10px !important;
}

/* Visual Belarusian currency mark in the offer-price icon. */
.elementor-widget-motors-single-listing-offer-price .stm-car_dealer-buttons a .fa-dollar-sign::before {
    content: "Br" !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
}

/* Gallery action controls temporarily hidden; corresponding widget settings are also disabled in DB. */
.motors-elementor-single-listing-gallery > .stm-gallery-actions { display: none !important; }

/* Favorite / compare remain installed, but hidden and disabled in Motors settings. */
a[class*="favorite"], button[class*="favorite"],
a[class*="favourite"], button[class*="favourite"],
a[class*="wishlist"], button[class*="wishlist"],
a[class*="compare"], button[class*="compare"],
[data-action*="favorite"], [data-action*="favourite"], [data-action*="wishlist"], [data-action*="compare"],
.listing-car-item [class*="favorite"], .listing-car-item [class*="wishlist"], .listing-car-item [class*="compare"],
.mvl-listing-card [class*="favorite"], .mvl-listing-card [class*="wishlist"], .mvl-listing-card [class*="compare"] {
    display: none !important;
}

/* =========================================================
   RECOMMENDED VEHICLES ON DETAIL PAGE
   ========================================================= */
.motors-elementor-search-results-wrap h4,
.motors-elementor-search-results-wrap .title,
.elementor-2567 .elementor-element-623eb23 h1,
.elementor-2567 .elementor-element-623eb23 h2,
.elementor-2567 .elementor-element-623eb23 h3,
.elementor-2567 .elementor-element-623eb23 h4 {
    color: #171a1d !important;
    -webkit-text-fill-color: #171a1d !important;
}
.motors-elementor-search-results-wrap .mvl-normal-price.has-sale-price,
.motors-elementor-search-results-wrap .normal-price.has-sale-price,
.motors-elementor-search-results-wrap [class*="regular-price"],
.motors-elementor-search-results-wrap [class*="old-price"] {
    text-decoration: line-through !important;
    text-decoration-thickness: 1px !important;
    color: #9da3a8 !important;
    opacity: .85 !important;
}
html body .motors-elementor-search-results-wrap a.mvl_view_listing_link,
html body .motors-elementor-search-results-wrap a.mvl_view_listing_link:link,
html body .motors-elementor-search-results-wrap a.mvl_view_listing_link:visited,
html body .stm-directory-grid-loop .mvl-price-grid-card .mvl-view-listing a.mvl_view_listing_link,
html body .stm-directory-grid-loop .mvl-price-grid-card .mvl-view-listing a.mvl_view_listing_link:link,
html body .stm-directory-grid-loop .mvl-price-grid-card .mvl-view-listing a.mvl_view_listing_link:visited {
    background: #626970 !important;
    border-color: #626970 !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    opacity: 1 !important;
}
html body .motors-elementor-search-results-wrap a.mvl_view_listing_link *,
html body .stm-directory-grid-loop .mvl-price-grid-card .mvl-view-listing a.mvl_view_listing_link * {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    fill: #fff !important;
    stroke: #fff !important;
}
html body .motors-elementor-search-results-wrap a.mvl_view_listing_link:hover,
html body .motors-elementor-search-results-wrap a.mvl_view_listing_link:focus,
html body .motors-elementor-search-results-wrap a.mvl_view_listing_link:active,
html body .stm-directory-grid-loop .mvl-price-grid-card .mvl-view-listing a.mvl_view_listing_link:hover,
html body .stm-directory-grid-loop .mvl-price-grid-card .mvl-view-listing a.mvl_view_listing_link:focus,
html body .stm-directory-grid-loop .mvl-price-grid-card .mvl-view-listing a.mvl_view_listing_link:active {
    background: #00cabf !important;
    border-color: #00cabf !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
}
html body .motors-elementor-search-results-wrap a.mvl_view_listing_link:hover *,
html body .motors-elementor-search-results-wrap a.mvl_view_listing_link:focus *,
html body .motors-elementor-search-results-wrap a.mvl_view_listing_link:active *,
html body .stm-directory-grid-loop .mvl-price-grid-card .mvl-view-listing a.mvl_view_listing_link:hover *,
html body .stm-directory-grid-loop .mvl-price-grid-card .mvl-view-listing a.mvl_view_listing_link:focus *,
html body .stm-directory-grid-loop .mvl-price-grid-card .mvl-view-listing a.mvl_view_listing_link:active * {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
}

/* =========================================================
   MOTORS POPUPS
   ========================================================= */
body #test-drive .modal-dialog .modal-content .modal-header.modal-header-iconed h3.modal-title,
body #get-car-calculator .modal-dialog .modal-content .modal-header.modal-header-iconed h3.modal-title,
body #test-drive #myModalLabelTestDrive,
body #get-car-calculator #myModalLabelCalc {
    font-size: 32px !important;
    line-height: 1.15 !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
    margin: 0 0 6px !important;
    max-width: 100% !important;
}
body #test-drive .modal-header.modal-header-iconed > i:not(.modal-close),
body #get-car-calculator .modal-header.modal-header-iconed > i:not(.modal-close),
body #test-drive .modal-header.modal-header-iconed > i:not(.modal-close)::before,
body #get-car-calculator .modal-header.modal-header-iconed > i:not(.modal-close)::before {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
}
body #test-drive .modal-header.modal-header-iconed > svg:not(.modal-close),
body #get-car-calculator .modal-header.modal-header-iconed > svg:not(.modal-close) {
    fill: #fff !important;
    stroke: #fff !important;
}
/* Duplicate internal calculator heading/icon is unnecessary. */
body #get-car-calculator .stm_auto_loan_calculator > .title { display: none !important; }

@media (max-width: 767px) {
    body #test-drive #myModalLabelTestDrive,
    body #get-car-calculator #myModalLabelCalc { font-size: 26px !important; }
}
@media (max-width: 480px) {
    body #test-drive #myModalLabelTestDrive,
    body #get-car-calculator #myModalLabelCalc { font-size: 22px !important; }
}

/* Footer logo is intentionally smaller than the header logo. */
.elementor-4168 .elementor-element-a4dbdb9 img,
.elementor-4168 .elementor-element-a4dbdb9 svg {
    width: auto !important;
    max-width: 185px !important;
    max-height: 42px !important;
}

/* =========================================================
   GLOBAL TYPOGRAPHY — Montserrat
   ========================================================= */
:root,
body,
.elementor-kit-6847 {
    --e-global-typography-secondary-font-family: "Montserrat", Arial, sans-serif !important;
}

/* Theme helper class that relies on the secondary typography variable. */
.ff-secondary {
    font-family: "Montserrat", Arial, sans-serif !important;
}

/* =========================================================
   HAVAL v25 — detail header/action alignment + popup title size
   ========================================================= */

/* Both Motors modal headings: compact 22px on every viewport. */
html body #test-drive .modal-dialog .modal-content .modal-header.modal-header-iconed h3.modal-title,
html body #get-car-calculator .modal-dialog .modal-content .modal-header.modal-header-iconed h3.modal-title,
html body #test-drive #myModalLabelTestDrive,
html body #get-car-calculator #myModalLabelCalc {
    font-size: 22px !important;
    line-height: 1.25 !important;
}

/* More breathing room between vehicle title and the action row. */
.elementor-2567 .elementor-element.elementor-element-05ce87b,
.single-listing_template .elementor-element.elementor-element-05ce87b {
    width: 100% !important;
    max-width: none !important;
    margin-top: 28px !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
}

/* Action row follows exactly the same left/right boundaries as the gallery. */
.elementor-2567 .elementor-element-05ce87b > .elementor-widget-container,
.elementor-2567 .elementor-element-05ce87b .single-car-actions,
.single-listing_template .elementor-element-05ce87b > .elementor-widget-container,
.single-listing_template .elementor-element-05ce87b .single-car-actions {
    width: 100% !important;
    max-width: none !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
}

.elementor-2567 .elementor-element-05ce87b .single-car-actions > ul.list-unstyled,
.single-listing_template .elementor-element-05ce87b .single-car-actions > ul.list-unstyled {
    box-sizing: border-box !important;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.elementor-2567 .elementor-element-05ce87b .single-car-actions > ul.list-unstyled > li,
.single-listing_template .elementor-element-05ce87b .single-car-actions > ul.list-unstyled > li {
    box-sizing: border-box !important;
    float: none !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.elementor-2567 .elementor-element-05ce87b .single-car-actions > ul.list-unstyled > li > a,
.elementor-2567 .elementor-element-05ce87b .single-car-actions > ul.list-unstyled > li.added-date-action > .added_date,
.single-listing_template .elementor-element-05ce87b .single-car-actions > ul.list-unstyled > li > a,
.single-listing_template .elementor-element-05ce87b .single-car-actions > ul.list-unstyled > li.added-date-action > .added_date {
    width: 100% !important;
    margin: 0 !important;
}

/* Keep all three items aligned while there is enough horizontal room. */
@media (max-width: 767px) {
    .elementor-2567 .elementor-element-05ce87b .single-car-actions > ul.list-unstyled,
    .single-listing_template .elementor-element-05ce87b .single-car-actions > ul.list-unstyled {
        grid-template-columns: 1fr !important;
    }
}

/* =========================================================
   HAVAL v26 — detail page alignment/readability + footer address
   ========================================================= */

/* The UL has Bootstrap clearfix pseudo-elements. With CSS Grid those pseudo-elements
   became an extra invisible grid item. Use flex and remove clearfix pseudo-elements. */
.elementor-2567 .elementor-element-05ce87b .single-car-actions > ul.list-unstyled,
.single-listing_template .elementor-element-05ce87b .single-car-actions > ul.list-unstyled {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    justify-content: stretch !important;
    gap: 12px !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
.elementor-2567 .elementor-element-05ce87b .single-car-actions > ul.list-unstyled::before,
.elementor-2567 .elementor-element-05ce87b .single-car-actions > ul.list-unstyled::after,
.single-listing_template .elementor-element-05ce87b .single-car-actions > ul.list-unstyled::before,
.single-listing_template .elementor-element-05ce87b .single-car-actions > ul.list-unstyled::after {
    content: none !important;
    display: none !important;
}
.elementor-2567 .elementor-element-05ce87b .single-car-actions > ul.list-unstyled > li,
.single-listing_template .elementor-element-05ce87b .single-car-actions > ul.list-unstyled > li {
    float: none !important;
    flex: 1 1 0 !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
.elementor-2567 .elementor-element-05ce87b .single-car-actions > ul.list-unstyled > li > a,
.elementor-2567 .elementor-element-05ce87b .single-car-actions > ul.list-unstyled > li > span,
.single-listing_template .elementor-element-05ce87b .single-car-actions > ul.list-unstyled > li > a,
.single-listing_template .elementor-element-05ce87b .single-car-actions > ul.list-unstyled > li > span {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
}

/* Keep the extra breathing room below the model title without shifting the row horizontally. */
.elementor-2567 .elementor-element.elementor-element-05ce87b,
.single-listing_template .elementor-element.elementor-element-05ce87b {
    margin: 30px 0 0 !important;
    padding: 0 !important;
}

/* On phones the three actions stack; on tablet/desktop they remain one row. */
@media (max-width: 640px) {
    .elementor-2567 .elementor-element-05ce87b .single-car-actions > ul.list-unstyled,
    .single-listing_template .elementor-element-05ce87b .single-car-actions > ul.list-unstyled {
        flex-direction: column !important;
    }
}

/* Private-seller/contact card is temporarily hidden, but not removed. */
.elementor-2567 .elementor-element.elementor-element-cc77e08,
.single-listing_template .elementor-element.elementor-element-cc77e08 {
    display: none !important;
}

/* Footer address: ensure the location pin is visible; the textual "Адрес" label is removed in DB. */
.elementor-4168 .elementor-element-hvladdr1 .eel-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    opacity: 1 !important;
}
.elementor-4168 .elementor-element-hvladdr1 .eel-icon i,
.elementor-4168 .elementor-element-hvladdr1 .eel-icon svg {
    color: #ffffff !important;
    fill: #ffffff !important;
}

/* =========================================================
   HAVAL v28 — footer address: compact pin, no separate label
   ========================================================= */
/* Easy Elements contact widget. Target the address contact box itself rather than
   relying on Elementor-generated widget CSS or on one specific Elementor widget ID. */
.ee--contact-box:has(.fa-map-marker-alt) .contact-box-title,
.ee--contact-box:has(.rt-location-dot) .contact-box-title {
    display: none !important;
}

.ee--contact-box.left:has(.fa-map-marker-alt),
.ee--contact-box.left:has(.rt-location-dot) {
    align-items: center !important;
    gap: 10px !important;
}

.ee--contact-box:has(.fa-map-marker-alt) .eel-icon,
.ee--contact-box:has(.rt-location-dot) .eel-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 16px !important;
    min-width: 16px !important;
    width: 16px !important;
    height: 20px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-size: 16px !important;
    line-height: 1 !important;
}

.ee--contact-box:has(.fa-map-marker-alt) .eel-icon i,
.ee--contact-box:has(.rt-location-dot) .eel-icon i,
.ee--contact-box:has(.fa-map-marker-alt) .eel-icon svg,
.ee--contact-box:has(.rt-location-dot) .eel-icon svg {
    width: 16px !important;
    height: 16px !important;
    font-size: 16px !important;
    color: #ffffff !important;
    fill: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

/* =========================================================
   v35 — hide manufacturer / city-highway MPG sidebar block
   on the single vehicle page. The Elementor container f78b7fc
   contains both the manufacturer logo and MPG widget.
   ========================================================= */
.elementor-2567 .elementor-element.elementor-element-f78b7fc,
.single-listing_template .elementor-element.elementor-element-f78b7fc {
    display: none !important;
}

/* =========================================================
   v36 — HAVAL JOLION brand-first homepage hero
   ========================================================= */
.elementor-3901 .haval-home-hero {
    position: relative;
    overflow: hidden;
    min-height: 700px !important;
    background:
        radial-gradient(circle at 76% 47%, rgba(98, 105, 112, .42) 0%, rgba(40, 44, 47, .32) 28%, rgba(18, 19, 20, 0) 52%),
        #121314 !important;
}

.elementor-3901 .haval-home-hero::after {
    content: "";
    position: absolute;
    inset: auto -12% -42% 38%;
    height: 62%;
    background: radial-gradient(ellipse at center, rgba(0, 202, 191, .13), rgba(0, 202, 191, 0) 68%);
    pointer-events: none;
}

.elementor-3901 .haval-home-hero-copy,
.elementor-3901 .haval-home-hero-visual {
    position: relative;
    z-index: 2;
}

.elementor-3901 .haval-hero-eyebrow .elementor-heading-title {
    margin: 0;
    color: #00cabf !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.elementor-3901 .haval-hero-title .eel-heading-title,
.elementor-3901 .haval-hero-title .elementor-heading-title,
.elementor-3901 .haval-hero-title h1 {
    margin: 0 !important;
    color: #fff !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: clamp(54px, 5vw, 82px) !important;
    font-weight: 650 !important;
    line-height: .98 !important;
    letter-spacing: -.045em !important;
    text-decoration: none !important;
}

.elementor-3901 .haval-hero-tagline .elementor-heading-title {
    margin: 0;
    max-width: 560px;
    color: #d8dcde !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: 24px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
}

.elementor-3901 .haval-hero-price {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-end !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    width: auto !important;
    margin-top: 10px;
}

.elementor-3901 .haval-hero-price > .elementor-element {
    position: static !important;
    inset: auto !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
}

.elementor-3901 .haval-hero-price .elementor-element-93f71ee .elementor-heading-title,
.elementor-3901 .haval-hero-price .elementor-element-ba1cd26 .elementor-heading-title {
    color: #d8dcde !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: 22px !important;
    font-weight: 500 !important;
    line-height: 1.1 !important;
    padding-bottom: 7px;
}

.elementor-3901 .haval-hero-price .elementor-element-87f197d .elementor-heading-title {
    color: #fff !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: clamp(48px, 4.5vw, 64px) !important;
    font-weight: 650 !important;
    line-height: .95 !important;
    letter-spacing: -.035em;
}

.elementor-3901 .haval-hero-actions {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 12px !important;
    margin-top: 14px;
}

.elementor-3901 .haval-hero-btn {
    width: auto !important;
    max-width: none !important;
}

.elementor-3901 .haval-hero-btn .rt-button {
    min-height: 50px;
    padding: 13px 22px !important;
    border: 1px solid rgba(255,255,255,.42) !important;
    border-radius: 4px !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    white-space: nowrap;
    transition: background-color .2s ease, border-color .2s ease, color .2s ease !important;
}

.elementor-3901 .haval-hero-btn-primary .rt-button,
.elementor-3901 .haval-hero-btn-primary .rt-button::after {
    background: #00cabf !important;
    border-color: #00cabf !important;
    color: #121314 !important;
}
.elementor-3901 .haval-hero-btn-primary .rt-button:hover,
.elementor-3901 .haval-hero-btn-primary .rt-button:hover::after {
    background: #fff !important;
    border-color: #fff !important;
    color: #121314 !important;
}

.elementor-3901 .haval-hero-btn-secondary .rt-button,
.elementor-3901 .haval-hero-btn-secondary .rt-button::after {
    background: rgba(18, 19, 20, .34) !important;
    border-color: rgba(255,255,255,.48) !important;
    color: #fff !important;
}
.elementor-3901 .haval-hero-btn-secondary .rt-button:hover,
.elementor-3901 .haval-hero-btn-secondary .rt-button:hover::after {
    background: #00cabf !important;
    border-color: #00cabf !important;
    color: #121314 !important;
}

.elementor-3901 .haval-home-hero-visual {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    overflow: visible !important;
}

.elementor-3901 .haval-home-hero-car {
    width: 118% !important;
    max-width: none !important;
    margin-right: -14% !important;
}
.elementor-3901 .haval-home-hero-car img {
    display: block;
    width: 100% !important;
    max-width: 960px !important;
    height: auto !important;
    object-fit: contain;
    filter: drop-shadow(0 32px 35px rgba(0,0,0,.42));
}

@media (max-width: 1300px) {
    .elementor-3901 .haval-home-hero {
        min-height: 620px !important;
    }
    .elementor-3901 .haval-hero-actions {
        gap: 9px !important;
    }
    .elementor-3901 .haval-hero-btn .rt-button {
        padding: 12px 16px !important;
        font-size: 14px !important;
    }
}

@media (max-width: 1024px) {
    .elementor-3901 .haval-home-hero {
        min-height: auto !important;
        padding-top: 70px !important;
        padding-bottom: 40px !important;
    }
    .elementor-3901 .haval-home-hero-copy,
    .elementor-3901 .haval-home-hero-visual {
        width: 100% !important;
    }
    .elementor-3901 .haval-home-hero-car {
        width: min(850px, 105%) !important;
        margin: 10px auto -2% !important;
    }
}

@media (max-width: 767px) {
    .elementor-3901 .haval-hero-eyebrow .elementor-heading-title {
        font-size: 12px !important;
    }
    .elementor-3901 .haval-hero-title .eel-heading-title,
    .elementor-3901 .haval-hero-title .elementor-heading-title,
    .elementor-3901 .haval-hero-title h1 {
        font-size: 36px !important;
    }
    .elementor-3901 .haval-hero-tagline .elementor-heading-title {
        font-size: 19px !important;
    }
    .elementor-3901 .haval-hero-price .elementor-element-87f197d .elementor-heading-title {
        font-size: 46px !important;
    }
    .elementor-3901 .haval-hero-price .elementor-element-93f71ee .elementor-heading-title,
    .elementor-3901 .haval-hero-price .elementor-element-ba1cd26 .elementor-heading-title {
        font-size: 18px !important;
        padding-bottom: 5px;
    }
    .elementor-3901 .haval-hero-actions {
        align-items: stretch !important;
    }
    .elementor-3901 .haval-hero-btn {
        width: 100% !important;
    }
    .elementor-3901 .haval-hero-btn .rt-button {
        width: 100% !important;
        justify-content: center !important;
    }
}

/* =========================================================
   v37 — homepage hero refinements
   - desktop split 50/50
   - larger, tighter car image
   ========================================================= */
.elementor-3901 .haval-home-hero-copy,
.elementor-3901 .haval-home-hero-visual {
    flex: 0 0 50% !important;
    width: 50% !important;
    max-width: 50% !important;
}

.elementor-3901 .haval-home-hero-visual {
    justify-content: center !important;
}

.elementor-3901 .haval-home-hero-car {
    width: 132% !important;
    max-width: none !important;
    margin-right: -12% !important;
    margin-left: -4% !important;
}

.elementor-3901 .haval-home-hero-car img {
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    object-fit: contain;
}

@media (max-width: 1024px) {
    .elementor-3901 .haval-home-hero-copy,
    .elementor-3901 .haval-home-hero-visual {
        flex: 0 0 100% !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    .elementor-3901 .haval-home-hero-car {
        width: min(980px, 116%) !important;
        margin: 10px auto -2% !important;
    }
	
	.elementor-3901 .haval-home-hero-car img {
		max-width: 100% !important;
	}
}

/* =========================================================
   v38 — HAVAL JOLION Hero interactions
   ========================================================= */
/* "В наличии" is a status label, not a link/button. */
.elementor-3901 .haval-hero-status .haval-availability-label,
.elementor-3901 .haval-hero-status .haval-availability-label:hover,
.elementor-3901 .haval-hero-status .haval-availability-label:focus,
.elementor-3901 .haval-hero-status .haval-availability-label:active {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 50px !important;
    padding: 13px 22px !important;
    border: 1px solid rgba(255,255,255,.48) !important;
    border-radius: 4px !important;
    background: rgba(18,19,20,.34) !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    cursor: default !important;
    pointer-events: none !important;
    transition: none !important;
}

/* Test-drive anchor is stored as editable Elementor HTML and keeps the Hero button styling. */
.elementor-3901 .haval-hero-testdrive .rt-button {
    text-decoration: none !important;
}

/* =========================================================
   v39 — HAVAL model range on the Home page
   ========================================================= */
.elementor-3901 .haval-model-range-section {
    position: relative;
}

.elementor-3901 .haval-model-range-heading .eel-sub-title,
.elementor-3901 .haval-model-range-heading .sub-title,
.elementor-3901 .haval-model-range-heading .sub_heading {
    color: #00cabf !important;
}

.elementor-3901 .haval-model-range-heading .highlight,
.elementor-3901 .haval-model-range-heading .highlight-text,
.elementor-3901 .haval-model-range-heading span {
    text-decoration: none !important;
}

.haval-model-card {
    overflow: hidden !important;
    background: #FFFFFF !important;
    border: 1px solid rgba(255,255,255,.07) !important;
    border-radius: 12px !important;
    box-shadow: 0 14px 40px rgba(0,0,0,.16);
    transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}

.elementor-3901 .haval-model-card:hover {
    transform: translateY(-4px);
    border-color: rgba(0,202,191,.38) !important;
    box-shadow: 0 18px 46px rgba(0,0,0,.28);
}

.elementor-3901 .haval-model-card-image {
    width: 100% !important;
    margin: 0 !important;
    background: #1e1f20;
}

.elementor-3901 .haval-model-card-image img {
    display: block !important;
    width: 100% !important;
    height: 235px !important;
    object-fit: cover !important;
    object-position: center center !important;
}

.elementor-3901 .haval-model-card-title .elementor-heading-title {
    margin: 0 !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: 23px !important;
    line-height: 1.18 !important;
    font-weight: 650 !important;
}

.elementor-3901 .haval-model-card-price .elementor-heading-title {
    margin: 0 !important;
    color: #00cabf !important;
    -webkit-text-fill-color: #00cabf !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: 19px !important;
    line-height: 1.25 !important;
    font-weight: 600 !important;
}

.elementor-3901 .haval-model-card-actions {
    display: flex !important;
    align-items: stretch !important;
    gap: 10px !important;
}

.elementor-3901 .haval-model-card-btn {
    flex: 1 1 calc(50% - 5px) !important;
    min-width: 0 !important;
}

.elementor-3901 .haval-model-card-btn .rt-button {
    width: 100% !important;
    min-height: 44px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 10px 12px !important;
    border-radius: 4px !important;
    border: 1px solid rgba(255,255,255,.28) !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.15 !important;
    text-align: center !important;
    white-space: normal !important;
    text-decoration: none !important;
}

.elementor-3901 .haval-model-card-btn-primary .rt-button,
.elementor-3901 .haval-model-card-btn-primary .rt-button::after {
    background: #00cabf !important;
    border-color: #00cabf !important;
    color: #121314 !important;
    -webkit-text-fill-color: #121314 !important;
}

.elementor-3901 .haval-model-card-btn-primary .rt-button:hover,
.elementor-3901 .haval-model-card-btn-primary .rt-button:hover::after {
    background: #fff !important;
    border-color: #fff !important;
    color: #121314 !important;
    -webkit-text-fill-color: #121314 !important;
}

.elementor-3901 .haval-model-card-btn-stock .rt-button,
.elementor-3901 .haval-model-card-btn-stock .rt-button::after {
    background: transparent !important;
    border-color: rgba(255,255,255,.34) !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
}

.elementor-3901 .haval-model-card-btn-stock .rt-button:hover,
.elementor-3901 .haval-model-card-btn-stock .rt-button:hover::after {
    background: #fff !important;
    border-color: #fff !important;
    color: #121314 !important;
    -webkit-text-fill-color: #121314 !important;
}

.elementor-3901 .haval-model-range-all .rt-button {
    min-width: 170px !important;
}

@media (max-width: 1100px) {
    .elementor-3901 .haval-model-card-image img {
        height: 225px !important;
    }
}

@media (max-width: 767px) {
    .elementor-3901 .haval-model-card-image img {
        height: auto !important;
        aspect-ratio: 1000 / 560;
    }
    .elementor-3901 .haval-model-card-title .elementor-heading-title {
        font-size: 21px !important;
    }
    .elementor-3901 .haval-model-card-actions {
        flex-direction: column !important;
    }
    .elementor-3901 .haval-model-card-btn {
        width: 100% !important;
        flex-basis: 100% !important;
    }
}

/* =========================================================
   v41 — Model range heading / Motors grid spacing
   Prevent the native RT Listing Grid from overlapping the
   "Модельный ряд HAVAL" heading on the homepage.
   ========================================================= */
.elementor-3901 .elementor-element.elementor-element-5db8321 > .e-con-inner,
.elementor-3901 .elementor-element.elementor-element-5db8321 {
    position: relative;
}

.elementor-3901 .elementor-element.elementor-element-ad1722b {
    position: relative !important;
    z-index: 2 !important;
    margin-bottom: 58px !important;
}

.elementor-3901 .elementor-element.elementor-element-6a28a43 {
    position: relative !important;
    z-index: 1 !important;
    margin-top: 0 !important;
    clear: both !important;
}

@media (max-width: 767px) {
    .elementor-3901 .elementor-element.elementor-element-ad1722b {
        margin-bottom: 36px !important;
    }
}

/* =========================================================
   v42 — FIX model range grid overlap
   Elementor's old generated CSS for widget 6a28a43 contains:
   > .elementor-widget-container { margin-top: -40px; }
   The previous v41 rule targeted the outer widget, not this wrapper.
   ========================================================= */
.elementor-3901 .elementor-element.elementor-element-6a28a43 > .elementor-widget-container {
    margin: 0 !important;
    margin-top: 0 !important;
}

/* Use the parent container's native 46px flex gap. */
.elementor-3901 .elementor-element.elementor-element-5db8321 {
    row-gap: 46px !important;
    --gap: 46px 0px !important;
    --row-gap: 46px !important;
}

/* v41 added a second artificial margin; no longer needed. */
.elementor-3901 .elementor-element.elementor-element-ad1722b {
    margin-bottom: 0 !important;
}

@media (max-width: 767px) {
    .elementor-3901 .elementor-element.elementor-element-5db8321 {
        row-gap: 32px !important;
        --gap: 32px 0px !important;
        --row-gap: 32px !important;
    }
}


/* =========================================================
   v43 — HAVAL model range / stock / JOLION product page
   ========================================================= */
.haval-model-range-section,.haval-stock-section,.jolion-model-section{padding:100px max(18px,calc((100vw - 1320px)/2));background:#121314;color:#fff;}
.haval-model-simple-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin-top:38px;}
.haval-model-simple-card{background:#252525;border-radius:14px;overflow:hidden;border:1px solid rgba(255,255,255,.08);max-width:420px;}
.haval-model-simple-image img{width:100%;aspect-ratio:16/9;object-fit:contain;background:#1f2022;padding:14px;}
.haval-model-simple-body{padding:24px!important;gap:10px!important;}
.haval-model-simple-title .elementor-heading-title{font-size:25px!important;color:#fff!important;}
.haval-model-simple-price .elementor-heading-title{font-size:19px!important;color:#00cabf!important;}
.haval-model-simple-status p{margin:0;color:#d8d8d8;font-size:14px;}.haval-model-status-dot,.haval-stock-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#00cabf;margin-right:8px;}
.haval-model-simple-btn .elementor-button,.haval-stock-btn .elementor-button,.haval-stock-all .elementor-button,.jolion-btn .elementor-button{background:#00cabf!important;color:#FFFFFF!important;border-radius:4px!important;font-weight:700!important;border:1px solid #00cabf!important;padding:14px 22px!important;}
.haval-model-simple-btn .elementor-button:hover,.haval-stock-btn .elementor-button:hover,.haval-stock-all .elementor-button:hover,.jolion-btn-primary .elementor-button:hover, .jolion-btn .elementor-button:hover{border-color:#fff!important; color: #202020 !important;}
.haval-stock-section{background:#0d0e0f;}.haval-stock-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px!important;margin-top:38px;margin-bottom:34px;}
.haval-stock-card{background:#252525;border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,.08);}
.haval-stock-image img{width:100%;aspect-ratio:16/9;object-fit:contain;background:#171819;padding:10px;}
.haval-stock-body{padding:22px!important;gap:10px!important;}.haval-stock-status p{margin:0;color:#00cabf;font-size:13px;font-weight:600;}
.haval-stock-title .elementor-heading-title{color:#fff!important;font-size:21px!important;}.haval-stock-specs p{color:#c4c4c4;font-size:14px;line-height:1.55;margin:0;}.haval-stock-price .elementor-heading-title{color:#fff!important;font-size:23px!important;}
.haval-stock-all{align-self:center;}.haval-stock-all .elementor-button{background:transparent!important;color:#fff!important;border-color:#626970!important;}.haval-stock-all .elementor-button:hover{background:#00cabf!important;color:#121314!important;border-color:#00cabf!important;}

/* JOLION product page */
.page-id-9100 .site-content,.page-id-9100 .content-area,.page-id-9100 main{background:#121314;}
.jolion-model-hero{min-height:670px;padding:90px max(18px,calc((100vw - 1320px)/2));background:radial-gradient(circle at 78% 45%,rgba(0,202,191,.12),transparent 33%),#121314;color:#fff;gap:40px!important;}
.jolion-hero-copy{gap:20px!important;}
.jolion-eyebrow .elementor-heading-title{color:#00cabf!important;font-size:16px!important;text-transform:uppercase;letter-spacing:.08em;}
.jolion-hero-title .elementor-heading-title{font-size:36px!important;line-height:1.05!important;}
.jolion-hero-text p,.jolion-section-copy p{font-size:18px;line-height:1.65; color: #202020;}
.jolion-hero-price .elementor-heading-title{color:#00cabf!important;font-size:32px!important;}
.jolion-hero-actions{gap:12px!important;}.jolion-btn-secondary .elementor-button{color:#fff!important;border-color:#626970!important;}.jolion-btn-secondary .elementor-button:hover{background:#00cabf!important;color:#121314!important;border-color:#00cabf!important;}
.jolion-hero-visual img{width:100%;max-height:520px;object-fit:contain;filter:drop-shadow(0 35px 35px rgba(0,0,0,.45));}
.jolion-specs{display:grid!important;grid-template-columns:repeat(5,1fr);gap:1px!important;background:#303234;padding:1px!important;}
.jolion-spec-card{background:#1d1e20;padding:28px!important;gap:5px!important;}
.jolion-spec-value .elementor-heading-title{font-size:23px!important;}
.jolion-spec-label p{margin:0;color:#202020;font-size:13px;}
.jolion-model-section{padding-top:95px;padding-bottom:95px;}
.jolion-section-dark{background:#0d0e0f;}.jolion-model-section-split{display:grid!important;grid-template-columns:1.1fr .9fr;gap:55px!important;}.jolion-half{width:auto!important;max-width:none!important;}
.jolion-section-title .elementor-heading-title{font-size:42px!important;margin-bottom:18px;}
.jolion-section-copy ul{color:#fff;margin:22px 0 0;padding-left:20px;line-height:1.9;}
.jolion-section-image img{width:100%;border-radius:12px;background:#222;padding:8px;}
.jolion-feature-grid{display:grid!important;grid-template-columns:repeat(4,1fr);gap:18px!important;margin-top:35px;}.jolion-feature-card{background:#252525;padding:25px!important;border-radius:10px;border:1px solid rgba(255,255,255,.07);gap:9px!important;}.jolion-feature-card-accent{border-top:3px solid #00cabf;}
.jolion-feature-title .elementor-heading-title{font-size:19px!important;}
.jolion-feature-text p{margin:0;color:#bfc0c2;line-height:1.6;font-size:14px;}
.jolion-safety-list{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:25px;}
.jolion-safety-item{padding:18px 20px;background:#252525;border-radius:8px;color:#fff;border-left:3px solid #00cabf;}
.jolion-note,.jolion-note p{color:#8f9193!important;font-size:12px!important;margin-top:18px;}
.jolion-trims-table{margin:30px 0;}.jolion-trim{display:grid;grid-template-columns:1.2fr 1.25fr .7fr .65fr 1fr;gap:14px;padding:18px 20px;border-bottom:1px solid #333;color:#eee;align-items:center;}.jolion-trim-head{background:#252525;color:#00cabf;font-size:13px;text-transform:uppercase;font-weight:700;border-radius:8px 8px 0 0;}.jolion-trim strong:last-child{color:#00cabf;}
.jolion-test-drive{background:#202224;display:grid!important;grid-template-columns:.85fr 1.15fr;gap:55px!important;}.jolion-test-form{background:#121314;padding:28px;border-radius:10px;}
@media(max-width:1024px){.haval-model-simple-grid,.haval-stock-grid{grid-template-columns:repeat(2,1fr);}.jolion-model-hero,.jolion-model-section-split,.jolion-test-drive{display:flex!important;flex-direction:column!important;}.jolion-hero-copy,.jolion-hero-visual{width:100%!important;max-width:100%!important;}.jolion-specs{grid-template-columns:repeat(3,1fr);}.jolion-feature-grid{grid-template-columns:repeat(2,1fr);}.jolion-safety-list{grid-template-columns:repeat(2,1fr);}}
@media(max-width:767px){.haval-model-range-section,.haval-stock-section,.jolion-model-section{padding:60px 16px;}.haval-model-simple-grid,.haval-stock-grid,.jolion-feature-grid,.jolion-safety-list{grid-template-columns:1fr!important;}.jolion-model-hero{padding:60px 16px;min-height:auto;}.jolion-hero-title .elementor-heading-title{font-size:40px!important;}.jolion-specs{grid-template-columns:1fr 1fr;}.jolion-section-title .elementor-heading-title{font-size:34px!important;}.jolion-trim{grid-template-columns:1fr 1fr;padding:16px 12px;}.jolion-trim-head{display:none;}}

/* =========================================================
   v44 — Homepage model range + stock offers layout repair
   Elementor data was changed directly, so layout properties of
   newly created containers are not guaranteed to exist in the
   generated post-3901.css. Keep these two sections self-contained.
   ========================================================= */

/* Full-width section shells with a safe viewport gutter. */
.elementor-3901 .haval-model-range-section,
.elementor-3901 .haval-stock-section {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 92px 24px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 0 !important;
}

.elementor-3901 .haval-model-range-section {
    background: #121314 !important;
}

.elementor-3901 .haval-stock-section {
    background: #0d0e0f !important;
    border-top: 1px solid rgba(255,255,255,.055) !important;
}

/* Every direct section item lives in the same centered content column. */
.elementor-3901 .haval-model-range-section > *,
.elementor-3901 .haval-stock-section > * {
    box-sizing: border-box !important;
    width: min(100%, 1280px) !important;
    max-width: 1280px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Headings: separated cleanly from cards. */
.elementor-3901 .haval-model-range-heading,
.elementor-3901 .haval-stock-heading {
    margin: 0 0 34px !important;
    position: relative !important;
    z-index: 2 !important;
}

.elementor-3901 .haval-model-range-heading .eel-heading-title,
.elementor-3901 .haval-stock-heading .eel-heading-title,
.elementor-3901 .haval-model-range-heading h2,
.elementor-3901 .haval-stock-heading h2 {
    margin-bottom: 0 !important;
}

/* ---------------------------------------------------------
   Model range: this is a model card, not a stock vehicle.
   Three-column-ready layout; with one model it occupies one card.
   --------------------------------------------------------- */
.elementor-3901 .haval-model-simple-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    align-items: stretch !important;
    gap: 26px !important;
    margin: 0 auto !important;
}

.elementor-3901 .haval-model-simple-grid > .e-con,
.elementor-3901 .haval-model-simple-card {
    box-sizing: border-box !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
}

.elementor-3901 .haval-model-simple-card {
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
    padding: 0 !important;
    background: #242627 !important;
    border: 1px solid rgba(255,255,255,.09) !important;
    border-radius: 12px !important;
    box-shadow: 0 14px 34px rgba(0,0,0,.22) !important;
}

.elementor-3901 .haval-model-simple-image,
.elementor-3901 .haval-model-simple-image > .elementor-widget-container {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.elementor-3901 .haval-model-simple-image img {
    display: block !important;
    width: 100% !important;
    height: 235px !important;
    padding: 10px !important;
    box-sizing: border-box !important;
    object-fit: contain !important;
    object-position: center !important;
    background: #1b1d1e !important;
}

.elementor-3901 .haval-model-simple-body {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 12px !important;
    padding: 22px 24px 24px !important;
}

.elementor-3901 .haval-model-simple-title,
.elementor-3901 .haval-model-simple-price,
.elementor-3901 .haval-model-simple-status,
.elementor-3901 .haval-model-simple-btn {
    width: 100% !important;
    margin: 0 !important;
}

.elementor-3901 .haval-model-simple-status {
    margin-bottom: 6px !important;
}

.elementor-3901 .haval-model-simple-btn {
    margin-top: auto !important;
}

.elementor-3901 .haval-model-simple-btn .elementor-button {
    width: 100% !important;
    min-height: 46px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* ---------------------------------------------------------
   Stock offers: exactly three real offers in one desktop row.
   --------------------------------------------------------- */
.elementor-3901 .haval-stock-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    align-items: stretch !important;
    gap: 24px !important;
    margin: 0 auto 34px !important;
}

.elementor-3901 .haval-stock-grid > .e-con,
.elementor-3901 .haval-stock-card {
    box-sizing: border-box !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
}

.elementor-3901 .haval-stock-card {
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
    padding: 0 !important;
    background: #242627 !important;
    border: 1px solid rgba(255,255,255,.09) !important;
    border-radius: 12px !important;
    box-shadow: 0 14px 34px rgba(0,0,0,.22) !important;
}

.elementor-3901 .haval-stock-image,
.elementor-3901 .haval-stock-image > .elementor-widget-container {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.elementor-3901 .haval-stock-image img {
    display: block !important;
    width: 100% !important;
    height: 220px !important;
    box-sizing: border-box !important;
    padding: 10px !important;
    object-fit: contain !important;
    object-position: center !important;
    background: #181a1b !important;
}

.elementor-3901 .haval-stock-body {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
    padding: 21px 22px 23px !important;
}

.elementor-3901 .haval-stock-status,
.elementor-3901 .haval-stock-title,
.elementor-3901 .haval-stock-specs,
.elementor-3901 .haval-stock-price,
.elementor-3901 .haval-stock-btn {
    width: 100% !important;
    margin: 0 !important;
}

.elementor-3901 .haval-stock-price {
    margin-top: 5px !important;
}

.elementor-3901 .haval-stock-btn {
    margin-top: auto !important;
    padding-top: 8px !important;
}

.elementor-3901 .haval-stock-btn .elementor-button {
    width: 100% !important;
    min-height: 46px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.elementor-3901 .haval-stock-all {
    width: auto !important;
    max-width: none !important;
    align-self: center !important;
    margin: 2px auto 0 !important;
}

.elementor-3901 .haval-stock-all .elementor-button {
    min-height: 48px !important;
    padding-left: 30px !important;
    padding-right: 30px !important;
}

@media (max-width: 1050px) {
    .elementor-3901 .haval-model-simple-grid,
    .elementor-3901 .haval-stock-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 767px) {
    .elementor-3901 .haval-model-range-section,
    .elementor-3901 .haval-stock-section {
        padding: 62px 16px !important;
    }

    .elementor-3901 .haval-model-range-heading,
    .elementor-3901 .haval-stock-heading {
        margin-bottom: 26px !important;
    }

    .elementor-3901 .haval-model-simple-grid,
    .elementor-3901 .haval-stock-grid {
        grid-template-columns: 1fr !important;
        gap: 18px !important;
    }

    .elementor-3901 .haval-model-simple-image img,
    .elementor-3901 .haval-stock-image img {
        height: auto !important;
        aspect-ratio: 16 / 9 !important;
    }
}

/* =========================================================
   v45 — native-looking model range + native Motors stock grid
   ========================================================= */
.elementor-3901 .haval-model-range-section-native,
.elementor-3901 .haval-stock-section-native {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    padding: 100px 24px !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 38px !important;
}

.elementor-3901 .haval-model-range-section-native {
    background: #121314 !important;
}
.elementor-3901 .haval-stock-section-native {
    background: #0d0e0f !important;
    border-top: 1px solid rgba(255,255,255,.06) !important;
}

.elementor-3901 .haval-model-range-section-native > .elementor-element,
.elementor-3901 .haval-stock-section-native > .elementor-element {
    width: 100% !important;
    max-width: 1280px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.elementor-3901 .haval-model-range-heading-native,
.elementor-3901 .haval-stock-heading-native {
    margin: 0 !important;
    position: relative !important;
    z-index: 2 !important;
}

/* Model range uses the exact AutoVault listing-card DOM/classes, but links to the product page. */
.elementor-3901 .haval-model-range-native .rt-listing-grid-items {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 30px !important;
    align-items: stretch !important;
}
.elementor-3901 .haval-model-range-native .rt-listing-item {
    height: 100% !important;
}
.elementor-3901 .haval-model-range-native .rt-listing-image {
    background: #1a1c1d !important;
}
.elementor-3901 .haval-model-range-native .rt-listing-image > a {
    display: block !important;
}
.elementor-3901 .haval-model-range-native .rt-listing-image img {
    display: block !important;
    width: 100% !important;
    height: 245px !important;
    padding: 12px !important;
    box-sizing: border-box !important;
    object-fit: contain !important;
    object-position: center !important;
}
.elementor-3901 .haval-model-range-native .rt-listing-badge {
    position: absolute !important;
    top: 16px !important;
    left: 16px !important;
    z-index: 3 !important;
}
.elementor-3901 .haval-model-range-native .rt-listing-badge .special-label {
    display: inline-flex !important;
    align-items: center !important;
    padding: 7px 11px !important;
    border-radius: 5px !important;
    background: #00cabf !important;
    color: #121314 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
}
.elementor-3901 .haval-model-range-native .rt-content-area {
    display: flex !important;
    flex-direction: column !important;
}
.elementor-3901 .haval-model-range-native .rt-listing-title {
    margin-bottom: 24px !important;
}
.elementor-3901 .haval-model-range-native .rt-listing-button-area {
    margin-top: auto !important;
}
.elementor-3901 .haval-model-range-native .rt-listing-price .price,
.elementor-3901 .haval-model-range-native .rt-listing-price .sale-price {
    color: #00cabf !important;
}
.elementor-3901 .haval-model-range-native .rt-button {
    color: #fff !important;
    border-color: #626970 !important;
}
.elementor-3901 .haval-model-range-native .rt-button:hover {
    background: #00cabf !important;
    border-color: #00cabf !important;
    color: #121314 !important;
}

/* Stock section is a real RT Listing Grid, so it inherits the original AutoVault card layout. */
.elementor-3901 .haval-stock-native-grid .rt-listing-grid-items {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 30px !important;
    align-items: stretch !important;
}
.elementor-3901 .haval-stock-native-grid .rt-listing-item {
    height: 100% !important;
}
.elementor-3901 .haval-stock-native-grid .rt-listing-image img {
    display: block !important;
    width: 100% !important;
    height: 245px !important;
    object-fit: contain !important;
    object-position: center !important;
    background: #1a1c1d !important;
    padding: 12px !important;
    box-sizing: border-box !important;
}
.elementor-3901 .haval-stock-native-grid .rt-content-area {
    display: flex !important;
    flex-direction: column !important;
}
.elementor-3901 .haval-stock-native-grid .rt-listing-button-area {
    margin-top: auto !important;
}
.elementor-3901 .haval-stock-all-native {
    width: auto !important;
    align-self: center !important;
    margin: 4px auto 0 !important;
}
.elementor-3901 .haval-stock-all-native .rt-button {
    min-height: 48px !important;
    padding-left: 30px !important;
    padding-right: 30px !important;
}

@media (max-width: 1024px) {
    .elementor-3901 .haval-model-range-native .rt-listing-grid-items,
    .elementor-3901 .haval-stock-native-grid .rt-listing-grid-items {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 767px) {
    .elementor-3901 .haval-model-range-section-native,
    .elementor-3901 .haval-stock-section-native {
        padding: 62px 16px !important;
        gap: 28px !important;
    }
    .elementor-3901 .haval-model-range-native .rt-listing-grid-items,
    .elementor-3901 .haval-stock-native-grid .rt-listing-grid-items {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }
    .elementor-3901 .haval-model-range-native .rt-listing-image img,
    .elementor-3901 .haval-stock-native-grid .rt-listing-image img {
        height: auto !important;
        aspect-ratio: 16 / 10 !important;
    }
}

/* =========================================================
   v47 — Model Range: editable Elementor cards
   Same visual language as AutoVault listing cards, but model-level content only.
   ========================================================= */
.elementor-3901 .haval-model-range-v47 {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    padding: 110px 24px !important;
    margin: 0 !important;
    background: #121314 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 42px !important;
}

.elementor-3901 .haval-model-range-v47 > .elementor-element {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 1280px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.elementor-3901 .haval-model-heading-v47 {
    margin: 0 !important;
    position: relative !important;
    z-index: 2 !important;
}

.elementor-3901 .haval-model-grid-v47 {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 30px !important;
    align-items: stretch !important;
}

.elementor-3901 .haval-model-card-v47 {
    box-sizing: border-box !important;
    min-width: 0 !important;
    width: 100% !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
    background: #252525 !important;
    border: 1px solid rgba(255,255,255,.055) !important;
    border-radius: 10px !important;
    box-shadow: 0 8px 24px rgba(0,0,0,.12) !important;
}

.elementor-3901 .haval-model-image-v47 {
    box-sizing: border-box !important;
    width: 100% !important;
    margin: 0 !important;
    overflow: hidden !important;
    background: #1a1c1d !important;
}

.elementor-3901 .haval-model-image-v47 a,
.elementor-3901 .haval-model-image-v47 .elementor-widget-container {
    display: block !important;
    width: 100% !important;
}

.elementor-3901 .haval-model-image-v47 img {
    display: block !important;
    width: 100% !important;
    height: 245px !important;
    padding: 12px !important;
    box-sizing: border-box !important;
    object-fit: contain !important;
    object-position: center !important;
    background: #1a1c1d !important;
    transition: transform .3s ease !important;
}

.elementor-3901 .haval-model-card-v47:hover .haval-model-image-v47 img {
    transform: scale(1.025) !important;
}

.elementor-3901 .haval-model-body-v47 {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;
    padding: 25px 28px 27px !important;
}

.elementor-3901 .haval-model-title-v47,
.elementor-3901 .haval-model-price-v47,
.elementor-3901 .haval-model-divider-v47,
.elementor-3901 .haval-model-button-v47 {
    width: 100% !important;
    margin: 0 !important;
}

.elementor-3901 .haval-model-title-v47 .elementor-heading-title,
.elementor-3901 .haval-model-title-v47 .elementor-heading-title a {
    color: #fff !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: 24px !important;
    font-weight: 600 !important;
    line-height: 1.25 !important;
    text-decoration: none !important;
}

.elementor-3901 .haval-model-title-v47 .elementor-heading-title a:hover {
    color: #00cabf !important;
}

.elementor-3901 .haval-model-divider-v47 {
    margin: 24px 0 21px !important;
}
.elementor-3901 .haval-model-divider-v47 .elementor-divider {
    padding-block-start: 0 !important;
    padding-block-end: 0 !important;
}
.elementor-3901 .haval-model-divider-v47 .elementor-divider-separator {
    width: 100% !important;
    border-color: rgba(255,255,255,.09) !important;
}

.elementor-3901 .haval-model-footer-v47 {
    box-sizing: border-box !important;
    width: 100% !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 18px !important;
    margin-top: auto !important;
}

.elementor-3901 .haval-model-price-v47 {
    flex: 1 1 auto !important;
}
.elementor-3901 .haval-model-price-v47 .elementor-heading-title {
    color: #00cabf !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: 24px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
}

.elementor-3901 .haval-model-button-v47 {
    width: auto !important;
    flex: 0 0 auto !important;
}
.elementor-3901 .haval-model-button-v47 .elementor-button {
    min-height: 42px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 10px 18px !important;
    border: 0 !important;
    border-radius: 5px !important;
    background: #00cabf !important;
    color: #fff !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    transition: background-color .2s ease, color .2s ease !important;
}
.elementor-3901 .haval-model-button-v47 .elementor-button:hover,
.elementor-3901 .haval-model-button-v47 .elementor-button:focus {
    background: #626970 !important;
    color: #fff !important;
}

@media (max-width: 1024px) {
    .elementor-3901 .haval-model-grid-v47 {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
    .elementor-3901 .haval-model-footer-v47 {
        align-items: stretch !important;
        flex-direction: column !important;
    }
    .elementor-3901 .haval-model-button-v47,
    .elementor-3901 .haval-model-button-v47 .elementor-button {
        width: 100% !important;
    }
}

@media (max-width: 767px) {
    .elementor-3901 .haval-model-range-v47 {
        padding: 62px 16px !important;
        gap: 28px !important;
    }
    .elementor-3901 .haval-model-grid-v47 {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }
    .elementor-3901 .haval-model-image-v47 img {
        height: auto !important;
        aspect-ratio: 16 / 10 !important;
    }
}

/* =========================================================
   v48 — Native dynamic HAVAL Model Grid
   Uses the same AutoVault listing-card markup/classes as RT Listing Grid,
   but queries the dedicated haval_model post type and has no vehicle meta.
   ========================================================= */
.elementor-3901 .haval-model-range-dynamic {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 110px 24px !important;
    background: #121314 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 42px !important;
}

.elementor-3901 .haval-model-range-dynamic > .elementor-element {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 1280px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.elementor-widget-haval-model-grid .haval-model-grid .rt-listing-grid-items {
    display: grid !important;
    gap: 30px !important;
    align-items: stretch !important;
}
.elementor-widget-haval-model-grid .haval-model-grid-columns-1 .rt-listing-grid-items { grid-template-columns: 1fr !important; }
.elementor-widget-haval-model-grid .haval-model-grid-columns-2 .rt-listing-grid-items { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
.elementor-widget-haval-model-grid .haval-model-grid-columns-3 .rt-listing-grid-items { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
.elementor-widget-haval-model-grid .haval-model-grid-columns-4 .rt-listing-grid-items { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }

.elementor-widget-haval-model-grid .haval-model-card {
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
}

.elementor-widget-haval-model-grid .haval-model-card .rt-listing-image {
    height: 234px;
}
@media (max-width: 768px) {
    .elementor-widget-haval-model-grid .haval-model-card .rt-listing-image {
		height: auto !important;
	}
}

/* v49: image behaves exactly like the native AutoVault / Motors card.
   No artificial fixed height, no crop, no inner padding. */
.elementor-widget-haval-model-grid .haval-model-card .rt-listing-image img {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    /* height: 100% !important; */
    padding: 0 !important;
    margin: 0 !important;
    /* object-fit: cover !important;
    object-position: initial !important; */
    background: transparent !important;
	align-self: center;
}

.elementor-widget-haval-model-grid .haval-model-card .rt-content-area {
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;
}

.elementor-widget-haval-model-grid .haval-model-card .haval-model-button-area {
    margin-top: 15px !important;
}

.elementor-widget-haval-model-grid .haval-model-card .rt-listing-price .price {
    white-space: nowrap !important;
}

@media (max-width: 767px) {
	.elementor-widget-haval-model-grid .haval-model-card .rt-listing-price .price {
		font-size: 14px !important;
	}
	.rt-cat-tab-listing .rt-listing-item .rt-content-area .rt-listing-title, .rt-cat-tab-listing-slider .rt-listing-item .rt-content-area .rt-listing-title, .rt-listing-grid .rt-listing-item .rt-content-area .rt-listing-title {
		font-size: 18px !important;
	}
}

.elementor-widget-haval-model-grid .haval-model-card .rt-button {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
}

.elementor-widget-haval-model-grid .haval-model-card .rt-button:hover,
.elementor-widget-haval-model-grid .haval-model-card .rt-button:focus {
    background: #1F1F25 !important;
}

.haval-model-grid-empty {
    padding: 24px;
    border: 1px dashed rgba(255,255,255,.2);
    border-radius: 8px;
    color: #fff;
}

@media (max-width: 1024px) {
    .elementor-widget-haval-model-grid .haval-model-grid .rt-listing-grid-items {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 767px) {
    .elementor-3901 .haval-model-range-dynamic {
        padding: 62px 16px !important;
        gap: 28px !important;
    }
    .elementor-widget-haval-model-grid .haval-model-grid .rt-listing-grid-items {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }
}

/* =========================================================
   v51 — Special offers section on Home
   ========================================================= */
.elementor-3901 .haval-special-offers {
    width: 100% !important;
    padding: 88px 24px 96px !important;
    background: #121314 !important;
}

.elementor-3901 .haval-special-offers-inner {
    width: min(1280px, 100%) !important;
    max-width: 1280px !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

.elementor-3901 .haval-special-offers-heading {
    margin-bottom: 34px !important;
}

.elementor-3901 .haval-special-offers-heading .elementor-heading-title,
.elementor-3901 .haval-special-offers-heading h2 {
    margin: 0 !important;
    color: #fff !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: clamp(34px, 4vw, 54px) !important;
    font-weight: 600 !important;
    line-height: 1.08 !important;
}

.elementor-3901 .haval-special-offers-kicker .elementor-heading-title {
    margin: 0 0 12px !important;
    color: #00cabf !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    letter-spacing: .04em !important;
    text-transform: uppercase !important;
}

.elementor-3901 .haval-special-offers-description {
    max-width: 760px !important;
    margin-top: 16px !important;
}
.elementor-3901 .haval-special-offers-description,
.elementor-3901 .haval-special-offers-description p {
    color: #aeb3b7 !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: 17px !important;
    line-height: 1.55 !important;
}

.elementor-3901 .haval-special-offers-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 24px !important;
    width: 100% !important;
}

.elementor-3901 .haval-special-offer-card {
    position: relative !important;
    min-width: 0 !important;
    min-height: 330px !important;
    padding: 32px !important;
    overflow: hidden !important;
    border: 1px solid rgba(255,255,255,.10) !important;
    border-radius: 12px !important;
    background: #222526 !important;
    box-shadow: 0 18px 45px rgba(0,0,0,.18) !important;
    transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease !important;
}

.elementor-3901 .haval-special-offer-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: #00cabf;
}

.elementor-3901 .haval-special-offer-card:hover {
    transform: translateY(-4px) !important;
    border-color: rgba(0,202,191,.55) !important;
    box-shadow: 0 22px 52px rgba(0,0,0,.28) !important;
}

.elementor-3901 .haval-special-offer-card.haval-special-offer-main {
    background:
        radial-gradient(circle at 100% 0%, rgba(0,202,191,.18), transparent 44%),
        #222526 !important;
}

.elementor-3901 .haval-offer-label .elementor-heading-title {
    display: inline-flex !important;
    width: auto !important;
    margin: 0 0 24px !important;
    padding: 10px 16px !important;
    border-radius: 999px !important;
    background: rgba(0,202,191,.12) !important;
    color: #00cabf !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: 26px !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
}
@media (max-width: 767px) {
    .elementor-3901 .haval-offer-label .elementor-heading-title {
		margin: 0 0 4px !important;
	}
}



.elementor-3901 .haval-offer-title .elementor-heading-title,
.elementor-3901 .haval-offer-title h3 {
    margin: 0 !important;
    color: #fff !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: 24px !important;
    font-weight: 600 !important;
    line-height: 1.12 !important;
}
@media (max-width: 767px) {
    .elementor-3901 .haval-offer-title .elementor-heading-title,
	.elementor-3901 .haval-offer-title h3 {
		font-size: 20px !important;
		margin-top: 15px !important;
	}
}

.elementor-3901 .haval-offer-text {
    margin: 18px 0 28px !important;
}
@media (max-width: 767px) {
    .elementor-3901 .haval-offer-text {
		margin: 18px 0 8px !important;
	}
}

.elementor-3901 .haval-offer-text,
.elementor-3901 .haval-offer-text p {
    color: #bfc4c7 !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: 15px !important;
    line-height: 1.55 !important;
}

.elementor-3901 .haval-special-offer-card .haval-offer-button {
    margin-top: auto !important;
}
.elementor-3901 .haval-special-offer-card .haval-offer-button .rt-button {
    min-height: 46px !important;
    padding: 12px 20px !important;
    border: 1px solid rgba(255,255,255,.32) !important;
    border-radius: 4px !important;
    background: transparent !important;
    color: #fff !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
}
.elementor-3901 .haval-special-offer-card .haval-offer-button .rt-button::after {
    background: transparent !important;
}
.elementor-3901 .haval-special-offer-card .haval-offer-button .rt-button:hover,
.elementor-3901 .haval-special-offer-card .haval-offer-button .rt-button:hover::after {
    border-color: #00cabf !important;
    background: #00cabf !important;
    color: #121314 !important;
}

@media (max-width: 1024px) {
    .elementor-3901 .haval-special-offers {
        padding: 72px 20px 80px !important;
    }
    .elementor-3901 .haval-special-offers-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
    .elementor-3901 .haval-special-offer-card:last-child {
        grid-column: 1 / -1 !important;
    }
}

@media (max-width: 767px) {
    .elementor-3901 .haval-special-offers {
        padding: 56px 16px 64px !important;
    }
    .elementor-3901 .haval-special-offers-grid {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }
    .elementor-3901 .haval-special-offer-card:last-child {
        grid-column: auto !important;
    }
    .elementor-3901 .haval-special-offer-card {
        min-height: 0 !important;
        padding: 26px !important;
    }
}

.elementor-3901 .haval-special-offer-card {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
}


/* v52 — larger Special Offers labels */
@media (max-width: 767px) {
    .elementor-3901 .haval-offer-label .elementor-heading-title {
        font-size: 22px !important;
        padding: 9px 14px !important;
    }
}

/* =========================================================
   v53 — Special offers "Подробнее" buttons
   Match the native AutoVault/Motors listing "Подробнее" button.
   ========================================================= */
.elementor-3901 .haval-special-offer-card .haval-offer-button .rt-button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    min-height: 0 !important;
    width: max-content !important;
    padding: 14px 32px !important;
    border: none !important;
    border-radius: 6px !important;
    background-color: var(--e-global-color-secondary) !important;
    color: var(--e-global-color-15cac12) !important;
    font-family: inherit !important;
    font-size: inherit !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    overflow: hidden !important;
    position: relative !important;
    z-index: 1 !important;
    transform: translateZ(0) !important;
    transition-property: color !important;
    transition-duration: .3s !important;
}

.elementor-3901 .haval-special-offer-card .haval-offer-button .rt-button::after {
    content: "" !important;
    position: absolute !important;
    display: block !important;
    width: 105% !important;
    inset: 0 !important;
    z-index: -1 !important;
    background: var(--e-global-color-primary) !important;
    transform: scaleY(1) !important;
    transform-origin: center !important;
    transition: transform .3s ease-out !important;
    will-change: transform !important;
}

.elementor-3901 .haval-special-offer-card .haval-offer-button .rt-button:hover,
.elementor-3901 .haval-special-offer-card .haval-offer-button .rt-button:focus {
    border: none !important;
    background-color: var(--e-global-color-secondary) !important;
    color: var(--e-global-color-15cac12) !important;
}

.elementor-3901 .haval-special-offer-card .haval-offer-button .rt-button:hover::after,
.elementor-3901 .haval-special-offer-card .haval-offer-button .rt-button:focus::after {
    background: var(--e-global-color-primary) !important;
    transform: scaleY(0) !important;
}

/* =========================================================
   v54 — Special Offers buttons: exact native Listing Grid button behavior
   The Elementor widgets are switched to rt-button-primary in DB.
   These declarations reproduce AutoVault's native listing-grid override.
   ========================================================= */
.elementor-3901 .haval-special-offer-card .haval-offer-button .rt-button.rt-button-primary {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    width: max-content !important;
    min-height: 0 !important;
    padding: 10px 14px 9px !important;
    border: 1px solid var(--e-global-color-primary) !important;
    border-radius: 6px !important;
    background: transparent !important;
    color: var(--e-global-color-15cac12) !important;
    font-family: inherit !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    overflow: hidden !important;
    position: relative !important;
    z-index: 1 !important;
}

.elementor-3901 .haval-special-offer-card .haval-offer-button .rt-button.rt-button-primary::after {
    content: "" !important;
    position: absolute !important;
    display: block !important;
    width: 105% !important;
    inset: 0 !important;
    z-index: -1 !important;
    background: var(--e-global-color-primary) !important;
    transform: scaleY(1) !important;
    transform-origin: center !important;
    transition: transform .3s ease-out !important;
}

.elementor-3901 .haval-special-offer-card .haval-offer-button .rt-button.rt-button-primary:hover,
.elementor-3901 .haval-special-offer-card .haval-offer-button .rt-button.rt-button-primary:focus {
    border-color: #373737 !important;
    background: transparent !important;
    color: var(--e-global-color-15cac12) !important;
}

.elementor-3901 .haval-special-offer-card .haval-offer-button .rt-button.rt-button-primary:hover::after,
.elementor-3901 .haval-special-offer-card .haval-offer-button .rt-button.rt-button-primary:focus::after {
    transform: scaleY(0) !important;
}

/* =========================================================
   v55 — HAVAL brand accent
   Global orange-red #FF3600 replaced with HAVAL turquoise #00CABF.
   ========================================================= */

/* Ensure existing generated Elementor CSS cannot keep the previous red Primary variable. */
:root,
body,
.elementor-kit-6847 {
    --e-global-color-primary: #00CABF !important;
}

/* =========================================================
   v56 — definitive HAVAL accent override
   Elementor's generated kit CSS may still contain the old
   #FF3600 value. Keep the live computed Primary turquoise even
   when that generated file is stale or is printed after theme CSS.
   ========================================================= */
html body.elementor-kit-6847,
html body.elementor-kit-6847.elementor-page,
html body.elementor-kit-6847.elementor-default {
    --e-global-color-primary: #00CABF !important;
    --haval-red: #00CABF !important;
    --haval-accent: #00CABF !important;
}

/* Easy Elements mobile menu has two old hard-coded #FF3600 rules
   in its generated post-2569.css. Override them with higher specificity. */
html body .sidebar-on-mobile[data-nav-id="1212ab0"] li.menu-item a:hover,
html body .sidebar-on-mobile[data-nav-id="1212ab0"] li.menu-item a.highlighted,
html body .sidebar-on-mobile[data-nav-id="1212ab0"] li.menu-item.current-menu-item a,
html body .sidebar-on-mobile[data-nav-id="1212ab0"] li.menu-item.current-menu-ancestor a,
html body .sidebar-on-mobile[data-nav-id="1212ab0"] li.menu-item a.eel-active {
    color: #00CABF !important;
    -webkit-text-fill-color: #00CABF !important;
}

/* =========================================================
   v57 — Homepage lead form
   Placed after "Автомобили в наличии" and before Special Offers.
   Fixed 1280px content width; uses existing MetForm #3644.
   ========================================================= */
.elementor-3901 .haval-lead-section {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 88px 24px !important;
    background: #0d0e0f !important;
}

.elementor-3901 .haval-lead-inner {
    box-sizing: border-box !important;
    width: min(1280px, 100%) !important;
    max-width: 1280px !important;
    margin: 0 auto !important;
    padding: 48px 52px !important;
    display: grid !important;
    grid-template-columns: minmax(0, .82fr) minmax(0, 1.45fr) !important;
    align-items: center !important;
    gap: 58px !important;
    overflow: hidden !important;
    position: relative !important;
    border: 1px solid rgba(255,255,255,.10) !important;
    border-radius: 14px !important;
    background:
        radial-gradient(circle at 0% 0%, rgba(0,202,191,.16), transparent 38%),
        #222526 !important;
    box-shadow: 0 20px 50px rgba(0,0,0,.22) !important;
}

.elementor-3901 .haval-lead-inner::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: #00CABF;
}

.elementor-3901 .haval-lead-copy,
.elementor-3901 .haval-lead-form-panel {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
}

.elementor-3901 .haval-lead-copy {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 0 !important;
}

.elementor-3901 .haval-lead-kicker .elementor-heading-title {
    margin: 0 0 13px !important;
    color: #00CABF !important;
    -webkit-text-fill-color: #00CABF !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
}

.elementor-3901 .haval-lead-title .elementor-heading-title {
    margin: 0 !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: clamp(36px, 3.4vw, 52px) !important;
    font-weight: 600 !important;
    line-height: 1.05 !important;
    letter-spacing: -.025em !important;
}

.elementor-3901 .haval-lead-text {
    margin: 21px 0 0 !important;
}
.elementor-3901 .haval-lead-text,
.elementor-3901 .haval-lead-text p {
    color: #c4c9cc !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: 17px !important;
    line-height: 1.6 !important;
}

.elementor-3901 .haval-lead-note {
    margin: 22px 0 0 !important;
    padding-top: 19px !important;
    border-top: 1px solid rgba(255,255,255,.10) !important;
}
.elementor-3901 .haval-lead-note,
.elementor-3901 .haval-lead-note p {
    margin-bottom: 0 !important;
    color: #fff !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1.5 !important;
}

.elementor-3901 .haval-lead-form-panel {
    padding: 30px !important;
    border-radius: 10px !important;
    background: #17191a !important;
    border: 1px solid rgba(255,255,255,.08) !important;
}

/* MetForm fields — keep the existing form functional, only adapt it to this dark block. */
.elementor-3901 .haval-lead-form .mf-input,
.elementor-3901 .haval-lead-form input:not([type="checkbox"]):not([type="radio"]),
.elementor-3901 .haval-lead-form textarea,
.elementor-3901 .haval-lead-form select {
    box-sizing: border-box !important;
    width: 100% !important;
    border: 1px solid #3b4043 !important;
    border-radius: 5px !important;
    background: #232628 !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    font-family: Montserrat, Arial, sans-serif !important;
}

.elementor-3901 .haval-lead-form input::placeholder,
.elementor-3901 .haval-lead-form textarea::placeholder {
    color: #9da4a8 !important;
    -webkit-text-fill-color: #9da4a8 !important;
    opacity: 1 !important;
}

.elementor-3901 .haval-lead-form .mf-input:focus,
.elementor-3901 .haval-lead-form input:focus,
.elementor-3901 .haval-lead-form textarea:focus,
.elementor-3901 .haval-lead-form select:focus {
    outline: none !important;
    border-color: #00CABF !important;
    box-shadow: 0 0 0 1px #00CABF !important;
}

.elementor-3901 .haval-lead-form textarea {
    min-height: 105px !important;
    resize: vertical !important;
}

.elementor-3901 .haval-lead-form label,
.elementor-3901 .haval-lead-form .mf-checkbox,
.elementor-3901 .haval-lead-form .mf-checkbox label {
    color: #bfc4c7 !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
}

.elementor-3901 .haval-lead-form button[type="submit"],
.elementor-3901 .haval-lead-form .metform-btn {
    min-height: 48px !important;
    padding: 13px 28px !important;
    border: 1px solid #00CABF !important;
    border-radius: 6px !important;
    background: #00CABF !important;
    color: #121314 !important;
    -webkit-text-fill-color: #121314 !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    transition: background-color .2s ease, border-color .2s ease, color .2s ease !important;
}

.elementor-3901 .haval-lead-form button[type="submit"] svg,
.elementor-3901 .haval-lead-form .metform-btn svg {
    fill: #121314 !important;
}

.elementor-3901 .haval-lead-form button[type="submit"]:hover,
.elementor-3901 .haval-lead-form button[type="submit"]:focus,
.elementor-3901 .haval-lead-form .metform-btn:hover,
.elementor-3901 .haval-lead-form .metform-btn:focus {
    border-color: #fff !important;
    background: #fff !important;
    color: #121314 !important;
    -webkit-text-fill-color: #121314 !important;
}

@media (max-width: 1024px) {
    .elementor-3901 .haval-lead-section {
        padding: 72px 20px !important;
    }
    .elementor-3901 .haval-lead-inner {
        grid-template-columns: 1fr !important;
        gap: 34px !important;
        padding: 40px !important;
    }
}

@media (max-width: 767px) {
    .elementor-3901 .haval-lead-section {
        padding: 56px 16px !important;
    }
    .elementor-3901 .haval-lead-inner {
        gap: 28px !important;
        padding: 30px 22px !important;
        border-radius: 10px !important;
    }
    .elementor-3901 .haval-lead-title .elementor-heading-title {
        font-size: 36px !important;
    }
    .elementor-3901 .haval-lead-text,
    .elementor-3901 .haval-lead-text p {
        font-size: 16px !important;
    }
    .elementor-3901 .haval-lead-form-panel {
        padding: 22px 18px !important;
    }
}

/* =========================================================
   v58 — temporarily hide offer-price and Trade-in actions
   on the single vehicle page. Price itself remains visible.
   ========================================================= */
.elementor-2567 .elementor-widget-motors-single-listing-offer-price,
.elementor-2567 .elementor-widget-motors-single-listing-trade-in,
.single-listing_template .elementor-widget-motors-single-listing-offer-price,
.single-listing_template .elementor-widget-motors-single-listing-trade-in,
.single-listing_page .elementor-widget-motors-single-listing-offer-price,
.single-listing_page .elementor-widget-motors-single-listing-trade-in {
    display: none !important;
}

/* =========================================================
   v60 — compact unified internal page header / breadcrumbs
   Global Easy Elements template: "Навигационная цепочка" (ID 3569).
   No decorative photo; compact dark-grey card inside a 1320px container.
   ========================================================= */
body:not(.home) .elementor-3569 {
    box-sizing: border-box !important;
    max-width: 1320px !important;
    margin: 28px auto 44px !important;
}

body:not(.home) .elementor-3569 .elementor-element.elementor-element-cbb84d1 {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 1320px !important;
    min-height: 130px !important;
    margin: 0 auto !important;
    padding: 0 36px !important;
    overflow: hidden !important;
    border: 1px solid rgba(255,255,255,.065) !important;
    border-radius: 10px !important;
    background: #1b1d1f !important;
    background-color: #1b1d1f !important;
    background-image: none !important;
    box-shadow: none !important;
}

/* Kill the old Elementor overlay and Easy Elements jarallax image even if
   an old generated Elementor CSS file is still present in uploads. */
body:not(.home) .elementor-3569 .elementor-element.elementor-element-cbb84d1::before,
body:not(.home) .elementor-3569 .elementor-element.elementor-element-cbb84d1::after {
    background: none !important;
    background-image: none !important;
    opacity: 0 !important;
}
body:not(.home) .elementor-3569 .elementor-element.elementor-element-cbb84d1 .jarallax-img,
body:not(.home) .elementor-3569 .elementor-element.elementor-element-cbb84d1 .jarallax-container {
    display: none !important;
}

body:not(.home) .elementor-3569 .elementor-element.elementor-element-cbb84d1 > .e-con-inner {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 130px !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 40px !important;
}

/* Page title on the left. */
body:not(.home) .elementor-3569 .elementor-element.elementor-element-2ca8291 {
    box-sizing: border-box !important;
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    justify-content: center !important;
    align-items: flex-start !important;
}
body:not(.home) .elementor-3569 .elementor-element.elementor-element-0987a78,
body:not(.home) .elementor-3569 .elementor-element.elementor-element-0987a78 .elementor-widget-container,
body:not(.home) .elementor-3569 .elementor-element.elementor-element-0987a78 .eel-page-title-wrapper {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
}
body:not(.home) .elementor-3569 .elementor-element.elementor-element-0987a78 .eel-page-title,
body:not(.home) .elementor-3569 .elementor-element.elementor-element-0987a78 .eel-heading-title {
    margin: 0 !important;
    padding: 0 !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: 42px !important;
    font-weight: 600 !important;
    line-height: 1.08 !important;
    letter-spacing: -.02em !important;
}

/* Breadcrumbs on the right. */
body:not(.home) .elementor-3569 .elementor-element.elementor-element-a3e03a3 {
    box-sizing: border-box !important;
    flex: 0 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 48% !important;
    margin: 0 !important;
    padding: 0 !important;
    justify-content: center !important;
    align-items: flex-end !important;
}

/* Old decorative circle from the demo should never be shown. */
body:not(.home) .elementor-3569 .elementor-element.elementor-element-2080c3b {
    display: none !important;
}

body:not(.home) .elementor-3569 .elementor-element.elementor-element-ac806d6 {
    width: auto !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: right !important;
}
body:not(.home) .elementor-3569 .elementor-element.elementor-element-ac806d6 .eel-breadcrumb,
body:not(.home) .elementor-3569 .elementor-element.elementor-element-ac806d6 .eel-breadcrumb a,
body:not(.home) .elementor-3569 .elementor-element.elementor-element-ac806d6 .eel-breadcrumb span {
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.45 !important;
}
body:not(.home) .elementor-3569 .elementor-element.elementor-element-ac806d6 .eel-breadcrumb,
body:not(.home) .elementor-3569 .elementor-element.elementor-element-ac806d6 .eel-breadcrumb span {
    color: #aeb3b7 !important;
    -webkit-text-fill-color: #aeb3b7 !important;
}
body:not(.home) .elementor-3569 .elementor-element.elementor-element-ac806d6 .eel-breadcrumb a {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    text-decoration: none !important;
}
body:not(.home) .elementor-3569 .elementor-element.elementor-element-ac806d6 .eel-breadcrumb a:hover {
    color: #00cabf !important;
    -webkit-text-fill-color: #00cabf !important;
}
body:not(.home) .elementor-3569 .elementor-element.elementor-element-ac806d6 .breadcrumb-separator,
body:not(.home) .elementor-3569 .elementor-element.elementor-element-ac806d6 .breadcrumb-separator path {
    color: #626970 !important;
    fill: #626970 !important;
}

@media (max-width: 767px) {
    body:not(.home) .elementor-3569 {
        margin: 120px 10px 32px !important;
    }
    body:not(.home) .elementor-3569 .elementor-element.elementor-element-cbb84d1 {
        min-height: 150px !important;
        padding: 26px 24px !important;
    }
    body:not(.home) .elementor-3569 .elementor-element.elementor-element-cbb84d1 > .e-con-inner {
        min-height: 98px !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        justify-content: center !important;
        gap: 14px !important;
    }
    body:not(.home) .elementor-3569 .elementor-element.elementor-element-0987a78 .eel-page-title,
    body:not(.home) .elementor-3569 .elementor-element.elementor-element-0987a78 .eel-heading-title {
        font-size: 26px !important;
    }
    body:not(.home) .elementor-3569 .elementor-element.elementor-element-a3e03a3 {
        width: 100% !important;
        max-width: 100% !important;
        align-items: flex-start !important;
    }
    body:not(.home) .elementor-3569 .elementor-element.elementor-element-ac806d6 {
        width: 100% !important;
        text-align: left !important;
    }
}

/* =========================================================
   v94 — clean HAVAL inventory + restored filter sidebar
   - filter only: no duplicate result heading/count
   - no sorting / view switcher
   - no Featured Listings / Show all block
   - 1320px content width, sidebar + 3 vehicles per desktop row
   ========================================================= */
.haval-inventory-clean {
    box-sizing: border-box !important;
    display: grid !important;
    grid-template-columns: 300px minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 30px !important;
    max-width: 1320px !important;
    margin: 58px auto 100px !important;
    padding: 0 !important;
}

.haval-inventory-clean .haval-inventory-sidebar,
.haval-inventory-clean .stm-inventory-pro-maincol {
    box-sizing: border-box !important;
    min-width: 0 !important;
    margin: 0 !important;
}

.haval-inventory-clean .haval-inventory-sidebar {
    display: block !important;
    width: 100% !important;
    max-width: 300px !important;
    padding: 0 !important;
}

.haval-inventory-clean .stm-inventory-pro-maincol {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    flex: none !important;
    padding: 0 !important;
}

.haval-inventory-clean #listings-result,
.haval-inventory-clean .car-listing-row {
    max-width: none !important;
}

/* Filter is intentionally a standalone light HAVAL panel. */
.haval-inventory-clean .haval-inventory-filter {
    box-sizing: border-box !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 26px 24px !important;
    border: 1px solid #D9DDDF !important;
    border-radius: 10px !important;
    background: #F6F4F4 !important;
    color: #202020 !important;
}

.haval-inventory-clean .haval-inventory-filter-heading {
    margin: 0 0 22px !important;
}

.haval-inventory-clean .haval-inventory-filter-heading h2 {
    margin: 0 !important;
    color: #202020 !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: 22px !important;
    font-weight: 600 !important;
    line-height: 1.25 !important;
}

.haval-inventory-clean .haval-inventory-filter-fields {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 16px !important;
}

.haval-inventory-clean .haval-inventory-filter-field {
    display: block !important;
    min-width: 0 !important;
}

.haval-inventory-clean .haval-inventory-filter-field > label,
.haval-inventory-clean .haval-inventory-filter-label {
    display: block !important;
    margin: 0 0 7px !important;
    color: #202020 !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
}

.haval-inventory-clean .haval-inventory-filter-field select,
.haval-inventory-clean .haval-inventory-filter-field input[type="number"] {
    box-sizing: border-box !important;
    width: 100% !important;
    height: 46px !important;
    margin: 0 !important;
    padding: 0 13px !important;
    border: 1px solid #CDD2D4 !important;
    border-radius: 6px !important;
    background: #FFFFFF !important;
    color: #202020 !important;
    -webkit-text-fill-color: #202020 !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: 14px !important;
    line-height: 1.2 !important;
    box-shadow: none !important;
    outline: none !important;
}

.haval-inventory-clean .haval-inventory-filter-field select:focus,
.haval-inventory-clean .haval-inventory-filter-field input[type="number"]:focus {
    border-color: #00CABF !important;
    box-shadow: 0 0 0 1px #00CABF !important;
}

.haval-inventory-clean .haval-inventory-price-row {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
}

.haval-inventory-clean .haval-inventory-filter-actions {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 12px !important;
    margin-top: 22px !important;
}

.haval-inventory-clean .haval-inventory-filter-submit {
    box-sizing: border-box !important;
    width: 100% !important;
    min-height: 46px !important;
    margin: 0 auto !important;
    padding: 12px 16px !important;
    border: 1px solid #00CABF !important;
    border-radius: 6px !important;
    background: #00CABF !important;
    color: #202020 !important;
    -webkit-text-fill-color: #202020 !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    cursor: pointer !important;
}

.haval-inventory-clean .haval-inventory-filter-submit:hover,
.haval-inventory-clean .haval-inventory-filter-submit:focus {
    border-color: #626970 !important;
    background: #626970 !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}

.haval-inventory-clean .haval-inventory-filter-reset {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 28px !important;
    color: #202020 !important;
    -webkit-text-fill-color: #202020 !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    line-height: 1.3 !important;
    text-decoration: none !important;
}

.haval-inventory-clean .haval-inventory-filter-reset:hover,
.haval-inventory-clean .haval-inventory-filter-reset:focus {
    color: #00CABF !important;
    -webkit-text-fill-color: #00CABF !important;
}

/* Keep the inventory at exactly three cards per row on desktop. */
.haval-inventory-clean .car-listing-row.row-3 > .stm-directory-grid-loop {
    box-sizing: border-box !important;
    flex: 0 0 33.333333% !important;
    width: 33.333333% !important;
    max-width: 33.333333% !important;
}

/* Defensive fallback: even if Motors serves its native inventory wrapper,
   the removed auxiliary controls stay hidden. The sidebar is NOT hidden on
   the stock page anymore. */
.page-id-9140 .stm-pro-layout--inventory-modern,
.page-id-2966 .stm-pro-layout--inventory-modern {
    box-sizing: border-box !important;
    max-width: 1320px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.page-id-2966 .stm-pro-layout--inventory-modern .stm-inventory-pro-sidebar,
.page-id-9140 .stm-pro-layout--inventory-modern .stm-inventory-pro-filter-mobile-apparent,
.page-id-2966 .stm-pro-layout--inventory-modern .stm-inventory-pro-filter-mobile-apparent,
.page-id-9140 .stm-pro-layout--inventory-modern .search-results-actions,
.page-id-2966 .stm-pro-layout--inventory-modern .search-results-actions,
.page-id-9140 .stm-pro-layout--inventory-modern .mvl-featured-title-container,
.page-id-2966 .stm-pro-layout--inventory-modern .mvl-featured-title-container,
.page-id-9140 .stm-pro-layout--inventory-modern .stm-featured-top-cars-title,
.page-id-2966 .stm-pro-layout--inventory-modern .stm-featured-top-cars-title,
.page-id-9140 .stm-pro-layout--inventory-modern .stm-isotope-sorting-featured-top,
.page-id-2966 .stm-pro-layout--inventory-modern .stm-isotope-sorting-featured-top,
.page-id-9140 .stm-pro-layout--inventory-modern .stm-isotope-sorting,
.page-id-9140 .stm-pro-layout--inventory-modern .stm-inventory-pro-top-bar {
    /* display: none !important; */
}

/* Model-range page keeps its old full-width fallback if a Motors inventory
   template is ever rendered there. */
.page-id-2966 .stm-pro-layout--inventory-modern .stm-inventory-pro-maincol {
    width: 100% !important;
    max-width: none !important;
    flex: 0 0 100% !important;
}

@media (max-width: 1100px) {
    .haval-inventory-clean {
        grid-template-columns: 1fr !important;
        gap: 28px !important;
    }

    .haval-inventory-clean .haval-inventory-sidebar {
        max-width: none !important;
    }

    .haval-inventory-clean .haval-inventory-filter-fields {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .haval-inventory-clean .haval-inventory-filter-price {
        grid-column: 1 / -1 !important;
    }
}

@media (max-width: 1024px) {
    .haval-inventory-clean .car-listing-row.row-3 > .stm-directory-grid-loop {
        flex-basis: 50% !important;
        width: 50% !important;
        max-width: 50% !important;
    }
}

@media (max-width: 767px) {
    .haval-inventory-clean {
        margin-top: 36px !important;
        margin-bottom: 64px !important;
        gap: 24px !important;
    }

    .haval-inventory-clean .haval-inventory-filter {
        padding: 22px 18px !important;
    }

    .haval-inventory-clean .haval-inventory-filter-fields {
        grid-template-columns: 1fr !important;
    }

    .haval-inventory-clean .haval-inventory-filter-price {
        grid-column: auto !important;
    }

    .haval-inventory-clean .car-listing-row.row-3 > .stm-directory-grid-loop {
        flex-basis: 100% !important;
        width: 100% !important;
        max-width: 100% !important;
    }
}

/* =========================================================
   v64 — Inventory card permanent action bar
   Four always-visible circular actions; no three-dots popup and no hover
   extension / large "Подробнее" action below the card.
   ========================================================= */
.haval-inventory-clean .mvl-actions-popup.grid-view,
.haval-inventory-clean .mvl-action-buttons,
.haval-inventory-clean .mvl-card-skins .mvl-action-buttons,
.haval-inventory-clean .mvl-card-skins .mvl-action-buttons.actions_hover {
    display: none !important;
}

/* The inventory cards must keep exactly the same geometry on hover. */
.haval-inventory-clean .stm-directory-grid-loop.skin_4 .mvl-card-inner,
.haval-inventory-clean .stm-directory-grid-loop.skin_4 .mvl-card-inner.actions_hover,
.haval-inventory-clean .stm-directory-grid-loop.skin_4 .mvl-card-inner.actions_hover:hover,
.haval-inventory-clean .stm-directory-grid-loop.skin_4 .mvl-card-inner:hover {
    position: relative !important;
    height: 100% !important;
    margin: 0 !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    transform: none !important;
}

/* Keep price/content area stable; the quick-action row is a normal part of
   the card, not an absolutely positioned hover panel. */
.haval-inventory-clean .stm-directory-grid-loop.skin_4 .mvl-price-grid-card {
    flex: 1 1 auto !important;
    padding-bottom: 12px !important;
}

.haval-inventory-clean .haval-inventory-quick-actions {
    box-sizing: border-box !important;
    display: flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    width: 100% !important;
    min-height: 58px !important;
    margin: 0 !important;
    padding: 10px 16px 16px !important;
    border-top: 1px solid rgba(255,255,255,.09) !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    position: static !important;
    z-index: 3 !important;
}

.haval-inventory-clean .haval-inventory-quick-action {
    appearance: none !important;
    -webkit-appearance: none !important;
    box-sizing: border-box !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 40px !important;
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid rgba(255,255,255,.25) !important;
    border-radius: 50% !important;
    background: #1b1d1f !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    text-decoration: none !important;
    line-height: 1 !important;
    cursor: pointer !important;
    box-shadow: none !important;
    overflow: hidden !important;
    transition: background-color .18s ease, border-color .18s ease, color .18s ease !important;
}

.haval-inventory-clean .haval-inventory-quick-action::before,
.haval-inventory-clean .haval-inventory-quick-action::after {
    content: none !important;
    display: none !important;
}

/* Inline SVG avoids dependency on the Motors icon font being enqueued on a
   particular inventory template. */
.haval-inventory-clean .haval-inventory-quick-action svg {
    display: block !important;
    width: 18px !important;
    height: 18px !important;
    margin: 0 !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 1.8 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
    color: inherit !important;
    pointer-events: none !important;
}

.haval-inventory-clean .haval-action-phone svg path {
    fill: currentColor !important;
    stroke: none !important;
}

.haval-inventory-clean .haval-inventory-quick-action:hover,
.haval-inventory-clean .haval-inventory-quick-action:focus-visible,
.haval-inventory-clean .haval-inventory-quick-action.is-copied {
    border-color: #00cabf !important;
    background: #00cabf !important;
    color: #121314 !important;
    -webkit-text-fill-color: #121314 !important;
    transform: none !important;
    outline: none !important;
}

/* "Подробнее" is visually distinguished only by its arrow icon. It remains
   the same compact circular control as the other three actions. */
.haval-inventory-clean .haval-action-details {
    margin-left: 2px !important;
}

@media (max-width: 767px) {
    .haval-inventory-clean .haval-inventory-quick-actions {
        gap: 9px !important;
        min-height: 56px !important;
    }
    .haval-inventory-clean .haval-inventory-quick-action {
        flex-basis: 38px !important;
        width: 38px !important;
        height: 38px !important;
        min-width: 38px !important;
        min-height: 38px !important;
    }
}



/* =========================================================
   v65 — Inventory card title + compact one-line specifications
   The native skin_4 reserves title width for the removed three-dots menu
   and renders data items in two columns. On the HAVAL inventory page there
   is no popup menu, so both areas can use the full card width.
   ========================================================= */
.haval-inventory-clean .stm-directory-grid-loop.skin_4 .skin_4.mvl_listing_title_wrapper .mvl_listing_title_wrapper-inner {
    display: block !important;
    width: 100% !important;
}

.haval-inventory-clean .stm-directory-grid-loop.skin_4 .skin_4.mvl_listing_title_wrapper .mvl_listing_title,
.haval-inventory-clean .stm-directory-grid-loop.skin_4 .skin_4.mvl_listing_title_wrapper .mvl_listing_title.car-title {
    box-sizing: border-box !important;
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin-right: 0 !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
}

/* Transmission, mileage and fuel share one row instead of the native 2 + 1 layout. */
.haval-inventory-clean .stm-directory-grid-loop.skin_4 .skin_4.mvl-card-listing-data .mvl-card-listing-data-inner {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
    flex-wrap: nowrap !important;
}

.haval-inventory-clean .stm-directory-grid-loop.skin_4 .skin_4.mvl-card-listing-data .mvl-card-listing-data-inner > li {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    white-space: nowrap !important;
}

.haval-inventory-clean .stm-directory-grid-loop.skin_4 .skin_4.mvl-card-listing-data .mvl-card-listing-data-inner > li span {
    display: block !important;
    min-width: 0 !important;
    max-width: none !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    text-align: left !important;
}

@media (max-width: 380px) {
    .haval-inventory-clean .stm-directory-grid-loop.skin_4 .skin_4.mvl-card-listing-data .mvl-card-listing-data-inner {
        gap: 7px !important;
    }
    .haval-inventory-clean .stm-directory-grid-loop.skin_4 .skin_4.mvl-card-listing-data .mvl-card-listing-data-inner > li {
        font-size: 12px !important;
    }
}

/* =========================================================
   v66 — Header logo size
   Desktop: 170px. Keep the previous compact 110px size once
   the header switches to the mobile/tablet navigation layout.
   Footer logo is intentionally unaffected.
   ========================================================= */
@media (min-width: 1301px) {
    .elementor-2569 .elementor-element.elementor-element-584f849 .eel-site-logo img,
    .elementor-2569 .elementor-element.elementor-element-584f849 .eel-site-logo a img {
        width: 170px !important;
        max-width: 170px !important;
        height: auto !important;
    }
}

@media (max-width: 1300px) {
    .elementor-2569 .elementor-element.elementor-element-584f849 .eel-site-logo img,
    .elementor-2569 .elementor-element.elementor-element-584f849 .eel-site-logo a img {
        width: 110px !important;
        max-width: 110px !important;
        height: auto !important;
    }
}

/* =========================================================
   v67 — Dedicated "Модельный ряд" page
   The page is a presentation catalogue of HAVAL models, not a second
   Motors inventory. Content width follows the 1320px internal-page grid.
   ========================================================= */
.page-id-2966 .site-content,
.page-id-2966 .content-area,
.page-id-2966 main {
    background: #121314 !important;
}

.page-id-2966 .haval-model-range-page,
.page-id-2966 .haval-model-catalogue-section,
.page-id-2966 .haval-model-guide-section,
.page-id-2966 .haval-model-ownership-section,
.page-id-2966 .haval-model-request-section {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
}

.page-id-2966 .haval-model-catalogue-section {
    padding: 84px 24px 96px !important;
    background: #121314 !important;
}

.page-id-2966 .haval-model-page-inner {
    box-sizing: border-box !important;
    width: min(100%, 1320px) !important;
    max-width: 1320px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.page-id-2966 .haval-model-intro {
    display: grid !important;
    grid-template-columns: minmax(0, .9fr) minmax(320px, .7fr) !important;
    align-items: end !important;
    gap: 48px !important;
    margin-bottom: 42px !important;
}





.elementor-widget-haval-model-grid .haval-model-image-link {
    display: flex !important;
    width: 100% !important;
	height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.page-id-2966 .elementor-widget-haval-model-grid .haval-model-card .rt-content-area {
    padding-bottom: 0 !important;
}

.page-id-2966 .elementor-widget-haval-model-grid .haval-model-card .rt-listing-title {
    width: 100% !important;
    max-width: none !important;
    margin-bottom: 0 !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: 22px !important;
    line-height: 1.25 !important;
	color: #202020;
}


/* =========================================================
   v69 — Homepage light content system
   Hero and footer stay unchanged.
   Content sections alternate white / HAVAL light gray (#F6F4F4).
   Turquoise #00CABF remains the corporate accent.
   ========================================================= */
:root {
    --haval-home-white: #FFFFFF;
    --haval-home-gray: #F6F4F4;
    --haval-home-ink: #121314;
    --haval-home-muted: #202020;
    --haval-home-line: #D9DDDF;
}

/* Main content typography on light backgrounds. */
.elementor-3901 :is(
    .elementor-element-5db8322,
    .elementor-element-be306e9,
    .elementor-element-5db8321,
    .elementor-element-hvlead57,
    .elementor-element-spoff51,
    .elementor-element-e2d80a5,
    .elementor-element-2eb813f,
    .elementor-element-53c0eda,
    .elementor-element-2b22247
) :is(h1, h2, h3, h4, h5, h6, .elementor-heading-title, .eel-heading-title) {
    color: var(--haval-home-ink) !important;
    -webkit-text-fill-color: var(--haval-home-ink) !important;
}



.elementor-3901 :is(
    .elementor-element-5db8322,
    .elementor-element-be306e9,
    .elementor-element-5db8321,
    .elementor-element-hvlead57,
    .elementor-element-spoff51,
    .elementor-element-e2d80a5,
    .elementor-element-2eb813f,
    .elementor-element-53c0eda,
    .elementor-element-2b22247
) :is(p, li, .elementor-icon-list-text) {
    color: var(--haval-home-muted) !important;
    -webkit-text-fill-color: var(--haval-home-muted) !important;
}

/* Keep all existing corporate turquoise accents turquoise. */
.elementor-3901 :is(
    .elementor-element-5db8322,
    .elementor-element-be306e9,
    .elementor-element-5db8321,
    .elementor-element-hvlead57,
    .elementor-element-spoff51,
    .elementor-element-e2d80a5,
    .elementor-element-2eb813f,
    .elementor-element-53c0eda,
    .elementor-element-2b22247
) :is(.eel-sub-title, .sub-title, .sub_heading, .haval-lead-kicker .elementor-heading-title, .haval-special-offers-kicker .elementor-heading-title) {
    color: #00CABF !important;
    -webkit-text-fill-color: #00CABF !important;
}

/* ---------------------------------------------------------
   Model range — white section, soft-gray model cards.
   --------------------------------------------------------- */
.elementor-3901 .haval-model-range-dynamic {
    background: var(--haval-home-white) !important;
}

.elementor-3901 .haval-model-range-dynamic .haval-model-card {
    background: var(--haval-home-gray) !important;
    border: 1px solid var(--haval-home-line) !important;
    box-shadow: 0 10px 28px rgba(18, 19, 20, .08) !important;
}

.elementor-3901 .haval-model-range-dynamic .haval-model-card .rt-listing-image {
    background: var(--haval-home-white) !important;
}

.elementor-3901 .haval-model-range-dynamic .haval-model-card .rt-content-area {
    background: var(--haval-home-gray) !important;
    color: var(--haval-home-ink) !important;
}

.elementor-3901 .haval-model-range-dynamic .haval-model-card .rt-listing-title,
.elementor-3901 .haval-model-range-dynamic .haval-model-card a .rt-listing-title {
    color: var(--haval-home-ink) !important;
    -webkit-text-fill-color: var(--haval-home-ink) !important;
}

.elementor-3901 .haval-model-range-dynamic .haval-model-card .rt-listing-price,
.elementor-3901 .haval-model-range-dynamic .haval-model-card .rt-listing-price .price,
.elementor-3901 .haval-model-range-dynamic .haval-model-card .rt-listing-price .sale-price {
    color: #00CABF !important;
    -webkit-text-fill-color: #00CABF !important;
}

.elementor-3901 .haval-model-range-dynamic .haval-model-card .rt-button.rt-button-primary,
.elementor-3901 .haval-model-range-dynamic .haval-model-card .rt-button.rt-button-primary::after {
    background: #00CABF !important;
    border-color: #00CABF !important;
    color: var(--haval-home-ink) !important;
    -webkit-text-fill-color: var(--haval-home-ink) !important;
}

/* ---------------------------------------------------------
   About / partner block — light gray.
   --------------------------------------------------------- */
.elementor-3901 .elementor-element.elementor-element-be306e9 .elementor-element-e0a73b2 .eel-sub-title,
.elementor-3901 .elementor-element.elementor-element-be306e9 .elementor-element-e0a73b2 .sub-title,
.elementor-3901 .elementor-element.elementor-element-be306e9 .elementor-element-e0a73b2 .sub_heading {
    color: #00CABF !important;
    -webkit-text-fill-color: #00CABF !important;
}

/* ---------------------------------------------------------
   Stock cars — white section, subtle gray cards.
   --------------------------------------------------------- */
.elementor-3901 .elementor-element.elementor-element-5db8321 .rt-listing-item,
.elementor-3901 .elementor-element.elementor-element-5db8321 .mvl-listing-card,
.elementor-3901 .elementor-element.elementor-element-5db8321 .listing-car-item {
    background: var(--haval-home-gray) !important;
    border-color: var(--haval-home-line) !important;
    box-shadow: 0 14px 40px rgba(0, 0, 0, .16) !important;
}

.elementor-3901 .elementor-element.elementor-element-5db8321 .rt-listing-image {
    background: var(--haval-home-white) !important;
}

.elementor-3901 .elementor-element.elementor-element-5db8321 :is(
    .rt-content-area,
    .rt-listing-title,
    .rt-listing-title a,
    .listing-car-item-meta,
    .listing-car-item-meta span,
    .mvl-listing-card,
    .mvl-listing-card [class*="meta"]
) {
    color: var(--haval-home-ink) !important;
    -webkit-text-fill-color: var(--haval-home-ink) !important;
}

.elementor-3901 .elementor-element.elementor-element-5db8321 :is(
    .rt-listing-price,
    .rt-listing-price .price,
    .rt-listing-price .sale-price,
    [class*="price"]
) {
    color: #00CABF !important;
    -webkit-text-fill-color: #00CABF !important;
}

/* ---------------------------------------------------------
   Lead form — gray section with a white card and light form.
   --------------------------------------------------------- */
.elementor-3901 .haval-lead-section {
    background: var(--haval-home-gray) !important;
}

.elementor-3901 .haval-lead-inner {
    border-color: var(--haval-home-line) !important;
    background: var(--haval-home-white) !important;
    box-shadow: 0 14px 38px rgba(18,19,20,.08) !important;
}

.elementor-3901 .haval-lead-title .elementor-heading-title,
.elementor-3901 .haval-lead-note,
.elementor-3901 .haval-lead-note p {
    color: var(--haval-home-ink) !important;
    -webkit-text-fill-color: var(--haval-home-ink) !important;
}

.elementor-3901 .haval-lead-text,
.elementor-3901 .haval-lead-text p {
    color: var(--haval-home-muted) !important;
    -webkit-text-fill-color: var(--haval-home-muted) !important;
}

.elementor-3901 .haval-lead-note {
    border-top-color: var(--haval-home-line) !important;
}

.elementor-3901 .haval-lead-form-panel {
    background: var(--haval-home-gray) !important;
    border-color: var(--haval-home-line) !important;
}

.elementor-3901 .haval-lead-form .mf-input,
.elementor-3901 .haval-lead-form input:not([type="checkbox"]):not([type="radio"]),
.elementor-3901 .haval-lead-form textarea,
.elementor-3901 .haval-lead-form select {
    border-color: #CDD2D4 !important;
    background: var(--haval-home-white) !important;
    color: var(--haval-home-ink) !important;
    -webkit-text-fill-color: var(--haval-home-ink) !important;
}

.elementor-3901 .haval-lead-form input::placeholder,
.elementor-3901 .haval-lead-form textarea::placeholder,
.elementor-3901 .haval-lead-form label,
.elementor-3901 .haval-lead-form .mf-checkbox,
.elementor-3901 .haval-lead-form .mf-checkbox label {
    color: var(--haval-home-muted) !important;
    -webkit-text-fill-color: var(--haval-home-muted) !important;
}

/* ---------------------------------------------------------
   Special offers — white section, gray offer cards.
   --------------------------------------------------------- */
.elementor-3901 .haval-special-offers {
    background: var(--haval-home-white) !important;
}

.elementor-3901 .haval-special-offer-card,
.elementor-3901 .haval-special-offer-card.haval-special-offer-main {
    border-color: var(--haval-home-line) !important;
    background: var(--haval-home-gray) !important;
    box-shadow: 0 12px 32px rgba(18,19,20,.07) !important;
}

.elementor-3901 .haval-special-offer-card:hover {
    border-color: rgba(0,202,191,.55) !important;
    box-shadow: 0 16px 38px rgba(18,19,20,.10) !important;
}

.elementor-3901 .haval-special-offers-heading .elementor-heading-title,
.elementor-3901 .haval-special-offers-heading h2,
.elementor-3901 .haval-offer-title .elementor-heading-title,
.elementor-3901 .haval-offer-title h3 {
    color: var(--haval-home-ink) !important;
    -webkit-text-fill-color: var(--haval-home-ink) !important;
}

.elementor-3901 .haval-special-offers-description,
.elementor-3901 .haval-special-offers-description p,
.elementor-3901 .haval-offer-text,
.elementor-3901 .haval-offer-text p {
    color: var(--haval-home-muted) !important;
    -webkit-text-fill-color: var(--haval-home-muted) !important;
}

.elementor-3901 .haval-special-offer-card .haval-offer-button .rt-button.rt-button-primary,
.elementor-3901 .haval-special-offer-card .haval-offer-button .rt-button.rt-button-primary::after {
    background: #00CABF !important;
    border-color: #00CABF !important;
    color: var(--haval-home-ink) !important;
    -webkit-text-fill-color: var(--haval-home-ink) !important;
}

/* ---------------------------------------------------------
   Counters — gray section, dark numbers, turquoise icons.
   --------------------------------------------------------- */
.elementor-3901 .elementor-element.elementor-element-e2d80a5 :is(
    .counter-number,
    .eel-counter-number,
    [class*="counter-number"],
    .count-number
) {
    color: var(--haval-home-ink) !important;
    -webkit-text-fill-color: var(--haval-home-ink) !important;
}

.elementor-3901 .elementor-element.elementor-element-e2d80a5 :is(
    .counter-title,
    .eel-counter-title,
    [class*="counter-title"]
) {
    color: var(--haval-home-muted) !important;
    -webkit-text-fill-color: var(--haval-home-muted) !important;
}

.elementor-3901 .elementor-element.elementor-element-e2d80a5 :is(i, svg) {
    color: #00CABF !important;
}

/* ---------------------------------------------------------
   Why us — white section.
   --------------------------------------------------------- */
.elementor-3901 .elementor-element.elementor-element-2eb813f .elementor-icon-list-icon,
.elementor-3901 .elementor-element.elementor-element-2eb813f .elementor-icon-list-icon i,
.elementor-3901 .elementor-element.elementor-element-2eb813f .elementor-icon-list-icon svg {
    color: #00CABF !important;
    fill: #00CABF !important;
}

.elementor-3901 .elementor-element.elementor-element-2eb813f .elementor-icon-list-text {
    color: var(--haval-home-ink) !important;
    -webkit-text-fill-color: var(--haval-home-ink) !important;
}

/* ---------------------------------------------------------
   Testimonials — gray section, white testimonial cards.
   --------------------------------------------------------- */
.elementor-3901 .elementor-element.elementor-element-53c0eda .elementor-element-4dfc6ce :is(
    .testimonial-item,
    .rt-testimonial-item,
    .testimonial-wrap,
    .testimonial-content,
    .swiper-slide > div
) {
    background-color: var(--haval-home-white) !important;
    border-color: var(--haval-home-line) !important;
}

.elementor-3901 .elementor-element.elementor-element-53c0eda .elementor-element-4dfc6ce :is(
    .name,
    .author-name,
    .testimonial-name,
    [class*="name"]
) {
    color: var(--haval-home-ink) !important;
    -webkit-text-fill-color: var(--haval-home-ink) !important;
}

.elementor-3901 .elementor-element.elementor-element-53c0eda .elementor-element-4dfc6ce :is(
    .designation,
    .description,
    .desc,
    .testimonial-description,
    p
) {
    color: var(--haval-home-muted) !important;
    -webkit-text-fill-color: var(--haval-home-muted) !important;
}

/* ---------------------------------------------------------
   Location / map — white section. Keep Google Maps itself intact.
   --------------------------------------------------------- */
.elementor-3901 .elementor-element.elementor-element-2b22247 {
    background: var(--haval-home-white) !important;
}

/* Light-content primary buttons: turquoise remains the accent, dark text gives
   the correct contrast on #00CABF. Hero is intentionally outside these rules. */
.elementor-3901 :is(
    .elementor-element-5db8322,
    .elementor-element-be306e9,
    .elementor-element-5db8321,
    .elementor-element-hvlead57,
    .elementor-element-spoff51,
    .elementor-element-e2d80a5,
    .elementor-element-2eb813f,
    .elementor-element-53c0eda,
    .elementor-element-2b22247
) :is(.elementor-button, .rt-button-primary) {
    border-color: #00CABF !important;
}

/* Keep this change limited to the Home page. Footer is a separate template and
   the Hero (3208f37 / .haval-home-hero) is intentionally not targeted. */

/* =========================================================
   v70 — Homepage stock cards: more space below vehicle title
   Adds breathing room between the model/trim name and the
   transmission / mileage / fuel row. Homepage stock block only.
   ========================================================= */
.elementor-3901 .elementor-element.elementor-element-5db8321 .mvl_listing_title_wrapper {
    margin-bottom: 7px !important;
}

.elementor-3901 .elementor-element.elementor-element-5db8321 .mvl-card-listing-data {
    margin-top: 0 !important;
}

/* =========================================================
   v71 — Listing card metadata spacing
   Exact AutoVault element requested:
   .rt-listing-item-meta-data
   ========================================================= */
.rt-cat-tab-listing .rt-listing-item .rt-content-area .rt-listing-item-meta-data,
.rt-cat-tab-listing-slider .rt-listing-item .rt-content-area .rt-listing-item-meta-data,
.rt-listing-grid .rt-listing-item .rt-content-area .rt-listing-title {
    margin-bottom: 7px !important;
}

.rt-cat-tab-listing .rt-listing-item .rt-content-area .rt-listing-item-meta-data,
.rt-cat-tab-listing-slider .rt-listing-item .rt-content-area .rt-listing-item-meta-data,
.rt-listing-grid .rt-listing-item .rt-content-area .rt-listing-item-meta-data {
    margin-bottom: 4px !important;
}

.rt-listing-grid .rt-listing-item .rt-content-area .rt-listing-button-area .rt-button:hover {

}

.rt-cat-tab-listing .rt-listing-item .rt-content-area .rt-listing-button-area .rt-button, .rt-cat-tab-listing-slider .rt-listing-item .rt-content-area .rt-listing-button-area .rt-button, .rt-listing-grid .rt-listing-item .rt-content-area .rt-listing-button-area .rt-button {
	background: #1F1F25 !important;
	color: #FFFFFF !important;
	-webkit-text-fill-color: #FFFFFF !important;
}


/* =========================================================
   v73 — CONTACTS PAGE LIGHT CONTENT
   Page ID: 2598
   Header + global internal breadcrumb remain dark.
   Content:
   1) map + form — white, form panel gray;
   2) location / email / phone — white;
   3) counters — untouched (original dark block);
   4) partners — white.
   White text converted to #202020; HAVAL turquoise stays #00CABF.
   ========================================================= */
.page-id-2598 {
    --haval-contact-white: #FFFFFF;
    --haval-contact-gray: #F6F4F4;
    --haval-contact-ink: #202020;
    --haval-contact-muted: #626970;
    --haval-contact-line: #D9DDDF;
}

/* ---------------------------------------------------------
   Internal title + breadcrumbs: explicitly keep the old dark design.
   This also protects Contacts from any generic light-page overrides.
   --------------------------------------------------------- */
.page-id-2598 .elementor-3569 .elementor-element.elementor-element-cbb84d1 {
    border-color: rgba(255,255,255,.065) !important;
    background: #1B1D1F !important;
    background-color: #1B1D1F !important;
    background-image: none !important;
}

.page-id-2598 .elementor-3569 .elementor-element.elementor-element-0987a78 .eel-page-title,
.page-id-2598 .elementor-3569 .elementor-element.elementor-element-0987a78 .eel-heading-title {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}

.page-id-2598 .elementor-3569 .elementor-element.elementor-element-ac806d6 .eel-breadcrumb,
.page-id-2598 .elementor-3569 .elementor-element.elementor-element-ac806d6 .eel-breadcrumb span {
    color: #AEB3B7 !important;
    -webkit-text-fill-color: #AEB3B7 !important;
}

.page-id-2598 .elementor-3569 .elementor-element.elementor-element-ac806d6 .eel-breadcrumb a {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}

.page-id-2598 .elementor-3569 .elementor-element.elementor-element-ac806d6 .eel-breadcrumb a:hover {
    color: #00CABF !important;
    -webkit-text-fill-color: #00CABF !important;
}

/* ---------------------------------------------------------
   1. Map + feedback form.
   Outer content is white; only the form card is light gray.
   --------------------------------------------------------- */
.page-id-2598 .elementor-element.elementor-element-c2d2bed,
.page-id-2598 .elementor-element.elementor-element-06bf3ba {
    background: var(--haval-contact-white) !important;
    background-color: var(--haval-contact-white) !important;
    background-image: none !important;
}

.page-id-2598 .elementor-element.elementor-element-e6d6882 {
    background: var(--haval-contact-gray) !important;
    background-color: var(--haval-contact-gray) !important;
    background-image: none !important;
    border: 1px solid var(--haval-contact-line) !important;
}

.page-id-2598 .elementor-element.elementor-element-622c03c .elementor-heading-title {
    color: var(--haval-contact-ink) !important;
    -webkit-text-fill-color: var(--haval-contact-ink) !important;
}

/* MetForm itself on the gray panel. */
.page-id-2598 .elementor-element.elementor-element-fd2c42b :is(
    label,
    .mf-label,
    .mf-input-label,
    .mf-checkbox,
    .mf-checkbox label,
    p,
    span:not(.mf-error-message)
) {
    color: var(--haval-contact-ink) !important;
    -webkit-text-fill-color: var(--haval-contact-ink) !important;
}

.page-id-2598 .elementor-element.elementor-element-fd2c42b :is(
    input:not([type="checkbox"]):not([type="radio"]),
    textarea,
    select,
    .mf-input
) {
    border: 1px solid #CDD2D4 !important;
    background: var(--haval-contact-white) !important;
    color: var(--haval-contact-ink) !important;
    -webkit-text-fill-color: var(--haval-contact-ink) !important;
}

.page-id-2598 .elementor-element.elementor-element-fd2c42b input::placeholder,
.page-id-2598 .elementor-element.elementor-element-fd2c42b textarea::placeholder {
    color: #202020 !important;
    -webkit-text-fill-color: #202020 !important;
    opacity: 1 !important;
}

.page-id-2598 .elementor-element.elementor-element-fd2c42b :is(
    input:not([type="checkbox"]):not([type="radio"]),
    textarea,
    select,
    .mf-input
):focus {
    border-color: #00CABF !important;
    box-shadow: 0 0 0 1px #00CABF !important;
    outline: none !important;
}

/* Keep the corporate CTA turquoise. */
.page-id-2598 .elementor-element.elementor-element-fd2c42b :is(
    button[type="submit"],
    .metform-btn
) {
    border-color: #00CABF !important;
    background: #00CABF !important;
    color: #202020 !important;
    -webkit-text-fill-color: #202020 !important;
}

/* ---------------------------------------------------------
   2. Three contact cells: Location / E-mail / Phone.
   --------------------------------------------------------- */
.page-id-2598 .elementor-element.elementor-element-ff35ab3 {
    background: var(--haval-contact-white) !important;
    background-color: var(--haval-contact-white) !important;
    background-image: none !important;
}

.page-id-2598 .elementor-element.elementor-element-e593da3 {
    background: var(--haval-contact-white) !important;
    border-color: var(--haval-contact-line) !important;
}

.page-id-2598 :is(
    .elementor-element-e1ae3a7,
    .elementor-element-303034a,
    .elementor-element-8bcd657
) {
    background: var(--haval-contact-white) !important;
}

/* Titles and contact values. Do not recolor icons: they remain turquoise. */
.page-id-2598 :is(
    .elementor-element-e1ae3a7,
    .elementor-element-303034a,
    .elementor-element-8bcd657
) :is(
    .contact-box-title,
    .eel-contact-box-title,
    h5,
    h6
) {
    color: var(--haval-contact-ink) !important;
    -webkit-text-fill-color: var(--haval-contact-ink) !important;
}

.page-id-2598 :is(
    .elementor-element-e1ae3a7,
    .elementor-element-303034a,
    .elementor-element-8bcd657
) :is(
    .contact-box-desc,
    .contact-box-description,
    .eel-contact-box-description,
    .eel-contact-box-desc,
    a
) {
    color: var(--haval-contact-ink) !important;
    -webkit-text-fill-color: var(--haval-contact-ink) !important;
}

.page-id-2598 :is(
    .elementor-element-e1ae3a7,
    .elementor-element-303034a,
    .elementor-element-8bcd657
) :is(
    .eel-icon,
    .eel-icon i,
    .eel-icon svg,
    [class*="icon"]
) {
    color: #00CABF !important;
}

.page-id-2598 :is(
    .elementor-element-e1ae3a7,
    .elementor-element-303034a,
    .elementor-element-8bcd657
) .eel-icon svg {
    fill: #00CABF !important;
}

/* ---------------------------------------------------------
   3. Stats / counters block fc5ba34.
   IMPORTANT: deliberately untouched. It keeps its original
   dark background, image, white numbers and existing styling.
   --------------------------------------------------------- */

/* ---------------------------------------------------------
   4. Partners section: white background + dark title.
   Turquoise subtitle / highlights remain turquoise.
   --------------------------------------------------------- */
.page-id-2598 .elementor-element.elementor-element-332d601 {
    background: var(--haval-contact-white) !important;
    background-color: var(--haval-contact-white) !important;
    background-image: none !important;
}

.page-id-2598 .elementor-element.elementor-element-8b0d0da :is(
    .eel-heading-title,
    .elementor-heading-title,
    h2
) {
    color: var(--haval-contact-ink) !important;
    -webkit-text-fill-color: var(--haval-contact-ink) !important;
}

.page-id-2598 .elementor-element.elementor-element-8b0d0da :is(
    .eel-sub-title,
    .sub-title,
    .sub_heading,
    [class*="highlight"]
) {
    color: #00CABF !important;
    -webkit-text-fill-color: #00CABF !important;
    text-decoration: none !important;
}

/* Partner logo cells on white. */
.page-id-2598 .elementor-element.elementor-element-a4fadb6 :is(
    .logo-item,
    .eel-client-logo-item,
    .client-logo-item,
    .eel-logo-item
) {
    border-color: var(--haval-contact-line) !important;
    background: var(--haval-contact-white) !important;
}

/* Keep the page canvas light only below the dark page header. */
.page-id-2598 .site-content,
.page-id-2598 .content-area,
.page-id-2598 main {
    background: var(--haval-contact-white) !important;
}

.page-id-2966 .haval-model-quick-actions {
    display: flex;
    flex: 0 0 auto;
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
}

.page-id-2966 .haval-model-quick-action {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 30px;
    width: 30px;
    height: 30px;
    min-width: 30px;
    min-height: 30px;
    margin: 0;
    padding: 0;
    border-style: solid;
    border-width: 1px;
    border-radius: 50%;
    cursor: pointer;
    transition: background-color .2s ease, border-color .2s ease, color .2s ease;
}

.page-id-2966 .haval-model-quick-action {
    appearance: none;
    -webkit-appearance: none;
	background: #ffffff;
	color: #00CABF;
	border-color: #00CABF
}

.page-id-2966 .haval-model-quick-action:hover {
	background: #00CABF;
	color: #ffffff;
}

.page-id-2966 .haval-model-quick-action svg {
    display: block;
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.page-id-2966 .haval-model-quick-action.haval-action-phone svg path {
    fill: currentColor;
    stroke: none;
}

.page-id-2966 .haval-model-quick-action:focus-visible {
    outline: 2px solid var(--haval-model-accent);
    outline-offset: 2px;
}

.page-id-2966 .rt-cat-tab-listing .rt-listing-item .rt-content-area .rt-listing-button-area, .rt-cat-tab-listing-slider .rt-listing-item .rt-content-area .rt-listing-button-area, .rt-listing-grid .rt-listing-item .rt-content-area .rt-listing-button-area {
	padding: 28px 30px 30px;
}
/* =========================================================
   v75 — NEWS INDEX LIGHT CONTENT
   WordPress posts page: "Новости" (page_for_posts = 5734).
   Header + global internal title/breadcrumb template remain dark.
   Main news content is white; every sidebar widget is a separate
   #F6F4F4 panel. Corporate turquoise #00CABF remains the accent.
   ========================================================= */
body.blog {
    --haval-news-white: #FFFFFF;
    --haval-news-gray: #F6F4F4;
    --haval-news-ink: #202020;
    --haval-news-muted: #626970;
    --haval-news-line: #D9DDDF;
}

/* Light page canvas below the unchanged dark header / breadcrumb block. */
body.blog .site-content,
body.blog .content-area,
body.blog .main-contain,
body.blog .main-contain #content,
body.blog #primary,
body.blog .reactheme-blog.blog-page {
    background: var(--haval-news-white) !important;
    color: var(--haval-news-ink) !important;
}

/* Main blog list stays on a clean white surface. */
body.blog .reactheme-blog.blog-page .blog-item,
body.blog .reactheme-blog.blog-page .blog-item .full-blog-content {
    background: var(--haval-news-white) !important;
    color: var(--haval-news-ink) !important;
}

body.blog .reactheme-blog.blog-page .blog-item .full-blog-content .blog-title,
body.blog .reactheme-blog.blog-page .blog-item .full-blog-content .blog-title a {
    color: var(--haval-news-ink) !important;
    -webkit-text-fill-color: var(--haval-news-ink) !important;
}

body.blog .reactheme-blog.blog-page .blog-item .full-blog-content .blog-title a:hover,
body.blog .reactheme-blog.blog-page .blog-item .full-blog-content .blog-title a:focus {
    color: #00CABF !important;
    -webkit-text-fill-color: #00CABF !important;
}

body.blog .reactheme-blog.blog-page .blog-item .blog-desc,
body.blog .reactheme-blog.blog-page .blog-item .blog-desc p,
body.blog .reactheme-blog.blog-page .blog-item .full-blog-content .user-info,
body.blog .reactheme-blog.blog-page .blog-item .full-blog-content .user-info .single-info,
body.blog .reactheme-blog.blog-page .blog-item .full-blog-content .user-info .single-info span,
body.blog .reactheme-blog.blog-page .blog-item .full-blog-content .user-info .single-info.cat a {
    color: var(--haval-news-ink) !important;
    -webkit-text-fill-color: var(--haval-news-ink) !important;
}

/* Keep the existing HAVAL accent rather than converting it to dark text. */
body.blog .reactheme-blog.blog-page .blog-item .full-blog-content .user-info .single-info.author,
body.blog .reactheme-blog.blog-page .blog-item .full-blog-content .user-info .single-info.author span,
body.blog .reactheme-blog.blog-page .blog-item .full-blog-content .user-info .single-info.cat a:hover {
    color: #00CABF !important;
    -webkit-text-fill-color: #00CABF !important;
}

body.blog .reactheme-blog.blog-page .blog-item .full-blog-content .blog-button .button-blog {
    border: 1px solid #00CABF !important;
    background: #00CABF !important;
    color: var(--haval-news-ink) !important;
    -webkit-text-fill-color: var(--haval-news-ink) !important;
}

body.blog .reactheme-blog.blog-page .blog-item .full-blog-content .blog-button .button-blog:hover,
body.blog .reactheme-blog.blog-page .blog-item .full-blog-content .blog-button .button-blog:focus {
    border-color: #626970 !important;
    background: #626970 !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}

/* Pagination on the light background. */
body.blog .reactheme-blog.blog-page .pagination-area .nav-links > * {
    border-color: #00CABF !important;
    background: var(--haval-news-white) !important;
    color: var(--haval-news-ink) !important;
    -webkit-text-fill-color: var(--haval-news-ink) !important;
}

body.blog .reactheme-blog.blog-page .pagination-area .nav-links span.current,
body.blog .reactheme-blog.blog-page .pagination-area .nav-links a:hover,
body.blog .reactheme-blog.blog-page .pagination-area .nav-links a:focus {
    border-color: #00CABF !important;
    background: #00CABF !important;
    color: var(--haval-news-ink) !important;
    -webkit-text-fill-color: var(--haval-news-ink) !important;
}

/* ---------------------------------------------------------
   Sidebar — each widget is its own gray panel.
   Current DB contains "Последние публикации" as block-3,
   but these rules also cover future standard WP widgets.
   --------------------------------------------------------- */
body.blog .sticky-sidebar,
body.blog #secondary.widget-area,
body.blog .react-sideabr.dynamic-sidebar {
    background: transparent !important;
}

body.blog .react-sideabr.dynamic-sidebar > .widget {
    box-sizing: border-box !important;
    margin: 0 0 24px !important;
    padding: 28px 30px !important;
    border: 1px solid var(--haval-news-line) !important;
    border-radius: 10px !important;
    background: var(--haval-news-gray) !important;
    color: var(--haval-news-ink) !important;
    box-shadow: none !important;
}

body.blog .react-sideabr.dynamic-sidebar > .widget:last-child {
    margin-bottom: 0 !important;
}

body.blog .react-sideabr.dynamic-sidebar .widget :is(
    .widget-title,
    h1, h2, h3, h4, h5, h6
) {
    color: var(--haval-news-ink) !important;
    -webkit-text-fill-color: var(--haval-news-ink) !important;
}

body.blog .react-sideabr.dynamic-sidebar .widget :is(
    p,
    li,
    span,
    time,
    .wp-block-latest-posts__post-date
) {
    color: var(--haval-news-ink) !important;
    -webkit-text-fill-color: var(--haval-news-ink) !important;
}

body.blog .react-sideabr.dynamic-sidebar .widget a {
    color: var(--haval-news-ink) !important;
    -webkit-text-fill-color: var(--haval-news-ink) !important;
    text-decoration: none !important;
}

body.blog .react-sideabr.dynamic-sidebar .widget a:hover,
body.blog .react-sideabr.dynamic-sidebar .widget a:focus {
    color: #00CABF !important;
    -webkit-text-fill-color: #00CABF !important;
}

/* Latest-posts widget currently active in sidebar-1. */
body.blog .react-sideabr.dynamic-sidebar .wp-block-latest-posts {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

body.blog .react-sideabr.dynamic-sidebar .wp-block-latest-posts > li {
    margin: 0 !important;
    padding: 14px 0 !important;
    border-bottom: 1px solid var(--haval-news-line) !important;
}

body.blog .react-sideabr.dynamic-sidebar .wp-block-latest-posts > li:first-child {
    padding-top: 0 !important;
}

body.blog .react-sideabr.dynamic-sidebar .wp-block-latest-posts > li:last-child {
    padding-bottom: 0 !important;
    border-bottom: 0 !important;
}

body.blog .react-sideabr.dynamic-sidebar .wp-block-latest-posts__post-date {
    margin-top: 5px !important;
    color: var(--haval-news-muted) !important;
    -webkit-text-fill-color: var(--haval-news-muted) !important;
    font-size: 13px !important;
}

/* Search/category/tag widgets if they are added later. */
body.blog .react-sideabr.dynamic-sidebar .widget_search .wp-block-search input,
body.blog .react-sideabr.dynamic-sidebar .widget :is(input[type="text"], input[type="search"], select) {
    border-color: #CDD2D4 !important;
    background: var(--haval-news-white) !important;
    color: var(--haval-news-ink) !important;
    -webkit-text-fill-color: var(--haval-news-ink) !important;
}

body.blog .react-sideabr.dynamic-sidebar .widget_search .wp-block-search input:focus,
body.blog .react-sideabr.dynamic-sidebar .widget :is(input[type="text"], input[type="search"], select):focus {
    border-color: #00CABF !important;
    outline: none !important;
}

body.blog .react-sideabr.dynamic-sidebar .widget_categories li {
    border-bottom-color: var(--haval-news-line) !important;
}

body.blog .react-sideabr.dynamic-sidebar .tagcloud a {
    border: 1px solid var(--haval-news-line) !important;
    background: var(--haval-news-white) !important;
    color: var(--haval-news-ink) !important;
    -webkit-text-fill-color: var(--haval-news-ink) !important;
}

body.blog .react-sideabr.dynamic-sidebar .tagcloud a:hover,
body.blog .react-sideabr.dynamic-sidebar .tagcloud a:focus {
    border-color: #00CABF !important;
    background: #00CABF !important;
    color: var(--haval-news-ink) !important;
    -webkit-text-fill-color: var(--haval-news-ink) !important;
}

@media (max-width: 991px) {
    body.blog .reactheme-blog.blog-page .contents-sticky.full-layout-right {
        padding-right: 0 !important;
    }

    body.blog .react-sideabr.dynamic-sidebar {
        margin-top: 20px !important;
    }
}

@media (max-width: 767px) {
    body.blog .react-sideabr.dynamic-sidebar > .widget {
        padding: 24px 22px !important;
        border-radius: 8px !important;
    }
}


/* =========================================================
   v76 — REAL NEWS ARCHIVE TEMPLATE (Easy Theme Builder #5731)
   The archive is rendered by Easy Theme Builder, not by Autovault index.php.
   Elementor owns the white archive canvas, blog-grid colors and gray sidebar
   panel backgrounds in DB. CSS below is limited to native WP widget content
   that has no useful color controls in Elementor.
   ========================================================= */

/* WordPress widgets inside the four gray Elementor sidebar cards. */
.elementor-5731 :is(
    .elementor-element-1e84108,
    .elementor-element-296fcaf,
    .elementor-element-d41f503,
    .elementor-element-be52610
) :is(
    .widget-title,
    h1, h2, h3, h4, h5, h6,
    p, li, label, time,
    .wp-block-latest-posts__post-date
) {
    color: #202020;
    -webkit-text-fill-color: #202020;
}

.elementor-5731 :is(
    .elementor-element-1e84108,
    .elementor-element-296fcaf,
    .elementor-element-d41f503,
    .elementor-element-be52610
) a {
    color: #202020;
    -webkit-text-fill-color: #202020;
    text-decoration: none;
}

.elementor-5731 :is(
    .elementor-element-1e84108,
    .elementor-element-296fcaf,
    .elementor-element-d41f503,
    .elementor-element-be52610
) a:hover,
.elementor-5731 :is(
    .elementor-element-1e84108,
    .elementor-element-296fcaf,
    .elementor-element-d41f503,
    .elementor-element-be52610
) a:focus {
    color: #00CABF;
    -webkit-text-fill-color: #00CABF;
}

/* Search widget: white field inside its #F6F4F4 Elementor card. */
.elementor-5731 .elementor-element-1e84108 :is(input[type="text"], input[type="search"]) {
    background: #FFFFFF;
    border-color: #D9DDDF;
    color: #202020;
    -webkit-text-fill-color: #202020;
}
.elementor-5731 .elementor-element-1e84108 :is(input[type="text"], input[type="search"])::placeholder {
    color: #626970;
    -webkit-text-fill-color: #626970;
    opacity: 1;
}
.elementor-5731 .elementor-element-1e84108 :is(input[type="text"], input[type="search"]):focus {
    border-color: #00CABF;
    outline: none;
}
.elementor-5731 .elementor-element-1e84108 :is(button, input[type="submit"]) {
    background: #00CABF;
    border-color: #00CABF;
    color: #202020;
    -webkit-text-fill-color: #202020;
}

/* Categories / recent posts / tags: subtle separators suitable for light cards. */
.elementor-5731 .elementor-element-296fcaf li,
.elementor-5731 .elementor-element-d41f503 li {
    border-color: #D9DDDF;
}

.elementor-5731 .elementor-element-be52610 .tagcloud a {
    background: #FFFFFF;
    border-color: #D9DDDF;
    color: #202020;
    -webkit-text-fill-color: #202020;
}
.elementor-5731 .elementor-element-be52610 .tagcloud a:hover,
.elementor-5731 .elementor-element-be52610 .tagcloud a:focus {
    background: #00CABF;
    border-color: #00CABF;
    color: #202020;
    -webkit-text-fill-color: #202020;
}

/* Safe fallback for text inside the Easy Elements blog grid while Elementor
   regenerates post-5731.css. Backgrounds themselves remain Elementor-owned. */
.elementor-5731 .elementor-element-4b09560 :is(h1, h2, h3, h4, h5, h6),
.elementor-5731 .elementor-element-4b09560 :is(h1, h2, h3, h4, h5, h6) a,
.elementor-5731 .elementor-element-4b09560 :is(ul, li, time) {
    color: #202020;
    -webkit-text-fill-color: #202020;
}
.elementor-5731 .elementor-element-4b09560 :is(h1, h2, h3, h4, h5, h6) a:hover,
.elementor-5731 .elementor-element-4b09560 :is(h1, h2, h3, h4, h5, h6) a:focus {
    color: #00CABF;
    -webkit-text-fill-color: #00CABF;
}

/* =========================================================
   v77 — GLOBAL LIGHT CONTENT DEFAULT + SINGLE NEWS LIGHT
   Root cause: Autovault Dark Mode was enabled in Theme Customizer
   and body background was #121212. The accompanying SQL disables
   that theme mode. These rules provide a safe light fallback for
   normal WordPress pages and the Blog Single template.
   Header, internal breadcrumb template and footer are intentionally
   outside the generic content selectors and keep their dark design.
   ========================================================= */

:root {
    --haval-content-white: #FFFFFF;
    --haval-content-gray: #F6F4F4;
    --haval-content-ink: #202020;
    --haval-content-muted: #626970;
    --haval-content-line: #D9DDDF;
}

/* ---------------------------------------------------------
   Generic internal page canvas.
   Do not paint Elementor sections themselves: their explicit
   backgrounds remain editable in Elementor and take precedence.
   --------------------------------------------------------- */
body.page:not(.home) .main-contain,
body.page:not(.home) .main-contain > .container,
body.page:not(.home) .main-contain #content,
body.single-post .main-contain,
body.single-post .main-contain > .container,
body.single-post .main-contain #content {
    background-color: var(--haval-content-white);
}

/* Standard WordPress/Gutenberg pages that are NOT built with Elementor.
   This is the default for any newly created ordinary WordPress page. */
:where(body.page:not(.home):not(.elementor-page)) .entry-content {
    color: var(--haval-content-ink);
}

:where(body.page:not(.home):not(.elementor-page)) .entry-content :where(
    h1, h2, h3, h4, h5, h6
) {
    color: var(--haval-content-ink);
}

:where(body.page:not(.home):not(.elementor-page)) .entry-content :where(
    p, li, dt, dd, figcaption, blockquote, table, th, td, label
) {
    color: var(--haval-content-ink);
}

:where(body.page:not(.home):not(.elementor-page)) .entry-content a {
    color: #00CABF;
}

:where(body.page:not(.home):not(.elementor-page)) .entry-content a:hover,
:where(body.page:not(.home):not(.elementor-page)) .entry-content a:focus {
    color: #008F88;
}

:where(body.page:not(.home):not(.elementor-page)) .entry-content blockquote,
:where(body.page:not(.home):not(.elementor-page)) .entry-content .wp-block-quote {
    background: var(--haval-content-gray);
    border-color: #00CABF;
    color: var(--haval-content-ink);
}

:where(body.page:not(.home):not(.elementor-page)) .entry-content :where(
    table, th, td
) {
    border-color: var(--haval-content-line);
}

:where(body.page:not(.home):not(.elementor-page)) .entry-content :where(
    input[type="text"],
    input[type="email"],
    input[type="tel"],
    input[type="number"],
    input[type="url"],
    input[type="password"],
    input[type="search"],
    textarea,
    select
) {
    background: var(--haval-content-white);
    border-color: #CDD2D4;
    color: var(--haval-content-ink);
}



/* Elementor pages: light defaults only when a widget does not already have
   its own Elementor color rule. These selectors intentionally have modest
   specificity and no !important, so explicit Elementor styling still wins. */
body.page:not(.home) .main-contain :where(
    .elementor-widget-text-editor,
    .elementor-widget-text-editor p,
    .elementor-widget-icon-list .elementor-icon-list-text
) {
    color: var(--haval-content-ink);
}

body.page:not(.home) .main-contain :where(
    .elementor-widget-heading .elementor-heading-title,
    .elementor-widget-eel-heading .eel-heading-title
) {
    color: var(--haval-content-ink);
}

body.page:not(.home) .main-contain :where(
    .elementor-widget-text-editor a,
    .elementor-widget-icon-list a
) {
    color: #00CABF;
}

/* ---------------------------------------------------------
   Detailed news / single post — Easy Theme Builder #5774.
   Backgrounds that Elementor can edit are written into Elementor
   data by haval_global_light_v77.sql. CSS here only supplies
   typography/content fallbacks and native-widget styling.
   --------------------------------------------------------- */
body.single-post .elementor-5774 {
    color: var(--haval-content-ink);
}

/* Main article content. */
.elementor-5774 .elementor-element-8fde504 {
    color: var(--haval-content-ink);
}

.elementor-5774 .elementor-element-8fde504 :where(
    h1, h2, h3, h4, h5, h6
) {
    color: var(--haval-content-ink);
}

.elementor-5774 .elementor-element-8fde504 :where(
    p, li, dt, dd, figcaption, blockquote, table, th, td, strong
) {
    color: var(--haval-content-ink);
}

.elementor-5774 .elementor-element-8fde504 a {
    color: #00CABF;
}

.elementor-5774 .elementor-element-8fde504 a:hover,
.elementor-5774 .elementor-element-8fde504 a:focus {
    color: #008F88;
}

.elementor-5774 .elementor-element-8fde504 :where(
    blockquote,
    .wp-block-quote,
    .wp-block-pullquote
) {
    background: var(--haval-content-gray);
    border-color: #00CABF;
}

/* Post meta should be readable on the white article canvas. */
.elementor-5774 .elementor-element-476e4f7,
.elementor-5774 .elementor-element-476e4f7 :where(
    a, span, time, li
) {
    color: var(--haval-content-muted);
}

.elementor-5774 .elementor-element-476e4f7 a:hover,
.elementor-5774 .elementor-element-476e4f7 a:focus {
    color: #00CABF;
}

/* Tags and share row: Elementor owns their actual backgrounds/colors
   after the SQL patch; keep spacing/borders coherent on light content. */
.elementor-5774 .elementor-element-d8dbce9 {
    border-color: var(--haval-content-line);
}

/* Sidebar panel content. Its #F6F4F4 background is set in Elementor data. */
.elementor-5774 .elementor-element-ed2578f {
    color: var(--haval-content-ink);
}

.elementor-5774 .elementor-element-ed2578f :where(
    h1, h2, h3, h4, h5, h6,
    p, li, label, span, time
) {
    color: var(--haval-content-ink);
}

.elementor-5774 .elementor-element-ed2578f a {
    color: var(--haval-content-ink);
    text-decoration: none;
}

.elementor-5774 .elementor-element-ed2578f a:hover,
.elementor-5774 .elementor-element-ed2578f a:focus {
    color: #00CABF;
}

.elementor-5774 .elementor-element-ed2578f :where(
    input[type="text"],
    input[type="search"],
    input[type="email"],
    select,
    textarea
) {
    background: var(--haval-content-white);
    border-color: #CDD2D4;
    color: var(--haval-content-ink);
}

.elementor-5774 .elementor-element-ed2578f :where(
    input[type="text"],
    input[type="search"],
    input[type="email"],
    textarea
)::placeholder {
    color: var(--haval-content-muted);
    opacity: 1;
}

/* Keep the site chrome dark after global Dark Mode is disabled.
   These are fallbacks only; the actual colors remain stored in their
   Elementor templates and therefore remain editable there. */
.elementor-2569,
.elementor-2569 .elementor-element-c41b050 {
    background-color: #121212;
}

.elementor-4168,
.elementor-4168 .elementor-element-8253c77 {
    background-color: #252525;
}

/* The compact internal page title/breadcrumb block stays dark. */
body:not(.home) .elementor-3569 .elementor-element.elementor-element-cbb84d1 {
    background-color: #1B1D1F;
}

@media (max-width: 767px) {
    :where(body.page:not(.home):not(.elementor-page)) .entry-content {
        overflow-wrap: anywhere;
    }
}

/* =========================================================
   v78 — Inventory light Motors cards
   The native Motors card palette itself is stored in
   motors_vehicles_listing_plugin_settings and changed by SQL.
   CSS below only adapts our custom permanent quick-action row,
   which is not controlled by Motors Appearance settings.
   ========================================================= */
.haval-inventory-clean .haval-inventory-quick-actions {
    border-top-color: #D9DDDF !important;
}

.haval-inventory-clean .haval-inventory-quick-action {
    border-color: #CDD2D4 !important;
    background: #FFFFFF !important;
    color: #202020 !important;
    -webkit-text-fill-color: #202020 !important;
}

.haval-inventory-clean .haval-inventory-quick-action:hover,
.haval-inventory-clean .haval-inventory-quick-action:focus-visible,
.haval-inventory-clean .haval-inventory-quick-action.is-copied {
    border-color: #00CABF !important;
    background: #00CABF !important;
    color: #202020 !important;
    -webkit-text-fill-color: #202020 !important;
}


/* =========================================================
   v79 — Global light sidebars + Single Listing sidebar
   All regular sidebars use #F6F4F4 with #202020 text.
   HAVAL turquoise accents (#00CABF) remain unchanged.
   ========================================================= */
:root {
    --haval-sidebar-bg: #F6F4F4;
    --haval-sidebar-text: #202020;
    --haval-sidebar-muted: #626970;
    --haval-sidebar-line: #D9DDDF;
    --haval-sidebar-accent: #00CABF;
}

/* Standard WordPress/theme sidebars. Do not recolor the whole sidebar column;
   each widget remains its own gray card. */
body:not(.home) :is(
    #secondary.widget-area,
    .widget-area,
    .react-sideabr.dynamic-sidebar,
    .react-sideabr,
    .sidebar,
    .sticky-sidebar
) > .widget,
body:not(.home) :is(
    #secondary.widget-area,
    .widget-area,
    .react-sideabr.dynamic-sidebar,
    .react-sideabr,
    .sidebar,
    .sticky-sidebar
) .widget:not(.widget_media_image) {
    background: var(--haval-sidebar-bg) !important;
    background-color: var(--haval-sidebar-bg) !important;
    border-color: var(--haval-sidebar-line) !important;
    color: var(--haval-sidebar-text) !important;
}

body:not(.home) :is(
    #secondary.widget-area,
    .widget-area,
    .react-sideabr.dynamic-sidebar,
    .react-sideabr,
    .sidebar,
    .sticky-sidebar
) .widget :is(
    .widget-title,
    h1, h2, h3, h4, h5, h6,
    p, li, label, small, strong,
    input, textarea, select
) {
    color: var(--haval-sidebar-text) !important;
    -webkit-text-fill-color: var(--haval-sidebar-text) !important;
}

body:not(.home) :is(
    #secondary.widget-area,
    .widget-area,
    .react-sideabr.dynamic-sidebar,
    .react-sideabr,
    .sidebar,
    .sticky-sidebar
) .widget :is(input, textarea, select) {
    background: #FFFFFF !important;
    border-color: #CDD2D4 !important;
}

/* Do not flatten corporate accents. Explicit turquoise links/icons stay turquoise. */
body:not(.home) :is(
    #secondary.widget-area,
    .widget-area,
    .react-sideabr.dynamic-sidebar,
    .react-sideabr,
    .sidebar,
    .sticky-sidebar
) .widget :is(
    .text-primary,
    .primary-color,
    .accent-color,
    [class*="accent"],
    [class*="primary"]
) {
    color: var(--haval-sidebar-accent) !important;
    -webkit-text-fill-color: var(--haval-sidebar-accent) !important;
}

body:not(.home) :is(
    #secondary.widget-area,
    .widget-area,
    .react-sideabr.dynamic-sidebar,
    .react-sideabr,
    .sidebar,
    .sticky-sidebar
) .widget :is(i, svg) {
    color: var(--haval-sidebar-accent);
}

body:not(.home) :is(
    #secondary.widget-area,
    .widget-area,
    .react-sideabr.dynamic-sidebar,
    .react-sideabr,
    .sidebar,
    .sticky-sidebar
) .widget a:hover,
body:not(.home) :is(
    #secondary.widget-area,
    .widget-area,
    .react-sideabr.dynamic-sidebar,
    .react-sideabr,
    .sidebar,
    .sticky-sidebar
) .widget a:focus {
    color: var(--haval-sidebar-accent) !important;
    -webkit-text-fill-color: var(--haval-sidebar-accent) !important;
}

/* ---------------------------------------------------------
   Vehicle detail sidebar — Elementor Single Listing #2567.
   Actual panel backgrounds are also written to Elementor data by v79 SQL.
   These declarations cover native Motors markup inside those panels.
   --------------------------------------------------------- */
.elementor-2567 .elementor-element-3b0ab10 > :is(
    .elementor-element-7f49465,
    .elementor-element-cc77e08,
    .elementor-element-f78b7fc,
    .elementor-element-a63f1a8,
    .elementor-element-2d77453
),
.single-listing_template .elementor-element-3b0ab10 > :is(
    .elementor-element-7f49465,
    .elementor-element-cc77e08,
    .elementor-element-f78b7fc,
    .elementor-element-a63f1a8,
    .elementor-element-2d77453
) {
    background: var(--haval-sidebar-bg) !important;
    background-color: var(--haval-sidebar-bg) !important;
    border-color: var(--haval-sidebar-line) !important;
    color: var(--haval-sidebar-text) !important;
}

.elementor-2567 .elementor-element-3b0ab10 :is(
    h1, h2, h3, h4, h5, h6,
    .elementor-heading-title,
    .stm-single-car-side-title,
    .stm-single-car-data,
    .stm-single-car-data p,
    .stm-single-car-data li,
    .stm-single-car-listing-data,
    .stm-single-car-listing-data .item-label,
    .stm-single-car-listing-data .heading-font,
    .stm-single-car-listing-data [class*="value"],
    .stm_auto_loan_calculator label,
    .stm_auto_loan_calculator .title,
    .stm_auto_loan_calculator .h5,
    .stm_auto_loan_calculator .h4,
    .stm_auto_loan_calculator .h3,
    .stm_auto_loan_calculator input,
    .stm_auto_loan_calculator select,
    .stm_auto_loan_calculator span:not([class*="icon"])
) {
    color: var(--haval-sidebar-text) !important;
    -webkit-text-fill-color: var(--haval-sidebar-text) !important;
}

.elementor-2567 .elementor-element-3b0ab10 :is(
    input, textarea, select,
    .stm_auto_loan_calculator input,
    .stm_auto_loan_calculator select
) {
    background: #FFFFFF !important;
    border-color: #CDD2D4 !important;
}

/* Corporate turquoise stays turquoise inside the vehicle sidebar. */
.elementor-2567 .elementor-element-3b0ab10 :is(
    i,
    .fa,
    .fas,
    .far,
    [class*="icon"],
    .review-stars,
    .rating,
    .stm-listing-icon
) {
    color: var(--haval-sidebar-accent) !important;
    -webkit-text-fill-color: var(--haval-sidebar-accent) !important;
}

.elementor-2567 .elementor-element-3b0ab10 svg {
    color: var(--haval-sidebar-accent);
}

/* =========================================================
   v80 — Global text palette source cleanup
   --motors-text-color, --motors-contrast-text-color and
   --e-global-color-195ce3a are intentionally NOT overridden here.
   Their values are managed in Motors / Elementor settings (DB).
   Obsolete dark-detail-page text overrides were removed above.
   ========================================================= */

/* =========================================================
   v85 — Motors derived alpha text color
   Motors does not expose a separate DB setting for
   --motors-text-alpha-color; it derives it from text_color.
   For the light site palette we need the exact opaque text color.
   ========================================================= */
html body {
    --motors-text-alpha-color: #202020;
}


.elementor-2569 .elementor-element.elementor-element-1b035f6 .eel-social-buttons {
	justify-content: flex-end;
}

.elementor-2569 .elementor-element.elementor-element-ce983d7 {
	justify-content: right;
}

.eel-nav-menu > .menu-item > a.eel-menu-item {
	padding: 20px 0 !important;
	margin: 0 0 0 20px;
}

.eel-nav-menu > .menu-item.menu-item-has-children a.eel-menu-item {
	padding-right: 20px !important;
}

.elementor-2569 .elementor-element.elementor-element-ce983d7 {
	display: grid;
}

.rt-cat-tab-listing .rt-listing-item .rt-content-area .rt-listing-button-area, .rt-cat-tab-listing-slider .rt-listing-item .rt-content-area .rt-listing-button-area, .rt-listing-grid .rt-listing-item .rt-content-area .rt-listing-button-area {
	border-top: 1px solid #CDD2D4;
	margin-top: 15px;
}

.rt-cat-tab-listing .rt-listing-item .rt-content-area, .rt-cat-tab-listing-slider .rt-listing-item .rt-content-area, .rt-listing-grid .rt-listing-item .rt-content-area {
	padding: 25px 0 0 0;
}

body:not([class*=elementor-page-]):not(.elementor-archive-template):not(.elementor-single-template) .easyel-content-container {
	
}
/* =========================================================
   v96 — SPECIAL OFFERS
   Existing index page #7003 + haval_offer single pages.
   Archive alternates image/text like the HAVAL Belarus offers page.
   ========================================================= */
.page-id-7003,
.single-haval_offer {
    --haval-offer-white: #FFFFFF;
    --haval-offer-gray: #F6F4F4;
    --haval-offer-ink: #202020;
    --haval-offer-muted: #626970;
    --haval-offer-line: #D9DDDF;
    --haval-offer-accent: #00CABF;
}

.page-id-7003 .main-contain,
.page-id-7003 .main-contain > .container,
.page-id-7003 .main-contain #content,
.single-haval_offer .main-contain,
.single-haval_offer .main-contain > .container,
.single-haval_offer .main-contain #content {
    background: var(--haval-offer-white);
}

.page-id-7003 .main-contain #content,
.single-haval_offer .main-contain #content {
    padding-top: 0;
    padding-bottom: 0;
}

/* ---------- index ---------- */
.haval-offers-index {
    box-sizing: border-box;
    width: 100%;
    padding: 50px 0 100px;
    color: var(--haval-offer-ink);
}

.haval-offers-index-inner {
    width: min(100%, 1320px);
    margin: 0 auto;
}

.haval-offer-row {
    box-sizing: border-box;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    min-height: 390px;
    margin: 0;
    border-bottom: 1px solid var(--haval-offer-line);
    background: var(--haval-offer-white);
}

.haval-offer-row:first-child {
    border-top: 1px solid var(--haval-offer-line);
}

.haval-offer-row.is-reversed .haval-offer-row-media {
    order: 2;
}

.haval-offer-row.is-reversed .haval-offer-row-copy {
    order: 1;
}

.haval-offer-row-media {
    display: block;
    min-width: 0;
    min-height: 390px;
    overflow: hidden;
    background: #ECEFF0;
    text-decoration: none;
}

.haval-offer-row-media img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 390px;
    object-fit: cover;
    object-position: center;
    transition: transform .35s ease;
}

.haval-offer-row:hover .haval-offer-row-media img {
    transform: scale(1.025);
}

.haval-offer-image-placeholder {
    box-sizing: border-box;
    display: flex;
    width: 100%;
    min-height: 390px;
    height: 100%;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 25% 20%, rgba(0,202,191,.18), transparent 42%),
        linear-gradient(135deg, #ECEFF0, #DDE2E4);
}

.haval-offer-image-placeholder::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 5px;
    background: var(--haval-offer-accent);
}

.haval-offer-image-placeholder > span {
    color: #202020;
    font-family: Montserrat, Arial, sans-serif;
    font-size: clamp(48px, 6vw, 82px);
    font-weight: 700;
    letter-spacing: .08em;
    opacity: .16;
}

.haval-offer-row-copy {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    min-width: 0;
    padding: 54px 64px;
    background: var(--haval-offer-white);
}

.haval-offer-row-rule {
    width: 52px;
    height: 3px;
    margin-bottom: 24px;
    background: var(--haval-offer-accent);
}

.haval-offer-row-title {
    margin: 0;
    font-family: Montserrat, Arial, sans-serif;
    font-size: clamp(28px, 3vw, 42px);
    font-weight: 600;
    line-height: 1.12;
    color: var(--haval-offer-ink);
}

.haval-offer-row-title a {
    color: inherit;
    text-decoration: none;
}

.haval-offer-row-title a:hover,
.haval-offer-row-title a:focus {
    color: var(--haval-offer-accent);
}

.haval-offer-row-excerpt {
    max-width: 560px;
    margin-top: 20px;
    color: var(--haval-offer-muted);
    font-size: 16px;
    line-height: 1.65;
}

.haval-offer-row-excerpt p {
    margin: 0;
    color: inherit;
}

.haval-offer-row-more {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-top: 27px;
    color: var(--haval-offer-ink);
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: .035em;
}

.haval-offer-row-more span {
    color: var(--haval-offer-accent);
    font-size: 18px;
    transition: transform .2s ease;
}

.haval-offer-row-more:hover,
.haval-offer-row-more:focus {
    color: var(--haval-offer-accent);
}

.haval-offer-row-more:hover span,
.haval-offer-row-more:focus span {
    transform: translateX(4px);
}

.haval-offers-empty {
    padding: 70px 30px;
    text-align: center;
    border: 1px solid var(--haval-offer-line);
    background: var(--haval-offer-gray);
}

.haval-offers-empty h2,
.haval-offers-empty p {
    color: var(--haval-offer-ink);
}

/* ---------- single offer ---------- */
.haval-offer-single {
    box-sizing: border-box;
    width: 100%;
    padding: 50px 0 100px;
    color: var(--haval-offer-ink);
}

.haval-offer-single-article,
.haval-offer-request {
    box-sizing: border-box;
    width: min(100%, 1100px);
    margin-left: auto;
    margin-right: auto;
}

.haval-offer-single-hero {
    margin: 0 0 46px;
    overflow: hidden;
    border-radius: 10px;
    background: var(--haval-offer-gray);
}

.haval-offer-single-hero img {
    display: block;
    width: 100%;
    height: auto;
    max-height: 620px;
    object-fit: cover;
}

.haval-offer-single-content {
    width: min(100%, 920px);
    margin: 0 auto;
    color: var(--haval-offer-ink);
    font-size: 17px;
    line-height: 1.75;
}

.haval-offer-single-content :is(p, li, td, th, figcaption, blockquote) {
    color: var(--haval-offer-ink);
}

.haval-offer-single-content :is(h2, h3, h4, h5, h6) {
    margin: 42px 0 18px;
    color: var(--haval-offer-ink);
    font-family: Montserrat, Arial, sans-serif;
    font-weight: 600;
}

.haval-offer-single-content h2 { font-size: 34px; }
.haval-offer-single-content h3 { font-size: 27px; }
.haval-offer-single-content h4 { font-size: 22px; }

.haval-offer-single-content a {
    color: var(--haval-offer-accent);
}

.haval-offer-single-content ul,
.haval-offer-single-content ol {
    padding-left: 22px;
}

.haval-offer-single-content blockquote {
    margin: 30px 0;
    padding: 24px 28px;
    border-left: 3px solid var(--haval-offer-accent);
    background: var(--haval-offer-gray);
}

/* ---------- request form ---------- */
.haval-offer-request {
    margin-top: 48px;
}

.haval-offer-request-inner {
    box-sizing: border-box;
    padding: 30px 36px 32px;
    border: 1px solid var(--haval-offer-line);
    border-radius: 10px;
    background: var(--haval-offer-gray);
}

.haval-offer-request-heading {
    margin-bottom: 20px;
}

.haval-offer-request-kicker {
    display: block;
    margin-bottom: 5px;
    color: var(--haval-offer-accent);
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.haval-offer-request-heading h2 {
    margin: 0;
    color: var(--haval-offer-ink);
    font-family: Montserrat, Arial, sans-serif;
    font-size: clamp(28px, 3vw, 38px);
    font-weight: 600;
    line-height: 1.1;
}

.haval-offer-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px 14px;
}

.haval-offer-field-wide {
    grid-column: 1 / -1;
}

/* Labels remain in the DOM for accessibility, but the visual UI uses placeholders. */
.haval-offer-sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

.haval-offer-field :is(input, select, textarea) {
    box-sizing: border-box;
    width: 100%;
    min-height: 44px;
    padding: 10px 13px;
    border: 1px solid #C9D0D3;
    border-radius: 5px;
    outline: none;
    background: #FFFFFF !important;
    color: #202020 !important;
    -webkit-text-fill-color: #202020 !important;
    font-family: Montserrat, Arial, sans-serif;
    font-size: 14px;
    line-height: 1.3;
    box-shadow: none;
}

.haval-offer-field select {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    appearance: auto;
    -webkit-appearance: menulist;
}

.haval-offer-field select option {
    background: #FFFFFF !important;
    color: #202020 !important;
    -webkit-text-fill-color: #202020 !important;
}

.haval-offer-field :is(input, textarea)::placeholder {
    color: #626970 !important;
    -webkit-text-fill-color: #626970 !important;
    opacity: 1;
}

.haval-offer-field textarea {
    min-height: 82px;
    resize: vertical;
}

.haval-offer-field :is(input, select, textarea):focus {
    border-color: var(--haval-offer-accent);
    box-shadow: 0 0 0 1px var(--haval-offer-accent);
}

.haval-offer-consent {
    margin-top: 16px;
}

.haval-offer-consent label {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    color: var(--haval-offer-ink);
    font-size: 12px;
    line-height: 1.45;
    cursor: pointer;
}

.haval-offer-consent input[type="checkbox"] {
    flex: 0 0 17px;
    width: 17px;
    height: 17px;
    margin: 1px 0 0;
    accent-color: var(--haval-offer-accent);
}

.haval-offer-consent a {
    color: var(--haval-offer-accent);
}

.haval-offer-form-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-top: 18px;
}

.haval-offer-required-note {
    color: var(--haval-offer-muted);
    font-size: 11px;
}

.haval-offer-submit {
    min-width: 145px;
    min-height: 44px;
    padding: 10px 24px;
    border: 1px solid var(--haval-offer-accent);
    border-radius: 5px;
    background: var(--haval-offer-accent);
    color: #202020;
    font-family: Montserrat, Arial, sans-serif;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: background-color .2s ease, border-color .2s ease, color .2s ease;
}

.haval-offer-submit:hover,
.haval-offer-submit:focus {
    border-color: #626970;
    background: #626970;
    color: #FFFFFF;
}

.haval-offer-form-notice {
    margin: 0 0 16px;
    padding: 12px 15px;
    border-radius: 5px;
    font-size: 13px;
    line-height: 1.45;
}

.haval-offer-form-notice.is-success {
    border: 1px solid rgba(0, 143, 136, .28);
    background: rgba(0, 202, 191, .10);
    color: #145A56;
}

.haval-offer-form-notice.is-error {
    border: 1px solid #E1B7B7;
    background: #FFF2F2;
    color: #8C2525;
}

.haval-offer-honeypot {
    position: absolute !important;
    left: -99999px !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
}

@media (max-width: 991px) {
    .haval-offer-row-copy {
        padding: 42px 38px;
    }
    .haval-offer-request-inner {
        padding: 28px 30px 30px;
    }
}

@media (max-width: 767px) {
    .haval-offers-index,
    .haval-offer-single {
        padding-top: 34px;
        padding-bottom: 64px;
    }

    .haval-offer-row {
        display: flex;
        flex-direction: column;
        min-height: 0;
    }

    .haval-offer-row.is-reversed .haval-offer-row-media,
    .haval-offer-row.is-reversed .haval-offer-row-copy {
        order: initial;
    }

    .haval-offer-row-media,
    .haval-offer-row-media img,
    .haval-offer-image-placeholder {
        min-height: 240px;
        height: 240px;
    }

    .haval-offer-row-copy {
        padding: 32px 24px 38px;
    }

    .haval-offer-row-rule {
        margin-bottom: 18px;
    }

    .haval-offer-single-hero {
        margin-bottom: 32px;
        border-radius: 7px;
    }

    .haval-offer-single-content {
        font-size: 16px;
        line-height: 1.7;
    }

    .haval-offer-single-content h2 { font-size: 29px; }
    .haval-offer-single-content h3 { font-size: 24px; }

    .haval-offer-request {
        margin-top: 38px;
    }

    .haval-offer-request-inner {
        padding: 24px 18px 26px;
        border-radius: 8px;
    }

    .haval-offer-form-grid {
        grid-template-columns: 1fr;
        gap: 11px;
    }

    .haval-offer-field-wide {
        grid-column: auto;
    }

    .haval-offer-form-footer {
        flex-direction: column;
        align-items: stretch;
    }

    .haval-offer-submit {
        width: 100%;
    }
}

/* =========================================================
   v100 — FINANCING PROGRAMS
   Existing page: /pokupatelyam/finansirovanie/ (ID 7005)
   CPT: haval_finance
   Light HAVAL layout inspired by the current HAVAL.BY financing pages.
   ========================================================= */
:root {
    --haval-finance-white: #FFFFFF;
    --haval-finance-gray: #F6F4F4;
    --haval-finance-ink: #202020;
    --haval-finance-muted: #626970;
    --haval-finance-line: #D9DDDF;
    --haval-finance-accent: #00CABF;
}

.page-id-7005 .site-content,
.page-id-7005 .content-area,
.page-id-7005 main,
.single-haval_finance .site-content,
.single-haval_finance .content-area,
.single-haval_finance main {
    background: var(--haval-finance-white);
}

/* ---------- financing index ---------- */
.haval-finance-index {
    box-sizing: border-box;
    width: 100%;
    padding: 48px 24px 100px;
    background: var(--haval-finance-white);
    color: var(--haval-finance-ink);
}

.haval-finance-index-inner {
    box-sizing: border-box;
    width: min(100%, 1320px);
    margin: 0 auto;
}

.haval-finance-index-intro {
    max-width: 850px;
    margin: 0 0 46px;
}

.haval-finance-index-kicker {
    display: block;
    margin-bottom: 10px;
    color: var(--haval-finance-accent);
    font-family: Montserrat, Arial, sans-serif;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: .075em;
    text-transform: uppercase;
}

.haval-finance-index-intro h2 {
    margin: 0;
    color: var(--haval-finance-ink);
    font-family: Montserrat, Arial, sans-serif;
    font-size: clamp(34px, 4vw, 50px);
    font-weight: 600;
    line-height: 1.08;
    letter-spacing: -.025em;
}

.haval-finance-index-intro p {
    max-width: 760px;
    margin: 18px 0 0;
    color: var(--haval-finance-muted);
    font-size: 17px;
    line-height: 1.65;
}

.haval-finance-programs {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.haval-finance-program {
    box-sizing: border-box;
    display: grid;
    grid-template-columns: minmax(0, 48%) minmax(0, 52%);
    min-height: 400px;
    overflow: hidden;
    border: 1px solid var(--haval-finance-line);
    border-radius: 10px;
    background: var(--haval-finance-gray);
}

.haval-finance-program.is-reversed .haval-finance-program-media {
    order: 2;
}

.haval-finance-program.is-reversed .haval-finance-program-copy {
    order: 1;
}

.haval-finance-program-media {
    position: relative;
    display: block;
    min-width: 0;
    min-height: 400px;
    overflow: hidden;
    background: #ECEFF0;
}

.haval-finance-program-media img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 400px;
    object-fit: cover;
    object-position: center;
    transition: transform .35s ease;
}

.haval-finance-program:hover .haval-finance-program-media img {
    transform: scale(1.025);
}

.haval-finance-program-placeholder {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    min-height: 400px;
    background:
        radial-gradient(circle at 78% 25%, rgba(0,202,191,.16), transparent 32%),
        linear-gradient(135deg, #E9ECEE, #F7F7F7);
    color: var(--haval-finance-ink);
}

.haval-finance-program-placeholder > span {
    font-family: Montserrat, Arial, sans-serif;
    font-size: 46px;
    font-weight: 700;
    letter-spacing: .11em;
}

.haval-finance-program-placeholder > small {
    margin-top: 8px;
    color: var(--haval-finance-accent);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .22em;
}

.haval-finance-program-copy {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
    padding: 48px 54px;
}

.haval-finance-program-number {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 20px;
    color: var(--haval-finance-accent);
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: .08em;
}

.haval-finance-program-number::after {
    content: "";
    width: 54px;
    height: 2px;
    background: var(--haval-finance-accent);
}

.haval-finance-program-title {
    margin: 0;
    color: var(--haval-finance-ink);
    font-family: Montserrat, Arial, sans-serif;
    font-size: clamp(29px, 3vw, 42px);
    font-weight: 600;
    line-height: 1.1;
    letter-spacing: -.02em;
}

.haval-finance-program-title a {
    color: inherit;
    text-decoration: none;
}

.haval-finance-program-title a:hover,
.haval-finance-program-title a:focus {
    color: var(--haval-finance-accent);
}

.haval-finance-program-excerpt {
    max-width: 590px;
    margin-top: 18px;
    color: var(--haval-finance-muted);
    font-size: 16px;
    line-height: 1.65;
}

.haval-finance-program-excerpt p {
    margin: 0;
    color: inherit;
}

.haval-finance-program-terms {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px 20px;
    margin: 24px 0 0;
    padding: 0;
    list-style: none;
}

.haval-finance-program-terms li {
    position: relative;
    margin: 0;
    padding-left: 18px;
    color: var(--haval-finance-ink);
    font-size: 14px;
    line-height: 1.45;
}

.haval-finance-program-terms li::before {
    content: "";
    position: absolute;
    top: .52em;
    left: 0;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--haval-finance-accent);
}

.haval-finance-program-more {
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    gap: 9px;
    margin-top: 28px;
    color: var(--haval-finance-ink);
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: .025em;
    text-decoration: none;
    text-transform: uppercase;
}

.haval-finance-program-more span {
    color: var(--haval-finance-accent);
    font-size: 18px;
    transition: transform .2s ease;
}

.haval-finance-program-more:hover,
.haval-finance-program-more:focus {
    color: var(--haval-finance-accent);
}

.haval-finance-program-more:hover span,
.haval-finance-program-more:focus span {
    transform: translateX(4px);
}

.haval-finance-empty {
    padding: 70px 30px;
    border: 1px solid var(--haval-finance-line);
    background: var(--haval-finance-gray);
    text-align: center;
}

.haval-finance-empty h2,
.haval-finance-empty p {
    color: var(--haval-finance-ink);
}

/* ---------- single financing program ---------- */
.haval-finance-single {
    box-sizing: border-box;
    width: 100%;
    padding: 46px 24px 100px;
    background: var(--haval-finance-white);
    color: var(--haval-finance-ink);
}

.haval-finance-single-article,
.haval-finance-request {
    box-sizing: border-box;
    width: min(100%, 1100px);
    margin-left: auto;
    margin-right: auto;
}

.haval-finance-back {
    display: inline-flex;
    margin: 0 0 24px;
    color: var(--haval-finance-muted);
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
}

.haval-finance-back:hover,
.haval-finance-back:focus {
    color: var(--haval-finance-accent);
}

.haval-finance-single-hero {
    margin: 0 0 42px;
    overflow: hidden;
    border-radius: 10px;
    background: var(--haval-finance-gray);
}

.haval-finance-single-hero img {
    display: block;
    width: 100%;
    max-height: 610px;
    object-fit: cover;
}

.haval-finance-single-content {
    width: min(100%, 920px);
    margin: 0 auto;
    color: var(--haval-finance-ink);
    font-size: 17px;
    line-height: 1.75;
}

.haval-finance-single-lead {
    margin: 0 0 28px;
    color: var(--haval-finance-muted);
    font-size: 20px;
    line-height: 1.55;
}

.haval-finance-single-content :is(p, li, td, th, figcaption, blockquote) {
    color: var(--haval-finance-ink);
}

.haval-finance-single-content :is(h2, h3, h4, h5, h6) {
    margin: 42px 0 18px;
    color: var(--haval-finance-ink);
    font-family: Montserrat, Arial, sans-serif;
    font-weight: 600;
    line-height: 1.18;
}

.haval-finance-single-content h2 { font-size: 34px; }
.haval-finance-single-content h3 { font-size: 27px; }
.haval-finance-single-content h4 { font-size: 22px; }

.haval-finance-single-content a {
    color: var(--haval-finance-accent);
}

.haval-finance-single-content ul,
.haval-finance-single-content ol {
    padding-left: 22px;
}

.haval-finance-single-content li::marker {
    color: var(--haval-finance-accent);
}

.haval-finance-single-content blockquote {
    margin: 30px 0;
    padding: 24px 28px;
    border-left: 3px solid var(--haval-finance-accent);
    background: var(--haval-finance-gray);
}

.haval-finance-single-content table {
    width: 100%;
    border-collapse: collapse;
}

.haval-finance-single-content th,
.haval-finance-single-content td {
    padding: 12px 14px;
    border: 1px solid var(--haval-finance-line);
    text-align: left;
}

.haval-finance-single-content th {
    background: var(--haval-finance-gray);
}

/* ---------- financing request form ---------- */
.haval-finance-request {
    margin-top: 52px;
}

.haval-finance-request-inner {
    box-sizing: border-box;
    padding: 32px 38px 34px;
    border: 1px solid var(--haval-finance-line);
    border-radius: 10px;
    background: var(--haval-finance-gray);
}

.haval-finance-request-heading {
    margin-bottom: 22px;
}

.haval-finance-request-kicker {
    display: block;
    margin-bottom: 6px;
    color: var(--haval-finance-accent);
    font-size: 12px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: .07em;
    text-transform: uppercase;
}

.haval-finance-request-heading h2 {
    margin: 0;
    color: var(--haval-finance-ink);
    font-family: Montserrat, Arial, sans-serif;
    font-size: clamp(28px, 3vw, 38px);
    font-weight: 600;
    line-height: 1.1;
}

.haval-finance-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px 14px;
}

.haval-finance-field-wide {
    grid-column: 1 / -1;
}

.haval-finance-sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

.haval-finance-request .haval-finance-field :is(input, select, textarea) {
    box-sizing: border-box;
    width: 100%;
    min-height: 46px;
    padding: 10px 13px;
    border: 1px solid #C9D0D3;
    border-radius: 5px;
    outline: none;
    background: #FFFFFF;
    color: #202020;
    -webkit-text-fill-color: #202020;
    font-family: Montserrat, Arial, sans-serif;
    font-size: 14px;
    line-height: 1.3;
    box-shadow: none;
}

.haval-finance-request .haval-finance-field select {
    display: block;
    opacity: 1;
    visibility: visible;
    appearance: auto;
    -webkit-appearance: menulist;
}

.haval-finance-request .haval-finance-field select option {
    background: #FFFFFF;
    color: #202020;
    -webkit-text-fill-color: #202020;
}

.haval-finance-request .haval-finance-field :is(input, textarea)::placeholder {
    color: #626970;
    -webkit-text-fill-color: #626970;
    opacity: 1;
}

.haval-finance-request .haval-finance-field textarea {
    min-height: 90px;
    resize: vertical;
}

.haval-finance-request .haval-finance-field :is(input, select, textarea):focus {
    border-color: var(--haval-finance-accent);
    box-shadow: 0 0 0 1px var(--haval-finance-accent);
}

.haval-finance-input-suffix {
    position: relative;
}

.haval-finance-input-suffix input {
    padding-right: 58px !important;
}

.haval-finance-input-suffix > span {
    position: absolute;
    top: 50%;
    right: 14px;
    transform: translateY(-50%);
    color: var(--haval-finance-muted);
    font-size: 12px;
    font-weight: 700;
    pointer-events: none;
}

.haval-finance-term-field {
    box-sizing: border-box;
    min-height: 46px;
    padding: 6px 2px 0;
}

.haval-finance-term-label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 6px;
    color: var(--haval-finance-ink);
    font-size: 13px;
    line-height: 1.3;
}

.haval-finance-term-label strong {
    white-space: nowrap;
    color: var(--haval-finance-ink);
    font-size: 14px;
}

.haval-finance-term-field input[type="range"] {
    width: 100%;
    height: 4px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: #D2D7D9;
    accent-color: var(--haval-finance-accent);
    cursor: pointer;
}

.haval-finance-term-field input[type="range"]::-webkit-slider-thumb {
    width: 17px;
    height: 17px;
    border: 2px solid #FFFFFF;
    border-radius: 50%;
    background: var(--haval-finance-accent);
    box-shadow: 0 0 0 1px rgba(0,0,0,.08);
}

.haval-finance-term-limits {
    display: flex;
    justify-content: space-between;
    margin-top: 4px;
    color: var(--haval-finance-muted);
    font-size: 10px;
    line-height: 1.2;
}

.haval-finance-form-section-label {
    margin: 19px 0 9px;
    color: var(--haval-finance-ink);
    font-size: 12px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.haval-finance-consent {
    margin-top: 17px;
}

.haval-finance-consent label {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    color: var(--haval-finance-ink);
    font-size: 12px;
    line-height: 1.45;
    cursor: pointer;
}

.haval-finance-consent input[type="checkbox"] {
    flex: 0 0 17px;
    width: 17px;
    height: 17px;
    margin: 1px 0 0;
    accent-color: var(--haval-finance-accent);
}

.haval-finance-consent a {
    color: var(--haval-finance-accent);
}

.haval-finance-form-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-top: 18px;
}

.haval-finance-required-note {
    color: var(--haval-finance-muted);
    font-size: 11px;
}

.haval-finance-submit {
    min-width: 150px;
    min-height: 44px;
    padding: 10px 25px;
    border: 1px solid var(--haval-finance-accent);
    border-radius: 5px;
    background: var(--haval-finance-accent);
    color: #202020;
    font-family: Montserrat, Arial, sans-serif;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: background-color .2s ease, border-color .2s ease, color .2s ease;
}

.haval-finance-submit:hover,
.haval-finance-submit:focus {
    border-color: #626970;
    background: #626970;
    color: #FFFFFF;
}

.haval-finance-form-notice {
    margin: 0 0 16px;
    padding: 12px 15px;
    border-radius: 5px;
    font-size: 13px;
    line-height: 1.45;
}

.haval-finance-form-notice.is-success {
    border: 1px solid rgba(0,143,136,.28);
    background: rgba(0,202,191,.10);
    color: #145A56;
}

.haval-finance-form-notice.is-error {
    border: 1px solid #E1B7B7;
    background: #FFF2F2;
    color: #8C2525;
}

.haval-finance-honeypot {
    position: absolute !important;
    left: -99999px !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
}

@media (max-width: 991px) {
    .haval-finance-program-copy {
        padding: 40px 36px;
    }
    .haval-finance-request-inner {
        padding: 30px 30px 32px;
    }
}

@media (max-width: 767px) {
    .haval-finance-index,
    .haval-finance-single {
        padding: 0;
    }

    .haval-finance-index-intro {
        margin-bottom: 30px;
    }

    .haval-finance-index-intro h2 {
        font-size: 20px;
    }

    .haval-finance-index-intro p {
        font-size: 16px;
    }

    .haval-finance-program {
        display: flex;
        flex-direction: column;
        min-height: 0;
    }

    .haval-finance-program.is-reversed .haval-finance-program-media,
    .haval-finance-program.is-reversed .haval-finance-program-copy {
        order: initial;
    }

    .haval-finance-program-media,
    .haval-finance-program-media img,
    .haval-finance-program-placeholder {
        min-height: 235px;
        height: 235px;
    }

    .haval-finance-program-copy {
        padding: 30px 24px 36px;
    }

    .haval-finance-program-title {
        font-size: 20px;
    }

    .haval-finance-program-terms {
        grid-template-columns: 1fr;
    }

    .haval-finance-single-hero {
        margin-bottom: 30px;
        border-radius: 7px;
    }

    .haval-finance-single-content {
        font-size: 16px;
        line-height: 1.7;
    }

    .haval-finance-single-lead {
        font-size: 18px;
    }

    .haval-finance-single-content h2 { font-size: 29px; }
    .haval-finance-single-content h3 { font-size: 24px; }

    .haval-finance-request {
        margin-top: 38px;
    }

    .haval-finance-request-inner {
        padding: 24px 18px 26px;
        border-radius: 8px;
    }

    .haval-finance-form-grid {
        grid-template-columns: 1fr;
        gap: 11px;
    }

    .haval-finance-field-wide {
        grid-column: auto;
    }

    .haval-finance-term-field {
        padding-top: 4px;
        padding-bottom: 5px;
    }

    .haval-finance-form-footer {
        flex-direction: column;
        align-items: stretch;
    }

    .haval-finance-submit {
        width: 100%;
    }
}


/* =========================================================
   HAVAL v101 — Trade-in page + financing single internal title
   The title itself is the existing Elementor template #3569.
   ========================================================= */
.single-haval_finance .elementor-3569 {
    display: block;
}

.haval-tradein-page {
    --haval-tradein-white: #FFFFFF;
    --haval-tradein-gray: #F6F4F4;
    --haval-tradein-ink: #202020;
    --haval-tradein-muted: #626970;
    --haval-tradein-line: #D9DDDF;
    --haval-tradein-accent: #00CABF;
    box-sizing: border-box;
    width: 100%;
    padding: 46px 24px 100px;
    background: var(--haval-tradein-white);
    color: var(--haval-tradein-ink);
}

.haval-tradein-intro,
.haval-tradein-steps,
.haval-tradein-buyback,
.haval-tradein-request {
    box-sizing: border-box;
    width: min(100%, 1320px);
    margin-left: auto;
    margin-right: auto;
}

.haval-tradein-intro {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(420px, .95fr);
    align-items: center;
    gap: 60px;
    padding: 22px 0 76px;
}

.haval-tradein-kicker {
    display: block;
    margin-bottom: 10px;
    color: var(--haval-tradein-accent);
    font-family: Montserrat, Arial, sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .07em;
    line-height: 1.3;
    text-transform: uppercase;
}

.haval-tradein-intro h2,
.haval-tradein-section-heading h2,
.haval-tradein-buyback h2,
.haval-tradein-request-heading h2 {
    color: var(--haval-tradein-ink);
    font-family: Montserrat, Arial, sans-serif;
    font-weight: 600;
    line-height: 1.08;
}

.haval-tradein-intro h2 {
    max-width: 680px;
    letter-spacing: -.025em;
}

.haval-tradein-lead {
    margin: 24px 0 0;
    max-width: 690px;
    color: var(--haval-tradein-muted);
    font-size: 18px;
    line-height: 1.65;
}

.haval-tradein-benefits {
    display: grid;
    gap: 11px;
    margin: 28px 0 30px;
    padding: 0;
    list-style: none;
}

.haval-tradein-benefits li {
    position: relative;
    padding-left: 24px;
    color: var(--haval-tradein-ink);
    font-size: 15px;
    line-height: 1.55;
}

.haval-tradein-benefits li::before {
    content: "";
    position: absolute;
    top: .62em;
    left: 0;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--haval-tradein-accent);
}

.haval-tradein-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 12px 24px;
    border-radius: 5px;
    background: var(--haval-tradein-accent);
    color: #202020;
    font-weight: 700;
    text-decoration: none;
}

.haval-tradein-cta:hover,
.haval-tradein-cta:focus {
    background: #202020;
    color: #FFFFFF;
}

.haval-tradein-intro-media {
    min-width: 0;
    overflow: hidden;
    border-radius: 12px;
    background: var(--haval-tradein-gray);
}

.haval-tradein-intro-media img {
    display: block;
    width: 100%;
    height: 430px;
    object-fit: cover;
}

.haval-tradein-visual-placeholder {
    min-height: 430px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #F6F4F4 0%, #E7ECEC 100%);
    color: #202020;
}

.haval-tradein-visual-placeholder span {
    font-size: 54px;
    font-weight: 700;
    letter-spacing: .12em;
}
.haval-tradein-visual-placeholder small {
    margin-top: 8px;
    color: var(--haval-tradein-accent);
    font-size: 15px;
    font-weight: 700;
    letter-spacing: .24em;
}

.haval-tradein-steps {
    padding: 72px 0 78px;
    border-top: 1px solid var(--haval-tradein-line);
}

.haval-tradein-section-heading {
    margin-bottom: 32px;
}
.haval-tradein-section-heading > span {
    display: block;
    margin-bottom: 8px;
    color: var(--haval-tradein-accent);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.haval-tradein-section-heading h2,
.haval-tradein-buyback h2 {
    font-size: clamp(32px, 3.2vw, 44px);
}

.haval-tradein-step-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.haval-tradein-step-grid article {
    min-width: 0;
    padding: 28px 26px 30px;
    border: 1px solid var(--haval-tradein-line);
    border-radius: 9px;
    background: var(--haval-tradein-gray);
}
.haval-tradein-step-grid strong {
    display: block;
    margin-bottom: 26px;
    color: var(--haval-tradein-accent);
    font-size: 14px;
    letter-spacing: .08em;
}
.haval-tradein-step-grid h3 {
    margin: 0 0 10px;
    color: var(--haval-tradein-ink);
    font-size: 20px;
    font-weight: 600;
}
.haval-tradein-step-grid p {
    margin: 0;
    color: var(--haval-tradein-muted);
    font-size: 14px;
    line-height: 1.6;
}

.haval-tradein-buyback {
    padding: 0 0 78px;
}
.haval-tradein-buyback-card {
    display: grid;
    grid-template-columns: minmax(280px, .8fr) minmax(0, 1.2fr);
    gap: 60px;
    padding: 44px 48px;
    border-radius: 12px;
    background: #202020;
}
.haval-tradein-buyback-card .haval-tradein-kicker {
    color: var(--haval-tradein-accent);
}
.haval-tradein-buyback-card h2 {
    color: #FFFFFF;
}
.haval-tradein-buyback-copy p {
    margin: 0 0 14px;
    color: #D5D9DA;
    font-size: 16px;
    line-height: 1.65;
}
.haval-tradein-buyback-copy p:last-child { margin-bottom: 0; }

.haval-tradein-request {
    scroll-margin-top: 120px;
}
.haval-tradein-request-inner {
    padding: 34px 40px 36px;
    border: 1px solid var(--haval-tradein-line);
    border-radius: 10px;
    background: var(--haval-tradein-gray);
}
.haval-tradein-request-heading {
    margin-bottom: 24px;
}
.haval-tradein-request-heading h2 {
    font-size: clamp(30px, 3vw, 40px);
}
.haval-tradein-request-heading p {
    margin: 10px 0 0;
    color: var(--haval-tradein-muted);
    font-size: 15px;
}
.haval-tradein-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px 14px;
}
.haval-tradein-field-wide { grid-column: 1 / -1; }
.haval-tradein-field :is(input, select, textarea) {
    box-sizing: border-box;
    display: block;
    width: 100%;
    min-height: 46px;
    padding: 10px 13px;
    border: 1px solid #C9D0D3;
    border-radius: 5px;
    outline: none;
    background: #FFFFFF;
    color: #202020;
    -webkit-text-fill-color: #202020;
    font-family: Montserrat, Arial, sans-serif;
    font-size: 14px;
    line-height: 1.3;
    box-shadow: none;
}
.haval-tradein-field textarea {
    min-height: 88px;
    resize: vertical;
}
.haval-tradein-field select {
    appearance: auto;
    -webkit-appearance: menulist;
}
.haval-tradein-field select option {
    background: #FFFFFF;
    color: #202020;
}
.haval-tradein-field :is(input, textarea)::placeholder {
    color: #626970;
    -webkit-text-fill-color: #626970;
    opacity: 1;
}
.haval-tradein-field :is(input, select, textarea):focus {
    border-color: var(--haval-tradein-accent);
    box-shadow: 0 0 0 1px var(--haval-tradein-accent);
}
.haval-tradein-form-section-label {
    margin: 22px 0 10px;
    color: #202020;
    font-size: 13px;
    font-weight: 700;
}
.haval-tradein-consent {
    margin-top: 18px;
}
.haval-tradein-consent label {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    cursor: pointer;
}
.haval-tradein-consent input {
    margin-top: 3px;
    accent-color: var(--haval-tradein-accent);
}
.haval-tradein-consent span {
    color: var(--haval-tradein-muted);
    font-size: 13px;
    line-height: 1.45;
}
.haval-tradein-form-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-top: 22px;
}
.haval-tradein-form-footer > span {
    color: var(--haval-tradein-muted);
    font-size: 12px;
}
.haval-tradein-form-footer button {
    min-width: 150px;
    min-height: 46px;
    padding: 12px 26px;
    border: 1px solid var(--haval-tradein-accent);
    border-radius: 5px;
    background: var(--haval-tradein-accent);
    color: #202020;
    font-family: Montserrat, Arial, sans-serif;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
}
.haval-tradein-form-footer button:hover,
.haval-tradein-form-footer button:focus {
    border-color: #202020;
    background: #202020;
    color: #FFFFFF;
}
.haval-tradein-notice {
    margin: 0 0 18px;
    padding: 12px 14px;
    border-radius: 5px;
    font-size: 14px;
}
.haval-tradein-notice.is-success {
    border: 1px solid #9DDCD7;
    background: #ECFBF9;
    color: #146A64;
}
.haval-tradein-notice.is-error {
    border: 1px solid #E1B7B7;
    background: #FFF2F2;
    color: #8C2525;
}

@media (max-width: 1024px) {
    .haval-tradein-intro {
        grid-template-columns: 1fr;
        gap: 34px;
    }
    .haval-tradein-intro-media { order: -1; }
    .haval-tradein-step-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .haval-tradein-buyback-card { grid-template-columns: 1fr; gap: 24px; }
}

@media (max-width: 767px) {
    .haval-tradein-page {
        padding: 32px 10px 64px;
    }
    .haval-tradein-intro {
        padding: 10px 0 54px;
    }
    .haval-tradein-intro-media img,
    .haval-tradein-visual-placeholder {
        height: 250px;
        min-height: 250px;
    }
    .haval-tradein-intro h2 { font-size: 36px; }
    .haval-tradein-lead { font-size: 16px; }
    .haval-tradein-steps { padding: 52px 0 56px; }
    .haval-tradein-step-grid { grid-template-columns: 1fr; }
    .haval-tradein-buyback { padding-bottom: 56px; }
    .haval-tradein-buyback-card { padding: 30px 24px; }
    .haval-tradein-request-inner { padding: 26px 18px 28px; }
    .haval-tradein-grid { grid-template-columns: 1fr; gap: 11px; }
    .haval-tradein-field-wide { grid-column: auto; }
    .haval-tradein-form-footer { flex-direction: column; align-items: stretch; }
    .haval-tradein-form-footer button { width: 100%; }
}

/* =========================================================
   v105 — Warranty page / Elementor
   Same visual system as the successful v103 HTML version,
   with content stored as native Elementor widgets.
   ========================================================= */
.page-id-7008 {
    --haval-warranty-white: #FFFFFF;
    --haval-warranty-gray: #F6F4F4;
    --haval-warranty-ink: #202020;
    --haval-warranty-muted: #626970;
    --haval-warranty-line: #D9DDDF;
    --haval-warranty-accent: #00CABF;
}

.page-id-7008 .main-contain,
.page-id-7008 .main-contain > .container,
.page-id-7008 .main-contain #content,
.page-id-7008 .entry-content,
.page-id-7008 .elementor-7008 {
    background: var(--haval-warranty-white);
}

.page-id-7008 .main-contain #content {
    padding-top: 0;
    padding-bottom: 0;
}

/* The root content column keeps the exact v103 proportions. */
.page-id-7008 .elementor-7008 .haval-warranty-page {
    box-sizing: border-box;
    width: calc(100% - 32px);
    max-width: 1320px;
    margin: 0 auto;
    color: var(--haval-warranty-ink);
    font-family: Montserrat, Arial, sans-serif;
}

.page-id-7008 .haval-warranty-page *,
.page-id-7008 .haval-warranty-page *::before,
.page-id-7008 .haval-warranty-page *::after {
    box-sizing: border-box;
}

.page-id-7008 .haval-warranty-page .elementor-widget-heading,
.page-id-7008 .haval-warranty-page .elementor-widget-text-editor,
.page-id-7008 .haval-warranty-page .elementor-widget-image {
    margin: 0;
}

.page-id-7008 .haval-warranty-page .elementor-heading-title,
.page-id-7008 .haval-warranty-page .elementor-widget-text-editor,
.page-id-7008 .haval-warranty-page .elementor-widget-text-editor p {
    font-family: Montserrat, Arial, sans-serif;
}

.page-id-7008 .haval-warranty-page .elementor-widget-text-editor p:last-child {
    margin-bottom: 0;
}

/* v103 hero: copy + service image. Elementor owns typography values;
   CSS only locks the visual geometry so theme defaults cannot distort it. */
.page-id-7008 .haval-warranty-hero {
    display: grid !important;
    grid-template-columns: minmax(0, 1.05fr) minmax(360px, .95fr);
    align-items: center;
    gap: 54px;
}

.page-id-7008 .haval-warranty-hero-copy {
    min-width: 0;
}

.page-id-7008 .haval-warranty-kicker .elementor-heading-title {
    text-transform: uppercase;
}

.page-id-7008 .haval-warranty-hero-media {
    overflow: hidden;
}

.page-id-7008 .haval-warranty-hero-media .elementor-widget-image,
.page-id-7008 .haval-warranty-hero-media .elementor-widget-container,
.page-id-7008 .elementor-element-a100010 {
    width: 100% !important;
    max-width: 100% !important;
    height: 100%;
    align-self: stretch;
}

.page-id-7008 .haval-warranty-hero-media img {
    display: block;
    width: 100% !important;
    max-width: none !important;
    height: 100%;
    min-height: 330px;
    object-fit: cover;
}

/* Three compact warranty figures. */
.page-id-7008 .haval-warranty-stats {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

/* Section intro stays narrow like v103 instead of stretching text full-width. */
.page-id-7008 .haval-warranty-section-heading {
    width: 100%;
    max-width: 840px;
}

/* Elementor warranty table: two fixed columns, visually identical to a table. */
.page-id-7008 .haval-warranty-table-wrap {
    overflow-x: auto;
    overflow-y: hidden;
    border: 1px solid var(--haval-warranty-line);
    border-radius: 10px;
    background: #FFFFFF;
}

.page-id-7008 .haval-warranty-table-head,
.page-id-7008 .haval-warranty-table-row {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
    min-width: 760px;
    gap: 0 !important;
}

.page-id-7008 .haval-warranty-table-head {
    background: var(--haval-warranty-gray);
}

.page-id-7008 .haval-warranty-table-row {
    border-top: 1px solid var(--haval-warranty-line);
}

.page-id-7008 .haval-warranty-table-head > .elementor-element,
.page-id-7008 .haval-warranty-table-row > .elementor-element {
    box-sizing: border-box;
    min-width: 0;
    margin: 0 !important;
    padding: 17px 20px;
}

.page-id-7008 .haval-warranty-table-head-term,
.page-id-7008 .haval-warranty-table-term {
    flex: 0 0 28% !important;
    width: 28% !important;
    max-width: 28% !important;
    border-right: 1px solid var(--haval-warranty-line);
}

.page-id-7008 .haval-warranty-table-head-desc,
.page-id-7008 .haval-warranty-table-desc {
    flex: 0 0 72% !important;
    width: 72% !important;
    max-width: 72% !important;
}

.page-id-7008 .haval-warranty-table-head-term .elementor-heading-title,
.page-id-7008 .haval-warranty-table-head-desc .elementor-heading-title {
    margin: 0;
    text-transform: uppercase;
}

.page-id-7008 .haval-warranty-table-term .elementor-heading-title,
.page-id-7008 .haval-warranty-table-desc p {
    margin: 0;
}

/* Same 3-card blocks used in v103. */
.page-id-7008 .haval-warranty-card-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

.page-id-7008 .haval-warranty-support-grid {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
    gap: 18px !important;
}

.page-id-7008 .haval-warranty-support-grid > .haval-warranty-support-item {
    box-sizing: border-box;
    flex: 0 0 calc((100% - 36px) / 3) !important;
    width: calc((100% - 36px) / 3) !important;
    max-width: calc((100% - 36px) / 3) !important;
    min-width: 0 !important;
}

.page-id-7008 .haval-warranty-contact {
    display: grid !important;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
    gap: 34px;
    align-items: stretch;
}

.page-id-7008 .haval-warranty-contact-card a {
    color: var(--haval-warranty-accent);
    text-decoration: none;
    font-weight: 600;
}

.page-id-7008 .haval-warranty-contact-card a:hover,
.page-id-7008 .haval-warranty-contact-card a:focus {
    color: #008F88;
}

/* _padding is not a public Elementor container control for widgets in all
   versions, so these two small spacings are structural fallbacks only. */
.page-id-7008 .elementor-element-a100019 {
    margin-top: 22px;
}

.page-id-7008 .haval-warranty-note {
    margin-top: 26px;
    padding: 18px 20px;
    border: 1px solid var(--haval-warranty-line);
    border-radius: 8px;
    background: #FFFFFF;
}

@media (max-width: 1024px) {
    .page-id-7008 .haval-warranty-hero {
        grid-template-columns: 1fr;
        gap: 32px;
    }

    .page-id-7008 .haval-warranty-hero-media {
        order: -1;
    }

    .page-id-7008 .haval-warranty-card-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .page-id-7008 .haval-warranty-support-grid > .haval-warranty-support-item {
        flex-basis: calc((100% - 18px) / 2) !important;
        width: calc((100% - 18px) / 2) !important;
        max-width: calc((100% - 18px) / 2) !important;
    }

    .page-id-7008 .haval-warranty-contact {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767px) {
    .page-id-7008 .elementor-7008 .haval-warranty-page {
        width: 100%;
    }

    .page-id-7008 .haval-warranty-stats,
    .page-id-7008 .haval-warranty-card-grid {
        grid-template-columns: 1fr;
    }

    .page-id-7008 .haval-warranty-support-grid > .haval-warranty-support-item {
        flex-basis: 100% !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    .page-id-7008 .haval-warranty-hero-media img {
        min-height: 230px;
    }
}


/* =========================================================
   v107 — Service maintenance page (Elementor page #5565)
   Content adapted from the official HAVAL Belarus service-center page.
   All headings, texts, images, cards and service lists remain editable
   in Elementor; CSS only defines the visual system/layout.
   ========================================================= */
.page-id-5565 {
    --haval-service-white: #FFFFFF;
    --haval-service-gray: #F6F4F4;
    --haval-service-ink: #202020;
    --haval-service-muted: #626970;
    --haval-service-line: #D9DDDF;
    --haval-service-accent: #00CABF;
}

.page-id-5565 .main-contain,
.page-id-5565 .main-contain > .container,
.page-id-5565 .main-contain #content {
    background: var(--haval-service-white);
}

.page-id-5565 .elementor-5565 .haval-service-page {
    box-sizing: border-box;
    width: min(calc(100% - 48px), 1320px) !important;
    max-width: 1320px !important;
    margin: 0 auto !important;
    padding: 58px 0 96px !important;
    color: var(--haval-service-ink);
    font-family: Montserrat, Arial, sans-serif;
}

.page-id-5565 .haval-service-page *,
.page-id-5565 .haval-service-page *::before,
.page-id-5565 .haval-service-page *::after {
    box-sizing: border-box;
}

.page-id-5565 .haval-service-page .elementor-widget-heading,
.page-id-5565 .haval-service-page .elementor-widget-text-editor,
.page-id-5565 .haval-service-page .elementor-widget-image,
.page-id-5565 .haval-service-page .elementor-widget-button,
.page-id-5565 .haval-service-page .elementor-widget-icon-list {
    margin: 0;
}

.page-id-5565 .haval-service-page .elementor-widget-text-editor p:last-child {
    margin-bottom: 0;
}

.page-id-5565 .haval-service-page h1,
.page-id-5565 .haval-service-page h2,
.page-id-5565 .haval-service-page h3,
.page-id-5565 .haval-service-page h4,
.page-id-5565 .haval-service-page .elementor-heading-title {
    font-family: Montserrat, Arial, sans-serif;
}

.page-id-5565 .haval-service-kicker .elementor-heading-title {
    margin: 0 0 12px;
    color: var(--haval-service-accent);
    -webkit-text-fill-color: var(--haval-service-accent);
    font-size: 14px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: .08em;
    text-transform: uppercase;
}

/* Hero */
.page-id-5565 .haval-service-hero {
    display: grid !important;
    grid-template-columns: minmax(0, 1.02fr) minmax(380px, .98fr);
    align-items: center;
    gap: 52px;
    padding: 0 0 72px;
}

.page-id-5565 .haval-service-hero-copy {
    min-width: 0;
}

.page-id-5565 .haval-service-hero-copy > .elementor-widget-heading:nth-of-type(2) .elementor-heading-title {
    margin: 0;
    color: var(--haval-service-ink);
    -webkit-text-fill-color: var(--haval-service-ink);
    font-size: 48px;
    font-weight: 600;
    line-height: 1.08;
    letter-spacing: -.025em;
}

.page-id-5565 .haval-service-lead {
    margin-top: 20px !important;
}

.page-id-5565 .haval-service-lead,
.page-id-5565 .haval-service-lead p {
    color: var(--haval-service-muted);
    -webkit-text-fill-color: var(--haval-service-muted);
    font-size: 17px;
    line-height: 1.65;
}

.page-id-5565 .haval-service-actions {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    margin-top: 28px !important;
}

.page-id-5565 .haval-service-hero-media {
    overflow: hidden;
    min-height: 390px;
    border-radius: 12px;
    background: var(--haval-service-gray);
}

.page-id-5565 .haval-service-hero-media .elementor-widget-image,
.page-id-5565 .haval-service-hero-media .elementor-widget-container {
    width: 100% !important;
    max-width: 100% !important;
    height: 100%;
}

.page-id-5565 .haval-service-hero-media img {
    display: block;
    width: 100% !important;
    max-width: none !important;
    min-height: 390px;
    height: 100%;
    object-fit: cover;
}

/* Buttons */
.page-id-5565 .haval-service-btn {
    width: auto !important;
    max-width: none !important;
}

.page-id-5565 .haval-service-btn .elementor-button {
    min-height: 46px;
    padding: 13px 22px;
    border-radius: 5px;
    font-family: Montserrat, Arial, sans-serif;
    font-size: 14px;
    font-weight: 650;
    line-height: 1.2;
    text-decoration: none;
}

.page-id-5565 .haval-service-btn-primary .elementor-button {
    border: 1px solid var(--haval-service-accent);
    background: var(--haval-service-accent);
    color: #202020;
}

.page-id-5565 .haval-service-btn-primary .elementor-button:hover,
.page-id-5565 .haval-service-btn-primary .elementor-button:focus {
    border-color: #202020;
    background: #202020;
    color: #FFFFFF;
}

.page-id-5565 .haval-service-btn-secondary .elementor-button {
    border: 1px solid #BFC5C8;
    background: #FFFFFF;
    color: #202020;
}

.page-id-5565 .haval-service-btn-secondary .elementor-button:hover,
.page-id-5565 .haval-service-btn-secondary .elementor-button:focus {
    border-color: var(--haval-service-accent);
    color: #202020;
}

/* Service center card */
.page-id-5565 .haval-service-center-section {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(360px, .72fr);
    align-items: stretch;
    gap: 36px;
    padding: 58px;
    border-radius: 12px;
    background: var(--haval-service-gray);
}

.page-id-5565 .haval-service-center-copy {
    justify-content: center;
}

.page-id-5565 .haval-service-center-copy .elementor-heading-title {
    color: var(--haval-service-ink);
    -webkit-text-fill-color: var(--haval-service-ink);
}

.page-id-5565 .haval-service-center-copy > .elementor-widget-heading:nth-of-type(2) .elementor-heading-title {
    margin: 0 0 18px;
    font-size: 36px;
    font-weight: 600;
    line-height: 1.15;
}

.page-id-5565 .haval-service-center-copy .elementor-widget-text-editor,
.page-id-5565 .haval-service-center-copy .elementor-widget-text-editor p {
    color: var(--haval-service-muted);
    -webkit-text-fill-color: var(--haval-service-muted);
    font-size: 16px;
    line-height: 1.65;
}

.page-id-5565 .haval-service-center-card {
    padding: 30px;
    border: 1px solid var(--haval-service-line);
    border-radius: 10px;
    background: #FFFFFF;
}

.page-id-5565 .haval-service-center-card .elementor-heading-title {
    margin: 0 0 16px;
    color: var(--haval-service-ink);
    -webkit-text-fill-color: var(--haval-service-ink);
    font-size: 22px;
    font-weight: 600;
}

.page-id-5565 .haval-service-center-card .elementor-widget-text-editor {
    margin-bottom: 22px;
}

.page-id-5565 .haval-service-center-card p {
    margin-bottom: 13px;
    color: var(--haval-service-ink);
    -webkit-text-fill-color: var(--haval-service-ink);
    font-size: 15px;
    line-height: 1.6;
}

.page-id-5565 .haval-service-center-card a {
    color: var(--haval-service-accent);
    text-decoration: none;
    font-weight: 650;
}

/* Generic sections */
.page-id-5565 .haval-service-section,
.page-id-5565 .haval-service-services-section {
    padding: 76px 0;
    border-bottom: 1px solid var(--haval-service-line);
}

.page-id-5565 .haval-service-section-heading {
    max-width: 850px;
    margin-bottom: 32px !important;
}

.page-id-5565 .haval-service-section-heading > .elementor-widget-heading:nth-of-type(2) .elementor-heading-title {
    margin: 0;
    color: var(--haval-service-ink);
    -webkit-text-fill-color: var(--haval-service-ink);
    font-size: 36px;
    font-weight: 600;
    line-height: 1.15;
}

.page-id-5565 .haval-service-section-heading > .elementor-widget-text-editor {
    margin-top: 15px;
}

.page-id-5565 .haval-service-section-heading p {
    color: var(--haval-service-muted);
    -webkit-text-fill-color: var(--haval-service-muted);
    font-size: 16px;
    line-height: 1.65;
}

/* Advantages */
.page-id-5565 .haval-service-advantages-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.page-id-5565 .haval-service-adv-card {
    min-width: 0;
    padding: 26px;
    border: 1px solid var(--haval-service-line);
    border-radius: 10px;
    background: var(--haval-service-gray);
}

.page-id-5565 .haval-service-adv-badge .elementor-heading-title {
    margin: 0 0 16px;
    color: var(--haval-service-accent);
    -webkit-text-fill-color: var(--haval-service-accent);
    font-size: 24px;
    font-weight: 700;
}

.page-id-5565 .haval-service-adv-card > .elementor-widget-heading:nth-of-type(2) .elementor-heading-title {
    margin: 0 0 11px;
    color: var(--haval-service-ink);
    -webkit-text-fill-color: var(--haval-service-ink);
    font-size: 20px;
    font-weight: 600;
    line-height: 1.3;
}

.page-id-5565 .haval-service-adv-card p {
    margin: 0;
    color: var(--haval-service-muted);
    -webkit-text-fill-color: var(--haval-service-muted);
    font-size: 14px;
    line-height: 1.6;
}

/* Services */
.page-id-5565 .haval-service-services-section {
    border-bottom: 0;
}

.page-id-5565 .haval-service-services-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
}

.page-id-5565 .haval-service-list {
    padding: 28px 30px;
    border: 1px solid var(--haval-service-line);
    border-radius: 10px;
    background: var(--haval-service-gray);
}

.page-id-5565 .haval-service-list .elementor-icon-list-items {
    margin: 0;
}

.page-id-5565 .haval-service-list .elementor-icon-list-item {
    align-items: flex-start;
    padding: 11px 0;
    border-bottom: 1px solid var(--haval-service-line);
}

.page-id-5565 .haval-service-list .elementor-icon-list-item:first-child {
    padding-top: 0;
}

.page-id-5565 .haval-service-list .elementor-icon-list-item:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.page-id-5565 .haval-service-list .elementor-icon-list-icon {
    margin-top: 4px;
    color: var(--haval-service-accent);
}

.page-id-5565 .haval-service-list .elementor-icon-list-text {
    color: var(--haval-service-ink);
    -webkit-text-fill-color: var(--haval-service-ink);
    font-size: 15px;
    line-height: 1.5;
}

/* Closing */
.page-id-5565 .haval-service-closing {
    display: grid !important;
    grid-template-columns: minmax(360px, .9fr) minmax(0, 1.1fr);
    align-items: center;
    gap: 50px;
    padding: 72px 0 0;
}

.page-id-5565 .haval-service-closing-media {
    overflow: hidden;
    min-height: 350px;
    border-radius: 12px;
    background: var(--haval-service-gray);
}

.page-id-5565 .haval-service-closing-media .elementor-widget-image,
.page-id-5565 .haval-service-closing-media .elementor-widget-container {
    width: 100% !important;
    height: 100%;
}

.page-id-5565 .haval-service-closing-media img {
    display: block;
    width: 100% !important;
    max-width: none !important;
    min-height: 350px;
    height: 100%;
    object-fit: cover;
}

.page-id-5565 .haval-service-closing-copy > .elementor-widget-heading:nth-of-type(2) .elementor-heading-title {
    margin: 0 0 18px;
    color: var(--haval-service-ink);
    -webkit-text-fill-color: var(--haval-service-ink);
    font-size: 36px;
    font-weight: 600;
    line-height: 1.15;
}

.page-id-5565 .haval-service-closing-copy .elementor-widget-text-editor {
    margin-bottom: 24px;
}

.page-id-5565 .haval-service-closing-copy p {
    color: var(--haval-service-muted);
    -webkit-text-fill-color: var(--haval-service-muted);
    font-size: 16px;
    line-height: 1.65;
}

@media (max-width: 1024px) {
    .page-id-5565 .elementor-5565 .haval-service-page {
        width: min(calc(100% - 40px), 1320px) !important;
    }

    .page-id-5565 .haval-service-hero,
    .page-id-5565 .haval-service-center-section,
    .page-id-5565 .haval-service-closing {
        grid-template-columns: 1fr;
    }

    .page-id-5565 .haval-service-hero-media {
        order: -1;
    }

    .page-id-5565 .haval-service-advantages-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .page-id-5565 .elementor-5565 .haval-service-page {
        width: calc(100% - 32px) !important;
        padding: 38px 0 64px !important;
    }

    .page-id-5565 .haval-service-hero {
        gap: 28px;
        padding-bottom: 52px;
    }

    .page-id-5565 .haval-service-hero-copy > .elementor-widget-heading:nth-of-type(2) .elementor-heading-title {
        font-size: 36px;
    }

    .page-id-5565 .haval-service-hero-media,
    .page-id-5565 .haval-service-hero-media img {
        min-height: 240px;
    }

    .page-id-5565 .haval-service-center-section {
        padding: 30px 22px;
        gap: 24px;
    }

    .page-id-5565 .haval-service-center-copy > .elementor-widget-heading:nth-of-type(2) .elementor-heading-title,
    .page-id-5565 .haval-service-section-heading > .elementor-widget-heading:nth-of-type(2) .elementor-heading-title,
    .page-id-5565 .haval-service-closing-copy > .elementor-widget-heading:nth-of-type(2) .elementor-heading-title {
        font-size: 30px;
    }

    .page-id-5565 .haval-service-section,
    .page-id-5565 .haval-service-services-section {
        padding: 54px 0;
    }

    .page-id-5565 .haval-service-advantages-grid,
    .page-id-5565 .haval-service-services-grid {
        grid-template-columns: 1fr;
    }

    .page-id-5565 .haval-service-closing {
        gap: 28px;
        padding-top: 54px;
    }

    .page-id-5565 .haval-service-closing-media,
    .page-id-5565 .haval-service-closing-media img {
        min-height: 240px;
    }

    .page-id-5565 .haval-service-actions,
    .page-id-5565 .haval-service-actions .elementor-widget-button {
        width: 100% !important;
    }

    .page-id-5565 .haval-service-actions .elementor-button {
        width: 100%;
        justify-content: center;
    }
}

/* =========================================================
   v108 — Header callback CTA + global callback popup
   The header button itself is stored in Elementor header #2569.
   ========================================================= */
.elementor-2569 .elementor-element-hvlcb01 {
    width: auto !important;
    max-width: none !important;
    flex: 0 0 auto !important;
}

.elementor-2569 .elementor-element-hvlcb01 .elementor-button {
    min-height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
}

body.haval-callback-opened {
    overflow: hidden;
}

.haval-callback-modal[hidden] {
    display: none !important;
}

.haval-callback-modal {
    position: fixed;
    inset: 0;
    z-index: 1000000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    font-family: Montserrat, Arial, sans-serif;
}

body.haval-callback-opened {
    overflow: hidden;
}

.haval-callback-backdrop {
    appearance: none;
    -webkit-appearance: none;
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    border: 0;
    background: rgba(10, 12, 13, .72);
    backdrop-filter: blur(2px);
    cursor: pointer;
}

.haval-callback-elementor-shell {
    position: relative;
    z-index: 1;
    width: min(1040px, calc(100vw - 40px));
    max-height: calc(100vh - 40px);
}

.haval-callback-elementor-shell > .elementor {
    width: 100%;
}

.haval-callback-elementor-shell .elementor-element,
.haval-callback-elementor-shell .elementor-widget-container {
    min-width: 0;
}

.haval-callback-dialog {
    box-sizing: border-box;
    display: grid;
    grid-template-columns: minmax(340px, 42%) minmax(0, 58%);
    width: 100%;
    max-height: calc(100vh - 40px);
    margin: 0;
    padding: 0;
    overflow: hidden;
    border: 1px solid #D9DDDF;
    background: #FFFFFF;
    color: #202020;
    box-shadow: 0 28px 90px rgba(0, 0, 0, .30);
    transform: translateY(10px) scale(.99);
    transition: transform .18s ease;
}

.haval-callback-modal.is-open .haval-callback-dialog {
    transform: translateY(0) scale(1);
}

/* Editable left promo panel. */
.haval-callback-visual {
    position: relative;
    min-height: 640px;
    overflow: hidden;
    background: #182126;
    color: #FFFFFF;
}

.haval-callback-visual-image {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.haval-callback-visual-shade {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(8, 17, 21, .12) 0%, rgba(8, 17, 21, .08) 43%, rgba(8, 17, 21, .70) 100%);
}

.haval-callback-promo-top,
.haval-callback-promo-bottom {
    position: absolute;
    z-index: 2;
    left: 30px;
    right: 30px;
}

.haval-callback-promo-top {
    top: 38px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
}

.haval-callback-promo-label {
    position: relative;
    max-width: 190px;
    padding: 7px 12px 7px 19px;
    background: rgba(255, 255, 255, .94);
    color: #202020;
    -webkit-text-fill-color: #202020;
    font-family: Montserrat, Arial, sans-serif;
    font-size: 11px;
    font-weight: 650;
    line-height: 1.2;
    white-space: nowrap;
}

.haval-callback-promo-label::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 9px;
    background: #00CABF;
    clip-path: polygon(45% 0, 100% 0, 55% 100%, 0 100%);
}

.haval-callback-promo-logo {
    display: block;
    width: auto;
    max-width: 122px;
    max-height: 34px;
    object-fit: contain;
}

.haval-callback-promo-bottom {
    bottom: 36px;
}

.haval-callback-promo-offer {
    margin: 0 0 8px;
    color: #00CABF;
    -webkit-text-fill-color: #00CABF;
    font-family: Montserrat, Arial, sans-serif;
    font-size: 44px;
    font-weight: 750;
    line-height: 1;
    letter-spacing: -.03em;
}

.haval-callback-promo-description {
    max-width: 280px;
    color: #FFFFFF;
    -webkit-text-fill-color: #FFFFFF;
    font-family: Montserrat, Arial, sans-serif;
    font-size: 17px;
    font-weight: 500;
    line-height: 1.35;
}

.haval-callback-promo-footer {
    position: relative;
    margin-top: 42px;
    padding-top: 14px;
    color: rgba(255, 255, 255, .84);
    -webkit-text-fill-color: rgba(255, 255, 255, .84);
    font-family: Montserrat, Arial, sans-serif;
    font-size: 12px;
    font-weight: 500;
    line-height: 1.35;
}

.haval-callback-promo-footer::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background: rgba(255, 255, 255, .62);
}

/* Right form panel. */
.haval-callback-content {
    position: relative;
    min-width: 0;
    max-height: calc(100vh - 40px);
    padding: 42px 42px 38px;
    overflow-y: auto;
    background: #FFFFFF;
}

.haval-callback-close {
    appearance: none;
    -webkit-appearance: none;
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    color: #646464;
    font-family: Arial, sans-serif;
    font-size: 38px;
    font-weight: 200;
    line-height: 1;
    cursor: pointer;
}

.haval-callback-close:hover,
.haval-callback-close:focus-visible {
    background: transparent;
    color: #202020;
    outline: none;
}

.haval-callback-dialog h2 {
    max-width: calc(100% - 42px);
    margin: 0;
    color: #111111;
    -webkit-text-fill-color: #111111;
    font-family: Montserrat, Arial, sans-serif;
    font-size: 36px;
    font-weight: 650;
    line-height: 1.12;
    letter-spacing: -.02em;
}

.haval-callback-intro,
.haval-callback-success p {
    max-width: 540px;
    margin: 20px 0 0;
    color: #202020;
    -webkit-text-fill-color: #202020;
    font-family: Montserrat, Arial, sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.4;
}

.haval-callback-form {
    margin-top: 34px;
}

.haval-callback-field {
    margin: 0 0 22px;
}

.haval-callback-field > label {
    display: block;
    margin: 0 0 8px;
    color: #202020;
    -webkit-text-fill-color: #202020;
    font-family: Montserrat, Arial, sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.35;
}

.haval-callback-field > label span {
    color: #E52329;
    -webkit-text-fill-color: #E52329;
}

.haval-callback-input {
    box-sizing: border-box;
    display: block;
    width: 100%;
    height: 70px;
    margin: 0;
    padding: 0 22px;
    border: 1px solid #D2D2D2;
    border-radius: 0;
    background: #FFFFFF;
    color: #202020;
    -webkit-text-fill-color: #202020;
    font-family: Montserrat, Arial, sans-serif;
    font-size: 19px;
    font-weight: 400;
    line-height: 1;
    outline: none;
    box-shadow: none;
}

.haval-callback-input::placeholder {
    color: #C7C9CB;
    -webkit-text-fill-color: #C7C9CB;
    opacity: 1;
}

.haval-callback-input:focus {
    border-color: #888888;
    box-shadow: none;
}

.haval-callback-consent {
    display: flex;
    align-items: flex-start;
    gap: 13px;
    margin: 4px 0 0;
    color: #202020;
    -webkit-text-fill-color: #202020;
    font-family: Montserrat, Arial, sans-serif;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.45;
    cursor: pointer;
}

.haval-callback-consent input[type="checkbox"] {
    appearance: none;
    -webkit-appearance: none;
    flex: 0 0 28px;
    width: 28px;
    height: 28px;
    margin: 0;
    border: 1px solid #D2D2D2;
    border-radius: 0;
    background: #FFFFFF;
    cursor: pointer;
}

.haval-callback-consent input[type="checkbox"]:checked {
    border-color: #00CABF;
    background: #00CABF;
}

.haval-callback-consent input[type="checkbox"]:checked::after {
    content: "✓";
    display: block;
    color: #FFFFFF;
    font-size: 19px;
    line-height: 25px;
    text-align: center;
}

.haval-callback-consent b {
    color: #E52329;
    -webkit-text-fill-color: #E52329;
    font-weight: 500;
}

.haval-callback-submit {
    appearance: none;
    -webkit-appearance: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 58px;
    margin: 28px 0 0;
    padding: 14px 24px;
    border: 1px solid #000000;
    border-radius: 0;
    background: #000000;
    color: #FFFFFF;
    -webkit-text-fill-color: #FFFFFF;
    font-family: Montserrat, Arial, sans-serif;
    font-size: 17px;
    font-weight: 650;
    line-height: 1.2;
    letter-spacing: .01em;
    cursor: pointer;
    transition: background-color .18s ease, border-color .18s ease, color .18s ease, opacity .18s ease;
}

.haval-callback-submit:hover:not(:disabled),
.haval-callback-submit:focus-visible:not(:disabled) {
    border-color: #00CABF;
    background: #00CABF;
    color: #202020;
    -webkit-text-fill-color: #202020;
    outline: none;
}

.haval-callback-submit:disabled,
.haval-callback-submit[aria-disabled="true"] {
    border-color: #D4D6D7;
    background: #D4D6D7;
    color: #8A8F92;
    -webkit-text-fill-color: #8A8F92;
    cursor: not-allowed;
    opacity: 1;
}

.haval-callback-error {
    margin: 18px 0 0;
    padding: 12px 14px;
    border: 1px solid #F0C1BE;
    background: #FFF1F0;
    color: #A3261B;
    font-size: 13px;
    line-height: 1.45;
}

.haval-callback-success {
    display: flex;
    min-height: 420px;
    flex-direction: column;
    justify-content: center;
}

.haval-callback-success .haval-callback-submit {
    max-width: 300px;
}

.haval-callback-hp {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* Elementor editor: show the widget normally without popup overlay. */
body.elementor-editor-active .elementor-widget-haval_callback_form .haval-callback-dialog {
    max-height: none;
    transform: none;
    box-shadow: 0 10px 35px rgba(0, 0, 0, .12);
}

body.elementor-editor-active .elementor-widget-haval_callback_form .haval-callback-content {
    max-height: none;
}

@media (max-width: 800px) {
    .haval-callback-dialog {
        grid-template-columns: 36% minmax(0, 64%);
    }

    .haval-callback-promo-top,
    .haval-callback-promo-bottom {
        left: 22px;
        right: 22px;
    }

    .haval-callback-promo-top {
        align-items: flex-start;
        flex-direction: column-reverse;
    }

    .haval-callback-promo-label {
        max-width: 100%;
        font-size: 9px;
    }

    .haval-callback-promo-logo {
        max-width: 105px;
    }

    .haval-callback-promo-offer {
        font-size: 34px;
    }

    .haval-callback-promo-description {
        font-size: 14px;
    }
}

@media (max-width: 700px) {
    .haval-callback-modal {
        padding: 12px;
    }

    .haval-callback-elementor-shell {
        width: min(100%, 520px);
        max-height: calc(100vh - 24px);
        overflow-y: auto;
    }

    .haval-callback-dialog {
        display: block;
        max-height: none;
    }

    .haval-callback-visual {
        min-height: 235px;
        height: 235px;
    }

    .haval-callback-promo-top {
        top: 20px;
        flex-direction: row;
        align-items: center;
    }

    .haval-callback-promo-bottom {
        bottom: 18px;
    }

    .haval-callback-promo-offer {
        margin-bottom: 5px;
        font-size: 32px;
    }

    .haval-callback-promo-description {
        font-size: 12px;
        line-height: 1.25;
    }

    .haval-callback-promo-footer {
        display: none;
    }

    .haval-callback-content {
        max-height: none;
        padding: 30px 22px 24px;
        overflow: visible;
    }

    .haval-callback-close {
        top: 7px;
        right: 7px;
        width: 34px;
        height: 34px;
        background: rgba(255,255,255,.94);
        font-size: 32px;
    }

    .haval-callback-dialog h2 {
        max-width: calc(100% - 34px);
        font-size: 28px;
    }

    .haval-callback-intro,
    .haval-callback-success p {
        margin-top: 14px;
        font-size: 15px;
    }

    .haval-callback-form {
        margin-top: 26px;
    }

    .haval-callback-field {
        margin-bottom: 18px;
    }

    .haval-callback-input {
        height: 60px;
        padding: 0 18px;
        font-size: 17px;
    }

    .haval-callback-consent {
        font-size: 13px;
    }

    .haval-callback-submit {
        min-height: 54px;
        margin-top: 24px;
        font-size: 15px;
    }

    .haval-callback-success {
        min-height: 250px;
    }
}


/* =========================================================
   v109 — Callback button interaction fix
   Hover stays white; keyboard/mouse focus and active state return
   to the normal HAVAL turquoise state instead of remaining white.
   ========================================================= */
.elementor-2569 .elementor-element-hvlcb01 .elementor-button:focus,
.elementor-2569 .elementor-element-hvlcb01 .elementor-button:active,
.elementor-2569 .elementor-element-hvlcb01 .elementor-button:focus-visible {
    border-color: #00CABF;
    background-color: #00CABF;
    color: #202020;
    -webkit-text-fill-color: #202020;
    outline: none;
}

.elementor-2569 .elementor-element-hvlcb01 .elementor-button:hover:not(:focus):not(:active) {
    border-color: #FFFFFF;
    background-color: #FFFFFF;
    color: #202020;
    -webkit-text-fill-color: #202020;
}


/* =========================================================
   v115 — Required-field state for all customer-facing forms.
   Keep the original visual design; disabled submit buttons remain visible
   but cannot be clicked and do not enter their hover state.
   ========================================================= */
form[data-haval-required-validation="1"] :is(button[type="submit"], input[type="submit"]):disabled,
.haval-offer-form :is(button[type="submit"], input[type="submit"]):disabled,
.haval-finance-form :is(button[type="submit"], input[type="submit"]):disabled,
.haval-tradein-form :is(button[type="submit"], input[type="submit"]):disabled {
    cursor: default;
    pointer-events: none;
    transform: none;
    filter: none;
}


/* =========================================================
   v116 — MetForm inactive submit state without loading spinner.
   MetForm uses the native disabled attribute for its own loading state,
   so validation-disabled MetForm buttons are locked by class instead.
   ========================================================= */
form[data-haval-required-validation="1"] .metform-submit-btn.haval-validation-disabled {
    cursor: default;
    pointer-events: none;
    transform: none;
    filter: none;
}

/* Keep the normal button label visible while our validation lock is active. */
form[data-haval-required-validation="1"] .metform-submit-btn.haval-validation-disabled > span {
    display: inline-flex;
    visibility: visible;
    opacity: 1;
}

/*
 * Defensive cleanup: if MetForm has already injected a loader into the
 * button before our state update, hide it only while OUR validation lock
 * is active. It is not hidden during a real form submission.
 */
form[data-haval-required-validation="1"] .metform-submit-btn.haval-validation-disabled .mf-loader,
form[data-haval-required-validation="1"] .metform-submit-btn.haval-validation-disabled .metform-loader,
form[data-haval-required-validation="1"] .metform-submit-btn.haval-validation-disabled .mf-spinner,
form[data-haval-required-validation="1"] .metform-submit-btn.haval-validation-disabled .metform-spinner {
    display: none;
}


/* =========================================================
   HAVAL v118 — Single vehicle detail layout
   Elementor Single Vehicle template #2567.
   ========================================================= */

/* This page intentionally starts directly with the vehicle title. */
body.single-listings .elementor-3569,
body.single-listing .elementor-3569 {
    display: none !important;
}

/* Title -> gallery without the old action row. */
.elementor-2567 .elementor-element-892bb1b,
.single-listing_template .elementor-element-892bb1b {
    margin: 0 !important;
    padding: 0 !important;
}

.elementor-2567 .elementor-element-4e2b55f,
.single-listing_template .elementor-element-4e2b55f {
    margin-top: 0 !important;
}

/* Sidebar now contains only three unified cards. */
.elementor-2567 .elementor-element-3b0ab10 > .haval-vehicle-sidebar-card,
.single-listing_template .elementor-element-3b0ab10 > .haval-vehicle-sidebar-card {
    box-sizing: border-box;
    width: 100% !important;
    padding: 26px 24px !important;
    border: 1px solid #D9DDDF !important;
    border-radius: 10px !important;
    background: #F6F4F4 !important;
    box-shadow: 0 10px 30px rgba(100, 94, 94, .12) !important;
}

/* Unified heading used by Price / Test Drive / Loan Calculator. */
.haval-vehicle-card-title {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0 0 20px;
}

.haval-vehicle-card-title h3 {
    margin: 0 !important;
    color: #202020 !important;
    -webkit-text-fill-color: #202020 !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: 24px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
}

.haval-vehicle-card-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: #00CABF;
    color: #202020;
    -webkit-text-fill-color: #202020;
    font-size: 17px;
}

.haval-vehicle-card-icon i {
    color: #202020 !important;
    -webkit-text-fill-color: #202020 !important;
}

/* Price. */
.haval-vehicle-price-value {
    margin-top: 4px;
    color: #202020;
    -webkit-text-fill-color: #202020;
    font-family: Montserrat, Arial, sans-serif;
    font-size: 32px;
    font-weight: 750;
    line-height: 1.15;
}

/* Test-drive form. */
.haval-vehicle-testdrive-form {
    display: grid;
    gap: 16px;
}

.haval-vehicle-form-field {
    display: grid;
    gap: 7px;
}

.haval-vehicle-form-field label {
    margin: 0;
    color: #202020;
    -webkit-text-fill-color: #202020;
    font-family: Montserrat, Arial, sans-serif;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.35;
}

.haval-vehicle-form-field label span {
    color: #D52B2B;
    -webkit-text-fill-color: #D52B2B;
}

.haval-vehicle-testdrive-form input[type="text"],
.haval-vehicle-testdrive-form input[type="tel"],
.haval-vehicle-testdrive-form input[type="datetime-local"] {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    height: 46px;
    margin: 0;
    padding: 0 13px;
    border: 1px solid #CDD2D4;
    border-radius: 5px;
    background: #FFFFFF;
    color: #202020;
    -webkit-text-fill-color: #202020;
    font-family: Montserrat, Arial, sans-serif;
    font-size: 14px;
    outline: none;
    box-shadow: none;
}

.haval-vehicle-testdrive-form input:focus {
    border-color: #00CABF;
}

.haval-vehicle-testdrive-consent {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin: 2px 0 0;
    color: #202020;
    -webkit-text-fill-color: #202020;
    font-family: Montserrat, Arial, sans-serif;
    font-size: 12px;
    line-height: 1.45;
    cursor: pointer;
}

.haval-vehicle-testdrive-consent input {
    flex: 0 0 auto;
    margin: 2px 0 0;
}

.haval-vehicle-testdrive-form button[type="submit"] {
    width: 100%;
    margin: 2px 0 0;
    border: 1px solid #00CABF;
    border-radius: 5px;
    background: #00CABF;
    color: #202020;
    -webkit-text-fill-color: #202020;
    font-family: Montserrat, Arial, sans-serif;
    font-weight: 700;
    cursor: pointer;
}

.haval-vehicle-testdrive-form button[type="submit"]:disabled,
.haval-vehicle-testdrive-form button[type="submit"][aria-disabled="true"] {
    cursor: default;
    pointer-events: none;
}

.haval-vehicle-form-message {
    margin: 0 0 16px;
    padding: 11px 12px;
    border-radius: 5px;
    font-size: 12px;
    line-height: 1.45;
}

.haval-vehicle-form-message-success {
    border: 1px solid #A9DDD8;
    background: #EAF9F7;
    color: #17655F;
}

.haval-vehicle-form-message-error {
    border: 1px solid #E9B8B8;
    background: #FFF0F0;
    color: #9B2E2E;
}

/* Loan calculator: same card/title system as Test Drive. */
.haval-vehicle-calculator-card .stm_auto_loan_calculator > h3.heading-font {
    display: none !important;
}

.haval-vehicle-calculator-card .stm_auto_loan_calculator,
.haval-vehicle-calculator-card .stm_auto_loan_calculator * {
    font-family: Montserrat, Arial, sans-serif;
}

.haval-vehicle-calculator-card .stm_auto_loan_calculator input {
    min-height: 44px;
    border-radius: 5px;
    background: #FFFFFF !important;
    border-color: #CDD2D4 !important;
    color: #202020 !important;
    -webkit-text-fill-color: #202020 !important;
}

/* The calculator action remains the native Motors action. */
.haval-vehicle-calculator-card .stm_auto_loan_calculator a {
    border-radius: 5px;
}

/* At tablet widths the sidebar follows the content as one column. */
@media (max-width: 1024px) {
    .elementor-2567 .elementor-element-3b0ab10,
    .single-listing_template .elementor-element-3b0ab10 {
        width: 100% !important;
    }
}

@media (max-width: 767px) {
    .haval-vehicle-card-title h3 {
        font-size: 21px !important;
    }

    .haval-vehicle-price-value {
        font-size: 28px;
    }
}


/* =========================================================
   HAVAL v119 — Single vehicle sidebar heading cleanup
   ========================================================= */

/* No icons in Price / Test Drive / Loan Calculator headings. */
.haval-vehicle-card-icon {
    display: none !important;
}

.haval-vehicle-card-title {
    display: block;
    margin: 0 0 20px;
}

.haval-vehicle-card-title h3 {
    margin: 0 !important;
    white-space: nowrap;
}

/* Price label and value share one line. */
.haval-vehicle-price-row {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 16px;
    width: 100%;
}

.haval-vehicle-price-row h3 {
    flex: 0 0 auto;
    margin: 0 !important;
    color: #202020 !important;
    -webkit-text-fill-color: #202020 !important;
    font-family: Montserrat, Arial, sans-serif !important;
    font-size: 24px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    white-space: nowrap;
}

.haval-vehicle-price-row .haval-vehicle-price-value {
    flex: 1 1 auto;
    min-width: 0;
    margin: 0;
    text-align: right;
    font-size: 27px;
    line-height: 1.15;
    white-space: nowrap;
}

/* These two titles must stay on one line on the desktop sidebar. */
.haval-vehicle-testdrive-card .haval-vehicle-card-title h3,
.haval-vehicle-calculator-card .haval-vehicle-card-title h3 {
    font-size: 22px !important;
    white-space: nowrap;
}

@media (max-width: 1200px) and (min-width: 1025px) {
    .haval-vehicle-testdrive-card .haval-vehicle-card-title h3,
    .haval-vehicle-calculator-card .haval-vehicle-card-title h3 {
        font-size: 20px !important;
    }

    .haval-vehicle-price-row h3 {
        font-size: 21px !important;
    }

    .haval-vehicle-price-row .haval-vehicle-price-value {
        font-size: 24px;
    }
}

.stm_auto_loan_calculator {
	padding: 0;
}

/* =========================================================
   HAVAL v125 — Contacts page cleanup
   Partner/stats sections are removed in Elementor DB.
   Contact-form placeholders use the regular #202020 text color.
   ========================================================= */

/* =========================================================
   HAVAL v126 — top header physical-address icon
   Elementor already stores #00CABF for the address widget, but the older
   generic location-pin rule forces it white. Override only Header #2569.
   ========================================================= */
.elementor-2569 .ee--contact-box:has(.fa-map-marker-alt) .eel-icon,
.elementor-2569 .ee--contact-box:has(.rt-location-dot) .eel-icon,
.elementor-2569 .elementor-element-6663421 .eel-icon {
    color: #00CABF !important;
    -webkit-text-fill-color: #00CABF !important;
}

.elementor-2569 .ee--contact-box:has(.fa-map-marker-alt) .eel-icon i,
.elementor-2569 .ee--contact-box:has(.rt-location-dot) .eel-icon i,
.elementor-2569 .ee--contact-box:has(.fa-map-marker-alt) .eel-icon svg,
.elementor-2569 .ee--contact-box:has(.rt-location-dot) .eel-icon svg,
.elementor-2569 .elementor-element-6663421 .eel-icon i,
.elementor-2569 .elementor-element-6663421 .eel-icon svg {
    color: #00CABF !important;
    fill: #00CABF !important;
    -webkit-text-fill-color: #00CABF !important;
}

@media (max-width: 1024px) {
    .page-numbers li a.next, .page-numbers li a.prev {
        margin-top: 0 !important;
    }
}

@media (min-width: 768px) {
    .elementor-3901 .elementor-element.elementor-element-7459b98 {
        overflow: visible !important;
    }
}

body:not([class*=elementor-page-]):not(.elementor-archive-template):not(.elementor-single-template) .easyel-content-container {
	padding: 0 10px !important;
}

@media (max-width: 767px) {
    body:not([class*=elementor-page-]):not(.elementor-archive-template):not(.elementor-single-template) .easyel-content-container {
		margin-top: 90px;
	}
}

@media (max-width: 1024px) {
    .car-listing-modern-grid .stm-directory-grid-loop.mvl-card-skins {
        padding-left: 10px;
        padding-right: 10px;
    }
}

.alert.alert-success {
    color: #202020 !important;
}

/* =========================================================
   HAVAL v141 — Unified submit-button loader
   Real DOM spinner; avoids MetForm ::before/::after conflicts.
   ========================================================= */
button.haval-submit-loading,
input[type="submit"].haval-submit-loading {
    position: relative !important;
    pointer-events: none !important;
    cursor: wait !important;
}

button.haval-submit-loading {
    color: transparent !important;
    text-shadow: none !important;
}

button.haval-submit-loading > *:not(.haval-submit-spinner) {
    visibility: hidden !important;
    opacity: 0 !important;
}

button.metform-submit-btn.haval-submit-loading::before,
button.metform-submit-btn.haval-submit-loading::after {
    content: none !important;
    display: none !important;
    opacity: 0 !important;
    animation: none !important;
}

button.haval-submit-loading > .haval-submit-spinner {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    width: 20px !important;
    height: 20px !important;
    margin: -10px 0 0 -10px !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    border: 2px solid #FFFFFF !important;
    border-right-color: transparent !important;
    border-radius: 50% !important;
    background: transparent !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    transform-origin: 50% 50% !important;
    animation: haval-submit-loader-spin .7s linear infinite !important;
    pointer-events: none !important;
    z-index: 999 !important;
}

input[type="submit"].haval-submit-loading {
    color: transparent !important;
    text-shadow: none !important;
}

@keyframes haval-submit-loader-spin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

@media (prefers-reduced-motion: reduce) {
    button.haval-submit-loading > .haval-submit-spinner {
        animation-duration: 1.4s !important;
    }
}
