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

.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: #32a709;
}

.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: #daf238;
}

.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: #e4debe;
}

/* 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: #32a709;}
.bg-secondary, a.bg-secondary {background-color: #daf238;}
.bg-tertiary, a.bg-tertiary {background-color: #e4debe;}

/* -- END COLORS -- */


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


/* -- HEADER -- */

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

/* - 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);
	margin: 10px auto 15px;
	display: block;
}

#freshy_copyright a.copyright_fs {
	display: block;
	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;
		vertical-align: middle;
	}
	#freshy_copyright a.copyright_fs {
		display: inline-block;
		vertical-align: middle;
	}
}

@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: #98012e;
    /* 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';
}
.checksquarelist ul li::before {
	content: '\f046';
}

/* -- 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 paragraph in the Fullwidth Header module, they should have padding */
.et_pb_fullwidth_header p:not(:last-child) {
	padding-bottom: 1em;
}

/* if blurb has the custom Blurb Click class, then the blurb link likely wraps the entire blurb,
so let's set the text of the link back to the desired color */
.et_pb_blurb.blurb-click > a {
	color: inherit;
}

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

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

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

/* -- 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.et_pb_row_fullwidth {
	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.et_pb_row_fullwidth {
	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_row_fullwidth > .et_pb_column {
	padding: 50px 10%;
}
@media (min-width: 767px) {
	.fullwidth-row.et_pb_section .et_pb_row.et_pb_row_fullwidth > .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_row_fullwidth.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_row_fullwidth.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_row_fullwidth.et_pb_gutters1 > .et_pb_column_1_3 .et_pb_module:not(:last-child) {
		margin-bottom: 9.27%;
	}	
}
/* reduce gap between toggles if in fullwidth row */
.fullwidth-row.et_pb_section .et_pb_row.et_pb_row_fullwidth.et_pb_gutters1 > .et_pb_column .et_pb_module.et_pb_toggle:not(:last-child) {
	margin-bottom: 3px;
}

/* -- END HELPERS -- */

/* -------------------- BEGIN DEVELOPER CSS -------------------- */

/* ---------- Text ---------- */
/* -- Changes the link color on a dark layout on hover -- */
.et_pb_bg_layout_dark a:hover{
	color: #fff;
}

/* ---------- Main Header Menu ---------- */

/* -- makes the logo not so blurry */
@media (min-width: 1025px) {
	#logo {
		image-rendering: -moz-crisp-edges; /* Firefox */
		image-rendering:   -o-crisp-edges; /* Opera */
		image-rendering: -webkit-optimize-contrast; /* Webkit (non-standard naming) */
		image-rendering: crisp-edges;
		-ms-interpolation-mode: nearest-neighbor; /* IE (non-standard property) */
	}
}

/* -- makes current menu item bold -- */
#top-menu li.current-menu-item>a {
	font-weight: bold;
}

/* -- adds a dropshadow to the fixed header -- */
@media (min-width: 981px) {
#page-container #main-header.et-fixed-header {
    -webkit-box-shadow: 0 0 7px rgba(0,0,0,.1)!important;
    -moz-box-shadow: 0 0 7px rgba(0,0,0,.1)!important;
    box-shadow: 0 0 7px rgba(0,0,0,.1)!important;
	}
}

/* Setting the breakpoint of the mobile menu */
@media only screen and (max-width: 1100px) and (min-width: 981px) {
	#top-menu-nav, #top-menu, #et-secondary-nav {
		display: none;
	}
	#et_top_search {
		display: none;
	}
	#et_mobile_nav_menu {
		display: block;
	}
	#et-secondary-nav li {
		font-size: 8px;
	}
}


/* -- Tools - Menu Buttons -- */
#et-secondary-menu > ul > li.tools-btn  > a {
	background-color: #231f20;
	color: #fff;
	padding: 10px 20px 10px 15px;
	margin-top: -10px;
	/*margin-bottom: 10px;*/
	text-align: center;
}

#et-secondary-menu .tools-btn.menu-item-has-children>a:first-child:after {
	display: none;
}

#et-secondary-menu > ul > li.tools-btn  > a:before {
	font-family: 'FontAwesome';
    content: '\f019';
    width: 14px;
    margin: 0;
    display: inline-block;
    text-align: center;
    position: relative;
    top: 2px;
    left: -2px;
	margin-right: 10px;
    color: #fff;
    font-size: 14px;
    font-weight: normal;
	-webkit-transition: all .4s ease-in-out;
    -moz-transition: all .4s ease-in-out;
    transition: all .4s ease-in-out;
} 

#et-secondary-menu > ul > li.tools-btn  > a:hover {
	background-color: #77787b;
	opacity: 1;
}
.et-fixed-header #et-secondary-menu > ul > li.tools-btn  > a {
	color: #fff !important;	
}

#et-secondary-nav li.menu-item-760, #et-secondary-nav li.menu-item-765, #et-secondary-nav li.menu-item-783 {
	margin-right: 1px;
	float: right;
}

/*Tools Button - mobile */
.et_mobile_menu li.tools-btn a {
	background-color: #231f20 !important;
	color: #fff !important;
	text-align: center;
	border-color: #fff;
}
.et_mobile_menu li.tools-btn a:before {
	font-family: 'FontAwesome';
    content: '\f019';
    width: 14px;
    margin: 0;
    display: inline-block;
    text-align: center;
    position: relative;
    top: 0;
    left: 0;
	margin-right: 10px;
    color: #fff;
    font-size: 14px;
    font-weight: normal;
}
.et_mobile_menu li.tools-btn a:hover {
	background-color: #77787b;
	opacity: 1;
}

/* -- Mobile Menu -- */
#page-container #main-header .et_mobile_menu {
    background-color: #ffffff;
}

#main-header #mobile_menu.et_mobile_menu li a {
	text-transform: uppercase;
}

#page-container .et_mobile_menu li a {
    padding: 7px 5%;
}

/* -- Social Icons Text -- */
@media (min-width: 768px) {
	#top-header .socicon-youtube span {
		display: inline-block;
		margin-left: 5px;
	}
	#top-header .socicon-youtube:before {
		vertical-align: bottom;
	}
	#footer-bottom .socicon-youtube span {
		position: absolute !important;
		bottom: 2px;
		font-size: 14px !important;
		display: inline-block;
		margin-left: 5px;
	}
	#footer-bottom .et-social-icons {
		margin-right: 45px;
	}
}

@media (max-width: 980px) {
	#footer-bottom .socicon-youtube span {
		position: absolute !important;
		bottom: 2px;
		font-size: 14px !important;
		display: inline-block;
		margin-left: 5px;
	}
	#footer-bottom .et-social-icons {
		margin-right: 45px;
	}
}

@media (max-width: 980px) {
	#page-container #logo {
		max-width: 75%;
		max-height: 85%;
	}
}

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

/* -- Bottom of Footer -- */
#footer-bottom {
	border-top: 1px solid #77787b;
}



/*makes the footer bottom fullwidth*/
@media (min-width: 981px) {
#footer-bottom .container, #main-footer .container {
	margin-right: 2.773%;
	margin-left: 2.773%;
	width:94.454%!important;
	max-width: 94.454%;
	}
}

/* -- Footer Menu Tweaks -- */
#footer-widgets .footer-widget li:before{
	display:none;
}
#main-footer .footer-widget h4 {
	padding-bottom: 5px!important;
}
#footer-widgets .footer-widget li {
	padding-left: 0px;
}
.et_pb_widget ul li {
	margin-bottom: 0px;
}
#footer-widgets .footer-widget li a, #footer-widgets .footer-widget a {
	color:#fff!important;
	-webkit-transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
}
#footer-widgets .footer-widget li a:hover, #footer-widgets .footer-widget hover {
	opacity: 0.5;
	-webkit-transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
}

/* ---------- Home Slider ---------- */
#home-slider .et_pb_container {
	width: 95%;
    max-width: 95%;
}

#home-slider .tparrows.tp-leftarrow:before {
    content: '\e824';
}

#home-slider .tparrows.tp-rightarrow:before {
    content: '\e825';
}

#home-slider .tparrows:before {
    font-family: "revicons";
    font-size: 15px;
    color: #fff;
    display: block;
    line-height: 40px;
    text-align: center;
}

/* ---------- Interior Headers ---------- */
@media (min-width: 981px) {
#interior-header {
	padding-top: 12%!important;
	padding-bottom: 8%;
	}
}

@media (min-width: 981px) {
#interior-header h1 {
	font-size: 50px;
	}
}

@media (max-width: 980px) and (min-width: 768px) {
#interior-header h1 {
	font-size: 40px;
	}
}

@media (max-width: 767px) {
#interior-header h1 {
	font-size: 32px;
	}
}

/* ---------- Project Portfolio ---------- */
@media (min-width: 981px) {
#project-header {
	padding-bottom: 3%;
	}
}

.et_pb_portfolio_item a.more-link {
	display: block !important;
	min-width: 130px !important;
}

/* -- controls the height of the portfolio grid -- */
@media (min-width: 1201px) {
	.et_pb_portfolio_grid .et_pb_grid_item {
		min-height: 370px;
	}
}

@media (max-width: 1200px) and (min-width: 768px) {
	.et_pb_portfolio_grid .et_pb_grid_item {
		min-height: 405px;
	}
}

#portfolio-grid .et_pb_portfolio_item h2 {
	margin-bottom: 10px;
}

@media (max-width: 1200px) and (min-width: 768px) {
	.et_pb_column #portfolio-grid .et_pb_grid_item:nth-of-type(2n+1) {
		clear: both !important;
	}
	.et_pb_column #portfolio-grid .et_pb_grid_item:nth-child(n) {
		width: 47.25%!important;
		margin-right: 5.5%!important;
	}
	.et_pb_column #portfolio-grid .et_pb_grid_item:nth-child(2n) {
		margin-right: 0!important;
		clear: none;
	}
}

/* ---------- Gradients ---------- */
/* Dark Grey (for revslider only) -- Bottom to Top */
.bottom-dark-gradient-rev::before {
    pointer-events: none;
    display: inline-block;
    content: '';
    position: absolute;
    width: 100%;
    bottom: 0;
    left: 0;
    height: 100%;
    z-index: 10;
	background: linear-gradient(180deg,rgba(35,31,32,0) 75%,#231f20 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#231f20', endColorstr='#231f20', GradientType=0 );
}

/* Dark Grey -- Bottom to Top */
.bottom-dark-gradient::before {
    pointer-events: none;
    display: inline-block;
    content: '';
    position: absolute;
    width: 100%;
    bottom: 0;
    left: 0;
    height: 100%;
    z-index: 1;
	background: linear-gradient(180deg,rgba(35,31,32,0) 75%,#231f20 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#231f20', endColorstr='#231f20', GradientType=0 );
}

/* White -- Bottom to Top */
.bottom-white-gradient::before {
    pointer-events: none;
    display: inline-block;
    content: '';
    position: absolute;
    width: 100%;
    bottom: 0;
    left: 0;
    height: 100%;
    z-index: 1;
	background: linear-gradient(180deg,rgba(255,255,255,0) 75%,#ffffff 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#231f20', endColorstr='#231f20', GradientType=0 );
}

/* White Gradient -- Left to Right on desktop and Top to Bottom on mobile */
@media (min-width: 981px) {
.left-light-gradient::before {
    pointer-events: none;
    display: inline-block;
    content: '';
    position: absolute;
    width: 100%;
    bottom: 0;
    left: 0;
    height: 100%;
    z-index: 1;
	background: rgba(255,255,255,1);
	background: -moz-linear-gradient(left, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 65%, rgba(255,255,255,0) 100%);
	background: -webkit-gradient(left top, right top, color-stop(0%, rgba(255,255,255,1)), color-stop(65%, rgba(255,255,255,0)), color-stop(100%, rgba(255,255,255,0)));
	background: -webkit-linear-gradient(left, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 65%, rgba(255,255,255,0) 100%);
	background: -o-linear-gradient(left, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 65%, rgba(255,255,255,0) 100%);
	background: -ms-linear-gradient(left, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 65%, rgba(255,255,255,0) 100%);
	background: linear-gradient(to right, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 65%, rgba(255,255,255,0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ffffff', GradientType=1 );
	}
}

@media (max-width: 980px) and (min-width: 768px) {
.left-light-gradient::before {
    pointer-events: none;
    display: inline-block;
    content: '';
    position: absolute;
    width: 100%;
    bottom: 0;
    left: 0;
    height: 100%;
    z-index: 1;
	background: rgba(255,255,255,1);
	background: -moz-linear-gradient(left, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 95%, rgba(255,255,255,0) 100%);
	background: -webkit-gradient(left top, right top, color-stop(0%, rgba(255,255,255,1)), color-stop(95%, rgba(255,255,255,0)), color-stop(100%, rgba(255,255,255,0)));
	background: -webkit-linear-gradient(left, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 95%, rgba(255,255,255,0) 100%);
	background: -o-linear-gradient(left, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 95%, rgba(255,255,255,0) 100%);
	background: -ms-linear-gradient(left, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 95%, rgba(255,255,255,0) 100%);
	background: linear-gradient(to right, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 95%, rgba(255,255,255,0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ffffff', GradientType=1 );
	}
}

@media (max-width: 767px) {
.left-light-gradient::before {
    pointer-events: none;
    display: inline-block;
    content: '';
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    height: 100%;
    z-index: 1;
	background: rgba(255,255,255,1);
	background: -moz-linear-gradient(top, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 95%, rgba(255,255,255,0) 100%);
	background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(255,255,255,1)), color-stop(95%, rgba(255,255,255,0)), color-stop(100%, rgba(255,255,255,0)));
	background: -webkit-linear-gradient(top, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 95%, rgba(255,255,255,0) 100%);
	background: -o-linear-gradient(top, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 95%, rgba(255,255,255,0) 100%);
	background: -ms-linear-gradient(top, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 95%, rgba(255,255,255,0) 100%);
	background: linear-gradient(to bottom, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 95%, rgba(255,255,255,0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ffffff', GradientType=0 );
	}
}

/* White Gradient -- Right to Left on tablet and bottom to top on mobile */
@media (max-width: 980px) and (min-width: 768px) {
.right-light-gradient::before {
    pointer-events: none;
    display: inline-block;
    content: '';
    position: absolute;
    width: 100%;
    bottom: 0;
    left: 0;
    height: 100%;
    z-index: 1;
background: rgba(255,255,255,0);
background: -moz-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,0.75) 25%, rgba(255,255,255,1) 100%);
background: -webkit-gradient(left top, right top, color-stop(0%, rgba(255,255,255,0)), color-stop(25%, rgba(255,255,255,0.75)), color-stop(100%, rgba(255,255,255,1)));
background: -webkit-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,0.75) 25%, rgba(255,255,255,1) 100%);
background: -o-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,0.75) 25%, rgba(255,255,255,1) 100%);
background: -ms-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,0.75) 25%, rgba(255,255,255,1) 100%);
background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.75) 25%, rgba(255,255,255,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ffffff', GradientType=1 );
	}
}

@media (max-width: 767px) {
.right-light-gradient::before {
    pointer-events: none;
    display: inline-block;
    content: '';
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    height: 100%;
    z-index: 1;
	background: rgba(255,255,255,1);
	background: -moz-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.65) 5%, rgba(255,255,255,1) 100%);
	background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(255,255,255,1)), color-stop(5%, rgba(255,255,255,0.65)), color-stop(100%, rgba(255,255,255,1)));
	background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.65) 5%, rgba(255,255,255,1) 100%);
	background: -o-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.65) 5%, rgba(255,255,255,1) 100%);
	background: -ms-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.65) 5%, rgba(255,255,255,1) 100%);
	background: linear-gradient(to bottom, rgba(255,255,255,0) 0%, rgba(255,255,255,0.65) 5%, rgba(255,255,255,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ffffff', GradientType=0 );
	}
}

/* ---------- Buttons ---------- */
#page-container .et_pb_button {
	min-width: 224px;
	text-align: center;
}

/*this class forces buttons to align to the center on mobile*/
@media (max-width: 980px) {
.mobile-button-center .et_pb_button_module_wrapper, .mobile-button-center h5 {
    text-align: center;
	}
}

/* -- Home Concrete Buttons -- */
@media (max-width: 980px) {
	#home-buttons .et_pb_column:not(:last-child) {
		margin-bottom: 10px;
	}
}

/* ---------- Logo BG ---------- */
/*for sections*/
.et_pb_section.bg-logo-texture::before {
    content: '';
    position: absolute;
    background-image: url(/wp-content/uploads/deltaprecast-bg-icon.png);
    background-repeat: no-repeat;
    background-size: 15%;
    background-position: left bottom;
    opacity: 0.1;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

/*for columns*/
.et_pb_column.bg-logo-texture::before {
    content: '';
    position: absolute;
    background-image: url(/wp-content/uploads/deltaprecast-bg-icon.png);
    background-repeat: no-repeat;
    background-position: left bottom;
    opacity: 0.12;
    left: -5%;
    bottom: -5%;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

@media (min-width: 981px) {
.et_pb_column.bg-logo-texture::before {
	background-size: auto;
	}
}

@media (max-width: 980px) {
.et_pb_column.bg-logo-texture::before {
	background-size: auto;
	}
}

/* ---------- Align Middle Row ---------- */
.align-middle .et_pb_row.et_pb_equal_columns {
	-webkit-align-items: center;
	align-items: center;	
}

.align-middle h4 {
	padding-bottom: 0px;
}

/* ---------- CTA Bar ---------- */
/* -- use this class on a skinny cta bar - remember to set the row padding to 0px though -- */
.bar-padding h5 {
	padding-bottom: 0px;
}

@media (min-width: 981px) {
.bar-padding {
	padding: 40px 0px !important;
	}
}

@media (max-width: 980px) and (min-width: 768px) {
.bar-padding {
	padding: 35px 0px !important;
	}
}

@media (max-width: 767px) {
.bar-padding {
	padding: 30px 0px !important;
	}
}

/* ---------- Dividers ---------- */

.divider-image {
	display: flex;
	flex-direction: row;
	align-items: center;
}

.divider-image {
	max-width: 600px;
	margin: auto;
}

.divider-image:before {
	content: '';
	display: inline-block;
	height: 3px;
	background-color: #98012e;
	width: 100%;
	margin-right: 10px;
}

.divider-image:after {
	content: '';
	display: inline-block;
	height: 3px;
	background-color: #98012e;
	width: 100%;
	margin-left: 10px;
}

.divider-image span img {
	width: 33px!important;
	max-width: unset;
}

/* ---------- Divi Overlays ---------- */
@media (min-width: 981px) {
	.overlay-hugeinc.open, .overlay-door.open {
		overflow-x: hidden;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	/*centers the overlay content*/
	.center-overlay.et_pb_section {
		padding: 15% 5%;
	}
}

/* ---------- Columns gutter Fix ---------- */
@media (max-width: 980px) {
#page-container .et_pb_column_2_5, #page-container .et_pb_column_1_5, #page-container .et_pb_column_4_5 {
	width: 100%!important;
	}
}

/* ---------- Menu Gallery and Shop Overlay ---------- */
.et_overlay:before {
	display: none;
}
.et_overlay {
	background: rgba(255,255,255,.75);
}
/*.et_pb_gallery .et_overlay:before, .et_pb_module.et_pb_has_overlay .et_overlay:before, .article.et_pb_has_overlay:before, .et_portfolio_image .et_overlay:before {
    position: absolute;
    margin: -25px 0 0 -25px;
    content: "";
    display: block;
    width: 50px;
    height: 100%;
    background-image: url(/wp-content/uploads/deltaprecast-icon-logo.png);
    background-size: 50px;
    background-repeat: no-repeat;
    -webkit-transition: all 0.4s;
    -moz-transition: all 0.4s;
    transition: all 0.4s;
}

.et_pb_gallery .et_overlay, .et_pb_image .et_overlay {
display: none;
}*/

/* ---------- Tabs ---------- */
#fullwidth-tabs,
#fullwidth-tabs > .et_pb_row_fullwidth,
#fullwidth-tabs .et_pb_tabs .et_pb_all_tabs .et_pb_tab {
	padding: 0;	
}

/* content area added via Divi Library shortcode, of each tab */
#fullwidth-tabs > .et_pb_row.et_pb_row_fullwidth {
	width: 100% !important;
	max-width: 100% !important;
}

#fullwidth-tabs .et_pb_tabs .et_pb_all_tabs {
	background-color: #ffffff;
}

/* adjust paddings of content area of each tab */
@media (min-width: 981px) {
	#fullwidth-tabs .et_pb_tabs .et_pb_all_tabs .et_pb_tab > .et_pb_section {
		padding: 2% 0;
	}
}
@media (max-width: 980px) {
	#fullwidth-tabs .et_pb_tabs .et_pb_all_tabs .et_pb_tab > .et_pb_section {
		padding: 20px 0;
	}
	#fullwidth-tabs .et_pb_tabs .et_pb_all_tabs .et_pb_tab > .et_pb_section .et_pb_column:not(:last-child) {
		margin-bottom: 20px;
	}
}

/* remove unwanted borders and adjust postitioning */
#fullwidth-tabs .et_pb_tabs {
	border: 0;	
}
#fullwidth-tabs ul.et_pb_tabs_controls::after {
	top: 0;
	border-top: 0;
}

/* override sizing and flow of tab triggers, to make them fill screen at all times */
#fullwidth-tabs .et_pb_tabs .et_pb_tabs_controls {
	display: flex;
	width: 100%;
	flex-wrap: wrap;
}
#fullwidth-tabs .et_pb_tabs .et_pb_tabs_controls > li:not(:last-child) {
    border-right: 3px solid #fff;
}
#fullwidth-tabs .et_pb_tabs .et_pb_tabs_controls > li {
	border-top: 3px solid #fff !important;
}
#fullwidth-tabs .et_pb_tabs .et_pb_tabs_controls > li {
	border: 0;
	display: flex;
	flex: 1;
	align-items: center;
	justify-content: center;
	height: auto;
	border-bottom-right-radius: 5px;
	border-bottom-left-radius: 5px;
}

/* adjust sizing of toggle links */
#fullwidth-tabs .et_pb_tabs .et_pb_tabs_controls > li > a {
	display: block;
	height: auto;
	text-align: center;
	padding: 5px 8px;
	font-size: 12px;
}
@media (min-width: 480px) {
	#fullwidth-tabs .et_pb_tabs .et_pb_tabs_controls > li > a {
		padding: 8px 10px;
		font-size: 13px;
	}
}
@media (min-width: 768px) {
	#fullwidth-tabs .et_pb_tabs .et_pb_tabs_controls > li > a {
		padding: 10px 15px;
		font-size: 14px;
	}
}
@media (min-width: 981px) {
	#fullwidth-tabs .et_pb_tabs .et_pb_tabs_controls > li > a {
		padding: 12px 20px;
		font-size: 15px;
	}
}
@media (min-width: 1200px) {
	#fullwidth-tabs .et_pb_tabs .et_pb_tabs_controls > li > a {
		padding: 15px 25px;
		font-size: 16px;
	}
}
@media (min-width: 1400px) {
	#fullwidth-tabs .et_pb_tabs .et_pb_tabs_controls > li > a {
		padding: 20px 30px;
		font-size: 18px;
	}
}

/* override the 2em line height that the Divi Library module keeps setting to the toggles */
#fullwidth-tabs .et_pb_tabs .et_pb_tabs_controls li, 
#fullwidth-tabs .et_pb_tabs .et_pb_tabs_controls li a {
	line-height: 1.3em !important;	
}
/* override the 2em line height that the Divi Library module keeps setting to the whole module */
#fullwidth-tabs .et_pb_tabs .et_pb_all_tabs .et_pb_tab,
#fullwidth-tabs .et_pb_tabs .et_pb_all_tabs .et_pb_tab p {
	line-height: 1.5em !important;	
}

/* vertically center columns that are in the tab content */
#fullwidth-tabs .et_pb_tab .et_pb_row.et_pb_equal_columns {
	align-items: center;	
}

/* ----- Tab Text bg ----- */
.tab-text .et_pb_blurb_description, .tab-text.et_pb_text {
	padding: 4%;
    background-color: rgba(0,0,0,0.25);
}

/* ---------- Logo Carousel ---------- */
#logo-carousel .slick-track {
	display: flex;
	align-items: center;
	justify-content: center;
}
#logo-carousel .slick-slide .slide-image img {
	margin-left: auto;
	margin-right: auto;
}

/* -- Custom Arrow Buttons for ALL SLIDERS -- */
#logo-carousel .slick-prev:before, #logo-carousel .slick-next:before, #slider-arrow .et-pb-arrow-prev:before, #slider-arrow .et-pb-arrow-next:before, #slider-arrow .tparrows:before, .mfp-arrow:after  {
    font-family: "FontAwesome" !important;
    font-size: 80px;
    opacity: 1;
}

/* Revolution slider */
#slider-arrow .tparrows {
	top: 58%!important;
}

/* Testimonial Slider Arrows */
#slider-arrow.et_pb_testimonial_slider .et-pb-arrow-prev:before, #slider-arrow.et_pb_testimonial_slider .et-pb-arrow-next:before {
	font-size: 30px;
}

#logo-carousel .slick-prev, #logo-carousel .slick-next {
	z-index: 1;
}

#logo-carousel .slick-next {
	right: 0;
}

#logo-carousel .slick-next::before, #slider-arrow .et-pb-arrow-next:before, #slider-arrow .tparrows.tp-rightarrow:before, .mfp-arrow-right:after {
    content: "\f054" !important;
}

#logo-carousel .slick-prev::before, #slider-arrow .et-pb-arrow-prev:before, #slider-arrow .tparrows.tp-leftarrow:before, .mfp-arrow-left:after {
    content: "\f053" !important
}

@media (min-width: 981px) {
	#logo-carousel .slick-prev, #logo-carousel .slick-next {
		width: 58px;
		height: 80px;
	}
	#logo-carousel .slick-next {
		right: -25px;
	}
	/*revolution slider*/
	#slider-arrow .tparrows:before {
		font-size: 60px!important;
	}
}

@media (max-width: 980px) and (min-width: 768px) {
	#logo-carousel .slick-prev {
		left: -45px;
	}
	#logo-carousel .slick-next {
		right: -45px;
	}
	#logo-carousel .slick-prev:before, #logo-carousel .slick-next:before, #slider-arrow .et-pb-arrow-prev:before, #slider-arrow .et-pb-arrow-next:before {
		font-size: 60px;
	}
	#logo-carousel .slick-prev, #logo-carousel .slick-next {
		width: 58px;
		height: 80px;
	}
	/*revolution slider*/
	#slider-arrow .tparrows:before {
		font-size: 50px!important;
	}
}

@media (max-width: 767px) {
	#logo-carousel .slick-prev {
		left: -25px;
	}
	#logo-carousel .slick-next {
		right: -25px;
	}
	#logo-carousel .slick-prev:before, #logo-carousel .slick-next:before, #slider-arrow .et-pb-arrow-prev:before, #slider-arrow .et-pb-arrow-next:before {
		font-size: 40px;
	}
	#logo-carousel .slick-prev, #logo-carousel .slick-next {
		width: 29px;
		height: 40px;
	}
	/*revolution slider*/
	#slider-arrow .tparrows:before {
		font-size: 30px!important;
	}
}

/* ---------- Featured Projects -- Portfolio ---------- */

.dp-post-excerpt #location {
	display: none;
}

/* -- 'Read More' Link -- */
.et_pb_portfolio_item a.more-link {
	font-family: 'Dosis',Helvetica,Arial,Lucida,sans-serif;
	margin-top: 15px;
	display: inline-block;
	padding: .3em 1em!important;
    font-size: 16px;
    border: 2px solid;
    background: #98012e;
    border-color: #98012e;
    border-radius: 0px;
    font-weight: 300;
    font-style: normal;
    text-transform: uppercase;
    text-decoration: none;
	text-align: center;
	letter-spacing: 2px;
    color: #fff;
    min-width: 160px;
    line-height: 1.7em!important;
    -webkit-transition: all .2s;
    -moz-transition: all .2s;
    transition: all .2s;
}

.et_pb_portfolio_item a.more-link:hover {
	background: #77787b;
    border-color: #77787b;
}

/* ---------- Sidebar ---------- */
/* -- Adds icons before lists -- */
#custom-post-type-recent-posts-2 ul, #custom-post-type-recent-posts-3 ul, #recent-posts-2 ul, #recent-posts-3 ul {
	padding-left: 25px !important;
}

#custom-post-type-recent-posts-2 ul li, #custom-post-type-recent-posts-3 ul li, #recent-posts-2 ul li, #recent-posts-3 ul li {
	position: relative;
	padding-bottom: 5px;
}

#custom-post-type-recent-posts-2 ul li a::before, #custom-post-type-recent-posts-3 ul li a::before, #recent-posts-2 ul li a::before, #recent-posts-3 ul li a::before {
	font-family: 'FontAwesome';
    width: 20px;
    display: inline-block;
    text-align: center;
    position: absolute;
    color: #98012e;
	left: -25px;
	top: 0;
    /* set font size helps make icon sharper */
    font-size: 16px;
	font-weight: normal;
}

/* -- Recent Projects - Menu Icon -- */
#custom-post-type-recent-posts-2 ul li a::before, #custom-post-type-recent-posts-3 ul li a::before {
	content: '\f08e';
	margin-top: 2px;
}


/* -- Recent Posts - Menu Icon -- */
#recent-posts-2 ul li a::before, #recent-posts-3 ul li a::before {
    content: '\f1ea';
	margin-top: 1px;
}

/* ---------- Blog ---------- */
.et_pb_post {
	padding-bottom: 15px;
	margin-bottom: 15px;
}

.et_pb_post h2 a {
	font-size: 18px!important;
	line-height: 1.3em;
}

/* -- 'Read More' Link -- */
.et_pb_posts a.more-link {
	font-family: 'Dosis',Helvetica,Arial,Lucida,sans-serif;
	margin-top: 15px;
	display: inline-block;
	padding: .3em 1em!important;
    font-size: 16px;
    border: 2px solid;
    background: #98012e;
    border-color: #98012e;
    border-radius: 0px;
    font-weight: 300;
    font-style: normal;
    text-transform: uppercase;
    text-decoration: none;
	text-align: center;
	letter-spacing: 2px;
    color: #fff;
    min-width: 175px;
    line-height: 1.7em!important;
    -webkit-transition: all .2s;
    -moz-transition: all .2s;
    transition: all .2s;
}

.et_pb_posts a.more-link:hover {
	background: #77787b;
    border-color: #77787b;
}

/* ---------- Woocommerce ---------- */

/* -- Shop Page -- */
.woocommerce-page ul.products li.product.post-1177, .woocommerce-page .woocommerce-result-count, .woocommerce-cart .button.wc-backward {
	display: none!important;
}

#page-container .woocommerce-message a {
	color: #ffffff!important;
}

/* -- Cart (for dark layout) -- */
#page-container .et_pb_bg_layout_dark .woocommerce table.shop_table, #page-container .et_pb_bg_layout_dark .woocommerce table.shop_table td, #page-container .et_pb_bg_layout_dark .woocommerce table.shop_table tbody th, #page-container .et_pb_bg_layout_dark .woocommerce table.shop_table tfoot td, #page-container .et_pb_bg_layout_dark .woocommerce table.shop_table tfoot th {
	border-color: rgba(255,255,255,.5);
}

#page-container .et_pb_bg_layout_dark .cart-subtotal td {
	border-top: 1px solid rgba(255,255,255,.5);
}

/* -- Checkout (for dark layout) -- */
#page-container .et_pb_bg_layout_dark #add_payment_method #payment ul.payment_methods li, #page-container .et_pb_bg_layout_dark .woocommerce-cart #payment ul.payment_methods li, #page-container .et_pb_bg_layout_dark .woocommerce-checkout #payment ul.payment_methods li {
	color: #231f20;
}

/* -- Conditional Field -- */
div.cwcf-review-notice, .cwcfp-update-notice {
	display: none!important;
}

/* --Terms and Conditions -- */
.wc-terms-and-conditions, .et_pb_bg_layout_dark .wc-terms-and-conditions a:hover {
	color: #515151;
}

/* -- Woocommerce Tabs -- */
#page-container .woocommerce-tabs ul.tabs li a {
	font-size: 14px;
}

/* -- Product Sidebar -- */
span.product-title {
	display: inline-block;
}

.woocommerce ul.product_list_widget li img {
	float: left;
	width: 75px;
	margin-left: 0px;
	margin-right: 5px;
}

.woocommerce ul.product_list_widget li:nth-child(2) {
	display: none!important;
}

/* -- Single Products on 'Tools & Support' Page -- */
.tools .woocommerce ul.products li.product {
	width: 100%;
	margin-bottom: 15px;
}

.tools .woocommerce ul.products {
	margin-bottom: 0px;
}

/* -- Products -- */
/* Product Title */
@media (min-width: 981px) {
	h1.product_title {
		font-size: 30px;
	}
}

@media (max-width: 980px) and (min-width: 768px) {
	h1.product_title {
		font-size: 28px;
	}
}

@media (max-width: 767px) {
	h1.product_title {
		font-size: 24px;
	}
}

/* -- Woocommerce Buttons -- */
.woocommerce .button {
	text-align: center;
	font-family: 'Dosis',Helvetica,Arial,Lucida,sans-serif;
	color: #fff !important;
}

.single-product.woocommerce-page #container {
  width:100%
}

/* -- Make A Payment - Product -- */
.single-product .postid-1177 .woocommerce-page div.product div.summary, .postid-1177 .summary {
	width: 100%!important;
	float: left;
}

.postid-1177 .woocommerce-breadcrumb, .postid-1177 .woocommerce-product-gallery, .postid-1177 .price, .postid-1177 .gform_footer {
	display: none;
}

.postid-1177 #left-area ul {
	padding-left: 0px;
	padding-bottom: 0px;
}

.postid-1177.woocommerce div.product form.cart, .postid-1177 .gform_wrapper {
	margin-top: 0px!important;
}

/* -- My Account Page -- */
/*reduces the width of the menu on desktop*/
@media (min-width: 981px) {
.woocommerce-account .woocommerce-MyAccount-navigation {
	width: 20% !important;
	}
}

/*removes the bullets from the menu*/
body.woocommerce-account ul {
	list-style-type: none;
}

/*adds border to the menu items*/
body.woocommerce-account .woocommerce-MyAccount-navigation ul li:first-child {
	border-top: 1px solid #efefef;
}

body.woocommerce-account .woocommerce-MyAccount-navigation ul li {
	border-bottom: 1px solid #efefef;
}

@media (min-width: 981px) {
body.woocommerce-account .woocommerce-MyAccount-navigation ul li {
	padding: 0.5em 0;
	}
}

@media (max-width: 980px) {
body.woocommerce-account .woocommerce-MyAccount-navigation ul li {
	padding: 0.25em 0;
	}
}

/*changes style of the menu text*/
body.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
	text-transform: uppercase;
	font-family: 'Dosis',Helvetica,Arial,Lucida,sans-serif;
	color: #77787b;
}

/*body.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover {
	color: #98012e!important;
}

.woocommerce-MyAccount-navigation-link.is-active a {
	color: #98012e !important;
}*/

/* changes style of the menu text (dark layout)*/
body.woocommerce-account .et_pb_bg_layout_dark .woocommerce-MyAccount-navigation ul li a:hover {
	color: #ffffff!important;
}

#page-container .et_pb_bg_layout_dark .woocommerce-MyAccount-navigation-link.is-active a {
	color: #ffffff !important;
}

/*adds icons to menu Items */
body.woocommerce-account .woocommerce-MyAccount-navigation ul li a:before{
	font-family: "FontAwesome";
	font-size: 20px;
	float: right;
	display: block;
    width: 26px;
    text-align: center;
}
/* Dashboard Tabs */
body.woocommerce-account ul li.woocommerce-MyAccount-navigation-link--dashboard a:before {
	content: "\f0e4";
}
/*My Projects*/
body.woocommerce-account ul li.woocommerce-MyAccount-navigation-link--my_projects a:before {
	content: "\f15c";
}
/*DPApps Suite*/
body.woocommerce-account ul li.woocommerce-MyAccount-navigation-link--dpapps_suite a:before {
	content: "\f08e";
}
/*Upload Information*/
body.woocommerce-account ul li.woocommerce-MyAccount-navigation-link--upload_information a:before {
	content: "\f093";
}
/*Ask the Engineer*/
body.woocommerce-account ul li.woocommerce-MyAccount-navigation-link--ask_the_engineer a:before {
	content: "\f040";
}
/*Payment Methods*/
body.woocommerce-account ul li.woocommerce-MyAccount-navigation-link--payment-methods a:before {
	content: "\f283";
}
/*Account Details*/
body.woocommerce-account ul li.woocommerce-MyAccount-navigation-link--edit-account a:before {
	content: "\f007";
}
/*Logout*/
body.woocommerce-account ul li.woocommerce-MyAccount-navigation-link--customer-logout a:before {
	content: "\f08b";
}
/*Subscriptions*/
body.woocommerce-account ul li.woocommerce-MyAccount-navigation-link--subscriptions a:before {
	content: "\f291";
}

/* My Dashboard */
.dashboard-projects-wrapper,
.dashboard-subscriptions-wrapper,
.dashboard-tickets-wrapper {
	padding-top: 1em;
}

.dashboard-projects-wrapper table.shop_table,
.dashboard-subscriptions-wrapper table.shop_table,
.dashboard-tickets-wrapper table.shop_table {
	font-size: 0.666em;
	line-height: 1.5em;
}

.dashboard-projects-wrapper table.shop_table tbody tr th,
.dashboard-subscriptions-wrapper table.shop_table tbody tr th,
.dashboard-tickets-wrapper table.shop_table tbody tr th {
	font-family: 'Dosis',Helvetica,Arial,Lucida,sans-serif;
	color: #77787b;
	text-transform: uppercase;
}

.dashboard-projects-wrapper table.shop_table tbody tr:nth-child(even),
.dashboard-subscriptions-wrapper table.shop_table tr:nth-child(even),
.dashboard-tickets-wrapper table.shop_table  tr:nth-child(even) {
	background-color: rgba(255,255,255,0.1);
}

.ticket-status-label-badge,
.project-status-label-badge {
	display: inline-block;
	padding: .2em .6em .3em;
	font-weight: 700;
	line-height: 1;
	color: #fff;
	border-radius: .25em;
	background: rgba(101, 101, 101, 0.5);
}
.ticket-status-label-badge.ticket-status-new {
	background-color: #1e73be !important;
}

.client-project-status-bar.project-status-bar-in-progress .project-status-bar-inner,
.project-status-label-badge.project-status-in-progress,
.ticket-status-label-badge.ticket-status-in-progress {
	background-color: #a01497 !important;
}
.client-project-status-bar.project-status-bar-complete .project-status-bar-inner,
.project-status-label-badge.project-status-complete {
	background-color: #81d742 !important;
}
.client-project-status-bar.project-status-bar-on-hold .project-status-bar-inner,
.project-status-label-badge.project-status-on-hold,
.ticket-status-label-badge.ticket-status-on-hold {
	background-color: red !important;
}

.ticket-status-label-badge.ticket-status-closed {
	background-color: #dd3333 !important;
}

span.project-status-label-badge.project-status-information-needed {
    background-color: yellow;
    color: #353535;
}
span.project-status-label-badge.project-status-checking {
    background: #005aff;
}

/* wrapper of +/- text */
.plus-minus {
	white-space: nowrap;
}

/* Progress Bar */

.client-project-status-bar {
	height: 30px;
	border-radius: 15px;
	background-color: rgba(255,255,255,0.25);
	width: 100%;
	position: relative;
	overflow: hidden;
}

.client-project-status-bar .project-status-bar-inner {
	background-color: white;
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	border-radius: 15px 0 0 15px;
}

.client-project-status-bar.step-1 .project-status-bar-inner {
	width: calc(100% / 7 * 1);
}
.client-project-status-bar.step-2 .project-status-bar-inner {
	width: calc(100% / 7 * 2);
}
.client-project-status-bar.step-3 .project-status-bar-inner {
	width: calc(100% / 7 * 3);
}
.client-project-status-bar.step-4 .project-status-bar-inner {
	width: calc(100% / 7 * 4);
}
.client-project-status-bar.step-5 .project-status-bar-inner {
	width: calc(100% / 7 * 5);
}
.client-project-status-bar.step-6 .project-status-bar-inner {
	width: calc(100% / 7 * 6);
}
.client-project-status-bar.step-7 .project-status-bar-inner {
	width: 100%;
	border-radius: 15px;
}

/*My Subscription*/
#page-container .et_pb_bg_layout_dark .woocommerce .woocommerce-customer-details address {
	border-color: rgba(255,255,255,.5);
}

/* ---------- Archive Pages ---------- */
/* PBE removes the top padding for some reason - here we add it back */
.product-template-default #main-content .container, .archive #main-content .container, .woocommerce-page #main-content .container, .error404 #main-content .container {
	padding-top: 169px;
}

/* Client Projects */

/* Client Projects Sidebar */
.client-project-template-side-col .project-template-side-acf-wrapper.date-icon {
	padding-left: 20px;
}

.client-project-template-side-col .project-template-side-acf-wrapper h2.acf_label {
	font-size: 18px;
	color: #77787b;
}

.client-project-template-side-col .project-template-side-acf-wrapper .project-template-side-acf-value {
	color: white;
}

.date-icon h2, .person-icon h2, .leader-icon h2, .status-icon h2, .number-icon h2 {
	position: relative;
}

.date-icon h2::before {
	font-family: 'FontAwesome';
    width: 20px;
    display: inline-block;
    text-align: center;
    position: absolute;
    color: #98012e;
	left: -25px;
    font-size: 16px;
	font-weight: normal;
	content: '\f274';
}

.person-icon h2::before {
	font-family: 'FontAwesome';
    width: 20px;
    display: inline-block;
    text-align: center;
    position: absolute;
    color: #98012e;
	left: -25px;
    font-size: 16px;
	font-weight: normal;
	content: '\f007';
}

.leader-icon h2::before {
	font-family: 'FontAwesome';
    width: 20px;
    display: inline-block;
    text-align: center;
    position: absolute;
    color: #98012e;
	left: -25px;
    font-size: 16px;
	font-weight: normal;
	content: '\f075';
}

.status-icon h2::before {
	font-family: 'FontAwesome';
    width: 20px;
    display: inline-block;
    text-align: center;
    position: absolute;
    color: #98012e;
	left: -25px;
    font-size: 16px;
	font-weight: normal;
	content: '\f201';
}

.number-icon h2::before {
	font-family: 'FontAwesome';
    width: 20px;
    display: inline-block;
    text-align: center;
    position: absolute;
    color: #98012e;
	left: -25px;
    font-size: 16px;
	font-weight: normal;
	content: '\f292';
}

.no-title-padding h3 {
	padding-bottom: 0px;
}

/* ---------- Awesome Support ---------- */
#page-container .wpas-btn {
	text-align: center;
	color: rgba(255,255,255,0.99);
	padding: .3em 1em!important;
	font-size: 22px;
    background: #98012e;
    border-color: #98012e;
	border: 2px solid!important;
    border-radius: 0px;
    font-weight: normal;
    font-style: normal;
    text-transform: uppercase;
    text-decoration: none;
	    line-height: 1.7em!important;
    -webkit-transition: all .2s;
    -moz-transition: all .2s;
    transition: all .2s;
	font-family: 'Dosis',Helvetica,Arial,Lucida,sans-serif;
}
#page-container .wpas-btn:hover {
    background: #77787b;
    border-color: #77787b;
}

#page-container .wpas-link-logout::after {
	font-family: 'FontAwesome';
    width: 20px;
    display: inline-block;
    text-align: center;
    color: #fff;
	/*left: -25px;*/
    font-size: 18px;
	font-weight: normal;
	content: '\f08b';
	background: none;
	height: auto;
	opacity: 1;
	vertical-align: initial;
}

#page-container .wpas-submission-form-inside-after-subject.container::before {
	display: none;
}

#page-container .wpas-submission-form-inside-after-subject.container {
	width: 100%;
	max-width: 100%;
	padding-top: 0 !important;
}

#page-container #wpas_product_wrapper.wpas-form-group::before {
	content: 'Request or Question Type';
    position: absolute;
    background-color: #231f20;
    font-weight: bold;
}

.wpas-table>thead:first-child>tr:first-child>th:last-child::before {
	content: 'Request or Question Type';
    position: absolute;
    background-color: #231f20;
    font-weight: bold;
}

.wpas-table>thead:first-child>tr:first-child>th:last-child {
	min-width: 155px;
}

.ticket-template-default, .ticket-template-default #main-content {
	color: #fff;
    background-color: #231f20!important;
}

.ticket-template-default #main-content {
	border-bottom: 3px solid #98012e;
}

.ticket-template-default h1, .ticket-template-default h3 {
	color: #fff;
}

@media (min-width: 981px) {
	.ticket-template-default {
		padding-top: 198px;
	}
}

@media (max-width: 980px) and (min-width: 768px) {
	.ticket-template-default {
		padding-top: 159px;
	}
}

@media (max-width: 767px) {
	.ticket-template-default {
		padding-top: 169px;
	}
}

/* ---------- Project Tracking ---------- */
ul.project-listing li::before {
	font-family: 'FontAwesome';
    content: '\f15c';
    width: 20px;
    margin: 0;
    display: inline-block;
    text-align: center;
    position: absolute;
    top: 0;
    left: 0;
    color: #98012e;
    /* set font size helps make icon sharper */
    font-size: 18px;
	font-weight: normal;
}

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

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

ul.project-listing:empty::after {
	display: block;
	content: 'There are no projects to display.';
}

.sb_mod_acf_single_item p a {
	color: #fff!important;
}

/* ---------- Blurbs ---------- */
/* -- Font Awesome -- */
.handshake-blurb .et-pb-icon::after {
	display: none;
    font-family: "Font Awesome 5 Regular";
    content: "\f2b5"!important;
    font-size: 35px;
}

/* -- PNG Shadow -- */
.shadow .et_pb_main_blurb_image .et_pb_image_wrap {
	-webkit-filter: drop-shadow(0px 0px 10px rgba(0,0,0,0.5));
    -ms-filter: drop-shadow(0px 0px 10px rgba(0,0,0,0.5));
    filter: drop-shadow(0px 0px 10px rgba(0,0,0,0.5));
}

/* ---------- Changes the link color when the text color is changed to 'Light' ---------- */
.et_pb_bg_layout_dark a {
	color: #77787b;
}

/* ---------- Images ---------- */
.mfp-image-holder .mfp-close {
	opacity: 0.75!important;
}

.mfp-close::before {
	font-family: "FontAwesome" !important;
    font-size: 55px;
    opacity: 1;
    content: "\f00d" !important;
    position: absolute;
    right: 5px;
}

.mfp-image-holder .mfp-close:hover {
	opacity: 01!important;
}

/* Gravity Form */
#popmake-1070 {
	bottom: 0;
	top: auto !important;
}

#popmake-1070 .gform_wrapper label.gfield_label {
	display: none;
}

.home .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]), .home .gform_wrapper textarea.textarea, .home div.form_saved_message div.form_saved_message_emailform form input[type=text] {
	padding: 4px !important;
}

.home .gform_wrapper textarea.medium {
	height: 100px;
}

#popmake-1070 .gform_wrapper .gform_footer {
	padding-top: 0px;
	margin-top: 10px;
	padding-bottom: 0px;
}

#popmake-1070 .gform_wrapper {
	margin-bottom: 0px;
}

#popmake-1070 p {
	padding-bottom: 0px;
}

/* ---------- Concrete Contact Buttons ---------- */
.concrete-buttons.et_pb_button {
	width: 100%;
	min-width: 100%!important;
}

/* ---------- Gallery ---------- */
.mfp-container {
	padding-top: 10px!important;
	overflow: hidden;
}

/* NEW TRACKER */
.tracker .status {
	height: 150px;
	width: 100%;
	margin: 0 auto;
	clear: both;
	position: relative;
}

.tracker ol, 
.tracker ul, 
.tracker p {
	margin: 0;
	padding: 0;
	list-style: none;
}

.tracker .stageLabels {
	width: 100%;
	display: table;
	table-layout: fixed;
	height: 6em;
	margin: 0;
	position: absolute;
	top: 1em;
	z-index: 3;
	text-align: center;
}
.tracker .stageLabel {
	display: table-cell;
	zoom: 1;
	width: 14.28%;
	width: calc(100% / 7);
	height: 6em;
	position: relative;
	vertical-align: top;
}
.tracker .stageLabel::after {
	content: attr(data-stagenumber-text);
	width: 100%;
	position: absolute;
	top: 1.625em;
	left: 50%;
	text-align: center;
	font-size: 1.625em;
	text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.1), 0 0 0 rgba(0, 0, 0, 0.2), 1px 1px 1px rgba(255, 255, 255, 0.1);
	color: #fff;
	color: rgba(0, 0, 0, 0.1);
	-ms-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	font-family: 'Dosis',Helvetica,Arial,Lucida,sans-serif;
}
.tracker .stageLabel .labelText {
	text-transform: uppercase;
	font-size: 0.5em;
	letter-spacing: 0.1em;
	font-weight: 300;
	text-align: center;
	color: rgba(255,255,255,0.6);
	line-height: 1em;
}
@media (max-width: 980px) {
	.tracker .stageLabel::after {
		top: 2em;
	}
}

.tracker .stageLabel .light {
	width: 95%;
	height: 2px;
	-ms-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	position: absolute;
	top: 1.1em;
	left: 50%;
	text-indent: -9999px;
	background: rgba(255,255,255,0.6);
	-moz-transition: all 1s ease;
	-o-transition: all 1s ease;
	-webkit-transition: all 1s ease;
	transition: all 1s ease;
}
.tracker .stageLabel.active .labelText {
	color: white;
}
.tracker .stageLabel.active .light {
	background: white;
}
.tracker .stageLabel.active::after {
	color: rgba(255,255,255,0.6);
	text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
}

@media (max-width: 640px) {
	.tracker .stageLabel .labelText {
		text-overflow: ellipsis;
		overflow: hidden;
		white-space: nowrap;
	}
}


/* bg */
.tracker .statusBarBase {
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#6bc0eb", endColorstr="#005b89", GradientType=0);
	border-radius: 28px;
	z-index: 1;
	background: #6bc0eb;
	box-shadow: 2px 2px 1px rgba(255, 255, 255, 0.3), -2px -2px 1px #363636, 3px 3px 13px rgba(0, 0, 0, 0.8), inset 13px 13px 18px rgba(0, 0, 0, 0.5), inset -13px -13px 18px rgba(0, 0, 0, 0.5);
}

.tracker .statusBarBase, 
.tracker .statusBar {
	width: 100%;
	height: 58px;
	margin: 0;
	position: absolute;
	top: 46px;
	left: 0;
}
.tracker .statusBar {
	z-index: 1;
}
.tracker .statusBar::after {
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#eaeaea", endColorstr="#6bc0eb", GradientType=0);
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	border-radius: 28px;
	box-shadow: inset 0 -4px 4px rgba(0, 0, 0, 0.5), inset 0 7px 1px rgba(255, 255, 255, 0.3);
}
.tracker .statusBar .stage.active {
	background-color: green;
	border-left: 1px solid rgba(0, 0, 0, 0.2);
}
.tracker .statusBar ol {
	overflow: hidden;
	height: 100%;
	border-radius: 28px;
	white-space: nowrap;
}

.tracker .statusBar .stage {
	display: inline-block;
	zoom: 1;
	height: 100%;
	margin-right: -4px;
	border-right: 1px solid rgba(255, 255, 255, 0.3);
	box-shadow: 2px -1px 1px rgba(0, 0, 0, 0.2);
	width: 14.28%;
	width: calc(100% / 5);
}
.tracker .statusBar .stage:last-child {
	border-right-width: 0;
	margin-right: 0;
}

.tracker .statusBar .stage div {
	width: 100%;
	height: 100%;
	overflow: hidden;
	text-indent: -1000em;
}

.tml {
    max-width: 640px;
    background: rgba(0, 0, 0, 0.09);
    padding: 20px;
    border-radius: 5px;
    margin: 0 auto;
}

.wpas-reply-attachements {
	color: black;
}

.single-post #main-content .container {
    padding-top: 158px;
}
/* Vertical align */
.text-center {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
}

/* ---------- Online Form Registration - Gravity Forms ---------- */
/* ----- Password Strength Bar ----- */
.calculator-register-form .gform_wrapper .gfield_password_strength {
	color: #231f20;
}

.calculator-register-form input#gform_submit_button_8 {
    display: block;
    width: 100%;
}

#top-menu > li:last-child .sub-menu {
position: absolute;
right: -20px;
}