body {
  margin: 0;
  -webkit-font-smoothing: antialiased;
}

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section {
  display: block;
}

audio, canvas, video {
  display: inline-block;
  *display: inline;
  *zoom: 1;
}

audio:not([controls]) {
    display: none;
}

html {
  font-size: 100%;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

sub, sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

img {
  width: auto\9;
  vertical-align: middle;
  border: 0;
  -ms-interpolation-mode: bicubic;
}

button, input, select, textarea {
  font-family: inherit;
  margin: 0;
  font-size: 100%;
  vertical-align: middle;
}

button, input {
  *overflow: visible;
  line-height: normal;
}

// button::-moz-focus-inner, input::-moz-focus-inner {
//   padding: 0;
//   border: 0;
// }

button, input[type="button"], input[type="reset"], input[type="submit"] {
  cursor: pointer;
  -webkit-appearance: button;
}

object {
  display: none;
}

input[type="search"] {
  .box-sizing();
  -webkit-appearance: textfield;
}

input[type="search"]::-webkit-search-decoration, input[type="search"]::-webkit-search-cancel-button {
  -webkit-appearance: none;
}

textarea {
  overflow: auto;
  vertical-align: top;
}

.clear {
  *zoom: 1;
  &:before,
  &:after {
    display: table;
    content: "";
  }
  &:after {
    clear: both;
  }
}