/*
*= require_tree .
*= require_self
*/

div, body, p, article, section, h1, a, header {
  box-sizing: border-box;
  font-family: Michroma;
  background: #fcfefb;
  background: #999998;
}

header {

}

body {
  font-family: sans-serif;
  color: #000000;
}

.main {

}

.header {
  width: 900px;
  margin: auto;
  text-align: center;
}

.synth {
  width: 900px;
  margin: auto;
  padding-top: 40px;
  padding-bottom: 40px;
  text-align: center;
}

.synth-key {
  float: left;
  width: 50px;
  height: 175px;
  border: 1px solid #555555;
  background-color: white;
  transition: background-color 0.25s;
  border-bottom-right-radius: 5px;
  border-bottom-left-radius: 5px;
}

.synth-key-black {
  float: left;
  width: 27px;
  height: 110px;
  transform: translateX(-50%);
  border: 1px solid #555555;
  background-color: black;
  transition: background-color 0.15s;
  border-bottom-right-radius: 5px;
  border-bottom-left-radius: 5px;
}

.synth-key-black + .synth-key {
  margin-left: -27px;
}

.pressed {
  background-color: #001fa2;
}

.keys {
  clear: both;
  margin-left: 175px;
  margin-right: 175px;
  text-align: center;
}

.clearfix:after {
  visibility: hidden;
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0;
}

.group:after {
  content: "";
  display: table;
  clear: both;
}

.description {
  font-family: sans-serif;
  font-weight: bold;
  padding-top: 15px;
  text-align: center;
  text-transform: uppercase;
  font-family: Michroma;
  font-weight: bold;
}

.img-holder {
  padding: 10px;
  padding-left: 98px;
}

.slider-container {
  display: inline;
  float: left;
  padding-left: 5px;
  padding-right: 5px;
  width: 70px;
  height: 100px;
  text-align: center;
}

.slider-sub-container {
  position: relative;
  width: 70px;
  height: 100px;
}

.slider-sub-sub-container {
  height: 83px;
  margin: auto;
}

.param-slider {
  position: absolute;
  top: 80px;
  left: -7.5px;
  transform: rotateZ(-90deg);
  width: 85px;
}

.slider-first-group {
  height: 80px;
  margin-left: 61px;
}

.slider-second-group {
  margin-left: 95px;
  margin-bottom: 30px;
}

.slider-group {
  margin: auto;
  text-align: center;
  width: 700px;
  padding-left: 40px;
}

.slider-label {
  display: inline;
  position: relative;
  font-size: 12px;
  text-align: center;
  width: 70px;
}

.slider-label:hover:after{
    background: #000;
    border-radius: 5px;
    bottom: 26px;
    color: #fff;
    content: attr(title);
    left: 20%;
    padding: 5px 15px;
    position: absolute;
    z-index: 98;
    width: 220px;
}

.slider-label:hover:before{
    border: solid;
    border-color: #000 transparent;
    border-width: 6px 6px 0 6px;
    bottom: 20px;
    content: "";
    left: 50%;
    position: absolute;
    z-index: 99;
}

.filler {
}

/*.slider-sub-container {
  width: 70px;
}*/

input[type=range] {
    /*removes default webkit styles*/
    -webkit-appearance: none;
    /*fix for FF unable to apply focus style bug */
    border: 2px solid #444;
    border-radius: 0px;
    /*required for proper track sizing in FF*/
    width: 85px;
    margin-left: -1px;
}
input[type=range]::-webkit-slider-runnable-track {
    width: 85px;
    height: 9px;
    background: #aaa;
    border: none;
}

input[type=range]::-webkit-slider-thumb {
    -webkit-appearance: none;
    border: none;
    height: 25px;
    width: 10px;
    background: #444;
    border: solid 2px #666;
    margin-top: -8.5px;
    border-radius: 40%;
}
/*
input[type=range]:focus {
    outline: none;
}*/

input[type=range]:focus {
    border: solid 2px black;
}

/* Instructions */

.instructions {
  width: 900px;
  height: 200px;
  margin: auto;
  margin-bottom: 10px;
}

.instructions-text {
  font-size: 12px;
  text-align: center;
}

.instructions-img {
  border: 2px solid #ffffff;
  box-shadow: 15px #999998;
  width: 700px;
  margin: auto;
  border-radius: 8px;
}

.instructions-title {
  padding: 10px;
  text-align: center;
}

.personal-details {
  text-align: center;
  padding-bottom: 10px;
}

.personal-detail {
  margin-left: 8px;
  margin-right: 8px;
}

.personal-details a:hover {
  text-decoration: underline;
}
