/* Begin Custom Styles */

/*------------------------------[FONT ICONS]-----------------------------*/
/*--[Created by Divi Children, http://divi4u.com/divi-children-plugin/]--*/
/*-----------------------------------------------------------------------*/

.icon_tags, .icon_profile, .icon_chat, .icon_clipboard, .icon_calendar {
	font-family: 'ETmodules';
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-size: 16px;
	color: #318EC3;
}
.icon_tags:before {
	content: "\e07c";
	padding: 0px 5px 0 0;
}
.icon_profile:before {
	content: "\e08a";
	padding: 0 5px 0 0;
}
.icon_chat:before {
	content: "\e066";
	padding: 0 5px 0 20px;
}
.icon_clipboard:before {
	content: "\e0e6";
	padding: 0 5px 0 20px;
}
.icon_calendar:before {
	content: "\e023";
	padding: 0 5px 0 20px;
}



/*- YOU CAN INCLUDE THE CUSTOM CODE FOR YOUR CHILD THEME BELOW THIS LINE-*/

/*------------------------------------------------*/
/*-----------------[BASIC STYLES]-----------------*/
/*------------------------------------------------*/

/* ------ Gravity Forms Styles ------ */ 

.gform_wrapper {
	margin: 0;
}
.gform_wrapper .top_label input.large, .gform_wrapper textarea.medium {
	width: 100% !important;
	border-radius: 3px;
}
.gform_wrapper .gform_footer input.button, .gform_wrapper .gform_footer input[type=image], .gform_wrapper .gform_footer input[type=submit] {
	color: #ffffff !important;
	background: #cc3e1a !important;
	border-width: 2px !important;
	border-color: #cc340e !important;
	border-radius: 10px !important;
	letter-spacing: 0px;
	font-family: 'Montserrat', Helvetica, Arial, Lucida, sans-serif;
	font-size: 16px !important;
	box-shadow: none;
	margin: 0 !important;
	padding: 0.3em 1em;
	border: 2px solid;
	-webkit-transition: all 0.2s;
	-moz-transition: all 0.2s;
	transition: all 0.2s;
	cursor: pointer;
	text-transform: uppercase;
	font-weight: bold;
}
.gform_wrapper .gform_footer input.button:hover, .gform_wrapper .gform_footer input[type=image]:hover, .gform_wrapper .gform_footer input[type=submit]:hover {
	background: rgba(218,84,79,0.86)!important;
	border-color: rgba(216,26,19,0.92)!important;
	letter-spacing: 0px;
}
.gform_wrapper .gform_footer {
	padding: 0 !important;
	margin: 0 !important;
	padding-right: 16px !important;
	clear: both;
	text-align: right;
}

.left-col-form, .right-col-form {
	width: 50%;
	float: left;
}

/* ------ Header Styles ------ */ 

.et_fullwidth_nav #main-header .container {
	padding: 0 !important;
}
#logo {
	-webkit-transform: initial !important;
	-ms-interpolation-mode: bicubic;
}

/* ------ Navigation Styles ------ */ 


#et-top-navigation {
	background: #c33b36 !important;
}
#et-top-navigation nav > ul {
	font-size: 0;
}
#et-top-navigation nav > ul > li {
	padding: 0 !important;
}
#et-top-navigation nav > ul > li > a {
	display: block;
	padding: 20px !important;
	-webkit-transition: all 1s ease-in-out;
	-moz-transition: all 1s ease-in-out;
	-o-transition: all 1s ease-in-out;
	transition: all 1s ease-in-out;
}
#et-top-navigation nav ul li a:hover {
	background: rgba(0,0,0,0.2);
}
#et-top-navigation nav > ul > li:last-child {
	border: none;
}
#et-top-navigation nav ul.sub-menu {
	padding: 0;
	border: 0;
}
#et-top-navigation nav ul.sub-menu > li {
	width: 100%;
	padding: 0;
}
#et-top-navigation nav ul.sub-menu > li > a {
	width: 100%;
	padding: 10px 20px;
}
#top-header #et-info {
	width: 100%;
}
#et-info-phone {
	margin-right: 0;
}
#et-info-phone:hover {
	opacity: 0.7;
	-webkit-transition: all 0.4s ease-in-out;
	-moz-transition: all 0.4s ease-in-out;
	transition: all 0.4s ease-in-out;
}
#top-header .et-social-icons {
	float: right !important;
}
#top-menu .menu-item-has-children > a:first-child:after, #et-secondary-nav .menu-item-has-children > a:first-child:after {
	position: static !important;
	font-size: 12px;
}

/*------------------------------------------------*/
/*---------------[MAIN LAYOUT INFO]---------------*/
/*------------------------------------------------*/

.et_boxed_layout #page-container {
	box-shadow: none;
	-webkit-box-shadow: none;
}
.et_pb_row.full-width {
	width: 100% !important;
	max-width: 100% !important;
}
.et_pb_button {
	color: #FFF !important;
	border-radius: 10px !important;
}

.et_pb_fullwidth_section .et_pb_post_title {
	padding: 40px 0 !important;
}
.et_pb_fullwidth_section .et_pb_title_container {
	width: 90%;
}
.et_pb_title_container h1 {
	display: inline-block;
	color: #FFF;
	padding: 0;
	vertical-align: top;
}

#home-cats .et_pb_blurb .et_pb_blurb_content {
	border: 5px solid rgba(0,0,0,0.2);
}
#home-cats .et_pb_blurb .et_pb_blurb_content .et_pb_main_blurb_image {
	margin-bottom: 0;
}
#home-cats .et_pb_blurb .et_pb_blurb_content .et_pb_main_blurb_image img {
	vertical-align: bottom;
}
#home-cats .et_pb_blurb .et_pb_blurb_content h4 {
	padding: 15px 20px 10px;
	background: #c33b36;
	color: #FFF;
}
#home-cats .et_pb_blurb .et_pb_blurb_content p {
	background: #F7941E;
	padding: 0 20px 10px !important;
	color: #FFF;
}

.quote-button a {
	display: block;
	padding: 40px 0;
	background: #c33b36;
}
.quote-form, .service-map .wpgmza_sl_main_div {
	background: #c33b36;
	padding: 20px;
	border-radius: 10px;
}
.quote-form .gform_wrapper {
	margin: 0;
}

.service-map .wpgmza_sl_main_div {
	position: absolute;
	width: 300px;
	padding: 20px;
	top: 90px;
	left: 10px;
	color: #FFF;
	z-index: 2;
}

.service-map .wpgmza_sl_main_div .wpgmza_sl_search_button_1, .service-map .wpgmza_sl_main_div .wpgmza_sl_reset_button_1 {
	color: #fff;
	background-color: #2e2e2e!important;
	margin-top: 10px;
	padding: 5px 10px;
	border: 0;
	border-radius: 3px;
	font-size: 1em;
}

.service-map .wpgmza_sl_main_div .wpgmza_sl_search_button_1:hover, .service-map .wpgmza_sl_main_div .wpgmza_sl_reset_button_1:hover {
	background-color: #393939!important;
}

/*------------------------------------------------*/
/*--------------[HOME DIVI SLIDER]----------------*/
/*------------------------------------------------*/
.et_pb_button.left,
.et_pb_button.right{
	border-color:#ffffff00;
    border-radius: 3px!important;
    padding: .3em 1em!important;
    font-size: 16px;
    font-weight: 500;
    font-family: Roboto;
}
.et_pb_button.left{
	background-color:rgba(45,45,45,0.9);
}
.et_pb_button.right{
	background-color:rgba(195,59,54,0.9);
	margin-left:15px;
}
.hero-icon-bar{
	width:420px;
	margin:-100px 0 0 50%;
}
.hero-icon-bar img{
	max-height:80px;
	margin:auto;
	width:auto;
	display:flex;
}
.home-slider .et_pb_slides .et_pb_slide .et_pb_container{
	width:100%;
}
/*------------------------------------------------*/
/*---------------[DROPDOWN MENU]------------------*/
/*------------------------------------------------*/



/*------------------------------------------------*/
/*-------------------[COMMENTS]-------------------*/
/*------------------------------------------------*/



/*------------------------------------------------*/
/*---------------------[FOOTER]-------------------*/
/*------------------------------------------------*/
#footer-widgets {
    padding-top: 60px !important;
}

.et_pb_widget a {
	color: #c33b36 !important;
}

.footer-widget .et_pb_button {
	background: #c33b36;
	color: white !important;
}

/*------------------------------------------------*/
/*--------------------[SIDEBAR]-------------------*/
/*------------------------------------------------*/



/*------------------------------------------------*/
/*------------[CAPTIONS AND ALIGNMENTS]-----------*/
/*------------------------------------------------*/



/*------------------------------------------------*/
/*-----------------[WP CALENDAR]------------------*/
/*------------------------------------------------*/



/*------------------------------------------------*/
/*-------------------[PAGE NAVI]------------------*/
/*------------------------------------------------*/



/*------------------------------------------------*/
/*------------------[ANIMATIONS]-----------------*/
/*------------------------------------------------*/
.shine-me {
    width:100%; /*Make sure the animation is over the whole element*/
    -webkit-animation-name: ShineAnimation;
    -webkit-animation-duration: 10s;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-timing-function: cubic-bezier(.12,.89,.98,.47);
}

@-webkit-keyframes ShineAnimation{
    from {
        background-repeat:no-repeat;
        background-image:-webkit-linear-gradient(
            top left,
            rgba(254, 193, 191, 0.0) 0%,
            rgba(254, 193, 191, 0.0) 45%,
            rgba(254, 193, 191, 0.5) 48%,
            rgba(254, 193, 191, 0.8) 50%,
            rgba(254, 193, 191, 0.5) 52%,
            rgba(254, 193, 191, 0.0) 57%,
            rgba(254, 193, 191, 0.0) 100%
        );
        background-position:-250px -250px;
        background-size: 600px 600px
    }
    to {
        background-repeat:no-repeat;
        background-position:250px 250px;
    }
}


/*------------------------------------------------*/
/*---------------[RESPONSIVE LAYOUTS]-------------*/
/*------------------------------------------------*/

@media only screen and ( min-width: 981px ) {
	.et_header_style_centered #main-header .header_container {
		width: 100%;
		max-width: 1170px;
		margin: 0 auto;
	}
	.et_header_style_centered #main-header .logo_container {
		float: left;
		height: auto !important;
		padding: 20px 0 20px 0;
	}
	.et_header_style_centered #main-header .logo_container #logo {
		width: 280px;
		max-width: 100%;
		max-height: none;
	}
	.et_header_style_centered #main-header .header_right {
		float: right;
		text-align: right;
		padding: 28px 0 0 0;
		width: 430px;
	}
	.et_header_style_centered #main-header .header_right a {
		font-size: 22px;
		color: white;
		text-align: right;
		display: block;
	}
	.et_header_style_centered #main-header .header_right a.phone {
		display: inline-block;
		font-size: 40px;
		padding: 20px;
		background: #c33b36;
		max-width: 80%;
		border-radius: 110px 10px 10px 10px;
		text-shadow: 3px 3px 3px rgba(0,0,0,0.4);
		line-height: 31px;
	}
	.et_header_style_centered #main-header .header_right a.email {
		color: #c33b36 !important;
		font-size: 14px;
		text-align: right;
	} 
	#main-header .header_right a span.call-now {
		display: block;
		text-align: right;
		font-size: 18px;
		text-transform: uppercase;
		font-style: normal;
	}
	.et_header_style_centered #main-header .header_right a span:before {
		color: #3a3a3c;
	}
	.et_header_style_centered #main-header div#et-top-navigation {
		float: left;
	}
	#et-top-navigation nav > ul > li > a {
		padding: 30px 20px !important;
	}
}

/*-------------------[1200px]------------------*/
@media only screen and ( max-width: 1200px ) {
	
	.et_header_style_centered #main-header .logo_container #logo {
		width: 300px;
	}
	.et_header_style_centered #main-header .header_right {
		padding: 60px 40px 0 0;
	}
	.et_header_style_centered #main-header .header_right a {
		font-size: 20px;
	}

}

/*-------------------[960px]------------------*/
@media only screen and ( min-width: 981px ) and ( max-width: 1100px ) {

	/*-------------------[Sliders]------------------*/

	/*-------------------[Portfolio]------------------*/

	/*-------------------[Sidebar]------------------*/
	
	/*-------------------[Menu]------------------*/
	
}

@media only screen and ( max-width: 1024px ) {
	.service-map .wpgmza_sl_main_div {
		position: relative !important;
		width: auto !important;
		top: 0;
		left: 0;
	}
}

/*-------------------[768px]------------------*/
@media only screen and ( max-width: 980px ) {
	
	.et_header_style_centered #logo {
		max-height: 75px;
		width:auto!important;
	}
	.et_header_style_centered #main-header .header_right {
		padding: 20px 0 0 0;
	}
	.et_header_style_centered #main-header .header_right a {
		font-size: 16px;
	}
	.et_header_style_centered .mobile_menu_bar {
		width: 100%;
	}
	.et_header_style_centered .et_mobile_menu {
		top: 33px;
	}
	#et_mobile_nav_menu .mobile_menu_bar:before {
		width: 100%;
		float: right;
		right: 0;
		text-align: right;
		color: #FFF;
	}
	.et_mobile_menu {
		padding: 0;
		background: #121212;
	}
	.et_mobile_menu li a {
		padding: 10px 20px;
	}
	.et_mobile_menu li li {
		padding-left: 0;
	}
	.hero-icon-bar{
		margin-left:auto;
		margin-right:auto;
	}
	.home-slider .et_pb_slides .et_pb_slide .et_pb_container .et_pb_slide_description{
		text-align:center;
	}
	.home-slider .et_pb_slide .buttons {
		margin-left:-30px;
		margin-right:-30px;
	}

	/*-------------------[Portfolio]------------------*/
	
	/*-------------------[Sliders]------------------*/
	
	
	
	/*-------------------[Menu]------------------*/

}
@media only screen and (min-width: 1024px ) and (max-width: 1200px){
	.rev-slider-rfds{
		transform: translateX(-325px)!important;	
	}
}

@media only screen and (min-width: 1201px) and (max-width: 1630px){
	.rev-slider-rfds{
		transform: translateX(-125px)!important;	
	}
}

@media only screen and ( min-width: 981px ) {
	.gform_wrapper textarea.medium {
	    height: 190px !important;
	}
}

@media only screen and ( min-width: 768px ) and ( max-width: 980px ) {

}

@media all and (min-width: 600px) and (max-width: 1200px ) {
	.et_header_style_centered #main-header .header_right {
    		padding: 35px 0 0 0;
		width: 460px;
	}	
}

@media all and ( max-width: 980px ) {
	.et_header_style_centered header#main-header .logo_container {
    		height: auto;
    		max-height: none !important;
	}	
	.above-footer-logos{
		display:flex;
		flex-direction:row;
		justify-content:space-between;
	}
	.above-footer-logos .et_pb_column_empty{
		display:none;
	}
	.above-footer-logos .et_pb_column{
		flex-basis:50%!important;
		margin-right:0!important;
	}
}

@media only screen and ( max-width: 767px ) {

}

@media only screen and ( max-width: 479px ) {
	.call-now-text {
		display: none;
	}

	.et_pb_column_13, .et_pb_column_14, .et_pb_column_17, .et_pb_column_18 {
		width: 50% !important;
	}
	
	#footer-widgets .footer-widget:nth-of-type(1), #footer-widgets .footer-widget:nth-of-type(2) {
		width: 50% !important;
	}
	
	.et_pb_module.et_pb_text.et_pb_text_2.et_pb_bg_layout_light.et_pb_text_align_left {
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
	
	.et_pb_module.et_pb_text.et_pb_text_3.et_pb_bg_layout_light.et_pb_text_align_left {
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
	
	.right-col-form, .left-col-form {
		width: 100% !important;
	}
	.home-slider .et_pb_slide .buttons a{
		font-size:14px;
	}
	.buttons .et_pb_button.right{
		margin-left:8px;
	}
}


.footer-widget.last {
	text-align: center;
}