.elementor-kit-9{--e-global-color-primary:#10233F;--e-global-color-secondary:#18273D;--e-global-color-text:#5B6674;--e-global-color-accent:#DB8418;--e-global-color-b1f268f:#FFFFFF;--e-global-color-eff106f:#000000;--e-global-color-e8ce2ff:#DCDCDC;--e-global-color-353d35a:#FF805F4F;--e-global-color-19927c4:#14133B80;--e-global-color-289501b:#E5E5E5;--e-global-color-cce3c24:#F7F8FD;--e-global-color-9206269:#1E1E35;--e-global-typography-primary-font-family:"Inter";--e-global-typography-primary-font-size:50px;--e-global-typography-primary-font-weight:700;--e-global-typography-primary-line-height:1.2em;--e-global-typography-secondary-font-family:"Inter";--e-global-typography-secondary-font-size:36px;--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:26px;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-size:16px;--e-global-typography-accent-font-weight:500;--e-global-typography-accent-line-height:1.2em;--e-global-typography-4e955ba-font-family:"IBM Plex Sans";--e-global-typography-4e955ba-font-size:15px;--e-global-typography-4e955ba-font-weight:normal;--e-global-typography-2ffe066-font-family:"IBM Plex Sans";--e-global-typography-2ffe066-font-size:12px;--e-global-typography-2ffe066-font-weight:normal;--e-global-typography-76a9c06-font-family:"IBM Plex Sans";--e-global-typography-76a9c06-font-size:50px;--e-global-typography-76a9c06-font-weight:bold;--e-global-typography-76a9c06-line-height:60px;--e-global-typography-6e7e716-font-family:"Roboto";--e-global-typography-6e7e716-font-size:15px;--e-global-typography-6e7e716-font-weight:600;--e-global-typography-be4db90-font-family:"IBM Plex Sans";--e-global-typography-be4db90-font-size:20px;--e-global-typography-be4db90-font-weight:600;--e-global-typography-483d1e4-font-family:"Roboto";--e-global-typography-483d1e4-font-size:15px;--e-global-typography-483d1e4-font-weight:500;--e-global-typography-bf265a9-font-family:"IBM Plex Sans";--e-global-typography-bf265a9-font-size:13px;--e-global-typography-bf265a9-font-weight:normal;--e-global-typography-fcec9ae-font-family:"IBM Plex Sans";--e-global-typography-fcec9ae-font-size:36px;--e-global-typography-fcec9ae-font-weight:bold;--e-global-typography-fcec9ae-line-height:1.3em;--e-global-typography-6963b69-font-family:"IBM Plex Sans";--e-global-typography-6963b69-font-size:22px;--e-global-typography-6963b69-font-weight:500;--e-global-typography-353173a-font-family:"IBM Plex Sans";--e-global-typography-353173a-font-size:12px;--e-global-typography-353173a-font-weight:normal;--e-global-typography-4ee62cf-font-family:"IBM Plex Sans";--e-global-typography-4ee62cf-font-size:16px;--e-global-typography-4ee62cf-font-weight:600;--e-global-typography-4ee62cf-line-height:26px;--e-global-typography-6e046fc-font-family:"IBM Plex Sans";--e-global-typography-6e046fc-font-size:80px;--e-global-typography-6e046fc-font-weight:bold;--e-global-typography-6e046fc-line-height:1.3em;--e-global-typography-f3df98a-font-family:"IBM Plex Sans";--e-global-typography-f3df98a-font-size:50px;--e-global-typography-f3df98a-font-weight:bold;--e-global-typography-f3df98a-line-height:1.3em;color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-9 button,.elementor-kit-9 input[type="button"],.elementor-kit-9 input[type="submit"],.elementor-kit-9 .elementor-button{background-color:var( --e-global-color-primary );font-family:var( --e-global-typography-483d1e4-font-family ), Sans-serif;font-size:var( --e-global-typography-483d1e4-font-size );font-weight:var( --e-global-typography-483d1e4-font-weight );color:var( --e-global-color-b1f268f );}.elementor-kit-9 e-page-transition{background-color:#FFBC7D;}.elementor-kit-9 a{color:var( --e-global-color-primary );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-9 h1{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-9 h2{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-76a9c06-font-family ), Sans-serif;font-size:var( --e-global-typography-76a9c06-font-size );font-weight:var( --e-global-typography-76a9c06-font-weight );line-height:var( --e-global-typography-76a9c06-line-height );}.elementor-kit-9 h3{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-6e7e716-font-family ), Sans-serif;font-size:var( --e-global-typography-6e7e716-font-size );font-weight:var( --e-global-typography-6e7e716-font-weight );}.elementor-kit-9 h4{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-be4db90-font-family ), Sans-serif;font-size:var( --e-global-typography-be4db90-font-size );font-weight:var( --e-global-typography-be4db90-font-weight );}.elementor-kit-9 h5{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-9 h6{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-9 label{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-9 input:not([type="button"]):not([type="submit"]),.elementor-kit-9 textarea,.elementor-kit-9 .elementor-field-textual{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );color:var( --e-global-color-text );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-header .site-branding .site-logo img{width:170px;max-width:170px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-9{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-9 a{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-9 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-9 h2{font-size:var( --e-global-typography-76a9c06-font-size );line-height:var( --e-global-typography-76a9c06-line-height );}.elementor-kit-9 h3{font-size:var( --e-global-typography-6e7e716-font-size );}.elementor-kit-9 h4{font-size:var( --e-global-typography-be4db90-font-size );}.elementor-kit-9 h5{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-9 h6{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-9 button,.elementor-kit-9 input[type="button"],.elementor-kit-9 input[type="submit"],.elementor-kit-9 .elementor-button{font-size:var( --e-global-typography-483d1e4-font-size );}.elementor-kit-9 label{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-9 input:not([type="button"]):not([type="submit"]),.elementor-kit-9 textarea,.elementor-kit-9 .elementor-field-textual{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-9{--e-global-typography-primary-font-size:32px;--e-global-typography-76a9c06-font-size:30px;--e-global-typography-76a9c06-line-height:1.2em;--e-global-typography-fcec9ae-font-size:25px;--e-global-typography-6e046fc-font-size:25px;--e-global-typography-f3df98a-font-size:25px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-9 a{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-9 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-9 h2{font-size:var( --e-global-typography-76a9c06-font-size );line-height:var( --e-global-typography-76a9c06-line-height );}.elementor-kit-9 h3{font-size:var( --e-global-typography-6e7e716-font-size );}.elementor-kit-9 h4{font-size:var( --e-global-typography-be4db90-font-size );}.elementor-kit-9 h5{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-9 h6{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-9 button,.elementor-kit-9 input[type="button"],.elementor-kit-9 input[type="submit"],.elementor-kit-9 .elementor-button{font-size:var( --e-global-typography-483d1e4-font-size );}.elementor-kit-9 label{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-9 input:not([type="button"]):not([type="submit"]),.elementor-kit-9 textarea,.elementor-kit-9 .elementor-field-textual{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* =========================================
   ULTRA DESIGN – Energieberatung Kevin Eichhorn
   ========================================= */

:root {
  --ke-bg: #f4f7fb;
  --ke-bg-soft: #edf3fb;
  --ke-white: #ffffff;
  --ke-text: #10233f;
  --ke-muted: #5f6f86;

  --ke-blue: #0f5fbe;
  --ke-blue-dark: #0a4a94;
  --ke-blue-soft: #eaf3ff;

  --ke-orange: #f39a2d;
  --ke-orange-dark: #db8418;
  --ke-orange-soft: #fff3e6;

  --ke-line: rgba(16, 35, 63, 0.08);
  --ke-line-strong: rgba(16, 35, 63, 0.14);

  --ke-shadow-sm: 0 10px 25px rgba(16, 35, 63, 0.05);
  --ke-shadow-md: 0 20px 45px rgba(15, 95, 190, 0.10);
  --ke-shadow-lg: 0 28px 70px rgba(15, 95, 190, 0.14);

  --ke-radius-sm: 14px;
  --ke-radius-md: 20px;
  --ke-radius-lg: 28px;

  --ke-container: 1200px;
}

/* ===== Basis ===== */

html {
  scroll-behavior: smooth;
}

body {
  background:
    radial-gradient(circle at top left, rgba(15, 95, 190, 0.08), transparent 30%),
    radial-gradient(circle at bottom right, rgba(243, 154, 45, 0.08), transparent 30%),
    var(--ke-bg) !important;
  color: var(--ke-text);
  font-family: "Inter", Arial, sans-serif;
}

p {
  color: var(--ke-muted);
  line-height: 1.75;
}

h1, h2, h3, h4 {
  color: var(--ke-text);
  letter-spacing: -0.02em;
}

h1 {
  font-size: clamp(2.4rem, 5vw, 4.8rem);
  line-height: 0.98;
}

h2 {
  font-size: clamp(1.8rem, 4vw, 3rem);
  line-height: 1.08;
}

h3 {
  font-size: 1.15rem;
}

section,
.elementor-section,
.elementor-top-section {
  padding-top: 88px;
  padding-bottom: 88px;
}

.elementor-container,
.e-con-inner,
.e-con-boxed > .e-con-inner {
  max-width: var(--ke-container) !important;
}

/* ===== Einheitliche Cards / Boxen ===== */

.elementor-column,
.e-con {
  display: flex;
}

.elementor-column > .elementor-widget-wrap,
.e-con > .e-con-inner,
.e-con {
  width: 100%;
}

.elementor-column > .elementor-widget-wrap {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.elementor-widget {
  width: 100%;
}

.ke-card,
.elementor-widget-wrap > .elementor-element:not(.elementor-widget-image):not(.elementor-widget-spacer),
.e-con > .elementor-element {
  position: relative;
}

.elementor-widget-wrap > .elementor-element,
.e-con > .elementor-element,
.ke-card {
  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease,
    border-color 0.3s ease,
    background 0.3s ease;
}

/* ===== Moderne Card-Optik ===== */

.ke-ultra-card,
.elementor-widget-wrap > .elementor-element.elementor-widget-heading,
.elementor-widget-wrap > .elementor-element.elementor-widget-text-editor,
.elementor-widget-wrap > .elementor-element.elementor-widget-icon-box,
.elementor-widget-wrap > .elementor-element.elementor-widget-image-box,
.elementor-widget-wrap > .elementor-element.elementor-widget-testimonial {
  background: rgba(255, 255, 255, 0.74);
  border: 1px solid var(--ke-line);
  border-radius: var(--ke-radius-md);
  box-shadow: var(--ke-shadow-sm);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

/* ===== Hover Glow ===== */

.ke-ultra-hover:hover,
.elementor-widget-wrap > .elementor-element.elementor-widget-icon-box:hover,
.elementor-widget-wrap > .elementor-element.elementor-widget-image-box:hover,
.elementor-widget-wrap > .elementor-element.elementor-widget-testimonial:hover {
  transform: translateY(-4px);
  box-shadow:
    0 20px 40px rgba(15, 95, 190, 0.12),
    0 0 24px rgba(243, 154, 45, 0.10);
  border-color: rgba(15, 95, 190, 0.18);
}

/* ===== Hero / erste Sektion ===== */

.elementor-location-header + .elementor,
body .elementor:first-of-type {
  position: relative;
}

.hero-section,
.ke-hero,
.elementor-section:first-of-type {
  padding-top: 56px !important;
  padding-bottom: 72px !important;
}

.hero-section .elementor-container,
.ke-hero .elementor-container,
.elementor-section:first-of-type .elementor-container {
  background: rgba(255, 255, 255, 0.84);
  border: 1px solid var(--ke-line);
  border-radius: var(--ke-radius-lg);
  box-shadow: var(--ke-shadow-md);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  padding: 38px !important;
}

/* ===== Bilder ===== */

.elementor-widget-image img,
img {
  border-radius: 18px;
}

.elementor-widget-image img {
  width: 100%;
  height: auto;
  object-fit: cover;
}

/* ===== Buttons ===== */

.elementor-button,
button,
input[type="submit"],
.wpforms-submit {
  min-height: 52px !important;
  border-radius: 14px !important;
  padding: 14px 22px !important;
  font-weight: 700 !important;
  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease,
    background 0.25s ease,
    color 0.25s ease !important;
}

.elementor-button:hover,
button:hover,
input[type="submit"]:hover,
.wpforms-submit:hover {
  transform: translateY(-2px);
}

/* Primär */
.elementor-button.elementor-size-sm,
.elementor-button.elementor-size-md,
.elementor-button.elementor-size-lg,
.ke-btn-primary,
.wpforms-submit {
  background: linear-gradient(135deg, var(--ke-blue), var(--ke-blue-dark)) !important;
  color: #ffffff !important;
  box-shadow: 0 12px 30px rgba(15, 95, 190, 0.22) !important;
  border: 0 !important;
}

/* Sekundär */
.ke-btn-secondary {
  background: #ffffff !important;
  color: var(--ke-blue) !important;
  border: 1px solid rgba(16, 35, 63, 0.10) !important;
  box-shadow: 0 10px 30px rgba(15, 95, 190, 0.08) !important;
}

/* ===== Headings / Texte ===== */

.elementor-heading-title {
  letter-spacing: -0.03em;
}

.elementor-widget-heading h1,
.elementor-widget-heading h2 {
  margin-bottom: 14px;
}

.elementor-widget-text-editor p:last-child {
  margin-bottom: 0;
}

/* ===== Icon Boxen / Vorteile / Leistungen ===== */

.elementor-widget-icon-box .elementor-icon-box-wrapper,
.elementor-widget-image-box .elementor-image-box-wrapper {
  padding: 6px;
}

.elementor-widget-icon-box {
  height: 100%;
}

.elementor-widget-icon-box .elementor-icon-box-title,
.elementor-widget-image-box .elementor-image-box-title {
  color: var(--ke-blue-dark);
}

.elementor-icon-box-icon span,
.elementor-icon {
  background: linear-gradient(135deg, rgba(15, 95, 190, 0.10), rgba(243, 154, 45, 0.14));
  border-radius: 14px;
  padding: 12px;
}

.elementor-icon-box-description,
.elementor-image-box-description {
  color: var(--ke-muted);
}

/* ===== Bewertungsbereich ===== */

.elementor-widget-testimonial,
.ke-review-card {
  height: 100%;
  background: rgba(255, 255, 255, 0.82);
  border: 1px solid var(--ke-line);
  border-radius: var(--ke-radius-md);
  box-shadow: var(--ke-shadow-sm);
  padding: 24px;
}

.elementor-testimonial__text {
  color: var(--ke-text);
  line-height: 1.8;
}

.elementor-testimonial__name {
  color: var(--ke-blue-dark);
  font-weight: 700;
}

.elementor-testimonial__title {
  color: var(--ke-muted);
}

/* Deine Seite zeigt mehrere Google-Bewertungen; mit einheitlichen Review-Cards wirkt dieser Bereich deutlich hochwertiger. :contentReference[oaicite:1]{index=1} */

/* ===== CTA-Sektion ===== */

.ke-cta-section,
.elementor-section:last-of-type {
  position: relative;
}

.ke-cta-box,
.elementor-section:last-of-type .elementor-container {
  background: linear-gradient(135deg, var(--ke-blue), var(--ke-blue-dark)) !important;
  color: #ffffff !important;
  border-radius: var(--ke-radius-lg);
  box-shadow: 0 22px 50px rgba(15, 95, 190, 0.26);
  padding: 42px !important;
  overflow: hidden;
  position: relative;
}

.ke-cta-box::after,
.elementor-section:last-of-type .elementor-container::after {
  content: "";
  position: absolute;
  right: -60px;
  top: -60px;
  width: 180px;
  height: 180px;
  background: rgba(243, 154, 45, 0.16);
  border-radius: 50%;
}

.ke-cta-box *,
.elementor-section:last-of-type .elementor-container * {
  position: relative;
  z-index: 1;
}

.ke-cta-box h2,
.ke-cta-box h3,
.elementor-section:last-of-type .elementor-heading-title {
  color: #ffffff !important;
}

.ke-cta-box p,
.elementor-section:last-of-type p {
  color: rgba(255, 255, 255, 0.88) !important;
}

/* ===== Formular / Kontakt ===== */

.wpforms-container,
.ke-form {
  background: rgba(255,255,255,0.82);
  border: 1px solid var(--ke-line);
  border-radius: 24px;
  padding: 28px;
  box-shadow: 0 12px 30px rgba(16, 35, 63, 0.06);
}

.wpforms-container .wpforms-field-label {
  color: var(--ke-blue-dark) !important;
  font-weight: 600 !important;
}

.wpforms-container input,
.wpforms-container textarea,
.wpforms-container select {
  border: 1px solid rgba(16, 35, 63, 0.12) !important;
  border-radius: 14px !important;
  padding: 14px 16px !important;
  background: #ffffff !important;
  color: var(--ke-text) !important;
}

.wpforms-container textarea {
  min-height: 140px !important;
}

/* ===== Footer ===== */

footer,
.ke-premium-footer {
  margin-top: 20px;
}

/* Deine Seite hat bereits Footer mit Kontakt, Rechtlichem und WhatsApp-Link; mit weniger Abstand und einheitlicher Fläche wirkt das deutlich integrierter. :contentReference[oaicite:2]{index=2} */

/* ===== Gleichmäßige Abstände ===== */

.elementor-widget:not(:last-child) {
  margin-bottom: 20px;
}

.elementor-column-gap-default > .elementor-column > .elementor-element-populated {
  padding: 12px;
}

/* ===== Mobile ===== */

@media (max-width: 1024px) {
  section,
  .elementor-section,
  .elementor-top-section {
    padding-top: 68px;
    padding-bottom: 68px;
  }

  .hero-section .elementor-container,
  .ke-hero .elementor-container,
  .elementor-section:first-of-type .elementor-container,
  .ke-cta-box,
  .elementor-section:last-of-type .elementor-container {
    padding: 24px !important;
  }
}

@media (max-width: 767px) {
  section,
  .elementor-section,
  .elementor-top-section {
    padding-top: 54px;
    padding-bottom: 54px;
  }

  .elementor-column > .elementor-element-populated {
    padding: 8px !important;
  }

  .elementor-button,
  .wpforms-submit {
    width: 100%;
  }

  .hero-section .elementor-container,
  .ke-hero .elementor-container,
  .elementor-section:first-of-type .elementor-container {
    border-radius: 22px;
    padding: 18px !important;
  }
}/* End custom CSS */