/* Leto Vehicles Brand System
   Direction: precise industrial mobility for global B2B buyers.
   Visual language: graphite, signal green, technical mono labels, restrained surfaces.
*/
:root {
    --brand-ink-950: #101817;
    --brand-ink-900: #17211f;
    --brand-ink-800: #24312e;
    --brand-ink-700: #35433f;
    --brand-ink-600: #52615c;
    --brand-ink-500: #697873;
    --brand-paper: #f7f9f7;
    --brand-surface: #ffffff;
    --brand-surface-soft: #edf3ef;
    --brand-line: #d5dfda;
    --brand-line-strong: #b6c7bf;
    --brand-signal: #b7f34a;
    --brand-signal-strong: #8bc72c;
    --brand-signal-deep: #5f8f17;
    --brand-danger: #bd4f48;
    --brand-display: "Segoe UI", "Helvetica Neue", Arial, sans-serif;
    --brand-body: "Segoe UI", "Helvetica Neue", Arial, sans-serif;
    --brand-mono: "Cascadia Mono", "SFMono-Regular", Consolas, monospace;
    --brand-space-1: 4px;
    --brand-space-2: 8px;
    --brand-space-3: 12px;
    --brand-space-4: 16px;
    --brand-space-5: 20px;
    --brand-space-6: 24px;
    --brand-space-7: 32px;
    --brand-space-8: 40px;
    --brand-space-9: 56px;
    --brand-space-10: 72px;
    --brand-radius-sm: 2px;
    --brand-radius-md: 6px;
    --brand-radius-lg: 12px;
    --brand-shadow-sm: 0 2px 8px rgba(16, 24, 23, .06);
    --brand-shadow-md: 0 16px 40px rgba(16, 24, 23, .10);
    --brand-shadow-lg: 0 24px 70px rgba(16, 24, 23, .14);
    --brand-motion: 180ms ease;

    --bg: var(--brand-paper);
    --surface: var(--brand-surface);
    --fg: var(--brand-ink-900);
    --muted: var(--brand-ink-600);
    --border: var(--brand-line);
    --accent: var(--brand-signal-strong);
    --accent-strong: var(--brand-signal-deep);
    --accent-soft: var(--brand-surface-soft);
    --ink-inverse: var(--brand-paper);
    --font-display: var(--brand-display);
    --font-body: var(--brand-body);
    --font-mono: var(--brand-mono);
    --impl-primary-color: var(--brand-signal-strong);
    --impl-gradient-color: var(--brand-signal-strong);
    --impl-white-color: var(--brand-surface);
    --impl-font-color: var(--brand-ink-600);
    --impl-heading-color: var(--brand-ink-900);
    --impl-bg-color: var(--brand-ink-900);
    --impl-border-radius: var(--brand-radius-md);
    --impl-box-shadow: var(--brand-shadow-sm);
    --impl-transition: var(--brand-motion);
}

html {
    background: var(--brand-paper);
    scroll-behavior: smooth;
}

body {
    background: var(--brand-paper);
    color: var(--brand-ink-600);
    font-family: var(--brand-body);
    font-size: 16px;
    line-height: 1.6;
}

h1, h2, h3, h4, h5, h6 {
    color: var(--brand-ink-900);
    font-family: var(--brand-display);
    font-weight: 700;
    letter-spacing: -.025em;
    line-height: 1.1;
}

p {
    line-height: 1.65;
}

::selection {
    color: var(--brand-ink-950);
    background: var(--brand-signal);
}

::placeholder {
    color: var(--brand-ink-500);
    opacity: 1;
}

.impl_preheader {
    background: var(--brand-ink-950);
    border-bottom: 1px solid rgba(183, 243, 74, .16);
    padding: 10px 0;
}

.impl_header_social li a svg,
.impl_user_login svg {
    fill: rgba(247, 249, 247, .72);
}

.impl_preheader_info li a,
.impl_preheader_info li p {
    color: rgba(247, 249, 247, .76);
    font-size: 13px;
}

.impl_preheader_info li a:hover,
.impl_header_social li a:hover svg,
.impl_user_login:hover svg {
    color: var(--brand-signal);
    fill: var(--brand-signal);
}

.impl_banner_section {
    background-color: var(--brand-paper);
    background-image: linear-gradient(135deg, rgba(183, 243, 74, .08), transparent 42%), linear-gradient(rgba(16, 24, 23, .035) 1px, transparent 1px), linear-gradient(90deg, rgba(16, 24, 23, .035) 1px, transparent 1px);
    background-size: auto, 32px 32px, 32px 32px;
}

.impl_banner_section::before {
    opacity: .08;
}

.impl_header_wrapper {
    border-bottom: 1px solid var(--brand-line);
}

.impl_navbar .impl_logo {
    min-width: 230px;
    min-height: 72px;
    background: var(--brand-ink-900);
    border-radius: 0 0 var(--brand-radius-md) var(--brand-radius-md);
}

.impl_navbar_nav li a,
.impl_navbar_btn a {
    color: var(--brand-ink-800);
    font-size: 14px;
    font-weight: 600;
}

@media (min-width: 1200px) {
    .impl_nav_item {
        gap: 32px;
    }

    .impl_navbar_nav {
        align-items: center;
        gap: 32px;
    }

    .impl_navbar_nav > li > a,
    .impl_navbar_nav > li > .impl_menu_trigger {
        display: inline-flex;
        align-items: center;
        min-height: 24px;
        line-height: 1;
        white-space: nowrap;
    }

    .impl_navbar_nav > li > .impl_menu_trigger {
        justify-content: center;
    }

    .impl_navbar_btn {
        align-items: center;
    }

    .impl_header_search {
        display: inline-flex;
        width: 24px;
        height: 24px;
        align-items: center;
        justify-content: center;
        line-height: 1;
    }

    .impl_header_search svg {
        display: block;
    }
}

.impl_navbar_nav li a:hover,
.impl_navbar_nav li a.active {
    color: var(--brand-signal-deep);
}

.impl_navbar_nav li a.active::after {
    background: var(--brand-signal);
}

.impl_sub_menu {
    background: var(--brand-surface);
    border: 1px solid var(--brand-line);
    border-bottom: 3px solid var(--brand-signal-strong);
    box-shadow: var(--brand-shadow-md);
}

.impl_sub_menu li a {
    border-bottom-color: var(--brand-line);
}

.impl_sub_menu li a:hover {
    background: var(--brand-surface-soft);
    color: var(--brand-ink-900);
}

.impl_btn {
    min-height: 46px;
    border: 1px solid var(--brand-signal-strong);
    border-radius: var(--brand-radius-sm);
    color: var(--brand-ink-950);
    background: var(--brand-signal);
    box-shadow: 0 4px 0 var(--brand-signal-strong);
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .045em;
    text-transform: uppercase;
    transition: transform var(--brand-motion), box-shadow var(--brand-motion), background var(--brand-motion);
}

.impl_btn:hover,
.impl_btn:focus-visible {
    color: var(--brand-ink-950);
    background: #c7ff69;
    border-color: var(--brand-signal-strong);
    box-shadow: 0 2px 0 var(--brand-signal-strong);
    transform: translateY(2px);
}

.impl_banner_wrapper {
    padding: 84px 0 128px;
}

.impl_banner_text {
    max-width: 820px;
    margin: 0 auto;
}

.impl_banner_text h6,
.impl_about_heading p,
.impl_booking_heading p,
.impl_contact_heading p {
    color: var(--brand-signal-deep);
    font-family: var(--brand-mono);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.impl_banner_text h1 {
    max-width: 780px;
    margin: 14px auto 20px;
    color: var(--brand-ink-950);
    font-size: clamp(42px, 5vw, 76px);
    letter-spacing: -.055em;
    line-height: .98;
}

.impl_banner_text p {
    max-width: 650px;
    margin: 0 auto;
    color: var(--brand-ink-600);
    font-size: 18px;
}

.impl_banner_tab {
    gap: 8px;
    margin-top: 40px;
}

.impl_banner_tab li a {
    min-height: 42px;
    padding: 11px 18px;
    border: 1px solid transparent;
    color: var(--brand-ink-600);
    font-family: var(--brand-mono);
    font-size: 12px;
    letter-spacing: .03em;
    text-transform: uppercase;
}

.impl_banner_tab li a.active,
.impl_banner_tab li a:hover {
    border-color: var(--brand-line-strong);
    color: var(--brand-ink-900);
    background: var(--brand-surface);
}

.impl_banner_form,
.impl_explore_box,
.impl_choose_box,
.impl_booking_box {
    border: 1px solid var(--brand-line);
    border-radius: var(--brand-radius-md);
    background: var(--brand-surface);
    box-shadow: var(--brand-shadow-md);
}

.impl_banner_form {
    min-height: 76px;
}

.impl_banner_dropdown select,
.impl_newsletter_form input,
.srch_inner input[type="text"] {
    color: var(--brand-ink-900);
    background: var(--brand-surface);
    border-color: var(--brand-line);
}

.impl_banner_slider {
    margin-top: 56px;
}

.impl_banner_img img {
    filter: drop-shadow(0 24px 20px rgba(16, 24, 23, .16));
}

.impl_banner_slider .swiper-button-next,
.impl_banner_slider .swiper-button-prev,
.impl_type_slider .swiper-button-next,
.impl_type_slider .swiper-button-prev {
    box-sizing: border-box;
    width: 40px;
    min-width: 40px;
    max-width: 40px;
    height: 40px;
    min-height: 40px;
    max-height: 40px;
    padding: 0;
    aspect-ratio: 1 / 1;
    border: 0;
    border-radius: 50%;
    background: var(--brand-ink-900);
    color: var(--brand-surface);
    transition: background-color var(--brand-motion), color var(--brand-motion);
}

.impl_banner_slider .swiper-button-next::after,
.impl_banner_slider .swiper-button-prev::after,
.impl_type_slider .swiper-button-next::after,
.impl_type_slider .swiper-button-prev::after {
    color: var(--brand-surface);
    font-size: 16px;
    font-weight: 700;
}

.impl_banner_slider .swiper-button-next:hover,
.impl_banner_slider .swiper-button-prev:hover,
.impl_type_slider .swiper-button-next:hover,
.impl_type_slider .swiper-button-prev:hover {
    background: var(--brand-signal-strong);
    color: var(--brand-ink-900);
}

.impl_banner_slider .swiper-button-next:hover::after,
.impl_banner_slider .swiper-button-prev:hover::after,
.impl_type_slider .swiper-button-next:hover::after,
.impl_type_slider .swiper-button-prev:hover::after {
    color: var(--brand-ink-900);
}

.impl_banner_slider .swiper-button-next:focus-visible,
.impl_banner_slider .swiper-button-prev:focus-visible,
.impl_type_slider .swiper-button-next:focus-visible,
.impl_type_slider .swiper-button-prev:focus-visible {
    outline: 3px solid var(--brand-signal);
    outline-offset: 3px;
}

.impl_section_wrapper {
    padding: var(--brand-space-10) 0;
}

.impl_section_heading {
    margin-bottom: 36px;
}

.impl_section_heading h3,
.impl_about_heading h3,
.impl_choose_heading h3,
.impl_newsletter_text h3 {
    color: var(--brand-ink-900);
    font-size: clamp(30px, 3vw, 48px);
    letter-spacing: -.045em;
}

.impl_section_heading p {
    max-width: 620px;
    margin: 14px auto 0;
    color: var(--brand-ink-600);
}

.impl_type_img,
.impl_explore_box,
.impl_choose_box,
.impl_news_box,
.impl_testimonial_box {
    border-color: var(--brand-line);
    border-radius: var(--brand-radius-md);
    box-shadow: var(--brand-shadow-sm);
}

.impl_type_img {
    /* 分类卡片去掉白色底，只留图标与文字 */
    background: transparent;
    box-shadow: none;
    padding: 2px 10px;
}

/* 分类图标：统一尺寸，保留 SVG 自身上色（描边/双色），CSS 仅控制尺寸 */
.impl_type_img svg {
    width: auto;
    height: 80px;
    max-width: 100%;
    transition: var(--brand-motion);
    /* 默认态调浅图标颜色，hover 恢复实色 */
    opacity: .75;
}

.impl_type_box:hover .impl_type_img svg {
    fill: var(--brand-signal-deep);
    opacity: 1;
}

/* PNG/JPG 图标尺寸兜底 */
.impl_type_img img {
    height: 80px;
    width: auto;
    max-width: 100%;
    object-fit: contain;
}

.impl_type_box:hover .impl_type_img,
.impl_explore_card:hover .impl_explore_box {
    border-color: var(--brand-signal-strong);
    box-shadow: var(--brand-shadow-md);
}

.impl_type_text p,
.impl_explore_info h6,
.impl_explore_text h6 {
    color: var(--brand-ink-800);
    font-weight: 700;
}

.impl_ad_box,
.impl_about_wrapper,
.impl_choose_wrapper,
.impl_news_wrapper,
.impl_newsletter_wrapper {
    border-radius: var(--brand-radius-lg);
}

.impl_ad_box {
    overflow: hidden;
    border-color: var(--brand-line);
    background: var(--brand-surface) !important;
    box-shadow: var(--brand-shadow-md);
}

.impl_ad_box::after {
    background: rgba(247, 249, 247, .74);
}

.impl_ad_box.box-2 {
    background: var(--brand-surface-soft) !important;
}

.impl_ad_box.box-2::after {
    background: rgba(237, 243, 239, .74);
}

/* 促销卡片：两卡等高，标题加宽避免折成三行 */
.impl_ad_wrapper .col-md-6 {
    display: flex;
}

.impl_ad_box {
    width: 100%;
}

.impl_ad_text {
    max-width: 380px;
}

.impl_ad_text h3 {
    max-width: 360px;
}

/* Hero 轮播图：去掉 translateX(-100%) 入场动画，避免多张 slide 只显示一张 */
.impl_banner_img img {
    display: block;
    max-width: 82%;
    margin: 0 auto;
    transform: none;
    transition: transform .3s ease;
}

.impl_banner_slider .swiper-slide-active .impl_banner_img img {
    transform: none;
}

.impl_about_wrapper,
.impl_choose_wrapper,
.impl_news_wrapper {
    background: var(--brand-surface-soft);
    border: 1px solid var(--brand-line);
}

.impl_fiter_tab {
    width: fit-content;
    max-width: 100%;
    justify-content: center;
    gap: 4px;
    margin: 0 auto 42px;
    padding: 4px;
    border: 1px solid rgba(29, 45, 33, .1);
    border-radius: 999px;
    background: rgba(255, 255, 255, .76);
}

.impl_fiter_tab li a {
    display: flex;
    min-width: 122px;
    min-height: 46px;
    justify-content: center;
    align-items: center;
    padding: 0 18px;
    border: 1px solid transparent;
    border-radius: 999px;
    color: var(--brand-ink-600);
    background: transparent;
    font-family: var(--brand-sans);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .015em;
    line-height: 1.2;
    text-align: center;
    text-transform: uppercase;
    white-space: nowrap;
    transition: color var(--brand-motion), background var(--brand-motion), box-shadow var(--brand-motion);
}

.impl_fiter_tab li a:hover {
    color: var(--brand-ink-950);
    background: var(--brand-surface-soft);
}

.impl_fiter_tab li a.active {
    color: var(--brand-ink-950);
    background: var(--brand-signal);
    box-shadow: 0 2px 7px rgba(21, 37, 26, .12);
}

.impl_fiter_tab li a:focus-visible {
    outline: 2px solid var(--brand-ink-950);
    outline-offset: 2px;
}

@media (max-width: 767.98px) {
    .impl_fiter_tab {
        width: 100%;
        justify-content: flex-start;
        margin-bottom: 30px;
        overflow-x: auto;
        overscroll-behavior-x: contain;
        scrollbar-width: thin;
        scrollbar-color: var(--brand-ink-300) transparent;
    }

    .impl_fiter_tab li {
        flex: 0 0 auto;
    }

    .impl_fiter_tab li a {
        min-width: 108px;
        min-height: 42px;
        padding: 0 14px;
        font-size: 11px;
    }
}

.impl_explore_bottom {
    background: var(--brand-surface-soft);
}

.impl_explore_card:hover .impl_explore_bottom {
    background: rgba(183, 243, 74, .14);
}

.impl_offer_wrapper {
    background: var(--brand-ink-900);
    border-top: 1px solid rgba(183, 243, 74, .32);
    border-bottom: 1px solid rgba(183, 243, 74, .32);
    border-radius: var(--brand-radius-md);
    box-shadow: var(--brand-shadow-lg);
}

.impl_offer_wrapper::before {
    color: rgba(247, 249, 247, .58);
    font-family: var(--brand-mono);
}

.impl_offer_box {
    border-right-color: rgba(247, 249, 247, .14);
}

.impl_offer_box::after {
    background: var(--brand-signal);
}

.impl_offer_text h4 {
    color: var(--brand-signal);
    font-family: var(--brand-mono);
}

.impl_offer_text p,
.impl_footer_text p,
.impl_footer_links li a,
.impl_footer_address li a {
    color: rgba(247, 249, 247, .76);
}

.impl_choose_icon {
    border: 1px solid rgba(95, 143, 23, .24);
    border-radius: var(--brand-radius-md);
    background: var(--brand-surface);
    box-shadow: none;
}

.impl_choose_icon svg {
    fill: var(--brand-signal-deep);
}

.impl_newsletter_wrapper {
    background: var(--brand-surface);
    border: 1px solid var(--brand-line);
}

.impl_newsletter_form input {
    border-radius: var(--brand-radius-sm);
}

.impl_footer_wrapper {
    background: var(--brand-ink-900);
}

.impl_footer_heading h6 {
    color: var(--brand-signal);
    font-family: var(--brand-mono);
    font-size: 13px;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.impl_footer_links li a:hover,
.impl_footer_address li a:hover {
    color: var(--brand-signal);
}

.impl_copyright_wrapper {
    background: var(--brand-ink-950);
}

.impl_copyright_text p {
    color: rgba(247, 249, 247, .62);
    font-size: 12px;
}

.skip-link {
    position: fixed;
    top: 12px;
    left: 12px;
    z-index: 10000;
    padding: 10px 14px;
    color: var(--brand-ink-950);
    background: var(--brand-signal);
    border-radius: var(--brand-radius-sm);
    transform: translateY(-160%);
}

.skip-link:focus {
    transform: translateY(0);
}

.brand-visually-hidden {
    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;
}

.impl_menu_trigger,
.impl_header_search,
.impl_search_close,
.impl_toggle_btn button,
.impl_body_overlay,
.impl_banner_tab button {
    padding: 0;
    border: 0;
    color: inherit;
    background: transparent;
    font: inherit;
    cursor: pointer;
}

.impl_menu_trigger {
    display: flex;
    align-items: center;
    gap: 5px;
    color: var(--brand-ink-800);
    font-size: 14px;
    font-weight: 600;
}

.impl_menu_trigger img {
    display: none;
}

.impl_banner_tab button {
    min-height: 42px;
    padding: 11px 18px;
    border: 1px solid transparent;
    color: var(--brand-ink-600);
    font-family: var(--brand-mono);
    font-size: 12px;
    letter-spacing: .03em;
    text-transform: uppercase;
}

.impl_banner_tab button.active,
.impl_banner_tab button:hover {
    border-color: var(--brand-line-strong);
    color: var(--brand-ink-900);
    background: var(--brand-surface);
}

.impl_toggle_btn button {
    display: flex;
    flex-direction: column;
    width: 30px;
}

.srch_inner input[type="search"] {
    color: var(--brand-ink-900);
    background: var(--brand-surface);
    border-color: var(--brand-line);
}

.impl_form_status {
    min-height: 24px;
    margin: 12px 0 0;
    color: var(--brand-ink-700);
    font-size: 13px;
    text-align: center;
}

#products .vehicle-home-products {
    position: relative;
    padding: 0 56px;
}

#products .vehicle-home-products .swiper-slide {
    display: flex;
    height: auto;
    padding: 8px 0 28px;
}

#products .vehicle-home-products .swiper-slide > .impl_explore_card {
    display: flex;
    flex-direction: column;
    width: 100%;
    margin: 0;
}

#products .impl_fiter_pane > .row {
    row-gap: 12px;
}

#products .impl_fiter_pane > .row > [class*="col-"] {
    display: flex;
    margin-bottom: 26px;
}

#products .impl_explore_card {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    margin-bottom: 0;
    overflow: hidden;
    border: 1px solid var(--brand-line);
    border-radius: var(--brand-radius-md);
    background: var(--brand-surface);
    box-shadow: var(--brand-shadow-sm);
    transition: transform var(--brand-motion), box-shadow var(--brand-motion);
}

#products .impl_explore_card:hover,
#products .impl_explore_card:focus-within {
    transform: translateY(-4px);
    box-shadow: var(--brand-shadow-md);
}

#products .impl_explore_box {
    flex: 1 0 auto;
    width: 100%;
    height: auto;
    padding: 0;
    overflow: visible;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

#products .impl_explore_card:hover .impl_explore_box,
#products .impl_explore_card:focus-within .impl_explore_box {
    border-color: transparent;
    box-shadow: none;
    transform: none;
}

#products .impl_explore_img {
    aspect-ratio: 1.48 / 1;
    max-height: none;
    overflow: hidden;
    border-radius: var(--brand-radius-md) var(--brand-radius-md) 0 0;
    background: var(--brand-ink-100);
}

#products .vehicle-home-no-image {
    width: 100%;
    height: 100%;
    background: var(--brand-ink-100) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%239ca3af' stroke-width='1.5'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M8.25 18.75a1.5 1.5 0 01-3 0m3 0a1.5 1.5 0 00-3 0m3 0h6m-9 0H3.375A1.125 1.125 0 012.25 17.625V9.375A1.125 1.125 0 013.375 8.25h2.25m12-3h2.25A1.125 1.125 0 0120.625 6.375v8.25a1.125 1.125 0 01-1.125 1.125h-2.25m-12-3h12m-9.75 0H9m3 0V5.25'/%3E%3C/svg%3E") no-repeat center;
    background-size: 64px;
}

#products .impl_explore_img > img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 0;
    object-fit: cover;
    transition: transform 550ms cubic-bezier(.2, .75, .25, 1);
}

#products .impl_explore_card:hover .impl_explore_img > img {
    transform: scale(1.04);
}

#products .impl_explore_img::before,
#products .impl_explore_links {
    display: none;
}

#products .impl_veh_price {
    right: 14px;
    bottom: 14px;
    z-index: 1;
}

#products .impl_veh_price h5 {
    margin: 0;
    padding: 10px 14px;
    border: 0;
    border-radius: 7px;
    color: var(--brand-ink-950);
    background: var(--brand-signal);
    box-shadow: 0 5px 16px rgba(18, 28, 20, .22);
    font-family: var(--brand-mono);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .055em;
    line-height: 1;
    text-transform: uppercase;
    white-space: nowrap;
}

#products .impl_veh_price h5::after {
    content: "  →";
}

#products .impl_explore_detail {
    flex: 1 1 auto;
    padding: 23px 24px 12px;
}

#products .impl_explore_text {
    min-height: 0;
    margin: 0;
}

#products .impl_explore_text h6 {
    margin: 0 0 9px;
    color: var(--brand-ink-950);
    font-size: 20px;
    font-weight: 750;
    line-height: 1.25;
}

#products .impl_explore_text h6 a {
    color: inherit;
    text-decoration: none;
}

#products .impl_explore_card:hover .impl_explore_text h6 a,
#products .impl_explore_card:focus-within .impl_explore_text h6 a {
    color: var(--brand-signal-deep);
}

#products .impl_explore_text p {
    margin: 0;
    color: var(--brand-ink-600);
    font-size: 14px;
    line-height: 1.65;
}

#products .impl_explore_bottom {
    display: flex;
    flex-direction: column;
    min-height: 0;
    justify-content: flex-start;
    align-items: center;
    gap: 16px;
    padding: 2px 24px 24px;
    border: 0;
    border-radius: 0;
    background: transparent;
    text-align: center;
}

#products .impl_explore_bottom > .impl_explore_info {
    display: none;
}

#products .vehicle-home-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 10px;
    width: 100%;
}

#products .vehicle-home-actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 10px 18px;
    border: 1px solid var(--brand-ink-900);
    border-radius: var(--brand-radius-sm);
    font-size: 13px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    transition: background-color var(--brand-motion), color var(--brand-motion), border-color var(--brand-motion);
}

#products .vehicle-home-details {
    color: var(--brand-ink-900);
    background: transparent;
}

#products .vehicle-home-contact {
    color: var(--brand-ink-950);
    background: var(--brand-signal);
    border-color: var(--brand-signal-strong);
}

#products .vehicle-home-details:hover,
#products .vehicle-home-contact:hover {
    color: var(--brand-ink-950);
    background: var(--brand-signal-strong);
    border-color: var(--brand-signal-strong);
}

#products .vehicle-home-actions a:focus-visible {
    outline: 3px solid var(--brand-signal-deep);
    outline-offset: 3px;
}

#products .vehicle-home-products-prev,
#products .vehicle-home-products-next {
    position: absolute;
    top: 38%;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    padding: 0;
    border: 1px solid var(--brand-line-strong);
    border-radius: 50%;
    color: var(--brand-ink-900);
    background: var(--brand-paper);
    cursor: pointer;
    transition: background-color var(--brand-motion), color var(--brand-motion), border-color var(--brand-motion);
}

#products .vehicle-home-products-prev { left: 0; }
#products .vehicle-home-products-next { right: 0; }
#products .vehicle-home-products-prev::after { content: "\2190"; }
#products .vehicle-home-products-next::after { content: "\2192"; }

#products .vehicle-home-products-prev:hover,
#products .vehicle-home-products-next:hover {
    border-color: var(--brand-signal-strong);
    color: var(--brand-ink-950);
    background: var(--brand-signal);
}

#products .vehicle-home-products-prev:focus-visible,
#products .vehicle-home-products-next:focus-visible {
    outline: 3px solid var(--brand-signal-deep);
    outline-offset: 3px;
}

#products .vehicle-home-products-prev.swiper-button-disabled,
#products .vehicle-home-products-next.swiper-button-disabled {
    opacity: .4;
    cursor: default;
}

#products .impl_explore_info {
    flex: 0 1 auto;
    min-width: 0;
}

#products .impl_explore_info svg {
    display: none;
}

#products .impl_explore_info h6 {
    margin: 0;
    padding: 7px 10px;
    border: 1px solid rgba(29, 45, 33, .11);
    border-radius: 4px;
    color: var(--brand-ink-700);
    background: #f5f7f4;
    font-family: var(--brand-sans);
    font-size: 10px;
    font-weight: 650;
    letter-spacing: .02em;
    line-height: 1;
    text-transform: uppercase;
    white-space: nowrap;
}

#products .impl_explore_card:hover .impl_explore_bottom {
    background: transparent;
}

@media (max-width: 767.98px) {
    #products .vehicle-home-products {
        padding: 0 38px;
    }

    #products .impl_explore_detail {
        padding: 19px 20px 10px;
    }

    #products .impl_explore_bottom {
        padding: 2px 20px 20px;
    }

    #products .vehicle-home-products-prev,
    #products .vehicle-home-products-next {
        top: 34%;
        width: 34px;
        height: 34px;
    }
}

.search-match {
    animation: search-match-pulse 1.8s ease both;
}

@keyframes search-match-pulse {
    0%, 100% { background: transparent; }
    20%, 70% { background: rgba(183, 243, 74, .35); }
}

/* Restore visible keyboard focus after the legacy reset stylesheet. */
a:focus-visible,
button:focus-visible,
select:focus-visible,
input:focus-visible,
textarea:focus-visible {
    outline: 3px solid var(--brand-signal-strong);
    outline-offset: 3px;
}

@media (max-width: 1199.98px) {
    .impl_navbar_nav {
        background: var(--brand-ink-900);
    }

    .impl_navbar_nav li a,
    .impl_navbar_nav .impl_menu_trigger {
        color: var(--brand-paper);
        border-bottom-color: rgba(183, 243, 74, .24);
    }

    .impl_navbar_nav li a:hover,
    .impl_navbar_nav li a.active,
    .impl_navbar_nav .impl_menu_trigger:hover {
        color: var(--brand-signal);
    }

    .impl_toggle_btn span {
        background: var(--brand-ink-900);
    }
}

@media (max-width: 767.98px) {
    .impl_banner_wrapper {
        padding: 60px 0 90px;
    }

    .impl_banner_text h1 {
        font-size: clamp(38px, 11vw, 58px);
    }

    .impl_banner_text p {
        font-size: 16px;
    }

    .impl_section_wrapper {
        padding: var(--brand-space-9) 0;
    }

    .impl_banner_tab {
        gap: 4px;
    }

    .impl_banner_tab button {
        padding: 10px 12px;
        font-size: 10px;
    }
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
    }
}
