@charset "utf-8";
/* Retina Ready Images */

@media only screen and (-Webkit-min-device-pixel-ratio: 1.5),
only screen and (-moz-min-device-pixel-ratio: 1.5),
only screen and (-o-min-device-pixel-ratio: 3/2),
only screen and (min-device-pixel-ratio: 1.5) {
h1#logo a { background:url(../images/bg-logo@2x.png) center no-repeat; background-size:150px 50px; }

.map {background:url(../images/icons/bg-map@2x.png) no-repeat center left; background-size:48px 48px;  }

blockquote { background:url(../images/icons/bg-quote@2x.png) center 50px no-repeat; background-size:48px 48px; }

.flex-direction-nav .flex-next {background:url(../images/bg-next@2x.png) center no-repeat; background-size:48px 48px; }
.flex-direction-nav .flex-prev {background:url(../images/bg-prev@2x.png) center no-repeat; background-size:48px 48px; }

.mfp-close { background:url(../images/icons/bg-close@2x.png) no-repeat; background-size:48px 48px; }

.fancybox-close {background: url(../images/icons/bg-close@2x.png) center no-repeat; background-size:48px 48px;}
.fancybox-prev span {background: url(../images/bg-prev@2x.png) center no-repeat; background-size:48px 48px;}
.fancybox-next span {background: url(../images/bg-next@2x.png) center no-repeat; background-size:48px 48px;}

#arrow-down { background:url(../images/bg-arrow-down@2x.png) no-repeat 21px 26px rgba(26, 27, 30, 1); background-size:28px 16px;  background-position: center; }
}

@media only screen and (min-width: 1600px) {

}

/* Standard 960 or larger (browsers) */
@media only screen and (min-width: 1000px) {
#nav { display: table-cell !important }
.full_width_gallery.desktop_items_1 > .gallery_item{ width: 100%; }
.full_width_gallery.desktop_items_2 > .gallery_item{ width: 50%; }
.full_width_gallery.desktop_items_3 > .gallery_item{ width: 33.333333%; }
.full_width_gallery.desktop_items_4 > .gallery_item{ width: 25%; }
#nav-button{ display: none; }
}

/* Smaller than standard 960 (devices and browsers) */
@media only screen and (max-width: 1029px) {
/*header { position:absolute }*/
#message {margin:0px 0 50px 0px; width:300px; float:none }
}

/* Tablet Portrait size to standard 960 (devices and browsers) */
@media only screen and (min-width: 768px) and (max-width: 999px) {
.imagezzz {display:none;}
.container { padding:0px; width:640px; position:relative; }
.col1-1, .col1-3.col2-3m, .col1-2 {width:620px !important; }
.col2-3.col1-3m { width:300px; }
.col1-3.margin-left, .blog .col1-3.margin-left { margin:0px 10px; }



#nav-button {display:block; float:right; width:25px; margin-top:16px; cursor:pointer; position:relative; -webkit-tap-highlight-color: rgba(0,0,0,0);}
.nav-bar {background-color:#2b2b2b; border-radius:1px; display:block; width:25px; height:3px; margin:3px auto; }
nav { margin:0px; position:relative; display:block; height:auto; float:none; clear:both }
#nav { display:none; width:100%; z-index:300; float:none; position:relative; top:0px; padding-top:25px; list-style: none; border-bottom:1px solid #ccc; }
#nav li { text-align:center; border-top:1px solid #ccc; float:none; margin:0; float:none; display:block }
#nav li a { padding:15px }
.menu-line {display:none !important }
#nav li a.external { border-left:0; }

#nav li ul {position:relative; margin-top:0px; margin-left:0px; left:0; padding:0px 35px 10px 35px; width:100%; background:none; display:block }
#nav li ul li {float:none }
#nav li ul li a {padding:15px 0; border-bottom:1px solid #2b2b2b; font-weight:100; display:block }
#nav li ul li a.last { border-bottom:1px solid #2b2b2b; }
#nav li ul:hover li a, #nav li:hover ul li a {color:#cfcfcf; }
#nav li ul li:hover a {color:#fff; }
#nav li:hover ul {display:block }

#nav li ul {position:relative; margin-top:0px; margin-left:0px; left:0; padding:10px 35px 10px 35px; width:100%; background:none; -webkit-box-shadow:0 0 1.5px rgba(0, 0, 0, 0); -moz-box-shadow:0 0 1.5px rgba(0, 0, 0, 0); box-shadow:0 0 1.5px rgba(0, 0, 0, 0); display:block }
#nav li ul li {float:none }
#nav li ul li a {padding:15px 0; border:0; font-weight:100; display:block }
#nav li ul li a.last { border:0;  }
#nav li ul:hover li a, #nav li:hover ul li a {color:#2b2b2b; }
#nav li ul li:hover a {color:#2b2b2b; }
#nav li:hover ul {display:block }

footer{ min-height: 146px; }
footer p span {float:none !important; display:block }

.full_width_gallery.tablet_items_1 > .gallery_item{ width: 100%; }
.full_width_gallery.tablet_items_2 > .gallery_item{ width: 50%; }
.full_width_gallery.tablet_items_3 > .gallery_item{ width: 33.333333%; }
}

/* All Mobile Sizes (devices and browser) */
@media only screen and (max-width: 480px) {
header { padding:16px 20px; }
.imagezzz {display:none;}
}

/* Mobile Landscape Size to Tablet Portrait (devices and browsers) */
@media only screen and (min-width: 480px) and (max-width: 767px) {
.imagezzz {display:none;}
}

/* Mobile Portrait Size to Mobile Landscape Size (devices and browsers) */
@media only screen and (max-width: 767px) {
.imagezzz {display:none;}
.container { padding:0px; width:320px; position:relative; }
.col2-3, .col1-1, .col1-2 { width:300px !important;  }
/*.info_panel { padding:0px; }*/
input, textarea, select { width:300px !important; }
.column-count2 {-webkit-column-count:1; -moz-column-count:1; column-count:1; -webkit-column-gap:0; -moz-column-gap:0; column-gap:0; }

#quotes_slider_container > .flex-direction-nav a { top: 34%; }
#headline_cycler { top: 32%; }
#headline_cycler ul.flexslider > li > h2, #headline h2{ font-size: 32px; line-height: 40px;  }

#arrow-down{ height: 60px; }

#nav-button {display:block; float:right; width:25px; margin-top:16px; cursor:pointer; position:relative; -webkit-tap-highlight-color: rgba(0,0,0,0);}
.nav-bar {background-color:#2b2b2b; border-radius:1px; display:block; width:25px; height:3px; margin:3px auto; }
nav { margin:0px; position:relative; display:block; height:auto; float:none; clear:both }
#nav { display:none; width:100%; z-index:300; float:none; position:relative; top:0px; padding-top:25px; list-style: none; border-bottom:1px solid #ccc; }
#nav li { text-align:center; border-top:1px solid #ccc; float:none; margin:0; float:none; display:block }
#nav li a { padding:15px }
.menu-line {display:none !important }
#nav li a.external { border-left:0; }

#nav li ul {position:relative; margin-top:0px; margin-left:0px; left:0; padding:10px 35px 10px 35px; width:100%; background:none; -webkit-box-shadow:0 0 1.5px rgba(0, 0, 0, 0); -moz-box-shadow:0 0 1.5px rgba(0, 0, 0, 0); box-shadow:0 0 1.5px rgba(0, 0, 0, 0); display:block }
#nav li ul li {float:none }
#nav li ul li a {padding:15px 0; border:0; font-weight:100; display:block }
#nav li ul li a.last { border:0;  }
#nav li ul:hover li a, #nav li:hover ul li a {color:#2b2b2b; }
#nav li ul li:hover a {color:#2b2b2b; }
#nav li:hover ul {display:block }

footer{ min-height: 146px; }
footer p span {float:none !important; display:block }

.videos { height:170px; width:300px }

.full_width_gallery.mobile_items_1 > .gallery_item{ width: 100%; }
.full_width_gallery.mobile_items_2 > .gallery_item{ width: 50%; }

.service_item { padding: 12px 24px; min-width: 140px; }
}

#arrow-down{

	z-index:9999;
}



@media (max-width: 640px) {


	.bringin {

	padding-right: 20px;
	padding-left: 20px;
}


	.icony {
	width: 75px;
	height:auto;
}

.introheaders {
	padding-bottom:15px;
	font-weight: 100;
	font-size:42px;
	line-height:1;
	letter-spacing: -1px;
	padding:5px 0px 0px 0;
	text-align:center;
}

.taglineintro {
	text-align:center;
	color:white;
	font-size:12px;
	margin:0px auto;
	margin-top:-1px;
	font-style:italic;
	padding-left:0px;
	letter-spacing: 0px;
}

.sloper1 {
	display:block;
	text-align: center;
	height:200px;
}

.boxleft {
	display:inline;
	text-align: left;
	width:75px;
	height:75px;
	float:none;
}

.boxright {
	display:inline;
	text-align: right;
	height:150px;
	float:none;
	background-color: purple;
}

.overlay { background-color: #ed3c51;}

h3 {

	font-size: 62px;
	padding:20px;
}

h2 {

	font-size: 18px;
	line-height:30px;
}

#arrow-down {
	background:url(../images/bg-arrow-down@2x.png) no-repeat 21px 26px rgba(255, 255, 255, 0.3); background-size:28px 16px;}
}


@media (min-width:640px) and (max-width: 900px) {

	.icony {
	width: 100px;
	height:auto;
}

	#nav li a { font-size:16px;}

.introheaders {
	padding-bottom:15px;
	font-weight: 100;
	font-size:82px;
	line-height:1;
	padding:5px 0px 0px 0;
	text-align:center;
}

.taglineintro {
	text-align:center;
	color:white;
	font-size:16px;
	margin:0px auto;
	margin-top:-1px;
	font-style:italic;
}

.sloper1 {
	display:block;
	text-align: center;
	height:500px;
}

.boxleft {
	display:inline;
	text-align: left;
	width:100px;
	height:100px;
	float:none;
}

.boxright {
	display:inline;
	text-align: right;
	height:150px;
	float:none;
	background-color: purple;
}

}


