* {
	padding:0px;
	margin:0px;
	border:none;
}
@font-face {
    font-family: 'GotNi';
    src: url(fo/gn.ttf);
}
@font-face{
	font-family:tk-Libre Caslon Text-i7;src:url(https://use.typekit.net/af/d7062a/000000000000000000012d66/27/l?subset_id=1&fvd=i7&v=3) format("woff2"),url(https://use.typekit.net/af/d7062a/000000000000000000012d66/27/d?subset_id=1&fvd=i7&v=3) format("woff"),url(https://use.typekit.net/af/d7062a/000000000000000000012d66/27/a?subset_id=1&fvd=i7&v=3) format("opentype");font-weight:700;font-style:italic;font-stretch:normal;font-display:auto;
}
body, html {
	width:100%;
}
body {
	min-height:100vh;
	background-color:#FFF;
	background-image:url(i/f.jpg);
	background-position:center top;
	background-repeat:no-repeat;
	background-size:cover;
	background-attachment:fixed;
	text-align:center;
	font-family:'Libre Caslon Text', serif;
	font-weight:600;
	font-style:italic;
	letter-spacing:0.46em;
	z-index:0;
}
#top {
	position:fixed;
	top:0px;
	left:0px;
	width:100%;
	background-image:url(i/f.jpg);
	background-position:center top;
	background-repeat:no-repeat;
	background-size:cover;
	background-attachment:fixed;
	z-index:9999;
}
#top.frontTop {
	position:static;
}
header {
	padding:50px 0 61px 0;
	border-bottom:1px solid #333332;
	transition:padding 0.3s ease;
}
header.smaller {
	padding:20px 0 0 25px;
}
#top.frontTop header {
	padding:19vh 0 0 0;
	border:none;
}
header.smaller {
	padding:20px 0;
}
#langLogo {
	width:29vh;
	height:auto;
}
#mainLogo {
	width:175px;
	height:auto;
	transition:all 0.3s ease;
}
header.smaller #mainLogo {
	width:140px;
}
#topButtonHolder {
	width:100%;
	height:auto;
	position:relative;
	text-align:center;
}
.topButtonBlock {
	width:100vw;
	max-width:1184px;
	margin-left:auto;
	margin-right:auto;
	background-color:#FFF;
	display:grid;
	grid-auto-flow:column;
	height:0px;
	overflow:hidden;
	transition:height 0.4s ease;
}
.topButtonBlock.open {
	height:52px;
}
.topButtonBlock.transparentBlock {
	background-color:transparent;
}
#tb-reserve {
	background-color:transparent;
}
.topButton {
	display:block;
	font-size:15px;
	padding:18px 0;
	font-family: 'Libre Franklin', sans-serif;
	font-style:normal;
	font-weight:700;
	text-decoration:none;
	text-transform:uppercase;
	letter-spacing:0.8em;
	cursor:pointer;
	box-sizing:border-box;
	height:0px;
	overflow:hidden;
}
#topReserver {
	color:#4b3827;
	opacity:0.6;
	transition:opacity 0.3s ease;
}
#topReserver:hover {
	opacity:1;
}

.popupOpener {
	background-color:#FFF;
	color:#4b3827;
}
.popupOpener:hover {
	color:#8a7363;
}
.topButtonBlock.transparentBlock .popupOpener {
	background-color:transparent;
	color:#8a7363;
	transition:color 0.3s ease;
}
.topButtonBlock.transparentBlock .popupOpener:hover {
	opacity:1;
	color:#4b3827;
}


#menuOpenerHolder {
	top:55px;
	right:55px;
	width:45px;
	height:45px;
	position:fixed;
	display:inline-block;
	cursor:pointer;
	transition:top 0.3s ease;
}
header.smaller #menuOpenerHolder {
	top:50px;
}
#top.frontTop #menuOpenerHolder {
	display:none;
}
#menuOpener {
	display:inline-block;
	width:45px;
	height:45px;
	border-radius:45px;
	background-color:#1e282c;
	transform-origin:center center;
	transition:transform 0.3s ease;
}
#menuOpenerHolder:hover #menuOpener {
	transform:scale(1.1,1.1);
}
#menuOpenerHolder>div {
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
}
#menuOpenerHolder div {
	width:24px;
	background-color:#FFF;
	padding:1px 0;
	display:block;
}
#menuOpenerHolder div div {
	padding:0px;
	border-top:4px solid #333332;
	border-bottom:4px solid #333332;
	height:1px;
}


#menu {
	display:inline-block;
	width:auto;
	height:auto;
	padding:0 20px;
	position:fixed;
	right:55px;
	top:355px;
	box-sizing:border-box;
	text-align:left;
	visibility:hidden;
	opacity:0;
	background-color:#ccb8a8;
	transition: all 0.3s ease;
	z-index:10000;
}
#menu.visible {
	visibility:visible;
	top:208px;
	opacity:1;
}
#menuList {
	display:block;
	list-style-type:none;
	padding-left:40px;
	margin-bottom:0px;
}
#menuList li {
	display:inline;
}
#menuList li a {
	text-align:right;
	display:block;
	font-size:14px;
	color:#1e282c;
	font-family: 'Libre Franklin', sans-serif;
	font-style:normal;
	margin-bottom:-6px;
	text-transform:uppercase;
	letter-spacing:0.6em;
	cursor:pointer;
	transition:color 0.3s ease;
}
#menuList li a:hover {
	color:#8a7363;
}
#menuList li#langs, #menuList li#socials {
	display:block;
	text-align:right;
}
#menuList li#socials {
	margin-right:0.5em;
}
#menuList li#langs a, #menuList li#socials a {
	display:inline-block;
	margin:28px 0 0 20px;
	text-decoration:none;
}
#menuList li#socials a {
	margin-top:16px;
}
#menuList li#socials a img {
	height:23px;
	width:auto;
	transition:filter 0.3s ease;
}
#menuList li#socials a:hover img {
	filter:brightness(0.2);
}

#fpLangs {
	display:grid;
	grid-template-columns:70px 70px;
	width:140px;
	margin:12vh auto 20vh auto;
}
#fpLangs a {
	display:block;
	padding:25px 0 7vh 0;
}
#fpLangs a {
	border-top:1px solid #4b3827;
	text-align:right;
}
#fpLangs a:nth-child(1), #fpLangs a:nth-child(2) {
	border-top:none;
	padding:7vh 0 25px 0;
}
#fpLangs a:nth-child(odd) {
	border-right:1px solid #4b3827;
	text-align:left;
}
#fpLangs a img {
	height:14px;
	width:auto;
	margin:0px;
}
img#slogan {
	display:block;
	margin:0px auto 100px auto;
	width:352px;
	height:auto;
}

#page {
	width:90vw;
	max-width:1184px;
	margin-left:auto;
	margin-right:auto;
	margin-top:300px;
}
#page.frontPage {
	margin-top:0px;
}
.section {
	margin-bottom:120px;
}
.section.split {
	display:grid;
	grid-template-columns: 1fr 1fr;
}
.sectionImage {
	position:relative;
}
.sectionText {
	padding-right:60px;
	text-align:left;
	padding-top:80px;
}
#page .sectionImage img {
	width:100%;
	height:auto;
	margin-top:0px;
	opacity:0;
	transition:opacity 1.6s ease;
}
#page .sectionImage img.visible {
	opacity:1;
}
p, h4, ul, ol {
	font-size:19px;
	color:#4b3827;
	line-height:1.5em;
	margin-bottom:1em;
	max-width:840px;
	margin-left:auto;
	margin-right:auto;
}
ul {
	padding:1em 0 1em 120px;
	margin-top:1em;
	margin-bottom:2em;
	line-height:1.8em;
	box-sizing:border-box;
}
p, ul, ol {
	font-size:16px;
	line-height:1.6em;
}
p a {
	color:#4b3827;
}
p.s2s {
	display:inline-block;
	float:right;
	position:relative;
	top:-3em;
}
#page p.s2s img {
	height:122px;
	width:auto;
}
.section p:last-child {
	margin-bottom:80px;
}
h2, h3 {
	font-size:18px;
	color:#4b3827;
	text-transform:uppercase;
	padding-bottom:5px;
	margin:2em 0 1em 0;
	font-family: 'Libre Franklin', sans-serif;
	font-weight:normal;
	letter-spacing:0.5em;
	font-style:normal;
}
h3 {
	color:#4b3827;
	border-bottom-color:#4b3827;
	font-style:normal;
}
h4 {
	text-transform:uppercase;
}
h1#topTitle {
	color:#1e282c;
	font-size:15px;
	font-family: 'Libre Franklin', sans-serif;
	font-style:normal;
	letter-spacing:0.5em;
	position:absolute;
	top:85px;
	right:150px;
	display:inline-block;
	text-align:right;
	text-transform:uppercase;
	transition:top 0.3s ease;
}
header.smaller h1#topTitle {
	top:80px;
}
#page img {
	max-width:100%;
	height:auto;
	margin-top:2em;
}

#page .section:first-child p:first-child {
	width:100%;
	max-width:100%;
}
#page .section:first-child p:first-child img {
	width:100%;
}

a#instaLink {
	text-align:left;
	color:#4b3827;
	text-decoration:none;
	float:left;
	display:inline-block;
	margin-bottom:5px;
}
a#instaLink img {
	width:20px;
	height:auto;
}


#carteDesc {
	width:90vw;
	max-width:980px;
	height:90vh;
	transform:translate(-50%,0);
	position:fixed;
	top:5vh;
	left:50%;
	background-color:#FFF;
	box-shadow:0 0 10px #666;
	border-radius:6px;
	box-sizing:border-box;
	padding-bottom:40px;
	background-image:url(i/fullbkg.jpg);
	background-repeat:no-repeat;
	background-position:center center;
	background-size:cover;
	padding-top:40px;
	z-index:10101;
}
#carteDesc h2, #carteDesc h3 {
	margin:40px 0 20px 0;
	color:#000;
	border-color:#000;
	width:80%;
	margin-left:auto;
	margin-right:auto;
	padding-left:0.5em;
	font-size:22px;
	font-weight:bold;
}
#carteDesc h3 {
	border:none;
}
#carteDesc h4, #carteDesc p {
	font-size:18px;
	color:#000;
}
#carteDesc h4 {
	font-weight:bold;
	margin-bottom:10px;
	margin-top:1em;
}
#carteDesc p {
	font-style:italic;
	margin-bottom:7px;
}
#carteDesc p.cartePrice {
	font-style:normal;
}
p#postMenu {
	height:150px;
}
#pageOverlay {
	position:fixed;
	top:0px;
	left:0px;
	width:100vw;
	height:100vh;
	background-color:rgba(0,0,0,0.8);
	background-image:url('i/loading.gif');
	background-position:center center;
	background-repeat:no-repeat;
	z-index:10000;
	display:none;
	text-align:center;
}
#pageOverlay.visible {
	display:block;
}
#closePopup {

    display:block;
    position:absolute;
    top:20px;
    right:20px;
    color:#FFF;
    background-color:#333332;
    width:45px;
    height:45px;
    line-height:45px;
    font-size:45px;
    border-radius:45px;
    cursor: pointer;
}

#JotFormIFrame-231833992142054 {
	width:752px;
}
#jotFormHolder {
	width:762px;
	height:80vh;
	margin-top:10vh;
	margin-left:auto;
	margin-right:auto;
	overflow:hidden;
	position:relative;
}
#jotHere {
	position:absolute;
	top:0px;
	left:0px;
	width:100%;
	height:100%;
	pointer-events: none;
}
.jt-title {
	background:none !important;
	background-color:#333332 !important;
}
.jt-feedback > div {
	inset:0px !important;
}
.jt-content {
	overflow:auto !important;
}

#page img.contactsImg {
	position: relative; 
	top: -20px; 
	margin-top: -280px; 
	height: 216px; 
	width: auto;
}

/* CAROUSEL CAROUSEL CAROUSEL CAROUSEL CAROUSEL */

.jcarousel {
    position: relative;
    overflow: hidden;
	width:100%;
	aspect-ratio:3 / 2;
	margin-right:auto;
	border:none;
	padding:0px;
}
.jcarousel.mobile {
	overflow:scroll;
}
.jcarousel.mobile #jcContent {
	width:2000em;
}
#jcContent {
    width: 20000em;
    position: relative;
	overflow:hidden;
	height:100%;
}
.jcSlide {
	display:block;
	height:100%;
	aspect-ratio:3 / 2;
	padding:0 30px;
	box-sizing:border-box;
	float:left;
	position:relative;
	background-repeat:no-repeat;
	background-position:center center;
	background-size:cover;
}


p.jcarousel-pagination {
	width:100%;
	text-align:center;
	padding:20px 0;
}
.jcarousel-pagination a {
	display:inline-block;
	width:6px;
	margin:10px 5px;
	height:6px;
	background-color:#5d5d5d;
	cursor:pointer;
	border-radius:10px;
}
.jcarousel-pagination a.active {
	background-color:#8D8D8D;
}

.jcarousel.mobile {
	height:auto;
}
.jcarousel.mobile #jcContent {
	display:grid;
	grid-template-columns:repeat(11, 70vw);
	width:auto;
	height:auto;
	overflow:visible;
}
.jcarousel.mobile .jcSlide {
	float:none;
}

.galHolder {
	position:relative;
	margin-top:80px;
}
.jClicker {
	position:absolute;
	bottom:85px;
	transform:rotate(180deg);
	left:-80px;
	cursor:pointer;
}
.jClicker#jcRight {
	left:auto;
	right:-80px;
	transform:rotate(0deg);
}
#page .jClicker img {
	margin:0px;
	width:45px;
	height:auto;
}

/* END THE CAROUSEL ALREADY!!!! */

#instaGrid {
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	grid-gap:15px;
	width:100%;
	margin-bottom:80px;
}
#instaGrid a {
	display:inline-block;
	text-decoration:none;
}
#instaGrid a img {
	width:100%;
	height:auto;
	margin-top:0px;
	display:block;	
}

#page a.social {
	display:inline-block;
	margin:10px;
}
#contactForm {
	width:90vw;
	max-width:840px;
	margin-left:auto;
	margin-right:auto;
}
#contactForm input, #contactForm textarea, #form-send {
	width:100%;
	padding:9px 6px;
	box-sizing:border-box;
	background-color:rgba(75,56,39,0.3);
	color:#FFF;
	font-weight:normal;
	font-family: 'Libre Franklin', sans-serif;
	font-size:16px;
	letter-spacing:0.3em;
	text-align:center;
	margin-top:15px;
	transition:border-color 0.2s ease;
}
#contactForm input:focus, #contactForm textarea:focus {
	outline:none !important;
	border-color:#FFF;	
}
#contactForm input.blank, #contactForm textarea.blank {
	border-color:#820900;
}
#contactForm input::placeholder, #contactForm textarea::placeholder {
	color:#4b3827;
	opacity:1;
	font-size:13px;
}
#contactForm textarea {
	height:8em;
}
#contactForm input#form-www {
	height:0px;
	padding:0px;
	overflow:hidden;
}
#form-send {
	width:50%;
	text-transform:uppercase;
	text-align:center;
	transition:background-color 0.4s ease;
}
#form-send:hover {
	background-color:rgba(75,56,39,0.8);
}
#page p.contactAddress {
	float:left;
}
#page p.contactSocials {
	display:inline-block;
	float:right;
}
#page p.contactSocials img {
	width:20px;
	height:auto;
	display:inline-block;
	margin:0px;
}
#map {
	width:100%;
	aspect-ratio:4/3;
	background-color:#3f3f3e;
	margin:20px 0 80px 0;
}
p#artOfEnjoying {
	position:fixed;
	right:0px;
	top:60%;
	text-align:center;
	font-size:18px;
	color:#8E8D8D;
	line-height:1.5em;
	text-transform:lowercase;
	letter-spacing:.5em;
	width:calc((100% - 900px) / 2);
}
#footer {
	padding-bottom:160px;
}
#footer a {
	display:inline-block;
	margin:0 20px;
	color:#8E8D8D;
	text-decoration:none;
}
#cookie_cons {
	width:100%;
	height:auto;
	position:fixed;
	left:0px;
	bottom:0px;
	background-color:#3f3f3e;
}
#cookie_consent p {
	max-width:90vw;
	font-size:16px;
}
#cookie_consent {
	padding-top:2em;
	background-color:#4b3827;
}
#cookie_consent a#ccConfirm {
	display:inline-block;
	background-color:#333332;
	border-radius:555px;
	text-align:center;
	padding:0.6em 1.5em;
	text-transform:uppercase;
	text-decoration:none;
	color:#8E8D8D;
	margin-left:50px;
}
#cookie_consent p a {
	color:#8E8D8D;
	
}
#emailConsent {
	margin:10px 0 0 0;
	font-size:14px;
}
#emailToggler {
	display:inline-block;
	width:20px;
	height:20px;
	border:1px solid #4b3827;
	margin-right:15px;
	color:#4b3827;
	line-height:20px;
	font-size:15px;
	cursor:pointer;
}

#page #privacyText p {
	font-style:normal;
	font-size:16px;
	text-align:justify;
	letter-spacing:0.2em;
}
