html, body {height:100%;}

@font-face {
  font-family: 'Sunday';
	src: url('fonts/Sunday-Regular.eot');
	src: local('☺'), url('fonts/Sunday-Regular.woff') format('woff'), url('fonts/Sunday-Regular.ttf') format('truetype'), url('fonts/Sunday-Regular.svg') format('svg');
	font-weight: normal;
	font-style: normal;
}

body {
	font-family: Helvetica, sans-serif;
}
a, a:visited {color:#424666;}

h1, h2, h3, h4, h5, h6 {
	font-family:'Roboto', Georgia, serif;
	color: #351C00;
	line-height:1.2;
}
p {font-size:1.1rem;}
h2 {font-size:2.8rem; margin-bottom:20px;}

@media only screen and (min-width: 64.063em) { .row {max-width: 72.5rem;}}

.opensans {
	font-family: 'Open Sans', sans-serif;
}
.roboto {
	font-family: 'Roboto', sans-serif;
}

p.tagline {
	font-family:Georgia, serif;
	font-style:italic;
	color:rgba(0, 0, 0, 1);
	margin-bottom:40px;
}

#intro {
		height:500px;
/*
		background:url(../img/bgr2.jpg) no-repeat left top;
		background-size:cover;
*/
		position:relative;
}
#intro .row, #intro .columns {
  height: 100%;
  position: relative;
/*
  float: left;
  text-align: left;
*/
}
#intro .float {
		width:100%;
		position:absolute;
		left:0;
		bottom:0;
		background:transparent url(../img/backdrop.png) no-repeat left bottom;
/* 		text-align:center; */
		-moz-transition: all 1s ease-out;
		-o-transition: all 1s ease-out;
		-webkit-transition: all 1s ease-out;
		padding: 30px;
/* 		background: rgba(40,40,40,0.7); */
}
/* .scroll1 #intro .float { -webkit-filter: blur(3px); -moz-filter: blur(3px); -o-filter: blur(3px); -ms-filter: blur(3px); filter: blur(3px); opacity:0.1;} */
#intro .float img {
	float:left;
	display:none;
	margin-right:30px;
}
#intro .float div.left {
		float:left;
}

#intro h1 {
	color:#fff;
/* 	color:#333; */
  font-size: 4rem;
  text-shadow:0 0 8px rgba(0,0,0,0.5);
  max-width:1000px;
  margin-bottom:20px;
}
#intro h2 {
  max-width:920px;
	color:#fff;
/* 	color:#333; */
	font-family:Helvetica, sans-serif;
  font-size: 1.6rem;
  max-width:1000px;
  text-shadow:0 0 8px rgba(0,0,0,0.5);
}

nav#fixed {
	width:100%;
	background:#fff;
	position:absolute;
	bottom:0;
	left:0;
	height:80px;
	z-index:10;
	padding:0 12px;
	display:none;
	box-shadow:0 0 8px rgba(0,0,0,0.1);
	-webkit-box-shadow:0 0 8px rgba(0,0,0,0.1);
	-moz-box-shadow:0 0 8px rgba(0,0,0,0.1);
}
.scrolled #intro {z-index:1 !important;}
.scrolled nav#fixed {
	position:fixed;
	top:0;
	z-index:99;
}
.backstretch {
	position:fixed !important;
}

nav#fixed ul#main {
	float:left;
	margin:0;
	padding:0;
}
nav#fixed ul#main li:first-child {
	opacity:0.4;
	-moz-transition: all 1s ease-out;
	-o-transition: all 1s ease-out;
	-webkit-transition: all 1s ease-out;
}
.scrolled nav#fixed ul#main li:first-child {
	opacity:1;
}
nav#fixed ul.social {
	float:right;
	margin:0;
	padding:0;
	border-left:1px solid #e2e2e2;
}
nav#fixed ul.social li {
	margin:0;
	padding:0;
}

nav#fixed ul.social a {
	background:url(../img/social-icons.png) no-repeat -15px -10px;
	width:50px;
	height:50px;
	-moz-transition: none;
	-o-transition: none;
	-webkit-transition: none;
	margin:15px 0 15px 15px;
	border:none;
	}

nav#fixed ul.social a.facebook {background-position:15px 14px;}
nav#fixed ul.social a.twitter {background-position:-21px 14px;}
nav#fixed ul.social a.linkedin {background-position:-58px 14px;}
nav#fixed ul.social a.vimeo {background-position:-96px 14px;}
nav#fixed ul.social a.flickr {background-position:-136px 14px;}
nav#fixed ul.social a.instagram {background-position:-178px 14px;}

nav#fixed ul.social a.facebook:hover {background-color:#3956A2;}
nav#fixed ul.social a.twitter:hover {background-color:#4EB8D7;}
nav#fixed ul.social a.linkedin:hover {background-color:#0094C3;}
nav#fixed ul.social a.vimeo:hover {background-color:#19B6EC;}
nav#fixed ul.social a.flickr:hover {background-color:#fff;}
nav#fixed ul.social a.instagram:hover {background-color:#375786;}


nav#fixed ul.social a:hover {
	background-color:#fff;
	background-image:url(../img/social.png);
}
nav#fixed ul.social a.flickr:hover {
	background-color:#eee;
}

nav#fixed ul li {
	float:left;
	text-transform:uppercase;
	font-weight:200;
	margin-right:2px;
	line-height:0;
	list-style:none;
}
nav#fixed ul li a {
  font-family: Helvetica;
  font-weight: 300;
  color: #555;
  text-transform: none;
  padding: 0px 20px;
  line-height: 80px;
  display: inline-block;
		-moz-transition: all 0.2s ease-out;
		-o-transition: all 0.2s ease-out;
		-webkit-transition: all 0.2s ease-out;
}
nav#fixed ul#main li.current a {
	color:#351C00;
	background:#fff;
/* 	border-bottom:1px solid #351C00; */
}
nav#fixed ul#main li:first-child.current a {
/* 	border-bottom:1px solid #ddd; */
	background:transparent;
}
nav#fixed ul#main li a:hover {
	color:#351C00;
	background:#efe3d6;
/* 	border-bottom:2px solid #351C00; */
}

body.en nav#fixed ul#main li a.mobile-short {
  font-family: Helvetica;
  font-weight: 300;
  color: #555;
  text-transform: none;
  padding: 0 20px;
  line-height: 80px;
  display: inline-block;
}

section {
	padding:50px 0;
	position:relative;
	z-index:1;
}

#top {
	position:fixed;
	right:30px;
	bottom:30px;
	width:42px;
	background:url(../img/backtotop.png) no-repeat center top;
	padding-top:50px;
	text-align:center;
	color:#351C00;
	letter-spacing:2;
	font-size:12px;
	cursor:pointer;
}

#team img {
	margin:0 15px 15px 0;
	width:90px;
	height:90px;
	-moz-border-radius: 50px;
	-webkit-border-radius: 50px;
	border-radius: 50px;
	float:left;
}
#team .large-6 p {
	font-size:0.9rem;
}
#events img {
		width:100%;
		margin:10px 0;
}
#team h3, #events h4, #blog h4 {
	font-weight:300;
	font-size:1.2375rem;
}
#team .liner {padding-top:10px;}
#team h3 {
	font-size:1.5375rem;
	margin:0;
}
#team .mail, #team .phone {
	font-size:14px;
	white-space:nowrap;
}
#team .phone {color:#777;}
#team .large-3 p.tagline {
	margin:0 0 5px;
	font-size:15px;
}
#team .desc {
	clear:both;
}
#team h3 a, #events h4 a, #blog h4 a {
	color:#351C00;
}
#team h4 a:hover, #events h4 a:hover, #blog h4 a:hover {
	color:#008cba;
}

.date {
	font-family:Georgia, serif;
	font-style:italic;
	color:#777;
	font-size:1em;
	margin:10px 0 15px;
	display:block;
}

.liner {
	width:100%;
	clear:both;
	border-bottom:1px dotted #ccc;
	height:1px;
	line-height:1px;
	display:block;
	padding-top:50px;
	margin-bottom:30px;
}

.price {
	font-family:Helvetica;
	font-size:35px;
	font-weight:600;
	letter-spacing:-3;
	white-space:nowrap;
}
.price span {
	font-size:25px;
	font-weight:400;
	margin-left:-8px;
	white-space:normal;
}
.price span.desc {
	margin-left:0;
	font-weight:400;
	font-size:14px;
	text-transform:uppercase;
	display:block;
	margin-top:6px;
}

div.desc {
	font-size:0.8em;
	line-height:1.5em;
	color:#555;
}
div.desc span {color:#424666;}

.room2 .price,
.room4 .price {
	margin-bottom:20px;
}

.room1 .price {color:#A9DEE6;}
.room2 .price {color:#89C4BF;}
.room3 .price {color:#50918E;}
.room4 .price {color:#4C9B9F;}
.bung1 .price {color:#34707A;}
.bung2 .price {color:#406880;}
.bung3 .price {color:#3D5266;}
.bung4 .price {color:#424666;}
.extras .price {color:#B7A681; font-size:32px}
.extras .price .desc {color:#B3A580;}

.extras .multimedia .price {color:#76823d;}
.extras .repository .price {color:#da7556;}
.extras .catering .price {color:#9fadce;}
.extras .partners .price {color:#8d6250;}

.room4 .price {
	letter-spacing:-0.02em;
}

#services .large-10 .tagline {margin-bottom:15px;}

#services .small {
	font-size:12px;
	line-height:18px;
	color:#999;
	margin:20px 0 0;
}

#services .room1,
#services .room2,
#services .room3,
#services .room4,
#services .extras {
	position:relative;
	border-top:1px solid #eee;
	height:auto;
}

#services .large-10 {
	padding-top:30px;
	padding-bottom:40px;
}
#services .extras .large-12 {
	padding-top:0;
	padding-bottom:0;
}

#services .flag {
		height: 100%;
    min-height: 100%;
    position: absolute;
    left:-40px;
	width:10px;
	background:#a8815c;
	top:0;
}
#services .room1 .flag {background:#A9DEE6;}
#services .room2 .flag {background:#89C4BF;}
#services .room3 .flag {background:#50918E;}
#services .room4 .flag {background:#4C9B9F;}
#services .bung1 .flag {background:#34707A;}
#services .bung2 .flag {background:#406880;}
#services .bung3 .flag {background:#3D5266;}
#services .bung4 .flag {background:#424666;}

#services .extras .flag {background:#EAE3CA;}

#team .large-4 p, #events .large-4 p {
	font-size:0.9rem;
}

.readmore {}

.readmore span {
	display:inline-block;
	float:left;
	margin-right:5px;
}
.readmore:hover {
/* 	border-bottom:1px dotted #a8815c; */
	color:#a8815c;
}
.readmore:hover span {
	opacity:0.5;
}


#what h3, #services h3 {color:#444;}

section#services, section#team, section#contacts, section#what, section#room4, section#ecosystem, section#blog, section#calendar {background:rgba(255,255,255,0.95)}
footer {	background:#fff}

section#contacts iframe#map {display:none;}

@media only screen and (min-width: 40.063em) {

section#contacts iframe#map {
	display:block;
}

}

@media only screen and (min-width: 75.063em) {
#intro .float img {display:block;}
}

@media only screen and (min-width: 64.063em) {

section#ecosystem, section#blog {
	padding-bottom:80px;
}

.photo {
	display:block;
		height: 100%;
    min-height: 100%;
    position: absolute;
    right:0;
}
.photo a {
	display:block;
		height: 100%;
    width: 100%;
    position: absolute;
    right:0;
		-moz-transition: all 0.3s ease-out;
		-o-transition: all 0.3s ease-out;
		-webkit-transition: all 0.3s ease-out;
		font-weight:400;
		font-size:14px;
		text-align:center;
		color:#fff;
/* 		cursor: url(../img/cursor-plus.png) 30 30, auto; */
		background-position:center center;
}
.photo a:hover {
	background-color:rgba(255,255,255,0.4);
}
.photo a span {
	position:absolute;
	right:20px;
	bottom:20px;
	opacity:1;
	text-transform:uppercase;
}
.row:hover .photo a span {opacity:1;}

#services .room1 .photo {
    background:url(../img/room1/1.room.jpg) no-repeat center top;
    background-size:cover;
}
/*
#room4 .photo {
    background:url(../img/Commonroom4/1.jpg) no-repeat center top;
    height: 460px;
    position: relative;
    background-size:cover;
}
*/

#what .photo {
    background:url(../img/CommonSpaces/villazagostimaximsinemorets20.jpg) no-repeat center top;
    height: 730px;
    position: relative;
    background-size:cover;
}

#services .room2 .photo {
    background:url(../img/room2/Room2.1-web.jpg) no-repeat center top;
    background-size:cover;
}
#services .room5 .photo {
    background:url(../img/room5/37.room5.JPG) no-repeat center top;
    background-size:cover;
}
#services .room6 .photo {
    background:url(../img/room6/43.room6.jpg) no-repeat center top;
    background-size:cover;
}
#services .room3 .photo {
    background:url(../img/room3/19.room3.JPG) no-repeat center top;
    background-size:cover;
}
#services .room4 .photo {
    background:url(../img/room4/room.4.1.jpg) no-repeat center top;
    background-size:cover;
}

#intro {
		height:100vh;
/* 		background-size:cover; */
		position:relative;
		cursor: url(../img/cursor-arrow.png) 30 30, auto;
}
#intro .float {bottom:80px; padding-bottom:50px;}

nav#fixed {display:block;}

section#what, section#room4, section#ecosystem {background:#fff}
section#room4, section#calendar section#blog {background:#f8f8f8}
footer {		background:#fff;}

}

#room4 img.main {
	margin-bottom:-75%;
	width:100%;
}
#room4 img {
	margin-bottom:5px;
		-moz-transition: all 0.3s ease-out;
		-o-transition: all 0.3s ease-out;
		-webkit-transition: all 0.3s ease-out;
}
#room4 a:hover img {
	background:#fff;
	margin-left:-5px;
}


#services [class*="column"] + [class*="column"]:last-child {
float:left;
}

footer {
	padding:30px 0;
	font-size:12px;
	z-index:10;
	position:relative;
	color:#555;
	line-height:20px;
	background:#252422;
}
footer .logo {
	float:left;
	height:40px;
	margin-right:15px;
}


#events .large-4, #blog .large-4 {
	padding-top:10px;
	padding-bottom:20px;
}

#events .large-4:hover, #blog .large-4:hover {background:#fff}
#blog .large-4 {background: rgba(255,255,255, 0.3); }

#events h3, #contacts h3 {
	color:#555;
	text-transform:uppercase;
	font-size:22px;
	font-weight:300;
}

#services .extras h4 {
	color:#777;
	text-transform:uppercase;
	font-size:18px;
	font-weight:300;
	margin:30px 0 10px;
}

#services .extras .tagline {
	margin:-10px 0 20px;
	font-size:14px;
}

#services .extras .price span.desc {
	font-size:12px;
	line-height:16px;
}

#services .extras .price span {
	margin-left:0;
}


footer .right {text-align:right;}

#services .extras .liner {
	padding-top:20px;
	margin-bottom:20px;
}

.trigger {
	padding:30px 0;
	cursor:pointer;
	margin-bottom:0;
}
.trigger.active {
	font-weight:200;
	color:#444;
}


.trigger span {
	display:block;
	font-size:16px;
	font-weight:300;
	color:#351C00;
	margin:5px 0 0;
	position: absolute;
	top: 35px;
	left: 43%;
	padding:5px 8px;
}
.trigger span.close {
	left:auto;
	right:20px;
	font-size:30px;
	top:25px;
	display:none;
}

.trigger:hover span {
	background:#351C00;
	color:#fff !important;
}
.trigger.active span {
	display:none;
}
.trigger.active span.close {
	display:block;
}

#services .extras .trigger {
  position: relative;
  text-align: center;
}

#services .extras .trigger span:first-child {
  left: 50%;
  transform: translateX(-50%);
  width: max-content;
  max-width: 90%;
  text-align: center;
}

section#contacts {
	padding:0;
	position:relative;
/* 	height:700px; */
padding-top:60px;
padding-bottom:60px;
}
section#contacts .row {
/* 	border:1px solid #eee; */
}
section#contacts iframe#map {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:700px;
}
section#contacts .large-4 {
/* 	background:#fff; */
	padding-top:40px;
	padding-left:30px;
	padding-bottom:10px;
	padding:0;
}
section#contacts .large-4 .padding {
	padding:0 20px;
}
section#contacts .large-8 {
	padding-right:0;
}
section#contacts .liner {
	padding:0;
}
section#contacts b {font-weight:600;}

section#contacts .large-4 iframe {
	float:left;
	margin-top:8px;
}

section#what a.fancybox, section#services a.fancybox {
/* 		cursor: url(../img/cursor-plus.png) 30 30, auto; */
}
#contacts h3 {font-size:18px; margin-bottom:20px;}

#contacts button, #contacts .button {
	background:#07806A;
	text-transform:uppercase;
	padding:10px 25px;
	font-size:15px;
	float:right;
}
#contacts button:hover, #contacts .button:hover {
	background:#008cba;
}

footer a.terms {
	color:#07806A;
}
footer a.terms:hover {
	color:#07806A;
	border-bottom:1px dotted #07806A;
}

a.instagram img {
	margin-bottom:20px;
}
a.instagram:hover img {
	opacity:0.8;
}

#map {
	width:100%;
	height:400px;
	display:block;
}

b {font-weight:400;}

.viewall {
	text-transform:none;
	float:right;
	font-size:16px;
}

a b{font-weight:500;}#mc_embed_signup .mc-field-group input{background:#f5f5f5;border:none;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none;width:63%!important;text-indent:6%!important;margin:0!important;float:left;}#mc_embed_signup .mc-field-group{width:100%!important;padding:0!important;}#mc_embed_signup input.mce_inline_error{font-size:12px!important;}#contacts p.tagline{margin-bottom:30px;}#mc_embed_signup form{padding:0!important;}#mc_embed_signup .button{background:#07806A!important;color:#fff!important;-moz-border-radius:0!important;-webkit-border-radius:0!important;border-radius:0!important;padding:0!important;text-transform:none;float:left;}#mc_embed_signup .mc-field-group input[type=submit]{width:37%!important;clear:none;height:37px!important;line-height:37px!important;}section#contacts .liner{margin-bottom:15px 10px!important;}footer#dark{background:#eee;}footer .twitter{text-align:center;}footer.twitter img{margin:0 auto 10px;}footer .twitter p{font-size:14px;margin:10px 0 0;}footer .twitter .tweet {max-width:650px;margin:0 auto;}.date{margin:5px auto 0;}
nav .lang{float:right;font-family:'Roboto';font-weight:400;color:#888;line-height:80px;font-size:12px;padding:0 20px;text-transform:uppercase;}nav .lang:hover{color:#a8815c;}
.date{margin:5px auto 15px;}.tooltip{font-weight:200;font-size:13px;max-width:400px;background:#a8815c;line-height:1.5;}.tooltip>.nub{border-color: transparent transparent #a8815c transparent;}

nav .sound{float:right;line-height:80px;padding:0 30px;opacity:0.6;}
nav .sound:hover{opacity:1;}

.bookings {
    overflow: auto;
    font-size: 0.8em;
    margin: 0.8em 0;
    border-collapse:collapse;
    width:100%;
    border:none;
}

.bookings b {
    float: left;
    width: 10em;
    margin-top: 1px;
  font-weight: 300;
  font-size: 26px;
    font-family: 'Roboto', Georgia, serif;
    text-transform:capitalize;
	margin-left:30px;
}


.bookings .day {
	vertical-align: top;
	text-align: center;
    min-height: 22px;
	padding:20px 0;
	border:none;
}
.bookings tr.month .day {
	color:#555;
}

.bookings .days .day.booked {
    background: red;
}

.bookings .booked {
	width: 20px;
	height: 20px;
	margin-bottom: 5px;
}

.bookings td.labels {
	vertical-align: top;
	padding: 20px 0;
}

.bookings .room-label {
  font-size: 11px;
  margin-bottom: 5px;
  color: #666;
  padding: 0 10px;
  line-height: 20px;
  white-space: nowrap;
}

@media only screen and (max-width: 40em) {

  html,
  body {
    overflow-x: hidden;
  }

  body {
    line-height: 1.45;
  }

  .row {
    max-width: 100%;
  }

  .column,
  .columns {
    padding-left: 18px;
    padding-right: 18px;
  }

  section {
    padding: 34px 0;
  }

  h2 {
    font-size: 2rem;
    line-height: 1.15;
    margin-bottom: 14px;
  }

  h3 {
    font-size: 1.35rem;
    line-height: 1.25;
  }

  p {
    font-size: 1rem;
    line-height: 1.55;
  }

  p.tagline {
    font-size: 1.08rem;
    line-height: 1.45;
    margin-bottom: 24px;
  }

  /* Intro */
  #intro {
    min-height: 520px;
    height: 100vh;
  }

  #intro .float {
    bottom: 0;
    padding: 22px 18px 34px;
    background-size: auto 100%;
  }

  #intro h1 {
    font-size: 2.55rem;
    line-height: 1.05;
    margin-bottom: 12px;
  }

  #intro h2 {
    font-size: 1.12rem;
    line-height: 1.35;
  }

  

  /* Mobile navigation - keeps desktop untouched */
  nav#fixed {
    display: block;
    position: fixed;
    top: 0;
    bottom: auto;
    height: 54px;
    padding: 0 4px;
    overflow-x: auto;
    overflow-y: hidden;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
  }

  nav#fixed ul#main,
  nav#fixed ul.social,
  nav .lang,
  nav .sound {
    float: none;
    display: inline-block;
    vertical-align: top;
  }

  nav#fixed ul#main li {
    float: none;
    display: inline-block;
  }

  nav#fixed ul#main li:first-child {
    display: none;
  }

  nav#fixed ul#main li.mobile-hide,
  nav#fixed ul#main li.hide-mobile {
    display: none !important;
  }

  nav#fixed ul li a,
  nav .lang,
  nav .sound {
    line-height: 54px;
    padding: 0 7px;
    font-size: 14px;
  }

  nav#fixed ul.social {
    border-left: 0;
  }

  nav#fixed ul.social li {
    float: none;
    display: inline-block;
  }

  nav#fixed ul.social a {
    width: 42px;
    height: 54px;
    margin: 0;
  }

  nav .sound {
    display: none;
  }

  nav .lang {
    font-size: 0;
    padding: 0 4px;
  }

  nav .lang::after {
    content: "EN";
    font-size: 15px;
  }

  body.en nav .lang::after {
    content: "BG" !important;
  }
  body.en nav#fixed a.mobile-short {
    font-size: 0;
    padding: 0 10px;
    line-height: 54px;
    display: inline-block;
  }

  body.en nav#fixed a.mobile-short::after {
    content: attr(data-mobile-label) !important;
    font-family: Helvetica, Arial, sans-serif;
    font-size: 14px;
    font-weight: 300;
    color: #555;
    line-height: 54px;
    text-transform: none;
  }


  nav#fixed ul.social {
    display: none;
  }

  a.instagram img {
    margin-bottom: 12px;
  }

    body.en #what p.gallery-title {
    margin-left: 18px !important;
    margin-right: 18px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  #what .row > .small-6.columns,
  #services .row > .small-6.columns {
    padding-left: 6px;
    padding-right: 6px;
  }

  #what .row > .small-6.columns:nth-child(2n+1),
  #services .row > .small-6.columns:nth-child(2n+1) {
    clear: left;
  }

  /* Rooms */

  #services .large-10 {
    padding-top: 24px;
    padding-bottom: 28px;
  }

  #services .flag {
    left: 0;
    width: 6px;
  }

  #services h3 {
    padding-left: 8px;
    margin-bottom: 16px;
  }

  .price,
  .extras .price {
    font-size: 30px;
    letter-spacing: -1px;
    margin-bottom: 12px;
  }

  .price span {
    font-size: 20px;
    margin-left: -4px;
  }

  div.desc {
    font-size: 1rem;
    line-height: 1.55;
    font-weight: 300;
    color: #351C00;
  }

  #services div.desc span {
    font-weight: 300;
    color: #351C00;
  }

 #services .photo {
    display: block;
    position: relative;
    right: auto;
    width: 100%;
    height: 260px;
    min-height: 260px;
    margin: 0 0 24px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
  }

  #services .photo a {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    color: #fff;
    text-align: center;
  }

  #services .photo a span {
    position: absolute;
    right: 16px;
    bottom: 14px;
    text-transform: uppercase;
    font-size: 13px;
    text-shadow: 0 0 8px rgba(0,0,0,0.55);
  }

  .trigger {
    padding: 22px 0 28px;
  }

    .trigger span {
    position: static;
    display: block;
    margin: 0 auto;
    line-height: 1.35;
    font-size: 15px;
    text-align: center;
    width: 100%;
  }

    #services .extras .trigger span:first-child {
    left: auto;
    transform: none;
    text-align: center;
    width: 100%;
  }

  .trigger span.close {
    position: absolute;
    right: 18px;
    top: 18px;
  }

  /* Calendar */
  .bookings {
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    width: 100%;
    font-size: 0.72em;
  }

  .bookings b {
    width: 7.5em;
    margin-left: 8px;
    font-size: 20px;
  }

  .bookings td.labels {
    padding: 12px 0;
    vertical-align: top;
  }

  .bookings .day {
    padding: 12px 0;
    min-width: 22px;
    vertical-align: top;
  }

  .bookings .booked {
    display: block;
    width: 16px;
    height: 16px;
    margin: 0 auto 5px;
  }

  .bookings .room-label {
    display: block;
    height: 16px;
    line-height: 16px;
    margin-bottom: 5px;
    font-size: 10px;
    padding: 0 6px;
    white-space: nowrap;
  } 

    section#calendar {
    position: relative;
  }

   section#calendar::after {
    content: "";
    position: absolute;
    right: 0;
    top: 120px;
    bottom: 36px;
    width: 48px;
    pointer-events: none;
    background: linear-gradient(to left, rgba(255,255,255,1), rgba(255,255,255,0.75), rgba(255,255,255,0));
  }

  .bookings {
    padding-right: 34px;
  }

  

  /* Contacts */
  section#contacts {
    padding-top: 36px;
    padding-bottom: 36px;
  }

  section#contacts .large-4 .padding {
    padding: 0 18px;
  }

  section#contacts .large-4 iframe,
  section#contacts iframe {
    max-width: 100%;
  }

  #contacts button,
  #contacts .button {
    float: none;
    width: 100%;
    text-align: center;
  }

  footer,
  footer .right {
    text-align: center;
  }

    section#contacts iframe,
  section#contacts iframe#map {
    width: 100% !important;
    max-width: 100% !important;
    height: 260px !important;
    display: block;
  }

  section#contacts .large-4,
  section#contacts .large-8,
  section#contacts .columns {
    padding-left: 18px;
    padding-right: 18px;
  }
}


@media only screen and (max-width: 40em) {

  .fancybox-wrap {
    position: fixed !important;
    top: 48% !important;
    left: 50% !important;
    right: auto !important;
    transform: translate(-50%, -50%) !important;
    width: 96vw !important;
    max-width: 96vw !important;
  }

  .fancybox-skin,
  .fancybox-outer,
  .fancybox-inner {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    overflow: visible !important;
  }

  .fancybox-image {
    width: 100% !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: none !important;
    display: block !important;
    margin: 0 auto !important;
  }

  #fancybox-thumbs {
    height: 64px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    white-space: nowrap !important;
    bottom: 0px !important;
    top: auto !important;
    -webkit-overflow-scrolling: touch;
  }

  #fancybox-thumbs ul {
    display: flex !important;
    flex-wrap: nowrap !important;
    width: max-content !important;
    min-width: 100% !important;
    white-space: nowrap !important;
  }

  #fancybox-thumbs ul li {
    float: none !important;
    display: block !important;
    flex: 0 0 auto !important;
  }
}
