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

/* -- 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;
}

/* green */
.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: #4c6e18;
}

/* dark green */
.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: #324713;
}

/* tan */
.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: #ebc797;
}

/* 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: #4c6e18;}
.bg-secondary, a.bg-secondary {background-color: #324713;}
.bg-tertiary, a.bg-tertiary {background-color: #ebc797;}

/* -- END COLORS -- */


/* -- TYPOGRAPHY -- */

body,
body .gform_wrapper .gform_footer input.button, body .gform_wrapper .gform_footer input[type=submit], body .gform_wrapper .gform_page_footer input.button, body .gform_wrapper .gform_page_footer input[type=submit], body .gform_wrapper input[type=button], body div.form_saved_message div.form_saved_message_emailform form input[type=submit],
.pt-sans {
	font-family: pt-sans, sans-serif;
}

h1, h2, h3, h4, h5, h6,
.pt-sans-narrow {
	font-family: pt-sans-narrow, sans-serif;
}

body,
h1, h2, h3, h4, h5, h6,
#et-top-navigation {
	font-weight: 400;
}

.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 -- */


/* -- TEMPLATE -- */



/* -- END TEMPLATE -- */


/* -- HEADER -- */

/* help push down header before Divi figures out true padding */
.et_fixed_nav.et_show_nav.et_secondary_nav_enabled #page-container {
	padding-top: 213px;
}
body.et_fixed_nav.et_show_nav.et_header_style_centered #page-container {
	padding-top: 244px;
}

@media only screen and (min-width: 981px) {
	body.et_header_style_centered #main-header .container {
		display: -webkit-flex;
		display: flex;
		-webkit-flex-direction: column;
		flex-direction: column;
	}
	body.et_header_style_centered #main-header div#et-top-navigation {
		order: -1;
	}
	body.et_header_style_centered #top-menu > li > a {
		padding-top: 15px;
		padding-bottom: 15px;
	}
	body.et_header_style_centered #top-menu li .menu-item-has-children > a:first-child {
		padding-right: 30px;
	}
	body.et_header_style_centered #top-menu li .menu-item-has-children > a:first-child::after {
		right: 10px;
	}
	body.et_header_style_centered #top-menu li li {
		line-height: 1.3em;
	}
	body.et_header_style_centered #top-menu li li a {
		padding-top: 8px;
		padding-bottom: 8px;
	}
	body.et_header_style_centered.et_hide_fixed_logo #main-header.et-fixed-header .logo_container {
		height: 0;
	}
	body.et_header_style_centered.et_hide_fixed_logo #main-header.et-fixed-header .logo_container #logo {
		max-height: 0;
	}
}

@media (max-width: 980px) {
	body.et_header_style_centered #logo {
		max-height: 135px;
	}
}

#main-header:not(.et_fixed_header) {
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
}

#main-header:not(.et_fixed_header) {
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
}

body.et_header_style_centered #top-menu .menu-item-has-children > a:first-child::after {
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
body.et_header_style_centered #top-menu li li a {
	font-size: 16px;
}



@media (min-width: 981px) {
	#et-secondary-menu::after {
		content: 'Saving the World One Fork at a Time';
		font-style: italic;
		margin-left: 1em;
		font-weight: 400;
	}
}

/* helps logo to not be pixelated when scaled down */
#logo {
	-webkit-transform: none !important;
	transform: none !important;
}

/* when mobile menu is open, change hamburger icon to x icon */
#et_mobile_nav_menu .mobile_nav.opened .mobile_menu_bar::before {
	content: '\4d';
}

/* makes sub sub menu icon be right arrow instead of down arrow */
#top-menu .menu-item-has-children .menu-item-has-children > a:first-child::after, 
#et-secondary-nav .menu-item-has-children .menu-item-has-children > a:first-child::after {
	content: '5';	
}

/* if parent link of child menu is a deadlink, then make it not clickable */
#main-header #mobile_menu.et_mobile_menu .menu-item-has-children > a[href="#0"] { 
	pointer-events: none;
}

/* - mobile menu toggling elements, injected via jQuery - */

/* make menu list item be relative, to be able to position toggle within this item */
#main-header #mobile_menu.et_mobile_menu .menu-item-has-children {
	position: relative;	
}
/* the new toggle element, which is added via jQuery */
#main-header #mobile_menu.et_mobile_menu .sub-menu-toggle {
	position: absolute;
	background-color: rgba(0,0,0,0.03);
	z-index: 1;
	width: 36px;
	height: 36px;
	line-height: 36px;
	border-radius: 50%;
	top: 4px;
	right: 4px;
	cursor: pointer;
	text-align: center;
}
/* the new toggle element when popped */
#main-header #mobile_menu.et_mobile_menu .sub-menu-toggle.popped {
	background-color: rgba(0,0,0,0.1);
}
/* toggle icon */
#main-header #mobile_menu.et_mobile_menu .sub-menu-toggle::before {
	font-family: "ETmodules" !important;
	font-weight: normal;
	font-style: normal;
	font-variant: normal;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	line-height: 36px;
	font-size: 24px;
	text-transform: none;
	speak: none;
	content: '\33';
}
/* toggle icon when triggered */
#main-header #mobile_menu.et_mobile_menu .sub-menu-toggle.popped::before {
	content: '\32';
}
/* hide sub menus by default */
#main-header #mobile_menu.et_mobile_menu .sub-menu-toggle ~ ul.sub-menu {
	display: none !important;
	padding-left: 0;
}
/* show sub menu when triggered via jQuery toggle, and add slight bg color */
#main-header #mobile_menu.et_mobile_menu .sub-menu-toggle.popped ~ ul.sub-menu {
	display: block !important;
	background-color: rgba(0,0,0,0.03);
}
/* remove sub menu list item left padding, since padding will be on anchors */
#main-header #mobile_menu.et_mobile_menu li li {
	padding-left: 0;
}

/* adjust mobile menu anchors side paddings */
#main-header #mobile_menu.et_mobile_menu li a {
	padding-left: 20px;
	padding-right: 20px;
}
/* indent sub menu */
#main-header #mobile_menu.et_mobile_menu li li a {
	padding-left: 40px;
	padding-right: 20px;
}
/* indent sub sub menus further */
#main-header #mobile_menu.et_mobile_menu li li li a {
	padding-left: 60px;
	padding-right: 20px;
}
/* if mobile menu anchor has toggle, make room for it to fit next to the link */
#main-header #mobile_menu.et_mobile_menu .menu-item-has-children .sub-menu-toggle + a {
	padding-right: 44px;
}

/* - end mobile menu toggling elements - */

/* undo Divi's default styling of mobile menu links that have children */
#main-header #mobile_menu.et_mobile_menu .menu-item-has-children > a {
	background-color: transparent;
	font-weight: inherit;
}

/* make the current page's mobile menu link be different */
#main-header #mobile_menu.et_mobile_menu li.current-menu-item > a {
	font-weight: bolder;
}

/* -- END HEADER -- */


/* -- FOOTER -- */

#freshy_copyright span {
	display: inline-block;
	line-height: 1.5em;
}

/* vertical pipe divider */
#freshy_copyright span.copyright_via {
	width: 33.33333%;
	height: 1px;
	overflow: hidden;
	white-space: nowrap;
	text-indent: 100%;
	background: rgba(255,255,255,0.25);
	vertical-align: middle;
	margin: 10px auto 15px;
	display: block;
}

#freshy_copyright a.copyright_fs {
	display: block;
	vertical-align: middle;
	width: 45px;
	height: 20px;
	background-image: url("/wp-content/uploads/freshysites-logo-white.svg");
	background-repeat: no-repeat;
	background-size: 45px 20px;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	margin: 0 auto;
}

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

@media (min-width: 600px) {
	/* vertical pipe divider */
	#freshy_copyright span.copyright_via {
		width: 1px;
		height: 20px;
		margin: 0 10px;
		display: inline-block;
	}
	#freshy_copyright a.copyright_fs {
		display: inline-block;
	}
}

@media (max-width: 980px) {
	#footer-bottom .et-social-icons li:first-child {
		margin-left: 0;
	}
}

/* -- END FOOTER -- */


/* -- RESPONSIVE -- */

/* 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 -- */


/* -- CHECKLIST -- */

.checklist ul {
    margin: 0;
	padding: 0 !important;
    list-style: none;
}

.checklist ul li {
    position: relative;
    padding-left: 30px;
    margin: 0 0 6px !important;
}

.checklist-columns-2 ul li,
.checklist-columns-3 ul li,
.checklist-columns-4 ul li {
	margin-bottom: 30px !important;
}

@media (max-width: 638px) {
	.checklist-columns-2 ul li,
	.checklist-columns-3 ul li,
	.checklist-columns-4 ul li {
		margin-bottom: 20px !important;
	}
	.checklist-columns-2 ul li:last-child,
	.checklist-columns-3 ul li:last-child,
	.checklist-columns-4 ul li:last-child {
		margin-bottom: 0 !important;
	}
}

/* create columns of list items with this class */
@media (min-width: 639px) {
	.checklist-columns-2 ul::after,
	.checklist-columns-3 ul::after,
	.checklist-columns-4 ul::after {
		content: '';
		clear: both;
		display: table;
	}
	.checklist-columns-2 ul li,
	.checklist-columns-3 ul li,
	.checklist-columns-4 ul li {
		float: left;
		width: 50%;
      	padding-right: 30px;
	}
	.checklist-columns-2 ul li:nth-child(odd),
	.checklist-columns-3 ul li:nth-child(odd),
	.checklist-columns-4 ul li:nth-child(odd){
		clear: both;	
	}
	.checklist-columns-2-alt > ul,
	.checklist-columns-3-alt > ul,
	.checklist-columns-4-alt > ul {
		-moz-column-count: 2;
		-moz-column-gap: 8px;
		-webkit-column-count: 2;
		-webkit-column-gap: 8px;
		column-count: 2;
		column-gap: 20px;
	}
	.checklist-columns-2-alt ul li,
	.checklist-columns-3-alt ul li,
	.checklist-columns-4-alt ul li {
		break-inside: avoid-column;
	}
}
@media (min-width: 981px) {
	.checklist-columns-3 ul li,
	.checklist-columns-4 ul li {
		float: left;
		width: 33.333333%;
	}
	.checklist-columns-3 ul li:nth-child(odd),
	.checklist-columns-4 ul li:nth-child(odd) {
		clear: none;	
	}
	.checklist-columns-3 ul li:nth-child(3n+1),
	.checklist-columns-4 ul li:nth-child(3n+1) {
		clear: both;	
	}
	.checklist-columns-3-alt ul,
	.checklist-columns-4-alt ul {
		-moz-column-count: 3;
		-webkit-column-count: 3;
		column-count: 3;
	}
}
@media (min-width: 1199px) {
	.checklist-columns-4 ul li {
		float: left;
		width: 25%;
	}
	.checklist-columns-4 ul li:nth-child(odd) {
		clear: none;	
	}
	.checklist-columns-4 ul li:nth-child(3n+1) {
		clear: none;	
	}
	.checklist-columns-4 ul li:nth-child(4n+1) {
		clear: both;	
	}
	.checklist-columns-4-alt ul {
		-moz-column-count: 4;
		-webkit-column-count: 4;
		column-count: 4;
	}
}

.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: #32a709;
    /* set font size helps make icon sharper */
    font-size: 22px;
	font-weight: normal;
}

.pluslist ul li::before {
    content: '\f055';
}
.eventlist ul li::before {
    content: '\f274';
}
.locationlist ul li::before {
    content: '\f041';
}
.externallist ul li::before {
	content: '\f14c';	
}
.pdflist ul li::before {
    content: '\f1c1';
	color: red;
}
.userlist ul li::before {
	content: '\f2c0';
}

/* -- END CHECKLIST -- */


/* -- DIVI HACKS -- */

/* make parallax image be centered at the start */
.et_parallax_bg {
	background-position: center center;	
}

/* Divi was turning off bottom padding on last paragraphs, when it should be only if it's the last child */
p:last-of-type {
	padding-bottom: 1em;
}
p:last-child {
	padding-bottom: 0;
}

/* if there are more than one paragraphin the Fullwidth Header module, they should have padding */
.et_pb_fullwidth_header p:not(:last-child) {
	padding-bottom: 1em;
}

/* -- END DIVI HACKS -- */


/* -- TESTIMONIALS PLUGIN -- */

/* flip quote so it's an opening quote icon for grid and slider versions */
.b3_archive_testimonials_grid article .b3_quote.grid_quote::before,
.et_pb_module.et_pb_testimonial_slider .et_pb_slides_testi::before {
	-moz-transform: scale(-1,-1);
	-o-transform: scale(-1,-1);
	-webkit-transform: scale(-1,-1);
	transform: scale(-1,-1);
}

/* -- END TESTIMONIALS PLUGIN -- */


/* -- GRAVITY FORMS -- */
body .gform_wrapper {
    margin: 0;
}

body .gform_wrapper .top_label .gfield_label,
body .gform_wrapper .top_label .gfield_label .gfield_required, 
body .gform_wrapper legend.gfield_label {
	font-weight: normal;
}

body .gform_wrapper .top_label .gfield_label {
	color: #4c6e18;
}

body .gform_wrapper .gform_footer {
    padding: 0;
    margin-bottom: 0;
}

/* partially due to Surbma's restyling of the form, 
there now apepars to be excess margin above fields at certain screen sizes,
when two or more inputs have errors side by side (hence the + in the CSS),
so let's remove that top gap */
@media only screen and (max-width: 761px), (max-device-width: 1023px) and (min-device-width: 768px) {
	.gform_wrapper form .gform_body ul.gform_fields li.gfield.gfield_error+li.gfield.gfield_error {
		margin-top: 16px;
	}
}

/* we swap out form ajax spinner via PHP Function, and add spinning if its PNG */
img.gform_ajax_spinner[src$=".png"] {
	-webkit-animation: lime-spin 1.5s linear infinite;
	-moz-animation: lime-spin 1.5s linear infinite;
	animation: lime-spin 1.5s linear infinite;
	padding: 0;
	margin-left: 10px;
}
@-moz-keyframes lime-spin { 100% { -moz-transform: rotate(360deg); } }
@-webkit-keyframes lime-spin { 100% { -webkit-transform: rotate(360deg); } }
@keyframes lime-spin { 100% { -webkit-transform: rotate(360deg); transform:rotate(360deg); } }

/* fix for when Date Picker is used */
#ui-datepicker-div:empty {
	margin-top: 0;	
}

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 textarea.textarea, 
body div.form_saved_message div.form_saved_message_emailform form input[type=text] {
	background-color: #f7f0ea;
}

/* 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;
}

/* 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[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 #ebdbcd;
	-moz-transition: all .2s ease;
	-webkit-transition: all .2s ease;
	transition: all .2s ease;
}

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 #ebc797;
}

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 #4c6e18;
}

/* 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 {
	overflow: auto;
	display: block;
}

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] {
	font-weight: 700;
	-moz-transition: all .2s ease;
	-webkit-transition: all .2s ease;
	transition: all .2s ease;
}

/* error description per field */
.gform_wrapper li.gfield.gfield_error.gfield_contains_required div.gfield_description.validation_message::before {
	content: '^ ';
}

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

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

/* remove excess gap on error inputs */
body .gform_wrapper li.gfield.gfield_error.gfield_contains_required div.ginput_container, 
body .gform_wrapper li.gfield.gfield_error.gfield_contains_required label.gfield_label {
	margin-top: 0;
}

.gform_confirmation_wrapper {
	background-color: #4c6e18;
	color: white;
	padding: 20px !important;
}

#contact-form .gform_wrapper .gform_footer input[type=submit] {
	width: 100%;
}

/* move ajax spinner */
#contact-form .gform_footer {
    position: relative;
    padding: 0;
}
#contact-form .gform_footer input[type=submit] {
    margin: 0;
    width: 100%;
}
#contact-form .gform_footer img.gform_ajax_spinner {
    z-index: 1;
    position: absolute;
    top: 15px;
    right: 15px;
}

/* -- END GRAVITY FORMS -- */


/* -- HELPERS -- */

/* use the "fullwidth-section" class on a SECTION to make a "standard" SECTION truly be fullwidth 
(NOTE: the ROW module settings needs to be set to fullwidth, and the SECTION needs THIS class) */
.fullwidth-section.et_pb_section {
	padding: 0;
}
.fullwidth-section.et_pb_section > .et_pb_row {
	width: 100% !important;
	max-width: 100% !important;
	padding: 0;
}

/* use the "fullwidth-row" class on a SECTION to make a "full width" ROW truly be fullwidth 
(NOTE: the ROW module settings needs to be set to fullwidth, with no gutters, and the SECTION needs THIS class,
and unlike the class above, THIS class will auto-add padding to the columns) */
.fullwidth-row.et_pb_section {
	padding: 0;	
}
.fullwidth-row.et_pb_section .et_pb_row {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}
/* helps add padding to each column */
.fullwidth-row.et_pb_section .et_pb_row > .et_pb_column {
	padding: 50px 10%;
}
@media (min-width: 767px) {
	.fullwidth-row.et_pb_section .et_pb_row > .et_pb_column {
		padding: 80px 6%;
	}
}
/* for some reason Divi removes bottom margin from modules if in column with no gutters, 
so we need to add margins back */
.fullwidth-row.et_pb_section .et_pb_row.et_pb_gutters1 > .et_pb_column .et_pb_module:not(:last-child) {
	margin-bottom: 30px;
}
@media (min-width: 981px) {
	.fullwidth-row.et_pb_section .et_pb_row.et_pb_gutters1 > .et_pb_column_2_3 .et_pb_module:not(:last-child) {
		margin-bottom: 4.242%;
	}
	.fullwidth-row.et_pb_section .et_pb_row.et_pb_gutters1 > .et_pb_column_1_3 .et_pb_module:not(:last-child) {
		margin-bottom: 9.27%;
	}	
}
/* reduce gap between toggles */
.et_pb_section .et_pb_row .et_pb_column .et_pb_module.et_pb_toggle:not(:last-child) {
	margin-bottom: 3px;
}
.et_pb_toggle_title::before {
    font-size: 21px;
	text-shadow: 0 1px 15px rgba(0, 0, 0, 0.5);
}

/* -- END HELPERS -- */

@media (min-width: 981px) and (max-width: 1405px) {
	.big-text-box.et_pb_module.et_pb_text h2 {
		font-size: 36px;
	}
}

/* -- BLURBS -- */

.et_pb_section .et_pb_row.blurb-row {
	overflow: visible;
}

.et_pb_section .et_pb_row.blurb-row .et_pb_column {
	display: -webkit-flex;
	display: flex;	
}

.et_pb_section .et_pb_row.blurb-row .et_pb_column .et_pb_blurb {
	flex-grow: 1;
	padding: 30px;
	-webkit-box-shadow: 0px 1px 6px 0px rgba(0, 0, 0, 0.06);
	-moz-box-shadow: 0px 1px 6px 0px rgba(0, 0, 0, 0.06);
	box-shadow: 0px 1px 6px 0px rgba(0, 0, 0, 0.06);
	transition: all 0.4s ease-in-out;
	background-color: #ffffff;
	position: relative;
}

@media (max-width: 980px) {
	.et_pb_section .et_pb_row.blurb-row .et_pb_column .et_pb_blurb {
		margin-bottom: 30px !important;
	}
}

.et_pb_section .et_pb_row.blurb-row .et_pb_column:hover {
	z-index: 10;
}

.et_pb_section .et_pb_row.blurb-row .et_pb_column .et_pb_blurb:hover {
	-webkit-box-shadow: 0 15px 20px rgba(0,0,0,0.12);
	-moz-box-shadow: 0 15px 20px rgba(0,0,0,0.12);
	box-shadow: 0 15px 20px rgba(0,0,0,0.12);
	-webkit-transform: translate(0, -4px);
	transform: translate(0, -4px);
	background-color: rgba(255,255,255,0.95);
	z-index: 1;
}

.et_pb_blurb .et-pb-icon {
	-webkit-transform: scale(0.9);
	transform: scale(0.9);
	opacity: 0.3;
	-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}

.et_pb_blurb:not(:hover) .et-pb-icon {
	color: #ebc797 !important;
}

.et_pb_blurb:hover .et-pb-icon {
	-webkit-transform: scale(1.0);
	transform: scale(1.0);
	opacity: 1;
}

.et_pb_blurb:hover h4 {
	color: #ebc797;
}

.et_pb_main_blurb_image {
	margin-bottom: 0.5em !important;
}

.et_pb_blurb .et-pb-icon {
	font-size: 56px;
}

.et_pb_blurb h4 {
	padding-bottom: 0.5em !important;
}

/* if blurb has icon on top, and is left aligned, then also left align the image/icon too */
.et_pb_blurb.et_pb_text_align_left.et_pb_blurb_position_top .et_pb_main_blurb_image {
	text-align: left;	
}

/* helps allow blurb to be full width instead of limiting the width on mobile */
.et_pb_blurb_content {
	max-width: none;	
}


/* -- END BLURBS -- */


/* -- Titlebar mask animation -- */

body.woocommerce.archive #main-content > .container #left-area > .woocommerce-products-header,
body.woocommerce.archive #main-content > .container #left-area > .woocommerce-products-header > * {
	position: relative;
}

body.woocommerce.archive #main-content > .container #left-area > .woocommerce-products-header > *,
#titlebar > .et_pb_row {
	z-index: 3;
}

body.woocommerce.archive #main-content > .container #left-area > .woocommerce-products-header::after,
#titlebar::after {
	content: '';
	position: absolute;
	height: 100%;
	width: 100%;
	left: 0;
	top: 0;
	-ms-mask: url(/wp-content/uploads/mask.png);
	-ms-mask-size: 3000% 100%;
	-ms-animation: mask-playzero 12s steps(29) infinite;
	-webkit-mask: url(/wp-content/uploads/mask.png);
	-webkit-mask-size: 3000% 100%;
	-webkit-animation: mask-playzero 12s steps(29) infinite;
	mask: url(/wp-content/uploads/mask.png);
	mask-size: 3000% 100%;
	animation: mask-playzero 12s steps(29) infinite;
	-ms-animation-delay: 2s;
	-webkit-animation-delay: 2s;
    animation-delay: 2s;
	/* background: url(/wp-content/uploads/titlebar-contact.jpg) no-repeat center 66%; */
	background-color: rgba(77, 111, 25, 0.85);
	background-size: cover;
	z-index: 1;
}
body.woocommerce.archive #main-content > .container #left-area > .woocommerce-products-header::after {
	background-color: rgba(255,255,255,0.25);
}

@-webkit-keyframes mask-playzero {
	0% {
		-webkit-mask-position: 0 0;
		-ms-mask-position: 0 0;
		-moz-mask-position: 0 0;
		-o-mask-position: 0 0;
		mask-position: 0 0;
	}
	12.5% {
		-webkit-mask-position: 100% 0;
		-ms-mask-position: 100% 0;
		-moz-mask-position: 100% 0;
		-o-mask-position: 100% 0;
		mask-position: 100% 0;
	}
	50% {
		-webkit-mask-position: 100% 0;
		-ms-mask-position: 100% 0;
		-moz-mask-position: 100% 0;
		-o-mask-position: 100% 0;
		mask-position: 100% 0;
	}
	62.5% {
		-webkit-mask-position: 0 0;
		-ms-mask-position: 0 0;
		-moz-mask-position: 0 0;
		-o-mask-position: 0 0;
		mask-position: 0 0;
	}
}

@keyframes mask-playzero {
	0% {
		-webkit-mask-position: 0 0;
		-ms-mask-position: 0 0;
		-moz-mask-position: 0 0;
		-o-mask-position: 0 0;
		mask-position: 0 0;
	}
	12.5% {
		-webkit-mask-position: 100% 0;
		-ms-mask-position: 100% 0;
		-moz-mask-position: 100% 0;
		-o-mask-position: 100% 0;
		mask-position: 100% 0;
	}
	50% {
		-webkit-mask-position: 100% 0;
		-ms-mask-position: 100% 0;
		-moz-mask-position: 100% 0;
		-o-mask-position: 100% 0;
		mask-position: 100% 0;
	}
	62.5% {
		-webkit-mask-position: 0 0;
		-ms-mask-position: 0 0;
		-moz-mask-position: 0 0;
		-o-mask-position: 0 0;
		mask-position: 0 0;
	}
}
body.woocommerce.archive #main-content > .container #left-area > .woocommerce-products-header,
#titlebar {
	overflow: hidden;
}

#titlebar::before {
	content: '';
	position: absolute;
	height: 100%;
	width: 100%;
	left: 0;
	top: 0;
	background-color: rgba(0,0,0,0.5);
	z-index: 1;
}

#titlebar h1 {
	position: relative;
	padding: 0 !important;
	display: table;
	line-height: 1em;
	text-shadow: 0 1px 15px rgba(0, 0, 0, 1);
}

#titlebar h1::before {
	position: absolute;
	height: 100%;
	background-color: #ebc797;
	content: '';
	top: 0;
	bottom: 0;
	right: 110%;
	width: 4000px;
	-webkit-animation: titlebar 10s infinite;
	-moz-animation: titlebar 10s infinite;
	animation: titlebar 10s infinite;
}

@-webkit-keyframes titlebar {
	0% {
		background-color: #ebc797;
		opacity: 1;
	}
	50% {
		background-color: #ffffff;
		opacity: 0.25;
	}
}

@-moz-keyframes titlebar {
	0% {
		background-color: #ebc797;
		opacity: 1;
	}
	50% {
		background-color: #ffffff;
		opacity: 0.25;
	}
}

@keyframes titlebar {
	0% {
		background-color: #ebc797;
		opacity: 1;
	}
	50% {
		background-color: #ffffff;
		opacity: 0.25;
	}
}

/* -- END Titlebar mask animation -- */

/* -- Complex Grid -- */

/* text module at to left of 1/3, with image below it. Then 2 stacked images in 2/3. Then 1 image in 3/3. */
@media (min-width: 981px) {
	.complex-grid .et_pb_image .et_pb_image_wrap {
		display: -webkit-flex;
		display: flex;
		position: relative;
		max-width: 100%;
		height: 100%;
	}
	.complex-grid .et_pb_image img {
		display: block;
		object-fit: cover;
		position: absolute;
		height: 100%;
		width: 100%;
	}
	.complex-grid .et_pb_column_1_3.et_pb_column_0 .et_pb_image img {
		object-fit: unset;
		position: relative;
	}
	.complex-grid .et_pb_column_1_3.et_pb_column_1 .et_pb_image {
		height: 50%;
	}
	.complex-grid .et_pb_column_1_3.et_pb_column_2 .et_pb_image {
		height: 100%;
	}
	.complex-grid .et_pb_module {
		border: 5px solid white;
	}
}
@media (max-width: 980px) {
	.complex-grid .et_pb_module {
		margin-bottom: 10px !important;
	}
}

/* -- END Complex Grid -- */

/* Going Green section and image */
@media (min-width: 981px) {
	#go-green > .et_pb_row > .et_pb_column_1_3:first-child {
		display: -webkit-flex;
		display: flex;
		-webkit-flex-direction: column;
		flex-direction: column;
	}
	#go-green > .et_pb_row > .et_pb_column_1_3:first-child > .et_pb_space {
		-webkit-flex-grow: 1;
		flex-grow: 1;
	}
}

/* Vert align to middle, the section with the circle image on left */
.home-circle-vert-mid-section.et_pb_section_parallax::before {
	background-color: #222222;
	content: '';
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
	display: block;
	position: absolute;
	z-index: 1;
	opacity: 0.7;
}
.home-circle-vert-mid-section .et_pb_equal_columns {
	-webkit-align-items: center;
	align-items: center;
}
.home-circle-vert-mid-section .et_pb_image  {
	max-width: 360px;
}
.home-circle-vert-mid-section .et_pb_module.et_pb_text {
	max-width: 480px;
}
@media (min-width: 981px) {
	.home-circle-vert-mid-section .et_pb_image  {
		max-width: 360px;
		margin-right: 0;
	}
}
@media (max-width: 980px) {
	.home-circle-vert-mid-section .et_pb_image {
		max-width: 240px;
	}
	.home-circle-vert-mid-section .et_pb_module.et_pb_text {
		text-align: center;
		margin-left: auto;
		margin-right: auto;
	}
}

/* -- Products page -- */

.product-grid-vert-mid-section .et_pb_equal_columns .et_pb_column,
.product-grid-vert-mid-section .et_pb_equal_columns .et_pb_column > .et_pb_module {
	-webkit-align-items: center;
	align-items: center;
	display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    direction: ltr;
	width: 100%;
}
.product-grid-vert-mid-section .et_pb_equal_columns .et_pb_column > *,
.product-grid-vert-mid-section .et_pb_equal_columns .et_pb_column > .et_pb_module > * {
	width: 100%;
}
.product-grid-vert-mid-section .et_pb_equal_columns .et_pb_column > .et_pb_module {
	height: 100%;
}
.product-grid-vert-mid-section .et_pb_equal_columns .et_pb_column .et_pb_text_inner h2:only-child {
	padding: 0;
}

/* -- WOOCOMMERCE -- */

body.woocommerce.archive #main-content > .container,
body.single-product #main-content > .container {
	max-width: 100%;
	width: 100%;
	padding-top: 0;
}
body.woocommerce.archive #main-content > .container #left-area > .fs-wc-breadcrumb-wrapper,
body.single-product #main-content > .container #left-area > .fs-wc-breadcrumb-wrapper {
	background: #ebc797;
	width: 100%;
	padding-top: 20px;
	padding-bottom: 20px;
	margin-bottom: 40px;
	position: relative;
}
body.woocommerce.archive #main-content > .container #left-area > .woocommerce-products-header {
	background: #ebc797;
	width: 100%;
	padding-top: 20px;
	padding-bottom: 20px;
	margin-bottom: 40px;
}
body.woocommerce #main-content > .container #left-area > .fs-wc-breadcrumb-wrapper > nav.woocommerce-breadcrumb > a:first-child {
	padding: 8px;
    background: #4c6e18;
    display: inline-block;
    line-height: 1em;
    border-radius: 3px;
	color: #fff !important;
}
body.woocommerce.archive #main-content > .container #left-area > .woocommerce-products-header .term-description {
	color: rgba(0,0,0,0.5);
}
body.woocommerce.archive #main-content > .container #left-area > .fs-wc-breadcrumb-wrapper {
	margin-bottom: 0;
	display: none;
}
/* bring back the breadcrumb for the tagged woo archive */
body.woocommerce.archive #main-content > .container #left-area {
	display: -webkit-flex;
	display: flex;
	width: 100%;
	-webkit-flex-direction: column;
	flex-direction: column;
}
body.woocommerce.archive #main-content > .container #left-area > .woocommerce-products-header {
	-webkit-order: -1;
	order: -1;
	margin-bottom: 0;
}
body.woocommerce.archive #main-content > .container #left-area > .fs-wc-breadcrumb-wrapper {
	background-color: rgba(235, 199, 151, 0.25);
	display: block;
	margin-bottom: 40px;
}

/* add BG to Woo titlebar strip */
body.woocommerce.archive #main-content > .container #left-area > .woocommerce-products-header::before,
body.woocommerce.archive #main-content > .container #left-area > .fs-wc-breadcrumb-wrapper::before,
body.single-product #main-content > .container #left-area > .fs-wc-breadcrumb-wrapper::before {
	content: '';
    background-image: url(/wp-content/uploads/titlebar-contact.jpg);
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	position: absolute;
	background-attachment: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	opacity: 0.5;
	mix-blend-mode: soft-light;
}
/* mix blend mode doesnt work on IE or Edge, so we change the opacity on those */
body.ie.woocommerce.archive #main-content > .container #left-area > .woocommerce-products-header::before,
body.edge.woocommerce.archive #main-content > .container #left-area > .woocommerce-products-header::before,
body.ie.woocommerce.archive #main-content > .container #left-area > .fs-wc-breadcrumb-wrapper::before,
body.edge.woocommerce.archive #main-content > .container #left-area > .fs-wc-breadcrumb-wrapper::before,
body.ie.single-product #main-content > .container #left-area > .fs-wc-breadcrumb-wrapper::before, 
body.edge.single-product #main-content > .container #left-area > .fs-wc-breadcrumb-wrapper::before {
	opacity: 0.1;
}
/* change the BG on Palm items and archives */
body.woocommerce.archive.product_parent_cat_palm #main-content > .container #left-area > .woocommerce-products-header::before,
body.woocommerce.archive.product_parent_cat_palm #main-content > .container #left-area > .fs-wc-breadcrumb-wrapper::before,
body.single-product.product_parent_cat_palm #main-content > .container #left-area > .fs-wc-breadcrumb-wrapper::before {
    background-image: url(/wp-content/uploads/titlebar-palm.jpg);
}
body.woocommerce.archive #main-content > .container #left-area > .woocommerce-products-header .woocommerce-products-header__title.page-title {
	padding-bottom: 0;
}


body.woocommerce.archive #main-content > .container #left-area > .woocommerce-products-header > *,
body.woocommerce.archive #main-content > .container #left-area > .fs-wc-breadcrumb-wrapper > nav.woocommerce-breadcrumb,
body.single-product #main-content > .container #left-area > .fs-wc-breadcrumb-wrapper > nav.woocommerce-breadcrumb,
body.woocommerce.archive #main-content > .container #left-area > .woocommerce-notices-wrapper,
body.single-product #main-content > .container #left-area > .woocommerce-notices-wrapper,
body.woocommerce.archive #main-content > .container #left-area > div.product.type-product,
body.single-product #main-content > .container #left-area > div.product.type-product,
body.woocommerce.archive #main-content > .container #left-area > .woocommerce-result-count,
body.woocommerce.archive #main-content > .container #left-area > ul.products,
body.woocommerce.archive #main-content > .container #left-area > .woocommerce-info {
	max-width: 1700px;
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	float: none;
}
body.woocommerce.archive #main-content > .container #left-area > .fs-wc-breadcrumb-wrapper > nav.woocommerce-breadcrumb,
body.single-product #main-content > .container #left-area > .fs-wc-breadcrumb-wrapper > nav.woocommerce-breadcrumb {
	margin-top: 0;
	margin-bottom: 0;
	line-height: 1em;
	position: relative;
}
body.woocommerce.archive #main-content > .container #left-area > .fs-wc-breadcrumb-wrapper > nav.woocommerce-breadcrumb a,
body.single-product #main-content > .container #left-area > .fs-wc-breadcrumb-wrapper > nav.woocommerce-breadcrumb a {
	color: #4c6e18;
}

@media (max-width: 640px) {
	body.woocommerce.archive #main-content > .container #left-area > .fs-wc-breadcrumb-wrapper > nav.woocommerce-breadcrumb,
	body.single-product #main-content > .container #left-area > .fs-wc-breadcrumb-wrapper > nav.woocommerce-breadcrumb {
		font-size: 0.75em;
	}
}

.product_meta {
    padding-top: 12px;
    border-top: 3px solid #ebdbcd;
    color: #707070;
    font-size: 16px;
	margin-top: 1em;
}
.product_meta .sku_wrapper,
.product_meta .fs-meta-casepack {
    padding: 8px;
    background: #ebc797;
    display: inline-block;
    line-height: 1em;
    border-radius: 3px;
	color: #324713;
}
.product_meta .fs-meta-casepack {
	background: rgba(235, 199, 151, 0.33);
}
.product_meta > span:not(:last-child) {
	margin-right: 8px;
}
.product_meta > span:not(.sku_wrapper) a {
	background: rgba(235, 199, 151, 0.33);
    border-radius: 3px;
    padding: 2px 5px;
    line-height: 1em;
    font-size: 0.875em;
	transition: background 0.2s ease;
}
.product_meta > span:not(.sku_wrapper) a:hover {
	background: rgba(235, 199, 151, 0.66);
}

/* atually lets hide the Category and Tag meta */
body.single-product .product_meta > .posted_in,
body.single-product .product_meta > .tagged_as {
	display: none;
}

/* tweak gaps in thumbnail gallery on products */
body.single-product #main-content > .container #left-area div.product div.images ol.flex-control-thumbs {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

body.single-product #main-content > .container #left-area div.product div.images ol.flex-control-thumbs li {
    width: 23%;
    margin-right: 2.66666%;
    margin-bottom: 2.66666%;
	-webkit-align-self: center;
	align-self: center;
}
body.single-product #main-content > .container #left-area div.product div.images ol.flex-control-thumbs li:nth-of-type(4n) {
	margin-right: 0;
}
body.single-product #main-content > .container #left-area div.product div.images ol.flex-control-thumbs {
	padding-bottom: 2.66666%;
	margin-top: 2.66666%;
	line-height: 1em;
}

/* cart is hidden, so we remove its excess margins */
body.single-product #main-content > .container #left-area div.product form.cart {
    margin: 0 !important;
}

/* make product image column not as wide */
@media (min-width: 769px) {
	body.single-product #main-content > .container #left-area div.product div.images {
		width: 33%;
	}
	body.single-product #main-content > .container #left-area div.product div.summary {
		width: 64%
	}
	body.single-product #main-content > .container #left-area div.product div.summary .product_title,
	body.single-product #main-content > .container #left-area div.product div.summary .woocommerce-product-details__short-description {
		max-width: 640px;
	}
}


/* Variation area */

body.single-product #main-content > .container #left-area div.product form.cart.variations_form {
	border-top: 3px solid #ebdbcd;
	margin-top: 1em !important;
}
body.single-product #main-content > .container #left-area div.product form.cart.variations_form .variations {
	max-width: 640px;
	margin: 1em 0 0;
}
body.single-product #main-content > .container #left-area div.product form.cart.variations_form table.variations tr {
	padding: 0 !important;
}
body.single-product #main-content > .container #left-area div.product form.cart.variations_form table.variations tr td {
	padding-bottom: 0 !important;
	vertical-align: middle;
}

body.single-product #main-content > .container #left-area div.product form.cart.variations_form table.variations td select {
	font-size: 16px;
	background: #ebc797;
	color: #324713 !important;
	padding: 8px;
}

body.single-product #main-content > .container #left-area div.product table.variations ~ .single_variation_wrap .single_variation.woocommerce-variation .woocommerce-variation-description > p,
body.single-product #main-content > .container #left-area div.product table.variations ~ .single_variation_wrap .single_variation.woocommerce-variation .woocommerce-variation-description > ol,
body.single-product #main-content > .container #left-area div.product table.variations ~ .single_variation_wrap .single_variation.woocommerce-variation .woocommerce-variation-description > ul {
	background: rgba(235, 199, 151, 0.33);
	border-radius: 3px;
	padding: 0 20px 20px 20px;
	line-height: 1em;
	font-size: 0.875em;
	transition: background 0.2s ease;
	margin: 0;
}

body.single-product #main-content > .container #left-area div.product table.variations ~ .single_variation_wrap .single_variation.woocommerce-variation .woocommerce-variation-description > *:first-child {
	padding-top: 20px;
	border-radius: 3px 3px 0 0;
	margin-top: 1em;
}
body.single-product #main-content > .container #left-area div.product table.variations ~ .single_variation_wrap .single_variation.woocommerce-variation .woocommerce-variation-description > *:last-child {
	border-radius: 0 0 3px 3px;
}
body.single-product #main-content > .container #left-area div.product table.variations ~ .single_variation_wrap .single_variation.woocommerce-variation .woocommerce-variation-description > *:only-child {
	border-radius: 3px;
}
body.single-product #main-content > .container #left-area div.product table.variations ~ .single_variation_wrap .single_variation.woocommerce-variation .woocommerce-variation-description:empty {
	display: none;
}
body.single-product .single_variation.woocommerce-variation .woocommerce-variation-description > p:last-child {
	margin-bottom: 0;
}

body.woocommerce #content-area div.product .woocommerce-tabs ul.tabs, 
body.woocommerce div.product .woocommerce-tabs ul.tabs {
	background: rgba(76,110,24,0.1);
}

.woocommerce table.shop_attributes tr:nth-child(even) td, 
.woocommerce table.shop_attributes tr:nth-child(even) th {
    background: rgba(255,243,229,0.5)
}
.woocommerce table.shop_attributes td,
.woocommerce table.shop_attributes th {
    border-bottom-color: #ebdbcd
}

/* title of product in grid */
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-size: 22px;
}
@media (max-width: 980px) {
	.woocommerce ul.products li.product .woocommerce-loop-product__title {
		font-size: 16px;
	}
}