/*
Theme Name: White Horse
Description: A custom theme for the White Horse site.
Version: 1.0
*/

/*
Get licenses for:
HypatiaSansPro-Bold
HypatiaSansPro-Light
HypatiaSansPro-Regular
HypatiaSansPro-Semibold
*/
@font-face {
	font-family:'HypatiaSansPro-Regular';
	src: 	url('fonts/font.eot');
	src: 	url('fonts/font.eot?#iefix') format('embedded-opentype'),
			url('fonts/font.woff2') format('woff2'),
			url('fonts/font.woff') format('woff'),
			url('fonts/font.ttf') format('truetype');
}

@font-face {
	font-family:'HypatiaSansPro-Bold';
	src: 	url('fonts/font.eot');
	src: 	url('fonts/font.eot?#iefix') format('embedded-opentype'),
			url('fonts/font.woff2') format('woff2'),
			url('fonts/font.woff') format('woff'),
			url('fonts/font.ttf') format('truetype');
}

@font-face {
	font-family:'HypatiaSansPro-Light';
	src: 	url('fonts/font.eot');
	src: 	url('fonts/font.eot?#iefix') format('embedded-opentype'),
			url('fonts/font.woff2') format('woff2'),
			url('fonts/font.woff') format('woff'),
			url('fonts/font.ttf') format('truetype');
}

@font-face {
	font-family:'HypatiaSansPro-Semibold';
	src: 	url('fonts/font.eot');
	src: 	url('fonts/font.eot?#iefix') format('embedded-opentype'),
			url('fonts/font.woff2') format('woff2'),
			url('fonts/font.woff') format('woff'),
			url('fonts/font.ttf') format('truetype');
}

/* http://meyerweb.com/eric/tools/css/reset/ 
   v2./* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h3, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* Whitehorse */

*, *:before, *:after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

body {
	font:normal 14px/normal 'HypatiaSansPro-Regular', Arial, sans-serif;
	background:#fff;
	color:#1D1D1B;
}

/************************************************
****** Misc *************************************
************************************************/

#container {
	min-width:320px;
	width:100%;
}

.container {
/*	max-width:1000px; */
	width:100%;
	margin:0 auto;
}

p {
	margin:0 0 15px;
}

#content ul, #content ol {
	padding:0 0 0 20px;
}

#content ul li {
	list-style:outside disc;
}

#content ol li {
	list-style:outside decimal;
}

strong {
	font-weight:bold;
}

em {
	font-style:italic;
}

.column {
	float:left;
}

.column.right {
	float:right;
}

.row {
	clear:both;
}

a, a:active, a:hover, a:focus {
	text-decoration:none;
	color:#1D1D1B;
}

img {
	display:block;
	max-width:100%;
	height:auto;
}

/************************************************
****** Header ***********************************
************************************************/

header {
	color:#924A96;
	padding:18px 0 0;
	background-color:#e0e0e0;
}

#logo {
	max-width:157px;
	margin:0 auto 9px;
}

#logo img {
	display:block;
}

#header-contact {
	/* Arial only: */
	max-width:305px;
	/*	Proper font:
	max-width:269px; */
	width:100%;
	text-align:right;
	padding:35px 33px 0 0;
}

#header-contact-phone {
	font:normal 24px/normal 'HypatiaSansPro-Regular', Arial, sans-serif;
	margin:0 0 10px;
}

#header-contact-phone strong {
	font-family:'HypatiaSansPro-Semibold', Arial, sans-serif;
}

#header-contact-email {
	font:normal 16.02px/normal 'HypatiaSansPro-Regular', Arial, sans-serif;
}

#header-contact-email strong {
	font-family:'HypatiaSansPro-Semibold', Arial, sans-serif;
}

#header-contact-email a {
	color:#924A96;
	font-weight:bold;
}

header nav > div.menu-main-menu-container {
	display:table;
	table-layout:fixed;
	width:100%;
	background:#8c51a0;
}

#primary-navigation ul {
	display:table-row;
	height:32px;
	line-height:32px;
}

#primary-navigation ul li {
	display:table-cell;
	font-size:12px;
	position:relative;
}

#primary-navigation ul li a {
	display:block;
	width:100%;
	height:100%;
	text-align:center;
	color:#fff;
	letter-spacing:2px;
	text-transform:uppercase;
}

#primary-navigation ul li.current-menu-item a,
#primary-navigation ul li a:hover {
	background:#d4c2dd;
	color:#924A96;
}


#primary-navigation > div > ul > li > ul.sub-menu {
	position:absolute;
	left:0;
	top:32px;
	z-index:110;
	width:500px;
	display:none;
}

#primary-navigation > div > ul > li:hover > ul.sub-menu {
	display:block;
}

#primary-navigation > div > ul > li > ul.sub-menu > li > ul {
	display:none;
/*	width:300px;*/
	width:325px;
}

#primary-navigation > div > ul > li > ul.sub-menu > li > ul > li {
	float:none;
	width:100%;
	display:block;
	text-align:left;
	font-size:11px;
	background-color:#dfdfe0;
	height:auto;
	white-space:nowrap;
	border-bottom:1px dotted #8c51a0;
}

#primary-navigation > div > ul > li > ul.sub-menu > li:hover > ul {
	display:block;
}

#primary-navigation > div > ul > li > ul.sub-menu > li > ul > li a {
	color:#8c51a0;
	letter-spacing:0.5px;
	text-align:left !important;
	padding:5px;
	height:auto;
	line-height:16px;
	white-space:nowrap;
}

#primary-navigation > div > ul > li > ul.sub-menu > li > ul > li:hover a {
	background-color:transparent;
	color:#000 !important;
}

#primary-navigation > div > ul > li > ul.sub-menu > li {
	height:32px;
	width:182px;
	display:block;
	float:left;
	background-color:#999999 !important;
	float:left;
	
}

#primary-navigation > div > ul > li#menu-item-14 > ul.sub-menu {
	width:100%;
}

#primary-navigation > div > ul > li > ul.sub-menu > li#menu-item-157 {
	width:auto;
	white-space:nowrap;
	min-width:100%;
}

#primary-navigation > div > ul > li > ul.sub-menu > li#menu-item-157 a {
	padding:0 10px;
}

#primary-navigation > div > ul > li > ul.sub-menu > li ul li a {
	background-color:#dfdfe0 !important;
}

#primary-navigation > div > ul > li > ul.sub-menu > li:hover > a {
	background-color:#8c51a0;
	color:#FFF;
}

/************************************************
****** Content **********************************
************************************************/

#content {

}

.region-banner-container {
	background:#fff;
	padding:5px 0;
	overflow:hidden;
	display:flex;
}

.region-banner-container article {
/*	max-width:372px; */
	width:37.2%;
	padding:20px 34px 20px 63px;
	background:#f7f3f8;
	min-height:298px;
	font-size:13px;
}

.region-banner-container article p:last-child {
	margin-bottom:0;
}

#slideshow {
/*	max-width:623px; 
	width:100%; */
	width:62.8%;
	padding:0;
	overflow:hidden;
	position:relative;
}

.home #slideshow {
/*	height:0;
	padding:0 0 30.471%;
*/
	height:100%;
	padding:0;
}

#slideshow ul {
	list-style-type:none;
	padding:0;
	margin:0;
	width:100%;
}

#slideshow ul li {
	width:100%;
	list-style-type:none;
}

#slideshow ul li img,
#slideshow img {
	display:block;
	width:100%;
	height:auto;
/*	max-height:306px; */
}

.slideshow-pager {
	position:absolute;
	left:10px;
	bottom:10px;
	z-index:102;
}

.slideshow-pager span {
	width:12px;
	height:12px;
	border-radius:50%;
	background-color:#FFF;
	display:block;
	float:left;
	margin-right:7px;
	cursor:pointer;
}

.slideshow-pager span.cycle-pager-active {
	background-color:#8c51a0;

}

#region-bottom-container {
	padding:11px 0;
/*	height:417px; */
	background-position:center center;
	background-repeat:no-repeat;
	background-size:cover;
	background-color:#e7e5e6;
	overflow:hidden;
	min-height:395px;
}

#content #region-grid-container {
	padding:0;
	overflow:hidden;
	max-width:339px;
	margin:39px 0 0 9.7%;
}

#content #region-grid-container {

}

#content #region-grid-container li {
	list-style:none;
	margin:8px;
	width:147px;
	height:147px;
	overflow:hidden;
}

#content #region-grid-container li img {
	border:2px solid #fff;
	min-height:147px;
}

#region-current-projects-container {
	margin:47px 6.5% 0 0;
	padding:22px 24px;
	width:100%;
	max-width:345px;
	min-height:308px;
/*	background:url(img/content-logo-bg.png) center 130px no-repeat rgba(255,255,255,0.7); */
	background:rgba(255,255,255,0.7);
}

#region-current-projects-container h3 {
	margin:0 10px 30px 0;
	padding:0 4px 0 14px;
	height:39px;
	font:normal 18px/39px 'HypatiaSansPro-Semibold', Arial, sans-serif;
	color:#fff;
	background:url(img/content-purple-title-bg.png) left top no-repeat transparent;
	position:relative;
	letter-spacing:1px;
}

#region-current-projects-container h3:after {
	content:"";
	display:block;
	width:10px;
	height:100%;
	right:-10px;
	top:0;
	z-index:2;
	position:absolute;
	background:url(img/content-purple-title-bg.png) right top no-repeat transparent;
}

#region-current-projects-container p {
	margin:0;
	font-size:18px;
	margin:0 0 10px;
}

#region-current-projects-container .address-box-content {
	font-size:18px;
	text-align:center;
	line-height:120%;
	margin:0 0 15px;
	font-weight:normal;
}

#region-current-projects-container .address-box-content#address-box-phone,
#region-current-projects-container .address-box-content#address-box-email {
	font-weight:normal;
}

#region-current-projects-container p a {
	text-decoration:underline;
}

#page-heading h2 {
	color:#8c51a0;
	font-size:17px;
	letter-spacing:1.2px;
	margin-top:0;
	text-transform:uppercase;
	font-weight:700;
	margin-bottom:15px;
}

#before-graphic {
	float:left;
	width:49.2038216561%;
/*	width:309px; */
	position:relative;
	overflow:hidden;
	height:0;
	padding:0 0 50%;
}

#before-graphic img {
	min-width:100%;
	max-width:200%;
	width:auto;
/*	height:300px; */
	height:100%;
	position:absolute;
	left:0;
	top:0;
}

#after-graphic {
	float:right;
	width:49.2038216561%;
/*	width:309px; */
	position:relative;
	overflow:hidden;
	height:0;
	padding:0 0 50%;
}

#after-graphic img {
	min-width:100%;
	max-width:200%;
	width:auto;
/*	height:300px; */
	height:100%;
	position:absolute;
	left:0;
	top:0;
}

.ba-caption {
	position:absolute;
	left:0;
	bottom:0;
	width:100%;
	height:32px;
	line-height:32px;
	color:#FFF;
	text-align:center;
	font-size:20px;
	text-transform:uppercase;
	background-color:#cab9d7;
	font-weight:700;
}

.column.half-column {
	width:50% !important;
	padding-right:20px;
	max-width:100% !important;
	float:left;
}

.column.half-column + .half-column {
	padding-left:15px !important;
}

#lr-column-wrapper {
	overflow:hidden;
	display:block;
	display:flex;
	width:100%;
	float:none;
	padding-top:5px;
	border-bottom:11px solid #dfdfe0;
}

#left-column {
	width:37.5%;
/*	width:375px; */
	float:left;
	background-color:#f4f0f6;
	padding:18px 25px 20px 64px;
	display:block;
	margin-right:7px;
	font-size:13px;
}

#left-column p:last-child {
	margin-bottom:0;
}

#left-column li {
	margin-bottom:10px;
}

#right-column {
	width:62.3%;
/*	width:623px; */
	float:right;
	display:block;
}

#left-column #page-heading h2 {
	margin-bottom:10px;
}

#page-sub-heading h1 {
	font-size:18px;
	margin:0;
}

#page-sub-heading {
	margin-bottom:10px;
}

#right-column-top #slideshow {
	width:100%;
}

#right-column-bottom {
	padding-top:7px;
}

#section-rbb-lower-image {
	position:relative;
}

#section-rbb-lower-image > img {
	width:100%;
}

#overlay-images {
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	padding:0px;
}

#overlay-images img {
	border:2px solid #FFF;
	margin:10px;
	max-width:150px;
	min-height:150px;
}

#overlay-images.overlay-tr {
	text-align:right;
}

#overlay-images.overlay-bl td {
	text-align:left;
	vertical-align:bottom;
}

#overlay-images.overlay-br td {
	text-align:right;
	vertical-align:bottom;
}

#overlay-images.overlay-tr img,
#overlay-images.overlay-br img {
	margin-left:auto;
}

#overlay-images.overlay-horizontal img,
#overlay-images.overlay-horizonal img {
	display:inline-block;
	vertical-align:top;
}

#overlay-images table,
#overlay-images table tr,
#overlay-images table tr td {
	width:100%;
	height:100%;
}

#section-bbl-image {
/*	width:372px; */
/*	max-width:372px; */
	width:37.2%;
	float:left;
	display:block;
/*	height:405px; */
	height:0;
	padding:0 0 40.542%;
	overflow:hidden;
	position:relative;
}

#section-bbl-image img {
	position:absolute;
	left:0;
	top:0;
	width:100%;
	min-width:100%;
	max-width:100%;
	height:100%;
	min-height:100%;
	max-height:200%;
}

#section-bbr-image {
/*	width:623px; */
/*	max-width:623px; */
	width:62.4%;
	float:right;
	display:block;
/*	height:405px; */
	height:0;
	padding:0 0 40.542%;
	overflow:hidden;
	position:relative;
}

#section-bbr-image > img {
	position:absolute;
	left:0;
	top:0;
	width:100%;
	min-width:100%;
	max-width:100%;
	height:100%;
	min-height:100%;
	max-height:200%;
}

#section-rbb-grid2x2 {
	overflow:hidden;
	display:block;
	width:100%;
	float:none;
}

#section-rbb-grid2x2 > div {
	float:left;
	width:50%;
	padding-right:2.5px;
	margin-bottom:5px;
}

#section-rbb-grid2x2 > div img {
	width:auto;
	min-width:100%;
	max-width:100%;
/*	height:205px; */
	height:auto;
}

#section-rbb-grid2x2 > div:nth-child(even){
	padding-right:0;
	padding-left:2.5px;
}

#section-rbb-grid1x3 {
	overflow:hidden;
	width:100%;
	float:none;
}

#section-rbb-grid1x3 img {
	width:100%;
}

#section-rbb-grid1x3 #section-rbb-grid1x3-left {
	float:left;
	width:50%;
	padding-right:5px;
}

#section-rbb-grid1x3 #section-rbb-grid1x3-right {
	width:50%;
	overflow:hidden;
}

#grid1x3-02 {
	width:100%;
	clear:both;
	display:block;
	margin-bottom:5px;
}

#grid1x3-03 {
	width:50%;
	padding-right:2px;
	float:left;
/*	height:158px; */
	height:0;
	overflow:hidden;
	padding:0 0 52%;
	position:relative;
}

#grid1x3-03 img,
#grid1x3-04 img {
	position:absolute;
	left:0;
	top:0;
	height:100%;
	width:100%;
	min-width:100%;
	max-width:100%;
}

#grid1x3-04 {
	width:50%;
	padding-left:3px;
	float:right;
/*	height:158px; */
	height:0;
	overflow:hidden;
	padding:0 0 52%;
	position:relative;
}

.row-cc {
	display:block;
	display:flex;
}

article li {
	margin-bottom:10px;
}

article a {
	text-decoration:underline;
}

iframe {
	width:100%;
}

/************************************************
****** Footer ***********************************
************************************************/

footer {
	background:#d4c2dd;
	font-size:11px;
}

footer .container {
/*	overflow:hidden; */
	padding:18px 36px 18px 55px;
/*	background:url(img/footer-horse-logo.png) 96.3% 6px no-repeat transparent; */
	background:url(img/footer-horse-logo.png) center 6px no-repeat transparent; 
}

footer .container:after {
	content:"";
	display:block;
	clear:both;
}

#footer-siteinfo {
	padding:0 5px 0;
	width:240px;
	max-width:240px;
}

#footer-siteinfo p {
	margin:0 0 8px;
}

footer address {
	padding:0 175px 0 0;
	width:435px;
	max-width:435px;
	text-align:center;
	line-height:14px;
}

footer address p {
	margin:0 0 8px;
}

#footer-contact {
	line-height:16px;
}

#footer-contact-phone {
	font-size:12px;
}

#footer-contact-email {
	
}

#footer-contact-email a {
	text-decoration:underline;
}

footer .hidden {
	display:none;
}

#disclaimer-container {
	position:relative;
}

#disclaimer-text {
	font-size:12px;
	display:none;
	position:absolute;
	bottom:100%;
	left:0;
	padding:20px 10px 10px;
	width:500px;
	height:auto;
	z-index:250;
	background:#d4c2dd;
	color:#924A96;
	border:1px solid #fff;
	border-radius:10px;
}

#disclaimer-close {
	position:absolute;
	top:0;
	right:0;
	font-size:11px;
	color:#000;
	padding:3px 8px;
}

#cottages-link {
	font-size:13px;
}

@media screen and (max-width:850px) {
	#primary-navigation > div > ul > li > ul.sub-menu {
		position:relative;
		top:0;
		height:auto;
	}

	#primary-navigation > div > ul  li {
		overflow:hidden;
	}

	header #primary-navigation > div > ul > li > ul.sub-menu > li {
		width:100% !important;
		max-width:100% !important;
		min-width:0 !important;
		height:auto;
		float:none;
	}

	#primary-navigation > div > ul > li > ul.sub-menu > li > ul.sub-menu {
		width:100%;
		max-width:100%;
		text-align:center;
		position:relative;
		height:auto;
	}

	#primary-navigation > div > ul > li > ul.sub-menu > li > ul.sub-menu li,
	#primary-navigation > div > ul > li > ul.sub-menu > li > ul.sub-menu > li a {
		text-align:center !important;
		float:none;
	}

	#primary-navigation > div > ul > li > ul.sub-menu > li > ul > li a {
		white-space:normal !important;
	}

	#primary-navigation > div > ul > li:hover > ul.sub-menu,
	#primary-navigation > div > ul > li > ul.sub-menu > li:hover > ul.sub-menu {
		display:none;
	}

	#disclaimer-text {
		width:500px;
		left:-135px;
	}

	#region-bottom-container {
		padding:0 15px 39.9% !important;
		background-size:cover;
		height:0;
		min-height:0;
	}

	#region-bottom-container.auto-height {
		padding:0 15px !important;
		height:auto;
	}
}

@media screen and (max-width:580px) {
	#overlay-images {
		position:relative;
		height:auto;
	}

	#overlay-images.overlay-tr td,
	#overlay-images.overlay-br td {
		text-align:center;
	}

	#overlay-images.overlay-tr img,
	#overlay-images.overlay-br img {
		display:inline;
	}
}

@media screen and (max-width:560px) {
	#disclaimer-text {
		width:320px;
		max-width:100%;
		left:0;
		position:relative;
	}
}

@media screen and (max-width:500px) {
	.region-banner-container {
		display:block;
	}

	#section-bbl-image,
	#section-bbr-image {
		width:100%;
		padding:0 15px 15px;
		float:none;
		height:auto;
		margin:0 auto;
	}

	#section-bbl-image img,
	#section-bbr-image img {
		position:relative;
		left:auto;
		top:auto;
		min-height:0;
		height:auto;
	}

	#region-bottom-container {
		padding:0 15px !important;
		height:auto;
	}

	#region-bottom-container.empty-container {
		padding:0 15px 39.9% !important;
	}

	#overlay-images table tr td {
		text-align:center;
	}

	#overlay-images.overlay-tr img {
		display:inline;
	}

	.home .region-banner-container #slideshow {
		height:0;
		padding-bottom:43.413% !important;
	}
}