body{
  font-family: Lato,helvetica neue,Helvetica,Arial,sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.71429;
  color: #555;
}
body > header{
  background:url(/images/bg.jpg) no-repeat bottom center;
  overflow: auto;
  max-height:unset;
  height:unset;
  border:0;
}

body > header > div {
  max-width:unset;
  border-bottom: 1px solid rgba(255,255,255,.12);
}

body > header nav > div:first-child{
  max-width:1170px;
  margin:0 auto;
}
body > header nav ul{
  display: table;
  vertical-align: middle;
  width: 100%;
}
body > header nav div > ul > li{
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	padding: 12px;
	border-left: 1px solid rgba(255,255,255,.12);
}
body > header nav div > ul > li:last-child{
  border-right: 1px solid rgba(255,255,255,.12);
}

body > header nav div > ul > li > * {
	display: inline-block;
	vertical-align: middle;
}
body > header nav div > ul > li > * + * {
	padding-left: 10px;
	margin:0;
}
body > header nav ul > li dt,
body > header nav ul > li dl,
body > header nav ul > li dd{
  margin:0;
  font-weight:400;
  display: inline-block;
}
body > header nav ul > li a{
  color: #fff;
  text-decoration: none;
  transition: .25s;
}
body > header div .logo{
  text-align:center;
}
body > header div.menu > ul > li{
  display: inline-block;
  margin-top: 0;
  margin-bottom: 8px;
  margin-left: 8px;
}

body > header div.menu > ul{
  margin-top: 1.9em;
}

body > header div.menu > ul > li ul {
  display:none;
}
body > header div.menu{
  display: flex;
  max-width:65rem;
}
body > header div.menu ul{
  flex-grow:2;
}
body > header div.menu .logo{
  padding: 1em 1.5em;
  color:#fff;
  text-decoration:none;
  cursor:pointer;
  font-size: .8em;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: .1em;
}
body > header div.menu .logo img{
  transition:         transform .8s ease-in-out;
}
body > header div.menu .logo:hover img{
  transform: scale(1.1, 1.1) rotate(20deg);
}
body > header div.menu .logo p{
  margin:0;
}
body > header div.menu ul a{
  padding: 1em 1.5em;
  color:#fff;
  display:inline-block;
  cursor:pointer;
  font-size: .8em;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: .1em;
  text-transform: uppercase;
  text-decoration:none;
  position: relative;
}
body > header div.menu ul a.active::before,
body > header div.menu ul a:hover::before{
  opacity: 1;
  transform: scale3d(1,1,1);
}

body > header div.menu ul a::before {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	border: 2px solid #f2f3f8;
	opacity: 0;
	transition: .33s;
	pointer-events: none;
	transform: scale3d(.9,.9,.9);
}

body > main > div{
  max-width:65rem;
  margin: 0 auto;
}
body > main > div > section{
  margin:0;
  padding:0;
}
.magazine > section{
  margin-left:0;
}
body > main a{
  color:#333;

}

body > footer{
  color: #ddd;
  background-color:#323c47;
  padding-top:1.5em;
}
body > footer a{
  color: rgb(106, 118, 136);
  text-decoration: none;
  transition: .25s;
}
body > footer > div {
  max-width:69rem;
  margin:0 auto;
}
body > footer .fa{
  margin-right:.5em;
}
body > footer .magazine{
  margin-bottom:2em;
  position:relative;
}
body > footer .support *{
  position:relative;
  z-index:2;
}
body > footer .newsletter label{
  display:none;
}
body > footer .newsletter form{
  display: flex;
}
body > footer .newsletter form>div:first-child{
  flex-grow:2;
  padding-right:.5em;
}
body > footer .newsletter form>div:first-child input{
  min-width:100%;
}

body > footer .newspaper h2::before{
  content:'';
  border-left: 5px solid #6a7688;
  margin-left:-1em;
  margin-right:1em;
}
body > footer .newspaper h2{
  padding-left: 1em;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: .2em;
  text-transform: uppercase;
}
body > footer .newspaper h2::after{
  content: "";
  border-bottom: 1px solid #4f5c6e;
  margin-left:-1em;
  margin-top:.5em;
  display:block;
}

body > footer ul.marked{
  padding:0;
}
body > footer li{
  list-style-type:none;
}
body > footer ul.marked a::before{
  content: ">";
  color:#4f5c6e;
  font-weight: bold;
  padding-right:1em;
}
body > footer .news article{
  clear:both;
}
body > footer .news article>a{
  float:left;
  margin:0 .5em .5em 0;
}
body > footer .news h3{
  font-weight:normal;
}
body > footer .news time{
  color:#4f5c6e;
  font-size:.7em;
  float:right;
}
body > footer > div > nav{
  margin:0 0;
}


h1, h2, h3, h4, h5, h6{
  font-family: "Space Mono", Menlo, Monaco, Consolas, "Courier New", monospace;
}
/* page specific exceptions */

body.fourohfour main {
    position: relative;
    overflow: hidden;
}

body.fourohfour canvas {
    position: absolute;
    bottom: 0;
    height: 100%;
    opacity:.5;
}


/* ticker */

@-webkit-keyframes ticker {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    visibility: visible;
  }
  100% {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
@keyframes ticker {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    visibility: visible;
  }
  100% {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

/*body.home .clients{
  min-height:8em;
}
body.home .clients ul{
  display:table;
  list-style-type: none;
}
body.home .clients li{
  display: table-cell;
	vertical-align: middle;
	text-align: center;
	padding:1em 3em;
	font-weight:bold;
	white-space:nowrap;
}
*/
body.home .clients .ticker{
  overflow: hidden;
  height: 3rem;
  padding-left: 100%;
  box-sizing: content-box;
}
body.home .clients ul{
  display: inline-block;
  height: 2rem;
  line-height: 2rem;
  white-space: nowrap;
  padding-right: 100%;
  box-sizing: content-box;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-name: ticker;
  animation-name: ticker;
  -webkit-animation-duration: 60s;
  animation-duration: 60s;
}
body.home .clients li {
  display: inline-block;
  padding: 0 2rem;
  font-size: 1.5rem;
}


/*  chrome fixes */

.newspaper,
.magazine{
  -webkit-columns: unset;
  display:flex;
}
.newspaper > *,
.magazine > *{
  margin-left:2em;
}


@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  src: url(https://fonts.gstatic.com/s/lato/v17/S6uyw4BMUTPHjxAwXjeu.woff2) format('woff2');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  src: url(https://fonts.gstatic.com/s/lato/v17/S6uyw4BMUTPHjx4wXg.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  src: url(https://fonts.gstatic.com/s/lato/v17/S6u9w4BMUTPHh6UVSwaPGR_p.woff2) format('woff2');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  src: url(https://fonts.gstatic.com/s/lato/v17/S6u9w4BMUTPHh6UVSwiPGQ.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Space Mono';
  font-style: normal;
  font-weight: 400;
  src: url(https://fonts.gstatic.com/s/spacemono/v6/i7dPIFZifjKcF5UAWdDRYE58RWq7.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Space Mono';
  font-style: normal;
  font-weight: 400;
  src: url(https://fonts.gstatic.com/s/spacemono/v6/i7dPIFZifjKcF5UAWdDRYE98RWq7.woff2) format('woff2');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Space Mono';
  font-style: normal;
  font-weight: 400;
  src: url(https://fonts.gstatic.com/s/spacemono/v6/i7dPIFZifjKcF5UAWdDRYEF8RQ.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
