/* Global Styles */
body {
  margin: .5em;
  font-family: "Open Sans", "Fira Sans", "Verdana", "Source Sans Pro", "Dejavu Sans", "Droid Sans", "Helvetica", "Arial", sans-serif;
  font-size: 1.2em;
  color: #ccc;
  background-color: #333;
  text-rendering: optimizeLegibility;
}
#content {
    padding: 1em 0 1em 0;
}
a:link, a:visited {
  text-decoration:none;
  color:#1793d1;
}
a:hover, a:active {
  text-decoration:none;
  color:#fff;
}
h1 {
  text-align: center;
}
hr {
  border: solid .1em #222222;
}
blockquote {
  margin: .5em .5em .5em 2em;
  padding-left: 1em;
  border-left: solid .1em #1793d1;
}
table {
    border-collapse: collapse;
    border-spacing: 0em;
    width: 100%;
    overflow-x: scroll;
}
table tbody tr td {
    padding: 0.5em;
    border: 1px solid #464646;
    vertical-align: middle;
}
table thead tr {
  text-align: left;
  background: #2a2a2a;
}
table thead th {
  padding: 0.5em;
  border: 1px solid #464646;
}
ol ol {
    list-style-type: lower-roman;
}
article, .highlighttable pre {
  padding: 0 1em 0 1em;
}
pre, code {
  font-family: 'Consolas', 'Iconsolata', 'Fira Mono', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', monospace;
  background: #222;
  font-size: 1rem;
}
pre {
  padding: 1em;
  overflow: auto;
  white-space: pre;
}
input[type="button"], input[type="submit"] {
  background: #222;
  color: #efefef;
  border: none;
}
input[type="button"]:hover, input[type="submit"]:hover {
  background: #1793d1;
}
.error {
  color: rgb(255, 37, 68);
  padding-left: 1em;
  font-weight: bold;
}
/* Grid */
.clearfix:before, .clearfix:after {
  content: " ";
  display: table;
}
.clearfix:after {
  clear: both;
}
.col-1-2, .col-2-2,
.col-1-3, .col-2-3, .col-3-3,
.col-1-4, .col-2-4, .col-3-4, .col-4-4 {
  margin-right: -100%;
  padding: 1em;
  float: left;
  display: inline-block;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
}
.col-1-2, .col-2-2 {width: 50%;}
.col-1-3, .col-2-3 {width: 33%;}
.col-3-3 {width: 34%;}
.col-1-4, .col-2-4, .col-3-4, .col-4-4 {width: 25%}

.col-1-2, .col-1-3, .col-1-4 {margin-left: 0%;}
.col-2-2, .col-3-4 {margin-left: 50%;}
.col-2-3 {margin-left: 33%;}
.col-3-3 {margin-left: 66%;}
.col-2-4 {margin-left: 25%;}
.col-4-4 {margin-left: 75%;}
#navigation {
  top: 0;
  left: 0;
  width: 100%;
  color: #ccc;
  background: #2a2a2a;
  padding: 0em;
  z-index: 10;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  box-shadow: 0 1px 2px 0 rgba(0,0,0,.1);
  overflow: hidden;
}
.page {
  margin: auto 10%;
}
#navigation h2 {
  float: left;
  margin:0;
}
#logo {
  margin: 1rem 0 0 .5rem;
}
.toggle, #toggle {
  float: right;
  display: none;
  font-size: 1.5em;
  padding: 1em;
  font-family: FontAwesome;
  -webkit-tap-highlight-color: rgba(0,0,0,0);
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
}
#menu {
  float: right;
}
nav li {
  padding: .6rem;
  display: inline-block;
  text-align: center;
  margin: 0;
}
#twitter-widget {
  max-width: 660px;
}
#contact label {
  display: inline-block;
  min-width: 10em;
}
input[type=text], input[type=email], input[type=submit], #message {
  border: solid 1px #222;
  background: #222;
  color: #efefef;
  padding: .8em;
  margin: 1em 0em;
}
form dd {
  margin: 0;
}
#contact input[type=submit] {
  margin-left: 10.3em;
}
footer {
  background: #2a2a2a;
}
@media only screen and (max-width : 950px) {
  #menu {
    margin: 0;
    max-height: 0;
    -webkit-transition: all .25s linear;
    -moz-transition: all .25s linear;
    -ms-transition: all .25s linear;
    transition: all .25s linear;
    width:100%;
  }
  #menu > li {
    display: block;
    float: none;
    width: 100%;
    text-align:center;
  }
  nav li:hover {background:black;}
  .toggle {
      display:block;
  }
  #toggle:checked ~ #menu {
    max-height: 20em;
    -webkit-transition: all .25s linear;
    -moz-transition: all .25s linear;
    -ms-transition: all .25s linear;
    transition: all .25s linear;
  }
  .toggle:after {
    content: '\f0c9';
  }
  #toggle:checked + .toggle:after{
    content: '\f00d';
  }
  .page {
    margin: auto 5%;
  }
}
@media only screen and (max-width: 740px) {
  .col-1-2, .col-2-2,
  .col-1-3, .col-2-3, .col-3-3,
  .col-1-4, .col-2-4, .col-3-4, .col-4-4 {
    width: 100%; margin:0;
  }
  .col-2-3 {
    border-top: 2px solid rgb(51, 51, 51);
    border-bottom: 2px solid #333;
  }
  input[type=text], input[type=email], input[type=submit], #message {
    width: 100%;
    margin: 1em 0 1em 0;
  }
  #contact input[type=submit] {
     margin-left: 0;
  }
  .page {
    margin: 0;
  }
}
