/*
Theme Name: Divi Child
Theme URI: http://www.elegantthemes.com/gallery/divi
Description: Divi child theme via FreshySites
Author: FreshySites
Author URI: http://freshysites.com/
Template:  Divi
Version: 1.0.0
*/
/* Add your own styles at the bottom */

p.registration.successful {
    background: #b9e6b7!important;
    padding: 20px!important;
    margin-bottom: 20px!important;
    font-size: 18px!important;
    font-weight: bold!important;
}
/* -- COLORS -- */

.white, 
.white h1, .white h2, .white h3, .white h4, .white h5, .white h6, .white li, .white a,
h1.white, h2.white, h3.white, h4.white, h5.white, h6.white, li.white, a.white, p.white {
	color: #fff;
}

.black, 
.black h1, .black h2, .black h3, .black h4, .black h5, .black h6, .black li, .black a,
h1.black, h2.black, h3.black, h4.black, h5.black, h6.black, li.black, a.black, p.black {
	color: #000;
}

/* dark brown */
.primary, 
.primary h1, .primary h2, .primary  h3, .primary h4, .primary h5, .primary h6, .primary li, .primary a,
h1.primary, h2.primary, h3.primary, h4.primary, h5.primary, h6.primary, li.primary, a.primary, p.primary {
	color: #3e220f;
}

/* mid brown */
.secondary, 
.secondary h1, .secondary h2, .secondary h3, .secondary h4, .secondary h5, .secondary h6, .secondary li, .secondary a,
h1.secondary, h2.secondary, h3.secondary, h4.secondary, h5.secondary, h6.secondary, li.secondary, a.secondary, p.secondary {
	color: #78583e;
}

/* cream */
.tertiary, 
.tertiary h1, .tertiary h2, .tertiary h3, .tertiary h4, .tertiary h5, .tertiary h6, .tertiary li, .tertiary a,
h1.tertiary, h2.tertiary, h3.tertiary, h4.tertiary, h5.tertiary, h6.tertiary, li.tertiary, a.tertiary, p.tertiary {
	color: #ffffe1;
}

/* background colors */
.bg-white, a.bg-white {background-color: #fff;}
.bg-black, a.bg-black {background-color: #000;}
.bg-primary, a.bg-primary {background-color: #3e220f;} /* dark brown */
.bg-secondary, a.bg-secondary {background-color: #78583e;} /* mid brown */
.bg-tertiary, a.bg-tertiary {background-color: #ffffe1;} /* cream */

a:hover { color: #3e220f; }

.cream-link a {
	color: #ffffe1!important;
	transition: all 0.2s;
}

.cream-link a:hover {
	color: #78583e!important;
}

/* -- END COLORS -- */


/* -- SPACING -- */

/* margin */

.m-t-0, 
.m-t-0 h1, .m-t-0 h2, .m-t-0 h3, .m-t-0 h4, .m-t-0 h5, .m-t-0 h6, .m-t-0 li, .m-t-0 a,
h1.m-t-0, h2.m-t-0, h3.m-t-0, h4.m-t-0, h5.m-t-0, h6.m-t-0, li.m-t-0, a.m-t-0, p.m-t-0 {
	margin-top: 0 !important;
}

.m-b-0, 
.m-b-0 h1, .m-b-0 h2, .m-b-0 h3, .m-b-0 h4, .m-b-0 h5, .m-b-0 h6, .m-b-0 li, .m-b-0 a,
h1.m-b-0, h2.m-b-0, h3.m-b-0, h4.m-b-0, h5.m-b-0, h6.m-b-0, li.m-b-0, a.m-b-0, p.m-b-0 {
	margin-bottom: 0 !important;
}

.m-l-0, 
.m-l-0 h1, .m-l-0 h2, .m-l-0 h3, .m-l-0 h4, .m-l-0 h5, .m-l-0 h6, .m-l-0 li, .m-l-0 a,
h1.m-l-0, h2.m-l-0, h3.m-l-0, h4.m-l-0, h5.m-l-0, h6.m-l-0, li.m-l-0, a.m-l-0, p.m-l-0 {
	margin-left: 0 !important;
}

.m-r-0, 
.m-r-0 h1, .m-r-0 h2, .m-r-0 h3, .m-r-0 h4, .m-r-0 h5, .m-r-0 h6, .m-r-0 li, .m-r-0 a,
h1.m-r-0, h2.m-r-0, h3.m-r-0, h4.m-r-0, h5.m-r-0, h6.m-r-0, li.m-r-0, a.m-r-0, p.m-r-0 {
	margin-right: 0 !important;
}

.m-x-0, 
.m-x-0 h1, .m-x-0 h2, .m-x-0 h3, .m-x-0 h4, .m-x-0 h5, .m-x-0 h6, .m-x-0 li, .m-x-0 a,
h1.m-x-0, h2.m-x-0, h3.m-x-0, h4.m-x-0, h5.m-x-0, h6.m-x-0, li.m-x-0, a.m-x-0, p.m-x-0 {
	margin-left: 0 !important; 
	margin-right: 0 !important;
}

.m-y-0, 
.m-y-0 h1, .m-y-0 h2, .m-y-0 h3, .m-y-0 h4, .m-y-0 h5, .m-y-0 h6, .m-y-0 li, .m-y-0 a,
h1.m-y-0, h2.m-y-0, h3.m-y-0, h4.m-y-0, h5.m-y-0, h6.m-y-0, li.m-y-0, a.m-y-0, p.m-y-0 {
	margin-top: 0 !important; 
	margin-bottom: 0 !important;
}

.m-a-0, 
.m-a-0 h1, .m-a-0 h2, .m-a-0 h3, .m-a-0 h4, .m-a-0 h5, .m-a-0 h6, .m-a-0 li, .m-a-0 a,
h1.m-a-0, h2.m-a-0, h3.m-a-0, h4.m-a-0, h5.m-a-0, h6.m-a-0, li.m-a-0, a.m-a-0, p.m-a-0 {
	margin: 0 !important; 
}

.m-y-auto, 
.m-y-auto h1, .m-y-auto h2, .m-y-auto h3, .m-y-auto h4, .m-y-auto h5, .m-y-auto h6, .m-y-auto li, .m-y-auto a,
h1.m-y-auto, h2.m-y-auto, h3.m-y-auto, h4.m-y-auto, h5.m-y-auto, h6.m-y-auto, li.m-y-auto, a.m-y-auto, p.m-y-auto {
	margin-right: auto !important; 
	margin-left: auto !important;
}

/* padding */

.p-t-0, 
.p-t-0 h1, .p-t-0 h2, .p-t-0 h3, .p-t-0 h4, .p-t-0 h5, .p-t-0 h6, .p-t-0 li, .p-t-0 a,
h1.p-t-0, h2.p-t-0, h3.p-t-0, h4.p-t-0, h5.p-t-0, h6.p-t-0, li.p-t-0, a.p-t-0, p.p-t-0 {
	padding-top: 0 !important;
}

.p-b-0, 
.p-b-0 h1, .p-b-0 h2, .p-b-0 h3, .p-b-0 h4, .p-b-0 h5, .p-b-0 h6, .p-b-0 li, .p-b-0 a,
h1.p-b-0, h2.p-b-0, h3.p-b-0, h4.p-b-0, h5.p-b-0, h6.p-b-0, li.p-b-0, a.p-b-0, p.p-b-0 {
	padding-bottom: 0 !important;
}

.p-l-0, 
.p-l-0 h1, .p-l-0 h2, .p-l-0 h3, .p-l-0 h4, .p-l-0 h5, .p-l-0 h6, .p-l-0 li, .p-l-0 a,
h1.p-l-0, h2.p-l-0, h3.p-l-0, h4.p-l-0, h5.p-l-0, h6.p-l-0, li.p-l-0, a.p-l-0, p.p-l-0 {
	padding-left: 0 !important;
}

.p-r-0, 
.p-r-0 h1, .p-r-0 h2, .p-r-0 h3, .p-r-0 h4, .p-r-0 h5, .p-r-0 h6, .p-r-0 li, .p-r-0 a,
h1.p-r-0, h2.p-r-0, h3.p-r-0, h4.p-r-0, h5.p-r-0, h6.p-r-0, li.p-r-0, a.p-r-0, p.p-r-0 {
	padding-right: 0 !important;
}

.p-x-0, 
.p-x-0 h1, .p-x-0 h2, .p-x-0 h3, .p-x-0 h4, .p-x-0 h5, .p-x-0 h6, .p-x-0 li, .p-x-0 a,
h1.p-x-0, h2.p-x-0, h3.p-x-0, h4.p-x-0, h5.p-x-0, h6.p-x-0, li.p-x-0, a.p-x-0, p.p-x-0 {
	padding-left: 0 !important; 
	padding-right: 0 !important;
}

.p-y-0, 
.p-y-0 h1, .p-y-0 h2, .p-y-0 h3, .p-y-0 h4, .p-y-0 h5, .p-y-0 h6, .p-y-0 li, .p-y-0 a,
h1.p-y-0, h2.p-y-0, h3.p-y-0, h4.p-y-0, h5.p-y-0, h6.p-y-0, li.p-y-0, a.p-y-0, p.p-y-0 {
	padding-top: 0 !important; 
	padding-bottom: 0 !important;
}

.p-a-0, 
.p-a-0 h1, .p-a-0 h2, .p-a-0 h3, .p-a-0 h4, .p-a-0 h5, .p-a-0 h6, .p-a-0 li, .p-a-0 a,
h1.p-a-0, h2.p-a-0, h3.p-a-0, h4.p-a-0, h5.p-a-0, h6.p-a-0, li.p-a-0, a.p-a-0, p.p-a-0 {
	padding: 0 !important; 
}

/* -- END SPACING -- */


/* -- TYPOGRAPHY -- */

.text-lowercase, 
.text-lowercase h1, .text-lowercase h2, .text-lowercase h3, .text-lowercase h4, .text-lowercase h5, .text-lowercase h6, .text-lowercase li, .text-lowercase a {
	text-transform: lowercase !important;
}

.text-uppercase, 
.text-uppercase h1, .text-uppercase h2, .text-uppercase h3, .text-uppercase h4, .text-uppercase h5, .text-uppercase h6, .text-uppercase li, .text-uppercase a {
	text-transform: uppercase !important;
}

.text-capitalize, 
.text-capitalize h1, .text-capitalize h2, .text-capitalize h3, .text-capitalize h4, .text-capitalize h5, .text-capitalize h6, .text-capitalize li, .text-capitalize a {
	text-transform: capitalize !important;
}

.text-transform-none, 
.text-transform-none h1, .text-transform-none h2, .text-transform-none h3, .text-transform-none h4, .text-transform-none h5, .text-transform-none h6, .text-transform-none li, .text-transform-none a {
	text-transform: none !important;
}

.font-weight-bold, 
.font-weight-bold h1, .font-weight-bold h2, .font-weight-bold h3, .font-weight-bold h4, .font-weight-bold h5, .font-weight-bold h6, .font-weight-bold li, .font-weight-bold a {
	font-weight: 700;
}

.font-weight-normal, 
.font-weight-normal h1, .font-weight-normal h2, .font-weight-normal h3, .font-weight-normal h4, .font-weight-normal h5, .font-weight-normal h6, .font-weight-normal li, .font-weight-normal a {
	font-weight: 400;
}

.font-italic {font-style: italic;}

.text-underline-none, .text-underline-none a {text-decoration: none !important;}

.text-underline, .text-underline a {text-decoration: underline !important;}

.text-nowrap, .text-nowrap a {white-space: nowrap !important;}

.text-wrap-normal, .text-wrap-normal a {white-space: normal !important;}

/* -- END TYPOGRAPHY -- */


/* -- TOP/SECONDARY BAR -- */

span#db-info-text, 
span#et-info-phone {
    letter-spacing: 2px;
	font-weight: normal;
	margin: 0 10px;
}

span#et-info-phone:before {
	margin-right: 4px;
}

#top-header a {
	letter-spacing: 2px;
}

#top-header a.et-cart-info {
	display: none;	
}

@media (max-width: 980px) {
	/* keep the top bar menu for tablet */
	#et-secondary-menu {
		display: block !important;
		padding-top: 0.75em;
	}
	#et-secondary-nav {
		display: inline-block !important;
	}
}

@media (max-width: 767px) {
	/* hide the top bar menu for mobile since it's already now in mobile menu */
	#et-secondary-menu {
		display: none !important;
	}
	.et_secondary_nav_two_panels #et-secondary-menu {
		margin-top: 0;
	}
	#top-header .et-cart-info {
		margin-left: 15px;
	}
}

@media (max-width: 479px) {
	span#db-info-text {
		display: none;
	}
}


/* -- MAIN MENU / HEADER -- */

#logo {
	max-width: 250px !important;
}

#top-menu li {
	padding-right: 20px !important;
}

#top-menu-nav #top-menu > li:last-child {
	padding-right: 0 !important;
}

#top-menu-nav #top-menu li a {
	opacity: 0.7;
	font-weight: 700;
}

#top-menu-nav #top-menu li a:hover,
#top-menu-nav #top-menu li.current-menu-item > a {
	opacity: 1;
}

#main-header {
    box-shadow: 0 3px 0 #3e220f;
}

#et-top-navigation .et_mobile_menu li a {
	text-transform: uppercase;
	letter-spacing: 2px;
}

@media (max-width: 1367px) {
	#logo {
		max-width: 200px !important;
	}
	#top-menu li {
		padding-right: 18px !important;
	}
	#top-menu-nav #top-menu li a {
		font-size: 13px !important;
		letter-spacing: 1px !important;
	}
}

@media (max-width: 1080px) {
	#logo {
		max-width: 175px !important;
	}
	#top-menu li {
		padding-right: 15px !important;
	}
	#top-menu-nav #top-menu li a {
		font-size: 13px !important;
		letter-spacing: 0 !important;
	}
}

@media (max-width: 1024px) {
	#logo {
		max-width: 175px !important;
	}
	#top-menu li {
		padding-right: 10px !important;
	}
	#top-menu-nav #top-menu li a {
		font-size: 12px !important;
		letter-spacing: 0.5px !important;
	}
}


/* -- HOMEPAGE -- */

.custom-slideshow.et_pb_row {
	padding-top: 0 !important;
	padding-bottom: 30px !important;
}

/* light text needs dark bg on slide */
body.home .et_pb_slide.et_pb_bg_layout_light::after {
    content: '';
	background-color: rgba(62, 34, 15, 0.3);
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* dark text needs light bg on slide */
body.home .et_pb_slide.et_pb_bg_layout_dark::after {
    content: '';
	background-color: rgba(255, 255, 225, 0.3);
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

body.home .et_pb_slide.et-pb-active-slide {
    min-height: 320px;
}

body.home .et_pb_slider .et_pb_container {
	display: table;
	width: 100% !important;
}

body.home .et_pb_slide_description, 
body.home .et_pb_slider_fullwidth_off .et_pb_slide_description {
    display: table-cell;
	vertical-align: bottom;
	padding: 6% 0 !important;
	text-shadow: 0 1px 3px rgba(255, 255, 225, 0.5);
	width: 100% !important;
}

/* light text has dark shadow */
body.home .et_pb_slider.et_pb_bg_layout_light .et_pb_slide_description, 
body.home .et_pb_slider.et_pb_bg_layout_light .et_pb_slider_fullwidth_off .et_pb_slide_description {
	text-shadow: 0 1px 3px rgba(62, 34, 15, 0.5);
}

body.home .et_pb_slider .et_pb_slide_description .et_pb_slide_title,
body.home .et_pb_slider .et_pb_slide_description .et_pb_slide_content {
    text-align: left;
    font-weight: 900 !important;
	font-size: 32px !important;
	color: #3e220f !important;
	font-family: 'Playfair Display', Georgia, "Times New Roman", serif !important;
	font-weight: bold !important;
	font-style: italic !important;
	line-height: 1em !important;
}
body.home .et_pb_slider .et_pb_slide_description .et_pb_slide_content a {
	color: #3e220f !important;
}

body.home .et_pb_slider .et_pb_slide_description .et_pb_slide_title a:hover,
body.home .et_pb_slider .et_pb_slide_description .et_pb_slide_content a:hover {
	color: #3e220f !important;
	opacity: 0.8;
}

/* change light text to light color */
body.home .et_pb_slider.et_pb_bg_layout_light .et_pb_slide_description .et_pb_slide_title,
body.home .et_pb_slider.et_pb_bg_layout_light .et_pb_slide_description .et_pb_slide_title a:hover,
body.home .et_pb_slider.et_pb_bg_layout_light .et_pb_slide_description .et_pb_slide_content,
body.home .et_pb_slider.et_pb_bg_layout_light .et_pb_slide_description .et_pb_slide_content a,
body.home .et_pb_slider.et_pb_bg_layout_light .et_pb_slide_description .et_pb_slide_content a:hover {
	color: #ffffe1 !important;
}

@media (min-width: 480px) {
	body.home .et_pb_slide.et-pb-active-slide {
		min-height: 380px;
	}
	body.home .et_pb_slider .et_pb_slide_description .et_pb_slide_title,
	body.home .et_pb_slider .et_pb_slide_description .et_pb_slide_content {
		font-size: 46px !important;
	}
}

@media (min-width: 767px) {
	body.home .et_pb_slide.et-pb-active-slide {
		min-height: 480px;
	}
	body.home .et_pb_slider .et_pb_slide_description .et_pb_slide_title,
	body.home .et_pb_slider .et_pb_slide_description .et_pb_slide_content {
		font-size: 56px !important;
	}
}

@media (min-width: 1024px) {
	body.home .et_pb_slide.et-pb-active-slide {
		min-height: 600px;
	}
	body.home .et_pb_slider .et_pb_slide_description .et_pb_slide_title,
	body.home .et_pb_slider .et_pb_slide_description .et_pb_slide_content {
		font-size: 64px !important;
	}
}

@media (min-width: 1200px) {
	.custom-slideshow.et_pb_row {
		padding-top: 0 !important;
		padding-bottom: 35px !important;	
	}
	body.home .et_pb_slide.et-pb-active-slide {
		min-height: 650px;
	}
	body.home .et_pb_slider .et_pb_slide_description .et_pb_slide_title,
	body.home .et_pb_slider .et_pb_slide_description .et_pb_slide_content {
		font-size: 80px !important;
		max-width: 100%;
	}
}

.custom-gallery img, 
.custom-gallery a {
	display: block;
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
}

.custom-gallery .et_pb_module.et_pb_image {
	margin-bottom: 30px !important;	
}

.custom-gallery .et_pb_module.et_pb_image + .et_pb_text.et_pb_module {
	position: absolute;
	right: 0;
	left: 0;
	background: -moz-linear-gradient(top,  rgba(62,34,15,0) 0%, rgba(62,34,15,0.65) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(62,34,15,0) 0%,rgba(62,34,15,0.65) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  rgba(62,34,15,0) 0%,rgba(62,34,15,0.65) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#003e220f', endColorstr='#a63e220f',GradientType=0 ); /* IE6-9 */
	padding: 20px;
	pointer-events: none;
	max-width: 554px;
	width: 100%;
	margin-top: -127px;
	margin-bottom: 0 !important;
	margin-left: auto;
	margin-right: auto;
	opacity: 0;
	transition: opacity 1s ease;
	transition-delay: 1.5s
}

.custom-gallery .et_pb_module.et_pb_image.et-animated + .et_pb_text.et_pb_module {
	opacity: 1;	
}

@media (min-width: 1200px) {
	.custom-gallery .et_pb_module.et_pb_image {
		margin-bottom: 35px !important;	
	}
	.custom-gallery .et_pb_module.et_pb_image + .et_pb_text.et_pb_module {
		margin-top: -132px !important;
	}
}

@media (max-width: 980px) {
	.custom-slideshow > .et_pb_column,
	.custom-gallery > .et_pb_column {
		margin-bottom: 0 !important;	
	}
}

@media (max-width: 767px) {
	.custom-gallery .et_pb_module.et_pb_image + .et_pb_text.et_pb_module {
		margin-top: -125px !important;
	}
}

.custom-gallery .et_pb_module.et_pb_image + .et_pb_text.et_pb_module h3, 
.custom-gallery .et_pb_module.et_pb_image + .et_pb_text.et_pb_module p {
	color: #ffffe1;
	text-shadow: 0 1px 4px rgba(62,34,15,0.5);
	overflow: hidden;
	word-wrap: nowrap;
	white-space: nowrap;
	text-overflow: ellipsis;
	transition: all 0.5s ease;
}

.custom-gallery .et_pb_module.et_pb_image.et-animated:hover + .et_pb_text.et_pb_module h3,
.custom-gallery .et_pb_module.et_pb_image:hover + .et_pb_text.et_pb_module p {
	color: white;
	text-shadow: 0 2px 5px rgba(62,34,15,0.75);
}

.custom-gallery.et_pb_row {
	padding-top: 0;
	padding-bottom: 0;
}

/* -- FOOTER -- */

#footer-widgets {
	padding: 6% 0 3%;
}

@media (max-width: 980px) {
	#footer-widgets {
		padding: 8% 0;
	}
}
@media (min-width: 981px) {
	.et_pb_footer_columns3 .footer-widget {
		width: 29.333% !important;
	}
	.et_pb_footer_columns3 .footer-widget {
		margin: 0 6% 3% 0 !important;
	}
	.et_pb_footer_columns3 .footer-widget:nth-child(3) {
		margin-right: 0 !important;
	}
	.et_pb_footer_columns3 .footer-widget .fwidget {
		margin-bottom: 9.574%;
	}
	.et_pb_footer_columns3 .footer-widget .fwidget:last-child {
		margin-bottom: 0 !important;
	}
}

@media (max-width: 479px) {
	#footer-widgets .footer-widget:first-child {
		margin-top: 11.5% !important;
	}
}

#footer-widgets .et_pb_widget {
	float: none;	
}

#footer-widgets .footer-widget .checklist ul li::before {
	opacity: 0.5;	
}

#footer-widgets .footer-widget .checklist ul li.checklist-li-address::before,
.checklist ul li.checklist-li-address::before {
    content: '\f041';	
}

#footer-widgets .footer-widget .checklist ul li.checklist-li-phone::before,
.checklist ul li.checklist-li-phone::before {
    content: '\f095';	
}

#footer-widgets .footer-widget .checklist ul li:last-child {
	margin-bottom: 0 !important;	
}

.footer-widget .widget_search {
	display: block;
}

.footer-widget .widget_search input#s, 
.footer-widget .widget_search input#searchsubmit {
	color: #3e220f;
	border: 0;
}

.footer-widget .widget_search input#s {
	background-color: rgba(255, 255, 255, 0.25);	
}

.footer-widget .widget_search input#s:focus {
	background-color: rgba(255, 255, 255, 0.5);	
}


.footer-widget .widget_search input#searchsubmit {
	background-color: #ffffe1;
	opacity: 0.75;
}

.footer-widget .widget_search input#searchsubmit:hover,
.footer-widget .widget_search input#searchsubmit:focus {
	opacity: 1;
}

.footer-widget h4 {
	letter-spacing: 3px;
	padding-bottom: 24px;
}

.footer-widget i.fa {
	width: 1em;
	text-align: center;
}

#footer-info {
	float: none;
	width: 100%;
	text-align: left !important;
}

.freshy_copyright {
	display: block;	
}

.freshy_copyright::after {
	content: '';
	clear: both;
	display: table;
}

.freshy_copyright a {
	display: inline-block;
	vertical-align: middle;
	width: 68px;
	height: 20px;
	background-image: url("/wp-content/uploads/Freshy_Logo_White_RGB.svg");
	background-repeat: no-repeat;
	background-size: 68px 20px;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	float: right;
	background-position: center center;
}

.freshy_copyright span {
	display: inline-block;
	color: #fff;
	font-family: 'Playfair Display';
	letter-spacing: 3px;
}

/* fix if using Impreza to remove underline */
.freshy_copyright a:hover {
	border: 0 !important;
}

/* -- END FOOTER -- */


/* -- TITLEBAR -- */

.titlebar {
	background-color: #78583e;
}

.titlebar::before {
	content: '';
	position: absolute;
	background-color: rgba(58,33,8,0.67);
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}

.titlebar h1 {
	color: #ffffe1;
	text-shadow: 0 2px 20px rgba(58,33,8,1);
	text-transform: uppercase;
	letter-spacing: 5px;
	font-weight: 400;
	font-style: normal;
}

@media only screen and (min-width: 1425px) {
	.titlebar.et_pb_section {
		padding: 107px 0;
		border-bottom: 3px solid rgb(62, 34, 15);
	}
}

/* -- END TITLEBAR -- */


/* -- RESPONSIVE -- */

/* do for stacked DIVI */
@media screen and (max-width: 980px) {
	.center-at-tablet,
	.center-at-tablet .et_pb_text_align_left,
	.center-at-tablet .et_pb_text_align_right {
		text-align: center;
	}
}
@media screen and (max-width: 599px) {
	.center-at-mobile,
	.center-at-mobile .et_pb_text_align_left,
	.center-at-mobile .et_pb_text_align_right {
		text-align: center;
	}
}

/* do for mobile */
@media screen and (max-width: 767px) {
	/* hide on mobile */
	.hide-mobile {
		display: none;
	}
}

/* do for desktop */
@media screen and (min-width: 768px) {
	/* hide on desktop */
	.hide-desktop {
		display: none;
	}
}

/* -- END RESPONSIVE -- */


/* -- GRAVITY FORM TWEAKS -- */

/* tweak select height to match other inputs */
body .gform_wrapper select {
	height: 49px;	
}

/* make select field have same visual placeholder positioning */
.gform_wrapper.gf_browser_chrome .ginput_complex .ginput_right select, 
.gform_wrapper.gf_browser_chrome .ginput_complex select {
	text-indent: 8px !important;
}

.gform_wrapper label.gfield_label {
	text-transform: uppercase;
	font-family: 'Playfair Display', Georgia, "Times New Roman", serif;
	letter-spacing: 2px;
}

/* tweak select field vertical alignment */
.gform_wrapper.gf_browser_chrome .ginput_complex .ginput_right select, 
.gform_wrapper.gf_browser_chrome .ginput_complex select {
	margin-bottom: 0 !important;
	margin-top: 0 !important;
}

body .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),
body .gform_wrapper input[type=text],
body .gform_wrapper input[type=password],
body .gform_wrapper input[type=tel], 
body .gform_wrapper input[type=email], 
body .gform_wrapper textarea.textarea, 
body .gform_wrapper select {
	box-shadow: inset 0 -3px 0 0 rgba(120, 88, 62, 0.25);
	-moz-transition: all .2s ease;
	-webkit-transition: all .2s ease;
	transition: all .2s ease;
	color: #3e220f;
}

body .gform_wrapper input[type=text]:hover,
body .gform_wrapper input[type=password]:hover,
body .gform_wrapper input[type=tel]:hover, 
body .gform_wrapper input[type=email]:hover, 
body .gform_wrapper textarea.textarea:hover, 
body .gform_wrapper select:hover {
	box-shadow: inset 0 -3px 0 0 rgba(120, 88, 62, 0.5);
}

body .gform_wrapper input[type=text]:focus,
body .gform_wrapper input[type=password]:focus,
body .gform_wrapper input[type=tel]:focus, 
body .gform_wrapper input[type=email]:focus, 
body .gform_wrapper textarea.textarea:focus, 
body .gform_wrapper select:focus {
	box-shadow: inset 0 -3px 0 0 rgba(62, 34, 15, 1);
}

/* override error borders */
.gform_wrapper li.gfield_error input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]), 
.gform_wrapper li.gfield_error textarea,
.gform_wrapper li.gfield_error select {
	border: 0 !important;
	box-shadow: inset 0 -3px 0 0 #790000;
}

/* fix for IE text area */
body .gform_wrapper textarea.textarea {
	border: 1px solid transparent !important;
	overflow: auto;
}

body .gform_wrapper .gform_footer input.button, 
body .gform_wrapper .gform_page_footer input.button, 
body div.form_saved_message div.form_saved_message_emailform form input[type=submit] {
	background-color: rgba(120, 88, 62, 0.25);
	color: rgba(120, 88, 62, 1);
	border-width: 3px;
	border-color: rgba(120, 88, 62, 1);
	letter-spacing: 2px;
	text-transform: uppercase;
	font-weight: 700;
	-moz-transition: all .2s ease;
	-webkit-transition: all .2s ease;
	transition: all .2s ease;
}

body .gform_wrapper .gform_footer input.button:hover, 
body .gform_wrapper .gform_page_footer input.button:hover, 
body div.form_saved_message div.form_saved_message_emailform form input[type=submit]:hover {
	background-color: rgba(62, 34, 15, 1);
	color: #ffffff;
	border-width: 3px;
	border-color: rgba(62, 34, 15, 1);
	letter-spacing: 2px;
}

body .gform_wrapper .gform_footer input[type=submit] {
	width: 100%;
}

/* error description per field */
.gform_wrapper li.gfield.gfield_error.gfield_contains_required div.gfield_description.validation_message::before {
	content: '\f139';
	display: inline-block;
	font: normal normal normal 14px/1 FontAwesome;
	font-size: inherit;
	text-rendering: auto;
	margin-right: 5px;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* top error message */
.gform_wrapper div.validation_error {
	border: 0 !important;
	padding: 16px 0;
	background: rgba(121, 0, 0, 0.25);
}

/* decreases line height of form input descriptions */
.gform_wrapper .gfield_description {
	line-height: 1.4em !important;
}

/* form section title wrapper */
body .gform_wrapper ul li.gfield.gsection {
	margin-top: 76px;
	border-bottom: 3px solid #78583e;
}

/* form section title */
body .gform_wrapper ul li.gfield.gsection h2.gsection_title {
	font-weight: 700;
	font-size: 26px;
}
@media (min-width: 767px) {
	body .gform_wrapper ul li.gfield.gsection h2.gsection_title {
		font-size: 32px;
	}
}

/* tweak error left input */
@media only screen and (min-width: 641px) {
	.gform_wrapper .top_label li.gfield.gfield_error.gf_left_half {
		margin-right: 0 !important;
		padding-right: 16px !important;
	}
	.gform_wrapper .gfield_price.gfield_total {
		width: calc(50% - 16px) !important;
	}
}

/* tweak error for one-third fields */
@media (max-width: 640px) {
	body .gform_wrapper .top_label li.gfield.gfield_error.gf_left_third, 
	body .gform_wrapper .top_label li.gfield.gfield_error.gf_middle_third, 
	body .gform_wrapper .top_label li.gfield.gfield_error.gf_right_third {
		width: 100%;
	}
}

.gform_wrapper .description_above .gfield_price .gfield_description {
	padding-bottom: 0;	
}

body .gform_wrapper .top_label .gfield_price div.ginput_container {
	margin-top: 0;
}

.gform_wrapper .gfield_price.gfield_total {
	background: #f7e7d6;
	padding: 20px !important;
}

.gform_wrapper .gfield_price span.ginput_total {
	color: #547524;
	font-size: 2em;
	font-weight: 700;
}

.gform_wrapper span.ginput_product_price,
.ginput_shipping_price {
	color: #78583e !important;
	font-weight: 700;
}

@media (max-width: 641px) {
	.gform_wrapper .gfield_price .ginput_container span:not(.ginput_price) {
		margin-bottom:0;
		display: inline-block;
	}
	.gform_wrapper span.ginput_quantity_label {
		margin-left: 0;
	}
}

.gform_confirmation_wrapper {
	background-color:#8dc63f;
	color: white;
	padding: 20px;
}

/* -- END GRAVITY FORM TWEAKS -- */


/* -- HERO TITLEBAR -- */

.hero-section {
	color: #ffffe1;
	text-shadow: 0 1px 15px rgba(120,88,62,0.875);
	position: relative;
}

.hero-section::before {
	background-color: rgba(120,88,62,0.75);
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

@media (min-width: 768px) {
	.hero-section .et_pb_text  {
		width: 50%;
	}
}

/* -- END HERO TITLEBAR -- */


/* helper class to make a square image into a cirlcle */
.circle > img {
	border-radius: 50%;	
}

/* -- override button styling that have an icon -- */

body #page-container .et_pb_button.et_pb_module.et_pb_custom_button_icon {
	padding: 0.5em 2em 0.5em 3em;
	font-size: 20px;
	font-weight: 500;
	line-height: 1.7em !important;
	color: #ffffe1 !important;
	background: #3e220f;
	border-width: 0px !important;
	border-radius: 0px;
	letter-spacing: 2px;
	text-transform: uppercase !important;
}
body #page-container .et_pb_button.et_pb_module.et_pb_custom_button_icon:hover {
	padding: 0.5em 2em 0.5em 3em;
	color: #ffffff !important;
	background: #78583e !important;
	border-radius: 0px;
	letter-spacing: 2px;
}
body #page-container .et_pb_button.et_pb_module.et_pb_custom_button_icon:after {
	color: #78583e;
	line-height: 1.7em;
	font-size: 20px !important;
	opacity: 1;
	margin-left: 0;
	left: 1em;
	display: inline-block;
}
body #page-container .et_pb_button.et_pb_module.et_pb_custom_button_icon:hover:after {
	left: 1em;
	margin-left: .5em;
	opacity: 0.5;
	color: #ffffe1;
	content: "\35";
}

/* -- END Button Override -- */


/* -- Custom Blurb element (used on homepage section for quote and pledge) -- */

/* blurb image column needs to be bigger, otherwise the image/icon is tiny */
.custom-blurb {
	margin-bottom: 20px;
}

.custom-blurb:last-child {
	margin-bottom: 0;
}

/* blurb image column needs to be bigger, otherwise the image/icon is tiny */
.custom-blurb.et_pb_blurb_position_left .et_pb_main_blurb_image, 
.custom-blurb.et_pb_blurb_position_right .et_pb_main_blurb_image {
	width: 25%;
}

/* custom blurb with icon */
.icon-blurb.custom-blurb.et_pb_blurb_position_left .et-pb-icon-circle, 
.icon-blurb.custom-blurb.et_pb_blurb_position_right .et-pb-icon-circle {
	padding: 0;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	font-size: 32px;
	width: 2em;
	height: 2em;
	line-height: 2em;
}

/* helps allow blurb to be full width instead of limiting the width on mobile */
.custom-blurb .et_pb_blurb_content {
	max-width: none;	
}
/* helps image fill its wrapper (up to the max width set within the element) */
.custom-blurb .et_pb_main_blurb_image img {
	width: 100%;	
}
/* gives more gap between image and text */
.custom-blurb.et_pb_blurb_position_left .et_pb_blurb_container {
	padding-left: 25px;	
}
/* gives more gap between image and text */
.custom-blurb.et_pb_blurb_position_right .et_pb_blurb_container {
	padding-right: 25px;	
}
/* lets stack and center custom blurb at this width */
@media (max-width: 599px) {
	.custom-blurb.et_pb_blurb_position_left .et_pb_main_blurb_image, 
	.custom-blurb.et_pb_blurb_position_right .et_pb_main_blurb_image,
	.custom-blurb.et_pb_blurb_position_left .et_pb_blurb_container, 
	.custom-blurb.et_pb_blurb_position_right .et_pb_blurb_container {
		text-align: center;
		width: 100%;
		padding: 0;
		display: block;
	}
	.custom-blurb .et_pb_main_blurb_image img {
		max-width: 120px !important;	
	}
	.custom-blurb .et_pb_main_blurb_image {
		margin-bottom: 15px;
	}
}

/* -- END Custom Blurb -- */


/* -- CHECKLIST -- */

#footer-widgets .footer-widget .checklist ul,
.checklist ul {
    margin: 0;
    list-style: none;
}

#footer-widgets .footer-widget .checklist ul li,
.checklist ul li {
    position: relative;
    padding-left: 30px;
    margin: 0 0 18px !important;
}

#footer-widgets .footer-widget .checklist ul li::before,
.checklist ul li::before {
    font-family: 'FontAwesome';
    content: '\f058';
    width: 20px;
    margin: 0;
    display: inline-block;
    text-align: center;
    position: absolute;
    top: 0;
    left: 0;
    color: #3e220f;
    /* set font size helps make icon sharper */
    font-size: 17px;
	border: 0;
	border-radius: 0;
}

.entry-content .checklist ul {
	padding-left: 0;	
}

.entry-content .checklist ul li {
	margin-bottom: 8px !important;
}

.entry-content .checklist ul li:last-child {
	margin-bottom: 0 !important;
}

.pluslist ul li::before {
    content: '\f055';
}

/* -- END CHECKLIST -- */

.et_pb_text.et_pb_module p:last-of-type {
	padding-bottom: 1em;	
}

.et_pb_text.et_pb_module p:last-child {
	padding-bottom: 0;	
}

/* custom full-bleed section */
.full-bleed-section.et_pb_section,
.full-bleed-section.et_pb_section > .et_pb_row.et_pb_row_fullwidth {
	padding: 0 !important;
	width: 100% !important;
	max-width: none !important;
}

/* MAP */
.full-bleed-section.et_pb_section > .et_pb_row.et_pb_row_fullwidth .et_pb_map {
	height: 300px;	
}
@media (max-width: 767px) {
	.full-bleed-section.et_pb_section > .et_pb_row.et_pb_row_fullwidth .et_pb_map {
		height: 220px;
	}
}
.gm-style .gmnoprint, 
.gm-style .gm-style-cc {
	display: none;	
}
.gm-style .gmnoprint.gm-bundled-control:not(.gm-bundled-control-on-bottom), 
.gm-style .gmnoprint.gm-bundled-control:not(.gm-bundled-control-on-bottom) > .gmnoprint {
	display: block !important;
	top: 0!important;
}

/* Force Columns to be 50% wide instead of stacking on tablet */

@media(min-width: 600px) and (max-width: 980px) {
    .force-half {
		width: 50% !important;
		display: inline-block;
	}
}

/* -- WOOCOMMERCE -- */

/* hide login prompt in sidebar if they are logged in */
body.logged-in #sidebar #text-4.et_pb_widget, 
body.logged-in .et_pb_column_2 #text-4.et_pb_widget {
	display: none;
}

a.sidebar-button {
	display: inline-block;
	border-radius: 5px;
	background-color: #78583e;
	padding: 10px 10px;
	line-height: 1.4em;
	color: #ffffe1 !important;
	transition: all 0.2s ease;
}
a.sidebar-button:hover {
	background-color: #3e220f;
	color: #ffffff !important;
}

/* hide Collection page "Sign Up" button if they are logged in */
body.logged-in #signup-view-all-button {
	display: none;
}

/* hide Collection page "View All" button if they are NOT logged in */
body:not(.logged-in) #view-all-button {
	display: none;
}

/* fix woocommerce's CSS to let divi products be 3 wide without wrapping weird */
.woocommerce ul.products li.product, 
.woocommerce-page ul.products li.product {
	width: 30.75%;
}

@media (min-width: 981px) {
	.woocommerce.archive.tax-product_cat ul.products li.last, .woocommerce-page ul.products li.last {
		margin-right: 3.8%;
	}
}

.woocommerce.woocommerce-page.archive.post-type-archive-product #content-area #left-area > nav.woocommerce-breadcrumb,
.woocommerce.woocommerce-page.archive.post-type-archive-product #content-area #left-area > nav.woocommerce-breadcrumb + .page-title {
	display: none;	
}

/* lets hide the cart div, even though the plugin is hiding the content within that div */
.woocommerce div.product form.cart, 
.woocommerce-page div.product form.cart, 
.woocommerce #content div.product form.cart, 
.woocommerce-page #content div.product form.cart {
	display: none;	
}

/* the max width was causing weird gap in cart/quote page list */
table.cart th, #main-content table.cart th,
table.cart td, #main-content table.cart td, 
table.cart tr, #main-content table.cart tr, 
#content-area .entry-content .woocommerce table tr, 
#content-area .entry-content .woocommerce table td, 
#content-area .entry-content .woocommerce table th {
	max-width: none;
}

/* make quote accept/reject buttons be smaller */
.woocommerce table.shop_table_responsive.my_account_quotes tr td.quotes-actions a.button, 
.woocommerce-page table.shop_table_responsive.my_account_quotes tr td.quotes-actions a.button {
	font-size: 14px;
	margin-left: 5px;
	padding: 0.3em 1em;
}

/* make quote accept/reject buttons be smaller on hover too, and prevent extra width on hover */
.woocommerce table.shop_table_responsive.my_account_quotes tr td.quotes-actions a.button:hover, 
.woocommerce-page table.shop_table_responsive.my_account_quotes tr td.quotes-actions a.button:hover {
	padding: 0.3em 1em;
}

/* dont do the arrow hover thing on these buttons */
.woocommerce table.shop_table_responsive.my_account_quotes tr td.quotes-actions a.button:after, 
.woocommerce-page table.shop_table_responsive.my_account_quotes tr td.quotes-actions a.button:after {
	display: none;
}

@media only screen and (max-width: 768px) {
	/* removes the lonesome colon symbol that would otherwise show on mobile before the 
	"Accept" and "View" buttons in Recent Quotes table 
	and also before the Customer Message and Admin Message in the View Quote "Additional Information" table */
	.woocommerce table.shop_table_responsive.my_account_quotes tr td.quotes-actions:before, 
	.woocommerce-page table.shop_table_responsive.my_account_quotes tr td.quotes-actions:before,
	.woocommerce table.shop_table.order_details ~ table.shop_table_responsive.customer_details:last-of-type tr td:before {
		content: attr(data-title);
	}
	/* bring back the titles before the Customer Message and Admin Message in the View Quote "Additional Information" table */
	.woocommerce table.shop_table.order_details ~ table.shop_table_responsive.customer_details:last-of-type tr th {
		display: block !important;
	}
	/* and make it left aligned instead of right */
	.woocommerce table.shop_table.order_details ~ table.shop_table_responsive.customer_details:last-of-type tr td {
		text-align: left !important;
	}
	/* add the same gray color to the admin message table cell header that we brought back above, that the table cell itself has */
	.woocommerce table.shop_table.order_details ~ table.shop_table_responsive.customer_details:last-of-type tr:nth-child(2n) th {
		background-color: rgba(0,0,0,.025);
	}
	/* and remove the excess border above the admin message */
	.woocommerce table.shop_table.order_details ~ table.shop_table_responsive.customer_details:last-of-type tr:nth-child(2n) td {
		border-top: 0;
	}
}

/* add bottom padding between description and SKU divider */
.product .summary p:last-of-type {
	padding-bottom: 1em;
}

/* hide the quantity input next to the inquiry list / quote button */
.woocommerce #left-area .product .summary form.cart .quantity {
	display: none;	
}

/* inquiry wrapper needs gap between it and product description */
.yith-ywraq-add-to-quote {
	margin-top: 0;
	margin-bottom: 0;
}

/* stop the inquiry button from floating */
.woocommerce #left-area .product .summary form.cart a.add-request-quote-button.button {
	float: none;	
}

/* remove the unwanted border on the inquiry product button */
.add-request-quote-button.button,
.add-request-quote-button.button:hover {
	border: 0 !important;	
}

/* add bg and padding to message of "Product added!" and "The product is already in quote request list!" */
.yith_ywraq_add_item_response_message,
.yith_ywraq_add_item_product_message {
	padding: 10px;
	background-color: #ffffe1;
}

/* and add bottom gap between the "added" message and the list link */
.yith_ywraq_add_item_response_message {
	margin-bottom: 10px;
}

/* and add bottom gap between the "already added" message and the list link */
.yith_ywraq_add_item_product_message {
	margin-top: 10px;
}

/* add shopping bag icon to message of "Product added!" and "The product is already in quote request list!" */
.yith_ywraq_add_item_response_message::before,
.yith_ywraq_add_item_product_message::before {
	content: '\f290';
	display: inline-block;
	font: normal normal normal 14px/1 FontAwesome;
	font-size: inherit;
	text-rendering: auto;
	margin-right: 5px;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* if this message is hidden, we need to add display none, since plugin has wrong syntax */
.yith_ywraq_add_item_product_message.hide {
	display: none;
}

/* add list icon before product description's  "view inquiry list" link */
.yith_ywraq_add_item_browse_message a::before {
	content: '\f0ca';
	display: inline-block;
	font: normal normal normal 14px/1 FontAwesome;
	font-size: inherit;
	text-rendering: auto;
	margin-right: 5px;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* item sku, product category, etc. in detailed display */
.summary .product_meta > span { margin-right: 15px;	}
.summary .product_meta > span:last-child { margin-right: 0;	}

/* increase height of textarea of request form */
#yith-ywraq-mail-form #rqa-message {
	min-height: 200px !important;	
}

/* fixes border on sidebar list hover */
.widget_ywraq_mini_list_quote .yith-ywraq-list-content {
	border: 1px solid rgba(120, 88, 62, 0.5) !important;
	background-color: #ffffe1;
	border-radius: 3px;
}

/* fixes sidebar list hover from beinger wider than the template sidebar */
.widget_ywraq_mini_list_quote .yith-ywraq-list-wrapper {
	max-width: 300px;
	width: 100%;
}

/* tweak positioning of "remove" icon on list items */
.widget_ywraq_mini_list_quote .yith-ywraq-list-content ul.yith-ywraq-list a.yith-ywraq-item-remove.remove {
	position: absolute;
	top: 5px;
	left: -5px;
}

/* change woocommerce button hover from blue */
.woocommerce input.button:hover,
.woocommerce a.button:hover, 
.woocommerce-page a.button:hover {
	color: #3e220f	
}

/* Product Inquiry Form Tab Wrapper */
#left-area #tab-inquiry_form ul {
	padding: 0;
	line-height: inherit;
	list-style-type: none;
}

/* gravity form title for inquiry form in product tab */
body #tab-inquiry_form .gform_wrapper h3.gform_title {
	font-size: 26px;
	font-weight: 700;
}

/* otherwise its a brown link on a brown bg */
.woocommerce-message a, .woocommerce-error a, .woocommerce-info a {
	color: #ffffe1;	
}

/* some headings need a gap between them and the content (usually a paragraph) above them */
/* "Quote Details" title on /view-quote/# page */
body.woocommerce-account #content-area .entry-content > .woocommerce > p:last-of-type + h2,
/* Dashboard "Recent Quotes" title */
.woocommerce-MyAccount-content .ywraq_my_account_quotes_title,
/* "Addresses" title in My Account */
.woocommerce-Address-title.title > h3 {
	margin-top: 24px;	
}

/* -- END WOOCOMMERCE -- */


/* -- FIX FOR DIVI BUTTON ICON -- */
.woocommerce a.button::after {
	font-family: "ETmodules" !important;
	font-weight: normal;
	font-style: normal;
	font-variant: normal;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	line-height: 1;
	text-transform: none;
	speak: none;
}

/* -- END DIVI BUTTON FIX -- */

/* use this class on equal height row, to align column content to middle */
.middle-row.et_pb_row.et_pb_equal_columns {
	-webkit-align-items: center;
	align-items: center;	
}