.elementor-kit-6{--e-global-color-primary:#E8A6B4;--e-global-color-secondary:#F7F2EC;--e-global-color-text:#C9C4BE;--e-global-color-accent:#7B5CFF;--e-global-typography-primary-font-family:"Cormorant Garamond";--e-global-typography-primary-font-weight:500;--e-global-typography-secondary-font-family:"Cormorant Garamond";--e-global-typography-secondary-font-weight:500;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-weight:500;--e-global-typography-accent-letter-spacing:2px;font-family:"Inter", Sans-serif;background-image:url("https://vive-digital.de/wp-content/uploads/2026/06/vive-bg.png");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-kit-6 h1{color:#FFFFFF;font-family:"Cormorant Garamond", Sans-serif;font-size:56px;}.elementor-kit-6 h2{font-family:"Cormorant Garamond", Sans-serif;}.elementor-kit-6 h3{font-family:"Cormorant Garamond", Sans-serif;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1180px;}.e-con{--container-max-width:1180px;}.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);}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-6 h1{font-size:44px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* VIVE Digital Global Background */

html,
body {
  min-height: 100%;
  background-color: #050506;
}

/* Wichtig: Body selbst bekommt KEIN Hintergrundbild mehr */
body {
  background-image: none !important;
  background-color: #050506;
}

/* Fixiertes Hintergrundbild als eigene Ebene */
body::before {
  content: "";
  position: fixed;
  inset: 0;
  width: 100vw;
  height: 100vh;

  background-image: url("http://vive-digital.de/wp-content/uploads/2026/06/vive-bg.png");
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;

  z-index: 0;
  pointer-events: none;
}

/* Schwarze Überlagerung über dem Bild, aber unter dem Content */
body::after {
  content: "";
  position: fixed;
  inset: 0;
  width: 100vw;
  height: 100vh;

  background: rgba(0, 0, 0, 0.5);

  z-index: 1;
  pointer-events: none;
}

/* Elementor-Inhalte über Hintergrund + Overlay */
#page,
.site,
.elementor,
.elementor-location-header,
.elementor-location-footer,
.elementor-page,
.elementor-section,
.elementor-container,
.e-con {
  position: relative;
  z-index: 2;
}

/* Elementor-Sections transparent lassen */
.elementor-section,
.elementor-container,
.e-con {
  background-color: transparent !important;
}

/* Mobile: Bild bleibt weiterhin nur viewport-groß */
@media (max-width: 767px) {
  body::before {
    position: fixed;
    height: 100svh;
    background-size: cover;
    background-position: center center;
  }

  body::after {
    position: fixed;
    height: 100svh;
    background: rgba(0, 0, 0, 0.58);
  }
}
/* Header immer über dem scrollenden Inhalt halten */
.elementor-location-header {
  position: fixed !important;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  z-index: 99999 !important;
}

/* Header-Inhalte ebenfalls nach vorne holen */
.elementor-location-header *,
.elementor-location-header .e-con,
.elementor-location-header .elementor-element {
  z-index: 99999 !important;
}

/* Seiteninhalt unter dem Header starten lassen */
body {
  padding-top: 90px;
}

@media (max-width: 767px) {
  body {
    padding-top: 78px;
  }
}/* End custom CSS */