.elementor-kit-6{--e-global-color-primary:#FFCD00;--e-global-color-secondary:#FCEA10;--e-global-color-text:#0D1022;--e-global-color-accent:#29327A;--e-global-color-ade0868:#F4EBDB;--e-global-color-e7e79e6:#CAE7FF;--e-global-typography-primary-font-family:"Plus Jakarta Sans";--e-global-typography-primary-font-weight:600;--e-global-typography-primary-line-height:1.15lh;--e-global-typography-secondary-font-family:"Plus Jakarta Sans";--e-global-typography-secondary-font-weight:400;--e-global-typography-secondary-line-height:1.15lh;--e-global-typography-text-font-family:"Plus Jakarta Sans";--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.15lh;--e-global-typography-accent-font-family:"Plus Jakarta Sans";--e-global-typography-accent-font-weight:500;--e-global-typography-accent-line-height:1.15lh;color:var( --e-global-color-text );font-family:"Plus Jakarta Sans", Sans-serif;font-size:1rem;line-height:1.7lh;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 p{margin-block-end:1rem;}.elementor-kit-6 a{color:var( --e-global-color-accent );font-family:"Plus Jakarta Sans", Sans-serif;font-size:1.25rem;line-height:1.5rem;}.elementor-kit-6 a:hover{color:#F2994A;}.elementor-kit-6 h1{color:var( --e-global-color-text );font-family:"Plus Jakarta Sans", Sans-serif;font-size:4rem;font-weight:700;line-height:1.15lh;}.elementor-kit-6 h2{color:var( --e-global-color-text );font-family:"Plus Jakarta Sans", Sans-serif;font-size:2rem;font-weight:700;line-height:1.15lh;}.elementor-kit-6 h3{color:var( --e-global-color-text );font-family:"Plus Jakarta Sans", Sans-serif;font-size:1.5rem;font-weight:700;line-height:1.15lh;}.elementor-kit-6 h4{color:var( --e-global-color-text );font-family:"Plus Jakarta Sans", Sans-serif;font-size:1.25rem;font-weight:700;line-height:1.15lh;}.elementor-kit-6 h5{color:var( --e-global-color-text );font-family:"Plus Jakarta Sans", Sans-serif;font-size:1.0625rem;font-weight:700;line-height:1.15lh;}.elementor-kit-6 h6{color:var( --e-global-color-text );font-family:"Plus Jakarta Sans", Sans-serif;font-size:0.875rem;font-weight:700;line-height:1.15lh;}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{font-family:"Author", Sans-serif;font-size:1rem;font-weight:600;line-height:1lh;border-radius:100px 100px 100px 100px;}.elementor-kit-6 img{border-radius:16px 16px 16px 16px;}.elementor-kit-6 label{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-6 input:not([type="button"]):not([type="submit"]),.elementor-kit-6 textarea,.elementor-kit-6 .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 );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1400px;}.e-con{--container-max-width:1400px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:1rem;}.elementor-element{--widgets-spacing:1rem 1rem;--widgets-spacing-row:1rem;--widgets-spacing-column:1rem;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:3rem;padding-inline-start:3rem;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(min-width:2400px){.elementor-kit-6 label{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-6 input:not([type="button"]):not([type="submit"]),.elementor-kit-6 textarea,.elementor-kit-6 .elementor-field-textual{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}}@media(max-width:1366px){.elementor-kit-6 a:hover{font-size:1rem;line-height:1.25rem;}.elementor-kit-6 label{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-6 input:not([type="button"]):not([type="submit"]),.elementor-kit-6 textarea,.elementor-kit-6 .elementor-field-textual{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}}@media(max-width:1024px){.elementor-kit-6 a:hover{font-size:1rem;line-height:1.25rem;}.elementor-kit-6 label{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-6 input:not([type="button"]):not([type="submit"]),.elementor-kit-6 textarea,.elementor-kit-6 .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-6{--e-global-typography-text-font-size:1rem;}.elementor-kit-6 a:hover{font-size:1rem;line-height:1.25rem;}.elementor-kit-6 h1{font-size:3.25rem;}.elementor-kit-6 h2{font-size:1.5rem;}.elementor-kit-6 h3{font-size:1.25rem;}.elementor-kit-6 h4{font-size:1.125rem;}.elementor-kit-6 h5{font-size:1rem;}.elementor-kit-6 h6{font-size:0.875rem;}.elementor-kit-6 label{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-6 input:not([type="button"]):not([type="submit"]),.elementor-kit-6 textarea,.elementor-kit-6 .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 */.cta-button-yellow { --ripple-color: #29327A; }
.cta-button-white  { --ripple-color: #FFFFFF; }


/* Target ANY Elementor button anchor inside the host */
.cta-button-yellow a[class*="elementor-button"],
.cta-button-white  a[class*="elementor-button"],
a.cta-button-yellow[class*="elementor-button"],
a.cta-button-white[class*="elementor-button"]{
  position: relative !important;
  overflow: visible !important;
  clip-path: inset(0 round 999px) !important;
}

/* Ripple */
.cta-button-yellow a[class*="elementor-button"]::before,
.cta-button-white  a[class*="elementor-button"]::before,
a.cta-button-yellow[class*="elementor-button"]::before,
a.cta-button-white[class*="elementor-button"]::before{
  content:"";
  position:absolute;
  left: var(--x, 50%);
  top:  var(--y, 50%);
  width:  var(--d, 0px);
  height: var(--d, 0px);
  background: var(--ripple-color);
  border-radius: 50%;
  transform: translate(-50%, -50%) scale(var(--s, 0));
  transition: transform 0.86s cubic-bezier(0.16, 1, 0.3, 1);

  pointer-events:none;
  z-index:0;
}

/* Text above */
.cta-button-yellow a[class*="elementor-button"] > *,
.cta-button-white  a[class*="elementor-button"] > *,
a.cta-button-yellow[class*="elementor-button"] > *,
a.cta-button-white[class*="elementor-button"] > *{
  position:relative;
  z-index:1;
}
/* each line gets its own mask */
.reveal-line-mask {
  display: block;
  overflow: hidden;

  /* add breathing room for diacritics (ÄÖÜ) */
  padding-top: 0.28em;
  padding-bottom: 0.08em;

  /* neutralize layout shift */
  margin-top: -0.28em;
  margin-bottom: -0.08em;
}

/* the animated inner line */
.reveal-line-inner {
  display: block;
  will-change: transform;
}

.text-reveal-container {
  position: relative;
}


.text-gray,
.text-black {
  margin: 0;
  padding: 0;
}

.text-gray {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  color: #F3EDE5;
  z-index: 2;
  pointer-events: none;
  background: #bebebe;      
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-image: linear-gradient(#000 50%, transparent 50%);
  background-size: 100% 200%;
  background-position: 0 100%;
  transition: background-position 0s linear; /* wird per JS gesteuert */
}

.text-reveal-container.in-view .text-gray {
  background-position: 0 0%;
}

/* Fallback für sehr alte Browser – ignorierbar */
.text-black {
  position: relative;
  z-index: 1;
  color: #000;
}

html, body {
  overflow-x: hidden !important;
  max-width: 100% !important;
}/* End custom CSS */