html, body, body div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
    }

*, *:before, *:after {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    }

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

img, object, embed, iframe {
    max-width: 100%;
    }

img {
    height: auto;
    }

html {
    overflow-y: scroll;
    }

ul {
    list-style: none;
    }

blockquote:before, blockquote:after, q:before, q:after {
    content: "";
    }

blockquote, q {
    quotes: "" "";
    }

a {
    margin: 0;
    padding: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
    }

del {
    text-decoration: line-through;
    }

abbr[title], dfn[title] {
    border-bottom: 1px dotted #000;
    cursor: help;
    }

table {
    border-collapse: collapse;
    border-spacing: 0;
    }

th {
    font-weight: bold;
    vertical-align: bottom;
    }

td {
    font-weight: normal;
    vertical-align: top;
    }

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
    }

input, select {
    vertical-align: middle;
    }

pre {
    white-space: pre;
    white-space: pre-wrap;
    white-space: pre-line;
    word-wrap: break-word;
    }

input[type="radio"] {
    vertical-align: text-bottom;
    }

input[type="checkbox"] {
    vertical-align: bottom;
    *vertical-align: baseline;
    }

.ie6 input {
    vertical-align: text-bottom;
    }

select, input, textarea {
    font: 99% sans-serif;
    }

table {
    font-size: inherit;
    font: 100%;
    }

a:hover, a:active {
    outline: none;
    }

small {
    font-size: 85%;
    }

strong, th {
    font-weight: bold;
    }

td, td img {
    vertical-align: top;
    }

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

sup {
    top: -0.5em;
    }

sub {
    bottom: -0.25em;
    }

pre, code, kbd, samp {
    font-family: monospace, sans-serif;
    }

.clickable, label, input[type=button], input[type=submit], button {
    cursor: pointer;
    }

button, input, select, textarea {
    margin: 0;
    }

button {
    width: auto;
    overflow: visible;
    }

.ie7 img {
    -ms-interpolation-mode: bicubic;
    }

.clearfix:before, .clearfix:after {
    content: " ";
    display: table;
    }

.clearfix:after {
    clear: both;
    }

.clearfix {
    *zoom: 1;
    }

.assistive-text {
    clip: rect(1px 1px 1px 1px);
    clip: rect(1px, 1px, 1px, 1px);
    position: absolute !important;
    }
	