@charset "utf-8";
/* CSS Document */
@media only screen and (max-width: 1450px){
	#hometext #hometext-peek {
		top: 160px;
	}
}
@media only screen and (max-width: 1440px){
	#nav {
		text-align: center;
	    margin-top: -44px;
	}
	#nav ul {
		text-align: center;
	}
}
@media only screen and (max-width: 1305px){
	#nav ul li {  
		margin: 0 10px;
	}
}
@media only screen and (max-width: 1215px){
	#nav ul li{
		margin:0 6px;
	}
	#nav ul > li a{
		font-size:14px;
		padding:5px;
	}
	#banner {
		height: 610px!important;
	}
}
@media only screen and (max-width: 1111px){
	#header.header-small #nav ul {	
		padding-top: 0px;
	}
	#header.header-small #location {   
	    margin-top: 19px;
	}
	#hometext #hometext-peek {
		top: 275px;
	}
	a.butt1.minibutton {
		margin: 0px!important;
		font-size: 1.8em;
    	line-height: 1em;
		}
	#location {
    text-align: center;	
	}
	#header #logo,
	#topnav #callus,
	#header #social-links,
	#header #offer2,
	#quote-cont,
	#owner-photo,
	#nav,
	#nav ul{
		float:none;
		margin:auto;
		text-align:center;
	}
	#nav{
		display:block;
		padding-top:0!important;
	    margin-top: -42px;
	}
	#header.header-small #nav {
		margin-top: -8px;
	}
	body:not([page=index]) #header {
		height:290px;
		/*position: inherit;*/
	}
	body:not([page=index]) #banner.hide-on-child-pages + #body {
		padding-top: 0px;
	}
	#header.header-small {		
		transition: 500ms;				
	}
	#header ul.dropdown {
   		 margin-top: 28px;
	}
}
@media only screen and (max-width: 1024px){	
	ul.col5 > li {
		width: 19.15%;
	}
	#header.header-small {
		height: 240px;
	}
	body:not([page=index]) #header.header-small #logo img {
		margin-top: 0px;
		margin-bottom: 0px;
	}
	body:not([page=index]) #body {
		padding-top:300px;
	}
		body:not([page=index]) #header.header-small {
			transition: 200ms;
			height: 215px;
		}
	body:not([page=index]) #social-icons h2 {				
	}
	body:not([page=index]) #social-icons h2:hover {		
		color: #fff;
	}
	body:not([page=index]) .fa-facebook {		
	}
	.section.slant-alt:after{
		border-width: 120px 0 0 1024px;
	}
	 .thumb1.right,
	 .thumb1.left {
		 float: none;
	}
	.list2,
	ul.list2.bullet li{
		width:auto;
	}
	#location {  
        margin-top: -24px;
	}
	a.butt1.minibutton {
		margin: 0px!important;
		font-size: 1.8em;
    	line-height: 1em;
	}
	#hometext h3 {
		font-size: 40px;
		-webkit-transform: translateY(35rem);
		transform: translateY(35rem);
		line-height: 1.25;
	}
	#hometext #hometext-peek {
		top: 250px;
	}
	#header ul.dropdown {
		margin-top: 42px;
	}
	#serviceimage img {
		max-width: 500px;
	}
	#header #nav {		
		margin-top: -58px;
	}
	#header.header-small #location {   
		float: none!important;
	}	
	#header.header-small #nav {		
		float: none!important;
		text-align: center!important;
		margin-top: 20px;
		margin-bottom: -10px;
	}
	#header.header-small #nav, #header.header-small #nav ul {
		text-align: center!important;
		padding-right: 16px;
		margin-top: -13px;
		margin-bottom: 0px;
	}
	#header.header-small #nav ul > li a {
		transition:none!important;
	}
}
@media only screen and (max-width: 1023px){
	#header #nav {
		margin-top:-42px;
	}
	.thumb1{
		max-width:100%;
	}
	body:not([page=index]) #header #nav {	
	margin-top:-42px;
	}
	#nav ul li {
		margin: 0;
	}
	ul.col4 > li {
		width: 100%;
	}
	ul.bullet li {
		width: 50%;
	}
	#hometext #hometext-peek {    
    	top: 120px;
	}
	body:not([page=index]) #header {
		height: 100%;	
	}
	#nav ul:not(.sub_menu) > li a:before {
		display:none!important;		
	}
	#nav ul li.selected > a {
 	 border-bottom: none!important;
	}
	#header.header-small #nav {
		margin-top: 0px;
	}
	body:not([page=index]) #banner {
		display:none!important;
	}
	body:not([page=index]) #body{
		padding-top:0px!important; 
	}
	#header ul.dropdown {
	}
	#fullwidth .slide{
	}
	#fullwidth .slide .caption img{
		width:100%;	
	}
	#fullwidth .slide > img{
		width:auto;
		height:100%;	
	}
	#header{
		height:auto;
		position:relative;
		padding:0;
		background-size: auto 100%;
		padding-bottom:10px;
		background:#333333;
	}
	#header > .wrapper{
		height:auto;
		overflow:inherit;
	}
	#topnav #callus{
		display:none;
		margin-bottom:20px;	
	}
	#header #logo{
		padding-top: 55px;
        padding-bottom: 0px;
		position:relative;
		margin-bottom: -33px;
	}
	#header #nav a{
		padding:5px;
	}
	#header #nav > li:first-child a{
		padding: 5px 0 10px 5px;
	}
	#header #nav > li:last-child a{
		padding-bottom:15px;
	}
	#header #social-links{
		text-align:center;
		margin-top:0;
	}
	#header #social-links a{
		display:inline-block;
	}
	.notmobile{
		display:none;	
	}
	#footer ul.col2 li,
	#footer .col2 li:last-child{
		width:100%;
		text-align:center;
	}
	ul.col2.alt > li,
	ul.col2.alt > li:first-child,
	ul.col2.alt > li:last-child{
		width:50%;
	}
	.section > .wrapper > .padding{
		padding:20px;	
	}
	
	.section.heading.alt{
		text-align:center;	
	}
	.section.heading.alt img{
		margin:0;
		float:none;
	}
	.section.heading{
		padding:6px;
	}
	.section.heading h3,
	.section.heading h1{
		font-size: 1.5em;
    	line-height: 1em;	
		font-weight:normal;		
	}
	.section.heading h1{
		margin-top: 10px;
	}
	#topnav{
		display:none;
	}
	#mobilemenu{
		display:block;
		padding:10px 0;
		text-align:left;
		background:#1d1d1d;
		color:#FFF;
		font-weight:bolder;
		letter-spacing:2px;
		cursor:pointer;
		position:fixed;
		top:0;
		width:100%;
		z-index:6001;
	}
	#mobilemenu .mobilemenubutton{
		margin-right:10px;	
	}
	.testimonial > div{
		width:auto;
	}
	#footer{
		position:relative!important;	
	}
	#footer2{
		padding-bottom:60px;
	}
	#location{
		display:none;  
	}
	/**************************************************************/
	body:not([page=index]) #banner.hide-on-child-pages + #body{
		padding-top:0px;
	}
	/***********************************************************************************************/	
	#header #nav:not(.sidemenu){
		position:fixed;
		padding:0;
		top:0;
		display:none;
		width:100%;
		margin-bottom:0;
		margin-top:47px;
		z-index:6000;
	}
	#header #nav:not(.sidemenu) ul li{
		border-bottom:1px solid rgba(255,255,255,0.1);	
	}
	#header #nav:not(.sidemenu) ul:not(.sub_menu) > li.selected > a{
		color:#FFF!important;
	}
	#header #nav:not(.sidemenu) ul:not(.sub_menu) li{
		display:block!important;
		font-size:20px;
		text-align:left;
		background:rgba(0, 0, 0, 0.9);
	}
	#header #nav:not(.sidemenu) ul:not(.sub_menu) li a{
		font-size:20px;
		color:#FFF;
		padding-left:10px;
	}
	#header #nav:not(.sidemenu) .sub_menu{
		width:auto!important;
		visibility:visible!important;
		position:relative!important;
		box-shadow:none!important;
		border:0!important;
		background:none!important;
		padding-bottom:10px!important;
	}
	#header #nav:not(.sidemenu) .sub_menu li{
		height:auto!important;
		border:0!important;
		padding:0!important;
		display:block!important;
		background:none!important;
	}
	#header #nav:not(.sidemenu) .sub_menu li:first-child{
		display:none!important;
	}
	#header #nav:not(.sidemenu) .sub_menu li a{
		margin-bottom:0!important;
		padding-bottom:0!important;
		padding:5px 20px!important;
		text-align:left!important;
		color:rgba(255,255,255,0.8)!important;
	}
	#header #nav:not(.sidemenu) ul > li a i{
		display:none;
	}
	/***********************************************************************************************/
	#header #nav.sidemenu{
		position:fixed;
		display:block;
		bottom:0;
		top:0;
		max-width:320px;
		overflow-x:hidden;
		z-index:6003;		
		background:#FFF;
		width:90%;
		width:calc(100%-56px);		
		padding:0;		
		-webkit-box-sizing: inherit;
		box-sizing: inherit;
		-webkit-transform: translateX(-100%);
		transform: translateX(-100%);		
		will-change: transform;		
	}
	#header #nav.sidemenu.is_open{
		-webkit-box-shadow: 0 8px 10px -5px rgba(0,0,0,0.2),0 16px 24px 2px rgba(0,0,0,0.14),0 6px 30px 5px rgba(0,0,0,0.12);
		box-shadow: 0 8px 10px -5px rgba(0,0,0,0.2),0 16px 24px 2px rgba(0,0,0,0.14),0 6px 30px 5px rgba(0,0,0,0.12);
		-webkit-transform: translateX(0);
		transform: translateX(0);
		transition:transform 200ms ease-in-out;
	}
	#header #nav.sidemenu ul > li{
		display:block;
		text-align:left;
	}
	#header #nav.sidemenu ul > li > ul{
		width:auto!important;
		visibility:visible!important;
		position:relative!important;
		box-shadow:none!important;
		border:0!important;
		background:none!important;
		display:none;
		padding:15px;
		padding-top:0;
		padding-bottom:0!important;
	}
	#header #nav.sidemenu ul > li:not(.selected) a,
	#header #nav.sidemenu ul > li:not(.selected) > ul > li a{
		color:#333;
	}
	#header #nav.sidemenu ul > li a,
	#header #nav.sidemenu ul > li > ul > li a{
		font-size:15.5px!important;
		padding:15px 15px 15px 20px!important;
		font-weight:500;
	}
	#header #nav.sidemenu ul > li.selected > a{
		border-radius:0;
		background: #0044db;
		color:#fff !important;		
	}
	#header #nav.sidemenu ul > li > a:hover{
		border:0!important;
		box-shadow:none!important;
		color:#fff !important;
		background: #0044db;
		border-radius:0px;
	}
	
	#header #nav.sidemenu ul li ul li:hover a{
		background: #000!important;
		color: #fff!important;
	}
	#header #nav.sidemenu ul li ul li.selected a {
		color:#1e1e1e !important;
	}
	#header #nav.sidemenu i:not(dropdown-icon){
		display:inline-table;	
		width:15px;
		text-align:center;
		margin-right:5px;
		font-size: 15px;
	}
			
	#review-peek .block1{
		margin-top:0;
	}	
	/*************************************************************************************************/
	#mobile-text-slider{
		display:block;
		background:#b90c0c;
		color:#FFF;
	    width: 80%;
		height:72px;
		text-align:center;
	}
	#mobile-text-slider > div{
		overflow: hidden;
		position: relative;
		width: 100%;
	}
	#mobile-text-slider > div ul {
		list-style: none;
		width:100%;
		margin: 0;
		padding: 0;
		position: relative;
	}
	#mobile-text-slider > div ul li{
		width:100%;
		float:left;
		text-align: center;
		position: relative;
	}
	#mobile-text-slider ul li{
		padding:15px 0;
	}
	#mobile-text-slider strong{
		font-family:'Open Sans Extra Bold', sans-serif;
	}
	#mobile-text-slider strong,
	#mobile-text-slider span,
	#mobile-text-slider h2{
		display:block;
	}
	#mobile-text-slider strong,
	#mobile-text-slider span{
		font-size:4.5vw;
		line-height:4.5vw;
		margin-right:15px;
	}
	#mobile-text-slider span{
		letter-spacing:2px;
		font-size:4vw;
	}
	#mobile-text-slider h2{
		color: #FFF;
		text-align: center;
		font-size: 9vw;
		margin-right: 15px;	
	}
	#mobilemenu-bottom{
		width:calc(100% - 20px);
		padding:0 10px;
		display:block;
		position:fixed;
		bottom:0;
		z-index: 1001;
	}
	#mobilemenu-bottom > a:not(:last-child){
		background: #0044db;
		display: inline-block;
		border-radius: 100px;
		vertical-align: middle;
		padding: 15px 22px;
		font-family: 'Open Sans Bold', sans-serif;
		margin-top: 22px;	
	}
	#mobilemenu-bottom > a:not(:last-child),
	#mobilemenu-bottom > a:not(:last-child) > .fa{
		    color: #fff;
			font-size: 16px;
			vertical-align: unset;
			text-shadow: none !important;
	}
	#mobilemenu-bottom > a:not(:last-child) > .fa{
		font-size:20px;
	}	
	#mobilemenu-bottom #mobile-calltoaction{
		width:80px;
		height:80px;
		text-align: center;
		border-radius: 100px;
		background: #37c837;
		float:right;
		margin-bottom: 10px;
	}
	#mobile-calltoaction .fa.fa-phone{
		color:#FFF;
		font-size: 60px;
		line-height: 85px;	
	}
	#mobilemenu-bottom > a{
		box-shadow:0 0 0 5px rgba(0,0,0,0.1),inset 0 0 0 5px rgba(0,0,0,0.1);
		text-shadow: 1px 1px 4px rgba(0,0,0,0.8);
	}
}
@media only screen and (max-width: 990px){
	#header.header-small #nav ul > li {
		margin: 0 0px;
	}
	#header.header-small #nav, #header.header-small #nav ul {
		text-align: center!important;
		padding-right: 0px;
		margin-top: -12px;		
	}
}
@media only screen and (max-width: 960px){
	.section.slant:after{
		border-width: 0 0 120px 960px;
	}
	.section.slant-alt:after{
		border-width: 120px 0 0 960px;
	}
	ul.col5 > li {
		width: 50%;
	}
}
@media only screen and (max-width: 920px){
	#nav ul li {
		margin: 0 0px;
	}
}
@media only screen and (max-width: 895px){
	ul.col6 > li {
		width: 32.6%;
	}
	ul.bullet li {
		text-align: inherit;
		max-width: 600px;
		width: 100%;
	}
}
@media only screen and (max-width: 815px){
	ul.col5 > li {
		width: 50%;
	}
	.service-box .service-content h3 {
		font-size: 25px;   
		line-height: 45px;
	}
	.gallery{
		text-align:center;
	}
	#body_body .wrapper > .col2.alt .padding{
		padding:20px;	
	}
	ul.col2.alt > li,
	ul.col2.alt > li:first-child,
	ul.col2.alt > li:last-child,
	ul.col2.alt2 > li,
	ul.col2.alt2 > li:first-child,
	ul.col2.alt2 > li:last-child,
	ul.col2.alt3 > li,
	ul.col2.alt3 > li:first-child,
	ul.col2.alt3 > li:last-child{
		width:100%;
		padding:0;
	}
	ul.reverse > li{
		width:100%!important;	
	}
	ul.reverse > li > .padding{
		padding:0!important;
	}
	ul.col2 > li > .padding{
		padding:0;
	}
	ul.col2 > li:nth-child(2) > .padding{
		padding-top:10px;
	}
	ul.col3 > li:nth-child(2) ul.bullet,
	ul.col3 > li:nth-child(3) ul.bullet{
		float:none;
		display:block;
	}
	ul.col4{
		margin:0;
		padding:0;
	}
	ul.col4 > li{
		width:100%;
		float:none;
	}
	#footer .col.col4 li:nth-child(2n+1){
		background:rgba(0,0,0,0.25);	
	}
	#footer2{
		padding-top:0;	
	}
}
@media only screen and (max-width: 780px) {
	#hometext h3 {
		font-size: 12vh;
		line-height: 15vh;
		-webkit-transform: translateY(30rem);
		transform: translateY(30rem);
	}
	#hometext h3 span {
		font-size: 5.5vh;
		line-height: 1.5vh;
	}
}
@media only screen and (max-width: 768px){
	body:not([page=index]) #header {
    	height: 168px;
	}
	#services-home > ul > li > ul > li {
		padding: 10px;
	}
	ul.col5 > li {
		width: 94%;
	}
	.section.slant:after{
		border-width: 0 0 120px 768px;
	}
	.section.slant-alt:after{
		border-width: 120px 0 0 768px;
	}
	ul.col2 > li {
		width: 50%!important;
	}
	#nav {
	    margin-top: -30px;
	}
	#header.header-small #nav ul > li {
		margin: 0 0px;
		transition: none!important;
	}
	#header.header-small #nav, #header.header-small #nav ul {
		text-align: center!important;
		padding-right: 0px;
		margin-top: 0px!important;
		transition: none!important;
	}
	#header.header-small #nav {
		margin-top: 0px;
		transition: none!important;
	}
	h2.services {
		font-size: 18px;
	}
	ul.col2 > li {
		width: 100%;
	}
	#hometext h3 {
		font-size: 7vh;
		line-height: 8vh;
	}
	#hometext h3 span {
		font-size: 3.5vh;
		line-height: 1.5vh;
	}
	#hometext #hometext-peek {
		top: 50px;
	}
	.thumb1.right,
	.thumb1.left {
		float: none;
		margin: 0;
		margin-bottom: 10px;
		text-align: center!important;
	}
	ul.col3 > li {
		width: 32.5%;
	}
}
@media only screen and (max-width: 660px){
	ul.col5 > li {
		width: 100%;
	}
	#footer_logo .logo img {
		margin-bottom:10px;		
	}
	#footer_logo .microreview {
		margin-bottom:10px;		
	}
	#banner {
		height:350px!important;
	}
}
@media only screen and (max-width: 640px){
	.section.slant:after{
		border-width: 0 0 120px 640px;
	}
	.section.slant-alt:after{
		border-width: 120px 0 0 640px;
	}
	ul.col3 > li.servicetop {
	    box-shadow: 0 -25px 0 0 #0044db!important;
	}
	img.right {
		float: none!important;
	}
	h2.services {
		margin-top: -35px;
	}
	#hometext h3 span {
	    font-size: 4.5vh;  		 
	}
	#hometext #hometext-peek {
		top: 30px;
	}
	#header.header-small .fa-phone {		
		transition: none!important;
	}
	.section.highlight.alt{
		padding:10px;
	}
	.section.highlight.alt h3{
		font-size:20px;
	}
	.section.highlight.alt .text_group span{
		margin:0 2px;
	}
	ul.col3{
		margin:0;	
	}
	ul.col4 > li,
	ul.col3 > li,
	ul.col2 > li{
		width:100%;	
		float:none;
	}
	#footer .col li{
		text-align:center!important;
	}
	.thumb1.left,
	.thumb1.right{
		float:none!important;
		margin:0;
		margin-bottom:10px;
		text-align: center!important;
	}
	.section .image .wrapper > div{
		width:auto;
		padding:0px 20px;
	}
	.section > .wrapper > .padding{
		padding:20px;
	}
	.parallax .padding{
		padding:20px;
	}
	.fullwidth h4{
		font-size:3vw;
		line-height:3vw;
	}
	ul.col4#specials > li {
		width:45%;
	}
	.mobile-view{
		display:block;
	}
	#header{
		padding:0;		
    	padding-bottom: 10px
	}
	#testimonials .padding{
		padding:5px;
	}
	#testimonials .testimonial{
		padding:0;	
	}	
	.section.heading h3{
		font-size:20px;	
	}
	h1{
		font-size: 2em;
    	line-height: 1.2em;
	}
	.padding2,
	.padding3{
		padding:20px;
	}
	ul.col2.alt > li, ul.col2.alt > li:first-child {
		width: 100%!important;
	}
}
@media (max-width: 575px) {
	#hometext h3 {
		letter-spacing: 0;
		font-size: 9.5vh;
		line-height: 10vh;
	}
	#hometext #hometext-peek {
		top: 50px;
	}
	ul.col3 > li {
	box-shadow: 0 -18px 0 0 #0044db!important;
	}
}
@media only screen and (max-width: 550px){
	#callus{
		padding-top:10px!important;
	}
	#callus h2,
	#callus h3{
		font-weight:900;
		font-size:18px;	
		line-height:18px;
	}
	.parallax.fullscreen h3,
	.parallax h3.big{
		font-size:30px;
		line-height:30px;
	}
	.parallax.fullscreen h2,
	.parallax h2{
		font-size:20px;
		line-height:20px;
	}
}
@media only screen and (max-width: 525px){
	a.butt1.minibutton {
		margin: 0px!important;
		font-size: 1em!important;
   		line-height: 1em!important;
	}
}
@media only screen and (max-width: 480px){	
	#hometext #hometext-peek {
		top: 60px;
	}
	.text_group span{
		margin:0;
	}
	ul.col5 > li {
		width: 100%;
	}
}
@media only screen and (max-width: 470px){
	ul.col6 > li {
		width: 50%;
	}
	#footer2 {
    padding-bottom: 100px;
	}
}
@media only screen and (max-width: 450px){
	#hometext h3 {
		font-size: 4vh!important;
		line-height: 4.5vh !important;
	}
}
@media only screen and (max-width: 425px){
	#hometext #hometext-peek {
		top: 30px;
	}
	.thumb1.left, .thumb1.right {		
		max-width: 385px;
		width: 88% !important;
	}
	ul.col5 > li {
		width: 89%;
	}
	ul.col2 > li {
		width: 100%!important;
	}
	#hometext h3 {
		font-size: 5vh;
		line-height: 5.5vh;
	}
	.callout h3 { 
    	font-size: 35px;
   		line-height: 40px;
	}
	ul.col3 > li {
		box-shadow: none !important;
	}
}
@media only screen and (max-width: 414px){
	#hometext h3 {
		font-size: 3.5vh;
	}
	#footer_logo .list1 li {
		display: block;
	}
}
@media only screen and (max-width: 410px){
	.text2 h3 {
		line-height: 25px;
		font-size: 25px;
	}
	#callus h2, #callus h3{
		font-size:14px;	
		line-height:14px;
	}
	ul.col4#specials{
		text-align:center;
		padding:20px 0;
	}
	ul.col4#specials > li{
		width:45%;
		box-shadow:none;
		border-bottom:0;
	}
	ul.col4#specials > li:nth-child(2){
		box-shadow:none!important;	
	}
	ul.col4#specials > li a,
	ul.col4#specials > li:hover a{
		margin:5px;
		padding:20px;
		background:rgba(0,0,0,0.05);
		box-shadow:inset 0 0 0 1px rgba(0,0,0,0.05);
		border-radius:10px;
	}
	.gallery a{
		margin:2px;
		width:100%;
		background:none;
	}
	#hometext h3 {
			font-size: 3vh;
		}
}
@media only screen and (max-width: 375px){	
	#hometext h3 {
		font-size: 5vh!important;
		line-height: 5.5vh!important;
	}
	#hometext #hometext-peek {
		top: 50px;
	}
}
@media only screen and (max-width: 320px){
	body:not([page=index]) #header.header-small #nav {
		margin-top:0px!important;
	}
	.callout h3 {
		font-size: 25px;
		line-height: 30px;
	}
	#hometext h3 {
		font-size: 4vh!important;
   		line-height: 4.5vh!important;
	}
	#mobilemenu-bottom > a:not(:last-child) {
		font-size: 13px;
		font-weight: 200;
		padding: 11px 18px;
		font-family: 'Open Sans Bold', sans-serif;
	}
	#hometext h3 {
		font-size: 7.5vh;
	}
	ul.col4#specials{
		text-align:center;
		padding:0;
	}
	ul.col4#specials > li a,
	ul.col4#specials > li:hover a{
		padding:10px;
	}
	ul.col6 > li {
		width:100%;
	}
	#mobile-text-slider{
		width: 75%;
	}
	#mobile-text-slider h2{
		font-size:8vw;
	}
	#mobile-text-slider ul li{
		padding:20px 0;
	}
}