/************************************************
*	Media Queries								*
************************************************/

/* Mobile */
		
@media screen and (max-width: 1023px) {
	.reveal-modal-bg { 
		position: absolute; 
		}
	.reveal-modal,
	.reveal-modal.small,
	.reveal-modal.medium,
	.reveal-modal.large,
	.reveal-modal.xlarge { 
		width: 60%; 
		top: 60px; 
		left: 15%; 
		margin-left: 0; 
		padding: 20px; 
		height: auto; 
		}
	
	/* Theme iPad */
	
	.flexslider .slides > li, .loading {
		min-height: 0;
		}
	.flex-direction-nav li .flex-next {
		right: 40px;
		}
	.flex-direction-nav li .flex-prev {
		left: 40px;
		}
	.container.portfolio .half {
		max-width: 350px;
		}
	.container.portfolio .third {
		max-width: 230px;
		}
	
	}

@media screen and (max-width: 767px) {
	.reveal-modal-bg { 
		position: absolute; 
		}
	.reveal-modal,
	.reveal-modal.small,
	.reveal-modal.medium,
	.reveal-modal.large,
	.reveal-modal.xlarge { 
		width: 80%; 
		top: 15px; 
		left: 5%; 
		margin-left: 0; 
		padding: 20px; 
		height: auto; 
		}
	}
	
/* Typography */
	
@media screen and (max-width: 767px) {
	h1 { 
		font-size: 2.0rem; 
		line-height: 1.4; 
		}
	h2 { 
		font-size: 1.6rem; 
		line-height: 1.4; 
		}
	h3 {  
		font-size: 1.4rem; 
		line-height: 1.4; 
		}
	h4 {  
		font-size: 1.2rem; 
		line-height: 1.4; 
		}
	h5 { 
		font-size: 1.1rem; 
		line-height: 1.4; 
		}
	h6 { 
		font-size: 1.0rem; 
		line-height: 1.4; 
		}
	.headline {
		font-size: 2rem;
		line-height: 1.2;
		}
	.headline-small, 
	.headline-smaller {
		font-size: 1.4rem;
		line-height: 1.2;
		}
	body, p {  
		font-size: 0.95rem; 
		line-height: 1.7; 
		}
	blockquote {
		padding: 0px;
		border-left: none;
		}
	blockquote p {
		font-size: 1rem;
		line-height: 1.6;
		}
	#homepage .featured-page .post-boxed-content .headline, #homepage .postarea.archive > .headline {
		font-size: 2.2em;
		}
	.archive .archive-header h1,
	.page-header h1 {
		font-size: 2.2em;
		}
	}
/* Content */

@media screen and (min-width: 480px) and (max-width: 767px) {	

	body #header .site-title {
		font-size: 3.3em;
		letter-spacing: -1px;
	}

}
	
@media screen and (max-width: 767px) {
	
	#header {
		height: auto;
		min-height: 225px !important;
		padding-left: 24px;
		padding-right: 24px;
		}
	#header #masthead {
		padding: 24px 0px;
		}
	#header .site-title {
		font-size: 2em;
		letter-spacing: -1px;
		}
	#header .site-description {
		font-size: 1.2em;
		letter-spacing: -0.4px;
		}
	#navigation {
		display: none;
		}
	#navigation-mobile {
		display: block;
		background: none !important;
		top: auto;
		margin: 0px;
		padding-bottom: 24px;
		padding-left: 12px;
		padding-right: 12px;
		}
	#navigation-mobile select {
		background: #FFFFFF;
		width: 100%;
		font-size: 1.2em;
		font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;
		margin-right: 0px;
		padding: 6px;
		border: 1px solid #DDDDDD;
		border-radius: 3px;
		-moz-border-radius: 3px;
		-khtml-border-radius: 3px;
		-webkit-border-radius: 3px;
		box-shadow: inset 1px 1px 1px rgba(0, 0, 0, .08);
		-moz-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, .08);
		-webkit-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, .08);
		}
	.container {
		padding: 0px 12px;
		}
	.container.home,
	.container.blog-full {
		padding: 0px;
		}
	.container.portfolio {
		padding-top: 12px;
		padding-bottom: 0px;
		}
	.page-template-template-bookpage .feature-img.page {
		margin-top: 12px;
		margin-bottom: 12px;
	}
	#homepage {
		padding: 12px;
		}
	#slideshow {
		padding: 24px 24px 0px 24px;
		}
	.flex-direction-nav li .flex-next {
		right: 0px;
		}
	.flex-direction-nav li .flex-prev {
		left: 0px;
		}
	.flex-control-nav {
		display: none;
		bottom: 0px;
		}
	.container.portfolio .holder-half,
	.container.portfolio .holder-third {
		height: auto !important;
		}
	.container.portfolio .half,
	.container.portfolio .third {
		width: 100%;
		}
	.container.portfolio .half,
	.container.portfolio .third,
	.container.shop .half,
	.container.shop .third {
		max-width: 100%;
		position: relative !important;
		top: auto !important;
		left: auto !important;
		}
	.feature-img.page,
	.feature-img.post,
	.feature-vid.post {
		padding: 12px;
		}
	.feature-img.post,
	.feature-vid.post {
		margin-top: 12px;
		margin-bottom: 12px;
		}
	.feature-img.page {
		margin-top: 12px;
		margin-bottom: 0px;
		}
	.fff-framed-img.alignleft,
	.fff-framed-img.alignright {
		max-width: 40%;
	}
	.page-template-template-bookpage .bookpage-main-content img {
		max-width: 40%;
	}
	.page-template-template-bookpage .quote-callout {
		width: 90%;
		padding: 5%;
		margin: 0 0 1em;
		float: left;
		background-color: #82B2DC;
		color: white;
		font-size: 1.5em;
	}
	.postarea.blog,
	.postarea.archive {
		margin: 12px 0px;
		}
	.postarea.portfolio,
	.postarea.shop {
		margin-bottom: 12px;
		padding: 12px !important;
		}
	.postarea,
	.postarea.full,
	.postarea.slideshow {
		padding: 12px 0; 
		}
	.post-boxed-content,
	.related-document-links {
		padding: 12px; /* for FFF, reduce the padding for mobile */
		margin-top: 0;
	}
	.postarea .post-boxed-header {
		padding: 24px 12px;
	}
	.postarea .related-document-links {
		margin-left: 0 !important;
		margin-bottom: 1em;
		background: #FFFFFF;
		padding: 0 0 24px;
		border-left: none;
		border-bottom: 1px solid rgba(0,0,0,0.06);
	}
	.postarea.blog .blog-holder,
	.postarea.archive {
		padding: 24px 12px;
		}
	.postmeta p.meta-text {
		width: 100%;
		margin: 4px 0px 12px 0px;
		}
	.social {
		float: left;
		height: auto;
		}
	.tweet-btn, .like-btn, .pin-btn, .plus-btn {
		float: left;
		margin: 4px;
		}
	.twitter-feed { 
		padding: 8px 18px;
		}
	.btn-share {
		float: left;
		}
	.archive-column {
		width: 100%;
		padding-right: 0;
		}
	.sidebar {
		margin: 12px 0px;
		}
	.widget {
		padding: 24px 12px;
	}
	#comments {
		padding: 6px 18px;
		}
	#author, #email, #url {
		width: 92%;
		}
	#commentform textarea {
		width: 92% !important;
		}
	.container form textarea {
		width: 92% !important;
		}
	body .container form input[type='url'],
	body .container form input[type='tel'],
	body .container form input[type='email'],
	body .container form input[type='text'],
	body .container form input[type='password'],
	body .container form input[type='number'],
	body .container form textarea,
	body .container form select {
		padding: 2px !important;
		}
	#footer {
		padding: 12px;
		}
		
	/* 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; 
		}
	.container { 
		min-width: 0;
		margin-left: 0; 
		margin-right: 0; 
		}
	body .row { 
		width: 100%; 
		min-width: 0; 
		margin-left: 0; 
		margin-right: 0;
		overflow: visible !important;
		}
	.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; 
		}
	
	.offset-by-one, .offset-by-two, .offset-by-three, .offset-by-four, .offset-by-five, .offset-by-six, .offset-by-seven, .offset-by-eight, .offset-by-nine, .offset-by-ten, .offset-by-eleven, .centered { 
		margin-left: 0 !important; 
		}
	
	.push-two, .push-three, .push-four, .push-five, .push-six, .push-seven, .push-eight, .push-nine, .push-ten { 
		left: auto; 
		}
	.pull-two, .pull-three, .pull-four, .pull-five, .pull-six, .pull-seven, .pull-eight, .pull-nine, .pull-ten { 
		right: auto; 
		}
	
	/* Mobile 4-column Grid */
	
	.row .phone-one:first-child, .row .phone-two:first-child, .row .phone-three:first-child, .row .phone-four:first-child { margin-left: 0; }
	.row .phone-one:last-child, .row .phone-two:last-child, .row .phone-three:last-child, .row .phone-four:last-child { float: right; }
	
	.row .phone-one, .row .phone-two, .row .phone-three, .row .phone-four { margin-left: 4.4%; float: left; min-height: 1px; position: relative; padding: 0; }
	
	.row .phone-one 	{ width: 21.68% !important; }
	.row .phone-two 	{ width: 47.8% !important; }
	.row .phone-three 	{ width: 73.9% !important; }
	.row .phone-four 	{ width: 100% !important; }
	
	.row .push-one-phone { left: 26.08%; }
	.row .push-two-phone { left: 52.2% }
	.row .push-three-phone { left: 78.3% }
	
	.row .pull-one-phone { right: 26.08% }
	.row .pull-two-phone { right: 52.2% }
	.row .pull-three-phone { right: 78.3%; }
	
	/* Other Mobile-specific grid behavior */
	.center-on-phones {
		text-align: center;
	}
	
}
	
	
/* Block Grids */	
	
@media screen and (max-width: 767px) {
	.block-grid.mobile { 
		margin-left: 0; 
		}
	.block-grid.mobile > li { 
		float: none; 
		width: 100%; 
		margin-left: 0; 
		}
}
	
	

/* -------------------------------------------------- 
	:: Mobile Visibility Affordances
---------------------------------------------------*/
	
	
.show-on-phones { display: none !important; }	
.show-on-tablets { display: none !important; }
.show-on-desktops { display: block !important; }

.hide-on-phones { display: block !important; }	
.hide-on-tablets { display: block !important; }
.hide-on-desktops { display: none !important; }


/* Modernizr-enabled tablet targeting */
@media screen and (max-width: 1280px) and (min-width: 768px) {
	.touch .hide-on-phones { display: block !important; }
	.touch .hide-on-tablets { display: none !important; }
	.touch .hide-on-desktops { display: block !important; }
	
	.touch .show-on-phones { display: none !important; }
	.touch .show-on-tablets { display: block !important; }
	.touch .show-on-desktops { display: none !important; }
}

	
@media screen and (max-width: 767px) {
	.hide-on-phones { display: none !important; }
	.hide-on-tablets { display: block !important; }
	.hide-on-desktops { display: block !important; }
	
	.show-on-phones { display: block !important; }
	.show-on-tablets { display: none !important; }
	.show-on-desktops { display: none !important; }
}


/* Specific overrides for elements that require something other than display: block */

table.show-on-desktops { display: table !important; }
table.hide-on-phones { display: table !important; }	
table.hide-on-tablets { display: table !important; }

@media screen and (max-width: 1280px) and (min-width: 768px) {
	.touch table.hide-on-phones { display: table !important; }
	.touch table.hide-on-desktops { display: table !important; }
	.touch table.show-on-tablets { display: table !important; }
}

@media screen and (max-width: 767px) {
	table.hide-on-tablets { display: table !important; }
	table.hide-on-desktops { display: table !important; }
	table.show-on-phones { display: table !important; }
}
