body {
    min-height: 100%;
    padding: 15px 0;
}

#page {
    margin-top: -15px;
    min-height: 100%;
}

body a,
body a:active,
body a:hover,
body a:visited {
    color: #fff;
}

body .f12-floating-menu {
    z-index: 1000 !important;
}

body .f12-floating-menu a {
    text-decoration: none !important;
}

.tdf-gallery {
    z-index: 1;
}

.tdf-gallery > span {
    position: relative;
    /*margin-bottom: 5px;*/
    overflow: hidden;
    z-index: 1;
}

.tdf-gallery > span:hover img {
    opacity: 0.3;
}

.tdf-gallery > span:hover i {
    opacity: 1;
}

.tdf-gallery > span img {
    background-color: #000;
    border-radius: 5px;
    cursor: pointer;
    max-width: 322px;
    opacity: 1;
    transition: all 0.3s ease-out;
    z-index: 1;
}

.tdf-gallery > span i {
    font-size: 36px;
    right: 20px;
    opacity: 0.5;
    position: absolute;
    top: 20px;
    /*transform: translate(-50%, -50%);*/
    transition: all 0.3s ease-out;
    z-index: 2;
}

.oeffnungszeiten dl {
    display: grid;
    grid-template-columns: minmax(125px, 10%) 90%;
}

.oeffnungszeiten dd {
    margin-bottom: 5px;
}

#primary .uk-subnav-pill > .uk-active > a,
#primary .uk-subnav-pill > * > a:hover {
    background-color: #fff;
    color: #666;
    padding: 10px 20px;
}

#primary .uk-subnav-pill > * >:first-child {
    border-radius: 5px;
    padding: 10px 20px;
}

footer#colophon .uk-link-toggle:hover .uk-link,
footer#colophon .uk-link:hover,
body a:hover {
    color: #d00;
}

@media all and (max-width: 799px) {
    body .f12-floating-menu.display-mobile .f12-floating-menu--inner ul li .icon i {
        font-size: 22px !important;
    }

    body .f12-floating-menu.display-mobile .f12-floating-menu--inner ul li .icon img {
        height: 24px !important;
        width: 24px !important;
    }

    footer#colophon {
        margin-bottom: 25px;
    }

    #home-contact {
        font-size: 1.4em;
    }
}

#footer-widget-left,
#footer-widget-right {
    font-size: 1.4em;
    padding: 25px;
}

#footer-widget-right img {
    filter: grayscale(1);
    transition: filter 0.5s;
}

#footer-widget-right img:hover {
    filter: none;
}

#footer-widget-container a {
    text-decoration: none;
}

#footer-widget-container {
    display: grid;
    grid-template-columns: 50% 50%;
    margin: 0 auto;
    max-width: 1310px;
}

@media (max-width: 999px) {
    #footer-widget-container {
        grid-template-columns: 100%;
    }
}


