.elementor-kit-13{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--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-13 e-page-transition{background-color:#FFBC7D;}.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);}@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 */.e-con-inner p{
    margin-bottom: 15px;
}

/* Sidebutton – Mobile bleibt eine Bottom-Bar */
.sidebutton{
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    display: flex;
    flex-direction: row;
    background-color: var(--e-global-color-primary); /* BG nur mobil */
    z-index: 9999;
    justify-content: space-around;
    color: white;
}

.sidebutton-icon{
    padding: 20px;
    color: white !important;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 0;
}

.sidebutton-icon img{
    width: 25px;
    color: #fff !important;
}

@media screen and (max-width: 1023px){
    .text-hidden{
        margin-left: 10px;
        display: none;
    }
}

/* Desktop: Buttons stehen rechts untereinander, jeder expandiert nur für sich */
@media screen and (min-width: 1024px){
    .sidebutton{
        right: 0;
        top: 50%;
        bottom: unset;
        left: unset;
        flex-direction: column;
        background-color: transparent;        /* WICHTIG: kein globaler BG */
        align-items: flex-end;
        transform: translateY(-50%);
        gap: 10px;
        padding: 0;
    }

    .sidebutton-icon{
        /* eigener Button-Hintergrund */
        background-color: var(--e-global-color-primary);
        border-radius: 12px 0 0 12px;
        padding: 14px 16px;
        overflow: hidden;                     /* versteckt den Text im eingeklappten Zustand */
        white-space: nowrap;
        transition: padding-right .25s ease;
        gap: 0;
    }

    /* Der Text ist standardmäßig „eingeklappt“ */
    .sidebutton-icon .text-hidden{
        font-size: 18px;
        margin-left: 0;
        max-width: 0;
        opacity: 0;
        overflow: hidden;
        display: inline-block;               /* für max-width-Transition wichtig */
        transition:
            max-width .25s ease,
       	    opacity .25s ease,
            margin-left .25s ease;
    }

    /* Nur der gehoverte Link klappt seinen eigenen Text auf */
    .sidebutton-icon:hover{
        padding-right: 24px;
    }
    .sidebutton-icon:hover .text-hidden{
        margin-left: 12px;
        max-width: 260px;                    /* je nach Textlänge anpassen */
        opacity: 1;
    }
}
/* Sidebutton Ende */

/* Form */

.gform-theme--foundation .ginput_container_consent{
    display: flex !important;
    margin-bottom: 15px !important;
}

.gform-theme--foundation .gform_footer{
    flex-direction: column;
    display: inline !important;
}

.gform-theme--foundation .gform_fields{
    row-gap: 15px !important;
}

.gfield input, .gfield textarea, .gfield select{
    border: 1px solid #ced4da !important;
    box-shadow: unset !important;
}

.gform_button{
    background-color: var(--e-global-color-primary) !important;
    font-weight: 700 !important;
    margin-top: -20px !important;
}

.gform_button:hover{
    background-color: var(--e-global-color-secondary) !important;
}

/* Form Ende */

:root {
    /* Global Gap Variables - Editable */
    --gap-xxs: clamp(0.25rem, calc(0.45vw + 0.14rem), 0.5rem); /* 4px mobile, 8px desktop*/
    --gap-xs: clamp(0.5rem, calc(0.45vw + 0.39rem), 0.75rem); /* 8px mobile, 12px desktop*/
    --gap-s: clamp(0.75rem, calc(0.45vw + 0.64rem), 1rem); /* 12px mobile, 16px desktop*/
    --gap-m: clamp(1.25rem, calc(0vw + 1.25rem), 1.25rem); /* 20px mobile, 20px desktop*/
    --gap-l: clamp(1.25rem, calc(2.27vw + 0.68rem), 2.5rem); /* 20px mobile, 40px desktop*/
    --gap-xl: clamp(1.25rem, calc(4.55vw + 0.11rem), 3.75rem); /* 20px mobile, 60px desktop*/
    --gap-xxl: clamp(1.25rem, calc(11.36vw + -1.59rem), 7.5rem); /* 20px mobile, 120px desktop*/
}

/* gap classes */
.gap-xxs {
    gap: var(--gap-xxs);
}

.gap-xxs .e-con-inner {
    gap: var(--gap-xxs);
}

.gap-xs {
    gap: var(--gap-xs);
}

.gap-xs .e-con-inner {
    gap: var(--gap-xs);
}

.gap-s {
    gap: var(--gap-s);
}

.gap-s .e-con-inner {
    gap: var(--gap-s);
}

.gap-m {
    gap: var(--gap-m);
}

.gap-m .e-con-inner {
    gap: var(--gap-m);
}

.gap-l {
    gap: var(--gap-l);
}

.gap-l .e-con-inner {
    gap: var(--gap-l);
}

.gap-xl {
    gap: var(--gap-xl);
}

.gap-xl .e-con-inner {
    gap: var(--gap-xl);
}

.gap-xxl {
    gap: var(--gap-xxl);
}

.gap-xxl .e-con-inner {
    gap: var(--gap-xxl);
}

/* variables (edit here)*/

:root {
    /* Global Padding Variables - Editable */
    /* Left and Right Padding All /Sections/Containers*/
    --fluid-side-padding-min: 1.25rem; /* 20px */
    --fluid-side-padding-max: 5rem;   /* 80px */

    /* Top and Bottom Padding All Containers*/
    --section-xxl-padding-min: 9.375rem; /* 150px */
    --section-xxl-padding-max: 10rem; /* 160px */ 
  
    --section-xl-padding-min: 6.875rem; /* 110px */
    --section-xl-padding-max: 7.5rem; /* 120px */
  
    --section-l-padding-min: 5.625rem; /* 90px */
    --section-l-padding-max: 6.25rem; /* 100px */
  
    --section-m-padding-min: 5rem; /* 80px */
    --section-m-padding-max: 5rem; /* 80px */
  
    --section-s-padding-min: 3.75rem; /* 60px */
    --section-s-padding-max: 3.75rem; /* 60px */
  
    --section-xs-padding-min: 2.5rem; /* 40px */
    --section-xs-padding-max: 2.5rem; /* 40px */
  
    --section-xxs-padding-min: 1.5rem; /* 24px */
    --section-xxs-padding-max: 1.5rem; /* 24px */
    
    --section-header-padding-min: 1.25rem; /* 20px */
    --section-header-padding-max: 1.25rem; /* 20px */

  
    /* Hero Sections Height Variable */
    --section-hero-height: 100vh; /* 100% the screen height */
  
    /* Offset Padding for Overlay Headers */
    --section-offset-header: 80px; /* Adjust to the overlay header's negative margin */

    /* Width For Narrow Sections*/
    --section-narrow: 62.5rem; /* 1000px */
    --section-narrow-xs: 45rem; /* 720px */
  }


/* CSS Template (do not edit below) */
  
  
  /* Section/Container Padding - Fluid Variants */
  .section-xxl {
    padding-top: clamp(var(--section-xxl-padding-min), 1.087vw + 9.13rem, var(--section-xxl-padding-max));
    padding-bottom: clamp(var(--section-xxl-padding-min), 1.087vw + 9.13rem, var(--section-xxl-padding-max));
    padding-left: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max))!important;
    padding-right: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max))!important;
  }
  
  .section-xl {
    padding-top: clamp(var(--section-xl-padding-min), 1.087vw + 6.63rem, var(--section-xl-padding-max));
    padding-bottom: clamp(var(--section-xl-padding-min), 1.087vw + 6.63rem, var(--section-xl-padding-max));
    padding-left: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max))!important;
    padding-right: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max))!important;
  }
  
  .section-l {
    padding-top: clamp(var(--section-l-padding-min), 1.087vw + 5.38rem, var(--section-l-padding-max));
    padding-bottom: clamp(var(--section-l-padding-min), 1.087vw + 5.38rem, var(--section-l-padding-max));
    padding-left: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max))!important;
    padding-right: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max))!important;
  }
  
  .section-m {
    padding-top: clamp(var(--section-m-padding-min), 0vw + 5rem, var(--section-m-padding-max));
    padding-bottom: clamp(var(--section-m-padding-min), 0vw + 5rem, var(--section-m-padding-max));
    padding-left: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max))!important;
    padding-right: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max))!important;
  }
  
  .section-s {
    padding-top: clamp(var(--section-s-padding-min), 0vw + 3.75rem, var(--section-s-padding-max));
    padding-bottom: clamp(var(--section-s-padding-min), 0vw + 3.75rem, var(--section-s-padding-max));
    padding-left: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max))!important;
    padding-right: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max))!important;
  }
  
  .section-xs {
    padding-top: clamp(var(--section-xs-padding-min), 0vw + 2.5rem, var(--section-xs-padding-max));
    padding-bottom: clamp(var(--section-xs-padding-min), 0vw + 2.5rem, var(--section-xs-padding-max));
    padding-left: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max))!important;
    padding-right: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max))!important;
  }
  
  .section-xxs {
    padding-top: clamp(var(--section-xxs-padding-min), 0vw + 1.5rem, var(--section-xxs-padding-max));
    padding-bottom: clamp(var(--section-xxs-padding-min), 0vw + 1.5rem, var(--section-xxs-padding-max));
    padding-left: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max))!important;
    padding-right: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max))!important;
  }
  
  .section-header {
    padding-top: clamp(var(--section-header-padding-min), 0vw + 1.25rem, var(--section-header-padding-max));
    padding-bottom: clamp(var(--section-header-padding-min), 0vw + 1.25rem, var(--section-header-padding-max));
    padding-left: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max))!important;
    padding-right: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max))!important;
  }
  
  /* Hero Container/Sections Height */
  .section-hero {
    min-height: var(--section-hero-height)!important;
  }

  .section-hero .e-con-inner {
    justify-content: center!important;
}
  
  /* Full Width Sections - No Side Padding */

  .section-full div {
    max-width: 100%!important;
  }
  

  /* Narrow Sections */
  .section-narrow .e-con-inner {
    max-width: var(--section-narrow)!important;
  }

  .section-narrow-xs .e-con-inner {
    max-width: var(--section-narrow-xs)!important;
  }


  /* Offset Padding for Overlay Headers */
  .section-offset {
    padding-top: calc(var(--section-offset-header) + var(--section-xxl-padding-min));
  }/* End custom CSS */