/* BMI shared site header and footer. Page-specific layout is selected by body context. */
@import url("lang-switcher.css");
@font-face {
    font-family: "Lato";
    src: url("../../fonts/lato/lato-regular.woff") format("woff");
    font-style: normal;
    font-weight: 400;
    font-display: swap;
}

@font-face {
    font-family: "Lato";
    src: url("../../fonts/lato/lato-light.woff") format("woff");
    font-style: normal;
    font-weight: 300;
    font-display: swap;
}

@font-face {
    font-family: "Lato";
    src: url("../../fonts/lato/lato-bold.woff") format("woff");
    font-style: normal;
    font-weight: 700;
    font-display: swap;
}

@font-face {
    font-family: "Lato";
    src: url("../../fonts/lato/lato-black.woff") format("woff");
    font-style: normal;
    font-weight: 900;
    font-display: swap;
}

.site-header {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 100;
    font-family: "Helvetica Neue", Helvetica, Arial, "PingFang SC", "Microsoft YaHei", sans-serif;
}

.site-header *,
.site-footer * {
    box-sizing: border-box;
}

.site-header a,
.site-footer a {
    color: inherit;
    text-decoration: none;
}

.site-header img,
.site-footer img {
    border: 0;
    vertical-align: middle;
}

/* Banner 标题仅在英文页面使用全大写，避免改变其他语言的本地化文案。 */
html[lang="en"] .page-banner-title {
    text-transform: uppercase;
}

.site-header .topbar {
    display: flex;
    align-items: center;
    height: 44px;
    padding: 0 160px;
    background: #222222;
}

.site-header .topbar-list {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 31px;
    width: auto;
    height: 44px;
    margin: 0 0 0 auto;
    padding: 0;
    list-style: none;
}

/* 顶栏文字操作与 30px 搜索框使用相同的操作区和垂直中心线。 */
.site-header .topbar-list > li {
    display: flex;
    align-items: center;
    height: 30px;
}

.site-header .topbar-list > li[data-site-auth] {
    min-height: 30px;
}

.site-header .topbar-list a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #888888;
    font-size: 16px;
    line-height: 18px;
    transition: color 0.2s;
}

.site-header .topbar-list a:hover {
    color: #ffffff;
}

.site-header [hidden] {
    display: none !important;
}

.site-header [data-site-auth] {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
}

.site-auth-placeholder,
.site-auth-email,
.site-auth-login,
.site-auth-logout,
.site-auth-retry {
    color: #888888;
    font-size: 14px;
    line-height: 18px;
}

.site-auth-email {
    display: inline-block;
    max-width: 280px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    vertical-align: bottom;
}

.site-header .site-auth-icon {
    width: 14px;
    height: 16px;
    object-fit: contain;
}

.site-header .site-auth-logout,
.site-header .site-auth-retry {
    min-width: 44px;
    min-height: 32px;
    margin: -7px 0;
    padding: 0 6px;
    border: 0;
    background: transparent;
    color: #888888;
    font: inherit;
    line-height: 18px;
    cursor: pointer;
}

.site-header .site-auth-email:hover,
.site-header .site-auth-login:hover,
.site-header .site-auth-logout:hover,
.site-header .site-auth-retry:hover {
    color: #ffffff;
}

.site-header .site-auth-email:focus-visible,
.site-header .site-auth-login:focus-visible,
.site-header .site-auth-logout:focus-visible,
.site-header .site-auth-retry:focus-visible {
    outline: 2px solid #ffffff;
    outline-offset: 2px;
}

.site-header .topbar-icon {
    width: 14px;
    height: auto;
    max-height: 16px;
    object-fit: contain;
}

/* 顶栏购物车入口图标 (白色线稿, 适配 #222 深色顶栏) */
.site-header .topbar-cart-icon {
    width: 16px;
    height: 16px;
}

.site-header .topbar-search {
    display: flex;
    align-items: center;
    width: 240px;
    height: 30px;
    margin: 0;
    padding: 0 7px 0 14px;
    border: 1px solid #707070;
    border-radius: 15px;
}

.site-header .topbar-search input {
    flex: 1;
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    background: transparent;
    color: #ffffff;
    font-size: 14px;
}

.site-header .topbar-search input::placeholder {
    color: rgba(255, 255, 255, 0.55);
}

.site-header .topbar-search button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    margin: 0;
    padding: 0;
    border: 0;
    background: none;
    cursor: pointer;
}

.site-header .topbar-search button img {
    width: 16px;
    height: 16px;
}

.site-header .header-main {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    height: 100px;
    padding: 0 160px;
    background-color: #01477f;
    background-image: url("../img/v2/%E5%9B%BE%E5%B1%82%209@2x.png");
    background-position: center top;
    background-size: 1920px 800px;
}

.site-header .header-nav {
    display: flex;
    flex: 0 0 auto;
    justify-content: flex-end;
    transform: translate(1px, -1px);
}

.site-header .header-nav:has(.products-menu) {
    transform: none;
}

.site-header .header-logo {
    position: absolute;
    top: 0;
    left: 160px;
    z-index: 102;
    display: block;
    width: 200px;
    height: 110px;
    padding: 0;
    overflow: hidden;
    border-radius: 0 0 20px 20px;
    background: #175da9;
}

.site-header .header-logo img {
    display: none;
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: contain;
}

.site-header .header-logo::after {
    position: absolute;
    top: 25px;
    left: 30px;
    width: 141px;
    height: 60px;
    background: url("../about/illustrations/illustration-about-header-logo-01.png") center / 141px 60px no-repeat;
    content: "";
}

.site-header .nav-list {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 50px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.site-header .nav-list a {
    color: #dee7ee;
    font-size: 19.23px;
    font-weight: 400;
    line-height: 24px;
    letter-spacing: 0;
    text-transform: uppercase;
    transition: opacity 0.2s;
}

.site-header .nav-list a:hover {
    opacity: 0.75;
}

/* These controls are only exposed by the mobile drawer rules. */
.site-header .site-nav-submenu-toggle,
.site-header .site-nav-close,
.site-header .site-nav-scrim {
    display: none;
}

/* ABOUT 下拉菜单：坐标、尺寸和圆角以 index－其他菜单.png 的 1920px 画板为准。 */
.site-header .nav-item-about {
    position: relative;
}

/* 填补原图中导航文字与面板之间的透明间隙，保证鼠标移动到菜单时不丢失 hover。 */
.site-header .nav-item-about::after {
    position: absolute;
    top: 24px;
    left: 50%;
    width: 180px;
    height: 23px;
    content: "";
    transform: translateX(-50%);
}

.site-header .about-menu {
    position: absolute;
    top: 47px;
    left: 50%;
    z-index: 103;
    display: block;
    width: 180px;
    min-height: 180px;
    margin: 0;
    padding: 18px 0;
    overflow: hidden;
    border-radius: 10px;
    background: #ffffff;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.12);
    list-style: none;
    opacity: 0;
    pointer-events: none;
    transform: translateX(-50%) translateY(-4px);
    transition: opacity 0.16s ease, transform 0.16s ease, visibility 0.16s ease;
    visibility: hidden;
}

.site-header .nav-item-about:hover .about-menu,
.site-header .nav-item-about:focus-within .about-menu {
    opacity: 1;
    pointer-events: auto;
    transform: translateX(-50%) translateY(0);
    visibility: visible;
}

/* PRODUCTS 三级菜单：坐标按 index－三级菜单.png 的 1920px 画板锁定。 */
.site-header .nav-item-products {
    position: relative;
}

.site-header .nav-item-products::after {
    position: absolute;
    top: 24px;
    left: 50%;
    width: 120px;
    height: 22px;
    content: "";
    transform: translateX(-50%);
}

.site-header .products-menu {
    position: fixed;
    top: 128px;
    left: 0;
    z-index: 101;
    width: 1920px;
    height: 560px;
    overflow: hidden;
    background: #ffffff;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.08);
    opacity: 0;
    pointer-events: none;
    transform: translateY(-4px);
    transition: opacity 0.16s ease, transform 0.16s ease, visibility 0.16s ease;
    visibility: hidden;
}

.site-header .nav-item-products:hover .products-menu,
.site-header .nav-item-products:focus-within .products-menu {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
    visibility: visible;
}

.site-header .products-menu-inner {
    position: relative;
    width: 1920px;
    height: 560px;
    padding-top: 64px;
}

.site-header .products-menu-primary {
    position: absolute;
    top: 64px;
    left: 160px;
    width: 300px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.site-header .products-menu-item {
    position: relative;
    width: 300px;
    height: 62px;
    margin: 0;
    padding: 0;
}

/* 保留一级与二级菜单的 10px 视觉间距，同时避免鼠标经过空隙时丢失当前一级项的 hover。 */
.site-header .products-menu-item::after {
    position: absolute;
    top: 0;
    left: 300px;
    width: 10px;
    height: 62px;
    content: "";
}

.site-header .products-menu-primary-link {
    position: relative;
    display: flex;
    align-items: center;
    width: 300px;
    height: 50px;
    padding: 0 18px 0 18px;
    border: 1px solid transparent;
    background: transparent;
    color: #282828 !important;
    font-size: 18px;
    line-height: 24px;
    text-transform: none;
    transition: color 0.16s ease, background-color 0.16s ease, border-color 0.16s ease;
}

.site-header .products-menu-item:hover .products-menu-primary-link,
.site-header .products-menu-item:focus-within .products-menu-primary-link {
    border-color: #175da9;
    color: #175da9 !important;
    opacity: 1;
    outline: 0;
}

.site-header .products-menu-item:hover .products-menu-primary-link,
.site-header .products-menu-item:focus-within .products-menu-primary-link {
    background: url("../products-selectlist/rectangle-products-menu-unselected@2x.png") 0 0 / 300px 50px no-repeat;
}

.site-header .products-menu-item:first-child .products-menu-primary-link {
    border-color: #175da9;
    background: url("../products-selectlist/rectangle-products-menu-unselected@2x.png") 0 0 / 300px 50px no-repeat;
    color: #175da9 !important;
    opacity: 1;
    outline: 0;
}

.site-header .products-menu-primary-icon {
    flex: 0 0 52px;
    width: 52px;
    height: 44px;
    align-self: center;
    margin-right: 8px;
    object-fit: contain;
    transform: translateY(var(--products-icon-offset-y, 0px));
}

/* 图标切图保留了不等量的透明安全留白，按可见图形中心补偿垂直位置。 */
.site-header .products-menu-item:nth-child(1) .products-menu-primary-icon {
    --products-icon-offset-y: 3px;
}

.site-header .products-menu-item:nth-child(2) .products-menu-primary-icon {
    --products-icon-offset-y: 5px;
}

.site-header .products-menu-item:nth-child(3) .products-menu-primary-icon {
    --products-icon-offset-y: 8px;
}

.site-header .products-menu-item:nth-child(4) .products-menu-primary-icon {
    --products-icon-offset-y: 8px;
}

.site-header .products-menu-item:nth-child(5) .products-menu-primary-icon {
    --products-icon-offset-y: 9px;
}

.site-header .products-menu-item:nth-child(6) .products-menu-primary-icon {
    --products-icon-offset-y: 1px;
    transform: translateY(var(--products-icon-offset-y, 0px)) scale(1.4);
}

.site-header .products-menu-item:nth-child(7) .products-menu-primary-icon {
    --products-icon-offset-y: 2.5px;
    transform: translateY(var(--products-icon-offset-y, 0px)) scale(1.4);
}

.site-header .products-menu-indicator {
    display: none;
    flex: 0 0 8px;
    width: 8px;
    height: 11px;
    margin-left: auto;
    background: url("../products-selectlist/icon-products-menu-arrow@2x.png") center / 8px 11px no-repeat;
}

.site-header .products-menu-item:hover .products-menu-indicator,
.site-header .products-menu-item:focus-within .products-menu-indicator {
    display: block;
}

.site-header .products-menu-item:first-child .products-menu-indicator {
    display: block;
}

.site-header .products-menu-content {
    position: absolute;
    top: 0;
    left: 310px;
    display: none;
    width: 850px;
    height: 420px;
}

.site-header .products-menu-item:first-child .products-menu-content {
    display: flex;
}

.site-header .products-menu-item:hover .products-menu-content,
.site-header .products-menu-item:focus-within .products-menu-content {
    display: flex;
}

.site-header .products-menu-primary:has(> .products-menu-item:not(:first-child):hover) > .products-menu-item:first-child .products-menu-content,
.site-header .products-menu-primary:has(> .products-menu-item:not(:first-child):focus-within) > .products-menu-item:first-child .products-menu-content {
    display: none;
}

.site-header .products-menu-primary:has(> .products-menu-item:not(:first-child):hover) > .products-menu-item:first-child .products-menu-primary-link,
.site-header .products-menu-primary:has(> .products-menu-item:not(:first-child):focus-within) > .products-menu-item:first-child .products-menu-primary-link {
    border-color: transparent;
    background: transparent;
    color: #282828 !important;
}

.site-header .products-menu-primary:has(> .products-menu-item:not(:first-child):hover) > .products-menu-item:first-child .products-menu-indicator,
.site-header .products-menu-primary:has(> .products-menu-item:not(:first-child):focus-within) > .products-menu-item:first-child .products-menu-indicator {
    display: none;
}

.site-header .products-menu-secondary {
    flex: 0 0 380px;
    width: 380px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.site-header .products-menu-secondary li {
    width: 380px;
    height: 62px;
    margin: 0;
}

.site-header .products-menu-secondary a {
    display: flex;
    align-items: center;
    width: 380px;
    height: 50px;
    padding: 0 20px;
    color: #282828 !important;
    font-size: 18px;
    line-height: 24px;
    text-transform: none;
    transition: color 0.16s ease, background-color 0.16s ease;
}

.site-header .products-menu-secondary li:first-child a,
.site-header .products-menu-secondary a:hover,
.site-header .products-menu-secondary a:focus-visible {
    background: url("../products-selectlist/rectangle-products-menu-selected@2x.png") 0 0 / 380px 50px no-repeat;
    color: #ffffff !important;
    opacity: 1;
    outline: 0;
}

.site-header .products-menu-previews {
    position: fixed;
    top: 64px;
    left: 880px;
    width: 480px;
    height: 330px;
    margin-left: 0;
}

.site-header .products-menu-preview {
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    flex-direction: column;
    width: 240px;
    height: 330px;
    overflow: hidden;
    border: 1px solid #dcdcdc;
    border-radius: 10px;
    background: #ffffff;
    color: #282828 !important;
    font-size: 17px;
    line-height: 22px;
    text-transform: none;
    opacity: 0;
    pointer-events: none;
    transform: translateY(4px);
    transition: opacity 0.16s ease, transform 0.16s ease;
}

.site-header .products-menu-preview:first-child {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
}

.site-header .products-menu-secondary:has(.products-menu-secondary-item:nth-child(2):hover) ~ .products-menu-previews .products-menu-preview:nth-child(2),
.site-header .products-menu-secondary:has(.products-menu-secondary-item:nth-child(2):focus-within) ~ .products-menu-previews .products-menu-preview:nth-child(2),
.site-header .products-menu-secondary:has(.products-menu-secondary-item:nth-child(3):hover) ~ .products-menu-previews .products-menu-preview:nth-child(3),
.site-header .products-menu-secondary:has(.products-menu-secondary-item:nth-child(3):focus-within) ~ .products-menu-previews .products-menu-preview:nth-child(3),
.site-header .products-menu-secondary:has(.products-menu-secondary-item:nth-child(4):hover) ~ .products-menu-previews .products-menu-preview:nth-child(4),
.site-header .products-menu-secondary:has(.products-menu-secondary-item:nth-child(4):focus-within) ~ .products-menu-previews .products-menu-preview:nth-child(4),
.site-header .products-menu-secondary:has(.products-menu-secondary-item:nth-child(5):hover) ~ .products-menu-previews .products-menu-preview:nth-child(5),
.site-header .products-menu-secondary:has(.products-menu-secondary-item:nth-child(5):focus-within) ~ .products-menu-previews .products-menu-preview:nth-child(5) {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
}

.site-header .products-menu-secondary:has(.products-menu-secondary-item:not(:first-child):hover) ~ .products-menu-previews .products-menu-preview:first-child,
.site-header .products-menu-secondary:has(.products-menu-secondary-item:not(:first-child):focus-within) ~ .products-menu-previews .products-menu-preview:first-child {
    opacity: 0;
    pointer-events: none;
    transform: translateY(4px);
}

.site-header .products-menu-secondary:has(.products-menu-secondary-item:not(:first-child):hover) li:first-child a,
.site-header .products-menu-secondary:has(.products-menu-secondary-item:not(:first-child):focus-within) li:first-child a {
    background: transparent;
    color: #282828 !important;
}

.site-header .products-menu-preview:hover,
.site-header .products-menu-preview:focus-visible {
    border-color: #175da9;
    color: #175da9 !important;
    opacity: 1;
    outline: 0;
}

.site-header .products-menu-preview img {
    display: block;
    width: 238px;
    height: 238px;
    object-fit: contain;
}

.site-header .products-menu-preview span {
    display: block;
    padding: 0 18px;
    text-align: center;
    transform: translateY(-2px);
}

.site-header .products-menu-discover {
    position: absolute;
    top: 64px;
    left: 1485px;
    display: flex;
    flex-direction: column;
    width: 240px;
    height: 410px;
    padding-left: 40px;
    border-left: 1px solid #dcdcdc;
}

.site-header .products-menu-discover strong {
    margin: -2px 0 36px;
    color: #282828;
    font-size: 22px;
    line-height: 28px;
}

.site-header .products-menu-discover a {
    display: block;
    height: 50px;
    color: #282828 !important;
    font-size: 18px;
    line-height: 24px;
    text-transform: none;
}

.site-header .products-menu-discover a:hover,
.site-header .products-menu-discover a:focus-visible {
    color: #175da9 !important;
    opacity: 1;
    outline: 0;
}

.site-header .about-menu-item {
    display: block;
    margin: 0;
    padding: 0;
}

.site-header .nav-list .about-menu-link {
    display: flex;
    align-items: center;
    width: 100%;
    height: 48px;
    padding: 0 12px 0 25px;
    color: #282828;
    font-size: 18px;
    font-weight: 400;
    line-height: 24px;
    text-transform: none;
    transition: background-color 0.16s ease, color 0.16s ease;
}

.site-header .nav-list .about-menu-link:hover,
.site-header .nav-list .about-menu-link:focus-visible {
    background: #f4f7fa;
    color: #175da9;
    opacity: 1;
    outline: 0;
}

.site-header .nav-list .about-menu-profile {
    color: #175da9;
}

.site-header .about-menu-indicator {
    display: none;
    flex: 0 0 24px;
    width: 24px;
    height: 28px;
    margin-left: auto;
    background: url("../about-selectlist/icons/icon-about-menu-indicator-01@2x.png") center / 24px 28px no-repeat;
}

/* Locations 与 Contact 页面沿用参考图的白色主导航；顶栏仍保持深色。 */
.bmi-locations-page .site-header .header-main,
.bmi-contact-page .site-header .header-main {
    background: #ffffff;
}

.bmi-locations-page .site-header .nav-list > li > a,
.bmi-contact-page .site-header .nav-list > li > a {
    color: #282828;
}

/* The header markup is shared; the active item is determined only by page context. */
.bmi-locations-page .site-header .nav-list > li:first-child > a,
.bmi-contact-page .site-header .nav-list > li:first-child > a {
    color: #175da9;
}

.bmi-brands-page .nav-list > li:nth-child(2) > a {
    color: #ffffff;
}

.bmi-brake-disc-page .nav-list li:nth-child(3) a {
    color: #ffffff;
}

.bmi-news-page .nav-list li:nth-child(5) a {
    color: #ffffff;
}

.bmi-news-detail-page .nav-list li:nth-child(5) a {
    color: #ffffff;
}

.bmi-career-page .nav-list li:nth-child(6) a {
    color: #ffffff;
}

.bmi-training-page .nav-list li:nth-child(7) a {
    color: #ffffff;
}

.site-header .nav-toggle {
    display: none;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 6px;
    width: 40px;
    height: 40px;
    margin: 0 20px 0 0;
    padding: 0;
    border: 0;
    background: none;
    cursor: pointer;
}

.site-header .nav-toggle span {
    display: block;
    width: 24px;
    height: 2px;
    background: #ffffff;
    transition: transform 0.25s, opacity 0.25s;
}

.site-footer {
    position: var(--site-footer-position, relative);
    top: var(--site-footer-top, auto);
    left: 0;
    width: 1920px;
    min-width: 0;
    height: 460px;
    margin: 0;
    padding: 0;
    background: #282828;
    color: #999999;
    font-family: "Lato", sans-serif;
    font-size: 17px;
    line-height: 20px;
    text-align: center;
}

.site-footer .footer-social {
    position: absolute;
    top: 56px;
    left: 822px;
    display: flex;
    gap: 25px;
    width: 275px;
    height: 50px;
    margin: 0;
    padding: 0;
    overflow-x: auto;
    overflow-y: hidden;
    white-space: nowrap;
}

.site-footer .footer-social > * {
    display: block;
    flex: 0 0 50px;
    width: 50px;
    height: 50px;
    overflow: visible;
    border-radius: 50%;
    transition: opacity 0.2s;
}

.site-footer .footer-social a:hover {
    opacity: 0.8;
}

.site-footer .footer-social a:focus-visible {
    outline: 2px solid #ffffff;
    outline-offset: -2px;
}

.site-footer .footer-social img {
    display: block;
    width: 50px;
    height: 50px;
    max-width: none;
}

.site-footer .footer-line {
    position: absolute;
    left: 0;
    width: 1920px;
    height: 20px;
    margin: 0;
    padding: 0;
    font-size: 17px;
    font-weight: 400;
    line-height: 20px;
    letter-spacing: 0;
    white-space: nowrap;
}

.site-footer .footer-line-copyright {
    top: 167px;
    color: #999999;
}

.site-footer .footer-line-contact {
    top: 213px;
    color: #dce2e6;
}

.site-footer .footer-line-address {
    top: 242px;
    color: #dce2e6;
}

.site-footer .footer-line a:hover {
    color: #ffffff;
}

.site-footer .footer-privacy {
    position: absolute;
    top: 301px;
    left: 0;
    display: block;
    width: 1920px;
    height: 20px;
    margin: 0;
    color: #dce2e6;
    font-size: 17px;
    font-weight: 400;
    line-height: 20px;
    text-decoration: none;
}

.site-footer .footer-badge {
    position: absolute;
    top: 340px;
    left: 907px;
    width: 106px;
    height: 50px;
    background: url("../about/images/image-about-footer-badge-01@2x.png") center / 106px 50px no-repeat;
}

.site-footer .footer-badge img {
    display: none;
}

.site-footer .footer-contact-fax,
.site-footer .footer-contact-separator-email {
    display: none;
}

/* CMS inner pages reuse the same markup in the normal document flow. */
.bmi-inner-page .site-header {
    position: relative;
    min-width: 1260px;
}

.bmi-inner-page .site-header .topbar {
    padding: 0;
}

.bmi-inner-page .site-header .topbar-list {
    width: 1170px;
    margin: 0 auto;
}

.bmi-inner-page .site-header .header-main {
    padding: 0 calc((100% - 1170px) / 2);
    background: #01477f;
}

.bmi-inner-page .site-header .header-logo {
    left: calc(50% - 585px);
}

.bmi-inner-page .site-header .nav-list {
    gap: 34px;
}

.bmi-inner-page .site-header .nav-list a {
    font-size: 16px;
    letter-spacing: 0;
}

.bmi-inner-page .site-footer {
    width: 100%;
    min-width: 1260px;
}

.bmi-inner-page .site-footer .footer-social {
    left: 50%;
    transform: translateX(-50%);
}

.bmi-inner-page .site-footer .footer-line,
.bmi-inner-page .site-footer .footer-privacy {
    width: 100%;
}

.bmi-inner-page .site-footer .footer-badge {
    left: 50%;
    transform: translateX(-50%);
}

/* 超宽桌面端固定画板始终保持 1920px；仅公共头尾背景延展到视口边缘。 */
@media (min-width: 1921px) {
    body:not(.bmi-inner-page) .fit-shell {
        overflow: visible;
    }

    body:not(.bmi-inner-page) .fit-box {
        overflow: visible;
    }

    body:not(.bmi-inner-page) .artboard {
        overflow: visible;
    }

    body:not(.bmi-inner-page) .site-header .topbar,
    body:not(.bmi-inner-page) .site-header .header-main,
    body:not(.bmi-inner-page) .site-footer {
        isolation: isolate;
    }

    /* 顶栏菜单需要覆盖后续的主导航层叠上下文。 */
    body:not(.bmi-inner-page) .site-header .topbar {
        position: relative;
        z-index: 2;
    }

    body:not(.bmi-inner-page) .site-header .topbar::before,
    body:not(.bmi-inner-page) .site-header .header-main::before,
    body:not(.bmi-inner-page) .site-footer::before {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 50%;
        z-index: 0;
        width: 100vw;
        content: "";
        pointer-events: none;
        transform: translateX(-50%);
    }

    body:not(.bmi-inner-page) .site-header .topbar::before {
        background: #222222;
    }

    body:not(.bmi-inner-page) .site-header .header-main::before {
        background: #01477f;
    }

    body:not(.bmi-inner-page) .site-footer::before {
        background: #282828;
    }

    body:not(.bmi-inner-page) .site-header .topbar-list,
    body:not(.bmi-inner-page) .site-header .header-nav {
        position: relative;
        z-index: 1;
    }

    /* 固定画板内容仍以 1920px 坐标定位；只有 Banner 图片延展至超宽视口。 */
    body:not(.bmi-inner-page) .about-hero,
    body:not(.bmi-inner-page) .brands-hero,
    body:not(.bmi-inner-page) .brake-disc-hero,
    body:not(.bmi-inner-page) .career-hero,
    body:not(.bmi-inner-page) .catalogue-hero,
    body:not(.bmi-inner-page) .crossings-hero,
    body:not(.bmi-inner-page) .search-hero,
    body:not(.bmi-inner-page) .news-detail-hero,
    body:not(.bmi-inner-page) .news-hero,
    body:not(.bmi-inner-page) .privacy-policy-hero,
    body:not(.bmi-inner-page) .product-hero,
    body:not(.bmi-inner-page) .products-hero,
    body:not(.bmi-inner-page) .training-hero,
    body:not(.bmi-inner-page) .account-hero,
    body:not(.bmi-inner-page) .cart-hero,
    body:not(.bmi-inner-page) .myorder-hero,
    body:not(.bmi-inner-page) .od-hero,
    body:not(.bmi-inner-page) .profile-hero {
        overflow: visible;
    }

    body:not(.bmi-inner-page) .about-hero > img,
    body:not(.bmi-inner-page) .brands-hero > img,
    body:not(.bmi-inner-page) .brake-disc-hero > img,
    body:not(.bmi-inner-page) .career-hero > img,
    body:not(.bmi-inner-page) .catalogue-hero > img,
    body:not(.bmi-inner-page) .crossings-hero > img,
    body:not(.bmi-inner-page) .search-hero > img,
    body:not(.bmi-inner-page) .news-detail-hero > img,
    body:not(.bmi-inner-page) .news-hero > img,
    body:not(.bmi-inner-page) .privacy-policy-hero > img,
    body:not(.bmi-inner-page) .product-hero > img,
    body:not(.bmi-inner-page) .products-hero > img,
    body:not(.bmi-inner-page) .training-hero > img,
    body:not(.bmi-inner-page) .account-hero > img,
    body:not(.bmi-inner-page) .cart-hero > img,
    body:not(.bmi-inner-page) .myorder-hero > img,
    body:not(.bmi-inner-page) .od-hero > img,
    body:not(.bmi-inner-page) .profile-hero > img {
        width: 100vw;
        max-width: none;
        margin-left: calc((1920px - 100vw) / 2);
        object-fit: cover;
    }
}

@media (max-width: 1100px) {
    body:not(.bmi-fixed-artboard-page) .site-header .topbar {
        display: flex;
        height: 44px;
        padding: 0 16px;
    }

    body:not(.bmi-fixed-artboard-page) .site-header .topbar-list {
        width: 100%;
        margin: 0;
    }

    body:not(.bmi-fixed-artboard-page) .site-header .topbar-list > li:not([data-site-auth]) {
        display: none;
    }

    body:not(.bmi-fixed-artboard-page) .site-header [data-site-auth] {
        display: flex;
        width: 100%;
    }

    body:not(.bmi-fixed-artboard-page) .site-auth-email {
        max-width: calc(100vw - 132px);
    }

    body:not(.bmi-fixed-artboard-page) .site-header .header-main {
        height: 68px;
        padding: 0 16px;
        justify-content: flex-end;
    }

    body:not(.bmi-fixed-artboard-page) .site-header .header-logo {
        left: 16px;
        width: 128px;
        height: 68px;
        border-radius: 0 0 8px 8px;
    }

    body:not(.bmi-fixed-artboard-page) .site-header .header-logo::after {
        top: 16px;
        left: 18px;
        width: 92px;
        height: 40px;
        background-size: 92px 40px;
    }

    body:not(.bmi-fixed-artboard-page) .site-header .nav-toggle {
        display: flex;
        margin: 0;
    }

    body:not(.bmi-fixed-artboard-page) .site-header .header-nav {
        position: absolute;
        top: 68px;
        right: 0;
        left: 0;
        display: none;
        width: 100%;
        padding: 8px 16px;
        background: #01477f;
        transform: none;
    }

    body:not(.bmi-fixed-artboard-page) .site-header.nav-open .header-nav {
        display: block;
    }

    body:not(.bmi-fixed-artboard-page) .site-header .nav-list {
        align-items: stretch;
        flex-direction: column;
        gap: 0;
        width: 100%;
    }

    body:not(.bmi-fixed-artboard-page) .site-header .nav-list a {
        display: block;
        padding: 10px 0;
        font-size: 16px;
    }

    body:not(.bmi-fixed-artboard-page) .site-header .nav-item-about .about-menu {
        position: static;
        width: 100%;
        min-height: 0;
        margin: 0;
        padding: 0 0 4px 16px;
        overflow: visible;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
        opacity: 1;
        pointer-events: auto;
        transform: none;
        visibility: visible;
    }

    body:not(.bmi-fixed-artboard-page) .site-header .nav-item-products::after {
        display: none;
    }

    body:not(.bmi-fixed-artboard-page) .site-header .nav-item-products .products-menu {
        position: static;
        width: 100%;
        height: auto;
        margin: 0;
        padding: 0 0 8px 16px;
        overflow: visible;
        background: transparent;
        box-shadow: none;
        opacity: 1;
        pointer-events: auto;
        transform: none;
        visibility: visible;
    }

    body:not(.bmi-fixed-artboard-page) .site-header .products-menu-inner {
        width: 100%;
        height: auto;
        padding: 0;
    }

    body:not(.bmi-fixed-artboard-page) .site-header .products-menu-primary,
    body:not(.bmi-fixed-artboard-page) .site-header .products-menu-content,
    body:not(.bmi-fixed-artboard-page) .site-header .products-menu-discover {
        position: static;
        display: block;
        width: 100%;
        height: auto;
        margin: 0;
        padding: 0;
        border: 0;
    }

    body:not(.bmi-fixed-artboard-page) .site-header .products-menu-item {
        width: 100%;
        height: auto;
    }

    body:not(.bmi-fixed-artboard-page) .site-header .products-menu-primary-link,
    body:not(.bmi-fixed-artboard-page) .site-header .products-menu-secondary a,
    body:not(.bmi-fixed-artboard-page) .site-header .products-menu-discover a {
        width: 100%;
        height: auto;
        min-height: 40px;
        padding: 8px 0;
        border: 0;
        background: transparent;
        color: inherit;
        font-size: 15px;
    }

    body:not(.bmi-fixed-artboard-page) .site-header .products-menu-primary-icon,
    body:not(.bmi-fixed-artboard-page) .site-header .products-menu-indicator,
    body:not(.bmi-fixed-artboard-page) .site-header .products-menu-previews {
        display: none;
    }

    body:not(.bmi-fixed-artboard-page) .site-header .products-menu-secondary {
        padding-left: 16px;
    }

    body:not(.bmi-fixed-artboard-page) .site-header .products-menu-discover strong {
        display: none;
    }

    body:not(.bmi-fixed-artboard-page) .site-header .nav-item-about::after {
        display: none;
    }

    body:not(.bmi-fixed-artboard-page) .site-header .nav-list .about-menu-link {
        height: auto;
        padding: 8px 0;
        color: inherit;
        font-size: 15px;
    }

    body:not(.bmi-fixed-artboard-page) .site-header .about-menu-indicator {
        display: none;
    }

    /* Locations 与 Contact 页面在窄屏仍保持参考图的白色主导航。 */
    .bmi-locations-page:not(.bmi-fixed-artboard-page) .site-header .header-main,
    .bmi-contact-page:not(.bmi-fixed-artboard-page) .site-header .header-main,
    .bmi-locations-page:not(.bmi-fixed-artboard-page) .site-header .header-nav,
    .bmi-contact-page:not(.bmi-fixed-artboard-page) .site-header .header-nav {
        background: #ffffff;
    }

    .bmi-locations-page:not(.bmi-fixed-artboard-page) .site-header .nav-toggle span,
    .bmi-contact-page:not(.bmi-fixed-artboard-page) .site-header .nav-toggle span {
        background: #ffffff;
    }
}
