/*
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.1
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/*
    Add your custom styles here
*/

/* roboto-300 - latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 300;
  src: url('fonts/roboto-v20-latin-300.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('fonts/roboto-v20-latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/roboto-v20-latin-300.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/roboto-v20-latin-300.woff') format('woff'), /* Modern Browsers */
       url('fonts/roboto-v20-latin-300.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/roboto-v20-latin-300.svg#Roboto') format('svg'); /* Legacy iOS */
}
/* roboto-regular - latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/roboto-v20-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('fonts/roboto-v20-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/roboto-v20-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/roboto-v20-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('fonts/roboto-v20-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/roboto-v20-latin-regular.svg#Roboto') format('svg'); /* Legacy iOS */
}

html body, html body h1,html body h2,html body h3,html body h4,html body h5,html body h6{
  font-family: 'Roboto';
}

/* Header Kontakt */

/* Blaue Linie um hamburger menü und linksentfernen */

* {
    -webkit-tap-highlight-color: rgba(255, 255, 255, 0) !important; 
    -webkit-focus-ring-color: rgba(255, 255, 255, 0) !important; 
    outline: none !important;
}

a, a:visited { outline: none; }
a:hover,
a:active,
a:focus {
  /*Edit at will*/
  background: none;  
}

.text-header{

}



/********************** Sticky Menu **********************/

/* Fade In Option */

/* 
.header-2 {
 opacity: 0;
 -moz-transition: opacity .25s ease-out!important;
  -webkit-transition: opacity .25s ease-out!important;
  transition: opacity .25s ease-out!important;
}


.elementor-sticky--effects.header-2  {
 opacity: 1!important;
}
*/

/* End Of Fade In Option */


/* Footer */

.text-footer{

}

.text-footer a{
  color: #ffffff;
}

/********************** Scroll to top **********************/

  .scroll-top {
    position: fixed;
    bottom: 4.5rem;
    right: 1rem;
    background-color: #000;
    color: #fff;
    border: none;
    border-radius: 50%;
    width: 48px;
    height: 48px;
    font-size: 24px;
    cursor: pointer;
    z-index: 999;
    display: none;
    transition: background-color 0.3s ease;
  }

  .scroll-top:focus {
    outline: 3px solid #fff;
    outline-offset: 2px;
  }

  .scroll-top:hover {
    background-color: #333;
  }

/************* Formulare  *************/

.elementor-field-group .elementor-field-textual{
  padding: 10px!important;
}

/************* Menu  *************/

/* Border-radius und Lücken immer */
.elementor-nav-menu--main .elementor-item {
  margin: 3px !important;
  border-radius: 10px !important;
}

/* Auch auf Pseudo-Elemente dauerhaft */
.elementor-nav-menu--main .elementor-item::before,
.elementor-nav-menu--main .elementor-item::after {
  border-radius: 10px !important;
}

/************* Menu animationen ************/

.elementor-nav-menu--main .elementor-item {
  position: relative !important;
  overflow: hidden !important;
  transition: color 0.3s ease !important;
  background-color: transparent !important;
}

.elementor-nav-menu--main .elementor-item::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background-color: #D4764E !important;
  border-radius: 10px !important;
  transform: translateX(-100%) !important;
  transition: transform 0.35s ease !important;
  z-index: -1 !important;
}

/* Hover UND Active: Hintergrund sichtbar */
.elementor-nav-menu--main .elementor-item:hover::before,
.elementor-nav-menu--main .elementor-item.elementor-item-active::before,
.elementor-nav-menu--main .elementor-item.current-menu-item > a::before {
  transform: translateX(0) !important;
}

/* Parent-Button bleibt orange + 10px, solange Maus über Punkt ODER Submenü ist */
.elementor-nav-menu--main .elementor-nav-menu > li.menu-item-has-children:hover > a.elementor-item {
  background-color: #D4764E !important;
  color: #fff !important;
  border-radius: 10px !important;
  transition: background-color 0.25s ease !important;   /* color rausgenommen -> kein Fade */
}

/* ::before im geöffneten Zustand stehen lassen */
.elementor-nav-menu--main .elementor-nav-menu > li.menu-item-has-children:hover > a.elementor-item::before {
  transform: translateX(0) !important;
  border-radius: 10px !important;
}


/* ---- Submenü-Container: Box-Look weg, jetzt horizontal ---- */
.elementor-nav-menu--main .elementor-nav-menu > li.menu-item-has-children > .sub-menu {
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
    padding: 10px 0 0 0 !important;     /* Abstand Parent -> Pills, hält den Hover-Bereich */
    min-width: max-content;

    display: flex !important;           /* statt block -> Pills nebeneinander */
    flex-direction: row !important;
    gap: 8px !important;                /* Abstand zwischen den Pills */

    /* immer gerendert, damit die Items animieren können – sichtbar erst bei Hover */
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

.elementor-nav-menu--main .elementor-nav-menu > li.menu-item-has-children:hover > .sub-menu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

/* ---- kein vertikaler Abstand mehr, gap übernimmt ---- */
.elementor-nav-menu .sub-menu li {
    margin-bottom: 0 !important;
}

.elementor-nav-menu .sub-menu li a,
.elementor-nav-menu .sub-menu li a.elementor-sub-item,
.elementor-nav-menu--main .elementor-nav-menu .sub-menu li a {
    background-color: #D4764E !important;
    color: #fff !important;
    border-radius: 10px !important;
    padding: 8px 16px !important;
    white-space: nowrap;
    display: inline-block;

    opacity: 0;
    transform: translateY(-8px);
    transition: opacity .35s ease, transform .35s ease, background-color .25s ease;
}

.elementor-nav-menu .sub-menu li a:hover {
    background-color: #b86a3e !important;
}

/* ---- Eingeblendeter Zustand bei Parent-Hover ---- */
.elementor-nav-menu--main .elementor-nav-menu > li.menu-item-has-children:hover > .sub-menu li a {
    opacity: 1;
    transform: translateY(0);
}

/* ---- Staggered: nacheinander erscheinen ---- */
.menu-item-has-children:hover > .sub-menu li:nth-child(1) a { transition-delay: .05s; }
.menu-item-has-children:hover > .sub-menu li:nth-child(2) a { transition-delay: .12s; }
.menu-item-has-children:hover > .sub-menu li:nth-child(3) a { transition-delay: .19s; }
.menu-item-has-children:hover > .sub-menu li:nth-child(4) a { transition-delay: .26s; }
.menu-item-has-children:hover > .sub-menu li:nth-child(5) a { transition-delay: .33s; }



/************* Referenzen Slider Startseite  *************/

.elementor-1657 .elementor-element.elementor-element-084ae03 .dyncontel-swiper .swiper {
border: solid 5px #4C2D67;
border-radius: 15px;
}


div.swiper-button.swiper-button-next.next-084ae03, div.swiper-button.swiper-button-prev.prev-084ae03{
  transition: transform 0.3s ease !important;
}

div.swiper-button.swiper-button-next.next-084ae03:hover, div.swiper-button.swiper-button-prev.prev-084ae03:hover{
  transform: scale(1.2) !important;
}