/* ==========================================================================
   字体（Fonts）—— 全站统一引入与回退方案
   正文字体：Inter（Inter-Regular 400 常规 / Inter-Bold 700 加粗）
   标题字体：Geely（GEELY Bold，用于各页首屏 hero 大标题）
   回退顺序：Inter/Geely -> HarmonyOS -> Lexend -> 系统无衬线
   ========================================================================== */

/* ---- 正文字体：Inter ---- */
@font-face {
    font-family: 'Inter';
    src: url('../font/Inter-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Inter';
    src: url('../font/Inter-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

/* ---- 首屏标题字体：Geely ---- */
@font-face {
    font-family: 'Geely';
    src: url('../font/GEELY Bold 20230926-kern.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

/* ---- 回退字体：保留原 HarmonyOS ---- */
/* @font-face {
    font-family: 'HarmonyOS';
    src: url('../font/HARMONYOS.TTF');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'HarmonyOS';
    src: url('../font/HARMONYOS-Black.ttf');
    font-weight: bold;
    font-style: normal;
} */

:root {
    /* 正文（含加粗）：Inter Regular / Bold */
    --xh-font-body: 'Inter', 'HarmonyOS', 'Lexend', -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, Helvetica, sans-serif;
    /* 各页首屏 hero 大标题：Geely Bold */
    --xh-font-title: 'Geely', 'Inter', 'HarmonyOS', 'Lexend', -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, Helvetica, sans-serif;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: var(--xh-font-body);
    font-size: 16px;
    line-height: 1.6;
    color: #333;
    background: #fff;
    min-height: 100vh;
}

html {
    overflow-x: hidden;
    scroll-behavior: smooth;
}
/* wow.js 动画元素初始样式 - 修复滚动到底部出现空白的问题 */
.wow {
    visibility: hidden;
    overflow: hidden;
}

a {
    text-decoration: none;
    color: inherit;
}

ul {
    list-style: none;
}

img {
    max-width: 100%;
    height: auto;
}

/* xh-index-hero */
.xh-index-hero { position: relative; min-height: 50.625rem; height: 100vh; max-height: 67.5rem; overflow: hidden; color: #fff; background: #081726; isolation: isolate; z-index: 999;}
.xh-index-banner-swiper { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 0; }
.xh-index-banner-slide { position: relative; width: 100%; height: 100%; overflow: hidden; }
.xh-index-banner-slide:not(.swiper-slide-active) .xh-index-hero-copy { visibility: hidden; }
.xh-index-banner-swiper:not(.swiper-container-initialized) .swiper-slide:first-child .xh-index-hero-copy { visibility: visible; }
.xh-index-banner-media, .xh-index-banner-media img { display: block; width: 100%; height: 100%; }
.xh-index-banner-media img { object-fit: cover; object-position: center; }
.xh-index-banner-overlay { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(4, 17, 30, .7), rgba(4, 17, 30, .2) 55%, rgba(4, 17, 30, .04)); }
.xh-index-banner-fallback { position: absolute; inset: 0; background: url('../images/4001db42-96ba-47bc-8f6f-2afe91632d32.png') center / cover no-repeat; }
.xh-index-banner .xh-index-hero-copy { z-index: 2; width: min(43.75rem, calc(100% - 4rem)); }
.xh-index-banner .xh-index-hero-title { white-space: normal; overflow-wrap: anywhere; font-size: 3.5rem; }
.xh-index-banner .xh-index-hero-description { white-space: pre-line; overflow-wrap: anywhere; }
.xh-index-banner-pagination { left: 6.25rem !important; right: auto !important; bottom: 1.8rem !important; width: auto !important; display: flex; gap: .6rem; }
.xh-index-banner-pagination .swiper-pagination-bullet { width: 1.75rem; height: .18rem; margin: 0 !important; border-radius: 0; background: rgba(255,255,255,.55); opacity: 1; }
.xh-index-banner-pagination .swiper-pagination-bullet-active { background: #2f80ff; }
.xh-index-banner-pagination.swiper-pagination-lock { display: none; }
.xh-index-banner-pagination .swiper-pagination-bullet { height: 2rem; border: 0; background: linear-gradient(rgba(255,255,255,.55), rgba(255,255,255,.55)) center / 100% .18rem no-repeat; cursor: pointer; }
.xh-index-banner-pagination .swiper-pagination-bullet-active { background-image: linear-gradient(#2f80ff, #2f80ff); }
.xh-index-banner-pagination .swiper-pagination-bullet:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
@media (max-width: 48rem) { .xh-index-banner .xh-index-hero-copy { width: auto; } .xh-index-banner .xh-index-hero-title { font-size: 2.6rem; } }
@media (max-width: 48rem) { .xh-index-banner-pagination { left: 1.25rem !important; bottom: 1.35rem !important; } }
.xh-index-hero-backdrop { position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(4, 17, 30, .58) 0%, rgba(4, 17, 30, .16) 52%, rgba(4, 17, 30, .04) 100%), url('../images/4001db42-96ba-47bc-8f6f-2afe91632d32.png') center center / cover no-repeat; transform: scale(1.01); animation: xh-index-hero-breathe 12s ease-in-out infinite alternate; }
.xh-index-header { position: absolute; top: 1.125rem; left: 5.625rem; right: 5.625rem; height: 5rem; display: flex; align-items: center; justify-content: flex-end; gap: 2.75rem; z-index: 2; }
.xh-index-header.is-scrolled { position: fixed; top: .75rem; height: 4.25rem; padding: 0 1.25rem; border: .0625rem solid rgba(255,255,255,.16); border-radius: .5rem; background: rgba(6,20,34,.86); box-shadow: 0 .5rem 1.25rem rgba(0,0,0,.2); backdrop-filter: blur(.75rem); z-index: 1000; }
.xh-index-header-logo { position: absolute; left: -4.8rem; top: -1.8rem; width: 18rem; height: 8.5rem; display: block; }
.xh-index-header-logo img { width: 100%; height: 100%; object-fit: contain; }
.xh-index-header-nav { display: flex; align-items: center; gap: 2.75rem; height: 100%; }
.xh-index-header-nav a { position: relative; color: rgba(255,255,255,.9); font-size: .875rem; font-weight: 500; line-height: 1.125rem; white-space: nowrap; text-transform: capitalize; transition: color .25s ease; }
.xh-index-header-nav a:hover, .xh-index-header-nav a.is-active { color: #fff; }
.xh-index-header-nav a.is-active::after { content: ''; position: absolute; left: 0; right: 0; bottom: -1.875rem; height: .125rem; background: #2f80ff; }
.xh-index-header-nav span { color: #c9d8e8; margin-left: .2rem; }
.xh-index-header-cta { display: inline-flex; align-items: center; justify-content: center; width: 13.125rem; height: 3.25rem; border-radius: .25rem; background: #2f80ff; color: #fff !important; font-size: .9375rem !important; font-weight: 700 !important; text-transform: uppercase !important; box-shadow: 0 .5rem .8rem rgba(0,0,0,.12); }
.xh-index-header-toggle { display: none; }
.xh-index-hero-copy { position: absolute; left: 6.25rem; top: 15.125rem; width: 43.75rem; }
.xh-index-hero-title { margin: 0 0 2.1875rem; font-family: var(--xh-font-title); font-size: clamp(3.5rem, 3.9vw, 4.6875rem); line-height: 1; font-weight: 700; letter-spacing: 0; text-transform: uppercase; white-space: nowrap; }
.xh-index-hero-description { margin-bottom: 1.375rem; color: #d4dfe8; font-size: 1.3125rem; line-height: 2rem; }
.xh-index-hero-description p { margin: 0; }
.xh-index-hero-actions { display: flex; gap: 1rem; }
.xh-index-hero-button { display: inline-flex; align-items: center; justify-content: center; width: 13.125rem; height: 3.25rem; border-radius: .25rem; color: #fff; font-size: .9375rem; font-weight: 700; text-transform: uppercase; transition: transform .25s ease, background .25s ease; }
.xh-index-hero-button:hover { transform: translateY(-.2rem); }
.xh-index-hero-button-primary { background: #2f80ff; }
.xh-index-hero-button-secondary { border: .125rem solid #fff; }
.xh-index-hero-button-secondary span { margin-left: .45rem; font-size: 1.15rem; }
.xh-index-hero-pagination { position: absolute; left: 6.25rem; bottom: 1.8rem; display: flex; align-items: center; gap: .7rem; font-size: .9375rem; font-weight: 500; }
.xh-index-hero-pagination i { width: 1.25rem; height: .0625rem; background: rgba(255,255,255,.7); }
.xh-index-hero-pagination .is-active { color: #2f80ff; }
.xh-index-hero-specs { position: absolute; left: 50%; bottom: 1rem; transform: translateX(-50%); width: 51.25rem; height: 6.625rem; display: flex; align-items: center; justify-content: center; gap: 1rem; padding: 1.125rem 1.5rem; border-radius: .75rem;  box-shadow: 0 .5rem .75rem rgba(0,0,0,.22); backdrop-filter: blur(.3rem); }
.xh-index-hero-spec { width: 14.6875rem; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; }
.xh-index-hero-spec strong { font-family: var(--xh-font-title); font-size: 1.875rem; line-height: 2.25rem; font-weight: 700; }
.xh-index-hero-spec span { font-size: .75rem; line-height: 1.125rem; font-weight: 700; }
.xh-index-hero-spec-divider { width: .0625rem; height: 3.375rem; background: rgba(255,255,255,.18); }
@keyframes xh-index-hero-breathe { from { transform: scale(1.01); } to { transform: scale(1.045); } }
@media (max-width: 75rem) { .xh-index-header { left: 3.5rem; right: 3.5rem; gap: 1.5rem; } .xh-index-header-logo { left: -3rem; } .xh-index-header-nav { gap: 1.25rem; } .xh-index-header-cta { width: 10.5rem; } .xh-index-hero-copy { left: 3.5rem; } .xh-index-hero-pagination { left: 3.5rem; } }
@media (max-width: 60rem) { .xh-index-header { left: 2rem; right: 2rem; } .xh-index-header-logo { left: -1.5rem; } .xh-index-header-nav a:not(.xh-index-header-cta) { font-size: .75rem; } .xh-index-hero-copy { left: 2rem; top: 13rem; } .xh-index-hero-specs { width: 46rem; } }
@media (max-width: 48rem) { .xh-index-hero { min-height: 47rem; height: 100svh; } .xh-index-header { top: .75rem; left: 1.25rem; right: 1.25rem; height: 4rem; } .xh-index-header-logo { left: -.9rem; top: -1.1rem; width: 10rem; height: 5.8rem; } .xh-index-header-toggle { display: flex; flex-direction: column; gap: .35rem; width: 2.5rem; height: 2.5rem; align-items: center; justify-content: center; border: 0; background: transparent; cursor: pointer; } .xh-index-header-toggle span { display: block; width: 1.4rem; height: .1rem; background: #fff; transition: transform .2s ease; } .xh-index-header-nav { position: absolute; top: 3.6rem; left: 0; right: 0; height: auto; padding: 1.25rem; display: none; flex-direction: column; align-items: stretch; gap: 1.1rem; border-radius: .35rem; background: rgba(8,23,38,.95); } .xh-index-header-nav.is-open { display: flex; } .xh-index-header-nav a { font-size: .875rem !important; } .xh-index-header-nav a.is-active::after { display: none; } .xh-index-header-cta { width: 100%; } .xh-index-hero-copy { left: 1.25rem; right: 1.25rem; top: 11.5rem; width: auto; } .xh-index-hero-title { font-size: clamp(2.6rem, 11vw, 4rem); line-height: 1.02; margin-bottom: 1.35rem; white-space: normal; } .xh-index-hero-description { font-size: 1rem; line-height: 1.55; margin-bottom: 1.2rem; } .xh-index-hero-actions { flex-direction: column; gap: .7rem; } .xh-index-hero-button { width: min(13.125rem, 100%); height: 3rem; } .xh-index-hero-pagination { left: 1.25rem; bottom: 1.35rem; font-size: .8rem; } .xh-index-hero-specs { bottom: 4.5rem; width: calc(100% - 2.5rem); height: auto; min-height: 5.2rem; gap: .3rem; padding: .8rem .35rem; } .xh-index-hero-spec { width: 33%; } .xh-index-hero-spec strong { font-size: 1.05rem; line-height: 1.5rem; } .xh-index-hero-spec span { font-size: .55rem; line-height: .8rem; } .xh-index-hero-spec-divider { height: 2.3rem; } }

/* xh-index-models */
.xh-index-models { padding: 2.625rem 5.75rem 2rem; color: #fff; background: #081726; }
.xh-index-section-heading { display: flex; align-items: center; justify-content: space-between; gap: 2rem; }
.xh-index-section-title { margin: 0; color: #0d1724; font-size: 1.75rem; line-height: 2.125rem; font-weight: 700; text-transform: uppercase; }
.xh-index-section-heading > a { color: #0d1724; font-size: .9375rem; font-weight: 700; text-transform: uppercase; }
.xh-index-models .xh-index-section-title, .xh-index-models .xh-index-section-heading > a { color: #fff; }
.xh-index-models-list { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 1.5rem; }
.xh-index-models-item { position: relative; min-height: 14.5rem; display: flex; flex-direction: column; align-items: center; text-align: center; padding: 0 1rem 1rem; }
.xh-index-models-item::after { content: ''; position: absolute; left: 50%; bottom: 0; width: 0; height: .1875rem; background: #2f80ff; transform: translateX(-50%); transition: width .25s ease; }
.xh-index-models-item.is-active::after, .xh-index-models-item:hover::after { width: 6.875rem; }
.xh-index-models-item img { width: 15rem; height: 9.375rem; object-fit: contain; transition: transform .3s ease; }
.xh-index-models-item:hover img { transform: translateY(-.35rem) scale(1.04); }
.xh-index-models-title { margin: -.3rem 0 .15rem; color: #fff; font-size: .9375rem; font-weight: 700; }
.xh-index-models-copy { color: #afc0cf; font-size: .75rem; line-height: 1.25rem; }.xh-index-models-copy p { margin: 0; }

/* xh-index-e5 */
.xh-index-e5 { position: relative; min-height: 40rem; overflow: hidden; background: #f5f8fb; }.xh-index-e5-backdrop { position: absolute; inset: 0;  }.xh-index-e5-content { position: relative; width: 41.125rem; padding: 6.125rem 0 0 6.25rem; color: #0d1724; }.xh-index-e5-title { margin: 0; font-size: 4.6875rem; line-height: 1; font-weight: 700; text-transform: uppercase; }.xh-index-e5-subtitle { margin-top: .55rem; color: #64748b; font-size: 1.875rem; }.xh-index-e5-subtitle p, .xh-index-e5-stats p { margin: 0; }.xh-index-e5-stats { display: flex; gap: 2.1rem; margin-top: 4.65rem; }.xh-index-e5-stats > div { min-width: 9rem; padding-left: .8rem; border-left: .0625rem solid #aab7c5; }.xh-index-e5-stats strong { display: block; font-size: 1.6875rem; line-height: 1.6; }.xh-index-e5-stats span { color: #64748b; font-size: .75rem; }.xh-index-e5-button, .xh-index-cta a { display: inline-flex; width: 13.75rem; height: 3.25rem; align-items: center; justify-content: center; border-radius: .25rem; background: #2f80ff; color: #fff; font-size: .9375rem; font-weight: 700; text-transform: uppercase; }.xh-index-e5-button { margin-top: 10.3rem; }

/* xh-index-featured */
.xh-index-featured { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.375rem; padding: 2.1875rem 5.75rem; background: #f5f8fb; }.xh-index-featured-card { position: relative; height: 21.25rem; overflow: hidden; border: .0625rem solid #e6ecf2; border-radius: .625rem; color: #fff; }.xh-index-featured-card > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }.xh-index-featured-card:hover > img { transform: scale(1.045); }.xh-index-featured-card::after { content: ''; position: absolute; inset: 0; width: 40%; background: linear-gradient(90deg, rgba(3,4,4,.76), transparent); }.xh-index-featured-card > div { position: relative; z-index: 1; width: 19rem; padding: 2.5rem; }.xh-index-featured-title { margin: 0 0 .55rem; font-size: 2.125rem; line-height: 1; font-weight: 700; text-transform: uppercase; }.xh-index-featured-copy { font-size: 1rem; line-height: 1.5; }.xh-index-featured-copy p { margin: 0; }.xh-index-featured-card a { display: inline-flex; align-items: center; justify-content: center; width: 12.5rem; height: 2.75rem; margin-top: 9.5rem; border: .0625rem solid rgba(255,255,255,.75); border-radius: .375rem; background: rgba(8,20,33,.3); font-size: .9375rem; font-weight: 700; text-transform: uppercase; }

/* xh-index-innovation */
.xh-index-innovation { position: relative; min-height: 28.125rem; margin: 0 5.75rem; overflow: hidden; border-radius: 1.5rem; color: #fff; background: #05121d; }.xh-index-innovation-background { position: absolute; inset: 0; background: url('../images/figma-models/models-intelligence.png') center / cover no-repeat; }.xh-index-innovation-heading { position: relative; padding: 2.375rem 3rem 0; }.xh-index-innovation-title { margin: 0; font-size: 2rem; line-height: 2.4rem; text-transform: uppercase; }.xh-index-innovation-heading > div { color: #b7c6d4; font-size: .875rem; }.xh-index-innovation-heading p { margin: .35rem 0 0; }.xh-index-innovation-cards { position: relative; display: grid; grid-template-columns: repeat(4, 17.5rem); gap: 1.5rem; padding: 6rem 3rem 2.5rem; }.xh-index-innovation-cards article { height: 15.625rem; overflow: hidden; border: .0625rem solid rgba(97,168,235,.35); border-radius: 1rem; background: #0b2538; }.xh-index-innovation-cards img { display: block; width: 100%; height: 9.375rem; object-fit: cover; }.xh-index-innovation-card-title { margin: .75rem 1rem .35rem; font-size: 1rem; }.xh-index-innovation-cards article > div { margin: 0 1rem; color: #b9c8d5; font-size: .75rem; }.xh-index-innovation-cards p { margin: 0; }

/* xh-index-support */
.xh-index-support-service-icon { display: block; width: 3.75rem; height: 3.75rem; margin: 0 auto .25rem; object-fit: contain; }
.xh-index-support { display: grid; grid-template-columns: 16.5rem minmax(0, 1fr) minmax(0, 35rem); gap: 1.25rem; padding: 4.75rem 5.75rem 2.2rem; background: #fff; }.xh-index-support-heading { display: flex; flex-direction: column; align-items: flex-start; }.xh-index-support-title { margin: 0; color: #0d1724; font-size: 2.125rem; line-height: 1.15; text-transform: uppercase; }.xh-index-support-heading > div { margin-top: .65rem; color: #64748b; font-size: .875rem; line-height: 1.45; }.xh-index-support-heading p { margin: 0; }.xh-index-support-heading a { margin-top: 1.75rem; color: #2f80ff; font-size: .9375rem; font-weight: 700; text-transform: uppercase; }.xh-index-support-services { min-width: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: center; }.xh-index-support-services article {text-align: center; min-width: 0; min-height: 9.56rem; padding: .25rem 1.2rem; border-right: .0625rem solid #d8e1e8; }.xh-index-support-services article:last-child { border: 0; }.xh-index-support-services b { color: #2f80ff; font-size: 1.35rem; }.xh-index-support-service-title { margin: .55rem 0; color: #0d1724; font-size: 1rem; }.xh-index-support-services article > div { color: #64748b; font-size: .8125rem; line-height: 1.35; }.xh-index-support-services p { margin: 0; }.xh-index-support-image { width: 100%; max-width: 35rem; height: 15.625rem; border-radius: .75rem; object-fit: cover; }

/* xh-index-news */
.xh-index-news { padding: 3.45rem 5.75rem 4.4rem; background: #f5f8fb; }.xh-index-news-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2.25rem; margin-top: 2.5rem; }.xh-index-news-grid article { overflow: hidden; border: .0625rem solid #e6ecf2; border-radius: .75rem; background: #fff; }.xh-index-news-grid img { width: 100%; height: 12.5rem; object-fit: cover; }.xh-index-news-grid time { display: block; margin: 1rem 1.35rem .5rem; color: #64748b; font-size: .75rem; text-transform: uppercase; }.xh-index-news-title { min-height: 3rem; margin: 0 1.35rem .25rem; color: #0d1724; font-size: 1.1875rem; line-height: 1.35; }.xh-index-news-grid article > div { min-height: 2.5rem; margin: 0 1.35rem; color: #64748b; font-size: .8125rem; }.xh-index-news-grid p { margin: 0; }.xh-index-news-grid a { display: block; margin: .45rem 1.35rem 1.1rem; color: #2f80ff; font-size: .9375rem; font-weight: 700; text-transform: uppercase; }

/* xh-index-faq */
.xh-index-faq { padding: 2.8rem 5.75rem 1.1rem; background: #f5f8fb; }.xh-index-faq-list { margin-top: 1.8rem; }.xh-index-faq-list article { margin-bottom: .6rem; overflow: hidden; border: .0625rem solid #e6ecf2; border-radius: .375rem; background: #fff; }.xh-index-faq-list button { width: 100%; min-height: 3.5rem; display: flex; align-items: center; justify-content: space-between; padding: 0 1.1rem; border: 0; background: none; color: #0d1724; font-family: inherit; font-size: .9375rem; font-weight: 500; text-align: left; cursor: pointer; }.xh-index-faq-list button span { font-size: 1.4rem; font-weight: 400; }.xh-index-faq-list article > div { display: none; padding: 0 1.1rem 1rem; color: #64748b; font-size: .8125rem; }.xh-index-faq-list article.is-open > div { display: block; }.xh-index-faq-list p { margin: 0; }

/* xh-index-faq 卡片视觉 — 对齐 BOOK A TEST DRIVE 的 Find Quick Answers（本页问题为文本节点，故图标用 button > span 选中） */
.xh-index-faq .xh-index-faq-list article { margin-bottom: 1.125rem; border-color: #d6e0eb; border-radius: .25rem; transition: border-color .25s ease; }
.xh-index-faq .xh-index-faq-list article:last-child { margin-bottom: 0; }
.xh-index-faq .xh-index-faq-list article:hover, .xh-index-faq .xh-index-faq-list article.is-open { border-color: #b9cde6; }
.xh-index-faq .xh-index-faq-list button { min-height: 4.25rem; padding: 0 1.875rem 0 1.375rem; transition: color .25s ease; }
.xh-index-faq .xh-index-faq-list button > span { font-size: 1.5rem; font-weight: 600; line-height: 1; transition: color .25s ease; }
.xh-index-faq .xh-index-faq-list button:hover { color: #2f80ff; }
.xh-index-faq .xh-index-faq-list article.is-open button > span { color: #2f80ff; }
.xh-index-faq .xh-index-faq-list article > div { padding: 0 1.875rem 1.25rem 1.375rem; color: #61738c; font-size: .8125rem; line-height: 1.5rem; }

/* xh-index-cta */
.xh-index-cta { position: relative; min-height: 20rem; overflow: hidden; color: #fff; }.xh-index-cta-background { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(8,23,38,.5), transparent), url('../images/05fb9257-0024-4ee0-988f-4165a677dcd8.png') center / cover no-repeat; }.xh-index-cta > div:last-child { position: relative; padding: 4.5rem 6.25rem; }.xh-index-cta-title { margin: 0; font-size: 2.125rem; text-transform: uppercase; }.xh-index-cta > div:last-child > div { margin: .7rem 0 2.2rem; color: #c6d4e0; font-size: 1.0625rem; }.xh-index-cta p { margin: 0; }

/* xh-index-footer */
.xh-index-footer-links > div:first-child a { text-transform: uppercase; }
.xh-index-footer { display: grid; grid-template-columns: 26rem 1fr; gap: 6rem; padding: 3.5rem 5.75rem 2.5rem; color: #b7c5d2; background: #081726; }.xh-index-footer-brand img { width: 18rem; height:8.5rem; margin: -2.2rem 0 -2rem -4.5rem; object-fit: contain; }.xh-index-footer-brand > div { max-width: 18.75rem; font-size: .875rem; line-height: 1.45; }.xh-index-footer-brand p { margin: 0; }.xh-index-footer-social { display: flex; gap: .75rem; margin-top: 1.1rem; }.xh-index-footer-social a { width: 2.125rem; height: 2.125rem; display: flex; align-items: center; justify-content: center; border-radius: .25rem; color: #fff; font-size: 1.25rem; font-weight: 700; }.xh-index-footer-social img { display: block; width: 2.125rem; height: 2.125rem; object-fit: contain; }.xh-index-footer-social .iconfont { font-size: 1.35rem; }.xh-index-footer-links { display: grid; grid-template-columns: repeat(3, 1fr); }.xh-index-footer-links > div { display: flex; flex-direction: column; gap: .8rem; }.xh-index-footer-title { margin: 0 0 .8rem; color: #fff; font-size: .875rem; text-transform: uppercase; }.xh-index-footer-links a { color: #b7c5d2; font-size: .8125rem; }.xh-index-footer-bottom { grid-column: 1 / -1; display: flex; justify-content: space-between; padding-top: 1.9rem; border-top: .0625rem solid #284052; color: #8fa1b2; font-size: .75rem; }.xh-index-footer-bottom div { display: flex; gap: 1.25rem; }

/* xh-index-motion */
.xh-index-reveal { transform: translateY(1.25rem); transition: transform .65s ease; }
.xh-index-reveal.is-visible { transform: none; }

/* xh-index-accessibility */
:where(a, button):focus-visible { outline: .125rem solid #2f80ff; outline-offset: .2rem; }
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
    .xh-index-reveal { opacity: 1; transform: none; }
}

/* GEELY Zambia News & Events / Figma node 301:1513 */
.xh-news-page { --news-ink: #0b1b2a; --news-muted: #617589; --news-blue: #2f80ff; --news-bg: #f6f9fc; --news-line: #d9e2ea; overflow: hidden; color: var(--news-ink); background: var(--news-bg); font-family: var(--xh-font-body); }
.xh-news-page *, .xh-news-page *::before, .xh-news-page *::after { box-sizing: border-box; }
.xh-news-page a { color: inherit; }
.xh-news-page h1, .xh-news-page h2, .xh-news-page p { margin-top: 0; }
.xh-news-hero { position: relative; height: 820px; min-height: 820px; overflow: hidden; color: #fff; background: #071d31; }
.xh-news-hero-backdrop { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(6,26,45,.9) 0%, rgba(6,26,45,.48) 48%, rgba(6,26,45,.06) 100%), url('../images/contact/hero.png') center / cover no-repeat; }
.xh-news-header { top: 18px; left: 100px; right: 100px; height: 80px; }
.xh-news-header .xh-index-header-logo { left: -77px; top: -29px; width: 290px; height: 164px; }
.xh-news-header .xh-index-header-nav { gap: 42px; }
.xh-news-header .xh-index-header-nav a { font-size: 13px; }
.xh-news-header .xh-index-header-nav a.is-active::after { left: 50%; right: auto; bottom: -24px; width: 104px; transform: translateX(-50%); background: var(--news-blue); }
.xh-news-header .xh-index-header-cta { width: 210px; height: 52px; border-radius: 4px; font-size: 12px !important; }
.xh-news-hero-copy { position: absolute; z-index: 1; top: 250px; left: 100px; width: 720px; }
.xh-news-hero-copy h1 { margin-bottom: 0; font-family: var(--xh-font-title); font-size: 72px; font-weight: 700; line-height: 1.14; }
.xh-news-hero-subtitle { margin: 0 0 12px; font-size: 27px; font-weight: 600; line-height: 1.5; }
.xh-news-hero-description { max-width: 610px; margin: 0; color: #d5e2ed; font-size: 18px; line-height: 1.62; }
.xh-news-button { display: inline-flex; align-items: center; justify-content: center; width: 220px; height: 50px; margin-top: 34px; border: 0; border-radius: 4px; color: #fff !important; background: var(--news-blue); font-size: 13px; font-weight: 600; letter-spacing: .02em; text-decoration: none; transition: transform .2s ease, background-color .2s ease; }
.xh-news-button:hover { transform: translateY(-2px); background: #176de9; }
.xh-news-content { padding: 0 100px 80px; background: var(--news-bg); }
.xh-news-categories { position: relative; z-index: 2; display: grid; grid-auto-flow: column; grid-auto-columns: minmax(160px, 1fr); width: 100%; min-height: 182px; margin: -70px auto 63px; border-radius: 14px; overflow-x: auto; background: #fff; box-shadow: 0 10px 28px rgba(0,0,0,.1); }
.xh-news-categories a { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; min-width: 0; padding: 35px 15px 0; border: 0; border-right: 1px solid var(--news-line); color: #26384a; background: transparent; font: inherit; text-decoration: none; cursor: pointer; }
.xh-news-categories a:last-child { border-right: 0; }
.xh-news-categories a::after { content: ''; position: absolute; right: 20px; bottom: 37px; left: 20px; height: 3px; background: transparent; }
.xh-news-categories a.is-active { color: var(--news-blue); }
.xh-news-categories a.is-active::after { background: var(--news-blue); }
.xh-news-categories img { display: block; width: 44px; height: 44px; margin-bottom: 19px; object-fit: contain; }
.xh-news-categories span { display: block; font-size: 13px; font-weight: 600; line-height: 25px; text-align: center; white-space: nowrap; }
.xh-news-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 400px)); justify-content: space-between; gap: 34px 30px; }
.xh-news-card { min-width: 0; overflow: hidden; border: 1px solid #dce5ec; border-radius: 10px; background: #fff; }
.xh-news-card[hidden] { display: none; }
.xh-news-card > img { display: block; width: 100%; height: 280px; border-radius: 10px 10px 0 0; object-fit: cover; }
.xh-news-card:nth-child(3) > img { object-position: 76% center; }
.xh-news-card-body { min-height: 158px; padding: 17px 19px 18px; }
.xh-news-card h2 { min-height: 29px; margin: 0 0 17px; color: var(--news-ink); font-size: 20px; font-weight: 600; line-height: 1.45; }
.xh-news-card p { min-height: 22px; margin: 0; color: var(--news-muted); font-size: 14px; line-height: 1.55; }
.xh-news-card a { display: inline-block; margin-top: 30px; color: var(--news-blue); font-size: 13px; font-weight: 600; text-decoration: none; }
.xh-news-card a:hover { text-decoration: underline; }
.xh-news-empty { padding: 76px 24px; border: 1px dashed var(--news-line); border-radius: 10px; color: var(--news-muted); background: #fff; font-size: 15px; line-height: 1.6; text-align: center; }
.xh-news-pager { display: flex; align-items: center; justify-content: center; gap: 12px; margin-top: 56px; }
.xh-news-pager-pages { display: inline-flex; align-items: center; gap: 8px; }
.xh-news-pager-num { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; height: 44px; padding: 0 10px; border: 1px solid var(--news-line); border-radius: 4px; color: var(--news-ink); background: #fff; font-size: 13px; font-weight: 600; text-decoration: none; transition: border-color .2s ease, color .2s ease, background-color .2s ease; }
.xh-news-pager-num:hover { border-color: var(--news-blue); color: var(--news-blue); }
.xh-news-pager-num.is-active { border-color: var(--news-blue); color: #fff; background: var(--news-blue); }
.xh-news-pager-gap { padding: 0 2px; color: var(--news-muted); font-size: 13px; }
.xh-news-pager-arrow { display: inline-flex; align-items: center; justify-content: center; min-width: 96px; height: 44px; padding: 0 18px; border: 1px solid var(--news-line); border-radius: 4px; color: var(--news-ink); background: #fff; font-size: 12px; font-weight: 600; letter-spacing: .08em; text-decoration: none; transition: border-color .2s ease, color .2s ease; }
.xh-news-pager-arrow:hover { border-color: var(--news-blue); color: var(--news-blue); }
.xh-news-pager-arrow.is-disabled { border-color: #e6edf3; color: #a9b7c5; background: #f4f8fb; cursor: not-allowed; }
.xh-news-inquiry { position: relative; display: flex; align-items: center; min-height: 240px; margin-top: 63px; overflow: hidden; border-radius: 12px; color: #fff; background: #071d31; }
.xh-news-inquiry-background { position: absolute; inset: 0; background: url('../images/news/contact-cta.png') center / cover no-repeat; }
.xh-news-inquiry-copy { position: relative; z-index: 1; padding-left: 50px; }
.xh-news-inquiry-copy p { margin-bottom: 17px; font-size: 15px; font-weight: 600; }
.xh-news-inquiry-copy h2 { margin-bottom: 15px; font-size: 28px; line-height: 1.2; }
.xh-news-inquiry-copy span { display: block; color: #c7d6e4; font-size: 15px; line-height: 1.6; }
.xh-news-inquiry-button { position: absolute; z-index: 1; right: 0; display: inline-flex; align-items: center; justify-content: center; width: 300px; height: 70px; border-radius: 4px; color: #fff; background: var(--news-blue); font-size: 14px; font-weight: 600; text-decoration: none; transform: translateX(-50%); }
.xh-news-inquiry-button:hover { background: #176de9; }
.xh-news-journey { position: relative; height: 320px; overflow: hidden; color: #fff; background: #071d31; }
.xh-news-journey-background { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(5,25,43,.7), rgba(5,25,43,.1)), url('../images/figma-models/models-cta.png') center / cover no-repeat; }
.xh-news-journey-copy { position: relative; z-index: 1; padding: 62px 100px 0; }
.xh-news-journey-copy h2 { margin-bottom: 8px; font-size: 24px; line-height: 1.25; }
.xh-news-journey-copy p { max-width: 650px; margin: 0; color: #d5e2ed; font-size: 14px; line-height: 1.6; }
.xh-news-journey-copy .xh-news-button { margin-top: 22px; }
.xh-news-footer { min-height: 520px; padding: 70px 100px 28px; }
.xh-news-footer .xh-index-footer-brand img { width: 180px; height: auto; margin: -30px 0 20px -16px; }
.xh-news-footer .xh-index-footer-brand > div { max-width: 300px; color: #b7c5d2; font-size: 13px; line-height: 1.6; }
.xh-news-footer .xh-index-footer-social { gap: 8px; margin-top: 25px; }
.xh-news-footer .xh-index-footer-social a { width: 34px; height: 34px; }
.xh-news-footer .xh-index-footer-links { gap: 44px; }
.xh-news-footer .xh-index-footer-title { margin-bottom: 17px; color: #fff; font-size: 12px; letter-spacing: .1em; }
.xh-news-footer .xh-index-footer-links a { font-size: 13px; }
.xh-news-footer .xh-index-footer-bottom { margin-top: 100px; padding-top: 28px; font-size: 12px; }
/* ---- 新闻详情页（news-detail.html）---- */
.xh-news-detail-hero { height: 620px; min-height: 620px; }
.xh-news-detail-backdrop { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(6,26,45,.94) 0%, rgba(6,26,45,.66) 52%, rgba(6,26,45,.32) 100%), var(--xh-news-detail-cover, none) center / cover no-repeat, #071d31; }
.xh-news-detail-hero-copy { position: absolute; z-index: 1; top: 268px; left: 100px; width: 860px; }
.xh-news-detail-hero-copy h1 { margin: 0 0 22px; font-family: var(--xh-font-title); font-size: 48px; font-weight: 700; line-height: 1.2; }
.xh-news-breadcrumb { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; margin-bottom: 24px; color: #adc1d4; font-size: 12px; font-weight: 600; letter-spacing: .08em; }
.xh-news-breadcrumb a { color: #adc1d4; text-decoration: none; transition: color .2s ease; }
.xh-news-breadcrumb a:hover { color: #fff; }
.xh-news-detail-meta { display: flex; align-items: center; flex-wrap: wrap; gap: 14px; margin: 0; color: #cfdded; font-size: 14px; }
.xh-news-detail-meta a { color: var(--news-blue); font-weight: 600; text-decoration: none; }
.xh-news-detail-meta a:hover { text-decoration: underline; }
.xh-news-detail-meta-sep { width: 1px; height: 14px; background: rgba(255,255,255,.35); }
.xh-news-detail { padding: 63px 100px 80px; background: var(--news-bg); }
.xh-news-detail-inner { max-width: 880px; margin: 0 auto; }
.xh-news-detail-tags { display: flex; flex-wrap: wrap; gap: 10px; margin: 0 0 34px; padding: 0; list-style: none; }
.xh-news-detail-tags li { padding: 6px 14px; border: 1px solid var(--news-line); border-radius: 999px; color: var(--news-muted); background: #fff; font-size: 12px; font-weight: 600; }
.xh-news-detail-nav { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin-top: 46px; }
.xh-news-detail-nav-item { display: flex; flex-direction: column; gap: 8px; padding: 22px 26px; border: 1px solid var(--news-line); border-radius: 10px; color: inherit; background: #fff; text-decoration: none; transition: border-color .2s ease, transform .2s ease; }
.xh-news-detail-nav-item strong { color: var(--news-ink); font-size: 16px; font-weight: 600; line-height: 1.45; }
.xh-news-detail-nav-label { color: var(--news-muted); font-size: 11px; font-weight: 600; letter-spacing: .1em; }
.xh-news-detail-nav-item.is-next { align-items: flex-end; text-align: right; }
.xh-news-detail-nav-item.is-disabled { background: #f4f8fb; }
.xh-news-detail-nav-item.is-disabled strong { color: var(--news-muted); font-size: 14px; font-weight: 500; }
@media (hover: hover) { .xh-news-detail-nav-item:not(.is-disabled):hover { border-color: var(--news-blue); transform: translateY(-2px); } }
.xh-news-detail-back { display: inline-block; margin-top: 34px; color: var(--news-blue); font-size: 13px; font-weight: 600; text-decoration: none; }
.xh-news-detail-back:hover { text-decoration: underline; }
.xh-news-detail-related { max-width: 1290px; margin: 63px auto 0; }
.xh-news-detail-related-title { margin: 0 0 26px; color: var(--news-ink); font-family: var(--xh-font-title); font-size: 28px; font-weight: 700; }
.xh-news-detail-related-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 30px; }
.xh-news-article { padding: 46px 52px; border: 1px solid #dce5ec; border-radius: 12px; color: #34485c; background: #fff; font-size: 16px; line-height: 1.85; overflow-wrap: break-word; }
.xh-news-article > :first-child { margin-top: 0; }
.xh-news-article > :last-child { margin-bottom: 0; }
.xh-news-article p { margin: 0 0 22px; }
.xh-news-article h2 { margin: 40px 0 16px; color: var(--news-ink); font-family: var(--xh-font-title); font-size: 28px; font-weight: 700; line-height: 1.35; }
.xh-news-article h3 { margin: 34px 0 14px; color: var(--news-ink); font-size: 22px; font-weight: 600; line-height: 1.4; }
.xh-news-article h4 { margin: 28px 0 12px; color: var(--news-ink); font-size: 18px; font-weight: 600; line-height: 1.45; }
.xh-news-article a { color: var(--news-blue); text-decoration: underline; }
.xh-news-article a:hover { color: #176de9; }
.xh-news-article strong, .xh-news-article b { color: var(--news-ink); font-weight: 700; }
.xh-news-article ul, .xh-news-article ol { margin: 0 0 22px; padding-left: 24px; }
.xh-news-article li { margin-bottom: 10px; }
.xh-news-article li:last-child { margin-bottom: 0; }
.xh-news-article img { display: block; max-width: 100%; height: auto; margin: 30px auto; border-radius: 8px; }
.xh-news-article figure { margin: 30px 0; }
.xh-news-article figure img { margin: 0 auto; }
.xh-news-article figcaption { margin-top: 12px; color: var(--news-muted); font-size: 13px; line-height: 1.6; text-align: center; }
.xh-news-article blockquote { margin: 30px 0; padding: 18px 24px; border-left: 4px solid var(--news-blue); border-radius: 0 8px 8px 0; color: var(--news-ink); background: var(--news-bg); font-size: 17px; line-height: 1.75; }
.xh-news-article blockquote > :last-child { margin-bottom: 0; }
.xh-news-article hr { height: 1px; margin: 38px 0; border: 0; background: var(--news-line); }
.xh-news-article table { width: 100%; margin: 30px 0; border-collapse: collapse; font-size: 14px; }
.xh-news-article th, .xh-news-article td { padding: 12px 14px; border: 1px solid var(--news-line); text-align: left; }
.xh-news-article th { color: var(--news-ink); background: var(--news-bg); font-weight: 600; }
.xh-news-article iframe, .xh-news-article video { display: block; max-width: 100%; margin: 30px auto; border: 0; border-radius: 8px; }
.xh-news-article pre { margin: 0 0 22px; padding: 18px 20px; border-radius: 8px; overflow-x: auto; color: #e6edf3; background: var(--news-ink); font-size: 14px; line-height: 1.7; }
.xh-news-article code { padding: 2px 6px; border-radius: 4px; color: var(--news-ink); background: var(--news-bg); font-size: .92em; }
.xh-news-article pre code { padding: 0; color: inherit; background: transparent; }

@media (max-width: 1200px) {
  .xh-news-header { left: 56px; right: 56px; }
  .xh-news-header .xh-index-header-nav { gap: 20px; }
  .xh-news-header .xh-index-header-cta { width: 176px; }
  .xh-news-hero-copy { left: 56px; }
  .xh-news-content { padding-right: 56px; padding-left: 56px; }
  .xh-news-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); justify-content: initial; }
  .xh-news-inquiry-button { left: 50%; transform: translate(-50%, -50%); }
  .xh-news-journey-copy { padding-left: 56px; }
  .xh-news-footer { padding-right: 56px; padding-left: 56px; }
  .xh-news-detail-hero-copy { left: 56px; width: 700px; }
  .xh-news-detail-hero-copy h1 { font-size: 40px; }
  .xh-news-detail { padding-right: 56px; padding-left: 56px; }
  .xh-news-detail-related-grid { gap: 22px; }
}
@media (max-width: 768px) {
  .xh-news-hero { height: 680px; min-height: 680px; }
  .xh-news-header, .xh-news-header.is-scrolled { top: 12px; left: 20px; right: 20px; height: 58px; padding: 0 16px; }
  .xh-news-header .xh-index-header-logo, .xh-news-header.is-scrolled .xh-index-header-logo { left: -10px; top: -24px; width: 204px; height: 116px; }
  .xh-news-header .xh-index-header-nav { top: 58px; right: 0; left: 0; padding: 24px 22px; background: rgba(7,30,52,.97); }
  .xh-news-header .xh-index-header-nav a.is-active::after { display: none; }
  .xh-news-hero-copy { top: 190px; left: 24px; width: calc(100% - 48px); }
  .xh-news-hero-copy h1 { font-size: 52px; line-height: 1.15; }
  .xh-news-hero-subtitle { font-size: 21px; }
  .xh-news-hero-description { font-size: 14px; }
  .xh-news-content { padding: 0 16px 50px; }
  .xh-news-categories { grid-template-columns: repeat(5, minmax(120px, 1fr)); width: 100%; height: auto; min-height: 126px; margin-top: -36px; margin-bottom: 36px; overflow-x: auto; }
  .xh-news-categories a { padding-top: 20px; }
  .xh-news-categories a::after { right: 12px; bottom: 18px; left: 12px; }
  .xh-news-categories img { width: 32px; height: 32px; margin-bottom: 9px; }
  .xh-news-categories span { font-size: 11px; }
  .xh-news-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); justify-content: initial; gap: 16px; }
  .xh-news-card > img { height: 170px; }
  .xh-news-card-body { min-height: 164px; padding: 14px 13px 15px; }
  .xh-news-card h2 { min-height: 48px; margin-bottom: 9px; font-size: 16px; line-height: 1.4; }
  .xh-news-card p { min-height: 40px; font-size: 12px; }
  .xh-news-card a { margin-top: 15px; font-size: 11px; }
  .xh-news-empty { padding: 46px 18px; font-size: 13px; }
  .xh-news-pager { flex-wrap: wrap; gap: 8px; margin-top: 32px; }
  .xh-news-pager-arrow { min-width: 74px; height: 38px; padding: 0 12px; font-size: 11px; }
  .xh-news-pager-num { min-width: 38px; height: 38px; font-size: 12px; }
  .xh-news-inquiry { align-items: flex-start; flex-direction: column; min-height: 300px; margin-top: 36px; }
  .xh-news-inquiry-copy { padding: 42px 24px 0; }
  .xh-news-inquiry-copy h2 { font-size: 24px; }
  .xh-news-inquiry-copy span { font-size: 13px; }
  .xh-news-inquiry-button { position: relative; left: auto; width: calc(100% - 48px); height: 54px; margin: 28px 24px 0; transform: none; }
  .xh-news-journey { height: 300px; }
  .xh-news-journey-copy { padding: 54px 24px 0; }
  .xh-news-journey-copy h2 { font-size: 20px; }
  .xh-news-journey-copy p { font-size: 13px; }
  .xh-news-footer { grid-template-columns: 1fr; gap: 36px; min-height: 0; padding: 52px 24px 24px; }
  .xh-news-footer .xh-index-footer-links { grid-template-columns: repeat(2, 1fr); gap: 36px 20px; }
  .xh-news-footer .xh-index-footer-links > div:last-child { grid-column: 1 / -1; }
  .xh-news-footer .xh-index-footer-bottom { align-items: flex-start; flex-direction: column; gap: 14px; margin-top: 50px; }
  .xh-news-detail-hero { height: 560px; min-height: 560px; }
  .xh-news-detail-hero-copy { top: 180px; left: 24px; width: calc(100% - 48px); }
  .xh-news-detail-hero-copy h1 { font-size: 30px; }
  .xh-news-breadcrumb { gap: 7px; margin-bottom: 16px; font-size: 11px; }
  .xh-news-detail { padding: 38px 16px 50px; }
  .xh-news-detail-tags { margin-bottom: 22px; }
  .xh-news-article { padding: 24px 18px; border-radius: 10px; font-size: 15px; }
  .xh-news-article h2 { font-size: 22px; }
  .xh-news-article h3 { font-size: 18px; }
  .xh-news-detail-nav { grid-template-columns: 1fr; gap: 12px; margin-top: 32px; }
  .xh-news-detail-nav-item { padding: 18px 20px; }
  .xh-news-detail-nav-item.is-next { align-items: flex-start; text-align: left; }
  .xh-news-detail-related { margin-top: 40px; }
  .xh-news-detail-related-title { font-size: 22px; }
  .xh-news-detail-related-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
}
@media (max-width: 420px) {
  .xh-news-hero-copy h1 { font-size: 46px; }
  .xh-news-hero-subtitle { font-size: 18px; }
  .xh-news-grid { grid-template-columns: 1fr; }
  .xh-news-card > img { height: 210px; }
  .xh-news-detail-hero-copy h1 { font-size: 26px; }
  .xh-news-article { padding: 20px 14px; }
  .xh-news-detail-related-grid { grid-template-columns: 1fr; }
}
@media (max-width: 48rem) {
    .xh-index-header.is-scrolled { top: .5rem; left: .75rem; right: .75rem; height: 3.75rem; padding: 0 .75rem; }
}

/* xh-models-page */
.xh-models-page { background: #f5f8fb; color: #0d1724; }
/* 注意：position:relative + 非 auto 的 z-index 同样会创建层叠上下文，
   会把 fixed 的导航栏困在 hero 内。此处 z-index/isolation 均显式为 auto——
   同时抵消 .xh-index-hero（本页 hero 亦挂该类）的 z-index:999 与 isolation:isolate。
   压在 hero 上方的 .xh-models-selector 自带 z-index:2，无需 hero 提供层级。 */
.xh-models-hero { position: relative; z-index: auto; height: 54.375rem; min-height: 42rem; overflow: hidden; color: #fff; background: #081726; isolation: auto; }
.xh-models-hero-backdrop { position: absolute; inset: 0; z-index: 0; background: linear-gradient(90deg, rgba(4,17,30,.72) 0%, rgba(4,17,30,.25) 58%, rgba(4,17,30,.04) 100%), url('../images/figma-models/models-hero.png') center / cover no-repeat; }
/* 导航栏层级：hero 不再创建层叠上下文后，header 直接参与根层叠上下文，需显式抬高 */
.xh-models-page .xh-index-header { z-index: 1000; }
.xh-models-header { left: 6.25rem; right: 6.25rem; }
/* xh-index-header-models-trigger —— 首页 Models 二级菜单触发器
   设计基准：Figma「Models Mega Menu — Open」node 353:2，开启态 Models 为 #FFFFFF / Semi Bold 600，
   蓝色下划线位于文字下方 14px、宽度随文字（实测「Models」62px = 文字宽 + 8px 溢出）。 */
.xh-index-header-models-trigger { position: relative; display: inline-flex; align-items: center; padding: 0; border: 0; color: #fff; background: transparent; font: inherit; font-size: .875rem; font-weight: 500; line-height: 1.125rem; white-space: nowrap; cursor: pointer; transition: opacity .25s ease, color .25s ease; }
.xh-index-header-models-trigger:hover { opacity: .78; }
.xh-index-header-models-trigger:focus-visible { outline: .125rem solid #2f80ff; outline-offset: .375rem; border-radius: .125rem; }
.xh-index-header-models-trigger[aria-expanded="true"] { font-weight: 600; }
.xh-index-header-models-trigger[aria-expanded="true"]::after { content: ''; position: absolute; right: -.25rem; bottom: -.875rem; left: -.25rem; height: .125rem; background: #2f80ff; }
.xh-index-header-models-trigger > span { display: inline-block; width: 0; height: 0; margin: -.0625rem 0 0 .3rem; border-left: .1875rem solid transparent; border-right: .1875rem solid transparent; border-top: .25rem solid currentColor; transition: transform .25s ease; }
.xh-index-header-models-trigger[aria-expanded="true"] > span { transform: rotate(180deg); }

/* xh-models-mega-menu —— 首页车型二级菜单面板
   设计基准：node 353:2，画布 1920×560；上下内边距 30px，标题行 54px，标题与分组间距 22px；
   内容区 1720px（左右各 100px）；分组 1254 / 430（间距 36px）；组内卡片 390×328、圆角 14px、间距 18px。
   结构：面板为 header 的直接子元素，top:100% 相对 header 定位——header 由 absolute 切换为
   fixed（is-scrolled）时面板自动跟随，解决吸附态错位；宽度恒等于 header 宽度（=内容栅格）。 */
.xh-models-mega-menu { position: absolute; top: 100%; right: 0; left: 0; z-index: 10; padding: 1.875rem 0; color: #0d1724; background: #fbfcff; box-shadow: 0 .75rem 1.875rem rgba(0, 0, 0, .13); opacity: 0; visibility: hidden; transform: translateY(-.75rem); pointer-events: none; transition: opacity .22s ease, transform .22s ease, visibility .22s ease; }
.xh-models-mega-menu.is-open { opacity: 1; visibility: visible; transform: translateY(0); pointer-events: auto; }
.xh-models-mega-menu-inner { display: flex; flex-direction: column; gap: 1.375rem; width: 100%; max-width: 107.5rem; margin: 0 auto; }
.xh-models-mega-menu-heading { padding: 0 10px; display: flex; align-items: center; justify-content: space-between; gap: 2rem; min-height: 3.375rem; }
.xh-models-mega-menu-title { margin: 0; color: #0a121c; font-size: 1.875rem; line-height: 1.2; font-weight: 700; letter-spacing: -.02em; text-transform: uppercase; }
.xh-models-mega-menu-close { position: relative; flex: 0 0 auto; width: 1.75rem; height: 1.75rem; padding: 0; border: 0; background: transparent; cursor: pointer; }
.xh-models-mega-menu-close::before, .xh-models-mega-menu-close::after { content: ''; position: absolute; top: 50%; left: 50%; width: 1.59rem; height: .125rem; border-radius: .125rem; background: #0a1420; }
.xh-models-mega-menu-close::before { transform: translate(-50%, -50%) rotate(45deg); }
.xh-models-mega-menu-close::after { transform: translate(-50%, -50%) rotate(-45deg); }
.xh-models-mega-menu-close:hover::before, .xh-models-mega-menu-close:hover::after { background: #2f80ff; }
.xh-models-mega-menu-groups { display: grid; grid-template-columns: minmax(0, 1254fr) minmax(0, 430fr); gap: 2.25rem; }
.xh-models-mega-menu-group { display: flex; min-width: 0; min-height: 26.5rem; flex-direction: column; gap: 1.125rem; padding: 1.375rem 1.5rem; border: .0625rem solid #e3ebf5; border-radius: 1rem; background: #fff; }
.xh-models-mega-menu-label { display: flex; align-items: center; gap: .625rem; min-height: 1.75rem; margin: 0; color: #0f1a29; font-size: .8125rem; line-height: 1; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
.xh-models-mega-menu-label > span { flex: 0 0 auto; width: 1.625rem; height: .1875rem; border-radius: .125rem; background: #146bff; }
.xh-models-mega-menu-cards { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.125rem; }
.xh-models-mega-menu-riddara .xh-models-mega-menu-cards { grid-template-columns: minmax(0, 1fr); }
.xh-models-mega-menu-card { display: flex; min-width: 0; min-height: 20.5rem; flex-direction: column; gap: .875rem; padding: 1.125rem 1.25rem; border-radius: .875rem; background: #f4f7fc; color: #0d1724; text-align: center; transition: background-color .2s ease, transform .2s ease; }
.xh-models-mega-menu-card:hover { background: #e8eff8; transform: translateY(-.18rem); }
.xh-models-mega-menu-card:focus-visible { outline: .125rem solid #2f80ff; outline-offset: .125rem; }
.xh-models-mega-menu-riddara .xh-models-mega-menu-card { background: #f1f6fc; }
.xh-models-mega-menu-riddara .xh-models-mega-menu-card:hover { background: #e6eef9; }
.xh-models-mega-menu-card img { display: block; width: 100%; aspect-ratio: 350 / 216; object-fit: contain; }
/* Riddara 卡片图片源为 941x941 正方形，若用 fill 强制拉伸到 350x216 会畸变，
   故沿用与其它卡片一致的 contain（等比缩放、留白），保证画面不变形 */
.xh-models-mega-menu-riddara .xh-models-mega-menu-card img { object-fit: contain; }
.xh-models-mega-menu-card-text { display: block; }
.xh-models-mega-menu-card strong { display: block; font-size: 1.25rem; line-height: 1.6875rem; font-weight: 600; }
.xh-models-mega-menu-card small { display: block; margin-top: .4375rem; color: #596e85; font-size: .6875rem; line-height: 1.25rem; font-weight: 400; letter-spacing: .08em; text-transform: uppercase; }

/* xh-models-mega-menu responsive —— 首页车型二级菜单响应式（仅 index）
   面板宽度随 header（base 左右 6.25rem / 75rem 3.5rem / 60rem 2rem），inner 恒为 100%，无需逐级覆盖。 */
@media (max-width: 60rem) {
    .xh-models-mega-menu-title { font-size: 1.625rem; }
    .xh-models-mega-menu-group { min-height: 23.5rem; padding: 1.25rem 1.25rem; }
    .xh-models-mega-menu-card { min-height: 18rem; }
    .xh-models-mega-menu-card strong { font-size: 1.125rem; line-height: 1.5rem; }
}

@media (max-width: 48rem) {
    /* 窄屏：保持 absolute 相对 header 定位（header 吸附时带 backdrop-filter，
       会为 fixed 后代创建包含块导致面板被困在 header 盒内，故不用 fixed 全屏） */
    .xh-models-mega-menu { top: 100%; left: 0; right: 0; z-index: 10; max-height: calc(100vh - 6rem); padding: 1.25rem 0; overflow-y: auto; }
    .xh-models-mega-menu-inner { width: 100%; gap: 1.25rem; }
    .xh-models-mega-menu-heading { min-height: 2.75rem; }
    .xh-models-mega-menu-title { font-size: 1.5rem; }
    .xh-models-mega-menu-groups { grid-template-columns: minmax(0, 1fr); gap: 1.25rem; }
    .xh-models-mega-menu-group { min-height: 0; padding: 1.25rem 1rem; }
    .xh-models-mega-menu-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .9rem; }
    .xh-models-mega-menu-card { min-height: 0; padding: .9rem 1rem; gap: .6rem; }
    .xh-models-mega-menu-card strong { font-size: 1.05rem; line-height: 1.4rem; }
}

.xh-models-hero-copy { position: absolute; z-index: 1; left: 5.875rem; top: 15.75rem; width: 43rem; }
.xh-models-hero-title { margin: 0 0 2.05rem; font-family: var(--xh-font-title); font-size: 4.625rem; line-height: 1.02; font-weight: 700; letter-spacing: 0; text-transform: uppercase; }
.xh-models-hero-description { margin-bottom: 1.35rem; color: #d4dfe8; font-size: 1.3125rem; line-height: 2rem; }
.xh-models-hero-description p { margin: 0; }
.xh-models-hero-actions { display: flex; gap: 1rem; }
.xh-models-hero-pagination { position: absolute; z-index: 1; left: 6.25rem; bottom: 7.35rem; display: flex; align-items: center; gap: .7rem; font-size: .9375rem; font-weight: 500; }
.xh-models-hero-pagination i { width: 1.25rem; height: .0625rem; background: rgba(255,255,255,.7); }
.xh-models-hero-pagination .is-active { color: #2f80ff; }

/* xh-models-selector */
.xh-models-selector { position: relative; z-index: 2; display: grid; grid-template-columns: 5rem minmax(0, 1fr); align-items: center; width: calc(100% - 12.5rem); min-height: 14.375rem; margin: -10.625rem auto 0; padding: 1.625rem 2.25rem; border-radius: 1.125rem; background: #081726; box-shadow: 0 1rem 2rem rgba(9,31,49,.2); }
.xh-models-selector-heading { color: #fff; font-size: 1.125rem; line-height: 1.35; text-transform: uppercase; }
.xh-models-selector-list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: stretch; gap: 1.5rem; }
.xh-models-selector-item { position: relative; display: flex; width: 10.625rem; min-width: 0; height: 11rem; flex-direction: column; align-items: center; justify-content: flex-end; padding: .4rem .6rem .8rem; color: #d4dfe8; text-align: center; border-radius: .5rem; transition: background-color .25s ease, transform .25s ease; }
.xh-models-selector-item:hover { background: rgba(255,255,255,.06); transform: translateY(-.2rem); }
.xh-models-selector-item img { display: block; width: 10rem; height: 8rem; object-fit: contain; }
.xh-models-selector-item span { font-size: .875rem; line-height: 1.2; white-space: nowrap; }
.xh-models-selector-item small { display: block; margin-top: .25rem; color: #afc0cf; font-size: .6875rem; line-height: 1.1; letter-spacing: .02em; text-align: center; }
.xh-models-selector-item.is-active::after { content: ''; position: absolute; bottom: 0; left: 50%; width: 6.875rem; height: .1875rem; transform: translateX(-50%); background: #2f80ff; }
.xh-models-selector-rd6 img { width: 12rem; }

/* xh-models-catalog */
.xh-models-catalog { padding: 3.65rem 6.25rem 5.5rem; }
.xh-models-section-heading { display: flex; align-items: center; justify-content: center; gap: 2.1rem; margin-bottom: 3.75rem; }
.xh-models-section-heading span { width: 10.625rem; height: .0625rem; background: #9aabb9; }
.xh-models-section-heading h2 { margin: 0; color: #0d1724; font-size: 1.875rem; line-height: 1; text-transform: uppercase; }
.xh-models-catalog-list { display: grid; gap: 1.875rem; }
.xh-models-card { position: relative; display: flex; min-height: 26.875rem; overflow: hidden; border: .0625rem solid #dde6ed; border-radius: 1.125rem; isolation: isolate; }

/* xh-models-card 遮罩：压在底图之上、文字之下，保证 .xh-models-card-copy 文字在任何底图上都清晰可读 */
.xh-models-card-overlay { --xh-models-scrim-rgb: 255, 255, 255; --xh-models-scrim-angle: 90deg; position: absolute; inset: 0; z-index: 1; pointer-events: none; background-color: rgba(var(--xh-models-scrim-rgb), .2); background-image: linear-gradient(var(--xh-models-scrim-angle), rgba(var(--xh-models-scrim-rgb), .94) 0%, rgba(var(--xh-models-scrim-rgb), .9) 0%, rgba(var(--xh-models-scrim-rgb), .56) 0%, rgba(var(--xh-models-scrim-rgb), 0) 50%);}
.xh-models-card:nth-child(even) .xh-models-card-overlay { --xh-models-scrim-angle: 270deg; }
.xh-models-card-e5 .xh-models-card-overlay { --xh-models-scrim-rgb: 4, 20, 35; }
.xh-models-card-rd6 .xh-models-card-overlay { --xh-models-scrim-rgb: 49, 50, 54; }
.xh-models-card-backdrop { position: absolute; inset: 0; z-index: -1; background-position: center; background-size: cover; background-repeat: no-repeat; transition: transform .6s ease; }
.xh-models-card:hover .xh-models-card-backdrop { transform: scale(1.02); }
/* .xh-models-card-e2 .xh-models-card-backdrop { background-image: linear-gradient(90deg, rgba(232,247,233,.98) 0%, rgba(232,247,233,.84) 31%, rgba(232,247,233,.06) 67%), url('../images/figma-models/model-e2-card.png'); }
.xh-models-card-e5 .xh-models-card-backdrop { background-image: linear-gradient(270deg, rgba(4,20,35,.92) 0%, rgba(4,20,35,.72) 30%, rgba(4,20,35,.08) 69%), url('../images/figma-models/model-e5-card.png'); }
.xh-models-card-emi .xh-models-card-backdrop { background-image: linear-gradient(90deg, rgba(245,243,231,.96) 0%, rgba(245,243,231,.8) 35%, rgba(245,243,231,.08) 72%), url('../images/figma-models/model-e5-emi-card.png'); }
.xh-models-card-rd6 .xh-models-card-backdrop { background-image: linear-gradient(270deg, rgba(49,50,54,.96) 0%, rgba(49,50,54,.84) 36%, rgba(49,50,54,.08) 72%), url('../images/figma-models/Core Product — Riddara RD6 Eco.png'); } */
.xh-models-card-copy { box-sizing: border-box; position: relative; z-index: 2; display: flex; width: 50%; min-height: 26.875rem; flex-direction: column; align-items: flex-start; justify-content: flex-start; padding: 3.2rem 4.3rem; }
.xh-models-card:nth-child(odd) .xh-models-card-copy { margin-right: auto; margin-left: 0; }
.xh-models-card:nth-child(even) .xh-models-card-copy { margin-right: 0; margin-left: auto; }
.xh-models-card-e5 .xh-models-card-copy, .xh-models-card-rd6 .xh-models-card-copy { color: #fff; }
.xh-models-card-rd6 .xh-models-card-copy { color: #fff; }
.xh-models-card-rd6 .xh-models-card-subtitle { color: #d4dfe8; }
.xh-models-card-rd6 .xh-models-card-body { color: #d4dfe8; }
.xh-models-card-copy h2 { margin: 0; font-family: var(--xh-font-title); font-size: 4.5rem; line-height: 1; font-weight: 700; letter-spacing: 0; }
.xh-models-card-subtitle { margin: .95rem 0 2.25rem; color: #64748b; font-size: 1.75rem; line-height: 1.2; }
.xh-models-card-e5 .xh-models-card-subtitle { color: #d4dfe8; }
.xh-models-card-lead { margin: 0 0 .7rem; font-size: 1.0625rem; line-height: 1.45; font-weight: 600; }
.xh-models-card-body { margin: 0; color: #64748b; font-size: .875rem; line-height: 1.5; }
.xh-models-card-e5 .xh-models-card-body { color: #d4dfe8; }
.xh-models-card-button { display: inline-flex; width: 13.75rem; height: 3rem; align-items: center; justify-content: center; gap: .45rem; margin-top: auto; border-radius: .25rem; background: #2f80ff; color: #fff; font-size: .8125rem; font-weight: 700; text-transform: uppercase; transition: transform .25s ease, background-color .25s ease; }
.xh-models-card-button:hover { background: #176de9; transform: translateY(-.15rem); }
.xh-models-card-button span { font-size: 1.1rem; }

/* xh-models-intelligence */
.xh-models-intelligence { position: relative; display: grid; grid-template-columns: 1fr 3fr; min-height: 16.25rem; margin: 0 6.25rem 3.75rem; overflow: hidden; border-radius: 1.125rem; color: #fff; background: #05121d; isolation: isolate; }
.xh-models-intelligence-backdrop { position: absolute; inset: 0; z-index: -1; opacity: .24; background: url('../images/figma-models/models-intelligence.png') center / cover no-repeat; }
.xh-models-intelligence-heading { padding: 4.45rem 2.625rem; }
.xh-models-intelligence-heading h2 { margin: 0 0 .65rem; font-size: 1.5rem; text-transform: uppercase; }
.xh-models-intelligence-heading p { margin: 0; color: #c6d4e0; font-size: .875rem; }
.xh-models-intelligence-list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: center; }
.xh-models-intelligence-list article { min-width: 0; min-height: 9.375rem; padding: .25rem 1.2rem; text-align: center; border-left: .0625rem solid rgba(198,212,224,.35); }
.xh-models-intelligence-list img { display: block; width: 3.125rem; height: 3.125rem; margin: 0 auto .95rem; object-fit: contain; filter: brightness(0) invert(1); }
.xh-models-intelligence-list h3 { margin: 0 0 .45rem; font-size: .9375rem; text-transform: uppercase; letter-spacing: .02em; }
.xh-models-intelligence-list p { margin: 0; color: #c6d4e0; font-size: .75rem; line-height: 1.4; }

/* xh-models-cta */
.xh-models-cta { position: relative; min-height: 20rem; overflow: hidden; color: #fff; isolation: isolate; }
.xh-models-cta-backdrop { position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(7,24,39,.72), rgba(7,24,39,.14)), url('../images/figma-models/models-cta.png') center / cover no-repeat; }
.xh-models-cta-copy { padding: 4.45rem 6.25rem; }
.xh-models-cta-copy h2 { margin: 0; font-size: 2.125rem; line-height: 1.2; text-transform: uppercase; }
.xh-models-cta-copy p { margin: .8rem 0 2rem; color: #d4dfe8; font-size: 1.0625rem; }
.xh-models-cta-copy .xh-models-card-button { margin-top: 0; }

/* xh-models-footer */
.xh-models-page .xh-index-footer { min-height: 32.5rem; padding: 4.5rem 6.25rem 2.5rem; }

@media (max-width: 75rem) {
    .xh-models-header { left: 3.5rem; right: 3.5rem; }
    .xh-models-hero-copy { left: 3.5rem; }
    .xh-models-selector { width: calc(100% - 7rem); }
    .xh-models-catalog { padding-left: 3.5rem; padding-right: 3.5rem; }
    .xh-models-intelligence { margin-left: 3.5rem; margin-right: 3.5rem; }
    .xh-models-cta-copy { padding-left: 3.5rem; }
    .xh-models-page .xh-index-footer { padding-left: 3.5rem; padding-right: 3.5rem; }
    .xh-models-card-copy { padding-left: 3.25rem; padding-right: 3.25rem; }
    .xh-models-card-copy h2 { font-size: 3.8rem; }
}

@media (max-width: 48rem) {
    .xh-models-hero { height: 39rem; min-height: 39rem; }
    .xh-models-header { left: 1.25rem; right: 1.25rem; }
    .xh-models-hero-copy { left: 1.25rem; right: 1.25rem; top: 10rem; width: auto; }
    .xh-models-hero-title { font-size: clamp(2.7rem, 12vw, 4rem); }
    .xh-models-hero-description { font-size: 1rem; line-height: 1.55; }
    .xh-models-hero-actions { flex-direction: column; align-items: flex-start; gap: .7rem; }
    .xh-models-hero-pagination { left: 1.25rem; bottom: 1.5rem; font-size: .8rem; }
    .xh-models-selector { display: block; width: calc(100% - 2.5rem); min-height: 0; margin: -2.5rem auto 0; padding: 1.5rem 1.25rem 1.25rem; border-radius: .9rem; }
    .xh-models-selector-heading { margin-bottom: 1rem; font-size: 1rem; }
    .xh-models-selector-list { display: flex; gap: .65rem; overflow-x: auto; padding-bottom: .25rem; scrollbar-width: thin; }
    .xh-models-selector-item { flex: 0 0 9rem; height: 9rem; padding: .3rem .35rem .65rem; }
    .xh-models-selector-item img { width: 8rem; height: 6.4rem; }
    .xh-models-selector-item span { font-size: .72rem; }
    .xh-models-selector-item.is-active::after { width: 5rem; }
    .xh-models-catalog { padding: 2.8rem 1.25rem 3.5rem; }
    .xh-models-section-heading { gap: .8rem; margin-bottom: 2rem; }
    .xh-models-section-heading span { width: 3.5rem; }
    .xh-models-section-heading h2 { font-size: 1.45rem; }
    .xh-models-catalog-list { gap: 1rem; }
    .xh-models-card { min-height: 30rem; }
    .xh-models-card-backdrop { background-position: center; }
    .xh-models-card-e2 .xh-models-card-backdrop, .xh-models-card-emi .xh-models-card-backdrop { background-position: 65% center; }
    .xh-models-card-e5 .xh-models-card-backdrop, .xh-models-card-rd6 .xh-models-card-backdrop { background-position: 35% center; }
    .xh-models-card-copy, .xh-models-card-e5 .xh-models-card-copy, .xh-models-card-rd6 .xh-models-card-copy { width: 100%; min-height: 30rem; margin: 0; padding: 2.25rem 1.5rem; justify-content: flex-start; }
    .xh-models-card:nth-child(odd) .xh-models-card-copy, .xh-models-card:nth-child(even) .xh-models-card-copy { margin: 0; }
    .xh-models-card-copy h2 { max-width: 18rem; font-size: 2.65rem; }
    .xh-models-card-subtitle { margin: .65rem 0 1.45rem; font-size: 1.2rem; }
    .xh-models-card-lead { max-width: 18rem; font-size: .95rem; }
    .xh-models-card-body { max-width: 19rem; font-size: .8rem; }
    .xh-models-card-overlay { background-color: rgba(var(--xh-models-scrim-rgb), .38); background-image: linear-gradient(180deg, rgba(var(--xh-models-scrim-rgb), .94) 0%, rgba(var(--xh-models-scrim-rgb), .86) 48%, rgba(var(--xh-models-scrim-rgb), .58) 78%, rgba(var(--xh-models-scrim-rgb), .38) 100%); }
    .xh-models-card-button { width: 12rem; height: 2.75rem; margin-top: auto; font-size: .72rem; }
    .xh-models-desktop-break { display: none; }
    .xh-models-intelligence { display: block; margin: 0 1.25rem 2.5rem; }
    .xh-models-intelligence-heading { padding: 2rem 1.5rem .5rem; }
    .xh-models-intelligence-list { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: .75rem 1rem 1.25rem; }
    .xh-models-intelligence-list article { min-height: 8rem; padding: 1rem .5rem; border-top: .0625rem solid rgba(198,212,224,.35); }
    .xh-models-intelligence-list article:nth-child(odd) { border-left: 0; }
    .xh-models-intelligence-list img { width: 2.5rem; height: 2.5rem; margin-bottom: .55rem; }
    .xh-models-cta { min-height: 22rem; }
    .xh-models-cta-backdrop { background-position: 60% center; }
    .xh-models-cta-copy { padding: 3.5rem 1.25rem; }
    .xh-models-cta-copy h2 { max-width: 19rem; font-size: 1.8rem; }
    .xh-models-cta-copy p { max-width: 20rem; font-size: .95rem; line-height: 1.5; }
    .xh-models-page .xh-index-footer { min-height: 0; padding: 3rem 1.25rem 1.75rem; }
}

/* xh-index-header-logo-fix */
.xh-index-header {
    justify-content: space-between;
}

.xh-index-header-logo {
    position: relative;
    left: auto;
    top: auto;
}

.xh-index-header-logo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

@media (max-width: 60rem) {
    .xh-index-header-logo {
        flex-basis: 8rem;
        width: 8rem;
        height: 3.25rem;
    }
}

@media (max-width: 48rem) {
    .xh-index-header-logo {
        flex-basis: 7.5rem;
        width: 7.5rem;
        height: 3rem;
    }
}

@media (max-width: 75rem) { .xh-index-models, .xh-index-featured, .xh-index-news, .xh-index-faq, .xh-index-footer { padding-left: 3.5rem; padding-right: 3.5rem; }.xh-index-innovation { margin-left: 3.5rem; margin-right: 3.5rem; }.xh-index-support { grid-template-columns: 13rem 1fr; padding-left: 3.5rem; padding-right: 3.5rem; }.xh-index-support-image { grid-column: 2; width: 100%; }.xh-index-innovation-cards { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }.xh-index-innovation-cards article { width: auto; }.xh-index-footer { gap: 2.5rem; } }
@media (max-width: 48rem) { .xh-index-models, .xh-index-news, .xh-index-faq { padding: 2.5rem 1.25rem; }.xh-index-section-title { font-size: 1.5rem; }.xh-index-section-heading > a { font-size: .72rem; }.xh-index-models-list { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; }.xh-index-models-item { min-width: 12.5rem; scroll-snap-align: start; }.xh-index-e5 { min-height: 40rem; }.xh-index-e5-backdrop { background-position: 65% center; }.xh-index-e5-content { width: auto; padding: 3.5rem 1.25rem; }.xh-index-e5-title { font-size: 3.2rem; }.xh-index-e5-subtitle { font-size: 1.3rem; }.xh-index-e5-stats { margin-top: 2rem; gap: .5rem; }.xh-index-e5-stats > div { min-width: 0; flex: 1; padding-left: .45rem; }.xh-index-e5-stats strong { font-size: 1.05rem; }.xh-index-e5-stats span { font-size: .6rem; line-height: 1.1; display: block; }.xh-index-e5-button { margin-top: 12rem; }.xh-index-featured { grid-template-columns: 1fr; padding: 1.25rem; }.xh-index-featured-card { height: 20rem; }.xh-index-featured-card::after { width: 78%; }.xh-index-featured-card > div { padding: 2rem; }.xh-index-featured-card a { margin-top: 8.5rem; }.xh-index-innovation { margin: 0 1.25rem; min-height: 37rem; }.xh-index-innovation-heading { padding: 2rem 1.5rem 0; }.xh-index-innovation-cards { grid-template-columns: repeat(2, 1fr); padding: 3rem 1.5rem 1.5rem; gap: .8rem; }.xh-index-innovation-cards article { height: 13.5rem; }.xh-index-innovation-cards img { height: 7.5rem; }.xh-index-support { grid-template-columns: 1fr; padding: 3rem 1.25rem 1.5rem; }.xh-index-support-services { grid-template-columns: repeat(2, 1fr); margin-top: 1rem; }.xh-index-support-services article { border-bottom: .0625rem solid #d8e1e8; }.xh-index-support-image { grid-column: auto; width: 100%; height: 12rem; }.xh-index-news-grid { display: flex; overflow-x: auto; padding-bottom: .75rem; }.xh-index-news-grid article { min-width: 17rem; }.xh-index-cta { min-height: 22rem; }.xh-index-cta-background { background-position: 60% center; }.xh-index-cta > div:last-child { padding: 3.25rem 1.25rem; }.xh-index-cta-title { max-width: 16rem; font-size: 1.9rem; }.xh-index-footer { grid-template-columns: 1fr; gap: 2.5rem; padding: 3rem 1.25rem 1.75rem; }.xh-index-footer-links { grid-template-columns: repeat(2, 1fr); gap: 2rem 1rem; }.xh-index-footer-links > div:last-child { grid-column: 1 / -1; }.xh-index-footer-bottom { flex-direction: column; gap: 1rem; }.xh-index-footer-bottom div { gap: .8rem; } }

/* xh-index-model-showcase */
.xh-index-model-showcase { position: relative; overflow: hidden; background: #f5f8fb; }
.xh-index-model-showcase .xh-index-e5 { min-height: 57.125rem; background: #f5f8fb; }
.xh-index-model-showcase .xh-index-e5-backdrop { display: block; background-position: center top; background-size: cover; }
.xh-index-model-showcase .xh-index-e5-content { width: 43.625rem; padding: 5rem 0 0 6.25rem; }
.xh-index-model-showcase .xh-index-e5-title { font-size: 3.15rem; line-height: 1; letter-spacing: 0; }
.xh-index-model-showcase .xh-index-e5-subtitle { margin-top: .45rem; font-size: 1.25rem; line-height: 1.2; }
.xh-index-model-showcase .xh-index-e5-stats { gap: 0; margin-top: 3.35rem; }
.xh-index-model-showcase .xh-index-e5-stat { position: relative; display: grid; grid-template-columns: 4.375rem auto; grid-template-rows: auto auto; column-gap: .75rem; min-width: 12.875rem; min-height: 5rem; padding: .5rem 1.125rem .5rem 0; border-left: 0; }
.xh-index-model-showcase .xh-index-e5-stat + .xh-index-e5-stat { padding-left: 1.125rem; border-left: .0625rem solid #aab7c5; }
.xh-index-model-showcase .xh-index-e5-stat-icon { grid-row: 1 / span 2; width: 2.625rem; height: 2.625rem; align-self: center; justify-self: center; object-fit: contain; }
.xh-index-model-showcase .xh-index-e5-stat strong { grid-column: 2; font-size: 1.6875rem; line-height: 1.25; white-space: nowrap; }
.xh-index-model-showcase .xh-index-e5-stat span { grid-column: 2; margin-top: .25rem; color: #64748b; font-size: .75rem; line-height: 1.2; white-space: nowrap; }
.xh-index-model-showcase .xh-index-e5-button { width: 13.75rem; height: 3.25rem; margin-top: 3rem; font-size: .9375rem; transition: transform .25s ease, background-color .25s ease; }
.xh-index-model-showcase .xh-index-e5-button:hover { background: #176de9; transform: translateY(-.1875rem); }
.xh-index-model-showcase .xh-index-featured { position: relative; z-index: 1; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.375rem; margin-top: -14.625rem; padding: 0 5.75rem 2.5rem; background: transparent; }
.xh-index-model-showcase .xh-index-featured-card {  border-color: rgba(255,255,255,.58); border-radius: .375rem; box-shadow: 0 .625rem 1.5rem rgba(22,47,67,.12); }
.xh-index-model-showcase .xh-index-featured-card::after { width: 50%; }
.xh-index-model-showcase .xh-index-featured-card > div { width: 19rem; height: 100%; display: flex; flex-direction: column; padding: 1.5rem; }
.xh-index-model-showcase .xh-index-featured-title { margin-bottom: .35rem; font-size: 1.5rem; }
.xh-index-model-showcase .xh-index-featured-copy { font-size: .75rem; line-height: 1.4; }
.xh-index-model-showcase .xh-index-featured-card a { width: 8.875rem; height: 1.875rem; margin-top: auto; border-radius: .1875rem; font-size: .6875rem; }

@media (max-width: 75rem) {
    .xh-index-model-showcase .xh-index-e5 { min-height: 36rem; }
    .xh-index-model-showcase .xh-index-e5-content { width: 38rem; padding-left: 3.5rem; padding-top: 4.5rem; }
    .xh-index-model-showcase .xh-index-e5-title { font-size: 3rem; }
    .xh-index-model-showcase .xh-index-e5-subtitle { font-size: 1.125rem; }
    .xh-index-model-showcase .xh-index-e5-stats { margin-top: 3rem; }
    .xh-index-model-showcase .xh-index-e5-stat { min-width: 10.75rem; grid-template-columns: 3rem auto; column-gap: .5rem; }
    .xh-index-model-showcase .xh-index-e5-stat-icon { width: 2rem; height: 2rem; }
    .xh-index-model-showcase .xh-index-e5-stat strong { font-size: 1.25rem; }
    .xh-index-model-showcase .xh-index-e5-stat span { font-size: .625rem; }
    .xh-index-model-showcase .xh-index-e5-button { margin-top: 2.75rem; }
    .xh-index-model-showcase .xh-index-featured { margin-top: -12.5rem; padding-left: 3.5rem; padding-right: 3.5rem; }
}

@media (max-width: 48rem) {
    .xh-index-model-showcase .xh-index-e5 { min-height: 43.5rem; }
    .xh-index-model-showcase .xh-index-e5-backdrop { background-position: left top; }
    .xh-index-model-showcase .xh-index-e5-content { width: auto; padding: 3rem 1.25rem 0; }
    .xh-index-model-showcase .xh-index-e5-title { font-size: 2.625rem; }
    .xh-index-model-showcase .xh-index-e5-subtitle { max-width: 15rem; font-size: 1.125rem; }
    .xh-index-model-showcase .xh-index-e5-stats { display: grid; grid-template-columns: 1fr; gap: .5rem; width: 11.75rem; margin-top: 2rem; }
    .xh-index-model-showcase .xh-index-e5-stat, .xh-index-model-showcase .xh-index-e5-stat + .xh-index-e5-stat { min-width: 0; min-height: 3rem; padding: .25rem 0; border-left: 0; }
    .xh-index-model-showcase .xh-index-e5-stat + .xh-index-e5-stat { border-top: .0625rem solid rgba(100,116,139,.38); }
    .xh-index-model-showcase .xh-index-e5-stat-icon { width: 1.75rem; height: 1.75rem; }
    .xh-index-model-showcase .xh-index-e5-stat strong { font-size: 1.05rem; }
    .xh-index-model-showcase .xh-index-e5-stat span { font-size: .625rem; }
    .xh-index-model-showcase .xh-index-e5-button { width: 10.5rem; height: 2.75rem; margin-top: 2.25rem; font-size: .75rem; }
    .xh-index-model-showcase .xh-index-featured { grid-template-columns: 1fr; gap: .75rem; margin-top: -8.5rem; padding: 0 1.25rem 1.5rem; }
    .xh-index-model-showcase .xh-index-featured-card { height: 11rem; }
    .xh-index-model-showcase .xh-index-featured-card > div { width: 15rem; padding: 1.15rem; }
    .xh-index-model-showcase .xh-index-featured-title { font-size: 1.2rem; }
    .xh-index-model-showcase .xh-index-featured-copy { font-size: .625rem; }
    .xh-index-model-showcase .xh-index-featured-card a { width: 7.5rem; height: 1.55rem; font-size: .5625rem; }
}

/* About Geely */
.xh-about-page { overflow: hidden; color: #0c1d32; background: #fff; }
.xh-about-page .xh-index-header { z-index: 1000; }
.xh-about-header .xh-index-header-nav > a.is-active { color: #fff; }
.xh-about-header .xh-index-header-nav > a.is-active::after { transform: scaleX(1); opacity: 1; }

.xh-about-hero { position: relative; min-height: 51.25rem; overflow: hidden; color: #fff; }
.xh-about-hero-image { position: absolute; inset: 0; z-index: 0; width: 100%; height: 100%; object-fit: cover; }
.xh-about-vision-image { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; }
.xh-about-hero-image { object-position: center; }
.xh-about-hero-overlay { position: absolute; inset: 0; z-index: 1; background: linear-gradient(90deg, rgba(1, 15, 34, .94) 0%, rgba(3, 21, 40, .78) 38%, rgba(4, 23, 43, .23) 68%, rgba(2, 15, 29, .2) 100%); }
.xh-about-hero-copy { position: relative; z-index: 2; width: min(33.75rem, calc(100% - 5rem)); margin-left: clamp(2.5rem, 8.3vw, 10rem); padding: 15.1rem 0 6rem; }
.xh-about-eyebrow { margin: 0 0 1.25rem; font-size: .75rem; font-weight: 700; line-height: 1; letter-spacing: .16em; text-transform: uppercase; }
.xh-about-eyebrow::before { display: inline-block; width: 2.35rem; height: .125rem; margin: 0 .7rem .18rem 0; background: #287dff; content: ''; }
.xh-about-hero h1 { margin: 0; font-family: var(--xh-font-title); font-size: clamp(4.5rem, 7vw, 7.5rem); font-weight: 700; line-height: .9; letter-spacing: -.065em; }
.xh-about-hero-lead { max-width: 31rem; margin: 2.1rem 0 1rem; font-size: clamp(1.25rem, 1.6vw, 1.75rem); font-weight: 500; line-height: 1.35; }
.xh-about-hero-body { max-width: 30rem; margin: 0; color: rgba(255, 255, 255, .78); font-size: .95rem; line-height: 1.7; }
.xh-about-button { display: inline-flex; align-items: center; justify-content: center; gap: .65rem; min-height: 3.1rem; margin-top: 2.45rem; padding: 0 1.6rem; border-radius: .25rem; color: #fff; background: #287dff; font-size: .75rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; text-decoration: none; white-space: nowrap; transition: background .2s ease, transform .2s ease, box-shadow .2s ease; }
.xh-about-button:hover { background: #1267ea; transform: translateY(-2px); box-shadow: 0 .625rem 1.5rem rgba(20, 103, 234, .28); }
.xh-about-button:focus-visible { outline: .125rem solid #287dff; outline-offset: .1875rem; }
.xh-about-button span, .xh-about-text-link span { font-size: 1.1rem; line-height: 1; transition: transform .2s ease; }
.xh-about-button:hover span { transform: translateX(.25rem); }

.xh-about-glance { padding: 8.5rem clamp(2.5rem, 8.3vw, 10rem) 9.5rem; }
.xh-about-section-heading { display: grid; grid-template-columns: .96fr 1.04fr; gap: 1rem 4rem; max-width: 75rem; margin: 0 auto 4rem; }
.xh-about-section-heading .xh-about-eyebrow { grid-column: 1 / -1; color: #37607f; }
.xh-about-section-heading h2, .xh-about-history h2, .xh-about-xinghong h2 { margin: 0; font-size: clamp(2.65rem, 4vw, 4.5rem); font-weight: 650; line-height: 1; letter-spacing: -.055em; }
.xh-about-section-heading > p:last-child { max-width: 29rem; margin: .55rem 0 0; color: #60748b; font-size: 1rem; line-height: 1.7; }
.xh-about-glance-layout { display: grid; grid-template-columns: 1fr 1.05fr; gap: clamp(2.5rem, 6vw, 7rem); align-items: center; max-width: 75rem; margin: 0 auto; }
.xh-about-glance-stats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 3.25rem 2rem; }
.xh-about-glance-stats article { display: grid; grid-template-columns: 2.55rem 1fr; column-gap: .85rem; align-items: end; }
.xh-about-glance-stats img { grid-row: 1 / span 2; width: 2.25rem; height: 2.25rem; object-fit: contain; }
.xh-about-glance-stats strong { font-size: 2.6rem; font-weight: 650; line-height: .95; letter-spacing: -.05em; }
.xh-about-glance-stats span { margin-top: .42rem; color: #65778c; font-size: .75rem; line-height: 1.35; }
.xh-about-glance-figure { height: 23.5rem; margin: 0; overflow: hidden; }
.xh-about-glance-figure img { width: 100%; height: 100%; object-fit: cover; object-position: center; }

.xh-about-vision { position: relative; isolation: isolate; min-height: 40rem; display: flex; align-items: center; padding: 5rem clamp(2.5rem, 8.3vw, 10rem); color: #fff; overflow: hidden; }
.xh-about-vision-image { object-position: center; }
.xh-about-vision-overlay { position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(0, 15, 37, .92) 0%, rgba(1, 23, 52, .75) 47%, rgba(0, 17, 38, .29) 100%); }
.xh-about-vision-copy { width: min(34rem, 100%); }
.xh-about-vision h2 { margin: 0; font-size: clamp(3rem, 4.65vw, 5rem); font-weight: 650; line-height: .99; letter-spacing: -.06em; }
.xh-about-vision-copy > p:not(.xh-about-eyebrow) { max-width: 31rem; margin: 1.6rem 0 0; color: rgba(255, 255, 255, .8); font-size: 1rem; line-height: 1.75; }
.xh-about-button-light { color: #102039; background: #fff; box-shadow: 0 .625rem 1.5rem rgba(3, 21, 40, .18); }
.xh-about-button-light:hover { color: #fff; background: #287dff; }

.xh-about-history { display: grid; grid-template-columns: minmax(0, .9fr) minmax(24rem, 1.1fr); gap: clamp(3rem, 7.5vw, 9rem); align-items: center; max-width: 75rem; margin: 0 auto; padding: 9.5rem clamp(2.5rem, 8.3vw, 10rem); }
.xh-about-history-copy .xh-about-eyebrow, .xh-about-xinghong-copy .xh-about-eyebrow { color: #37607f; }
.xh-about-timeline { margin-top: 3.25rem; border-top: 1px solid #d7dee6; }
.xh-about-timeline article { display: grid; grid-template-columns: 2.9rem 1fr; gap: 1rem; padding: 1.35rem 0; border-bottom: 1px solid #d7dee6; }
.xh-about-timeline span { color: #287dff; font-size: .75rem; font-weight: 700; letter-spacing: .05em; }
.xh-about-timeline strong { display: block; font-size: .92rem; font-weight: 700; text-transform: uppercase; }
.xh-about-timeline p { margin: .5rem 0 0; color: #61748a; font-size: .84rem; line-height: 1.55; }
.xh-about-history-figure { height: 35.5rem; margin: 0; overflow: hidden; }
.xh-about-history-figure img { width: 100%; height: 100%; object-fit: cover; object-position: center; }

.xh-about-xinghong { display: grid; grid-template-columns: 1.1fr .9fr; min-height: 33rem; background: #f3f6f9; }
.xh-about-xinghong-figure { min-height: 33rem; margin: 0; overflow: hidden; }
.xh-about-xinghong-figure img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.xh-about-xinghong-copy { display: flex; flex-direction: column; justify-content: center; padding: 4rem clamp(2.5rem, 7vw, 8.5rem); }
.xh-about-xinghong-copy > p:not(.xh-about-eyebrow) { max-width: 30rem; margin: 1.65rem 0 0; color: #61748a; font-size: .98rem; line-height: 1.75; }
.xh-about-text-link { display: inline-flex; align-items: center; gap: .75rem; width: max-content; margin-top: 2rem; padding-bottom: .5rem; border-bottom: 2px solid #287dff; color: #162b45; font-size: .72rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }

@media (max-width: 75rem) {
  .xh-about-glance, .xh-about-history { padding-right: 4rem; padding-left: 4rem; }
  .xh-about-section-heading { gap: 2.5rem; }
  .xh-about-history { gap: 4rem; }
}

@media (max-width: 48rem) {
  .xh-about-hero { min-height: 43rem; }
  .xh-about-hero-image { object-position: 62% center; }
  .xh-about-hero-overlay { background: linear-gradient(90deg, rgba(1, 15, 34, .94) 0%, rgba(3, 21, 40, .8) 62%, rgba(4, 23, 43, .38) 100%); }
  .xh-about-hero-copy { width: calc(100% - 2.5rem); margin-left: 1.25rem; padding-top: 11.6rem; }
  .xh-about-eyebrow { font-size: .65rem; }
  .xh-about-hero-lead { margin-top: 1.55rem; font-size: 1.2rem; }
  .xh-about-hero-body { font-size: .84rem; }
  .xh-about-glance { padding: 5.5rem 1.25rem 6rem; }
  .xh-about-section-heading { display: block; margin-bottom: 3rem; }
  .xh-about-section-heading h2, .xh-about-history h2, .xh-about-xinghong h2 { font-size: 2.7rem; }
  .xh-about-section-heading > p:last-child { margin-top: 1.45rem; font-size: .9rem; }
  .xh-about-glance-layout, .xh-about-history, .xh-about-xinghong { grid-template-columns: 1fr; }
  .xh-about-glance-layout { gap: 3.25rem; }
  .xh-about-glance-stats { gap: 2.1rem 1.15rem; }
  .xh-about-glance-stats strong { font-size: 2.2rem; }
  .xh-about-glance-figure { height: 18rem; }
  .xh-about-vision { min-height: 36rem; padding: 5rem 1.25rem; }
  .xh-about-vision-image { object-position: 58% center; }
  .xh-about-vision h2 { font-size: 2.95rem; }
  .xh-about-vision-copy > p:not(.xh-about-eyebrow) { font-size: .9rem; }
  .xh-about-history { gap: 3rem; padding: 5.5rem 1.25rem; }
  .xh-about-history-figure { height: 26rem; grid-row: 1; }
  .xh-about-timeline { margin-top: 2.2rem; }
  .xh-about-xinghong-figure { min-height: 20rem; height: 20rem; }
  .xh-about-xinghong-copy { padding: 4rem 1.25rem 5rem; }
  .xh-about-xinghong-copy > p:not(.xh-about-eyebrow) { font-size: .9rem; }
}

.xh-about-page { --xh-about-gutter: clamp(2rem, 5.208vw, 6.25rem); background: #f5f9fc; }
.xh-about-hero { height: 51.25rem; min-height: 0; }
.xh-about-hero-overlay { background: linear-gradient(90deg, rgba(1, 15, 34, .94) 0%, rgba(3, 21, 40, .77) 37%, rgba(3, 21, 40, .2) 70%, rgba(3, 21, 40, .04) 100%); }
.xh-about-hero-copy { position: absolute; top: 12rem; left: var(--xh-about-gutter); width: 30.625rem; margin: 0; padding: 0; }
.xh-about-eyebrow { display: flex; align-items: center; gap: .75rem; margin: 0 0 1.5rem; color: #287dff; font-size: .75rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.xh-about-eyebrow::before { width: 1.25rem; height: .125rem; margin: 0; background: currentColor; }
.xh-about-hero .xh-about-eyebrow { margin-bottom: 1.45rem; color: #fff; font-size: 1.625rem; letter-spacing: 0; }
.xh-about-hero .xh-about-eyebrow::before { display: none; }
.xh-about-hero h1 { font-size: 4.875rem; font-weight: 650; }
.xh-about-hero-lead { max-width: 30rem; margin: 2.15rem 0 0; font-size: 1.625rem; line-height: 1.3; }
.xh-about-hero-body { max-width: 30.625rem; margin: 1.45rem 0 0; font-size: 1.0625rem; line-height: 1.55; }
.xh-about-button { height: 3.25rem; min-height: 0; margin-top: 2.5rem; padding: 0 2.25rem; font-size: .8125rem; }

.xh-about-glance { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.184fr); column-gap: 1.5rem; align-items: start; padding: 4rem var(--xh-about-gutter) 3.875rem; background: #fff; }
.xh-about-glance-layout { display: flex; flex-direction: column; align-items: stretch; gap: 0; max-width: none; min-width: 0; margin: .5rem 0 0; }
.xh-about-glance .xh-about-section-heading { display: block; max-width: none; margin: 0; }
.xh-about-glance-mark { display: block; width: 1.75rem; height: .1875rem; margin-bottom: 1.6875rem; background: #2f80ff; }
.xh-about-glance .xh-about-section-heading h2 { margin: 0; color: #0e1724; font-size: 2.375rem; font-weight: 700; line-height: 1.158; letter-spacing: 0; }
.xh-about-glance .xh-about-section-heading > p:last-child { max-width: 40.625rem; margin: 1.625rem 0 0; color: #5c6e85; font-size: 1rem; line-height: 1.625; }
.xh-about-glance-stats { display: grid; grid-template-columns: 177fr 215fr 215fr 170fr; gap: 0; margin-top: 3.1875rem; }
.xh-about-glance-stats article { display: flex; flex-direction: column; align-items: flex-start; min-width: 0; }
.xh-about-glance-stats img { width: 3.125rem; height: 3.125rem; margin-bottom: .8125rem; object-fit: contain; }
.xh-about-glance-stats strong { display: block; color: #0e1724; font-size: 2rem; font-weight: 700; line-height: 1; letter-spacing: 0; }
.xh-about-glance-stats strong::before { content: ''; display: block; width: 2rem; height: .1875rem; margin-bottom: 1.0625rem; background: #2f80ff; }
.xh-about-glance-stats span { margin-top: .8125rem; color: #5c6e85; font-size: .8125rem; line-height: 1.35; }
.xh-about-glance-figure { width: 100%; height: 25.625rem; margin: 0; overflow: hidden; border-radius: 1rem; }
.xh-about-glance-figure img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.xh-about-history h2, .xh-about-xinghong h2 { font-size: 2.75rem; line-height: 1.02; letter-spacing: -.06em; }

.xh-about-vision { height: 37.5rem; min-height: 0; padding: 0 var(--xh-about-gutter); }
.xh-about-vision-overlay { background: linear-gradient(90deg, rgba(0, 15, 37, .92) 0%, rgba(1, 23, 52, .76) 45%, rgba(0, 17, 38, .2) 100%); }
.xh-about-vision-copy { width: 38rem; }
.xh-about-vision h2 { font-size: 2.75rem; line-height: 1.02; }
.xh-about-vision-copy > p:not(.xh-about-eyebrow) { line-height: 1.7; }

.xh-about-history { grid-template-columns: minmax(0, 1fr) minmax(38rem, 50rem); column-gap: clamp(3rem, 6.25vw, 7.5rem); height: 37.5rem; max-width: none; margin: 0; padding: 0 var(--xh-about-gutter); background: #fff; }
.xh-about-timeline { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin-top: 2.7rem; border-top: 0; }
.xh-about-timeline article { display: block; min-width: 0; padding: 0; border-bottom: 0; }
.xh-about-timeline span { display: grid; width: 4rem; height: 4rem; place-items: center; margin-bottom: 1rem; border: 1px solid #287dff; border-radius: 50%; color: #287dff; font-size: .78rem; font-weight: 700; letter-spacing: .05em; }
.xh-about-timeline strong { color: #10213a; font-size: .94rem; }
.xh-about-timeline p { max-width: 10rem; margin: .55rem 0 0; font-size: .78rem; line-height: 1.5; }
.xh-about-history-figure { width: 100%; height: 25.625rem; margin: 0; border-radius: .75rem; }

.xh-about-xinghong { grid-template-columns: minmax(0, 1fr) minmax(38rem, 50.625rem); column-gap: clamp(3rem, 6.25vw, 7.5rem); align-items: center; height: 37.5rem; min-height: 0; padding: 0 var(--xh-about-gutter); background: #fbfcfe; }
.xh-about-xinghong-copy { display: block; grid-column: 1; grid-row: 1; padding: 0; }
.xh-about-xinghong-figure { grid-column: 2; grid-row: 1; width: 100%; height: 25rem; min-height: 0; margin: 0; border-radius: .75rem; }
.xh-about-xinghong-copy > p:not(.xh-about-eyebrow) { max-width: 31.25rem; font-size: 1rem; line-height: 1.7; }

@media (max-width: 75rem) {
  .xh-about-history, .xh-about-xinghong { grid-template-columns: minmax(0, 1fr) minmax(28rem, .95fr); }
  .xh-about-glance { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .xh-about-glance .xh-about-section-heading h2 { font-size: 2.125rem; }
  .xh-about-glance-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 2.25rem; }
  .xh-about-glance-figure { height: 22rem; }
  .xh-about-timeline { grid-template-columns: 1fr; gap: .8rem; margin-top: 1.8rem; }
  .xh-about-timeline article { display: grid; grid-template-columns: 3.25rem 1fr; gap: .9rem; align-items: center; }
  .xh-about-timeline span { width: 3.25rem; height: 3.25rem; margin: 0; }
  .xh-about-timeline p { max-width: none; }
}

@media (max-width: 48rem) {
  .xh-about-page { --xh-about-gutter: 1.25rem; }
  .xh-about-hero { height: 43rem; }
  .xh-about-hero-image { object-position: 60% center; }
  .xh-about-hero-overlay { background: linear-gradient(90deg, rgba(4, 18, 40, .9) 0%, rgba(4, 18, 40, .63) 58%, rgba(4, 18, 40, .18) 100%); }
  .xh-about-hero-copy { top: 11.4rem; left: var(--xh-about-gutter); width: calc(100% - 2.5rem); margin: 0; padding: 0; }
  .xh-about-hero .xh-about-eyebrow { font-size: 1rem; }
  .xh-about-hero h1 { font-size: 3.6rem; }
  .xh-about-hero-lead { margin-top: 1.5rem; font-size: 1.25rem; }
  .xh-about-hero-body { font-size: .88rem; }

  .xh-about-glance, .xh-about-history, .xh-about-xinghong { display: flex; flex-direction: column; align-items: stretch; height: auto; padding-top: 5.5rem; padding-bottom: 5.5rem; }
  .xh-about-section-heading h2, .xh-about-history h2, .xh-about-xinghong h2, .xh-about-vision h2 { font-size: 2.8rem; }
  .xh-about-glance-layout { margin-top: 0; }
  .xh-about-glance .xh-about-section-heading h2 { font-size: 2.25rem; }
  .xh-about-glance-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 2rem; margin-top: 2.5rem; }
  .xh-about-glance-figure { width: 100%; height: 16rem; margin-top: 2.75rem; }
  .xh-about-vision { height: auto; min-height: 36rem; padding-top: 5rem; padding-bottom: 5rem; }
  .xh-about-vision-copy { width: 100%; }
  .xh-about-history { gap: 3rem; }
  .xh-about-history-figure { height: 18rem; }
  .xh-about-xinghong-copy { order: 1; }
  .xh-about-xinghong-figure { order: 2; height: 18rem; margin-top: 3rem; }
}


/* xh-after-sales-page */
.xh-after-sales-page { --xh-after-sales-navy: #081726; --xh-after-sales-blue: #2f80ff; --xh-after-sales-ink: #0d1724; --xh-after-sales-muted: #64748b; background: #fff; }
.xh-after-sales-hero { position: relative; min-height: 42rem; overflow: hidden; color: #fff; background: var(--xh-after-sales-navy); }
.xh-after-sales-hero-art { position: absolute; inset: 0; z-index: -1; background: radial-gradient(circle at 82% 30%, rgba(47,128,255,.34), transparent 27%), linear-gradient(115deg, rgba(5,18,31,.98) 0%, rgba(8,23,38,.82) 48%, rgba(8,23,38,.48) 100%), url('../images/figma-support-image.png') 72% center / cover no-repeat; transform: scale(1.04); animation: xh-after-sales-hero-breathe 14s ease-in-out infinite alternate; }
.xh-after-sales-header { position: absolute; }
.xh-after-sales-header .xh-index-header-nav a.is-active::after { bottom: -1.875rem; }
.xh-after-sales-hero-copy { position: relative; z-index: 1; width: min(46rem, calc(100% - 12.5rem)); padding: 12rem 0 6rem 6.25rem; }
.xh-after-sales-eyebrow { margin: 0; color: var(--xh-after-sales-blue); font-size: .75rem; line-height: 1.2; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.xh-after-sales-hero-title { max-width: 44rem; margin: 1.2rem 0 1.8rem; font-family: var(--xh-font-title); font-size: clamp(3.5rem, 6.2vw, 6rem); line-height: .96; font-weight: 700; letter-spacing: -.045em; text-transform: uppercase; }
.xh-after-sales-hero-description { color: #d4dfe8; font-size: 1.1rem; line-height: 1.7; }
.xh-after-sales-hero-description p { margin: 0; }
.xh-after-sales-hero-button, .xh-after-sales-booking-button { display: inline-flex; align-items: center; justify-content: center; min-height: 3.25rem; margin-top: 2rem; padding: 0 1.5rem; border-radius: .25rem; color: #fff; background: var(--xh-after-sales-blue); font-size: .875rem; font-weight: 700; letter-spacing: .03em; text-transform: uppercase; transition: transform .25s ease, background-color .25s ease, box-shadow .25s ease; }
.xh-after-sales-hero-button span, .xh-after-sales-text-link span, .xh-after-sales-service-card a span, .xh-after-sales-booking-link span { margin-left: .45rem; font-size: 1.05rem; }
.xh-after-sales-hero-button:hover, .xh-after-sales-booking-button:hover { transform: translateY(-.2rem); background: #1f70eb; box-shadow: 0 .75rem 1.25rem rgba(47,128,255,.22); }
.xh-after-sales-hero-scroll { position: absolute; bottom: 2rem; left: 6.25rem; display: flex; align-items: center; gap: .7rem; color: rgba(255,255,255,.72); font-size: .7rem; letter-spacing: .08em; text-transform: uppercase; }
.xh-after-sales-hero-scroll span { width: 2.5rem; height: .0625rem; background: var(--xh-after-sales-blue); }
.xh-after-sales-support { display: grid; grid-template-columns: 16.5rem minmax(0, 1fr) minmax(0, 35rem); gap: 1.25rem; padding: 5rem 5.75rem 2.75rem; background: #fff; }
.xh-after-sales-support-heading { display: flex; flex-direction: column; align-items: flex-start; }
.xh-after-sales-support-title { margin: 1rem 0 0; color: var(--xh-after-sales-ink); font-size: 2.15rem; line-height: 1.08; letter-spacing: -.035em; }
.xh-after-sales-support-intro { margin-top: .85rem; color: var(--xh-after-sales-muted); font-size: .875rem; line-height: 1.55; }
.xh-after-sales-support-intro p, .xh-after-sales-service-copy p, .xh-after-sales-step-card p, .xh-after-sales-booking-copy p { margin: 0; }
.xh-after-sales-text-link { margin-top: 1.9rem; color: var(--xh-after-sales-blue); font-size: .875rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.xh-after-sales-services { min-width: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: stretch; }
.xh-after-sales-service-card { min-width: 0; min-height: 12rem; padding: .25rem 1.15rem 0; border-right: .0625rem solid #d8e1e8; text-align: center; }
.xh-after-sales-service-card:last-child { border-right: 0; }
.xh-after-sales-service-card::before { content: ""; display: block; width: 3.75rem; height: 3.75rem; margin: 0 auto .5rem; background: center / contain no-repeat; transition: transform .25s ease; }
.xh-after-sales-service-card:hover::before { transform: translateY(-.25rem) scale(1.04); }
.xh-after-sales-service-title { margin: .55rem 0 .6rem; color: var(--xh-after-sales-ink); font-size: 1rem; line-height: 1.2; }
.xh-after-sales-service-copy { min-height: 3.15rem; color: var(--xh-after-sales-muted); font-size: .75rem; line-height: 1.45; }
.xh-after-sales-service-card a { display: inline-block; margin-top: .8rem; color: var(--xh-after-sales-blue); font-size: .7rem; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; opacity: 0; transform: translateY(.35rem); transition: opacity .25s ease, transform .25s ease; }
.xh-after-sales-service-card:hover a, .xh-after-sales-service-card:focus-within a { opacity: 1; transform: translateY(0); }
.xh-after-sales-dealer-figure { width: 100%; max-width: 35rem; margin: 0; }
.xh-after-sales-dealer-figure img { display: block; width: 100%; height: 15.625rem; border-radius: .75rem; object-fit: cover; }
.xh-after-sales-dealer-figure figcaption { margin-top: .7rem; color: var(--xh-after-sales-muted); font-size: .75rem; }
.xh-after-sales-steps { display: grid; grid-template-columns: 16.5rem minmax(0, 1fr); gap: 2.5rem; padding: 5rem 5.75rem; background: #f5f8fb; }
.xh-after-sales-steps-title { margin: 1rem 0 0; color: var(--xh-after-sales-ink); font-size: 2.15rem; line-height: 1.08; letter-spacing: -.035em; }
.xh-after-sales-step-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.xh-after-sales-step-card { min-height: 11rem; padding: 1.4rem 1.5rem; border: .0625rem solid #e2eaf2; border-radius: .75rem; background: #fff; transition: transform .25s ease, box-shadow .25s ease; }
.xh-after-sales-step-card:hover { transform: translateY(-.25rem); box-shadow: 0 .75rem 1.5rem rgba(9,31,49,.08); }
.xh-after-sales-step-card > span { color: var(--xh-after-sales-blue); font-size: .75rem; font-weight: 700; letter-spacing: .08em; }
.xh-after-sales-step-title { margin: 2.1rem 0 .45rem; color: var(--xh-after-sales-ink); font-size: 1rem; line-height: 1.3; }
.xh-after-sales-step-card > div { color: var(--xh-after-sales-muted); font-size: .75rem; line-height: 1.5; }
.xh-after-sales-booking { display: flex; align-items: center; justify-content: space-between; gap: 2rem; padding: 3.25rem 5.75rem; color: #fff; background: var(--xh-after-sales-navy); }
.xh-after-sales-booking-title { margin: .75rem 0 .65rem; font-size: 2.15rem; line-height: 1.1; letter-spacing: -.035em; }
.xh-after-sales-booking-copy > div { max-width: 33rem; color: #b8c9d8; font-size: .875rem; line-height: 1.55; }
.xh-after-sales-booking-actions { display: flex; align-items: center; gap: 1.5rem; flex-wrap: wrap; }
.xh-after-sales-booking-button { margin-top: 0; white-space: nowrap; }
.xh-after-sales-booking-link { color: #fff; font-size: .8rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; white-space: nowrap; }
.xh-after-sales-footer { background: #06121f; }
@keyframes xh-after-sales-hero-breathe { from { transform: scale(1.04); } to { transform: scale(1.09); } }
@media (max-width: 75rem) {
  .xh-after-sales-hero-copy { width: auto; padding-left: 3.5rem; }
  .xh-after-sales-hero-scroll { left: 3.5rem; }
  .xh-after-sales-support, .xh-after-sales-steps { padding-left: 3.5rem; padding-right: 3.5rem; }
  .xh-after-sales-support { grid-template-columns: 13rem 1fr; }
  .xh-after-sales-dealer-figure { grid-column: 2; max-width: none; margin-top: 1.5rem; }
  .xh-after-sales-steps { grid-template-columns: 13rem 1fr; }
  .xh-after-sales-booking { padding-left: 3.5rem; padding-right: 3.5rem; }
}
@media (max-width: 48rem) {
  .xh-after-sales-hero { min-height: 42rem; }
  .xh-after-sales-hero-art { background-position: 70% center; }
  .xh-after-sales-hero-copy { width: auto; padding: 10rem 1.25rem 5rem; }
  .xh-after-sales-hero-title { font-size: clamp(3rem, 14vw, 4.6rem); }
  .xh-after-sales-hero-description { font-size: .95rem; }
  .xh-after-sales-hero-scroll { left: 1.25rem; bottom: 1.4rem; }
  .xh-after-sales-support, .xh-after-sales-steps { display: flex; flex-direction: column; gap: 2.5rem; padding: 3.5rem 1.25rem; }
  .xh-after-sales-support-title, .xh-after-sales-steps-title, .xh-after-sales-booking-title { font-size: 2rem; }
  .xh-after-sales-services { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 1.75rem; }
  .xh-after-sales-service-card { padding: .25rem .75rem 1rem; border-right: 0; border-bottom: .0625rem solid #d8e1e8; }
  .xh-after-sales-service-card:nth-child(odd) { border-right: .0625rem solid #d8e1e8; }
  .xh-after-sales-service-card:nth-last-child(-n + 2) { border-bottom: 0; }
  .xh-after-sales-service-card a { opacity: 1; transform: none; }
  .xh-after-sales-dealer-figure { margin-top: 0; }
  .xh-after-sales-dealer-figure img { height: 12rem; }
  .xh-after-sales-step-list { grid-template-columns: 1fr; gap: .75rem; }
  .xh-after-sales-step-card { min-height: auto; }
  .xh-after-sales-step-title { margin-top: 1.1rem; }
  .xh-after-sales-booking { align-items: flex-start; flex-direction: column; padding: 3.25rem 1.25rem; }
  .xh-after-sales-booking-actions { gap: 1rem; }
}
@media (prefers-reduced-motion: reduce) {
  .xh-after-sales-hero-art { animation: none; }
  .xh-after-sales-service-card, .xh-after-sales-service-card::before, .xh-after-sales-step-card, .xh-after-sales-hero-button, .xh-after-sales-booking-button { transition: none; }
}

/* GEELY CARE+ / Figma node 301:1214 */
.xh-care-page {
  --care-ink: #102033;
  --care-muted: #63738a;
  --care-blue: #2f80ff;
  --care-green: #a7d9c1;
  --care-line: #dde5ee;
  --care-soft: #f5f8fc;
  --care-navy: #071a2d;
  overflow: hidden;
  color: var(--care-ink);
  background: #f5f8fc;
  font-family: var(--xh-font-body);
}
.xh-care-page *, .xh-care-page *::before, .xh-care-page *::after { box-sizing: border-box; }
.xh-care-page a { color: inherit; }
.xh-care-page p, .xh-care-page h1, .xh-care-page h2, .xh-care-page h3 { margin-top: 0; }
.xh-care-hero { position: relative; height: 820px; min-height: 820px; overflow: hidden; color: #fff; background: var(--care-navy); }
.xh-care-hero-bg { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(5,25,43,.94) 0%, rgba(5,25,43,.68) 42%, rgba(5,25,43,.16) 100%), url('../images/contact/hero.png') center / cover no-repeat; }
.xh-care-header { z-index: 5; top: 18px; left: 100px; right: 100px; height: 80px; color: #fff; }
.xh-care-header .xh-index-header-logo { left: -77px; top: -29px; width: 290px; height: 164px; }
.xh-care-header .xh-index-header-nav { gap: 42px; }
.xh-care-header .xh-index-header-nav a { font-size: 13px; white-space: nowrap; }
.xh-care-header .xh-index-header-nav a.is-active::after { bottom: -24px; left: 50%; width: 87px; transform: translateX(-50%); background: #fff; }
.xh-care-header .xh-index-header-cta { width: 210px; height: 52px; border: 1px solid rgba(255,255,255,.85); border-radius: 0; font-size: 12px !important; letter-spacing: .08em; }
.xh-care-header.is-scrolled { top: 12px; left: 100px; right: 100px; height: 68px; padding: 0 22px; border-color: rgba(255,255,255,.2); background: rgba(7,30,52,.9); }
.xh-care-header.is-scrolled .xh-index-header-logo { left: -22px; top: -29px; }
.xh-care-hero-copy { position: absolute; z-index: 1; top: 250px; left: 100px; width: 660px; }
.xh-care-hero-copy h1 { margin-bottom: 0; font-family: var(--xh-font-title); font-size: 74px; font-weight: 700; line-height: 1.17; letter-spacing: .01em; }
.xh-care-hero-subtitle { margin: 4px 0 20px; font-size: 26px; line-height: 1.3; }
.xh-care-hero-description { max-width: 650px; margin-bottom: 0; color: rgba(255,255,255,.82); font-size: 16px; line-height: 1.52; }
.xh-care-actions { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; }
.xh-care-hero-copy .xh-care-actions { margin-top: 34px; }
.xh-care-button { display: inline-flex; align-items: center; justify-content: center; width: 220px; height: 50px; border: 1px solid var(--care-blue); border-radius: 4px; font-size: 14px; font-weight: 600; line-height: 18px; letter-spacing: 0; text-decoration: none; transition: transform .2s ease, background-color .2s ease, color .2s ease; }
.xh-care-button:hover { transform: translateY(-2px); }
.xh-care-button-primary { color: #fff !important; background: var(--care-blue); }
.xh-care-button-primary:hover { background: #0a5ad7; }
.xh-care-button-secondary { color: #fff !important; border-color: rgba(255,255,255,.9); background: transparent; }
.xh-care-button-secondary:hover { color: var(--care-ink) !important; background: #fff; }
.xh-care-quick-services { position: relative; z-index: 3; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); width: calc(100% - 200px); min-height: 245px; margin: -70px auto 0; padding: 45px 0; border-radius: 18px; background: #fff; box-shadow: 0 8px 22px rgba(0,38,77,.08); }
.xh-care-quick-card { min-width: 0; padding: 0 44px; border-right: 1px solid var(--care-line); text-align: center; }
.xh-care-quick-card:last-child { border-right: 0; }
.xh-care-quick-card img { display: block; width: 50px; height: 50px; margin: 0 auto 24px; object-fit: contain; }
.xh-care-quick-card h2 { margin-bottom: 11px; font-size: 17px; font-weight: 700; line-height: 1.25; }
.xh-care-quick-card p { max-width: 280px; margin: 0 auto; color: var(--care-muted); font-size: 13px; line-height: 1.45; }
.xh-care-feature, .xh-care-centre { display: grid; width: calc(100% - 200px); margin: 58px auto 0; }
.xh-care-feature { min-height: 430px; overflow: hidden; border-radius: 14px; background: #fff; }
.xh-care-feature-maintenance { grid-template-columns: 550px minmax(0, 1fr); min-height: 600px; }
.xh-care-feature-parts { grid-template-columns: 760px minmax(0, 1fr); }
.xh-care-feature-warranty { grid-template-columns: minmax(0, 1fr) 760px; }
.xh-care-feature-copy { display: flex; flex-direction: column; justify-content: center; padding: 64px 70px; }
.xh-care-feature-maintenance .xh-care-feature-copy { padding-left: 30px; padding-right: 70px; }
.xh-care-feature-parts .xh-care-feature-copy, .xh-care-feature-warranty .xh-care-feature-copy { padding-top: 50px; padding-bottom: 50px; }
.xh-care-kicker { margin-bottom: 17px; color: var(--care-blue); font-size: 11px; font-weight: 700; letter-spacing: .16em; line-height: 1.3; }
.xh-care-feature h2, .xh-care-centre h2, .xh-care-faq h2 { margin-bottom: 24px; font-size: 43px; font-weight: 700; line-height: 1.08; letter-spacing: 0; }
.xh-care-feature-copy > p:not(.xh-care-kicker), .xh-care-centre-copy > p:not(.xh-care-kicker) { max-width: 500px; margin-bottom: 0; color: var(--care-muted); font-size: 16px; line-height: 1.6; }
.xh-care-feature-image { min-width: 0; height: 100%; overflow: hidden; }
.xh-care-feature-image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.xh-care-feature-maintenance .xh-care-feature-image img { object-position: center; }
.xh-care-feature-parts .xh-care-feature-image img { object-position: center; }
.xh-care-feature-warranty .xh-care-feature-image img { object-position: center 58%; }
.xh-care-check-list { display: grid; gap: 27px; margin: 30px 0 0; padding: 0; list-style: none; color: var(--care-ink); font-size: 15px; font-weight: 500; line-height: 1.2; }
.xh-care-check-list li { position: relative; min-height: 18px; padding-left: 30px; }
.xh-care-check-list li::before { position: absolute; top: 0; left: 0; display: flex; align-items: center; justify-content: center; width: 18px; height: 18px; border-radius: 50%; background: #2f80ff; color: #fff; font-size: 12px; font-weight: 700; line-height: 1; content: "\2713"; }
.xh-care-value-row { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin-top: 42px; }
.xh-care-value-row article { min-width: 0; }
.xh-care-value-row img { display: block; width: 35px; height: 35px; margin-bottom: 14px; object-fit: contain; }
.xh-care-value-row h3 { margin-bottom: 7px; font-size: 14px; line-height: 1.3; }
.xh-care-value-row p { margin: 0; color: var(--care-muted); font-size: 12px; line-height: 1.45; }
.xh-care-promise-band { position: relative; width: calc(100% - 200px); min-height: 430px; margin: 30px auto 0; overflow: hidden; border-radius: 14px; color: #fff; background: var(--care-navy); }
.xh-care-promise-bg { position: absolute; inset: 0; background: url('../images/after-sales/care-promise-bg.png') 0 0 / 100% 100% no-repeat; }
.xh-care-promise-content { position: relative; z-index: 1; padding: 42px 40px 0; }
.xh-care-promise-mark { display: block; width: 28px; height: 3px; margin-bottom: 28px; border-radius: 2px; background: var(--care-blue); }
.xh-care-promise-content h2 { margin: 0; color: #fff; font-size: 38px; font-weight: 700; line-height: 1.21; letter-spacing: 0; }
.xh-care-promise-content > p { max-width: min(760px, calc(100% - 300px)); margin: 12px 0 0; color: #c7d7e6; font-size: 16px; line-height: 1.625; }
.xh-care-promise-cta { position: absolute; top: 94px; right: 90px; width: 240px; }
.xh-care-promise-items { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: 94px; margin: 116px 0 0; padding: 0 67px; }
.xh-care-promise-items article { display: grid; grid-template-columns: 39px minmax(0, 1fr); column-gap: 17px; align-items: center; min-width: 0; }
.xh-care-promise-items img { width: 39px; height: 39px; object-fit: contain; }
.xh-care-promise-items h3 { margin: 0; color: #fff; font-size: 15px; font-weight: 600; line-height: 1.333; }
.xh-care-promise-items p { margin: 8px 0 0; color: #afc2d5; font-size: 12px; line-height: 1.5; }
.xh-care-program { width: calc(100% - 200px); margin: 40px auto 0; padding: 10px 0 40px; }
.xh-care-program-title { margin: 0; color: #102033; font-size: 18px; font-weight: 600; line-height: 1.222; letter-spacing: 0; text-align: center; }
.xh-care-program-title::after { display: block; width: 280px; height: 1px; margin: 16px auto 0; background: #dde5ee; content: ''; }
.xh-care-promise-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 30px 40px; width: 100%; margin: 41px 0 0; padding: 0; }
.xh-care-promise-grid article { display: grid; grid-template-columns: 42px minmax(0, 1fr); column-gap: 31px; align-items: start; min-height: 160px; padding: 48px 32px 44px; border: 1px solid #dde5ee; border-radius: 12px; background: #fff; }
.xh-care-promise-grid img { display: block; width: 42px; height: 42px; margin: 0; object-fit: contain; }
.xh-care-promise-grid h3 { margin: 0; color: #102033; font-size: 18px; font-weight: 600; line-height: 1.222; }
.xh-care-promise-grid p { margin: 4px 0 0; color: var(--care-muted); font-size: 13px; line-height: 1.538; }
.xh-care-centre { grid-template-columns: minmax(0, 1fr) 55.81%; min-height: 540px; margin: 40px auto 0; overflow: hidden; border-radius: 14px; background: #fff; }
.xh-care-centre-copy { display: block; padding: 42px 0 37px 40px; }
.xh-care-centre-mark { display: block; width: 28px; height: 3px; border-radius: 2px; background: var(--care-blue); }
.xh-care-centre-copy .xh-care-kicker { margin: 15px 0 16px; color: var(--care-blue); font-size: 13px; font-weight: 600; line-height: 1.23; letter-spacing: 0; }
.xh-care-centre h2 { margin: 0 0 17px; font-size: 38px; line-height: 1.21; letter-spacing: 0; }
.xh-care-centre-copy > p.xh-care-centre-desc { max-width: 600px; margin: 0; color: var(--care-muted); font-size: 16px; line-height: 1.625; }
.xh-care-centre-image { position: relative; min-width: 0; overflow: hidden; }
.xh-care-centre-image img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.xh-care-centre-meta { display: grid; grid-template-columns: 147px 129px minmax(0, 1fr); gap: 122px; margin: 75px 0 0; }
.xh-care-centre-meta div { min-width: 0; }
.xh-care-centre-meta img { display: block; width: 50px; height: 50px; margin-bottom: 19px; object-fit: contain; }
.xh-care-centre-meta strong { display: block; color: var(--care-ink); font-size: 14px; font-weight: 700; line-height: 1.2; }
.xh-care-centre-meta span { display: block; margin-top: 10px; color: var(--care-muted); font-size: 13px; font-weight: 500; line-height: 1.23; }
.xh-care-centre-meta .xh-care-centre-accent { color: var(--care-blue); }
.xh-care-centre-cta { width: 260px; margin-top: 59px; }
.xh-care-faq { display: block; width: calc(100% - 200px); margin: 40px auto 0; padding: 12px 0 76px; background: transparent; }
.xh-care-faq h2 { margin: 0 0 24px; color: var(--care-ink); font-size: 18px; font-weight: 600; line-height: 1.222; letter-spacing: 0; }
.xh-care-faq .xh-index-faq-list { display: grid; gap: 18px; width: 100%; margin: 0; }
.xh-care-faq .xh-index-faq-list article { margin: 0; overflow: hidden; border: 1px solid #d6e0eb; border-radius: 4px; background: #fff; transition: border-color .25s ease; }
.xh-care-faq .xh-index-faq-list article:hover, .xh-care-faq .xh-index-faq-list article.is-open { border-color: #b9cde6; }
.xh-care-faq .xh-index-faq-list button { display: flex; align-items: center; justify-content: space-between; gap: 24px; width: 100%; min-height: 68px; padding: 0 30px 0 22px; border: 0; color: var(--care-ink); background: transparent; font-family: inherit; font-size: 15px; font-weight: 500; text-align: left; cursor: pointer; transition: color .25s ease; }
.xh-care-faq .xh-index-faq-list button > span:first-child { font-size: 15px; font-weight: 500; }
.xh-care-faq .xh-index-faq-list button:hover { color: var(--care-blue); }
.xh-care-faq .xh-index-faq-list button > span:last-child { flex: none; color: var(--care-ink); font-size: 24px; font-weight: 600; line-height: 1; transition: color .25s ease; }
.xh-care-faq .xh-index-faq-list article.is-open button > span:last-child { color: var(--care-blue); }
/* 展开方式与其它页一致：基类的 display 切换（原为 grid-template-rows 动画，为求一致已移除） */
.xh-care-faq .xh-index-faq-list article > .xh-care-faq-answer { padding: 0 30px 20px 22px; color: var(--care-muted); font-size: 13px; line-height: 24px; }
.xh-care-cta { display: flex; align-items: center; justify-content: space-between; gap: 40px; min-height: 320px; padding: 60px 100px; color: #fff; background: var(--care-blue); }
.xh-care-cta h2 { margin-bottom: 15px; font-size: 43px; line-height: 1.08; }
.xh-care-cta p { margin: 0; color: rgba(255,255,255,.84); font-size: 16px; }
.xh-care-cta .xh-care-button-secondary { border-color: #fff; }
.xh-care-footer { min-height: 520px; padding: 70px 100px 28px; color: #fff; background: #061522; }
.xh-care-footer-top { display: grid; grid-template-columns: 380px minmax(0, 1fr); gap: 120px; }
.xh-care-footer .xh-index-footer-brand { display: block; }
.xh-care-footer .xh-index-footer-brand > img { display: block; width: 180px; height: auto; margin: -30px 0 21px -16px; }
.xh-care-footer .xh-index-footer-brand > p { max-width: 300px; margin: 0; color: rgba(255,255,255,.63); font-size: 13px; line-height: 1.6; }
.xh-care-footer .xh-index-footer-social { display: flex; gap: 14px; margin-top: 28px; }
.xh-care-footer .xh-index-footer-social a { display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; border: 1px solid rgba(255,255,255,.35); color: #fff; }
.xh-care-footer .xh-index-footer-links { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 44px; }
.xh-care-footer .xh-index-footer-links > div { display: flex; flex-direction: column; align-items: flex-start; gap: 13px; }
.xh-care-footer .xh-index-footer-title { margin: 0 0 17px; color: var(--care-green); font-size: 12px; letter-spacing: .13em; }
.xh-care-footer .xh-index-footer-links a { color: rgba(255,255,255,.78); font-size: 13px; line-height: 1.35; text-decoration: none; }
.xh-care-footer .xh-index-footer-links a:hover, .xh-care-footer .xh-index-footer-bottom a:hover { color: #fff; }
.xh-care-footer .xh-index-footer-bottom { display: flex; justify-content: space-between; gap: 20px; margin-top: 100px; padding-top: 28px; border-top: 1px solid rgba(255,255,255,.2); color: rgba(255,255,255,.55); font-size: 12px; }
.xh-care-footer .xh-index-footer-bottom > div { display: flex; gap: 28px; }
.xh-care-footer .xh-index-footer-bottom a { color: rgba(255,255,255,.55); text-decoration: none; }
@media (max-width: 1600px) {
  .xh-care-centre-meta { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; }
}
@media (max-width: 1200px) {
  .xh-care-header { left: 56px; right: 56px; }
  .xh-care-header .xh-index-header-nav { gap: 20px; }
  .xh-care-header .xh-index-header-cta { width: 176px; }
  .xh-care-hero-copy { left: 56px; }
  .xh-care-quick-services, .xh-care-feature, .xh-care-centre, .xh-care-program, .xh-care-promise-band, .xh-care-faq { width: calc(100% - 112px); }
  .xh-care-quick-card { padding: 0 22px; }
  .xh-care-feature-maintenance { grid-template-columns: 42% minmax(0, 1fr); }
  .xh-care-feature-parts { grid-template-columns: 46% minmax(0, 1fr); }
  .xh-care-feature-warranty { grid-template-columns: minmax(0, 1fr) 46%; }
  .xh-care-centre { grid-template-columns: minmax(0, 1fr) 52%; }
  .xh-care-centre-copy { padding: 42px 0 37px 32px; }
  .xh-care-centre-meta { grid-template-columns: repeat(3, minmax(0, 1fr)); justify-content: start; gap: 24px; margin-top: 48px; }
  .xh-care-promise-content { padding: 42px 32px 0; }
  .xh-care-promise-cta { right: 32px; }
  .xh-care-promise-items { column-gap: 40px; padding: 0 40px; }
  .xh-care-promise-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
  .xh-care-feature-copy { padding-left: 42px; padding-right: 42px; }
  .xh-care-feature-maintenance .xh-care-feature-copy { padding-left: 0; padding-right: 42px; }
  .xh-care-cta, .xh-care-footer { padding-left: 56px; padding-right: 56px; }
  .xh-care-footer-top { gap: 60px; }
}
@media (max-width: 900px) {
  .xh-care-centre-meta { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px 28px; }
}
@media (max-width: 768px) {
  .xh-care-hero { height: 720px; min-height: 720px; }
  .xh-care-header, .xh-care-header.is-scrolled { top: 12px; left: 20px; right: 20px; height: 58px; padding: 0 16px; }
  .xh-care-header .xh-index-header-logo, .xh-care-header.is-scrolled .xh-index-header-logo { left: -10px; top: -24px; width: 204px; height: 116px; }
  .xh-care-header .xh-index-header-nav { top: 58px; right: 0; left: 0; padding: 24px 22px; background: rgba(7,30,52,.97); }
  .xh-care-header .xh-index-header-nav a.is-active::after { display: none; }
  .xh-care-header .xh-index-header-cta { width: 100%; height: 48px; }
  .xh-care-hero-bg { background-position: 60% center; }
  .xh-care-hero-copy { top: 200px; left: 24px; width: calc(100% - 48px); }
  .xh-care-hero-copy h1 { font-size: 62px; }
  .xh-care-hero-subtitle { max-width: 330px; font-size: 21px; }
  .xh-care-hero-description { max-width: 490px; font-size: 14px; }
  .xh-care-hero-copy .xh-care-actions { margin-top: 28px; }
  .xh-care-actions { gap: 10px; }
  .xh-care-button { width: min(220px, calc(50vw - 29px)); font-size: 10px; }
  .xh-care-quick-services { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); width: calc(100% - 32px); min-height: auto; margin-top: -42px; padding: 30px 0 18px; }
  .xh-care-quick-card { min-height: 180px; padding: 0 15px 24px; border-right: 0; border-bottom: 1px solid var(--care-line); }
  .xh-care-quick-card:nth-child(odd) { border-right: 1px solid var(--care-line); }
  .xh-care-quick-card:nth-last-child(-n + 2) { border-bottom: 0; padding-bottom: 0; }
  .xh-care-quick-card img { width: 42px; height: 42px; margin-bottom: 16px; }
  .xh-care-quick-card h2 { font-size: 14px; }
  .xh-care-quick-card p { font-size: 12px; }
  .xh-care-feature, .xh-care-centre { display: flex; flex-direction: column; width: calc(100% - 32px); margin-top: 42px; }
  .xh-care-feature-maintenance { min-height: 0; }
  .xh-care-feature-parts, .xh-care-feature-warranty, .xh-care-centre { min-height: 0; }
  .xh-care-feature-copy, .xh-care-feature-maintenance .xh-care-feature-copy { order: 1; padding: 42px 0; }
  .xh-care-centre { margin-top: 32px; }
  .xh-care-centre-copy { order: 1; padding: 36px 24px; }
  .xh-care-feature-image, .xh-care-centre-image { order: 2; height: 270px; }
  .xh-care-centre-meta { grid-template-columns: repeat(2, minmax(0, 1fr)); justify-content: start; gap: 26px 32px; margin-top: 40px; }
  .xh-care-centre-cta { margin-top: 36px; }
  .xh-care-feature h2, .xh-care-centre h2, .xh-care-faq h2, .xh-care-promise-content h2, .xh-care-cta h2 { font-size: 34px; }
  .xh-care-value-row { gap: 15px; margin-top: 32px; }
  .xh-care-value-row h3 { font-size: 12px; }
  .xh-care-value-row p { font-size: 11px; }
  .xh-care-promise-band { min-height: 0; margin-top: 32px; }
  .xh-care-promise-content { padding: 36px 24px 40px; }
  .xh-care-promise-content > p { max-width: none; }
  .xh-care-promise-cta { position: static; margin-top: 26px; }
  .xh-care-promise-items { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 24px; row-gap: 26px; margin-top: 36px; padding: 0; }
  .xh-care-promise-items img { width: 34px; height: 34px; }
  .xh-care-promise-items article { grid-template-columns: 34px minmax(0, 1fr); column-gap: 14px; }
  .xh-care-program { width: calc(100% - 32px); margin-top: 32px; padding: 8px 0 32px; }
  .xh-care-promise-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; width: 100%; margin-top: 28px; }
  .xh-care-promise-grid article { min-height: 0; padding: 24px 20px 26px; }
  .xh-care-promise-grid img { width: 36px; height: 36px; }
  .xh-care-promise-grid h3 { font-size: 15px; }
  .xh-care-faq { width: calc(100% - 32px); margin-top: 32px; padding: 8px 0 56px; }
  .xh-care-faq .xh-index-faq-list button { padding-right: 20px; padding-left: 18px; }
  .xh-care-faq .xh-index-faq-list article > .xh-care-faq-answer { padding-right: 20px; padding-left: 18px; }
  .xh-care-cta { align-items: flex-start; flex-direction: column; min-height: 360px; padding: 54px 24px; }
  .xh-care-cta .xh-care-actions { width: 100%; }
  .xh-care-cta .xh-care-button { width: calc(50% - 5px); }
  .xh-care-footer { min-height: 0; padding: 52px 24px 24px; }
  .xh-care-footer-top { display: block; }
  .xh-care-footer .xh-index-footer-brand > img { margin-top: -20px; }
  .xh-care-footer .xh-index-footer-links { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 36px 20px; margin-top: 46px; }
  .xh-care-footer .xh-index-footer-links > div:last-child { grid-column: 1 / -1; }
  .xh-care-footer .xh-index-footer-bottom { align-items: flex-start; flex-direction: column; gap: 14px; margin-top: 55px; }
}
@media (max-width: 420px) {
  .xh-care-hero-copy h1 { font-size: 48px; }
  .xh-care-hero-subtitle { font-size: 18px; }
  .xh-care-hero-description { font-size: 13px; }
  .xh-care-hero-copy .xh-care-actions { display: grid; grid-template-columns: 1fr; }
  .xh-care-hero-copy .xh-care-button, .xh-care-cta .xh-care-button { width: 100%; }
  .xh-care-quick-card { min-height: 204px; padding-left: 10px; padding-right: 10px; }
  .xh-care-value-row { grid-template-columns: 1fr; }
  .xh-care-value-row article { display: grid; grid-template-columns: 36px minmax(0, 1fr); column-gap: 12px; align-items: start; }
  .xh-care-value-row img { grid-row: span 2; margin-bottom: 0; }
  .xh-care-value-row h3 { margin-bottom: 4px; }
  .xh-care-value-row p { grid-column: 2; }
  .xh-care-promise-grid { grid-template-columns: 1fr; gap: 14px; }
  .xh-care-promise-grid article { padding: 22px 18px; }
  .xh-care-promise-items { grid-template-columns: 1fr; row-gap: 22px; }
  .xh-care-centre-meta { display: grid; grid-template-columns: 1fr; gap: 22px; margin-top: 32px; }
  .xh-care-promise-cta, .xh-care-centre-cta { width: 100%; }
  .xh-care-program-title::after { width: 160px; }
}
@media (prefers-reduced-motion: reduce) {
  .xh-care-page *, .xh-care-page *::before, .xh-care-page *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}




/* GEELY Zambia Contact Us / Figma node 301:1655 */
.xh-contact-page { --contact-blue: #0d63f2; --contact-ink: #091421; --contact-muted: #61738c; --contact-line: #d6e0eb; overflow: hidden; color: var(--contact-ink); background: #f6f9fb; font-family: var(--xh-font-body); }
.xh-contact-page *, .xh-contact-page *::before, .xh-contact-page *::after { box-sizing: border-box; }
.xh-contact-page h1, .xh-contact-page h2, .xh-contact-page h3, .xh-contact-page p { margin-top: 0; }
.xh-contact-page a { color: inherit; }
.xh-contact-hero { position: relative; height: 740px; min-height: 740px; overflow: hidden; color: #fff; background: #071727; }
.xh-contact-hero-background { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(3,14,26,.92), rgba(3,14,26,.18)), url('../images/contact/hero.png') center / cover no-repeat; }
.xh-contact-header { top: 18px; left: 100px; right: 100px; height: 80px; }
.xh-contact-header .xh-index-header-logo { top: -29px; left: -77px; width: 290px; height: 164px; }
.xh-contact-header .xh-index-header-nav { gap: 44px; }
.xh-contact-header .xh-index-header-nav a { font-size: 13px; }
.xh-contact-header .xh-index-header-nav a.is-active::after { right: auto; bottom: -24px; left: 50%; width: 79px; transform: translateX(-50%); background: #2f80ff; }
.xh-contact-header .xh-index-header-cta { width: 210px; height: 52px; border-radius: 4px; font-size: 12px !important; }
.xh-contact-hero-copy { position: absolute; z-index: 1; top: 220px; left: 100px; width: 620px; }
.xh-contact-hero-copy h1 { margin: 0; font-family: var(--xh-font-title); font-size: 70px; font-weight: 700; line-height: 1; }
.xh-contact-hero-subtitle { margin: 15px 0 13px; font-size: 30px; font-weight: 600; line-height: 1.2; }
.xh-contact-hero-description { width: 610px; margin: 0; color: #e5edf5; font-size: 19px; line-height: 1.35; }
.xh-contact-actions { display: flex; gap: 16px; margin-top: 74px; }
.xh-contact-button { display: inline-flex; align-items: center; justify-content: center; width: 220px; height: 50px; border: 1px solid transparent; border-radius: 2px; color: #fff !important; font-size: 14px; font-weight: 600; text-decoration: none; transition: transform .2s ease, background-color .2s ease; }
.xh-contact-button:hover { transform: translateY(-2px); }
.xh-contact-button-primary { background: var(--contact-blue); }
.xh-contact-button-secondary { border-color: rgba(255,255,255,.8); background: rgba(5,20,36,.55); }
.xh-contact-quick { position: relative; z-index: 3; display: grid; grid-template-columns: repeat(3, 1fr); width: calc(100% - 200px); height: 260px; margin: -85px auto 60px; overflow: hidden; border-radius: 16px; background: #fff; box-shadow: 0 8px 24px rgba(0,0,0,.08); }
.xh-contact-quick article { position: relative; display: flex; flex-direction: column; align-items: center; padding-top: 46px; text-align: center; }
.xh-contact-quick article:not(:last-child)::after { content: ''; position: absolute; top: 40px; right: 0; width: 1px; height: 180px; background: var(--contact-line); }
.xh-contact-quick img { width: 47px; height: 47px; margin-bottom: 16px; object-fit: contain; }
.xh-contact-quick h2 { margin: 0 0 8px; font-size: 18px; line-height: 1.25; }
.xh-contact-quick p, .xh-contact-quick a { margin: 0; font-size: 13px; line-height: 1.5; text-decoration: none; }
.xh-contact-quick > article > a:first-of-type, .xh-contact-quick-strong { color: var(--contact-ink); font-size: 16px; font-weight: 500; }
.xh-contact-quick article > p:last-child, .xh-contact-quick article > a:last-child { margin-top: 10px; color: var(--contact-muted); }
.xh-contact-quick article:nth-child(n+2) > a:last-child { color: #1a6ef2; font-size: 11px; font-weight: 600; }
.xh-contact-main { display: grid; grid-template-columns: 660px minmax(0, 1fr); gap: 50px; width: calc(100% - 200px); margin: 0 auto; }
.xh-contact-form { min-height: 900px; padding: 27px 33px 30px; border: 1px solid var(--contact-line); border-radius: 12px; background: #fff; }
.xh-contact-form-tabs { display: flex; gap: 20px; height: 38px; }
.xh-contact-form-tabs button { position: relative; padding: 0; border: 0; color: var(--contact-muted); background: transparent; font-size: 13px; font-weight: 600; }
.xh-contact-form-tabs button.is-active { color: #1a6ef2; }
.xh-contact-form-tabs button.is-active::after { content: ''; position: absolute; right: 0; bottom: 0; left: 0; height: 2px; background: #1a6ef2; }
.xh-contact-form h2 { margin: 11px 0 5px; font-size: 30px; line-height: 1.2; }
.xh-contact-form > p { margin: 0 0 38px; color: var(--contact-muted); font-size: 16px; }
.xh-contact-form label { display: block; margin-bottom: 20px; color: var(--contact-ink); font-size: 13px; font-weight: 600; line-height: 1.3; }
.xh-contact-form input, .xh-contact-form select, .xh-contact-form textarea { display: block; width: 100%; height: 58px; margin-top: 10px; padding: 0 16px; border: 1px solid var(--contact-line); border-radius: 6px; outline: 0; color: var(--contact-ink); background: #fcfeff; font: inherit; font-size: 14px; font-weight: 400; }
.xh-contact-form input::placeholder, .xh-contact-form textarea::placeholder { color: #8c9cad; }
.xh-contact-form input:focus, .xh-contact-form select:focus, .xh-contact-form textarea:focus { border-color: #1a6ef2; box-shadow: 0 0 0 2px rgba(26,110,242,.12); }
.xh-contact-form-row { display: grid; grid-template-columns: repeat(2, 1fr); gap: 28px; }
.xh-contact-form textarea { height: 140px; padding-top: 16px; resize: vertical; }
.xh-contact-form-status { display: none; margin: -6px 0 14px; font-size: 14px; line-height: 1.5; font-weight: 600; }
.xh-contact-form-status.is-visible { display: block; }
.xh-contact-form-status.is-success { color: #0a7d3c; }
.xh-contact-form-status.is-error { color: #c53030; }
.xh-contact-form-submit { width: 190px; height: 50px; margin-top: 2px; border: 0; border-radius: 2px; color: #fff; background: var(--contact-blue); font-size: 14px; font-weight: 600; cursor: pointer; }
.xh-contact-form-submit:disabled { opacity: .72; cursor: default; }
.xh-contact-side { display: grid; grid-template-rows: 420px 430px; gap: 50px; min-width: 0; }
.xh-contact-map { position: relative; overflow: hidden; border-radius: 12px; background: #e9f0f6; }
.xh-contact-map img { display: block; width: 100%; height: 100%; object-fit: cover; }
.xh-contact-map a { position: absolute; right: 34px; bottom: 34px; display: inline-flex; align-items: center; justify-content: center; width: 176px; height: 44px; border-radius: 2px; color: #fff; background: var(--contact-blue); font-size: 11px; font-weight: 600; text-decoration: none; }
.xh-contact-touch { position: relative; overflow: hidden; border-radius: 12px; color: #fff; background: #061522; }
.xh-contact-touch-background { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(3,14,26,.94) 0%, rgba(3,14,26,.55) 48%, rgba(3,14,26,.08) 100%), url('../images/contact/touch.png') center / cover no-repeat; }
.xh-contact-touch-copy { position: relative; z-index: 1; width: 49%; padding: 40px 0 0 40px; }
.xh-contact-touch-copy > p { margin: 0 0 22px; color: #7caeff; font-size: 11px; font-weight: 600; }
.xh-contact-touch-copy h2 { margin: 0 0 12px; font-size: 28px; line-height: 1.2; }
.xh-contact-touch-copy > span { display: block; color: #d6e2ed; font-size: 13px; line-height: 1.55; }
.xh-contact-touch-copy ul { padding: 0; margin: 25px 0 0; list-style: none; }
.xh-contact-touch-copy li { position: relative; margin-top: 14px; padding-left: 17px; color: #f1f5f8; font-size: 12px; }
.xh-contact-touch-copy li::before { content: '✓'; position: absolute; left: 0; color: #58a0ff; }
.xh-contact-centre { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; width: calc(100% - 200px); margin: 92px auto 0; }
.xh-contact-centre > h2 { grid-column: 1 / -1; margin-bottom: 4px; font-size: 26px; line-height: 1.25; }
.xh-contact-centre article { min-width: 0; overflow: hidden; border-radius: 12px; background: #fff; box-shadow: 0 8px 20px rgba(9,20,33,.09); }
.xh-contact-centre article > img { display: block; width: 100%; height: 250px; object-fit: cover; object-position: center 58%; }
.xh-contact-centre article > div { display: flex; flex-direction: column; align-items: flex-start; min-height: 235px; padding: 24px 28px; }
.xh-contact-centre h3 { margin: 0 0 12px; font-size: 17px; }
.xh-contact-centre p, .xh-contact-centre article a, .xh-contact-centre article span { margin: 0 0 8px; color: var(--contact-muted); font-size: 12px; line-height: 1.45; text-decoration: none; }
.xh-contact-centre article a:last-child { margin-top: 7px; color: #1a6ef2; font-size: 10px; font-weight: 600; }
/* xh-contact-faq — 与 BOOK A TEST DRIVE 的 Find Quick Answers 完全一致（Figma node 301:1824 / 301:2081 规格相同） */
/* 挂 xh-index-faq 只是为了复用其手风琴，必须清掉基类的 padding/背景，否则会把联系页原有留白放大一倍 */
.xh-contact-faq { width: calc(100% - 200px); margin: 135px auto 185px; padding: 0; background: transparent; }
.xh-contact-faq-kicker p { margin: 0; color: var(--contact-muted); font-size: 13px; line-height: 16px; font-weight: 600; }
/* 用后代选择器抬高特异性：.xh-contact-page h2 的 margin-top:0 为 (0,1,1)，会盖掉单类选择器 */
.xh-contact-faq .xh-contact-faq-title { margin: 14px 0 0; color: var(--contact-ink); font-size: 30px; line-height: 36px; font-weight: 700; }
.xh-contact-faq .xh-index-faq-list { margin-top: 34px; }
.xh-contact-faq .xh-index-faq-list article { margin-bottom: 18px; border: 1px solid var(--contact-line); border-radius: 4px; background: #fff; transition: border-color .25s ease; }
.xh-contact-faq .xh-index-faq-list article:last-child { margin-bottom: 0; }
.xh-contact-faq .xh-index-faq-list article:hover { border-color: #b9cde6; }
.xh-contact-faq .xh-index-faq-list button { min-height: 68px; padding: 0 30px 0 22px; color: var(--contact-ink); font-size: 15px; font-weight: 500; transition: color .25s ease; }
.xh-contact-faq .xh-index-faq-list button > span:first-child { font-size: 15px; font-weight: 500; }
.xh-contact-faq .xh-index-faq-list button > span:last-child { font-size: 24px; font-weight: 600; line-height: 1; transition: color .25s ease; }
.xh-contact-faq .xh-index-faq-list button:hover { color: var(--contact-blue); }
.xh-contact-faq .xh-index-faq-list article.is-open { border-color: #b9cde6; }
.xh-contact-faq .xh-index-faq-list article.is-open button > span:last-child { color: var(--contact-blue); }
.xh-contact-faq .xh-index-faq-list article > .xh-contact-faq-answer { padding: 0 30px 20px 22px; color: var(--contact-muted); font-size: 13px; line-height: 24px; }
.xh-contact-cta { position: relative; height: 320px; overflow: hidden; color: #fff; background: #071727; }
.xh-contact-cta-background { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(4,20,34,.84), rgba(4,20,34,.05)), url('../images/contact/cta.png') center / cover no-repeat; }
.xh-contact-cta-copy { position: relative; z-index: 1; padding: 62px 0 0 100px; }
.xh-contact-cta h2 { margin: 0 0 2px; font-size: 38px; line-height: 1.12; }
.xh-contact-cta p { margin: 0; color: #e2eaf1; font-size: 14px; }
.xh-contact-cta .xh-contact-button { margin-top: 28px; }
.xh-contact-footer { min-height: 520px; padding: 70px 100px 28px; }
.xh-contact-footer .xh-index-footer-social a { padding: 0; overflow: hidden; }
.xh-contact-footer .xh-index-footer-social img { display: block; width: 34px; height: 34px; object-fit: contain; }
.xh-contact-footer .xh-index-footer-brand img { width: 180px; height: auto; margin: -30px 0 20px -16px; }
.xh-contact-footer .xh-index-footer-brand > div { max-width: 300px; color: #b7c5d2; font-size: 13px; line-height: 1.6; }
.xh-contact-footer .xh-index-footer-social { gap: 8px; margin-top: 25px; }
.xh-contact-footer .xh-index-footer-social a { width: 34px; height: 34px; }
.xh-contact-footer .xh-index-footer-links { gap: 44px; }
.xh-contact-footer .xh-index-footer-title { margin-bottom: 17px; color: #fff; font-size: 12px; letter-spacing: .1em; }
.xh-contact-footer .xh-index-footer-links a { font-size: 13px; }
.xh-contact-footer .xh-index-footer-bottom { margin-top: 100px; padding-top: 28px; font-size: 12px; }
@media (max-width: 1200px) {
  .xh-contact-header { left: 56px; right: 56px; }
  .xh-contact-header .xh-index-header-nav { gap: 20px; }
  .xh-contact-header .xh-index-header-cta { width: 176px; }
  .xh-contact-hero-copy { left: 56px; }
  .xh-contact-quick, .xh-contact-main, .xh-contact-centre, .xh-contact-faq { width: calc(100% - 112px); }
  .xh-contact-main { grid-template-columns: minmax(440px, .85fr) 1.15fr; gap: 30px; }
  .xh-contact-form-row { gap: 18px; }
  .xh-contact-cta-copy { padding-left: 56px; }
  .xh-contact-footer { padding-right: 56px; padding-left: 56px; }
}
@media (max-width: 768px) {
  .xh-contact-hero { height: 680px; min-height: 680px; }
  .xh-contact-header, .xh-contact-header.is-scrolled { top: 12px; right: 20px; left: 20px; height: 58px; padding: 0 16px; }
  .xh-contact-header .xh-index-header-logo, .xh-contact-header.is-scrolled .xh-index-header-logo { top: -24px; left: -10px; width: 204px; height: 116px; }
  .xh-contact-header .xh-index-header-nav { top: 58px; right: 0; left: 0; padding: 24px 22px; background: rgba(7,30,52,.97); }
  .xh-contact-header .xh-index-header-nav a.is-active::after { display: none; }
  .xh-contact-hero-background { background-position: 58% center; }
  .xh-contact-hero-copy { top: 190px; left: 24px; width: calc(100% - 48px); }
  .xh-contact-hero-copy h1 { font-size: 52px; }
  .xh-contact-hero-subtitle { font-size: 22px; }
  .xh-contact-hero-description { width: 100%; max-width: 520px; font-size: 15px; }
  .xh-contact-actions { gap: 10px; margin-top: 48px; }
  .xh-contact-button { width: min(220px, calc(50vw - 29px)); font-size: 11px; }
  .xh-contact-quick { grid-template-columns: 1fr; width: calc(100% - 32px); height: auto; margin-top: -48px; }
  .xh-contact-quick article { min-height: 210px; padding: 32px 16px; }
  .xh-contact-quick article:not(:last-child)::after { top: auto; right: 24px; bottom: 0; left: 24px; width: auto; height: 1px; }
  .xh-contact-main { grid-template-columns: 1fr; width: calc(100% - 32px); gap: 28px; }
  .xh-contact-form { min-height: 0; padding: 26px 20px 28px; }
  .xh-contact-form h2 { font-size: 26px; }
  .xh-contact-form > p { font-size: 14px; }
  .xh-contact-form-row { grid-template-columns: 1fr; gap: 0; }
  .xh-contact-form-submit { width: 100%; }
  .xh-contact-side { grid-template-rows: 300px 380px; gap: 28px; }
  .xh-contact-map a { right: 18px; bottom: 18px; }
  .xh-contact-touch-copy { width: 65%; padding: 32px 0 0 24px; }
  .xh-contact-centre, .xh-contact-faq { width: calc(100% - 32px); }
  .xh-contact-centre { grid-template-columns: 1fr; gap: 20px; margin-top: 58px; }
  .xh-contact-centre article, .xh-contact-centre article > img { width: 100%; }
  .xh-contact-faq { margin-top: 80px; margin-bottom: 70px; }
  .xh-contact-faq .xh-index-faq-list button { padding-right: 20px; padding-left: 18px; }
  .xh-contact-faq .xh-index-faq-list article > .xh-contact-faq-answer { padding-right: 20px; padding-left: 18px; }
  .xh-contact-cta { height: 330px; }
  .xh-contact-cta-copy { padding: 54px 24px 0; }
  .xh-contact-cta h2 { font-size: 30px; }
  .xh-contact-footer { grid-template-columns: 1fr; gap: 36px; min-height: 0; padding: 52px 24px 24px; }
  .xh-contact-footer .xh-index-footer-links { grid-template-columns: repeat(2, 1fr); gap: 36px 20px; }
  .xh-contact-footer .xh-index-footer-links > div:last-child { grid-column: 1 / -1; }
  .xh-contact-footer .xh-index-footer-bottom { align-items: flex-start; flex-direction: column; gap: 14px; margin-top: 50px; }
}
@media (max-width: 420px) {
  .xh-contact-hero-copy h1 { font-size: 46px; }
  .xh-contact-actions { display: grid; grid-template-columns: 1fr; }
  .xh-contact-button { width: 100%; }
  .xh-contact-touch-copy { width: 82%; }
  .xh-contact-centre article > img { height: 220px; }
  .xh-contact-cta h2 { font-size: 27px; }
}

/* xh-products-page */
.xh-products-page { --products-ink: #0d1724; --products-muted: #617082; --products-blue: #2f80ff; --products-line: #e5edf2; --products-bg: #f5f8fb; --products-shell: 107.5rem; --products-gutter: 6.25rem; overflow: hidden; color: var(--products-ink); background: var(--products-bg); }
.xh-products-page h1, .xh-products-page h2, .xh-products-page h3, .xh-products-page p { margin-top: 0; }

/* xh-products-shared */
.xh-products-accent { margin-bottom: .5rem;  display: block; width: 1.75rem; height: .1875rem; border-radius: .125rem; background: var(--products-blue); }
.xh-products-accent-deep { background: #0d6bf2; }
.xh-products-button { display: inline-flex; align-items: center; justify-content: center; width: 13.75rem; height: 3rem; border: 0; border-radius: .25rem; font-size: .9375rem; font-weight: 600; letter-spacing: .02em; text-transform: uppercase; transition: transform .25s ease, background-color .25s ease, border-color .25s ease; }
.xh-products-button:hover { transform: translateY(-.125rem); }
.xh-products-button-primary { color: #fff; background: var(--products-blue); }
.xh-products-button-primary:hover { background: #176de9; }
.xh-products-button-secondary { border: .09375rem solid #fff; color: #fff; background: transparent; }
.xh-products-button-secondary:hover { background: rgba(255,255,255,.12); }
.xh-products-button-tall { height: 3.25rem; }

/* xh-products-hero */
.xh-products-hero { position: relative; min-height: 51.25rem; overflow: hidden; color: #fff; background: #081726; }
.xh-products-hero-backdrop { position: absolute; inset: 0; z-index: 0;  }
.xh-products-hero-backdrop::after { content: ''; position: absolute; top: 0; bottom: 0; left: 0; width: 49.5%; background: linear-gradient(90deg, rgba(5,20,36,.76), rgba(5,20,36,0)); }
/* 导航栏层级：products hero 不再创建层叠上下文后，header 直接参与根层叠上下文，
   需显式抬高层级，保证吸附态与页面各板块之上（同 about 页做法） */
.xh-products-page .xh-index-header { z-index: 1000; }
.xh-products-header { top: 1.125rem; left: 6.25rem; right: 6.25rem; height: 5rem; justify-content: flex-end; }
.xh-products-header .xh-index-header-logo { --ph-logo-w: 23.25rem; position: absolute; left: calc(var(--ph-logo-w) * -.207); top: calc(50% - var(--ph-logo-w) * .28125); width: var(--ph-logo-w); height: calc(var(--ph-logo-w) * .5625); }
.xh-products-header .xh-index-header-nav { gap: 2.75rem; }
.xh-products-header .xh-index-header-nav a, .xh-products-header .xh-index-header-models-trigger { font-size: .875rem; }
.xh-products-header .xh-index-header-models-trigger.is-active::after { right: auto; bottom: -.875rem; left: 50%; width: 3.9375rem; transform: translateX(-50%); background: var(--products-blue); }
.xh-products-header .xh-index-header-cta { width: 13.125rem; height: 3.25rem; border-radius: .25rem; font-size: .9375rem !important; }
.xh-products-hero-copy { position: absolute; z-index: 1; top: 14.375rem; left: 6.25rem; width: 46.25rem; }
.xh-products-hero-title { margin: 0 0 1.4375rem; font-family: var(--xh-font-title); font-size: 4.5rem; line-height: 1; font-weight: 700; }
.xh-products-hero-eyebrow { margin-bottom: 1.8125rem; }
.xh-products-hero-eyebrow p { margin: 0; font-size: 1.875rem; line-height: 1.2; font-weight: 500; }
.xh-products-hero-subtitle { margin-bottom: 1.25rem; }
.xh-products-hero-subtitle p { margin: 0; font-size: 1.3125rem; line-height: 1.2; font-weight: 600; }
.xh-products-hero-description { margin-bottom: 4.5625rem; color: #d1e0ed; }
.xh-products-hero-description p { margin: 0; font-size: 1rem; line-height: 1.625rem; }
.xh-products-hero-actions { display: flex; gap: 1rem; }

/* xh-products-overview */
.xh-products-overview { position: relative; z-index: 2; width: calc(100% - 12.5rem); max-width: var(--products-shell); margin: -3.75rem auto 0; padding: 2.125rem 1.25rem 2.3125rem; border-radius: 1.125rem; background: #fff; box-shadow: 0 .625rem 1.75rem rgba(0,0,0,.08); }
.xh-products-overview-heading { display: flex; flex-direction: column; align-items: center; }
.xh-products-overview-title { margin: 1.0625rem 0 0; font-size: 1.125rem; line-height: 1.375rem; font-weight: 700; }
.xh-products-overview-list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: .6875rem; }
.xh-products-overview-card { position: relative; display: flex; flex-direction: column; align-items: center; padding: 0 .75rem; text-align: center; }
.xh-products-overview-card + .xh-products-overview-card::before { content: ''; position: absolute; top: 0; left: 0; width: .0625rem; height: 6.875rem; background: #e0e8f0; }
.xh-products-overview-iconbox { display: flex; align-items: center; justify-content: center; width: 100%; height: 5rem; }
.xh-products-overview-icon { display: block; width: 3.75rem; height: 3.75rem; object-fit: contain; }
.xh-products-overview-card-large .xh-products-overview-icon { width: 5rem; height: 5rem; }
.xh-products-overview-card-title { margin: 0; font-size: 2rem; line-height: 2.5rem; font-weight: 600; }
.xh-products-overview-card-sub { margin-top: .5625rem; color: #5c6e82; }
.xh-products-overview-card-sub p { margin: 0; font-size: .8125rem; line-height: 1rem; }
.xh-products-overview-card-note { margin-top: .5rem; color: #6b7d91; }
.xh-products-overview-card-note p { margin: 0; font-size: .6875rem; line-height: .8125rem; }

/* xh-products-showcase */
.xh-products-exterior, .xh-products-interior { display: flex; flex-direction: column; gap: 1.5rem; width: calc(100% - 12.5rem); max-width: var(--products-shell); margin: 3.75rem auto 0; border: .0625rem solid var(--products-line); border-radius: 1.25rem; overflow: hidden; }
.xh-products-showcase { position: relative; min-height: 31.25rem; overflow: hidden; }
.xh-products-showcase-image { display: block; width: 100%; height: 31.25rem; object-fit: cover; }
.xh-products-showcase-label { position: absolute; top: 2.25rem; left: 2.5rem; display: flex; align-items: center; gap: .625rem; padding: .75rem 1.125rem .75rem 1rem; border-radius: 1.4375rem; background: rgba(10,20,33,.82); }
.xh-products-showcase-label span { width: 1.125rem; height: .1875rem; border-radius: .125rem; background: #0d6bf2; }
.xh-products-showcase-label p { margin: 0; color: #fff; font-size: .875rem; line-height: 1; font-weight: 700; letter-spacing: .05em; }
.xh-products-showcase-copy { position: absolute; bottom: 2.5rem; left: 3.75rem; width: 45rem; padding: 1.25rem 1.625rem; border-radius: .875rem; background: rgba(7,23,39,.78); box-shadow: 0 .5rem 1.5rem rgba(0,0,0,.22); }
.xh-products-showcase-title { margin: 0 0 .5rem; color: #fff; font-size: 1.75rem; line-height: 2.125rem; font-weight: 600; }
.xh-products-showcase-text { color: #e8f0f7; }
.xh-products-showcase-text p { margin: 0; font-size: 1.0625rem; line-height: 1.5625rem; }

/* xh-products-details */
.xh-products-details { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; }
.xh-products-detail-card { display: flex; flex-direction: column; overflow: hidden; border-radius: .75rem; background: #fff; }
.xh-products-detail-image { display: block; width: 100%; height: 19.59375rem; object-fit: cover; }
.xh-products-detail-copy { padding: 1.25rem 1.5rem 1.5rem; }
.xh-products-detail-title { margin: 0 0 .5rem; font-size: 1.5rem; line-height: 2rem; font-weight: 600; }
.xh-products-detail-text { color: var(--products-muted); }
.xh-products-detail-text p { margin: 0; font-size: 1.125rem; line-height: 1.75rem; }

/* xh-products-colour */
.xh-products-colour { display: flex; flex-direction: column; align-items: center; gap: 1.25rem; width: calc(100% - 12.5rem); max-width: var(--products-shell); margin: 3.75rem auto 0; padding: 2.625rem 3.75rem 3rem; background: #f6f8fa; }
.xh-products-colour-heading { display: flex; flex-direction: column; align-self: stretch; gap: 1rem; }
.xh-products-colour-title { margin: 0; font-size: 1.5rem; line-height: 2rem; font-weight: 700; }
.xh-products-colour-text { color: #5c6e82; }
.xh-products-colour-text p { margin: 0; font-size: .9375rem; line-height: 1.25rem; }
.xh-products-colour-stage { position: relative; width: 100%; max-width: 100rem; aspect-ratio: 2 / 1; overflow: hidden; }
.xh-products-colour-image { position: absolute; top: -22.5625%; left: -9.4375%; width: 118.875%; height: 145.125%; object-fit: contain; }
.xh-products-colour-selector { display: flex; align-items: center; gap: 1.6875rem; padding: .75rem 1.75rem; border-radius: 2.5rem; background: rgba(255,255,255,.94); box-shadow: 0 .5rem 1.375rem rgba(13,23,36,.13); }
.xh-products-colour-label { width: 7.875rem; color: #1a2430; }
.xh-products-colour-label p { margin: 0; font-size: .75rem; line-height: 1.25rem; font-weight: 600; letter-spacing: .06em; }
.xh-products-colour-divider { width: .0625rem; height: 2.625rem; background: #d6dee8; }
.xh-products-colour-dot { width: 2.375rem; height: 2.375rem; padding: 0; border: .0625rem solid #b8c2d1; border-radius: 50%; background: transparent; cursor: pointer; transition: border-color .25s ease, box-shadow .25s ease; }
.xh-products-colour-dot-green { background: #9ec294; }
.xh-products-colour-dot-white { background: #fff; }
.xh-products-colour-dot-silver { background: #adb8c4; }
.xh-products-colour-dot-grey { background: #525c69; }
.xh-products-colour-dot:hover { box-shadow: 0 0 0 .1875rem rgba(13,107,242,.18); }
.xh-products-colour-dot.is-active { border: .1875rem solid #0d6bf2; }

/* xh-products-technology */
.xh-products-technology { margin-top: 3.75rem; background: var(--products-bg); }
.xh-products-technology-heading { max-width: 120rem; margin: 0 auto; padding: 1.25rem var(--products-gutter) 4rem; }
.xh-products-technology-label { display: flex; align-items: center; gap: .75rem; }
.xh-products-technology-label span { width: 1.375rem; height: .1875rem; background: #1473ff; }
.xh-products-technology-label p { margin: 0; color: #091729; font-size: 1.25rem; line-height: 1; font-weight: 600; }
.xh-products-technology-title { margin: 1.5rem 0 0; max-width: 65.875rem; font-size: 3rem; line-height: 3.375rem; font-weight: 700; }
.xh-products-technology-text { margin-top: 1rem; max-width: 49.125rem; color: var(--products-muted); }
.xh-products-technology-text p { margin: 0; font-size: 1.125rem; line-height: 1.75rem; }
.xh-products-technology-stage { width: 100%; overflow: hidden; }
.xh-products-technology-image { display: block; width: 100%; height: 67.5rem; object-fit: cover; }
.xh-products-technology-nav { display: flex; align-items: center; justify-content: space-between; gap: 2rem; padding: 1.5rem var(--products-gutter); background: var(--products-bg); }
.xh-products-technology-arrow { display: inline-flex; flex: 0 0 10rem; align-items: center; width: 10rem; height: 3.5rem; padding: 0; border: 0; background: transparent; color: var(--products-ink); font: inherit; font-size: .875rem; line-height: 1.25rem; font-weight: 600; letter-spacing: .02em; cursor: pointer; transition: color .25s ease; }
.xh-products-technology-arrow:hover { color: var(--products-blue); }
.xh-products-technology-arrow-prev { justify-content: flex-start; }
.xh-products-technology-arrow-prev span { margin-right: .4rem; }
.xh-products-technology-arrow-next { justify-content: flex-end; }
.xh-products-technology-arrow-next span { margin-left: .4rem; }
.xh-products-technology-tabs { display: flex; flex: 1 1 auto; justify-content: center; gap: 1.5rem; min-width: 0; }
.xh-products-technology-tab { width: 19rem; height: 3.5rem; padding: 0 1.25rem; border: .0625rem solid #dbe3ed; border-radius: .75rem; background: transparent; color: var(--products-muted); font: inherit; font-size: .875rem; line-height: 1.25rem; font-weight: 600; cursor: pointer; transition: color .25s ease, border-color .25s ease; }
.xh-products-technology-tab:hover, .xh-products-technology-tab.is-active { border-color: #2e7aff; color: #2e7aff; }

/* xh-products-safety */
.xh-products-safety { display: flex; flex-direction: column; gap: 2rem; width: calc(100% - 12.5rem); max-width: var(--products-shell); margin: 3.75rem auto 0; }
.xh-products-safety-heading { display: flex; flex-direction: column; gap: .75rem; }
.xh-products-safety-title { margin: 0; font-size: 2.5rem; line-height: 3.125rem; font-weight: 600; }
.xh-products-safety-text { color: var(--products-muted); }
.xh-products-safety-text p { margin: 0; font-size: 1.125rem; line-height: 1.75rem; }
.xh-products-safety-layout { display: grid; grid-template-columns: 65rem minmax(0, 1fr); gap: 1.5rem; }
.xh-products-safety-primary, .xh-products-safety-secondary { display: flex; flex-direction: column; gap: 1.25rem; }
.xh-products-safety-image { display: block; width: 100%; border-radius: .75rem; object-fit: cover; }
.xh-products-safety-primary .xh-products-safety-image { height: 36.5625rem; }
.xh-products-safety-secondary .xh-products-safety-image { height: 23.0625rem; }
.xh-products-assist { display: flex; flex-direction: column; gap: 1.5rem; }
.xh-products-assist-title { margin: 0; font-size: 1.5rem; line-height: 2rem; font-weight: 600; }
.xh-products-safety-note { color: var(--products-muted); }
.xh-products-safety-note p { margin: 0; font-size: .875rem; line-height: 1.25rem; font-weight: 600; }

/* xh-products-specs */
.xh-products-specs { width: calc(100% - 12.5rem); max-width: var(--products-shell); margin: 3.75rem auto 0; padding: 2.125rem 2.5rem 2.5rem; border: .0625rem solid var(--products-line); border-radius: 1.125rem; background: #fff; }
.xh-products-specs-head { position: relative; }
.xh-products-specs-title { margin: 1.4375rem 0 0; font-size: 1.5rem; line-height: 1.8125rem; font-weight: 700; }
.xh-products-specs-note { position: absolute; top: 2rem; right: 0; width: 22.5rem; color: #64748b; }
.xh-products-specs-note p { margin: 0; font-size: .75rem; line-height: 1.25rem; text-align: right; }
.xh-products-specs-list table { width: 100%; margin: 3.5rem 0 0; border-collapse: collapse; }
.xh-products-specs-list th, .xh-products-specs-list td { padding: 1.5625rem 0; border-bottom: .0625rem solid #e8edf2; font-size: .8125rem; line-height: 1rem; vertical-align: middle; }
.xh-products-specs-list tr:first-child th, .xh-products-specs-list tr:first-child td { padding-top: 0; }
.xh-products-specs-list th { padding-right: 2rem; text-align: left; font-weight: 400; color: #475769; }
.xh-products-specs-list td { text-align: right; color: #1a2636; font-weight: 500; }
.xh-products-specs-list td p { margin: 0; }
.xh-products-specs-list td p:not(:last-child) { margin-bottom: .25rem; }

/* xh-products-brochure */
.xh-products-brochure { position: relative; width: calc(100% - 12.5rem); max-width: var(--products-shell); min-height: 18.75rem; margin: 5rem auto 0; padding: 2.125rem 2.625rem 2.9375rem; overflow: hidden; border-radius: 1.125rem; color: #fff; background: #031321; }
.xh-products-brochure-backdrop { position: absolute; inset: 0;  }
.xh-products-brochure-copy { position: relative; }
.xh-products-brochure-title { margin: 1.5625rem 0 0; font-size: 1.5rem; line-height: 1.8125rem; font-weight: 700; }
.xh-products-brochure-lead { margin-top: 1.3125rem; color: #dbe8f2; }
.xh-products-brochure-lead p { margin: 0; font-size: 1rem; line-height: 1.1875rem; font-weight: 600; }
.xh-products-brochure-text { margin-top: 1.0625rem; color: #b2c9db; }
.xh-products-brochure-text p { margin: 0; font-size: .875rem; line-height: 1.0625rem; }
.xh-products-brochure .xh-products-button { margin-top: 2.5rem; }

/* xh-products-cta */
.xh-products-cta { position: relative; min-height: 20rem; margin-top: 5rem; overflow: hidden; color: #fff; background: #081726; }
.xh-products-cta-backdrop { position: absolute; inset: 0; background: url('../images/figma-products/products-cta.png') center center / cover no-repeat; }
.xh-products-cta-backdrop img { display: block; width: 100%; height: 100%; object-fit: cover; }
.xh-products-cta-copy { position: relative; max-width: 120rem; margin: 0 auto; padding: 4.5rem var(--products-gutter) 4.625rem; }
.xh-products-cta-title { margin: 0; font-size: 2.125rem; line-height: 1.2; font-weight: 700; }
.xh-products-cta-text { margin-top: 1.5625rem; color: #c6d4e0; font-size: 1.0625rem; line-height: 1.3; white-space: pre-line; }
.xh-products-cta-text p { margin: 0; font-size: 1.0625rem; line-height: 1.3; }
.xh-products-cta .xh-products-button { margin-top: 2.1875rem; }

@media (max-width: 75rem) {
  .xh-products-header { left: 3.5rem; right: 3.5rem; }
  .xh-products-header .xh-index-header-logo { --ph-logo-w: 19rem; }
  .xh-products-hero-copy { left: 3.5rem; }
  .xh-products-overview, .xh-products-exterior, .xh-products-interior, .xh-products-colour, .xh-products-safety, .xh-products-specs, .xh-products-brochure { width: calc(100% - 7rem); }
  .xh-products-overview-card-title { font-size: 1.5rem; line-height: 2rem; }
  .xh-products-technology-title { font-size: 2.5rem; line-height: 2.875rem; }
  .xh-products-technology-tab { width: auto; flex: 1 1 0; min-width: 0; padding: 0 .75rem; font-size: .8125rem; }
  .xh-products-safety-layout { grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr); }
  .xh-products-safety-primary .xh-products-safety-image { height: 30rem; }
  .xh-products-safety-secondary .xh-products-safety-image { height: 19rem; }
}

@media (max-width: 60rem) {
  .xh-products-header { left: 2rem; right: 2rem; }
  .xh-products-header .xh-index-header-logo { --ph-logo-w: 15rem; }
  .xh-products-hero-copy { top: 13rem; width: auto; right: 3.5rem; }
  .xh-products-hero-description { margin-bottom: 3rem; }
  .xh-products-overview-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2.25rem 1rem; }
  .xh-products-overview-card + .xh-products-overview-card::before { display: none; }
  .xh-products-details { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .xh-products-safety-layout { grid-template-columns: minmax(0, 1fr); }
  .xh-products-safety-primary .xh-products-safety-image, .xh-products-safety-secondary .xh-products-safety-image { height: 24rem; }
  .xh-products-technology-nav { flex-wrap: wrap; justify-content: center; gap: 1rem; }
  .xh-products-technology-arrow { flex: 0 0 auto; }
  .xh-products-technology-tabs { order: -1; flex: 1 1 100%; }
}

@media (max-width: 48rem) {
  .xh-products-hero { min-height: 46rem; }
  .xh-products-hero-backdrop::after { width: 100%; background: linear-gradient(180deg, rgba(5,20,36,.28), rgba(5,20,36,.82)); }
  .xh-products-header { top: .75rem; left: 1.25rem; right: 1.25rem; height: 4rem; }
  .xh-products-header .xh-index-header-logo { --ph-logo-w: 11.5rem; }
  .xh-products-header .xh-index-header-models-trigger.is-active::after { display: none; }
  .xh-products-hero-copy { top: 12rem; left: 1.25rem; right: 1.25rem; width: auto; }
  .xh-products-hero-title { font-size: 3rem; margin-bottom: 1rem; }
  .xh-products-hero-eyebrow p { font-size: 1.25rem; }
  .xh-products-hero-eyebrow { margin-bottom: 1rem; }
  .xh-products-hero-subtitle p { font-size: 1.125rem; }
  .xh-products-hero-description { margin-bottom: 2rem; }
  .xh-products-desktop-break { display: none; }
  .xh-products-hero-actions { flex-direction: column; gap: .75rem; }
  .xh-products-button { width: min(13.75rem, 100%); }
  .xh-products-overview, .xh-products-exterior, .xh-products-interior, .xh-products-colour, .xh-products-safety, .xh-products-specs, .xh-products-brochure { width: calc(100% - 2.5rem); margin-top: 2.5rem; }
  .xh-products-overview { margin-top: -2.5rem; padding: 1.75rem 1rem 1.75rem; }
  .xh-products-overview-list { gap: 1.75rem 1rem; margin-top: 1.25rem; }
  .xh-products-overview-iconbox { height: 3.75rem; }
  .xh-products-overview-icon { width: 3rem; height: 3rem; }
  .xh-products-overview-card-large .xh-products-overview-icon { width: 3.75rem; height: 3.75rem; }
  .xh-products-overview-card-title { font-size: 1.375rem; line-height: 1.75rem; }
  .xh-products-showcase { min-height: 22rem; }
  .xh-products-showcase-image { height: 22rem; }
  .xh-products-showcase-label { top: 1.25rem; left: 1.25rem; padding: .5rem .875rem .5rem .75rem; }
  .xh-products-showcase-label p { font-size: .75rem; }
  .xh-products-showcase-copy { right: 1.25rem; bottom: 1.25rem; left: 1.25rem; width: auto; padding: 1rem 1.125rem; }
  .xh-products-showcase-title { font-size: 1.3125rem; line-height: 1.625rem; }
  .xh-products-showcase-text p { font-size: .9375rem; line-height: 1.5rem; }
  .xh-products-details { grid-template-columns: minmax(0, 1fr); gap: 1.25rem; }
  .xh-products-detail-image { height: 15rem; }
  .xh-products-detail-title { font-size: 1.25rem; line-height: 1.75rem; }
  .xh-products-detail-text p { font-size: 1rem; line-height: 1.625rem; }
  .xh-products-colour { padding: 2rem 1.25rem 2.25rem; }
  .xh-products-colour-stage { aspect-ratio: auto; height: 18rem; }
  .xh-products-colour-image { position: static; width: 100%; height: 100%; object-fit: contain; }
  .xh-products-colour-selector { gap: 1rem; padding: .75rem 1.25rem; }
  .xh-products-colour-label { width: auto; }
  .xh-products-colour-divider { display: none; }
  .xh-products-colour-dot { width: 2rem; height: 2rem; }
  .xh-products-technology-heading { padding: 1.25rem 1.25rem 2.5rem; }
  .xh-products-technology-title { font-size: 1.875rem; line-height: 2.25rem; }
  .xh-products-technology-text p { font-size: 1rem; line-height: 1.625rem; }
  .xh-products-technology-image { height: 18rem; }
  .xh-products-technology-nav { padding: 1.25rem; gap: .75rem; }
  .xh-products-technology-arrow { flex: 1 1 0; width: auto; height: 2.75rem; justify-content: center; }
  .xh-products-technology-arrow-prev { justify-content: flex-start; }
  .xh-products-technology-arrow-next { justify-content: flex-end; }
  .xh-products-technology-tabs { flex: 1 1 100%; flex-direction: column; gap: .625rem; }
  .xh-products-technology-tab { width: 100%; height: 2.875rem; }
  .xh-products-safety { gap: 1.5rem; }
  .xh-products-safety-title { font-size: 1.75rem; line-height: 2.25rem; }
  .xh-products-safety-text p { font-size: 1rem; line-height: 1.625rem; }
  .xh-products-safety-primary, .xh-products-safety-secondary { gap: 1rem; }
  .xh-products-safety-primary .xh-products-safety-image, .xh-products-safety-secondary .xh-products-safety-image { height: 15rem; }
  .xh-products-assist-title { font-size: 1.25rem; line-height: 1.75rem; }
  .xh-products-specs { padding: 1.75rem 1.25rem 1.75rem; }
  .xh-products-specs-note { position: static; width: auto; margin-top: 1rem; }
  .xh-products-specs-note p { text-align: left; }
  .xh-products-specs-list { margin-top: 1.75rem; }
  .xh-products-specs-list th, .xh-products-specs-list td { padding: 1.125rem 0; font-size: .75rem; }
  .xh-products-specs-list th { padding-right: 1rem; }
  .xh-products-brochure { padding: 1.75rem 1.25rem 2rem; min-height: 0; }
  .xh-products-brochure-backdrop { background: linear-gradient(90deg, rgba(78,119,112,.94) 0%, rgba(60,92,88,.72) 100%), url('../images/figma-products/products-brochure.png') center center / cover no-repeat; }
  .xh-products-brochure-title { margin-top: 1.25rem; font-size: 1.25rem; }
  .xh-products-brochure .xh-products-button { margin-top: 1.75rem; }
  .xh-products-cta { min-height: 0; margin-top: 2.5rem; }
  .xh-products-cta-copy { padding: 3rem 1.25rem; }
  .xh-products-cta-title { font-size: 1.5rem; }
  .xh-products-cta-text p { font-size: 1rem; }
}

/* GEELY Zambia Book a Test Drive / Figma node 301:1895
   设计基准 1920×1080，内容区 100px 栅格（1920 - 2×100 = 1720）。
   本页单位统一 rem(16px)；断点沿用 Figma 还原页的 1200 / 768 / 420px（以 rem 表达）。 */
.xh-testdrive-page {
  --testdrive-blue: #0863f5;
  --testdrive-blue-deep: #0d63f2;
  --testdrive-blue-bright: #0d73ff;
  --testdrive-blue-link: #3a7ff8;
  --testdrive-ink: #0a1a29;
  --testdrive-ink-deep: #091421;
  --testdrive-muted: #596e8a;
  --testdrive-muted-soft: #5c708a;
  --testdrive-line: #e0e8f2;
  --testdrive-field-line: #d1dbe8;
  --testdrive-field-bg: #fbfcff;
  overflow: hidden;
  color: var(--testdrive-ink);
  background: #f6f9fc;
  /* 全站正文字体统一为 Inter（见文件顶部 @font-face 与 :root 变量） */
  font-family: var(--xh-font-body);
}
/* 用 :where() 归零默认边距，使该重置不参与特异性竞争，
   避免盖掉下方各区域对 h1/h2/h3/p 的 margin 设定 */
.xh-testdrive-page :where(h1, h2, h3, h4, h5, h6, p) { margin-top: 0; }
.xh-testdrive-page a { color: inherit; }

/* 本页统一标题层级：22px Bold（设计稿 style_997ce767），保证各板块标题一致 */
.xh-testdrive-section-title { margin: 0; color: var(--testdrive-ink); font-size: 1.375rem; line-height: 2.0625rem; font-weight: 700; }

/* xh-testdrive-icon —— 图标统一走伪元素（约束 10：不使用图片标签） */
.xh-testdrive-icon { position: relative; display: block; flex: none; width: 2.3125rem; height: 2.3125rem; }
.xh-testdrive-icon::before { content: ''; position: absolute; inset: 0; background: center center / contain no-repeat; }
.xh-testdrive-icon-01::before { background-image: url('../images/test-drive/icons/icon-01.svg'); }
.xh-testdrive-icon-03::before { background-image: url('../images/test-drive/icons/icon-03.svg'); }
.xh-testdrive-icon-20::before { background-image: url('../images/test-drive/icons/icon-20.svg'); }
.xh-testdrive-icon-21::before { background-image: url('../images/test-drive/icons/icon-21.svg'); }
.xh-testdrive-icon-25::before { background-image: url('../images/test-drive/icons/icon-25.svg'); }
.xh-testdrive-icon-26::before { background-image: url('../images/test-drive/icons/icon-26.svg'); }
.xh-testdrive-icon-28::before { background-image: url('../images/test-drive/icons/icon-28.svg'); }
.xh-testdrive-icon-35::before { background-image: url('../images/test-drive/icons/icon-35.svg'); }

/* 表单控件的可聚焦隐藏（保持键盘可达，仅视觉隐藏） */
.xh-testdrive-model-input, .xh-testdrive-consent-input { position: absolute; width: .0625rem; height: .0625rem; padding: 0; margin: -.0625rem; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }

/* xh-testdrive-hero */
/* 导航栏层级：hero 不得创建层叠上下文（禁用 isolation 与 非 auto 的 z-index），
   否则 position:fixed 的导航会被困在 hero 内。背景层因此改用 z-index:0。 */
.xh-testdrive-hero { position: relative; height: 46.25rem; min-height: 46.25rem; overflow: hidden; color: #fff; background: #071727; }
.xh-testdrive-hero-backdrop { position: absolute; inset: 0; z-index: 0; background: linear-gradient(90deg, rgba(3, 14, 26, .92) 0%, rgba(3, 14, 26, .18) 100%), url('../images/test-drive/hero.jpg') center center / cover no-repeat; }
/* hero 不建层叠上下文后，header 直接参与根层叠上下文，需显式抬高（同 about / products 页做法） */
.xh-testdrive-page .xh-index-header { z-index: 1000; }
.xh-testdrive-hero-copy { position: absolute; z-index: 1; top: 11.625rem; left: 6.25rem; width: 38.125rem; }
.xh-testdrive-hero-eyebrow p { margin: 0; font-size: 2rem; line-height: 2.4375rem; font-weight: 600; }
/* 展示级大标题：设计稿为品牌字体 GEELY Bold，字宽比站内字体宽约 18%，
   故按实测墨迹宽度（494px / cap 50px）补字距；行高与下负边距用于复刻设计稿
   中副标题与标题行盒重叠 11px 的排版。 */
.xh-testdrive-hero-title { margin: 1.4375rem 0 2.25rem; font-family: var(--xh-font-title); font-size: 4.5rem; line-height: 3.8125rem; font-weight: 700; letter-spacing: .125em; }
.xh-testdrive-hero-subtitle { margin-top: 0; }
.xh-testdrive-hero-subtitle p { margin: 0; font-size: 1.75rem; line-height: 1.5; font-weight: 600; }
.xh-testdrive-hero-description { margin-top: .9375rem; color: #f2f7ff; }
.xh-testdrive-hero-description p { margin: 0; font-size: 1.1875rem; line-height: 1.75rem; }
/* 四项保障：设计稿起点 x=103.5 / 间距 290px，故用固定列宽而非均分 */
.xh-testdrive-hero-highlights { position: absolute; z-index: 1; top: 36.875rem; left: 6.25rem; display: grid; grid-template-columns: repeat(4, 18.125rem); padding: 0; margin: 0; list-style: none; }
.xh-testdrive-hero-highlight { display: flex; }
.xh-testdrive-hero-highlight > .xh-testdrive-icon { margin: .25rem 1.0625rem 0 .25rem; }
.xh-testdrive-hero-highlight-title { margin: 0; font-size: 1rem; line-height: 1.5rem; font-weight: 600; }
.xh-testdrive-hero-highlight-text { margin-top: .1875rem; color: #d1e0f2; }
.xh-testdrive-hero-highlight-text p { margin: 0; font-size: .8125rem; line-height: 1.5rem; }

/* xh-testdrive-models */
.xh-testdrive-models { padding: 3.125rem 6.25rem 0; }
.xh-testdrive-models-grid { display: grid; grid-template-columns: repeat(2, 51.25rem); gap: 1.25rem 5rem; margin-top: 1.6875rem; }
.xh-testdrive-model-card { position: relative; display: flex; align-items: flex-start; height: 15.625rem; padding-left: 6.25rem; overflow: hidden; border: .0625rem solid var(--testdrive-line); border-radius: .625rem; background: #fff; cursor: pointer; transition: border-color .25s ease, box-shadow .25s ease; }
.xh-testdrive-model-card:hover { border-color: #b9cde6; }
/* 选中态：1px 边框 + 1px 内阴影合成设计稿的 2px 描边，避免切换时产生 1px 位移 */
.xh-testdrive-model-card.is-selected { border-color: var(--testdrive-blue-bright); box-shadow: inset 0 0 0 .0625rem var(--testdrive-blue-bright); }
.xh-testdrive-model-card:has(.xh-testdrive-model-input:focus-visible) { outline: .125rem solid #2f80ff; outline-offset: .2rem; }
.xh-testdrive-model-figure { position: relative; display: block; flex: none; width: 20.625rem; height: 11.875rem; margin-top: 1.875rem; }
.xh-testdrive-model-figure img { display: block; width: 100%; height: 100%; object-fit: cover; }
.xh-testdrive-model-info { display: block; padding-top: 3rem; margin-left: 1.875rem; }
.xh-testdrive-model-name { margin: 0; color: var(--testdrive-ink); font-size: 1.75rem; line-height: 2.125rem; font-weight: 700; }
.xh-testdrive-model-type { margin-top: 1rem; color: var(--testdrive-muted); }
.xh-testdrive-model-type p { margin: 0; font-size: 1rem; line-height: 1.1875rem; }
.xh-testdrive-model-check { position: absolute; top: 1rem; right: 1.125rem; width: 1.5rem; height: 1.5rem; border-radius: 50%; background: var(--testdrive-blue-bright); opacity: 0; transition: opacity .25s ease; }
.xh-testdrive-model-check::before { content: ''; position: absolute; top: .3125rem; left: .5rem; width: .375rem; height: .6875rem; border: .125rem solid #fff; border-top: 0; border-left: 0; transform: rotate(45deg); }
.xh-testdrive-model-card.is-selected .xh-testdrive-model-check { opacity: 1; }
/* RD6 素材为宽幅渲染（设计稿按 FIT 633×364 摆放，超出卡片被裁切） */
.xh-testdrive-model-card-rd6 .xh-testdrive-model-figure { position: absolute; top: -3.125rem; left: -.5rem; width: 39.5625rem; height: 22.75rem; margin-top: 0; }
.xh-testdrive-model-figure-wide img { object-fit: contain; }

/* xh-testdrive-booking */
.xh-testdrive-booking { padding: 4.375rem 6.25rem 0; }
.xh-testdrive-booking-head { display: grid; grid-template-columns: 67.5rem minmax(0, 1fr); gap: 2.5rem; align-items: end; margin-bottom: 1.6875rem; }
.xh-testdrive-booking-selected { margin-bottom: .1875rem; color: var(--testdrive-blue-link); font-size: .875rem; line-height: 1.0625rem; font-weight: 500; text-align: right; }
.xh-testdrive-booking-selected p { margin: 0; }
.xh-testdrive-booking-selected-value { font-weight: 500; }
.xh-testdrive-booking-layout { display: grid; grid-template-columns: 67.5rem 37.5rem; gap: 2.5rem; }

/* xh-testdrive-form */
.xh-testdrive-form { min-height: 58.75rem; /* 上/下内边距已扣除 1px 内描边：设计稿边框画在框内（strokeAlign=inside），
   故 40/46 的视觉间距对应内容盒的 39/45 */
  padding: 2.4375rem 1.875rem 2.8125rem; border: .0625rem solid #e3ebf2; border-radius: .625rem; background: #fff; scroll-margin-top: 6rem; }
.xh-testdrive-field { margin-bottom: 1.75rem; }
.xh-testdrive-field-label { display: block; margin-bottom: .25rem; color: var(--testdrive-ink); font-size: .875rem; line-height: 1.5rem; font-weight: 600; }
.xh-testdrive-required { margin-left: .25rem; color: #ff0004; }
.xh-testdrive-field-input { display: block; width: 100%; height: 4rem; padding: 0 1rem; border: .0625rem solid var(--testdrive-field-line); border-radius: .3125rem; outline: 0; color: var(--testdrive-ink); background: var(--testdrive-field-bg); font: inherit; font-size: .875rem; font-weight: 400; transition: border-color .2s ease, box-shadow .2s ease; }
.xh-testdrive-field-input::placeholder { color: #8596ab; }
.xh-testdrive-field-input:focus { border-color: var(--testdrive-blue); box-shadow: 0 0 0 .125rem rgba(8, 99, 245, .12); }
/* 原生 select / date 占位态与文本框占位色对齐 */
.xh-testdrive-field-input-select:invalid, .xh-testdrive-field-input-date:invalid { color: #8596ab; }
.xh-testdrive-field-input-select { appearance: none; padding-right: 2.75rem; background-image: linear-gradient(45deg, transparent 50%, #6b7f96 50%), linear-gradient(135deg, #6b7f96 50%, transparent 50%); background-position: calc(100% - 1.25rem) 1.75rem, calc(100% - .9375rem) 1.75rem; background-size: .375rem .375rem, .375rem .375rem; background-repeat: no-repeat; }
.xh-testdrive-field-input-textarea { height: 11.25rem; padding-top: .75rem; line-height: 1.5rem; resize: vertical; }
.xh-testdrive-form-row { display: grid; grid-template-columns: 30.625rem 31.25rem; gap: 1.875rem; }
/* 与上方字段的 28px 下边距发生外边距合并，故取 32px 保证间距为设计稿的 32px */
.xh-testdrive-consent { display: flex; align-items: flex-start; margin: 2rem 0 3.5rem; cursor: pointer; }
.xh-testdrive-consent-box { position: relative; flex: none; width: 1.5rem; height: 1.5rem; border: .0625rem solid #bfcfe0; border-radius: .1875rem; background: #fff; transition: background-color .2s ease, border-color .2s ease; }
.xh-testdrive-consent-box::before { content: ''; position: absolute; top: .25rem; left: .4375rem; width: .375rem; height: .625rem; border: .125rem solid #fff; border-top: 0; border-left: 0; transform: rotate(45deg); opacity: 0; transition: opacity .2s ease; }
.xh-testdrive-consent-text { margin-left: 1rem; color: #52637a; font-size: .875rem; line-height: 1.5rem; }
.xh-testdrive-consent-input:checked + .xh-testdrive-consent-box { border-color: var(--testdrive-blue); background: var(--testdrive-blue); }
.xh-testdrive-consent-input:checked + .xh-testdrive-consent-box::before { opacity: 1; }
.xh-testdrive-consent-input:focus-visible + .xh-testdrive-consent-box { outline: .125rem solid #2f80ff; outline-offset: .125rem; }
.xh-testdrive-form-status { display: none; margin-bottom: .75rem; font-size: .875rem; line-height: 1.375rem; font-weight: 600; }
.xh-testdrive-form-status.is-visible { display: block; }
.xh-testdrive-form-status.is-success { color: #0a7d3c; }
.xh-testdrive-form-status.is-error { color: #c53030; }
.xh-testdrive-form-submit { display: inline-flex; align-items: center; justify-content: center; width: 16.25rem; height: 3.375rem; border: 0; border-radius: .25rem; color: #fff; background: var(--testdrive-blue); font: inherit; font-size: .875rem; font-weight: 600; letter-spacing: .02em; cursor: pointer; transition: background-color .25s ease, transform .25s ease; }
.xh-testdrive-form-submit:hover { background: #0553d2; transform: translateY(-.125rem); }
.xh-testdrive-form-submit:disabled { opacity: .72; cursor: default; transform: none; }

/* xh-testdrive-expect */
.xh-testdrive-expect { position: relative; overflow: hidden; border-radius: .625rem; color: #fff; background: #041424; }
/* 设计稿的 180deg rgba(0,0,0,1) → rgba(102,102,102,0) 渐变在 Figma 中按
   「非预乘」空间插值，而 CSS 按预乘空间插值（同色渐变无差异，异色渐变会偏暗）。
   这里用 25/50/75% 三个中间色标把预乘结果对齐到非预乘曲线：
   叠加后 = 图像*t + 102*t*(1-t)，与设计稿逐行实测值一致。 */
.xh-testdrive-expect-backdrop { position: absolute; inset: 0; background-color: #041424; background-image: linear-gradient(180deg, rgba(0, 0, 0, 1) 0%, rgba(26, 26, 26, .75) 25%, rgba(51, 51, 51, .5) 50%, rgba(77, 77, 77, .25) 75%, rgba(102, 102, 102, 0) 100%), url('../images/test-drive/expect.jpg'); background-position: center center, center center; background-size: cover, 100% 100%; background-repeat: no-repeat, no-repeat; }
.xh-testdrive-expect-copy { position: relative; z-index: 1; padding: 3rem 0 0 3.125rem; }
.xh-testdrive-expect-title { margin: 0; color: #fff; font-size: 1.375rem; line-height: 2.0625rem; font-weight: 700; }
.xh-testdrive-expect-list { padding: 0; margin: 2.1875rem 0 0; list-style: none; }
.xh-testdrive-expect-item { display: flex; margin-bottom: 2.1875rem; }
.xh-testdrive-expect-item > .xh-testdrive-icon { margin: .46875rem 1.5rem 0 .25rem; }
.xh-testdrive-expect-item-title { margin: 0; color: #fff; font-size: 1.125rem; line-height: 1.6875rem; font-weight: 600; }
.xh-testdrive-expect-item-text { margin-top: .3125rem; color: #c7d9eb; }
.xh-testdrive-expect-item-text p { margin: 0; font-size: .875rem; line-height: 1.5rem; }

/* xh-testdrive-benefits */
.xh-testdrive-benefits { padding: 4.9375rem 6.25rem 0; }
.xh-testdrive-benefits-grid { display: grid; grid-template-columns: repeat(4, 25rem); gap: 1.875rem; margin-top: 2rem; }
.xh-testdrive-benefit-card { display: flex; height: 9.0625rem; border: .0625rem solid var(--testdrive-line); border-radius: .5rem; background: #fff; transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease; }
.xh-testdrive-benefit-card:hover { border-color: #b9cde6; box-shadow: 0 .5rem 1.25rem rgba(10, 26, 41, .08); transform: translateY(-.1875rem); }
.xh-testdrive-benefit-card > .xh-testdrive-icon { width: 2.625rem; height: 2.625rem; margin: 1.9375rem 1.3125rem 0 2.25rem; }
/* 收益卡为白底，icon-25/26 原为白色（供深色 hero / expect 用），白底上不可见 → 此处改用 #122538 深色变体（与 icon-20/01 一致的墨色） */
.xh-testdrive-benefit-card > .xh-testdrive-icon-25::before { background-image: url('../images/test-drive/icons/icon-25-dark.svg'); }
.xh-testdrive-benefit-card > .xh-testdrive-icon-26::before { background-image: url('../images/test-drive/icons/icon-26-dark.svg'); }
.xh-testdrive-benefit-body { padding-top: 2.0625rem; }
.xh-testdrive-benefit-title { margin: 0 0 1.125rem; color: var(--testdrive-ink); font-size: 1.125rem; line-height: 1.375rem; font-weight: 600; }
.xh-testdrive-benefit-text { width: 15.75rem; color: var(--testdrive-muted-soft); }
.xh-testdrive-benefit-text p { margin: 0; font-size: .875rem; line-height: 1.3125rem; }

/* xh-testdrive-faq */
.xh-testdrive-faq { padding: 4.75rem 6.25rem 7.375rem; background: transparent; }
.xh-testdrive-faq-kicker p { margin: 0; color: #61738c; font-size: .8125rem; line-height: 1rem; font-weight: 600; }
.xh-testdrive-faq-title { margin: .875rem 0 0; color: var(--testdrive-ink-deep); font-size: 1.875rem; line-height: 2.25rem; font-weight: 700; }
.xh-testdrive-faq .xh-index-faq-list { margin-top: 2.125rem; }
.xh-testdrive-faq .xh-index-faq-list article { margin-bottom: 1.125rem; border: .0625rem solid #d6e0eb; border-radius: .25rem; background: #fff; transition: border-color .25s ease, box-shadow .25s ease; }
/* 末项去掉下边距：否则会与列表外边距合并、在板块底部多加 18px */
.xh-testdrive-faq .xh-index-faq-list article:last-child { margin-bottom: 0; }
.xh-testdrive-faq .xh-index-faq-list article:hover { border-color: #b9cde6; }
.xh-testdrive-faq .xh-index-faq-list button { min-height: 4.25rem; padding: 0 1.875rem 0 1.375rem; color: var(--testdrive-ink-deep); font-size: .9375rem; font-weight: 500; transition: color .25s ease; }
.xh-testdrive-faq .xh-index-faq-list button > span:first-child { font-size: .9375rem; font-weight: 500; }
.xh-testdrive-faq .xh-index-faq-list button > span:last-child { font-size: 1.5rem; font-weight: 600; line-height: 1; transition: color .25s ease; }
.xh-testdrive-faq .xh-index-faq-list button:hover { color: var(--testdrive-blue); }
.xh-testdrive-faq .xh-index-faq-list article.is-open { border-color: #b9cde6; }
.xh-testdrive-faq .xh-index-faq-list article.is-open button > span:last-child { color: var(--testdrive-blue); }
.xh-testdrive-faq .xh-index-faq-list article > div { padding: 0 1.875rem 1.25rem 1.375rem; color: #61738c; font-size: .8125rem; line-height: 1.5rem; }

/* xh-testdrive-cta */
.xh-testdrive-cta { position: relative; min-height: 20rem; overflow: hidden; color: #fff; background: #081726; }
.xh-testdrive-cta-backdrop { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(3, 13, 23, .46) 0%, rgba(3, 13, 23, .08) 100%), url('../images/test-drive/cta.jpg') center center / cover no-repeat; }
.xh-testdrive-cta-copy { position: relative; z-index: 1; padding: 3.875rem 6.25rem 0; }
.xh-testdrive-cta-title { margin: 0; color: #fff; font-size: 2.375rem; line-height: 1.21; font-weight: 700; letter-spacing: -.028em; }
.xh-testdrive-cta-text { margin-top: .375rem; color: #dbe5f0; }
.xh-testdrive-cta-text p { margin: 0; font-size: 1rem; line-height: 1.5rem; }
.xh-testdrive-button { display: inline-flex; align-items: center; justify-content: center; width: 13.75rem; height: 3.125rem; border: 0; border-radius: .125rem; color: #fff !important; font-size: .875rem; font-weight: 600; letter-spacing: .02em; transition: background-color .25s ease, transform .25s ease; }
.xh-testdrive-button-primary { background: var(--testdrive-blue-deep); }
.xh-testdrive-button:hover { transform: translateY(-.125rem); background: #0553d2; }
.xh-testdrive-cta .xh-testdrive-button { margin-top: 1.625rem; }

@media (max-width: 75rem) {
  .xh-testdrive-hero-copy { left: 3.5rem; width: 34rem; }
  .xh-testdrive-hero-highlights { left: 3.5rem; right: 3.5rem; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
  .xh-testdrive-models, .xh-testdrive-booking, .xh-testdrive-benefits, .xh-testdrive-faq { padding-right: 3.5rem; padding-left: 3.5rem; }
  .xh-testdrive-models-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem 1.875rem; }
  .xh-testdrive-model-card { padding-left: 1.5rem; }
  .xh-testdrive-model-figure { width: 15rem; height: 8.625rem; margin-top: 1.5rem; }
  .xh-testdrive-model-info { padding-top: 3.5rem; margin-left: 1.25rem; }
  .xh-testdrive-model-name { font-size: 1.5rem; line-height: 1.875rem; }
  .xh-testdrive-model-type p { font-size: .875rem; }
  .xh-testdrive-model-card-rd6 .xh-testdrive-model-figure { width: 22.5rem; height: 13rem; }
  .xh-testdrive-booking-head { grid-template-columns: minmax(0, 1fr) 26rem; gap: 1.875rem; }
  .xh-testdrive-booking-layout { grid-template-columns: minmax(0, 1fr) 26rem; gap: 1.875rem; }
  .xh-testdrive-form-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .xh-testdrive-benefits-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .xh-testdrive-benefit-card { height: auto; min-height: 9.0625rem; }
  .xh-testdrive-cta-copy { padding-right: 3.5rem; padding-left: 3.5rem; }
}

@media (max-width: 48rem) {
  .xh-testdrive-hero { height: auto; min-height: 0; padding: 8.5rem 1.5rem 3.5rem; }
  .xh-testdrive-hero-copy { position: relative; top: 0; left: 0; width: auto; max-width: 34rem; }
  .xh-testdrive-hero-highlights { position: relative; top: 0; left: 0; right: 0; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem 1rem; margin-top: 3rem; }
  .xh-testdrive-models, .xh-testdrive-booking, .xh-testdrive-benefits, .xh-testdrive-faq { padding-right: 1.5rem; padding-left: 1.5rem; }
  .xh-testdrive-models-grid { grid-template-columns: minmax(0, 1fr); }
  .xh-testdrive-model-card { height: auto; min-height: 15.625rem; padding: 1.5rem 1.5rem 1.5rem 1.5rem; }
  .xh-testdrive-model-figure { width: 12.5rem; height: 7.1875rem; margin-top: 0; }
  .xh-testdrive-model-card-rd6 .xh-testdrive-model-figure { position: relative; top: 0; left: 0; width: 100%; height: 8rem; }
  .xh-testdrive-model-info { padding-top: 1.5rem; margin-left: 1rem; }
  .xh-testdrive-model-name { font-size: 1.375rem; line-height: 1.75rem; }
  .xh-testdrive-booking-head { grid-template-columns: minmax(0, 1fr); gap: .75rem; }
  .xh-testdrive-booking-selected { margin-bottom: 0; text-align: left; }
  .xh-testdrive-booking-layout { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }
  .xh-testdrive-form { min-height: 0; padding: 1.75rem 1.25rem 2rem; }
  .xh-testdrive-form-row { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .xh-testdrive-form-submit { width: 100%; }
  .xh-testdrive-consent { margin-bottom: 1.75rem; }
  .xh-testdrive-expect { min-height: 40rem; }
  .xh-testdrive-expect-copy { padding: 2rem 1.5rem 2.5rem; }
  .xh-testdrive-expect-item > .xh-testdrive-icon { margin-right: 1rem; }
  .xh-testdrive-cta { min-height: 0; padding-bottom: 3rem; }
  .xh-testdrive-cta-copy { padding: 3rem 1.5rem 0; }
  .xh-testdrive-cta-title { font-size: 1.75rem; }
  .xh-testdrive-faq { padding-top: 3.5rem; padding-bottom: 4rem; }
  .xh-testdrive-faq .xh-index-faq-list button { min-height: 3.875rem; padding-right: 1.25rem; padding-left: 1.25rem; }
  .xh-testdrive-faq .xh-index-faq-list article > div { padding: 0 1.25rem 1.125rem; }
}

@media (max-width: 26.25rem) {
  .xh-testdrive-hero { padding-top: 7.5rem; }
  .xh-testdrive-hero-eyebrow p { font-size: 1.5rem; line-height: 1.875rem; }
  .xh-testdrive-hero-title { font-size: 2.5rem; }
  .xh-testdrive-hero-subtitle p { font-size: 1.25rem; }
  .xh-testdrive-hero-description p { font-size: 1rem; line-height: 1.5rem; }
  .xh-testdrive-hero-highlights { grid-template-columns: minmax(0, 1fr); }
  .xh-testdrive-model-card { flex-direction: column; padding: 1.25rem; }
  .xh-testdrive-model-figure { width: 100%; height: 8.5rem; }
  .xh-testdrive-model-info { padding-top: 1rem; margin-left: 0; }
  .xh-testdrive-benefits-grid { grid-template-columns: minmax(0, 1fr); }
  .xh-testdrive-cta-title { font-size: 1.5rem; }
}

/* xh-home-header */
/* 首页头部，按 Figma「Header — Standard / Models V1」(node 1:29) 还原。
   设计基准：内容区 1720×80，左右各 100px 边距；导航行右对齐、间隙 44px；
   logo 有效图形 216×36，左缘对齐 100px 栅格线、垂直居中；
   选中项下划线 44×2，位于文字下方 14px；CTA 210×52 / #2F80FF / 圆角 4px / Semi Bold。 */
.xh-home-header {
  left: 6.25rem;
  right: 6.25rem;
  justify-content: flex-end;
}

/* 覆盖 xh-index-header-logo-fix：logo 脱离文档流，精确落在 100px 栅格线上并垂直居中 */
.xh-home-header .xh-index-header-logo {
  position: absolute;
  top: 50%;
  left: 0;
  width: 13.5rem;
  height: 2.25rem;
  transform: translateY(-50%);
}
.xh-home-header .xh-index-header-logo img { display: block; width: 100%; height: 100%; object-fit: contain; }
.xh-home-header.is-scrolled .xh-index-header-logo { left: 1.25rem; }

/* 导航文字：设计稿统一 #FFFFFF；选中项为 Semi Bold 600 */
.xh-home-header .xh-index-header-nav a { color: #fff; }
.xh-home-header .xh-index-header-nav a.is-active { font-weight: 600; }
/* 设计稿未定义悬停/焦点态，此处补回可感知性（不影响静止态观感） */
.xh-home-header .xh-index-header-nav a:not(.xh-index-header-cta):hover { opacity: .78; }
.xh-home-header .xh-index-header-nav a:focus-visible { outline: .125rem solid #2f80ff; outline-offset: .375rem; border-radius: .125rem; }
.xh-home-header .xh-index-header-nav a.is-active::after {
  right: auto;
  left: 50%;
  bottom: -.875rem;
  width: 2.75rem;
  height: .125rem;
  transform: translateX(-50%);
  background: #2f80ff;
}

/* 下拉箭头：设计稿为紧随文字的 6×4 实心小三角 */
.xh-home-header .xh-index-header-nav a span {
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: .3rem;
  vertical-align: .0625rem;
  border-left: .1875rem solid transparent;
  border-right: .1875rem solid transparent;
  border-top: .25rem solid currentColor;
  color: inherit;
}

.xh-home-header .xh-index-header-cta { font-weight: 600 !important; }

@media (max-width: 75rem) {
  .xh-home-header { left: 3.5rem; right: 3.5rem; }
  .xh-home-header .xh-index-header-logo { width: 11.25rem; height: 1.875rem; }
}
@media (max-width: 60rem) {
  .xh-home-header { left: 2rem; right: 2rem; }
  .xh-home-header .xh-index-header-logo { width: 9.375rem; height: 1.5625rem; }
}
@media (max-width: 48rem) {
  .xh-home-header { top: .75rem; left: 1.25rem; right: 1.25rem; height: 4rem; }
  .xh-home-header .xh-index-header-logo { left: 0; width: 7.5rem; height: 1.25rem; }
  .xh-home-header.is-scrolled .xh-index-header-logo { left: .75rem; }
  .xh-home-header .xh-index-header-nav a.is-active::after { display: none; }
}

/* xh-home-footer */
/* 页脚 logo 统一使用 images/logo.png（有效图形 216×36，与设计稿一致） */
.xh-home-footer .xh-index-footer-brand img {
  display: block;
  width: 13.5rem;
  height: 2.25rem;
  margin: 0 0 2.5rem;
  object-fit: contain;
}
