

/* ------------ Toolbox ------------ */

.float-left { float: left; } 
.float-right { float: right; }
.align-right { text-align: right; }
.cleared { clear: both; }
.hide { display: none; }
.smaller { font-size: 90%; }
.larger { font-size: 110%; }
.normal { font-weight: normal; }

hr { display: none; }
strong { font-weight: 700; }
em { font-style: italic; }
strongtext {
	color: #64736c; /* dark grey */
	font-size: 45px;
	line-height: 50px;
	padding-bottom: 35px;
	}
greentext { color: #64736c; } /* green text */ 

.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
	}

/* Hides from IE-mac \*/
* html .clearfix {height: 1%;}
/* End hide from IE-mac */

.error_message {
	color: #970000;
	font-weight: bold;
	}
	
#copy .error_message ul {
	margin-bottom: 30px;
	}
	
#copy .error_message ul li {
	color: #970000;
	float: none;
	font-weight: 900;
	width: 100%;
	}
.fancybox-inner{
	margin-top: 100px !important;
}
.fancybox-thumbs__list{
	margin-top: 100px !important;
}

/* ------------ Defaults ------------ */

body, html {
	height: 100%;
	}
	
body {
	background-color: #fff;
	color: #62716a;    
    font-family: 'Lato', sans-serif;
	font-size: 18px;
	font-weight: 300;
	letter-spacing: 1px;
	line-height: 34px;
	overflow-x: hidden;
	}


/* ------------ Push ------------ */

#push {
	height: 100%;
	position: relative;
	z-index: 100000 !important;
	}


/* ------------ Branding ------------ */

#branding {
	background-color: #fff;
	color: #64736c; /* dark grey */
    font-family: 'Lora', serif;
	font-size: 25px;
	line-height: 30px;
	padding: 60px 30px;
	position: relative;
    width: 100%;
	}

#branding .tagline {
	float: left;
	}
#branding ul {
	float: right;
	}

#branding li {
	float: left;
	}

#branding li:first-child::after {
	color: #a7aba9;  /* light grey */
	content: "•";
	display: inline-block;
	margin: 0 5px;
	}

#branding .logo {
	background-color: #fff;
	padding: 41px;
	position: absolute;
	left: 50%;
	top: -11px;
	z-index: 100;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	}

#branding .logo img {
	float: left;
	}

#branding .logo.logo-fixed {
	position: fixed;
	top: -172px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	z-index: 150;
	}

#branding a {
	color: #64736c; /* dark grey */
	text-decoration: none;
	}
#logos {
	float:right;
	padding-right: 30px;
	margin-top: 20px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	display: flex;
	justify-content: right;
}



/* ------------ Navigation ------------ */

#navigation {
	background-color: #a7aba9;  /* light grey */
	width: 100%;
	}

#navigation.navigation-fixed {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
	}

#navigation-button {
	display: none;
	}

#navigation li:nth-child(1),
#navigation li:nth-child(2),
#navigation li:nth-child(3) {
	float: left;
	}

#navigation li:nth-child(4),
#navigation li:nth-child(5),
#navigation li:nth-child(6) {
	float: right;
	}

#navigation li a {
	color: #fff;
	display: inline-block;
	font-size: 16px;
	line-height: 21px;
	padding: 20px 30px;
	text-decoration: none;
	text-transform: uppercase;
	}

#navigation li a:hover,
#navigation li a.currentpage,
#navigation li a.activeparent {
	border-bottom: 4px solid #34433c;
	background-color: #64736c; /* dark grey */
	}


/* ------------ Slideshow ------------ */

#slideshow {
	overflow: hidden;
	position: relative;
	width: 100%;
	}

#slideshow img {
	float: left;
	height: auto;
	width: 100%;
	}

#slideshow .slide {
	position: relative;
	}

#slideshow .slide .slide-caption {
	background-image: url("../img/slide-caption-bg.png");
	background-size: auto 100%;
	background-repeat: no-repeat;
	background-position: left center;	
	color: #fff;
	font-family: 'Lora', serif;
	font-size: 30px;
	line-height: 45px;	
	padding: 30px 40px 30px 100px;
	position: absolute;
	right: 0;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	}


/* ------------ Breadcrumb ------------ */

#breadcrumb {
	background-color: #fff;
	display: inline-block;
	font-size: 16px;
	line-height: 21px;
	padding: 15px 30px;
	position: absolute;
	bottom: 0;
	left: 50%;
	text-transform: uppercase;
	width: auto;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	}

#breadcrumb a {
	color: #64736c; /* dark grey */
	text-decoration: underline;
	}

#breadcrumb span {
	display: inline-block;
	padding: 0 2px;
	}


/* ------------ Scroll ------------ */

#scroll {
	border-left: 1px solid #64736c; /* dark grey */
	color: #fff;
	font-size: 22px;
	letter-spacing: 2px;
	line-height: 27px;
	padding: 100px 0 250px 20px;
	position: absolute;
	bottom: -150px;
	left: 60px;
	text-transform: uppercase;
	}

#scroll p {
    background: url("../img/scroll-arrow-bg.png") no-repeat bottom center;
	padding-bottom: 21px;
	}


/* ------------ Intro ------------ */

#intro {
	margin: 0 auto;
	max-width: 1460px;
	padding: 80px 30px;
	text-align: center;
	}

#intro p {
	margin-top: 25px;
	}

#intro p.caption {
	font-size: 16px;
	line-height: 21px;
	margin: 0 0 15px 0;
	text-transform: uppercase;
	}

#intro h1 {
	color: #64736c; /* dark grey */
	font-size: 45px;
	line-height: 50px;
	padding-bottom: 35px;
	}

#intro h2 {
	color: #64736c; /* dark grey */
	font-size: 35px;
	line-height: 40px;
	padding: 35px 0 10px 0;
	}

#intro h3 {
	font-size: 25px;
	line-height: 30px;
	padding: 35px 0 10px 0;
	}

#intro a {
	color: #64736c; /* dark grey */
	text-decoration: underline;
	}

#intro a:hover {
	color: #a7aba9;
	text-decoration: underline;
	}

#intro ul {
	display: inline-block;
	margin: 0 auto;
	margin-top: 25px;
	width: auto;
	}

#intro li {
	border-bottom: 1px dotted #64736c; /* dark grey */
	color: #64736c; /* dark grey */
	font-size: 23px;
	line-height: 39px;
	padding: 15px 0;
	}

#intro li:last-child {
	border-bottom: none;
	}


/* ------------ Welcome ------------ */

#welcome {
	background-color: #d6d7d3;
	position: relative;
	width: 100%;
	}

#welcome-copy {
	border-bottom: 40px solid #64736c;
	float: right;
	padding: 150px 100px;
	width: 50%;
	}

#welcome h2 {
	color: #64736c; /* dark grey */
	font-size: 30px;
	line-height: 40px;
	padding-bottom: 25px;
	width: 80%;
	}

#welcome p {
	margin-top: 25px;
	}

#welcome-img {
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	width: 50%;
	}


/* ------------ Explore ------------ */

#explore {
	background-color: #efefed;
	padding: 60px 30px 0 30px;
	text-align: center;
	width: 100%;
	}

#explore p.caption {
	font-size: 16px;
	line-height: 21px;
	margin: 0 0 15px 0;
	text-transform: uppercase;
	}

#explore h2 {
	color: #64736c; /* dark grey */
	font-size: 45px;
	line-height: 50px;
	padding-bottom: 60px;
	}

#explore .cottage {
	background-color: #fff;
	float: left;
	margin: 0 30px 60px 30px;
	position: relative;
	text-align: left;
	width: calc(33.33333333333333% - 60px);
	-webkit-box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.1);
	-moz-box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.1);
	box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.1);
	}

#explore .cottage-img {
	float: left;
	height: auto;
	width: 100%;
	}

#explore .cottage-price {
	background-color: #64736c; /* dark grey */
	color: #fff;
	font-size: 14px;
	line-height: 19px;
	padding: 20px;
	position: absolute;
	bottom: 0;
	right: 0;
	text-transform: uppercase;
	}

#explore .cottage-price strong {
	display: block;
	font-size: 27px;
	font-weight: 900;
	padding: 5px 0;
	}

#explore .cottage-copy {
	clear: both;
	padding: 30px;
	position: relative;
	width: 100%;
	}

#explore .cottage-stars {
	margin-bottom: 30px;
	}

#explore .cottage-stars img {
	float: left;
	margin-right: 5px;
	}

#explore .cottage h3 {
	color: #64736c; /* dark grey */
	font-size: 25px;
	line-height: 35px;
	margin-bottom: 15px;
	}

#explore .cottage .button a {
	background-color: #fff;
	border: 1px solid #64736c; /* dark grey */
	color: #64736c; /* dark grey */
	display: inline-block;
	font-size: 16px;
	line-height: 21px;
	margin-top: 30px;
	padding: 20px 25px;
	text-decoration: none;
	text-transform: uppercase;
	}

#explore .cottage .button a:hover {
	background-color: #64736c; /* dark grey */
	border: 1px solid #64736c; /* dark grey */
	color: #fff;
	}

#explore .cottage-sleeps {
	color: #64736c; /* dark grey */
	font-weight: 900;
	position: absolute;
	top: 35px;
	right: 30px;
	}

#explore .cottage-sleeps p {
	float: left;
	line-height: 24px;
	padding-right: 29px;
	}

#explore .cottage-sleeps-adults {
    background: url("../img/icon-adult.jpg") no-repeat right center;
	}

#explore .cottage-sleeps-infants {
    background: url("../img/icon-infant.jpg") no-repeat right center;
	padding-left: 5px;
	}


/* ------------ Copy ------------ */

#copy {
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	color: #fff;
	padding: 180px 30px;
	position: relative;
	width: 100%;
	}

#copy-overlay {
	background-color: rgba(64, 125, 128, 0.8);
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	}

#copy-inner {
	position: relative;
	margin: 0 auto;
	max-width: 1400px;
	z-index: 100;
	}

#copy .column {
	float: left;
	width: calc(50% - 60px);
	}

#copy .column + .column {
	float: right;
	}

#copy .column h3 {
	font-size: 30px;
	line-height: 35px;
	padding-bottom: 10px;
	}

#copy .column p {
	margin-top: 30px;
	}


/* ------------ Photogrid ------------ */

#photogrid {
	width: 100%;
	}

#photogrid-sml {
	float: left;
	width: 50%;
	}

#photogrid-sml .photogrid-sml {
	float: left;
	height: auto;
	position: relative;
	width: 50%;
	}

#photogrid-sml img {
	float: left;
	height: auto;
	width: 100%;
	}

#photogrid-lrg {
	float: left;
	position: relative;
	width: 50%;
	}

#photogrid-lrg img {
	float: left;
	height: auto;
	width: 100%;
	}

#photogrid p {
	color: #fff;
	font-size: 16px;
	line-height: 21px;	
	padding: 20px;
	position: absolute;
	bottom: 0;
	left: 0;
	text-transform: uppercase;
	}


/* ------------ Quotes ------------ */

#quotes {
	margin: 0 auto;
	overflow: hidden;
	padding: 120px 30px;
	text-align: center;
	max-width: 1460px;
	}

#quotes .quote {
	background-image: 
		url("../img/dhc-quote-top.jpg"),
		url("../img/dhc-quote-bottom.jpg");
	background-repeat: 
		no-repeat,
		no-repeat;
	background-position: 
		0 0,
		bottom 40px right;
	color: #64736c; /* dark grey */
    font-family: 'Lora', serif;
	font-size: 30px;
	line-height: 45px;
	padding: 20px 122px 0 122px;
	width: 100%;
	}

#quotes .quote p {
	margin-top: 40px;
	}

#quotes .quote p.date {
	background-image: url("../img/underline.jpg");
	background-size: 269px;
	background-repeat: no-repeat;
	background-position: center center;
	color: #64736c;    
	display: inline-block;
    font-family: 'Lato', sans-serif;
	font-size: 16px;
	font-weight: 300;
	line-height: 21px;
	padding: 15px 60px 20px 60px;
	text-transform: ;
	}

#quotes .slick-dots {
	bottom: -60px;
	}

#quotes .slick-dots li {
	height: auto;
	width: auto;
	margin: 0 5px;
	padding: 0;
	cursor: pointer;
	}

#quotes .slick-dots li button {
	background-color: #fff;
	border: 1px solid #64736c;
    display: inline-block;
	height: 20px;
	padding: 0;
	text-indent: -25000px;
	width: 20px;
	-webkit-border-radius: 100px;
	-moz-border-radius: 100px;
	border-radius: 100px;	
	}

#quotes .slick-dots li.slick-active button {
	background-color: #64736c;
	}


/* ------------ Features ------------ */

#features {
	width: 100%;
	}

#features .feature {
	float: left;
	position: relative;
	width: 33.33333333333333%;
	}

#features img {
	float: left;
	height: auto;
	width: 100%;
	}

#features p {
	background-image: url("../img/text-banners-top.png");
	background-size: auto 100%;
	background-repeat: no-repeat;
	background-position: right center;
	color: #fff;
    font-family: 'Lora', serif;
	font-size: 30px;
	line-height: 45px;	
	padding: 30px 100px 30px 40px;
	position: absolute;
	left: 0;
	bottom: 50px;
	}

#features .feature:hover p {
	background-image: url("../img/text-banners-hover.jpg");
	}



/* ------------ Featured ------------ */

#featured {
	background-color: #b5b8b7;
	color: #fff;
    font-family: 'Lora', serif;
	font-size: 30px;
	line-height: 45px;	
	padding: 60px 30px;
	text-align: center;
	width: 100%;
	}

#featured p {
	margin: 0 auto;
	max-width: 1400px;
	}

#featured p a {
	color: #64736c;
	}

#featured p a:hover, {
	color: #95968f;
	}

/* ------------ Footer ------------ */

#footer {
	background-color: #95968f;
	letter-spacing: 0;
	padding: 30px 30px 60px 30px;
	width: 100%;
	}

#footer .footer {
	float: left;
	padding: 30px 30px 0 30px;
	width: 25%;
	}

#footer .footer-alt {
	color: #fff;
	font-size: 16px;
	letter-spacing: 1px;
	line-height: 32px;
	}

#footer h4 {
    font-family: 'Lora', serif;
	font-size: 25px;
	line-height: 40px;	
	padding-bottom: 10px;
	}

#footer p {
	margin-top: 30px;
	}

#footer .footer-alt a {
	border-bottom: 1px dotted #fff;
	color: #fff;
   	text-decoration: none;
	}

#footer .footer-alt a:hover {
	border-bottom: 1px solid #fff;
	color: #fff;
   	text-decoration: none;
	}

#footer ul {
	margin-top: 20px;
	}

#footer li {
	padding-top: 10px;
	}

#footer .map {
	height: 0;
	margin-top: 30px;
	overflow: hidden;
	position: relative;
	padding-bottom: 100%; 
	}

#footer .map iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
	}

#footer .footer:first-child {
	text-align: center;
	}

#footer .footer:first-child p {
	margin: 0;
	}

#footer .footer:first-child a {
	border: 0;
	}

#footer .footer:first-child ul {
	font-size: 0;
	line-height: 0;
	margin-top: 30px;
	}

#footer .footer:first-child li {
	display: inline;
	padding: 0;
	}

#footer .footer:first-child li a {
	display: inline-block;
	height: 42px;
	margin: 0 5px;
	text-indent: -999999px;
	width: 43px;
	}

#footer .footer:first-child li:nth-child(1) a {
	background: url("../img/icon-facebook.gif") no-repeat 0 0;
	}

#footer .footer:first-child li:nth-child(2) a {
	background: url("../img/icon-instagram.gif") no-repeat 0 0;
	}

#footer .footer:first-child li:nth-child(3) a {
	background: url("../img/icon-twitter.gif") no-repeat 0 0;
	}

#footer .footer:first-child li a:hover {
	background-position: 0 -42px;
	}

#footer #upfrontReviewsWidget {
	margin-top: 30px !important;
	}

#footer #ta {
	display: inline-block;
	margin: 0 auto;
	padding-top: 30px;
	}

#footer .TA_cdsratingsonlynarrow,
#footer .TA_certificateOfExcellence {
	display: inline-block;
	float: left;
	margin: 0;
	}


/* ------------ Furniture ------------ */

#furniture {
	background-color: #7c7d77;
	color: #fff;
	font-size: 14px;
	line-height: 19px;
	padding: 30px 60px;
	width: 100%;
	}

#furniture a {
	color: #fff;
	text-decoration: none;
	}

#copyright {
	float: left;
	}

#credit {
	float: right;
	}


/* ------------ Pagination ------------ */

#intro #pagination {
	display: block;
	margin: 60px 0 0 0;
	position: relative;
	width: 100%;
	}

#intro #pagination li {
	border: none;
	padding: 0;
	}

#intro #pagination li#pagination-prev {
	float: left;
	position: relative;
	z-index: 50;
	}

#intro #pagination li#pagination-next {
	float: right;
	position: relative;
	z-index: 50;
	}


#intro #pagination li#pagination-prev a,
#intro #pagination li#pagination-next a {
	background-color: #64736c; /* dark grey */
	display: inline-block;
	height: 50px;
	text-indent: -999999px;
	width: 50px;
	}

#intro #pagination li#pagination-prev a {
	background: #407d80 url("../img/pagination-prev-a-bg.png") no-repeat center center;
	}

#intro #pagination li#pagination-next a {
	background: #407d80 url("../img/pagination-next-a-bg.png") no-repeat center center;
	}

#intro #pagination li#pagination-prev a:hover,
#intro #pagination li#pagination-next a:hover {
	background-color: #a7aba9;
	}

#intro #pagination li#pagination-pages {
	position: absolute;
	top: 50%;
	left: 0;
	text-align: center;
	width: 100%;
	z-index: 40;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	}


/* ------------ Downloads ------------ */


#intro #download-title {
	padding-top: 60px;
	}

#intro .download a {
    background: url("../img/icon-download.png") no-repeat right center;
	color: #64736c; /* dark grey */
	display: block;
	padding-right: 40px;
	text-decoration: none;
	}

#intro .download a:hover {
	text-decoration: underline;
	}

#intro .download {
	border-bottom: 1px dotted #64736c; /* dark grey */
	color: #64736c; /* dark grey */
	font-size: 23px;
	line-height: 39px;
	padding: 15px 0;
	}	

#intro .download:last-child {
	border-bottom: none;
	}