.overlay {position:fixed; width:100%; height:100%; top:0; bottom:0; left:0;}
.overlay:before {content:""; position:absolute; width:100%; height:100%; top:0; left:0; background:url(../img/background_menu.jpg) no-repeat center center; background-size:cover; opacity:.9;}
.overlay:after{content:""; position:absolute; right:0; bottom:0; width:300px; height:100px; background:url(../img/logo_menu_2018.png) no-repeat center center; margin-bottom:10px; margin-right:20px; background-size:300px 100px;}
.overlay .close-box{text-align:center; position:relative; width:100%;}
.overlay .overlay-close {padding:20px; overflow:hidden; border:none; background:url(../img/close.png) no-repeat center center; background-size:25px 25px; text-indent:200%; color:transparent; outline:none; z-index:100; margin-bottom:20px; cursor:pointer; -webkit-transition:all .3s linear; -moz-transition:all .3s linear; -o-transition:all .3s linear; -ms-transition:all .3s linear; transition:all .3s linear;}
.overlay .overlay-close:hover{ -webkit-transform:rotate(180deg); -ms-transform:rotate(180deg); transform:rotate(180deg);}
.overlay.hasVideo:before{background:#000; opacity:1;}
.overlay.hasBooking:before{background:#fff; opacity:.85;}
.overlay .embed-video, .overlay .embed-booking{display:none; z-index:8;}
.overlay .embed-video{top:-60px;}
.overlay.hasVideo .embed-video{display:block;}
.overlay.hasBooking .embed-booking{display:block;}

.overlay nav, .overlay h3 {text-align:center; position:relative; top:20px; z-index:9; /*height:60%; -webkit-transform:translateY(-50%); transform:translateY(-50%);*/}
.overlay ul {list-style:none; padding:0; margin:0 auto; display:inline-block; height:auto; position:relative;}
.overlay ul li {display: block;}
.overlay ul li a {font-size:20px; font-weight:500; display:block; padding:5px 0px; color:#fff; -webkit-transition:color 0.2s; transition:color 0.2s; text-transform:uppercase;}

.overlay ul li i.arrow{position:absolute; cursor:pointer; width:21px; height:21px; padding:2px; margin-top:-30px; left:160px; -webkit-transition:all 0.3s linear; -moz-transition:all 0.3s linear; -o-transition:all 0.3s linear; -ms-transition:all 0.3s linear; transition:all 0.3s linear;}
.overlay ul li.close i.arrow{background:transparent url(../img/ico_r.png) 50% 50% no-repeat; transform:rotate(90deg); /*background-size:14px 24px;*/ background-size:13px 21px;}
.overlay ul li.open i.arrow{background:transparent url(../img/ico_r.png) 50% 50% no-repeat; transform:rotate(-90deg); /*background-size:14px 24px;*/ background-size:13px 21px;}

.overlay ul li ul{overflow:hidden; width:100%; -webkit-transition:all 0.3s linear; -moz-transition:all 0.3s linear; -o-transition:all 0.3s linear; -ms-transition:all 0.3s linear; transition:all 0.3s linear;}
.overlay ul li.close{margin-bottom:-15px;}
.overlay ul li.close ul{opacity:0; height:0px;}
.overlay ul li.open ul{opacity:1; height:auto;}

.overlay.hasVideo nav ul{position:absolute; top:-10px; right:60px;}
.overlay.hasVideo nav ul li, .overlay.hasVideo:after, .overlay.hasVideo #nav-booking,
.overlay.hasBooking nav ul li, .overlay.hasBooking:after, .overlay.hasBooking #nav-booking{display:none;}
.overlay.hasVideo nav ul li:first-child, .overlay.hasBooking nav ul li:first-child{display:block;}
.overlay.hasVideo nav ul li .overlay-close{margin-bottom:0px; background:#000 url(../img/close.png) no-repeat center center; background-size:25px 25px; border-radius:100%; padding:25px; opacity:.5;}
.overlay.hasBooking nav ul li .overlay-close{background:#868686 url(../img/close.png) no-repeat center center; background-size:25px 25px; border-radius:100%; padding:25px; top:-10px; position:relative; opacity:1;}
.embed-video{position:relative; padding-bottom:53%; height:0; overflow:hidden; max-width:100%;}
.embed-booking{background:#fff; position:relative; height:100%; overflow:scroll; overflow-y:hidden; max-width:100%;}
.embed-video .iframe{position:absolute; top:0; left:0; width:100%; height:100%;}
.embed-booking .iframe{position:relative; width:100%; height:calc(100% - 100px);}
.embed-booking {}

#menus-link{cursor:pointer;}
.overlay ul li ul.submenu li a{font-size:16px; text-transform:none;}
.overlay ul .qwhite a i{position:absolute; background:url(../img/ico_q_white.png) no-repeat center center; background-size:25px 25px; width:25px; height:25px; margin-left:-30px;}
.overlay ul .qwhite  a span{display:inline-block; height:10px; width:10px;}
.overlay ul .qwhite_plus  a i{position:absolute; background:url(../img/ico_q_white.png) no-repeat center center; background-size:25px 25px; width:25px; height:25px; margin-left:-30px;}
.overlay ul .qwhite a, .overlay ul .qwhite_plus a{padding-left:25px;}
.overlay ul li a:hover, .overlay ul li a:focus{color:#f0f0f0;}
.overlay-scale {visibility:hidden; opacity:0; -webkit-transform:scale(0.9); transform:scale(0.9); -webkit-transition:-webkit-transform 0.2s, opacity 0.2s, visibility 0s 0.2s; transition:transform 0.2s, opacity 0.2s, visibility 0s 0.2s;}
.overlay-scale.open {z-index:1000; text-align:center; visibility:visible; opacity:1; -webkit-transform:scale(1); transform:scale(1);	-webkit-transition:-webkit-transform 0.4s, opacity 0.4s; transition:transform 0.4s, opacity 0.4s;}

#nav-booking{top:-5px; right:20px; position:absolute; z-index:9999;}
#menu-booking, #menu-card, #menu-tour{padding:0; margin-top:10px; -webkit-transition:all 0.3s linear; -moz-transition:all 0.3s linear; -o-transition:all 0.3s linear; -ms-transition:all 0.3s linear; transition:all 0.3s linear; width:195px;}
#menu-booking{display:none;}
.booking{background:#284552; text-transform:uppercase; -webkit-transition:all 0.3s linear; -moz-transition:all 0.3s linear; -o-transition:all 0.3s linear; -ms-transition:all 0.3s linear; transition:all 0.3s linear;}
.booking:hover{background:#e5c739;}
.booking span{display:inline-block; padding:15px 20px; font-size:16px!important; font-weight: 500;}

/*
@media screen and (max-height: 30.5em){
	.overlay nav{height:70%; font-size:34px;}
	.overlay ul li{min-height:34px;}
}
*/

@media only screen and (max-width: 1024px){
	.overlay:after{width:300px; height:100px; background-size:300px 100px; right:calc(50% - 150px); margin-right: 0px;}
}

@media only screen and (max-width: 768px){
    #nav-booking{display:none!important;}
    #menu-booking{display:inline-block!important;}
    .overlay:after{width:180px; height:60px; background-size:180px 60px; right:calc(50% - 90px); margin-right: 0px;}
    .overlay.hasBooking:before{opacity:.95;}
}
