* {
   box-sizing: border-box;
}

/*	Resets ------	*/
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
hr,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figure,
figcaption,
hgroup,
menu,
footer,
header,
nav,
section,
summary,
time,
mark,
audio,
video {
   margin: 0;
   padding: 0;
   border: 0;
}

ul {
   list-style: none;
}

article,
aside,
canvas,
figure,
figure img,
figcaption,
hgroup,
footer,
header,
nav,
section,
audio,
video {
   display: block;
}

blockquote,
q {
   quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
   content: '';
   content: none;
}

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

b,
strong {
   font-weight: bold;
}

[type="checkbox"],
[type="radio"] {
   box-sizing: border-box;
   padding: 0;
}

[type="search"] {
   -webkit-appearance: textfield;
   outline-offset: -2px;
}

[type="search"]::-webkit-search-decoration {
   -webkit-appearance: none;
}

::-webkit-file-upload-button {
   -webkit-appearance: button;
   font: inherit;
}

.clear:after {
   content: ".";
   display: block;
   clear: both;
   visibility: hidden;
   line-height: 0;
   height: 0
}

a img {
   border: 0;
   width: auto;
   height: auto;
   max-width: 100%;
   vertical-align: bottom;
   border-style: none;
   -webkit-perspective: 0;
   perspective: 0;
   -webkit-backface-visibility: hidden;
   -webkit-transform: translate3d(0, 0, 0);
   visibility: visible;
   backface-visibility: hidden;
}

a,
input,
select,
textarea {
   outline: none;
   border-radius: 0;
}

img {
   width: auto;
   height: auto;
   max-width: 100%;
   vertical-align: bottom;
   border-style: none;
   -webkit-perspective: 0;
   perspective: 0;
   -webkit-backface-visibility: hidden;
   -webkit-transform: translate3d(0, 0, 0);
   visibility: visible;
   backface-visibility: hidden;
}

/* Selection colours (easy to forget) */
img::selection {
   background: transparent;
}

img::-moz-selection {
   background: transparent;
}

a {
   text-decoration: none;
   display: inline-block;
}

input[type='number'] {
   -moz-appearance: textfield;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
   -webkit-appearance: none;
}

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

input:invalid,
input:required {
   box-shadow: none;
}

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

input:required {
   box-shadow: none;
}

input::-moz-focus-inner {
   box-shadow: 0 0 0px transparent;
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="search"],
input[type="number"],
input[type="submit"],
input[type="password"],
select,
textarea {
   -webkit-appearance: none;
   -moz-appearance: none;
   appearance: none;
}

/*	Resets ------	*/