@charset "utf-8";

* {
	font-family: 'Lato', sans-serif;
	font-weight:400;
}

html {
	margin:0px;
	overflow-x: hidden;
}

body {
	margin:0px;
	font-size:1em;
}

header {
	position:fixed;
	top:-132px;
	left:0;
	right:0;
	z-index:10;
	width:100%;
	height:132px !important;
	
	-webkit-user-select: none; /* Safari */
	-ms-user-select: none; /* IE 10 and IE 11 */
	user-select: none; /* Standard syntax */	
}

#headerContent {
	color:#FFF;
	margin:auto;
	max-width:1480px;
	box-sizing: border-box;
	padding:16px 32px 0px 32px;
	font-size:1em;
}

.navFixed {
	height:112px !important;
	background-color:#FFF;
	-webkit-box-shadow:0px 10px 16px rgba(0, 0, 0, 0.1);
	-moz-box-shadow:0px 10px 16px rgba(0, 0, 0, 0.1);
	box-shadow:0px 10px 16px rgba(0, 0, 0, 0.1);
}

.navFixed #headerContent {
	padding:0px 32px 0px 32px;
}

.navFixed #headerContent #mobileMenuBtn span {
	color:#000 !important;
}

header h1 {
	display:inline;
	float:left;
	margin:0px;
	padding:0px;
}

#logoBlack {
	display:none;
}

#mobileMenuBtn {
	display:none;
	float:right;
	font-size:0.7em;
	padding:8px 16px 16px 8px;
	cursor:pointer;
	text-transform: uppercase;
	
}
#mobileMenuBtn span {
	color:#FFF !important;
}
.material-symbols-outlined {
	font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 48;
	color:#333;
	position:relative;
	top:7px;
	margin-left:7px;
}
#closeMenuBtn {
	display:none;
	cursor:pointer;
}
#mobileMenuBtn img {
	top:-1px;
	position:relative;
	margin-left:10px;
}

header nav {
	display:inline;
	float:right;
}

nav ul {
	margin:40px 0px 0px 0px;
	padding:0px;
}
nav ul li {
	display:inline;
	list-style:none;
	margin:0px;
	padding:0px;
}
nav ul li a {
	display: inline-block;
	position: relative;	
	text-transform: uppercase;
	text-decoration:none;
	letter-spacing:2px;
	font-weight:700;
	font-size:0.9em;
	color:#FFF;
	/*text-shadow: 1px 1px 2px #000000;*/
}
.navFixed nav ul li a {
	color:#000;
	text-shadow:none;
}

nav ul li a:after {
  content: '';
  position: absolute;
  width: 100%;
  transform: scaleX(0);
  height: 1px;
  bottom: 0;
  left: 0;
  background-color: #FFFFFF;
  transform-origin: bottom right;
  transition: transform 0.25s ease-out;
}

.navFixed nav ul li a:after {
	background-color:#000;
}

nav ul li a:hover:after {
  transform: scaleX(1);
  transform-origin: bottom left;
}

nav ul li:not(:first-child) {
	margin-left:32px;
}

main {
	
}

.homeMedia {
	width:100%;
	height:100vh;
	background-color:#000;
	top:0%;
    left:0%;
    overflow: hidden;	
}

#lockVideo {
	position: absolute;
	z-index: 1;
	top:0;
	left:0;
	width:100%;
	height:100%;
	/*background-color:rgba(255,0,0,0.5);*/
}

#datesContainer {
	position: absolute;
	z-index: 2;
	top:35%;
	width:100%;
	text-align:center;
	/*background-color:rgba(255,0,0,0.4);*/
}
#datesContainer p {
	font-family: 'Cinzel', serif !important;
	font-size: 3em;
	margin:0px;
	padding:0px 0px 16px 0px;
	color: white;
}
.villaMedia {
	width:100%;
	height:46vh;
	color:#FFF;
	background-color:#000;
	font-family: 'Cinzel', serif !important;
	font-size:4em;
	line-height:46vh;
	text-align: center;
	background:url("../images/villa_bg.jpg") no-repeat center #617DA5;
	background-size: cover;
	/*text-shadow: 2px 2px 4px #000000;*/
}
.howMedia {
	width:100%;
	height:46vh;
	color:#FFF;
	background-color:#000;
	font-family: 'Cinzel', serif !important;
	font-size:4em;
	line-height:46vh;
	text-align: center;
	background:url("../images/how_bg.jpg") no-repeat center #408FC8;
	background-size: cover;
	/*text-shadow: 2px 2px 4px #000000;*/
}
.galleryMedia {
	width:100%;
	height:46vh;
	color:#FFF;
	background-color:#000;
	font-family: 'Cinzel', serif !important;
	font-size:4em;
	line-height:46vh;
	text-align: center;
	background:url("../images/gallery_bg.jpg") no-repeat center #488AEA;
	background-size: cover;
	/*text-shadow: 2px 2px 4px #000000;*/
}
.bookMedia {
	width:100%;
	height:140px;
	color:#FFF;
	background-color:#000;
	font-family: 'Cinzel', serif !important;
	font-size:4em;
	line-height:140px;
	text-align: center;
	background:url("../images/book_bg.jpg") no-repeat center;
	background-size: cover;
	/*text-shadow: 2px 2px 4px #000000;*/
}

.photoDesc {
	text-align:center;
	font-size:15px;
	color: rgba(255,255,255,0.8);
}
.photoDesc a {
	font-weight: bold;
}
.descHidden {
	opacity: 0.001;
}
.width100 {
	width: 100%!important;
}




video {
	position:relative;
	min-width:101% !important;
	height:100%;
	left:50%;
	transform: translateX(-50%);
	object-fit: cover;
	opacity:0;
}

article {
	padding-top:40px;
}
article h2 {
	font-family: 'Cinzel', serif !important;
	text-transform: capitalize;
	font-size:2.6em;
	margin:0px 0px 16px 0px;
	padding:0px;
	text-align:center;
}
article p {
	padding-left:32px;
	padding-right:32px;
	padding-bottom:32px;
	margin:auto;
	max-width:1100px;
	box-sizing: border-box;
	font-size:1.4em;
	line-height:1.6em;
	text-align:center;	
}
article p img {
/*	margin-right:20px;*/
}

#footerCopyright #ppLink {
	color:#FFF !important;
}
#ppLink, #termLink, #pricesLink, #cookingLink {
	color:#000 !important;
}
#ppLink:hover, #termLink:hover, #pricesLink:hover {
	text-decoration:none;
}



div#ar3photos {
	padding:40px 0px 0px 0px;
	overflow: hidden;
}

.oneOf3Photo {
	display: table; 
	overflow: hidden;
	width:33.33%;
	aspect-ratio: 3/2;
	background-size:100% !important;
	background-color:#000;
	text-align:center;
    transition: background-size 0.3s ease-in-out;
	-moz-transition: background-size 0.3s ease-in-out;
	-ms-transition: background-size 0.3s ease-in-out;
	-o-transition: background-size 0.3s ease-in-out;
	-webkit-transition: background-size 0.3s ease-in-out;
}
.oneOf3Photo div.hiddenText {
	display: table-cell; 
	vertical-align: middle;
	background-color:rgba(0, 0, 0, 0.5);
	transition: opacity 0.3s ease-in-out;
	-moz-transition: opacity 0.3s ease-in-out;
	-ms-transition: opacity 0.3s ease-in-out;
	-o-transition: opacity 0.3s ease-in-out;
	-webkit-transition: opacity 0.3s ease-in-out;
	opacity:0;
	padding:50px;
	font-style:italic;
	font-size:2em;
	font-size: 1.2vw;
	font-weight:300;
	letter-spacing:0.5px;
	color:#FFF;
	cursor:default;
}
.oneOf3Photo div.hiddenText:hover {
	opacity:1;
}
.oneOf3Photo:hover {
	background-size:110% !important;
}
#mainPhoto1 {
	background:url("../images/main1.jpg") no-repeat center;
}
#mainPhoto2 {
	background:url("../images/main2.jpg") no-repeat center;
	cursor:pointer;
}
#mainPhoto3 {
	background:url("../images/main3.jpg") no-repeat center;
}
.oneOf3Photo a {
	display: table-cell; 
	vertical-align: middle;
}
#mainPhoto2 img {
	max-height: 30%;
	max-width: 30%; 
}



.readMore {
	width:150px;
	display:block;
	text-align:center;
	padding:16px 20px 19px 20px;
	font-variant:small-caps;
	font-size:1em;
	color:#513C27;
	border:1px solid #513C27;
	margin:auto;
	background-color:rgba(255,255,255,0.5);
	text-decoration:none;
	transition: background-color 0.3s ease-in-out;
	-moz-transition: background-color 0.3s ease-in-out;
	-ms-transition: background-color 0.3s ease-in-out;
	-o-transition: background-color 0.3s ease-in-out;
	-webkit-transition: background-color 0.3s ease-in-out;	
}
.widerMore {
	width:260px !important;
}
.readMore:hover {
	color:#FFF !important;
	border:1px solid #513C27;
	background-color:#513C27
}


#arOurVilla {
	background: url("../images/bg-logo.jpg")  no-repeat center;	
}
#arVilla p {
	text-align:justify;
}
#arHow p {
	text-align:justify;
}

.personText {
	font-size:1.2em;
	line-height:1.8em;
	text-align:justify;
}

iframe {
	margin:0px;
	padding:0px;
	line-height:0px;
	border:0px;
}

footer {
	width:100%;
	margin-top:-4px;
	background-color:#000;
	padding:40px 0px;
	box-sizing: border-box;
}

#footerContent {
	margin:auto;
	max-width:1480px;
	box-sizing: border-box;
	padding:0px 32px;
	font-size:1em;
	line-height:1.4em;
	color:#FFF;
}

#footerContent a {
	color:#FFF;
	text-decoration:none;
	letter-spacing:2px;
	font-weight:400;
}

#footerLogo {
	margin:0px 0px 20px 0px;
}
#footerSocial {
	margin-top:20px;
}
#footerSocial img {
	margin-right:20px;
}
#footerCopyright {
	margin-top:20px;
	text-align:center;
}

.contactElement {
	margin:20px 80px 0px 0px;
}

.contactElement div {
	padding-bottom:6px;
	font-weight:900;
}








.my-gallery {
	font-size:0px;
	margin: auto;
	text-align:center;
}
.alphaImg {
	margin:1px;
}
.thumb {
	position:relative;
}

figure {
	display:inline;
	margin:0px;
	font-size:0px;
}
figcaption {
	float:left;
}
.pswp__caption {

}

/*@media (max-width: 480px) {
@media only screen and (min-width: 340px) and (max-width: 380px) {
*/
@media screen and (max-width: 900px) {
	#logoWhite, #logoBlack, #footerLogo {
		width:240px;
	}
	
	#datesContainer {
		top:30%;
	}
	#datesContainer p {
		font-size:1.6em;
	}	
	
	.personText img {
		width:140px;
	}
	#datesBox {
		width:340px;
	}
	
	header {
		height:80px !important;
	}
	#headerContent {
		padding:10px 0px 0px 10px;
	}
	#mobileMenuBtn {
		display:inline;
	}
	#closeMenuBtn {
		color:#000;
		display:inline;
		float:right;
		text-align:right;
		box-sizing: border-box;
		padding:20px 20px 20px 20px;
	}
	header nav {
		/*display:inline;
		float:left;
		*/
		display:none;
		position:absolute;
		top:0px;
		right:0;
		padding:0px 0px 40px 0px;
		

		background-color:#FFF;
		
		-webkit-box-shadow:0px 0px 20px rgba(0, 0, 0, .4);	
		-moz-box-shadow:0px 0px 20px rgba(0, 0, 0, .4);	
		box-shadow:0px 0px 20px rgba(0, 0, 0, .4);		
	}
	.navFixed {
		height:78px !important;
	}
	.navFixed #headerContent {
		padding:8px 0px 0px 10px;
	}
	.navFixed #mobileMenuBtn {
		color:#000;
	}
	nav ul {
		margin:0px 0px 0px 0px;
		padding:0px 40px;
	}
	nav ul li {
		display: list-item;
		text-align:center;
		margin-left:0px !important;
	}
	nav ul li a {
		letter-spacing:1px;
		font-weight:400;
		font-size:1.5em;
		line-height:3em;
		font-family: 'Cinzel', serif !important;
		color:#000;	
		text-shadow:none;
	}
	.navFixed nav ul li a:after {
		background-color:#FFF;
	}

		
	article {
		padding-top:24px;
	}
	article h2 {
		font-size:2.0em;
		margin:0px 0px 12px 0px;
	}
	article p {
		padding-left:16px;
		padding-right:16px;
		padding-bottom:16px;
		
		max-width:95%;
		
		font-size:1.1em;
		line-height:1.6em;
		text-align:justify;
	}
	#arHow p img {
		width:100%;
	}
	.personText {
		font-size:1.0em;
	}
	
	.villaMedia {
		height:30vh;
		font-size:2em;
		line-height:30vh;
	}
	.howMedia {
		height:30vh;
		font-size:2em;
		line-height:30vh;
	}
	.galleryMedia {
		height:30vh;
		font-size:2em;
		line-height:30vh;
		background-size: cover;
		/*text-shadow: 2px 2px 4px #000000;*/
	}
	.bookMedia {
		height:80px;
		line-height:80px;
	}
	
	.oneOf3Photo {
		width:100%;
		display: flex;
		justify-content: center;
		align-items: center;
		/*background-image:none !important;*/
	}
	
	#mainPhoto1,#mainPhoto3 {
		display:none;
	}
	#mainPhoto2 img {
		max-height: 80%;  
		max-width: 80%;
	}
	
	#footerSocial a img {
		width:60px;
		height:60px;
	}
}




strong {
	font-weight:700;
}

.fLeft {
	float:left;
}
.fRight {
	float:right;
}
.clear {
	clear:both;
}
.clear, .clearMobile {
	height:0px !important;
	font-size:0px !important;
	line-height:0px !important;
}
.tCenter {
	text-align:center;
}

