/*
  Author: Steven Burnell
  Created: 21/03/2015
  Description: Main stylesheet

  Colours:

*/

/* General Styles
 ****************/
a, a:visited { 
  color: #d27801;
  font-family: verdana, arial, helvetica, sans-serif;
  text-decoration: none;
}

a:hover { text-decoration: underline; }
a img { border: none; }

blockquote { font-style: italic; }

body {
  background-color: #fff;
  color: #444;
  font-family: Verdana, Arial, Helvetica, sans-serif;
  font-size: 14px;
  margin: 0 auto;
  padding: 0 0 50px 0;
  position: relative;
}

body.menuActive header {
  background-color: #effefe;
  background-image: none;
}

code {
  background-color: #e8eff7;
  display: block;
  margin: 0 0 20px 0;
  padding: 1%;
  white-space: pre;
}

dd { margin: 0 0  15px 0; }

dl {
  clear: both;
  margin-bottom: 30px;
}

dt {
  color: #888;
  text-transform: capitalize;
}

footer { padding: 5%; }

h1, h2, h3, h4, h5, h6,
.heading {
  color: #737f9c;
  display: block;
  font-family: courier new, courier, serif;
  font-size: 20px;
  font-style: normal;
  font-weight: normal;
  margin: 0 0 20px 0;
}

h3 { font-size: 18px; }
h4 { font-size: 16px; }

header {
  border-bottom: 1px solid #28448a;
  border-top: #28448a solid 40px;
  box-shadow: 1px 1px 5px #66686d;
  padding-top: 1px;
  position: relative;
}

header code {
  background-color: #cfd5e3;
  border-top: #28448a solid 1px;
  color: #737f9c;
  display: block;
  font-size: 10px;
  height: 135px;
  margin: 0;
  max-height: 135px;
  overflow: hidden;
  padding-left: 0;
  text-shadow: 1px 1px 2px #E8E8E8;
  white-space: pre;
}

header h1 {
  color: #fff;
  font-size: 120px;
  height: 50px;
  left: 24%;
  line-height: 55px;
  margin: 0;
  position: absolute;
  text-align: right;
  text-indent: 13%;
  text-shadow: 3px 3px 3px #333333;
  top: -30px;
  z-index: 2;
}

li { margin-bottom: 1.5em; }

main {
  display: inline-block;
  overflow: hidden;
  padding: 64px 5% 5% 5%;
}

main h2 {
  font-size: 45px;
  margin-bottom: 1em;
  text-shadow: 1px 1px 1px #e8eff7;
}

main h3 {
  border-top: #999 dashed 1px;
  padding-top: 20px;
}

main > section {
  clear: left;
  float: left;
  width: 45%;
}

main > section:last-child {
  display: inline-block;
  float: none;
  margin: 0 0 0 15%;
  vertical-align: top;
  width: 40%;
}

main > section:last-child h2 {
  display: none;
}

p {
  margin: 0 0 1.5em 0;
}

p .subl {
  color: #000;
  letter-spacing: 1px;
}

section { margin-bottom: 60px; }
small { display: block; }
ul { margin-bottom: 20px; }

var {
  background-color: #e8eff7;
  padding: 0 3px 0 3px;
}

.company {
  margin-bottom: 1em;
  padding-bottom: 1em;
  position: relative;
}

.company .dated {
  display: block;
  font-size: 80%;
  font-weight: bold;
  margin-bottom: 5px;
}

.company img {
  border-radius: 10px;
  box-shadow: 3px 3px 8px #ccc;
  float: left;
  margin-bottom: 25px;
  margin-right: 25px;
  padding: 10px;
  width: 40%;
}

.courses li {
  list-style: none;
}

.courses a {
  background: transparent url(/images/icon_certificate.png) no-repeat 0 0;
  background-size: 40px;
  display: inline-block;
  min-height: 35px;
  padding-left: 50px;
}

.downloads a {
  display: block;
  margin-bottom: 15px;
  min-height: 40px;
  padding: 10px 0 0 50px;
}

.downloads li {
  background: transparent url(/images/icon_cv_download.gif) no-repeat 0 0;
  background-size: 40px;
  list-style: none;
}

.important {
  border: 1px solid #f98282;
  font-size: 80%;
  padding: 15px;
}

.important h3,
.important p {
  border: none;
  color: #f98282;
}

.more {
  bottom: 0.75em;
  font-size: 90%;
  left: 0;
  position: absolute;
  text-transform: lowercase;
}

.more:after { content: "..."; }


#companies-list .company {
  padding-bottom: 2.5em;
}

#companies-list li,
#technologies li {
  color: #888;
  list-style: none;
  margin: 0 0 1.5em 0;
}

#companies-list ul,
#technologies ul {
  list-style: none;
  margin: 0 0 1.5em 0;
  padding: 0;
}



/* Menu
 *****************/

.menuActive #menu > ul {
  height: 250px;
}

#menu {
  height: 0;
  left: 0;
  margin: 0;
  position: absolute;
  top: -40px;
  width: 100%;
  z-index: 1;
}

#menu a {
  color: #fff;
  text-shadow: 1px 1px 0px #817D2C;
}

#menu a:hover {
  color: #d27801;
}

#menu li {
  margin: 1em 0;
  padding: 5px 10px 0 85px;
}

#menu span {
  color: #ccc;
  font-size: 11px;
}

#menu ul {
  margin: 0;
  padding: 0;
}

#menu > ul {
  background-color: #66686d;
  height: 0;
  overflow: hidden;
  position: relative;
  top: 41px;
  transition: height 1s, transform 1s;
    -webkit-transition: height 1s, -webkit-transform 1s;
}

#menu .builds {
  border-color: #fff;
  border-style: solid;
  border-width: 0 0 0 1px;
  display: inline-block;
  left: 200px;
  list-style: outside none none;
  margin: 6px 0 0 75px;
  padding: 0 10px;
  position: absolute;
  top: 0;
}

#menu .builds li {
  border: none;
  color: #ccc;
  padding-left: 0;
}

#menu .icon {
  background: transparent url(/images/menu.gif) center no-repeat;
  border: none;
  cursor: pointer;
  height: 40px;
  left: 5%;
  opacity: 1;
  padding: 0;
  position: absolute;
  text-indent: -1000px;
  top: -1px;
  width: 40px;
  z-index: 2;
}

#poweredBy {
  background-color: #102046;
  bottom: 0px;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  left: 0;
  margin: 0;
  padding: 10px;
  padding-left: 5%;
  position: absolute;
}


/* Hidden elements
 *****************/
.accessibility {
  left: -10000px;
  height: 1px;
  overflow: hidden;
  position: absolute;
}


/* Be a little adaptive with the fluid layout
 *********************************************/
@media only screen and (max-width: 992px) {
  main > section,
  main > section:last-child {
    margin-left: 0;
    margin-top: 5%;
    width: auto;
  }

  body { width: auto; }

  header code {
    height: 150px;
    overflow: hidden;
  }

  header h1 {
    font-size: 75px;
    height: 20px;
    line-height: 50px;
    top: -35px;
  }

  main {
    background-image: none;
    background-color: #fdfdfd;
    padding: 5%;
    width: auto;
  }

  .menuActive #menu > ul {
    height: 290px;
  }


  #menu li {
    padding-left: 5%;
    width: 40%;;
  }

  #menu li:first-child {
    padding-top: 75px;
  }

  #menu .builds {
    left: 40%;
    margin-left: 5%;
    top: 65px;
  }

  #menu .builds li {
    width: auto;
  }

  #menu .builds li:first-child {
    padding-top: 0;
  }
}

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

  header h1 {
    font-size: 60px;
    line-height: 30px;
    text-indent: 1%;
  }

}
