/*
Theme Name: Divi Child
Template: Divi
*/

/* CompLogix */

html{font-size:16px;}
@media(max-width:767px){
	html{font-size:13px;}
}
h1,h2,h3,h4,h5,h6{
	word-wrap:initial!important;
}
h1{font-weight:bold;letter-spacing:-2px;}
h2,h3{font-weight:lighter;letter-spacing:-2px;}
h4,h5,h6{font-weight:regular;letter-spacing:-1px;}

@media screen and (max-width: 1130px){
	.menu-button{order:-1}
	.menu-button a {
		background: #14c0ed;
		color: #fff;
	}
	.mobile_nav.opened #mobile_menu{display:flex;flex-direction:column;}
}
@media screen and (min-width: 1131px){
	.menu-button a {
		background: white!important;
		padding: 15px 10px!important;
		margin-top: -13px;
		color: #3a5870!important;
		border-radius: 2px;
		line-height: 0;
		font-weight: 600!important;
	}
	
	.et-fixed-header #top-menu .menu-button a{
		color: #3a5870!important;
	}
}


@media screen and (min-width: 981px){
	body h2{font-size:1.7rem}
	body h3{font-size:1.5rem}
	body h4{font-size:1.2rem}
	body h5{font-size:1.1rem}
	body h6{font-size:1rem}
}

@media screen and (min-width:767px) and (max-width: 980px){
	body h2{font-size:1.8rem}
	body h3{font-size:1.6rem}
	body h4{font-size:1.3rem}
	body h5{font-size:1.1rem}
	body h6{font-size:1rem}
}
@media screen and (max-width:767px) {
	body h2{font-size:1.8rem}
	body h3{font-size:1.6rem}
	body h4{font-size:1.3rem}
	body h5{font-size:1.1rem}
	body h6{font-size:1rem}
}

#logo{
	max-height:21px!important;
	max-width: 260px;
}
#main-header:not(.et-fixed-header) #logo{
	max-height:21px;
}

.dark-blue{color:#0082ca!important;}
.blue{color:#00aeef!important;}
.green{color:#77bc1f!important;}

body .et_pb_section .footer-btn{
	display:block;
	width:100%;
	text-align:left;
	padding-right:36px!important;
	background:#fff!important;
	color:#555!important;
	transition: none;
}
body .et_pb_section .footer-btn:hover{
	background-color:#eee!important;
	color:#333!important;
}

body .et_pb_section .footer-btn:after{
    content: attr(data-icon)!important;
    font-family: "ETmodules" !important;
    line-height: inherit!important;
    font-size: inherit !important;
    margin-left: .3em!important;
    right: 20px!important;
    opacity: 1!important;
    display: inline-block!important;
    font-size: 1.6em!important;
}

.phone-icon-before:before{
	content: "\e090"!important;
	font-family: "ETmodules" !important;
	vertical-align: middle;
	font-size:1.6rem;
	margin-right:5px;
}

/* Tablets and Up */
@media(min-width:980px){

	.section-bg-image__right:before{
		content:"";
		background-size:cover;
		background-position:top center;
		position:absolute;
		top:0;
		right:0;
		width:50%;
		height:100%;
	}

	.section-bg-image__left:before{
		content:"";
		background-size:cover;
		background-position:top center;
		position:absolute;
		top:0;
		left:0;
		width:50%;
		height:100%;
	}
}


/* increases mobile breakpoint */

@media (max-width: 1130px) {
	#et_mobile_nav_menu {
		display: block;
	}
 
	#top-menu {
		display: none;
	}

	.et_fullwidth_nav #main-header .container{width:95%;}

	.et_header_style_left #logo{
		/*max-width:60%!important;
		width:60%!important;*/
	}

}
@media (max-width: 980px) {
	.et_header_style_left #logo, .et_header_style_split #logo {
		max-width: 45%;
	}
}

.popup_outer_wrap .popup{
	transition:none!important;
}

#et-boc .area-outer-wrap .da-close {
	right: 10px;
}
.nav li li {
	line-height: 1.6em;
}

#main-header .et_menu_container{
	max-width:1180px;
	width:90%;
}

/* This is a copy of the DIVI inline styles that get applied to 'custom' outline buttons, which causes weird flash of unstyled buttons that animate into final version on page load. It's weird and WET, but this prevents that odd animation */
body #page-container .et_pb_section .et_pb_button.btn-outline {
	color: #ffffff;
	border-width: 3px;
	border-radius: 3px;
	letter-spacing: 3px;
	font-size: 16px;
	font-family: 'Gotham - Book',Helvetica,Arial,Lucida,sans-serif !important;
	text-transform: uppercase !important;
	background-color: rgba(0,0,0,0);
}

.disable-click > a{cursor:default;}

.justify-content-center{
	display:flex;
	align-items:center;
}
@media(max-width:980px){
	.justify-content-center{
		flex-wrap:wrap;
	}
}
@media(max-width:980px){
	/* This gets super buggy in Safari iOS inside a Divi Popup... sigh */
	.mobile-column-reverse{
		display: flex;
		flex-wrap:wrap;
		-webkit-box-orient: vertical;
        -webkit-flex-direction: column-reverse;
        -moz-flex-direction: column-reverse;
        flex-direction: column-reverse;
	}
}
@media(min-width:768px){
.vert-center-cols-row > .et_pb_column{
	display:flex;
	flex-direction: column;
	justify-content: center;
}
.vert-center-cols-row{
	display:flex;
}
}
.entry-content .et_pb_text_inner ul li {
    line-height: 2rem;
    margin-bottom: .8rem;
}

/* Change main nav item widths a bit */
#top-menu li li a{width:240px;}
.nav li ul{width:280px;}


.hero-section{overflow:hidden; padding-bottom: 90px !important;}
.hero-section h1{
	color: #3a5870;
	font-size: 5.5rem;
	line-height: 4.9rem;
	font-weight:bolder;
}

.x-overlay::after {
	content: "";
	height: 73%;
	width: 72%;
	background-image: url('../../uploads/2020/10/comp-x.svg');
	position: absolute;
	background-repeat: no-repeat;
	right: -16%;
	top: 13%;
	background-size: contain;
	mix-blend-mode: multiply;
	pointer-events: none;
}
.x-overlay.x-overlay-left:after{right: initial;left:-16%;}
.x-overlay.x-overlay-light:after{opacity:.11}

.x-overlay-cta::after {
	pointer-events: none;
	content: "";
	height: 120%;
	width: 121%;
	background-image: url('../../uploads/2020/10/comp-x.svg');
	position: absolute;
	background-repeat: no-repeat;
	right: -43%;
	top: 13%;
	background-size: contain;
	margin: -5% 0;
	background-position: right top;
	opacity:.86;
}

@media all and (min-width: 766px) and (max-width:900px){
	.x-overlay::after{opacity:.5}

	.x-overlay-cta::after {
		width: 141%;
		right: -63%;
		top: 22%;
	}
}
@media all and (max-width: 765px){
	.x-overlay::after {
		display:none;
	}
	.hero-section h1{
		font-size: 4.6rem;
		line-height: 4rem;
	}

	.x-overlay-cta::after {
		width: 179%;
		right: -103%;
		top: 15%;
	}
}
.quote-white-box{padding-right:30px;padding-left:30px;}
.quote-white-box:before{
	content:"S";
	font-family:"ElegantIcons";
	font-size:50px;
	position:absolute;
	left:0;
	top:10px;
}

.fancy-list-group h3{font-weight:200;margin-bottom:10px;}
.fancy-list-group ul{list-style:none;margin-left:30px;}
.fancy-list-group ul li{position: relative;line-height:1.7rem!important;margin-bottom:1rem;}
.fancy-list-group ul li:before{
	content:"";
	background-image: url('../../uploads/2020/10/comp-x.svg');
	width:20px;
	background-size: contain;
	height:15px;
	position: absolute;
	left:-32px;
	top:.5rem;
	background-repeat: no-repeat;
	filter: brightness(200%) grayscale(100%) contrast(400%);
}

#clCalc{color:white;}
#clCalc fieldset{margin-bottom: 10px;}
#clCalc .calc-select {position:relative;}

#clCalc .calc-select::after {
	content: "";
	position: absolute;
	bottom: 11px;
	right: 10px;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 0;
	height: 0;
	border: 6px solid transparent;
	border-top-color: #666;
	margin-top: 3px;
	pointer-events: none;
}

.et_pb_contact_select {
	color: #444343!important;
}

body #clCalc .clcCalc_button,
body .gform_button
{
	letter-spacing: 1px!important;
	margin-top:24px;
	font-family:'Open Sans',Helvetica,Arial,Lucida,sans-serif !important;
	padding: .6em 1.8em !important;
}

body #clCalc .clcCalc_button:hover,
body .gform_button:hover
{color:white !important}

@media(max-width:760px){
	body #clCalc .clcCalc_button{display:block;width:100%}
}

.complogix-clip{
	clip-path: polygon(0px 0px, 88% 110px, 100% 0%, 100% 100%, 12% calc(100% - 110px), 0px 100%);
}

.complogix-clip-bottom{
	clip-path:polygon(0 0, 100% 0, 100% 100%, 20% calc(100% - 100px), 0 100%);
}

@media(max-width:980px){
	.complogix-clip{
		clip-path: polygon(0px 0px, 88% 40px, 100% 0%, 100% 100%, 12% calc(100% - 40px), 0px 100%);
	}
	.complogix-clip-bottom{
		clip-path:polygon(0 0, 100% 0, 100% 100%, 20% calc(100% - 60px), 0 100%);
	}
}

@media(max-width:760px){
	.complogix-clip-bottom{
		clip-path:polygon(0 0, 100% 0, 100% 100%, 20% calc(100% - 40px), 0 100%);
	}
}

.et_pb_posts .et_pb_ajax_pagination_container .pagination > .alignleft a:before {
    content: '\00AB  Older Posts';
	visibility: visible;
	position: absolute;
	left: 0;
	white-space: nowrap;
}
.et_pb_posts .et_pb_ajax_pagination_container .pagination > .alignleft a {
	visibility: collapse;
	position:relative;
}
.et_pb_posts .et_pb_ajax_pagination_container .pagination > .alignright a:before {
    content: 'Newer Posts \00BB';
	visibility: visible;
	position: absolute;
	right: 0;
	white-space: nowrap;
}
.et_pb_posts .et_pb_ajax_pagination_container .pagination > .alignright a {
	visibility: collapse;
	position:relative;
}
