
*{
    margin: 0;
}

h1, h2, h3 {
    padding: 50px 0 20px 0;
    text-align: center;
}

p {
    padding: 10px 0 10px 0;
}
main {
    width: 100%;
    background-color: var(--hauptfarbe_4);
    min-height: 50vh;
    font-size: 1.6rem;
    display:flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    
    padding: 0 0 0 0;
    font-family: 'Roboto', sans-serif;
}

.webseite a {
    display: inline-block;
    background-color: var(--farbe-akzent, #7c2d12); /* Akzentfarbe z.B. weinrot/braun */
    color: white;
    padding: 1.5rem 1.5rem;
    border-radius: 5px;
    font-weight: bold;
    text-decoration: none;
    transition: background-color 0.3s ease;
    margin: 30px;
}

.webseite a:hover {
    background-color: #5a1e0b;
}


main header {
    width: 100%;
    height: auto;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    background-color: var(--hauptfarbe_4);
    z-index: 3;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    box-shadow: 0px 10px 30px var(--hauptfarbe_2);
}

main section {
    width: 100%;
    background-color: var(--hauptfarbe_3);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

main section article {
    width: 100%;
    max-width: 100rem;
    min-height: 100%;
    color: var(--hauptfarbe_4);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 20px 0px 20px 0px;
}

main footer {
    width: 100%;
    min-height: 25rem;
    background-color: var(--hauptfarbe_2);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

p {
    text-align: center;
    padding: 10px;
}

.section h1, h2, h3, h4 {
    text-align: center;
    padding: 10px;
}
.wagna {
    height: 100%;
    color:#ffffff;
}

.hintergrundbild {
    background-image: url('/img/holzkaefer.webp');
    background-size:cover;
    background-position: center;
    background-repeat: no-repeat;
    background-position-x: center;
    background-attachment: fixed;
    height: 50vh;
}

.hintergrundbild_folgende {
    background-image: url('/img/holzkaefer.webp');
    background-size:cover;
    background-position: center;
    background-repeat: no-repeat;
    background-position-x: center;
    background-attachment: fixed;
    height: 50vh;
}

.stickybar {
    display: none;
}

.reservieren {
    display: none;
}

.route {
    display: none;
}

/* Speisekarte */
.speisekarte_layout {
    background: var(--hauptfarbe_4);
    margin: 20px 20px;
    border-radius: 20px;
    width: auto;
}

.speisekarte_layout h2 {
    text-align: center;
    margin: 20px 0px 0px 0px;
}
.speisekarte {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
    margin: 0px 20px 20px 20px;
}

.speisen_kategorie {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    justify-content: space-around;
    gap: 10px;
    flex-wrap: wrap;
}
.speisen_gericht {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content:space-between;
    background-color: var(--hauptfarbe_2);
    width: 300px;
    padding: 10px;
    border-radius: 10px;
    margin: 10px;
    flex-wrap: wrap;
}

.hintergrundbild1 {
    background-image: url('/img/holzkaefer.webp')!important;
    background-size: cover!important;
    background-position: center!important;
    background-repeat: no-repeat!important;
    background-position-x: center!important;
    background-attachment: fixed!important;
    height: 100%!important;
}

.bilder_speisen img {
    display: block;
    margin: 0;
    border-radius: 20px;
    padding: 10px;
    width: 260px;
}

.bilder_speisen img:hover {
    display: block;
    border-radius: 20px;
    padding: 10px;
}
/* Speisekarte  */

/* Öffnungszeiten */
table {
    
    width: 50%;
    border-collapse: collapse;
}
th, td { 
    border:1px solid var(--hauptfarbe_2);
    padding: 8px;
    text-align: center;
}
tr {
    text-align: center;
}

#oeffnungszeiten>article>h2 {
    padding-bottom: 20px;
}
/* Öffnungszeiten */

/* Event */
.events {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: var(--hauptfarbe_1);
    
}

.eventskat {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    color: var(--hauptfarbe_1);
    flex-wrap: wrap;
    gap: 20px;
}
.eventsitem {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    width: 350px;
    padding: 0px 10px 0px 10px;
}
/* Event */

@media screen and (max-width: 768px) {
    footer {
        padding-bottom: 140px;
    }
    .hintergrundbild {
        background-attachment: scroll; /* Hintergrundbild scrollt mit dem Inhalt auf kleinen Geräten */
        height: 100vh; /* Eventuell die Höhe auf kleinen Geräten anpassen */
        /* Weitere Anpassungen für Mobilgeräte */
    }

    .hintergrundbild_folgende {
        display: none;
    }

    .stickybar {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        flex: 1;
        gap: 5px;
        flex-wrap: wrap;
        background-color: var(--hauptfarbe_2);
        color: rgb(255, 255, 255);
        padding: 0px 0px;
        width: 100%;
        height: 140px;
        position:fixed;
        bottom: 0px;
        left: 0px;
        
        column-gap: 20px;
        box-shadow: 0px 5px 30px var(--hauptfarbe_2);
        z-index: 1000;
        font-size:1.2rem;
    }
    
    .item {
        text-decoration: none;
        color: rgb(0, 0, 0);
    }

    .speisen_head::before {
        content: "";
        display: block;
        height: 90px; /* Höhe des Offset */
        margin-top: 50px; /* Negativer Margin, gleich der Höhe des Offset */
        visibility: hidden; /* Unsichtbar machen */
    }

    .reservieren {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        position: fixed; /* Fixed Positionierung */
        top: 40px; /* Abstand von oben */
        right: 10px; /* Abstand von rechts */
        z-index: 100; /* Stellt sicher, dass es über anderen Elementen liegt */
        font-size: small;
        background-color: #ffffff;
        border-radius: 20px;
        padding: 10px;
    }

    .reservieren img {
        max-width: 30px; /* maximale Breite */
        max-height: 30px; /* maximale Höhe */
        margin-bottom: -10px;
    }

    .reservieren p {
        text-decoration: none;
        color: var(--hauptfarbe_3);
    }

    .route {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        position: fixed; /* Fixed Positionierung */
        top: 40px; /* Abstand von oben */
        left: 10px; /* Abstand von links */
        z-index: 100; /* Stellt sicher, dass es über anderen Elementen liegt */
        font-size: small;
        background-color: #ffffff;
        border-radius: 20px;
        padding: 10px;
    }
    .route img {
        max-width: 30px; /* maximale Breite */
        max-height: 30px; /* maximale Höhe */
        margin-bottom: -10px;
    }

    .route p {
        text-decoration: none;
        color: var(--hauptfarbe_3);
    }
}

/* Grundlegende Stile für das Drucken festlegen */

/* Stil für den Sticky Button */
.sticky-button {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    position: fixed;
    top: 130px; /* Abstand vom oberen Bildschirmrand */
    left: -150px;  /* Startposition: fast komplett ausgeblendet */
    background-color: #ff6600; /* Hintergrundfarbe des Buttons */
    color: #ffffff; /* Textfarbe */
    padding: 15px 20px;
    border-radius: 0 50px 50px 0;
    text-decoration: none;
    font-size: 10px;
    font-weight: bold;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transition: left 0.5s ease-in-out; /* Animation der Position */
    z-index: 1000; /* Sicherstellen, dass der Button oben bleibt */
    cursor: pointer;
    gap: 20px;
}

.sticky-button-h2 {
    text-orientation: upright;
}

/* Button in vollständig ausgefahrener Position */
.sticky-button.ausgefahren {
    left: 0px; /* Button ist komplett sichtbar */
}

.sticky-button:hover {
    background-color: #e65c00; /* Dunklere Farbe beim Hover */
}

/* Sticky Button Pizza */
.sticky-button2 {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    position: fixed;
    top: 350px; /* Abstand vom oberen Bildschirmrand */
    left: -150px;  /* Startposition: fast komplett ausgeblendet */
    background-color: #117e00; /* Hintergrundfarbe des Buttons */
    color: #ffffff; /* Textfarbe */
    padding: 15px 20px;
    border-radius: 0 50px 50px 0;
    text-decoration: none;
    font-size: 10px;
    font-weight: bold;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transition: left 0.5s ease-in-out; /* Animation der Position */
    z-index: 1000; /* Sicherstellen, dass der Button oben bleibt */
    cursor: pointer;
    gap: 20px;
}

.sticky-button2-h2 {
    text-orientation: upright;
}

/* Button in vollständig ausgefahrener Position  */
.sticky-button2.ausgefahren {
    left: 0px; /* Button ist komplett sichtbar */
}

.sticky-button2:hover {
    background-color: #e65c00; /* Dunklere Farbe beim Hover */
}