/*
	(c)2012 - visuallizard.com

	Mobile styles using Media Queries
*/


/* !Media Queries ============================== */

.mobile-menu-toggle {
	display: none;
	position: absolute;
	z-index: 1000;
	top: 30px;
	right: 15px;
	padding: 13px 50px 13px 30px;
	border: none;
	border-radius: 30px;
	font-size: 16px;
	font-weight: 600;
	line-height: 1;
	text-transform: uppercase;
	box-shadow: 0 3px 6px rgba(0,0,0,0.16);
	background: #fff;
	color: #000;
}
.mobile-menu-toggle:after {
	content: " ";
	display: block;
	position: absolute;
	top: 0;
	right: 15px;
	bottom: 0;
	width: 1.5em;
	height: 1.5em;
	margin: auto;
	background: url("../png/chevron.png") no-repeat center center;
	background-size: 100%;
	color: #c8102e;
	transition: all 0.2s ease;
}
.mobile-menu-toggle.open:after {
	transform: rotateX(180deg);
}
.mobile-login {
	display: none;
	position: relative;
	float: left;
	width: 100%;
	padding: 15px 0;
	margin: 0 0 10px 0;
}
	.mobile-login a.close-menu {
		display: block;
		position: relative;
		float: left;
		width: auto;
		padding: 11px 0;
		margin: 0;
		font-size: 20px;
		font-weight: 700;
		line-height: 1;
		text-align: center;
		text-transform: uppercase;
		background: none;
		color: #c8102e;
	}
		.mobile-login a.close-menu > img {
			display: block;
			position: relative;
			float: left;
			transform: rotate(90deg) translateX(-3px);
		}
	.mobile-login a.login {
		display: block;
		position: relative;
		float: right;
		width: auto;
		padding: 11px 35px;
		margin: 0;
		border: none;
		border-radius: 30px;
		font-size: 20px;
		font-weight: 700;
		line-height: 1;
		text-align: center;
		text-transform: uppercase;
		background: #f4f4f4;
		color: #1d1d1d;
	}
.mobile-secondary {
	display: none;
	position: relative;
	clear: both;
	float: left;
	width: 100%;
	padding: 15px 0;
	margin: 15px 0 0 0;
	border-top: 1px solid #c8102e;
}
	.mobile-secondary ul.second-nav {
		display: block;
		position: relative;
		float: left;
		width: 100%;
	}
		.mobile-secondary ul.second-nav li {
			width: 100%;
			max-width: none;
			margin: 0;
		}
		.mobile-secondary ul.second-nav li#second-51 { display: none; }
			.mobile-secondary ul.second-nav li a.nav-link {
				padding: 0.5em 1em;
				margin: 0;
				text-align: left;
				color: #c8102e;
			}

body.debug:before {
    content: "Construction Space Only";
    display: block;
    position: relative;
    padding: 1rem;
    font-size: 1.25rem;
    font-weight: 600;
    background: repeating-linear-gradient(
        45deg,
        #ffdd00,
        #ffdd00 10px,
        #ffee99 10px,
        #ffee99 20px
    );
    color: #000;
}



/* Greater than 1600 (devices and browsers) */
@media only screen and (min-width: 1600px) {
	body { font: normal 20px/1.5 'proxima-nova', sans-serif; }
/*
	h1, .h1 { margin-bottom: .25rem; font: 500 60px/1.2 'proxima-nova', sans-serif; color: #65665c; }
	h2, .h2 { margin-bottom: .75rem; font: 500 48px/1.3 'proxima-nova', sans-serif; color: #65665c; }
	h3, .h3 { margin-bottom: .50rem; font: 500 36px/1.3 'proxima-nova', sans-serif; color: #c8102e; }
	h4, .h4 { margin-bottom: .50rem; font: 400 28px/1.4 'proxima-nova', sans-serif; color: #65665c; }
	h5, .h5 { margin-bottom: .50rem; font: 500 24px/1.1 'proxima-nova', sans-serif; color: #1d1d1d; }
	h6, .h6 { margin-bottom: .50rem; font: 500 20px/1.4 'proxima-nova', sans-serif; color: #1d1d1d; }
*/

	.container { max-width: 1400px; padding: 0; }

	.home-block .container .small-left,
	.promise .container .small-left,
	#introduction .container .small-left,
	.home-block .container .small-right,
	.promise .container .small-right { width: 45%; }

	.home-block .small-left h2,
	.home-block .small-right h2 { font-size: 60px; }
	.home-block .small-left h3,
	.home-block .small-right h3 { font-size: 60px; }
	#introduction .small-left p,
	.home-block .small-left p,
	.home-block .small-right p { font-size: 20px; }
	.home-block .small-left ul li,
	.home-block .small-right ul li { font-size: 20px; }

	.home-block div.skew-image-right,
	.promise div.skew-image-right,
	#introduction div.skew-image-right,
	.home-block div.skew-image-left,
	.promise div.skew-image-left { width: 55%; }

	.fm-form p.input-plaintext-label,
	.fm-form .input-select.fm-checkbox-group > label,
	.fm-form .input-radio.fm-radio > label { font-size: 24px; }
}

/* Greater than 1400 (devices and browsers) */
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
	body { font: normal 20px/1.5 'proxima-nova', sans-serif; }
/*
	h1, .h1 { margin-bottom: .25rem; font: 500 60px/1.2 'proxima-nova', sans-serif; color: #65665c; }
	h2, .h2 { margin-bottom: .75rem; font: 500 48px/1.3 'proxima-nova', sans-serif; color: #65665c; }
	h3, .h3 { margin-bottom: .50rem; font: 500 36px/1.3 'proxima-nova', sans-serif; color: #c8102e; }
	h4, .h4 { margin-bottom: .50rem; font: 400 28px/1.4 'proxima-nova', sans-serif; color: #65665c; }
	h5, .h5 { margin-bottom: .50rem; font: 500 24px/1.1 'proxima-nova', sans-serif; color: #1d1d1d; }
	h6, .h6 { margin-bottom: .50rem; font: 500 20px/1.4 'proxima-nova', sans-serif; color: #1d1d1d; }
*/

	.container { max-width: 1400px; padding: 0; }
	.site-header > .container { max-width: 1400px; padding: 1em 0; }
	main > .container { max-width: 1400px; padding: 2em 0; }

	.home-block .container .small-left,
	.promise .container .small-left,
	#introduction .container .small-left,
	.home-block .container .small-right,
	.promise .container .small-right { width: 45%; }

	#introduction .small-left h1,
	.home-block .small-left h2,
	.home-block .small-right h2 { font-size: 60px; }
	.home-block .small-left h3,
	.home-block .small-right h3 { font-size: 60px; }
	#introduction .small-left p,
	.home-block .small-left p,
	.home-block .small-right p { font-size: 20px; }
	.home-block .small-left ul li,
	.home-block .small-right ul li { font-size: 20px; }

	.home-block div.skew-image-right,
	.promise div.skew-image-right,
	#introduction div.skew-image-right,
	.home-block div.skew-image-left,
	.promise div.skew-image-left { width: 55%; }

	.fm-form p.input-plaintext-label,
	.fm-form .input-select.fm-checkbox-group > label,
	.fm-form .input-radio.fm-radio > label { font-size: 24px; }
}

/* Greater than 1440 (devices and browsers) */
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
	body { font: normal 16px/1.5 'proxima-nova', sans-serif; }

	h1, .h1 { font-size: 48px; }
	h2, .h2 { font-size: 36px; }
	h3, .h3 { font-size: 28px; }
	h4, .h4 { font-size: 24px; }
	h5, .h5 { font-size: 20px; }
	h6, .h6 { font-size: 16px; }

	#introduction .small-left h1,
	.home-block .small-left h2,
	.home-block .small-right h2 { font-size: 48px; }
	.home-block .small-left h3,
	.home-block .small-right h3 { font-size: 48px; }
	#introduction .small-left p,
	.home-block .small-left p,
	.home-block .small-right p { font-size: 16px; }
	.home-block .small-left ul li,
	.home-block .small-right ul li { font-size: 16px; }

	.container { max-width: 1200px; padding: 0 30px; }
	.site-header > .container { max-width: 1200px; padding: 1em 30px; }
	main > .container { max-width: 1200px; padding: 2em 30px; }

	footer h3 { font-size: 18px; }
	footer p { font-size: 14px; }
	div.footer-nav ul.nav-1 > li { font-size: 18px; }
	div.footer-nav ul.nav-1 ul.nav-2 > li { font-size: 14px; }
}

/* Smaller than 1200 (devices and browsers) */
@media only screen and (max-width: 1200px) {
	img, iframe, img.mfp-img { max-width: 100% !important; }

	body { font: normal 16px/1.5 'proxima-nova', sans-serif; }

	#introduction .small-left h1,
	.home-block .small-left h2,
	.home-block .small-right h2 { font-size: 48px; }
	.home-block .small-left h3,
	.home-block .small-right h3 { font-size: 48px; }
	#introduction .small-left p,
	.home-block .small-left p,
	.home-block .small-right p { font-size: 16px; }
	.home-block .small-left ul li,
	.home-block .small-right ul li { font-size: 16px; }

	.container { max-width: 1100px; padding: 0 30px; }
	.site-header > .container { max-width: 1100px; padding: 1em 30px; }
	main > .container { max-width: 1100px; padding: 2em 30px; }

	div.staff-set .staff.board div.staff-bio { max-width: 500px; }

	footer h3 { font-size: 18px; }
	footer p { font-size: 14px; }

	div.footer-nav { width: 100%; }
	div.footer-nav ul.nav-1 > li { font-size: 18px; }
	div.footer-nav ul.nav-1 ul.nav-2 > li { font-size: 14px; }
	div#secondary-footer { clear: both; float: left; }
	ul.social { width: 30%; }
}

/* Smaller than standard 1024 (devices and browsers) */
@media only screen and (max-width: 1024px) {
	.container { width: 100%; padding: 0 15px; }
	.site-title { padding: 15px; background-position: center center; background-size: 90%; }
	.main-nav { width: 80%; }
	div.staff-set .staff.board div.staff-bio { max-width: 450px; }
}

/* All Mobile Sizes (devices and browser) */
@media only screen and (max-width: 850px) {
	body { font: normal 16px/1.5 'proxima-nova', sans-serif; }
	.mobile-menu-toggle { display: block; }
	.mobile-secondary { display: block; }

	.main-nav { position: absolute; top: 80px; right: -800px; z-index: 100; width: 90%; padding: 10px; margin: 15px 0; background: #fff; box-shadow: 0 0 50px #ccc; transition: all 0.2s ease; }
	.main-nav.active { right: 0; }
	.main-nav .nav-1 { display: block; clear: both; }
	.main-nav .nav-1 > li > a { text-align: left; }
	.main-nav .has-sub > .nav-link:after { top: 5px; right: 10px; bottom: auto; }
	.main-nav .sub-list { position: relative; width: 100%; padding: 0 0 0 15px; border: none; border-radius: 0; box-shadow: none; }
	.main-nav li > .sub-list { display: none; visibility: visible; opacity: 1; }
	.main-nav li[data-nav-status="has-active"] > .sub-list { display: block; }

	ul.second-nav { width: 40%; }

	.cke > .c1,
	.cke > .c2,
	.cke > .c3,
	.cke > .c4,
	.cke > .c5,
	.cke > .c6 { width: 100%; margin: 0 0 15px 0; }

	.home-block .container,
	.promise .container,
	.events-schedule .container { clear: both; float: left; width: 100%; padding: 0 15px; }
	.home-block .container .small-left,
	.home-block .container .small-right,
	.promise .container .small-left,
	.promise .container .small-right,
	#introduction .container .small-left { width: 100%; min-height: auto; padding: 0; margin: 0; }
	div.schedule-filter { flex-basis: 100%; max-width: 100%; }
	section.event-set div.event-listing div.program-details ul li { flex-basis: 100%; max-width: 100%; }
	section.event-set div.event-listing div.program-details ul li.hide { display: none; }

	.home-block div.skew-image-left,
	.promise div.skew-image-left { position: relative; left: -90px; width: 100%; min-height: 450px; margin: 0 0 30px 0; }
	.home-block div.skew-image-right,
	.promise div.skew-image-right,
	#introduction div.skew-image-right { position: relative; right: -90px; width: 100%; min-height: 450px; margin: 0 0 30px 0; }
	.home-block div.skew-image-right div.image-container,
	.promise div.skew-image-right div.image-container,
	#introduction div.skew-image-right div.image-container { position: absolute; top: 0; left: -10%; bottom: 0; width: 120%; margin: 0; }

	.home-block div.skew-image-left div.image-container,
	.promise div.skew-image-left div.image-container { position: absolute; top: 0; right: -30%; bottom: 0; width: 120%; margin: 0; }

	.home-block div.skew-image-left div.image-container img.banner-img,
	.home-block div.skew-image-right div.image-container img.banner-img,
	.promise div.skew-image-left div.image-container img.banner-img,
	.promise div.skew-image-right div.image-container img.banner-img,
	#introduction div.skew-image-right div.image-container img.banner-img { width: auto; max-width: none; height: 450px; }

	.primary { flex: 0 0 100%; max-width: 100%; padding: 0; }
    .sidebar { flex: 0 0 100%; max-width: 100%; padding: 0; border: none; }

	div.active-at-home table thead { display: none; }
	div.active-at-home table td { display: block; flex-grow: 1; border: none; }
	.active-at-home table tbody tr { display: flex; flex-wrap: wrap; }
	.active-at-home table tr td:nth-child(1) { flex-basis: 30%; max-width: 30%; }
	.active-at-home table tr td:nth-child(2) { flex-basis: 70%; max-width: 70%; }
	.active-at-home table tr td:nth-child(3) { flex-basis: 30%; max-width: 30%; }
	.active-at-home table tr td:nth-child(4) { flex-basis: 35%; max-width: 35%; }
	.active-at-home table tr td:nth-child(5) { flex-basis: 35%; max-width: 35%; }
	.active-at-home table tr td:nth-child(6) { flex-basis: 100%; max-width: 100%; }
	.active-at-home table tr td:nth-child(7) { flex-basis: 100%; max-width: 100%; margin: 0 0 1.5em 0; border-bottom: 1px solid #ddd; }
	.active-at-home table tr td:nth-child(1):before { content: "Time"; display: inline-block; margin: 0 0.25em 0.5em 0; font-size: 1.125rem; font-weight: 600; }
	.active-at-home table tr td:nth-child(2):before { content: "Class"; display: inline-block; margin: 0 0.25em 0.5em 0; font-size: 1.125rem; font-weight: 600; }
	.active-at-home table tr td:nth-child(3):before { content: "Location"; display: inline-block; margin: 0 0.25em 0.5em 0; font-size: 1.125rem; font-weight: 600; }
	.active-at-home table tr td:nth-child(4):before { content: "Length"; display: inline-block; margin: 0 0.25em 0.5em 0; font-size: 1.125rem; font-weight: 600; }
	.active-at-home table tr td:nth-child(5):before { content: "Level"; display: inline-block; margin: 0 0.25em 0.5em 0; font-size: 1.125rem; font-weight: 600; }
	.active-at-home table tr td:nth-child(6):before { content: "Description"; display: inline-block; margin: 0 0.25em 0.5em 0; font-size: 1.125rem; font-weight: 600; }

	.active-at-home table tr td.description div.desc-modal { top: 0; width: 85%; }

	#cta .container a.cta-button { flex-basis: 60%; max-width: 60%; }

	form.filter-form { width: 50%; margin: 0 0 1.5em 0; }
	div.video-set { width: 50%; max-height: 600px; padding: 0.25em; border: 1px solid #d4d4d4; overflow: scroll; }
	div.video-set article,
	div.video-set article:nth-child(3n+1) { flex-basis: 100%; max-width: 100%; margin: 0 0 1em 0; }
	div.video-selection { width: 100%; margin: 0 0 1.5em 0; }
	div.video-selection iframe { max-height: 420px; }
	div.related { float: left; width: 100%; margin: 0; }
	div.related div.video-set { max-height: 350px; }
	div.related div.video-set article { flex-basis: 49%; max-width: 49%; margin: 0 0 1em 2%; }
	div.related div.video-set article:nth-child(2n+1) { margin: 0 0 1em 0; }

	div.staff-set .staff,
	div.staff-set .staff:nth-child(3n+1) {
		flex-basis: 49%;
		max-width: 49%;
		margin: 0 0 1.5em 2%;
	}
	div.staff-set .staff:nth-child(2n+1) { margin: 0 0 1.5em 0; }
	div.staff-set .staff.board div.staff-bio { width: 200%; max-width: none; }
	div.staff-set .staff.board:nth-child(2n) div.staff-bio { left: auto; right: 0; }

	div.footer-block.location { width: 100%; border-bottom: 1px solid #1d1d1d;}
	div.footer-block.wide { clear: both; width: 100%; border: none; }
	div.footer-nav { padding: 0 0 15px 0; margin: 0 0 15px 0; }
}

/* Mobile Portrait Size to Mobile Landscape Size (devices and browsers) */
@media only screen and (max-width: 670px) {

	#secondary-nav { display: none; }
	.mobile-login { display: block; }


	main .container { padding: 15px; }

	.cke > .c1,
	.cke > .c2,
	.cke > .c3,
	.cke > .c4,
	.cke > .c5,
	.cke > .c6 { width: 100%; margin: 0 0 15px 0; }

	h1, .h1 { font-size: 2.25rem; line-height: 1.1; }
	h2, .h2 { font-size: 2rem; line-height: 1.1; }
	h3, .h3 { font-size: 1.5rem; line-height: 1.1; }
	h4, .h4 { font-size: 1.25rem; }
	h5, .h5 { font-size: 1.125rem; }
	h6, .h6 { font-size: 1rem; font-weight: 700; }


	.home-block#promotion { margin: 0; }

	.home-block,
	.promise,
	#introduction { padding: 30px 0; margin: 0; }
	#introduction .container,
	#announcement .container { padding: 0 15px; }
	#announcement a.cta-button { margin: 0 auto; }
	.home-block .container,
	.promise .container,
	.events-schedule .container { clear: both; float: left; width: 100%; padding: 0 15px; }
	.home-block .container .small-left,
	.home-block .container .small-right,
	.promise .container .small-left,
	.promise .container .small-right,
	#introduction .container .small-left { width: 100%; min-height: auto; padding: 0; margin: 0; }
	div.schedule-filter { flex-basis: 100%; max-width: 100%; }
	div.schedule-filter form { display: flex; justify-content: flex-start; align-items: flex-start; flex-wrap: wrap; column-gap: 2%; row-gap: 1.5rem; }
	div.schedule-filter div.calendar-widget { flex-basis: 49%; max-width: 49%; }
	div.schedule-filter div.filter-form { flex-basis: 49%; max-width: 49%; }
	section#event-set { flex-basis: 100%; max-width: 100%; }

	.home-block div.skew-image-left,
	.promise div.skew-image-left { position: relative; left: -70px; width: 100%; min-height: 300px; margin: 0 0 30px 0; }
	.home-block div.skew-image-right,
	.promise div.skew-image-right,
	#introduction div.skew-image-right { position: relative; right: -70px; width: 100%; min-height: 300px; margin: 0 0 30px 0; }
	.home-block div.skew-image-right div.image-container,
	.promise div.skew-image-right div.image-container,
	#introduction div.skew-image-right div.image-container { position: absolute; top: 0; left: -10%; bottom: 0; width: 120%; margin: 0; }

	.home-block div.skew-image-left div.image-container,
	.promise div.skew-image-left div.image-container { position: absolute; top: 0; right: -30%; bottom: 0; width: 120%; margin: 0; }

	.home-block div.skew-image-left div.image-container img.banner-img,
	.home-block div.skew-image-right div.image-container img.banner-img,
	.promise div.skew-image-left div.image-container img.banner-img,
	.promise div.skew-image-right div.image-container img.banner-img,
	#introduction div.skew-image-right div.image-container img.banner-img { width: auto; max-width: none; height: 350px; }

	.home-block div.skew-image-right div.image-container div.cke > .c1,
	.promise div.skew-image-right div.image-container div.cke > .c1,
	#introduction div.skew-image-right div.image-container div.cke > .c1 { width: auto; max-width: none; height: 350px; }

	.home-block div.skew-image-right div.image-container div.cke > .c1 iframe,
	.promise div.skew-image-right div.image-container div.cke > .c1 iframe,
	#introduction div.skew-image-right div.image-container div.cke > .c1 iframe { max-width: 800px; max-height: 300px; }

	#introduction .small-left h1 { margin-bottom: 15px; }
	.home-block .small-left h2,
	.home-block .small-right h2,
	.promise .small-left h2,
	.promise .small-right h2 { margin-bottom: 15px; }
	.home-block .small-left h3,
	.home-block .small-right h3,
	.promise .small-left h3,
	.promise .small-right h3 { margin-bottom: 15px; }
	#introduction .small-left p,
	.home-block .small-left p,
	.home-block .small-right p,
	.promise .small-left p,
	.promise .small-right p { font-size: 1rem; }
	.home-block .small-left a,
	.home-block .small-right a,
	#introduction .small-left a { padding: 13px 30px; font-size: 1rem; }

	div.feature-set { display: block; }
	div.feature-set article { max-width: 100%; margin: 0 0 15px 0; }

	div.card-set {  }
	div.card-set .card { flex-basis: 100%; max-width: 100%; margin: 0 0 15px 0; }


	div.program-set { display: block; padding: 0; margin: 0 0 30px 0; border-bottom: 1px solid #65665c; }
	div.program-set div.program { width: 100%; max-width: 100%; padding: 15px 0; margin: 0; border-top: 1px solid #65665c; }
	div.program-set div.program > h5 { position: relative; margin: 0; cursor: pointer; }
	.js div.program-set div.program > h5:after {
		content: "";
		display: block;
		position: absolute;
		top: 0;
		right: 5px;
		bottom: 0;
		width: 1.5em;
		height: 1.5em;
		margin: auto;
		background: url("../png/chevron.png") no-repeat center center;
		background-size: 100%;
		color: #c8102e;
		transition: all 0.2s ease;
	}
	div.program-set div.program > h5.active:after {
		transform: rotateX(180deg);
	}
	.js div.program-set div.program > div { display: none; padding: 0.5em 0 0 0; }

	div.source-set { display: block; padding: 0 0 30px 0; }
	div.source-set div.source { width: 100%; max-width: 100%; }

	div.story-set { display: block; padding: 0 0 30px 0; }
	div.story-set div.story { width: 100%; max-width: 100%; }

	div.rehward-set { display: block; padding: 0 0 30px 0; }
	div.rehward-set div.rehward { width: 100%; max-width: 100%; }

	.gallery-set { justify-content: space-between; }
    .gallery-set > li { flex-basis: 48%; max-width: 48%; }

	div.staff-set .staff,
	div.staff-set .staff:nth-child(3n+1),
	div.staff-set .staff:nth-child(2n+1) {
		flex-basis: 100%;
		max-width: 100%;
		margin: 0 0 1.5em 0;
	}
	div.staff-set .staff.board div.staff-bio.active {
		position: relative;
		top: -25px;
		left: auto;
		width: 100%;
		border-radius: 0;
		border: 1px solid #ccc;
		box-shadow: none;
	}

	.fm-form .input-text label,
	.fm-form .input-email label,
	.fm-form .input-select label,
	.fm-form .input-textarea label { display: block; width: 100%; margin: 0 0 10px 0; }
	.fm-form .input-text input[type="text"],
	.fm-form .input-email input[type="email"],
	.fm-form .input-select select,
	.fm-form .input-textarea textarea,
	.fm-form .input-check-option,
	.fm-form .input-radio-option { display: block; width: 100%; }
	.fm-form .g-recaptcha { width: 100%; padding: 0; margin: 0; }
	.fm-form button[type="submit"] { margin: 15px 0 0 0; }

	table#performance-program {
		display: block;
		position: relative;
		width: 100%;
		padding: 0;
		margin: 0 0 2em 0;
	}
	table#performance-program thead { display: none; }
	table#performance-program tbody td { display: block; }
	table#performance-program tbody th { width: 30%; }
	table#performance-program tbody th > h5 { text-align: center; }
	table#performance-program tbody th > h5:before { content: "Phase "; }

	div.testimonials { margin: 0 0 30px 0; }
	div.testimonial-quote { width: 100%; }
	div.testimonial-quote:before,
	div.testimonial-quote:after { width: 100%; }
	div.testimonial-quote h2 { font-size: 72px; }
	div.testimonial-quote p { font-size: 20px; }

	#cta .container { padding: 30px 0; }
	#cta .container a.cta-button { font-size: 1.75rem; }


    div.schedule-filter div.calendar-widget { display: none; flex-basis: 100%; max-width: 100%; }
    div.schedule-filter div.filter-form { flex-basis: 100%; max-width: 100%; }
    section.event-set div.event-listing { padding: 1rem 0; }

    div.schedule-column,
    div.schedule-column.side { flex-basis: 100%; max-width: 100%; }
    div.event-group div.event-listing { padding: 1rem 0.5rem; }
    div.event-group div.event-listing div.program-details ul li { flex-basis: 100%; max-width: 100%; }

    article.update > h2 { font-size: 1.75rem; }
    article.update > h2 > span { flex: 0 0 100%; font-size: 1rem; }

	div.footer-block,
	div.footer-block.wide { width: 100%; border: none; }
	div.footer-block .cke > .c2 { width: 100%; padding: 5px 0; }
	div.footer-nav { width: 100%; margin: 0; }
	div.footer-nav ul.nav-1 { display: block; max-height: none;  }
	div.footer-nav ul.nav-1 > li { display: none; }
    div.footer-nav ul.nav-1 > li#fnav-30 { display: block; }
	div.footer-nav ul.nav-1 > li#fnav-18,
	div.footer-nav ul.nav-1 > li#fnav-21,
	div.footer-nav ul.nav-1 > li#fnav-30,
	div.footer-nav ul.nav-1 > li#fnav-58 { width: 100%; max-width: none; margin: 0; }
    div.footer-nav ul.nav-1 a { padding: 5px 0; }
	div#secondary-footer { float: left; width: 100%; padding: 0; }
	div#secondary-footer ul.second-nav { float: left; }
	div#secondary-footer ul.second-nav li a.nav-link { padding: 0.5em 0; }
	ul.social { clear: both; float: left; width: 100%; }

}

/* Mobile Portrait Size to Mobile Landscape Size (devices and browsers) */
@media only screen and (max-width: 520px) {
	.home-block div.skew-image-left,
	.promise div.skew-image-left { position: relative; left: -70px; width: 100%; min-height: 225px; margin: 0 0 30px 0; }
	.home-block div.skew-image-right,
	.promise div.skew-image-right,
	#introduction div.skew-image-right { position: relative; right: -70px; width: 100%; min-height: 225px; margin: 0 0 30px 0; }

	.home-block div.skew-image-right div.image-container,
	.promise div.skew-image-right div.image-container,
	#introduction div.skew-image-right div.image-container { position: absolute; top: 0; left: 0; bottom: 0; width: 120%; margin: 0; }

	.home-block div.skew-image-left div.image-container,
	.promise div.skew-image-left div.image-container { position: absolute; top: 0; right: -30%; bottom: 0; width: 120%; margin: 0; }

	.home-block div.skew-image-left div.image-container img.banner-img,
	.home-block div.skew-image-right div.image-container img.banner-img,
	.promise div.skew-image-left div.image-container img.banner-img,
	.promise div.skew-image-right div.image-container img.banner-img,
	#introduction div.skew-image-right div.image-container img.banner-img { width: auto; max-width: none; height: 225px; }

	.home-block div.skew-image-right div.image-container div.cke > .c1,
	.promise div.skew-image-right div.image-container div.cke > .c1,
	#introduction div.skew-image-right div.image-container div.cke > .c1 { width: auto; max-width: none; height: 225px; }

	.home-block div.skew-image-right div.image-container div.cke > .c1 iframe,
	.promise div.skew-image-right div.image-container div.cke > .c1 iframe,
	#introduction div.skew-image-right div.image-container div.cke > .c1 iframe { max-width: 500px; max-height: 225px; }



	.active-at-home table tr td:nth-child(1):before { display: block; margin: 0 0 0.5em 0; }
	.active-at-home table tr td:nth-child(2):before { display: block; margin: 0 0 0.5em 0; }
	.active-at-home table tr td:nth-child(3):before { display: block; margin: 0 0 0.5em 0; }
	.active-at-home table tr td:nth-child(4):before { display: block; margin: 0 0 0.5em 0; }
	.active-at-home table tr td:nth-child(5):before { display: block; margin: 0 0 0.5em 0; }
	.active-at-home table tr td:nth-child(6):before { display: block; margin: 0 0 0.5em 0; }

	.active-at-home table tr td.description div.desc-modal { top: 2.25em; width: 100%; }

	form.filter-form { display: flex; flex-wrap: wrap; width: 100%; margin: 0 0 1.5em 0; padding: 0; }
	form.filter-form div.input-text { flex-basis: 100%; max-width: 100%; }
	form.filter-form div.input-radio { flex-basis: 50%; max-width: 50%; }
	form.filter-form button { flex-basis: 60%; max-width: 60%; }
	div.video-set { width: 100%; max-height: 450px; padding: 0.25em; border: 1px solid #d4d4d4; overflow: scroll; }
	div.video-set article,
	div.video-set article:nth-child(3n+1) { flex-basis: 100%; max-width: 100%; margin: 0 0 1em 0; }
	div.video-selection { width: 100%; margin: 0 0 1.5em 0; }
	div.video-selection iframe { max-height: 280px; }
	div.related { float: left; width: 100%; margin: 0; }
	div.related div.video-set { max-height: 350px; }
	div.related div.video-set article,
	div.related div.video-set article:nth-child(2n+1) { flex-basis: 100%; max-width: 100%; margin: 0 0 1em 0; }
    div.update > h2 { flex-wrap: wrap; }
    div.update > h2 > span { display: block; flex: 0 0 100%; max-width: 100%; }

	#book-service > form > div.plaintext-box { row-gap: 0.5rem; }
	#book-service > form > div.plaintext-box p.input-plaintext-label { flex-basis: 100%; max-width: 100%; margin: 0; }
	.fm-form .input-checkbox { padding: 0; }
	#book-service div.input-checkbox + div.plaintext-box { width: 100%; margin: 0 0 1.25rem 0; }

	.pagination-links { display: flex; position: relative; flex-wrap: nowrap; width: 100%; margin: 2em 0; padding: 0; font-size: 0.625rem; }
	.pagination-links a,
	.pagination-links .current { padding: 0 0.5em; text-align: center; }

	#cta .container a.cta-button { flex-basis: 90%; max-width: 90%; font-size: 1.5rem; }

}
