/* =============================================================================
   HTML5 display definitions
   ========================================================================== */
	article, aside, details, figcaption, figure, footer, header, hgroup, nav, section { display: block; }
	audio, canvas, video { display: inline-block; *display: inline; *zoom: 1; }
	audio:not([controls]) { display: none; }
	[hidden] { display: none; }

/* =============================================================================
   Base
   ========================================================================== */
	html { font-size: 100%; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; overflow-y: scroll; }
	html, button, input, select, textarea { font-family: sans-serif; color: #444; }
	body { margin: 0; font-size: 0.9em; line-height: 1.4; }
	
	::-moz-selection { background: #fe57a1; color: #fff; text-shadow: none; }
	::selection { background: #fe57a1; color: #fff; text-shadow: none; }

/* =============================================================================
   Links
   ========================================================================== */
	a { color: #c0392b; text-decoration: none; }
	/*a:visited { color: #551a8b; }*/
	a:hover { color: #c0392b; text-decoration: underline; }
	/*a:focus { outline: thin dotted; }*/
	a:hover, a:active { outline: 0; }
	a, a:hover {-o-transition: color 0.25s ease-in; -webkit-transition: color 0.25s ease-in; -moz-transition: color 0.25s ease-in; transition: color 0.25s ease-in;}
	
/* =============================================================================
   Typography
   ========================================================================== */
	abbr[title] { border-bottom: 1px dotted; }
	b, strong { font-weight: bold; }
	blockquote { margin: 1em 20px; }
	dfn { font-style: italic; }
	hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }
	ins { background: #ff9; color: #000; text-decoration: none; }
	mark { background: #ff0; color: #000; font-style: italic; font-weight: bold; }
	pre, code, kbd, 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: 85%; }
	sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
	sup { top: -0.5em; }
	sub { bottom: -0.25em; }

/* =============================================================================
   Lists
   ========================================================================== */
	ul, ol { margin: 1em 0; padding: 0 0 0 40px; }
	dd { margin: 0 0 0 40px; }
	nav ul, nav ol { list-style: none; list-style-image: none; margin: 0; padding: 0; }

/* =============================================================================
   Embedded content
   ========================================================================== */
	img { /*border: 0;*/ -ms-interpolation-mode: bicubic; vertical-align: middle; }
	svg:not(:root) { overflow: hidden; }
	
/* =============================================================================
   Figures
   ========================================================================== */
	figure { margin: 0; }

/* =============================================================================
   Forms
   ========================================================================== */
	form { margin: 0; }
	fieldset { border: 0; margin: 0; padding: 0; }
	label { cursor: pointer; }
	legend { border: 0; *margin-left: -7px; padding: 0; white-space: normal; }
	button, input, select, textarea { font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle; }
	button, input { line-height: normal; }
	button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; -webkit-appearance: button; *overflow: visible; }
	button[disabled], input[disabled] { cursor: default; }
	input[type="checkbox"], input[type="radio"] { box-sizing: border-box; padding: 0; *width: 13px; *height: 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-decoration, input[type="search"]::-webkit-search-cancel-button { -webkit-appearance: none; }
	button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
	textarea { overflow: auto; vertical-align: top; resize: vertical; }
	input:valid, textarea:valid {  }
	input:invalid, textarea:invalid { background-color: #f0dddd; }

/* =============================================================================
   Tables
   ========================================================================== */
	table { border-collapse: collapse; border-spacing: 0; }
	td { vertical-align: top; }

/* =============================================================================
   Chrome Frame Prompt
   ========================================================================== */
	.chromeframe { margin: 0.2em 0; background: #ccc; color: black; padding: 0.2em 0; }

/* ==|== non-semantic helper classes ========================================
   Please define your styles before this section.
   ========================================================================== */
	.ir { display: block; border: 0; text-indent: -999em; overflow: hidden; background-color: transparent; background-repeat: no-repeat; text-align: left; direction: ltr; *line-height: 0; }
	.ir br { display: none; }
	.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; }