/* Header */

/*
.home .container {
	max-width: 1024px;
	padding: 0 150px 0 60px;
}
*/

@media (min-width: 40em) {
	.home #page-header::after {
		display: none;
	}

	.home #page-header {
		background-color: #eee;
	}

	.home #page-header .bg-container::after {
		background-color: rgba(255,255,255,0); /* fallback color if gradients are not supported */
		background-image: -webkit-linear-gradient(left, rgba(255,255,255,0), #eeeeee 0%); /* For Chrome 25 and Safari 6, iOS 6.1, Android 4.3 */
		background-image:    -moz-linear-gradient(to left, #eeeeee 0%, rgba(255,255,255,0) 100%); /* For Firefox (3.6 to 15) */
		background-image:      -o-linear-gradient(to left, #eeeeee 0%, rgba(255,255,255,0) 100%); /* For old Opera (11.1 to 12.0) */ 
		background-image:         linear-gradient(to left, #eeeeee 0%, rgba(255,255,255,0) 100%); /* Standard syntax; must be last */
	}

	.home #page-header .bg-container::before {
		background-color: rgba(255,255,255,0); /* fallback color if gradients are not supported */
		background-image: -webkit-linear-gradient(right, rgba(255,255,255,0), #eeeeee 0%); /* For Chrome 25 and Safari 6, iOS 6.1, Android 4.3 */
		background-image:    -moz-linear-gradient(to right, #eeeeee 0%, rgba(255,255,255,0) 100%); /* For Firefox (3.6 to 15) */
		background-image:      -o-linear-gradient(to right, #eeeeee 0%, rgba(255,255,255,0) 100%); /* For old Opera (11.1 to 12.0) */ 
		background-image:         linear-gradient(to right, #eeeeee 0%, rgba(255,255,255,0) 100%); /* Standard syntax; must be last */
		width: 300px;
	}

	.home #page-header .bg-container {
		padding-bottom: 47px;
		padding-top: 140px;
	}

	.home #page-header .bg-container .container {
		padding: 0 15px;
	}

	.home #page-header .row {
		min-height: 430px;
		-ms-flex-pack: end;
		justify-content: flex-end;
		text-align: right;
		
		& .buttons {
			justify-content: flex-end;
		}
	}

	.home #page-header .large-8 {
		-ms-flex: 0 0 50%;
		flex: 0 0 50%;
		max-width: 50%;
	}

	.home #page-header h1,
	.home #page-header h2,
	.home #content h2 {
		font-size: 4em;
		font-weight: 600;
		line-height: 1.05;
		color: #002c77;
		margin-bottom: 0.45em;
	}

	.home #page-header p {
		float: right;
		clear: right;
		font-family: 'gill_sans', sans-serif;
		margin-bottom: 1em;
		line-height: 1.44;
	}

	.home #page-header .button {
		/*margin: 0 0 0 10px;*/
	}
}



@media (min-width: 40em) and (max-width: 63.999em) {
	
	.home #page-header .large-8 {
		-ms-flex: 0 0 100%;
		flex: 0 0 100%;
		max-width: 100%;
	}
	
	.home #page-header .bg-container::before {
		display: none;
	}
	
	.home #page-header .bg-container {
		
	}

	.home #page-header .bg-container .container {
		
	}

	.home #page-header h1,
	.home #page-header h2 {
		font-size: 3.4em;
	}

	.home #page-header p {
		
	}
}

@media (max-width: 39.999em) {
	/*
	.home #page-header .bg-container::before {
		display: none;
	}
	.home #page-header .bg-container {
		padding-bottom: 47px;
		padding-top: 200px;
	}
	.home #page-header .button {
		margin: 0 auto 10px;
		display: block;
		max-width: 300px;
	}
	*/
}







/* Content */

.home #content > .container {
	margin-top: 0px;
	padding-top: 0px;
	padding-bottom: 0px;
}

@media (min-width: 64em) {
	.home #content > .container {
		background-color: transparent;
		padding: 0 42px;
	}

	.home h3 {
		font-size: 4.5em;
		line-height: 1.05;
		/*color: #002c77;*/
		margin-bottom: 0.35em;
	}

	.home p {
		line-height: 1.85;
		margin-bottom: 1.8em;
	}
}



@media (min-width: 40em) and (max-width: 63.999em) {
	
}

@media (max-width: 39.999em) {
	
}







/* Exercise Choice */

@media (min-width: 64em) {
	#exercise-choice {
		background-size: auto 100%;
		background-repeat: no-repeat;
		background-position: right center;
		padding-top: 80px;
		padding-bottom: 80px;
	}
}



@media (min-width: 40em) and (max-width: 63.999em) {
	
}

@media (max-width: 39.999em) {
	#exercise-choice {
		background-image: url('/wp-content/uploads/2026/06/homepage-middle-mobile.jpg') !important;
		padding-top: 220px;
		background-size: 100% auto;
		background-position: top center;
		background-repeat: no-repeat;
		padding-bottom: 15px;
		background-size: 0px 0px !important;
		padding: calc(100vw * 232 / 390 + 12px) 0px 30px;
		
		&::before {			
			/* Updates 6.9.26 */
			display: block;
			background: inherit;
			background-size: cover;
			content: "";
			height: calc(100vw * 232 / 390);
			width: 100%;
			position: absolute;
			top: 0;
			left: 0;
			background-position: top center;
		}
	}
}







/* Availability */

#availability {
	text-align: center;
	padding-top: 10px;
	padding-bottom: 10px;
}

#availability .wpb_text_column.wpb_content_element {
	margin-bottom: 15px;
}

#availability h3 {
	/*
	color: #fff;
	margin-bottom: .2em;
	*/
}

#availability h6 {
	color: #fff;
	font-family: 'Roboto', sans-serif;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	line-height: 2;
}

@media (min-width: 64em) {
	#availability h6 {
		font-size: 1.2em;
	}
}


@media (min-width: 40em) and (max-width: 63.999em) {
	
}

@media (max-width: 39.999em) {

	#availability h6 br {
		display: none;
	}
	
}







/* Dedicated */

@media (min-width: 64em) {
	#dedicated {
		background-size: auto 100%;
		background-repeat: no-repeat;
		background-position: left center;
		padding-top: 80px;
		padding-bottom: 80px;
	}
}



@media (min-width: 40em) and (max-width: 63.999em) {
	
}

@media (max-width: 39.999em) {
	#dedicated {
		background-image: url('/wp-content/uploads/2026/06/homepage-bottom-mobile.jpg') !important;
		padding-top: 200px;
		background-size: 100% auto;
		background-position: top center;
		background-repeat: no-repeat;
		padding-bottom: 15px;
		background-size: 0px 0px !important;
		padding: calc(100vw * 232 / 390 + 12px) 0px 30px;
		
		&::before {			
			/* Updates 6.9.26 */
			display: block;
			background: inherit;
			background-size: cover;
			content: "";
			height: calc(100vw * 232 / 390);
			width: 100%;
			position: absolute;
			top: 0;
			left: 0;
			background-position: top center;
		}
	}
}


/* Happy 250th Birthday, America */

#america-250 {
	--flag-width-val: 519;
	--flag-height-val: 186;
	--flag-width: max(min(calc(1px * var(--flag-width-val)),calc(100vw * 519 / 1091)),350px);
	--flag-height: calc(var(--flag-width) * var(--flag-height-val) / var(--flag-width-val));
	--extra-section-padding: calc(0.3 * var(--flag-height));
	--extra-section-padding: 20px;
	--extra-column-padding: calc(0.4 * var(--flag-height));
	--extra-column-padding: 0;
	padding-top: var(--extra-section-padding);
	padding-bottom: var(--extra-section-padding);
	background-size: cover !important;
	
	&::before {
		content: "";
		background-image: url('/wp-content/uploads/2026/06/Mask-Group-27@2x.png');
		width: var(--flag-width);
		height: var(--flag-height);
		display: block;
		position: absolute;
		background-size: contain;
		background-position: top left;
		top: 0;
		left: 0;
		display: none;
	}
	
	& > .wpb_column:first-child {
		& > .vc_column-inner {
			padding-top: var(--extra-column-padding);
			padding-bottom: var(--extra-column-padding);
		}
	}
	
	& .wpb_text_column {
		margin: 0 0 3em;
		
		& h2 {
			/* color: #EBB700; */
			font-size: 3.5em;
		}
		
		& p {
			/* color: #fff; */
			max-width: 320px;
		}
	}
	
	& .wpb_single_image.badge-250 {
		max-width: 56px;
		margin: 0;
	}
	
	@media (max-width: 767px) {
		& {
			--extra-section-padding: 40px;
			padding-top: calc(1.2 * var(--extra-section-padding));
			padding-bottom: 0;
			max-width: calc(100vw - 50px) !important;
			margin: 0 auto 40px;
			left: auto !important;
			
			& > .wpb_column:first-child {
				padding: 15px 0 30px;
				
				& > .vc_column-inner {
					padding-top: var(--extra-column-padding);
					padding-bottom: 0;
				}
			}
			
			/*
			& > .wpb_column:last-child {
				padding: 0;
					
				& > .vc_column-inner {
					padding: 0 !important;
					
					& .youtube_video_w_image {
						margin: 0;
					}
				}
			}
			*/
			
			& .wpb_text_column {
				margin: 0 0 2em;
				text-align: center;
				
				& h2 {
					font-size: 22px;
					max-width: 10em;
					margin-left: auto;
					margin-right: auto;
					line-height: calc(31/22);
					margin-bottom: 0.25em;
				}
				
				& p {
					font-size: 18px;
					line-height: 1.5;
					margin-left: auto;
					margin-right: auto;
				}
			}
			
			& .wpb_single_image.badge-250 {
				max-width: 76px;
				margin: 0 auto;
			}
			
			& .youtube_video_w_image.wpb_content_element.widescreen {
				margin: 0 -60px -17px;
			}
		}
	}
}