/************************************************
	Desktop Grid
************************************************/

.row {
	width: 100%;
	margin: 0 auto;
}
.row .row {
	min-width: 0;
}
.flex-row {
	display: flex;
	align-items: stretch;
	align-content: center;
	justify-content: space-between;
	flex: 1 1 0;
}
.column, .columns {
	float: left;
	min-height: 1px;
	position: relative;
}
[class*="column"] + [class*="column"]:last-child {
	float: right;
}

.half, .third, .one-third, .fourth,
.one-fourth, .fifth, .one-fifth,
.two-thirds, .three-fourths {
	float: left;
}
.half.last, .third.last, .one-third.last, .fourth.last,
.one-fourth.last, .fifth.last, .one-fifth.last,
.two-thirds.last, .three-fourths.last {
	float: right;
}

.half						{ width: 49.9%; }
.third,
.one-third			{ width: 33.3%; }
.fourth,
.one-fourth			{ width: 25%; }
.fifth,
.one-fifth			{ width: 20%; }
.two-thirds			{ width: 66.6%; }
.three-fourths	{ width: 75%; }

.row .one 		{ width: 6.25%; }
.row .two 		{ width: 12.5%; }
.row .three 	{ width: 18.75%; }
.row .four 		{ width: 25%; }
.row .five 		{ width: 31.25%; }
.row .six 		{ width: 37.5%; }
.row .seven 	{ width: 43.75%; }
.row .eight 	{ width: 50%; }
.row .nine 		{ width: 56.25%; }
.row .ten 		{ width: 62.5%; }
.row .eleven 	{ width: 68.75%; }
.row .twelve 	{ width: 75%; }
.row .thirteen 	{ width: 81.25%; }
.row .fourteen 	{ width: 87.5%; }
.row .fifteen 	{ width: 93.75%; }
.row .sixteen 	{ width: 100%; }

.row .centered { float: none; margin: 0 auto; }

/************************************************
	Tablet Styles
************************************************/

@media handheld, only screen and (max-width: 1023px) {

	/* Typography Tablet */

	body {
		font-size: 0.9rem;
		line-height: 1.6;
	}
	blockquote {
		font-size: 1.4rem;
	}

	/* Theme Tablet */

	.widget {
		margin-bottom: 36px;
	}
	.footer-information .content {
		text-align: center;
	}
	.footer-information .align-left {
		float: none;
		display: block;
	}
	.footer-information .align-right {
		float: none;
		display: block;
		text-align: center;
		margin-top: 12px;
	}
}

/************************************************
	Phone Styles
************************************************/

@media handheld, only screen and (max-width: 767px) {

	/* Typography Phone */

	h1 {
		font-size: 2rem;
	}
	h2 {
		font-size: 1.8rem;
	}
	h3 {
		font-size: 1.6rem;
	}
	h4 {
		font-size: 1.4rem;
	}
	h5 {
		font-size: 1.2rem;
	}
	h6 {
		font-size: 1.0rem;
	}
	body, p {
		font-size: 0.85rem;
		line-height: 1.6;
	}
	blockquote {
		padding: 12px;
	}
	blockquote p {
		font-size: 1.1rem;
	}

	/* Theme Phone */

	#custom-header {
		width: 100%;
		max-height: 320px;
		padding: 0px;
		margin-bottom: 24px;
		overflow: hidden;
	}
	#custom-header .wp-custom-header {
		max-height: 320px;
	}
	#custom-header .flex-row {
		display: flex;
	}
	#nav-bar {
		position: fixed;
	}
	.admin-bar #side-menu {
		top: 46px;
	}
	.testimonials .post-area,
	.blog .post-area, .archive .post-area,
	.search .post-area, .portfolio .post-area,
	.not-organic-custom-template #wrapper {
		height: auto;
		overflow-y: visible;
	}
	.blog-holder, .project-holder, .testimonial-holder {
		min-width: 280px;
	}
	.blog-holder .featured-img.banner-img {
		max-height: 280px;
	}
	.singular.not-organic-custom-template #wrapper {
		margin-right: 0px;
	}
	.blog-spacer {
		display: none;
	}
	.pagination {
		height: auto;
	}
	.content {
		padding: 0px 24px;
	}
	.singular .entry-content {
		max-height: none;
		padding: 18px 0px;
	}
	.project-holder .entry-content {
		padding: 12px 18px;
	}
	.testimonial-holder .entry-content {
		padding: 18px;
	}
	.post-area {
		padding: 0px;
	}
	.blog-holder,
	.project-holder,
	.testimonial-holder {
		margin: 24px 0px;
	}
	.entry-content > p:first-child:first-letter {
		font-size: 3em;
	}
	.footer {
		padding-left: 60px;
	}

	/* Images */

	.banner-img {
		height: auto;
		min-height: 480px;
	}
	.banner-img .post-intro {
		margin: 48px 0px;
	}
	.portfolio .flex-row > .featured-img.banner-img,
	.testimonials .flex-row > .featured-img.banner-img {
		width: calc(100% + 48px);
		max-width: none;
		margin: 0px 0px 24px -24px;
	}
	.testimonial-holder .featured-img.banner-img {
		width: 180px;
		height: 180px;
		min-width: auto;
		min-height: auto;
	}

	/* Form */

	form input[type='url'],
	form input[type='tel'],
	form input[type='email'],
	form input[type='text'],
	form input[type='password'],
	form input[type='number'] {
		width: 100%;
	}

	/* Grid */

	body {
		-webkit-text-size-adjust: none;
		-ms-text-size-adjust: none;
		width: 100%;
		min-width: 0;
		margin-left: 0;
		margin-right: 0;
		padding-left: 0;
		padding-right: 0;
	}
	.row {
		width: 100%;
		min-width: 0;
		margin-left: 0;
		margin-right: 0;
		overflow: visible !important;
	}
	.flex-row {
		display: block;
	}
	.half, .third, .one-third, .fourth,
	.one-fourth, .fifth, .one-fifth,
	.two-thirds, .three-fourths {
		float: none;
		width: 100%;
	}
	.row .row .column, .row .row .columns {
		padding: 0;
	}
	.column, .columns {
		width: auto !important;
		float: none;
		margin-left: 0;
		margin-right: 0;
	}
	.column:last-child, .columns:last-child {
		margin-right: 0;
		float: none;
	}
	[class*="column"] + [class*="column"]:last-child {
		float: none;
	}
	[class*="column"]:before, [class*="column"]:after {
		content:'';
		display:table;
	}
	[class*="column"]:after {
		clear: both;
	}
}
