@charset "utf-8";
/* CSS Document */

article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary {
	display: block;
}
body, html{
	font-family: Kalinga, Helvetica, Arial, sans-serif;
	color:#000;
	-ms-overflow-style:none;
	background-color:#e6e6e6;
	width:100%;
	}
body:after{
	display:none;
	content: url("images/arrowlhvr.png") url("images/arrowrhvr.png");
}
img{
	vertical-align:top;
	}
#noScript{
	background-color:#69F;
	position:absolute;
	border:groove;
	border-width:thin;
	left:0 !important;
	top:0 !important;
	margin:0 !important;
	padding:0 !important;
}
a {
	color:#000;
	text-decoration:none;
	}
textarea{
	resize:none;
}
.hide{
	display:none;
}
.show{
	display:block;
}
.invisible{
	visibility: hidden;
}
.hide{
	display:none;
}
.show{
	display:block;
}
.loading{
	margin:0 auto;
	width:100px;
	height:100px;
	background-image: url("images/loading.gif");
	background-size:contain;
	z-index:20000;
}
.moreBtn{
	padding:10px;
	border-radius:5px;
	background-color:#d1ddde;
	margin:75px;
	box-shadow:1px 1px 5px black, inset 1px 1px 5px white;
}
#scrollTopContain{
	display:block;
}
.scrolltop{
	position:fixed;
	background-color: rgba(209,221,222,0.9);
	width:150px;
	height:150px;
	bottom:100px;
	border-radius:75px;
	right:0;
	background-image:url("images/arrowup.png");
	background-size:75px 75px;
	background-position:center;
	background-repeat:no-repeat;
}

.navhead{
	position:absolute;
	padding:0;
	margin:0;
	width:100%;
	height:100px;
	background:#e6e6e6;
	z-index:10000;
	box-shadow:0px 1px 5px #57a6db;
}
.navwrap{
	width:100%;
	height:100px;
	margin:0 auto;
	line-height:100px;
	display: block;
}
.navwrap-logo{
	float:left;
	display:block;
}
.navSlash{
	display:none;
}
.navwrap-links{
	position:fixed;
	right:-100%;
	margin-top:100px;
	padding-top:5px;
	width:100%;
	background:#666;
	-moz-box-shadow:5px 0 5px -1px #333;
	-webkit-box-shadow:5px 0 5px -1px #333;
	box-shadow:5px 0 5px -1px #333;
	transition:ease-out;
	transition-duration:0.25s;
	z-index:20000;
	float:none;
}
.navwrap-links-show{
	transition:ease-in;
	transition-duration:0.5s;
	right:0;
}
.nav-menuBtn{
	display:block;
	float:right;
	height:100px;
	width:100px;
	background-image: url("images/menuIcon.svg");
	background-size:60px 60px;
	background-position: center center;
	background-repeat: no-repeat;
}
.navlink {
	height:100px;
	width:100%;
	display:block;
	font-size:2em;
	-moz-box-shadow:inset 0 3px 5px -1px #cacaca, inset 0 -3px 5px -1px #333;
	-webkit-box-shadow:inset 0 3px 5px -1px #cacaca, inset 0 -3px 5px -1px #333;
	box-shadow:inset 0 3px 5px -1px #cacaca, inset 0 -3px 5px -1px #333;
	text-align:center;
	line-height:100px;
	color:white;
	text-shadow: 1px 1px #333;
	z-index:20000;
}
#logo img{
	height:90px;
	padding:5px;
	z-index:30000;
}

.footContain{
	position:fixed;
	bottom:0;
	padding:0;
	margin:0;
	width:100%;
	height:100px;
	background:#e6e6e6;
	z-index:10000;
	box-shadow:0px 1px 5px #57a6db;
}
.footSlash{
	display:none;
}
.footWrap{
	width:100%;
	height:100px;
	margin:auto;
	display: inline-block;
	vertical-align:middle;
}
.foot-address{
	position:absolute;
	line-height:1em;
	font-size:1em;
	right:0;
	padding-right:25px;
	text-align:right;
	height: 100%;
    vertical-align: middle;
	display: table;
	color:#000;
}
.addressBlock{
	max-height:100px;
    vertical-align: middle;
	display:table-cell;
}
.footSlash{
	display:none;
}
.foot-links{
	position:absolute;
	width:250px;
	z-index:20000;
	vertical-align:middle;
	height:100px;
	margin:0 auto;
	padding-left:25px;
	display:table;
}
.socmIcon{
	padding:5px;
	display: table-cell;
    vertical-align: middle;
}
.socmIcon img{
	max-height:50px;
}
.content{
	padding-top:100px;
	width:100%;
	padding-bottom:100px;
}
/*MAIN*/
/*Image Slider*/
#imgSlideContainer{
	position:relative;
	width:100%;
	height:640px;
	padding-top:25px;
	padding-bottom:75px;
	display:block;
	margin:0 auto;
}
#imgSlideWrapper{
	position:relative;
	width:90%;
	height:100%;
	margin:0 auto;
	overflow:hidden;
}
#imgSlide1{
	position:absolute;
	width:100%;
	left:0;
	z-index:2;
}
#imgSlide2{
	position:absolute;
	width:100%;
	right:0;
	z-index:2;
}
.imgSlide{
	position:absolute;
	width:100%;
	height:640px;
	overflow:hidden;
}
.imgSlide img{
	position:absolute;
	height:640px;
	
}

/*Scrolling Images*/
#imgScrollContainer{
	position:relative;
	width:100%;
	margin:auto;
}
#imgScroll{
	position:absolute;
	width:100%;

	margin: auto;
}
#imgScroll img{
	display: block;
	margin: auto;
}
.unslider-arrow{
	display:none;
}
.unslider-nav{
	display:none;
}
#unsliderTimer{
	-webkit-transition-timing-function:linear;
	transition-timing-function:linear;
	display:block;
	position:absolute;
	margin-top:0;
	z-index:9995;
	height:10px;
	background-color:#666;
}
.unsliderTimerNew{
	width:0px;

}
.unsliderTimerRun{

	width:100%;
	-webkit-transition: width 7s; /* Safari */
    transition: width 7s;
}
#indexBlurb{
	position: relative;
	margin:0 auto;
	width:85%;
	display:none;
	text-align: center;
	padding-bottom:100px;
}
.indexBlurbHead{
	font-size: 2em;
	text-align: center;
	display:block;
	margin-top: 100px;
	padding-top:25px;
	border-top: 1px solid #CCC;
}
.indexBlurbHead:HOVER{
	font-weight:bold;
}
.indexBlurbContent{
	display:block;
	text-align:center;
	margin:15px;
}
/*PORTFOLIO*/
.grid{
	margin:0 auto;
	width:100%;
	overflow:hidden;
	background-color:#999;
}
.grid-item, .gi-sizer{
	width:50%;
}
.grid-item{
	float:left;
}
.gi-img{
	width:100%;
}
.grid-item-title{
		position:absolute;
		font-size: 0.85em;
		line-height:2em;
		font-weight:bold;
		width:100%;
		pointer-events:none;
		vertical-align:top;
		text-align:center;
		bottom:0;
}
.grid-item-title-show{
	transition: 0.25s linear;
	background-color: #999;
	z-index:10000;
	left:0px;
}
.grid-item-title-hide{
	height:0px;
	transition: 0.25s linear;
	z-index:1;
	left:0px;
}
.title-span-hide{
	display:none;
}
.title-span-show{
	display:inline;
}
.vidIconCont{
	margin: 0 auto;
	width:100%;
	height:100%;
	position:absolute;
	z-index: 11000;
	top:0;
	left:0;
}
.vidIcon{
	background-image: url("images/vid.png");
	background-size: contain;
	width:50px;
	height:50px;
	margin:0 auto;
	vertical-align: middle;
	margin-top:75px;
}
/*SERVICES*/
.Exp{
	width:100%;
	margin:0 auto;
	text-align:center;
	font-size:1em;
	line-height:3em;
	color: #5b5b5b;
}
.ExpS1{
	padding:10px;
	width:100%;
	margin:0 auto;
	font-size:1.25em;
	text-align:center;
	font-weight:bold;
}
.ExpS1 p{
	margin:0 auto;
	text-align:center;
}
.ExpS2{
	font-weight:bold;
}
#services{
	width:100%;
}
.service-wrapper{
	margin:0 auto;
	margin-top:25px;
	margin-bottom:50px;
	width:100%;
	display:table;
	height: 150px;
	padding-bottom:15px;
	border-bottom: 3px solid #CCC;
	/*box-shadow:1px 1px 5px black;*/
}
.service-container{
	height:150px;
	display:table-cell;
	margin:0 auto;
	text-align: center;
	vertical-align: middle;
	padding:15px;
}
.service-img{
	height:125px;
	margin-bottom:10px;
}
.service-title{
	width:100%;
	text-align:center;
	margin:0 auto;
	visibility:hidden;
}
.software-used{
	margin-top: 25px;
	margin-bottom:5px;
}
#softwareWrap{
	box-shadow:0px 1px 5px black, 0px -1px 5px black;
	width:100%;
	background-color: #CCC;
}
#softwareicons{
	margin: 0 auto;
	width:90%;
	height:50px;
	white-space: nowrap;
	display: table;
}
.logo-image {
	vertical-align: middle;
	padding: 5px;
	display: table-cell;
	max-height:50px;
}
.logo-icon-img{
	transition: 0.1s linear;
	max-width: 100px;
	max-height:40px;
}
.serviceHeader{
	font-size: 4em;
	width:100%;
	display:table;
	padding:10px;
}
.serviceSubheader{
	font-size: 2em;
	width:100%;
	display:table;
}
.centerText{
	margin:0 auto;
	text-align:center;
	display:table-cell;
}
#pano-container{
	width:90%;
	margin: 0 auto;
	padding-bottom:15px;
	border-bottom: 3px solid #CCC;
}
#pano-wrapper{
	padding-top:100px;
}
.pano-select-wrap{
	width:100%;
	display:table;
	height:225px;
	padding-top:-3.5em;
}
.pano-select-container{
	display:table-cell;
	vertical-align:top;
	text-align: center;
	padding:10px;
}
.pano-header{
	position:relative;
	text-align:center;
	white-space:nowrap;
	margin:0 auto;
}
.pano-select-img{
	max-width:100%;
	max-height:100%;
}
.pano-select-title{
	padding:12px;
}
#opto-container{
	width:90%;
	margin: 0 auto;
	padding-top:65px;
	padding-bottom:15px;
	border-bottom: 3px solid #CCC;
}
#opto-select-wrap{
	width:100%;
	height:640px;
}
/*
.opto-select-wrap{
	width:100%;
	display:table;
	height:225px;
	padding-top:-3.5em;
}
.opto-select-container{
	display:table-cell;
	vertical-align:top;
	text-align: center;
	padding:10px;
}
.opto-img{
	max-width:100%;
	max-height:100%;
}
*/
.opto-title{
	padding:12px;
}
.mediatester{
	position:fixed;
	bottom:0;
	right:0;
	visibility:hidden;
	width:0px;
}

/*CONTACT*/
.contactContain{
		width:90%;
		margin:0 auto;
}
/*DESKTOP*/
/* if Larger than 1024 width*/
@media screen and (min-width: 1024px) {
	.mediatester{
		position:fixed;
		bottom:0;
		right:0;
		visibility:hidden;
		width:5px;
	}
	#scrollTopContain{
		display:none;
	}
	.navhead{
		position:fixed;
		padding:0;
		margin:0;
		width:100%;
		height:65px;
		background:#e6e6e6;
		z-index:10000;
		box-shadow:0px 1px 5px #666;
		overflow:hidden;
		}
	.navwrap{
		width:90%;
		height:65px;
		margin:0 auto;
		line-height:65px;
		display: block;
		overflow:hidden;
	}
	.navwrap-logo{
		float:left;
		display:block;
	}
	.nav-menuBtn{
		display:none;
	}
	.navSlash{
		position:absolute;
		display:inline;
		background-color:#57a6db;
		height:150px;
		margin-top:-25px;
		-ms-transform: rotate(30deg); /* IE 9 */
		-webkit-transform: rotate(30deg); /* Chrome, Safari, Opera */
		transform: rotate(30deg);
	}
	.nS1{
		width:50px;
		margin-left:-140px;
	}
	.nS2{
		width:20px;
		margin-left:-175px;
	}
	.nS3{
		width:10px;
		margin-left:-195px;
	}
	.nS4{
		width:5px;
		margin-left:-208px;
	}
	.navwrap-links{
		position:absolute;
		right:0;
		padding-top:0;
		margin-top:0;
		width:initial;
		background:none;
		height:65px;
		text-align:right;
		vertical-align:right;
		z-index:20000;
		padding-right:100px;
		padding-left:100px;
		background-color:#57a6db;
	}
	
	.navwrap-links-show{
		
	}
	.navlink {
		height:65px;
		width:initial;
		display:inline;
		font-size:1em;
		-moz-box-shadow:none;
		-webkit-box-shadow:none;
		box-shadow:none;
		text-align:right;
		line-height:65px;
		padding:10px;
		color:#FFF;
		text-shadow: none;
		font-family: Kalinga, Helvetica, Arial, sans-serif;
		font-weight:bold;
		cursor:pointer;
		
	}
	.navlink:HOVER{
		color:#666;
		background:none;
		border-radius:none;
		box-shadow:none;
	}
	#logo img{
		height:55px;
		padding:5px;
		z-index:30000;
		}
		
	.footContain{
		position:fixed;
		overflow:hidden;
		bottom:0;
		padding:0;
		margin:0;
		width:100%;
		height:65px;
		background:#e6e6e6;
		z-index:10000;
		box-shadow:0px 1px 5px #57a6db;
	}
	#footSlash{
		display:block;
		position:absolute;
		right:0;
		width:45%;
		height:100%;
		background-color:#57a6db;
	}
	.fS1{
		position:absolute;
		height:150px;
		background-color:#57a6db;
		width:100px;
		left:-50px;
		margin-top:-50px;
		-ms-transform: rotate(30deg); /* IE 9 */
		-webkit-transform: rotate(30deg); /* Chrome, Safari, Opera */
		transform: rotate(30deg);
	}
	.fS2{
		position:absolute;
		height:150px;
		background-color:#57a6db;
		width:20px;
		left:-100px;
		margin-top:-50px;
		-ms-transform: rotate(30deg); /* IE 9 */
		-webkit-transform: rotate(30deg); /* Chrome, Safari, Opera */
		transform: rotate(30deg);
	}
	.footWrap{
		width:100%;
		height:65px;
		margin:auto;
		display: inline-block;
		vertical-align:middle;
	}
	.foot-address{
		position:absolute;
		line-height:1em;
		font-size:.75em;
		color:#FFF;
		right:0;
		padding-right:25px;
		text-align:right;
		height: 100%;
		vertical-align: middle;
		display: table;
		background:#57a6db;
	}
	.addressBlock{
		max-height:65px;
		vertical-align: middle;
		display:table-cell;
	}
	.footSlash{
		display:none;
	}
	.foot-links{
		position:absolute;
		width:250px;
		z-index:20000;
		vertical-align:middle;
		height:65px;
		margin:0 auto;
		padding-left:25px;
		display:table;
	}
	.socmIcon{
		padding:5px;
		display: table-cell;
		vertical-align: middle;
	}
	.socmIcon img{
		max-height:50px;
	}
	#credit{
		position:absolute;
		background-color: rgba(204,204,204,.5)
	}
	.content{
		padding-top:65px;
		width:100%;
		padding-bottom:65px;
	}
	/*HOME*/
	#imgScrollContainer{
		position:relative;
		width:100%;
		margin: auto;
	}
	#imgScroll{
		position:absolute;
		width:100%;
		margin: auto;
	}
	#imgScroll img{
		display: block;
		width: 100%;
		height: auto;
		margin: auto;
	}
	#unsliderTimer{
		height: 3px;
	}
	.unslider-arrow{
		position: absolute;
		display: block;
		width: 48px;
		height: 48px;
		top: 50%;
		right: -50px;
		left: auto;
		margin-top: -16px;
		overflow: hidden;
		background: rgba(0,0,0,.5) no-repeat 50% 50%;
		background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAQCAQAAABuQZ3IAAAAi0lEQVR4AU3OISBEQQBAwS0AACS9NxqQgCZpkiYBVddFvWhAAUABAPQCAGC4g/0vTnrBqCfDIZl70J+kMUBPpEwT4FNXxBxz4F1HxHyr4EVTxBLb4EFNxEon4CJSlVNw9AcV9sC16h8osgke1P1ArgXwouVvdQq86ww/GQefusNf7kBviBlxpT8k+gL/Wox4r1d4MwAAAABJRU5ErkJggg==');
		background-size: 12px 17px;
		border-radius: 48px;
		text-indent: -999em;
		opacity: .6;
		transition: opacity .2s;
	}
	.unslider-arrow.prev{
		-ms-transform: rotate(-180deg);
		transform: rotate(-180deg);
		z-index:10000;
	}
	.unslider-arrow.next{
		z-index:10000;
	}
	.unslider-arrow:HOVER{
		opacity:1;
	}
	.unslider-nav{
		display:none;
	}
	#indexBlurb{
		position: relative;
		margin:0 auto;
		width:50%;
		display:none;
		text-align: center;
		padding-bottom:100px;
	}
	.indexBlurbHead{
		font-size: 2em;
		text-align: center;
		display:block;
		margin-top: 100px;
		padding-top:25px;
		border-top: 1px solid #CCC;
	}
	.indexBlurbHead:HOVER{
		font-weight:bold;
	}
	.indexBlurbContent{
		display:block;
		text-align:center;
		margin:15px;
	}
	/*PORTFOLIO*/
	.grid{
		margin:0 auto;
		width:100%;
		overflow:hidden;
		background-color:#999;
	}
	.grid-item, .gi-sizer{
		width:25%;
	}
	.grid-item{
		float:left;
		-webkit-filter: saturate(10%);
		filter: saturate(10%);
		transition: 0.25s -webkit-filter linear;
	}
	.grid-item:HOVER{
		cursor: pointer;
		-webkit-filter: saturate(100%);
		filter: saturate(100%);
		transition: 0.25s -webkit-filter linear;
	}
	.gi-img{
		width:100%;
	}
	.grid-item-title{
		position:absolute;
		font-size: 0.85em;
		line-height:2em;
		font-weight:bold;
		width:100%;
		pointer-events:none;
		vertical-align:middle;
		text-align:center;
		bottom:0;
	}
	.grid-item-title-show{
		transition: 0.25s linear;
		background-color: #999;
		z-index:10000;
		left:0px;
	}
	.grid-item-title-hide{
		height:0px;
		transition: 0.25s linear;
		z-index:1;
		left:0px;
	}
	.title-span-hide{
		display:none;
	}
	.title-span-show{
		display:inline;
	}
	.vidIconCont{
		margin: 0 auto;
		width:100%;
		height:100%;
		position:absolute;
		z-index: 11000;
		top:0;
		left:0;
	}
	.vidIcon{
		background-image: url("images/vid.png");
		background-size: contain;
		width:50px;
		height:50px;
		margin:0 auto;
		vertical-align: middle;
		margin-top:75px;
	}
	/*SERVICES*/
	#services{
		width:100%;
	}
	.service-wrapper{
		margin:0 auto;
		margin-top:25px;
		margin-bottom:50px;
		width:90%;
		display:table;
		height: 100px;
		padding-bottom:15px;
		border-bottom: 1px solid #CCC;
		/*box-shadow:1px 1px 5px black;*/
	}
	.service-container{
		height:100px;
		display:table-cell;
		margin:0 auto;
		text-align: center;
		vertical-align: middle;
		padding:15px;
	}
	.service-img{
		height:100px;
		margin-bottom:10px;
	}
	.service-container:HOVER{
		transition: 0.25s linear;
		box-shadow:0px 1px 5px black;
	}
	.software-used{
		margin-top: 25px;
		margin-bottom:5px;
	}
	#softwareWrap{
		box-shadow:0px 1px 5px black, 0px -1px 5px black;
		width:100%;
		background-color: #CCC;
	}
	#softwareicons{
		margin: 0 auto;
		width:90%;
		height:50px;
		white-space: nowrap;
		display: table;
	}
	.logo-image {
		vertical-align: middle;
		padding: 5px;
		display: table-cell;
		max-height:50px;
	}
	.logo-icon-img{
		transition: 0.1s linear;
		max-width: 100px;
		max-height:40px;
	}
	.logo-icon-img:HOVER{
		transition: 0.25s linear;
		-webkit-transform: rotate3d(1,1,0,30deg); /* Safari */
		transform: rotate3d(1,1,0,30deg);
		box-shadow:0px 1px 5px black;
	}
	.serviceHeader{
		font-size: 2em;
		width:100%;
		display:table;
		padding:10px;
	}
	.serviceSubheader{
		font-size: 1.5em;
		width:100%;
		display:table;
	}
	.centerText{
		margin:0 auto;
		text-align:center;
		display:table-cell;
	}
	#pano-container{
		width:90%;
		margin: 0 auto;
		padding-bottom:15px;
		border-bottom: 1px solid #CCC;
	}
	#pano-wrapper{
		padding-top:100px;
	}
	.pano-select-wrap{
		width:100%;
		display:table;
		height:225px;
		padding-top:-3.5em;
	}
	.pano-select-container{
		display:table-cell;
		vertical-align:top;
		text-align: center;
		padding:10px;
	}
	.pano-header{
		position:relative;
		text-align:center;
		white-space:nowrap;
		margin:0 auto;
	}
	.psEffect:HOVER{
		transition: 0.25s linear;
		box-shadow:0px 1px 5px black;
	}
	.pano-select-img{
		max-width:100%;
		max-height:100%;
	}
	.pano-select-title{
		padding:12px;
	}
	#opto-container{
		width:90%;
		margin: 0 auto;
		padding-top:65px;
		padding-bottom:15px;
		border-bottom: 1px solid #CCC;
	}
	.opto-select-wrap{
		width:100%;
		display:table;
		height:225px;
		padding-top:-3.5em;
	}
	.opto-select-container{
		display:table-cell;
		vertical-align:top;
		text-align: center;
		padding:10px;
	}
	.opto-img{
		max-width:100%;
		max-height:100%;
	}
	.opto-title{
		padding:12px;
	}
	.Exp{
		width:75%;
		margin:0 auto;
		text-align:center;
		font-size:1em;
		line-height:1.5em;
	}
	.ExpS1{
		padding:10px;
		width:100%;
		margin:0 auto;
		font-size:1.25em;
		text-align:center;
	}
	.ExpS1 p{
		margin:0 auto;
		text-align:center;
	}
	.ExpS2{
		font-weight:bold;
	}
	#footer{
		padding:0;
		margin:0;
		margin-top:25px;
		margin-top:25px;
		width:100%;
		height:65px;
		max-height:65px;
		overflow:hidden;
		background:#CCC;
		z-index:10000;
		box-shadow:0px -1px 5px black;
	}
	/*CONTACT*/
	.contactContain{
			padding-top:50px;
			width:90%;
			margin:0 auto;
			display:block;
			text-align:center;
	}
	#contactContact{
		width:50%;
		margin:0 auto;
		table-layout:fixed;
	}
	#contactContact tbody{
		width:100%;
	}
	#contactContact td{
		padding-top:25px;
	}
	#contactContact input{
		height:30px;
	}
	.inputFieldRow{
		width:100%;
		margin:0 auto;
		text-align:center;
	}
	.inputLabelCell{
		text-align:right;
	}
	.inputFieldCell{
		text-align:left;
	}
	.inputFieldCell input{
		width:100%;
	}
	.emailError{
		margin-left:10px;
		color:red;
		background-color:rgba(255,255,0,.5);
		padding:5px;
	}
	#messageContain{
		width:100%;
	}
	#contactMessage{
		width:100%;
	}
	#contactButtons input{
		width:100%;
	}
	.actionBtnCell{
		width:100%;
	}
}
@media screen and (max-width: 500px) {
	.addressBlock{
		display:none;
	}
	.navwrap-logo{
		display:none;
	}
}