

/****** Bilder responsive ****************/
.image-embed-item, embed, object, video {
width:100%;
max-width: 100%;
height: auto;
}



/* Formatierung Tabs */
.c-tabs-header {
    color: #323232;
    font-family: 'Fredoka';
    font-size: 1.8rem;
    font-weight: 500;
}


/* Farbe Text bei Markierung */
::selection {
  background-color: #e73b3f; /* Hintergrundfarbe der Markierung */
  color: #ffffff; /* Farbe des markierten Textes */
}

/* Für Webkit-basierte Browser */
::-moz-selection {
  background-color: #e73b3f;
  color: #ffffff;
}


hr {
  border: none; /* entferne andere Ränder */
  border-top: 5px dashed #e53a3f;
  opacity: 1; /* volle Deckkraft */
  background: none;
  color: #e53a3f;
}




/* EmbaSpot */
.containerspot {
    background-color: #9adfea !important; /* Dunkelblauer Hintergrund */
    border-radius: 15px; /* Abgerundete Ecken für den Kasten */
    padding: 20px; /* Innenabstand zum Rand */
    position: relative;
}


.containerspot a,
.containerspot a:visited,
.containerspot a:active,
.containerspot a:focus {
    color: #fff; /* Gemeinsame Farbe für Hover, Visited, Active und Focus */
    text-decoration: none;
}

.containerspot a:hover {
    color: #fff; /* Gemeinsame Farbe für Hover, Visited, Active und Focus */
    text-decoration: underline;
}


.containerspot::before {
    content: "";
    position: absolute;
    top: 10px;
    left: 10px;
    right: 10px;
    bottom: 10px;
    border: 1px solid black; /* Weiße, 1px dünne Linie */
    border-radius: 12px; /* Abgerundete Linie */
    pointer-events: none;
}

/* Container automatisch H zuweisen*/
.containerspot h1 {
  color: #323232 !important;
    font-family: 'Fredoka' !important;
    font-size: 1.8rem;
    font-weight: 500;
}
.containerspot h2,
.containerspot h3,
.containerspot h4,
.containerspot h5,
.containerspot h6,
.containerspot p {
        color: #323232 !important;
    font-family: 'Fredoka' !important;
    font-size: 1.2rem;
    font-weight: 500;
}



@media (max-width: 767px) {
  .h1 {
    padding-bottom: 10px;
  }
}

/***** unterschiede Logo Groessen *********/
.logo-mobile {
    display: none;
}

@media (max-width: 991.98px) {
    .logo-desktop {
        display: none;
    }
    .logo-mobile {
        display: inline;
    }
}



/******** Farbe Navigation Balken ********/
.headerbg{
  background-color: #9bdfea !important;
}

/**** Sprachwahl mouseover bold *****/
.language-link {
    font-weight: normal;  /* Standardzustand normal */
    transition: font-weight 0.3s ease; /* Smooth Transition */
}

.language-link:hover {
    font-weight: bold;   /* Bei Hover fett */
}


/**** 2 spalten 2x hintereinander clear ******/
.frame,
.frame-type-container,
.c-columns {
  clear: both;
}



/****** Bilder abgerundete Ecken ****************/
img {
  border-radius: 16px !important;
}

/* Abstand hinter einzelnen Inhaltselementen */
.frame {
        margin-bottom: 60px !important;
    }

.c-columns {
  clear: both;
}


.scroll-top {
    display: none;
    position: fixed;
    bottom: 30px;
    right: 30px;
    width: 50px;
    height: 50px;
    background-color: #9b9b9b; /* Blaue Hintergrundfarbe */
    color: white; /* Weiße Schriftfarbe */
    text-align: center;
    line-height: 50px;
    font-size: 24px;
    border-radius: 50%;
    transition: background-color 0.3s, transform 0.2s ease-in-out;
    z-index: 1000;
}

.scroll-top:hover {
    background-color: #d2d2d2; /* Dunkleres Blau beim Hover */
    transform: scale(1.1); /* Leicht vergrößern beim Hover */
}

.scroll-top i {
    transition: transform 0.3s;
}

.scroll-top:hover i {
    transform: translateY(-3px);
}







/* Button */
.btn-primary {
  color: #fff;
  background-color: #9b9b9b;
  border: none;
    margin-top: 10px;
}

.btn-primary:hover {
  background-color: #d2d2d2;
  margin-top: 10px;
}

.form-group {
  padding-bottom: 25px;
}


/* Farbe Text bei Markierung */
::selection {
  background-color: #9b9b9b; /* Hintergrundfarbe der Markierung */
  color: #ffffff; /* Farbe des markierten Textes */
}

/* Für Webkit-basierte Browser */
::-moz-selection {
  background-color: #9b9b9b;
  color: #ffffff;
}


/* -------- Sticky Buttons rechts ------------------------*/
    .page-peel-container {
        position: fixed;
        right: 0;
        top: 30%; /* Position von oben, anpassbar */
        z-index: 1000; /* sicherstellen, dass es immer sichtbar ist */
        display: flex;
        flex-direction: column;
        gap: 7px; /* Abstand zwischen den Bildern */
    }

    .page-peel-container img {
        width: 50px; /* Größe der Bilder (anpassen) */
        height: auto;
        cursor: pointer;
        transition: transform 0.3s ease;
    }

    .page-peel-container img:hover {
        transform: scale(1.1); /* Animation beim Hover */
    }

    /* Responsivität */
    @media (max-width: 768px) {
        .page-peel-container img {
            width: 40px; /* kleinere Bilder auf Mobilgeräten */
        }
    }



/* Seitentitel */
.seitentitel {
            display: flex;
            justify-content: left;
            padding: 10px 0 0;
            gap: 10px; /* Abstand zwischen den Links */
             font-family: "Fredoka", sans-serif !important;
   color: #555452;
   font-size: 2rem !important;
   font-weight: 200;
   text-align: left;
        }

@media (max-width: 767px) {
  .seitentitel {
    font-size: 1.5rem; /* Kleinere Schriftgröße für mobile Geräte */
    color: #555; /* Eine etwas hellere Textfarbe für mobile Ansicht */
  }
}
        .seitentitel a {
            color: #333;
            text-decoration: none;
        }

/* Vollständige Breite für das mobile Menü */
@media (max-width: 991px) {
    .navbar-collapse {
        width: 100%; /* Stellt sicher, dass das Menü die volle Breite einnimmt */
    }
    .navbar-nav {
        width: 100%; /* Menülistenelemente auf 100% Breite setzen */
        text-align: center; /* Zentriert die Menüeinträge */
    }
    .navbar-nav .nav-item {
        display: block; /* Menüpunkte als Block-Elemente anzeigen */
        width: 100%; /* Menüpunkte auf volle Breite setzen */
    }
    .navbar-toggler {
        z-index: 1; /* Toggler Button muss über dem Menü liegen */
    }
}


/* Schriftgrößen-Anpassung in der mobilen Ansicht */
@media (max-width: 991px) {
    /* Hauptmenüpunkte */
    .navbar-nav .nav-item .nav-link {
        font-size: 1.3rem; /* Standardgröße für die Hauptmenüpunkte */
    }
    
    /* Unterpunkte im Dropdown */
    .navbar-nav .dropdown-menu .dropdown-item {
        font-size: 1.0rem; /* Kleinere Schriftgröße für Unterpunkte */
    }
}




/* Gallerie bis 992px auf volle Breite */
@media (max-width: 992px) {
    .ce-gallery {
        width: 100%;
    }
}
 
/* Anpassungen von kleinen bis groeßeren Geraeten */
@media (min-width: 640px) and (max-width: 1200px) {
    .ce-gallery .ce-column {
        margin: 0;
        /* Abstand zwischen Bildern */
        padding: 0 5px;
        box-sizing: border-box;
    }
 
 
    /* Kein Abstand beim ersten und letzten Bild */
    .ce-gallery .ce-column:first-child {
        padding-left: 0;
    }
    .ce-gallery .ce-column:last-child {
        margin-right: 0;
    }
 
    /* Fluid Image Tags */
    .ce-gallery img,
    .ce-gallery picture {
        width: 100%;
        height: auto;
    }
 
    /* Spaltenbreiten je nach eingestellten Columns */
    .ce-gallery[data-ce-columns="2"] .ce-column {
        width: 50%;
    }
 
    .ce-gallery[data-ce-columns="3"] .ce-column {
        width: 33%;
    }
 
    .ce-gallery[data-ce-columns="4"] .ce-column {
        width: 25%;
    }
 
    .ce-gallery[data-ce-columns="5"] .ce-column {
        width: 20%;
    }
}
 
/* Anpassungen fuer kleine Geraete */
@media (max-width: 640px) {
 
    /* Ein Bild pro Zeile */
    .ce-gallery .ce-column {
        margin: 0 0 10px;
        width: 100%;
        box-sizing: border-box;
    }
 
    /* Fluid Image Tags */
    .ce-gallery img,
    .ce-gallery picture {
        width: 100%;
        height: auto;
    }
}






@media (min-width: 992px) { /* Ab Desktop-Breakpoint */
    .navbar-collapse {
        display: flex !important; /* Sichtbar */
        justify-content: flex-end; /* Menüpunkte rechts ausrichten */
        align-items: center;
        background: none; /* Keine Hintergrundfarbe */
        z-index: 1000; /* Sicherstellen, dass es sichtbar ist */
    }

    .navbar-toggler {
        display: none; /* Hamburger-Icon ausblenden */
    }
}





/* Mobile Menü */
@media (max-width: 991.98px) { /* Bootstrap's Breakpoint für lg */
    .navbar-collapse {
        display: none !important; /* Versteckt das Desktop-Menü */
    }

    .navbar-toggler.custom-toggler {
        display: block; /* Zeigt den Hamburger-Button nur auf mobilen Geräten */
    }

    .mobile-menu-overlay {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(255, 255, 255, 0.95);
        transform: translateX(100%);
        transition: transform 0.3s ease-in-out;
        z-index: 1050;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    .mobile-menu-overlay.active {
        transform: translateX(0);
    }

    .mobile-menu-header {
        display: flex;
        justify-content: flex-end;
        padding: 10px;
    }

    .close-menu {
        font-size: 28px;
        background: none;
        border: none;
        cursor: pointer;
        padding: 0;
    }

    .mobile-menu-overlay ul {
        list-style: none;
        padding: 0;
        margin: 0;
        text-align: center;
      font-size: 1.3rem;
    }

    .mobile-menu-overlay ul li {
        margin: 10px 0;
      font-size: 1.3rem;
    }

    .mobile-menu-overlay ul li a {
        color: #000;
        text-decoration: none;
        transition: color 0.3s ease;
      font-size: 1.3rem;
    }

    .mobile-menu-overlay ul li a:hover {
        color: #e4251f;
      font-size: 1.3rem;
    }
}

/* Desktop Menü */
@media (min-width: 992px) { /* Ab Desktop-Breakpoint */
    .navbar-collapse {
        display: flex !important; /* Stellt sicher, dass das Desktop-Menü sichtbar ist */
        justify-content: flex-end;
    }

    .navbar-toggler.custom-toggler {
        display: none; /* Versteckt den Hamburger-Button auf Desktops */
    }

    .mobile-menu-overlay {
        display: none; /* Verhindert, dass das Overlay im Desktop-Modus sichtbar ist */
    }
}





/********* F.A.Q. ********/
.c-accordion-title {
    text-align: left;
      color: #333;
    display: block;
    position: relative;
    width: 100%;
    box-sizing: border-box;
    padding: 0.72em 3em 0.72em 0;
    font-size: 1.26em;
    font-weight: 400;
    transition: all .3s;
    border-bottom: 1px solid transparent;
  border-right: none;
  border-top: none;
  border-left: none;
    background: none;
}


/* Styling der links FAQ */
.c-accordion-title a {
      color: #333;
  font-size: 1rem;
  text-decoration: none;
}

.c-accordion-title a:hover {
      color: #333;
  font-size: 1rem;
  text-decoration: none;
}

.c-accordion-title a:active {
      color: #333;
  font-size: 1rem;
  text-decoration: none;
}



