/* Mirrorgesture — dunkle Kfz-Diagnose-Palette: #0F172A, Akzent #38BDF8, Zusatz #22C55E, Hintergrund #020617, Text #E2E8F0 */
:root {
  --primary-50: #f0f9ff;
  --primary-100: #e0f2fe;
  --primary-200: #bae6fd;
  --primary-300: #7dd3fc;
  --primary-400: #38bdf8;
  --primary-500: #38bdf8;
  --primary-600: #0284c7;
  --primary-700: #0369a1;
  --primary-800: #075985;
  --primary-900: #0c4a6e;
  --primary-950: #082f49;
  --primary-rgb: 56, 189, 248;
  --accent-50: #f0fdf4;
  --accent-100: #dcfce7;
  --accent-200: #bbf7d0;
  --accent-300: #86efac;
  --accent-400: #4ade80;
  --accent-500: #22c55e;
  --accent-600: #16a34a;
  --accent-700: #15803d;
  --accent-800: #166534;
  --accent-900: #14532d;
  --accent-rgb: 34, 197, 94;
  --neutral-50: #f8fafc;
  --neutral-100: #f1f5f9;
  --neutral-200: #e2e8f0;
  --neutral-300: #cbd5e1;
  --neutral-400: #94a3b8;
  --neutral-500: #64748b;
  --neutral-600: #475569;
  --neutral-700: #334155;
  --neutral-800: #1e293b;
  --neutral-900: #0f172a;
  --neutral-950: #020617;
  --surface-primary: #020617;
  --surface-secondary: #0f172a;
  --surface-accent: #1e293b;
  --text-primary: #e2e8f0;
  --text-secondary: #94a3b8;
  --text-accent: #38bdf8;
  --button-primary-bg: #38bdf8;
  --button-primary-text: #020617;
  --button-primary-text-rgb: 2, 6, 23;
  --button-secondary-bg: #1e293b;
  --button-secondary-text: #e2e8f0;
  --border-light: #334155;
  --border-medium: #475569;
}

body {
  background-color: var(--surface-primary);
  color: var(--text-primary);
}

.header-style {
  --header-accent: #38bdf8;
  background: #0f172a;
  border-bottom: 1px solid #334155;
}

.header-style .brand-link,
.header-style .nav-link,
.header-style .nav-link-mobile {
  color: #e2e8f0;
}

.header-style .nav-link:hover,
.header-style .nav-link-mobile:hover {
  color: #38bdf8;
}

.header-style .hamburger-line {
  background: #e2e8f0;
}

.header-style .mobile-menu-overlay {
  background: rgba(2, 6, 23, 0.97);
}

.hero-section-alt,
.usp-section,
.about-section,
.services-section,
.leadgen-section-secondary,
.contact-section-modern,
#blog {
  background: var(--surface-primary);
}

.hero-title,
.content_section_title,
.light_hero_title {
  color: #e2e8f0;
}

.hero-subtitle,
.premium_section_subtitle,
.studio_section_subtitle {
  color: #94a3b8;
}

.hero-description,
.bright_body_base,
.studio_body_large {
  color: #cbd5e1;
}

.usp-card,
.service-card,
.about-feature-card,
.leadgen-form-card,
.form-card,
.info-card,
.blog-card {
  background: #0f172a;
  border: 1px solid #334155;
}

.usp-value-badge,
.btn-leadgen-submit,
.btn-submit {
  background: linear-gradient(135deg, #38bdf8 0%, #0284c7 100%);
  color: #020617;
}

.service-cta,
.blog-card-link,
a {
  color: #38bdf8;
}

.service-cta:hover,
.blog-card-link:hover {
  color: #22c55e;
}

.feature-icon {
  background: rgba(56, 189, 248, 0.15);
  color: #38bdf8;
}

.badge-dot {
  background: #22c55e;
}

.footer-style {
  background: #0f172a;
  border-top: 1px solid #334155;
}

.footer-sitename,
.footer-section-title,
.column-title {
  color: #e2e8f0;
}

.footer-description,
.footer-links-list a,
.contact-details,
.contact-text {
  color: #94a3b8;
}

.footer-links-list a:hover {
  color: #38bdf8;
}

.site33-important-info {
  background: #020617;
  padding: 3rem 0;
}

.site33-important-info-card {
  background: #0f172a;
  border: 1px solid #334155;
  border-left: 4px solid #38bdf8;
  border-radius: 12px;
  padding: 2rem 2.5rem;
}

.site33-important-info-title {
  color: #e2e8f0;
  font-size: 1.35rem;
  margin-bottom: 1.25rem;
}

.site33-disclaimer-above-footer p {
  color: #94a3b8;
  margin-bottom: 1rem;
  line-height: 1.65;
}

.site33-disclaimer-above-footer p:last-child {
  margin-bottom: 0;
}

.form-control,
.form-select {
  background: #1e293b;
  border-color: #475569;
  color: #e2e8f0;
}

.form-control:focus,
.form-select:focus {
  background: #1e293b;
  border-color: #38bdf8;
  color: #e2e8f0;
  box-shadow: 0 0 0 0.2rem rgba(56, 189, 248, 0.25);
}

.form-floating > label {
  color: #94a3b8;
}

.accordion-item {
  background: #0f172a;
  border-color: #334155;
}

.accordion-button {
  background: #1e293b;
  color: #e2e8f0;
}

.accordion-button:not(.collapsed) {
  background: #0f172a;
  color: #38bdf8;
}

.accordion-body {
  background: #0f172a;
  color: #94a3b8;
}

.legal-content h1,
.legal-content h2,
.legal-content h3 {
  color: #e2e8f0;
}

.legal-content p,
.legal-content li {
  color: #94a3b8;
}

.legal-content a {
  color: #38bdf8;
}
