/**************
	GENERALS
***************/

	body, html{
		margin: 0px;
		padding: 0px;
		overflow-x: hidden;
		font-size: 16px;
		position: relative;
	} 

	html, div, li, span, a, body,p,table, input, select{
		-webkit-font-smoothing: antialiased !important;
		-moz-osx-font-smoothing: grayscale !important;
		font-family: 'Montserrat', sans-serif !important;
		-webkit-overflow-scrolling: touch;
	}

	img{
		width: 100%;
	}
			
	.content_body{
		float: left;
		width: 100%;
	}

	.tb{
		display: table;
		width: 100%;
		height: 100%;
		text-align: center;
	}

	.td{
		vertical-align: middle;
		display: table-cell;
		width: 100%;
		height: 100%;
	}

	.relative{
		position: relative !important;
	}

	.ptm-2{
		padding-top: 2em;
	}

	.txt-upper{
		text-transform: uppercase;
	}

	.title-style-1,
	.title-style-1 span{
		font-family: 'DM Serif Text', serif !important;
		font-size: 2em;
		line-height: 1.2em;
		text-align: center;
		color: #fff;
		text-transform: uppercase;
	}

	.title-style-1 span{
		font-size: 1em !important;
	}

	.title-shadow-1{
		text-shadow: 0 0.0625em 0.0625em #fc628e,
		0 0.125em 0 #fc628e;
	}

	.title-shadow-2{
		text-shadow: 0 0.0625em 0.0625em #008bfb,
		0 0.125em 0 #008bfb;
	}

	.dism{
		display: none;
	}

	@media screen and (min-width: 992px) {
		.landscape .title-style-1{
			font-size: 2.5em;
		}

		.dism{
			display: block;
		}
	}

	.text-style-1{
		color: #fff;
		text-align: center;
		line-height: 1.6em;
		font-weight: 400;
	}

/**************
	IPHONE
***************/

	a[href^="tel"] {
		color: #fff;
		text-decoration: none;
	}
	input,
	button{
		border-radius: 0;
		appearance: none;
		-webkit-appearance: none;
		-moz-appearance: none;
		-webkit-border-radius: 0;
	}

	select{
		background-color: transparent !important;
	}

/***********
MENU
***********/

.menu{
	display: table;
	position: fixed;
	width: 100%;
	height: 5%;
	top: 0;
	left: 0;
	background: #0d46ac;
	padding: 1em 0;
	z-index: 99;
	/* box-shadow: 0 -0.375em 1.875em 0 #333; */
}

.menu .logo{
	width: 70%;
	text-align: left;
	padding-left: 2em;
	cursor: pointer;
}

.menu .logo img{
	width: 10em;
	vertical-align: middle
}

.menu .mobile{
	width: 30%;
	text-align: right;
	padding-right: 2em;
}

.menu .container{
	display: none;
}

.menu .mobile .hamburguer img{
	width: 1.5em;
	vertical-align: middle;
}

.menu.active_mobile{
	display: block;
}

.menu.active_mobile .container{
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100vh;
	background: #0d46ac;
	z-index: 99;
	overflow: auto;
}

.menu.active_mobile .container .header__mobile{
	display: table;
	width: 100%;
	padding: 1em 0;
}

.menu.active_mobile .container a,
.menu.active_mobile .container .btn{
	font-size: 1.2em;
	display: block;
	padding-top: 1.5em;
	padding-left: 2em;
	text-decoration: none;
	color: #fff;
	text-align: left;
	font-weight: 500;
	text-transform: uppercase;
}

.menu.active_mobile .container .btn{
	background: transparent;
	box-shadow: none !important;
	color: #fff !important;
	padding-bottom: 0;
}

.menu.active_mobile .container .only_mobile{
	display: block;
	padding-bottom: 2em;
}

@media screen and (min-width: 992px){
	.landscape .menu .logo{
		width: 15%;
		padding-left: 4em;
	}

	.landscape .menu .mobile{
		display: none;
	}

	.landscape .menu .container{
		display: table-cell;
		padding-right: 4em;
		text-align: right;
	}

	.landscape .menu .container .header__mobile{
		display: none;
	}

	.landscape .menu .container a{
		display: inline-block;
		padding-right: 2em;
		padding-top: 0.3em;
		text-decoration: none;
		color: #fff;
		text-align: left;
		font-size: 0.8em;
		font-weight: 500;
		line-height: 1.5em;
		text-transform: uppercase;
	}

	.landscape .menu .container .only_mobile{
		display: none;
	}

	.landscape .menu .container .btn{
		font-size: 0.8em;
		float: right;
		background-color: #fff;
		padding: 0.5em 1em;
		border-radius: 0.2em;
		color: #0d46ac !important;
		text-transform: uppercase;
		font-weight: 600;
	}
}

/***********
BANNER
***********/

	.banner_style_1{
		float: left;
		width: 100%;
		clear: both;
		position: relative;
		padding: 2em;
		box-sizing: border-box;
	}

	.banner_style_1 .content_background {
		height: 100%;
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 12;
	}

	.banner_style_1 .container_text{
		height: 100%;
		width: 100%;
    color: #000;
    position: absolute;
    left: 0;
    opacity: 1;
		z-index: 20;
		top: 0;
	}

	.banner_style_1 .container_text .container_text_vertical{
		display: table;
		width: 100%;
		height: 100%;
		padding: 2em;
		box-sizing: border-box;
	}

	.banner_style_1 .container_text .container_text_vertical .cell {
		display: table-cell;
		text-align: center;
		vertical-align: middle;
	}

	.banner_style_1 .container_text .container_text_vertical .details.cell img{
		width: 18em;
		position: relative;
		z-index: -1;
	}

	.banner_style_1 .container_text .container_text_vertical .details.cell .sub-title{
		text-transform: uppercase;
		font-weight: 800;
	}

	.banner_style_1 .container_text .container_text_vertical .cell .title{
		font-size: 3em;
    font-weight: 600;
    line-height: 1.2em;
    width: 100%;
		margin: 0;
		text-align: center;
		text-transform: uppercase;
		color: #fff;
	}

	.banner_style_1 .container_text .container_text_vertical .cell .title span{
		font-weight: 800;
	}

	.banner_style_1 .container_text .container_text_vertical .cell .title img{
		width: 10em;
	}

	.banner_style_1 .container_text .container_text_vertical .cell .sub_title{
		font-size: 1em;
    font-weight: 500;
    line-height: 1.7em;
    margin: 0;
		padding-top: 0.4em;
		text-align: center;
	}

	.banner_style_1 .container_text .container_text_vertical .cell .sub_title .text_1{
		font-weight: bold;
		font-size: 1.3em;
	}

	.banner_style_1 .container_text .container_text_vertical .cell .sub_title .text_2{
		display: inline-block;
		text-align: left;
		color: #fff
	}

	.banner_style_1 .container_text .container_text_vertical .cell .sub_title .text_2 img{
		width: 0.8em;
		padding-left: 0;
		top: 0;
	}

	.banner_style_1 .container_text .container_text_vertical .cell .button{
		width: 100%;
		text-align: center;
		padding-top: 2em;
	}

	.banner_style_1 .container_text .container_text_vertical .cell .button a{
		font-size: 1em;
		display: block;
		background-color: transparent;
		border: 0.0625em solid #fff;
		padding: 0.5em 1em;
		border-radius: 0.25em;
		color: #fff;
		text-decoration: none;
		cursor: pointer;
	}

	.banner_style_1 .container_text .container_text_vertical .cell .button a img{
		width: 1.5em;
		vertical-align: middle;
		margin-left: 0.5em;
	}

	.banner_style_1 .container_text .container_text_vertical .cell .btns{
		padding-top: 0;
	}

	.banner_style_1 .container_text .container_text_vertical .container_form.cell{
		width: 100%;
		box-sizing: border-box;
	}

	.banner_style_1 .container_text .container_text_vertical .container_form .box_form{
		box-shadow: 0 0.25em 1em 0 rgba(0,0,0,.15);
	}

	.banner_style_1 .container_img {
    float: left;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 5;
    overflow-x: hidden;
    background-color: #fff;
	}

	.banner_style_1 .container_img .img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
		background-size: cover;
		background-position: center center;
	}

	.banner_style_1 .container_video{
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: 10;
		overflow: hidden;
		display: none;
	}

	.banner_style_1 .container_video iframe{
    position: relative;
		width: 180%;
    height: 180%;
    top: -40%;
    left: -40%;
	}

	.banner_style_1 .container_video video{
		height: 100%;
	}

	@media screen and (min-width: 600px) {
		.banner_style_1 .container_video video{
			height: auto;
			width: 100%;
		}
	}

	@media screen and (min-width: 700px){
		.banner_style_1{
			padding: 2em 8em;
		}
	}

	@media screen and (min-width: 992px){
		.landscape .banner_style_1{
			padding: 2em 4em;
			overflow: hidden;
		}

		.landscape .banner_style_1 .container_text{
			position: absolute;
			top: 0;
		}

		.landscape .banner_style_1 .container_text .container_text_vertical{
			display: table;
			box-sizing: border-box;
		}

		.landscape .banner_style_1 .container_text .container_text_vertical .details.cell{
			display: table-cell;
			vertical-align: middle;
		}

		.landscape .banner_style_1 .container_text .container_text_vertical .cell{
			display: table-cell;
			vertical-align: middle;
		}

		.landscape .banner_style_1 .container_text .container_text_vertical .cell .sub_title .text_2{
			font-size: 0.9em;
		}

		.landscape .banner_style_1 .container_text .container_text_vertical .cell .button a{
			display: inline-block;
			font-size: 0.8em;
		}

		.landscape .banner_style_1 .container_text .container_text_vertical .cell img{
			position: relative;
			width: 30em;
			z-index: -1;
		}

		.landscape .banner_style_1 .container_text .container_text_vertical .cell .title{
			font-size: 4em;
		}

		.landscape .banner_style_1 .container_text .container_text_vertical .cell .btns{
			padding-top: 2em;
		}

		.landscape .banner_style_1 .container_text .container_text_vertical .container_form.cell{
			width: 33%;
		}

		.landscape .banner_style_1 .content_background .background_1 {
			height: 100%;
			width: 100%;
			position: absolute;
			top: 0;
			left: 0;
			z-index: 2;
		}
		
		.landscape .banner_style_1 .container_video{
			display: block;
		}

	}

/***********
CONTACT
***********/

.contact{
	position: relative;
	width: 100%;
	height: 100%;
	padding: 4em 2em;
	box-sizing: border-box;
	background-color:#f7f7f7;
}

.contact .title{
	font-size: 1.9em;
	text-align: center;
	line-height: 1.4em;
	font-weight: 600;
}

.contact .container{
	width: 100%;
	height: 100%;
}

.contact .container .element{
	padding-top: 2em;
	width: 100%;
	text-align: center;
}

.contact .container .element .sub_title{
	font-size: 1.4em;
	line-height: 1.4em;
	font-weight: 600;
}

.contact .container .element .content{
	font-size: 0.9em;
	line-height: 1.7em;
	padding-top: 0.5em;
	font-weight: 500;
}

.contact .container .element .content a{
	color: #000;
	text-decoration: none;
}

@media screen and (min-width: 992px){
	.landscape .contact{
		padding: 4em;
	}

	.landscape .contact .container{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	.landscape .contact .container .element{
		width: 30%;
	}

	.landscape .contact .container .element .content{
		padding-top: 1em;
	}
}

/***********
PACKAGES
***********/
.packages{
	position: relative;
	width: 100%;
	height: 100%;
	text-align: center;
	background-color: #f1f1f1;
	padding-top: 2em;
}

.packages .layer_top{
	width: 100%;
	position: relative;
	top: 0;
	left: 0;
	box-sizing: border-box;
}

.packages .layer_top .title{
	color: #000;
	text-align: center;
	width: 100%;
	margin: auto;
	font-size: 1.9em;
	font-weight: 600;
	line-height: 1.4em;
	padding: 1em;
	padding-bottom: 0;
	box-sizing: border-box;
}

.packages .layer_top .text{
	color: #000;
	font-weight: 500;
	font-size: 0.9em;
	line-height: 1.7em;
	text-align: center;
	width: 80%;
	margin: auto;
	padding-top: 1.5em;
	padding-bottom: 2em;
}

.packages .container{
	position: relative;
	top: -2em;
	padding: 2em 0;
	box-sizing: border-box;
	width: 100%;
	max-width: 90%;
	display: inline-block;
	z-index: 5;
	border-radius: 0.4em;
}

.packages .container .element{
	display: inline-block;
	width: 100%;
	border-bottom: 0.09375em solid #f1f1f1;
	box-sizing: border-box;
	padding: 2em 1em;
}

.packages .container .element:last-child{
	border-bottom: none;
}

.packages .container .element .image{
	width: 100%;
	text-align: center;
}

.packages .container .element .image img{
	width: 5em;
}

.packages .container .element .sub_title{
	width: 100%;
	text-align: center;
	color: #000;
	font-weight: 600;
	text-transform: uppercase;
	padding-top: 0.5em;
	font-size: 1.4em;
}

.packages .container .element .text{
	color: #000;
	font-weight: 500;
	font-size: 0.9em;
	line-height: 1.7em;
	margin: auto;
	padding-top: 1em;
}

.packages .container .element .price{
	padding: 1em 0;
	width: 100%;
	font-size: 1.5em;
	font-weight: 700;
	color: #000;
	text-align: center;
}

.packages .container .element .button{
	width: 100%;
}

.packages .container .element .button a{
	width: 70%;
	display: block;
	background-color: #009253;
	border: 0.09375em solid transparent;
	border-radius: 0.3em;
	padding: 1em 0;
	text-align: center;
	text-decoration: none;
	color: #fff;
	margin: auto;
	font-size: 1em;
}

@media screen and (min-width: 778px){

	.landscape .packages .container .element{
		width: 49%;
		padding: 0 1em;
	}

	.landscape .packages .container .element{
		border-bottom: none;
	}

	.landscape .packages .container .element .button a{
		font-size: 0.8em;
	}
}

@media screen and (min-width: 992px){
	.landscape .packages{
		padding: 2em 4em;
		box-sizing: border-box;
	}

	.landscape .packages .container .element .button a:hover{
		background-color: transparent;
		color: #009253;
		border-color: #009253;
	}
}

/***********
FOOTER
***********/
footer{
	position: relative;
	width: 100%;
	height: 100%;
	background-color: #0d46ac;
	padding: 2em;
	box-sizing: border-box;
	color: #fff;
}

footer .logo{
	text-align: center;
}

footer .logo img{
	width: 4em;
}

footer .right{
	margin-top: 0.8em;
	font-size: 0.9em;
	text-align: center;
	color: #fff;
}

footer .right:last-child{
	margin-top: 0.4em;
}

/***********
MODAL VIDEO
***********/

.video-modal-style-1{ 
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.6);
	position: fixed;
	top: 0em;
	left: 0em;
	text-align: center;
	display: none;
	z-index: 999;
}

.video-modal-style-1.active{
	display: block !important;
}

.video-modal-style-1 .video-modal-windows{
	width: 100%;
	height: 100%;
	position: absolute;
	display: table;
	top: 0px;
	left: 0px;
}

.video-modal-style-1 .video-modal-aling{
	width: 100%;
	height: 100%;
	display: table-cell;
	vertical-align: middle;
	text-align:center;
}

.video-modal-style-1 .video-modal-container{
	width: 70%;
	background-color: #fff;
	display: inline-block;
}

.video-modal-style-1 .video-modal-container #video_iframe{
	width: 100%;
	height: 100%;
	border: none;
}

.video-modal-close{
	position: absolute;
	top: 2em;
	right: 2em;
	cursor: pointer;
	font-weight: bold;
	cursor: pointer;
	z-index: 1000;
}

.video-modal-close img{
	width: 1.5em;
}

@media screen and (max-width: 700px){
	.video-modal-style-1 .video-modal-container{
		width: 100%;
	}
}

/***********
  VIDEO
***********/

.video{
	position: relative;
	width: 100%;
	height: 100%;
	padding: 2em;
	padding-top: 4em;
	box-sizing: border-box;
	padding-bottom: 0;
	background-image: url('../img/background/bg-blue.jpg');
	background-size: cover;
	background-position: center center;
}

/* .video .layer_black{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 5;
	background: rgb(0,153,169);
	background: linear-gradient(119deg, rgba(0,153,169,1) 0%, rgba(0,67,81,1) 100%); 
} */

.video .container_video{
	position: relative;
	width: 100%;
	height: 100%;
	z-index: 10;
}

.video .container_video .background{
	position: relative;
	top: 2em;
}

.video .container_video .text{
	margin-top: 1em;
}

.video .container_video .text p span{
	display: block;
	font-weight: 700;
}

.video .container_video .image{
	position: relative;
	width: 100%;
	height: 100%;
}

.video .container_video .image .play{
	position: absolute;
	top: 4em;
	left: 0;
	right: 0;
	bottom: 0;
	width: 4em;
	margin: auto;
	cursor: pointer;
}

@media screen and (min-width: 768px){
	.landscape .video .container_video .background{
		width: 80%;
		margin-left: 10%;
	}
}

@media screen and (min-width: 992px){
	.landscape .video{
		padding-top: 4em;
	}

	.landscape .video .container_video .title-style-1,
	.landscape .video .container_video .text-style-1{
		width: 70%;
		margin-left: 15%;
	}

	.landscape .video .container_video .title-style-1 img{
		margin-top: 1em;
		width: 70%;
	}

	.landscape .video .container_video .background{
		width: 50%;
		top: 3em;
		margin-left: 25%;
	}

	.landscape .video .container_video .play{
		left: 47%;
		top: 10.5em;
		margin: 0;
	}

	/* .landscape .video .container_video .title{
		display: block;
		float: right;
		font-size: 2em;
		position: relative;
		top: 6.5em;
		right: -0.5em;
		font-weight: 600;
		line-height: 1.2em;
		width: 30%;
	} */
}

/***********
  Biography
***********/
.biography{
	position: relative;
	width: 100%;
	height: 100%;
	padding: 2em;
	padding-top: 4em;
	box-sizing: border-box;
	background: #fff;
}

.biography .container .background-title{
	position: relative;
	width: 100%;
	height: 4em;
	display: flex;
	justify-content: center;
	align-items: center;
}

.biography .container .background-title .title{
	color: #0d46ac;
	font-weight: 600;
}

.biography .container .layer_left .btns{
	padding-bottom: 0;
}

.biography .container .layer_left .list .person{
	display: flex;
	align-items: center;
	margin-top: 1em;
	width: 100%;
}

.biography .container .layer_left .list .person img{
	width: 1em;
}

.biography .container .layer_left .list .person .name{
	font-size: 0.8em;
	padding-left: 0.5em;
	font-weight: 600;
	text-transform: uppercase;
}

@media screen and (min-width: 600px) {
	.biography .container .layer_left .list .person{
		width: 75%;
		margin-left: 25%;
	}
}


@media screen and (min-width: 992px){
	.landscape .biography{
		padding: 4em 8em;
	}
	
	.landscape .biography .container .title{
		font-size: 2.3em;
		text-align: left;
		padding-top: 0;
	}

	.landscape .biography .container .layer_left,
	.landscape .biography .container .layer_right{
		display: inline-block;
		width: 100%;
	}

	.landscape .biography .container .layer_right{
		padding-left: 1.5em;
		padding-right: 1.5em;
		box-sizing: border-box;
	}

	.landscape .biography .container .background-title{
		padding-top: 2em;
	}

	.landscape .biography .container .layer_left .text{
		font-size: 0.8em;
		line-height: 1.8em;
	}

	.landscape .biography .container .layer_left .text p:last-child{
		margin-top: 2em;
	}

	.landscape .biography .container .layer_left .subtitle{
		padding-top: 4em;
	}

	.landscape .biography .container .layer_left .subtitle .text{
		position: relative;
		top: -1em;
		font-size: 2.3em;
		font-weight: 600;
		line-height: 1.2em;
		color: #000;
	}

	.landscape .biography .container .layer_right .img_bio{
		position: relative;
		top: 3.8em;
	}

	.landscape .biography .container .layer_left .list{
		display: flex;
		flex-wrap: wrap;
		align-items: center;
	}

	.landscape .biography .container .layer_left .list .person{
		width: 39%;
		margin-left: 11%;
	}

	.landscape .biography .container .layer_left .btns{
		padding-bottom: 1em;
	}
}

/****************
  LANGUAGE
****************/

.selector-language{
	display: none;
}

@media screen and (min-width: 992px){
	.landscape .selector-language{
		display: block;
		float: right;
		padding-top: 0.25em;
		padding-left: 1em;
	}

	.landscape .selector-language .ico{
		display: inline-block;
		width: 1em;
		height: 1em;
		vertical-align: text-top;
	}

	.landscape .selector-language .selector{
		display: inline-block;
	}
}


/****************
  BUTTONS
****************/

.btns{
	width: 100%;
	text-align: center;
	padding: 2em 0;
}

.btns a,
.btns .btn{
	font-size: 1em;
	display: block;
	padding: 0.5em 1em;
	border: 0.0625em solid #0d46ac;
	margin-top: 1em;
	border-radius: 0.3em;
	text-decoration: none;
	color: #fff !important;
	font-weight: 500;
	background-color: #0d46ac;
	text-transform: uppercase;
}

.btns .btn.two{
	background-color: transparent;
	color: #0d46ac !important;
}

.btns .btn:hover{
	font-size: 1em;
	padding: 0.5em 1em;
	background-color: #0d46ac;
}

.btns .btn.two:hover{
	background-color: transparent;
	color: #0d46ac !important;
}

.btns .btn-book{
	border-color: #fff;
	background-color: transparent;
}

@media screen and (min-width: 992px) {
	.landscape .btns a,
	.landscape .btns .btn{
		display: inline-block;
		width: 13em;
	}
}

/****************
  BOOK
****************/
.book{
	float: left;
	width: 100%;
	padding: 4em 2em;
	box-sizing: border-box;
	background-image: url('../img/background/Background-1.jpg');
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}

.book .btns{
	padding-top: 0;
	padding-bottom: 0;
}

@media screen and (min-width: 700px) {
	.book{
		padding: 4em 8em;
	}
}

@media screen and (min-width: 992px) {
	.landscape .book{
		padding: 6em 2em;
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		justify-content: center;
	}

	.landscape .book span{
		display: block;
	}
}

.addeventatc .addeventatc_icon,
.addeventatc_dropdown .copyx{
	display: none !important;
}

/****************
  SEPARATOR
****************/
.separator{
	border-top: 0.0625em solid #fff;
	width: 100%;
}

.separator.small{
	width: 50%;
}