@charset "utf-8";

/* CSS Document */

.min1024{
	display: none;
}
@media only screen and (max-width: 1500px){
	.bannertext{
		top:75vh;
	}
	#header #logo{
		padding-left:0;
		padding-right:0;
	}
	#header #logo img{
		max-height: none;
		height: auto;
		width: 380px;
	}
}
@media only screen and (max-width: 1440px){
	/*
	.headingtext, .headingtext2{
		line-height: 90px;
	}
	*/
	#header #logo img {		
		width: 216px;
		margin-top: 15px;
	}
	#banner {
		height: 554.697px;
	}
}
@media only screen and (max-width: 1370px){
	#header #logo img {
		max-width: 142px !important;
		margin-top: 15px;
	}
}
@media only screen and (max-width: 1350px){
	#nav ul li{
		margin:0;
	}
	#nav ul > li a{
		font-size:14px;
		padding:5px;
	}
	
	#banner {
		height: 560px;
	}
}
@media only screen and (max-width: 1350px){
	#header #logo,
	#topnav #callus,
	#header #social-links,
	#header #offer2,
	#quote-cont,
	#owner-photo,
	#nav,
	#nav ul{
		float:none;
		margin:auto;
		/*padding:0 10px;*/
		text-align:center;
	}
	#nav{
		display:block;
		padding-top:0 !important;
	}
	body:not([page=index]) #body{
		padding-top:0 !important;
	}
	body:not([page=index]) #header{
		position:relative !important;	
	}
	#header #logo img{
		display: initial;
	}
	#location a{
		padding:0;
	}
	#header #location a{
		transform: none;
	}
	#header #location{
		right:auto;
		transform: none;
	}
	#header #location #callus_cont{
		float: right;
		
		padding-top:7px;
		padding-bottom:7px;
	}
	#header #location:after{
		content:"";
		clear:both;
	}
	
	#billboard-text {
    	top: 25vh;
	}
	
	#billboard-text > .padding > div{
		padding:10px !important;
	}
	
	
	.parallax{
		background-position: center 0px;
	}
}
@media only screen and (max-width: 1350px){
	ul.col5 > li {
		width:33%;
	}
	ul.col5 > li:nth-child(1),
	ul.col5 > li:nth-child(2) {
		width:50%;
	}
	
	.featured1 ul.col2 > li{
		width:100%;
		display: block;
	}
	ul.col2.alt3.reverse > li:first-child {
		float: left;
		width: 35%;
	}
	.max1024{
		display: none !important;
	}
	.min1024{
		display: block !important;
	}
	
	
	h4 {
		font-size: 3vw;
		line-height: 4.3vh;
	}
	
}
@media only screen and (max-width: 1349px){
	/*
	.slant:before,
	.alt-slant:before{
		border-width: 0 0 120px 1023px;
	}
	*/
	#hometext {
		/*display: none;*/
		top:20vh;
	}
	body:not([page=index]) #banner {
		display:none !important;
		/*background: none;*/
	}
	body:not([page=index]) #body{
		padding-top:0px !important; 
	}
	#banner.fullheight{
		height:698px;
	}
	#fullwidth .slide .caption img{
		width:100%;	
	}
	#fullwidth .slide > img{
		width:auto;
		height:100%;	
	}
	#featured-nav{
		margin-top:10px;
	}
	#featured-nav .col2{
		text-align:center;	
	}			
	#featured-nav .col2 li{
		width:45% !important;
		display:inline-block;
	}
	#featured-nav .col2 li:last-child .butt2{
		margin:0 !important;	
	}

	body[page=contact-us] #body{
		padding:0;	
	}
	#header{
		width: 100%;
		height:auto;
		position:relative;
		padding:0;
		background-size: auto 100%;
		padding-bottom:10px;
	}
	#header > .wrapper{
		height:auto;
		overflow:inherit;
	}

	#header #offer2 h2{
		margin:0;
	}
	#topnav #callus{
		display:none;
		margin-bottom:20px;	
	}
	#header #logo{
		padding-top:55px;
		padding-bottom:0px;
		position:relative;
	}
		#header #logo img{
			height: auto;
		}
	#header #nav a{
		padding:5px;
		/*
		padding-top:0;
		padding-bottom: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:18px;	
		line-height:24px;	
		font-weight:normal;
		font-family:'Open Sans Bold', sans-serif;
	}

	#topnav{
		display:none;
	}
	#mobile-calltoaction {
		display: block;
		z-index: 6002!important;
	}
	#mobilemenu{
		display:block;
		padding:10px 0;
		text-align:left;
		color:#FFF;
		font-weight:bolder;
		letter-spacing:2px;
		cursor:pointer;
		position:fixed;
		top:0;
		width:100%;
		z-index:6001;
	}
		#mobilemenu .mobilemenubutton{
			margin-right:10px;	
		}
	#mobilemenu-bottom{
		display:table;
		position:fixed;
		bottom:25px;
		left:15px;
		width:100%;
		z-index:6001;
	}
		#mobilemenu-bottom a{
			background: #cf000f;
			padding: 10px 20px;
			margin: 0;
			margin-right: 10px!important;
			margin-bottom: 0px;
			border-radius: 90px;
			color: #FFF;
			text-align: center;
			letter-spacing: 1px;
			font-weight: bolder;
			font-family: 'Open Sans Bold';
			cursor: pointer;
			text-shadow: 1px 1px 4px rgba(0,0,0,0.8);
			box-shadow: 1px 1px 4px rgba(0,0,0,0.8);
		}
			#mobilemenu-bottom a:hover{
				background:#111;	
			}
	#quote-cont{

	}
	.testimonial > div{
		width:auto;
	}
	#footer{
		position:relative !important;	
	}
	#location{
		display:none!important;
	}
	
	body:not([page=index]) #banner.hide-on-child-pages + #body,
	body:not([page=index]) #banner.hide-on-child-pages + #banner-icons + #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;
		display: block !important;
	}
	#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 !important;
		background: none;
	}
	#header #nav.sidemenu ul > li a,
	#header #nav.sidemenu ul > li > ul > li a{
		font-size:14px;
		padding:15px 15px 15px 20px !important;
		font-weight:500;
		text-shadow: none;
		background-image: none;
	}
	#header #nav.sidemenu ul > li.selected > a{
		background:#333;
		color:#FFF;
		border-radius:0;
	}
	#header #nav.sidemenu ul > li > a:hover{
		border:0 !important;
		box-shadow:none !important;
	}
	#header #nav.sidemenu ul li ul li.selected a,
	#header #nav.sidemenu ul li ul li:hover a{
		background:none !important;
		color: #2452b9 !important;
	}
	#header #nav.sidemenu i:not(dropdown-icon){
		display:inline-table;	
		width:15px;
		text-align:center;
		margin-right:5px;
	}		
	#review-peek .block1{
		margin-top:0;
	}
	/*************************************************************************************************/
	
	#mobile-text-slider{
		display:block;
		background:#b90c0c;
		color:#FFF;
	    width: 80%;
		height:62px;
		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-top:15px;
		}
		#mobile-text-slider strong{
			font-family:'Open Sans Extra Bold', sans-serif;
		}
		
		#mobile-text-slider strong,
		#mobile-text-slider span,
		#mobile-text-slider h2{
			text-transform: uppercase;
			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;	
		}
	#banner{
		padding-top: 0;
	}
	
	
	#billboard-text {
    	top: 8vh;
	}
	
}
@media only screen and (max-width: 1025px){
	.thumb2 {
		padding-left: 30px;
		padding-right: 30px;
		padding-bottom: 30px;
	}
	#billboard-text {
		top: 3vh;
	}
}
@media only screen and (max-width: 960px){
	/*
	.slant:before,
	.alt-slant:before{
		border-width: 0 0 120px 960px;
	}
	*/
}
@media only screen and (max-width: 815px){
	/*
	.slant:before,
	.alt-slant:before{
		border-width: 0 0 120px 815px;
	}
	*/
	.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 !important;
	}

	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.025);	
	}
	#footer2{
		padding-top:0;
		padding-bottom:90px;
	}
}
@media only screen and (max-width: 768px){
	.thumb2 {
		padding-left: 0px;
		padding-right: 0px;
		padding-bottom: 0px;
	}
	.max768{
		display: none;
	}
	#location span.translator {
		display: none;
	}
	.bannertext {
    	top: 45vh;
	}
	.bannertext h4 {
		font-size: 5vw;
		line-height: 5.5vw;
		padding: 0 20px;
	}
	.parallax h3.big {
		letter-spacing: 2px;
	}
	#header {
		background: #fff;
	}
	#header #logo img {
		height: auto;
		/*width: 75%;*/
		max-width: 400px;
		margin-top: 10px;
	}
	.thumb1 {
		margin-bottom: 15px;
	}
	#header.header-small #logo img { 
		max-width: 300px !important;
	}
	.parallax h3.big {   
		font-size: 75px;
		line-height: 80px;
	}
	#hometext{
		max-width: 500px;
	}
	#section-intro .col2 li{
		width:auto;
	}
	#section-intro{
		padding-top:20px;
	}
	.thumb1.left,
	.thumb1.right{
		float:none;
		margin:auto;
		display: table;
		margin-bottom:10px;
	}
	.thumb1.ignore{
		max-width: 90%;
		margin: auto;
	}
	
}
@media only screen and (max-width: 656px){
	/*
	.slant:before,
	.alt-slant:before{
		border-width: 0 0 120px 656px;
	}
	*/
	.scroll-icon {
		display:none;
	}
}
@media only screen and (max-width: 640px){
	/*
	.slant:before,
	.alt-slant:before{
		border-width: 0 0 120px 640px;
	}
	*/
	#hometext h3 {
		font-size: 30px;
	}
	#hometext h2 {
		font-size: 20px;
	}
	#hometext h2 span {
		font-size: 16px;
	}
	.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.col5 > li:nth-child(1),
	ul.col5 > li:nth-child(2),
	ul.col5 > li,
	ul.col4 > li,
	ul.col3 > li,
	ul.col2 > li{
		width:100%;	
		float:none;
	}
	
	#footer .col li{
		text-align:center !important;
	}

	.reverse > li:first-child{
		text-align: center;
	}

	.section .image .wrapper > div{
		width:auto;
		padding:0px 20px;
	}
	.section > .wrapper > .padding{
		padding:20px;
	}
	.parallax .padding{
		padding:20px;
	}
	/*
	.fullwidth h4{
		font-size: 6vw;
		line-height: 6vw;
	}
	*/
	.mobile-view{
		display:block;
	}

	

	#header{
		width: 100%;
		padding:0;
	}
	#testimonials .padding{
		padding:5px;
	}
	#testimonials .testimonial{
		padding:0;	
	}
	
	.section.heading h3{
		font-size:20px;	
	}
	h1{
		font-size:24px;	
		line-height:24px;
	}
	#specials_cont{
		margin-bottom:0px;
	}
	
	.section:not(.slant):not(.alt-slant):not(.bottom-slant) .padding2,
	.section:not(.slant):not(.alt-slant):not(.bottom-slant) .padding3{
		padding:20px;
	}

}
@media only screen and (max-width: 550px){
	/*
	.slant:before,
	.alt-slant:before{
		border-width: 0 0 120px 550px;
	}
	*/
	#mobilemenu-bottom-slider{
		display:table;
		position:fixed;
		bottom:20px;
		width:100%;
		z-index:6001;
	}
	#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,
	.parallax h2:not(.headingtext){
		font-size:20px;
		line-height:20px;
	}
	.parallax h4{
		font-size:16px;
		line-height: normal;
	}
}
@media only screen and (max-width: 480px){
	/*
	.slant:before,
	.alt-slant:before{
		border-width: 0 0 120px 480px;
	}
	*/
	#hometext {
		top:5vh;
	}
	#photo_uploader li{
		padding-bottom:30px !important;	
	}
	.text_group span{
		margin:0;
	}
}
@media only screen and (max-width: 428px){
	.section.napa h3 {   
		font-size: 50px;
		line-height: 52px;
		letter-spacing: 3px;
	}
	/*
	.slant:before,
	.alt-slant:before{
		border-width: 0 0 120px 425px;
	}
	*/
	#brand-scroller img{
		zoom:0.5;
	}
	.simply-scroll, .simply-scroll .simply-scroll-clip{
		height:auto !important;
	}
	
	#banner {
		height: 468px;
	}
	#section_contact{
		padding-bottom: 100px;
		background-size: 200vw;
	}
	#featuredservices1 .block1{
		margin:0;
	}
	.headingtext2{
		font-size:75px;
		line-height: 78px;
	}
	.subheadingtext2{
		font-size:24px;
	}
	.bannertext{
		top:26vh;
	}
	.headingtext, .headingtext2 {
		letter-spacing: 0px;
		font-size: 40px;
    	line-height:42px;
	}
	
	
	#billboard-text{
		top:2vh;
		width: calc(100% - 40px);
	}
	#billboard-text .padding{
		padding-left: 0px;
		padding-right: 0px;
	}
	#billboard-text strong {
		font-size: 30px;
		line-height: 30px;
	}
	#billboard-text ul {
		font-size: 18px;
	}
	#billboard-text .butt1{
		font-size: 12px;
		font-weight: bolder;
		padding: 4px 15px;
		margin: 0;
	}
	
	
	#header #logo img{
		height: auto;
		width: 75%;
	}
	
}
@media only screen and (max-width: 414px){
	/*
	.slant:before,
	.alt-slant:before{
		border-width: 0 0 120px 414px;
	}
	*/
	#callus h2, #callus h3{
		font-size:14px;	
		line-height:14px;
	}
	h2{
		text-shadow:none;	
	}
	.gallery a{
		margin:2px;
		/*width:100%;*/
		background:none;
	}
}
@media only screen and (max-width: 375px){
	#header #logo{
		padding-top:48px;
	}
	#hometext #logo{
		top: 9vh;
	}
	#hometext-peek > .padding{
		/*padding:0;*/
	}
	.bannertext {
		top: 22vh;
	}
	
	.parallax.fullscreen h3, .parallax h3.big {
		text-shadow:0 0 10px rgba(0,0,0,0.5);
	}
	
}
@media only screen and (max-width: 320px){
	#banner {
		height: 625px;
	}
	.headingtext, .headingtext2 {
		letter-spacing: 0px;
		font-size: 35px;
    	line-height:38px;
	}
	/*
	.slant:before,
	.alt-slant:before{
		border-width: 0 0 120px 320px;
	}
	*/
	#hometext {
		top:2vh;
	}
	#mobile-text-slider{
		width: 75%;
	}
	#mobile-text-slider h2{
		font-size:8vw;
	}
	#mobile-text-slider ul li{
		padding:20px 0;
	}
	#mobilemenu-bottom a {
		padding: 20px 10px;
		margin-right: 5px!important;
	}
}