/*  HTML5 ✰ Boilerplate  */

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

blockquote, q { quotes: none; }
blockquote:before, blockquote:after,
q:before, q:after { content: ''; content: none; }
ins { background-color: #ff9; color: #000; text-decoration: none; }
mark { background-color: #ff9; color: #000; font-style: italic; font-weight: bold; }
del { text-decoration: line-through; }
abbr[title], dfn[title] { border-bottom: 1px dotted; cursor: help; }
table { border-collapse: collapse; border-spacing: 0; }
hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }
input, select { vertical-align: middle; }

body { font:13px/1.231 sans-serif; *font-size:small; } 
select, input, textarea, button { font:99% sans-serif; }
pre, code, kbd, samp { font-family: monospace, sans-serif; }

html { overflow-y: scroll; }
a:hover, a:active { outline: none; }
ol { list-style-type: decimal; }
nav ul, nav li { margin: 0; list-style:none; list-style-image: none; }
small { font-size: 85%; }
strong, th { font-weight: bold; }
td { vertical-align: top; }

sub, sup { font-size: 75%; line-height: 0; position: relative; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }

pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; padding: 15px; }
textarea { overflow: auto; }
.ie6 legend, .ie7 legend { margin-left: -7px; } 
input[type="radio"] { vertical-align: text-bottom; }
input[type="checkbox"] { vertical-align: bottom; }
.ie7 input[type="checkbox"] { vertical-align: baseline; }
.ie6 input { vertical-align: text-bottom; }
label, input[type="button"], input[type="submit"], input[type="image"], button { cursor: pointer; }
button, input, select, textarea { margin: 0; }
input:valid, textarea:valid   {  }
input:invalid, textarea:invalid { border-radius: 1px; -moz-box-shadow: 0px 0px 5px red; -webkit-box-shadow: 0px 0px 5px red; box-shadow: 0px 0px 5px red; }
.no-boxshadow input:invalid, .no-boxshadow textarea:invalid { background-color: #f0dddd; }

::-moz-selection{ background: #000; color:#fff; text-shadow: none; }
::selection { background: #FFF; color:#fff; text-shadow: none; }
a:link { -webkit-tap-highlight-color: #000; text-decoration: none;}

button {  width: auto; overflow: visible; }
.ie7 img { -ms-interpolation-mode: bicubic; }

body, select, input, textarea {  color: #444; }
h1, h2, h3, h4, h5, h6 { font-weight: bold; }
a:hover { color: #036; }

/* ================== Generic & Shared ================== */

html{
	background: #E6E6E6;
}

body{
	margin: 0;
	font-family: Helvetica;
	background: #E6E6E6;
	display: none; 
	/* If you use .no-js or 
	.js body you get a flicker 
	where in some browsers 
	loading is screwed */
}


.container{
	float: left;
	width: auto;
	height: 100%;
	background: #E6E6E6;
}

.holder{
	float: left;
	
}

a{
	color: #000;
	text-decoration: none;
}

a:hover{
	color: #BCBCBC;
}

/* ================== Header ================== */

.header{
	width: 100%;
	position:fixed;
	left: 0;
	background: #E6E6E6;
	z-index: 1000;
}

.header h1{
	float: left;
	font-size: 2em;
	padding: 10px 0 10px 20px;
}

.header a h1{
	text-decoration: none;
	color: #000;
}

.header a:hover h1{
	color: #BCBCBC;
}

ul.nav{
	float: right;
	width: auto;
	list-style: none;
	margin: 0 20px 0 0;
}

ul.nav li{
	float: left;
	width: auto;
	padding: 10px 0 10px 10px;
	font-size: 2em;
	font-weight: bold;
	text-decoration: none;
	color: #000;
}

ul.nav li a{
	cursor: pointer;
	text-decoration: none;
	color: #000;
}

ul.nav li a:hover{
	color: #BCBCBC;
}

/* ================== About ================== */

.text{
	float: left;
	font-size: 5em;
	font-weight: bold;
	letter-spacing: -2px;
	line-height: 1em;
	color: #999999;
	margin: 80px 20px 0 20px;
}

.text p a{
	float: left;
	margin: 0;
	width: 100%;
}

/* ================== Images ================== */
.bg-images{
	position: relative;
	z-index: 15;
	padding: 40px 0 0 0;
}

.bg-images .protective-layer{
	position: fixed;
	height: 100%;
	width: 100%;
	z-index: 2;
	overflow: hidden;
}

.bg-images p{
	float: left;
	clear: left;
	margin: 10px 0 0 0;
	position: relative;
	z-index: 1;
	width: 100%;
}

.bg-images p a.playButt, .bg-images p a.panButt{
	position: absolute;
	left: 43%;
	top: 35%;
	width: 15%;
}

.bg-images p a.playButt img, .bg-images p a.panButt img{
	float: left;
	width: 100%;
	max-width: 140px;
	max-height: 140px;
	height: auto;
}

.bg-images p span.launch{
	color: #e6e6e6;
	font-size: 24px;
	padding: 20px;
	position: absolute;
	bottom: 0px;
	left: 0px;
	cursor: pointer;
	display: none;
}
.bg-images p span.launch:hover{
	color: #fff;
}

.js .scrollProof{
	display: none;
}
.scrollProof{
	position: fixed;
	width: 90px;
	right:5px;
	bottom: 2px;
	z-index: 50;
	cursor: pointer;
	z-index: 1000;
}

.scrollProof p a img{
	float: left;
	clear: none;
	width: 40px;
	margin: 0 2px;
}
.scrollProof a:first-child img{
	margin-bottom: 4px;
}

.loading{
	position: absolute;
	z-index: 10;
	width: 32px;
}

.js .nextPage{
	display: none;
}

/* ================== Video ================== */

#content{
	float: left;
	width: 100%;
}

.js #content img, .js #content video{
	float: left;
	width: 100%;
}

.js #content img:first-child{
	margin: 30px 0 0 0;
}


/* ================== Side Bar ================== */

.js .pop-up{
	display: none;
}

.pop-up{
	z-index: 999;
	position: fixed;
	right: 0;
	height: 100%;
	width: 240px;
}

.pop-up .side{
	float: left;
	background: #E6E6E6;
	opacity: 0.65;
	padding: 0;
}

ul.galleries{
	float: left;
	width: 200px;
	list-style: none;
	margin: 60px 0 0 0;
	padding: 0 20px 0 20px;
}

ul.galleries li{
	float: left;
	width: 100%;
	text-align: right;
	padding: 2px;
	color: #000;
}

ul.galleries li.active, ul.galleries li:hover{
	font-weight: bold;
	cursor: pointer;
}

ul.galleries li a{
	cursor: pointer;
	text-decoration: none;
	color: #000;
}

ul.galleries li a:hover{
	color: #000;
}

.pop-up p{
	float: left;
	width: 233px;
	padding: 2px 2px 2px 5px;
	margin: 3px 0 0 0;
	background: #E6E6E6;
	opacity: 0.65;
	cursor: pointer;
	height: 16px;
}

.pop-up p a{
	position: absolute;
	right: 18px;
}

.pop-up p a:hover{
	font-weight: bold;
	color: #000;
}

.ie8 ul.images, .ie8 .side p:last-child, .ie7 ul.images, .ie7 .side p:last-child, .ie9 ul.images, .ie9 .side p:last-child{
	display: none;
}

ul.images{
	float: left;
	clear: left;
	width: 200px;
	margin-top: 3px;
	list-style: none;
	padding: 3px 20px 3px 50px;
}

ul.images li{
	float: left;
	height: 100%;
	padding: 2px;
	cursor: pointer;
}

ul.images li img{
	float: left;
	padding: 0;
	width: 40px;
	height: 40px;
}

ul.images li:hover img{
	opacity: 0.7;
}

/* ================== Random Text ================== */


.js .random-text{
	display: none;
}

.js .random-text p{
	float: left;
	margin: 0;
}

.random-text p{
	float: left;
	margin: 0 0 0.5em 0;
}

/* ================== Footer ================== */

.footer{
	height: 20px;
	width: 100%;
	position: fixed;
	left: 0;
	bottom: 0px;
	z-index: 1600;
}

.ie .contact_page .footer{
	position: relative;
	margin: 20px 0 0 0;
}

.footer p{
	float: left;
	padding: 2px 0 0 20px;
	font-weight: bold;
	color: #999999;
}
.preload{
	display: none;
}

/* ================== Images and Videos ================== */

img, video, iframe{
	float: left;
	clear: left;
	-webkit-user-select: none;
	-moz-user-select:none;
	width: 100%;
	height: auto;
	position: relative;
	z-index: 0;
}

object{
	float: left;
	position: relative;
	z-index: 1;
}

.ie7 img {
	-ms-interpolation-mode: bicubic; 
}

.ir { display: block; text-indent: -999em; overflow: hidden; background-repeat: no-repeat; text-align: left; direction: ltr; }
.hidden { display: none; visibility: hidden; }
.visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }
.invisible { visibility: hidden; }
.clearfix:before, .clearfix:after { content: "\0020"; display: block; height: 0; overflow: hidden; }
.clearfix:after { clear: both; }
.clearfix { zoom: 1; }


@media (max-width: 480px) {
	.header h1, ul.nav li{
		font-size: 1.2em;
	}
}

@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
	#scrollUp, #scrollDown, .side p:last-child, .side .images{
		display: none;
	}
}

@media screen and (max-device-width: 480px) {
	html { 
		-webkit-text-size-adjust: 75%; 
		-ms-text-size-adjust:none; 
	}
	
	.header. .pop-up{
		position:absolute;
	}
	
	.bg-images{
		padding-top: 23px;
	}
	
	ul.galleries{
		margin-top: 40px;
		width: 120px;
	}	
	
	.pop-up{
		width: 160px;
	}
	
	#scrollUp, #scrollDown{
		display: none;
	}
	
	.text{
		padding: 40px 20px;
		margin: 0px;
		font-size: 2.5em;
		line-height: 1em;
	}
	.text.about{
		margin: 40px 20px;
		padding: 0px;
	}
	
	.footer p{
		font-size: 0.7em;
	}
	
	.side .images{
		display: none;
	}
	
	

}

@media print {
  * { background: transparent !important; color: black !important; text-shadow: none !important; filter:none !important;
  -ms-filter: none !important; } 
  a, a:visited { color: #444 !important; text-decoration: underline; }
  a[href]:after { content: " (" attr(href) ")"; }
  abbr[title]:after { content: " (" attr(title) ")"; }
  .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; }  
  pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
  thead { display: table-header-group; }
  tr, img { page-break-inside: avoid; }
  @page { margin: 0.5cm; }
  p, h2, h3 { orphans: 3; widows: 3; }
  h2, h3{ page-break-after: avoid; }
}
