.elementor-kit-7{--e-global-color-primary:#0077BD;--e-global-color-secondary:#70777A;--e-global-color-accent:#404040;--e-global-color-text:#747474;--e-global-color-ce4c3d9:#00588B;--e-global-color-fb9911f:#248AC7;--e-global-color-b9283f1:#969EAB;--e-global-color-013d711:#F5F5F5;--e-global-color-d73d26e:#0077BD;--e-global-color-1be3d6b:#373E42;--e-global-color-278e1b9:#FFFFFF;--e-global-color-49372f7:#32B45A;--e-global-color-3439def:#7DC2F0;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-size:clamp(0.95rem, 0.8945rem + 0.2276vw, 1.1227rem);--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.5em;--e-global-typography-secondary-font-family:"Roboto";--e-global-typography-secondary-font-size:clamp(0.95rem, 0.8945rem + 0.2276vw, 1.1227rem);--e-global-typography-secondary-font-weight:400;--e-global-typography-secondary-line-height:1.5em;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-size:17px;--e-global-typography-accent-font-weight:400;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-line-height:26px;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-size:clamp(1.6018rem, 1.0853rem + 2.1191vw, 3.2043rem);--e-global-typography-primary-font-weight:600;--e-global-typography-primary-line-height:1.2em;--e-global-typography-160cf83-font-family:"Roboto";--e-global-typography-160cf83-font-size:clamp(1.4238rem, 1.0565rem + 1.507vw, 2.5635rem);--e-global-typography-160cf83-font-weight:600;--e-global-typography-160cf83-line-height:1.2em;--e-global-typography-4c2d879-font-family:"Roboto";--e-global-typography-4c2d879-font-size:clamp(1.2656rem, 1.0126rem + 1.0382vw, 2.0508rem);--e-global-typography-4c2d879-font-weight:600;--e-global-typography-4c2d879-line-height:1.2em;--e-global-typography-dc222f0-font-family:"Roboto";--e-global-typography-dc222f0-font-size:clamp(1.125rem, 0.9588rem + 0.6818vw, 1.6406rem);--e-global-typography-dc222f0-font-weight:600;--e-global-typography-dc222f0-line-height:1.3em;--e-global-typography-7b57153-font-family:"Roboto";--e-global-typography-7b57153-font-size:clamp(1rem, 0.8993rem + 0.4132vw, 1.3125rem);--e-global-typography-7b57153-font-weight:600;--e-global-typography-7b57153-line-height:1.4em;--e-global-typography-3b56f57-font-size:clamp(0.95rem, 0.8945rem + 0.2276vw, 1.1227rem);--e-global-typography-3b56f57-font-weight:700;--e-global-typography-3b56f57-line-height:1.5em;--e-global-typography-3865980-font-family:"Roboto";--e-global-typography-3865980-font-size:clamp(0.95rem, 0.8945rem + 0.2276vw, 1.1227rem);--e-global-typography-3865980-font-weight:400;--e-global-typography-3865980-text-transform:none;--e-global-typography-3865980-line-height:1.5em;color:var( --e-global-color-text );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-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-kit-7 a{color:var( --e-global-color-primary );}.elementor-kit-7 a:hover{color:var( --e-global-color-fb9911f );}.elementor-kit-7 h1{color:var( --e-global-color-278e1b9 );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-7 h2{font-family:var( --e-global-typography-160cf83-font-family ), Sans-serif;font-size:var( --e-global-typography-160cf83-font-size );font-weight:var( --e-global-typography-160cf83-font-weight );line-height:var( --e-global-typography-160cf83-line-height );}.elementor-kit-7 h3{color:var( --e-global-color-primary );font-family:var( --e-global-typography-4c2d879-font-family ), Sans-serif;font-size:var( --e-global-typography-4c2d879-font-size );font-weight:var( --e-global-typography-4c2d879-font-weight );line-height:var( --e-global-typography-4c2d879-line-height );}.elementor-kit-7 h4{font-family:var( --e-global-typography-dc222f0-font-family ), Sans-serif;font-size:var( --e-global-typography-dc222f0-font-size );font-weight:var( --e-global-typography-dc222f0-font-weight );line-height:var( --e-global-typography-dc222f0-line-height );}.elementor-kit-7 h5{font-family:var( --e-global-typography-7b57153-font-family ), Sans-serif;font-size:var( --e-global-typography-7b57153-font-size );font-weight:var( --e-global-typography-7b57153-font-weight );line-height:var( --e-global-typography-7b57153-line-height );}.elementor-kit-7 h6{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{font-family:var( --e-global-typography-3865980-font-family ), Sans-serif;font-size:var( --e-global-typography-3865980-font-size );font-weight:var( --e-global-typography-3865980-font-weight );text-transform:var( --e-global-typography-3865980-text-transform );line-height:var( --e-global-typography-3865980-line-height );border-radius:30px 30px 30px 30px;padding:17px 55px 17px 55px;}.elementor-kit-7 button:hover,.elementor-kit-7 button:focus,.elementor-kit-7 input[type="button"]:hover,.elementor-kit-7 input[type="button"]:focus,.elementor-kit-7 input[type="submit"]:hover,.elementor-kit-7 input[type="submit"]:focus,.elementor-kit-7 .elementor-button:hover,.elementor-kit-7 .elementor-button:focus{color:var( --e-global-color-278e1b9 );}.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-kit-7{--e-global-typography-primary-line-height:50px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-7 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-7 h2{font-size:var( --e-global-typography-160cf83-font-size );line-height:var( --e-global-typography-160cf83-line-height );}.elementor-kit-7 h3{font-size:var( --e-global-typography-4c2d879-font-size );line-height:var( --e-global-typography-4c2d879-line-height );}.elementor-kit-7 h4{font-size:var( --e-global-typography-dc222f0-font-size );line-height:var( --e-global-typography-dc222f0-line-height );}.elementor-kit-7 h5{font-size:var( --e-global-typography-7b57153-font-size );line-height:var( --e-global-typography-7b57153-line-height );}.elementor-kit-7 h6{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{font-size:var( --e-global-typography-3865980-font-size );line-height:var( --e-global-typography-3865980-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-7{--e-global-typography-accent-font-size:12px;--e-global-typography-primary-line-height:38px;--e-global-typography-3865980-font-size:17px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-7 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-7 h2{font-size:var( --e-global-typography-160cf83-font-size );line-height:var( --e-global-typography-160cf83-line-height );}.elementor-kit-7 h3{font-size:var( --e-global-typography-4c2d879-font-size );line-height:var( --e-global-typography-4c2d879-line-height );}.elementor-kit-7 h4{font-size:var( --e-global-typography-dc222f0-font-size );line-height:var( --e-global-typography-dc222f0-line-height );}.elementor-kit-7 h5{font-size:var( --e-global-typography-7b57153-font-size );line-height:var( --e-global-typography-7b57153-line-height );}.elementor-kit-7 h6{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{font-size:var( --e-global-typography-3865980-font-size );line-height:var( --e-global-typography-3865980-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ===== Projektphasen (.hover-wrapper / .hover-box) – zentral für alle Seiten ===== */
/* Projektphasen – ruhige Hover-Animation
   Breitenverhältnis wie vorher (20 % / 40 %), aber über flex-basis mit weicher Kurve animiert.
   Text wird erst eingeblendet, wenn die Box fast offen ist (kein Umbrechen/Springen). */

.hover-wrapper {
  display: flex;
  gap: 10px;
}

@media (min-width: 768px) {
  .hover-wrapper > .hover-box {
    width: auto !important;
    min-width: 0;
    flex: 0 1 20% !important;
    /* kurze Verzögerung beim Zurücksetzen: Überfahren der Lücke zwischen zwei Boxen löst kein Zusammenklappen aus */
    transition: flex-basis .45s cubic-bezier(.4, 0, .2, 1) .12s;
  }

  .hover-wrapper > .hover-box:hover {
    transition-delay: 0s;
  }

  /* Erste Box standardmäßig groß, aktive Box groß */
  .hover-wrapper > .first-box,
  .hover-wrapper > .hover-box:hover {
    flex-basis: 40% !important;
  }

  /* Erste Box nur verkleinern, wenn wirklich eine andere Box gehovert wird
     (nicht schon beim Überfahren der Lücke) */
  .hover-wrapper:has(> .hover-box:hover) > .first-box:not(:hover) {
    flex-basis: 20% !important;
  }

  /* Texte: ausgeblendet */
  .hover-box .text-hover,
  .hover-box .text-hover-first,
  .hover-wrapper:has(> .hover-box:hover) > .first-box:not(:hover) .text-hover-first {
    opacity: 0;
    visibility: hidden;
    max-height: 0;
    overflow: hidden;
    transition: opacity .1s ease, visibility 0s linear .1s, max-height 0s linear .1s;
  }

  /* Texte: sichtbar – erst wenn die Box fast offen ist */
  .first-box .text-hover-first,
  .hover-box:hover .text-hover,
  .hover-box:hover .text-hover-first {
    opacity: 1;
    visibility: visible;
    max-height: 800px;
    transition: opacity .3s ease .35s, visibility 0s linear .35s, max-height 0s linear .35s;
  }
}

@media (prefers-reduced-motion: reduce) {
  .hover-wrapper > .hover-box,
  .hover-box .text-hover,
  .hover-box .text-hover-first {
    transition: none !important;
  }
}

/* Mobil: untereinander, Texte immer sichtbar, keine Animation */
@media (max-width: 767px) {
  .hover-wrapper {
    flex-direction: column;
  }
  .hover-wrapper > .hover-box {
    width: 100% !important;
    transition: none;
  }
  .hover-box .text-hover,
  .hover-box .text-hover-first {
    display: block !important;
  }
}/* End custom CSS */