/* apply a natural box layout model to all elements */
*, *:before, *:after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
 }

html,
body {
  height: 100%;
}

body {
  line-height: 1.4;
  background: #f1c40f;
  color: #333333;
}

a {
  color: #34495E;
}
.container {
  overflow-x: hidden;
  padding:0;
}
.heading {
    border-bottom: none;
    margin: 0;
    padding-bottom: 0;
}
.experiment-number {
	padding-left: 0;
}
h1 {
	font-size:1.5em;
	line-height: 1;
}
h2{
	margin-top: 0.5em;
	font-size:2em;
	line-height: 1;
}

[role="main"] {
  width: 100%;
  padding: 1em 2em;
}

[role="banner"] {
  width: 100%;
  padding: 1em 2em;
}

[role="banner"] {
  position: relative;
  background-color: #34495e;
  color: white;
}
[role="banner"] {
  *zoom: 1;
}
[role="banner"]:before, [role="banner"]:after {
  content: "";
  display: table;
}
[role="banner"]:after {
  clear: both;
}
[role="banner"] h1 {
  margin: 0;
}

[role="navigation"] {
  position: absolute;
  top: 0;
  left: -80%;
  width: 80%;
  min-height: 100%;
  background-color: #34495e;
  color: #fff;
  padding: 1.75em 2em;
  border-right: 2px solid #000;
}
[role="navigation"] h2 {
  margin: 0;
}
[role="navigation"] ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
[role="navigation"] li {
  margin: 0.5em 0;
}
[role="navigation"] li.active {
  list-style-type: square;
}
[role="navigation"] a {
  color: #fff;
  text-decoration: none;
}
[role="navigation"] a:hover {
  border-bottom: 2px solid #fff;
}
[class$="-btn"] {
	color: #fff;
	text-decoration: none;
	padding: 0.5em;
	background: #34495e;
	border: 2px solid #FFFFFF;
	border-radius: 4px 4px 4px 4px;
	font-weight: 700;
	text-decoration: none;
	text-transform: uppercase;
	z-index: 3;
}
[class$="-btn"]:hover {
 	opacity: 0.7;
}

.menu-btn {
  float: right;
}

.close-btn {
  position: absolute;
  top: 1em;
  right: 2em;
}

.preload * {
  -webkit-transition: none !important;
  -moz-transition: none !important;
  -o-transition: none !important;
  transition: none !important;
}


/* bis 640px */
@media (max-width: 40em) {

  .active-nav {
    overflow: hidden;
  }
  .active-nav [role="navigation"] {
    left: 0;
  }
  .active-nav [role="banner"],
  .active-nav [role="main"] {
    margin-left: 80%;
    border-left: 1px solid #40576e;
  }
  .active-nav [role="banner"] {
    border-left: 1px solid #40576e;
  }

  .csstransforms3d.csstransitions [role="navigation"],
  .csstransforms3d.csstransitions [role="banner"],
  .csstransforms3d.csstransitions [role="main"],
  .csstransforms3d.csstransitions .menu-btn {
    font-smoothing: antialiased;
    -webkit-transition: 0.3s ease;
    -moz-transition: 0.3s ease;
    -o-transition: 0.3s ease;
    transition: 0.3s ease;
  }
  .csstransforms3d.csstransitions [role="navigation"] {
    left: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    -moz-transform: translate3d(-100%, 0, 0);
    -ms-transform: translate3d(-100%, 0, 0);
    -o-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
  .csstransforms3d.csstransitions .active-nav [role="navigation"] {
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  .csstransforms3d.csstransitions .active-nav [role="banner"],
  .csstransforms3d.csstransitions .active-nav [role="main"] {
    margin-left: 0;
    -webkit-transform: translate3d(80%, 0, 0);
    -moz-transform: translate3d(80%, 0, 0);
    -ms-transform: translate3d(80%, 0, 0);
    -o-transform: translate3d(80%, 0, 0);
    transform: translate3d(80%, 0, 0);
  }
}

/* ab 640 px */
@media (min-width: 40em) {
h1 {
	margin-bottom: 0;
	text-transform: uppercase;
	letter-spacing:1px;
	line-height: 1.5;
	font-size:2em;
	font-weight: 800;
}

  .menu-btn,
  .close-btn {
    display: none;
  }

  [role="banner"] {
    padding-bottom: 0;
  }

  [role="navigation"] {
    position: static;
    min-height: inherit;
    width: 100%;
    margin: 0;
    padding: 1em 2em;
  }
  [role="navigation"] ul {
    *zoom: 1;
  }
  [role="navigation"] ul:before, [role="navigation"] ul:after {
    content: "";
    display: table;
  }
  [role="navigation"] ul:after {
    clear: both;
  }
  [role="navigation"] ul li {
    float: left;
    padding-right: 1.4em;
  }
  [role="navigation"] h2 {
    position: absolute;
    overflow: hidden;
    clip: rect(0 0 0 0);
    height: 1px;
    width: 1px;
    margin: -1px;
    padding: 0;
    border: 0;
  }
}
