/* ============================================================
   Car Care Customs — gemeinsame Marketing-Shell
   Warm, offen und präzise. Alle Regeln bleiben unter
   .ccc-marketing-page / .ccc-site-header gekapselt, damit
   Konfiguratoren, Warenkörbe und Scanner funktional unabhängig
   bleiben.
   ============================================================ */
:root {
  --ccc-page: #e5e1d9;
  --ccc-page-soft: #d8d3ca;
  --ccc-paper: #f0ede7;
  --ccc-ink: #0b0b0d;
  --ccc-night: #0b0b0d;
  --ccc-night-soft: #17171a;
  --ccc-muted: #626268;
  --ccc-red: #e1251b;
  --ccc-red-dark: #a91610;
  --ccc-line: rgba(11, 11, 13, .13);
  --ccc-line-inverse: rgba(255, 255, 255, .16);
  --ccc-font-display: "Archivo", "Manrope", system-ui, sans-serif;
  --ccc-font-body: "Manrope", system-ui, sans-serif;
  --ccc-font-label: "JetBrains Mono", ui-monospace, monospace;
  --ccc-radius-button: 10px;
  --ccc-radius-card: 18px;
  --ccc-radius-panel: 28px;
  --ccc-container: 1280px;
  --ccc-header-height: 82px;
  --ccc-ease-out: cubic-bezier(.22, 1, .36, 1);
  --ccc-shadow-soft: 0 18px 52px rgba(0, 0, 0, .08);
}

html {
  scroll-padding-top: calc(var(--ccc-header-height) + 22px);
}

body.ccc-marketing-page {
  margin: 0;
  overflow-x: clip;
  background: var(--ccc-page);
  color: var(--ccc-ink);
  font-family: var(--ccc-font-body) !important;
  font-kerning: normal;
  -webkit-font-smoothing: antialiased;
}

.ccc-marketing-page main {
  overflow-x: clip;
}

.ccc-marketing-page :where(h1, h2, h3, h4, h5, h6) {
  font-family: var(--ccc-font-display) !important;
  font-weight: 760;
  letter-spacing: -.035em;
  text-wrap: balance;
}

.ccc-marketing-page :where(p, li) {
  text-wrap: pretty;
}

.ccc-marketing-page :where(.hero-subtitle, .section-kicker, .kicker, .eyebrow, .step-num, .num) {
  font-family: var(--ccc-font-label) !important;
}

.ccc-marketing-page :where(.ccc-grain, .ccc-frame) {
  display: none !important;
}

/* ---------- Gemeinsamer heller Header ---------- */
.ccc-marketing-page .ccc-site-header {
  position: fixed !important;
  inset: 0 0 auto !important;
  z-index: 5000 !important;
  width: 100% !important;
  height: var(--ccc-header-height) !important;
  border: 0 !important;
  border-bottom: 1px solid transparent !important;
  background: rgba(229, 225, 217, .9) !important;
  color: var(--ccc-ink) !important;
  box-shadow: none !important;
  backdrop-filter: blur(18px) saturate(125%);
  -webkit-backdrop-filter: blur(18px) saturate(125%);
  transition:
    background-color .28s var(--ccc-ease-out),
    border-color .28s var(--ccc-ease-out),
    box-shadow .28s var(--ccc-ease-out) !important;
}

.ccc-marketing-page .ccc-site-header.ccc-is-scrolled {
  border-bottom-color: var(--ccc-line) !important;
  background: rgba(240, 237, 231, .96) !important;
  box-shadow: 0 12px 36px rgba(11, 11, 13, .06) !important;
}

.ccc-marketing-page .ccc-site-header :where(.nav-inner, .header-inner, .wrap) {
  width: min(calc(100% - 40px), var(--ccc-container)) !important;
  height: 100% !important;
  min-height: 0 !important;
  margin-inline: auto !important;
  padding: 0 !important;
}

.ccc-marketing-page .ccc-site-header :where(.nav-logo, .brand) {
  min-width: 0;
  color: var(--ccc-ink) !important;
  text-decoration: none;
}

.ccc-marketing-page .ccc-site-header :where(.nav-logo, .brand) img {
  width: 48px !important;
  height: 48px !important;
  object-fit: contain;
  filter: none !important;
}

.ccc-marketing-page .ccc-site-header .brand :where(.brand-name, .t, strong) {
  color: var(--ccc-ink) !important;
  font-family: var(--ccc-font-display) !important;
  font-weight: 780 !important;
  letter-spacing: -.015em !important;
  text-transform: none !important;
}

.ccc-marketing-page .ccc-site-header .brand :where(.brand-sub, small) {
  color: var(--ccc-muted) !important;
  font-family: var(--ccc-font-label) !important;
}

.ccc-marketing-page .ccc-site-header nav a {
  color: var(--ccc-ink) !important;
}

.ccc-marketing-page .ccc-site-header .nav-brand {
  min-width: 0;
  line-height: 1;
}

.ccc-marketing-page .ccc-site-header .nav-brand b {
  display: block;
  color: var(--ccc-ink) !important;
  font-family: var(--ccc-font-display) !important;
  font-size: .91rem !important;
  font-weight: 780 !important;
  letter-spacing: -.015em !important;
  text-transform: none !important;
}

.ccc-marketing-page .ccc-site-header .nav-brand small {
  display: block;
  margin-top: 5px;
  color: var(--ccc-muted) !important;
  font-family: var(--ccc-font-label) !important;
  font-size: .55rem !important;
  letter-spacing: .13em !important;
  text-transform: uppercase;
}

.ccc-marketing-page .ccc-site-header .nav-actions {
  gap: 14px !important;
  color: var(--ccc-ink) !important;
}

.ccc-marketing-page .ccc-site-header :where(.cart-icon, .cart-icon-wrap) {
  min-width: 44px;
  min-height: 44px;
  display: grid !important;
  place-items: center;
  color: var(--ccc-ink) !important;
  border: 1px solid var(--ccc-line) !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, .5) !important;
  transition: transform .2s var(--ccc-ease-out), border-color .2s ease !important;
}

.ccc-marketing-page .ccc-site-header :where(.cart-icon, .cart-icon-wrap):hover {
  transform: translateY(-2px);
  border-color: rgba(225, 37, 27, .5) !important;
}

.ccc-marketing-page .ccc-site-header .menu-trigger {
  min-width: 88px;
  min-height: 44px;
  padding: 0 14px !important;
  gap: 11px !important;
  color: var(--ccc-ink) !important;
  border: 1px solid var(--ccc-line) !important;
  border-radius: 999px !important;
  background: var(--ccc-paper) !important;
  font-family: var(--ccc-font-display) !important;
  font-size: .68rem !important;
  font-weight: 740 !important;
  letter-spacing: .08em !important;
  box-shadow: 0 8px 24px rgba(11, 11, 13, .05);
}

.ccc-marketing-page .ccc-site-header .menu-trigger :where(.burger, .burger-box) {
  width: 20px !important;
}

.ccc-marketing-page .ccc-site-header .menu-trigger :where(.burger, .burger-box) span {
  background: var(--ccc-ink) !important;
}

.ccc-marketing-page .ccc-site-header .pill {
  border-color: var(--ccc-line) !important;
  background: transparent !important;
  color: var(--ccc-ink) !important;
  font-family: var(--ccc-font-display) !important;
  border-radius: 999px !important;
}

/* ---------- Offenes Hero-System für Legacy-Leistungsseiten ---------- */
.ccc-marketing-page main {
  background: var(--ccc-page);
}

.ccc-marketing-page main > .hero,
.ccc-marketing-page main > header.hero {
  position: relative;
  min-height: min(860px, 92svh) !important;
  padding-top: calc(var(--ccc-header-height) + clamp(56px, 9vw, 128px)) !important;
  padding-bottom: clamp(74px, 10vw, 132px) !important;
  overflow: hidden;
  isolation: isolate;
  background:
    linear-gradient(110deg, rgba(240, 237, 231, .96) 0 42%, rgba(229, 225, 217, .86) 58%, rgba(197, 193, 185, .22) 100%),
    var(--ccc-page) !important;
  color: var(--ccc-ink) !important;
  border-bottom: 1px solid var(--ccc-line) !important;
}

.ccc-marketing-page main > .hero::before,
.ccc-marketing-page main > header.hero::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 20%;
  right: clamp(-160px, -8vw, -60px);
  width: min(52vw, 720px);
  aspect-ratio: 1;
  border: 1px solid rgba(11, 11, 13, .10);
  border-radius: 50%;
  background:
    radial-gradient(circle at 42% 38%, rgba(248, 245, 239, .78), rgba(248, 245, 239, .14) 42%, transparent 69%),
    conic-gradient(from 210deg, transparent, rgba(225, 37, 27, .08), transparent 48%);
}

.ccc-marketing-page main > .hero::after,
.ccc-marketing-page main > header.hero::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: auto 0 0;
  height: 7px;
  background: linear-gradient(90deg, var(--ccc-red) 0 12%, var(--ccc-ink) 12% 27%, transparent 27%);
}

.ccc-marketing-page main > .hero :where(.hero-bg, .hero-glow, .hero-overlay) {
  opacity: .22 !important;
  filter: grayscale(.82) contrast(.92) !important;
  mix-blend-mode: multiply;
}

.ccc-marketing-page main > .hero :where(.hero-content, .hero-copy, .hero-wrap) {
  position: relative;
  z-index: 2;
}

.ccc-marketing-page main > .hero .hero-content {
  width: min(calc(100% - 40px), var(--ccc-container)) !important;
  max-width: var(--ccc-container) !important;
  margin-inline: auto !important;
  padding-inline: 0 !important;
  text-align: left !important;
}

.ccc-marketing-page main > .hero .hero-subtitle {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  max-width: min(100%, 54rem);
  color: var(--ccc-red) !important;
  font-size: clamp(.62rem, 1vw, .72rem) !important;
  font-weight: 650 !important;
  letter-spacing: .18em !important;
  line-height: 1.5 !important;
  text-align: left !important;
}

.ccc-marketing-page main > .hero .hero-subtitle::before {
  content: "";
  width: 30px;
  height: 2px;
  flex: none;
  background: var(--ccc-red);
}

.ccc-marketing-page main > .hero h1 {
  max-width: 10.8ch;
  margin: clamp(19px, 3vw, 34px) 0 24px !important;
  color: var(--ccc-ink) !important;
  font-family: var(--ccc-font-display) !important;
  font-size: clamp(3.25rem, 8.2vw, 8rem) !important;
  font-weight: 790 !important;
  letter-spacing: -.07em !important;
  line-height: .86 !important;
  text-align: left !important;
  text-transform: none !important;
}

.ccc-marketing-page main > .hero h1 span {
  color: var(--ccc-red) !important;
}

.ccc-marketing-page main > .hero :where(.hero-copy, p) {
  max-width: 57ch !important;
  margin-inline: 0 !important;
  color: #4f4f55 !important;
  font-size: clamp(1rem, 1.4vw, 1.18rem) !important;
  line-height: 1.75 !important;
  text-align: left !important;
}

.ccc-marketing-page main > .hero :where(.hero-copy, p) b,
.ccc-marketing-page main > .hero :where(.hero-copy, p) strong {
  color: var(--ccc-ink) !important;
}

.ccc-marketing-page main > .hero .ccc-hero-actions {
  justify-content: flex-start !important;
  max-width: 650px;
  margin-inline: 0 !important;
}

.ccc-marketing-page main > .hero :where(.ccc-action-primary, .hero-ctas a:first-child) {
  border-color: var(--ccc-ink) !important;
  border-radius: var(--ccc-radius-button) !important;
  background: var(--ccc-ink) !important;
  color: #fff !important;
  box-shadow: none !important;
}

.ccc-marketing-page main > .hero :where(.ccc-action-secondary, .hero-ctas a:not(:first-child)) {
  border-color: var(--ccc-line) !important;
  border-radius: var(--ccc-radius-button) !important;
  background: rgba(245, 242, 236, .58) !important;
  color: var(--ccc-ink) !important;
}

/* ---------- Helle Inhaltsbühne, Materialkarten bleiben unterscheidbar ---------- */
.ccc-marketing-page main > section:not(.hero) {
  position: relative;
  background-color: var(--ccc-page) !important;
  border-color: var(--ccc-line) !important;
}

.ccc-marketing-page main > section:not(.hero):nth-of-type(even) {
  background-color: var(--ccc-paper) !important;
}

.ccc-marketing-page main > section:not(.hero) :where(.section-header, .section-title, .section-intro) h2,
.ccc-marketing-page main > section:not(.hero) > :where(h2, h3) {
  color: var(--ccc-ink) !important;
}

.ccc-marketing-page main > section:not(.hero) :where(.section-header, .section-title, .section-intro) p {
  color: var(--ccc-muted) !important;
}

.ccc-marketing-page main :where(
  .bento-card,
  .side-card,
  .price-card,
  .addon-card,
  .trust-card,
  .value-card,
  .comparison-card,
  .gv-card,
  .workflow-box,
  .seo-box
) {
  border-color: var(--ccc-line) !important;
  border-radius: var(--ccc-radius-card) !important;
  box-shadow: var(--ccc-shadow-soft);
}

.ccc-marketing-page main :where(.section-header, .section-title, .section-intro) {
  max-width: var(--ccc-container);
}

.ccc-marketing-page main :where(.tech-bar, .proof) {
  border-color: var(--ccc-line) !important;
  background: var(--ccc-paper) !important;
  color: var(--ccc-ink) !important;
}

.ccc-marketing-page main :where(.tech-bar, .proof) :where(.tech-text, strong) {
  color: var(--ccc-ink) !important;
}

.ccc-marketing-page main :where(.tech-bar, .proof) :where(.tech-sub, span, p) {
  color: var(--ccc-muted) !important;
}

/* Menüs und Funktionspanels bleiben konzentriert dunkel. */
.ccc-marketing-page :where(.menu-overlay, .cart, .cart-overlay, .overlay, .acc-overlay, .legal-overlay, .modal) {
  color-scheme: dark;
}

.ccc-marketing-page .menu-overlay .dashboard-panel {
  border: 1px solid var(--ccc-line-inverse) !important;
  border-radius: var(--ccc-radius-panel) !important;
  background: rgba(11, 11, 13, .96) !important;
  box-shadow: 0 30px 100px rgba(0, 0, 0, .42) !important;
}

.ccc-marketing-page .menu-overlay .menu-link {
  font-family: var(--ccc-font-display) !important;
  letter-spacing: -.035em !important;
  text-transform: none !important;
}

.ccc-marketing-page .menu-overlay .menu-link .num {
  color: var(--ccc-red) !important;
  letter-spacing: .08em !important;
}

/* ---------- Einheitlicher Footer ---------- */
.ccc-marketing-page footer {
  border-top: 1px solid var(--ccc-line-inverse) !important;
  background: var(--ccc-night) !important;
  color: #bdbdc2 !important;
  font-family: var(--ccc-font-body) !important;
}

.ccc-marketing-page footer :where(h2, h3, h4, strong) {
  color: #fff !important;
  font-family: var(--ccc-font-display) !important;
}

.ccc-marketing-page footer a {
  color: #c9c9ce !important;
}

.ccc-marketing-page footer a:hover {
  color: #fff !important;
}

/* ---------- Rechtliche Seiten ---------- */
.ccc-marketing-page.ccc-legal-page {
  min-height: 100svh;
  padding-top: var(--ccc-header-height);
}

.ccc-marketing-page.ccc-legal-page main.wrap {
  width: min(calc(100% - 40px), 940px);
  max-width: 940px;
  padding: clamp(64px, 9vw, 120px) 0;
  background: transparent;
}

.ccc-marketing-page.ccc-legal-page main.wrap > .kicker {
  color: var(--ccc-red) !important;
  letter-spacing: .18em !important;
}

.ccc-marketing-page.ccc-legal-page main.wrap > h1 {
  max-width: 15ch;
  color: var(--ccc-ink) !important;
  font-size: clamp(2.5rem, 7vw, 5.6rem) !important;
  line-height: .94 !important;
  overflow-wrap: break-word;
  hyphens: manual;
}

.ccc-marketing-page.ccc-legal-page main.wrap > .lead {
  max-width: 72ch;
  color: var(--ccc-muted) !important;
  font-size: 1.05rem;
}

.ccc-marketing-page.ccc-legal-page main.wrap > .card {
  margin-top: 40px;
  padding: clamp(24px, 5vw, 58px) !important;
  border: 1px solid var(--ccc-line) !important;
  border-radius: var(--ccc-radius-panel) !important;
  background: var(--ccc-paper) !important;
  color: var(--ccc-ink) !important;
  box-shadow: var(--ccc-shadow-soft);
}

.ccc-marketing-page.ccc-legal-page main.wrap > .card :where(h2, h3, h4, b, strong) {
  color: var(--ccc-ink) !important;
}

.ccc-marketing-page.ccc-legal-page main.wrap > .card :where(p, li) {
  color: #505057 !important;
}

/* ---------- Mobile ---------- */
@media (max-width: 780px) {
  :root {
    --ccc-header-height: 72px;
  }

  .ccc-marketing-page .ccc-site-header {
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
  }

  .ccc-marketing-page .ccc-site-header :where(.nav-inner, .header-inner, .wrap) {
    width: min(calc(100% - 24px), var(--ccc-container)) !important;
  }

  .ccc-marketing-page .ccc-site-header :where(.nav-logo, .brand) img {
    width: 42px !important;
    height: 42px !important;
  }

  .ccc-marketing-page .ccc-site-header .nav-brand b {
    font-size: .84rem !important;
  }

  .ccc-marketing-page .ccc-site-header .nav-brand small,
  .ccc-marketing-page .ccc-site-header .pill {
    display: none !important;
  }

  .ccc-marketing-page .ccc-site-header :where(.cart-icon, .cart-icon-wrap) {
    min-width: 42px;
    min-height: 42px;
  }

  .ccc-marketing-page .ccc-site-header .menu-trigger {
    min-width: 74px;
    min-height: 42px;
    padding-inline: 11px !important;
  }

  .ccc-marketing-page .ccc-site-header .menu-trigger > span {
    font-size: 0 !important;
  }

  .ccc-marketing-page .ccc-site-header .menu-trigger > span::after {
    content: "Menü";
    font-size: .62rem;
  }

  .ccc-marketing-page main > .hero,
  .ccc-marketing-page main > header.hero {
    min-height: auto !important;
    padding-top: calc(var(--ccc-header-height) + 64px) !important;
    padding-bottom: 84px !important;
    background:
      linear-gradient(180deg, rgba(242, 239, 233, .96) 0 64%, rgba(242, 239, 233, .84) 100%),
      var(--ccc-page) !important;
  }

  .ccc-marketing-page main > .hero::before,
  .ccc-marketing-page main > header.hero::before {
    top: auto;
    right: -34%;
    bottom: -9%;
    width: 92vw;
    opacity: .64;
  }

  .ccc-marketing-page main > .hero .hero-content {
    width: min(calc(100% - 32px), var(--ccc-container)) !important;
  }

  .ccc-marketing-page main > .hero h1 {
    max-width: 100%;
    font-size: clamp(2.45rem, 12.4vw, 4.1rem) !important;
    letter-spacing: -.065em !important;
    line-height: .88 !important;
    overflow-wrap: normal;
    word-break: normal;
    hyphens: manual;
  }

  .ccc-marketing-page main > .hero h1 br {
    display: block;
  }

  .ccc-marketing-page.ccc-interior-page main > .hero h1 {
    max-width: 100%;
    font-size: clamp(2.45rem, 12vw, 3.5rem) !important;
    text-wrap: balance;
  }

  .ccc-marketing-page.ccc-interior-page main > .hero h1 br {
    display: block;
  }

  .ccc-marketing-page.ccc-interior-page .workflow-box,
  .ccc-marketing-page.ccc-interior-page .workflow-box .section-header,
  .ccc-marketing-page.ccc-interior-page .workflow-box .section-header h2 {
    max-width: 100%;
    overflow-x: clip;
  }

  .ccc-marketing-page.ccc-interior-page .workflow-box .section-header h2 {
    font-size: clamp(1.75rem, 8.6vw, 2.65rem) !important;
    hyphens: manual;
  }

  .ccc-marketing-page main > .hero :where(.hero-copy, p) {
    max-width: 35ch !important;
    font-size: 1rem !important;
    line-height: 1.68 !important;
  }

  .ccc-marketing-page main > .hero .ccc-hero-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  .ccc-marketing-page main > .hero .ccc-hero-actions > * {
    width: 100% !important;
    min-width: 0 !important;
  }

  .ccc-marketing-page .menu-overlay .dashboard-panel {
    width: min(calc(100% - 20px), 720px) !important;
    max-height: calc(100svh - 20px) !important;
    border-radius: 20px !important;
  }
}

/* ---------- Dunkle Material- und Funktionsflächen: explizite Kontraste ---------- */
.ccc-marketing-page :where(.cart, .cart-overlay) {
  visibility: hidden;
  pointer-events: none;
  color: #f4f1ea !important;
}

.ccc-marketing-page :where(.cart, .cart-overlay).active {
  visibility: visible;
  pointer-events: auto;
}

.ccc-marketing-page :where(.cart, .cart-overlay) :where(h3, .name, .total, strong) {
  color: #f4f1ea !important;
}

.ccc-marketing-page :where(#emptyMsg, #cart-empty-msg) > :first-child {
  color: #f4f1ea !important;
}

.ccc-marketing-page :where(#emptyMsg, #cart-empty-msg) > :not(:first-child) {
  color: #a7a7ad !important;
}

.ccc-marketing-page #visual :where(.stage, .viz-stage) {
  background:
    linear-gradient(135deg, rgba(255, 255, 255, .045), rgba(225, 37, 27, .025) 48%, transparent 72%),
    #111216 !important;
}

.ccc-marketing-page #visual .radio .h,
.ccc-marketing-page #packages :where(.pkg, .bento-card),
.ccc-marketing-page #packages :where(.pkg, .bento-card) :where(h3, .price, .val, [data-price]),
.ccc-marketing-page #garantie-check :where(.gv-card, .gv-h) {
  color: #f4f1ea !important;
}

.ccc-marketing-page.ccc-interior-page #interieur3d :where(.iv-card, .iv-t) {
  color: #f4f1ea !important;
}

.ccc-marketing-page.ccc-interior-page .price-card {
  background: #111114 !important;
  color: #f4f1ea !important;
}

.ccc-marketing-page.ccc-interior-page .price-card:nth-child(2) {
  background:
    linear-gradient(180deg, rgba(225, 37, 27, .14), rgba(17, 17, 20, .98) 58%),
    #111114 !important;
}

.ccc-marketing-page.ccc-interior-page .price-card :where(.p-title, .p-price, strong),
.ccc-marketing-page.ccc-interior-page .workflow-box .section-header h2 {
  color: #f4f1ea !important;
}

.ccc-marketing-page.ccc-interior-page .process-grid .step h4 {
  color: var(--ccc-ink) !important;
}

.ccc-marketing-page #brands .brand {
  border-color: rgba(255, 255, 255, .12) !important;
  background: #17171a !important;
}

.ccc-marketing-page #brands .brand .fallback {
  color: #f4f1ea !important;
}

.ccc-marketing-page #brands :where(.value-card, .seo-strip, .seo-box),
.ccc-marketing-page #konfigurator .panel,
.ccc-marketing-page #services .price-card {
  border-color: rgba(255, 255, 255, .12) !important;
  background:
    radial-gradient(480px 220px at 100% 0, rgba(225, 37, 27, .09), transparent 66%),
    #151518 !important;
  color: #f4f1ea !important;
}

.ccc-marketing-page #brands :where(.value-card, .seo-strip, .seo-box) :where(h3, h4, b, strong),
.ccc-marketing-page #konfigurator .panel :where(h3, b, strong),
.ccc-marketing-page #services .price-card :where(h3, .price, b, strong) {
  color: #f4f1ea !important;
}

.ccc-marketing-page #konfigurator .cfg-pill.active {
  background:
    linear-gradient(180deg, rgba(225, 37, 27, .2), rgba(225, 37, 27, .06)),
    #0d0d0f !important;
}

.ccc-marketing-page .hero-badges .badge {
  border-color: var(--ccc-line) !important;
  background: rgba(11, 11, 13, .07) !important;
  color: var(--ccc-ink) !important;
}

.ccc-marketing-page .hero-quote {
  color: var(--ccc-muted) !important;
}

.ccc-marketing-page .hero-quote b {
  color: var(--ccc-ink) !important;
}

@media (max-width: 380px) {
  .ccc-marketing-page .ccc-site-header .nav-brand small {
    display: none !important;
  }

  .ccc-marketing-page .ccc-site-header .nav-brand b {
    max-width: 130px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .ccc-marketing-page main > .hero h1 {
    font-size: clamp(2.3rem, 12vw, 3.5rem) !important;
  }

  .ccc-marketing-page.ccc-interior-page main > .hero h1 {
    font-size: clamp(2.25rem, 11.8vw, 3.25rem) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ccc-marketing-page *,
  .ccc-marketing-page *::before,
  .ccc-marketing-page *::after {
    scroll-behavior: auto !important;
  }
}

/* ---------- Verifizierte Dark-Surface-Kontraste ---------- */
.ccc-marketing-page .menu-overlay .menu-link {
  color: #f4f1ea !important;
}

.ccc-marketing-page .menu-overlay .menu-link:hover,
.ccc-marketing-page .menu-overlay .menu-link:focus-visible {
  color: #ff6a5e !important;
}

.ccc-marketing-page :where(.menu-close, .modal-close, .sig-close) {
  color: #d1cdc5 !important;
}

.ccc-marketing-page :where(#modelStatus, #selCount) {
  color: #f4f1ea !important;
}

.ccc-marketing-page #services :where(.bento-title, details summary, details summary span) {
  color: #f4f1ea !important;
}

.ccc-marketing-page #faq details summary,
.ccc-marketing-page #faq details summary span {
  color: #f4f1ea !important;
}

.ccc-marketing-page .footer > :last-child,
.ccc-marketing-page .footer .copyright {
  color: #85858c !important;
}

@media print {
  .ccc-marketing-page .ccc-site-header {
    display: none !important;
  }

  .ccc-marketing-page {
    background: #fff !important;
    color: #111 !important;
  }
}
