<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">/*
Theme Name: SIA Lodges
Theme URI: http://underscores.me/
Author: Focus Online
Author URI: https://www.focusonline.co.za
Description: Custom theme built upon underscores.me
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: _sialodges
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

SIA Lodges is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/



* {
	box-sizing: border-box;
	min-height: 0;
	min-width: 0;
  }


  /* Typography &amp; Fonts */

  html, body {
	margin: 0;
	padding: 0;
	font-family: 'Lato', Arial, Helvetica, sans-serif;
	scroll-behavior: smooth;
	overflow-x: hidden;
  }


.hideOnMobile {
	display: none !important;
}
@media(min-width: 900px) {
	.hideOnMobile {
		display: inline-block !important;
	}
}




.divider {
	width: 150px;
	height:20px;
	margin: 0px auto 20px;
	border-bottom: 2px solid var(--primarycolour);
    opacity: 0.5;
	/* new
	width: 120px;
    height: 20px;
	margin: 0px auto 28px;*/
}
.divider.white{
	width: 150px;
	height:20px;
	margin: 0px auto 20px;
	border-bottom: 2px solid #ffffffbb;
}
.image-and-text .divider {
	text-align: center;
    margin: 0 auto 38px;
    opacity: 0.5;
    border-bottom: 2px solid var(--primarycolour);
    width: 120px;
}

/* Single Post */

.single-post-wrapper {
	width: 90%;
	max-width: 1000px;
	margin: 60px auto;
}

.single-post-wrapper h1 {
	font-size: 42px;
}

.single-post-wrapper .post-date {
	text-align: center;
	color: var(--primarycolour);
}

.single-post-wrapper p, .single-post-wrapper li {
	text-align: left;
	font-weight: 300;
}

.single-post-wrapper .content {
	margin-top: 60px;
}

.single-post-wrapper .content img {
	display: block;
	width: 100%;
	height: auto;
	object-fit: cover;
}

.single-post-wrapper .content .pb_images_two_up {
	display: flex;
	justify-content: space-between;
}

.single-post-wrapper .content .pb_image_full_width, .single-post-wrapper .content .pb_images_two_up {
	margin-bottom: 30px;
}

.single-post-wrapper .content .pb_images_two_up &gt; div {
	width: 100%;
	max-width: 49%;
}

.single-post-wrapper .content p a, .single-post-wrapper .content li a {
	font-weight: 500;
	color: var(--primarycolour);
}

.single-post-wrapper .content .pb_introtext {
	font-weight: 300;
  color: var(--primarycolour);
  font-style: italic;
  line-height: 1.3;
  text-align: center;
  margin: 40px auto;
	font-size: 35px;
	font-family: var(--primaryfont);
}

.single-post-wrapper .content h3 {
	font-size: 26px;
}

.single-post-wrapper .content h4 {
	font-size: 24px;
  text-transform: none;
  font-weight: 200;
  color: rgb(111, 100, 86);
  letter-spacing: 1px;
  text-align: center;
  margin: 20px auto;
}

.single-post-wrapper .content .pb_textbox {
	margin-bottom: 30px;
}

.single-post-wrapper .content .page-builder-gallery {
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	justify-content: space-between;
	padding: 0;
}

.single-post-wrapper .content .page-builder-gallery a {
  width: 100%;
	max-width: 32%;
	margin-bottom: 1%;
}

.single-post-wrapper .content figcaption {
  margin: 10px;
	text-align: center;
	font-weight: 300;
	display: block;
	color: #666;
	font-style: italic;
}

.single-post-wrapper .content .PB-button {
	background: var(--primarycolour);
  border: 1px solid var(--primarycolour);
  color: #fff;
  font-weight: 400;
  letter-spacing: 2px;
  padding: 8px 14px;
  margin: 5px;
  text-decoration: none;
  display: inline-block;
  text-transform: uppercase;
  min-width: 135px;
  text-align: center;
}

.single-post-wrapper .post-nav {
	display: flex;
	justify-content: space-between;
	margin: 60px 0;
}

.single-post-wrapper .post-nav a {
	background: var(--primarycolour);
  border: 1px solid var(--primarycolour);
  color: #fff;
  font-weight: 400;
  letter-spacing: 2px;
  padding: 8px 14px;
  text-decoration: none;
  display: inline-block;
  text-transform: uppercase;
}

.single-post-wrapper .post-nav .next {
	margin-left: auto;
}

/* --------------------------------------------------------
BANNER
-----------------------------------------------------------*/

.banner img.sia-banner-logo {
	position: absolute;
  bottom: 20px;
  right: 20px;
  width: 200px;
  z-index: 99;
  opacity: 0.7;
  -moz-transition: all .3s ease;
	  -webkit-transition: all .3s ease;
	  transition: all .3s ease;
}
.banner img.sia-banner-logo:hover {
	opacity: 1;
	-moz-transition: all .3s ease;
	  -webkit-transition: all .3s ease;
	  transition: all .3s ease;
}

@media screen and (max-width: 767px) {
	
	.burgermenu {
	  top: 5px !important;
	}

	.single-post-wrapper h1 {
	  font-size: 36px;
	}

	.single-post-wrapper .content .page-builder-gallery a {
		max-width: 48%;
		margin-bottom: 4%;
	}

	.single-post-wrapper .content .page-builder-gallery figure {
		margin: 0;
	}

	.single-post-wrapper .content .pb_introtext {
	  font-size: 28px;
	}

	.banner img.sia-banner-logo {
	  bottom: 15px;
	  right: 15px;
	  width: 170px;
	  z-index: 99;
	}

}

.banner {
	width: 100%;
	height: calc( 100vh - 85px );
	background-color: grey;
}

.banner-content {
	position: absolute;
	top: auto;
	bottom: 5%;
	left: 50%;
	width: 80%;
	transform: translate(-50%, -50%);
	text-align: center;
	color: #fff !important;
	z-index: 10;
  }

  /* banner text animation */
  .banner-content-h1 {
	  display: block;
	  opacity: 0;
	  top:0;
	  margin:-50px 0 0 0;
	  margin: 0;
	  transform: scale(1.6);
	  font-size: 100px;
	  -moz-transition: all .3s ease;
	  -webkit-transition: all .3s ease;
	  transition: all .3s ease;
  }
  .banner-content-h1.loaded {
	  transform: scale(1);
	  opacity: 1;
	  -moz-transition: all 1.2s ease-out;
	  -webkit-transition: all 1.2s ease-out;
	  transition: all 1.2s ease-out;
  }

  p.banner-content-p {
	font-family: var(--font3);
	display: block;
	opacity: 0;
	top:0;
	margin:-50px 0 0 0;
	margin: 0;
	transform: scale(1.3);
	font-size: 33px;
	letter-spacing: 0;
	transition-delay: 2s;
	-moz-transition: all 1.3s ease;
	-webkit-transition: all 1.3s ease;
	transition: all 1.3s ease;
}
p.banner-content-p.loaded {
	transform: scale(1);
	opacity: 1;
	-moz-transition: all 1.2s ease-out;
	-webkit-transition: all 1.2s ease-out;
	transition: all 1.2s ease-out;
}

  @media(min-width:1000px) {
	.banner-content {
  width: 50%;
  }
  }

.banner-arrow {
  display:inline-block;
	width: 40px;
	height: 40px;
	border: none !important;
	text-indent: -9999px;
	cursor: pointer;
	opacity: 0.85;
	background:  url(images/arrows-sprite-white.png) no-repeat 0 0 !Important;
	transform: rotate(-90deg);
	position: absolute;
	bottom: 80px;
	z-index: 9;
  left: 0;
  right: 0;
  margin: 0 auto;
}


  .banner {
  overflow: hidden;
  text-align: center;
  }
  .banner-title {
  font-size: 54px;
  text-transform: uppercase;
  font-weight: 400;
  letter-spacing: 8px;
  margin: 0 auto;
  line-height: 1.2;
  }
  .banner-overlay {
  background: rgba(0,0,0,0.3);
  z-index: 2;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
	opacity: 0;
  }
  .banner-links a {
  display: inline-block;
  padding: 7px 10px;
  margin: 10px;
  border: 1px solid #fff;
  color: #fff;
  text-transform: uppercase;
  text-decoration: none !important;
  font-size: 16px;
  letter-spacing: 2px;
  font-family: Arial, Helvetica, sans-serif;
  }
  .banner-links a {
  display: inline-block;
  padding: 13px 18px;
  margin: 10px;
  border: 1px solid #fff;
  color: #fff;
  text-transform: uppercase;
  text-decoration: none !important;
  font-size: 14px;
  letter-spacing: 2px;
  font-family: Arial, Helvetica, sans-serif;
  }
  .banner-links a:hover {
  background: #fff;
  border: 1px solid #fff;
  color: rgb(62, 67, 136);
  }



  @keyframes backgroundScroll {
  /*
	0%   {background-position: 0 0;}
	50%  {background-position: -400px 0;}
	100% {background-position: 0 0;}
	*/
	0%   {transform: scale(1);}
   50% {transform: scale(1.3);}
	100%   {transform: scale(1);}



  }
  .banner-animation {
	animation: backgroundScroll 40s linear infinite;
	overflow: hidden;
  }
  .slick-list {
    height: 100% !important;
}



  .slick-arrow {
	position: absolute;
	z-index: 99;
	top: calc( 50% - 20px);
	width: 40px;
	height: 40px;
	border: none !important;
	text-indent: -9999px;
	cursor: pointer;
	opacity: 0.6;
  }

  .slick-prev {
  left: 5px;
  background:  url(images/arrows-sprite-black.png) no-repeat 0 0 !Important;
  }
  .slick-next {
  right: 5px;
  background:  url(images/arrows-sprite-black.png) no-repeat -40px 0 !Important;
  }
  .banner .slick-prev {
  left: 5px;
  background:  url(images/arrows-sprite-white.png) no-repeat 0 0 !Important;
  }
  .banner .slick-next {
  right: 5px;
  background:  url(images/arrows-sprite-white.png) no-repeat -40px 0 !Important;
  }
  @media (min-width: 900px) {
	.slick-prev {
		left: -40px;
	}
	.slick-next {
		right: -40px;
	}
	.banner .slick-prev {
		left: 20px;
	}
	.banner .slick-next {
		right: 20px;
	}
  }

  p.subtext {
	font-weight: 200;
	font-size: 19px;
	letter-spacing: 1px;
	color: #444;
	margin: 0 auto 20px;
	width: 80%;
	max-width: 700px;
	text-align:center;
	}



  :root {
	  --primarycolour: #7e7b6e;
	  --secondarycolour: #E8E8E8;
	  --primaryfont: 'Libre Bodoni', serif;
	  --secondaryfont: 'Nunito', sans-serif;

	  --primaryfont: 'Cormorant Garamond', serif;
--font3: 'Cormorant Garamond', serif;
--font4: 'Cardo', serif;
--font5: 'Quattrocento', serif;



	  /* D9D9D9 */
  }

  /*
  LIBRE BODONI
  -------------------
  extra-light:
  light:
  regular:
  medium:

  NUNIO
  -------------------
  200 -
  300 -
  400 -
  500 -

  */



  * {box-sizing: border-box;}


  body {
	margin: 0;
	/* background-color: #f1f1f1; */
	font-family: var(--secondaryfont), Arial, Helvetica, sans-serif;
  }


  h2 {
	font-size: 26px;
	text-transform: uppercase;
	font-weight: 200;
	color: #6F6456;
	letter-spacing: 2px;
	text-align: center;
	margin: 20px auto;
	font-family: var(--primaryfont);
  }
  h3 {
	font-size: 21px;
	text-transform: none;
	font-weight: 200;
	color: #6F6456;
	letter-spacing: 1px;
	text-align: center;
	margin: 20px auto;
  }
  @media(min-width:900px) {
	h2 {
	  font-size: 30px;
	  letter-spacing: 5px;
	}
  }


  .space10 { clear: both; display: block; width: 100%; height: 10px; }
  .space15 { clear: both; display: block; width: 100%; height: 15px; }
  .space20 { clear: both; display: block; width: 100%; height: 20px; }
  .space25 { clear: both; display: block; width: 100%; height: 25px; }
  .space30 { clear: both; display: block; width: 100%; height: 30px; }
  .space35 { clear: both; display: block; width: 100%; height: 35px; }
  .space40 { clear: both; display: block; width: 100%; height: 40px; }
  .space45 { clear: both; display: block; width: 100%; height: 45px; }
  .space50 { clear: both; display: block; width: 100%; height: 50px; }
  .space55 { clear: both; display: block; width: 100%; height: 55px; }
  .space60 { clear: both; display: block; width: 100%; height: 60px; }
  .space65 { clear: both; display: block; width: 100%; height: 65px; }
  .space70 { clear: both; display: block; width: 100%; height: 70px; }
  .space75 { clear: both; display: block; width: 100%; height: 75px; }
  .space80 { clear: both; display: block; width: 100%; height: 80px; }
  .space85 { clear: both; display: block; width: 100%; height: 85px; }
  .space90 { clear: both; display: block; width: 100%; height: 90px; }
  .space95 { clear: both; display: block; width: 100%; height: 95px; }
  .space100 { clear: both; display: block; width: 100%; height: 100px; }




  .navbar {
	position: absolute;
	  top: 0;
	  left: 0;
	  width: 100%;
	  z-index: 90;
	  text-align: left;
  }

  #navbar-scroll {
	background-color: #fff;
	position: fixed;
	top: -70px;
	width: 100%;
	display: block;
	transition: top 0.3s;
	z-index: 97;
  }

  #navbar-scroll .navbar-items {
	display: none;
  }
  @media(min-width: 900px) {
	#navbar-scroll .navbar-items {
	  float: left;
	  display: block;
	}
  }


  #navbar-scroll a {
	float: left;
	display: block;
	color: #111;
	text-align: center;
	padding: 8px 15px 5px 20px;
	  text-decoration: none;
	  font-size: 15px;
	text-transform: uppercase;
	letter-spacing: 2px;
  }

	#navbar-scroll a#logo {
	padding: 0;
	}

  #navbar-scroll a:hover {
	color: black;
  }

@media (max-width: 900px) {
    #navbar-scroll .book-now-wrapper a {
        display: block !important;
        width: min-content !important;
        float: right !important;
        padding: 8px 4px !important;
        letter-spacing: 1px !important;
        min-width: 118px !important;
        position: fixed;
        bottom: 15px;
        left: 15px;
		    background: var(--primarycolour);
    border: 1px solid var(--primarycolour);
    }
}



  /* -------------------  */

  .banner {
	height: 100vh;
	width: 100%;
  }

  .banner-image {
	position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 0;
  }

  .page-contact-us .banner,
  .page-contact-us .banner-image {
	height:30vh;
	width: 100%;
  }


  .banner h1 {
	font-family: 'Libre Bodoni';
	font-family: var(--font3);
    /* font-family: var(--font4);
    font-family: var(--font5); */
	/**/
  font-style: normal;
  font-weight: 400;
  font-size: 40px;
  line-height: 1.2;
  text-align: center;
  letter-spacing: 0.135em;
  text-transform: uppercase;
  color: #fff;
  }


  @media (min-width: 900px) {
	.banner h1 {
	font-style: normal;
	font-weight: 400;
	    font-size: 58px;
    line-height: 1.2;
    text-align: center;
    letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #fff;
	}
  }






  .main-navigation  {
  display: inline-block;
  margin: 15px 0 0 -95px
  }
  .menu-primary-menu-container {
	display: none;
  }

  .overlay .menu-primary-menu-container {
	display: inline-block;
  }
  /*
  .logo {
		  width: 200px;
		  position: absolute;
	  top: 46px;
	  left: 30px;
	  z-index: 10;
	  }
  */




  @media only screen and (min-width: 1000px) {
	.menu-primary-menu-container {
	  display: inline-block;
	}



	  .main-navigation a {
		  font-size: 14px !important;
	  }
  /*.main-navigation  {
	display: inline-block;
	}*/
  }

  @media only screen and (min-width: 1360px) {
	.menu-primary-menu-container {
	  display: inline-block;
	}



	  .main-navigation a {
		  font-size: 15px !important;
	  }
  /*.main-navigation  {
	display: inline-block;
	}*/
  }

  .main-navigation li {
	/*float: left;
	position: relative;*/
	display: inline-block;
	text-align: center;
	padding: 0 32px 0 1px;
	vertical-align: -webkit-baseline-middle;
  }
  .main-navigation li.highlight {
  background: var(--blue);
	  padding: 9px 14px;
  }
  .main-navigation li li {
	padding: 0 0 0 0;
	border-right: none;
	display:block;
  }

  .main-navigation a {
	font-weight: 400;
	  display: block;
	  text-decoration: none;
	  font-size: 15px;
	  text-transform: uppercase;
	  color: #fff;
	  opacity: 1;
	  text-decoration: none;
	  line-height: 0.6;
	  letter-spacing: 2px;
	  padding: 5px 0 7px;
	  -moz-transition: all .3s ease;
	  -webkit-transition: all .3s ease;
	  transition: all .3s ease;
	  border-bottom: 2px solid transparent;
  }

  .main-navigation a:hover {
	border-bottom: 2px solid #eee;
	-moz-transition: all .3s ease;
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
  }

  .main-navigation li.menu-item-has-children a, .main-navigation li.menu-item-has-children a:hover {
  border-bottom: none !Important;
  }
  .main-navigation li.menu-item-has-children a:active {
  color: #fff;
  }

  .main-navigation li:hover &gt; a {
  color: #FFF;
  }

  .main-navigation a.button{
	display: inline-block;
	padding: 14px 18px;
	font-size: 14px;
	font-weight: 400;
	margin: 3px 8px;
	border: 2px solid #fff;
	color:#fff !important;
	text-decoration: none !important;
	text-transform: uppercase;
	letter-spacing: 1px;
	min-width: 130px;
  }
  .main-navigation a.button.primary {
  background: #272216;
  border: 2px solid #272216;
  }







  /* sub menu */


  .main-navigation ul ul {
	/*float: left;*/
  position: absolute;
  top: 73px;
  left: -999em;
  z-index: 99999;
  width: 250px;
  padding: 20px 0 17px;
  margin-left: -27px;
  background: transparent !Important;
  background: var(--gold) !Important;
  }

  .main-navigation ul ul ul {
	left: -999em;
	top: 0;
  }

  .main-navigation ul ul li:hover &gt; ul,
  .main-navigation ul ul li.focus &gt; ul {
	left: 100%;
  }

  .main-navigation ul ul a {
	display: inline-block;
	width: 250px;
	padding: 10px 30px;
	text-align: left;
	font-size: 15px;
  text-transform: uppercase;

  -webkit-transition: none;
  transition: none;
  }

  .main-navigation ul ul a {
	text-decoration: none !Important;
  background: var(--gold);
  color: #eee;
	border-bottom: none !Important;
	line-height: 1.1;
  }


  .main-navigation ul ul a:hover {
	background: var(--goldhover);
	background: var(--darkgrey);
  color: #fff;
  }






























			/* #bookingform */

			.whitebar {
			  position: absolute; left: 0; right: 0;bottom: -15px; background: #fff; z-index:10;
			}
			  @media only screen and (min-width:700px) {
			  .whitebar {
				position: absolute; left: 0; right: 0;bottom: -19px;  background: #fff; z-index:10;
			  }
			}

			  #bookingform {
				  /* width: 50vw; */
				  text-align: center;
				  position: absolute;
				  left: 50%;
				  transform: translateX(-50%);
				  /* overflow: auto; */
				  bottom: 20px;
		  z-index: 20;
		  width: 90%;
				  display: none;
			  }
			  .bookingform-inner {
				  text-align: center;width: auto;display: block; padding: 5px 0;display: inline-flex;
				  background: #fff;
			  }
			  @media only screen and (min-width:700px) {
				  .bookingform-inner {
					  text-align: center;width: auto; display: inline-flex;
			padding: 10px 20px 17px 20px;
			padding: 5px 0;
				  }
			  }
  /* */
			  .bookingform-title {
				  display: none; height: 30px; color: white; font-family: 'Crimson Text', serif; text-transform: uppercase;
				  font-size: 18px; font-weight: 600;color: #6f6456; text-align:right;margin: 5px 0 0 0;line-height: 1.1;
			  }

			  .bookingform-inner form {
				  text-transform: uppercase !important;
				  /* height: 95px;
				  height: 34px; */
			  }
			  .date-in { display: inline-block;text-align: left;margin-right: 5px; }
			  .date-out { display: inline-block;text-align: left; }

			  .date-in, .date-out {
				  width: 34%;
				  /*float: left;*/
				  }
			  .date-in input, .date-out input {
				  width: 100%;
				  }
			  @media only screen and (min-width:700px) {
				  .bookingform-title {
					  font-size: 24px;
					  margin: 5px 20px 0 0;
				  }
				  .date-in, .date-out {
				  width: 40%;
				  /*float: none;*/
				  }
				  .date-in input, .date-out input {
			width: 100%;
				  /* max-width: 120px; */
				  }
			  }
  /*
			  @media only screen and (min-width:870px) {
				  .date-in input, .date-out input {
					  width: 175px;
					  }
		} */



			  #bookingform form a.button.big {
		  font-size: 13px;
		  background: #6f6456;
		  text-transform: uppercase;
		  color: #fff;
		  padding: 9px 14px;
		  margin: 5px 0 5px 5px;
		  -moz-transition: all .3s ease;
		  -webkit-transition: all .3s ease;
		  transition: all .3s ease;
		  /* float: left; */
		  letter-spacing: 1px;
		  font-weight: normal;
		  border: none;
			  }


			#bookingform form input {
			  font-size: 14px;
			  font-family: 'Source Pro Sans', sans-serif;
		padding: 7px 0 8px 28px;
	  cursor:pointer;
	  margin: 5px 0;
			}

			  @media only screen and (min-width:700px) {
			  #bookingform form input {
		  font-size: 15px;
		  font-family: 'Source Pro Sans', sans-serif;
		  padding: 7px 0 8px 28px;
		  border: 1px solid #aaa;
			}
			  }
			#bookingform ::-webkit-input-placeholder { /* Chrome/Opera/Safari */
			  color: #999;
			}
			#bookingform ::-moz-placeholder { /* Firefox 19+ */
			  color: #999;
			}
			#bookingform :-ms-input-placeholder { /* IE 10+ */
			  color: #999;
			}
			#bookingform :-moz-placeholder { /* Firefox 18- */
			  color: #999;
			}


		/* override zebra */
		button.Zebra_DatePicker_Icon_Inside_Right {
		  margin: 1px 15px 0 2px !important;
		  opacity: 0.5;
		  pointer-events: none !important;
	  }


		   /*#bookingform button, input[type="button"], input[type="reset"], input[type="submit"] {*/
		   #bookingform input[type="submit"] {
			  border: none;
			  border-color: #ccc #ccc #bbb;
			  border-radius: 3px;
			  background: #e6e6e6;
			  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.5), inset 0 15px 17px rgba(255, 255, 255, 0.5), inset 0 -5px 12px rgba(0, 0, 0, 0.05);
			  color: rgba(0, 0, 0, .8);
			  font-size: 12px;
			  font-size: 0.75rem;
			  line-height: 1;
			  padding: .6em 1em .4em;
			  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.8);
			  position: absolute;
			  left: 0;
			  /*background: transparent url('_zebradatepicker/images/calendar.png') no-repeat 5px center;*/
			  width: 30px;
			  text-indent: -9999px;
		   }



		   /* zebra datepicker  */

		  .Zebra_DatePicker {
			  z-index: 99999;
		  }

		  .vignette-top {
			  position: absolute;
			  top: 0;
			  right: 0;
			  bottom: 50%;
			  left: 0;
			  background-image: linear-gradient(180deg, #000000 8%, rgba(0, 0, 0, 0) 90%);
			  z-index: 3;
			  opacity: 0.4;
		  }
		  .vignette-bottom {
			  position: absolute;
			  top: 50%;
			  right: 0;
			  bottom: 0;
			  left: 0;
			  background-image: linear-gradient(0deg, #000000 8%, rgba(0, 0, 0, 0) 90%);
			  z-index: 3;
			  opacity: 0.4;
		  }

  .overlay {
	  background: rgba(0,0,0,0.5);
	  z-index: 2;
	  position: absolute;
	  top: 0;
	  left: 0;
	  bottom: 0;
	  right: 0;
	  opacity: 0.1;
  }

  .intro {
	text-align: center;
	padding: 15px 0;
	width: 90%;
	margin: 0 auto;
  }
  .intro h1, h1 {
	font-family: var(--primaryfont);
	color: var(--primarycolour);
	font-size: 30px;
	font-size: 45px;
	font-weight: normal;
	text-transform: uppercase;
	letter-spacing: 7px;
	text-align: center;
	margin: 10px auto 10px;
  }

  .pretext {
	font-family: var(--secondaryfont);
	color: var(--primarycolour);
	text-transform: uppercase;
	text-align: center;
	letter-spacing:3px;
	margin: 30px auto 30px;
	font-style: normal;
	font-weight: 300;
	font-size: 18px;
	line-height: 26px;
  }


  .intro-text p {
	font-family: 'Nunito';
	font-style: normal;
	font-weight: 200;
	font-size: 24px;
	line-height: 1.5;
	text-align: center;
	max-width: 900px;
	margin: 0 auto;
	color: #888;
  }


  @media(min-width: 900px) {
	.intro h1, h1 {
	  font-size: 45px;
	  text-transform: uppercase;
	  text-align: center;
	  margin: 10px auto 30px;
	}
	.intro-text p {
	  font-family: 'Nunito';
	  font-style: normal;
	  font-weight: 200;
	  font-size: 28px;
	  line-height: 45px;
	  text-align: center;
	  max-width: 900px;
	  margin: 0 auto;
	  letter-spacing: 1px;
	  color: #888;
	  /* opacity: 0.5; */
	}
  }



  .bodytext p {
	font-family: var(--secondaryfont);
	font-size: 17px;
	text-transform: none;
	color: #444;
	letter-spacing: 0;
	text-align: center;
	width: 80%;
	margin: 0 auto 20px;
	max-width: 760px;
	text-align: justify;
	line-height: 1.6;
	font-weight: 300;
  }
  .textblock ul, .textblock ol {
	width: 80%;
	margin: 0 auto 20px;
	max-width: 760px;
  }
  .textblock ul  li,.textblock ol li {
	text-align: justify;
	line-height: 1.6;
	font-weight: 300;
	color: #444;
	letter-spacing: 0;
	font-family: var(--secondaryfont);
	text-transform: none;
	font-size: 17px;
  }



  .bodytext.bg-colour {
	background: #6f645621
  }










  section {
	  padding: 0;
  }












  /* ------------------------------------------------------------
  #  (image and text side by side)
  ---------------------------------------------------------------*/


  .img-txt-block {
		  display: grid;
		  grid-template-columns: 1fr;
		  margin: 45px 0;
	  }

	  @media(min-width:800px) {
			  .img-txt-block {
				  display: grid;
				  grid-template-columns: 1fr 1fr;
			  }
		  }
		  @media(min-width:1100px) {
			  .img-txt-block {
				  display: grid;
				  grid-template-columns: 2fr 1fr;
			  }
			  .img-txt-block.reverse {
				  display: grid;
				  grid-template-columns: 1fr 2fr;
			  }
		  }



	  .img-txt-block&gt;div {
		  min-height: 500px;
		  padding: 30px 0;
	  }

	  .img-txt-block--image {
		  background: grey;
	  }
	  .img-txt-block .img-txt-block--text-content {
		display: block;
		padding: 10px 8% 30px;
		margin: 0 auto;
		text-align:center;
	}
	  @media(min-width: 1100px) {

		  .img-txt-block .img-txt-block--text-content {
			  display:block;
			  padding: 0 15%;
			  text-align: left;
		  }
		  .img-txt-block.reverse .img-txt-block--text-content {
			  text-align: right;
		  }



		  .img-txt-block&gt;div {
			  min-height: 600px;
		  }
		  .img-txt-block .img-txt-block--text-content {
			  display:block;
			  padding: 0 20%;
		  }

	  }



		  .img-txt-block--text {
			  display: flex;
			  align-items: center;
			  justify-content: left;
		  }

		  .reverse .img-txt-block--text {
			  display: flex;
			  align-items: center;
			  justify-content: left;
		  }




		  @media(min-width: 1100px) {
			  .reverse .img-txt-block--text {
			grid-row: 1;
			}
		  }



		  .img-txt-block p {
			padding: 0;
			font-size: 17px;
			font-weight: 200;
			line-height: 1.6;
			/* line-height: 25px;*/
			text-align: center;
		}

	  p {
		  padding: 0;
		  font-size: 17px;
		  text-align: center;
	  }
	  .reverse .img-txt-block p {
		  text-align:center;
	  }


	  @media(min-width: 900px) {
		.img-txt-block p {
			padding: 0;
			font-size: 17px;
			font-weight: 200;
			line-height: 1.6;
			/* line-height: 25px;*/
			text-align: left;
		}

	  p {
		  padding: 0;
		  font-size: 17px;
		  text-align: center;
		  line-height: 1.6;
	  }
	  .reverse .img-txt-block p {
		  text-align:right;
	  }

	  }



	  .subheading {
		  font-size: 13px;
		  text-transform: uppercase;
		  letter-spacing: 5px;
		  margin: 8px auto;
		  color: grey;
	  }
	  .heading {
		  font-size: 26px;
		  text-transform: uppercase;
		  letter-spacing: 4px;
		  margin: 20px auto;
	  }

body.single-post .heading-element {
	padding: 0 !important;
}



  /* ------------------------------------------------------------
  --Stay
  ---------------------------------------------------------------*/

  #stay {
	background: #6f645621;
	padding: 40px 0 20px;
	text-align: center;
  }

  #stay .card .overlay {
	display: block;
  }
  @media(min-width:900px) {
	#stay .card .overlay {
	  display: block;
	}
  }






  @media(max-width:900px) {
	  #stay  {
		padding: 30px 0 0;
		text-align: center;
	  }


	  #stay .card {
		height: 80vh !important;
		height: 70vh !important;
		max-height: none !important;
		opacity: 1 !important;
	  }
	  #stay .card .imageholder {
	  height: 60% !important;
	  width: 100%;
	  }
	  #stay .card .card-content {
	  height: 40% !important;
	  width: 100% !important;
	  position: relative;
	  left: 0;
	  top:auto;
	  background-color: #ecebe9 !important;
	  padding: 20px !important;
	  }
	  #stay .card .card-content h3 {
	  color:#777;
	  }
	  #stay .card .card-content .description {
	  display: block !important;
	  text-align: center;
	  font-size:16px;
	  color:#777;
	  }
	  #stay .card .overlay {
	  display: none;
	  }

	  #stay .card .card-content .button {
		display: inline-block !important;
		text-align: center;
		font-size:16px;
		border-color: var(--primarycolour) !important;
		color:var(--primarycolour) !important;
		}
  }






  .cards {
	width: 100%;
	/*
	max-width: 1500px;
	 max-width: 1200px;
	max-width: 1400px;
	*/
	margin: 20px auto;
	/*display: table;*/ /* Make the container element behave like a table */
	/*width: 100%;*/ /* Set full-width to expand the whole page */
  }
  .card {
	/*display: table-cell; *//* Make elements inside the container behave like table cells */
	width: 100%;
	margin: 20px 0;
	margin-bottom: 0;
	/*padding: 25px;*/
	position: relative;
	/* opacity: 0.4; */
	transition-duration: 1s;
	  transition: all .3s ease !important;
	height: 50vh;
	max-height: 700px;
  }
  .card.slick-current {
	/*display: table-cell; *//* Make elements inside the container behave like table cells */
	width: 100%;
	margin: 20px 0;
	margin-bottom: 0;
	/*padding: 25px;*/
	position: relative;
	opacity: 1;
	transition-duration: 1s;
	  transition: all .3s ease !important;
	height: 50vh;

  }
  @media(min-width: 900px) {
  .card {
	height:80vh;
	margin: 20px 50px;
	/* margin-top: 6vh; */
	transition-duration: 1s;
	transition: all .3s ease !important;
  }

  .card.slick-current {
	margin: 20px 50px;
	height: 80vh;
  }
  }
  .card .imageholder {
	width: 100%;
	height: 100%;
	max-height: 800px;
	margin: 0 0 0 0;
	position: relative;
  }

  .slick-active .card .imageholder {
	width: 100%;
	height: 80vh;
	max-height: 800px;
	margin: 0 0 0 0;
	position: relative;
	  transition: all .3s ease !important;
  }

  .card .card-content {
	/* position: absolute;
	top: 50%;
	left: 7.5%;
	transform: translatey(-50%) !important;
	z-index: 10;
	width: 60%;
	background: #00000082;
	text-align: center;
	padding: 20px;
	aspect-ratio: 1 / 1; */

	position: absolute;
	  top: auto;
	  left: 5%;
	  bottom: 20px;
	  /* transform: translatey(-50%) !important; */
	  z-index: 10;
	  width: 90%;
	  /* max-width: 350px; */
	  background: #00000082;
	  text-align: center;
	  padding: 20px;
	  /* aspect-ratio: 1 / 1; */
	  height: auto;
  }

  .card .card-content h3 {
	font-weight: 300;
	  letter-spacing: 3px;
	  margin-bottom: 15px;
	  color: #fff;
	  text-align: center;
	  text-transform: uppercase;
	  font-size: 28px;
	  line-height: 1.2;
	  font-family: var(--primaryfont);
  }

  .card .card-content h3 strong {
	font-weight: 700;
  }



  .card .card-content p.description {
	font-size: 17px;
	font-weight: 300;
	line-height: 1.3;
	  margin: 10px auto 20px;
	  color: #fff;
  }

  @media(min-width:900px) {
	.card .card-content {
	  position: absolute;
	  top: 50%;
	  left: 7.5%;
	  bottom: auto;
	  transform: translatey(-50%) !important;
	  z-index: 10;
	  width: 40%;
	  max-width: 350px;
	  background: #00000082;
	  text-align: center;
	  /* padding: 36px 20px; */
	  padding: 20px;
/* 	  aspect-ratio: 1 / 1; */
	}
	.card .card-content h3 {
	  font-size: 38px;
	}/*
	.card .card-content p.description {
	  font-size: 18px;
	  line-height: 1.2;
  }*/
  }

  .smallcards .card {
	height: 80vh;
	margin: 8px;
	opacity: 1;
	overflow: hidden;
	-moz-transition: all .6s ease;
	-webkit-transition: all .6s ease;
	transition: all .6s ease;
  }


  /* small cards */
  @media (min-width: 900px) {
	.smallcards .card {
		height: 80vh;
		margin: 8px;
		opacity: 1;
		overflow: hidden;
	}
  }
  .smallcards .card .imageholder{
	-moz-transition: all 1.3s ease;
	-webkit-transition: all 1.3s ease;
	transition: all 1.3s ease;
	transform: scale(1);
  }
  .smallcards .card:hover .imageholder{
	-moz-transition: all .3s ease;
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
	transform: scale(1.1);
  }
  .smallcards .card .card-content {
	position: absolute;
	text-align: center;
	top:auto;
	bottom: -100px;
	bottom: 0;
	left: 50%;
	  transform: translateX(-50%) !important;
	z-index: 10;
	width: 80%;
	  max-width: 300px;
	  -moz-transition: all .3s ease;
	  -webkit-transition: all .3s ease;
	  transition: all .3s ease;
	  height: 30%;
	  background: transparent;
  }

  .smallcards .card:hover .card-content {
	-moz-transition: all .3s ease;
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
	bottom: 35px;
  }
  .smallcards .card:hover .imageholder {
	opacity: 0.9;
  }
  /*
  .smallcards .card:hover .vignette-bottom {
	-moz-transition: all .3s ease;
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
			  top: 50%;
			  right: 0;
			  bottom: 0;
			  left: 0;
			  background-image: linear-gradient(0deg, #000000 30%, rgba(0, 0, 0, 0) 90%);
			  z-index: 3;
			  opacity: 0.6;
  }*/


  .smallcards .card .card-content h3 {
	font-family: var(--secondaryfont);
	font-size:25px;
	text-transform: uppercase;
	font-weight: 300;
	letter-spacing: 2px;
	margin-bottom: 10px;
	color: #fff;
	text-align: center;
	  -moz-transition: all .3s ease;
	  -webkit-transition: all .3s ease;
	  transition: all .3s ease;
  }


  .smallcards .card .card-content p.description {
	opacity: 0;
	width: 100%;
	-moz-transition: all .6s ease;
	-webkit-transition: all .6s ease;
	transition: all .6s ease;
	text-align: center;
  }
  .smallcards .card:hover .card-content p.description {
	opacity: 1;
	 -moz-transition: all 1.6s ease;
	 -webkit-transition: all 1.6s ease;
	 transition: all 1.6s ease;
   }
   .smallcards .card .card-content .button {
	opacity: 0;
	-moz-transition: all .9s ease;
	-webkit-transition: all .9s ease;
	transition: all .9s ease;
	margin-top: 20px;
	border: 1px solid #fff;
	background-color: transparent;
	color: #fff;
	transition-delay: 0.7s;
   }

   .smallcards .card:hover .card-content .button {
	opacity: 1;
	-moz-transition: all .7s ease;
	-webkit-transition: all .7s ease;
	transition: all .7s ease;
	margin-top: 0px;
	transition-delay: 0;
   }



  /* Overide Default Slick Styles
  .slick-active {
	opacity: 1 !important;
	transition-duration: 1s;
	  transition: all .3s ease !important;
  }*/

  /*
  .slick-active .card .imageholder {
	width: 100%;
	height: 80vh;
	max-height: 700px;
	margin: 0 0 0 0;
	position: relative;
  }
  */

  .slick-slider button.slick-disabled {
	  transition: all .3s ease !important;
	opacity: 0.2;
	pointer-events: none;
  }


  .slick-dots  {
	text-align: center;
	display: block;
	margin: 10px 0;
	}
  @media(min-width: 900px) {
	.slick-dots  {
	  display:none;
	  }
  }



  .slick-dots li {
	list-style: none !important;
	display: inline-block;
	margin: 5px;
  }
  .slick-dots li.slick-active button {
	/*opacity: 0.5;*/
	/**/background: var(--brown);
  }
  .slick-dots li button {
	text-indent: -99999px;
	border-radius: 20px !important;
	height: 13px;
	width: 13px;
	border: none;
	list-style: none;
	/* background: var(--dark-grey); */
	background: #ccc;
  }
  .slick-dots li button:hover {
	cursor: pointer;
  }

  .slick-dots li.slick-active button:hover {
	cursor: default;
  }



  .slick-arrow {
	position: absolute;
	z-index: 99;
	top: 46%;
	width: 40px;
	height: 40px;
	border: none !important;
	text-indent: -9999px;
	cursor: pointer;
	opacity: 0.6;
  }
  .slick-arrow:hover {
	opacity: 1;
	outline: none !Important;
  }
  .reviews .slick-arrow {
  top: 428px;
  }


  .slick-prev {
	left: 5px;
	background:  url(images/arrows-sprite-white.png) no-repeat 0 0 !Important;
  }
  .slick-next {
	right: 5px;
	background:  url(images/arrows-sprite-white.png) no-repeat -40px 0 !Important;
  }
  .banner .slick-prev {
	left: 5px;
	background:  url(images/arrows-sprite-white.png) no-repeat 0 0 !Important;
  }
  .banner .slick-next {
	right: 5px;
	background:  url(images/arrows-sprite-white.png) no-repeat -40px 0 !Important;
  }
  .wineslider .slick-prev {
  left: 5px;
  background:  url(images/arrows-sprite-white.png) no-repeat 0 0 !Important;
  }
  .wineslider .slick-next {
  right: 5px;
  background:  url(images/arrows-sprite-white.png) no-repeat -40px 0 !Important;
  }

  .postslider {
	width: 90%;
	max-width: 1400px;
	margin: 30px auto;
  }

  #experiences.postslider {
	width: 100%;
	max-width: 1400px;
	margin: 30px auto;
  }
  @media(min-width:1600px) {
	.postslider {
	  width: 90%;
	}

	#experiences.postslider {
	  width: 90%;
	  max-width: 1400px;
	  margin: 30px auto;
	}
  }


  @media (min-width: 900px) {
	.slick-prev {
		left: 20px;
	}
	.slick-next {
		right: 20px;
	}


	/* cards */
	.cards .slick-prev {
	  left: 7%;
	  width: 40px;
	  height: 40px;
	  background: url(images/arrows-sprite-black.png) no-repeat 0 0 !Important;
	}
	.cards .slick-next {
	  right: 7%;
	  width: 40px;
	  height: 40px;
	  background: url(images/arrows-sprite-black.png) no-repeat -40px 0 !Important;
	}
	.postslider .slick-prev {
	  top: 32%;
	  left: -60px;
	  width: 50px;
	  height: 50px;
	  background: url(images/sprite-arrows-outline-brown.png) no-repeat 0 0 !Important;
	}
	.postslider .slick-next {
	  top: 32%;
	  right: -60px;
	  width: 50px;
	  height: 50px;
	  background: url(images/sprite-arrows-outline-brown.png) no-repeat -50px 0 !Important;
	}

  /* 000 */

  #experiences.postslider .slick-prev {
	top: 45%;
	left: -60px;
	width: 50px;
	height: 50px;
	background: url(images/sprite-arrows-outline-brown.png) no-repeat 0 0 !Important;
  }
  #experiences.postslider .slick-next {
	top: 45%;
	right: -60px;
	width: 50px;
	height: 50px;
	background: url(images/sprite-arrows-outline-brown.png) no-repeat -50px 0 !Important;
  }





	.reviews .slick-prev {
	  left: -40px;
	}
	.reviews .slick-next {
	  right: -40px;
	}
	.banner .slick-prev, .accomm .slick-prev {
	  left: 20px;
	}
	.banner .slick-next, .accomm .slick-next {
		right: 20px;
	}
	.accomm .slick-prev {
	  left: 5px;
	  background: url(images/arrows-sprite-white.png) no-repeat 0 0 !Important;
	}
	.accomm .slick-next {
	  right: 5px;
	  background: url(images/arrows-sprite-white.png) no-repeat -40px 0 !Important;
	}
	.reviews .slick-arrow {
	  top: 50%;
	}
  }

  .button {
	  background: var(--primarycolour);
	border: 1px solid var(--primarycolour);
	  color: #fff;
	  font-weight: 400;
	  letter-spacing: 2px;
	  padding: 8px 14px;
	  margin: 5px;
	  text-decoration: none;
	  display: inline-block;
	  text-transform: uppercase;

  /* set standard size */

	min-width: 135px;
	  text-align: center
  }
  .button.autowidth {
	min-width: auto !important;
  }


  .button.white {
	  background-color: #fff;
	border: 1px solid #fff;
	  color: var(--primarycolour);
  }
  .button.white:hover {
	  background-color: #ffffff8e;
	border: 1px solid #ffffff8e;
	  color: var(--primarycolour);
  }
  .button.transparent {
	  background: transparent;
	border: 1px solid var(--primarycolour);
	  color: var(--primarycolour);
  }
  .button.transparent.white {
	  color: #fff;
	border: 1px solid #fff;
  }



  /* --------------------------------------------------------
  FOOTER
  -----------------------------------------------------------*/


  footer {
	width: 100%;
	padding: 20px 0 100px;
	background: #ffffff;

  }
  .footer-inner {
	grid-template-columns: 1fr;
	grid-gap: 22px;
	max-width: 1400px;
	width: 90%;
	color: #fff;
	margin: 0 auto 0;
  }

  @media only screen and (min-width:1000px) {


	.footer-inner {
		display: grid;
		grid-template-columns: repeat( 5, 1fr);
		grid-template-columns: 1fr 1fr 1fr 1fr 1.4fr;
		grid-gap: 22px;
		max-width: 1400px;
		color: #fff;
		margin: 0 auto 0;
	}
  }

  .footer-inner p {
	line-height: 1.3;
	font-size: 14px;
	text-align: left;
  }
  .footer-inner p.heading {
	font-size: 15px;
	font-weight: 700;
	color:var(--primarycolour);
	letter-spacing: 1px;
	text-transform: uppercase; /* */
	/* font-style: italic; */
	opacity: 1;
  }

.footer-inner ul.menu {
	list-style: none;
	padding: 0;
	margin: 0;
}

  .footer-inner p.sub, .footer-inner ul.menu li {
	font-size: 14px;
	color: #aaa;
	letter-spacing: 0px;
	line-height: 1;
  }

.footer-inner ul.menu li {
	margin: 10px 0;
}

  .footer-inner p a, .footer-inner ul.menu a {
  color: grey !important;
  text-decoration: none;
  border-bottom: 1px solid transparent;
  }
  .footer-inner p a:hover, .footer-inner ul.menu a:hover {
  color: #000 !important;
  border-bottom: 1px solid #777;
  }

  .footer-inner p i {
	width: 24px;
	font-size: 17px;
	color: brown;
	color: #000;
	vertical-align: middle;
  }
  .footer-inner  p.social-media-icons {
	margin: 20px auto 0;
	margin: 5px auto 26px;
  }
  .footer-inner p.social-media-icons i {
	width: 22px;
	height: 22px;
	font-size: 17px;
	color: var(--white);
	vertical-align: middle;
	background: var(--blue);
	border-radius:100px;
	padding: 7px 0 0 7px;
	margin-right: 5px
  }
  .footer-inner p.social-media-icons a {
	border-bottom: none !important;
  }

  .subform {
	text-align: left;
	padding-left: 10%;
  }
  .subform input {
	height: 30px;
	width: calc( 88% - 20px );
	background: transparent;
	border: none;
	margin: 0 0 8px 0;
	color: #111;
	padding: 6px 10px;
	border-bottom: 1px solid brown;
	font-size: 15px;
  }
  .subform input::placeholder {
	color: #666;
  }
  .subform button {
  height: 44px;
  width: 88%;
  margin-top: 5px;
  background: #000;
  border: none;
  padding: 0;

  color: #fff;
  font-weight: 600;
  background: #000;
  border: none;
  font-family: 'Lato', sans-serif;
  text-transform: uppercase;
  font-size: 12px;
  cursor: pointer;
  letter-spacing: 4px;



  }







  .credits {
	display: grid;
	grid-template-columns: 1fr;
	grid-gap: 10px;
	color: #6e6e6e !important;
	font-size: 13px;
	width: 90%;
	max-width: 1400px;
	margin:55px auto 0;
  }
  .credits .copyright {
	text-align: center;
  }
  .credits .designedby {
	text-align: center;
  }
  @media(min-width: 900px) {
	.credits {
	  display: grid;
	  grid-template-columns: 1fr 1fr;
	  grid-gap: 10px;
	  color: #6e6e6e !important;
	  font-size: 13px;
	  width: 90%;
	  max-width: 1400px;
	  margin:35px auto 0;
	}


  .credits .copyright {
	text-align: left;
  }
  .credits .designedby {
	text-align: right;
  }
  }
  .credits a {
	color: #999;
	text-decoration: none;
  }
  .credits a:hover {
	color: #aaa;
  }


  /* ------------------------------------------------------------
  --CTA
  ---------------------------------------------------------------*/

  .cta {
  width: 100%;
  min-height: 75vh;
  display: flex;
  }
  .cta.small {
	min-height: 50vh;
  }

  .cta.large {
	min-height: 100vh;
  }


  .cta-inner {
  width: 90%;
  max-width: 1500px;
  display: flex;
  align-items: flex-end;
  justify-content:  center;
  margin: 0 auto;
  position: relative;
  z-index: 20;
  padding: 100px 0;
  }

  .cta-content {
	text-align: center;
	width: 90%;
  }



  .cta p.headline {
	font-family: var(--primaryfont);
  font-weight: normal;
    text-transform: uppercase;
    font-size: 35px;
    letter-spacing: 5px;
    color: #fff;
    margin: 0 0 20px 0;
  }
  @media(min-width: 900px) {
	.cta p.headline {
		font-size: 45px;
		margin: 0 0 0 0;
	  }
  }
  .cta p.subtext {
  font-weight: 300;
  font-size: 22px;
  letter-spacing: 0px;
  color: #fff;
  margin: 0;
  /* letter-spacing: 2px; */
  max-width: 1000px;
  width: 90%;
  margin: 0 auto 30px;
  opacity: 0.8;
  /* text-transform: uppercase;*/

  }

  .cta p strong {
  font-weight: 600;
  text-transform: uppercase;
  font-size: 40px;
  }







  /* ------------------------------------------------------------
  # Reviews
  ---------------------------------------------------------------*/
  .reviews {
	  width:90%;
	  margin: 0 auto 40px;
	  position: relative;

	}
	.review {
	  display: grid !important;
	  grid-template-columns: 1fr;
	  height: auto;
	  width:100%;
	}


  @media only screen and (min-width: 900px) {
	  .reviews {
		width:90%;
		max-width: 1200px;
		margin: 0 auto 60px;
	  }
	  .review {
		display: grid !important;
		grid-template-columns: 1fr;
		height: auto !important;
		width:100%;
	  }

  }

	.review-text {
		  height: auto;
		  text-align: center;
		  padding-bottom: 25px;
		  line-height: 2;
		}

		.review-text span {
		  font-family: 'Montserrat', Arial, Helvetica, sans-serif !important;
		  font-size: 18px;
		  line-height: 2;

		}
  .review-text a {
	margin-top:30px;
	display: inline-block;
  }
  span.reviewer-name {
	  display: block; margin-top: 10px;
	font-size: 15px; color: #999;
	text-transform: uppercase;
  }
  span.reviewer-location {
	  display: block; font-style: normal; font-size: 14px; margin-top: -6px; color: #999;
  }
  .review p {
	font-size: 17px;
	font-weight: 300;
	font-style: italic;
	color: #8E8484;
	line-height: 1.5;
	width: 90%;
	max-width: 730px;
	margin: 40px auto 0;
	text-align: center;
	}

  .review p.review-title {
	font-style: normal;
	text-transform: uppercase;
	font-size: 35px;
	font-weight: 200;
	color: #8E8484;
	max-width: 1000px;
  }


  .review p.review-title:before {
	width: 28px;
	height: 22px;
	content: url(images/testimonial-quotes-open.png);
	line-height: 0.2;
	position: relative;
	right: 0;
	top: 0;
	vertical-align: super;
	margin-right: 6px;
  }
  .review p.review-title:after {
	  width: 28px;
	height: 22px;
	content: url(images/testimonial-quotes-close.png);
	line-height: 0.3;
	position: relative;
	left: 0;
	top: 0;
	margin-left: 6px;
	vertical-align: text-bottom;
  }






	.slick-arrow {
	  position: absolute;
	  z-index: 96;
	  top: calc(50% - 40px);
	  width: 40px;
	  height: 40px;
	  border: none !important;
	  text-indent: -9999px;
	  cursor: pointer;
	  opacity: 1;
	}
	.slick-arrow:hover {
	  opacity: 1;
	  outline: none !Important;
	}
	.reviews .slick-arrow {
	top: 40%;
	}





	.slick-dots li button {
	  text-indent: -9999px;
	  background: grey;
	  height: 13px;
	  width: 13px;
	  margin: 2px;
	  border-radius: 10px;
	  border: none !important;
	  cursor:pointer;
	}

	.slick-dots li.slick-active button {
	  background: #9d9595;
	  opacity: 0.6;
	  cursor:default;
	}

	.slick-dots {
	  text-align: center;
	  padding: 0;
	  margin: 0 auto 30px;
	}

	.slick-dots li {
	  display: inline-block;
	  width: auto;
	}



  /* --------------------------------------------------------
  BLOG
  -----------------------------------------------------------*/

  .blog-list {
	display: grid;
		grid-template-columns: 1fr;
		/* grid-gap: 15px; */
		width: 90%;
		margin: 20px auto;
		max-width: 1400px;
	  }
	  .blog-list a{
		display: block;
	  }
	  .blog-list div  {
		padding-bottom: 35px;
	  }

	  .blog-list div:hover p:not(.date)  {
		text-decoration: none;
	  }

	@media(min-width: 900px) {
	  .blog-list {
		display: grid;
			grid-template-columns: 1fr 1fr 1fr;
			grid-gap: 30px;
			width: 90%;
			margin: 20px auto;
			max-width: 1400px;
		  }
	}

	.blog-list p {
	  font-size: 19px;
	  font-family: var(--secondaryfont);
	  /* width: 85%; */
	  margin: 10px auto;
	  color: var(--primarycolour);
	  text-align: left;
	}

	.blog-list p.date {
	  font-size: 13px;
	  font-family: var(--secondaryfont);
	  margin: 10px auto 10px;
	}

	.blog-list img {
	  aspect-ratio: 1.5 / 1;
	  display: block;
	  margin: 5px auto;
	  object-fit: cover;
	  width: 100%;
	  height: 300px;
	}

	.blog-list img {
	  aspect-ratio: 1.5 / 1;
	  display: block;
	  margin: 0 auto;
	  object-fit: cover;
	  width: 100%;
	}

  .blog-list div a:has(img) {
	overflow: hidden;
	display: block;
	font-size: 1px;
  }

  .blog-list div a img {
  object-fit: cover;
  transform: scale(1);
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  }
  .blog-list div a:hover img {
	transform: scale(1.05);
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
  }

	.blog-pagination {
	  text-align: center;
	  margin: 20px auto 60px;
	}

	.blog-pagination a, .blog-pagination .current {
  font-size: 16px;
  font-weight: 500;
  color: var(--primarycolour);
  text-decoration: none;
  margin: 0 5px;
}

.blog-pagination .current {
  text-decoration: underline;
}

  /* ------------------------------------------------------------
  # SIA Footer
  ---------------------------------------------------------------*/


  .sia-footer {
	display: grid;
	grid-template-columns: 1fr;
	grid-gap: 22px;
	width: 90%;
	max-width: 1400px;
	color: var(--primarycolour);
	margin: 25px auto 0;
	border-top: 1px solid var(--primarycolour);
	  padding-top: 30px;
  }

  .sia-footer ul.accordion {
	margin: 0 auto 0;
  }
  @media(min-width: 1050px) {
	.sia-footer {
	  display: grid;
	  grid-template-columns: 1.5fr 1fr 1fr 1fr;
	  grid-gap: 22px;
	  max-width: 1400px;
	  color: var(--primarycolour);
	  margin: 30px auto 0;
	}
	.sia-footer ul.accordion {
	  margin: 14px auto 0;
	}
  }
  .sia-footer ul li ul {
	padding: 0;
	margin: 0 14px 14px;
  }
  .sia-footer ul li ul li {
	list-style-type: none;
	font-size: 14px;
	font-weight: bold;
	padding: 2px 0;
  }
  .sia-footer ul li ul li a {
	font-weight: normal !important;
	margin-left:8px;
  }

  /* for headings */
  .sia-footer ul li ul li:not(:has(a)) {
	font-size: 13px;
	padding: 13px 0 1px;
	letter-spacing: 1px;
  }


  /* ------------------------------------------------------------
  # Accordion
  ---------------------------------------------------------------*/

.accordion {
	width: 90%;
	max-width: 800px;
	margin: 40px auto;
}

.accordion .question {
	display: flex;
  justify-content: space-between;
  align-items: center;
  font-weight: 500;
  cursor: pointer;
  font-size: 17px;
  padding: 15px;
  letter-spacing: 1px;
  border-bottom: solid 1px #ddd;
}

.accordion .question span {
  font-size: 24px;
  margin-right: 5px;
  padding-left: 10px;
  width: 20px;
  text-align: right;
}

.accordion .accordion-content:first-child .answer {
  display: block;
}

.accordion .answer {
  display: none;
  background-color: #fff;
  padding: 5px 20px;
	font-size: 15px;
}

.accordion .answer * {
	text-align: left;
	font-family: var(--secondaryfont);
  color: #444;
}

.accordion .answer ul {
  margin: 1.5em;
  padding: 0;
}

.accordion-modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #00000080;
  z-index: 9999;
}

.accordion-modal .close-modal {
  position: absolute;
  top: 30px;
  right: 30px;
  font-size: 22px;
  text-decoration: none;
  color: #fff !important;
  font-weight: 600;
  padding: 5px;
}

.accordion-modal .modal-container {
  display: flex;
  height: 100%;
  width: 100%;
  justify-content: center;
  align-items: center;
}

.accordion-modal video {
  height: auto;
  width: 50%;
}

  #myNav {
	  width: 100%;
	  }
	  .mobile-overlay {
		height: 0;
		height: 100%;
		position: fixed;
		z-index: 99;
		top: -2000px;
		left: 0;
		background-color: var(--primarycolour);
		overflow-x: hidden;
		overflow: hidden;
		display: flex;
		  align-items: center;

		/* control look */
		transition: 1s;
		opacity: 1;

	  }

	  .overlay-content {
		position: relative;
		text-align: center;
		margin-top: 30px;

		width: 90%;
		margin: 10px auto;
	  }








  /* ------------------------------------------------------------
  # overlay menu
  ---------------------------------------------------------------*/



	  .mobile-overlay a {
		text-transform: uppercase;
		padding: 8px;
		letter-spacing: 2px;
		text-decoration: none;
		font-size: 18px;
		color: #fff;
		display: block;
		transition: 0.2s;
		font-weight: 400;
		opacity: 0.8;
	  }

 .mobile-overlay a.button {
	  min-width: 130px;
		opacity: 1;
	}
	  .mobile-overlay .overlay-left a {
		font-family: var(--primaryfont), 'Times New Roman', Times, serif;
	  }

.overlay-left .logo {
	display: none;
}

	  @media(min-width: 580px) {
		.overlay-content {
		  position: relative;
		  top: 80px;
		}

		.overlay-content {
		position: absolute;
		top: 50%;
		left: 50%;
		transform:translate(-50%, -50%);
		width: 100%;
		text-align: center;
		width: 70%;
		margin: 10px auto;
	  }

		.mobile-overlay a {
		  font-size: 43px;
		}
	  }

	  .mobile-overlay a:hover, .mobile-overlay a:focus {
		opacity: 1;

	  }

	  .mobile-overlay .closebtn {
		  position: absolute;
	  top: 3px;
	  right: 11px;
	  font-size: 40px;
	  font-weight: 200;
		z-index: 999;
	  }

	  @media screen and (max-height: 450px) {
		.mobile-overlay a {font-size: 20px}
		.mobile-overlay .closebtn {
		  position: absolute;
		top: -2px;
		right: 10px;
		font-size: 44px;
		}
	  }

		body.logged-in .click {
			top: 72px;
		}

	  .click {
		position: absolute;
		top: 40px;
		right: 20px;
		z-index:100;
		color: #fff;
	  }

		#navbar-scroll .click {
			top: 22px;
		}

	  .overlay-left {
		padding: 0 0 0 0;  text-align: center;
		/* border-bottom: 2px solid rgba(255, 255, 255, 0.322); */
	  }
	  .overlay-right {
		padding: 20px 0 0 0; text-align: left;
	  }
	  .overlay-right a {
		font-size: 17px;
		font-family: var(--secondaryfont);
	  }

	  @media(min-width: 580px) {
		.overlay-left {
		  padding: 20px 0 0 0;  border: 0; text-align: left; float: left; width: 50%;
		}
		.overlay-right {
		  padding: 20px 0 0 30px;  text-align: left;  width: 50%; float: right;
		  margin: 20px auto; padding: 0; border: none;
		}
	  }

	  .social-media-icons {
		  margin-top: 20px;
	  }
	  .overlay-content .social-media-icons a {
	  display: inline-block;
	}
	.overlay-content .social-media-icons a:hover {
	  opacity: 1;
	}
	.overlay-content i {
	  color: #fff;
	  font-size: 20px;
	}


.overlay-content ul {
	padding: 0;
}
.overlay-content ul li {
	list-style: none;
}

  .overlay-left a {
	  letter-spacing: 3px;
	  font-size: 50px;
  }
  .overlay-logo {
	  width: 100%; float: left; padding-bottom: 40px;
  }
  .overlay-logo img {
	  width:90%; max-width: 300px; height: auto; margin: 0 auto;
  }
  @media(min-width: 900px) {
	  .overlay-logo img {
		  width:90%; max-width: 300px; height: auto; margin: 0 auto;
	  }
  }















  .image-text-wrapper {
	width: 90%;
	max-width: 1400px;
	margin: 0 auto;
  }
  .image-text-wrapper.fullwidth {
	width: 100%;
	max-width: 100%;
	margin: 0 auto;
  }


  .image-text-wrapper.image-left {
	float: initial !important;
  }

@media(min-width: 900px) {

	.image-and-text {
	  display: grid;
	  grid-template-columns: 1fr 1fr;
	  grid-template-rows: auto 1fr;
	  grid-template-areas: "Image Headline" "Content Content";
	}
	.fullwidth .image-and-text {
		display: grid;
		grid-template-columns: 2fr 1fr;
		grid-template-rows: auto 1fr;
		max-height: 800px;
	  }
	  .image-text-wrapper.right.fullwidth .image-and-text {
		grid-template-columns: 1fr 2fr;
	  }
	  .image-and-text .image-slider img {
		object-fit: cover;
    aspect-ratio: 1 / 1;
    transition: opacity 500ms ease 0s;
	  }
	  .fullwidth .image-and-text img {
		aspect-ratio: auto;
	  }
	  .fullwidth .image-and-text .image-slider img {
		object-fit: cover;
    aspect-ratio: 2 / 1;
    /* width: 1269px;
    position: relative;
    left: 0px;
    top: 0px;
    z-index: 998;
    opacity: 0; */
    transition: opacity 500ms ease 0s;
	  }

	.image-right .image-and-text {
	  grid-auto-flow: dense;
	  direction: rtl;
	}
	.image-right .image-and-text:nth-child(2n) {
	direction: ltr;
  }

  }
  .image-and-text .Image {
	aspect-ratio: 1 /1;
  }
  .fullwidth .image-and-text .Image {
	aspect-ratio: 2 /1;
  }
  .image-text-wrapper.image-left .image-and-text:nth-child(2n) .Image {
	grid-column: 2;
	grid-row: 1;
  }


  .image-text-wrapper.image-left .image-and-text:nth-child(2n) .Image {
	grid-column: 2;
	grid-row: 1;
  }

  .image-text-wrapper.image-left.fullwidth .image-and-text:nth-child(2n) {
	grid-template-columns: 1fr 2fr;
  }


/*
  .image-text-wrapper.image-left .image-and-text:nth-child(2n),
  .image-text-wrapper.image-left .image-and-text:nth-child(2n) h2{
	text-align: right;
  } */

/*  REMOVED 20231205 MT
  .image-text-wrapper.image-left .image-and-text .divider{
	margin: 30px auto 30px 0;
  }
  .image-text-wrapper.image-left .image-and-text:nth-child(2n) .divider{
	margin: 30px 0 30px auto;
  }
*/
  .image-text-wrapper.image-left .image-and-text h4{
	margin: 8px auto 20px 0 ;
  }
  .image-text-wrapper.image-left .image-and-text:nth-child(2n) h4{
	margin: 8px 0 20px auto;
  }
  @media screen and (max-width: 767px) {
	.image-text-wrapper .image-and-text .divider {
	  margin: 30px auto !important;

	}
  }



.image-and-text .text .text-content {
	padding: 0 15%;
	text-align: center;
  }

  .image-and-text .text {
	align-items: center;
	justify-content: center;
  }

  .image-and-text h4 {
	font-size: 13px;
	  text-transform: uppercase;
	  letter-spacing: 4px;
	  margin: 8px auto 20px;
	  color: grey;
	  font-weight: 400;
  }

  .image-text-wrapper.Square:not(.Big) .image-and-text {
	width: 90%;
	max-width: 1400px;
	margin: 45px auto !important;
	grid-template-columns: 1fr 1fr !important;
  }

  .image-text-wrapper.Square .Image &gt; div, .image-text-wrapper.Square video {
	aspect-ratio: 1/1;
	min-height: unset !important;
	max-height: 600px;
  }

  .image-text-wrapper.Square &gt; h2, .image-text-wrapper.Square &gt; p {
	max-width: 100% !important;
	text-align: center !important;
  }

  .image-text-wrapper.Left.Small &gt; h2, .image-text-wrapper.Left.Small &gt; p {
	width: 100%;
	max-width: 66.6%;
	text-align: right;
  }

  .image-text-wrapper.Small &gt; p {
	font-style: italic;
	color: grey;
	font-size: 20px;
	margin: 0;
  }

  .image-text-wrapper.Right.Small &gt; h2, .image-text-wrapper.Right.Small &gt; p {
	width: 100%;
	max-width: 66.6%;
	text-align: left;
	margin-left: auto;
  }

  .image-text-wrapper.Small .Image div {
	min-height: 600px;
  }

  @media screen and (max-width: 800px) {

	.image-text-wrapper.Small .Image div {
	  min-height: 500px;
	}

  }

  .image-text-wrapper.Small .image-and-text h2 {
	font-size: 26px;
	color: var(--primary);
	text-transform: uppercase;
	letter-spacing: 4px;
	margin: 20px auto 50px !important;
	font-weight: 400;
  }

  .image-text-wrapper.Small .image-and-text p {
	padding: 0;
	font-size: 16px;
	line-height: 25px;
	color: #666;
  }

  .image-text-wrapper.Left .image-and-text:nth-child(2n) .Image {
	grid-column: 2;
	grid-row: 1;
  }

  .image-text-wrapper.Left .image-and-text:nth-child(2n) .text-content, .image-text-wrapper.Left .image-and-text:nth-child(2n) .text-content h2 {
	text-align: right;
  }

  .image-text-wrapper.Right .image-and-text:nth-child(2n-1) .Image {
	grid-column: 2;
	grid-row: 1;
  }

  .image-text-wrapper.Right:not(.Big) .image-and-text:nth-child(2n-1) .text-content, .image-text-wrapper.Right.Right:not(.Big) .image-and-text:nth-child(2n-1) .text-content h2 {
	text-align: right;
  }

  .image-and-text .location {
	text-decoration: none !important;
	text-transform: uppercase;
	font-size: 12px;
	color: grey;
	letter-spacing: 1px;
	display: inline-block;
	margin-bottom: 14px !important;
  }

  .image-and-text .location i {
	font-size: 16px;
	color: grey;
	margin-right: 5px;
	vertical-align: middle;
  }

  @media screen and (max-width: 767px) {

		/* Mobile Menu */

	.overlay-left a {
	  letter-spacing: 2px;
	  font-size: 28px;
	}

	.mobile-overlay a.button {
		text-align: center;
	}

	.overlay-content {
		overflow: scroll;
	  height: 100%;
	  padding: 20px 0 20px;
	}

	.overlay-content ul, .overlay-right {
	  padding: 0;
	  text-align: left;
		margin-bottom: 0;
	}

	#menu-overlay-menu-left {
		margin-bottom: 0;
	}

	.navbar .logo img {
	  width: 220px;
		padding: 5px;
	}

	#navbar-scroll a#logo {
		max-width: 100% !important;
		width: 100%;
	}

	#navbar-scroll a#logo img {
		width: 180px;
    display: block;
	}

	#clickMain {
	  top: 24px;
	}

	  h1 {
	  font-size: 30px;
	  }

	h2 {
	  font-size: 26px !important;
	}

	.image-and-text p {
	  text-align: center !important;
	}

	.image-and-text .text {
	  padding: 20px !important;
	}

	.image-and-text .text .text-content {
	  padding: 0 !important;
	  margin: 0 !important;
	}

	.cards .card {
		height: unset;
		max-height: unset;
	}

	.card .imageholder {
	  height: 300px;
	}

	.card .card-content {
		position: relative;
		aspect-ratio: unset;
		left: 0;
  	bottom: 0;
		width: 100%;
		padding: 30px 20px 40px;
	}

	.card .card-content .description {
		font-size: 15px !important;
	}

	.card .vignette-bottom {
		display: none;
	}

	.image-text-wrapper .image-slider img, .image-and-text .Image {
		/* aspect-ratio: 3/2 !important;  chops off too much too many times on mobile - changing to BELOW --&gt; */
		aspect-ratio: 1 / 1 !important;
		object-fit: cover;
	}

	.intro-text p {
		font-size: 20px;
	}

}




  /*             two columns   */

.two-columns {
	width: 90%; max-width: 1300px; margin: 20px auto; display: flex; flex-wrap: wrap;
	  justify-content: space-between;
  }
  .two-columns.narrow {
	max-width: 900px;
  }

  /* .two-columns &gt; div {
	  width: 100%;
	  max-width: 50%;
  } */
 .column-left {
width: 100%;
 }
 .column-right {
	width: 100%;
 }
@media(min-width: 1100px) {
	.column-left {
	width: 47%;
	margin-right: 3%;
	}
	.column-right {
	width: 47%;
	margin-left: 3%;
	}

}




  .textblock p a,
  .two-textblock p a,
  .image-and-text p a,
  .bodytext p a {
	color: #9D9489;
	font-weight: 500;
	text-decoration: none !important;
	position: relative;
	}
	.textblock p a:hover,
  .two-textblock p a:hover,
  .image-and-text p a:hover,
  .bodytext p a:hover {
		color: #9D9489;
		}

		.textblock p a::before,
		.two-textblock p a::before,
		.image-and-text p a::before,
		.bodytext p a::before {
			content: "";
			position: absolute;
			display: block;
			width: 100%;
			height: 1px;
			bottom: 0;
			left: 0;
			background-color: #9D9489;
			transform: scaleX(0);
			transition: transform 0.3s ease;
		  }

		  .textblock p a:hover::before,
		  .two-textblock p a:hover::before,
		  .image-and-text p a:hover::before,
		  .bodytext p a:hover::before {
			transform: scaleX(1);
		  }










  .two-columns .two-textblock {
	  margin: 30px auto;
  }

  .two-columns .two-textblock p {
	  column-count: 1;
	  column-gap: 0;
	  font-size: 17px;
	  line-height: 1.6;
	  margin: 0 auto 20px;
	  text-align: justify;
  }

  @media screen and (max-width: 767px) {

	  .two-columns &gt; div {
		  max-width: 100%;
	  }

  }

  .two-columns .bodytext p {
	width: 90%;
  }







  /* BLOCKS */

  .blocks {
	padding: 0;
	width: 100%;
	position: relative;
	display: flex;
  }

  @media(max-width: 900px) {

    .blocks .imageholder {
      -moz-transition: all .3s ease;
      -webkit-transition: all .3s ease;
      transition: all .3s ease;
      transform: scale(1.1);
      transform: translateY(0) scale(1.1);
			width: 100%;
			height: 100%;
    }

    .blocks .block-content {
      position: absolute;
      z-index: 999;
      text-align: center;
      bottom: 15px;
      left: 0;
      width: 100%;
    }

    .blocks {
      padding: 0;
      width: 100%;
		  position: relative;
			flex-wrap: wrap;
    }

    .blocks .block {
      height: 350px !important;
      position: relative;
			width: 100%;
    }

    .blocks p.description {
      display: block;
      opacity: 1 !important;
    }

    .blocks a.button {
      opacity: 1 !important;
      margin-top: 0 !important;
    }


  }

    /* set widths */

    .blocks.normal {
		max-width: 1100px;
		margin: 0 auto;
	  }
    .blocks.extended {
      max-width: 1400px;
      margin: 0 auto;
    }
	.blocks.fullwidth {
		padding: 0;
		width: 100%;
	  }



  @media(min-width: 900px) {

	  .blocks .block {
		  height: 60vh;
		  max-height: 700px;
		  position: relative;
		  color: #fff !important;
		  -moz-transition: all 1.3s ease;
		  -webkit-transition: all 1.3s ease;
		  transition: all 1.3s ease;
      width: 100%;
		  }

      .blocks.five .block {
        width: calc( 20% - 5px );
        max-width: 20%;
      }

      .blocks.four .block {
        width: calc( 25% - 4px );
        max-width: 25%;
      }

      .blocks.three .block {
        width: calc( 33.3% - 19px );
        display: inline-block;
      }

      .blocks.two .block {
        width: calc( 50% - 2px );
        display: inline-block;
      }


  .blocks.five .block-content {
    height: 20%;
  }

  .blocks.three .banner-overlay, .blocks.four .banner-overlay, .blocks.five .banner-overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-image: linear-gradient(0deg, #000000 8%, rgba(0, 0, 0, 0) 90%);
    z-index: 3;
    opacity: 0.2;
    -moz-transition: all .3s ease;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    background-color: unset;
  }

  .blocks.three .block:hover .banner-overlay,   .blocks.four .block:hover .banner-overlay,  .blocks.five .block:hover .banner-overlay {
    -moz-transition: all .3s ease;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    background-image: linear-gradient(0deg, #000000 27%, rgba(0, 0, 0, 0) 90%);
    opacity: 0.5;
    top: 0;
  }

  .blocks .imageholder {
    width: 100%;
    height: 100%;
    max-height: 800px;
    margin: 0 0 0 0;
    position: relative;
    -moz-transition: all .3s ease;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    transform: scale(1.1);
    transform: translateY(0) scale(1.1);
  }

  .blocks .block-content {
    position: absolute;
    text-align: center;
    top: auto;
    bottom: -23px;
    /* bottom: 0; */
    left: 50%;
    transform: translateX(-50%) !important;
    z-index: 10;
    width: 100%;
    max-width: 380px;
    -moz-transition: all .4s ease;
    -webkit-transition: all 4s ease;
    transition: all .4s ease;
    height: 30%;
    background: transparent;
  }

  .blocks&gt;div:hover .blocks-overlay {
    /*background: rgba(0,0,0,0.4) !important;*/
    -moz-transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }

  .blocks .block:hover p.description {
    opacity: 1;
    -moz-transition: all .3s ease;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
  }

  .blocks .block:hover .button {
    opacity: 1;
    -moz-transition: all .3s ease;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    margin-top: 0px;
    transition-delay: 0;
  }

  .blocks .block:hover .block-content {
    -moz-transition: all .3s ease;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    bottom: 35%;
  }

  .blocks &gt; .block:hover .description {
  opacity: 0.8;
  -moz-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  }

  .blocks &gt; .block:hover .block-content {
  margin-top: -70px;
  -moz-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  }

  .blocks &gt; .block:hover .line {
  opacity: 1;
  -moz-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  }

}

  .blocks .button.transparent {
    opacity: 0;
    -moz-transition: all .9s ease;
    -webkit-transition: all .9s ease;
    transition: all .9s ease;
      transition-delay: 0s;
    margin-top: 20px;
    border: 1px solid #fff;
    background-color: transparent;
    color: #fff;
    /* transition-delay: 0.7s; */
  }
  .blocks .button.transparent:hover {
    background-color: #fff;
    color: var(--primarycolour);
    /* transition-delay: 0.7s; */
  }

  .blocks p.description {
    opacity: 0;
    width: 100%;
    font-weight: 300 !important;
    -moz-transition: all .2s ease;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
    font-size: 18px;
    font-size: 17px;
    line-height: 1.3;
    line-height: 1.6;
    width: 90%;
    margin: 10px auto 20px;
    color: #fff;
    text-align: center;
  }

  .blocks h3 {
    /* font-family: var(--secondaryfont); */
    text-transform: uppercase;
    font-size: 20px;
    text-transform: uppercase;
    font-weight: 500;
    letter-spacing: 2px;
    margin-bottom: 10px;
    color: #fff;
    text-align: center;
    -moz-transition: all .3s ease;
    -webkit-transition: all .3s ease;
  }

.blocks .block:hover .imageholder {
  -moz-transition: all .3s ease;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
    transition-delay: 0s;
  transform: scale(1.085);
  transform: scale(1.2);
  transform: translateY(-15px) scale(1.1);
  transition-delay: calc(700ms / 6);
  opacity: 0.9;
  }


.blocks .block {
  height: 60vh;
  margin: 8px;
  opacity: 1;
  overflow: hidden;
}


.images.boxed {
	max-width: 1100px;
	margin: 10px auto;
}
.images.boxed-wider {
	max-width: 1400px;
	margin: 10px auto;
}








  /* gallery */


  @media(min-width:600px) {
	.gallery-photos {
	  display: grid;
	  grid-template-columns: repeat(2, 1fr);
	  grid-gap:10px;
	  width: calc( 100% - 40px);
	  margin: 40px auto;
	}
  }
  /*
  @media(min-width:900px) {
	.gallery-photos {
	  display: grid;
	  grid-template-columns: repeat(3, 1fr);
	  grid-gap:10px;
	  width: calc( 100% - 40px);
	  margin: 40px auto;
	}
  }

  @media(min-width:1200px) {
	.gallery-photos {
	  display: grid;
	  grid-template-columns: repeat(4, 1fr);
	  grid-gap:10px;
	  width: calc( 100% - 40px);
	  margin: 40px auto;
	}
  }
  .gallery-photos div {
	background: rgb(129, 129, 126);
	height: 400px;
  }
  */
  .gallery-photos {
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	grid-gap:10px;
	width: calc( 100% - 40px);
	margin: 0px auto 40px;
  }
  .gallery-photos div {
	background: rgb(126, 126, 126);
	/* height: calc( (100vw - 40px) /2); */
	position: relative;
	aspect-ratio: 1 /1;
    position: relative;
    width: 100%;
  }

  @media(min-width:300px) {
	.gallery-photos {
	  display: grid;
	  grid-template-columns: repeat(3, 1fr);
	  grid-gap:10px;
	  width: calc( 100% - 40px);
	  margin: 0px auto 40px;
	  max-width: 1400px;
	}
	.gallery-photos div {
	  /* height: calc( (100vw - 40px) /4); */
	  position: relative;
	  aspect-ratio: 1 /1;
    position: relative;
    width: 100%;
	}
  }

  .gridgallery a {
	display: block;
	position: relative;
	z-index: 10;
  }

  .gridgallery a:hover img {
  opacity: 0.5;
  }

  .gridgallery a div span {
  z-index: 12;
  opacity: 0;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform:translate(-50%, -50%);
  width: 32px;
  height: 32px;
  background: url(images/zoom-in.png) no-repeat center center;
  z-index: 99999;
  -moz-transition: all .3s ease;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
  }
  .gridgallery a:hover div span {
  opacity: 1;
  }






  .icon-list {
	width: 95%;
	margin: 0 auto;
	max-width: 1300px;
	padding: 0;
	text-align: center;
  }
  .icon-list li {
    list-style: none;
    margin: 13px 0;
    width: 10%;
    /*width: 19%;*/
    text-align: center;
    font-size: 13px;
    font-weight: normal;
    display: inline-block;
    vertical-align: top;
    margin: 23px 18px;
    color: #444;
  }
  .icon-list li i, .icon-list li span {
	font-size: 21px;
	font-size: 42px;
	width: 47px;
	padding: 5px 0;
	margin: 0 auto 10px;
	color: var(--primarycolour);
	display: block;
  height: 100%;
  }

@media screen and (max-width: 767px) {

	.icon-list li	{
	  width: 26%;
	  margin: 23px 3%;
	}

	.intro h1, h1 {
	  font-size: 38px;
	  letter-spacing: 5px;
	}

}

/* 404 */

body.error404 .banner .banner-inner, body.error404 .banner .banner-arrow, body.error404 #navbar-scroll {
	display: none !important;
}

body.error404 .banner {
  height: 116px;
  width: 100%;
  background: transparent;
	position: absolute !important;
  left: 0;
  top: 0;
}

section.error-404 {
	height: 100vh;
	position: relative;
	z-index: 1;
	text-decoration: center;
	display: flex;
	align-items: center;
	justify-content: center;
	background-position: center;
	background-size: cover;
}

section.error-404::after {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
	background-color: #000;
	z-index: 2;
	display: block;
	opacity: 0.3;
}

section.error-404 h1 {
	margin: 0;
	font-size: 150px;
}

section.error-404 p {
	font-size: 22px;
	margin: 20px 0;
}

section.error-404 &gt; div {
	text-align: center;
	position: relative;
	z-index: 3;
	padding: 20px;
}

section.error-404 * {
	color: #fff;
}

/* Table */

table.page_builder_table {
  width: 60%;
  margin: 20px auto;
}

table.page_builder_table thead {
  font-weight: bold;
  font-size: 14px;
  text-align: center;
  padding: 5px;
  padding-left: 5px;
  padding-left: 9px;
  text-transform: uppercase;
  color: #222;
}

table.page_builder_table:not(.clear) thead {
  background: #ddd;
}

table.page_builder_table tr td:first-child, table.page_builder_table tr th:first-child {
  text-align: left !important;
  padding-left: 20px !important;
}

table.page_builder_table td:nth-child(2), td:nth-child(3), td:nth-child(4), td:nth-child(5), td:nth-child(6) {
  font-weight: normal;
  font-size: 14px;
  text-align: left;
  padding: 5px;
  color: #737373;
}

table.page_builder_table th {
  font-weight: bold;
  font-size: 14px;
  text-align: left;
  padding: 5px;
  padding-left: 5px;
  padding-left: 9px;
  text-transform: uppercase;
  color: #222;
  border: 1px solid #fff;
}

table.page_builder_table:not(.clear) th {
  background: #dedede;
}

table.page_builder_table.clear th {
  border: 1px solid #ddd;
}

table.page_builder_table tr td, table.page_builder_table tr th {
  text-align: center !important;
}

table.page_builder_table:not(.clear) td {
  border: 1px solid white;
  text-align: center;
  background: #eee;
}

table.page_builder_table.clear td {
  border: 1px solid #ddd;
  text-align: center;
}

table.page_builder_table tbody {
  font-weight: normal;
  font-size: 14px;
  text-align: center;
  padding: 5px;
  text-transform: none;
  color: #222;
}

table.page_builder_table td, table.page_builder_table th {
  height: 38px;
}

/* Video */

.video-wrapper-inline.narrow {
	max-width: 760px;
}

.video-wrapper-inline.container {
	max-width: 1000px;
}

.video-wrapper-inline.full {
	max-width: 100%;
}

@media screen and (max-width: 767px) {

	table.page_builder_table {
	  width: 95%;
	  margin: 20px auto;
	}

	section.error-404 h1 {
		font-size: 100px;
	}

	section.error-404 p {
		font-size: 18px;
	}

}

/* Text Block */

.section.textblock .container {
	margin: 0 auto;
	width: 90%;
}

.section.textblock.narrow .container {
	max-width: 760px;
}

.section.textblock ul.gform_fields {
	width: 100%;
}


/* Accordion */

.accordion {
max-width: 560px;
margin: 0 auto 0;
border-top: 1px solid #6f64565e;
border-right: 1px solid #6f64565e;
border-left: 1px solid #6f64565e;
padding-left: 0px !important;
}
.accordion&gt;li {
border-bottom: 1px solid #6f64565e;
position: relative;
}
.accordion&gt;li {
list-style: none !important;
}

.accordion&gt;li&gt;div&gt;ul {
margin-left: 0 !important;
}
.accordion&gt;li p {
font-size: 16px;
color: var(--primarycolour);
line-height: 1.7;
text-align: left;
font-weight: 400;
margin-left: 15px !important;
}
.accordion&gt;li p strong {
font-weight: 500 !important;
font-size: 18px !important;

}
.accordion&gt;li a.accordion-title {
width: 100%;
display: block;
cursor: pointer;
font-weight: 600;
line-height: 1;
font-size: 13px;
letter-spacing: 3px;
text-indent: 15px;
user-select: none;
padding: 14px 0;
color: var(--primarycolour);
opacity: 0.8;
font-weight: 300;
}

.accordion&gt;li a.accordion-title.active {
opacity: 1;
}

.accordion&gt;li a.accordion-title:after {
width: 8px;
height: 8px;
width: 0;
height: 0;
border-top: 6px solid transparent;
border-right: 6px solid transparent;
border-bottom: 6px solid transparent;
border-left: 6px solid var(--primarycolour);
position: absolute;
right: 8px;
top: 15px;
content: " ";
transform: rotate(0deg);
-webkit-transition: all 0.2s ease-in-out;
-moz-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
}


.accordion&gt;li a.accordion-title.active:after {
right: 12px;
top: 19px;
transform: rotate(90deg);
-webkit-transition: all 0.2s ease-in-out;
-moz-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
}

.accordion a:not(.accordion-title) {
color: var(--primarycolour);
font-weight: 600;
text-decoration: none;
}

/* Enquire Page */

.page-id-19317  .section.textblock {
  position: relative;
  background-color: #fff;
  padding: 10px 45px !important;
  border-radius: 10px;
  width: 90%;
	max-width: 750px;
  margin: -19% auto 40px;
  box-shadow: 0 2px 10px rgba(0, 0, 50, 0.2);
}

.page-id-19317  .section.textblock .container {
	width: 100%;
}

.page-id-19317 .banner, .page-id-19317 .banner-inner, .page-id-19317 .banner-slide {
  height: 70vh !important;
}

.page-id-19317 .banner-arrow {
	display: none !important;
}

@media screen and (max-width: 767px) {

	.page-id-19317  .section.textblock {
		padding: 10px 30px !important;
	}

	.page-id-19317  .section.textblock p {
		width: 90%;
	}

}



/*burger menu */
.burgermenu {
	position: relative;
	width: 30px;
	height: 30px;
	cursor: pointer;
	top: 8px;
}

.lines {
	position: absolute;
	height: 2px;
	width: 98%;
	background: white;
	top: 50%;
	left: 0;
	right: 0;
}

.lines::before {
	content: "";
	position: absolute;
	height: 2px;
	width: 60%;
	background: white;
	top: -8px;
	left: 40%;
}

.lines::after {
	content: "";
	position: absolute;
	height: 2px;
	width: 80%;
	background: white;
	top: 9px;
	left: 20%;
}
#navbar-scroll .lines {
	position: absolute;
	height: 2px;
	width: 98%;
	background: var(--primarycolour);
	top: 50%;
	left: 0;
	right: 0;
}
#navbar-scroll .lines::before {
	content: "";
	position: absolute;
	height: 2px;
	width: 60%;
	background: var(--primarycolour);
	top: -8px;
	left: 40%;
}

#navbar-scroll .lines::after {
	content: "";
	position: absolute;
	height: 2px;
	width: 80%;
	background: var(--primarycolour);
	top: 9px;
	left: 20%;
}

/* Gravity font fix */

.gform_fields * {
	font-family: var(--secondaryfont), Arial, Helvetica, sans-serif;
}

/* Archive */

.archive-wrapper .archive-item h3 {
  text-align: left;
	margin-bottom: 12px;
}

.archive-wrapper .archive-item ul {
  margin: 0;
}

.archive-wrapper .archive-item a {
  text-decoration: none;
  font-size: 16px;
  font-family: var(--secondaryfont);
  margin: 5px auto;
  color: var(--primarycolour);
}</pre></body></html>