@charset "utf-8";
body {
 font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
 font-size:13px;
 margin:0px;
 background-color:#fff;
 color:#666;
	letter-spacing:1px;
 transition: margin 1s;
}
ul::selection,
li::selection,
body::selection,
div::selection,
h1::selection,
h2::selection,
h3::selection,
strong::selection,
b::selection,
i::selection,
em::selection,
p::selection,
a::selection,
img::selection,
span::selection,
td::selection,
th::selection { background-color:transparent; color:#3297fd; }


html, body { height:100%; }
#container {
 min-height:100%;
}
* html #container {
 height:100%;
}
table { border-collapse:collapse; }
td, th { font-size:13px;padding:0px;vertical-align:top; -webkit-text-size-adjust: 100%; }
.padded td, .padded th { padding:2px; }
th { text-align:left; }

table.bordered { border-top:1px solid #cccccc; border-left:1px solid #cccccc; }
.bordered td, .bordered th { border-bottom:1px solid #cccccc; border-right:1px solid #cccccc; }

img { border:0px;margin:0px; }

p { margin-top:0px; }

h1 { font-size:14px;margin:0px 0px 16px; }
h2 { font-size:14px;margin:16px 0px; }
h3 { font-size:12px;margin:16px 0px 0px; }
h4 { font-size:11px;margin:16px 0px 0px; }

a { color:#444f6e;text-decoration:none; }
a:hover { color:#bf5000; }
a div { cursor:pointer; }

ul {
	margin-top:0px;
	margin-left:0px;
	padding-left:16px;
}
.no_bullets {
 list-style-type:none;
	padding-left:0px;
	margin:0px;
}
.spaced_li li {
 margin-bottom:5px;
}

form { margin:0px; }
select, input, textarea { font-size:11px;margin:0px; }

.m { font-size:12px; }
.s { font-size:11px; }
.xs { font-size:10px; }

.inlineBlock {
	display:inline-block;
	zoom:1;
	*display:inline;
}

.success {
 color:#00cc00;
 font-weight:bold;
}
.error {
 color:#cc0000;
 font-weight:bold;
}
.warning {
 color:#ff9900;
 font-weight:bold;
}

#logo {
 width:268px;
	height:45px;
 margin:30px 0 0 20px;
	float:left;
}
#nav {
	text-align:right;
	padding:72px 0 17px;
	font-size:14px;
	line-height:16px;
	color:#444f6e;
}
#nav div {
	display:inline-block;
	zoom:1;
	*display:inline;
	margin:0 14px;
}
#nav a div { color:#808080; }
#nav a:hover div { color:#bf5000; }
#nav a div.current { color:#444f6e; }

#footer {
	font-size:11px;
	color:#999999;
	margin-left:20px;
	margin-top:-32px;
 padding-bottom:20px;
	letter-spacing:normal;
 -webkit-text-size-adjust: none;
}
#footer a, #footer a:hover { color:#999999; }

#content {
	margin-top:20px;
	padding:0px 20px 52px;
}
#mobile_content {
 display:none;
	padding:0px 20px;
}
#mobile_content h1 { margin:36px 0 17px; }

.quote {
	font-weight:bold;
	font-size:18px;
	line-height:13px;
	margin:2px 0 -2px;
	letter-spacing:normal;
	display:inline-block;
	zoom:1;
	*display:inline;
	vertical-align:top;
}

#slider {
	width:100%;
	height:480px;
	overflow:hidden;
	white-space:nowrap;
	margin-bottom:5px;
}
#slider img { margin:0 5px 7px 0; vertical-align:middle; }
#slider div {
	display:inline-block;
	zoom:1;
	*display:inline;
 vertical-align:top;
}
#scrollbar {
 width:100%;
	height:5px;
	overflow:hidden;
	background-color:#e6e6e6;
	cursor:pointer;
}
#scroller {
 width:45px;
	height:7px;
	position:absolute;
	margin-top:-1px;
	left:0;
	background-color:#444f6f;
	background-image:url(img/scrollgrip.gif);
	background-position:center center;
	background-repeat:no-repeat;
	cursor:e-resize;
}

.textbox {
	padding:20px;
	width:195px;
	background-color:#808080;
	color:#fff;
	font-size:12px;
	display:inline-block;
	zoom:1;
	*display:inline;
	vertical-align:middle;
	height:440px;
	white-space:normal;
}
.textbox a { color:#ddd; }
.textbox a:hover { color:#bf5000; }
#pause {
 position:absolute;
	right:10px;
	top:560px;
	width:12px;
	height:15px;
	cursor:pointer;
 opacity:0.5;
 filter: alpha(opacity=50);
}
#pause img { width:12px;height:15px; }

#left, #right {
 position:absolute;
	top:334px;
	width:14px;
	height:22px;
	cursor:pointer;
 opacity:0.5;
 filter: alpha(opacity=50);
}
#left {
	left:10px;
}
#right {
	right:10px;
}
#pause:hover, #right:hover, #left:hover { opacity:1; filter: alpha(opacity=100); }
#left img, #right img { width:12px;height:20px; }


#projects img {
	width:86px;
	height:86px;
	margin-right:8px;
	border:2px solid #444f6f;
	vertical-align:top;
}
#projects a img { border:2px solid #fff; }
#projects a:hover img { border:2px solid #bf5000; }

#menu {
	display: none;
	text-align: right;
	height: 18px;
	padding: 45px 10px 42px;
 cursor:pointer;
}
#menu:before, #menu:after, #menu div {
	content: "";
	display: block;
	width: 25px;
	height: 4px;
	background-color: #444F6F;
	border-radius:6px;
	border-color: #fff;
	margin: 0 0 0 auto;
}
#menu div {
	border: 3px solid #fff;
	border-radius: 5px;
	margin: 0 -3px 0 auto;
}

#menu:hover div, #menu:hover:before, #menu:hover:after {
 background-color:#bf5000;
}

#nav > div#close_menu { text-align:right; display:none; color:#808080; margin-top:8px; cursor:pointer; }
#nav > div#close_menu:hover { color:#bf5000; }
#nav_screen {
	display: none;
	opacity: 0;
	transition: opacity 1s;
	position: fixed;
	z-index: 3;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	margin-left: -100%;
	bottom: 0;
	background-color: #000;
	background-color: rgba(0,0,0,0.8);
}

@media only screen and (max-device-width: 480px) {
	#slider { overflow: scroll; -webkit-overflow-scrolling:touch; }
	#scroller, #scrollbar, #left, #right { display:none; }
}
@media only screen and (-webkit-min-device-pixel-ratio:1.5) and (max-device-width: 2048px) {
	#slider { overflow: scroll; -webkit-overflow-scrolling:touch; }
	#scroller, #scrollbar, #left, #right { display:none; }
}

@media (max-width:960px) {
 #nav { clear:left; padding:17px 0; }
 #slider { height:auto; white-space:normal; margin-left:-5px; width:calc(100% + 5px); display: flex; flex-wrap: wrap; margin-bottom:45px; }
 #slider img, #slider div.textbox { width:calc(100% - 5px); height:auto; margin:0 0 5px 5px; object-fit:cover; align-self: flex-start; box-sizing:border-box; }
 #slider img.sm { width:calc(50% - 5px); align-self: auto; }
 #mobile_content { display:block; }
 #left, #right, #scroller, #scrollbar, .desktop_only { display:none; }
}

@media (max-width:660px) {
	#nav {
		position: fixed;
		top: 0;
		right: 0;
		height: 100%;
		overflow-x:hidden;
  overflow-y:auto;
		z-index: 4;
		width: 300px;
		margin:0 -300px 0 0;
		transition: margin-right 1s;
		padding: 0;
  background-color:#fff;
	}
 #nav div {
		display: block;
		text-align: left;
		padding: 10px 20px;
  margin:0;
 }
	#menu, #nav div#close_menu, #nav_screen {
		display: block;
	}
 #slider { display:block; }
 #slider img.sm { width:calc(100% - 5px); }
}