html {
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
}

body {
	margin: 0;
}

html {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-size: 62.5%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

html,
body {
	height: 100%;
}

*,
*:before,
*:after {
	box-sizing: inherit;
}

body {
	font-weight: normal;
	line-height: 1;
	text-rendering: optimizeLegibility;
}

/*
/* 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;
}


/* links
---------------------------------------------------------------------- */
a {
	text-decoration: none;
	line-height: inherit;
}

a img {
	border: none;
}

a:focus {
	outline: none;
}

p a,
p a:visited {
	line-height: inherit;
}

/* 
/* 
/* 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;
}



.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;
	}

}

