/**********************************************************
// Body
**********************************************************/
a { color: #DD1371; }
a:hover { color: #1A4EA2; }

.Header-Complex-Main { margin-bottom: 120px; }
/*.Header-Complex-Wave-1 { bottom: -600px; }
.Header-Complex-Wave-2 { bottom: -590px; }*/

.Footer-Form > h3,
body .has-custom-color-7-color,
.Contact-Page-Link,
.Block-FAQ-Question div:hover,
.Block-FAQ-Question div:hover h2
{
	color: #DD1371!important;
}

.captchaHelp, .disabled-explanation {
	display: block!important;
    text-align: left;
    color: #fff;
    font-weight: bold;
    opacity: 1;
	margin: 3px 0!important;
	line-height: 1.2em;
}

.post .Entry-Text h3 {
	color: #DD1371;
}

.home .Block-Icons-Large-Item {
	width: 21%;
}

.Footer-Form-Logo img { width: 92px; }

.Header-Complex-Main h2 { margin-left: 0; }
.Header-Complex-Button { margin-left: 0; }

.Hover-Blue a:hover,
.Hover-Blue a:focus {
	transition: background 0.2s ease-in-out;
	background: #1A4EA2 !important;
	color: #FFF;
	}

.Yellow-Light-Left img {
	border-left: 7px solid #FFE160;
	border-radius: 100%;
	box-shadow: -3px 3px 6px rgba(0, 0, 0, 0.16);
	}

.Yellow-Light-Right img {
	border-right: 7px solid #FFE160;
	border-radius: 100%;
	box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.16);
	}

.Offset-75 {
	margin-bottom: -75px;
	position: relative;
	top: -75px;
	}

.Offset-90 {
	margin-bottom: -90px;
	position: relative;
	top: -90px;
	}

.Block-Icons-Large-Item h3 { color: #DD1371 !important; }

.Box-White {
	padding: 30px;
	border-radius: 25px;
	background: #FFF;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
	position: relative;
	z-index: 500;
	}

/**********************************************************
// Titles
*********************************************************

.post h1 {
	font-family: "Oswald", sans-serif;
	font-weight: 300;
	font-size: 48px;
	color: #1A4EA2;
	}

.post h2 {
	font-family: "Oswald", sans-serif;
	font-weight: 400;
	font-size: 28px;
	}

.post h3 {
	font-family: "Oswald", sans-serif;
	font-weight: 400;
	font-size: 28px;
	color: #dd1371;
	}

.post h4 {
	font-family: "museo-sans", sans-serif;
	font-weight: 700;
	font-size: 20px;
	text-transform: uppercase;
	}

.post h5 {
	font-family: "museo-sans", sans-serif;
	font-weight: 700;
	font-size: 17px;
	text-transform: uppercase;
	}

.post h6 {
	font-family: "museo-sans", sans-serif;
	font-weight: 700;
	font-size: 14px;
	text-transform: uppercase;
	}
*/

/**********************************************************
// Form Styles
**********************************************************/
body .wForm input[type="checkbox"],
body .wForm input[type="file"] { -webkit-appearance: auto; }

body .wFormContainer .wForm .inputWrapper input[type='text'],
body .wFormContainer .wForm .inputWrapper input[type='file'],
body .wFormContainer .wForm .inputWrapper input[type='password'],
body .wFormContainer .wForm .inputWrapper select,
body .wFormContainer .wForm .inputWrapper textarea {
	border-radius: 20px !important;
	border: 1px solid #1A4EA2 !important;
	box-shadow: 0 0 0 #000 !important;
	}

body .wFormContainer .wForm .inputWrapper input[type='text']:focus,
body .wFormContainer .wForm .inputWrapper input[type='password']:focus,
body .wFormContainer .wForm .inputWrapper select:focus,
body .wFormContainer .wForm .inputWrapper textarea:focus,
body .wFormContainer .wForm .inputWrapper input[type='text'].required:focus,
body .wFormContainer .wForm .inputWrapper input[type='password'].required:focus,
body .wFormContainer .wForm .inputWrapper select.required:focus,
body .wFormContainer .wForm .inputWrapper textarea.required:focus,
body .wFormContainer .wForm .inputWrapper textarea.required:not(readonly):focus { border: 1px solid #EE3D8F !important; }

body .wFormContainer .wForm .inputWrapper input[type='text'],
body .wFormContainer .wForm .inputWrapper input[type='file'],
body .wFormContainer .wForm .inputWrapper input[type='password'],
body .wFormContainer .wForm .inputWrapper select {
	padding: 10px 20px !important;
	height: auto !important;
	}

body #tfa_5-D .inputWrapper { display: block; }
body .wFormContainer .wForm .inputWrapper textarea {
	padding: 10px !important;
	width: 100%;
	height: 7em;
	}

body .wFormContainer .actions .primaryAction {
	margin-top: 0 !important;
	padding: 10px 30px;
	border-radius: 20px;
	text-transform: uppercase;
	letter-spacing: 1px;
	}

body .wFormContainer .oneField.errFld div.errMsg {
	margin-top: 10px;
	text-align: center;
	font-weight: 400;
	font-size: 12px;
	}

body .Footer-Form #tfa_15-D { width: 100%; }
body .Footer-Form .wForm form .vertical > .oneChoice .input-checkbox-faux,
body .Footer-Form .wForm form .vertical > .oneChoice .input-radio-faux {
	box-shadow: 0 0 0 #000 !important;
	border: 1px solid #1A4EA2 !important;
	}

.Footer-Form .wForm form .vertical > .oneChoice input[type="checkbox"]:checked + label > span:first-child:before { color: #1A4EA2; }
body .wFormContainer .actions .primaryAction:disabled { border-radius: 20px !important; }

.Footer-Form .wFormContainer .wForm .inputWrapper input[type='text'],
.Footer-Form .wFormContainer .wForm .inputWrapper input[type='password'],
.Footer-Form .wFormContainer .wForm .inputWrapper input[type='file'],
.Footer-Form .wFormContainer .wForm .inputWrapper select:not([multiple]) {
	padding: 10px 20px !important;
	line-height: 1em !important;
	}

.Footer-Form .wFormContainer .label.preField#tfa_15-L {
	margin-top: 4px;
    line-height: 1.4em;
    color: #FFF !important;
    font-weight: 700;
    display: inline-block;
    text-transform: revert;
}

.Footer-Form .wFormContainer .oneChoice .label.postField#tfa_16-L {
	color: #fff!important;
	font-weight: 700;
}

.Block-CTA-Form #tfa_31 div.oneField .inputWrapper { display: block !important; }
.Block-CTA-Form #tfa_31 div.oneField select { width: 100%; }
.Block-CTA-Form #tfa_31 div.oneField {
	width: 100% !important;
	max-width: 100% !important;
	}

.Block-CTA-Form #tfa_32-D label,
.Block-CTA-Form #tfa_5-D label {
	text-align: center;
	display: block !important;
	}

.Block-CTA-Form #tfa_15-L {
	padding-top: 10px;
	padding-left: 10px;
	display: block !important;
	}

.gform_wrapper { text-align: left; }
.Footer-Form .gform_wrapper { margin-top: 15px; }
.gform_wrapper .gfield_consent_label { line-height: 1.5em; }

.gform_wrapper .gfield_validation_message,
.gform_wrapper .validation_message { line-height: 1.5em !important; }

.gform_wrapper.gravity-theme [aria-invalid=true]+label.gform-field-label--type-sub,
.gform_wrapper.gravity-theme .gfield_error label.gform-field-label--type-sub {
	padding-left: 15px;
	padding-bottom: 15px;
}

/**********************************************************
// Product >> SM
**********************************************************/
.Product-SM {
	margin: 30px 2% 0 2%;
	width: 29.3%;
	max-width: 270px;
	display: inline-block;
	vertical-align: top;
	}

.Product-SM-Thumb {
	padding-top: 100%;
	width: 100%;
	position: relative;
	overflow: hidden;
	}

/*.Product-SM-Thumb:after {
    padding-bottom: 150%;
    content: '';
    display: block;
	}*/

.Product-SM-Thumb:hover img { opacity: 0.9; }
.Product-SM-Thumb img {
	width: 100%;
	height: 100%;
	object-fit: contain;
    object-position: top center;
	}

.Product-SM-Thumb img,
.Product-SM-Thumb a {
	position: absolute;
	bottom: 0;
	right: 0;
	left: 0;
	top: 0;
	}

.Product-SM-Thumb img { z-index: 10; }
.Product-SM-Thumb a { z-index: 50; }

.Product-SM-Main { padding: 10px; }

.Product-SM-Title {
	padding: 0 !important;
	font-family: "Oswald", sans-serif;
	font-weight: 400;
	font-size: 28px;
	}

.Product-SM-Title a { color: #004EA2; }
.Product-SM-Title a:hover { color: #EE3D8F; }

.Product-SM-Seats {
	margin: 10px auto 0 auto;
	line-height: 1em;
	font-weight: 300;
	font-size: 16px;
	display: block;
	}

.Product-SM-More:hover { color: #EE3D8F; }
.Product-SM-More {
	margin: 15px auto 0 auto;
	line-height: 1em;
	text-transform: uppercase;
	text-decoration: underline;
	letter-spacing: 1px;
	font-weight: 300;
	font-size: 18px;
	color: #004EA2;
	display: inline-block;
	}

/**********************************************************
// Icon Block Override
**********************************************************/

.Smaller-Icon .Block-Icons-Large-Item {
	margin: 20px 2% 20px 2%;
	max-width: 100%;
	width: 21%;
}

.Smaller-Icon .Block-Icons-Large-Item-Image img {
	max-height: 64px;
	padding-bottom: 5px;
}

/**********************************************************
// Footer >> Main >> Alt
**********************************************************/
.Footer-Main-Alt {
	margin: 30px auto 0 auto;
	width: 100%;
	max-width: 1024px;
	font-size: 0;
	position: relative;
	z-index: 30;
	color: #FFF;
	}

/**********************************************************
// Footer >> Main >> Alt >> Top
**********************************************************/
.Footer-Main-Alt-Top {
	width: 100%;
	height: 60px;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	}

.Footer-Main-Alt-Logo {
	line-height: 0;
	font-size: 0;
	display: inline-block;
	position: absolute;
	left: 0;
	top: 0;
	}

.Footer-Main-Alt-Logo img {
	width: auto;
	height: auto;
	max-height: 60px;
	}

.Footer-Main-Alt-CTA-Line {
	padding: 0 !important;
	line-height: 1.3em;
	text-transform: uppercase;
	letter-spacing: 1.5px;
	font-weight: 700;
	font-size: 26px;
	display: inline-block;
	}

.Footer-Main-Alt-CTA-Line a {
	color: #FFF;
	transition: color 0.2s ease-in-out;
	}

.Footer-Main-Alt-CTA-Line a:hover,
.Footer-Main-Alt-CTA-Line a:focus { color: #FFE160; }

/**********************************************************
// Footer >> Main >> Alt >> Locations
**********************************************************/
.Footer-Main-Alt-Locations { text-align: center; }

.Footer-Main-Alt-Location {
	margin: 50px 1% 0 1%;
	width: 23%;
	max-width: 250px;
	text-align: left;
	display: inline-block;
	vertical-align: top;
	}

.Footer-Main-Alt-Location h3 {
	padding: 0 !important;
	line-height: 1.2em;
	text-transform: uppercase;
	letter-spacing: 1px;
	font-weight: 700;
	font-size: 18px;
	}

.Footer-Main-Alt-Location h4 {
	margin-top: 5px;
	padding: 0 !important;
	line-height: 1.2em;
	font-weight: 400;
	font-size: 14px;
	}

.Footer-Main-Alt-Location a {
	margin-top: 5px;
	line-height: 1.5em;
	font-weight: 700;
	font-size: 14px;
	color: #FFF;
	display: inline-block;
	}

.Footer-Main-Alt-Location a:hover,
.Footer-Main-Alt-Location a:focus { color: #FFE160; }

.Footer-Main-Alt-Location a i { margin-right: 5px; }

/**********************************************************
// Footer >> Main >> Alt >> Bottom
**********************************************************/
.Footer-Main-Alt-Bottom {
	margin-top: 50px;
	padding-top: 20px;
	padding-bottom: 30px;
	border-top: 1px solid #FFF;
	text-align: center;
	}

.Footer-Main-Alt-Bottom a {
	transition: color 0.2s ease-in-out;
	color: #FFF;
	}

.Footer-Main-Alt-Bottom a:hover,
.Footer-Main-Alt-Bottom a:focus { color: #FFE160; }

.Footer-Main-Alt-Social li {
	margin: 10px 30px 0 30px;
	display: inline-block;
	vertical-align: middle;
	}

.Footer-Main-Alt-Social li a { font-size: 40px; }
.Footer-Main-Alt-Social li a span { display: none; }

.Footer-Main-Alt-Meta { margin-top: 30px; }
.Footer-Main-Alt-Copyright {
	font-weight: 700;
	font-size: 12px;
	display: inline-block;
	vertical-align: middle;
	line-height: 1.5em;
	}

.Footer-Main-Alt-Disclaimer {
	margin-top: 10px;
	line-height: 1.5em;
	font-size: 10px;
	}

.Footer-Main-Alt-Disclaimer a {
	text-decoration: underline;
	font-weight: 700;
	font-size: 1.1em;
	}

.Footer-Main-Alt-Company {
	margin: 20px auto 0 auto;
	text-align: center;
	}

.Footer-Main-Alt-Company h4 {
	padding: 0 !important;
	font-weight: 700;
	font-size: 13px;
	}

.Footer-Main-Alt-Company h5 {
	padding: 0 !important;
	font-weight: 300;
	font-size: 13px;
	}

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

@media
all and (max-width: 1300px),
all and (max-device-width: 1300px)
{
	.wp-block-columns.Grid-Columns {
		display: grid;
	}
	.wp-block-columns.Grid-Columns-4 { grid-template-columns: 1fr 1fr 1fr 1fr; }
	.wp-block-columns.Grid-Columns-5 { grid-template-columns: 1fr 1fr 1fr; }
	.wp-block-columns.Grid-Columns-6 { grid-template-columns: 1fr 1fr 1fr; }

}

@media
all and (max-width: 1250px),
all and (max-device-width: 1250px)
{

}

@media
all and (max-width: 1100px),
all and (max-device-width: 1100px)
{
	.wp-block-columns.Grid-Columns-4 { grid-template-columns: 1fr 1fr; }
	.wp-block-columns.Grid-Columns-5 { grid-template-columns: 1fr 1fr; }
}

@media
all and (max-width: 1024px),
all and (max-device-width: 1024px)
{
	.Product-SM { width: 46%; }
}

@media
all and (max-width: 768px),
all and (max-device-width: 768px)
{
	.Header-Complex-Main { margin-top: 100px; margin-bottom: 0; }
	.Header-Complex-Wave-1 { bottom: -520px; }
	.Header-Complex-Wave-2 { bottom: -510px; }

	.Service-Map {
		max-width: 350px;
		margin: 0 auto 20px;
		}

	.Product-SM {
		margin: 30px auto 0 auto;
		width: 100%;
		display: block;
		}

	.Smaller-Icon .Block-Icons-Large-Item {
		width: 46%;
	}

	.woocommerce div.product div.images.woocommerce-product-gallery,
	.woocommerce #content div.product div.images,
	.woocommerce #content div.product div.summary,
	.woocommerce div.product div.images,
	.woocommerce div.product div.summary,
	.woocommerce-page #content div.product div.images,
	.woocommerce-page #content div.product div.summary,
	.woocommerce-page div.product div.images,
	.woocommerce-page div.product div.summary {
		width: 100% !important;
		float: none !important;
		}

	.Footer-Main-Alt-Top {
		height: auto;
		display: block;
		text-align: center;
		}

	.Footer-Main-Alt-Logo {
		margin: auto;
		position: relative;
		}

	.Footer-Main-Alt-CTA-Line {
		margin: 30px auto 0 auto;
		font-size: 26px;
		display: block;
		}

	.Footer-Main-Alt-Location { width: 48%; }
}

@media
all and (max-width: 600px),
all and (max-device-width: 600px)
{
	.wp-block-columns.Grid-Columns-4 { grid-template-columns: 1fr; }
	.wp-block-columns.Grid-Columns-5 { grid-template-columns: 1fr; }
	.wp-block-columns.Grid-Columns-6 { grid-template-columns: 1fr 1fr; }

	.home .Block-Icons-Large-Item {
		width: 49%;
		display: inline-block;
		margin-bottom: 20px;
	}

	.Smaller-Icon .Block-Icons-Large-Item {
		display: inline-block;
	}
}

@media
all and (max-width: 500px),
all and (max-device-width: 500px)
{
	.Header-Main-Logo img { max-height: 45px; }

	.Header-Complex-Main { margin-top: 180px; }
	.Header-Complex-Main h1 { line-height: 1.1em; }
	.Header-Complex-Main h2 { margin-top: 10px; }

	.Footer-Main-Alt-CTA-Line { font-size: 20px; }

	.Footer-Main-Alt-Location {
		margin: 30px auto 0 auto;
		width: 100%;
		max-width: 300px;
		text-align: center;
		display: block;
		}

	.Footer-Main-Alt-Copyright {
		margin: 0 auto 10px auto;
		display: block;
		}
}
