/* BS3 Resets */
html,
body {
  font-family:'Open Sans', sans-serif;
  font-weight:400;
  font-size:100%;
}
body {
  background-color:#f2f2f2;
}
strong {
  font-weight:600;
}
h1,
h2,
h3,
h4,
h5 {
  font-family: 'Open Sans', sans-serif;
  font-weight:600;
}
.container {
  max-width:960px;
}
.row {
  position:relative;
}
/* Text Scale */
.content {
  font-size: 1em;
  /* equivalent to 16px */
  line-height: 1.25;
  /* equivalent to 20px */
}

@media (min-width: 43.75em) {
  .content {
    font-size: 1em;
    /* equivalent to 16px */
    line-height: 1.375;
    /* equivalent to 22px */
  }
}

h1 {
  font-size: 2em;
  /* 2x body copy size = 32px */
  line-height: 1.25;
  /* 45px / 36px */
}

@media (min-width: 43.75em) {
  h1 {
    font-size: 2.5em;
    /* 2.5x body copy size = 40px */
    line-height: 1.125;
  }
}

@media (min-width: 56.25em) {
  h1 {
    font-size: 3em;
    /* 3x body copy size = 48px */
    line-height: 1.05;
    /* keep to a multiple of the 20px line height and something more appropriate for display headings */
  }
}

h2 {
  font-size: 1.625em;
  /* 1.625x body copy size = 26px */
  line-height: 1.15384615;
  /* 30px / 26px */
}

@media (min-width: 43.75em) {
  h2 {
    font-size: 2em;
    /* 2x body copy size = 32px */
    line-height: 1.25;
  }
}

@media (min-width: 56.25em) {
  h2 {
    font-size: 2.25em;
    /* 2.25x body copy size = 36px */
    line-height: 1.25;
  }
}

h3 {
  font-size: 1.375em;
  /* 1.375x body copy size = 22px */
  line-height: 1.13636364;
  /* 25px / 22px */
}

@media (min-width: 43.75em) {
  h3 {
    font-size: 1.5em;
    /* 1.5x body copy size = 24px */
    line-height: 1.25;
  }
}

@media (min-width: 56.25em) {
  h3 {
    font-size: 1.75em;
    /* 1.75x body copy size = 28px */
    line-height: 1.25;
  }
}

h4 {
  font-size: 1.125em;
  /* 1.125x body copy size = 18px */
  line-height: 1.11111111;
}

@media (min-width: 43.75em) {
  h4 {
    line-height: 1.22222222;
    /* (22px / 18px */
  }
}

blockquote {
  font-size: 1.25em;
  /* 20px / 16px */
  line-height: 1.25;
  /* 25px / 20px */
}

@media (min-width: 43.75em) {
  blockquote {
    font-size: 1.5em;
    /* 24px / 16px = */
    line-height: 1.45833333;
    /* 35px / 24px */
  }
}
/* Framework */
header > h1 {
  position:absolute;
}
.content {
  background:#fff;
}
.io {
  position:relative;
  width:528px;
}
.io.rear {
  height:245px;
  background:url('../img/features-rear-io.jpg') 0 0 no-repeat;  
}
.io.front {
  height:300px;
  background:url('../img/features-three-quarter-front.jpg') 0 0 no-repeat;  
}
.io > .item {
  position:absolute;
  top:175px;
  width:1em;
  font-size:0.70em;
  color:#666;
}
.io.rear > .item:nth-child(1) {
  width:70px;
  left:100px;
}
.io.rear > .item:nth-child(2) {
  width:50px;
  left:187px;
}
.io.rear > .item:nth-child(3) {
  width:50px;
  left:250px;
}
.io.rear > .item:nth-child(4) {
  width:50px;
  left:300px;
}
.io.rear > .item:nth-child(5) {
  width:50px;
  left:350px;
}
.io.rear > .item:nth-child(6) {
  left:410px;
}
.io.front > .item {
  top:215px;
}
.io.front > .item:nth-child(1) {
  width:70px;
  left:40px;
}
.io.front > .item:nth-child(2) {
  width:60px;
  left:128px;
}
.io.front > .item:nth-child(3) {
  width:150px;
  left:350px;
}
/* Workers */
.buffer-top {
  margin-top:2em;
}
.buffer-bottom {
  margin-bottom:2em;
}
.buffer-left {
  margin-left:2em;
}
.buffer-right {
  margin-right:2em;
}
.buffer-all {
  margin:2em;
}
.col-snug-right {
  padding-right:0;
}
.col-snug-left {
  padding-left:0;
}
.centered-copy {
  margin:2em 4em;
  text-align:center;
}
.terms {
  margin:2em auto;
  max-width:900px;
  color:#999;
  font-size:0.75em;
}

@media (max-width: 992px) { 
  .io {
    margin-left:60px;
  }
}

@media (max-width: 768px) { 
  .centered-copy,
  .buffer-all {
    margin-left:1em;
    margin-right:1em;
    text-align:left;
  }
  .terms {
    margin-left:2em;
    margin-right:2em;
  }
  .io {
    margin-left:0;
  }
}

@media (max-width: 550px) { 
  .io {
    margin-left:-65px;
    padding-right:0;
    width:auto;
    overflow:hidden;
  }
}