@mixin reset-box-model { margin: 0; padding: 0; border: 0; }  
@mixin reset-font { font: inherit; font-size: 100%; vertical-align: baseline; }  
@mixin reset-focus { outline: 0; }  
@mixin reset-body { line-height: 1; }  
@mixin reset-list-style { list-style: none; }
@mixin reset-table { border-collapse: collapse; border-spacing: 0; }
@mixin reset-table-cell { font-weight: normal; vertical-align: middle; }
@mixin reset-quotation { quotes: none;
  &:before, &:after { content: ""; content: none; }
  }
@mixin reset-image-anchor-border { border: none; }
@mixin reset-html5 {
  template, section, nav, article, aside, header, footer, main, figure, figcaption, embed, video, audio, picture, source, track canvas, svg, math, datalist, keygen, output, progress, meter { display: block; }
  }

@mixin reset-display($selector: "", $important: false) {
  #{append-selector(elements-of-type("inline"), $selector)} {
    @if $important {
      display: inline !important; }
    @else {
      display: inline; }
    }
  #{append-selector(elements-of-type("block"), $selector)} {
    @if $important {
      display: block !important; }
    @else {
      display: block; }
    }
  }
  
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed,  figure, figcaption, footer, header, hgroup,  menu, nav, output, ruby, section, summary, time, mark, audio, video { @include reset-box-model; @include reset-font; }

html { @include reset-body; }
ol, ul { @include reset-list-style; }
table { @include reset-table; }
caption, th, td { @include reset-table-cell; }
q, blockquote { @include reset-quotation; }
a img { @include reset-image-anchor-border; }

@include reset-html5;
