/**
 * ENERTECT Corporate Design
 * Freigegebene globale Farb- und Verlaufsbasis.
 *
 * Diese Datei veraendert keine Divi-Strukturen. Sie stellt gemeinsame
 * Designvariablen bereit und vereinheitlicht wiederverwendete Komponenten.
 */

:root {
  --enertect-night: #0e1216;
  --enertect-ink: #10141b;
  --enertect-body: #4b5752;
  --enertect-deep-green: #166936;
  --enertect-energy-green: #2e8451;
  --enertect-deep-teal: #2e5c4f;
  --enertect-orange: #f47a24;
  --enertect-warm-orange: #ef8933;
  --enertect-orange-deep: #d75c27;
  --enertect-soft-green: #f4f8f1;
  --enertect-softer-green: #f8fbf6;
  --enertect-accent-green: #68b94c;
  --enertect-white: #fff;

  /* Rueckwaertskompatible Variablen der bestehenden ENERTECT-Komponenten. */
  --enertect-green: var(--enertect-energy-green);
  --enertect-green-dark: var(--enertect-deep-green);
  --enertect-deep: var(--enertect-night);
  --enertect-muted: var(--enertect-soft-green);
  --enertect-line: rgba(46, 92, 79, 0.18);

  --enertect-gradient-green:
    linear-gradient(
      180deg,
      var(--enertect-accent-green) 0%,
      var(--enertect-energy-green) 52%,
      var(--enertect-deep-green) 100%
    );
  --enertect-gradient-green-hover:
    linear-gradient(180deg, #78c766 0%, #37945b 52%, #19723b 100%);
  --enertect-gradient-orange:
    linear-gradient(
      180deg,
      var(--enertect-warm-orange) 0%,
      var(--enertect-orange) 52%,
      var(--enertect-orange-deep) 100%
    );
  --enertect-gradient-orange-hover:
    linear-gradient(180deg, #f6a04e 0%, #fb8332 52%, #df642f 100%);
  --enertect-gradient-anthracite:
    linear-gradient(180deg, #303a40 0%, #171e23 52%, #080c0f 100%);
  --enertect-gradient-anthracite-hover:
    linear-gradient(180deg, #3b474e 0%, #20292f 52%, #0d1216 100%);
  --enertect-gradient-dark:
    linear-gradient(
      135deg,
      var(--enertect-night) 0%,
      #10221d 54%,
      var(--enertect-deep-green) 100%
    );
}

/* Standardaktionen: Beratung und Energie. */
:is(.enertect-btn, .bm-divi-button, .ems-btn, .epv-btn):not(.is-orange):not(.is-dark):not(.is-light) {
  border-color: rgba(22, 105, 54, 0.92) !important;
  background: var(--enertect-gradient-green) !important;
  color: var(--enertect-white) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.28),
    0 9px 20px rgba(22, 105, 54, 0.28),
    0 2px 0 rgba(9, 64, 31, 0.32) !important;
}

:is(.enertect-btn, .bm-divi-button, .ems-btn, .epv-btn):not(.is-orange):not(.is-dark):not(.is-light):hover {
  border-color: var(--enertect-deep-green) !important;
  background: var(--enertect-gradient-green-hover) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.34),
    0 12px 26px rgba(22, 105, 54, 0.34),
    0 0 0 3px rgba(46, 132, 81, 0.12) !important;
}

/* Sicherheit und aktive Handlungen. */
body.enertect-cd-approved-v1 :is(.enertect-btn, .bm-divi-button).is-orange,
.enertect-site-header .enertect-btn.enertect-header-cta.is-orange,
.enertect-hero .enertect-hero-actions .enertect-btn.is-orange,
.enertect-security.enertect-security-hero .enertect-btn.is-orange,
.enertect-home-card.is-security .enertect-btn,
.enertect-security .enertect-btn,
.etv-form-card .ff-btn-submit {
  border-color: rgba(215, 92, 39, 0.94) !important;
  background: var(--enertect-gradient-orange) !important;
  color: var(--enertect-white) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.3),
    0 9px 20px rgba(215, 92, 39, 0.3),
    0 2px 0 rgba(128, 51, 22, 0.3) !important;
}

body.enertect-cd-approved-v1 :is(.enertect-btn, .bm-divi-button).is-orange:hover,
.enertect-site-header .enertect-btn.enertect-header-cta.is-orange:hover,
.enertect-hero .enertect-hero-actions .enertect-btn.is-orange:hover,
.enertect-security.enertect-security-hero .enertect-btn.is-orange:hover,
.enertect-home-card.is-security .enertect-btn:hover,
.enertect-security .enertect-btn:hover,
.etv-form-card .ff-btn-submit:hover {
  border-color: var(--enertect-orange-deep) !important;
  background: var(--enertect-gradient-orange-hover) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.36),
    0 12px 26px rgba(215, 92, 39, 0.36),
    0 0 0 3px rgba(244, 122, 36, 0.12) !important;
}

/* Neutrale Zweitaktion. */
:is(.enertect-btn, .bm-divi-button).is-dark {
  border-color: rgba(46, 92, 79, 0.72) !important;
  background: var(--enertect-gradient-anthracite) !important;
  color: var(--enertect-white) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.18),
    0 8px 18px rgba(14, 18, 22, 0.24),
    0 2px 0 rgba(0, 0, 0, 0.28) !important;
}

:is(.enertect-btn, .bm-divi-button).is-dark:hover {
  border-color: var(--enertect-deep-teal) !important;
  background: var(--enertect-gradient-anthracite-hover) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.24),
    0 11px 24px rgba(14, 18, 22, 0.3),
    0 0 0 3px rgba(46, 92, 79, 0.12) !important;
}

/* Textakzente bleiben auf dunklen Buehnen deutlich sichtbar. */
.enertect-hero h1 .green,
.enertect-hero .enertect-kicker,
.enertect-story-top .enertect-kicker {
  color: var(--enertect-accent-green) !important;
}

.enertect-hero h1 .orange,
.enertect-security h1 span,
.enertect-security .orange {
  color: var(--enertect-orange) !important;
}

.enertect-kicker {
  color: var(--enertect-deep-green);
}

/* Wiederverwendete Iconflaechen aus der Logo-Farbwelt. */
:is(
  .enertect-card-badge,
  .enertect-home-card-icon,
  .eh-icon,
  .ems-icon,
  .etv-alt-icon,
  .enertect-voice-trust .enertect-voice-icon
) {
  border-color: rgba(104, 185, 76, 0.72) !important;
  background: linear-gradient(
    145deg,
    rgba(104, 185, 76, 0.34) 0%,
    rgba(46, 132, 81, 0.5) 58%,
    rgba(22, 105, 54, 0.64) 100%
  ) !important;
  color: var(--enertect-white) !important;
}

.enertect-home-card.is-security .enertect-home-card-icon,
.enertect-security-icon,
.enertect-security-step strong {
  border-color: rgba(239, 137, 51, 0.9) !important;
  background: linear-gradient(
    145deg,
    rgba(239, 137, 51, 0.42) 0%,
    rgba(244, 122, 36, 0.64) 56%,
    rgba(215, 92, 39, 0.78) 100%
  ) !important;
  color: var(--enertect-white) !important;
}

/* Ruhige dunkle Systemflaechen. */
.enertect-site-header.is-scrolled,
.enertect-site-header.is-open {
  background: rgba(14, 18, 22, 0.94) !important;
}

.enertect-site-footer {
  background: var(--enertect-gradient-dark) !important;
}

/* Formulare und native Fokuszustaende. */
:is(
  .etv-form-card input,
  .etv-form-card select,
  .etv-form-card textarea,
  .fluentform input,
  .fluentform select,
  .fluentform textarea
):focus {
  border-color: var(--enertect-energy-green) !important;
  box-shadow: 0 0 0 3px rgba(46, 132, 81, 0.14) !important;
  outline: 0;
}

@media (prefers-reduced-motion: no-preference) {
  :is(.enertect-btn, .bm-divi-button, .ems-btn, .epv-btn) {
    transition:
      background 0.2s ease,
      border-color 0.2s ease,
      box-shadow 0.2s ease,
      transform 0.2s ease;
  }

  :is(.enertect-btn, .bm-divi-button, .ems-btn, .epv-btn):hover {
    transform: translateY(-1px);
  }
}
