/*
 * Mobile css
 * Main Configs defined in custom.css
 */

/******************************** General / Mobile ********************************/

@media all and (max-width: 991px) {

    /* Override */
    section.top-spacer {
        width: 100%;
        height: 80px !important;
        background: url(https://noohn.ch/app/assets/images/logo/Noohn-Logo-Text-red_v2.png);
        background-repeat: no-repeat;
        background-position: center;
        background-size: auto 75%;
        background-color: #383834;
    }
    
    .mobile-logo {
        display: block;
    }

}

/******************************** Menu / Header ********************************/
/* TODO */

@media all and (min-width: 1280px) {
    .languages {
        position: absolute;
        left: calc(calc(1280px - 100vw) / 2);
        top: 25px;
        padding-left: 20px;
    }
}

@media all and (max-width: 1279px) {
    .languages {
        display: inline-block;
        float: left;
        position: relative;
        padding: 15px 8px 0 7px;
    }
}

@media all and (max-width: 991px) {

    div.nav-mobile-action {
        cursor: pointer;
        position: fixed;
        top: 250px;
        right: 0;
        z-index: 1031;
        width: 50px;
        height: 50px;
        border-radius: 10px 0 0 10px;
    }

    div.nav-mobile-action > img {
        position: absolute;
        top: calc(50% - 13px);
        left: calc(50% - 18px);
    }
    div.nav-mobile-action.active > img {
        top: calc(50% - 17px);
    }

    nav#menu {
        overflow-y: hidden;
    }

    #menu header {
        width: 100%;
    }

    #menu header > img {
        width: 100%;
        padding: 15px;
    }

    #menu hr {
        background-color: white;
    }

    #menu .nav-mobile-menu-cat {
        padding: 15px;
    }

    #menu .nav-mobile-menu-cat > .nav-item {
        padding-bottom: 5px;
        text-transform: capitalize;
    }

    #menu .nav-mobile-menu-wrapper {
        height: 100%;
        max-height: 100vh;
    }

    .nav-item-title {
        font-size: 18px !important;
        margin-bottom: 5px !important;
    }

    .nav-item {
        padding: 0 !important;
        margin: 0 !important;
    }

    li > hr {
        margin: 10px 0 !important;
    }

    .landing-container > .social-icons {
        width: auto;
        left: auto;
        right: 10px;
        bottom: 160px;
        text-align: center;
        display: flex;
        justify-content: flex-end;
    }

    .landing-container > .landing-reservation {
        position: absolute;
        bottom: 275px;
        width: 100%;
        left: 20px;
    }

    .landing-down {
        width: 100%;
        display: flex;
        justify-content: center;
        right: initial;
    }

}

/******************************** Landing Page ********************************/
@media all and (max-width: 991px) {
    /* Override */
    .landing-container > .landing-logo > img{
        position: relative;
        margin: 0 auto;
    }

    .landing-container > .landing-logo-text {
        position: absolute;
        top: 10px;
        left: calc(50% - 125px);
    }

    .landing-container > .landing-logo-text > img {
        width: 250px;
    }

    .landing-container > .landing-down {
        bottom: 15px;
        right: 15px;
    }
}
/******************************** Home ********************************/
@media all and (max-width: 991px) {
    section.home-section-text div.home-text-links  {
        position: relative;
        bottom: 0;
    }
    section.home-section-img {
        height: 500px;
        padding: 50px 0;
    }
	section.home-section-text p.home-text {
		font-size: 21px;
	}
}

@media screen and (max-width: 767px) {
    section.home-section-img {
        height: 350px;
        padding: 50px 0;
    }
}

/******************************** Slider ********************************/

@media all and (max-width: 991px) {
    .slick-slider, .slick-track, .slick-list {
        height: 100%;
    }
    .slick-slide {
        height: 100% !important;
        width: 100vw;
    }
    .slick-slide img {
        width: 100% !important;
        height: auto !important;
        object-fit: contain !important;
    }
}

/******************************** Events ********************************/
section.events-section-text,
section.events-section-img{
    clear: both;
    float: left;
    width: 100%;
    min-height: 300px;
}

section.events-section-text div.text-container,
section.events-section-img div.img-container {
    max-width: 1280px;
    width: 100%;
    margin: 0 auto;
    padding: 15px 0;
}

section.events-section-text h4.events-title {
    font-size: 18px;
}

section.events-section-text p.events-text {
    font-size: 26px;
    padding: 15px 0 0;
}

section.events-section-text div.events-text-links {
    position: relative;
    bottom: 0;
    right: 0;
}

section.events-section-text div.events-text-links > a {
    line-height: 30px;
}

div.event-item-wrapper {
    margin: 50px 0;
}

div.event-item-wrapper > div {
    margin: 0 auto;
}
div.event-back {
    position: absolute;
    top: -40px;
    left: 20px;
}

div.event-item div.event-tab {
    text-align: center;
    text-transform: uppercase;
    position: absolute;
    left: 30px;
    height: 35px;
    border-radius: 0 0 10px 10px;
    padding: 4px 10px 10px;
    z-index: 3;
}

div.event-item-container {
    float: left;
    width: 100%;
    margin-bottom: 25px;
}

div.event-item-container > div.event-item {
    width: 100%;
    height: 290px;
    max-height: 290px;
    margin: 0 15px 15px 0;
}

div.event-item img.event-item-img {
    width: 100%;
    height: 250px;
    object-fit: cover;
}

div.event-item > div.event-item-title {
    width: 100%;
    height: 75px;
    padding: 10px 30px 10px 10px;
}

div.event-item > div.event-item-text {
    width: 100%;
    padding: 15px 30px 15px 15px;
}


/******************************** Footer ********************************/
@media all and (max-width: 991px){
    .footer-links-wrapper {
        position: relative;
        float: left;
    }

    footer > .text-container {
        padding-top: 15px;
        padding-bottom: 0;
    }

    footer .footer-logos {
        margin-top: 15px;
        margin-bottom: 15px;
    }

    footer .footer-logos img {
        position: relative;
    }

    footer .footer-logos div {
        position: relative;
        width: 50%;
        float: left;
        clear: none;
    }

    footer .footer-up {
        position: absolute;
        top: 35px;
        right: 15px;
        width: 30px;
        height: 30px;
    }
}

@media screen and (max-width: 767px) {
    footer .footer-logos {
        flex-direction: row;
    }
    footer .footer-logos img {
        max-width: 50%;
    }
}

/******************************** Overlay ********************************/

@media screen and (max-width: 992px) {
    div.event-item-full {
        margin: 0;
        flex-flow: column;
        height: 100%;
		max-height: none;
    }
    div.event-item-full-container {
        width: 100%;
    }
    .overlay-close {
        top: 5px;
        right: 10px;
        z-index: 1;
    }
    div.event-item > div.event-item-content {
        padding: 10px;
    }
    div.home-text-links-left {
        position: relative !important;
        bottom: 0 !important;
    }
    .reverse-order-mobile {
        display: flex;
        flex-flow: column-reverse;
    }
    .btn-noohn {
        margin: 10px 20px;
    }
    .promotion-container {
        bottom: 55px;
    }
    .promotion-container > .promotion {
        background-color: #383834;
        width: 100%;
        border-radius: 0;
    }
	#overlay .img-wrapper {
		width: 100%;
		max-height: 50vh;
		height: 50vh;
	}
	#overlay img {
		object-fit: cover;
		width: 100vw;
		height: 100% !important;
		max-width: 100vw;
	}
}