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

/* Mobile */

@media handheld, only 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 {
		padding: 36px;
	}
	.flex-direction-nav li .flex-next {
		right: 40px;
	}
	.flex-direction-nav li .flex-prev {
		left: 40px;
	}
	.container.portfolio .one-half,
	.container.portfolio .one-third {
		padding-left: 10px;
	}

}

@media handheld, only 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 handheld, only 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.9rem;
		line-height: 1.8;
	}
	blockquote {
		padding: 0px;
		border-left: none;
	}
	blockquote p {
		font-size: 1rem;
		line-height: 1.6;
	}
}

/* Content */

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

	/* Theme iPhone */

	#header {
		height: auto;
		min-height: 0;
		padding-left: 12px;
		padding-right: 12px;
	}
	#header #masthead {
		padding: 24px 0px;
	}
	#header .site-title {
		font-size: 2.4em;
		letter-spacing: -1px;
	}
	#header .site-description {
		font-size: 1.6em;
		letter-spacing: -0.4px;
	}
	#navigation, #navigation.home-nav {
		background: #FFFFFF;
		line-height: 0;
		box-shadow: 0px 0px 3px rgba(0, 0, 0, .2);
		-moz-box-shadow: 0px 0px 3px rgba(0, 0, 0, .2);
		-webkit-box-shadow: 0px 0px 3px rgba(0, 0, 0, .2);
		border-radius: 3px;
		-moz-border-radius: 3px;
		-khtml-border-radius: 3px;
		-webkit-border-radius: 3px;
	}
	#header .feature-img {
		position: relative;
		margin: -80px 0px 0px 0px;
	}
	#navigation {
		margin-bottom: 12px;
	}
	.mobile-menu {
		margin: 0px;
		padding: 0px;
	}
	.menu-toggle,
	.main-small-navigation ul.mobile-menu.toggled-on {
		display: block;
	}
	.navigation-main .menu,
	.sf-arrows .sf-with-ul::after {
		display: none;
	}
	.menu-toggle {
		font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;
		font-size: 1.8em;
		font-weight: 400;
		letter-spacing: 0;
		line-height: 1.2;
		text-align: center;
		margin: 0;
		padding: 12px;
	}
	.menu-toggle:before {
		color: #CCCCCC;
		font-family: 'FontAwesome';
		content: '\f0c9';
		top: 1px;
		margin-right: 6px;
		position: relative;
	}
	.mobile-menu ul.sub-menu,
	.mobile-menu ul.children {
		display: block !important;
		visibility: visible !important;
		opacity: 1 !important;
		left: auto;
		margin: 0;
		padding: 0;
	}
	.mobile-menu ul,
	.mobile-menu li {
		list-style: none;
		margin: 0;
		padding: 0;
	}
	.mobile-menu li {
		display: block;
		text-align: center;
		line-height: 30px;
	}
	.mobile-menu li li a:before {
		content: '- ';
	}
	.mobile-menu li li li a:before {
		content: '-- ';
	}
	.mobile-menu li li li li a:before {
		content: '--- ';
	}
	.mobile-menu a {
		display: block;
		color: #999999;
		font-size: 1.2em;
		font-weight: normal;
		text-decoration: none;
		padding: 6px 0px;
		border-top: 1px solid #DDDDDD;
	}
	.mobile-menu a:hover {
		background: #f4f4f4;
		color: #333333;
		text-decoration: none;
	}
	.container {
		padding: 0px 12px;
	}
	.social-icons.social-blog {
		margin-bottom: 12px;
	}
	#homepage {
		padding: 24px;
	}
	#slideshow {
		padding: 24px;
	}
	.flexslider {
		padding: 24px;
	}
	.flex-direction-nav li .flex-next {
		right: 12px;
	}
	.flex-direction-nav li .flex-prev {
		left: 12px;
	}
	.flex-control-nav {
		display: none;
		bottom: 0px;
	}
	.blog-holder .feature-img,
	.blog-holder div[class*="embed-"] {
		width: calc(100% + 48px);
		position: relative;
		left: -24px;
	}
	.feature-img.page,
	.feature-img.post {
		padding: 12px;
	}
	.feature-img.post {
		margin-top: 12px;
		margin-bottom: 12px;
	}
	.feature-img.page {
		margin-top: 12px;
		margin-bottom: 0px;
	}
	.postarea,
	.postarea.full {
		padding: 24px 12px;
	}
	.postarea.blog,
	.postarea.archive {
		margin: 12px 0px;
	}
	.postmeta p.meta-text {
		width: 100%;
		margin: 4px 0px 12px 0px;
	}
	.blog-holder,
	.postarea.archive {
		padding: 24px;
	}
	.archive-column {
		width: 100%;
		padding-right: 0;
	}
	.pagination.archive {
		margin: 0px;
	}
	.sidebar {
		margin: 12px 0px;
	}
	.sidebar-left {
		display: none;
	}
	#comments {
		padding: 12px;
	}
	#author, #email, #url {
		width: 92%;
	}
	#commentform textarea {
		width: 92% !important;
	}
	.container form textarea {
		width: 92% !important;
	}
	#footer {
		padding: 12px;
	}
	.two-column,
	.two-column.first,
	.two-column.last {
		float: none;
		width: 100%;
		padding: 0;
	}

	/* 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;
	}
	.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%; }


}


/* Block Grids */

@media only 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 only 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 only 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 only 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 only 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; }
}
