*{
	margin:0;
	padding:0;
	box-sizing:border-box;
}

body{
	font-family: 'Crimson Text', serif;
}

a{
	color:#93872a;
	text-decoration:none;
}

a:hover{
	color:#111;
}

a.button.pinline{
	text-transform:uppercase;
	display:inline-block;
	border:1px solid #fff;
	color:#fff;
	height:40px;
	line-height:38px;
	padding:0 20px;
	transition:all 0.3s;
	cursor:pointer;
	font-size:15px;
}

a.button.pinline.black{
	color: #4d5152;
	border: 1px solid #4d5152;
}

a.button.pinline.black:hover{
	color:#fff;
	border:1px solid #fff;
}

p{
	color:#4d5152;
	line-height:1.4em;
	margin:15px 0;
	font-size:18px;
}

h1, h2, h3{
	font-weight:400;
	color:#4d5152;
	text-transform:uppercase;
}

h1{
	font-size:28px;
	line-height:1.1em;
}

h3{
	font-size:22px;
	line-height:1.1em;
}

hr{
	display:block;
	border:0 none;
	height:6px;
	width:200px;
	margin:30px auto;
	background:#92872a;
}

.full-height{
	min-height:100vh;
}

#main-slider{
	overflow:hidden;
}

#main-slider .slider{
	min-height:100vh;
	position:relative;
}

.max-width{
	max-width:1024px;
	margin:0 auto;
}

.down-arrow{
    font-family: 'Roboto', sans-serif;
    text-transform:uppercase;
    color:#fff;
    position:absolute;
    bottom:35px;
    left:5%;
    font-size:10px;
    transform:rotate(270deg);
    transform-origin: 0 50%;
    z-index:10;
    cursor:pointer;
    transition:padding 0.3s;
}

.down-arrow:before{
	content: '\f104';
	font-family: 'FontAwesome';
	margin-right: 10px;
	font-size: 32px;
	display: inline-block;
	vertical-align: middle;
	font-weight: 200;
	position: relative;
	top: -2px;
}

.down-arrow:hover{
	padding-left:10px;
}

/* MAIN IMAGE */

#main-image{
	height:70vh;
	min-height:400px;
	overflow: hidden;
	position:relative;
}

#main-image .image{
	position:relative;
	display: block;
	height: 100%;
}

#main-image .image img{
	width:100%;
	height:100%;
	object-fit:cover;
	display:block;
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
}
#main-image .page-title{
	position:absolute;
	bottom:50px;
	width:90%;
	margin:0 5%;
	text-align:center;
	
}

#main-image .page-title h1{
	color:#fff;
	letter-spacing: 0.07em;
    font-size: 32px;
}
/* HOMEPAGE TOP SLIDER */

.slider-overlay{
	display:flex;
	position:absolute;
	top:50%;
	left:0;
	transform:translateY(-50%);
	background:#c6bfa0;
	padding-left:5%;
	z-index:800;
}

.slider-overlay:after{
	content:'';
	width:180px;
	display:block;
	background:#292929 url(../assets/logo.svg) no-repeat center center;
	background-size:110px auto;
}

.slider-overlay p{
	padding:40px 40px 40px 0;
	font-size:20px;
	max-width:340px;
	line-height:1.4em;
}

@media screen and (max-width:640px){
	.slider-overlay{
		padding:0;
	}
	.slider-overlay:after {
	    content: '';
	    width: 110px;
	    display: block;
	    background: #292929 url(../assets/logo.svg) no-repeat center center;
	    background-size: 80px auto;
	    height: 110px;
	    position: absolute;
	    top: -110px;
	    left: 0;
	    display:none;
	}
	.slider-overlay p{
		font-size:18px;
		padding:10px 35px;
	}

}



/* LOGO */
#logo{
	position: absolute;
	top: 0;
	left: 50%;
	display: inline-block;
	margin-left: -80px;
	width:160px;
	z-index: 888;
}

#logo .logo{
	display:block;
	height:130px;
	background:#292929;
	padding:20px 30px;
}

.homepage #logo .logo{
	padding: 0;
	height: 0;
	overflow: hidden;
}

#logo .logo img{
	width:100%;
	height:auto;
}

#book-now-button{
	width:160px;
	
}

#book-now-button a{
	text-align:center;
	background: #c39dc3;
	color: #292929;
	text-transform: uppercase;
	font-size: 20px;
	height: 35px;
	line-height: 35px;
	padding: 0 20px;
	display:block;
}

#book-now-button.fixed{
	position:fixed;
	top:0;
	left:50%;
	transform:translateX(-50%);
}


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

	.homepage #logo .logo{
		position:relative;
		height:130px;
		padding:20px 30px;
		}
}

/* MOBILE BURGER */

#mobile-burger{
	display:flex;
	flex-direction:column;
	width:60px;
	padding:10px;
	background:#292929;
	position:absolute;
	top:50%;
	right:35px;
	z-index:899;
	transform:translateY(-50%);
}

@media screen and (max-width:640px){
	#mobile-burger{
		right:0;
		position:fixed;
		top:63px;
	}
}

#mobile-burger.fixed{
	top:63px;
	position:fixed;
}

#mobile-burger span{
	display:block;
	width:50%;
	height:2px;
	background:#93872a;
	margin:5px auto;
	transition:all 0.3s;
	transform-origin:center center;
}

#mobile-burger:hover span{
	width:100%;
	background:#c6c095;
}

#mobile-burger.close span:nth-of-type(1){
	transform:translateY(12px) rotate(45deg) ;
}

#mobile-burger.close span:nth-of-type(2){
	transform:scale(0) ;
}

#mobile-burger.close span:nth-of-type(3){
	transform:translateY(-12px) rotate(-45deg) ;
}

/* MAIN NAV */

#main-nav-wrapper{
	position:fixed;
	width:100%;
	height:100%;
	top:0;
	left:0;
	display:flex;
	flex-direction:column;
	justify-content:center;
	align-items:center;
	background:#292929 url(../assets/thistle-shape.svg) repeat center center;
	background-size:200px auto;
	padding-bottom:35px;
	visibility:hidden;
	opacity:0;
	transition:opacity 0.3s;
	z-index:-999;
}

#main-nav-wrapper.show{
	visibility:visible;
	opacity:1;
	z-index:898;

}

.main-nav ul{
	list-style:none;
	text-align:center;
}

.main-nav ul li{
	display:block;

}

.main-nav ul li.nav-dropdown{
	height:36px;
	overflow:hidden;
	transition:height 0.3s;
}

.main-nav ul li.nav-dropdown ul{
	opacity:0;
	transition:opacity 0.3s;
}

.main-nav ul li.nav-dropdown.hidden-nav ul{
	opacity:1;
}


.main-nav ul li a{
	color:#fff;
	text-transform:uppercase;
	font-size: 20px;
	display: block;
	width: 100%;
	transition:all 0.3s;
	height:36px;
	line-height:36px;
}

.main-nav ul li a:hover{
	color:#c6c095;
}

.main-nav ul a.nav-dropdown:after{
	content:'\f078';
	font-family:'FontAwesome';
	margin-left: 5px;
	font-size: 12px;
	position: relative;
	bottom: 3px;
}
.main-nav ul a.nav-dropdown.hidden-nav:after{
	content:'\f077';
}

/* SUBNAV */

.main-nav ul li li a{
	font-size: 18px;
	color: #aaa;
}



#nav-footer{
	text-align:center;
	position:absolute;
	bottom:35px;
}

#nav-footer p{
	color:#fff;
	font-size:14px;
	margin:10px 0 0 0;
}

#nav-footer a{
	color:#fff;
}

#nav-footer .ccm-block-social-links{
	margin-top:20px;
}

@media screen and (max-height:700px){
	#nav-footer p{
		display:none
	}
}

/* INTRODUCTION and INFORMATION PANELS - JUST PLAIN */
.introduction, .information{
	padding:80px 5%;
	background:#fafafa;
	text-align:center;
}

.introduction h1, .information h1{
	text-align:center;
}

.introduction p{
	text-align:center;
	font-size:24px;
}
.information p{
	text-align:center;
}

/* PHOTO CAROUSEL */
.photo-carousel{
	display:flex;
}

.photo-carousel .lhs{
	width:40%;
	padding:5%;
	background:#c6bfa0;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.photo-carousel .rhs{
	width:60%;
	}
.photo-carousel .lhs h1{
	text-transform:uppercase;
	font-size: 28px;
	line-height: 1.1em;
}

.photo-carousel .lhs p{
	line-height:1.2em;
}

.photo-carousel .flickity li{
	display:block;
	width:100%;
}

.photo-carousel .flickity li img{
	width:100%;
	height:auto;
	display:block;
}

.flickity-button{
	color:#fff;
	background: none;
}

.flickity-button:hover{
	background:none;
}

@media screen and (max-width:767px){
	.photo-carousel{
		flex-direction:column;
	}
	.photo-carousel .lhs{
		width:100%;
		text-align:center;
	}
	.photo-carousel .rhs{
		width:100%;
	}
}

/* HOMEPAGE ACCOMMODATION */

.homepage .accommodation{
	padding:80px 5%;
	background:#fafafa;
	text-align:center;
}

.homepage .accommodation hr{
	background:#c6bfa0;
}

.square-images-wrapper{
	display:flex;
	justify-content: space-between;
	margin:60px auto;
}
.square-image{
	width:32%;
}
.square-image img{
	display:block;
	width:100%;
	height:auto;
}

.square-image p{
	text-transform:uppercase;
}

@media screen and (max-width:720px){
	.square-images-wrapper{
		flex-direction:column;
		align-items: center;
	}
	.square-image{
		width:90%;
	}
}

/* ACCOMMODATION TYPES PAGE */

section.accommodation-types{
	display:flex;
	height:100vh;
}

section.accommodation-types .portrait-image{
	width:33.333%;
	position:relative;
	overflow:hidden;
	
}

section.accommodation-types .portrait-image a{
	display: block;
	width: 100%;
	height: 100%;
	position:absolute;
	top:0;
	left:0;
	z-index:10;
}

section.accommodation-types .portrait-image p{
	display: block;
	width: 100%;
	position: absolute;
	bottom: 0;
	text-align: center;
	background: rgba(0,0,0,0.5);
	padding: 0 10px;
	margin: 0;
	color:#fff;
	text-transform:uppercase;
	font-size:20px;
	height:20%;
	display:flex;
	justify-content: center;
	align-items: center;
	line-height:1.1em;
}
section.accommodation-types .portrait-image img{
	width:100%;
	height:100%;
	object-fit:cover;
	display:block;
	transition:transform 0.8s;
}

section.accommodation-types .portrait-image:hover img{
	transform:scale(1.05);
	}

@media screen and (max-width:640px){
	section.accommodation-types{
		height:70vh;
		}
	section.accommodation-types .portrait-image p{
		font-size:16px;
		}
	
}
/* HOMEPAGE DINING / GENERAL DISPLAY AREA */

.display{
	display:flex;
	background: #fafafa;
	padding:0;
	overflow:hidden;
	position:relative;
	justify-content:flex-end;
	
}
.display .image{
	width:100%;
	height:100%;
	display:block;
	position:absolute;
	top:0;
	left:0;
	}
.display .image img{
	height:100%;
	width:100%;
	display:block;
	object-fit:cover;
}

.display .rhs{
	width:45%;
	margin-right:5%;
	display:flex;
	flex-direction:column;
	justify-content:center;
	z-index:10;
}

.display-content{
	background:#c6bfa0;
	padding:15%;
	text-align:center;
}

.display-content p{
	line-height:1.2em;
}

.signature{
	margin-top:40px;
}

.display-content img{
	width:50%;
	height:auto;
	margin: 50px auto 0 auto;
	display: block;
}

@media screen and (max-width:680px){
	.display .rhs{
	width:75%;
	}
}

/* HOMEPAGE SELF CATERING */

.homepage .self-catering{
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	background: url(../assets/feet-up-fire.jpg) no-repeat center center;
	background-size:cover!important;
	padding: 50px 5%;
	color:#fff;
	min-height:100vh;
	text-align:center;
}
.homepage .self-catering p, .homepage .self-catering h1{
	color:#fff;
}

.homepage .self-catering p{
	margin:15px auto;
	max-width:640px;
	line-height:1.2em;
}

/* NEWSLETTER SIGN UP */

section.newsletter{
	background:#c39dc3;
	padding:50px 4%;
	text-align:center;
}

/* NEWSLETTER SIGN UP FORM */

#newsletter .button{
	background:#111;
	cursor:pointer;
	}
#newsletter-form .button{
	background: #989278;
	cursor: pointer;
	color: #fff;
	font-family:'Crimson Text', serif;
	text-transform: uppercase;
}

#newsletter-form{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	display:flex;
	background:rgba(0,0,0,0.8);
	align-items:center;
	align-content:center;
	justify-content: center;
	z-index:900;
	text-align:left;
	
	transition:background 0.3s;
}

#newsletter-form.hidden{
	transform:translateX(-100%);
	background:rgba(0,0,0,0);
	
}

#mc_embed_signup{
	background:#c6bfa0;
	padding:20px;
	display:block;
	transition:all 0.3s;
	width: 95%;
	max-width: 400px;
}

#newsletter-form.hidden #mc_embed_signup{
	background:rgba(255,255,255,0.9);
	padding:20px;
	display:block;
	transform:translateY(50px);
	opacity:0;
}

#newsletter-form .av-checkbox{
	display:inline-block;
	width:auto;
	margin-right:5px;
}

#newsletter-form fieldset{
	border:0 none;
}

#newsletter-form input{
	display:block;
	width:100%;
	padding:10px;
	font-size:18px;
	color:#333;
	border:none;
	background:#ded9c5;
	transition:background 0.3s;
}

#newsletter-form label{
	margin:5px 0 5px 0;
	display:inline-block;
}

#newsletter-form input:focus{
	background:#fff;
	color:#333;
}

#newsletter .mc-field-group{
	margin:10px auto;
	width:100%;
	max-width:400px;
}

#newsletter .mc-field-group label{
	text-align:left;
	display:block;
	margin: 15px 0 5px 0;
	font-size:14px;
}

#newsletter-form label.checkbox{
	font-size:14px;
	margin:0;
}

#subscribe-result{
	width: 100%;
	max-width: 400px;
	text-align: center;
	margin-top: 10px;
}

#newsletter p{
	font-size:13px;
}

/* INSTAGRAM FEED */

section.instagram{
	position:relative;
}
#instafeed{
	display:flex;
	width:100%;
	list-style:none;
	flex-wrap:wrap;
}

.insta-wrapper{
	width:25%;
	display:block;
}

.insta-image{
	width:100%;
	padding-bottom: 100%;
	display: block;
	background-size: cover !important;
}

#instabutton{
	display:block;
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
	width:48px;
	height:48px;
	line-height:48px;
	background:#c39dc3;
	color:#fff;
	font-size:30px;
	text-align:center;
	transition:background 0.3s;
	
}

#instabutton:hover{
	background:#111;
}

@media screen and (max-width:680px){
	.insta-wrapper{
	width:50%;
	}
}

/* GOOGLE MAP */

.google-map .googleMapCanvas{
	height:80vh!important;
}

/* TESTIMONIALS */

.testimonials{
	background:#292929 url(../assets/thistle-shape.svg) repeat center center;
	background-size:200px auto;
	background-attachment: fixed;
	text-align:center;
	padding: 80px 5%;
	display:flex;
	align-items:center;
	justify-content:center;
	flex-direction:column;
	
}

.testimonials h1{
	color:#fff;
	margin-bottom:40px;
}

.testimonials ul{
	list-style:none;
	display:block;
	width:100%;
	max-width:800px;
}

.testimonials li{
	width:100%;
}

.ccm-block-testimonial-text{
	color: #c5c5c5;
	font-size: 22px;
	font-style: italic;
	font-weight: 400;
}

.ccm-block-testimonial-name{
	color: #fff;
	font-size: 16px;
	margin: 20px 0 0 0;
}

.flickity-page-dots{
	bottom:-50px;
}
.flickity-page-dots .dot{
	background:#838383;
}

/* FOOTER */

#footer{
	padding:60px 5%;
	background:#222;
	font-family: 'Ubuntu', sans-serif;
}

#footer .row{
	display:flex;
	flex-wrap:wrap;
	padding-right:80px;
}
#footer .nav{
	display:flex;
	flex-wrap:wrap;
	margin-bottom:20px;
}

#footer .nav ul{
	list-style:none;
	margin-right:50px;
}

#footer .nav ul li{
	line-height:1.6em;
}

#footer .nav ul li a{
	color:#fff;
	text-transform:uppercase;
	font-weight:300;
    
	font-size: 13px;
	letter-spacing: 0.05em;
}

#footer .nav ul li a:hover{
	color:#c6bfa0;
}

#footer .nav ul li.nav-dropdown{
	display:none;
}

#footer .contact-details{
	display:flex;
	flex-wrap:wrap;
}



#footer .contact-details p{
	color:#c8c8c8;
	font-weight:300;
    
	font-size: 13px;
	letter-spacing: 0.05em;
	margin:0;
	line-height: 2em;
}

#footer .address{
	margin-right:50px;
}

#footer a, #footer .contact-details p span{
	color:#fff;
}

#footer a:hover{
	color:#c6bfa0;
}

#credit p{
	font-size:12px;
	color:#898989;
	font-weight:300;
	margin-bottom:0;
}

#credit a{
	color:#bababa;
}

#credit a:hover, #footer .nav ul li a:hover{
	color:#fff;
}

/* SOCIAL LINKS */
.ccm-block-social-links{
	margin-top:60px;
}
.ccm-block-social-links ul{
	list-style:none;
	
}

.ccm-block-social-links ul li{
	display:inline-block;
	margin-right:5px;
}

.ccm-block-social-links ul li a{
	display:block;
	background:#fff;
	color:#222!important;
	width:26px;
	height:26px;
	text-align:center;
	line-height:26px;
	border-radius:3%;
}

/* AFFILIATIONS */

#affiliations{
	width:60px;
	display:flex;
	flex-direction:column;
	position: absolute;
	right: 5%;
}

#affiliations img{
	display:block;
	width:100%;
	height:auto;
}

#tripadvisor{
	margin-top: 10px;
	position: relative;
	left: 3px;
}

/* BACK TO TOP */

#to-top{
	position:fixed;
	bottom:35px;
	right:35px;
	color:#fff;
	font-size: 32px;
	text-shadow: 0 1px 1px rgba(0,0,0,0.5);
	z-index:-1;
	opacity:0;
	transition:opacity 0.3s;
	cursor:pointer;
}

#to-top.visible{
	z-index:897;
	opacity:1;
}




