html,body {
	margin:0px;
	padding:0px;
	-webkit-text-size-adjust:none;
	background:#fff;
	-webkit-user-select:none;
	-khtml-user-select:none;
	-moz-user-select:none;
	-o-user-select:none;
	user-select:none;
}

body {
	font-family: Arial, Helvetica, sans-serif;
	font-size:14px;
	color:#000;
}

/*::-moz-selection{ background:gray; color:#F0F0F0; text-shadow: none; }*/
/*::selection { background:gray; color:#F0F0F0; text-shadow: none; }*/

.clearfloat {
	display:block;
	float:none;
	clear:both;
	height:0;
}
.clearboth {
	display:block;
	float:left;
	width:100%;
	clear:both;
	padding:0;
	margin:0;
}
.anchor {
	position:relative;
	top:-230px;
}
#anchor-gallery {
	top:-100px;
}
#preload {
	display:none;
}
#preloader {
	display:block;
	visibility:hidden;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	z-index:999;
	overflow:hidden;
	background-color:#000;
	background-image:url(../img/preloader.gif);
	background-repeat:no-repeat;
	background-position:center;
	background-size:40px;
}
#preloader.on {
	visibility:visible;
}
#loading {
	display:block;
	float:left;
	width:20px;
	height:90px;
	overflow:hidden;
	text-indent:-9999em;
	background-image:url(../img/loading.gif);
	background-repeat:no-repeat;
	background-position:center;
	background-size:20px;
}
#wrapper {
	display:block;
	visibility:visible;
	position:absolute;
	top:0;
	left:0;
	width:100%;
	min-height:420px;
	padding:110px 0 0;
	z-index:99;
}
#wrapper.hide {
	visibility:hidden;
}
#wrapper.fixed {
	position:fixed;
	top:0;
	left:0;
	height:100%;
	overflow:hidden;
}
.logo {
	display:block;
	width:310px;
	height:90px;
	float:left;
	z-index:999;
	background-image:url(../img/so-logo.png);
	background-repeat:no-repeat;
	background-position:0;
	background-size:auto 90px;
	overflow:hidden;
	text-indent:-9999em;
	margin:0 20px;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}

/* NAVIGATION ------------------------------------- */
#nav {
	display:block;
	float:left;
	width:100%;
	padding:10px 0;
	position:fixed;
	top:0;
	left:0;
	background:#fff;
	z-index:9999;
}
.nav-inner {
	display:block;
	float:none;
	width:100%;
	max-width:960px;
	margin:0 auto;
}
#nav #menu {
	display:none;
	float:right;
	width:70px;
	height:40px;
	overflow:hidden;
	text-indent:-9999em;
	color:#fff;
	font-size:10px;
	line-height:100%;
	font-weight:normal;
	text-transform:uppercase;
	text-decoration:none;
	padding:0;
	margin:10px 0;
	background:url(../img/menu.png);
	background-repeat:no-repeat;
	background-size:30px;
	background-position:center;
	cursor:pointer;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}
#nav ul {
	display:block;
	float:right;
	position:relative;
	padding:0;
}
#nav li {
	display:block;
	float:left;
	color:#fff;
	font-size:18px;
	line-height:20px;
	font-weight:normal;
	text-transform:lowercase;
}
#nav li a {
	display:block;
	float:none;
	color:#000;
	font-weight:normal;
	padding:35px 20px;
	text-decoration:none;
	-webkit-transition: color .5s ease-in-out;
	-moz-transition: color .5s ease-in-out;
	-o-transition: color .5s ease-in-out;
	-ms-transition: color .5s ease-in-out;
	transition: color .5s ease-in-out;
}
#nav a:hover {
	color:#be1e2d;
}
#intro h1 {
	font-weight:normal;
	text-align:justify;
	line-height:150%;
	text-transform:none;
	font-size:24px;
	margin-bottom:0;
}
#intro img {
	display:block;
	float:left;
	width:100%;
	margin-bottom:40px;
}
.icon {
	display:block;
	width:90px;
	height:100px;
	position:absolute;
	z-index:999;
	left:50%;
	margin-left:-45px;
	top:-50px;
	background-image:url(../img/so-icon-sprite.png);
	background-size:auto 100px;
	background-repeat:no-repeat;
}
.icon.black {
	background-position:0;
}
.icon.blue {
	background-position:-90px 0;
}
.icon.white {
	background-position:-180px 0;
}
.section {
	display:block;
	float:left;
	width:100%;
	height:auto;
	clear:both;
	padding:0;
	margin:0;
	position:relative;
	cursor:default;
}
.section.blue {
	background:#be1e2d;
	color:#fff;
}
.section.blue a {
	color:#fff;
}
.section.blue a:hover {
}
.section.black {
	background:#000;
	color:#fff;
}
.section.white {
	background:#fff;
	color:#be1e2d;
}
.section.gray {
	background:#333;
	color:#999;
}
.section h1,
.section h2,
.section h3 {
	display:block;
	float:left;
	width:100%;
	text-align:center;
	text-transform:none;
	font-weight:normal;
	font-size:36px;
	margin-bottom:40px;
}
.section h2 {
	font-size:24px;
}
.section h3 {
	font-size:28px;
	margin-bottom:20px;
}
.center {
	display:block;
	float:none;
	width:100%;
	max-width:960px;
	margin:0 auto;
}
.inner {
	display:block;
	float:none;
	padding:100px 20px;
	margin:0;
}
.content {
	display:block;
	float:left;
	width:100%;
	position:relative;
}
#signage h2,
#signage p {
	text-align:center;
	float:none;
	max-width:600px;
	margin:0 auto 20px;
}
#signage p {
	font-size:16px;
	margin-bottom:80px;
}
#about p {
	font-size:16px;
	line-height:150%;
	text-align:justify;
}
#footer .center .inner {
	height:20px;
	padding:20px;
}

.columns {
	display:block;
	float:left;
	width:100%;
}
.columns img {
	display:block;
	float:none;
	width:80%;
	margin:0 auto 20px;
}
.half {
	display:block;
	float:left;
	width:48%;
}
.half.first {
	margin-right:4%;
}
.third {
	display:block;
	float:left;
	width:45%;
	min-height:580px;
}
.third.middle {
	margin-left:5%;
	margin-right:5%;
}
.third a {
	display:block;
	float:left;
	width:100%;
	transition: opacity .5s ease-in-out;
	-webkit-transition: opacity .5s ease-in-out;
	-moz-transition: opacity .5s ease-in-out;
}
.third a:hover {
	opacity:.5;
	-webkit-opacity:.5;
	-moz-opacity:.5;
}
#signage .third p {
	display:block;
	float:left;
	width:100%;
	font-size:14px;
	text-align:justify;
	margin:0;
}

.tel, .email, .addr {
	display:block;
	float:left;
	width:100%;
	text-align:center;
	margin:10px 0;
	text-transform:lowercase;
	font-weight:normal;
	font-size:30px;
}
a.email{
	font-size:32px;
	margin-left: -100px;
}
.addr {
	font-size:17px;
}
a.email,
a.addr {
	display:block;
	float:none;
	clear:both;
	text-decoration:none;
	color:#fff;
	text-align:center;
	margin:10px auto;
	transition:none;
	-webkit-transition:none;
	-moz-transition:none;
}
a.addr {
	margin-top:20px;
}
a.email:hover,
a.addr:hover {
	color:#000;
}
#copyright {
	display:block;
	float:left;
	color:#999;
	font-size:10px;
	line-height:10px;
	text-transform:none;
	padding:0;
	margin:6px 0;
}
a#author {
	display: block;
	color: #fff;
	position:relative;
	float:right;
	margin:0;
	padding:0;
	width: 70px;
	height: 18px;
	background-image: url(../img/zetech.png);	
	background-size: auto 34px;
	background-repeat: no-repeat;
	background-position: top left;
	background-position:bottom left\9;
	text-indent: -9999px;
	overflow: hidden;
	opacity:.5;
	-moz-opacity:.5;
	-webkit-opacity:.5;
	-webkit-transition: .5s ease-in-out;
	-moz-transition: .5s ease-in-out;
	-o-transition: .5s ease-in-out;
	-ms-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
	-webkit-transform: translate3d(0,0,0);
}
a#author:hover {
	opacity:1;
	-moz-opacity:1;
	-webkit-opacity:1;
	*background-position: top left;
}

#overlay {
	display:block;
	position:absolute;
	top:0;
	left:0;
	z-index:99;
	width:100%;
	height:100%;
	background:rgba(0,0,0,.8);
}
#overlay .anchor {
	top:-100px;
}
#container {
	display:block;
	width:100%;
	max-width:960px;
	text-align:center;
	margin:100px auto 0;
	position:relative;
	z-index:9999;
}
/*#container:before {
	content:'';
	display:inline-block;
	height:100%;
	vertical-align:middle;
	margin-right:-0.25em;
}*/
#loader {
	display:block;
	float:left;
	width:100%;
}

a.close {
	display:block;
	position:absolute;
	width:45px;
	height:50px;
	top:0;
	right:20px;
	text-indent:-9999em;
	overflow:hidden;
	z-index:999;
	background-image:url(../img/so-slider-sprite.png);
	background-repeat:no-repeat;
	background-size:auto 50px;
	background-position:0;
	-webkit-transition: .5s ease-in-out;
	-moz-transition: .5s ease-in-out;
	-o-transition: .5s ease-in-out;
	-ms-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
}
a.close:hover {
	opacity:.5;
	-moz-opacity:.5;
	-webkit-opacity:.5;
}