* { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }

html, body { height: 100% !important; min-height: 100%; background: #ccc; font-size: 16px; }
@media screen and (max-width: 620px) { html, body { font-size: 13px; } }

/* 
	Typography
*/
h1 { font-size: 2.0em; }

h1, h2 { font-family: "Oswald", Arial, sans-serif; margin-bottom: 20px; }

h1, h2, h3, h4, h5, h6 { color: #000; }

p { font-size: 1.25em; color: #888; }
p.small { font-size: 1em; }

a { outline: none !important; }

/* 
	Modes
*/
.dark { background: #000; color: #555; }
.dark h1, .dark h2, .dark h3, .dark h4, .dark h5, .dark h6 { color: #fff; }

.white { background: #fff; }

.dark.trans { background: rgba(0, 0, 0, 0.9); }

.white.trans { background: rgba(255, 255, 255, 0.8); }

.blue { background: #558099; color: #afcce0; }
.blue h1, .blue h2, .blue h3, .blue h4, .blue h5, .blue h6 { color: #fff; }

/*
	Layout
*/
.position { margin: auto; position: absolute; top: 5; left: 5; bottom: 5; right: 5; height: 250px; }

.centered { margin: auto; position: absolute; top: 0; left: 0; bottom: 0; right: 0; height: 250px; }

.centered.medium { width: 100%; max-width: 500px; padding: 0 20px; }

.centered.large { max-width: 920px; padding: 60px; width: 100%; min-height: 400px; }
@media screen and (max-width: 992px) { .centered.large { position: relative !important; padding: 0 !important; height: auto !important; } }

section { min-height: 100%; width: 100%; position: relative; padding: 75px 30px; }
@media screen and (max-width: 620px) { section { padding: 50px 20px; } }
section#home { height: 100%; }
section#home p { color: #000; }
section#about .centered { height: 100%; width: 100%; }
section#process .centered { height: 100%; width: 100%; }
section#contact .centered { height: 100%; width: 100%; }
section .block { padding: 40px; }

img.fs { min-height: 100%; min-width: 1024px; width: 100%; height: auto; position: fixed; top: 0; left: 0; }
img.faded { -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$ms)"; filter: alpha(opacity=0); -moz-opacity: 0; -khtml-opacity: 0; opacity: 0; background: #000; }

form { margin-top: 20px; padding: 20px; border: 1px solid rgba(0, 0, 0, 0.1); -webkit-transition: all 0.5s; -moz-transition: all 0.5s; -o-transition: all 0.5s; transition: all 0.5s; -webkit-box-shadow: 0 3px 5px rgba(0, 0, 0, 0.1); -moz-box-shadow: 0 3px 5px rgba(0, 0, 0, 0.1); -ms-box-shadow: 0 3px 5px rgba(0, 0, 0, 0.1); box-shadow: 0 3px 5px rgba(0, 0, 0, 0.1); }
form .form-control { margin-bottom: 10px; -webkit-border-radius: 0; -moz-border-radius: 0; -ms-border-radius: 0; border-radius: 0; }
form input[type='submit'].form-control { margin-bottom: 0; background: #000; color: #fff; border: 0; font-family: "Oswald", Arial, sans-serif; text-transform: uppercase; -webkit-transition: background 0.3s; -moz-transition: background 0.3s; -o-transition: background 0.3s; transition: background 0.3s; }
form input[type='submit'].form-control:hover { background: #333; }
form:hover { border: 1px solid #000; }

.overlay { position: fixed; z-index: 99999; top: 0; left: 0; right: 0; bottom: 0; display: none; }
.overlay img, .overlay iframe { width: auto; max-width: 80%; max-height: 80%; height: auto; }
.overlay .fa-times, .overlay .prev, .overlay .next { position: absolute; top: 5%; right: 3%; color: #555; height: 40px; width: 40px; line-height: 40px; text-align: center; border: 1px solid #555; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }
.overlay .fa-times:hover, .overlay .prev:hover, .overlay .next:hover { text-decoration: none; color: #fff; border: 1px solid #fff; }
.overlay .prev, .overlay .next { top: 50%; margin-top: -20px; }
.overlay .prev { left: 3%; right: auto; }

/*
	Navigation
*/
nav#main { position: absolute; bottom: 0; left: 0; right: 0; height: 80px; background: #000; border-bottom: 1px solid #222; -webkit-transition: all 0.2s; -moz-transition: all 0.2s; -o-transition: all 0.2s; transition: all 0.2s; }
nav#main .logo { height: 80px; line-height: 80px; padding: 0 10px; position: absolute; left: 0; color: #666; font-family: "Oswald", Arial, sans-serif; letter-spacing: 2px; text-transform: uppercase; -webkit-transition: all 0.2s; -moz-transition: all 0.2s; -o-transition: all 0.2s; transition: all 0.2s; }
@media screen and (max-width: 620px) { nav#main .logo { padding: 0 10px; } }
nav#main ul { list-style: none; height: 80px; padding: 0; margin: 0; text-align: center; -webkit-transition: all 0.2s; -moz-transition: all 0.2s; -o-transition: all 0.2s; transition: all 0.2s; }
@media screen and (max-width: 620px) { nav#main ul { text-align: right; } }
nav#main ul li { height: 80px; display: inline-block; border-left: 1px solid #222; -webkit-transition: all 0.2s; -moz-transition: all 0.2s; -o-transition: all 0.2s; transition: all 0.2s; }
nav#main ul li a { height: 80px; display: inline-block; padding: 0 40px; line-height: 80px; color: #666; font-family: "Oswald", Arial, sans-serif; text-transform: uppercase; text-decoration: none; -webkit-transition: all 0.2s; -moz-transition: all 0.2s; -o-transition: all 0.2s; transition: all 0.2s; }
@media screen and (max-width: 620px) { nav#main ul li a { padding: 0 12px; } }
nav#main ul li a:hover { text-decoration: none; background: #222; color: #fff; }
nav#main ul li a.active { background: #222; color: #fff; }
nav#main ul li:last-child { border-right: 1px solid #222; }
nav#main.affix { position: fixed; z-index: 9999; top: 0; bottom: auto; height: 40px; border-bottom: 1px solid #222; }
nav#main.affix .logo { height: 480px; line-height: 40px; padding: 0 10px; }
nav#main.affix ul { height: 40px; }
nav#main.affix ul li { height: 40px; }
nav#main.affix ul li a { height: 40px; line-height: 40px; }

.social-icons { margin: 20px 0; }

.icon { display: inline-block; height: 45px; width: 45px; line-height: 45px; text-align: center; border: 1px solid #ddd; border: 1px solid rgba(0, 0, 0, 0.2); color: #999; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }
.icon:hover { color: #000; text-decoration: none; border: 1px solid #555; -webkit-box-shadow: 0 3px 2px rgba(0, 0, 0, 0.1); -moz-box-shadow: 0 3px 2px rgba(0, 0, 0, 0.1); -ms-box-shadow: 0 3px 2px rgba(0, 0, 0, 0.1); box-shadow: 0 3px 2px rgba(0, 0, 0, 0.1); }

.form-control-feedback { display: none; }

.has-feedback .form-control-feedback { display: inline-block; margin-top: -24px; }

.loader { border: 2px solid #555; width: 50px; height: 50px; position: fixed; left: 50%; top: 50%; margin-top: -25px; margin-left: -25px; -webkit-border-radius: 50px; -moz-border-radius: 50px; -ms-border-radius: 50px; border-radius: 50px; -webkit-animation: load 1s infinite; /* Chrome, Safari, Opera */ animation: load .3s infinite; }

@-webkit-keyframes load { 0% { height: 50px; -webkit-transform: rotate(0); }
  50% { height: 0; margin-top: 0; -webkit-transform: rotate(180deg); }
  100% { height: 50px; margin-top: -25px; -webkit-transform: rotate(360deg); } }

@keyframes load { 0% { height: 50px; }
  50% { height: 0; margin-top: 0; }
  100% { height: 50px; margin-top: -25px; } }
