section#heading {
	padding-bottom:0;
	background:#eae7de;
}

	section#heading h1 {
		margin:0;
		padding:10px 0;
		font-size:28px;
		font-family: 'EB Garamond',Garamond,Baskerville,Baskerville Old Face,Hoefler Text,Times New Roman, serif;
		text-transform:uppercase;
		color:#71ad77;
		}
			section#heading h1 span {
				color:#750B15;
			}


	section#heading #logo {
		position:absolute;
		top:60px;
		z-index:99;
	}

	section#heading span#telephone {
		display:inline-block;
		font-size:17px;
		color:#333333;
		padding:3px 0 3px 34px;
		background:url(../userfiles/design/telephone.png) no-repeat left center;
	}

	section#heading #google_translate_element {
		padding:10px 0;
	}

	#book,
	#letter {
		display:none;
	}

section#msg {
	background:#fe7;
	text-align:center;
}

section#banner_slideshow {
	background:#5998BC;
}

	section#banner_slideshow>div.inner {
		max-width:100%;
		padding-left:0;
		padding-right:0;
		max-height:30vw;
		height:450px; /* same height as slides */
	}

		section#banner_slideshow>div.inner div.slide {
			width:100%;
			background-size:cover;
			background-position:center center;
			max-height:30vw;
			height:450px; /* same height as container */
		}

		@media (max-width: 767px) and (orientation: portrait) {
			section#banner_slideshow>div.inner,
			section#banner_slideshow>div.inner div.slide {
				max-height:50vw;
			}
		}

		.banner_slideshow_control {
			position:absolute;
			z-index:999;
			font-size:100px;
			color:#fff;
			top:220px;
			cursor:pointer;
			-ms-transform: scale(1,2);
			-webkit-transform: scale(1,2);
			transform: scale(1,2);
			font-family:courier;
			opacity:0.7;
		}
			.banner_slideshow_control:hover {
				opacity:1;
			}
			#bs_prev.banner_slideshow_control {
				left:calc(50vw - 601px);
			}
			#bs_next.banner_slideshow_control {
				right:calc(50vw - 601px);
			}


section#page_content_1 {}

	section#page_content_1>div.inner :first-child {
		margin-top:0;
	}

section#page_content_2 {}
	section#page_content_2>div.inner :first-child {
		margin-top:0;
	}

section.box_links .box {
	position:relative;
	background-size:cover;
	background-position:center center;
	min-height:380px;
	color:#ffffff;
}

	@media (max-width: 767px) and (orientation: portrait) {
		section.box_links .box {
			min-height:140vw;
		}
	}

	section.box_links .box .overlay {
		position:absolute;
		left:0;
		bottom:0;
		right:0;
		background-color:rgba(0, 0, 0, 0.6);
		padding:20px 8px;
		font-size:18px;
		line-height:24px;
	}
		section.box_links .box .overlay h4 {
			font-size:26px;
			font-family: Garamond,Baskerville,Baskerville Old Face,Hoefler Text,Times New Roman,serif;
			padding-bottom:12px;
			margin:0;
			color:#fff;
		}

section#location_map {
	height:800px;
	max-height:80vw;
	background:#cce7a2;
}

section#collection_map {
	height:590px;
	max-height:80vw;
	background:#cce7a2;
}

section#collection {}

	section#collection ul#collection_categories li {

	}

section#collection_slide {
	background:#EAE7DE;
}

section#comments {

}
	section#comments div.comments_heading {
		background:#68b372;
		color:#fff;
		font-size:26px;
		font-family: 'EB Garamond',Garamond,Baskerville,Baskerville Old Face,Hoefler Text,Times New Roman, serif;
		padding:30px 0;
		margin-bottom:40px;
	}
	.comment h5 {
		background:#c3dfc6;
		padding:30px 34px;
	}
		.comment.author h5 {
			background:#e7d1d3;
		}
		.comment>div {
			padding:0 34px;
			font-size:19px;
			line-height:26px;
		}

section#testimonials div.inner>div {
	margin-bottom:10px;
}

section#testimonials div.inner div q {
	display:block;
	background:#F6F1EB;
	padding:20px;
	font-style:italic;
}

section#testimonials div.inner div span {
	display:block;
	text-align:right;
	padding:5px 20px 20px 0;
}

section#links div.inner > div {
	background:#F6F1EB;
	padding:20px;
	margin-bottom:10px;
}
	section#links div.inner a {
		text-decoration:none;
		color:#921115;
	}
	section#links div.inner a:hover {
		text-decoration:underline;
	}

section#photo_strip {
	width:2240px;
	height:320px;
	display:flex;
	justify-content:center;
	position:relative;
	left: calc((2240px - 100%) / 2 * -1);
}
	section#photo_strip .photo {
		display:block;
		width:320px;
		height:320px;
		background-color:#eee;
		background-size:cover;
		background-position:center center;
		float:left;
		outline:0;
	}
	section#photo_strip.photo_strip_of_1 .photo {
		min-width:100vw;
	}
	section#photo_strip.photo_strip_of_2 .photo {
		min-width:50vw;
	}
	section#photo_strip.photo_strip_of_3 .photo {
		min-width:340vw;
	}
	section#photo_strip.photo_strip_of_4 .photo {
		min-width:25vw;
	}
	section#photo_strip.photo_strip_of_5 .photo {
		min-width:20vw;
	}
	section#photo_strip.photo_strip_of_6 .photo {
		min-width:18vw;
	}

section#social_networks {
	background:#000;
}
	section#social_networks a {
		display:inline-block;
		width:48px;
		height:48px;
		background-image:url(/userfiles/design/socnets.png);
		margin:0 20px;
	}
		section#social_networks a#twitter {
			background-position: -48px 0;
		}

section#contact_details {
	background:#E3E1D4;
	color:#333333;
	font-size:16px;
	font-weight:300;
}
	section#contact_details span {
		display:block;
	}
	section#contact_details a {
		color:#333333;
	}

section#footer {
	color:#666666;
	font-size:14px;
	line-height:18px;
	font-weight:300;
	text-align:center;
}
	section#footer span {
		padding:0 8px;
	}
	section#footer a {
		color:#666666;
		padding:0 8px;
		display:block;
	}







/*
Slots
*/

.slots .blocklink {
	display:block;
	padding:17px 10px;
	background:#ff9000;
	margin-bottom:20px;
	color:#ffffff;
	text-transform:uppercase;
	font-size:22px;
}
	.slots .blocklink:hover {
		text-decoration:none;
	}
	.slots .blocklink::after {
		content: '\25b6';
		color:#000000;
		padding-left:25px;
	}
	.slots .blocklink:hover::after {
		color:#ffffff;
	}

.public_form {
	text-align:left;
	background:#f5f5f5;
}
	.public_form fieldset {
		position:relative;
		border:0;
	}
	.public_form legend {
		padding:20px;
	}
	.public_form ol li {
		list-style-type: none;
	}
	.public_form label {
		box-sizing:border-box;
		display:inline-block;
		width:240px;
		font-size:21px;
		font-weight:300;
		padding-right:24px;
		text-align:right;
	}
		.public_form label.checkbox_label {
			display:inline-block;
			width:auto;
		}
	.public_form input[type=text],
	.public_form input[type=email],
	.public_form textarea {
		width:calc(100% - 320px);
		font-size:18px;
		color:#666;
		padding:15px;
		border:1px solid #666;
	}
	.public_form textarea {
		min-height:140px;
	}
	.public_form input[type=submit] {
		background:#8a171c;
		color:#fff;
		text-transform:uppercase;
		-webkit-border-radius:8px;
		border-radius:8px;
		font-size:18px;
		padding:16px 50px;
		border:0;
	}
	.public_form li.note {
		font-size:14px;
		font-weight:bold;
	}
	.public_form li.button {
		text-align:right;
		padding:32px 40px 32px 0;
	}


	@media (max-width: 767px) and (orientation: portrait) {
		.public_form ol {
			padding-left:0;
		}
		.public_form label {
			display:block;
			width:100%;
			text-align:left;
		}
		.public_form input[type=text],
		.public_form input[type=email],
		.public_form textarea {
			width:75vw;
		}

	}


.gridbuttons {
	display:grid;
	gap:2rem;
}


@media (min-width: 768px) {

	.gridbuttons {
		grid-template-columns: auto auto;
	}
		.gridbuttons a {
			background-color: #750B15;
			color:white;
			font-weight:bold;
			border-radius:1rem;
			text-align:center;
			padding:1rem;
			box-shadow:2px 2px 3px 0 rgba(0,0,0,.4);
		}
			.gridbuttons a:hover {
				background-color:#86B789;
				text-decoration:none;
				box-shadow:1px 1px 3px 0 rgba(0,0,0,.6);
			}

	section#heading,
	section#heading .inner {
		height:108px;
		z-index:20;
	}
		section#heading #logo {
			display:block;
			z-index:102;
			position:absolute;
			top:20px;
			left:-3px;
		}
		section#heading h1 {
			position:absolute;
			margin:0;
			top:33px;
			left:116px;
			font-size:44px;
		}
		section#heading nav {
			display:block;
			position:absolute;
			top:55px;
			right:0;
		}

	#book {
		display:block;
		position:absolute;
		z-index:100;
		left:0px;
		top:130px;
		max-height:30vw;
		pointer-events: none;
	}
	#letter {
		display:block;
		position:absolute;
		top:350px;
		top:calc(70px + 15vw);
		left:15vw;
		z-index:101;
		max-height:15vw;
	}


	section#testimonials div.inner,
	section#links div.inner {
		-webkit-column-count: 2;
		-moz-column-count: 2;
		column-count: 2;
	}

	section#footer div {
		text-align:left;
	}
		section#footer div:nth-child(even) {
			text-align:right;
		}

	section#footer a {
		display:inline;
	}

	section#contact_details span {
		display:inline-block;
		padding:0 10px;
	}
		section#contact_details span:first-of-type {
			padding-left:0;
		}

		section#contact_details span:last-of-type {
			padding-right:0;
		}

	section#footer>div.inner div:first-child a {
		border-right:1px solid #666666;
	}

	section#footer>div.inner div:first-child a:last-child {
		border-right:0;
	}

	section#footer>div.inner div:last-child a {
		border-left:1px solid #666666;
	}

}

@media (min-width: 1024px) {


}