html { overflow-y: scroll; }
input[type=button]::-moz-focus-inner,button::-moz-focus-inner, { border:0; }
::-moz-selection, ::selection { background:#fff; color:#000; text-shadow: none; } 
.sidebar ::-moz-selection, .content ::-moz-selection, .sidebar ::selection, .content ::selection { background:#000; color:#fff; text-shadow: none; } 
:focus { outline:0; }
/* Non-semantic helper classes */
.ir { display: block; text-indent: -999em; overflow: hidden; background-repeat: no-repeat; text-align: left; direction: ltr; }
.hidden { display: none; visibility: hidden; } 
.visuallyhidden { position: absolute !important; clip: rect(1px 1px 1px 1px); clip: rect(1px, 1px, 1px, 1px); }
.invisible { visibility: hidden; }
.clearfix:after  { content: "\0020"; display: block; height: 0; clear: both; visibility: hidden; }
.clearfix { zoom: 1; }


/* Primary Styles */
body {
	min-width: 900px;
}

/* Footer */
#footer {
	position: fixed;
	left: 10px;
	bottom: 10px;
	right: 0;
	height: 60px;
	background: #000;
	background: rgba(0,0,0,.95);
	z-index: 3;
}
#logo {
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	width: 188px;
	height: 60px;
	overflow: hidden;
	text-indent: -9999px;
	background: url(g/logo.png) 50% 50% no-repeat;
}
#menu {
	position: absolute;
	left: 280px;
	bottom: 0;
	height: 49px;
	line-height: 49px;
}
#menu a {
	font-family: Verlag, sans-serif;
	font-size: 9px;
	font-weight: bold;
	color: #fff;
	text-transform: uppercase;
	display: block;
	float: left;
	padding: 0 9px 0 10px;
	text-decoration: none;
	letter-spacing: 1px;
}
#menu a:hover {
	color: #919191;
}

/* Sidebar */
.sidebar {
	width: 200px;
	position: fixed;
	left: 30px;
	top: 50px;
	color: #323232;
}
.sidebar .nav {
	position: absolute;
	left: 0;
	top: -3px;
	width: 100%;
	height: 17px;
	line-height: 14px;
	font-family: Verlag, sans-serif;
	font-size: 9px;
	text-transform: uppercase;
	font-weight: bold;
	letter-spacing: 1px;
}
#overlay .sidebar .nav {
	position: relative;
}
.sidebar .nav .right {
	position: absolute;
	top: 0;
	right: -2px;
	white-space: nowrap;
}
.sidebar .nav .right a {
	margin-left: 8px;
}
.sidebar h1 {
	font-size: 26px;
	line-height: 28px;
	padding: 59px 0 2px;
	margin: 0 0 20px;
}
.sidebar .box {
	padding: 17px 0 4px;
	font-family: Verlag, sans-serif;
	font-size: 9px;
	line-height: 13px;
	text-transform: uppercase;
	letter-spacing: 1px;
}
.sidebar img {
	position: relative;
	display: block;
	left: 1px;
}
.sidebar form {
	padding: 15px 0 0;
}
.sidebar h2 {
	font-family: Verlag, sans-serif;
	font-size: 9px;
	line-height: 14px;
	margin: 0;
	padding: 0;
	text-transform: uppercase;
	letter-spacing: 1px;
}
.sidebar p {
	line-height: 14px;
	margin: 0;
}
.sidebar a {
	text-decoration: none;
}
.sidebar .menu {
	padding: 9px 0 12px;
	font-size: 21px;
	position: relative;
}
.sidebar .menu ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}
.sidebar .menu li {
	padding: 0;
	margin: 0;
	line-height: 30px;
}
.sidebar .menu a {
	display: block;
	margin-left: -20px;
	padding-left: 20px;
}
.sidebar .menu a.open {
	background: url(g/menu-arrow.png) 0 9px no-repeat;
}
.sidebar .menu.manual-arrow a.open {
	background-image: none;
}
.sidebar .nav,
.sidebar .box,
.sidebar .menu,
.sidebar h1 {
	border-bottom: 1px solid #b2b2b2;
}
.sidebar .menu .arrow {
	position: absolute;
	left: -20px;
	margin-top: 18px;
	width: 6px;
	height: 11px;
	background: url(g/menu-arrow.png) 0 0 no-repeat;
}

/* Sidebar form */
.sidebar form {
	overflow: hidden;
}
.sidebar form h2 {
	padding-bottom: 3px;
}
.sidebar form .filler {
	overflow: hidden;
	line-height: 25px;
	height: 25px;
	padding-right: 7px;
}
.sidebar form input {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	border: 1px solid #565656;
	margin: 0;
	background: transparent;
	line-height: 13px;
	height: 25px;
	padding: 5px 7px;
	vertical-align: top;
	color: #7f7f7f;
}
.sidebar form button {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	float: right;
	line-height: 23px;
	height: 25px;
	border: 1px solid #565656;
	padding: 0 7px;
	margin: 0;
	font-family: Verlag, sans-serif;
	font-size: 9px;
	color: #969696;
	font-weight: bold;
	text-transform: uppercase;
	background: transparent;
}
.sidebar form button:hover {
	color: #fff;
}
.placeholder {
	font-style: italic;
}
form .after-submit {
	display: none;
}

/* Content */
.content {
	padding: 50px 0 70px 300px;
	overflow: hidden;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.content.fixed {
	position: fixed;
}
.content.over {
	position: relative;
	z-index: 2;
	margin-left: 300px;
	right: 0;
	top: 0;
	bottom: 30px;
	padding: 0 30px 0 0;
}
.content.over .content-inner {
	margin: 50px 20px 100px 0;
	max-width: 570px;
	padding: 0 30px 0 0;
	position: relative;
}
.content.over .content-inner.fixed {
	position: fixed;
	overflow: hidden;
	top: 0;
	padding-top: 50px;
	bottom: 71px;
	margin-top: 0;
	margin-bottom: 0;
}
.content.over .content-pos {
	position: relative;
}
#overlay .overlay-line {
	height: 1px;
	position: absolute;
	bottom: 0;
	left: 19px;
	right: 30px;
	background: #4e4e4e;
}
.content.over p:last-child {
	margin-bottom: 0;
}

/* Frontpage */
#sentence {
	border: 1px solid #b2b2b2;
	border-width: 1px 0;
	padding: 26px 0 24px;
	line-height: 26px;
	font-size: 23px;
	color: #323232;
	text-align: justify;
}
#clocks {
	padding: 25px 0 0;
	border-bottom: 1px solid #b2b2b2;
}
#clocks-inner {
	width: 228px;
	overflow: hidden;
}
#clocks .clock {
	position: relative;
	width: 49px;
	height: 7px;
	background: url(g/clock.png) 0 0 no-repeat;
	float: left;
	margin: 0 27px 24px 0;
	padding: 57px 0 1px;
	font-family: Verlag, sans-serif;
	font-size: 7px;
	line-height: 7px;
	font-weight: bold;
	color: #646464;
	text-align: center;
	text-transform: uppercase;
}
#clocks .clock:nth-child(3n+2) {
	margin-right: 26px;
}
#clocks .clock canvas {
	width: 49px;
	height: 49px;
	position: absolute;
	left: 0;
	top: 0;
}

/* Portfolio */
.project {
	display: block;
	float: left;
	width: 270px;
	height: 180px;
	margin: 0 30px 30px 0;
	line-height: 27px;
	color: #323232;
	font-family: Verlag, sans-serif;
	font-size: 9px;
	text-transform: uppercase;
	text-decoration: none;
	letter-spacing: 1px;
}
.project .pic {
	background: #000;
}
.project img {
	width: 270px;
	height: 150px;
	display: block;
	-webkit-transition: opacity .4s;
	-moz-transition: opacity .4s;
	transition: opacity .4s;
}
.project:hover img {
	opacity: .8;
	-webkit-transition: opacity 0s;
	-moz-transition: opacity 0s;
	transition: opacity 0s;
}
.project.featured {
	width: 570px;
	height: 390px;
}
.project.featured img {
	width: 570px;
	height: 360px;
}
.content.project-content {
	padding-right: 30px;
}
.project-image {
	display: block;
	width: 100%;
	max-width: 870px;
	max-height: 500px;
	margin: 0 0 20px;
}

/* Google plus */
.google-plus {
	cursor: pointer;
	position: relative;
}
.google-plus:hover {
	color: #919191;
}
.google-plus .google-button-outer {
	position: absolute;
	width: 50px;
	height: 20px;
	left: 0;
	top: 19px;
	overflow: hidden;
}
.google-plus .google-button {
	position: absolute;
	top: -40px;
	left: 7px;
}

/* News */
.content-inner.news {
	width: 409px;
}
.news-item {
	font-family: Arial, sans-serif;
	font-size: 12px;
	line-height: 15px;
	color: #969696;
	margin-bottom: 50px;
	border-bottom: 1px solid #565656;
	padding-bottom: 6px;
}
.news-item p {
	line-height: 15px;
}
.news-item .meta {
	font-family: Verlag, sans-serif;
	font-size: 12px;
	font-weight: bold;
	color: #fff;
	letter-spacing: 1px;
	position: relative;
	left: 0;
	top: -5px;
	height: 17px;
	line-height: 14px;
	padding-bottom: 2px;
	border-bottom: 1px solid #565656;
}
.news-item .meta .location {
	font-size: 9px;
	text-transform: uppercase;
	padding-left: 1px;
}
.news-item h2 {
	font-family: FBP, serif;
	font-size: 21px;
	line-height: 30px;
	color: #fff;
	font-weight: normal;
	padding: 18px 0;
}
.news-nav {
	position: relative;
	top: -30px;
	line-height: 7px;
	height: 7px;
	margin-bottom: -20px;
}
.news-nav a {
	font-size: 9px;
	font-family: Verlag, sans-serif;
	text-transform: uppercase;
	color: #fff;
	text-decoration: none;
	letter-spacing: 1px;
	font-weight: bold;
}
.news-nav a:hover {
	color: #919191;
}
.news-prev {
}
.news-next {
	float: right;
	position: relative;
	right: -2px;
}

/* Overlay */
#overlay {
	position: fixed;
	z-index: 1;
	left: 10px;
	top: 0;
	bottom: 70px;
	right: 0;
	background: #000;
	background: rgba(0,0,0,.95);
	-webkit-transition: top .25s;
	-moz-transition: top .25s;
	transition: top .25s;
}
#overlay.closed {
	top: 80%;
}
#overlay .sidebar {
	color: #969696;
}
#overlay .sidebar .nav,
#overlay .sidebar .menu,
#overlay .sidebar h2 {
	color: #fff;
}
#overlay .sidebar .nav,
#overlay .sidebar .box,
#overlay .sidebar .menu,
#overlay .sidebar h1 {
	border-color: #565656;
}
#overlay .box a:hover {
	color: #fff;
}


.content form {
	width: 409px;
	line-height: 21px;
	font-size: 11px;
	font-family: Arial, sans-serif;
	color: #888;
	position: relative;
	top: -7px;
}
.content form label {
	font-family: Verlag, sans-serif;
	font-size: 9px;
	line-height: 10px;
	margin: 0;
	padding: 0;
	text-transform: uppercase;
	letter-spacing: 1px;
	color: #fff;
	font-weight: bold;
}
.content form .form-field {
	padding-bottom: 10px;
}
.content form .form-field-submit {
	float: right;
	padding: 0;
	position: relative;
	z-index: 1;
}
.content form .form-field-note {
	position: relative;
	top: -1px;
}
.content form input,
.content form textarea {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	border: 1px solid #565656;
	margin: 0;
	background: transparent;
	line-height: 15px;
	vertical-align: top;
	color: #7f7f7f;
	padding: 4px 7px;
}
.content form input {
	line-height: 13px;
	height: 25px;
	padding: 5px 7px;
}
.content form textarea {
	max-width: 100%;
	max-height: 250px;
}
.content form button {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	float: right;
	line-height: 23px;
	height: 25px;
	border: 1px solid #565656;
	padding: 0 7px;
	margin: 0;
	font-family: Verlag, sans-serif;
	font-size: 9px;
	color: #969696;
	font-weight: bold;
	text-transform: uppercase;
	background: transparent;
}
.content form button:hover {
	color: #fff;
}
.content form input.error,
.content form textarea.error {
	border-color: #aaa;
}



.follow-us {
	display: none;
}


/* Print styles */
@media print {
  * { background: transparent !important; color: #444 !important; text-shadow: none !important; }
  a, a:visited { color: #444 !important; text-decoration: underline; }
  a:after { content: " (" attr(href) ")"; } 
  abbr:after { content: " (" attr(title) ")"; }
  .ir a: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; }
}



@media all and (orientation:portrait) { 
  /* Style adjustments for portrait mode goes here */
}
@media all and (orientation:landscape) { 
  /* Style adjustments for landscape mode goes here */
}

/* Grade-A Mobile Browsers (Opera Mobile, iPhone Safari, Android Chrome) */
@media screen and (max-device-width: 480px) {
  /* Uncomment if you don't want iOS and WinMobile to mobile-optimize the text for you
  html { -webkit-text-size-adjust:none; -ms-text-size-adjust:none; } */
}

@media screen and (max-width: 1024px) {
	#footer {
		position: absolute;
		bottom: auto;
		top: 10px;
	}
	.sidebar {
		position: absolute;
		top: 100px;
	}
	.content {
		padding-top: 100px;
		padding-bottom: 0;
	}
	.content.fixed {
		display: none;
	}
	.content.over {
		top: 70px;
		background: rgba(0,0,0,.95);
		padding-left: 300px;
		margin-left: 10px;
	}
	.content.over .content-pos {
		position: static;
	}
	.content.over .content-inner.fixed {
		position: static;
	}
	#overlay {
		position: absolute;
		bottom: auto;
		top: 70px;
		z-index: 3;
		background: transparent;
		-webkit-transition: top 0s;
		-moz-transition: top 0s;
		transition: top 0s;
	}
	#overlay .overlay-line {
		bottom: auto;
		top: 0;
	}
	#overlay .sidebar {
		top: 55px;
		left: 20px;
	}
	.sidebar.fixed {
		display: none;
	}
}


