/* HORSTI Cars FIRST CUSTOMER v4.0.0 – Premium Dark/Light UI */
.hc2-page-shell,
.hc2-app,
.hc2-app * { box-sizing: border-box; }

/* Der Außenbereich der Konfigurator-Seite bleibt immer echtes Schwarz.
   Das beseitigt helle/weiße Theme-Flächen direkt unter dem Header und vor dem Footer. */
body.hc2-configurator-page,
body.hc2-configurator-page #page,
body.hc2-configurator-page .site,
body.hc2-configurator-page #content,
body.hc2-configurator-page .site-content,
body.hc2-configurator-page .content-area,
body.hc2-configurator-page .page-content,
body.hc2-configurator-page .entry-content,
body.hc2-configurator-page main#primary,
.hc2-page-shell {
    background-color: #000000 !important;
}

body.hc2-configurator-page #content,
body.hc2-configurator-page .site-content,
body.hc2-configurator-page .content-area,
body.hc2-configurator-page main#primary {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.hc2-page-shell {
    width: 100%; max-width: none !important; margin: 0 !important; padding: 0 !important;
    background: #000000 !important;
}

.hc2-app {
    --hc2-orange: #FF7A00;
    --hc2-card-hover-border: color-mix(in srgb, var(--hc2-orange) 46%, var(--hc2-line));
    width: 100%; min-height: 680px;
    font-family: Barlow, Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
    font-size: 16px; line-height: 1.5;
    color: var(--hc2-text); background: var(--hc2-bg);
    transition: background-color .22s ease, color .22s ease;
    -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility;
}

.hc2-app[data-theme="dark"] {
    --hc2-bg: #000000;
    --hc2-bg-2: #000000;
    --hc2-surface: #000000;
    --hc2-surface-2: #000000;
    --hc2-surface-3: #000000;
    --hc2-text: #f5f6f7;
    --hc2-heading: #ffffff;
    --hc2-muted: #a5abb4;
    --hc2-muted-2: #7f8792;
    --hc2-line: #2a2f37;
    --hc2-line-strong: #3a414c;
    --hc2-shadow: rgba(0,0,0,.36);
    --hc2-field: #000000;
    --hc2-input-text: #f8f8f8;
    --hc2-soft-orange: rgba(255,122,0,.09);
}

.hc2-app[data-theme="light"] {
    --hc2-bg: #ffffff;
    --hc2-bg-2: #ffffff;
    --hc2-surface: #ffffff;
    --hc2-surface-2: #ffffff;
    --hc2-surface-3: #ffffff;
    --hc2-text: #16191e;
    --hc2-heading: #0d0f12;
    --hc2-muted: #626973;
    --hc2-muted-2: #858b94;
    --hc2-line: #dde0e4;
    --hc2-line-strong: #c9cdd3;
    --hc2-shadow: rgba(20,24,30,.10);
    --hc2-field: #ffffff;
    --hc2-input-text: #15181d;
    --hc2-soft-orange: rgba(255,122,0,.07);
}

.hc2-container,
.hc2-hero-inner,
.hc2-boot,
.hc2-status,
.hc2-fatal { width: min(1360px, calc(100% - 56px)); margin: 0 auto; }

.hc2-hero {
    position:relative; z-index:100; overflow:visible !important;
    border-bottom: 1px solid var(--hc2-line);
    background:var(--hc2-bg);
}

.hc2-hero-inner { position:relative; z-index:101; overflow:visible !important; padding: 52px 0 34px; }
.hc2-hero-top { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:14px; }

.hc2-eyebrow {
    display:inline-flex; align-items:center; gap:11px;
    color:var(--hc2-orange); font-size:13px; font-weight:900; letter-spacing:.15em; text-transform:uppercase;
}
.hc2-eyebrow::before { content:""; width:34px; height:3px; border-radius:99px; background:var(--hc2-orange); box-shadow:0 0 16px rgba(255,122,0,.35); }

.hc2-title {
    margin:0; color:var(--hc2-heading);
    font-size:clamp(40px,5.3vw,70px); line-height:.98; font-weight:900; letter-spacing:-.04em; text-transform:uppercase;
}
.hc2-subtitle { max-width:820px; margin:17px 0 0; color:var(--hc2-muted); font-size:clamp(17px,1.55vw,20px); font-weight:500; }

.hc2-theme-switch {
    appearance:none; display:inline-flex; align-items:center; gap:10px; min-height:42px; padding:6px 8px 6px 12px;
    border:1px solid var(--hc2-line-strong); border-radius:999px; background:var(--hc2-surface); color:var(--hc2-text);
    font:inherit; cursor:pointer; box-shadow:0 8px 24px var(--hc2-shadow); transition:transform .18s ease;
}
/* HELL/DUNKEL: beim Hover keinerlei Farbwechsel, nur die dezente Bewegung bleibt. */
.hc2-app .hc2-theme-switch:hover,
.hc2-app .hc2-theme-switch:focus-visible {
    transform:translateY(var(--hc2-theme-hover-y, -1px));
    background:var(--hc2-surface) !important;
    background-color:var(--hc2-surface) !important;
    color:var(--hc2-text) !important;
    border-color:var(--hc2-line-strong) !important;
    box-shadow:0 8px 24px var(--hc2-shadow) !important;
    filter:none !important;
    text-decoration:none !important;
}
.hc2-app .hc2-theme-switch:hover *,
.hc2-app .hc2-theme-switch:focus-visible * {
    filter:none !important;
}
.hc2-theme-icon { font-size:17px; color:var(--hc2-orange); line-height:1; }
.hc2-theme-label { min-width:48px; font-size:11px; font-weight:900; letter-spacing:.09em; }
.hc2-switch-track { position:relative; display:block; width:42px; height:24px; border-radius:99px; background:var(--hc2-surface-3); border:1px solid var(--hc2-line-strong); }
.hc2-switch-knob { position:absolute; top:3px; left:3px; width:16px; height:16px; border-radius:50%; background:var(--hc2-orange); transition:transform .2s ease; box-shadow:0 1px 5px rgba(0,0,0,.35); }
.hc2-app[data-theme="light"] .hc2-switch-knob { transform:translateX(18px); }

.hc2-progress {
    display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); margin-top:32px;
    border:1px solid var(--hc2-line); background:var(--hc2-surface); box-shadow:0 14px 35px var(--hc2-shadow);
}
.hc2-progress-step {
    position:relative; appearance:none; width:100%; min-height:66px; padding:13px 15px 13px 52px;
    border:0; border-right:1px solid var(--hc2-line); border-radius:0; outline:none;
    background:transparent; color:var(--hc2-muted-2); font:inherit; font-size:14px; font-weight:800;
    display:flex; align-items:center; text-align:left; cursor:default;
    transition:transform .16s ease;
}
.hc2-progress-step.is-clickable { cursor:pointer; }
/* Rücksprung über die obere Navigation: ausschließlich Bewegung, keinerlei Farbwechsel. */
.hc2-app .hc2-progress-step.is-clickable:hover,
.hc2-app .hc2-progress-step.is-clickable:focus-visible {
    transform:translateY(var(--hc2-nav-hover-y, -2px));
    background:transparent !important;
    background-color:transparent !important;
    border-color:var(--hc2-line) !important;
    box-shadow:none !important;
    filter:none !important;
    text-decoration:none !important;
}
.hc2-app .hc2-progress-step.is-clickable:hover:not(.is-active),
.hc2-app .hc2-progress-step.is-clickable:focus-visible:not(.is-active) { color:var(--hc2-muted-2) !important; }
.hc2-app .hc2-progress-step.is-clickable.is-active:hover,
.hc2-app .hc2-progress-step.is-clickable.is-active:focus-visible { color:var(--hc2-heading) !important; }
.hc2-progress-step.is-clickable:focus-visible { outline:1px solid var(--hc2-orange); outline-offset:-4px; }
.hc2-progress-step:disabled {
    opacity:1;
    pointer-events:none;
}
/* Noch nicht verfügbare Schritte dürfen überhaupt keinen Hover-/Farbeffekt bekommen. */
.hc2-app .hc2-progress-step:disabled,
.hc2-app .hc2-progress-step:disabled:hover,
.hc2-app .hc2-progress-step:disabled:focus,
.hc2-app .hc2-progress-step:disabled:focus-visible {
    transform:none !important;
    background:transparent !important;
    background-color:transparent !important;
    color:var(--hc2-muted-2) !important;
    border-color:var(--hc2-line) !important;
    box-shadow:none !important;
    filter:none !important;
    text-decoration:none !important;
    outline:none !important;
}
.hc2-app .hc2-progress-step:disabled span,
.hc2-app .hc2-progress-step:disabled:hover span,
.hc2-app .hc2-progress-step:disabled:focus span {
    color:var(--hc2-muted) !important;
    background:var(--hc2-bg-2) !important;
    border-color:var(--hc2-line-strong) !important;
    box-shadow:none !important;
    filter:none !important;
}

.hc2-progress-step:last-child { border-right:0; }
.hc2-progress-step span {
    position:absolute; left:15px; width:26px; height:26px; display:grid; place-items:center;
    border:1px solid var(--hc2-line-strong); border-radius:50%; color:var(--hc2-muted); font-size:11px; background:var(--hc2-bg-2);
}
.hc2-progress-step.is-active { color:var(--hc2-heading); }
.hc2-progress-step.is-active span,.hc2-progress-step.is-done span { border-color:var(--hc2-orange); background:var(--hc2-orange); color:#fff; }

.hc2-main { position:relative; z-index:1; padding:42px 0 80px; background:var(--hc2-bg); }
.hc2-section-head { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:25px; }
.hc2-section-head h2,.hc2-selector-title { margin:0; color:var(--hc2-heading); font-size:clamp(28px,3vw,38px); line-height:1.05; font-weight:900; letter-spacing:-.025em; }
.hc2-section-head p { margin:7px 0 0; color:var(--hc2-muted); font-size:16px; }
.hc2-count,.hc2-options-count { color:var(--hc2-muted-2); font-size:14px; font-weight:700; white-space:nowrap; }

.hc2-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:14px; }
.hc2-card {
    position:relative; appearance:none; width:100%; min-width:0; min-height:168px; padding:19px 13px 15px;
    border:1px solid var(--hc2-line); border-radius:5px; background:var(--hc2-surface); color:var(--hc2-text); cursor:pointer;
    font:inherit; text-align:center; overflow:hidden;
    transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease, background-color .18s ease;
}
.hc2-brand-card { min-height:190px; padding-top:22px; }
.hc2-card::before { content:""; position:absolute; left:-1px; right:-1px; top:-1px; height:3px; background:var(--hc2-orange); transform:scaleX(0); transform-origin:center; transition:transform .18s ease; }
.hc2-card:hover,.hc2-card:focus-visible { border-color:var(--hc2-line-strong); box-shadow:0 16px 34px var(--hc2-shadow); transform:translateY(-3px); outline:none; background:var(--hc2-surface-2); }
.hc2-card:hover::before,.hc2-card:focus-visible::before { transform:scaleX(1); }

/* Marken-Hover: ausschließlich das Herstellerlogo bewegt sich leicht nach oben.
   Keine Farbüberlagerung und kein Hintergrundwechsel; nur ein sehr dezenter Rand in der Primärfarbe sowie die leichte Logo-Bewegung. */
.hc2-brand-card:hover,
.hc2-brand-card:focus-visible {
    background: var(--hc2-surface) !important;
    border-color: var(--hc2-card-hover-border) !important;
    box-shadow: 0 0 0 1px color-mix(in srgb, var(--hc2-orange) 8%, transparent) !important;
    transform: none !important;
    color: var(--hc2-text) !important;
}
.hc2-brand-card::before,
.hc2-brand-card:hover::before,
.hc2-brand-card:focus-visible::before {
    transform: scaleX(0) !important;
    opacity: 0 !important;
}
.hc2-brand-card .hc2-card-media,
.hc2-brand-card:hover .hc2-card-media,
.hc2-brand-card:focus-visible .hc2-card-media {
    background: transparent !important;
    filter: none !important;
}
.hc2-brand-card .hc2-card-media img {
    transition: transform .18s ease !important;
    filter: none !important;
    opacity: 1 !important;
}
.hc2-brand-card:hover .hc2-card-media img,
.hc2-brand-card:focus-visible .hc2-card-media img {
    transform: translateY(var(--hc2-card-hover-y, -5px)) !important;
    filter: none !important;
    opacity: 1 !important;
}


/* Modell-/Fahrzeugkarten auf allen Unterseiten: identisches Hover-Verhalten wie bei den Marken.
   Keine Flächenfärbung; nur ein sehr dezenter Rand in der Primärfarbe und die Bild-/Textbewegung nach oben. */
.hc2-card:not(.hc2-brand-card):hover,
.hc2-card:not(.hc2-brand-card):focus-visible {
    background: var(--hc2-surface) !important;
    border-color: var(--hc2-card-hover-border) !important;
    box-shadow: 0 0 0 1px color-mix(in srgb, var(--hc2-orange) 8%, transparent) !important;
    transform: none !important;
    color: var(--hc2-text) !important;
    outline: none !important;
}
.hc2-card:not(.hc2-brand-card)::before,
.hc2-card:not(.hc2-brand-card):hover::before,
.hc2-card:not(.hc2-brand-card):focus-visible::before {
    transform: scaleX(0) !important;
    opacity: 0 !important;
}
.hc2-card:not(.hc2-brand-card) .hc2-card-media,
.hc2-card:not(.hc2-brand-card):hover .hc2-card-media,
.hc2-card:not(.hc2-brand-card):focus-visible .hc2-card-media {
    background: transparent !important;
    filter: none !important;
}
.hc2-card:not(.hc2-brand-card) .hc2-card-media img {
    transition: transform .18s ease !important;
    filter: none !important;
    opacity: 1 !important;
}
.hc2-card:not(.hc2-brand-card):hover .hc2-card-media img,
.hc2-card:not(.hc2-brand-card):focus-visible .hc2-card-media img {
    transform: translateY(var(--hc2-card-hover-y, -5px)) !important;
    filter: none !important;
    opacity: 1 !important;
}



/* v3.0.1 – Modelle ohne eigenes Fahrzeugbild:
   kein kopiertes Markenlogo, sondern ein ruhiger, gut lesbarer Text-Button. */
.hc2-card.hc2-card--text-only {
    min-height: 104px;
    padding: 22px 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--hc2-surface) !important;
}
.hc2-card.hc2-card--text-only .hc2-card-name {
    margin: 0;
    overflow: visible;
    text-overflow: clip;
    white-space: normal;
    color: var(--hc2-heading) !important;
    font-family: Barlow, Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.28;
    letter-spacing: .005em;
}
.hc2-card.hc2-card--text-only:hover .hc2-card-name,
.hc2-card.hc2-card--text-only:focus-visible .hc2-card-name {
    transform: translateY(var(--hc2-card-hover-y, -3px));
    transition: transform .18s ease;
}
.hc2-search-result-card.hc2-card--text-only {
    min-height: 118px;
}
.hc2-search-result-card.hc2-card--text-only .hc2-search-result-brand,
.hc2-search-result-card.hc2-card--text-only .hc2-search-result-meta {
    width: 100%;
}

.hc2-card-media { height:98px; display:grid; place-items:center; margin-bottom:12px; }
.hc2-brand-card .hc2-card-media { height:116px; margin-bottom:10px; }
.hc2-card-media img {
    display:block; width:auto; height:auto; max-width:100%; max-height:100%; object-fit:contain; object-position:center;
    image-rendering:auto; filter:none !important; opacity:1; transform:translateZ(0); backface-visibility:hidden;
}
.hc2-brand-card .hc2-card-media {
    height:128px;
    overflow:visible;
}
.hc2-brand-card .hc2-card-media img {
    max-width:208px; max-height:128px;
    image-rendering:-webkit-optimize-contrast;
    image-rendering:crisp-edges;
    will-change:transform;
}

.hc2-fallback-logo {
    width:70px; height:70px; display:grid; place-items:center; border:1px solid var(--hc2-line-strong); border-radius:50%;
    color:var(--hc2-muted); font-size:16px; font-weight:900; letter-spacing:.04em; background:var(--hc2-surface-2);
}
.hc2-card-name { display:block; width:100%; overflow:hidden; text-overflow:ellipsis; color:var(--hc2-heading); font-size:16px; font-weight:800; line-height:1.3; text-align:center; }
.hc2-brand-card .hc2-card-name { font-size:17px; }

.hc2-toolbar { display:flex; justify-content:space-between; align-items:center; gap:18px; margin-bottom:22px; }
.hc2-back {
    appearance:none; border:0 !important; padding:9px 0; background:transparent !important; color:var(--hc2-text) !important; cursor:pointer;
    font:inherit; font-size:15px; font-weight:900; box-shadow:none !important; filter:none !important; text-decoration:none !important;
    transition:transform .16s ease;
}
/* Marke/Modell ändern: keine Farbänderung aus Theme/Elementor, nur minimale Bewegung nach oben. */
.hc2-app .hc2-back:hover,
.hc2-app .hc2-back:focus,
.hc2-app .hc2-back:focus-visible,
.hc2-app .hc2-back:active {
    color:var(--hc2-text) !important;
    background:transparent !important;
    background-color:transparent !important;
    border-color:transparent !important;
    box-shadow:none !important;
    filter:none !important;
    text-decoration:none !important;
    transform:translateY(var(--hc2-nav-hover-y, -2px));
    outline:none !important;
}
.hc2-back::before,
.hc2-back:hover::before,
.hc2-back:focus::before,
.hc2-back:active::before { content:"←"; margin-right:9px; color:var(--hc2-orange) !important; }
.hc2-search { width:min(470px,100%); height:48px; padding:0 15px; border:1px solid var(--hc2-line-strong); border-radius:4px; outline:none; background:var(--hc2-field) !important; color:var(--hc2-input-text) !important; caret-color:var(--hc2-input-text); -webkit-text-fill-color:var(--hc2-input-text); font:inherit; font-size:16px; }
.hc2-app[data-theme="dark"] .hc2-search { background:#111419 !important; color:#ffffff !important; caret-color:#ffffff !important; -webkit-text-fill-color:#ffffff !important; }
.hc2-app[data-theme="light"] .hc2-search { background:#ffffff !important; color:#111111 !important; caret-color:#111111 !important; -webkit-text-fill-color:#111111 !important; }
.hc2-search::placeholder { color:var(--hc2-muted) !important; -webkit-text-fill-color:var(--hc2-muted) !important; opacity:.74; }
.hc2-global-search-input,.hc2-hsn-search-input { height:46px; padding-left:54px; font-size:15px; appearance:none; -webkit-appearance:none; background-repeat:no-repeat; background-position:18px center; background-size:16px 16px; }
.hc2-global-search-input::placeholder,.hc2-hsn-search-input::placeholder { letter-spacing:0; }
.hc2-search:focus { border-color:var(--hc2-orange); box-shadow:0 0 0 3px rgba(255,122,0,.12); }
.hc2-search-result-card { min-height:205px; }
.hc2-search-result-brand { display:block; margin:0 0 3px; color:var(--hc2-orange); font-size:11px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.hc2-search-result-meta { display:block; margin-top:5px; color:var(--hc2-muted); font-size:12px; font-weight:600; line-height:1.3; }
.hc2-search-loading { grid-column:1/-1; padding:32px 18px; border:1px solid var(--hc2-line); border-radius:5px; color:var(--hc2-muted); background:var(--hc2-surface); text-align:center; }


/* Permanente, dezente Fahrzeugsuche auf jeder Stufe des Konfigurators. */
.hc2-global-search-wrap { position:relative; z-index:1000; overflow:visible !important; width:min(760px,100%); margin:18px 0 0; }
.hc2-global-search-box { position:relative; display:flex; align-items:center; width:100%; }
.hc2-global-search-icon { display:none !important; }
.hc2-global-search-input { width:100%; max-width:none; height:46px; padding-left:54px; padding-right:43px; border-radius:5px; font-size:15px; box-shadow:0 8px 22px rgba(0,0,0,.10); appearance:none; -webkit-appearance:none; background-repeat:no-repeat; background-position:18px center; background-size:16px 16px; }
.hc2-global-search-input:focus { box-shadow:0 0 0 2px rgba(255,122,0,.16), 0 10px 24px rgba(0,0,0,.12); }
.hc2-global-search-input,.hc2-hsn-search-input { background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='11' cy='11' r='6.5' fill='none' stroke='%238894a6' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M16 16l5 5' fill='none' stroke='%238894a6' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.hc2-global-search-input::placeholder,.hc2-hsn-search-input::placeholder { color:var(--hc2-muted) !important; -webkit-text-fill-color:var(--hc2-muted) !important; opacity:.66; }
.hc2-global-search-clear { appearance:none; position:absolute; right:9px; width:30px; height:30px; display:grid; place-items:center; padding:0; border:0 !important; border-radius:50%; background:transparent !important; color:var(--hc2-muted) !important; font:inherit; font-size:22px; line-height:1; cursor:pointer; box-shadow:none !important; transition:transform .14s ease; }
.hc2-global-search-clear:hover,.hc2-global-search-clear:focus-visible { background:transparent !important; color:var(--hc2-muted) !important; transform:translateY(-1px); outline:none; }
.hc2-global-search-panel { position:absolute; z-index:3100; left:0; right:0; top:calc(100% + 7px); max-height:430px; overflow:auto; padding:7px; border:1px solid var(--hc2-line-strong); border-radius:6px; background:var(--hc2-bg-2); box-shadow:0 30px 72px rgba(0,0,0,.68), 0 0 0 1px rgba(255,255,255,.035); isolation:isolate; }
.hc2-global-search-panel[hidden] { display:none !important; }
.hc2-global-search-results { display:grid; gap:4px; }
.hc2-global-hit { appearance:none; width:100%; padding:10px 12px; border:1px solid transparent !important; border-radius:4px; background:transparent !important; color:var(--hc2-text) !important; font:inherit; text-align:left; cursor:pointer; box-shadow:none !important; transition:transform .14s ease, border-color .14s ease; }
.hc2-global-hit:hover,.hc2-global-hit:focus-visible { background:transparent !important; color:var(--hc2-text) !important; border-color:var(--hc2-line-strong) !important; transform:translateY(var(--hc2-search-hover-y, -1px)); outline:none; box-shadow:none !important; }
.hc2-app.hc2-search-hover-enabled .hc2-global-hit:hover,
.hc2-app.hc2-search-hover-enabled .hc2-global-hit:focus-visible {
    background:var(--hc2-search-hover, #FF7A00) !important;
    background-color:var(--hc2-search-hover, #FF7A00) !important;
    color:var(--hc2-search-hover-text, #FFFFFF) !important;
    border-color:var(--hc2-search-hover, #FF7A00) !important;
}
.hc2-app.hc2-search-hover-enabled .hc2-global-hit:hover .hc2-global-hit-title,
.hc2-app.hc2-search-hover-enabled .hc2-global-hit:focus-visible .hc2-global-hit-title,
.hc2-app.hc2-search-hover-enabled .hc2-global-hit:hover .hc2-global-hit-meta,
.hc2-app.hc2-search-hover-enabled .hc2-global-hit:focus-visible .hc2-global-hit-meta {
    color:var(--hc2-search-hover-text, #FFFFFF) !important;
}
.hc2-global-hit-title { display:block; color:var(--hc2-heading); font-size:14px; font-weight:800; line-height:1.25; }
.hc2-global-hit-meta { display:block; margin-top:2px; color:var(--hc2-muted); font-size:12px; line-height:1.3; }
.hc2-global-search-status,.hc2-global-search-more { padding:12px; color:var(--hc2-muted); font-size:13px; text-align:left; }
.hc2-global-search-more { padding-top:8px; border-top:1px solid var(--hc2-line); font-size:11px; }

.hc2-path { margin:0 0 9px; color:var(--hc2-orange); font-size:13px; font-weight:900; letter-spacing:.09em; text-transform:uppercase; }
.hc2-selector-box { margin-top:24px; padding:30px; border:1px solid var(--hc2-line); border-radius:5px; background:var(--hc2-surface); box-shadow:0 14px 36px var(--hc2-shadow); }
.hc2-selector-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin-top:24px; }
.hc2-field label { display:block; margin-bottom:8px; color:var(--hc2-muted); font-size:12px; font-weight:900; letter-spacing:.09em; text-transform:uppercase; }
/* Eigene Dropdowns statt nativer Windows/Chrome-selects: Hover + Auswahl garantiert HORSTI-Primärfarbe. */
.hc2-dropdown { position:relative; width:100%; }
.hc2-dropdown-toggle {
    appearance:none; position:relative; width:100%; min-height:54px; padding:0 44px 0 15px;
    border:1px solid var(--hc2-line-strong) !important; border-radius:4px;
    background:var(--hc2-field) !important; color:var(--hc2-input-text) !important;
    font:inherit; font-size:16px; font-weight:600; text-align:left; cursor:pointer;
    box-shadow:none !important; filter:none !important; outline:none; transition:border-color .15s ease, box-shadow .15s ease;
}
.hc2-dropdown-toggle::after {
    content:""; position:absolute; right:17px; top:50%; width:8px; height:8px;
    border-right:2px solid var(--hc2-muted); border-bottom:2px solid var(--hc2-muted);
    transform:translateY(-65%) rotate(45deg); transition:transform .16s ease, border-color .16s ease;
}
.hc2-dropdown:not(.is-disabled) .hc2-dropdown-toggle:hover,
.hc2-dropdown:not(.is-disabled) .hc2-dropdown-toggle:focus-visible,
.hc2-dropdown.is-open .hc2-dropdown-toggle {
    border-color:var(--hc2-dropdown-hover, var(--hc2-orange)) !important;
    background:var(--hc2-field) !important;
    color:var(--hc2-input-text) !important;
    box-shadow:0 0 0 3px rgba(255,122,0,.12) !important;
}
.hc2-dropdown.is-open .hc2-dropdown-toggle::after { border-color:var(--hc2-dropdown-hover, var(--hc2-orange)); transform:translateY(-25%) rotate(225deg); }
.hc2-dropdown.is-disabled { opacity:.52; }
.hc2-dropdown.is-disabled .hc2-dropdown-toggle { cursor:not-allowed; }
.hc2-dropdown-menu {
    position:absolute; z-index:80; left:0; right:0; top:calc(100% + 6px); max-height:310px; overflow:auto;
    padding:6px; border:1px solid var(--hc2-line-strong); border-radius:4px;
    background:var(--hc2-surface) !important; box-shadow:0 16px 38px var(--hc2-shadow);
}
.hc2-dropdown-menu[hidden] { display:none !important; }
.hc2-dropdown-option {
    appearance:none; display:block; width:100%; min-height:42px; padding:9px 11px;
    border:0 !important; border-radius:3px; background:transparent !important; color:var(--hc2-input-text) !important;
    font:inherit; font-size:15px; font-weight:600; line-height:1.25; text-align:left; cursor:pointer;
    box-shadow:none !important; filter:none !important; outline:none; text-decoration:none !important;
}
/* Sowohl Mouseover/Fokus als auch die fest gewählte Option sind orange – kein Browser-Blau mehr. */
.hc2-app .hc2-dropdown-option:hover,
.hc2-app .hc2-dropdown-option:focus-visible,
.hc2-app .hc2-dropdown-option.is-selected {
    background:var(--hc2-dropdown-hover, var(--hc2-orange)) !important;
    background-color:var(--hc2-dropdown-hover, var(--hc2-orange)) !important;
    color:#ffffff !important;
    border-color:var(--hc2-dropdown-hover, var(--hc2-orange)) !important;
    box-shadow:none !important;
    filter:none !important;
}
.hc2-dropdown-option + .hc2-dropdown-option { margin-top:2px; }

.hc2-result-wrap { margin-top:30px; scroll-margin-top:28px; }
.hc2-result { border:1px solid var(--hc2-line); border-radius:5px; background:var(--hc2-surface); overflow:hidden; box-shadow:0 18px 44px var(--hc2-shadow); }
.hc2-result-top { display:grid; grid-template-columns:280px minmax(0,1fr); gap:32px; align-items:center; padding:32px; }
.hc2-vehicle-image { height:185px; display:grid; place-items:center; background:var(--hc2-surface-2); border:1px solid var(--hc2-line); overflow:hidden; }
.hc2-vehicle-image img { width:100%; height:100%; object-fit:contain; image-rendering:auto; }
.hc2-stage-kicker { color:var(--hc2-orange); font-size:13px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.hc2-result-name { margin:6px 0 0; color:var(--hc2-heading); font-size:clamp(31px,4vw,48px); line-height:1.02; font-weight:900; letter-spacing:-.035em; }
.hc2-result-path { margin-top:11px; color:var(--hc2-muted); font-size:16px; font-weight:500; }

.hc2-tabs { display:flex; flex-wrap:wrap; gap:10px; padding:0 32px 26px; }
.hc2-tab { appearance:none; display:inline-flex; align-items:center; gap:8px; min-height:43px; padding:10px 17px; border:1px solid var(--hc2-line-strong); border-radius:999px; background:var(--hc2-surface-2); color:var(--hc2-text); cursor:pointer; font:inherit; font-size:15px; font-weight:900; }
.hc2-tab span { font-size:10px; color:var(--hc2-muted); font-weight:800; text-transform:uppercase; letter-spacing:.05em; }
.hc2-tab.is-active { border-color:var(--hc2-orange); background:var(--hc2-orange); color:#fff; box-shadow:0 7px 18px rgba(255,122,0,.18); }
.hc2-tab.is-active span { color:rgba(255,255,255,.8); }
.hc2-stage-description { margin:-6px 32px 27px; padding:15px 17px; border-left:3px solid var(--hc2-orange); background:var(--hc2-soft-orange); color:var(--hc2-muted); font-size:15px; line-height:1.55; }

.hc2-performance { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid var(--hc2-line); border-bottom:1px solid var(--hc2-line); }
.hc2-performance-card { position:relative; min-height:210px; padding:28px 30px; border-right:1px solid var(--hc2-line); background:var(--hc2-surface); }
.hc2-performance-card:last-child { border-right:0; }
.hc2-performance-card.is-tuned { background:var(--hc2-surface); }
.hc2-performance-card.is-tuned::before { content:""; position:absolute; top:-1px; left:-1px; right:-1px; height:3px; background:var(--hc2-orange); }
.hc2-performance-label { margin-bottom:24px; color:var(--hc2-muted); font-size:13px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.hc2-metrics { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.hc2-metric strong { display:block; color:var(--hc2-heading); line-height:1; white-space:nowrap; font-weight:900; letter-spacing:-.035em; }
.hc2-metric-number { font-size:clamp(34px,3.1vw,46px); }
.hc2-metric-unit { font-size:clamp(18px,1.6vw,23px); letter-spacing:-.01em; }
.hc2-performance-card.is-gain .hc2-metric strong,.hc2-performance-card.is-tuned .hc2-metric strong { color:var(--hc2-orange); }
.hc2-metric-caption { display:block; margin-top:9px; color:var(--hc2-muted); font-size:14px; font-weight:800; letter-spacing:.01em; }

.hc2-options { padding:29px 32px 30px; border-bottom:1px solid var(--hc2-line); }
.hc2-options-head { display:flex; justify-content:space-between; gap:20px; align-items:flex-end; margin-bottom:17px; }
.hc2-options-title { color:var(--hc2-heading); font-size:19px; font-weight:900; }
.hc2-options-subtitle { margin-top:4px; color:var(--hc2-muted); font-size:14px; }
.hc2-option-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.hc2-option-choice { position:relative; display:flex; align-items:center; gap:12px; min-height:66px; padding:12px 14px; border:1px solid var(--hc2-line); border-radius:4px; background:var(--hc2-surface-2); cursor:pointer; transition:border-color .16s ease, background-color .16s ease, transform .16s ease; }
.hc2-option-choice:hover { border-color:var(--hc2-line-strong); transform:translateY(-1px); }
.hc2-option-choice.is-selected { border-color:var(--hc2-orange); background:var(--hc2-soft-orange); }
.hc2-option-choice input { position:absolute; opacity:0; pointer-events:none; }
.hc2-option-check { flex:0 0 auto; width:25px; height:25px; border:1px solid var(--hc2-line-strong); border-radius:4px; display:grid; place-items:center; color:transparent; background:var(--hc2-field); font-size:13px; font-weight:900; }
.hc2-option-choice.is-selected .hc2-option-check { border-color:var(--hc2-orange); background:var(--hc2-orange); color:#fff; }
.hc2-option-copy { min-width:0; display:flex; flex-direction:column; gap:3px; }
.hc2-option-copy strong { color:var(--hc2-heading); font-size:14px; line-height:1.25; font-weight:800; }
.hc2-option-copy small { color:var(--hc2-muted); font-size:12px; font-weight:700; }

.hc2-promo { display:flex; align-items:center; gap:13px; margin:24px 32px 0; padding:14px 16px; border:1px solid rgba(255,122,0,.38); border-radius:4px; background:var(--hc2-soft-orange); color:var(--hc2-heading); }
.hc2-promo-label { flex:0 0 auto; padding:4px 8px; border-radius:3px; background:var(--hc2-orange); color:#fff; font-size:10px; font-weight:900; letter-spacing:.1em; }
.hc2-promo strong { font-size:15px; font-weight:900; }
.hc2-price-row { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:24px 32px 29px; }
.hc2-price-row-label { color:var(--hc2-heading); font-size:17px; font-weight:900; }
.hc2-price-meta { margin-top:4px; color:var(--hc2-muted); font-size:13px; font-weight:600; }
.hc2-price-stack { display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:9px 12px; text-align:right; }
.hc2-old-price { color:var(--hc2-muted); font-size:18px; font-weight:700; text-decoration:line-through; text-decoration-thickness:2px; }
.hc2-price { color:var(--hc2-orange); font-size:clamp(30px,3vw,38px); line-height:1; font-weight:900; white-space:nowrap; letter-spacing:-.025em; }
.hc2-discount-badge { padding:5px 8px; border-radius:3px; background:var(--hc2-orange); color:#fff; font-size:12px; font-weight:900; }
.hc2-price-stack small { flex-basis:100%; color:var(--hc2-muted); font-size:12px; font-weight:700; }

.hc2-form { margin-top:24px; padding:34px; border:1px solid var(--hc2-line); border-radius:5px; background:var(--hc2-surface); color:var(--hc2-text); box-shadow:0 18px 44px var(--hc2-shadow); }
.hc2-form-head { display:grid; grid-template-columns:1fr auto; gap:22px; align-items:start; margin-bottom:27px; }
.hc2-form h3 { margin:0; color:var(--hc2-heading); font-size:clamp(28px,3vw,38px); line-height:1.05; font-weight:900; }
.hc2-form-summary { max-width:520px; color:var(--hc2-muted); font-size:14px; text-align:right; font-weight:600; }
.hc2-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:15px; }
.hc2-form-field[data-width="100"] { grid-column:1/-1; }
.hc2-form-field label { display:block; margin-bottom:8px; color:var(--hc2-muted); font-size:13px; font-weight:800; }
.hc2-input,.hc2-textarea { width:100%; padding:13px 15px; border:1px solid var(--hc2-line-strong); border-radius:4px; outline:none; background:var(--hc2-field) !important; color:var(--hc2-input-text) !important; caret-color:var(--hc2-input-text) !important; -webkit-text-fill-color:var(--hc2-input-text) !important; font:inherit; font-size:16px; }
.hc2-input { height:52px; }.hc2-textarea { min-height:125px; resize:vertical; }
.hc2-input:focus,.hc2-textarea:focus { border-color:var(--hc2-orange); box-shadow:0 0 0 3px rgba(255,122,0,.12); }
.hc2-privacy { display:flex !important; gap:10px; align-items:flex-start; color:var(--hc2-muted) !important; font-weight:500 !important; text-transform:none !important; letter-spacing:0 !important; }
.hc2-privacy a { color:var(--hc2-orange); }.hc2-privacy input { margin-top:3px; }
.hc2-submit { appearance:none; min-width:220px; min-height:52px; padding:13px 24px; border:0; border-radius:4px; background:var(--hc2-orange); color:#fff; cursor:pointer; font:inherit; font-size:15px; font-weight:900; box-shadow:0 9px 24px rgba(255,122,0,.18); transition:filter .15s ease, transform .15s ease; }
.hc2-submit:hover,.hc2-submit:focus-visible { background:var(--hc2-orange) !important; color:#fff !important; filter:none !important; transform:translateY(-1px); outline:none; }.hc2-submit:disabled { opacity:.55; cursor:wait; transform:none; }
.hc2-message { margin-top:12px; font-size:14px; font-weight:700; }.hc2-message.is-success { color:#7bd18e; }.hc2-message.is-error { color:#ff8d8d; }
.hc2-honeypot { position:absolute !important; left:-99999px !important; width:1px !important; height:1px !important; opacity:0 !important; }

.hc2-boot,.hc2-status,.hc2-fatal { min-height:430px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:9px; text-align:center; color:var(--hc2-text); }
.hc2-boot strong,.hc2-status strong { color:var(--hc2-heading); font-size:18px; }.hc2-boot span,.hc2-status span { color:var(--hc2-muted); font-size:14px; }
.hc2-spinner { width:36px; height:36px; margin-bottom:9px; border:3px solid var(--hc2-line); border-top-color:var(--hc2-orange); border-radius:50%; animation:hc2-spin .7s linear infinite; }
@keyframes hc2-spin { to { transform:rotate(360deg); } }
.hc2-fatal { min-height:240px; }.hc2-fatal-box { width:min(760px,100%); padding:24px; border:1px solid #8b3b3b; background:#2a1515; color:#ffb5b5; text-align:left; }.hc2-fatal-box strong { display:block; margin-bottom:7px; color:#ffc8c8; }
.hc2-empty { grid-column:1/-1; padding:31px; border:1px dashed var(--hc2-line-strong); color:var(--hc2-muted); text-align:center; font-size:15px; }

@media (max-width:1180px) {
    .hc2-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
    .hc2-option-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:850px) {
    .hc2-container,.hc2-hero-inner,.hc2-boot,.hc2-status,.hc2-fatal { width:min(100% - 32px,1360px); }
    .hc2-hero-inner { padding:40px 0 28px; }
    .hc2-progress { grid-template-columns:repeat(2,1fr); }.hc2-progress-step:nth-child(2){border-right:0}.hc2-progress-step:nth-child(-n+2){border-bottom:1px solid var(--hc2-line)}
    .hc2-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .hc2-selector-grid { grid-template-columns:1fr; }
    .hc2-result-top { grid-template-columns:210px minmax(0,1fr); }
    .hc2-performance { grid-template-columns:1fr; }.hc2-performance-card { border-right:0; border-bottom:1px solid var(--hc2-line); min-height:auto; }.hc2-performance-card:last-child{border-bottom:0}
    .hc2-form-head { grid-template-columns:1fr; }.hc2-form-summary { text-align:left; }
}
@media (max-width:640px) {
    .hc2-main { padding-top:28px; }.hc2-hero-top { align-items:flex-start; }.hc2-theme-label { display:none; }.hc2-theme-switch { padding-left:9px; gap:7px; }
    .hc2-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }.hc2-card { min-height:145px; padding:14px 8px 12px; }.hc2-brand-card { min-height:166px; }.hc2-card-media { height:78px; }.hc2-brand-card .hc2-card-media { height:98px; }.hc2-brand-card .hc2-card-media img { max-width:156px; max-height:98px; }
    .hc2-section-head { align-items:flex-start; flex-direction:column; gap:7px; }.hc2-toolbar { align-items:stretch; flex-direction:column; }.hc2-search { width:100%; max-width:none; }.hc2-global-search-wrap { margin-top:15px; }.hc2-global-search-panel { max-height:360px; }
    .hc2-selector-box { padding:20px; }.hc2-result-top { grid-template-columns:1fr; padding:22px; }.hc2-vehicle-image { height:190px; }
    .hc2-tabs { padding:0 22px 20px; }.hc2-stage-description { margin:0 22px 22px; }.hc2-performance-card { padding:23px 22px; }.hc2-metrics { gap:16px; }
    .hc2-options { padding:23px 22px; }.hc2-options-head { align-items:flex-start; flex-direction:column; gap:5px; }.hc2-option-list { grid-template-columns:1fr; }
    .hc2-promo { margin:20px 22px 0; align-items:flex-start; flex-direction:column; }.hc2-price-row { align-items:flex-start; flex-direction:column; padding:22px; }.hc2-price-stack { justify-content:flex-start; text-align:left; }
    .hc2-form { padding:24px 20px; }.hc2-form-grid { grid-template-columns:1fr; }.hc2-form-field { grid-column:1/-1; }.hc2-submit { width:100%; }
}


/* === HORSTI 2.1.13: Theme-sichere Formularfelder + farbneutrale Hover-Effekte === */
/* Kontaktformular: Text muss unabhängig von WordPress-/Elementor-Styles immer lesbar sein. */
.hc2-app[data-theme="dark"] .hc2-form .hc2-input,
.hc2-app[data-theme="dark"] .hc2-form .hc2-textarea {
    background:#111419 !important;
    color:#ffffff !important;
    caret-color:#ffffff !important;
    -webkit-text-fill-color:#ffffff !important;
}
.hc2-app[data-theme="light"] .hc2-form .hc2-input,
.hc2-app[data-theme="light"] .hc2-form .hc2-textarea {
    background:#ffffff !important;
    color:#000000 !important;
    caret-color:#000000 !important;
    -webkit-text-fill-color:#000000 !important;
}
.hc2-app[data-theme="dark"] .hc2-form .hc2-input::placeholder,
.hc2-app[data-theme="dark"] .hc2-form .hc2-textarea::placeholder { color:#8f969f !important; opacity:1; }
.hc2-app[data-theme="light"] .hc2-form .hc2-input::placeholder,
.hc2-app[data-theme="light"] .hc2-form .hc2-textarea::placeholder { color:#6b717a !important; opacity:1; }
/* Chrome-/Edge-Autofill darf Text/Hintergrund nicht wieder überschreiben. */
.hc2-app[data-theme="dark"] .hc2-form .hc2-input:-webkit-autofill,
.hc2-app[data-theme="dark"] .hc2-form .hc2-input:-webkit-autofill:hover,
.hc2-app[data-theme="dark"] .hc2-form .hc2-input:-webkit-autofill:focus,
.hc2-app[data-theme="dark"] .hc2-form .hc2-textarea:-webkit-autofill,
.hc2-app[data-theme="dark"] .hc2-form .hc2-textarea:-webkit-autofill:hover,
.hc2-app[data-theme="dark"] .hc2-form .hc2-textarea:-webkit-autofill:focus {
    -webkit-text-fill-color:#ffffff !important;
    caret-color:#ffffff !important;
    -webkit-box-shadow:0 0 0 1000px #111419 inset !important;
    box-shadow:0 0 0 1000px #111419 inset !important;
}
.hc2-app[data-theme="light"] .hc2-form .hc2-input:-webkit-autofill,
.hc2-app[data-theme="light"] .hc2-form .hc2-input:-webkit-autofill:hover,
.hc2-app[data-theme="light"] .hc2-form .hc2-input:-webkit-autofill:focus,
.hc2-app[data-theme="light"] .hc2-form .hc2-textarea:-webkit-autofill,
.hc2-app[data-theme="light"] .hc2-form .hc2-textarea:-webkit-autofill:hover,
.hc2-app[data-theme="light"] .hc2-form .hc2-textarea:-webkit-autofill:focus {
    -webkit-text-fill-color:#000000 !important;
    caret-color:#000000 !important;
    -webkit-box-shadow:0 0 0 1000px #ffffff inset !important;
    box-shadow:0 0 0 1000px #ffffff inset !important;
}

/* Stage 1 / Stage 2 / weitere Stufen: KEIN Farb-Hover. Nur leicht nach oben. */
.hc2-app .hc2-tab {
    transition:transform .16s ease !important;
}
.hc2-app .hc2-tab:not(.is-active):hover,
.hc2-app .hc2-tab:not(.is-active):focus-visible {
    background:var(--hc2-surface-2) !important;
    color:var(--hc2-text) !important;
    border-color:var(--hc2-line-strong) !important;
    box-shadow:none !important;
    filter:none !important;
    transform:translateY(var(--hc2-nav-hover-y, -2px));
    outline:none;
}
.hc2-app .hc2-tab:not(.is-active):hover span,
.hc2-app .hc2-tab:not(.is-active):focus-visible span {
    color:var(--hc2-muted) !important;
}
.hc2-app .hc2-tab.is-active:hover,
.hc2-app .hc2-tab.is-active:focus-visible {
    background:var(--hc2-orange) !important;
    color:#ffffff !important;
    border-color:var(--hc2-orange) !important;
    box-shadow:0 7px 18px rgba(255,122,0,.18) !important;
    filter:none !important;
    transform:translateY(var(--hc2-nav-hover-y, -2px));
    outline:none;
}
.hc2-app .hc2-tab.is-active:hover span,
.hc2-app .hc2-tab.is-active:focus-visible span { color:rgba(255,255,255,.8) !important; }

/* Zusatzoptionen: Hover verändert keine Farbe mehr; Auswahlfarbe bleibt nur als Zustand bestehen. */
.hc2-app .hc2-option-choice:not(.is-selected):hover,
.hc2-app .hc2-option-choice:not(.is-selected):focus-within {
    background:var(--hc2-surface-2) !important;
    border-color:var(--hc2-line) !important;
    color:var(--hc2-text) !important;
    transform:translateY(-1px);
}
.hc2-app .hc2-option-choice.is-selected:hover,
.hc2-app .hc2-option-choice.is-selected:focus-within {
    background:var(--hc2-soft-orange) !important;
    border-color:var(--hc2-orange) !important;
    transform:translateY(-1px);
}

/* Formular-/Link-Hover gegen globale Theme-Farben absichern. */
.hc2-app .hc2-submit:hover,
.hc2-app .hc2-submit:focus-visible {
    background:var(--hc2-orange) !important;
    color:#ffffff !important;
    border-color:transparent !important;
    box-shadow:0 9px 24px rgba(255,122,0,.18) !important;
    filter:none !important;
    transform:translateY(-1px);
}
.hc2-app .hc2-privacy a:hover,
.hc2-app .hc2-privacy a:focus-visible {
    color:var(--hc2-orange) !important;
    background:transparent !important;
    filter:none !important;
}

/* Suchtreffer und eigene Dropdown-Menüs bleiben absichtlich die einzigen farbigen Hover-Ausnahmen. */


/* ===== HORSTI Complete v3: Fahrzeugbereiche ===== */
.hc2-category-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.hc2-category-card {
    min-height:205px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:7px;
    padding:24px 14px 20px;
}
.hc2-category-icon {
    width:92px;
    height:66px;
    display:grid;
    place-items:center;
    margin-bottom:4px;
    color:var(--hc2-orange);
    transition:transform .18s ease;
}
.hc2-category-icon svg { width:86px; height:58px; fill:currentColor; }
.hc2-category-card:hover .hc2-category-icon,
.hc2-category-card:focus-visible .hc2-category-icon {
    transform:translateY(var(--hc2-card-hover-y, -5px));
}
.hc2-category-subtitle {
    color:var(--hc2-muted);
    font-size:13px;
    font-weight:600;
    line-height:1.25;
    text-align:center;
}
.hc2-category-count {
    margin-top:4px;
    color:var(--hc2-muted-2);
    font-size:12px;
    font-weight:800;
    letter-spacing:.02em;
}

/* ===== HORSTI Complete v3: ECU / Steuergeräte ===== */
.hc2-ecu {
    padding:24px 32px 26px;
    border-bottom:1px solid var(--hc2-line);
    background:var(--hc2-surface);
}
.hc2-ecu-head {
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:20px;
    margin-bottom:14px;
}
.hc2-ecu-list {
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}
.hc2-ecu-chip {
    display:inline-flex;
    align-items:center;
    min-height:34px;
    padding:7px 11px;
    border:1px solid var(--hc2-line);
    border-radius:4px;
    background:var(--hc2-surface-2);
    color:var(--hc2-text);
    font-size:13px;
    font-weight:800;
    line-height:1.2;
}
@media (max-width:767px) {
    .hc2-category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .hc2-category-card { min-height:170px; padding:18px 10px 16px; }
    .hc2-category-icon { width:74px; height:54px; }
    .hc2-category-icon svg { width:70px; height:48px; }
    .hc2-ecu { padding:21px 22px 23px; }
    .hc2-ecu-head { align-items:flex-start; flex-direction:column; gap:4px; }
}

/* HSN / TSN Suche – bewusst direkt unter der normalen Fahrzeugsuche. */
.hc2-global-search-primary { position:relative; z-index:3000; overflow:visible !important; width:100%; }
.hc2-hsn-search-wrap { position:relative; z-index:2000; overflow:visible !important; width:min(500px,100%); margin-top:12px; }
.hc2-hsn-search-label { display:block; margin:0 0 8px; color:var(--hc2-text); opacity:.88; font-size:11px; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.hc2-hsn-search-inner { position:relative; width:100%; }
.hc2-hsn-search-input { height:46px; padding-left:54px; font-size:15px; appearance:none; -webkit-appearance:none; background-repeat:no-repeat; background-position:18px center; background-size:16px 16px; }
.hc2-hsn-search-box .hc2-global-search-icon { display:none !important; }
.hc2-hsn-search-panel { z-index:2100; top:calc(100% + 6px); max-height:360px; }
.hc2-hsn-search-note { margin-top:7px; color:var(--hc2-muted); font-size:10px; line-height:1.4; }
@media (max-width:767px) {
    .hc2-hsn-search-wrap { width:100%; margin-top:10px; }
    .hc2-hsn-search-note { font-size:9.5px; }
}


/* HSN/TSN v4.2.1 – kompakte Suche + Fahrzeugschein-Erkennung */
.hc2-hsn-search-wrap { width:min(500px,100%); margin-top:12px; }
.hc2-hsn-search-input { height:46px !important; }
.hc2-hsn-upload-row { display:flex; align-items:center; gap:10px; flex-wrap:wrap; width:100%; margin-top:10px; }
.hc2-hsn-upload-btn { appearance:none; width:100%; min-height:46px; padding:10px 16px; display:inline-flex; align-items:center; justify-content:center; gap:10px; border:1px solid var(--hc2-line-strong); border-radius:5px; background:transparent; color:var(--hc2-text); font:inherit; font-size:12.5px; font-weight:780; line-height:1.25; text-align:center; cursor:pointer; transition:border-color .16s ease,transform .16s ease,background-color .16s ease,box-shadow .16s ease; }
.hc2-hsn-upload-btn:disabled { opacity:.6; cursor:wait; transform:none; }
.hc2-hsn-upload-icon { flex:0 0 auto; width:19px; height:19px; display:inline-grid; place-items:center; color:var(--hc2-muted); transition:color .16s ease,transform .16s ease; }
.hc2-hsn-upload-icon svg { display:block; width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.9; stroke-linecap:round; stroke-linejoin:round; }
.hc2-hsn-ocr-status { color:var(--hc2-muted); font-size:10px; line-height:1.35; }
.hc2-hsn-ocr-status.is-error { color:#d96b6b; }
@media (max-width:600px){.hc2-hsn-upload-row{align-items:flex-start;flex-direction:column;gap:6px}.hc2-hsn-upload-btn{width:100%;min-height:48px;padding:10px 12px;font-size:12px}.hc2-hsn-upload-icon,.hc2-hsn-upload-icon svg{width:18px;height:18px}}


/* v4.3.5 Suchoverlay: normale Suchtreffer müssen HSN/TSN und Upload vollständig überdecken. */
.hc2-global-search-wrap { isolation:isolate; }
.hc2-global-search-primary { z-index:3000 !important; }
.hc2-global-search-primary > .hc2-global-search-panel { z-index:3100 !important; }
.hc2-hsn-search-wrap { z-index:2000 !important; }
.hc2-hsn-search-panel { z-index:2100 !important; }

/* v4.3.20 – Breite der HSN/TSN-Suche aus der Standalone-Referenz.
 * Das Trefferpanel wächst nach rechts; Eingabe und Upload bleiben gleich breit.
 * Direkt auf die HORSTI-App begrenzt, damit auch Shortcode-/Elementor-Seiten
 * ohne die Body-Klasse der automatisch angelegten Seite profitieren.
 * Upload-Button, Icon, Hover, Fokus und Animation bleiben unverändert.
 */
@media (min-width: 768px) {
    #horsti-cars-app.hc2-app .hc2-hsn-search-wrap {
        width: min(620px, 100%) !important;
        max-width: 620px !important;
    }
    #horsti-cars-app.hc2-app .hc2-hsn-search-panel {
        left: 0 !important;
        right: auto !important;
        width: min(980px, calc(100vw - 72px)) !important;
        max-width: none !important;
        box-sizing: border-box !important;
    }
}
@media (max-width: 767px) {
    #horsti-cars-app.hc2-app .hc2-hsn-search-wrap,
    #horsti-cars-app.hc2-app .hc2-hsn-search-panel {
        width: 100% !important;
        max-width: 100% !important;
        left: 0 !important;
        right: 0 !important;
        box-sizing: border-box !important;
    }
}

/* v4.3.22 – Fahrzeugschein-Upload: dezenter blauer Rahmen + 2 px Anheben.
 * Nur der Upload-Button wird angepasst; Suchfelder, Treffer und Breiten bleiben
 * unverändert. Theme-Hintergründe, Leuchteffekte und Pseudoelemente verhindern.
 */
#horsti-cars-app.hc2-app .hc2-hsn-upload-btn {
    --hc2-upload-hover-border: rgba(111, 170, 209, .72);
    --hc2-upload-hover-y: -2px;
    background: transparent !important;
    color: var(--hc2-text) !important;
    border-color: var(--hc2-line-strong) !important;
    box-shadow: none !important;
    outline: none !important;
    filter: none !important;
    animation: none !important;
    text-decoration: none !important;
    transform: none !important;
    transition: border-color .18s ease, transform .18s ease !important;
}
#horsti-cars-app.hc2-app .hc2-hsn-upload-btn::before,
#horsti-cars-app.hc2-app .hc2-hsn-upload-btn::after {
    content: none !important;
    display: none !important;
}
#horsti-cars-app.hc2-app .hc2-hsn-upload-btn .hc2-hsn-upload-icon {
    color: var(--hc2-muted) !important;
    transform: none !important;
}
/* Echter Maus-Hover: kein festhängender Hover nach Touch-Bedienung. */
@media (hover: hover) and (pointer: fine) {
    #horsti-cars-app.hc2-app .hc2-hsn-upload-btn:not(:disabled):hover {
        border-color: var(--hc2-upload-hover-border) !important;
        transform: translateY(var(--hc2-upload-hover-y)) !important;
    }
}
/* Tastaturbedienung erhält eine sichtbare, bläuliche Fokusmarkierung. */
#horsti-cars-app.hc2-app .hc2-hsn-upload-btn:not(:disabled):focus-visible {
    border-color: var(--hc2-upload-hover-border) !important;
    outline: 2px solid #6faad1 !important;
    outline-offset: 3px;
}
/* Systemeinstellung für reduzierte Bewegung respektieren. */
@media (prefers-reduced-motion: reduce) {
    #horsti-cars-app.hc2-app .hc2-hsn-upload-btn {
        --hc2-upload-hover-y: 0px;
        transition: none !important;
    }
}


/* v4.3.33: photo review stays inside the existing HSN search; no site-wide rules. */
.hc2-app .hc2-registration-review {width:100%;max-width:100%;min-width:0;margin:14px 0 0;padding:16px;border:1px solid var(--hc2-line-strong);border-radius:12px;background:var(--hc2-bg);color:var(--hc2-text);text-align:left;}
.hc2-app .hc2-registration-head {display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.hc2-app .hc2-registration-review p {font:inherit;font-size:14px;line-height:1.5;margin:10px 0;color:var(--hc2-muted);overflow-wrap:anywhere;hyphens:none;}
.hc2-app .hc2-registration-status.is-error {color:var(--hc2-text);border-left:3px solid var(--hc2-orange);padding-left:9px;}
.hc2-app .hc2-registration-fields {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;margin:12px 0;}
.hc2-app .hc2-registration-fields label {display:block;min-width:0;font-size:14px;color:var(--hc2-text);}
.hc2-app .hc2-registration-fields input {display:block;box-sizing:border-box;width:100%;max-width:100%;min-width:0;height:46px;margin-top:5px;padding:10px 12px;background:var(--hc2-field);color:var(--hc2-input-text);-webkit-text-fill-color:var(--hc2-input-text);border:1px solid var(--hc2-line-strong);border-radius:7px;font-family:inherit;font-size:18px;font-weight:700;line-height:1.2;letter-spacing:.08em;}
.hc2-app .hc2-registration-fields input:focus {outline:2px solid var(--hc2-orange);outline-offset:1px;}
.hc2-app .hc2-registration-actions,.hc2-app .hc2-registration-candidates {display:flex;gap:8px;flex-wrap:wrap;margin:10px 0;}
.hc2-app .hc2-registration-review button,.hc2-app .hc2-registration-review button:hover,.hc2-app .hc2-registration-review button:active,.hc2-app .hc2-registration-review button:focus {appearance:none;background:var(--hc2-bg)!important;background-image:none!important;color:var(--hc2-text)!important;-webkit-text-fill-color:var(--hc2-text)!important;border:1px solid var(--hc2-line-strong)!important;border-radius:7px;padding:10px 12px;min-height:42px;max-width:100%;font:inherit;font-size:14px;line-height:1.35;white-space:normal;cursor:pointer;box-shadow:none!important;transform:none;}
.hc2-app .hc2-registration-review button:hover {transform:translateY(-1px);}
.hc2-app .hc2-registration-review button:focus-visible {outline:2px solid var(--hc2-orange);outline-offset:2px;}
.hc2-app .hc2-registration-review button[data-ocr="apply"] {border-color:var(--hc2-orange)!important;}
.hc2-app .hc2-registration-review button:disabled {opacity:.55;cursor:wait;transform:none;}
.hc2-app .hc2-registration-review [hidden] {display:none!important;}
.hc2-app .hc2-registration-crop {margin-top:12px;border-top:1px solid var(--hc2-line);padding-top:12px;}
.hc2-app .hc2-registration-crop summary {cursor:pointer;font-size:14px;font-weight:700;color:var(--hc2-text);}
.hc2-app .hc2-registration-preview {display:block;width:auto;height:auto;max-width:100%;max-height:460px;margin:10px auto;border-radius:4px;touch-action:none;user-select:none;-webkit-user-select:none;}
.hc2-app .hc2-registration-ranges {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px 14px;margin:10px 0;}
.hc2-app .hc2-registration-ranges label {font-size:12px;min-width:0;color:var(--hc2-muted);}
.hc2-app .hc2-registration-ranges input {display:block;width:100%;min-width:0;margin:4px 0;accent-color:var(--hc2-orange);touch-action:pan-y;}
.hc2-app .hc2-registration-review .hc2-registration-privacy {font-size:12px;margin-bottom:0;}
@media(max-width:480px){.hc2-app .hc2-registration-review{padding:12px;}.hc2-app .hc2-registration-preview{max-height:390px;}}


/* HORSTI 4.3.37: 35 new local manufacturer logos. */
/* Keep the configurator heading inside narrow screens. */
#horsti-cars-app.hc2-app .hc2-title,
#horsti-cars-app.hc2-app .hc2-subtitle {
    -webkit-hyphens: none !important;
    hyphens: none !important;
    word-break: normal !important;
    overflow-wrap: break-word;
}
@media (max-width: 767px) {
    #horsti-cars-app.hc2-app .hc2-title {
        font-size: clamp(18px, 5.8vw, 36px) !important;
        line-height: 1.08 !important;
        letter-spacing: -.025em !important;
    }
    #horsti-cars-app.hc2-app .hc2-hero-top {
        align-items: center;
        flex-wrap: wrap;
        gap: 12px;
    }
    #horsti-cars-app.hc2-app .hc2-eyebrow {
        font-size: clamp(10px, 2.8vw, 13px);
        letter-spacing: .1em;
        gap: 8px;
    }
    #horsti-cars-app.hc2-app .hc2-eyebrow::before { width: 24px; }
    #horsti-cars-app.hc2-app .hc2-theme-switch { flex: 0 0 auto; }
}
@media (max-width: 360px) {
    #horsti-cars-app.hc2-app .hc2-progress { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    #horsti-cars-app.hc2-app .hc2-progress-step { min-width: 0; padding: 14px 8px; gap: 6px; font-size: 12px; }
    #horsti-cars-app.hc2-app .hc2-progress-step span { position: static; flex: 0 0 26px; }
}
/* Local vector logos: browser antialiasing, natural proportions and theme contrast. */
#horsti-cars-app.hc2-app .hc2-brand-card .hc2-card-media img.hc-logo-hd {
    display: block;
    width: auto;
    height: auto;
    max-width: min(208px, 100%) !important;
    max-height: 128px !important;
    object-fit: contain;
    object-position: center;
    image-rendering: auto !important;
    transform: none;
    backface-visibility: visible;
    will-change: auto;
    opacity: 1;
    filter: none !important;
}
/* HORSTI 4.3.38: silver only in dark mode, for local and remote brand artwork. */
#horsti-cars-app.hc2-app[data-theme="dark"] .hc2-brand-card .hc2-card-media img[data-horsti-logo-tone="mono"] {
    filter: brightness(0) invert(.84) !important;
}
/* Keep relief and interior details in shaded emblems while lifting their dark lettering. */
#horsti-cars-app.hc2-app[data-theme="dark"] .hc2-brand-card .hc2-card-media img[data-horsti-logo-tone="silver-shaded"] {
    filter: grayscale(1) contrast(.3) brightness(1.9) !important;
}
#horsti-cars-app.hc2-app[data-theme="light"] .hc2-brand-card .hc2-card-media img {
    filter: none !important;
}
@media (max-width: 480px) {
    #horsti-cars-app.hc2-app .hc2-brand-card .hc2-card-media img.hc-logo-hd {
        max-height: 112px !important;
    }
}

/* Five integrated selection steps; balanced mobile layout with a full-width result step. */
/* Agricultural logos use the same transparent presentation as other divisions. */
#horsti-cars-app.hc2-app .hc2-brand-card[data-brand-slug^="agrar-"] .hc2-card-media {
    width: min(232px, 100%);
    height: 132px;
    margin-inline: auto;
    padding: 14px;
    box-sizing: border-box;
    background: transparent !important;
    border-radius: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}
#horsti-cars-app.hc2-app .hc2-brand-card[data-brand-slug^="agrar-"] .hc2-card-media img.hc-logo-hd {
    max-width: 100% !important;
    max-height: 100% !important;
}

@media (max-width: 680px) {
    #horsti-cars-app.hc2-app .hc2-progress-step { border-bottom:1px solid var(--hc2-line); }
    #horsti-cars-app.hc2-app .hc2-progress-step:nth-child(even) { border-right:0; }
    #horsti-cars-app.hc2-app .hc2-progress-step:last-child { grid-column:1 / -1; border-bottom:0; }
}

/* Registration suggestions stay visible inside the review, also on phones. */
.hc2-registration-model-search { display:flex; gap:10px; align-items:flex-end; flex-wrap:wrap; margin:16px 0; }
.hc2-registration-model-search label { flex:1 1 220px; display:grid; gap:6px; }
.hc2-registration-model-search input { width:100%; min-width:0; padding:12px; box-sizing:border-box; color:var(--hc2-text); background:var(--hc2-surface); border:1px solid var(--hc2-line); }
.hc2-registration-candidates .hc2-global-hit { display:flex; flex-direction:column; align-items:flex-start; width:100%; white-space:normal; text-align:left; margin:6px 0; }
.hc2-registration-model-search button { padding:12px 16px; border:1px solid var(--hc2-orange); background:var(--hc2-orange); color:#fff; cursor:pointer; }

/* Customer requirement: solid black / white, including theme overrides. */
#horsti-cars-app.hc2-app[data-theme="dark"] { --hc2-bg:#000000;--hc2-bg-2:#000000;--hc2-surface:#000000;--hc2-surface-2:#000000;--hc2-surface-3:#000000;background:#000000!important; }
#horsti-cars-app.hc2-app[data-theme="light"] { --hc2-bg:#ffffff;--hc2-bg-2:#ffffff;--hc2-surface:#ffffff;--hc2-surface-2:#ffffff;--hc2-surface-3:#ffffff;background:#ffffff!important; }
#horsti-cars-app.hc2-app .hc2-hero,#horsti-cars-app.hc2-app .hc2-main,#horsti-cars-app.hc2-app .hc2-performance-card.is-tuned { background:var(--hc2-bg)!important;background-image:none!important; }




/* HORSTI 4.4.17: responsive hardening for BR-Performance vehicle labels.
   Prevent long imported labels or theme button defaults from widening the
   three-step vehicle selector beyond the viewport on phones. */
#horsti-cars-app.hc2-app .hc2-selector-box,
#horsti-cars-app.hc2-app .hc2-selector-grid,
#horsti-cars-app.hc2-app .hc2-selector-grid > .hc2-field,
#horsti-cars-app.hc2-app .hc2-dropdown {
    min-width: 0;
    max-width: 100%;
}
#horsti-cars-app.hc2-app .hc2-selector-box,
#horsti-cars-app.hc2-app .hc2-selector-grid {
    width: 100%;
}
#horsti-cars-app.hc2-app .hc2-dropdown-toggle {
    display: block;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}
#horsti-cars-app.hc2-app .hc2-dropdown-menu {
    min-width: 0;
    max-width: 100%;
    overflow-x: hidden;
}
#horsti-cars-app.hc2-app .hc2-dropdown-option {
    min-width: 0;
    max-width: 100%;
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: normal;
}
@media (max-width: 767px) {
    #horsti-cars-app.hc2-app .hc2-selector-box {
        width: 100%;
        max-width: 100%;
        padding: 20px;
        overflow: visible;
    }
    #horsti-cars-app.hc2-app .hc2-selector-grid {
        grid-template-columns: minmax(0, 1fr);
    }
    #horsti-cars-app.hc2-app .hc2-selector-grid > .hc2-field {
        width: 100%;
        min-width: 0;
        max-width: 100%;
    }
}

/* Gettuned 3.4.0 customer presentation is retained in the current renderer. */
.hc2-app .hc2-customer-logo{width:min(var(--hc2-customer-logo-width,220px),100%);max-width:100%;margin:12px auto;position:relative;z-index:1}
.hc2-app .hc2-customer-logo img{display:block;width:100%;height:auto;max-width:100%;object-fit:contain;filter:none;box-shadow:none;border:0;background:transparent}
.hc2-app .hc2-customer-logo--hero-left{margin-left:0}
.hc2-app .hc2-customer-logo--hero-right{margin-right:0}
.hc2-app .hc2-customer-logo--overlay-left,.hc2-app .hc2-customer-logo--overlay-right{position:absolute;top:12px;opacity:.14;pointer-events:none;z-index:0}
.hc2-app .hc2-customer-logo--overlay-left{left:0}.hc2-app .hc2-customer-logo--overlay-right{right:0}
.hc2-app .hc2-title,.hc2-app h2,.hc2-app h3{font-family:var(--hc2-customer-heading-font,inherit)}
.hc2-app .hc2-metric-number{font-family:var(--hc2-customer-numbers-font,inherit)}
.hc2-app .hc2-hero{background:var(--hc2-hero-bg,var(--hc2-bg))}
.hc2-app .hc2-contact-form{background:var(--hc2-form-bg,var(--hc2-surface));color:var(--hc2-form-text,var(--hc2-text))}
.hc2-app .hc2-card{border-radius:var(--hc2-customer-radius,8px)}

/* The four shortcuts share exactly the first progress column's width. */
#horsti-cars-app .hc2-progress-wrap { margin-top:32px; }
#horsti-cars-app .hc2-progress-wrap > .hc2-progress { margin-top:0; }
#horsti-cars-app .hc2-category-shortcuts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); width:calc((100% - 2px)/5); margin-left:1px; box-sizing:border-box; border:1px solid var(--hc2-line); border-bottom:0; background:var(--hc2-surface); }
@media (max-width:850px) { #horsti-cars-app .hc2-category-shortcuts { width:calc((100% - 2px)/2); } }
#horsti-cars-app .hc2-category-shortcut { appearance:none; display:flex; align-items:center; justify-content:center; min-width:0; min-height:44px; padding:6px 3px; margin:0; border:0; border-right:1px solid var(--hc2-line); border-radius:0; background:transparent; color:var(--hc2-muted-2); cursor:pointer; box-shadow:none; }
#horsti-cars-app .hc2-category-shortcut:last-child { border-right:0; }
#horsti-cars-app .hc2-category-shortcut .hc2-category-icon { display:flex; align-items:center; justify-content:center; width:100%; height:30px; margin:0; color:inherit; }
#horsti-cars-app .hc2-category-shortcut svg { width:38px; max-width:100%; height:28px; fill:currentColor; overflow:visible; }
#horsti-cars-app .hc2-category-shortcut * { pointer-events:none; }
#horsti-cars-app .hc2-category-shortcut:hover,
#horsti-cars-app .hc2-category-shortcut[aria-pressed="true"] { color:var(--hc2-orange); background:var(--hc2-surface-3); }
#horsti-cars-app .hc2-category-shortcut:focus-visible { outline:2px solid var(--hc2-orange); outline-offset:-3px; color:var(--hc2-orange); }

/* MAN TGE: keep the approved smaller card image on customer sites. */
#horsti-cars-app .hc2-card[data-action="model"][data-id="1720"][data-category="pkw"] .hc2-model-img{width:78%!important;height:auto!important;max-width:78%!important;max-height:98px!important;object-fit:contain!important;margin-inline:auto!important}

/* v4.5.10.15: schematic, accessible OEM/Stage 1 comparison */
.hc2-dyno{margin:24px 0;padding:24px;border:1px solid #303b4a;border-radius:18px;background:linear-gradient(135deg,#10151d,#080b10);color:#edf2f9;overflow:hidden;min-width:0}
.hc2-dyno-head{display:flex;align-items:center;justify-content:space-between;gap:16px}
.hc2-dyno .hc2-dyno-kicker{color:#aab6c7;font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:700}
.hc2-dyno h3{color:#f3f6fb;margin:6px 0 0;font-size:23px;line-height:1.2}
.hc2-dyno-badge{border:1px solid #485264;border-radius:30px;padding:7px 11px;font-size:11px;color:#c8d2e0;white-space:nowrap}
.hc2-dyno .hc2-dyno-note{color:#b0bbcb;font-size:12px;line-height:1.65;margin:14px 0 18px;max-width:920px}
.hc2-dyno-plot{width:100%;min-width:0}
.hc2-dyno-plot svg{display:block;width:100%;height:auto;touch-action:pan-y;overflow:visible}
.hc2-dyno-grid line{stroke:#526074;stroke-opacity:.35;stroke-dasharray:3 5;vector-effect:non-scaling-stroke}
.hc2-dyno-grid text{fill:#b7c2d1;font-size:12px;font-family:inherit}
.hc2-dyno-series.power{color:#f76a55}.hc2-dyno-series.torque{color:#65aaff}
.hc2-dyno-line{fill:none;stroke:currentColor;stroke-width:2.8;vector-effect:non-scaling-stroke;stroke-linejoin:round}
.hc2-dyno-series.oem .hc2-dyno-line{stroke-dasharray:3 6;stroke-width:2.3;opacity:.7}
.hc2-dyno-area{fill:currentColor;fill-opacity:.04;stroke:none}
.hc2-dyno-marker{fill:currentColor;stroke:#111923;stroke-width:1}
.hc2-dyno-series.oem .hc2-dyno-marker{fill:#111923;stroke:currentColor;stroke-width:1.7;opacity:.8}
.hc2-dyno-dot{fill:currentColor;stroke:#f6f7fb;stroke-width:1.5}
.hc2-dyno-cursor{stroke:#e2e8f2;stroke-opacity:.6;stroke-dasharray:4 4;pointer-events:none;vector-effect:non-scaling-stroke}
.hc2-dyno-legend{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:14px 0 20px}
.hc2-dyno .hc2-dyno-toggle{display:flex;align-items:flex-start;text-align:left;gap:9px;border:1px solid #334053;background:#141c27;padding:12px 10px;border-radius:10px;color:#d4dcea;font:inherit;font-size:11px;line-height:1.4;cursor:pointer;min-width:0;transition:opacity .15s,border-color .15s}
.hc2-dyno .hc2-dyno-toggle:hover{background:#1a2635;border-color:#7a8aa2;transform:none}
.hc2-dyno .hc2-dyno-toggle:focus-visible,.hc2-dyno-range:focus-visible{outline:2px solid #fff;outline-offset:3px}
.hc2-dyno .hc2-dyno-toggle[aria-pressed=false]{opacity:.45}
.hc2-dyno-toggle strong{display:block;color:#f1f5fc;font-size:17px;font-weight:750;margin-top:4px}
.hc2-dyno-toggle small{display:block;color:#94a3b8;font-size:10px;font-weight:400;margin-top:1px}
.hc2-dyno-swatch{flex:0 0 18px;width:18px;height:0;border-top:3px solid #f76a55;margin-top:6px}
.hc2-dyno-toggle.torque .hc2-dyno-swatch{border-color:#65aaff}.hc2-dyno-toggle.oem .hc2-dyno-swatch{border-top-style:dotted}
.hc2-dyno-range-label{display:block;color:#becada;font-size:12px;font-weight:500}
.hc2-dyno-range-label>span{float:right;font-variant-numeric:tabular-nums}
.hc2-dyno input.hc2-dyno-range{display:block;width:100%;padding:0;margin:10px 0 15px;height:20px;accent-color:#7caef4;cursor:ew-resize}
.hc2-dyno-readout{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;min-height:50px;color:#c2cddb;font-size:11px}
.hc2-dyno-readout strong{display:block;font-size:15px;font-variant-numeric:tabular-nums;color:#f76a55;margin-top:5px}
.hc2-dyno-readout .torque strong{color:#65aaff}
.hc2-dyno .hc2-dyno-hint{font-size:11px;line-height:1.6;color:#8e9cb0;margin:14px 0 0}
@media(max-width:650px){.hc2-dyno{padding:16px 10px;border-radius:12px}.hc2-dyno-head{align-items:flex-start;flex-direction:column;gap:10px}.hc2-dyno h3{font-size:20px}.hc2-dyno-legend{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.hc2-dyno-readout{grid-template-columns:repeat(2,minmax(0,1fr));min-height:92px}.hc2-dyno-grid text{font-size:24px}.hc2-dyno-toggle strong{font-size:16px}.hc2-dyno .hc2-dyno-note{font-size:11px}}
/* v4.5.10.16: direct curve inspection and percentage gains */
.hc2-dyno-plot{position:relative}
.hc2-dyno-tooltip{position:absolute;z-index:5;width:285px;max-width:calc(100% - 12px);padding:11px;border:1px solid #697990;border-radius:12px;background:rgba(12,18,28,.97);box-shadow:0 12px 35px #0008;color:#f3f6fb;pointer-events:none;font-size:12px;line-height:1.35}
.hc2-dyno-tooltip[hidden]{display:none}
.hc2-dyno-tooltip-title{font-weight:700;margin:0 3px 7px}
.hc2-dyno-tooltip-title small{display:block;color:#aab8cb;font-size:10px;font-weight:400;margin-top:2px}
.hc2-dyno-tooltip-row{display:grid;grid-template-columns:1fr auto;gap:3px 7px;padding:7px 5px;border:1px solid transparent;border-radius:6px}
.hc2-dyno-tooltip-row.is-nearest{background:#293546;border-color:#71849e}
.hc2-dyno-tooltip-row>span{color:#e0e8f3;font-size:11px}
.hc2-dyno-tooltip-row i{display:inline-block;width:12px;border-top:2px solid #f76a55;margin:0 5px 3px 0}
.hc2-dyno-tooltip-row i.is-oem{border-top-style:dotted}
.hc2-dyno-tooltip-row strong{color:#f76a55;font-size:12px;white-space:nowrap}
.hc2-dyno-tooltip-row.torque strong{color:#65aaff}.hc2-dyno-tooltip-row.torque i{border-color:#65aaff}
.hc2-dyno-tooltip-row small{grid-column:1/-1;color:#beebd4;font-size:10px}
.hc2-dyno-series.is-hovered .hc2-dyno-line{stroke-width:4;opacity:1}
.hc2-dyno .hc2-dyno-gain{display:block;color:#b1e6cb;font-size:11px;font-weight:600;margin-top:6px}
.hc2-dyno-readout small{display:block;color:#b1e6cb;font-size:10px;line-height:1.5;margin-top:4px}
@media(max-width:650px){.hc2-dyno-tooltip{width:260px;padding:8px}.hc2-dyno-tooltip-row{padding:5px 3px}}
/* Compact full-chart view, with a plot fitted to available viewport height. */
.hc2-dyno{padding:14px 18px;margin:16px 0}
.hc2-dyno h3{font-size:19px;margin-top:3px}
.hc2-dyno .hc2-dyno-note{font-size:11px;line-height:1.4;margin:8px 0 10px}
.hc2-dyno-plot{height:220px}
.hc2-dyno-plot svg{height:100%;width:100%}
.hc2-dyno-grid text{font-size:11px}
.hc2-dyno-legend{margin:8px 0 10px;gap:8px}
.hc2-dyno .hc2-dyno-toggle{padding:8px 10px;font-size:11px}
.hc2-dyno-toggle strong{font-size:16px;margin-top:2px}
.hc2-dyno-toggle small{display:inline;margin-left:7px;font-size:9px}
.hc2-dyno .hc2-dyno-gain{margin-top:3px;font-size:10px}
.hc2-dyno input.hc2-dyno-range{margin:4px 0 7px;height:16px}
.hc2-dyno-readout{min-height:43px;gap:8px}
.hc2-dyno-readout strong{font-size:13px;margin-top:2px}
.hc2-dyno-readout small{margin-top:2px}
.hc2-dyno .hc2-dyno-hint{font-size:10px;line-height:1.4;margin-top:6px}
@media(max-width:650px){.hc2-dyno{padding:10px}.hc2-dyno-head{flex-direction:row;align-items:center;gap:8px}.hc2-dyno h3{font-size:16px}.hc2-dyno-kicker{font-size:9px!important}.hc2-dyno-badge{font-size:9px;white-space:normal;max-width:92px;padding:5px 7px}.hc2-dyno .hc2-dyno-note{font-size:10px}.hc2-dyno-grid text{font-size:9px}.hc2-dyno-legend{gap:5px}.hc2-dyno .hc2-dyno-toggle{padding:6px;font-size:10px;gap:5px}.hc2-dyno-toggle small{display:none}.hc2-dyno-toggle strong{font-size:14px}.hc2-dyno-readout{min-height:76px;font-size:10px}.hc2-dyno .hc2-dyno-hint{display:none}.hc2-dyno-tooltip-row{font-size:10px}}
/* v4.5.10.18: fuel savings, only above LKW/Agrar brand selection. */
.hc2-fuel{margin:0 0 30px;padding:24px;border:1px solid var(--hc2-line-strong);border-radius:16px;background:var(--hc2-surface);color:var(--hc2-text)}
.hc2-fuel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px}
.hc2-fuel-kicker{color:var(--hc2-orange);font-size:10px;letter-spacing:2px;text-transform:uppercase;font-weight:800}
.hc2-fuel h2{font-size:clamp(20px,2.2vw,27px);line-height:1.2;color:var(--hc2-text);margin:7px 0}
.hc2-fuel-head p{color:var(--hc2-muted);font-size:13px;margin:0}
.hc2-fuel-tag{font-size:11px;white-space:nowrap;border:1px solid var(--hc2-line-strong);border-radius:20px;padding:7px 11px;color:var(--hc2-muted)}
.hc2-fuel-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:28px}
.hc2-fuel-inputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.hc2-fuel-field{min-width:0}.hc2-fuel-field>label{display:block;font-size:12px;color:var(--hc2-muted);margin-bottom:9px;min-height:17px}
.hc2-fuel-value{display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--hc2-line-strong);padding-bottom:6px}
.hc2-fuel-value input[type=number]{width:100%;min-width:0;border:0;background:transparent;color:var(--hc2-text);font:inherit;font-weight:750;font-size:23px;padding:2px 0;border-radius:0;box-shadow:none}
.hc2-fuel-value>span{font-size:12px;white-space:nowrap;color:var(--hc2-muted)}
.hc2-fuel-field input[type=range]{width:100%;height:16px;margin:12px 0 2px;padding:0;accent-color:var(--hc2-orange);cursor:pointer}
.hc2-fuel input:focus-visible{outline:2px solid var(--hc2-orange);outline-offset:3px}
.hc2-fuel-limits{display:flex;justify-content:space-between;color:var(--hc2-muted-2);font-size:10px}
.hc2-fuel-result{padding:22px;border:1px solid var(--hc2-line-strong);border-radius:12px;background:var(--hc2-bg-2);min-width:0}
.hc2-fuel-result-label{display:block;font-size:12px;color:var(--hc2-muted)}
.hc2-fuel-total{display:block;font-size:clamp(30px,3.7vw,46px);line-height:1.1;letter-spacing:-1px;color:var(--hc2-orange);margin:8px 0;overflow-wrap:anywhere}
.hc2-fuel-month{font-size:12px;color:var(--hc2-muted)}
.hc2-fuel-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;border-top:1px solid var(--hc2-line);padding-top:16px;margin-top:16px}
.hc2-fuel-stats span{display:block;color:var(--hc2-muted);font-size:10px}.hc2-fuel-stats strong{display:block;font-size:18px;margin-top:4px;color:var(--hc2-text)}
.hc2-fuel-cost{margin-top:18px}.hc2-fuel-cost>div:not(.hc2-fuel-bar){display:flex;justify-content:space-between;gap:12px;font-size:10px;color:var(--hc2-muted)}.hc2-fuel-cost strong{color:var(--hc2-text);white-space:nowrap}
.hc2-fuel-bar{height:5px;border-radius:10px;background:var(--hc2-line);margin:7px 0 12px;overflow:hidden}.hc2-fuel-bar span{display:block;height:100%;background:var(--hc2-muted-2);border-radius:10px}.hc2-fuel-bar.is-optimized span{background:var(--hc2-orange)}
.hc2-fuel-note{font-size:11px;color:var(--hc2-muted-2);line-height:1.5;margin:16px 0 0}.hc2-fuel-invalid{font-size:14px;line-height:1.6;color:var(--hc2-text)}
@media(max-width:760px){.hc2-fuel{padding:16px}.hc2-fuel-layout{grid-template-columns:1fr;gap:18px}.hc2-fuel-head{gap:12px;margin-bottom:18px}.hc2-fuel-tag{display:none}.hc2-fuel-inputs{gap:18px 14px}.hc2-fuel-field>label{min-height:30px;font-size:11px}.hc2-fuel-value input[type=number]{font-size:20px}.hc2-fuel-result{padding:18px}.hc2-fuel-total{font-size:36px}}
.hc2-fuel-result{border-top:2px solid var(--hc2-orange)}
.hc2-app[data-theme="light"] .hc2-fuel-total,.hc2-app[data-theme="light"] .hc2-fuel-kicker{color:var(--hc2-text)}
#horsti-cars-app.hc2-app .hc2-fuel .hc2-fuel-value input[type="number"]{background:transparent!important;color:var(--hc2-text)!important;-webkit-text-fill-color:var(--hc2-text)!important;border:0!important;box-shadow:none!important}

/* Oil-pressure area, bundled with HORSTI 4.5.10.28. */
#horsti-cars-app .hc2-category-shortcuts.hc2-category-shortcuts--oil{grid-template-columns:repeat(var(--hc2-category-count,5),minmax(0,1fr));width:clamp(250px,25%,360px);max-width:100%}
#horsti-cars-app .hc2-category-grid--five{grid-template-columns:repeat(5,minmax(0,1fr))!important}
#horsti-cars-app .hc2-oil-progress{grid-template-columns:repeat(2,minmax(0,1fr))}
#horsti-cars-app .hc2-oil{color:var(--hc2-text)}
#horsti-cars-app .hc2-oil-heading{display:flex;align-items:center;gap:22px;margin:24px 0}
#horsti-cars-app .hc2-oil-emblem{color:var(--hc2-orange);flex:0 0 84px}
#horsti-cars-app .hc2-oil-emblem .hc2-category-icon{width:84px;height:64px;color:inherit;margin:0}
#horsti-cars-app .hc2-oil-emblem svg{width:84px;height:64px;fill:currentColor}
#horsti-cars-app .hc2-oil-heading h2{font-size:clamp(26px,3vw,40px);line-height:1.12;margin:0 0 10px;color:var(--hc2-text)}
#horsti-cars-app .hc2-oil-heading p{margin:0;color:var(--hc2-muted)}
#horsti-cars-app .hc2-oil-stats{display:flex;flex-wrap:wrap;gap:12px 30px;padding:0 0 26px;border-bottom:1px solid var(--hc2-line);font-size:13px;color:var(--hc2-muted)}
#horsti-cars-app .hc2-oil-stats strong{color:var(--hc2-text);font-size:20px;margin-right:4px}
#horsti-cars-app .hc2-oil-tools{display:grid;grid-template-columns:2fr 1fr;gap:18px;margin:26px 0 20px}
#horsti-cars-app .hc2-oil-tools label{display:block;font-size:12px;font-weight:800;margin-bottom:8px;text-transform:uppercase;letter-spacing:.04em}
#horsti-cars-app .hc2-oil-tools input,#horsti-cars-app .hc2-oil-tools select{box-sizing:border-box;width:100%;height:54px;min-width:0;padding:0 14px;font:inherit;font-size:15px;color:var(--hc2-text);background:var(--hc2-surface);border:1px solid var(--hc2-line-strong);border-radius:6px}
#horsti-cars-app .hc2-oil-search{position:relative;min-width:0}
#horsti-cars-app #hc2-oil-suggestions{position:absolute;z-index:55;top:100%;left:0;right:0;padding:6px;margin-top:7px;max-height:385px;overflow:auto;background:var(--hc2-surface);border:1px solid var(--hc2-line-strong);border-radius:6px;box-shadow:0 16px 34px rgba(0,0,0,.18)}
#horsti-cars-app #hc2-oil-suggestions [role=option]{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px;min-height:44px;cursor:pointer;border-radius:4px;font-size:14px;line-height:1.3;color:var(--hc2-text)}
#horsti-cars-app #hc2-oil-suggestions small{font-size:11px;flex-shrink:0;opacity:.8}
#horsti-cars-app #hc2-oil-suggestions [role=option]:is(:hover,[aria-selected=true]){background:var(--hc2-orange);color:#101214}
#horsti-cars-app .hc2-oil-brands{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}
#horsti-cars-app .hc2-oil-brands button{min-height:42px;padding:9px 15px;background:var(--hc2-surface);color:var(--hc2-text);border:1px solid var(--hc2-line-strong);border-radius:99px;font:inherit;font-size:12px;font-weight:800;cursor:pointer;text-transform:uppercase}
#horsti-cars-app .hc2-oil-brands button:is(:hover,:focus-visible,[aria-pressed=true]){background:var(--hc2-orange)!important;border-color:var(--hc2-orange)!important;color:#101214!important;-webkit-text-fill-color:#101214!important}
#horsti-cars-app .hc2-oil :is(input,select,button):focus-visible{outline:2px solid var(--hc2-orange);outline-offset:3px}
#horsti-cars-app .hc2-oil-summary{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:20px;color:var(--hc2-muted);font-size:13px}
#horsti-cars-app #hc2-oil-reset{padding:8px 0;color:var(--hc2-text);background:transparent;border:0;font:inherit;text-decoration:underline;cursor:pointer}
#horsti-cars-app .hc2-oil-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
#horsti-cars-app .hc2-oil-card{min-width:0;padding:24px;background:var(--hc2-surface);border:1px solid var(--hc2-line);border-radius:8px;transition:border-color .16s}
#horsti-cars-app .hc2-oil-card:hover{border-color:var(--hc2-orange)}
#horsti-cars-app .hc2-oil-card-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:20px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em}
#horsti-cars-app .hc2-oil-card-top b{white-space:nowrap;color:var(--hc2-orange)}
#horsti-cars-app .hc2-oil-card h3{font-size:23px;line-height:1.2;margin:0;color:var(--hc2-text);overflow-wrap:anywhere}
#horsti-cars-app .hc2-oil-card p{font-size:14px;margin:10px 0 0;color:var(--hc2-muted)}
#horsti-cars-app .hc2-oil-card-ecu{margin-top:24px;padding-top:16px;border-top:1px solid var(--hc2-line)}
#horsti-cars-app .hc2-oil-card-ecu small{display:block;font-size:10px;letter-spacing:.09em;color:var(--hc2-muted)}
#horsti-cars-app .hc2-oil-card-ecu strong{display:block;margin-top:5px;font-family:monospace;font-size:14px;overflow-wrap:anywhere}
#horsti-cars-app .hc2-oil [hidden]{display:none!important}
@media(max-width:1100px){#horsti-cars-app .hc2-category-grid--five{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:850px){#horsti-cars-app .hc2-oil-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){#horsti-cars-app .hc2-category-grid--five{grid-template-columns:repeat(2,minmax(0,1fr))!important}#horsti-cars-app .hc2-category-grid--five .hc2-category-card:last-child{grid-column:1/-1}}
@media(max-width:560px){#horsti-cars-app .hc2-oil-tools,#horsti-cars-app .hc2-oil-grid{grid-template-columns:1fr}#horsti-cars-app .hc2-oil-heading{gap:14px}#horsti-cars-app .hc2-oil-emblem{flex-basis:54px}#horsti-cars-app .hc2-oil-emblem .hc2-category-icon,#horsti-cars-app .hc2-oil-emblem svg{width:54px;height:46px}#horsti-cars-app .hc2-oil-summary{align-items:flex-start}#horsti-cars-app .hc2-oil-card{padding:20px}#horsti-cars-app .hc2-oil-progress .hc2-progress-step{font-size:11px;padding:12px 8px}#horsti-cars-app #hc2-oil-suggestions [role=option]{padding:10px 8px;gap:8px}#horsti-cars-app #hc2-oil-suggestions small{font-size:9px}}

/* OEM Problems: scoped to the native HORSTI configurator. */
#horsti-cars-app .hc2-category-shortcuts.hc2-category-shortcuts--oil{grid-template-columns:repeat(var(--hc2-category-count,7),minmax(0,1fr));width:clamp(336px,33%,460px);max-width:100%}
#horsti-cars-app .hc2-oem-trigger-wrap{position:relative;min-width:0;isolation:isolate}
#horsti-cars-app .hc2-oem-trigger-wrap.is-open{z-index:70}
#horsti-cars-app .hc2-oem-trigger-wrap>.hc2-oem-trigger{width:100%;height:100%;position:relative}
#horsti-cars-app .hc2-oem-trigger-wrap--small>.hc2-oem-trigger{height:100%;min-height:44px}
#horsti-cars-app .hc2-oem-trigger-hint{display:block;font-size:10px;line-height:1.5;font-weight:500;letter-spacing:0;text-transform:none;color:var(--hc2-muted);margin-top:7px}
#horsti-cars-app .hc2-oem-menu{position:absolute;z-index:75;right:0;top:calc(100% - 1px);width:min(760px,calc(100vw - 40px));padding:20px;box-sizing:border-box;color:var(--hc2-text);background:var(--hc2-surface);border:1px solid var(--hc2-line-strong);border-top:3px solid var(--hc2-orange);border-radius:10px;box-shadow:0 20px 55px rgba(0,0,0,.28)}
#horsti-cars-app .hc2-oem-menu[hidden]{display:none!important}
#horsti-cars-app .hc2-oem-trigger-wrap--small .hc2-oem-menu{left:0;right:auto}
#horsti-cars-app .hc2-oem-menu-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:16px;font-size:15px;font-weight:800;line-height:1.4}
#horsti-cars-app .hc2-oem-menu-heading small{color:var(--hc2-muted);font-size:11px;font-weight:500}
#horsti-cars-app .hc2-oem-menu-heading [data-oem-close]{padding:0;width:30px;height:30px;flex-shrink:0;margin-left:auto;background:transparent;color:var(--hc2-text);border:1px solid var(--hc2-line);border-radius:5px;font-size:22px;line-height:1;cursor:pointer}
#horsti-cars-app .hc2-oem-menu-grid,#horsti-cars-app .hc2-oem-topic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
#horsti-cars-app .hc2-oem-topic-grid{gap:24px}
#horsti-cars-app .hc2-oem-topic-card{position:relative;display:flex;flex-direction:column;align-items:stretch;min-width:0;margin:0;padding:0;text-align:left;font:inherit;color:var(--hc2-text);background:var(--hc2-surface);border:1px solid var(--hc2-line);border-radius:8px;overflow:hidden;cursor:pointer;transition:border-color .18s,box-shadow .18s;white-space:normal;text-transform:none;letter-spacing:normal}
#horsti-cars-app .hc2-oem-topic-card:is(:hover,:focus-visible){border-color:var(--hc2-orange);box-shadow:0 0 0 1px var(--hc2-orange);outline:none}
#horsti-cars-app .hc2-oem-topic-card>img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;background:#101416;border:0}
#horsti-cars-app .hc2-oem-topic-copy{display:flex;flex-direction:column;align-items:flex-start;padding:20px;gap:8px;min-width:0}
#horsti-cars-app .hc2-oem-topic-copy>strong{font-size:clamp(20px,2.2vw,28px);line-height:1.2;font-weight:800;color:var(--hc2-text)}
#horsti-cars-app .hc2-oem-topic-copy>span{font-size:13px;line-height:1.55;color:var(--hc2-muted)}
#horsti-cars-app .hc2-oem-topic-copy>small{margin-top:5px;padding:5px 9px;background:var(--hc2-orange);color:#101214;font-size:11px;font-weight:800;line-height:1.3;border-radius:4px}
#horsti-cars-app .hc2-oem-menu .hc2-oem-topic-copy{padding:14px 12px;gap:7px}
#horsti-cars-app .hc2-oem-menu .hc2-oem-topic-copy>strong{font-size:20px}
#horsti-cars-app .hc2-oem-menu .hc2-oem-topic-copy>span{font-size:11px;min-height:34px}
#horsti-cars-app .hc2-oem-menu .hc2-oem-topic-copy>small{font-size:10px;padding:5px 7px}
#horsti-cars-app .hc2-oem-topic-arrow{position:absolute;right:12px;top:12px;display:grid;place-items:center;width:28px;height:28px;background:#111a;color:#00ffee;border:1px solid #00ffee66;border-radius:50%;font-size:17px}
#horsti-cars-app .hc2-oil-progress{grid-template-columns:repeat(3,minmax(0,1fr))}
#horsti-cars-app .hc2-oil-progress>.hc2-progress-step:last-child:nth-child(2){grid-column:span 2}
#horsti-cars-app .hc2-oem-kicker{display:block;color:var(--hc2-muted);font-size:11px;letter-spacing:.12em;font-weight:800;text-transform:uppercase;margin-bottom:10px}
#horsti-cars-app .hc2-oem-series{display:block;margin-top:7px;font-size:12px;color:var(--hc2-muted);line-height:1.5}
#horsti-cars-app .hc2-oem-fuel{display:block;font-size:11px;color:var(--hc2-muted);margin-top:8px}
#horsti-cars-app .hc2-oem-note{margin-top:30px;padding:22px;border:1px solid var(--hc2-line);border-radius:8px;font-size:13px;line-height:1.7;color:var(--hc2-muted);background:var(--hc2-surface)}
#horsti-cars-app .hc2-oem-note p{margin:0 0 10px}
#horsti-cars-app .hc2-oem-note a{color:var(--hc2-text);text-decoration:underline;text-underline-offset:4px}
#horsti-cars-app .hc2-oem-placeholder{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center;padding:30px;background:var(--hc2-surface);border:1px solid var(--hc2-line);border-radius:10px}
#horsti-cars-app .hc2-oem-placeholder>img{width:100%;height:auto;border-radius:8px}
#horsti-cars-app .hc2-oem-placeholder h2{font-size:36px;margin:0 0 18px;color:var(--hc2-text)}
#horsti-cars-app .hc2-oem-placeholder p{font-size:16px;line-height:1.7;color:var(--hc2-muted);margin:0 0 24px}
#horsti-cars-app .hc2-oem :is(button,a):focus-visible,#horsti-cars-app .hc2-oem-trigger:focus-visible{outline:2px solid var(--hc2-orange);outline-offset:3px}
@media(max-width:700px){#horsti-cars-app .hc2-category-grid--five>.hc2-oem-trigger-wrap:last-child{grid-column:1/-1}#horsti-cars-app .hc2-oem-topic-grid{grid-template-columns:1fr}#horsti-cars-app .hc2-oem-topic-grid .hc2-oem-topic-card{display:grid;grid-template-columns:38% 1fr}#horsti-cars-app .hc2-oem-topic-grid .hc2-oem-topic-card>img{height:100%;min-height:160px;object-fit:cover}#horsti-cars-app .hc2-oem-placeholder{grid-template-columns:1fr;gap:24px;padding:22px}#horsti-cars-app .hc2-oem-placeholder>img{max-width:360px;margin:auto}}
@media(max-width:560px){#horsti-cars-app .hc2-oem-menu{position:fixed;left:16px;right:16px;top:50%;transform:translateY(-50%);width:auto;max-height:85vh;overflow-y:auto;padding:16px}#horsti-cars-app .hc2-oem-menu-grid{grid-template-columns:1fr;gap:10px}#horsti-cars-app .hc2-oem-menu .hc2-oem-topic-card{display:grid;grid-template-columns:110px 1fr}#horsti-cars-app .hc2-oem-menu .hc2-oem-topic-card>img{height:100%;min-height:116px;object-fit:cover}#horsti-cars-app .hc2-oem-menu .hc2-oem-topic-copy>span{min-height:0}#horsti-cars-app .hc2-oem-topic-copy{padding:18px 14px}#horsti-cars-app .hc2-oem-trigger-hint{font-size:11px}#horsti-cars-app .hc2-oem-menu .hc2-oem-topic-arrow{display:none}}
@media(max-width:560px){#horsti-cars-app .hc2-oem-trigger-wrap--small .hc2-oem-menu{left:16px;right:16px;width:auto}}
/* Browser top layer prevents footer overlap and clipping by Elementor wrappers. */
#horsti-cars-app .hc2-oem-menu[popover]{position:fixed;inset:auto;margin:0;transform:none;overflow-y:auto;overscroll-behavior:contain}
#horsti-cars-app .hc2-oem-menu[popover]::backdrop{background:transparent;pointer-events:none}
/* Warmstart uses the same catalogue controls, with a compact brand dropdown. */
#horsti-cars-app .hc2-oem-warm-intro{display:grid;grid-template-columns:minmax(240px,.85fr) minmax(0,1.65fr);margin:0 0 26px;border:1px solid var(--hc2-line);border-radius:12px;overflow:hidden;background:var(--hc2-surface)}
#horsti-cars-app .hc2-oem-warm-media{min-width:0;background:#101416}
#horsti-cars-app .hc2-oem-warm-media>img{display:block;width:100%;height:100%;min-height:320px;object-fit:cover;border:0}
#horsti-cars-app .hc2-oem-warm-copy{padding:30px;min-width:0}
#horsti-cars-app .hc2-oem-warm-copy h2{margin:0 0 12px;font-size:clamp(30px,3.6vw,44px);line-height:1.15;color:var(--hc2-heading)}
#horsti-cars-app .hc2-oem-warm-copy h3{margin:0 0 18px;font-size:clamp(17px,1.8vw,23px);line-height:1.45;color:var(--hc2-heading)}
#horsti-cars-app .hc2-oem-warm-copy>p{margin:0 0 14px;font-size:14px;line-height:1.8;color:var(--hc2-muted)}
#horsti-cars-app .hc2-oem-warm-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:23px;padding-top:21px;border-top:1px solid var(--hc2-line)}
#horsti-cars-app .hc2-oem-warm-benefits strong{display:block;color:var(--hc2-heading);font-size:12px;line-height:1.5;margin-bottom:7px}
#horsti-cars-app .hc2-oem-warm-benefits span{display:block;color:var(--hc2-muted);font-size:12px;line-height:1.7}
#horsti-cars-app .hc2-oem-warm-list-heading{margin:32px 0 20px}
#horsti-cars-app .hc2-oem-warm-list-heading h3{font-size:23px;line-height:1.4;margin:0 0 8px;color:var(--hc2-heading)}
#horsti-cars-app .hc2-oem-warm-list-heading p{margin:0;font-size:13px;line-height:1.7;color:var(--hc2-muted)}
#horsti-cars-app .hc2-oil-tools--warm{grid-template-columns:minmax(0,1.6fr) repeat(2,minmax(0,1fr))}
@media(max-width:760px){#horsti-cars-app .hc2-oem-warm-intro{grid-template-columns:1fr}#horsti-cars-app .hc2-oem-warm-media>img{height:220px;min-height:0;object-fit:contain}#horsti-cars-app .hc2-oem-warm-copy{padding:23px}#horsti-cars-app .hc2-oil-tools--warm{grid-template-columns:1fr}}
@media(max-width:420px){#horsti-cars-app .hc2-oem-warm-benefits{grid-template-columns:1fr;gap:14px}#horsti-cars-app .hc2-oem-warm-media>img{height:190px}}
