html {
	font-family: sans-serif;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
}
body {
	margin: 0;
}
article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary {
	display: block;
}
audio, canvas, progress, video {
	display: inline-block;
	vertical-align: baseline;
}
audio:not([controls]) {
	display: none;
	height: 0;
}
[hidden], template {
	display: none;
}
a {
	background: transparent;
}
a:active, a:hover {
	outline: 0;
}
abbr[title] {
	border-bottom: 1px dotted;
}
b, strong {
	font-weight: bold;
}
dfn {
	font-style: italic;
}
h1 {
	font-size: 2em;
	margin: 0.67em 0;
}
mark {
	background: #ff0;
	color: #000;
}
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;
}
img {
	border: 0;
}
svg:not(:root) {
	overflow: hidden;
}
figure {
	margin: 1em 40px;
}
hr {
	-moz-box-sizing: content-box;
	box-sizing: content-box;
	height: 0;
}
pre {
	overflow: auto;
}
code, kbd, pre, samp {
	font-family: monospace, monospace;
	font-size: 1em;
}
button, input, optgroup, select, textarea {
	color: inherit;
	font: inherit;
	margin: 0;
}
button {
	overflow: visible;
}
button, select {
	text-transform: none;
}
button, html input[type="button"], input[type="reset"], input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}
button[disabled], html input[disabled] {
	cursor: default;
}
button::-moz-focus-inner, input::-moz-focus-inner {
	border: 0;
	padding: 0;
}
input {
	line-height: normal;
}
input[type="checkbox"], input[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}
input[type="number"]::-webkit-inner-spin-button, input[type="number"]::-webkit-outer-spin-button {
	height: auto;
}
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;
}
fieldset {
	border: 1px solid #c0c0c0;
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
}
legend {
	border: 0;
	padding: 0;
}
textarea {
	overflow: auto;
}
optgroup {
	font-weight: bold;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
td, th {
	padding: 0;
}

/* 
/* b. Basic Setup Styles - Top Elements
/* =================================================================== */
*, *:before, *:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
html {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-size: 62.5%;
}
body {
	font-weight: normal;
	line-height: 1;
	text-rendering: optimizeLegibility;
}

/* 
/* c. Typography
====================================================================== */
div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, p, blockquote, th, td {
	margin: 0;
	padding: 0;
}
h1, h2, h3, h4, h5, h6 {
	text-rendering: optimizeLegibility;
	line-height: 1.2;
}
hr {
	border: solid #ddd;
	border-width: 1px 0 0;
	clear: both;
	margin: 11px 0 24px;
	height: 0;
}
em, i {
	font-style: italic;
	line-height: inherit;
}
strong, b {
	font-weight: bold;
	line-height: inherit;
}
small {
	font-size: 60%;
	line-height: inherit;
}
ul {
	list-style: none;
}
ol {
	list-style: decimal;
}
ol, ul.square, ul.circle, ul.disc {
	margin-left: 17px;
}
ul.square {
	list-style: square;
}
ul.circle {
	list-style: circle;
}
ul.disc {
	list-style: disc;
}
ul li {
	padding-left: 4px;
}
ul ul, ul ol, ol ol, ol ul {
	margin: 3px 0 3px 17px;
}

/* links
---------------------------------------------------------------------- */
a {
	text-decoration: none;
	line-height: inherit;
}
a img {
	border: none;
}
a:focus {
	outline: none;
}
p a, p a:visited {
	line-height: inherit;
}

/* 
/* d. Media
/* =================================================================== */
img, video, embed, object {
	max-width: 100%;
	height: auto;
}
object, embed {
	height: 100%;
}
img {
	-ms-interpolation-mode: bicubic;
}

/* 
/* e. Grid
===================================================================== */
.row {
	width: 94%;
	max-width: 1024px;
	margin: 0 auto;
}
.ie8 .row {
	width: 1024px;
}
.narrow .row {
	max-width: 980px;
}
.row .row {
	width: auto;
	max-width: none;
	margin-left: -18px;
	margin-right: -18px;
}
.row:before, .row:after {
	content: "";
	display: table;
}
.row:after {
	clear: both;
}
.column, .columns, .bgrid {
	position: relative;
	padding: 0 18px;
	min-height: 1px;
	float: left;
}
.column.centered, .columns.centered {
	float: none;
	margin: 0 auto;
}
.row.collapsed > .column, .row.collapsed > .columns, .column.collapsed, .columns.collapsed {
	padding: 0;
}
[class*="column"] + [class*="column"]:last-child {
	float: right;
}
[class*="column"] + [class*="column"].end {
	float: right;
}
.one, .row .one {
	width: 8.33333%;
}
.two, .row .two {
	width: 16.66667%;
}
.three, .row .three {
	width: 25%;
}
.four, .row .four {
	width: 33.33333%;
}
.five, .row .five {
	width: 41.66667%;
}
.six, .row .six {
	width: 50%;
}
.seven, .row .seven {
	width: 58.33333%;
}
.eight, .row .eight {
	width: 66.66667%;
}
.nine, .row .nine {
	width: 75%;
}
.ten .row .ten {
	width: 83.33333%;
}
.eleven, .row .eleven {
	width: 91.66667%;
}
.twelve, .row .twelve {
	width: 100%;
}

/* tablets
--------------------------------------------------------------- */
@media screen and (max-width:768px) {
	.row {
		width: auto;
		padding-left: 30px;
		padding-right: 30px;
	}
	.row .row {
		padding-left: 0;
		padding-right: 0;
		margin-left: -15px;
		margin-right: -15px;
	}
	.column, .columns {
		padding: 0 15px;
	}
	.tab-fourth, .row .tab-fourth {
		width: 25%;
	}
	.tab-third, .row .tab-third {
		width: 33.33333%;
	}
	.tab-half, .row .tab-half {
		width: 50%;
	}
	.tab-2thirds, .row .tab-2thirds {
		width: 66.66667%;
	}
	.tab-3fourths, .row .tab-3fourths {
		width: 75%;
	}
	.tab-whole, .row .tab-whole {
		width: 100%;
	}
}

/* mobile
--------------------------------------------------------------- */
@media screen and (max-width:600px) {
	.row {
		padding-left: 25px;
		padding-right: 25px;
	}
	.row .row {
		margin-left: -10px;
		margin-right: -10px;
	}
	.column, .columns {
		padding: 0 10px;
	}
	.mob-fourth, .row .mob-fourth {
		width: 25%;
	}
	.mob-half, .row .mob-half {
		width: 50%;
	}
	.mob-3fourths, .row .mob-3fourths {
		width: 75%;
	}
	.mob-whole, .row .mob-whole {
		width: 100%;
	}
}

/* small mobile devices
--------------------------------------------------------------- */
@media screen and (max-width:400px) {
	.row {
		padding-left: 30px;
		padding-right: 30px;
	}
	.row .row {
		padding-left: 0;
		padding-right: 0;
		margin-left: 0;
		margin-right: 0;
	}
	.column, .columns {
		width: auto !important;
		float: none !important;
		margin-left: 0;
		margin-right: 0;
		clear: both;
		padding: 0;
	}
	[class*="column"] + [class*="column"]:last-child {
		float: none;
	}
}

/* larger screens
--------------------------------------------------------------- */
@media screen and (min-width:1200px) {
	.wide .wrap {
		max-width: 1180px;
	}
}


/* block grids
--------------------------------------------------------------- */
.bgrid-sixth .bgrid {
	width: 16.66667%;
}
.bgrid-fourth .bgrid {
	width: 25%;
}
.bgrid-third .bgrid {
	width: 33.33333%;
}
.bgrid-half .bgrid {
	width: 50%;
}
.bgrid {
	padding: 0;
}

/* Clearing for block grid columns. Allows columns with
different heights to align properly. */
.first {
	clear: both;
}

/* first column in large(default) screen - for IE8 */
.bgrid-sixth .bgrid:nth-child(6n+1), .bgrid-fourth .bgrid:nth-child(4n+1), .bgrid-third .bgrid:nth-child(3n+1), .bgrid-half .bgrid:nth-child(2n+1) {
	clear: both;
}

/* smaller screens */
@media screen and (max-width:900px) {
	/* block grids for small screens */
	.s-bgrid-sixth .bgrid {
		width: 16.66667%;
	}
	.s-bgrid-fourth .bgrid {
		width: 25%;
	}
	.s-bgrid-third .bgrid {
		width: 33.33333%;
	}
	.s-bgrid-half .bgrid {
		width: 50%;
	}
	.s-bgrid-whole .bgrid {
		width: 100%;
		clear: both;
	}
	.first, [class*="bgrid-"] .bgrid:nth-child(n) {
		clear: none;
	}
	.s-bgrid-sixth .bgrid:nth-child(6n+1), .s-bgrid-fourth .bgrid:nth-child(4n+1), .s-bgrid-third .bgrid:nth-child(3n+1), .s-bgrid-half .bgrid:nth-child(2n+1) {
		clear: both;
	}
}

/* tablets */
@media screen and (max-width:768px) {
	.tab-bgrid-sixth .bgrid {
		width: 16.66667%;
	}
	.tab-bgrid-fourth .bgrid {
		width: 25%;
	}
	.tab-bgrid-third .bgrid {
		width: 33.33333%;
	}
	.tab-bgrid-half .bgrid {
		width: 50%;
	}
	.tab-bgrid-whole .bgrid {
		width: 100%;
		clear: both;
	}
	.first, [class*="tab-bgrid-"] .bgrid:nth-child(n) {
		clear: none;
	}
	.tab-bgrid-sixth .bgrid:nth-child(6n+1), .tab-bgrid-fourth .bgrid:nth-child(4n+1), .tab-bgrid-third .bgrid:nth-child(3n+1), .tab-bgrid-half .bgrid:nth-child(2n+1) {
		clear: both;
	}
}

/* mobile devices */
@media screen and (max-width:600px) {
	.mob-bgrid-sixth .bgrid {
		width: 16.66667%;
	}
	.mob-bgrid-fourth .bgrid {
		width: 25%;
	}
	.mob-bgrid-third .bgrid {
		width: 33.33333%;
	}
	.mob-bgrid-half .bgrid {
		width: 50%;
	}
	.mob-bgrid-whole .bgrid {
		width: 100%;
		clear: both;
	}
	.first, [class*="mob-bgrid-"] .bgrid:nth-child(n) {
		clear: none;
	}
	.mob-bgrid-sixth .bgrid:nth-child(6n+1), .mob-bgrid-fourth .bgrid:nth-child(4n+1), .mob-bgrid-third .bgrid:nth-child(3n+1), .mob-bgrid-half .bgrid:nth-child(2n+1) {
		clear: both;
	}
}

/* stack on small mobile devices */
@media screen and (max-width:400px) {
	.stack .bgrid {
		width: auto !important;
		float: none !important;
		margin-left: 0;
		margin-right: 0;
		clear: both;
	}
}

/* 
/* f. MISC
===================================================================== */

/* Clearing - (http://nicolasgallagher.com/micro-clearfix-hack/
--------------------------------------------------------------------- */
.group:before, .group:after {
	content: "";
	display: table;
}
.group:after {
	clear: both;
}

/* Misc Helper Styles
--------------------------------------------------------------------- */
.hidden {
	display: none;
}
.remove-bottom {
	margin-bottom: 0;
}
.half-bottom {
	margin-bottom: 15px !important;
}
.add-bottom {
	margin-bottom: 30px !important;
}
.no-border {
	border: none;
}
.text-center {
	text-align: center;
}
.text-left {
	text-align: left;
}
.text-right {
	text-align: right;
}
.pull-left {
	float: left;
}
.pull-right {
	float: right;
}
.align-center {
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}