/* Elektro Sommer – Modern Dark Theme (Neon Gelb) */

:root,
html,
body,
.elementor-kit-11,
.elementor-page,
.elementor {
  --es-bg: #08090d;
  --es-bg-2: #101218;
  --es-surface: #16181f;
  --es-surface-2: #1e212b;
  --es-glass: rgba(18, 20, 28, 0.88);
  --es-neon: #e5ca5e !important;
  --es-neon-2: #ffed00 !important;
  --es-neon-3: #f5b800 !important;
  --es-text: #f5f5f5;
  --es-text-muted: #b8bcc8;
  --es-border: rgba(229, 202, 94, 0.35) !important;
  --es-shadow: 0 18px 50px rgba(0, 0, 0, 0.45);
  --es-glow: 0 0 28px rgba(255, 237, 0, 0.45) !important;
  --es-radius: 0;
  --es-font: "Plus Jakarta Sans", system-ui, sans-serif;
  --es-font-display: "Outfit", "Plus Jakarta Sans", system-ui, sans-serif;

  --accent-color: #e5ca5e !important;
  --accent-color-hover: #ffed00 !important;
  --global-txt-color: var(--es-text);
  --button-txt-color: #1a1400 !important;
  --button-txt-color-hover: #1a1400 !important;
  --button-bg-color: #e5ca5e !important;
  --button-bg-color-hover: #ffed00 !important;
  --header-menu-txt-color-first: var(--es-text);
  --header-menu-txt-color-second: var(--es-text);
  --header-menu-txt-color-inner: var(--es-text);
  --header-menu-sticky-bg-color-first: rgba(8, 9, 13, 0.94);
  --header-menu-sticky-bg-color-second: rgba(8, 9, 13, 0.94);
  --header-menu-sticky-bg-color-inner: rgba(8, 9, 13, 0.94);
  --header-cta-txt-color: #1a1400 !important;
  --header-cta-txt-color-hover: #1a1400 !important;
  --header-cta-bg-color: #e5ca5e !important;
  --header-cta-bg-color-hover: #ffed00 !important;
  --header-title-txt-color: var(--es-text);
  --header-bg-overlay-color: rgba(0, 0, 0, 0.72);
  --footer-txt-color: var(--es-text-muted);
  --footer-bg-color: var(--es-bg-2);
  --e-global-color-primary: #e5ca5e !important;
  --e-global-color-secondary: #ffed00 !important;
  --e-global-color-text: var(--es-text-muted);
  --e-global-color-accent: #f5b800 !important;
}

html {
  scroll-behavior: smooth;
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: -1;
  background-image:
    linear-gradient(rgba(229, 202, 94, 0.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(229, 202, 94, 0.03) 1px, transparent 1px);
  background-size: 44px 44px;
  mask-image: radial-gradient(ellipse at center, #000 15%, transparent 78%);
}

body,
body.elementor-page,
body.wp-theme-elesa {
  font-family: var(--es-font) !important;
  color: var(--es-text) !important;
  background:
    radial-gradient(1200px 600px at 10% -10%, rgba(229, 202, 94, 0.1), transparent 60%),
    radial-gradient(900px 500px at 90% 0%, rgba(245, 184, 0, 0.08), transparent 55%),
    radial-gradient(700px 400px at 50% 100%, rgba(255, 237, 0, 0.04), transparent 60%),
    linear-gradient(180deg, var(--es-bg) 0%, #0c0e14 100%) !important;
  background-attachment: fixed !important;
}

h1, h2, h3, h4, h5, h6,
.elementor-heading-title,
.premium-fancy-text-wrapper,
.premium-prefix-text,
.premium-fancy-text,
.premium-suffix-text {
  font-family: var(--es-font-display) !important;
  color: var(--es-text) !important;
  letter-spacing: -0.02em;
}

.elementor-widget-heading .elementor-heading-title,
h1, h2 {
  background: linear-gradient(135deg, #ffffff 0%, var(--es-neon) 55%, var(--es-neon-2) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

p, li, span, label, .elementor-widget-text-editor,
.textwidget, .widget-content {
  color: var(--es-text-muted) !important;
}

a {
  color: var(--es-neon);
  transition: color 0.2s ease, text-shadow 0.2s ease;
}

a:hover {
  color: var(--es-neon-2);
  text-shadow: 0 0 12px rgba(229, 202, 94, 0.35);
}

#pr-nav.primary-menu,
#pr-nav,
.navbar,
.header-nav-txt-second-desktop {
  background: rgba(8, 9, 13, 0.92) !important;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  border-bottom: 1px solid var(--es-border) !important;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.35) !important;
}

#pr-nav .nav-link,
#primary-menu .nav-link,
.navbar-nav .nav-link {
  color: var(--es-text-muted) !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em;
}

#pr-nav .nav-link:hover,
#pr-nav .current-menu-item .nav-link,
#pr-nav .active .nav-link {
  color: var(--es-neon) !important;
  text-shadow: 0 0 16px rgba(229, 202, 94, 0.35);
}

.header-cta .elementor-button,
.header-cta a .elementor-button,
.elementor-button,
.elementor-button-link,
button.funnel-next-btn,
#pv-funnel-form button[type="submit"],
.wpcf7-submit,
.uc_btn {
  background: linear-gradient(135deg, var(--es-neon) 0%, var(--es-neon-2) 100%) !important;
  color: #1a1400 !important;
  border: none !important;
  border-radius: 0 !important;
  font-family: var(--es-font-display) !important;
  font-weight: 700 !important;
  box-shadow: var(--es-glow) !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.header-cta .elementor-button:hover,
.elementor-button:hover,
button.funnel-next-btn:hover,
#pv-funnel-form button[type="submit"]:hover,
.wpcf7-submit:hover {
  transform: translateY(-2px);
  box-shadow: 0 0 30px rgba(229, 202, 94, 0.45), 0 0 50px rgba(255, 237, 0, 0.15) !important;
  background: linear-gradient(135deg, var(--es-neon-2) 0%, var(--es-neon) 100%) !important;
}

button.funnel-back-btn {
  background: rgba(255, 255, 255, 0.06) !important;
  color: var(--es-text) !important;
  border: 1px solid var(--es-border) !important;
  border-radius: 0 !important;
}

.elementor-section,
.elementor-top-section,
.elementor-inner-section,
.elementor-column,
.elementor-widget-wrap,
.entry-content,
.post-inner,
#site-content {
  background-color: transparent !important;
}

.elementor-background-overlay {
  background-color: rgba(0, 0, 0, 0.62) !important;
}

.elementor-element-funnel-section,
.elementor-element-marienberg-lead-funnel {
  background: linear-gradient(180deg, rgba(10, 11, 16, 0.96), rgba(14, 16, 22, 0.98)) !important;
  border-top: 1px solid var(--es-border);
  border-bottom: 1px solid var(--es-border);
  padding: 56px 0 64px !important;
}

.elementor-element-marienberg-lead-funnel .mblf-card {
  background: var(--es-glass) !important;
  border: 1px solid var(--es-border) !important;
  border-radius: 0 !important;
  box-shadow: var(--es-shadow) !important;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.elementor-element-marienberg-lead-funnel .mblf-card h2,
.elementor-element-marienberg-lead-funnel .mblf-card h3,
.elementor-element-marienberg-lead-funnel .elementor-element-funnel-title h2,
.elementor-element-marienberg-lead-funnel .funnel-step h3 {
  color: var(--es-text) !important;
  -webkit-text-fill-color: initial !important;
  background: none !important;
  font-family: var(--es-font-display) !important;
}

.elementor-widget-icon-box,
.elementor-widget-image-box,
.premium-box-container,
.elementor-widget-premium-icon-box {
  background: var(--es-glass) !important;
  border: 1px solid var(--es-border) !important;
  border-radius: 0 !important;
  box-shadow: var(--es-shadow) !important;
}

[style*="background-color: #fff"],
[style*="background-color:#fff"],
[style*="background-color: white"],
[style*="background: white"],
[style*="background-color: #f8f8f8"],
[style*="background-color:#f8f8f8"],
[style*="background-color: #ffffff"],
[style*="background-color:#ffffff"] {
  background: var(--es-surface) !important;
}

#pv-funnel-form label.funnel-option {
  background: var(--es-surface) !important;
  border: 2px solid rgba(184, 188, 200, 0.25) !important;
  border-radius: 0 !important;
  color: var(--es-text) !important;
  box-shadow: var(--es-shadow) !important;
}

#pv-funnel-form label.funnel-option .fa,
#pv-funnel-form label.funnel-option i {
  color: var(--es-neon) !important;
  text-shadow: 0 0 16px rgba(229, 202, 94, 0.45);
}

#pv-funnel-form input[type="text"],
#pv-funnel-form input[type="email"],
#pv-funnel-form input[type="tel"],
.wpcf7-form input,
.wpcf7-form textarea,
.wpcf7-form select {
  background: var(--es-surface-2) !important;
  color: var(--es-text) !important;
  border: 2px solid rgba(184, 188, 200, 0.25) !important;
  border-radius: 0 !important;
}

#pv-funnel-form input:focus,
.wpcf7-form input:focus,
.wpcf7-form textarea:focus {
  border-color: var(--es-neon) !important;
  box-shadow: 0 0 0 4px rgba(229, 202, 94, 0.15), var(--es-glow) !important;
  outline: none !important;
}

#step-success h3,
#site-footer h3 {
  color: var(--es-neon) !important;
  -webkit-text-fill-color: initial !important;
  background: none !important;
  text-shadow: 0 0 24px rgba(229, 202, 94, 0.35);
}

.wpcf7-response-output.wpcf7-mail-sent-ok {
  color: var(--es-neon-2) !important;
  border-color: rgba(255, 237, 0, 0.35) !important;
  background: rgba(229, 202, 94, 0.08) !important;
  border-radius: 0 !important;
}

#site-footer,
.footer-bg,
.footer-inner {
  background: linear-gradient(180deg, rgba(10, 11, 16, 0.4), rgba(8, 9, 13, 1)) !important;
  border-top: 1px solid var(--es-border) !important;
}

.footer-top-underline {
  background: linear-gradient(90deg, transparent, var(--es-neon), transparent) !important;
}

/* Eckige Bilder – keine Rundungen */
img,
.elementor-widget-image,
.elementor-widget-image .elementor-widget-container,
.elementor-widget-image figure,
.elementor-image,
.elementor-image img,
.elementor-image-box-img,
.elementor-image-box-img img,
.wp-post-image,
.custom-logo,
#pv-funnel-form img,
.elementor-background-slideshow__slide__image,
.wp-caption,
.wp-caption img {
  border-radius: 0 !important;
  -webkit-border-radius: 0 !important;
  clip-path: none !important;
}

.elementor-widget-image .elementor-widget-container {
  overflow: visible !important;
}

.elementor-widget-image img,
.elementor-image-box-img img {
  object-fit: cover;
}

.custom-logo {
  filter: drop-shadow(0 0 18px rgba(229, 202, 94, 0.25));
}

.elementor-icon,
.fa, .fas, .far, .fab {
  color: var(--es-neon) !important;
}

article, .post, .blog-post, .elementor-post {
  background: var(--es-glass) !important;
  border: 1px solid var(--es-border) !important;
  border-radius: 0 !important;
}

#mobile-toggle .animated-icon1 span {
  background: var(--es-neon) !important;
}

::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, var(--es-neon), var(--es-neon-3));
  border-radius: 0;
}

::selection {
  background: rgba(229, 202, 94, 0.28);
  color: #fff;
}

@media (max-width: 767px) {
  #pv-funnel-form [style*="grid-template-columns: repeat(4"] {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

/* === FINALE OVERRIDES: Neon-Gelb erzwingen (nach allen Elementor-Styles) === */

a,
a:link,
a:visited,
.elementor a,
.elementor-widget a,
.elementor-icon-list-item a,
.elementor-heading-title a,
.elementor-widget-text-editor a {
  color: #e5ca5e !important;
}

a:hover,
a:focus,
.elementor a:hover,
.elementor-widget a:hover {
  color: #ffed00 !important;
}

.elementor-icon,
.elementor-icon i,
.elementor-icon svg,
.elementor-icon-list-icon,
.elementor-icon-list-icon i,
.elementor-social-icon,
.elementor-social-icon i,
.fa, .fas, .far, .fab,
[class*="fa-"] {
  color: #e5ca5e !important;
  fill: #e5ca5e !important;
}

.elementor-button,
.elementor-button-link,
.elementor-button.elementor-size-sm,
.elementor-button.elementor-size-md,
.elementor-button.elementor-size-lg,
a.elementor-button,
button.elementor-button,
.wpcf7-submit,
input[type="submit"],
button[type="submit"] {
  background-color: #e5ca5e !important;
  background-image: none !important;
  border-color: #e5ca5e !important;
  color: #1a1400 !important;
  box-shadow: 0 0 20px rgba(255, 237, 0, 0.35) !important;
}

.elementor-button:hover,
.elementor-button:focus,
a.elementor-button:hover,
.wpcf7-submit:hover,
input[type="submit"]:hover,
button[type="submit"]:hover {
  background-color: #ffed00 !important;
  border-color: #ffed00 !important;
  color: #1a1400 !important;
  box-shadow: 0 0 28px rgba(255, 237, 0, 0.55) !important;
}

.elementor-widget-icon-box .elementor-icon-box-icon,
.elementor-widget-icon-box .elementor-icon-box-title,
.elementor-widget-icon-box .elementor-icon-box-description {
  color: #e5ca5e !important;
}

.elementor-widget-heading .elementor-heading-title span,
.elementor-widget-heading .elementor-heading-title mark,
.elementor-headline--style-highlight .elementor-headline-dynamic-text {
  color: #ffed00 !important;
}

.elementor-divider-separator {
  border-top-color: #e5ca5e !important;
}

.elementor-widget-divider .elementor-divider {
  color: #e5ca5e !important;
}

/* Blaue Dekorations-PNGs → Neon-Gelb */
.elementor-background-overlay {
  filter: sepia(1) saturate(4) hue-rotate(5deg) brightness(1.15) !important;
  opacity: 0.85 !important;
}

.elementor-section .elementor-background-overlay[style*="3krjngr3"],
.elementor-section .elementor-background-overlay[style*="aerberb"],
.elementor-section .elementor-background-overlay[style*="35ibvt"],
.elementor-section .elementor-background-overlay[style*="ergbrgg"],
.elementor-section .elementor-background-overlay[style*="rwtbrtb"] {
  filter: sepia(1) saturate(5) hue-rotate(0deg) brightness(1.2) !important;
}

/* Elementor inline kit colors überschreiben */
.elementor-kit-11 {
  --e-global-color-primary: #e5ca5e !important;
  --e-global-color-secondary: #ffed00 !important;
  --e-global-color-accent: #f5b800 !important;
}

.elementor-widget-icon.elementor-view-default .elementor-icon,
.elementor-widget-icon.elementor-view-framed .elementor-icon,
.elementor-widget-icon.elementor-view-stacked .elementor-icon {
  color: #e5ca5e !important;
  border-color: #e5ca5e !important;
  background-color: rgba(229, 202, 94, 0.12) !important;
}

.elementor-widget-icon.elementor-view-framed .elementor-icon:hover,
.elementor-widget-icon.elementor-view-stacked .elementor-icon:hover {
  color: #ffed00 !important;
  border-color: #ffed00 !important;
  background-color: rgba(255, 237, 0, 0.18) !important;
}

/* Borders & Glows */
.elementor-element,
.elementor-column,
.elementor-widget-wrap,
.elementor-widget-container {
  border-color: rgba(229, 202, 94, 0.25) !important;
}

.elementor-cta__button.elementor-button,
.elementor-cta__content-item {
  color: #1a1400 !important;
}

/* PV-Funnel */
#pv-funnel-form .pv-step.active,
#pv-funnel-form .pv-option.selected,
#pv-funnel-form button,
#pv-funnel-form .pv-progress-fill {
  border-color: #e5ca5e !important;
  background-color: #e5ca5e !important;
  color: #1a1400 !important;
}

#pv-funnel-form .pv-option:hover,
#pv-funnel-form button:hover {
  border-color: #ffed00 !important;
  background-color: #ffed00 !important;
  box-shadow: 0 0 24px rgba(255, 237, 0, 0.5) !important;
}

#pv-funnel-form .pv-progress-fill {
  background: linear-gradient(90deg, #e5ca5e, #ffed00) !important;
}

/* Header CTA */
.header-cta,
a.header-cta,
.elementor-nav-menu--main .elementor-item.elementor-item-active,
.elementor-nav-menu--main .elementor-item:hover {
  color: #ffed00 !important;
}

/* SVG stroke/fill in widgets */
.elementor-widget svg path,
.elementor-widget svg circle,
.elementor-widget svg rect {
  fill: #e5ca5e !important;
  stroke: #e5ca5e !important;
}

