:root {
    --race-red: #e32630;
    --race-red-dark: #b90e1b;
    --race-blue: #1468d7;
    --race-cyan: #0bb9c8;
    --race-ink: #101419;
    --race-ink-soft: #1d242c;
    --race-paper: #f3f4f4;
    --race-line: #dfe3e6;
    --race-muted: #6e7882;
    --race-white: #fff;
    --race-accent: var(--race-red);
}

* { box-sizing: border-box; }
.coating-race { margin: 0; color: var(--race-ink); background: #fff; font-family: "MiSans", "HarmonyOS Sans SC", "Noto Sans SC", "Microsoft YaHei UI", sans-serif; line-height: 1.7; -webkit-font-smoothing: antialiased; }
.coating-race a { color: inherit; text-decoration: none; }
.coating-race img { display: block; max-width: 100%; }
.coating-race button, .coating-race input, .coating-race textarea, .coating-race select { font: inherit; }
.coating-race button { cursor: pointer; }
.coating-race h1, .coating-race h2, .coating-race h3, .coating-race strong { font-family: "Bahnschrift", "HarmonyOS Sans SC", "Noto Sans SC", "Microsoft YaHei UI", sans-serif; }
.race-wrap { width: min(1360px, calc(100% - 52px)); margin: 0 auto; }
.race-label { display: inline-flex; align-items: center; gap: 10px; color: var(--race-red); font-family: "Bahnschrift",sans-serif; font-size: 10px; font-weight: 800; letter-spacing: 1.8px; }
.race-label:before { width: 28px; height: 2px; background: currentColor; content: ""; }

.race-utility { color: #64707a; background: #f6f7f7; border-bottom: 1px solid #e5e7e8; font-size: 10px; }
.race-utility .race-wrap { display: flex; min-height: 34px; align-items: center; justify-content: space-between; gap: 20px; }
.race-utility i { margin-right: 6px; color: var(--race-red); }

.race-header { position: fixed; inset: 0 0 auto; z-index: 100; color: #fff; transition: background .25s ease, color .25s ease, box-shadow .25s ease; }
.race-header:before { position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg,rgba(6,9,12,.64),transparent); content: ""; transition: opacity .25s ease; }
.race-header.is-solid { color: var(--race-ink); background: rgba(255,255,255,.97); box-shadow: 0 8px 35px rgba(10,15,20,.09); backdrop-filter: blur(14px); }
.race-header.is-solid:before { opacity: 0; }
.race-head-inner { display: flex; min-height: 82px; align-items: center; gap: 26px; }
.race-brand { display: flex; flex: 0 0 auto; align-items: center; gap: 11px; }
.race-brand-mark { display: grid; width: 43px; height: 43px; place-items: center; color: #fff; background: var(--race-red); clip-path: polygon(0 0,100% 0,100% 72%,72% 100%,0 100%); font-size: 18px; transform: skewX(-8deg); }
.race-brand-mark i { transform: skewX(8deg); }
.race-brand strong, .race-brand small { display: block; }
.race-brand strong { font-size: 18px; line-height: 1.2; letter-spacing: -.4px; }
.race-brand small { margin-top: 4px; opacity: .62; font-family: "Bahnschrift",sans-serif; font-size: 7px; letter-spacing: 1.55px; }
.race-nav { display: flex; align-self: stretch; align-items: center; gap: 1px; margin-left: auto; }
.race-nav a { position: relative; display: flex; height: 100%; align-items: center; padding: 0 13px; color: inherit; font-size: 12px; font-weight: 650; opacity: .82; }
.race-nav a:hover, .race-nav a.active { opacity: 1; }
.race-nav a.active:after { position: absolute; right: 13px; bottom: 16px; left: 13px; height: 2px; background: var(--race-red); content: ""; }
.race-actions { display: flex; align-items: center; gap: 11px; margin-left: 12px; font-size: 11px; white-space: nowrap; }
.race-actions > a { opacity: .82; }
.race-outline { padding: 7px 11px; border: 1px solid currentColor; }
.race-primary { padding: 9px 14px; color: #fff !important; background: var(--race-red); opacity: 1 !important; font-weight: 800; }

.race-hero { position: relative; min-height: 820px; overflow: hidden; color: #fff; background: #0b0e12; isolation: isolate; }
.race-hero-media { position: absolute; inset: 0; overflow: hidden; }
.race-hero-media > img { width: 100%; height: 100%; object-fit: cover; object-position: center 48%; filter: none; transform: scale(1.015); transition: filter .45s ease, opacity .22s ease, transform 1.2s cubic-bezier(.2,.7,.2,1); }
.race-hero-media > img.is-changing { opacity: .15; transform: scale(1.04); }
.race-hero-media > span { display: none; }
.race-hero-shade { position: absolute; inset: 0; background: linear-gradient(90deg,rgba(7,10,13,.96) 0%,rgba(7,10,13,.83) 30%,rgba(7,10,13,.34) 61%,rgba(7,10,13,.05) 80%), linear-gradient(0deg,rgba(7,10,13,.58),transparent 38%); }
.race-hero-shade:after { position: absolute; top: 0; right: 0; width: 31%; height: 100%; opacity: .4; background: linear-gradient(120deg,transparent 35%,rgba(20,104,215,.3) 35% 38%,transparent 38% 45%,rgba(227,38,48,.32) 45% 48%,transparent 48%); content: ""; }
.race-hero-word { position: absolute; right: -3%; bottom: -8%; color: transparent; font-family: "Bahnschrift",sans-serif; font-size: clamp(190px,26vw,420px); font-weight: 900; line-height: .72; letter-spacing: -.08em; -webkit-text-stroke: 1px rgba(255,255,255,.15); pointer-events: none; }
.race-hero-inner { position: relative; z-index: 3; display: flex; min-height: 820px; align-items: center; padding-top: 105px; padding-bottom: 72px; }
.race-hero-copy { width: min(650px, 58vw); }
.race-eyebrow { display: inline-flex; align-items: center; gap: 11px; color: rgba(255,255,255,.74); font-family: "Bahnschrift",sans-serif; font-size: 9px; font-weight: 700; letter-spacing: 2px; }
.race-eyebrow b { font: inherit; }
.race-eyebrow i { width: 34px; height: 3px; background: var(--race-accent); }
.race-hero h1 { margin: 24px 0 22px; font-size: clamp(58px,6.6vw,108px); font-weight: 900; line-height: .94; letter-spacing: -.05em; }
.race-hero h1 em { color: var(--race-accent); font-style: normal; transition: color .25s ease; }
.race-hero-copy > p { max-width: 600px; margin: 0; color: rgba(255,255,255,.76); font-size: 15px; line-height: 1.9; }
.race-hero-actions { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 29px; }
.race-btn { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; gap: 9px; padding: 0 22px; border: 1px solid transparent; font-size: 11px; font-weight: 800; transition: transform .2s ease, background .2s ease; }
.race-btn:hover { transform: translateY(-2px); }
.race-btn-red { color: #fff; background: var(--race-red); }
.race-btn-red:hover { background: var(--race-red-dark); }
.race-btn-ghost { color: #fff; border-color: rgba(255,255,255,.35); background: rgba(255,255,255,.04); }
.race-btn-dark { color: #fff; background: var(--race-ink); }
.race-color-panel { width: min(570px,100%); margin-top: 38px; padding: 16px 18px 14px; border: 1px solid rgba(255,255,255,.2); background: rgba(8,12,16,.66); backdrop-filter: blur(13px); }
.race-color-panel-head { display: flex; align-items: baseline; gap: 11px; }
.race-color-panel-head > span { color: rgba(255,255,255,.54); font-size: 9px; }
.race-color-panel-head strong { font-size: 15px; }
.race-color-panel-head small { margin-left: auto; color: rgba(255,255,255,.42); font-family: "Bahnschrift",sans-serif; font-size: 8px; letter-spacing: .8px; }
.race-color-list { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 7px; margin-top: 12px; }
.race-color-list button { display: flex; min-width: 0; min-height: 52px; flex-direction: column; align-items: center; justify-content: center; gap: 6px; padding: 7px 3px; border: 1px solid rgba(255,255,255,.15); color: rgba(255,255,255,.7); background: rgba(255,255,255,.03); }
.race-color-list button:hover, .race-color-list button.active { border-color: var(--race-accent,var(--swatch)); color: #fff; background: rgba(255,255,255,.1); }
.race-color-list button i { width: 20px; height: 20px; border: 2px solid rgba(255,255,255,.52); border-radius: 50%; background: var(--swatch); box-shadow: 0 0 0 3px rgba(255,255,255,.04); }
.race-color-list button span { overflow: hidden; max-width: 100%; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.race-color-note { display: block; margin-top: 10px; color: rgba(255,255,255,.42); font-size: 8px; }
.race-color-note i { margin-right: 5px; color: var(--race-accent); }
.race-hero-controls { position: absolute; right: 230px; bottom: 56px; display: flex; align-items: center; border: 1px solid rgba(255,255,255,.25); background: rgba(7,10,13,.54); backdrop-filter: blur(10px); }
.race-hero-controls > button { display: grid; width: 46px; height: 52px; place-items: center; border: 0; color: #fff; background: transparent; }
.race-hero-controls > button:hover { background: rgba(255,255,255,.12); }
.race-hero-controls > div { min-width: 185px; padding: 0 16px; border-right: 1px solid rgba(255,255,255,.14); border-left: 1px solid rgba(255,255,255,.14); }
.race-hero-controls span, .race-hero-controls strong { display: block; }
.race-hero-controls span { color: rgba(255,255,255,.46); font-family: "Bahnschrift",sans-serif; font-size: 8px; letter-spacing: 1px; }
.race-hero-controls strong { margin-top: 2px; color: #fff; font-family: "Bahnschrift",sans-serif; font-size: 10px; letter-spacing: .4px; }
.race-hero-side-note { position: absolute; right: 18px; top: 50%; z-index: 3; display: flex; align-items: center; gap: 10px; color: rgba(255,255,255,.52); writing-mode: vertical-rl; transform: translateY(-50%); }
.race-hero-side-note span { color: var(--race-accent); font-family: "Bahnschrift",sans-serif; font-size: 11px; }
.race-hero-side-note p { margin: 0; font-family: "Bahnschrift",sans-serif; font-size: 7px; letter-spacing: 2px; }

.race-scope-strip { position: relative; z-index: 4; background: #fff; border-bottom: 1px solid var(--race-line); }
.race-scope-strip .race-wrap { display: grid; grid-template-columns: 170px minmax(0,1fr); align-items: stretch; gap: 20px; }
.race-scope-title { display: flex; min-height: 78px; flex-direction: column; justify-content: center; color: var(--race-red); font-size: 11px; font-weight: 800; }
.race-scope-title b { color: #9ca3a9; font-family: "Bahnschrift",sans-serif; font-size: 7px; letter-spacing: 1.5px; }
.race-scope-strip .race-wrap > div { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); }
.race-scope-strip a { display: flex; min-width: 0; align-items: center; gap: 8px; padding: 0 13px; border-left: 1px solid var(--race-line); color: #4f5962; font-size: 10px; white-space: nowrap; }
.race-scope-strip a:hover { color: var(--race-red); background: #fafafa; }
.race-scope-strip a i { color: var(--race-red); }

.race-manifesto { padding: 100px 0 90px; background: var(--race-paper); }
.race-manifesto-grid { display: grid; grid-template-columns: 1.08fr .92fr; gap: 85px; align-items: start; }
.race-manifesto h2, .race-video-copy h2, .race-section-head h2, .race-capability-title h2, .race-partnership h2 { margin: 13px 0 0; font-size: clamp(32px,3.6vw,52px); line-height: 1.16; letter-spacing: -1.6px; }
.race-manifesto-copy > p { margin: 35px 0 0; color: #5f6972; font-size: 14px; line-height: 2; }
.race-stats { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); margin-top: 42px; border-top: 1px solid #cfd5d9; }
.race-stats article { padding: 22px 12px 0 0; }
.race-stats strong, .race-stats span { display: block; }
.race-stats strong { color: var(--race-red); font-family: "Bahnschrift",sans-serif; font-size: 37px; line-height: 1; }
.race-stats span { margin-top: 7px; color: #7b858d; font-size: 9px; }

.race-video { padding: 96px 0; background: #fff; }
.race-video-grid { display: grid; grid-template-columns: minmax(0,1.45fr) minmax(320px,.55fr); overflow: hidden; background: var(--race-ink); }
.race-video-frame { position: relative; min-height: 540px; background: #080a0d; }
.race-video-frame video { width: 100%; height: 100%; min-height: 540px; object-fit: cover; }
.race-video-frame > div { position: absolute; inset: auto 0 0; display: flex; align-items: center; gap: 14px; padding: 18px 22px; color: #fff; background: linear-gradient(transparent,rgba(6,9,12,.92)); pointer-events: none; }
.race-video-frame > div span { color: var(--race-red); font-family: "Bahnschrift",sans-serif; font-size: 11px; }
.race-video-frame > div strong { font-size: 13px; }
.race-video-frame > div small { margin-left: auto; color: rgba(255,255,255,.4); font-family: "Bahnschrift",sans-serif; font-size: 8px; letter-spacing: 1px; }
.race-video-copy { display: flex; flex-direction: column; justify-content: center; padding: 44px 38px; color: #fff; }
.race-video-copy h2 { color: #fff; font-size: 34px; }
.race-video-copy > p { margin: 20px 0 0; color: #98a2ab; font-size: 12px; line-height: 1.9; }
.race-video-copy ul { display: grid; gap: 12px; margin: 27px 0 0; padding: 0; list-style: none; }
.race-video-copy li { color: #c6ced4; font-size: 11px; }
.race-video-copy li i { margin-right: 9px; color: var(--race-red); }
.race-video-copy > a { display: inline-flex; align-items: center; align-self: flex-start; gap: 8px; margin-top: 31px; padding-bottom: 4px; border-bottom: 1px solid var(--race-red); color: #fff; font-size: 10px; font-weight: 800; }

.race-gallery { padding: 94px 0 104px; background: #eef0f1; }
.race-section-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 28px; margin-bottom: 36px; }
.race-section-head > p { max-width: 520px; margin: 0; color: #727d86; font-size: 12px; line-height: 1.85; }
.race-section-head > a { color: var(--race-red); font-size: 10px; font-weight: 800; white-space: nowrap; }
.race-section-head > a i { margin-left: 6px; }
.race-gallery-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.race-gallery-grid article { overflow: hidden; background: #fff; }
.race-gallery-grid article > div { position: relative; overflow: hidden; aspect-ratio: 1.18; background: #dfe3e5; }
.race-gallery-grid img { width: 100%; height: 100%; object-fit: cover; transition: transform .55s ease; }
.race-gallery-grid article:hover img { transform: scale(1.045); }
.race-gallery-grid article > div span { position: absolute; right: 16px; top: 14px; color: #fff; font-family: "Bahnschrift",sans-serif; font-size: 10px; text-shadow: 0 1px 8px rgba(0,0,0,.6); }
.race-gallery-grid header { padding: 22px 23px 25px; }
.race-gallery-grid small { color: var(--race-red); font-family: "Bahnschrift",sans-serif; font-size: 8px; letter-spacing: 1.2px; }
.race-gallery-grid h3 { margin: 5px 0 7px; font-size: 20px; letter-spacing: -.4px; }
.race-gallery-grid p { margin: 0; color: #74808a; font-size: 11px; }

.race-mobility { padding: 96px 0; color: #fff; background: var(--race-ink); }
.race-mobility .race-label { color: #ff5a63; }
.race-mobility .race-section-head h2 { color: #fff; }
.race-mobility .race-section-head > a { color: #fff; }
.race-mobility-grid { display: grid; grid-template-columns: 1.45fr .78fr .78fr; gap: 14px; }
.race-mobility-grid > a { position: relative; min-height: 450px; overflow: hidden; background: #242b33; }
.race-mobility-grid > a:first-child { min-height: 570px; }
.race-mobility-grid img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s ease, filter .3s ease; }
.race-mobility-grid > a:hover img { transform: scale(1.035); filter: brightness(.82); }
.race-mobility-grid > a:after { position: absolute; inset: 35% 0 0; background: linear-gradient(transparent,rgba(7,10,13,.94)); content: ""; }
.race-mobility-grid > a > div { position: absolute; right: 0; bottom: 0; left: 0; z-index: 2; padding: 28px; }
.race-mobility-grid span { color: #f25a62; font-family: "Bahnschrift",sans-serif; font-size: 8px; letter-spacing: 1.2px; }
.race-mobility-grid h3 { margin: 6px 0 7px; color: #fff; font-size: 25px; }
.race-mobility-grid p { margin: 0; color: #a7b1b9; font-size: 11px; }

.race-showcase { padding: 94px 0 104px; overflow: hidden; background: #eef0f1; }
.race-showcase-window { position: relative; overflow: hidden; -webkit-mask-image: linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent); mask-image: linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent); }
.race-showcase-track { display: flex; width: max-content; gap: 18px; animation: race-showcase-scroll 42s linear infinite; will-change: transform; }
.race-showcase-window:hover .race-showcase-track, .race-showcase-window:focus-within .race-showcase-track { animation-play-state: paused; }
.race-showcase-group { display: flex; flex: 0 0 auto; gap: 18px; }
.race-showcase-card { width: clamp(285px,26vw,380px); overflow: hidden; background: #fff; border: 1px solid #dde2e5; }
.race-showcase-media { position: relative; display: block; aspect-ratio: 1.42; overflow: hidden; background: #d8dddf; }
.race-showcase-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .55s ease; }
.race-showcase-card:hover .race-showcase-media img { transform: scale(1.045); }
.race-showcase-media span { position: absolute; left: 13px; top: 13px; padding: 5px 8px; color: #fff; background: var(--race-red); font-size: 8px; font-weight: 800; }
.race-showcase-card > div { padding: 20px 21px 22px; }
.race-showcase-card small { color: var(--race-red); font-family: "Bahnschrift",sans-serif; font-size: 8px; letter-spacing: 1px; }
.race-showcase-card h3 { margin: 5px 0 7px; font-size: 19px; }
.race-showcase-card p { min-height: 38px; margin: 0; color: #74808a; font-size: 10px; line-height: 1.75; }
.race-showcase-card > div > a { display: inline-flex; align-items: center; gap: 6px; margin-top: 15px; color: var(--race-red); font-size: 9px; font-weight: 800; }
@keyframes race-showcase-scroll { to { transform: translateX(calc(-50% - 9px)); } }

.race-services, .race-categories, .race-products, .race-merchants, .race-news { padding: 96px 0; background: #fff; }
.race-service-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1px; background: #dfe3e6; border: 1px solid #dfe3e6; }
.race-service-grid article { position: relative; min-height: 250px; padding: 28px 26px; background: #fff; transition: background .2s ease, color .2s ease; }
.race-service-grid article:hover { color: #fff; background: var(--race-ink); }
.race-service-grid article > span { position: absolute; right: 23px; top: 20px; color: #b3bbc1; font-family: "Bahnschrift",sans-serif; font-size: 11px; }
.race-service-grid article > i { display: grid; width: 43px; height: 43px; place-items: center; color: #fff; background: var(--race-red); font-size: 17px; }
.race-service-grid article > small { display: block; margin-top: 24px; color: #9aa3aa; font-family: "Bahnschrift",sans-serif; font-size: 8px; letter-spacing: 1.2px; }
.race-service-grid h3 { margin: 5px 0 8px; font-size: 19px; }
.race-service-grid p { margin: 0; color: #74808a; font-size: 11px; line-height: 1.8; }
.race-service-grid article:hover p { color: #aeb8c0; }
.race-service-grid article > a { display: inline-flex; align-items: center; gap: 6px; margin-top: 18px; color: var(--race-red); font-size: 9px; font-weight: 800; }

.race-categories { background: #f1f2f2; }
.race-category-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 15px; }
.race-category-grid > a { position: relative; min-height: 260px; padding: 27px 25px; overflow: hidden; background: #fff; border: 1px solid #dde1e4; transition: transform .2s ease, box-shadow .2s ease; }
.race-category-grid > a:hover { transform: translateY(-4px); box-shadow: 0 18px 38px rgba(17,24,31,.08); }
.race-category-grid > a > span { position: absolute; right: 20px; top: 18px; color: #b4bbc0; font-family: "Bahnschrift",sans-serif; font-size: 10px; }
.race-category-grid > a > i { display: grid; width: 46px; height: 46px; place-items: center; color: #fff; background: var(--race-ink); font-size: 18px; }
.race-category-grid h3 { margin: 20px 0 7px; font-size: 20px; }
.race-category-grid p { margin: 0; color: #75808a; font-size: 11px; }
.race-category-grid > a > div { display: flex; gap: 6px; flex-wrap: wrap; margin-top: 18px; }
.race-category-grid small { padding: 4px 7px; color: #56616b; background: #f0f2f3; border: 1px solid #e1e5e7; font-size: 8px; }
.race-category-grid b { position: absolute; left: 25px; bottom: 22px; color: var(--race-red); font-size: 9px; }

.race-picks { padding: 96px 0; background: #fff; }
.race-picks-note { margin: -15px 0 27px; color: #929ba2; font-size: 10px; }
.race-pick-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.race-pick-grid article { overflow: hidden; background: #f4f5f5; border: 1px solid #e1e4e6; transition: transform .2s ease, box-shadow .2s ease; }
.race-pick-grid article:hover { transform: translateY(-4px); box-shadow: 0 18px 36px rgba(16,24,30,.08); }
.race-pick-grid article > a:first-child { position: relative; display: block; aspect-ratio: 1.48; overflow: hidden; background: #dfe3e5; }
.race-pick-grid img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.race-pick-grid article:hover img { transform: scale(1.035); }
.race-pick-grid article > a:first-child span { position: absolute; left: 12px; top: 12px; padding: 5px 8px; color: #fff; background: var(--race-red); font-size: 8px; font-weight: 800; }
.race-pick-grid article > div { padding: 20px 20px 22px; }
.race-pick-grid small { color: #9ba4aa; font-family: "Bahnschrift",sans-serif; font-size: 8px; letter-spacing: .8px; }
.race-pick-grid h3 { margin: 7px 0 8px; font-size: 18px; line-height: 1.35; }
.race-pick-grid p { min-height: 38px; margin: 0; color: #6e7982; font-size: 10px; line-height: 1.75; }
.race-pick-grid article > div > a { display: inline-flex; align-items: center; gap: 6px; margin-top: 15px; color: var(--race-red); font-size: 9px; font-weight: 800; }

.race-capability { padding: 100px 0; color: #fff; background: var(--race-ink); }
.race-capability .race-label { color: #f15b63; }
.race-capability-title { display: flex; align-items: flex-end; justify-content: space-between; margin-bottom: 38px; }
.race-capability-title h2 { color: #fff; }
.race-capability-grid { display: grid; grid-template-columns: 1.25fr .75fr .75fr; gap: 15px; }
.race-capability-grid > article { position: relative; min-height: 400px; padding: 32px; overflow: hidden; border: 1px solid #313942; background: #171d24; }
.race-capability-grid > article > span { color: #8d99a4; font-family: "Bahnschrift",sans-serif; font-size: 8px; letter-spacing: 1.2px; }
.race-capability-grid h3 { margin: 10px 0 10px; font-size: 25px; line-height: 1.25; }
.race-capability-grid p { margin: 0; color: #98a4ad; font-size: 11px; line-height: 1.85; }
.race-capability-grid > article > i { position: absolute; right: 25px; bottom: 18px; color: rgba(255,255,255,.07); font-size: 90px; }
.race-capability-photo { padding: 0 !important; }
.race-capability-photo img { width: 100%; height: 100%; min-height: 400px; object-fit: cover; filter: grayscale(.35) brightness(.7); }
.race-capability-photo > div { position: absolute; inset: auto 0 0; padding: 80px 30px 28px; background: linear-gradient(transparent,rgba(8,12,16,.96)); }
.race-capability-red { background: var(--race-red) !important; border-color: var(--race-red) !important; }
.race-capability-red > span, .race-capability-red p { color: rgba(255,255,255,.75) !important; }

.race-products, .race-merchants { background: #f3f4f4; }
.race-product-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; }
.race-product-grid article { overflow: hidden; background: #fff; border: 1px solid #dfe3e6; }
.race-product-grid article > a:first-child { position: relative; display: block; aspect-ratio: 1.34; background: #e7eaec; }
.race-product-grid img { width: 100%; height: 100%; object-fit: cover; }
.race-product-grid article > a:first-child > span { position: absolute; left: 12px; top: 12px; padding: 5px 8px; color: #fff; background: var(--race-red); font-size: 8px; font-weight: 800; }
.race-product-grid article > div { padding: 17px; }
.race-product-grid small { color: var(--race-red); font-size: 8px; }
.race-product-grid h3 { margin: 5px 0 7px; font-size: 17px; }
.race-product-grid p { margin: 0; color: #74808a; font-size: 10px; line-height: 1.7; }
.race-product-grid b { display: block; margin-top: 13px; color: var(--race-red); font-family: "Bahnschrift",sans-serif; font-size: 18px; }
.race-merchant-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 13px; }
.race-merchant-grid > a { display: flex; min-width: 0; align-items: center; gap: 15px; padding: 20px; background: #fff; border: 1px solid #dfe3e6; }
.race-merchant-grid > a > span { display: grid; width: 50px; height: 50px; flex: 0 0 50px; place-items: center; overflow: hidden; color: #fff; background: var(--race-ink); font-size: 18px; font-weight: 900; }
.race-merchant-grid > a > span img { width: 100%; height: 100%; object-fit: cover; }
.race-merchant-grid > a > div { min-width: 0; }
.race-merchant-grid small { color: var(--race-red); font-size: 8px; }
.race-merchant-grid h3 { margin: 2px 0 3px; font-size: 15px; }
.race-merchant-grid p { overflow: hidden; margin: 0; color: #74808a; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.race-merchant-grid > a > i { margin-left: auto; color: #b6bdc3; }

.race-partnership { padding: 94px 0; background: #fff; }
.race-partnership-grid { display: grid; grid-template-columns: 1fr 440px; gap: 60px; align-items: center; }
.race-partnership h2 { color: var(--race-ink); }
.race-partnership p { max-width: 720px; margin: 23px 0 0; color: #65717a; font-size: 13px; line-height: 1.9; }
.race-partnership > .race-wrap > div > div { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 27px; }
.race-partnership aside { padding: 32px; color: #fff; background: var(--race-ink); border-top: 4px solid var(--race-red); }
.race-partnership aside > small { color: #8e9aa4; font-family: "Bahnschrift",sans-serif; font-size: 8px; letter-spacing: 1.2px; }
.race-partnership aside h3 { margin: 8px 0 22px; font-size: 23px; }
.race-partnership aside ul { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; }
.race-partnership aside li { display: grid; grid-template-columns: 90px 1fr; gap: 12px; padding: 14px 0; border-top: 1px solid #313942; }
.race-partnership aside b { color: #fff; font-size: 11px; }
.race-partnership aside span { color: #98a4ad; font-size: 10px; line-height: 1.7; }

.race-news { background: #eef0f1; }
.race-news-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.race-news-grid article { padding: 25px; background: #fff; border: 1px solid #dde2e5; }
.race-news-grid time { display: block; color: #9aa3aa; font-family: "Bahnschrift",sans-serif; font-size: 9px; }
.race-news-grid article > span { display: block; margin-top: 15px; color: var(--race-red); font-size: 8px; font-weight: 800; }
.race-news-grid h3 { margin: 5px 0 8px; font-size: 17px; }
.race-news-grid p { margin: 0; color: #74808a; font-size: 10px; line-height: 1.8; }

.coating-race .chat-attachment { display: inline-flex; align-items: center; gap: 7px; max-width: 100%; margin-top: 9px; padding: 8px 11px; border: 1px solid var(--race-red); color: #fff; background: var(--race-red); font-size: 11px; font-weight: 800; word-break: break-all; }
.coating-race .chat-attachment:hover { color: #fff; background: var(--race-red-dark); border-color: var(--race-red-dark); }

.race-footer { padding: 58px 0 20px; color: #9ca7af; background: #0d1116; border-top: 4px solid var(--race-red); }
.race-footer-top { display: grid; grid-template-columns: 1.35fr .65fr .7fr 1fr; gap: 38px; }
.race-footer-brand > a { display: inline-flex; align-items: center; gap: 10px; color: #fff; }
.race-footer-brand > a > span { display: grid; width: 34px; height: 34px; place-items: center; color: #fff; background: var(--race-red); }
.race-footer-brand strong { font-size: 17px; }
.race-footer-brand p, .race-footer-scope p { margin: 15px 0 0; color: #75818a; font-size: 10px; line-height: 1.8; }
.race-footer-top > div > span { display: block; margin-bottom: 14px; color: #fff; font-size: 10px; font-weight: 800; }
.race-footer-top > div > a { display: block; margin: 7px 0; color: #8e9aa3; font-size: 10px; }
.race-footer-top > div > a:hover { color: #fff; }
.race-footer-bottom { display: flex; justify-content: space-between; gap: 20px; margin-top: 38px; padding-top: 16px; border-top: 1px solid #252d34; color: #626f78; font-size: 9px; }

.race-service-dock { position: fixed; right: 20px; bottom: 24px; z-index: 80; width: 210px; overflow: hidden; color: var(--race-ink); background: #fff; box-shadow: 0 18px 55px rgba(15,24,32,.2); }
.race-service-dock > div { padding: 17px 18px 15px; border-top: 3px solid var(--race-red); }
.race-service-dock small { display: block; color: var(--race-red); font-family: "Bahnschrift",sans-serif; font-size: 7px; font-weight: 800; letter-spacing: 1px; }
.race-service-dock strong { display: block; margin-top: 4px; font-size: 14px; }
.race-service-dock p { margin: 3px 0 0; color: #78838b; font-size: 9px; line-height: 1.6; }
.race-service-dock > a { display: grid; min-height: 62px; grid-template-columns: 36px 1fr auto; align-items: center; gap: 9px; padding: 0 17px; color: #fff; background: var(--race-red); }
.race-service-dock > a > span { display: grid; width: 34px; height: 34px; place-items: center; border: 1px solid rgba(255,255,255,.55); border-radius: 50%; }
.race-service-dock b { font-size: 13px; }

.race-marketing-section { padding: 50px 0; background: #fff; }
.coating-race .page-head, .coating-race .site-section { background: var(--race-paper); }
.coating-race .page-head { padding: 120px 0 65px; border-bottom: 4px solid var(--race-red); }
.coating-race .page-head h1 { margin: 10px 0 8px; color: var(--race-ink); font-size: 42px; letter-spacing: -1.4px; }
.coating-race .page-head p { max-width: 780px; color: #6c7780; }
.coating-race .site-container { width: min(1360px,calc(100% - 52px)); margin: auto; }
.coating-race .site-section { padding: 58px 0; }
.coating-race .content-card, .coating-race .simple-panel, .coating-race .merchant-card, .coating-race .news-card { border-color: #dfe3e6; border-radius: 0; box-shadow: none; }
.coating-race .btn { border-radius: 0; }
.coating-race .btn-primary { color: #fff; background: var(--race-red); border-color: var(--race-red); }
.coating-race .kicker { color: var(--race-red); }

@media (max-width: 1180px) {
    .race-head-inner { flex-wrap: wrap; }
    .race-nav { order: 3; width: 100%; overflow-x: auto; }
    .race-actions { margin-left: auto; }
    .race-hero-copy { width: min(670px,70vw); }
    .race-scope-strip .race-wrap { grid-template-columns: 1fr; gap: 0; padding-top: 17px; }
    .race-scope-title { min-height: 30px; flex-direction: row; gap: 8px; align-items: baseline; }
    .race-scope-strip .race-wrap > div { grid-template-columns: repeat(3,minmax(0,1fr)); border-top: 1px solid var(--race-line); }
    .race-scope-strip a { min-height: 50px; border-bottom: 1px solid var(--race-line); }
    .race-manifesto-grid { gap: 50px; }
    .race-video-grid { grid-template-columns: 1.25fr .75fr; }
    .race-capability-grid { grid-template-columns: 1.2fr 1fr; }
    .race-capability-grid > article:last-child { grid-column: 1 / -1; min-height: 260px; }
    .race-partnership-grid { grid-template-columns: 1fr 390px; gap: 38px; }
}

@media (max-width: 840px) {
    .race-wrap, .coating-race .site-container { width: calc(100% - 30px); }
    .race-head-inner { min-height: 70px; gap: 10px; }
    .race-brand strong { font-size: 16px; }
    .race-brand small { display: none; }
    .race-actions { gap: 8px; }
    .race-actions > a:not(.race-primary) { display: none; }
    .race-hero { min-height: 850px; }
    .race-hero-media > img { object-position: 61% center; }
    .race-hero-shade { background: linear-gradient(90deg,rgba(7,10,13,.95),rgba(7,10,13,.62) 65%,rgba(7,10,13,.28)),linear-gradient(0deg,rgba(7,10,13,.76),transparent 60%); }
    .race-hero-inner { min-height: 850px; align-items: flex-end; padding-top: 135px; padding-bottom: 45px; }
    .race-hero-copy { width: 100%; }
    .race-hero h1 { font-size: clamp(52px,11vw,78px); }
    .race-hero-copy > p { max-width: 620px; font-size: 14px; }
    .race-color-list { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .race-hero-controls { right: 80px; bottom: 18px; }
    .race-hero-controls > div { min-width: 145px; }
    .race-hero-side-note { display: none; }
    .race-manifesto, .race-video, .race-gallery, .race-showcase, .race-mobility, .race-services, .race-categories, .race-picks, .race-capability, .race-products, .race-merchants, .race-partnership, .race-news { padding: 68px 0; }
    .race-manifesto-grid, .race-video-grid, .race-partnership-grid { grid-template-columns: 1fr; }
    .race-manifesto-copy > p { margin-top: 22px; }
    .race-video-frame, .race-video-frame video { min-height: 380px; }
    .race-gallery-grid { grid-template-columns: 1fr 1fr; }
    .race-gallery-grid article:last-child { grid-column: 1 / -1; }
    .race-mobility-grid { grid-template-columns: 1fr 1fr; }
    .race-mobility-grid > a:first-child { grid-column: 1 / -1; min-height: 420px; }
    .race-mobility-grid > a { min-height: 330px; }
    .race-showcase-card { width: clamp(280px,42vw,350px); }
    .race-service-grid, .race-category-grid, .race-pick-grid, .race-product-grid, .race-news-grid { grid-template-columns: 1fr 1fr; }
    .race-capability-grid { grid-template-columns: 1fr; }
    .race-capability-grid > article:last-child { grid-column: auto; }
    .race-capability-photo, .race-capability-photo img { min-height: 340px; }
    .race-footer-top { grid-template-columns: 1.2fr .8fr .8fr; }
    .race-footer-scope { grid-column: 1 / -1; }
    .race-service-dock { right: 10px; bottom: 12px; width: 58px; overflow: visible; border-radius: 50%; box-shadow: 0 10px 30px rgba(15,24,32,.25); }
    .race-service-dock > div { display: none; }
    .race-service-dock > a { display: grid; width: 58px; min-height: 58px; grid-template-columns: 1fr; place-items: center; gap: 0; padding: 0; border-radius: 50%; }
    .race-service-dock > a > span { width: 36px; height: 36px; border: 0; font-size: 15px; }
    .race-service-dock > a > b, .race-service-dock > a > i { display: none; }
}

@media (max-width: 560px) {
    .race-header.is-solid .race-head-inner { padding: 9px 0; }
    .race-nav a { padding: 0 9px; font-size: 11px; }
    .race-brand-mark { width: 38px; height: 38px; }
    .race-brand strong { max-width: 150px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .race-primary { padding: 8px 10px; }
    .race-hero { min-height: 940px; }
    .race-hero-inner { min-height: 940px; }
    .race-hero h1 { margin-top: 19px; font-size: 52px; }
    .race-hero-copy > p { font-size: 13px; line-height: 1.8; }
    .race-hero-actions { display: grid; grid-template-columns: 1fr 1fr; }
    .race-btn { padding: 0 12px; }
    .race-color-panel { padding: 13px; }
    .race-color-panel-head small { display: none; }
    .race-color-list { gap: 5px; }
    .race-color-list button { min-height: 48px; }
    .race-color-list button span { font-size: 8px; }
    .race-color-note { line-height: 1.5; }
    .race-hero-controls { right: 76px; left: 15px; bottom: 12px; justify-content: space-between; }
    .race-hero-controls > div { min-width: 0; flex: 1; }
    .race-scope-strip .race-wrap > div { grid-template-columns: 1fr 1fr; }
    .race-scope-strip a { min-height: 47px; padding: 0 7px; font-size: 9px; }
    .race-section-head, .race-capability-title { align-items: flex-start; flex-direction: column; }
    .race-manifesto h2, .race-video-copy h2, .race-section-head h2, .race-capability-title h2, .race-partnership h2 { font-size: 32px; }
    .race-stats { grid-template-columns: 1fr 1fr 1fr; }
    .race-stats strong { font-size: 27px; }
    .race-stats span { font-size: 8px; }
    .race-video-frame, .race-video-frame video { min-height: 245px; }
    .race-video-copy { padding: 29px 23px; }
    .race-gallery-grid, .race-mobility-grid, .race-service-grid, .race-category-grid, .race-pick-grid, .race-product-grid, .race-merchant-grid, .race-news-grid { grid-template-columns: 1fr; }
    .race-gallery-grid article:last-child { grid-column: auto; }
    .race-mobility-grid > a:first-child { grid-column: auto; min-height: 340px; }
    .race-mobility-grid > a { min-height: 340px; }
    .race-showcase-card { width: min(84vw,330px); }
    .race-capability-grid > article { min-height: 330px; padding: 25px; }
    .race-capability-grid h3 { font-size: 22px; }
    .race-partnership aside { padding: 24px; }
    .race-partnership aside li { grid-template-columns: 80px 1fr; }
    .race-footer-top { grid-template-columns: 1fr 1fr; gap: 25px; }
    .race-footer-brand, .race-footer-scope { grid-column: 1 / -1; }
    .race-footer-bottom { flex-direction: column; }
    .race-service-dock { width: 54px; }
    .race-service-dock > a { width: 54px; min-height: 54px; }
    .coating-race .page-head { padding: 105px 0 50px; }
}

@media (prefers-reduced-motion: reduce) {
    .race-showcase-track { animation: none; }
    .race-showcase-window { overflow-x: auto; }
}
