/* ------------- Divi Element Overrides ------------- */

body:not(.error404) .et_pb_section_0_tb_body {
    padding: 0!important;
}

body .et_pb_section,
body.et-db #et-boc .et-l .et_pb_section,
body .layout-section {
	padding: 75px 0;
}

body .top-row-padding.et_pb_row,
body.et-db #et-boc .et-l .top-row-padding.et_pb_row,
body .top-row-padding.layout-row {
	padding-top: 75px;
}

body .bottom-row-padding.et_pb_row,
body.et-db #et-boc .et-l .bottom-row-padding.et_pb_row,
body .top-row-padding.layout-row {
	padding-bottom: 75px;
}

body .et_pb_section.remove-top-padding,
body.et-db #et-boc .et-l .et_pb_section.remove-top-padding,
body .layout-section.remove-top-padding {
	padding-top: 0;
}

body .et_pb_section.remove-bottom-padding,
body.et-db #et-boc .et-l .et_pb_section.remove-bottom-padding,
body .layout-section.remove-bottom-padding {
	padding-bottom: 0;
}

body .et_pb_row, 
body.et-db #et-boc .et-l .et_pb_row, 
body.et-db #et-boc .et-l--footer .et_builder_inner_content .et_pb_row,
body .layout-row {
	margin: 0 auto;
	max-width: 1260px;
	padding: 0;
	width: 90%
}

body .et_pb_row.short-row, 
body.et-db #et-boc .et-l .et_pb_row.short-row {
	max-width: 900px;
}

body .et_pb_module.short-row,
body.et-db #et-boc .et-l .et_pb_module.short-row {
	margin-left: auto;
	margin-right: auto;
	margin-top: 0;
}

body .et_pb_row.full-row,
body.et-db #et-boc .et-l .et_pb_row.full-row {
	max-width: 100%!important;
	width: 100%!important;
}

body .layout-row {
	float: none;
}

body .et_pb_row.col-row .et_pb_column,
body.et-db #et-boc .et-l .et_pb_row.col-row .et_pb_column {
	float: none;
	margin: 0 auto!important;
	max-width: 1260px;
	width: 90%!important;
}

.et_pb_text .et_pb_text_inner>:last-child,
.et-db #et-boc .et-l .et_pb_text .et_pb_text_inner>:last-child {
    padding-bottom: 0;
}

/* ------------- Post Wrapper Layout and Column Styles  -------------*/

.post-wrapper {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 0 -25px -25px 0;
}

.post-wrapper.between {
	justify-content: space-between;
}

.post-wrapper.justify-start {
	justify-content: flex-start;
}

.post-wrapper.center-aligned {
	align-items: center;
}

ul.post-wrapper,
ol.post-wrapper {
	line-height: 1;
	list-style: none!important;
	padding: 0!important;
}

.post-wrapper .form-check {
    padding: 0;
}

.post-wrapper .form-check input {
    appearance: none;
    -webkit-appearance: none;
}

.btn.form-check-label {
    align-items: center;
    display: flex;
    height: 100%;
    justify-content: center;
    width: 100%;
}

.btn.form-check-label span {
    position: relative;
    z-index: 2;
}

.post-wrapper[data-columns='1'] .post-item,
.post-wrapper[data-columns="2"] .post-item,
.post-wrapper[data-columns="3"] .post-item,
.post-wrapper[data-columns="4"] .post-item,
.post-wrapper[data-columns="5"] .post-item,
.post-wrapper[data-columns="6"] .post-item,
.post-wrapper[data-columns="8"] .post-item,
.post-wrapper[data-columns="2"] .form-check,
.post-wrapper[data-columns="3"] .form-check, 
.post-wrapper[data-columns="4"] .form-check,
.post-wrapper[data-columns="5"] .form-check,
.post-wrapper[data-columns="6"] .form-check,
.post-wrapper[data-columns="8"] .form-check,
.post-wrapper[data-columns="2"] .page-link,
.post-wrapper[data-columns='4'] .checkbox {
	margin: 0 25px 25px 0;
	width: calc(100% - 25px);
}

.layout-row.post-wrapper .layout-col {
    width: 100%;
}

/* ------------- Post Wrapper for Divi Elements ------------- */

body .post-wrapper.et_pb_row,
body.et-db #et-boc .et-l .post-wrapper.et_pb_row {
	justify-content: space-between; 
	margin-bottom: -25px;
}

body post-wrapper.et_pb_row:after,
body.et-db #et-boc .et-l .post-wrapper.et_pb_row:after {
	display: none;
}

.post-wrapper.et_pb_row .et_pb_column.et_pb_column_1_2,
.post-wrapper.et_pb_row .et_pb_column.et_pb_column_1_3,
.post-wrapper.et_pb_row .et_pb_column.et_pb_column_1_4,
.post-wrapper.et_pb_row .et_pb_column.et_pb_column_1_5,
.post-wrapper.et_pb_row .et_pb_column.et_pb_column_1_6,
body.et-db #et-boc .et-l .post-wrapper.et_pb_row .et_pb_column.et_pb_column_1_2,
body.et-db #et-boc .et-l .post-wrapper.et_pb_row .et_pb_column.et_pb_column_1_3,
body.et-db #et-boc .et-l .post-wrapper.et_pb_row .et_pb_column.et_pb_column_1_4,
body.et-db #et-boc .et-l .post-wrapper.et_pb_row .et_pb_column.et_pb_column_1_5,
body.et-db #et-boc .et-l .post-wrapper.et_pb_row .et_pb_column.et_pb_column_1_6 {
	margin-bottom: 25px;
	width: 100%;
}

/* Post Wrapper Misc Column and Post Item Styles */



/* Image Column Translation so column can take up 50% of the viewport while the row maintains the max-width value set for it */


body .et_pb_row.content-row.has-col-translation,
body.et-db #et-boc .et-l .et_pb_row.content-row.has-col-translation {
	max-width: 100%;
	width: 100%;
}

.content-row.has-col-translation {
	display: flex;
}

.content-row.has-col-translation > .content-column {
	z-index: 2;
}

.content-row.has-col-translation > .et_pb_column:first-of-type {
	margin-bottom: 0;
}

.content-row.has-col-translation .content-column {
	padding: 75px 5%;
}

.translate-right, 
.translate-left {
	position: absolute;
	width: 100%!important;
	top: 0;
	z-index: 1;
}

.translate-right, 
.translate-right div, 
.translate-right span,
.translate-right img,
.translate-left,
.translate-left div,
.translate-left span,
.translate-left img {
	height: 100%;
}

.translate-right img, 
.translate-left img {
	left: 0;
	object-fit: cover;
	object-position: center;
	position: absolute;
	width: 100%!important;
}

.et_pb_section .translate-left span, 
.et_pb_section .translate-left div, 
.et_pb_section .translate-right span,
.et_pb_section .translate-right div,
body.et-db #et-boc .et-l .et_pb_section .translate-left span, 
body.et-db #et-boc .et-l .et_pb_section .translate-left div, 
body.et-db #et-boc .et-l .et_pb_section .translate-right span,
body.et-db #et-boc .et-l .et_pb_section .translate-right div {
	display: block;
	position: relative;
}

/* ------------- Miscellaneous Item Styles ------------- */

.section-header {
	padding-bottom: 30px;
}

.flex-container {
    display: flex;
}

.overlay {
	position: relative;
}

.overlay:before {
	content: '';
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 1;
}

.overlay.dark-overlay:before {
	background-color: rgba(0,0,0,0.75);
}

.overlay.light-overlay:before {
	background-color: rgba(255,255,255,0.85);
}

.overlay .et_pb_module {
    position: relative;
    z-index: 1;
}

.responsive-image:not(.et_pb_module),
.responsive-image.et_pb_module .et_pb_image_wrap,
body.et-db #et-boc .et-l .responsive-image.et_pb_module .et_pb_image_wrap {
    position: relative;
}

.responsive-image:not(.et_pb_module):after,
.responsive-image.et_pb_module .et_pb_image_wrap:after,
body.et-db #et-boc .et-l .responsive-image.et_pb_module .et_pb_image_wrap:after {
    content: '';
    display: block;
    padding-bottom: 56.25%;
}

.responsive-image.et_pb_module .et_pb_image_wrap,
body.et-db #et-boc .et-l .responsive-image.et_pb_module .et_pb_image_wrap {
	display: block;
}

.responsive-image img,
body.et-db #et-boc .et-l .responsive-image img {
    height: 100%;
    left: 0;
    object-fit: cover;
    position: absolute;
    top: 0;
    width: 100%;
}

.split-background:after {
    background-color: #ffffff;
    bottom: 0;
    content: '';
    height: 50%;
    left: 0;
    position: absolute;
    visibility: visible;
    width: 100%;
    z-index: 0;
}

@media screen and (min-width: 480px) {
	
	/* ------------- Post Wrapper for Divi Elements ------------- */

	
	.post-wrapper[data-columns="2"] .post-item,
	.post-wrapper[data-columns="2"] .page-link {
		width: calc(50% - 25px);
	}
	
}

@media screen and (min-width: 641px) {
	
	/* ------------- Divi Element Overrides ------------- */

	body .et_pb_section,
	body.et-db #et-boc .et-l .et_pb_section,
	body .layout-section {
		padding: 85px 0;
	}
	
	body .top-row-padding.et_pb_row,
	body.et-db #et-boc .et-l .top-row-padding.et_pb_row {
		padding-top: 85px;
	}

/* ----------------------------- Post Wrapper Layout and Column Styles ----------------------------- */
	
	.post-wrapper:not(.et_pb_row) {
		margin: 0 -25px -25px 0;
	}
	
	.post-wrapper[data-columns="4"] .post-item,
	.post-wrapper[data-columns="5"] .post-item,
	.post-wrapper[data-columns="6"] .post-item,
	.post-wrapper[data-columns="8"] .post-item,
	.post-wrapper[data-columns="4"] .form-check,
	.post-wrapper[data-columns="5"] .form-check,
	.post-wrapper[data-columns="6"] .form-check,
	.post-wrapper[data-columns="8"] .form-check,
	.post-wrapper[data-columns='4'] .checkbox {
		width: calc(50% - 25px);
	}
	
	/* ------------- Post Wrapper for Divi Elements ------------- */
	
	.post-wrapper.et_pb_row .et_pb_column.et_pb_column_1_4,
	.post-wrapper.et_pb_row .et_pb_column.et_pb_column_1_5,
	.post-wrapper.et_pb_row .et_pb_column.et_pb_column_1_6,
	body.et-db #et-boc .et-l .post-wrapper.et_pb_row .et_pb_column.et_pb_column_1_4,
	body.et-db #et-boc .et-l .post-wrapper.et_pb_row .et_pb_column.et_pb_column_1_5,
	body.et-db #et-boc .et-l .post-wrapper.et_pb_row .et_pb_column.et_pb_column_1_6 {
		margin-right: 25px;
		width: calc((100% + 25px)/2 - 25px);
	}
	
	/* ----------------------------- Post Wrapper Misc Column and Post Item Styles ----------------------------- */
	
	
	/* -------------------------- Miscellaneous Item Styles -------------------------- */
	
	.section-header {
		padding-bottom: 45px;
	}

}

@media screen and (min-width: 768px) {
	
	/* ------------- Divi Element Overrides ------------- */

	body .et_pb_row,
	body.et-db #et-boc .et-l .et_pb_row,
	body.et-db #et-boc .et-l--footer .et_builder_inner_content .et_pb_row,
	body .layout-row {
		width: 80%
	}
	
	body .et_pb_row.col-row .et_pb_column,
	body.et-db #et-boc .et-l .et_pb_row.col-row .et_pb_column {
		width: 80%!important;
	}
	
	/* ----------------------------- Post Wrapper Layout and Column Styles ----------------------------- */

	.post-wrapper[data-columns="5"] .post-item,
	.post-wrapper[data-columns="6"] .post-item,
	.post-wrapper[data-columns="5"] .form-check,
	.post-wrapper[data-columns="6"] .form-check {
		width: calc(100%/3 - 25px);
	}
	
	/* ------------- Post Wrapper for Divi Elements ------------- */
	
	.post-wrapper.et_pb_row .et_pb_column.et_pb_column_1_5,
	.post-wrapper.et_pb_row .et_pb_column.et_pb_column_1_6,
	body.et-db #et-boc .et-l .post-wrapper.et_pb_row .et_pb_column.et_pb_column_1_5,
	body.et-db #et-boc .et-l .post-wrapper.et_pb_row .et_pb_column.et_pb_column_1_6 {
		width: calc((100% + 25px)/3 - 25px)
	}
	
}

@media screen and (max-width: 980px) {
	
	.et-db #et-boc .et-l .post-wrapper.et_pb_row > .et_pb_column.et_pb_column_1_4:nth-child(2n) {
		margin-right: 0!important;
	}

	body.et-db #et-boc .et-l .post-wrapper.et_pb_row .et_pb_column_1_3.et-l--postast-child {
		margin-right: auto!important;
	}
	
	.post-wrapper.reverse-row.et_pb_row,
	body.et-db #et-boc .et-l .post-wrapper.reverse-row.et_pb_row {
		flex-direction: column-reverse;
	}
	
}

@media screen and (min-width: 981px) {
	
	/* ------------- Divi Element Overrides ------------- */

	body .et_pb_section,
	body.et-db #et-boc .et-l .et_pb_section,
	body .layout-section {
		padding: 125px 0;
	}
	
	body .top-row-padding.et_pb_row,
	body.et-db #et-boc .et-l .top-row-padding.et_pb_row {
		padding-top: 125px;
	}

	body .et_pb_row,
	body.et-db #et-boc .et-l .et_pb_row,
	body.et-db #et-boc .et-l--footer .et_builder_inner_content .et_pb_row,
	body .layout-row {
		width: 90%
	}
	
	body.et-db #et-boc .et-l .et_pb_row.col-row .et_pb_column {
		width: 90%!important;
	}
	
	/* -------------------------- Post Wrapper Layout and Column Styles -------------------------- */

	.post-wrapper[data-columns="3"] .post-item,
	.post-wrapper[data-columns="3"] .form-check {
		width: calc(100%/3 - 25px);
	}
	
	.post-wrapper[data-columns="5"] .post-item,
	.post-wrapper[data-columns="5"] .form-check {
		width: calc(100%/5 - 25px);
	}

	.post-wrapper[data-columns="4"] .post-item,
	.post-wrapper[data-columns="6"] .post-item,
	.post-wrapper[data-columns="8"] .post-item,
	.post-wrapper[data-columns="4"] .form-check,
	.post-wrapper[data-columns="6"] .form-check,
	.post-wrapper[data-columns="8"] .form-check,
	.post-wrapper[data-columns='4'] .checkbox {
		width: calc(100%/4 - 25px);
	}
	
	.layout-row.post-wrapper .layout-col:first-of-type {
        margin-bottom: 0;
    }

    .layout-row.post-wrapper .layout-col-3_4 {
        width: calc(75% - 12.5px);
    }

    .layout-row.post-wrapper .layout-col-1_4 {
        width: calc(25% - 12.5px);
    }
	
	/* ------------- Post Wrapper for Divi Elements ------------- */
	
	.post-wrapper.et_pb_row .et_pb_column.et_pb_column_1_2,
	body.et-db #et-boc .et-l .post-wrapper.et_pb_row .et_pb_column.et_pb_column_1_2 {
		margin-right: 0;
		width: calc(50% - 12.5px)
	}
	
	.post-wrapper.et_pb_row:not(.featured-service-row) .et_pb_column.et_pb_column_1_2:first-of-type, 
	body.et-db #et-boc .et-l .post-wrapper.et_pb_row:not(.featured-service-row) .et_pb_column.et_pb_column_1_2:first-of-type {
		padding-right: 50px;
	}
	
	.post-wrapper.et_pb_row .et_pb_column.et_pb_column_1_3,
	body.et-db #et-boc .et-l .post-wrapper.et_pb_row .et_pb_column.et_pb_column_1_3 {
		margin: 0 25px 25px 0;
		width: calc((100% + 25px)/3 - 25px);
	}
	
	.post-wrapper[data-columns="3"] .post-item,
	.post-wrapper.et_pb_row .et_pb_column.et_pb_column_1_3,
	body.et-db #et-boc .et-l .post-wrapper.et_pb_row .et_pb_column.et_pb_column_1_3 {
		max-width: 100%;
	}
	
	.post-wrapper.et_pb_row .et_pb_column.et_pb_column_1_4,
	.post-wrapper.et_pb_row .et_pb_column.et_pb_column_1_6,
	body.et-db #et-boc .et-l .post-wrapper.et_pb_row .et_pb_column.et_pb_column_1_4,
	body.et-db #et-boc .et-l .post-wrapper.et_pb_row .et_pb_column.et_pb_column_1_6 {
		width: calc((100% + 25px)/4 - 25px)
	}
	
	/* -------------------------- Content / Image Row Styles -------------------------- */
	
	/* Image Column Translation so column can take up 50% of the viewport while the row maintains the max-width value set for it */
	
	.et_pb_row.content-row.has-col-translation,
	body.et-db #et-boc .et-l .et_pb_row.content-row.has-col-translation {
		max-width: 1260px;
		width: 80%;
	}

	.content-row.has-col-translation > .et_pb_column {
		width: 50%;
	}

	.content-row.has-col-translation > .et_pb_column:first-of-type {
		margin-right: 0!important;
	}

	.content-row:nth-of-type(even) .content-column {
		padding: 100px 5.5% 100px 0;
	}

	.content-row:nth-of-type(odd) .content-column {
		padding: 100px 0 100px 5.5%;
	}
	
	.translate-right, 
	.translate-left {
		width: 50vw!important;
	}

	.translate-left {
		left: 50%;
		transform: translateX(-100%);
	}

	.translate-right {
		right: 50%;
		transform: translateX(100%);
	}
	
	/* -------------------------- Miscellaneous Item Styles -------------------------- */
	
	.section-header {
		padding-bottom: 60px;
	}
	
	.justify-end {
		justify-content: flex-end;
	}
	
}

@media screen and (min-width: 1281px) {
	
	/* ------------- Divi Element Overrides ------------- */

	body .et_pb_section,
	body.et-db #et-boc .et-l .et_pb_section,
	body .layout-section {
		padding: 140px 0;
	}
	
	body .top-row-padding.et_pb_row,
	body.et-db #et-boc .et-l .top-row-padding.et_pb_row {
		padding-top: 140px;
	}
	
	body .et_pb_row, 
	body.et-db #et-boc .et-l .et_pb_row, 
	body.et-db #et-boc .et-l--footer .et_builder_inner_content .et_pb_row,
	body .layout-row {
		width: 80%
	}
	
	body .et_pb_row.col-row .et_pb_column,
	body.et-db #et-boc .et-l .et_pb_row.col-row .et_pb_column {
		width: 80%!important;
	}

	/* ----------------------- Post Wrapper Column Layout Styles ----------------------- */
	
	.post-wrapper[data-columns="5"] .post-item,
	.post-wrapper[data-columns="5"] .form-check {
		width: calc(100%/5 - 25px);
	}
	
	.post-wrapper[data-columns="8"] .post-item,
	.post-wrapper[data-columns="8"] .form-check {
		width: calc(100%/6 - 25px);
	}
	
	/* -------------------------- Content / Image Row Styles -------------------------- */
	
	/* Image Column Translation so column can take up 50% of the viewport while the row maintains the max-width value set for it */
	
	.content-row:nth-of-type(even) .content-column {
		padding: 175px 5.5% 175px 0;
	}

	.content-row:nth-of-type(odd) .content-column {
		padding: 175px 0 175px 5.5%;
	}
	
	
}

@media screen and (min-width: 1367px) {
	
	/* Post Wrapper Column Layout Styles */

	.post-wrapper[data-columns="6"] .post-item,
	.post-wrapper[data-columns="6"] .form-check {
		width: calc(100%/6 - 25px);
	}
	
	.post-wrapper[data-columns="8"] .post-item,
	.post-wrapper[data-columns="8"] .form-check {
		width: calc(100%/8 - 25px);
	}
	
	/* ------------- Post Wrapper for Divi Elements ------------- */
	
	.post-wrapper.et_pb_row .et_pb_column.et_pb_column_1_6,
	body.et-db #et-boc .et-l .post-wrapper.et_pb_row .et_pb_column.et_pb_column_1_6 {
		width: calc((100% + 25px)/6 - 25px)
	}
	
}