html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, 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;

}

body {

line-height: 1;

}

ol, ul {

list-style: none;

}

blockquote, q {

quotes: none;

}

blockquote:before, blockquote:after, q:before, q:after {

content: '';
content: none;

}

table {

border-collapse: collapse;
border-spacing: 0;

}

body {

-webkit-text-size-adjust: none;

}

body, input, select, textarea {

color: #fff;
font-family: 'Source Sans Pro', sans-serif;
font-size: 15pt;
font-weight: 300;
letter-spacing: -0.025em;
line-height: 1.75em;

}

body {

height: 100%;
background: #fafafa;
overflow: hidden;

}

a {

color: #151515;
font-weight: 700;

}

.icon {

text-decoration: none;
position: relative;

}

.icon:before {

font-family: FontAwesome;
font-style: normal;
font-weight: normal;
text-transform: none !important;

}

.icon > .label {

display: none;

}

@keyframes wrapper {

0% {
  opacity: 0;
}
100% {
  opacity: 1;
}

}

wrapper {

animation: wrapper 3s forwards;
height: 100%;
left: 0;
opacity: 0;
position: fixed;
top: 0;
width: 100%;

}

main {

color: #333;
height: 100%;
left: 0;
position: fixed;
text-align: center;
top: 0;
width: 100%;

}

main:before {

content: '';
display: inline-block;
height: 100%;
margin-right: 0;
vertical-align: middle;
width: 1px;

}

.mainAnim {

animation: main 3s;

}

@keyframes main {

0% {
  margin-top: 0%
}
100% {
  margin-top: -100%
}

}

@keyframes header {

0% {
  transform: translate3d(0,1em,0);
  opacity: 0;
}
100% {
  transform: translate3d(0,0,0);
  opacity: 1;
}

}

@keyframes nav-icons {

0% {
  transform: translate3d(0,1em,0);
  opacity: 0;
}
100% {
  transform: translate3d(0,0,0);
  opacity: 1;
}

}

header {

animation: header 1s 0.25s forwards;
backface-visibility: hidden;
transform: translate3d(0,0,0);
cursor: default;
display: inline-block;
opacity: 0;
position: relative;
text-align: center;
top: -1em;
vertical-align: middle;
width: 90%;

}

header h1 {

font-size: 4.35em;
font-weight: 900;
letter-spacing: -0.035em;
line-height: 1em;

}

header h2 {

margin-top: 1em;
font-size: 1.25em;
font-weight: 650;

}

header a {

border-bottom: none;

}

header p {

font-size: 1.2em;
margin: 0.75em 0 0.25em 0;
opacity: 0.75;
font-family: "Open Sans", "sans-serif";

}

header nav {

margin: 1.5em 0 0 0;

}

header nav li {

animation: nav-icons 0.5s ease-in-out forwards;
backface-visibility: hidden;
transform: translate3d(0,0,0);
display: inline-block;
height: 5.35em;
line-height: 5.885em;
opacity: 0;
position: relative;
top: 0;
width: 5.35em;

}

header nav li:nth-child(1) {

animation-delay: 1.5s;

}

header nav li:nth-child(2) {

animation-delay: 1.75s;

}

header nav li:nth-child(3) {

animation-delay: 2s;

}

header nav li:nth-child(4) {

animation-delay: 2.25s;

}

header nav li:nth-child(5) {

animation-delay: 2.5s;

}

header nav li:nth-child(6) {

animation-delay: 2.75s;

}

header nav li:nth-child(7) {

animation-delay: 3s;

}

header nav li:nth-child(8) {

animation-delay: 3.25s;

}

header nav li:nth-child(9) {

animation-delay: 3.5s;

}

header nav li:nth-child(10) {

animation-delay: 3.75s;

}

header nav a {

border: 0;
border-radius: 1px;
display: inline-block;

}

header nav a:before {

transition: all 0.2s ease-in-out;
display: block;
font-size: 1.75em;
height: 2.5em;
line-height: 2.5em;
position: relative;
text-align: center;
top: 0;
width: 2.5em;

}

header nav a:hover {

font-size: 1.1em;
text-decoration: none;

}

header nav a:hover:before {

background-color: #333;
color: #fff;

}

header nav a:active {

font-size: 0.95em;
background: none;

}

header nav a:active:before {

background-color: #333;
color: #fff;

}

header nav a span {

display: none;

}

@media screen and (max-width: 1680px) {

body, input, select, textarea {
  font-size: 13pt;
}

}

@media screen and (max-width: 1280px) {

body, input, select, textarea {
  font-size: 12pt;
}

}

@media screen and (max-width: 736px) {

body {
  min-width: 320px;
}
body, input, select, textarea {
  font-size: 11pt;
}
#header h1 {
  font-size: 3em;
}
#header p {
  font-size: 1em;
}
#header nav {
  font-size: 1em;
}
#header nav a:hover {
  font-size: 1em;
}
#header nav a:active {
  font-size: 1em;
}

}

@media screen and (max-width: 480px) {

#header nav {
  padding: 0 1em;
}

}