/* Helle Lernplattform Akkumulator/Elektrik — #2563EB / #F59E0B / #FFFFFF / #1F2937 */
:root {
  --imm-bg-deep: #ffffff;
  --imm-bg-panel: #f8fafc;
  --imm-text: #1f2937;
  --imm-muted: #6b7280;
  --imm-accent: #2563eb;
  --imm-accent-2: #f59e0b;
  --imm-border: rgba(31, 41, 55, 0.12);
  --surface-primary: #ffffff;
  --surface-secondary: #f8fafc;
  --surface-accent: #eff6ff;
  --text-primary: #1f2937;
  --text-secondary: #6b7280;
  --text-accent: #2563eb;
  --primary-500: #2563eb;
  --primary-600: #1d4ed8;
  --primary-rgb: 37, 99, 235;
  --accent-500: #f59e0b;
  --button-primary-bg: #2563eb;
  --button-primary-text: #ffffff;
  --button-secondary-bg: #ffffff;
  --button-secondary-text: #2563eb;
  --shadow-card: 0 14px 44px rgba(37, 99, 235, 0.07);
}

html,
body {
  background-color: #ffffff !important;
  color: #1f2937 !important;
}

.site-header-light.site-header-bar {
  background: rgba(255, 255, 255, 0.98) !important;
  border-bottom: 1px solid var(--imm-border);
}

.site-header-light .nav-link,
.site-header-light .navbar-brand span {
  color: #1f2937 !important;
}

.site-header-light .nav-link:hover,
.site-header-light .nav-link.active {
  color: #2563eb !important;
}

.site-header-light .navbar-toggler svg {
  stroke: #1f2937;
}

.site-header-light .dropdown-menu {
  background: #ffffff;
  border: 1px solid var(--imm-border);
  box-shadow: var(--shadow-card);
}

.site-header-light .dropdown-item {
  color: #1f2937;
}

.site-header-light .dropdown-item:hover {
  background: #eff6ff;
  color: #2563eb;
}

.hero-professional-blue-01 {
  background: linear-gradient(145deg, #ffffff 0%, #eff6ff 45%, #fff7ed 100%) !important;
}

.hero-professional-blue-01 .bold_hero_title,
.hero-professional-blue-01 .pro_hero_title {
  color: #1f2937 !important;
}

.hero-professional-blue-01 .base_hero_subtitle,
.hero-professional-blue-01 .hero-description {
  color: #4b5563 !important;
}

.btn-primary {
  background-color: #2563eb !important;
  border-color: #2563eb !important;
}

.btn-primary:hover {
  background-color: #1d4ed8 !important;
  border-color: #1d4ed8 !important;
}

.btn-outline-secondary {
  color: #2563eb !important;
  border-color: #2563eb !important;
}

.btn-outline-secondary:hover {
  background: #eff6ff !important;
}

.usp-card,
.leadgen-form-card,
.about-feature,
.blog-card,
.service-item {
  background: #ffffff !important;
  border-color: var(--imm-border) !important;
}

.usp-value-badge .top_overline,
.usp-value-badge span {
  color: #f59e0b !important;
}

.footer-primary {
  background: #f1f5f9 !important;
  color: #1f2937 !important;
}

.footer-primary .footer-brand-title,
.footer-primary .footer-section-title {
  color: #1f2937 !important;
}

.footer-primary .footer-brand-description,
.footer-primary .footer-copyright-text {
  color: #4b5563 !important;
}

.footer-primary a {
  color: #2563eb !important;
}

.site42-important-info-card {
  background: #ffffff;
  border: 1px solid var(--imm-border);
  border-left: 4px solid #f59e0b;
  border-radius: 12px;
  padding: 2rem;
  box-shadow: var(--shadow-card);
}

.site42-important-info-title {
  color: #1f2937;
  font-size: 1.35rem;
  margin-bottom: 1rem;
}

.site42-disclaimer-above-footer p {
  color: #4b5563;
  margin-bottom: 1rem;
  line-height: 1.65;
}

.dark_section_title,
.fresh_section_title {
  color: #1f2937 !important;
}

.theme_body_base,
.design_body_large {
  color: #1f2937;
}

.text-muted {
  color: #6b7280 !important;
}

.services-section-primary .section-title {
  color: #1f2937 !important;
}

.article-container h1,
.article-container h2 {
  color: #1f2937;
}

.contact-form-wrapper,
.contact-info-wrapper {
  background: #ffffff !important;
  border-color: var(--imm-border) !important;
}

.accordion-button:not(.collapsed) {
  background-color: #eff6ff !important;
  color: #1f2937 !important;
}

.services-section-primary .header-column {
  background: #eff6ff !important;
}

.services-section-primary .services-column {
  background: #ffffff !important;
}

.map-embed-wrap {
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid var(--imm-border);
}

.map-embed-wrap iframe {
  width: 100%;
  min-height: 360px;
  border: 0;
}

.about-team-photo {
  border-radius: 50%;
  object-fit: cover;
  border: 3px solid #eff6ff;
}
