/* IG Parts light skin - provisional system-font slot until licensed webfonts are supplied. */
:root {
  --ig-navy: #001a72;
  --ig-cyan: #00E6FF;
  --ig-white: #FFFFFF;
  --ig-grey: #464B50;
  --ig-surface: #F9F9F9;
  --ig-line-neutral: #BCC1C7;
  --ig-radius: 3px;
  --ig-line: rgba(0, 26, 114, 0.14);
  --ig-line-strong: rgba(0, 26, 114, 0.28);
  --ig-font-body: "Neue Haas Unica W1G", Arial, Helvetica, sans-serif;
  --ig-font-display: "Prota Pro", "Neue Haas Unica W1G", Arial, Helvetica, sans-serif;
  --bg: var(--ig-white);
  --bg-elev: var(--ig-white);
  --bg-soft: var(--ig-white);
  --ink: var(--ig-navy);
  --ink-2: var(--ig-grey);
  --muted: var(--ig-grey);
  --line: var(--ig-line);
  --line-soft: var(--ig-line);
  --accent: var(--ig-cyan);
  --accent-2: var(--ig-cyan);
  --accent-deep: var(--ig-navy);
  --accent-soft: rgba(0, 230, 255, 0.18);
  --font-sans: var(--ig-font-body);
  --font-display: var(--ig-font-display);
  --font-mono: var(--ig-font-display);
}

* {
  box-sizing: border-box;
}

html[data-theme="igparts-light"],
html[data-theme="igparts-light"] body {
  margin: 0;
  padding: 0;
  background: #FFFFFF;
  color: #464B50;
  font-family: var(--ig-font-body);
  letter-spacing: 0;
  -webkit-font-smoothing: antialiased;
}

html[data-theme="igparts-light"],
body.igparts-site {
  max-width: 100%;
  overflow-x: hidden;
}

/*
 * Gewicht dieser Grundregeln: bewusst so leicht wie bei GoFleet.
 *
 * GoFleet schreibt dieselben Regeln ohne Marken-Klammer:
 *     a { color: inherit; text-decoration: none; }        Rang (0,0,1)
 *     button { ... color: inherit; }                      Rang (0,0,1)
 *     section { padding: ...; }                           Rang (0,0,1)
 *
 * Hier standen sie als `body.igparts-site a` usw. und wogen damit (0,1,2) —
 * schwerer als JEDE Komponenten-Klasse (0,1,0). Am 21.08.2026 gemessen: Der
 * Link-Reset hebelte 35 Komponenten-Regeln aus, der Knopf-Reset 54. Sichtbare
 * Folge unter anderem: Schaltflaechen mit dunklem Grund erbten die dunkle
 * Textfarbe ihrer Umgebung, ihre Beschriftung war unsichtbar.
 *
 * Die Klammer bleibt noetig, damit die Regeln nur auf IG Parts gelten. Ueber
 * :where() traegt sie kein Gewicht mehr. Ergebnis: exakt das Gewicht, das
 * GoFleet seit langem in Produktion faehrt.
 */
:where(body.igparts-site) a {
  color: inherit;
  text-decoration: none;
}

:where(body.igparts-site) button {
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  cursor: pointer;
}

body.igparts-site .gf-skip-link {
  position: fixed;
  left: 18px;
  top: 18px;
  z-index: 10000;
  transform: translateY(-140%);
  padding: 10px 16px;
  border: 2px solid #00E6FF;
  border-radius: 3px;
  background: #001a72;
  color: #FFFFFF;
  font-weight: 700;
  transition: transform 0.16s ease;
}

body.igparts-site .gf-skip-link:focus,
body.igparts-site .gf-skip-link:focus-visible {
  transform: translateY(0);
  outline: 3px solid #00E6FF;
  outline-offset: 3px;
}

body.igparts-site .container {
  width: min(1180px, calc(100% - 40px));
  margin: 0 auto;
}

body.igparts-site .hero-inner,
body.igparts-site .why-gofleet-shell > *,
body.igparts-site .section-head > *,
body.igparts-site .cta-band-inner > *,
body.igparts-site .why-gofleet-cards,
body.igparts-site .process,
body.igparts-site .gofleet-service-grid,
body.igparts-site .why-gofleet-card,
body.igparts-site .process-step,
body.igparts-site .roundel-card,
body.igparts-site .roundel-card-face {
  min-width: 0;
}

body.igparts-site .nav {
  position: sticky;
  top: 0;
  z-index: 50;
  background: #001a72;
  border-bottom: 4px solid #00E6FF;
}

body.igparts-site .nav-inner {
  min-height: 76px;
  display: flex;
  align-items: center;
  gap: 28px;
}

body.igparts-site .nav-logo-wrap,
body.igparts-site .footer-logo {
  display: inline-flex;
  align-items: center;
}

body.igparts-site .nav-logo-wrap img {
  width: 112px;
  height: auto;
  display: block;
}

body.igparts-site .nav-grow {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  justify-content: center;
}

body.igparts-site .nav-links,
body.igparts-site .nav-cta {
  display: flex;
  align-items: center;
  gap: 18px;
}

body.igparts-site .nav-link {
  color: #FFFFFF;
  font-size: 14px;
  font-weight: 700;
  opacity: 0.88;
}

body.igparts-site .nav-link:hover,
body.igparts-site .nav-link:focus-visible {
  color: #00E6FF;
  opacity: 1;
}

body.igparts-site .btn {
  position: relative;
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 12px 24px;
  border-radius: 3px;
  font-family: var(--ig-font-body);
  font-size: 14px;
  font-weight: 800;
  line-height: 1;
  white-space: nowrap;
  transition: transform 0.16s ease, background-color 0.16s ease, border-color 0.16s ease, color 0.16s ease;
}

body.igparts-site .btn:focus-visible,
body.igparts-site .nav-link:focus-visible,
body.igparts-site .why-gofleet-link:focus-visible {
  outline: 3px solid #00E6FF;
  outline-offset: 4px;
}

body.igparts-site .btn:hover {
  transform: translateY(-1px);
}

body.igparts-site .btn-accent,
body.igparts-site .btn-primary {
  background: #001a72;
  color: #FFFFFF;
  border: 2px solid #001a72;
}

body.igparts-site .btn-accent:hover,
body.igparts-site .btn-primary:hover {
  background: #001a72;
  border-color: #00E6FF;
  color: #FFFFFF;
}

body.igparts-site .nav-cta .btn,
body.igparts-site .btn-ghost {
  border: 2px solid rgba(255, 255, 255, 0.68);
  background: transparent;
  color: #FFFFFF;
}

body.igparts-site .hero .btn-ghost,
body.igparts-site .cta-band .btn-ghost {
  border-color: #001a72;
  color: #001a72;
}

body.igparts-site .nav-cta .btn:hover,
body.igparts-site .btn-ghost:hover {
  border-color: #00E6FF;
}

body.igparts-site .btn-lg {
  min-height: 52px;
  padding: 15px 30px;
  font-size: 15px;
}

body.igparts-site .nav-burger {
  display: none;
  width: 44px;
  height: 44px;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 6px;
  border: 2px solid rgba(255, 255, 255, 0.7);
  border-radius: 3px;
  color: #FFFFFF;
}

body.igparts-site .nav-burger-line {
  display: block;
  width: 18px;
  height: 2px;
  border-radius: 0;
  background: currentColor;
}

body.igparts-site .nav-burger.is-open .nav-burger-line:first-child {
  transform: translateY(4px) rotate(45deg);
}

body.igparts-site .nav-burger.is-open .nav-burger-line:last-child {
  transform: translateY(-4px) rotate(-45deg);
}

body.igparts-site .nav-mobile-drawer {
  position: fixed;
  left: 0;
  right: 0;
  top: 76px;
  z-index: 60;
  display: none;
  background: #001a72;
  border-bottom: 4px solid #00E6FF;
}

body.igparts-site .nav-mobile-drawer.is-open {
  display: block;
}

body.igparts-site .nav-mobile-drawer-inner {
  width: min(1180px, calc(100% - 40px));
  margin: 0 auto;
  padding: 22px 0 28px;
  display: grid;
  gap: 8px;
}

body.igparts-site .nav-mobile-link {
  display: block;
  padding: 14px 0;
  color: #FFFFFF;
  font-weight: 800;
}

body.igparts-site .nav-mobile-link--cta {
  width: max-content;
  margin-top: 10px;
  padding: 13px 24px;
  border: 2px solid #00E6FF;
  border-radius: 3px;
}

body.igparts-site .nav-mobile-scrim {
  position: fixed;
  inset: 76px 0 0;
  z-index: 55;
  background: rgba(0, 26, 114, 0.38);
}

body.igparts-site .hero {
  position: relative;
  min-height: 620px;
  padding: 92px 0 82px;
  overflow: hidden;
  background: #FFFFFF;
}

body.igparts-site .hero::before,
body.igparts-site .hero::after {
  content: "";
  position: absolute;
  border: 22px solid #001a72;
  border-radius: 3px;
  pointer-events: none;
}

body.igparts-site .hero::before {
  width: 360px;
  height: 360px;
  right: -130px;
  top: 70px;
}

body.igparts-site .hero::after {
  width: 210px;
  height: 210px;
  left: -96px;
  bottom: 66px;
  border-color: #00E6FF;
}

body.igparts-site .hero-bg,
body.igparts-site .hero-grid {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

body.igparts-site .hero-grid {
  background-image:
    linear-gradient(to right, rgba(0, 26, 114, 0.08) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(0, 26, 114, 0.08) 1px, transparent 1px);
  background-size: 76px 76px;
  mask-image: linear-gradient(90deg, transparent, black 16%, black 84%, transparent);
  -webkit-mask-image: linear-gradient(90deg, transparent, black 16%, black 84%, transparent);
}

body.igparts-site .hero-inner {
  position: relative;
  z-index: 1;
}

body.igparts-site .gofleet-hero-spacer {
  height: 20px;
}

body.igparts-site .eyebrow,
body.igparts-site .section-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 36px;
  padding: 8px 18px;
  border: 2px solid #001a72;
  border-radius: 3px;
  background: #FFFFFF;
  color: #001a72;
  font-family: var(--ig-font-display);
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}

body.igparts-site .eyebrow .dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #00E6FF;
}

body.igparts-site .hero h1,
body.igparts-site .section-title,
body.igparts-site .cta-band h2 {
  max-width: min(13ch, 100%);
  margin: 26px 0 0;
  color: #001a72;
  font-family: var(--ig-font-display);
  font-size: clamp(44px, 7vw, 88px);
  font-weight: 700;
  line-height: 0.98;
  letter-spacing: 0;
  overflow-wrap: break-word;
  word-break: normal;
  hyphens: auto;
}

body.igparts-site .hero h1 .accent,
body.igparts-site .section-title .accent,
body.igparts-site .cta-band h2 .accent {
  color: #001a72;
  font-style: normal;
  text-decoration: underline;
  text-decoration-color: #00E6FF;
  text-decoration-thickness: 0.12em;
  text-underline-offset: 0.12em;
}

body.igparts-site .hero h1,
body.igparts-site .cta-band h2 {
  max-width: min(15ch, 100%);
}

body.igparts-site .hero-sub {
  max-width: 58ch;
  margin: 22px 0 0;
  color: #464B50;
  font-size: clamp(17px, 2vw, 22px);
  line-height: 1.48;
}

body.igparts-site .hero-cta {
  margin-top: 34px;
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

:where(body.igparts-site) section {
  position: relative;
  padding: clamp(68px, 7vw, 112px) 0;
}

body.igparts-site .stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border: 2px solid #001a72;
  border-radius: 3px;
  overflow: hidden;
  background: #001a72;
  color: #FFFFFF;
}

body.igparts-site .stat {
  min-height: 118px;
  padding: 26px 28px;
  border-right: 2px solid rgba(255, 255, 255, 0.34);
}

body.igparts-site .stat:last-child {
  border-right: 0;
}

body.igparts-site .stat-num {
  color: #00E6FF;
  font-family: var(--ig-font-display);
  font-size: 13px;
  font-weight: 700;
}

body.igparts-site .stat-label {
  margin-top: 12px;
  color: #FFFFFF;
  font-size: 18px;
  font-weight: 800;
}

body.igparts-site .why-gofleet {
  background: #FFFFFF;
}

body.igparts-site .why-gofleet-shell,
body.igparts-site .section-head,
body.igparts-site .cta-band {
  border-top: 6px solid #001a72;
}

body.igparts-site .why-gofleet-shell {
  display: grid;
  grid-template-columns: minmax(0, 0.88fr) minmax(0, 1.12fr);
  gap: clamp(32px, 5vw, 72px);
  align-items: start;
  padding-top: 34px;
}

body.igparts-site .why-gofleet-copy p,
body.igparts-site .section-head p,
body.igparts-site .process-step p,
body.igparts-site .roundel-card-intro,
body.igparts-site .roundel-card-features {
  color: #464B50;
  font-size: 16px;
  line-height: 1.6;
}

body.igparts-site .why-gofleet-link {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-top: 24px;
  color: #001a72;
  font-weight: 800;
}

body.igparts-site .why-gofleet-link::after {
  content: "";
  width: 52px;
  height: 4px;
  border-radius: 0;
  background: #00E6FF;
}

body.igparts-site .why-gofleet-link-arrow {
  display: none;
}

body.igparts-site .why-gofleet-cards,
body.igparts-site .process,
body.igparts-site .gofleet-service-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

body.igparts-site .why-gofleet-card,
body.igparts-site .process-step,
body.igparts-site .roundel-card-face {
  min-height: 220px;
  border: 2px solid #001a72;
  border-radius: 32px;
  background: #FFFFFF;
  padding: 28px;
}

body.igparts-site .why-gofleet-card h3,
body.igparts-site .process-step h4,
body.igparts-site .roundel-card-title {
  margin: 18px 0 0;
  color: #001a72;
  font-family: var(--ig-font-display);
  font-size: 23px;
  line-height: 1.12;
}

body.igparts-site .why-gofleet-num,
body.igparts-site .process-num,
body.igparts-site .chip {
  display: inline-flex;
  min-width: 48px;
  min-height: 30px;
  align-items: center;
  justify-content: center;
  padding: 7px 12px;
  border-radius: 3px;
  background: #001a72;
  color: #FFFFFF;
  font-family: var(--ig-font-display);
  font-size: 12px;
  font-weight: 700;
}

body.igparts-site .section-head {
  display: grid;
  grid-template-columns: minmax(0, 0.78fr) minmax(320px, 0.48fr);
  gap: clamp(48px, 7vw, 112px);
  align-items: center;
  padding-top: 34px;
}

body.igparts-site .section-head .section-title {
  max-width: min(11.5ch, 100%);
}

body.igparts-site .section-head p {
  max-width: 46ch;
  margin: 0 0 10px;
}

body.igparts-site .process {
  margin-top: 36px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

body.igparts-site .process-step {
  min-height: 250px;
  border-radius: 28px;
}

body.igparts-site .gofleet-service-grid {
  margin-top: 36px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

body.igparts-site .roundel-card {
  min-height: 330px;
}

body.igparts-site .roundel-card-face {
  height: 100%;
  display: flex;
  flex-direction: column;
}

body.igparts-site .roundel-card-head {
  display: flex;
  justify-content: space-between;
  gap: 20px;
}

body.igparts-site .roundel-card-num {
  color: #00E6FF;
  font-family: var(--ig-font-display);
  font-weight: 700;
}

body.igparts-site .roundel-card-features {
  margin: auto 0 0;
  padding-left: 18px;
}

body.igparts-site .marquee {
  overflow: hidden;
  border-block: 2px solid #001a72;
  color: #001a72;
  font-family: var(--ig-font-display);
  font-size: clamp(32px, 5vw, 64px);
  font-weight: 700;
  white-space: nowrap;
}

body.igparts-site .marquee-track {
  display: inline-flex;
  padding: 22px 0;
  animation: none;
}

body.igparts-site .marquee-track span {
  display: inline-flex;
  align-items: center;
  gap: 42px;
}

body.igparts-site .marquee-dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #00E6FF;
}

body.igparts-site .cta-band {
  padding-top: 34px;
}

body.igparts-site .cta-band-inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 32px;
  align-items: center;
  border-radius: 48px;
  background: #001a72;
  color: #FFFFFF;
  padding: clamp(32px, 5vw, 58px);
}

body.igparts-site .cta-band h2 {
  max-width: 13ch;
  margin: 0;
  color: #FFFFFF;
}

body.igparts-site .cta-band h2 .accent {
  color: #FFFFFF;
}

body.igparts-site .cta-band .btn-accent {
  background: #FFFFFF;
  border-color: #FFFFFF;
  color: #001a72;
}

body.igparts-site .gf-page,
body.igparts-site .gf-main,
body.igparts-site .gofleet-listing,
body.igparts-site .gofleet-detail,
body.igparts-site .gofleet-related {
  --gofleet-bg: #FFFFFF;
  --gofleet-card-bg: #FFFFFF;
  --gofleet-card-bg-alt: #FFFFFF;
  --gofleet-text: #001a72;
  --gofleet-text-muted: #464B50;
  --gofleet-text-light: rgba(70, 75, 80, 0.74);
  --gofleet-accent: #001a72;
  --gofleet-accent-hover: #001a72;
  --gofleet-primary: #001a72;
  --gofleet-primary-bg: rgba(0, 230, 255, 0.18);
  --gofleet-success: #001a72;
  --gofleet-success-bg: rgba(0, 230, 255, 0.18);
  --gofleet-border: rgba(0, 26, 114, 0.18);
  --gofleet-shadow: none;
  --gofleet-shadow-hover: none;
  background: #FFFFFF;
  color: #464B50;
  font-family: var(--ig-font-body);
}

body.igparts-site .gf-page--fahrzeuge,
body.igparts-site .gf-page--fahrzeug-anfrage,
body.igparts-site .gf-page--kunden-dashboard,
body.igparts-site .gf-page--portal,
body.igparts-site .gf-page--gofleet-status {
  max-width: 1240px;
  margin: 0 auto;
  padding: clamp(54px, 7vw, 96px) 32px;
  background: #FFFFFF;
}

body.igparts-site .gf-page--fahrzeuge::before,
body.igparts-site .gf-page--fahrzeug-anfrage::before,
body.igparts-site .gf-page--kunden-dashboard::before,
body.igparts-site .gf-page--portal::before,
body.igparts-site .gf-page--gofleet-status::before,
body.igparts-site .gofleet-page-header__title,
body.igparts-site .gofleet-section-title,
body.igparts-site .gofleet-card__title,
body.igparts-site .gofleet-card__price,
body.igparts-site .gofleet-valueprops__heading,
body.igparts-site .gofleet-valueprops__title,
body.igparts-site .gofleet-quickfacts__value,
body.igparts-site .gofleet-specs__value,
body.igparts-site .gofleet-calc__section-title,
body.igparts-site .gofleet-mini-card__title {
  color: #001a72 !important;
  font-family: var(--ig-font-display);
  letter-spacing: 0;
}

body.igparts-site .gf-page--fahrzeuge::before,
body.igparts-site .gf-page--fahrzeug-anfrage::before,
body.igparts-site .gf-page--kunden-dashboard::before,
body.igparts-site .gf-page--portal::before,
body.igparts-site .gf-page--gofleet-status::before {
  display: block;
  max-width: min(18ch, 100%);
  margin: 0 0 24px;
  font-size: clamp(40px, 6vw, 76px);
  font-weight: 700;
  line-height: 1;
  overflow-wrap: normal;
  word-break: normal;
}

body.igparts-site .gf-page--fahrzeuge::before {
  content: "Leasingfahrzeuge finden.";
}

body.igparts-site .gf-page--fahrzeug-anfrage::before {
  content: "Leasinganfrage starten.";
}

body.igparts-site .gf-page--kunden-dashboard::before {
  content: "Ihr Leasingangebot im Blick.";
}

body.igparts-site .gf-page--portal::before {
  content: "IG Parts Portal.";
}

body.igparts-site .gf-page--gofleet-status::before {
  content: "Status und Verkehr.";
}

body.igparts-site .gofleet-sidebar,
body.igparts-site .gofleet-listing__toolbar,
body.igparts-site .gofleet-card,
body.igparts-site .gofleet-calc,
body.igparts-site .gofleet-valueprops,
body.igparts-site .gofleet-accordion,
body.igparts-site .gofleet-mini-card,
body.igparts-site .gofleet-mobile-cta,
body.igparts-site .gofleet-quickfacts__item,
body.igparts-site .gofleet-specs__item {
  border: 2px solid rgba(0, 26, 114, 0.16) !important;
  border-radius: 28px !important;
  background: #FFFFFF !important;
  color: #464B50 !important;
  box-shadow: none !important;
}

body.igparts-site .gofleet-card:hover,
body.igparts-site .gofleet-quickfacts__item:hover,
body.igparts-site .gofleet-specs__item:hover,
body.igparts-site .gofleet-accordion:hover,
body.igparts-site .gofleet-accordion:focus-within {
  border-color: rgba(0, 26, 114, 0.34) !important;
  box-shadow: none !important;
  transform: none;
}

body.igparts-site .gofleet-card__image,
body.igparts-site .gofleet-gallery__main,
body.igparts-site .gofleet-mini-card__image {
  background: #FFFFFF !important;
  border: 2px solid rgba(0, 26, 114, 0.12) !important;
  border-radius: 24px !important;
  overflow: hidden;
  box-shadow: none !important;
}

body.igparts-site .gofleet-card__image img,
body.igparts-site .gofleet-gallery__main img,
body.igparts-site .gofleet-mini-card__image img {
  filter: none !important;
  mix-blend-mode: normal !important;
}

body.igparts-site .gofleet-card__subtitle,
body.igparts-site .gofleet-card__price-sub,
body.igparts-site .gofleet-card__env-line,
body.igparts-site .gofleet-page-header__subline,
body.igparts-site .gofleet-valueprops__text,
body.igparts-site .gofleet-quickfacts__label,
body.igparts-site .gofleet-specs__label,
body.igparts-site .gofleet-specs__icon,
body.igparts-site .gofleet-accordion__icon,
body.igparts-site .gofleet-accordion__count,
body.igparts-site .gofleet-accordion__chevron,
body.igparts-site .gofleet-legal__text,
body.igparts-site .gofleet-calc__meta-label,
body.igparts-site .gofleet-calc__contract-row,
body.igparts-site .gofleet-calc__color-price,
body.igparts-site .gofleet-calc__extra-price,
body.igparts-site .gofleet-calc__rate-label,
body.igparts-site .gofleet-calc__rate-netto,
body.igparts-site .gofleet-calc__rate-sub,
body.igparts-site .gofleet-mini-card__subtitle,
body.igparts-site .gofleet-mobile-cta__rate-unit {
  color: #464B50 !important;
}

body.igparts-site .gofleet-badge,
body.igparts-site .gofleet-card__cta-badge,
body.igparts-site .gofleet-section-nav__link,
body.igparts-site .gofleet-customer-toggle__btn,
body.igparts-site .gofleet-listing__sort-btn,
body.igparts-site .gofleet-layout-toggle,
body.igparts-site .gofleet-sidebar__select,
body.igparts-site .gofleet-calc__btn,
body.igparts-site .gofleet-calc__color-btn,
body.igparts-site .gofleet-calc__extra-btn,
body.igparts-site .gofleet-accordion__count {
  border: 2px solid rgba(0, 26, 114, 0.18) !important;
  border-radius: 3px !important;
  background: #FFFFFF !important;
  color: #001a72 !important;
  box-shadow: none !important;
}

body.igparts-site .gofleet-badge--electric,
body.igparts-site .gofleet-badge--phev,
body.igparts-site .gofleet-badge--hybrid,
body.igparts-site .gofleet-badge--green,
body.igparts-site .gofleet-badge--blue {
  border-color: rgba(0, 230, 255, 0.54) !important;
  background: rgba(0, 230, 255, 0.16) !important;
  color: #001a72 !important;
}

body.igparts-site .gofleet-customer-toggle__btn--active,
body.igparts-site .gofleet-listing__sort-btn--active,
body.igparts-site .gofleet-layout-toggle--active,
body.igparts-site .gofleet-section-nav__link.is-active,
body.igparts-site .gofleet-section-nav__link:hover,
body.igparts-site .gofleet-calc__btn--active,
body.igparts-site .gofleet-calc__color-btn.gofleet-calc__btn--active,
body.igparts-site .gofleet-calc__extra-btn.gofleet-calc__btn--active {
  background: #001a72 !important;
  border-color: #001a72 !important;
  color: #FFFFFF !important;
}

body.igparts-site .gofleet-card__button,
body.igparts-site .gofleet-card__button--cta,
body.igparts-site .gofleet-card__cta-submit,
body.igparts-site .gofleet-calc__cta,
body.igparts-site .gofleet-mobile-cta__btn {
  display: inline-flex;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  border: 2px solid #001a72 !important;
  border-radius: 3px !important;
  background: #001a72 !important;
  color: #FFFFFF !important;
  box-shadow: none !important;
  font-family: var(--ig-font-body);
  font-weight: 800;
}

body.igparts-site .gofleet-card__button,
body.igparts-site .gofleet-card__button--cta,
body.igparts-site .gofleet-card__cta-submit {
  width: min(1280px, calc(100% - 64px));
}

body.igparts-site .gofleet-card:hover .gofleet-card__button,
body.igparts-site .gofleet-card__button:hover,
body.igparts-site .gofleet-card__cta-submit:hover,
body.igparts-site .gofleet-calc__cta:hover,
body.igparts-site .gofleet-calc__cta:focus,
body.igparts-site .gofleet-mobile-cta__btn:hover,
body.igparts-site .gofleet-mobile-cta__btn:focus {
  border-color: #00E6FF !important;
  background: #001a72 !important;
  color: #FFFFFF !important;
  box-shadow: none !important;
  transform: none;
}

body.igparts-site .gofleet-calc__rate-box {
  background: #001a72 !important;
  border: 2px solid #001a72 !important;
  border-radius: 28px !important;
  color: #FFFFFF !important;
  box-shadow: none !important;
}

body.igparts-site .gofleet-calc__rate-box *,
body.igparts-site .gofleet-mobile-cta__rate-value {
  color: #FFFFFF !important;
}

body.igparts-site .gofleet-detail__nav {
  background: #FFFFFF !important;
  border-bottom: 2px solid rgba(0, 26, 114, 0.14) !important;
}

body.igparts-site .gofleet-accordion__header {
  color: #001a72 !important;
}

body.igparts-site .gofleet-equipment__list li::before,
body.igparts-site .gofleet-valueprops__check,
body.igparts-site .gofleet-quickfacts__icon,
body.igparts-site .gofleet-energy__arrow,
body.igparts-site .gofleet-mini-card__price {
  color: #00E6FF !important;
}

body.igparts-site .gofleet-sidebar input:focus,
body.igparts-site .gofleet-sidebar select:focus,
body.igparts-site .gofleet-card__cta-input:focus,
body.igparts-site .gofleet-calc__btn:focus-visible,
body.igparts-site .gofleet-calc__color-btn:focus-visible,
body.igparts-site .gofleet-calc__extra-btn:focus-visible,
body.igparts-site .gofleet-section-nav__link:focus-visible {
  outline: 3px solid #00E6FF !important;
  outline-offset: 3px;
}

:where(body.igparts-site) footer {
  margin-top: 80px;
  padding: 58px 0 38px;
  background: #001a72;
  color: #FFFFFF;
}

body.igparts-site .foot-grid {
  display: grid;
  grid-template-columns: minmax(280px, 1.4fr) repeat(3, minmax(150px, 1fr));
  gap: 38px;
}

body.igparts-site .footer-logo img {
  width: 116px;
  height: auto;
  display: block;
}

body.igparts-site footer p,
body.igparts-site .foot-col h2,
body.igparts-site .foot-col a,
body.igparts-site .foot-bottom,
body.igparts-site .foot-bottom a {
  color: #FFFFFF !important;
}

body.igparts-site .foot-col h2 {
  margin: 0 0 16px;
  font-family: var(--ig-font-display);
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
}

body.igparts-site .foot-col ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 10px;
}

body.igparts-site .foot-col a {
  font-size: 14px;
  opacity: 0.86;
}

body.igparts-site .foot-col a:hover,
body.igparts-site .foot-col a:focus-visible,
body.igparts-site .foot-bottom a:hover,
body.igparts-site .foot-bottom a:focus-visible {
  color: #00E6FF !important;
  opacity: 1;
}

body.igparts-site .foot-bottom {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  margin-top: 46px;
  padding-top: 24px;
  border-top: 2px solid rgba(255, 255, 255, 0.26);
  font-family: var(--ig-font-display);
  font-size: 12px;
}

@keyframes igparts-marquee {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}

@media (max-width: 1040px) {
  body.igparts-site .nav-links,
  body.igparts-site .nav-cta {
    display: none;
  }

  body.igparts-site .nav-grow {
    justify-content: flex-end;
  }

  body.igparts-site .nav-burger {
    display: inline-flex;
  }

  body.igparts-site .why-gofleet-shell,
  body.igparts-site .section-head,
  body.igparts-site .cta-band-inner {
    grid-template-columns: 1fr;
  }

  body.igparts-site .process,
  body.igparts-site .gofleet-service-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.igparts-site .foot-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 680px) {
  body.igparts-site .container,
  body.igparts-site .nav-mobile-drawer-inner {
    width: min(100% - 28px, 1180px);
  }

  body.igparts-site .nav-inner {
    min-height: 68px;
  }

  body.igparts-site .nav-mobile-drawer {
    top: 68px;
  }

  body.igparts-site .nav-mobile-scrim {
    inset: 68px 0 0;
  }

  body.igparts-site .nav-logo-wrap img {
    width: 96px;
  }

  body.igparts-site .hero {
    min-height: auto;
    padding: 48px 0 52px;
  }

  body.igparts-site .hero::before {
    width: 170px;
    height: 170px;
    right: -118px;
    top: 70px;
    border-width: 14px;
  }

  body.igparts-site .hero::after {
    width: 118px;
    height: 118px;
    left: -74px;
    bottom: 40px;
    border-width: 12px;
  }

  body.igparts-site .hero h1,
  body.igparts-site .section-title,
  body.igparts-site .cta-band h2 {
    max-width: 100%;
    font-size: clamp(27px, 8.4vw, 34px);
    line-height: 1.03;
  }

  body.igparts-site .hero-sub {
    max-width: 100%;
    font-size: 16px;
  }

  body.igparts-site .hero-cta,
  body.igparts-site .hero-cta .btn,
  body.igparts-site .cta-band .btn {
    width: 100%;
  }

  body.igparts-site .stats,
  body.igparts-site .why-gofleet-cards,
  body.igparts-site .process,
  body.igparts-site .gofleet-service-grid,
  body.igparts-site .foot-grid {
    grid-template-columns: 1fr;
  }

  body.igparts-site .stats {
    border-radius: 34px;
  }

  body.igparts-site .stat {
    min-height: 0;
    border-right: 0;
    border-bottom: 2px solid rgba(255, 255, 255, 0.34);
  }

  body.igparts-site .stat:last-child {
    border-bottom: 0;
  }

  body.igparts-site .cta-band-inner {
    border-radius: 34px;
    padding: 28px;
  }

  body.igparts-site .why-gofleet-card,
  body.igparts-site .process-step,
  body.igparts-site .roundel-card-face,
  body.igparts-site .gofleet-card,
  body.igparts-site .gofleet-calc,
  body.igparts-site .gofleet-valueprops,
  body.igparts-site .gofleet-accordion,
  body.igparts-site .gofleet-mini-card,
  body.igparts-site .gofleet-mobile-cta {
    border-radius: 24px !important;
  }

  body.igparts-site .gf-page--fahrzeuge,
  body.igparts-site .gf-page--fahrzeug-anfrage,
  body.igparts-site .gf-page--kunden-dashboard,
  body.igparts-site .gf-page--portal,
  body.igparts-site .gf-page--gofleet-status {
    padding-left: 18px;
    padding-right: 18px;
  }

  body.igparts-site .gf-page--fahrzeuge::before,
  body.igparts-site .gf-page--fahrzeug-anfrage::before,
  body.igparts-site .gf-page--kunden-dashboard::before,
  body.igparts-site .gf-page--portal::before,
  body.igparts-site .gf-page--gofleet-status::before {
    max-width: 100%;
    font-size: clamp(28px, 8.4vw, 34px);
    line-height: 1.06;
  }

  body.igparts-site .foot-bottom {
    flex-direction: column;
  }
}

@media (max-width: 380px) {
  body.igparts-site .hero h1,
  body.igparts-site .section-title,
  body.igparts-site .cta-band h2,
  body.igparts-site .gf-page--fahrzeuge::before,
  body.igparts-site .gf-page--fahrzeug-anfrage::before,
  body.igparts-site .gf-page--kunden-dashboard::before,
  body.igparts-site .gf-page--portal::before,
  body.igparts-site .gf-page--gofleet-status::before {
    font-size: clamp(26px, 8vw, 31px);
  }
}

/*
 * Customer marketplace shell
 *
 * This final, host-scoped layer deliberately overrides the legacy shared
 * component class names without loading on GoFleet. It keeps the real route
 * handlers intact while giving every IG Parts surface the same compact shell.
 */
body.igparts-site {
  --ig-surface: #F9F9F9;
  --ig-line-neutral: #BCC1C7;
  --ig-radius: 3px;
  --bg: #FFFFFF;
  --bg-elev: #FFFFFF;
  --bg-soft: var(--ig-surface);
  --line: var(--ig-line-neutral);
  --line-soft: var(--ig-line-neutral);
  --font-display: var(--ig-font-display);
}

body.igparts-site .nav {
  background: #FFFFFF;
  border-bottom: 1px solid #BCC1C7;
  box-shadow: none;
}

body.igparts-site .nav-inner {
  min-height: 72px;
}

body.igparts-site .nav-logo-wrap img {
  width: 124px;
}

body.igparts-site .nav-links {
  align-self: stretch;
  gap: 26px;
}

body.igparts-site .nav-link {
  display: inline-flex;
  align-items: center;
  padding: 4px 0 0;
  border-bottom: 4px solid transparent;
  color: #001A72;
  font-size: 15px;
  font-weight: 600;
  opacity: 1;
}

body.igparts-site .nav-link:hover,
body.igparts-site .nav-link:focus-visible,
body.igparts-site .nav-link[aria-current="page"] {
  border-bottom-color: #00E6FF;
  color: #001A72;
}

body.igparts-site .nav-cta .btn,
body.igparts-site .btn-ghost {
  border: 1px solid #001A72;
  background: #FFFFFF;
  color: #001A72;
}

body.igparts-site .btn,
body.igparts-site .nav-mobile-link--cta,
body.igparts-site .nav-burger,
body.igparts-site .gofleet-card__button,
body.igparts-site .gofleet-card__button--cta,
body.igparts-site .gofleet-card__cta-submit,
body.igparts-site .gofleet-calc__cta,
body.igparts-site .gofleet-mobile-cta__btn {
  border-radius: var(--ig-radius) !important;
  box-shadow: none !important;
  transform: none !important;
}

body.igparts-site .btn {
  min-height: 42px;
  padding: 11px 18px;
  border: 1px solid #001A72;
  font-weight: 700;
}

body.igparts-site .btn-accent,
body.igparts-site .btn-primary,
body.igparts-site .gofleet-card__button,
body.igparts-site .gofleet-card__button--cta,
body.igparts-site .gofleet-card__cta-submit,
body.igparts-site .gofleet-calc__cta,
body.igparts-site .gofleet-mobile-cta__btn {
  background: #001A72;
  border-color: #001A72;
  color: #FFFFFF;
}

body.igparts-site .btn:hover,
body.igparts-site .btn:focus-visible,
body.igparts-site .gofleet-card__button:hover,
body.igparts-site .gofleet-card__button:focus-visible,
body.igparts-site .gofleet-calc__cta:hover,
body.igparts-site .gofleet-calc__cta:focus-visible {
  border-color: #00E6FF !important;
  box-shadow: inset 0 -3px 0 #00E6FF !important;
  transform: none !important;
}

body.igparts-site .nav-burger {
  border-color: #001A72;
  color: #001A72;
}

body.igparts-site .nav-burger-line {
  border-radius: 0;
}

body.igparts-site .nav-mobile-drawer {
  background: #FFFFFF;
  border-bottom: 1px solid #BCC1C7;
}

body.igparts-site .nav-mobile-link {
  border-bottom: 1px solid #BCC1C7;
  color: #001A72;
}

body.igparts-site .nav-mobile-link[aria-current="page"] {
  border-bottom-color: #00E6FF;
  color: #001A72;
}

body.igparts-site .nav-mobile-link--cta {
  border: 1px solid #001A72;
}

body.igparts-site .nav-mobile-scrim {
  background: rgba(0, 26, 114, 0.16);
}

body.igparts-site .hero {
  min-height: 0;
  padding: 0;
  overflow: visible;
  background: var(--ig-surface);
}

body.igparts-site .hero::before,
body.igparts-site .hero::after,
body.igparts-site .hero-bg,
body.igparts-site .hero-grid {
  display: none;
}

body.igparts-site .eyebrow,
body.igparts-site .section-eyebrow {
  min-height: 0;
  padding: 0 0 8px;
  border: 0;
  border-bottom: 4px solid #00E6FF;
  border-radius: 0;
  background: transparent;
  color: #001A72;
  font-family: var(--ig-font-body);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.04em;
}

body.igparts-site .eyebrow .dot {
  display: none;
}

body.igparts-site .hero h1,
body.igparts-site .section-title,
body.igparts-site .cta-band h2 {
  max-width: 17ch;
  margin-top: 22px;
  color: #001A72;
  font-family: var(--ig-font-display);
  font-size: clamp(36px, 4.2vw, 58px);
  font-weight: 400;
  line-height: 1.05;
  letter-spacing: -0.02em;
  overflow-wrap: normal;
  hyphens: none;
}

body.igparts-site .hero h1 .accent,
body.igparts-site .section-title .accent,
body.igparts-site .cta-band h2 .accent {
  color: inherit;
  text-decoration-color: #00E6FF;
  text-decoration-thickness: 4px;
  text-underline-offset: 0.13em;
}

body.igparts-site .hero-sub {
  max-width: 54ch;
  color: #464B50;
  font-size: 17px;
  line-height: 1.55;
}

/* Genau eine Hero-Definition: Full-Bleed statt konkurrierender Kaskadenschichten. */
body.igparts-site .hero--photo-lozenge {
  position: relative;
  display: flex;
  align-items: center;
  min-height: clamp(560px, 66vh, 720px);
  padding: 0;
  overflow: hidden;
  background: #001A72;
  isolation: isolate;
}

body.igparts-site .hero--photo-lozenge .hero-media {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  min-height: 0;
  border-radius: 0;
  object-fit: cover;
  object-position: center 42%;
}

body.igparts-site .hero--photo-lozenge .hero-bg {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: block;
  background: linear-gradient(90deg, rgba(0,26,114,.92) 0%, rgba(0,26,114,.84) 34%, rgba(0,26,114,.48) 62%, rgba(0,26,114,.12) 86%, rgba(0,26,114,0) 100%), linear-gradient(180deg, rgba(0,26,114,.30) 0%, rgba(0,26,114,0) 45%);
}

body.igparts-site .hero--photo-lozenge .hero-grid,
body.igparts-site .hero--photo-lozenge .gofleet-hero-spacer {
  display: none;
}

body.igparts-site .hero--photo-lozenge .hero-inner {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
  padding: clamp(48px, 6vw, 84px) clamp(24px, 5vw, 40px);
  background: transparent;
  color: #FFFFFF;
}

body.igparts-site .hero--photo-lozenge .eyebrow {
  display: inline-block;
  width: auto;
  min-height: 0;
  padding: 0 0 8px;
  border: 0;
  border-bottom: 4px solid #00E6FF;
  background: transparent;
  color: #FFFFFF;
}

body.igparts-site .hero--photo-lozenge h1 {
  max-width: 17ch;
  margin: 22px 0 0;
  color: #FFFFFF;
  font-size: clamp(40px, 4.8vw, 62px);
  line-height: 1.04;
  letter-spacing: -.02em;
  hyphens: none;
}

body.igparts-site .hero--photo-lozenge h1 .accent {
  color: #FFFFFF;
  text-decoration-color: #00E6FF;
  text-decoration-thickness: 4px;
}

body.igparts-site .hero--photo-lozenge .hero-sub {
  max-width: 52ch;
  margin: 18px 0 0;
  color: #FFFFFF;
  font-size: clamp(16px, 1.3vw, 19px);
  line-height: 1.55;
}

body.igparts-site .hero--photo-lozenge .hero-cta {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 34px;
}

body.igparts-site .hero--photo-lozenge .hero-cta .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 26px;
  border-radius: var(--ig-radius);
  font-weight: 700;
}

body.igparts-site .hero--photo-lozenge .hero-cta .btn-accent {
  border: 1px solid #FFFFFF;
  background: #FFFFFF;
  color: #001A72;
}

body.igparts-site .hero--photo-lozenge .hero-cta .btn-ghost {
  border: 1px solid rgba(255,255,255,.85);
  background: transparent;
  color: #FFFFFF;
}

body.igparts-site .hero--photo-lozenge .hero-cta .btn-accent:hover {
  box-shadow: inset 0 -3px 0 #00E6FF;
  color: #001A72;
}

body.igparts-site .hero--photo-lozenge .hero-cta .btn-ghost:hover {
  border-color: #00E6FF;
  color: #FFFFFF;
}

:where(body.igparts-site) section {
  padding: clamp(48px, 6vw, 80px) 0;
}

body.igparts-site .stats,
body.igparts-site .cta-band-inner {
  border: 1px solid #001A72;
  border-radius: var(--ig-radius);
  background: #001A72;
}

body.igparts-site .stats {
  color: #FFFFFF;
}

body.igparts-site .stat {
  min-height: 0;
  padding: 22px 24px;
  border-right: 1px solid rgba(255, 255, 255, 0.45);
}

body.igparts-site .stat-num,
body.igparts-site .roundel-card-num {
  color: #00E6FF;
  font-family: var(--ig-font-body);
}

body.igparts-site .why-gofleet-shell,
body.igparts-site .section-head,
body.igparts-site .cta-band {
  border-top: 0;
}

body.igparts-site .why-gofleet-card,
body.igparts-site .process-step,
body.igparts-site .roundel-card-face,
body.igparts-site .gofleet-card,
body.igparts-site .gofleet-calc,
body.igparts-site .gofleet-valueprops,
body.igparts-site .gofleet-accordion,
body.igparts-site .gofleet-mini-card,
body.igparts-site .gofleet-mobile-cta,
body.igparts-site .gofleet-sidebar,
body.igparts-site .gofleet-listing__toolbar,
body.igparts-site .gofleet-quickfacts__item,
body.igparts-site .gofleet-specs__item {
  border: 1px solid #BCC1C7 !important;
  border-radius: var(--ig-radius) !important;
  background: #FFFFFF !important;
  box-shadow: none !important;
}

body.igparts-site .gofleet-card,
body.igparts-site .gofleet-card__image,
body.igparts-site .gofleet-gallery,
body.igparts-site .gofleet-gallery__main,
body.igparts-site .gofleet-gallery__thumb,
body.igparts-site .gofleet-mini-card,
body.igparts-site .gofleet-mini-card__image,
body.igparts-site .gofleet-calc,
body.igparts-site .gofleet-calc__rate-box {
  border-radius: var(--ig-radius) !important;
}

body.igparts-site .why-gofleet-card,
body.igparts-site .process-step,
body.igparts-site .roundel-card-face {
  min-height: 0;
  padding: 24px;
}

body.igparts-site .why-gofleet-card h3,
body.igparts-site .process-step h4,
body.igparts-site .roundel-card-title {
  font-family: var(--ig-font-display);
  font-size: 22px;
  font-weight: 400;
}

body.igparts-site .why-gofleet-num,
body.igparts-site .process-num,
body.igparts-site .chip,
body.igparts-site .gofleet-badge,
body.igparts-site .gofleet-card__cta-badge,
body.igparts-site .gofleet-section-nav__link,
body.igparts-site .gofleet-customer-toggle__btn,
body.igparts-site .gofleet-listing__sort-btn,
body.igparts-site .gofleet-layout-toggle,
body.igparts-site .gofleet-sidebar__select,
body.igparts-site .gofleet-calc__btn,
body.igparts-site .gofleet-calc__color-btn,
body.igparts-site .gofleet-calc__extra-btn,
body.igparts-site .gofleet-accordion__count {
  border-radius: var(--ig-radius) !important;
}

body.igparts-site .marquee {
  display: none;
}

body.igparts-site .cta-band-inner {
  padding: clamp(32px, 4vw, 48px);
}

body.igparts-site .cta-band h2,
body.igparts-site .cta-band h2 .accent {
  color: #FFFFFF;
}

body.igparts-site .gf-page,
body.igparts-site .gf-main,
body.igparts-site .gofleet-listing,
body.igparts-site .gofleet-detail,
body.igparts-site .gofleet-related {
  background: #FFFFFF;
}

body.igparts-site .gf-page--fahrzeuge,
body.igparts-site .gf-page--fahrzeug-anfrage,
body.igparts-site .gf-page--kunden-dashboard,
body.igparts-site .gf-page--portal,
body.igparts-site .gf-page--selbstauskunft,
body.igparts-site .gf-page--gofleet-status {
  padding-top: clamp(42px, 5vw, 64px);
}

/* Dashboard and self-disclosure assets keep their real handlers, but inherit
 * the IG Parts tokens even when their CSS is enqueued after the theme skin. */
body.igparts-site .mmh-dash {
  --dash-bg: #F9F9F9;
  --dash-card: #FFFFFF;
  --dash-border: #BCC1C7;
  --dash-text: #001A72;
  --dash-muted: #464B50;
  --dash-accent: #001A72;
  --dash-green: #001A72;
  --dash-green-bg: rgba(0, 230, 255, 0.18);
  --dash-signal: #001A72;
  --dash-signal-bg: rgba(0, 230, 255, 0.18);
  --dash-primary-bg: rgba(0, 230, 255, 0.18);
  --dash-radius: var(--ig-radius);
  --dash-radius-sm: var(--ig-radius);
  --dash-shadow: none;
  --dash-shadow-hover: none;
  --dash-font: var(--ig-font-body);
  font-family: var(--ig-font-body);
}

/*
 * Der vollstaendige IG-Parts-Wertesatz fuer die Selbstauskunft.
 *
 * Er stand bisher nur auf .mmh-sa — dem Formular selbst. Die Einstiegsseite
 * benutzt .mmh-sa-einstieg und lief deshalb auf den Mobility-Match-Vorgaben:
 * elf Werte fehlten dort, darunter Flaechenfarbe, Textfarbe, Rundung, Schatten
 * und Schrift. Am 21.08.2026 gemessen.
 *
 * Beide Bereiche teilen sich jetzt einen Satz, statt ihn zu verdoppeln.
 */
body.igparts-site :is(.mmh-sa, .mmh-sa-einstieg) {
  /*
   * --sa-navy wird in der geteilten Vorlage 35-mal gelesen und war bisher nur
   * fuer die Einstiegsseite gesetzt. Im Formular selbst griff deshalb der
   * Mobility-Match-Navy. Am 21.08.2026 gemessen.
   */
  --sa-navy: #001A72;
  --sa-ice: #F9F9F9;
  --sa-bg: #F9F9F9;
  --sa-card: #FFFFFF;
  --sa-border: #BCC1C7;
  --sa-text: #001A72;
  --sa-muted: #464B50;
  --sa-accent: #001A72;
  --sa-green: #001A72;
  --sa-green-bg: rgba(0, 230, 255, 0.18);
  /*
   * IG Parts faerbt den geteilten Gruenton auf Navy um. Damit stand im
   * Beratungskasten Navy auf Navy: Symbol unsichtbar, Rahmen weiterhin gruen,
   * weil er als fester Wert und nicht ueber die Variable gesetzt war.
   * Beide Angaben ergaenzen die Umfaerbung, statt sie zu ueberschreiben.
   */
  --sa-green-fg: #FFFFFF;
  --sa-green-border: rgba(0, 26, 114, 0.18);
  /*
   * Hover- und Fokuszustaende, am 21.08.2026 von Fabian gemeldet.
   *
   * Der Terminbuchungs-Knopf stand ruhig in IG-Parts-Navy und sprang beim
   * Ueberfahren auf den Mobility-Match-Blauton: Der Ruhezustand lief ueber
   * --sa-navy, der Hover war fest eingetippt. Die halbe Umstellung faellt bei
   * einer Sichtpruefung nicht auf, weil man Hoverzustaende nur sieht, wenn man
   * mit der Maus daraufgeht.
   *
   * --sa-accent-rgb ist bewusst ein RGB-Tripel und keine fertige Farbe: Die
   * geteilte Vorlage baut daraus Fokusringe mit sechs verschiedenen
   * Deckkraeften. Eine fertige Farbe haette alle sechs auf denselben Wert
   * gezogen und damit Mobility Match veraendert. Dasselbe Muster nutzt die
   * Portal-Login-Seite bereits fuer ihre halbtransparenten Flaechen.
   */
  --sa-accent-rgb: 0, 230, 255;
  --sa-navy-hover: #0A2A96;
  /*
   * Vom geschaerften Wächter am 21.08.2026 gefunden, nicht von Hand.
   *
   * `mmh-sa.css` legt --sa-step-color und --sa-check-color auf :root ab und
   * speist sie aus --mmh-green. IG Parts hat beide nie gesetzt: Schrittanzeige,
   * Ankreuzfelder und der Primaerknopf der Selbstauskunfts-Sektion standen
   * deshalb im Mobility-Match-Gruen, obwohl der Rest der Seite Navy traegt.
   *
   * --sa-btn-primary-fg ist der Kontrastpartner und nicht optional: Der Knopf
   * hatte seine Schriftfarbe fest auf Mobility-Match-Navy stehen. Wer nur den
   * Grund auf Navy zieht, stellt Navy auf Navy und die Beschriftung verschwindet.
   * Genau das ist am selben Tag zweimal passiert.
   */
  --sa-step-color: #001A72;
  --sa-check-color: #001A72;
  --sa-btn-primary-fg: #FFFFFF;
  --mmh-green-hover: #0A2A96;
  --mmh-shadow-green: none;
  /*
   * Der Sekundaerknopf zieht seine Schrift aus den globalen Mobility-Match-Token.
   * Innerhalb der Selbstauskunft bekommen sie die IG-Parts-Werte — bewusst nur
   * hier und nicht global, damit die Umstellung nicht ueber die ganze Seite greift.
   */
  --mmh-text: var(--ig-grey);
  --mmh-grey-500: var(--ig-grey);
  --sa-radius: var(--ig-radius);
  --sa-radius-sm: var(--ig-radius);
  --sa-shadow: none;
  --sa-shadow-hover: none;
  --sa-font: var(--ig-font-body);
  font-family: var(--ig-font-body);
}

body.igparts-site .mmh-dash__tab--active,
body.igparts-site .mmh-sa-einstieg__step--active .mmh-sa-einstieg__step-dot,
body.igparts-site .mmh-sa-einstieg__step--done .mmh-sa-einstieg__step-dot {
  border-color: #00E6FF;
  color: #001A72;
}

body.igparts-site .mmh-dash__btn,
body.igparts-site .mmh-sa__btn,
body.igparts-site .mmh-sa input,
body.igparts-site .mmh-sa select,
body.igparts-site .mmh-sa textarea,
body.igparts-site .mmh-dash input,
body.igparts-site .mmh-dash select,
body.igparts-site .mmh-dash textarea,
body.igparts-site .mmh-sa__step0-card,
body.igparts-site .mmh-sa__step,
body.igparts-site .mmh-sa-einstieg [class*="__card"],
body.igparts-site .mmh-dash [class*="__card"] {
  border-radius: var(--ig-radius) !important;
  box-shadow: none !important;
}

body.igparts-site .mmh-dash__btn--primary,
body.igparts-site .mmh-sa__btn--primary,
body.igparts-site .mmh-sa__btn--final {
  background: #001A72;
  border-color: #001A72;
  color: #FFFFFF;
}

body.igparts-site .mmh-dash__btn--primary:hover,
body.igparts-site .mmh-sa__btn--primary:hover:not(:disabled),
body.igparts-site .mmh-sa__btn--final:hover:not(:disabled) {
  border-color: #00E6FF;
  box-shadow: inset 0 -3px 0 #00E6FF !important;
}

@media (max-width: 768px) {
  body.igparts-site .hero--photo-lozenge {
    min-height: clamp(520px, 84vh, 640px);
    align-items: flex-end;
  }

  body.igparts-site .hero--photo-lozenge .hero-media {
    object-position: center 38%;
  }

  body.igparts-site .hero--photo-lozenge .hero-bg {
    background: linear-gradient(180deg, rgba(0,26,114,.28) 0%, rgba(0,26,114,.55) 36%, rgba(0,26,114,.90) 72%, rgba(0,26,114,.95) 100%);
  }

  body.igparts-site .hero--photo-lozenge .hero-inner {
    padding: 32px 20px 40px;
  }

  body.igparts-site .hero h1,
  body.igparts-site .section-title,
  body.igparts-site .cta-band h2 {
    font-size: clamp(32px, 9vw, 42px);
  }

  body.igparts-site .hero--photo-lozenge h1 {
    max-width: 15ch;
    font-size: clamp(32px, 9vw, 42px);
  }

  body.igparts-site .hero--photo-lozenge .hero-cta {
    display: grid;
    grid-template-columns: 1fr;
  }

  body.igparts-site .hero--photo-lozenge .hero-cta .btn {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.igparts-site *,
  body.igparts-site *::before,
  body.igparts-site *::after {
    scroll-behavior: auto !important;
    transition: none !important;
    animation: none !important;
  }
}

/*
 * Nur-fuer-Vorlesegeraete-Ueberschrift verstecken.
 *
 * `page.php` gibt auf jeder Seite eine `h1.gf-page-h1--sr` aus. Sie ist als
 * Zugaenglichkeitsanker gedacht und soll nicht sichtbar sein — die Seite traegt
 * ihre sichtbare Ueberschrift im Inhalt.
 *
 * Die Versteck-Regel steht in `gofleet-portal.css`. Diese Datei wird auf dem
 * IG-Parts-Host jedoch **nicht geladen** — dort greift ausschliesslich der
 * eigene `igparts-*`-Satz. Am 20.08.2026 am laufenden System gemessen: Auf
 * `/fahrzeug-anfrage/` stand die Ueberschrift mit 32px sichtbar ueber dem
 * Formular, `position: static`, `clip: auto`.
 *
 * Bewusst ohne `!important`: Einzelne IG-Parts-Seiten heben das Verstecken
 * absichtlich auf, um die Ueberschrift als sichtbaren Titel zu nutzen
 * (`--fuer-kunden`, `--faq`, `--fahrzeuge`). Diese Regeln sind spezifischer und
 * behalten damit den Vorrang.
 */
body.igparts-site .gf-page-h1--sr {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	clip-path: inset(50%);
	white-space: nowrap;
	border: 0;
}




/* Das Symbol steht mittig ueber dem Text, nicht linksbuendig daneben. */
body.igparts-site .mmh-sa-booking-cta__icon {
  align-self: center;
}

/*
 * Der Knopf war ueber die volle Breite gezogen und dadurch groesser als die
 * Aussage dahinter. Er nimmt jetzt die Breite seiner Beschriftung und steht mittig.
 */
body.igparts-site .mmh-sa-booking-cta__link {
  width: auto;
  align-self: center;
  min-height: 34px;
  padding: 8px 18px;
}


/*
 * Beratungs-Schwebeknopf.
 *
 * Er wird ausserhalb des Dashboard-Kastens ausgegeben und erreicht dessen
 * Wertesatz nicht. Deshalb hier auf der Marken-Klammer selbst.
 * Vordergrund weiss, weil der Hintergrund der IG-Parts-Navy ist.
 */
body.igparts-site {
  --mmh-booking-float-bg: #001A72;
  --mmh-booking-float-fg: #FFFFFF;
/*
 * Breite des Kundenbereichs.
 *
 * Die Seiten-Kennung entsteht aus dem Seitennamen in WordPress; jede IG-Parts-Seite
 * setzt ihre Breite selbst. Fuer den Kundenbereich fehlte diese Regel — der Rahmen
 * lief deshalb ueber die volle Fensterbreite, waehrend der Inhalt darin bei 1280px
 * (Dashboard) beziehungsweise 1180px (Selbstauskunft-Einstieg) endete. Sichtbar als
 * breiter leerer Streifen rechts.
 *
 * GoFleet deckelt dieselbe Seite auf 1240px (gofleet-portal.css). Der Wert hier ist
 * die bereits vorhandene Konvention dieser Datei, die fuer /fuer-kunden/ und /faq/
 * denselben Deckel verwendet.
 *
 * BEWUSST NICHT auf der Grundklasse .igparts-page: Die Fahrzeugliste fuehrt innen
 * 1400px und wuerde dadurch schmaler. Am 21.08.2026 gemessen. Eine neue Seite
 * braucht deshalb weiterhin ihre eigene Breitenregel.
 */
/*
 * Der Deckel richtet sich nach dem Inhalt, nicht nach der Nachbarmarke.
 *
 * Zuerst stand hier 1240px — die Breite, die GoFleet fuer dieselbe Seite fuehrt.
 * In der Pruefung fiel auf, dass das Dashboard darin seine eigene Sollbreite von
 * 1280px (`mmh-dashboard.css`) nicht ausfahren kann: Der Elternteil schnuert es
 * um 40px ein, und rechts bleibt genau der leere Streifen stehen, der Anlass
 * dieser Regel war. Eine von der Nachbarmarke uebernommene Zahl ist kein
 * Argument, wenn der eigene Inhalt eine andere braucht.
 */
body.igparts-site .igparts-page--kunden-dashboard {
  width: min(1280px, calc(100% - 64px));
  margin: 0 auto;
  padding: clamp(32px, 5vw, 64px) 0 80px;
}

@media (max-width: 900px) {
  body.igparts-site .igparts-page--kunden-dashboard {
    width: min(1280px, calc(100% - 32px));
  }
}

/* ────────────────────────────────────────────────────────────────────────
   Rechtstexte (Impressum, Datenschutz)

   Die Regeln fuer `.gf-legal` stehen in `gofleet-portal.css`. IG Parts laedt
   diese Datei nicht, sondern nur `igparts-portal.css` - die Rechtstexte
   liefen deshalb ueber die volle Fensterbreite, Ueberschrift und Text klebten
   am linken Rand.

   Aufgefallen erst am 26.08.2026, als das Impressum zum ersten Mal wirklich
   ausgeliefert wurde. Vorher verdeckte eine Platzhalterseite in der
   Serverkonfiguration die Seite, deshalb hat es nie jemand gesehen.

   Klassische Zwillingsdatei-Falle: Wer nur eine der beiden Dateien pflegt,
   repariert nur eine Marke.
   ──────────────────────────────────────────────────────────────────────── */
.gf-legal {
	max-width: 980px;
	margin: 0 auto;
	padding: clamp(48px, 6vw, 88px) 24px;
}

.gf-legal h1 {
	font-size: clamp(32px, 4.5vw, 52px);
	font-weight: 700;
	letter-spacing: -0.02em;
	line-height: 1.08;
	margin: 0 0 8px;
}
