.elementor-kit-11{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#be1622;--e-global-color-dbb6b96:#274856;--e-global-color-7d07131:#B0C4CE;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-11 e-page-transition{background-color:var( --e-global-color-dbb6b96 );}.elementor-kit-11 a{color:var( --e-global-color-7d07131 );}.elementor-kit-11 a:hover{color:#2B8A68;}.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);}.elementor-lightbox{background-color:#FFFFFF;--lightbox-ui-color:var( --e-global-color-7d07131 );--lightbox-ui-color-hover:var( --e-global-color-7d07131 );--lightbox-text-color:var( --e-global-color-7d07131 );}@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-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* Telefonnummer im Header */
@media (max-width: 1024px) {
  .elementor-location-header .elementor-icon-box-title span {
    display: none !important;
  }
}

.gradienttextfirst {
  background: linear-gradient(90deg, #274856 0%, #B0C4CE 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}



.gradienttext {
  background: linear-gradient(90deg, #274856 0%, #B0C4CE 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  
  background-size: 0% 100%;       /* Start: unsichtbar */
  background-repeat: no-repeat;

  animation: fillGradient 1s linear forwards;
  animation-timeline: view();
  animation-range: entry 20% cover 40%;
}

@keyframes fillGradient {
  from { background-size: 0% 100%; }
  to   { background-size: 100% 100%; }
}

/* Nur mobil ausblenden (bis 767px Breite) */
@media (max-width: 767px) {
  .elementor-27 .elementor-element.elementor-element-376df017 .elementor-icon-box-title a {
    display: none;
  }
}

/* Ab Tablet / Desktop wieder anzeigen */
@media (min-width: 768px) {
  .elementor-27 .elementor-element.elementor-element-376df017 .elementor-icon-box-title a {
    display: inline-block; /* oder block, je nachdem was du brauchst */
  }
}


@keyframes hero-gradient-animation {
    0% {
        --x-0: 0%;
        --c-0: #B0C4CE; /* Hauptfarbe 1 */
        --s-start-0: 3%;
        --s-end-0: 79%;
        --y-0: 90%;
        --x-1: 98%;
        --c-1: #274856; /* Hauptfarbe 2 */
        --s-start-1: 3%;
        --s-end-1: 79%;
        --y-1: 35%;
    }

    100% {
        --x-0: 24%;
        --c-0: #274856; /* tauscht Positionen für Bewegung */
        --s-start-0: 4%;
        --s-end-0: 67%;
        --y-0: 16%;
        --x-1: 62%;
        --c-1: #B0C4CE; /* tauscht Positionen für Bewegung */
        --s-start-1: 4%;
        --s-end-1: 67%;
        --y-1: 100%;
    }
}

@property --x-0 {
    syntax: '<percentage>';
    inherits: false;
    initial-value: 0%
}

@property --c-0 {
    syntax: '<color>';
    inherits: false;
    initial-value: #B0C4CE
}

@property --s-start-0 {
    syntax: '<percentage>';
    inherits: false;
    initial-value: 3%
}

@property --s-end-0 {
    syntax: '<percentage>';
    inherits: false;
    initial-value: 79%
}

@property --y-0 {
    syntax: '<percentage>';
    inherits: false;
    initial-value: 90%
}

@property --x-1 {
    syntax: '<percentage>';
    inherits: false;
    initial-value: 98%
}

@property --c-1 {
    syntax: '<color>';
    inherits: false;
    initial-value: #274856
}

@property --s-start-1 {
    syntax: '<percentage>';
    inherits: false;
    initial-value: 3%
}

@property --s-end-1 {
    syntax: '<percentage>';
    inherits: false;
    initial-value: 79%
}

@property --y-1 {
    syntax: '<percentage>';
    inherits: false;
    initial-value: 35%
}

.calltoactionbg {
    --x-0: 0%;
    --c-0: #B0C4CE;
    --y-0: 90%;
    --x-1: 98%;
    --c-1: #274856;
    --y-1: 35%;
    background-color: #ffffff;
    background-image: radial-gradient(circle at var(--x-0) var(--y-0), var(--c-0) var(--s-start-0), transparent var(--s-end-0)),
                      radial-gradient(circle at var(--x-1) var(--y-1), var(--c-1) var(--s-start-1), transparent var(--s-end-1));
    animation: hero-gradient-animation 10s linear infinite alternate;
    background-blend-mode: normal, normal;
}

/* Positionierungs-Kontext für absolute Buttons erzwingen */
.elementor .elementor-widget-n-carousel.elementor-element {
  position: relative !important;
}

/* Beide Buttons nach rechts holen (unten rechts nebeneinander) */
.elementor .elementor-widget-n-carousel.elementor-element 
  :is(.swiper, .swiper-container) ~ .elementor-swiper-button-prev,
.elementor .elementor-widget-n-carousel.elementor-element 
  :is(.swiper, .swiper-container) ~ .elementor-swiper-button-next {
  top: auto !important;
  bottom: 10px !important;
  transform: none !important;
  z-index: 5 !important;
}

/* Next ganz rechts */
.elementor .elementor-widget-n-carousel.elementor-element 
  :is(.swiper, .swiper-container) ~ .elementor-swiper-button-next {
  right: 10px !important;
  left: auto !important;
}

/* Prev direkt links neben Next */
.elementor .elementor-widget-n-carousel.elementor-element 
  :is(.swiper, .swiper-container) ~ .elementor-swiper-button-prev {
  right: 50px !important; /* Abstand zu Next */
  left: auto !important;
}

/* Mobil ausblenden */
@media (max-width: 767px) {
  .elementor .elementor-widget-n-carousel.elementor-element 
    :is(.swiper, .swiper-container) ~ .elementor-swiper-button-prev,
  .elementor .elementor-widget-n-carousel.elementor-element 
    :is(.swiper, .swiper-container) ~ .elementor-swiper-button-next {
    display: none !important;
  }
}/* End custom CSS */