/*
Goldilocks Approach to Responsive Web Design Boilerplate & HTML5 Boilerplate

Author: Design by Front - @designbyfront
Version: 0.1
URL: http://www.goldilocksapproach.com
----------------------------------------------------------------------------------------

CONTENTS - GLOBAL.CSS
-----------------------------------------
1. RESET / normalize.css
2. ROOT
3. CORE TYPOGRAPHY
4. LINKS
5. GLOBAL LAYOUT & GLOBAL CUSTOM TYPOGRAPHY
6. CUSTOM LAYOUT & TYPOGRAPHY
7. BROWSER AND NON-SEMANTIC STYLING
8. HELPER CLASSES
9. Print Styles

CONTENTS - LAYOUT.CSS
-----------------------------------------
8. CUSTOM LAYOUT & TYPOGRAPHY
9. CUSTOM LAYOUT & TYPOGRAPHY

*/

/* 1. RESET / normalize.css v1.1.3 | MIT License | git.io/normalize
----------------------------------------------------------------------------------------*/
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
	display: block;
}
audio,
canvas,
video {
	display: inline-block;
	*display: inline;
	*zoom: 1;
}
audio:not([controls]) {
	display: none;
	height: 0;
}
[hidden] {
	display: none;
}
html {
	font-size: 100%;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
}
html,
button,
input,
select,
textarea {
	font-family: sans-serif;
}
body {
	margin: 0;
}
a:focus {
	outline: thin dotted;
}
a:active,
a:hover {
	outline: 0;
}
h1 {
	font-size: 2em;
	margin: 0.67em 0;
}
h2 {
	font-size: 1.5em;
	margin: 0.83em 0;
}
h3 {
	font-size: 1.17em;
	margin: 1em 0;
}
h4 {
	font-size: 1em;
	margin: 1.33em 0;
}
h5 {
	font-size: 0.83em;
	margin: 1.67em 0;
}
h6 {
	font-size: 0.67em;
	margin: 2.33em 0;
}
abbr[title] {
	border-bottom: 1px dotted;
}
b,
strong {
	font-weight: bold;
}
blockquote {
	margin: 1em 40px;
}
dfn {
	font-style: italic;
}
hr {
	-moz-box-sizing: content-box;
	box-sizing: content-box;
	height: 0;
}
mark {
	background: #ff0;
	color: #000;
}
p,
pre {
	margin: 1em 0;
}
code,
kbd,
pre,
samp {
	font-family: monospace, serif;
	_font-family: "courier new", monospace;
	font-size: 1em;
}
pre {
	white-space: pre;
	white-space: pre-wrap;
	word-wrap: break-word;
}
q {
	quotes: none;
}
q:before,
q:after {
	content: "";
	content: none;
}
small {
	font-size: 80%;
}
sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}
sup {
	top: -0.5em;
}
sub {
	bottom: -0.25em;
}
dl,
menu,
ol,
ul {
	margin: 1em 0;
}
dd {
	margin: 0 0 0 40px;
}
menu,
ol,
ul {
	padding: 0 0 0 40px;
}
nav ul,
nav ol {
	list-style: none;
	list-style-image: none;
}
img {
	border: 0;
	-ms-interpolation-mode: bicubic;
}
svg:not(:root) {
	overflow: hidden;
}
figure {
	margin: 0;
}
form {
	margin: 0;
}
fieldset {
	border: 1px solid silver;
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
}
legend {
	border: 0;
	padding: 0;
	white-space: normal;
	*margin-left: -7px;
}
button,
input,
select,
textarea {
	font-size: 100%;
	margin: 0;
	vertical-align: baseline;
	*vertical-align: middle;
}
button,
input {
	line-height: normal;
}
button,
select {
	text-transform: none;
}
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
	*overflow: visible;
}
button[disabled],
html input[disabled] {
	cursor: default;
}
input[type="checkbox"],
input[type="radio"] {
	box-sizing: border-box;
	padding: 0;
	*height: 13px;
	*width: 13px;
}
input[type="search"] {
	-webkit-appearance: textfield;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}
button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}
textarea {
	overflow: auto;
	vertical-align: top;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* 2. ROOT
----------------------------------------------------------------------------------------*/
html,
button,
input,
select,
textarea {
	color: #000;
}

html {
	background-color: white;
}

::-moz-selection {
	background: #b3d4fc;
	text-shadow: none;
}

::selection {
	background: #b3d4fc;
	text-shadow: none;
}

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

audio,
canvas,
img,
video {
	vertical-align: middle;
}

fieldset {
	border: 0;
	margin: 0;
	padding: 0;
}

textarea {
	resize: vertical;
}

.browsehappy {
	margin: 0.2em 0;
	background: #ccc;
	color: #000;
	padding: 0.2em 0;
}

/* 3. CORE TYPOGRAPHY
----------------------------------------------------------------------------------------*/
html {
	font: Georgia, "Times New Roman", serif 16px/1.4;
	color: #222;
}
h1,
h2,
h3,
h4,
h5,
h6 {
	margin-bottom: 0.809em;
	line-height: 1em;
}

p,
ul,
ol,
dl,
blockquote {
	font-size: 1em;
	line-height: 1.618em;
	margin-bottom: 1.618em;
	/*    max-width: 30em;  Optimal width for long-form text 
*/
}

ul {
	list-style-type: disc;
	margin-left: 1.618em;
}
ol {
	list-style-type: decimal;
	margin-left: 1.618em;
}
nav ul,
nav ol {
	list-style: none;
	margin: 0;
	padding: 0;
}

b,
strong {
	font-weight: bold;
}
i,
em {
	font-style: italic;
}
/*small { font-size: 80%; }*/

/* 4. LINKS
----------------------------------------------------------------------------------------*/
a,
a:visited {
	outline: none;
	color: inherit;
	text-decoration: none;
}
a:hover {
	outline: none;
	text-decoration: none;
}
a:active,
a:focus {
	outline: none;
}

::-moz-selection {
	background: #b3d4fc;
	text-shadow: none;
}

::selection {
	background: #b3d4fc;
	text-shadow: none;
}

/* 5. GLOBAL LAYOUT & GLOBAL CUSTOM TYPOGRAPHY
----------------------------------------------------------------------------------------*/

/* 6. CUSTOM LAYOUT & TYPOGRAPHY
----------------------------------------------------------------------------------------*/

/* 7. BROWSER AND NON-SEMANTIC STYLING
----------------------------------------------------------------------------------------*/
.cf:before,
.cf:after {
	content: "";
	display: block;
}
.cf:after {
	clear: both;
}
.ie6 .cf {
	zoom: 1;
}

/* 8. HELPER CLASSES
----------------------------------------------------------------------------------------*/
.mobile-only {
	display: block;
}
.desktop-only {
	display: none;
}
.ir {
	background-color: transparent;
	border: 0;
	overflow: hidden;
	*text-indent: -9999px;
}

.ir:before {
	content: "";
	display: block;
	width: 0;
	height: 150%;
}

.hidden {
	display: none !important;
	visibility: hidden;
}

.visuallyhidden {
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
	clip: auto;
	height: auto;
	margin: 0;
	overflow: visible;
	position: static;
	width: auto;
}

.invisible {
	visibility: hidden;
}

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

.clearfix:after {
	clear: both;
}

.clearfix {
	*zoom: 1;
}

/* 9. Print Styles
----------------------------------------------------------------------------------------*/

@media print {
	* {
		background: transparent !important;
		color: #000 !important;
		box-shadow: none !important;
		text-shadow: none !important;
	}

	a,
	a:visited {
		text-decoration: underline;
	}

	a[href]:after {
		content: " (" attr(href) ")";
	}

	abbr[title]:after {
		content: " (" attr(title) ")";
	}

	.ir a:after,
	a[href^="javascript:"]:after,
	a[href^="#"]:after {
		content: "";
	}

	pre,
	blockquote {
		border: 1px solid #999;
		page-break-inside: avoid;
	}

	thead {
		display: table-header-group;
	}

	tr,
	img {
		page-break-inside: avoid;
	}

	img {
		max-width: 100% !important;
	}

	@page {
		margin: 0.5cm;
	}

	p,
	h2,
	h3 {
		orphans: 3;
		widows: 3;
	}

	h2,
	h3 {
		page-break-after: avoid;
	}
}
