html {
    margin: 0;
    width: 100%;
    height: 100%;
    line-height: 1.15;
    font-size: 100%;
    overflow-y: auto;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}

body {
    margin: 0;
    width: 100%;
    height: 100%;
}

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

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

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

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

[hidden] {
    display: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin-top: 0;
    line-height: 1em;
    clear: both;
}

h1 {
    margin-bottom: .67em;
    font-size: 2em;
}

h2 {
    margin-bottom: .83em;
    font-size: 1.5em;
}

h3 {
    margin-bottom: 1em;
    font-size: 1.17em;
}

h4 {
    margin-bottom: 1.33em;
    font-size: 1em;
}

h5 {
    margin-bottom: 1.67em;
    font-size: .83em;
}

h6 {
    margin-bottom: 2.33em;
    font-size: .67em;
}

p {
    margin-top: 0;
}

a {
    background-color: transparent;
}

address {
    font-style: italic;
}

b,
strong {
    font-weight: bold;
}

dfn {
    font-style: italic;
}

code,
kbd,
pre,
samp {
    font-family: monospace, monospace;
    font-size: 1em;
    -webkit-hyphens: none;
    -moz-hyphens:    none;
    -ms-hyphens:     none;
    hyphens:         none;
}

small {
    font-size: 80%;
}

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

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}

dl {
    margin: 0 20px;
}

dd {
    margin: 0 0 20px;
}

menu,
ol,
ul {
    margin: 16px 0;
    padding: 0 0 0 40px;
}

nav ul,
nav ol {
    list-style-type: none;
    list-style-image: none;
}

li > ul,
li > ol {
    margin: 0;
}

blockquote,
q {
    position: relative;
    -webkit-hyphens: none;
    -moz-hyphens:    none;
    -ms-hyphens:     none;
    hyphens:         none;
    quotes: none;
}

blockquote {
    font-size: 1em;
    font-style: italic;
    font-weight: 300;
    margin: 1em 35px;
}

blockquote:before,
q:before  {
    position: absolute;
    left: -30px;
    content: "\f10e";
    font-family: FontAwesome;
}

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

blockquote blockquote {
    margin-right: 0;
}

blockquote cite,
blockquote small {
    font-size: .8em;
    font-weight: normal;
    text-transform: uppercase;
}

blockquote em,
blockquote i {
    font-style: normal;
    font-weight: 300;
}

blockquote strong,
blockquote b {
    font-weight: 400;
}

button {
    font-family: inherit;
    font-size: inherit;
}

img {
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 100%;
    -ms-interpolation-mode: bicubic;
    border: 0;
    vertical-align: middle;
}

a img {
    border: 0;
}

svg:not(:root) {
    overflow: hidden;}

figure {
    margin: 0 0 1em;
}

table {
    table-layout: fixed;
    width: 100%;
    border-collapse: collapse;
    border: none;
}

th {
    text-align: left;
}
