/****** Bilder responsive ****************/
.image-embed-item, embed, object, video {
width:100%;
max-width: 100%;
height: auto;
}


header.py-3.border-bottom { 
    position: fixed !important; 
    top: 0; left: 0; width: 100%; 
    z-index: 1030; background: white; 
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
}
body { padding-top: 140px !important; }
header.py-3.border-bottom .navbar { position: static !important; }




.frame.frame-default.frame-type-container {
    clear: both;
}

.c-columns {
    clear: both;
}


/* Button */
.btn.btn-primary {
  background-color: #017338 !important;
}

.btn.btn-primary:hover {
  background-color: #00a751 !important;
}




.ce-gridgallery  .gallery-image {
  width: 12%;  /* 4 Spalten bei voller Breite */
  float: left;
}
@media (max-width: 768px) {
  .ce-gridgallery  .gallery-image {
    width: 50%;  /* z. B. 2 Spalten auf Tablet */
  }
}
@media (max-width: 480px) {
  .ce-gridgallery  .gallery-image {
    width: 100%; /* 1 Spalte auf Smartphone */
  }
}




hr {
  border-top: 3px dashed #be9651;
  clear: both;
}


.apartment {
  clear: right;
}

footer {
  clear: both;
}




/* Abstand hinter einzelnen Inhaltselementen */
.frame{
        margin-bottom: 60px !important;
    }

/* Button */
.btn-primary {
  color: #fff;
  background-color: #e4231c;
  border: none;
}

.btn-primary:hover {
  background-color: #830500;
}



/* -------- 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 */
        }
    }



/* Farbe Text bei Markierung */
::selection {
  background-color: #017338; /* Hintergrundfarbe der Markierung */
  color: #ffffff; /* Farbe des markierten Textes */
}

/* Für Webkit-basierte Browser */
::-moz-selection {
  background-color: #017338;
  color: #ffffff;
}



/* Seitentitel */
.seitentitel {
            display: flex;
            justify-content: left;
            padding: 10px 0 0;
            gap: 10px; /* Abstand zwischen den Links */
             font-family: "Open Sans, manrope", 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: 16px; /* Standardgröße für die Hauptmenüpunkte */
    }
    
    /* Unterpunkte im Dropdown */
    .navbar-nav .dropdown-menu .dropdown-item {
        font-size: 14px; /* 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 */
    }
}

