/******************************
RESPONSIVE STYLES 
******************************/

@media screen and (max-width: 1200px){
    #gallery .img-box{
        height: 278px;
    }
	.main-menu > ul > li:first-child .sb-menu{
		left:0;
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}
	.main-menu > ul > li:first-child .sb-menu:before{
		left: 11%;
		margin-left: 0;
	}
	.main-menu > ul > li:last-child .sb-menu{
		left: inherit;
		right: 0;
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}
	.main-menu > ul > li:last-child .sb-menu:before{
		left: inherit;
		right: 15%;
		margin-left: 0;
	}
	.sub-menu {
		padding: 15px;
		width: 246px;
	}
	.main-menu > ul > li:first-child .sub-menu {
		left: 115%;
	}
	.main-menu > ul > li:first-child .sub-menu:before{
		left: 25%;
	}
	.main-menu > ul > li:last-child .sub-menu {
		left: 0;
	}
	.main-menu > ul > li:last-child .sub-menu:before{
		left: 80%;
	}
	.sub-menu > li > a {
		font-size: 13px;
	}
	.main-content .side-text{
		left: 220px;
	}
	
	.product-gallery a {
		width: 25%;
	}
}

@media screen and (max-width: 1100px){
	.main-menu,
	#inner-banner > .cell > .relative,
	#slider .relative, .about-content .container,
	#footer > .relative, .bar-callout .cell,
	.breadcrumbs,.main-title{
		padding-left: 20px;
		padding-right: 20px;
	}
	#header .top-bar .cell:first-child,
	.main-content .content,#inner .banner > .cell .cell:nth-child(2){
		padding-left: 20px !important;
	}
	#header .top-bar .cell:last-child,.sidebar{
		padding-right: 20px !important;
	}
	#header .top-bar{
		font-size: 13px;
	}
	#home .social a,.social a{
		font-size: 16px;
	}
	#home .main-menu li a{
		font-size: 14px;
	}
	.fixed #home .main-menu > ul > li > a,
	.fixed .main-menu > ul > li > a,
	.main-menu > ul > li > a{
		font-size: 13px;
	}
	.main-menu > ul{
		height: 50px;
	}
	#inner #header, .fixed #header{
		height: 80px;
	}
	.center-logo img{
		width: 150px;
		height: 88px;
		top: -21px;
	}
	.unslider .unslider-arrow.prev{
		left: 5px;
		background: url(../images/arrows/sl-left-hvr.png) no-repeat center center #e24823;
	}
	.unslider .unslider-arrow.next{
		right: 5px;
		background: url(../images/arrows/sl-right-hvr.png) no-repeat center center #e24823;
	}
	#footer .page .cell:last-child{
		width: 35%;
	}
	.main-content .side-text {
		left: 202px;
	}
  #inner .banner > .cell .cell:nth-child(3){
    width: 50%;
  }
  
  .img-overlay {
		width: 80%;
		left: 10%;
		right: 10%;
		top: 15%;
		bottom: 15%;
  }
	.product-gallery a {
		width: 33.33%;
	}
	.top-nav .sub-location:before {
		left: 25%;
	}
	.top-nav > li:nth-child(1) > ul:nth-child(2) {
		left: 95%;
		width: 216px;
	}

	.top-nav > li:nth-child(2) > ul:nth-child(2) {
		left: 66%;
		width: 148px;
	}
}

@media screen and (max-width: 1024px){
	.main-content .cell.side-left,
	.main-content .cell.side-right,
	#inner .banner > .cell .cell:first-child,
	#inner .banner > .cell .cell:last-child{
		display: none;
	}
	#inner .top-bar .center-logo img {
		top: 27px;
	}
	.fixed #home .main-menu > ul > li > a,
	.fixed .main-menu > ul > li > a,
	.main-menu > ul > li > a{
		padding: 15px 3px 15px 5px;
	}
	#inner .banner  .cell{
		height: 280px;
	}
	.main-content .content{
		width:67%;
	}
	.sidebar{
		width: 33%;
		padding-left: 20px;
	}
	.top-nav li a span {
		font-size: 0;
	}
	.top-nav li a:before {
		content: '\f095';
		font-family: 'Fontawesome';
		font-size: 16px;
		padding-right: 5px;
		position: relative;
		top: 1px;
	}
	.sub-menu li {
		padding: 0 8px;
	}
	#items .page .cell{
		padding-right: 10px;
	}
	#items .page .cell:last-child{
		padding-right: 0;
	}
	#social .testimonial,
	#social .twitter{
		padding: 40px 20px;
	}
	#social .testimonial .unslider-wrap h4{
		margin-bottom: 0;
	}
	.testimonial .unslider-wrap li{
		padding: 0 40px;
	}
	#social .equipment > div{
		background-position: left 20px center;
	}
	#social .facebook > a > div:last-child{
		padding: 30px 15px 31px 20px;
	}
	.quick-links{
		margin: 0 -12px;
	}
	.quick-links li{
		padding: 0 2px;
		font-size: 14px;
	}
	.quick-links li a{
		padding-top: 130px;
		height: 200px;
	}
	.main-content .table > .cell:first-child{
		padding-right: 40px;
	}
	.main-content .table > .cell.side-col-call {
		padding: 0px;
	}
	#gallery.all-galleries .table .cell:first-child{
		padding-right: 5px;
	}
	#gallery.all-galleries .table .cell:nth-child(2){
		padding-left: 0px;
	}
	.img-overlay > .table > .cell.middle {
		padding-right: 0px;
	}
	.main-content .side-text{
		display: none;
	}
	
	/*** Service Area Maps ***/
	#us-map-container,
	#state-map-container {
		min-width: inherit;
	}
	#us-map-container .desktopImage,
	#state-map-container .desktopImage {
		display: none;
	}
	#us-map-container .mobileImage,
	#state-map-container .mobileImage {
		display: block;
	}
	#us-map-container .map-info-container div,
	#state-map-container .map-info-container div {
		display: inline-block;
		width: 44%;
		text-align: left;
	}
	
	#maps > div {
		display: block;
		height: 300px;
		width: 100%;
		padding: 0px;
	}
	#maps #gmap_canvas_cf {
		border-bottom: solid 2px #700C20;
	}
	#maps #gmap_canvas_ec {
		border-bottom: solid 2px #700C20;
	}
	#maps #gmap_canvas_cf,
	#maps #gmap_canvas_ec,
	#maps #gmap_canvas_hl {
		margin: 0px !important;
		width: 100%;
	}
}

@media screen and (max-width: 900px) {
	#home .center-logo img{
		width: 178px;
		height: 104px;
		top: 35px;
		margin-left: -84px;
	}
	#home #header .top-bar .cell:first-child,
	#home #header .top-bar .cell:last-child{
		padding-top: 80px;
	}
	.fixed #home .center-logo img,
	.fixed .center-logo img,
	.center-logo img{
		width: 120px;
		height: 70px;
		top: 40px;
	}
	.header-wrapper .main-menu > ul > li:first-child {
		padding-left: 2%;
	}
	.header-wrapper .main-menu > ul > li:nth-child(4) {
		margin-left: 20%;
	}
	#inner .top-bar .center-logo img {
		top: 29px;
	}
	.main-menu li.logo-item{
		padding: 0 3px;
	}
	.fixed #home .main-menu > ul > li > a,
	.fixed .main-menu > ul > li > a,
	.main-menu > ul > li > a{
		font-size: 12px;
	}
	.main-menu{
		padding: 0 5px !important;
	}
	.sb-menu{
		width: 280px;
	}
	.sb-menu li{
		margin-bottom: 10px;
	}
	.fixed #home .search-box.show, .search-box.show{
		padding: 5px 0;
	}
	.social span{
		padding-right: 10px;
	}
	#home .main-menu > ul > li > a{
		padding: 25px 7px 25px 2px;
	}
	#home .main-menu > ul > li:after{
		width: 1px;
	}
	#home .main-menu li a{
		font-size: 13px;
	}
	.unslider{
		height: 440px;
	}
	.slide-text .large-text{
		font-size: 58px;
		line-height: 54px;
	}
	#gallery .img-box {
		height: 220px;
	}
	.gal-row-1 > .cell:nth-child(2){
		width: 260px;
	}
	.gallery-info .cell{
		padding: 30px 10px;
	}
	.logo-gb{
		margin-right: 20px;
	}
	.sub-menu > li > a {
		font-size: 12px;
	}
}

@media screen and (max-width:770px) { /* Tablet View */
	.home-video-container iframe {
		width: 100% !important;
	}
	.reset .header-wrapper{
		top: 0;
	}
	.fixed #home #header .top-bar .cell:first-child,
	.fixed #home #header .top-bar .cell:last-child,
	.fixed #header .top-bar .cell:first-child,
	.fixed #header .top-bar .cell:last-child,
	#home #header .top-bar .cell:first-child,
	#home #header .top-bar .cell:last-child,
    #header .top-bar .cell:first-child,
    #header .top-bar .cell:last-child{
		padding: 18px 0 15px;
		vertical-align: middle;
	}
	#inner .top-bar .center-logo img {
		top: -5px;
	}
	#home .social a,
    .fixed #home .social a, .social a{
		margin: 0 5px 0 0;
		font-size: 16px;
	}
	.social span{
		display: none;
	}
	#inner .top-bar .center-logo img, .fixed #home .top-bar .center-logo img {
		display: block;
	}
    .main-menu .logo-item,
	.fixed .main-menu .logo-item,
	.fixed #home .main-menu .logo-item,
	.menu-wrapper{
		display: none !important;
	}
	#header .top-bar{
		height: 100%;
	}
    #inner #header, .fixed #header{
        height: 65px;
    }
	.header-wrapper,
	.fixed .header-wrapper,
	.fixed #home .header-wrapper,
	#home .header-wrapper{
		background: #111111;
		position: fixed !important;
		color: #ffffff;
        height: auto;
        min-height: 65px;
        z-index: 10;
	}
	.fixed #home .center-logo img,
	.fixed .center-logo img, .center-logo img,
	.logo-tiem .center-logo img,
	#home .center-logo img{
		width: 120px;
		height: 70px;
		margin-left: -60px;
		position: absolute;
		left: 50%;
		top: 4px;
	}
	.header-wrapper .main-menu > ul > li:first-child,
	.header-wrapper .main-menu > ul > li:nth-child(4) {
		margin-left: 0;
	  padding-left: 0;
	}
	#home #menu, #menu {
		background: #111111;
        transition: none;
	}
	#home .social a.search-btn::before {
		font-size: 16px;
	}
	#home .social a.search-btn.close::before {
		font-size: 19px;
	}
/*
	.fixed #home .social a.search-btn:before,
	#home .social a.search-btn,#home .social a.search-btn:hover,
	.fixed #home .social a.search-btn:hover,
	.social a.search-btn,.social a.search-btn:hover{
		font-size: 16px;
	}
*/
    .fixed #home .search-box, .search-box{
        background: #111111;
    }
    .fixed #home .search-box input[type="text"],
    .search-box input[type="text"]{
        color: #ffffff;
        border-color: #ffffff;
    }
    .fixed #home .search-box input[type="submit"], .search-box input[type="submit"] {
        background: url(../images/icons/search-large.png) center center no-repeat !important;
        background-size: 100% !important
    }
/*
    .fixed #home .social a.search-btn.close, .social a.search-btn.close{
        background: url(../images/icons/search-close-home.png) no-repeat !important;
    }
*/
	#home .main-menu > ul > li:after{
		content: none;
	}
	.social a.search-btn{
		margin-right: 35px !important;
	}
	#nav-btn{
		display: block;
		width: 30px;
		position: absolute;
		margin: auto 0 !important;
		top: 0;
		right: 10px;
		bottom: 0;
		height: 20px;
        z-index: 115;
	}
	#nav-btn span{
		position: relative;
		top: 0px;
		
		width: 30px;
		height: 4px;
		background-color: #fff;
		display: block;
		margin: 0 auto 4px;
		transform: rotate(0deg);
		transition: all 0.3s ease 0;
	}

		.open #nav-btn span:nth-child(1){
	    -webkit-transform: rotate(45deg);
	    -ms-transform: rotate(45deg);
	    transform: rotate(45deg);
			position: relative;
			top: 8px;
		}
	  .open #nav-btn span:nth-child(2){
			opacity: 0;
	  }
		.open #nav-btn span:nth-child(3){
	    -webkit-transform: rotate(-45deg);
	    -ms-transform: rotate(-45deg);
	    transform: rotate(-45deg);
			position: relative;
			top: -8px;
	  }
	  .open #menu {
		  overflow-y: auto;
	  }
    #menu{
        display: block;
        position: fixed;
        top: 0;
        bottom: 0;
        right: 0;
        z-index: 110;
        max-width: 80%;
        background: #71001e !important;
        overflow: hidden;
        color: #ffffff;
        border-top: 5px solid #e24925;
        width: 0;
    }
    .fixed #home .main-menu > ul,
    .fixed .main-menu > ul,
    .main-menu > ul,
    #home .main-menu > ul{
        height: auto;
    }
    #menu .cell{
        display: block;
        padding: 80px 45px 40px 40px ;
        height: auto;
    }
    #menu  li{
		display: block;
        text-align: left;
	}
    #menu  li a{
        padding: 15px 20px 15px 0 !important;
        font-size: 22px !important;
        font-family: 'Metropolis Medium' !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.3);
    }
    #menu  li a:hover{
        color: #ffffff !important;
    }
    #menu .sb-menu{
        background: none;
        position: static;
        transform: translateX(0);
        opacity: 1;
        visibility: visible;
        width: auto;
        padding: 10px 0 0 30px;
    }
    #menu .sb-menu:before{
        content: none;
    }
    #menu .sb-menu li{
        margin-bottom: 0;
    }
    #menu .sb-menu li:hover a,
    .main-menu > ul > li:hover > a{
        color: #ffffff !important;
    }
    #menu .sb-menu li a{
        border: none;
        font-size: 18px !important;
        padding: 8px 20px 8px 0 !important;
        text-transform: capitalize;
    }
    #menu .sub-menu {
				visibility: visible;
				opacity: 1;
				background: #71001E;
				position: relative; 
				left: auto;
				transform: none;
				width: 0px;
    }
    #menu .sub-menu:before {
	    	display: none;
    }
    #menu .sub-menu li {
	     	margin-bottom: 0px;
    }
    #menu .sub-menu li > a {
		    border-bottom: none;
				font-size: 17px !important;
				padding: 10px 20px 10px 0px !important;
    }
    #home .banner .table > .cell {
        padding-top: 150px;
    }
    .quick-links li{
        width: 49%;
        margin-bottom: 20px;
    }
    .quick-links li:nth-child(even){
        margin-left: 1%;
    }
    .quick-links li span{
        font-size: 18px;
    }
    #slider .container{
        margin-top: 30px;
    }
	.unslider .unslider-arrow{
        width: 40px;
        height: 40px;
    }
    .slide-text{
        padding: 40px 80px 70px 40px;
    }
    .slide-text p{
        font-size: 16px;
    }
    .unslider {
        height: 400px;
    }
    .about-content h3,
    h1{
        font-size: 44px;
        line-height: 40px;
    }
    .about-content .container{
        padding: 30px 20px 10px;
    }
    #gallery{
        padding-bottom: 30px;
    }
    #gallery > .table{
        display: block;
        text-align: center;
    }
    #gallery > .table > .cell{
        display: block;
        padding: 0;
        width: 80%;
        margin: 0 auto 20px;
    }
    .img-overlay{
        width: 90%;
        left: 5%;
        right: 5%;
        top: 5%;
        bottom: 5%;
        visibility: visible;
        opacity: 1;
    }
    .product-gallery .img-overlay{
		    width: 100%;
		    top: auto;
		    bottom: 0;
		    right: 0;
		    left: 0;
		    height: 63px;
    }
    .gallery-btn {
	    margin: 0 0 25px 20px;
    }
    .items-info a{
        padding: 110px 0 10px;
    }
    .items-info a:hover{
        background-color: transparent !important;
    }
    .item-box h3{
        font-size: 32px;
        line-height: 28px;
    }
    .items-info{
        padding: 0;
    }
    #testimonials{
        padding: 30px 0;
    }
    .banner-text{
        font-size: 52px;
        line-height: 48px;
    }
    .banner-text span{
        font-size: 26px;
    }
    .breadcrumbs{
        padding: 20px;
    }
    .main-title{
        padding: 20px;
        margin-bottom: 20px;
    }
    .main-title h1 + span, .about-content span{
        font-size: 16px;
    }
    .main-content .content,.sidebar{
        display: block;
        width: 100%;
        padding: 0 20px !important;
    }
    .sidebar img,
    .quote-banner{
        max-width: 300px;
        margin: 0 auto;
    }
    .sidebar{
        padding-top: 30px !important;
        padding-bottom: 30px !important;
    }
    .logo-chamber,.logo-gb{
        margin-right: 7px;
    }
    .contact-side li {
	    margin-bottom: 0px !important; 
    }
		.contact-side li span {
			display: initial;
		}
		
		#us-map-container .map-info-container div,
		#state-map-container .map-info-container div {
			display: block;
			width: 100%;
			min-width: 266px;
		}
		
		.product-gallery a {
			width: 50%;
		}

}

@media screen and (max-width:670px) { /* Phone View */
    #home #header .top-bar .cell:first-child, #home #header .top-bar .cell:last-child,
    #header .top-bar .cell:first-child, #header .top-bar .cell:last-child{
        padding: 21px 0;
    }
    .top-nav li a {
	    text-transform: none;
    }
    .top-nav li a span {
	    display: block;
		font-size: 14px;
    }
    .top-nav li a span.phone-dashes {
	    display: none;
    }
    .top-nav li a:before {
	    display: none;
    }
    #menu .top-nav li a {
		padding: 0 0 15px !important;
		margin-bottom: 10px;
		font-size: 15px !important;
    }
    #menu .top-nav li:last-child a {
	    border-bottom: none;
    }
    #inner .banner > .cell .cell:nth-child(2){
        background-position: left top !important;
    }
    #inner .banner > .cell .cell:nth-child(3){
        display: none;
    }
    .slide-text .large-text{
        font-size: 48px;
        line-height: 42px;
    }
    .items-info .cell{
        display: block;
    }
    .items-info .cell:nth-child(2) .item-box:before,
    .items-info .cell:nth-child(2) .item-box:after{
        content: none;
    }
    .items-info .cell a{
        background-position: center 10px !important;
    }
    .items-info{
        padding-top: 20px;
    }
    .items-info p{
        font-size: 16px;
    }
    .main-title h1 + span br, .about-content span br{
        display: none;
    }
    .about-content p{
        font-size: 16px;
    }
    
    .facebook-embed {
		width: 100%;
		padding-bottom: 50px;
	}
	.facebook-embed:first-child {
		float: none;
	}
	.facebook-embed:last-child {
		float: none;
	}
    
    #footer .page .cell{
        display: block;
        width: 100% !important;
        text-align: center !important;
    }
    #footer .page .cell:first-child:first-child{
        padding: 0 0 15px;
    }
    #inner .banner > .cell .cell:nth-child(2){
        width: 55%;
    }
    #contact-form .buttons {
	    margin-bottom: 30px;
    }
		.items-info .table .cell:not(:first-child) {
			border-top: solid 1px #000;
			padding-top: 20px;
		}
}

@media screen and (max-width:480px){
	.top-bar .social-links{
		display: none;
	}
    .social-links{
        padding-top: 35px;
        font-size: 18px;
    }
    .social-links span{
        padding-right: 15px;
    }
    .social-links a{
        margin-right: 3px;
    }
    .slide-text{
        padding: 40px;
    }
    .view-more-link::before{
        width: 23px;
        height: 23px;
        top: -3px;
    }
    #menu{
        max-width: 90%;
    }
    #menu li a{
        font-size: 20px !important;
    }
    #menu .sub-menu li > a {
				font-size: 15px !important;
    }
    #menu .cell{
        padding-left: 25px;
    }
    #home .banner h1,
    .banner-text{
        font-size: 44px;
        line-height: 44px;
    }
    .banner-text span{
        font-size: 18px;
    }
    #inner .banner > .cell .cell:nth-child(2){
        width: 100%;
        padding: 0 20px;
        text-align: center;
    }
    .quick-links img{
        top: 20px !important;
    }
    .quick-links li a{
        padding-top: 110px;
        height: 175px;
    }
    .quick-links li a span{
        font-size: 16px;
    }
    #gallery > .table > .cell{
        width: 90%;
    }
    #inner .banner  .cell{
        height: 220px;
    }
    .slide-text {
        padding: 25px;
    }
/*
    .main-title{
        padding-top: 0;
    }
*/
    .quote-banner{
        padding-top: 30px;
    }
    .bar-callout{
        height: 100px;
    }
    .bar-callout .cell{
        padding: 10px 20px;
    }
    .bar-callout a{
        font-size: 16px;
    }
    .slide-text p{
        margin-bottom: 20px;
    }
    .contact-side li {
	    margin-bottom: 10px !important;
    }
    .contact-side li span {
    	display: block;
		}
		
	.product-gallery a {
		width: 100%;
	}

}

@media screen and (max-width:380px) {
	
    .fixed #home .center-logo img,
    .fixed .center-logo img,
    .center-logo img,
    .logo-tiem .center-logo img,
    #home .center-logo img{
        margin-left: -45px;
        top: -2px;
    }
    #inner .top-bar .center-logo img {
				margin-left: 10px;
		}
    #menu .sb-menu{
        padding-left: 0;
    }
    #menu li a{
        font-size: 18px !important;
    }
    #menu li .sb-menu a{
        font-size: 16px !important;
    }
    #menu .cell{
        padding-top: 50px;
    }
	.quick-links {
		margin: 0;
	}
	.quick-links li{
		display: block;
		width: 100%; 
	}
	.quick-links li:nth-child(even){
		 margin-left: 0;
	}
    .quick-links li a span {
        font-size: 14px;
    }
    .about-content h3, h1{
        font-size: 36px;
        line-height: 36px;
        margin-bottom: 10px;
    }
    #home .banner h1{
        font-size: 40px;
        line-height: 42px;
    }
    .about-content span{
        margin-bottom: 10px;
    }
    .items-info a{
        padding-top: 90px;
    }
    #home .search-box, .search-box{
        text-align: left;
        padding: 5px 20px;
    }
    .top-nav li {
	    font-size: 11px;
    }
	    
		#contact-form .g-recaptcha {
		  -webkit-transform: scale(0.9);
		      -ms-transform: scale(0.9);
		          transform: scale(0.9);
		  -webkit-transform-origin:0;
		      -ms-transform-origin:0;
		          transform-origin:0;
		  width: 113%;
		}
		
		.main-content h3 {
	    font-size: 18px;
		}
		p {
	    font-size: 12px;
	    line-height: 18px;
		}

}
