@import url(https://fonts.googleapis.com/css?family=Lato:400,400italic,700italic,700);

body {
  background-color: #fff;
  padding:50px;
  font:15px/1.5 "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
  color:#555;
  font-weight:400;
}

.emdash {
    margin: 0 0 0 -44px;
    padding: 0 7px 0 0;
}

h1, h2, h3, h4, h5, h6 {
  color:#111;
  margin:0 0 20px;
}

p, ul, ol, table, pre, dl {
  margin:0 0 20px;
}

h1, h2, h3 {
  line-height:1.1;
}

h1 {
  font-size:32px;
}

h2 {
  font-size:28px;
  color:#393939;
}

h3, h4, h5, h6 {
  color:#494949;
}

a {
  color:#39c;
  font-weight:400;
  text-decoration:none;
}

a:hover {
  color:#069;
}

a small {
  font-size:11px;
  color:#777;
  margin-top:-0.6em;
  display:block;
}

a:hover small {
  color:#777;
}

.wrapper {
  width:900px;
  margin:0 auto;
}

blockquote {
  border-left:1px solid #e5e5e5;
  margin:0;
  padding:0 0 0 20px;
  font-style:italic;
}

code, pre {
  font-family:Monaco, Bitstream Vera Sans Mono, Lucida Console, Terminal, monospace;
  color:#333;
  font-size:12px;
}

pre {
  padding:8px 15px;
  background: #f8f8f8;  
  border-radius:5px;
  border:1px solid #e5e5e5;
  overflow-x: auto;
}

table {
  width:100%;
  border-collapse:collapse;
}

th, td {
  text-align:left;
  padding:5px 10px;
  border-bottom:1px solid #e5e5e5;
}

dt {
  color:#444;
  font-weight:700;
}

th {
  color:#444;
}

img {
  max-width:100%;
}

banner {
  width:880px;
  margin:0 auto;
  clear: left;
}

section {
  width:600px;
  float:left;
  padding-bottom:50px;
  border:1px solid #e5e5e5;
  border-width:1px 0;
  padding-top:20px;
}

nav {
  width:180px;
  float:right;
  padding-bottom:30px;
  border:1px solid #e5e5e5;
  border-width:1px 0;
  padding-top:20px;
}

nav ul {
  list-style:none;
  height:40px;
  
  padding:0;
  
  background: #eee;
  background: -moz-linear-gradient(top, #f8f8f8 0%, #dddddd 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f8f8f8), color-stop(100%,#dddddd));
  background: -webkit-linear-gradient(top, #f8f8f8 0%,#dddddd 100%);
  background: -o-linear-gradient(top, #f8f8f8 0%,#dddddd 100%);
  background: -ms-linear-gradient(top, #f8f8f8 0%,#dddddd 100%);
  background: linear-gradient(top, #f8f8f8 0%,#dddddd 100%);
  
  border-radius:5px;
  border:1px solid #d2d2d2;
  box-shadow:inset #fff 0 1px 0, inset rgba(0,0,0,0.03) 0 -1px 0;
  width:270px;
}

nav li {
  width:89px;
  float:left;
  border-right:1px solid #d2d2d2;
  height:40px;
}

nav li:first-child a {
  border-radius:5px 0 0 5px;
}

nav li:last-child a {
  border-radius:0 5px 5px 0;
}

nav ul a {
  line-height:1;
  font-size:11px;
  color:#999;
  display:block;
  text-align:center;
  padding-top:6px;
  height:34px;
}

nav ul a:hover {
  color:#999;
  background: -moz-linear-gradient(top, #fff 0%, #ddd 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#fff), color-stop(100%,#ddd));
  background: -webkit-linear-gradient(top, #fff 0%,#ddd 100%);
  background: -o-linear-gradient(top, #fff 0%,#ddd 100%);
  background: -ms-linear-gradient(top, #fff 0%,#ddd 100%);
  background: linear-gradient(top, #fff 0%,#ddd 100%);
}

nav ul a:active {
  -webkit-box-shadow: inset 0px 2px 2px 0px #ddd;
  -moz-box-shadow: inset 0px 2px 2px 0px #ddd;
  box-shadow: inset 0px 2px 2px 0px #ddd;
}

strong {
  color:#333333;
  font-weight:700;
}

nav ul li + li {
  width:88px;
  border-left:1px solid #fff;
}

nav ul li + li + li {
  border-right:none;
  width:89px;
}

nav ul a strong {
  font-size:14px;
  display:block;
  color:#222;
}

small {
  font-size:11px;
}

hr {
  border:0;
  background:#e5e5e5;
  height:1px;
  margin:0 0 20px;
}

footer {
  width:600px;
  float:left;
  bottom:50px;
}

@media print, screen and (max-width: 960px) {
  
  h1 {
    font-size:24px;
  }

 h2 {
  font-size:20px;
 }
 
  body {
      font:14px/1.5 "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
  }
  
  div.wrapper {
    width:auto;
    margin:0;
  }
  
  section, nav, footer {
    float:none;
    !position:static;
    width:auto;
  }
  
  section {
    border:1px solid #e5e5e5;
    border-width:1px 0;
    padding:20px 0;
    margin:0 0 20px;
  }
  
  nav {
      padding-right:320px;
      border: none
  }
  
  nav a small {
    display:inline;
  }
  
  nav ul {
    !position:absolute;
    right:50px;
    top:52px;
  }
}

@media print, screen and (max-width: 720px) {
  body {
    word-wrap:break-word;
  }
  
  nav {
    padding:0;
    padding-bottom:10px;
  }
  
  nav ul, nav p.view {
    !position:static;
  }
  
  pre, code {
    word-wrap:normal;
  }
}

@media print, screen and (max-width: 480px) {
  body {
    padding:15px;
  }
  
  nav ul {
    display:none;
  }
}

@media print {
  body {
    padding:0.4in;
    font-size:12pt;
    color:#444;
  }
}
