*, *:after, *::before {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, p, pre, a, abbr, acronym, address, big, span, 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 {
    font: inherit;
    font-size: 100%;

    vertical-align: baseline;
    word-break: keep-all;

    border: 0;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, div {
    position: relative;

    display: block;
}

html, body {
    line-height: 1;

    width: 100%;
    height: 100%;
}

ol, ul {
    list-style: none;
}

p, q {
    quotes: none;
}

p:before, p:after, q:before, q:after {
    content: none;
}

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

a {
    text-decoration: none;

    border: 0;
}
