/* Let's default this puppy out
-------------------------------------------------------------------------------*/

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, menu, nav, section, time, mark, audio, video, details, summary {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font-weight: normal;
	vertical-align: baseline;
	background: transparent;
}

article, aside, figure, footer, header, nav, section, details, summary {display: block;}

/* Box-sizing reset with percentages for responsive sizing */
html {
	box-sizing: border-box;
	font-size: 100%; /* default to 16px */
}

*,
*:before,
*:after {
	box-sizing: inherit;
}

img, object, embed {
	max-width: 100%;
	height: auto;
}

/* force a vertical scrollbar to prevent a jumpy page */
html {
	overflow-y: scroll;
}

/* Resetting list style */
ul {
	list-style: none;
}

/* Quote block resets */
blockquote, q {
	quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}

/* Anchor resets */
a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
	text-decoration: none;
}

/* Text elements */
del {
	text-decoration: line-through;
}

abbr[title], dfn[title] {
	border-bottom: 1px dotted;
	cursor: help;
}

/* Table resets with responsive sizing */
table {
	border-collapse: collapse;
	border-spacing: 0;
	width: 100%;
}

th {
	font-weight: bold;
	vertical-align: bottom;
}

td {
	font-weight: normal;
	vertical-align: top;
}

/* Reset for horizontal rule */
hr {
	display: block;
	height: 0.0625rem; /* 1px */
	border: 0;
	border-top: 0.0625rem solid #ccc; /* 1px solid */
	margin: 1em 0;
	padding: 0;
}

/* Form element resets */
input, select {
	vertical-align: middle;
}

input[type="radio"] {
	vertical-align: text-bottom;
}

input[type="checkbox"] {
	vertical-align: bottom;
}

select, input, textarea {
	font: 99%/1.5 sans-serif;
}

table {
	font-size: inherit;
}

small {
	font-size: 85%;
}

strong {
	font-weight: bold;
}

td, td img {
	vertical-align: top;
}

sub, sup {
	font-size: 0.75em;
	line-height: 0;
	position: relative;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

/* Monospaced elements */
pre, code, kbd, samp {
	font-family: monospace, sans-serif;
}

/* Form and button styling */
.clickable, label, input[type=button], input[type=submit], input[type=file], button {
	cursor: pointer;
}

button, input, select, textarea {
	margin: 0;
	width: auto;
	overflow: visible;
}

/* Clearfix */
.clearfix:before, .clearfix:after {
	content: "\0020";
	display: block;
	height: 0;
	overflow: hidden;
}

.clearfix:after {
	clear: both;
}

.clearfix {
	zoom: 1;
}
