/********************************************************************
 /$$$$$$$$ /$$$$$$$$ /$$$$$$$$ /$$$$$$$$  /$$$$$$  /$$$$$$$$ /$$$$$$
| $$_____/| $$_____/| $$_____/| $$_____/ /$$__  $$|__  $$__//$$__  $$
| $$      | $$      | $$      | $$      | $$  \__/   | $$  | $$  \__/
| $$$$$   | $$$$$   | $$$$$   | $$$$$   | $$         | $$  |  $$$$$$
| $$__/   | $$__/   | $$__/   | $$__/   | $$         | $$   \____  $$
| $$      | $$      | $$      | $$      | $$    $$   | $$   /$$  \ $$
| $$$$$$$$| $$      | $$      | $$$$$$$$|  $$$$$$/   | $$  |  $$$$$$/
|________/|__/      |__/      |________/ \______/    |__/   \______/
********************************************************************/
@keyframes fadein
{
    from
    {
    	opacity: 0;
    }

    to
    {
    	opacity: 1;
    }
}

.raise-on-hover
{
	transition: transform 0.2s;
}

.raise-on-hover:hover
{
	transform: translate(0, -3px);
}

.img-raise-on-hover img
{
	transition: transform 0.2s;
}

.img-raise-on-hover:hover img
{
	transform: translate(0, -3px);
}

.lower-on-hover
{
	transition: transform 0.2s;
}

.lower-on-hover:hover
{
	transform: translate(0, 3px);
}

.decrease-opacity-on-hover
{
	transition: opacity 0.2s;
}

.decrease-opacity-on-hover:hover
{
	opacity: 0.8;
}

@media screen and (min-width: 1201px)
{
	.fade-in
	{
		opacity: 0;
		animation: fadein ease-in 1;
		animation-fill-mode: forwards;
		animation-duration: 1s;
	}
}

.fade-in.fade-first
{
	animation-delay: 0.3s;
}

.fade-in.fade-second
{
	animation-delay: 0.6s;
}

.fade-in.fade-third
{
	animation-delay: 0.9s;
}

.fade-in.fade-fourth
{
	animation-delay: 1.2s;
}

.fade-in.fade-fifth
{
	animation-delay: 1.5s;
}

.fade-in.fade-sixth
{
	animation-delay: 1.8s;
}

@media screen and (min-width:1024px)
{
	.middle-out-underline-on-hover:link,
	.middle-out-underline-on-hover:active,
	.middle-out-underline-on-hover:visited
	{
		position: relative;
	}

	.middle-out-underline-on-hover::before
	{
		content: '';
		position: absolute;
		width: 100%;
		height: 3px;
		bottom: -2px;
		left: 0;
		background: #00bce4;
		visibility: hidden;
		transform: scaleX(0);
		transition: all 0.2s;
	}

	.middle-out-underline-on-hover:hover::before,
	.middle-out-underline-on-hover:focus::before
	{
		visibility: visible;
		transform: scaleX(1);
	}
}

.image-grow-on-hover-container
{
	overflow: hidden;
	height: 300px;
	width: 300px;
}

.image-grow-on-hover-container > img:first-of-type
{
	transition: transform 0.2s;
	height: 100%;
	width: 100%;
}

.image-grow-on-hover-container > img:first-of-type:hover
{
	transform: scale(1.2);
}

/*************************************************
 /$$$$$$$$  /$$$$$$  /$$   /$$ /$$$$$$$$  /$$$$$$
| $$_____/ /$$__  $$| $$$ | $$|__  $$__/ /$$__  $$
| $$      | $$  \ $$| $$$$| $$   | $$   | $$  \__/
| $$$$$   | $$  | $$| $$ $$ $$   | $$   |  $$$$$$
| $$__/   | $$  | $$| $$  $$$$   | $$    \____  $$
| $$      | $$  | $$| $$\  $$$   | $$    /$$  \ $$
| $$      |  $$$$$$/| $$ \  $$   | $$   |  $$$$$$/
|__/       \______/ |__/  \__/   |__/    \______/
**************************************************/
@font-face
{
	font-family: 'font_awesome';
	font-style: normal;
	font-weight: 900;
	src: url('/fonts/fa-solid-900.woff2') format('woff2');
	font-display: block;
}

@font-face
{
	font-family: 'REMGlyph';
	src:url('/fonts/REMGlyph.eot?xa5ysv');
	src:url('/fonts/REMGlyph.eot?#iefixxa5ysv') format('embedded-opentype'),
		url('/fonts/REMGlyph.woff?xa5ysv') format('woff'),
		url('/fonts/REMGlyph.ttf?xa5ysv') format('truetype'),
		url('/fonts/REMGlyph.svg?xa5ysv#REMGlyph') format('svg');
	font-weight: normal;
	font-style: normal;
}

[class^="icon-"], [class*=" icon-"]
{
	font-family: 'REMGlyph';
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
}

@font-face
{
	font-family: 'font_awesome';
	font-style: normal;
	font-weight: 900;
	src:url('/fonts/fa-solid-900.eot');
	src:url('/fonts/fa-solid-900.eot?#iefix') format('embedded-opentype'),
		url('/fonts/fa-solid-900.woff') format('woff'),
		url('/fonts/fa-solid-900.ttf') format('truetype'),
		url('/fonts/fa-solid-900.svg#fontawesome') format('svg');
}

@font-face {
    font-family: 'Montserrat-Light';
    src: url('/fonts/Montserrat-Light.eot');
    src: url('/fonts/Montserrat-Light.eot?#iefix') format('embedded-opentype'),
        url('/fonts/Montserrat-Light.woff') format('woff'),
        url('/fonts/Montserrat-Light.ttf') format('truetype'),
        url('/fonts/Montserrat-Light.svg#Montserrat-Light') format('svg');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'Montserrat';
    src: url('/fonts/Montserrat-Regular.eot');
    src: url('/fonts/Montserrat-Regular.eot?#iefix') format('embedded-opentype'),
        url('/fonts/Montserrat-Regular.woff') format('woff'),
        url('/fonts/Montserrat-Regular.ttf') format('truetype'),
        url('/fonts/Montserrat-Regular.svg#Montserrat-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Montserrat-Bold';
    src: url('/fonts/Montserrat-Bold.eot');
    src: url('/fonts/Montserrat-Bold.eot?#iefix') format('embedded-opentype'),
        url('/fonts/Montserrat-Bold.woff') format('woff'),
        url('/fonts/Montserrat-Bold.ttf') format('truetype'),
        url('/fonts/Montserrat-Bold.svg#Montserrat-Bold') format('svg');
    font-weight: bold;
    font-style: normal;
}

@font-face {
    font-family: 'latoregular';
    src: url('/fonts/Lato-Regular.eot');
    src: url('/fonts/Lato-Regular.eot?#iefix') format('embedded-opentype'),
        url('/fonts/Lato-Regular.woff') format('woff'),
        url('/fonts/Lato-Regular.ttf') format('truetype'),
        url('/fonts/Lato-Regular.svg#Lato-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'latoitalic';
    src: url('/fonts/Lato-Italic.eot');
    src: url('/fonts/Lato-Italic.eot?#iefix') format('embedded-opentype'),
        url('/fonts/Lato-Italic.woff') format('woff'),
        url('/fonts/Lato-Italic.ttf') format('truetype'),
        url('/fonts/Lato-Italic.svg#Lato-Italic') format('svg');
    font-weight: normal;
    font-style: italic;
}

@font-face {
    font-family: 'latobold';
    src: url('/fonts/Lato-Bold.eot');
    src: url('/fonts/Lato-Bold.eot?#iefix') format('embedded-opentype'),
        url('/fonts/Lato-Bold.woff') format('woff'),
        url('/fonts/Lato-Bold.ttf') format('truetype'),
        url('/fonts/Lato-Bold.svg#Lato-Bold') format('svg');
    font-weight: bold;
    font-style: normal;
}

/******************************************************************************************************************************
  /$$$$$$  /$$        /$$$$$$  /$$$$$$$   /$$$$$$  /$$              /$$$$$$  /$$$$$$$$ /$$     /$$ /$$       /$$$$$$$$  /$$$$$$
 /$$__  $$| $$       /$$__  $$| $$__  $$ /$$__  $$| $$             /$$__  $$|__  $$__/|  $$   /$$/| $$      | $$_____/ /$$__  $$
| $$  \__/| $$      | $$  \ $$| $$  \ $$| $$  \ $$| $$            | $$  \__/   | $$    \  $$ /$$/ | $$      | $$      | $$  \__/
| $$ /$$$$| $$      | $$  | $$| $$$$$$$ | $$$$$$$$| $$            |  $$$$$$    | $$     \  $$$$/  | $$      | $$$$$   |  $$$$$$
| $$|_  $$| $$      | $$  | $$| $$__  $$| $$__  $$| $$             \____  $$   | $$      \  $$/   | $$      | $$__/    \____  $$
| $$  \ $$| $$      | $$  | $$| $$  \ $$| $$  | $$| $$             /$$  \ $$   | $$       | $$    | $$      | $$       /$$  \ $$
|  $$$$$$/| $$$$$$$$|  $$$$$$/| $$$$$$$/| $$  | $$| $$$$$$$$      |  $$$$$$/   | $$       | $$    | $$$$$$$$| $$$$$$$$|  $$$$$$/
 \______/ |________/ \______/ |_______/ |__/  |__/|________/       \______/    |__/       |__/    |________/|________/ \______/
*******************************************************************************************************************************/

html
{
	margin: 0;
	padding: 0;
	width: 100%;
}

body
{
	margin: 0;
	padding: 0 !important;
	width: 100%;
	font-family: 'latoregular', Arial, sans-serif;
	font-size: 12pt;
}

img
{
	border: none;
}

a:link,
a:visited,
a:active
{
	color: #00bce4;
	text-decoration: none;
}

a:hover
{
	color: #00a1c3;
}

input:focus,
textarea:focus,
select:focus
{
	outline: 1px solid #00bce4;
}

input[type="submit"]
{
	display: inline-block;
	font-family: 'Montserrat', Arial, sans-serif;
	font-size: 11.25pt;
	letter-spacing: 0.04em;
	font-weight: normal;
	font-style: normal !important;
	color: #ffffff !important;
	text-decoration: none !important;
	background-color: #161616;
	text-transform: uppercase;
	padding: 12px 44px;
	cursor: pointer;
	white-space: nowrap;
	transition: all 200ms;
	-webkit-tap-highlight-color: rgba(255,255,255,0);

	/*iPad Overrides*/
	border: none;
	-webkit-appearance: none;
	-webkit-border-radius: 0;
}

input[type="submit"]:hover
{
	background-color: #343434;
}

input[type="submit"]:active
{
	background-color: #343434;
	transform: 	translate(0,2px)
 				scale(0.99, 0.99);
    box-shadow: inset 0 0 5px rgba(0,0,0,0.5);
}

input[type="button"]
{
	display: inline-block;
	font-family: 'Montserrat', Arial, sans-serif;
	font-size: 11.25pt;
	letter-spacing: 0.04em;
	font-weight: normal;
	font-style: normal !important;
	text-decoration: none !important;
	padding: 12px 44px;
	cursor: pointer;
	white-space: nowrap;
	transition: all 0.2s;
	-webkit-tap-highlight-color: transparent;

	/*iPad Overrides*/
	border: none;
	-webkit-appearance: none;
	-webkit-border-radius: 0;
}

input[type="text"],
input[type="password"],
select,
option,
textarea
{
	font-family: 'latoregular', Arial, sans-serif;
	font-size: 12pt;
}

hr
{
	height: 1px;
	background-color: #cccccc;
	border: 0;
}

img.responsive-img
{
	display: inline-block;
    max-width: 100%;
    height: auto;
}

.button-small,
.button-small:link,
.button-small:active,
.button-small:visited,
.button-small:hover
{
	font-size: 14px !important;
	padding: 3px 8px !important;
}

/* Responsive Tables */
table.rem-responsive-table
{
	width: 100%;
}

table.rem-responsive-table tr,
table.rem-responsive-table th,
table.rem-responsive-table td
{
	margin: 0;
	padding: 0;
}

table.rem-responsive-table td img
{
	display: inline-block;
    max-width: 100%;
    height: auto;
}

div.container-max-width
{
	max-width: 1200px;
}

.rem-responsive-16x9-video
{
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
}

.rem-responsive-16x9-video iframe,
.rem-responsive-16x9-video object,
.rem-responsive-16x9-video embed
{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* col-lg and below */
@media screen and (max-width:1200px)
{
	body:not(.ww_editor_body) table.rem-responsive-table td
	{
		padding-left: 15px;
		padding-right: 15px;
		padding-bottom: 40px;
	}

	body:not(.ww_editor_body) table.rem-responsive-table tr td
	{
		width: 100% !important;
		float: left;
		clear: both;
		padding-left: 0;
		padding-right: 0;
	}

	body:not(.ww_editor_body) .mobile-left
	{
		float: none !important;
		clear: both;
		display: block !important;
		margin: 0 auto 0 0;
		text-align: center;
	}

	body:not(.ww_editor_body) .mobile-centered
	{
		float: none !important;
		clear: both;
		display: block !important;
		margin-left: auto;
		margin-right: auto;
		text-align: center;
	}

	body:not(.ww_editor_body) .mobile-right
	{
		float: none !important;
		clear: both;
		display: block !important;
		margin: 0 0 0 auto;
		text-align: center;
	}

	body:not(.ww_editor_body) .mobile-left-flex
	{
		float: none !important;
		clear: both;
		display: flex !important;
		margin: 0 auto 0 0;
		text-align: center;
	}

	body:not(.ww_editor_body) .mobile-centered-flex
	{
		float: none !important;
		clear: both;
		display: flex !important;
		margin: 0 auto;
		text-align: center;
	}

	body:not(.ww_editor_body) .mobile-right-flex
	{
		float: none !important;
		clear: both;
		display: flex !important;
		margin: 0 0 0 auto;
		text-align: center;
	}
}

@media screen and (min-width: 1201px)
{
	.hide-on-desktop
	{
		display: none !important;
	}

	#header-desktop
	{
		display: block;
	}

	#header-mobile-only
	{
		display: none;
	}

	#mobile-content-container
	{
		display: none;
	}
}

@media screen and (max-width: 1200px)
{
	.hide-on-mobile
	{
		display: none !important;
	}

	#mobile-content-container
	{
		display: block;
	}

	div#header-desktop-only
	{
		display: none;
	}

	div#desktop-content-container
	{
		margin-top: 60px;
	}

	div#header-mobile-only img
	{
		height: auto;
		max-height: 50px;
		padding: 10px 0 0 5px;
	}

	div#header-mobile-only
	{
		display: block;
	    position: fixed;
	    top: 0;
	    height: 60px;
	    width: 100%;
	    background: #ffffff;
	    box-shadow: 0 -2px 15px #000000;
	    z-index: 10000;
	}

	div#header-mobile-only::after
	{
	    clear: both;
	    content: "\00a0";
	    display: block;
	    height: 0;
	    font: 0px/0 serif;
	    overflow: hidden;
	}

	div#header-mobile-only > #mobile_search_button:link,
	div#header-mobile-only > #mobile_search_button:active,
	div#header-mobile-only > #mobile_search_button:visited,
	div#header-mobile-only > #mobile_search_button:hover
	{
		position: absolute;
		top: 18px;
		right: 65px;
		font-family: font_awesome;
		font-size: 24px;
		text-decoration: none;
	}

	#mobile_search_form
	{
		display: none;
		position: fixed;
		top: 10px;
		width: 95%;
		left: 0;
		right: 0;
		margin: 0 auto;
	    z-index: 10001;
	}

	#mobile_search_form > #mobile_search_field
	{
		position: relative;
		width: 100%;
		height: 0;
		opacity: 0;
		padding: 3px 15px;
		border: 1px solid #cccccc;
		outline: none;
		background-color: #ffffff;
		font-family: 'latoregular', Arial, sans-serif;
		font-size: 12pt;
		box-shadow: 0 0 5px rgba(0,0,0,0.5);
	}

	#mobile_search_form > #mobile_search_field:focus
	{
		background-color: #F4F4F4;
	}
}
@media screen and (max-width: 768px)
{
	.sm-centered
	{
		float: none !important;
		clear: both;
		margin-left: auto;
		margin-right: auto;
		text-align: center;
	}
}

.hidden
{
	display: none;
}

/**********************************************************
 /$$   /$$ /$$$$$$$$  /$$$$$$  /$$$$$$$  /$$$$$$$$ /$$$$$$$
| $$  | $$| $$_____/ /$$__  $$| $$__  $$| $$_____/| $$__  $$
| $$  | $$| $$      | $$  \ $$| $$  \ $$| $$      | $$  \ $$
| $$$$$$$$| $$$$$   | $$$$$$$$| $$  | $$| $$$$$   | $$$$$$$/
| $$__  $$| $$__/   | $$__  $$| $$  | $$| $$__/   | $$__  $$
| $$  | $$| $$      | $$  | $$| $$  | $$| $$      | $$  \ $$
| $$  | $$| $$$$$$$$| $$  | $$| $$$$$$$/| $$$$$$$$| $$  | $$
|__/  |__/|________/|__/  |__/|_______/ |________/|__/  |__/
***********************************************************/

@media screen and (max-width: 1200px)
{
	#header-desktop #menu-builder-header-nav
	{
		position: fixed;
		top: 60px;
		z-index: 1500;
		left: 0;
		width: 100%;
		max-height: calc(100% - 60px);
		box-shadow: -1px -2px 20px 0px rgba(0,0,0,0.5);
		overflow-y: auto;
		background-color: #ffffff;
	}
}

@media screen and (min-width: 1201px)
{
	#header-desktop
	{
		position: relative;
		z-index: 1010;
		top: 0;
		width: 100%;
		max-width: 2000px;
		height: 174px;
		margin: 0 auto;
		background-color: rgba(255,255,255,0.94);
	}

	#header-nav-bar-background
	{
		background-color: #161616;
		padding: 14px 0;
	}

	#header-desktop #menu-builder-header-nav
	{
		position: relative;
		display: flex;
		align-items: center;
		padding-left: 15px;
	}

	.container-header-width
	{
		max-width: 1200px;
		padding: 0;
		margin: 0 auto;
		position: relative;
	}

	.header-top-padding
	{
		padding-top: 44px;
	}

	.header-logo
	{
		display: block;
		margin: 0 auto;
		padding: 20px 0;
	}

	p.header-p
	{
		font-family: 'latoregular', Arial, sans-serif;
		letter-spacing: 0.04em;
		font-size: 9.75pt;
		color: #515151;
		text-align: right;
	}

	a.header-p-link:link,
	a.header-p-link:visited,
	a.header-p-link:active
	{
		color: #515151;
	}

	a.header-p-link:hover
	{
		color: #00a1c3;
	}

	.header-wrapper 
	{
	max-width: 1200px;
	margin: 0 auto;
	}

	.header-wrapper .row 
	{
		width: 100%;
		align-items: center;
	}

	.header-logo 
	{
		max-height: 115px;
	}

	.header-top-padding 
	{
		padding-top: 10px;
	}

	.header-cart-link
	{
		margin-right: 10px;
	}

	.header-cart-link span,
	.header-login span,
	.header-p-link
	{
		text-decoration: none;
		color: #2E2E2E !important;
		font-size: 13px;
	}

	.header-cart-link:hover,
	.header-login:hover,
	.header-p-link:hover
	{
		text-decoration: none !important;
	}

	.shopping-icon-container
	{
		display: inline-block;
	}

	.cart-total
	{
		display: inline-block;
	}
}

/******************************************
 /$$   /$$  /$$$$$$  /$$      /$$ /$$$$$$$$
| $$  | $$ /$$__  $$| $$$    /$$$| $$_____/
| $$  | $$| $$  \ $$| $$$$  /$$$$| $$
| $$$$$$$$| $$  | $$| $$ $$/$$ $$| $$$$$
| $$__  $$| $$  | $$| $$  $$$| $$| $$__/
| $$  | $$| $$  | $$| $$\  $ | $$| $$
| $$  | $$|  $$$$$$/| $$ \/  | $$| $$$$$$$$
|__/  |__/ \______/ |__/     |__/|________/
*******************************************/


#home-page-primary-panel
{
	background: url('/images/homepage-banner-shadow.png') top center no-repeat;
	padding: 150px 0;
}

#home-page-pool-parallax-background
{
	background: url('/images/homepage-pool-parallax-background.jpg') center center no-repeat;
	background-attachment: fixed;
	height: 456px;
}

#home-page-middle-panel
{
	background-color: #161616;
	padding: 50px 0 46px 0;
	width: 100%;
	max-width: 2000px;
	margin: 0 auto;
}

#home-page-middle-panel *
{
	color: #ffffff;
}

a#custom-installation-icon-background:link,
a#custom-installation-icon-background:active,
a#custom-installation-icon-background:visited
{
	width: 226px;
	height: 250px;
	text-align: center;
	display: table-cell;
	background: url('/images/custom-installation-icon-background-off.png') center center no-repeat;
    background-color: #161616;
	transition: background 0.20s ease-in-out;
	padding: 180px 0 20px 0;
}

a#custom-installation-icon-background:hover
{
	background: url('/images/custom-installation-icon-background-on.png') center center no-repeat;
    background-color: #00bce4;
	text-decoration: none !important;
}

a#safety-icon-background:link,
a#safety-icon-background:active,
a#safety-icon-background:visited
{
	width: 226px;
	height: 250px;
	text-align: center;
	display: table-cell;
	background: url('/images/safety-icon-background-off.png') center center no-repeat;
    background-color: #161616;
	transition: background 0.20s ease-in-out;
	padding: 180px 0 20px 0;
}

a#safety-icon-background:hover
{
	background: url('/images/safety-icon-background-on.png') center center no-repeat;
    background-color: #00bce4;
	text-decoration: none !important;
}

a#operation-and-maintenance-icon-background:link,
a#operation-and-maintenance-icon-background:active,
a#operation-and-maintenance-icon-background:visited
{
	width: 226px;
	height: 250px;
	text-align: center;
	display: table-cell;
	background: url('/images/operation-and-maintenance-icon-background-off.png') center center no-repeat;
    background-color: #161616;
	transition: background 0.20s ease-in-out;
	padding: 180px 0 20px 0;
}

a#operation-and-maintenance-icon-background:hover
{
	background: url('/images/operation-and-maintenance-icon-background-on.png') center center no-repeat;
    background-color: #00bce4;
	text-decoration: none !important;
}

a#efficiency-icon-background:link,
a#efficiency-icon-background:active,
a#efficiency-icon-background:visited
{
	width: 226px;
	height: 250px;
	text-align: center;
	display: table-cell;
	background: url('/images/efficiency-icon-background-off.png') center center no-repeat;
    background-color: #161616;
	transition: background 0.20s ease-in-out;
	padding: 180px 0 20px 0;
}

a#efficiency-icon-background:hover
{
	background: url('/images/efficiency-icon-background-on.png') center center no-repeat;
    background-color: #00bce4;
	text-decoration: none !important;
}

#home-page-bottom-panel
{
	padding: 88px 0;
}

.black-background
{
	background-color: #101010;
}

.black-background *
{
	color: #ffffff;
}

@media screen and (max-width: 1200px)
{
	#home-page-primary-panel
	{
		padding: 10% 0;
	}

	#home-page-pool-parallax-background
	{
		background-size: cover;
		height: 260px;
	}

	#home-page-middle-panel
	{
		padding: 8% 0 0 0;
	}

	a#custom-installation-icon-background:link,
	a#custom-installation-icon-background:active,
	a#custom-installation-icon-background:visited,
	a#safety-icon-background:link,
	a#safety-icon-background:active,
	a#safety-icon-background:visited,
	a#operation-and-maintenance-icon-background:link,
	a#operation-and-maintenance-icon-background:active,
	a#operation-and-maintenance-icon-background:visited,
	a#efficiency-icon-background:link,
	a#efficiency-icon-background:active,
	a#efficiency-icon-background:visited
	{
		text-align: center;
		display: block;
		padding: 180px 0 20px 0;
		margin: 0 auto;
	}

	#home-page-bottom-panel
	{
		padding: 8% 0;
	}

	.cell-padding-mobile-only
	{
		padding: 0 4% 4% 4% !important;
	}
}

/****************************************************************************
 /$$$$$$ /$$   /$$ /$$$$$$$$ /$$$$$$$$ /$$$$$$$  /$$   /$$  /$$$$$$  /$$
|_  $$_/| $$$ | $$|__  $$__/| $$_____/| $$__  $$| $$$ | $$ /$$__  $$| $$
  | $$  | $$$$| $$   | $$   | $$      | $$  \ $$| $$$$| $$| $$  \ $$| $$
  | $$  | $$ $$ $$   | $$   | $$$$$   | $$$$$$$/| $$ $$ $$| $$$$$$$$| $$
  | $$  | $$  $$$$   | $$   | $$__/   | $$__  $$| $$  $$$$| $$__  $$| $$
  | $$  | $$\  $$$   | $$   | $$      | $$  \ $$| $$\  $$$| $$  | $$| $$
 /$$$$$$| $$ \  $$   | $$   | $$$$$$$$| $$  | $$| $$ \  $$| $$  | $$| $$$$$$$$
|______/|__/  \__/   |__/   |________/|__/  |__/|__/  \__/|__/  |__/|________/
*****************************************************************************/

#internal-page-banner-panel
{
	width: 100%;
	height: 550px;
	margin: 0;
}

div#internal-page-banner-image-container,
div.internal-page-banner-image-container,
div#internal-page-banner-panel > div
{
	background-position: top center;
	background-repeat: no-repeat;
	background-attachment: fixed;
	width: 100%;
	height: 550px;
	margin: 0;
}

#internal-page-primary-panel
{
	background: url('/images/homepage-banner-shadow.png') top center no-repeat;
	padding: 46px 0 132px;
}

#internal-page-bottom-panel
{
	background-color: #ededed;
	padding: 88px 0;
}

.thin-lines-background
{
	background: url('/images/thin-lines-background.png') top center no-repeat;
}
.gray-background
{
	background-color: #ededed;
	max-width: 2000px;
	width: 100%;
	margin: 0 auto;
}
@media screen and (max-width: 1200px)
{
	#internal-page-banner-panel
	{
		background-position: bottom center;
		background-size: auto;
		background-attachment: scroll;
		height: 350px;
		margin: 0;
	}

	#internal-page-primary-panel
	{
		padding: 10% 0;
	}

	#internal-page-bottom-panel
	{
		padding: 8% 0 4% 0;
	}
}

/**********************************************************
 /$$$$$$$$ /$$$$$$   /$$$$$$  /$$$$$$$$ /$$$$$$$$ /$$$$$$$
| $$_____//$$__  $$ /$$__  $$|__  $$__/| $$_____/| $$__  $$
| $$     | $$  \ $$| $$  \ $$   | $$   | $$      | $$  \ $$
| $$$$$  | $$  | $$| $$  | $$   | $$   | $$$$$   | $$$$$$$/
| $$__/  | $$  | $$| $$  | $$   | $$   | $$__/   | $$__  $$
| $$     | $$  | $$| $$  | $$   | $$   | $$      | $$  \ $$
| $$     |  $$$$$$/|  $$$$$$/   | $$   | $$$$$$$$| $$  | $$
|__/      \______/  \______/    |__/   |________/|__/  |__/
**********************************************************/

#footer
{
	width: 100%;
	background-color: #161616;
	padding: 48px 0 68px 0;
}

.footer-top-padding
{
	padding-top: 35px;
}

p.footer-p
{
	font-family: 'latoregular', Arial, sans-serif;
	letter-spacing: 0.1em;
	font-size: 10.5pt;
	line-height: 1;
	padding: 0 0 6px 0;
	color: #ffffff;
}

a.footer-p-link:link,
a.footer-p-link:visited,
a.footer-p-link:active
{
	color: #ffffff;
}

a.footer-p-link:hover
{
	color: #00bce4;
}

p.footer-p-copyright
{
	font-family: 'latoregular', Arial, sans-serif;
	font-size: 10pt;
	line-height: 15pt;
	color: #cacaca;
}

a.footer-p-copyright-link:link,
a.footer-p-copyright-link:visited,
a.footer-p-copyright-link:active
{
	color: #cacaca;
}

a.footer-p-copyright-link:hover
{
	color: #00bce4;
}

@media screen and (max-width: 1200px)
{
	#footer
	{
		padding: 5% 0;
		text-align: center;
	}

	.footer-top-padding
	{
		padding-top: 20px;
	}

	.footer-social-top-mobile-padding
	{
		padding-top: 20px;
	}
	.mobile-padding
	{
		padding-bottom: 20px;
	}
}

/*********************************************************************************************
 /$$      /$$ /$$      /$$        /$$$$$$  /$$$$$$$$ /$$     /$$ /$$       /$$$$$$$$  /$$$$$$
| $$  /$ | $$| $$  /$ | $$       /$$__  $$|__  $$__/|  $$   /$$/| $$      | $$_____/ /$$__  $$
| $$ /$$$| $$| $$ /$$$| $$      | $$  \__/   | $$    \  $$ /$$/ | $$      | $$      | $$  \__/
| $$/$$ $$ $$| $$/$$ $$ $$      |  $$$$$$    | $$     \  $$$$/  | $$      | $$$$$   |  $$$$$$
| $$$$_  $$$$| $$$$_  $$$$       \____  $$   | $$      \  $$/   | $$      | $$__/    \____  $$
| $$$/ \  $$$| $$$/ \  $$$       /$$  \ $$   | $$       | $$    | $$      | $$       /$$  \ $$
| $$/   \  $$| $$/   \  $$      |  $$$$$$/   | $$       | $$    | $$$$$$$$| $$$$$$$$|  $$$$$$/
|__/     \__/|__/     \__/       \______/    |__/       |__/    |________/|________/ \______/
*********************************************************************************************/

p,
.ww_p
{
	font-family: 'latoregular', Arial, sans-serif;
	font-size: 12pt;
	line-height: 18pt;
	letter-spacing: 0.04em;
	font-weight: normal;
	color: #3f3f3f;
	margin: 0 !important;
	padding: 0;
}

.ww_p_double_space
{
   	font-family: 'latoregular', Arial, sans-serif;
	font-size: 12pt;
	font-weight: normal;
	letter-spacing: 0.04em;
	color: #3f3f3f;
	line-height: 2;
	margin: 0 !important;
	padding: 0;
}

.ww_p_alternate
{
	font-family: 'latoregular', Arial, sans-serif;
	font-size: 13.5pt;
	lin-height: 19.5pt;
	letter-spacing: 0.04em;
	font-weight: normal;
	color: #3f3f3f;
	margin: 0 !important;
	padding: 0;
}

.ww_p_call_out
{
	font-family: 'Montserrat-Light', Arial, sans-serif;
	font-size: 11.25pt;
	line-height: 16.5pt;
	letter-spacing: 0.04em;
	font-weight: normal;
	color: #5f5f5f;
	margin: 0 !important;
	padding: 0;
}

h1,
h1.ww_h1
{
	font-family: 'Montserrat-Bold', Arial, sans-serif;
	font-size: 27.75pt;
	font-weight: normal;
	letter-spacing: 0.04em;
	line-height: 1.2;
	color: #1e1e1e;
	margin: 0 0 5px 0 !important;
	padding: 0;
}

h2,
h2.ww_h2
{
	font-family: 'Montserrat-Bold', Arial, sans-serif;
	font-size: 27.75pt;
	font-weight: normal;
	letter-spacing: 0.04em;
	line-height: 1.2;
	color: #00bce4;
	margin: 0 0 5px 0 !important;
	padding: 0;
}

h3,
h3.ww_h3
{
	font-family: 'Montserrat-Bold', Arial, sans-serif;
	font-size: 20.25pt;
	font-weight: normal;
	letter-spacing: 0.04em;
	line-height: 1.2;
	color: #1e1e1e;
	margin: 0 0 5px 0 !important;
	padding: 0;
}

h4,
h4.ww_h4
{
	font-family: 'latoregular', Arial, sans-serif;
	font-size: 16.5pt;
	font-weight: normal;
	color: #3f3f3f;
	margin: 0 !important;
	padding: 0;
}

h5,
h5.ww_h5
{
	font-family: 'Montserrat-Bold', Arial, sans-serif;
	font-size: 15pt;
	font-weight: normal;
	letter-spacing: 0.04em;
	line-height: 1.2;
	color: #1e1e1e;
	margin: 0 0 5px 0 !important;
	padding: 0;
}

h6,
h6.ww_h6
{
	font-family: 'Montserrat', Arial, sans-serif;
	font-size: 12.75pt;
	font-weight: normal;
	color: #00bce4;
	margin: 0 !important;
	padding: 0;
}

.ww_emphasis
{
	font-family: 'Montserrat', Arial, sans-serif;
	font-size: 11.25pt;
	font-weight: normal;
	font-style: normal;
	color: #00bce4;
}

.ww_strong_emphasis
{
	font-family: 'Montserrat-Bold', Arial, sans-serif;
	font-size: 11.25pt;
	font-weight: bold;
	font-style: normal;
	color: #00bce4;
}

.ww_action_button1
{
	display: inline-block;
	font-family: 'Montserrat', Arial, sans-serif;
	font-size: 11.25pt;
	letter-spacing: 0.04em;
	font-weight: normal;
	font-style: normal !important;
	color: #ffffff !important;
	text-decoration: none !important;
	background-color: #161616;
	text-transform: uppercase;
	padding: 12px 44px;
	cursor: pointer;
	white-space: nowrap;
	transition: all 200ms;
	-webkit-tap-highlight-color: rgba(255,255,255,0);
}

a .ww_action_button1,
a .ww_action_button1:link,
a .ww_action_button1:visited,
.ww_action_button1 a:link,
.ww_action_button1 a:visited
{
	color: #ffffff;
	text-decoration: none !important;
}

.ww_action_button1:hover
{
	background-color: #343434;
}

.ww_action_button1:active
{
	background-color: #343434;
	transform: 	translate(0,2px)
 				scale(0.99, 0.99);
    box-shadow: inset 0 0 5px rgba(0,0,0,0.5);
}

.ww_action_button2
{
	display: inline-block;
	font-family: 'Montserrat', Arial, sans-serif;
	font-size: 11.25pt;
	letter-spacing: 0.04em;
	font-weight: normal;
	font-style: normal !important;
	color: #161616 !important;
	text-decoration: none !important;
	background-color: #ffffff;
	border: 3px solid #161616;
	text-transform: uppercase;
	padding: 9px 41px;
	cursor: pointer;
	white-space: nowrap;
	transition: all 200ms;
	-webkit-tap-highlight-color: rgba(255,255,255,0);
}

a .ww_action_button2,
a .ww_action_button2:link,
a .ww_action_button2:visited,
.ww_action_button2 a:link,
.ww_action_button2 a:visited
{
	color: #161616;
	text-decoration: none !important;
}

.ww_action_button2:hover
{
	background-color: #ededed;
	border: 3px solid #00bce4;
}

.ww_action_button2:active
{
	background-color: #ededed;
	border: 3px solid #00bce4;
	transform: 	translate(0,2px)
 				scale(0.99, 0.99);
    box-shadow: inset 0 0 5px rgba(0,0,0,0.5);
}

.ww_action_button3
{
	display: inline-block;
	font-family: 'Montserrat', Arial, sans-serif;
	font-size: 11.25pt;
	letter-spacing: 0.04em;
	font-weight: normal;
	font-style: normal !important;
	color: #ffffff !important;
	text-decoration: none !important;
	background-color: #00bce4;
	text-transform: uppercase;
	padding: 12px 44px;
	cursor: pointer;
	white-space: nowrap;
	transition: all 200ms;
	-webkit-tap-highlight-color: rgba(255,255,255,0);
}

a .ww_action_button3,
a .ww_action_button3:link,
a .ww_action_button3:visited,
.ww_action_button3 a:link,
.ww_action_button3 a:visited
{
	text-decoration: none !important;
}

.ww_action_button3:hover
{
	background-color: #00a1c3;
}

.ww_action_button3:active
{
	background-color: #00a1c3;
	transform: 	translate(0,2px)
 				scale(0.99, 0.99);
    box-shadow: inset 0 0 5px rgba(0,0,0,0.5);
}
.button-fixed-width
{
	width: 100%;
	max-width: 269px;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	padding-left: 0;
	padding-right: 0;
	margin-top: 5px;
	margin-bottom: 5px;
}

.ww_editor_body
{
	background-color: #FFFFFF;
}



.container img:not(.img-non-responsive),
.container-fluid img:not(.img-non-responsive)
{
	display: inline-block;
	max-width: 100%;
	height: auto !important;
	border: none;
}

.container ul li
{
	margin-bottom: 10px;
}

.vertical-padding-large
{
	padding-top: 80px;
	padding-bottom: 80px;
}

.vertical-padding-90
{
	padding-top: 90px;
	padding-bottom: 90px;
}

.vertical-padding-medium
{
	padding-top: 60px;
	padding-bottom: 60px;
}

.vertical-padding-small
{
	padding-top: 30px;
	padding-bottom: 30px;
}

@media screen and (max-width:992px)
{
	.vertical-padding-large
	{
		padding-top: 60px;
		padding-bottom: 60px;
	}

	.vertical-padding-medium
	{
		padding-top: 30px;
		padding-bottom: 30px;
	}
}

/* col-lg and below */
@media screen and (max-width:1200px)
{
	.mobile-left
	{
		float: none !important;
		clear: both !important;
		display: block !important;
		margin: 0 auto 0 0 !important;
		text-align: center!important;
	}

	.mobile-centered
	{
		float: none !important;
		clear: both !important;
		display: block !important;
		margin-left: auto !important;
		margin-right: auto !important;
		text-align: center !important;
	}

	.mobile-right
	{
		float: none !important;
		clear: both !important;
		display: block !important;
		margin: 0 0 0 auto !important;
		text-align: center !important;
	}

	.mobile-left-flex
	{
		float: none !important;
		clear: both !important;
		display: flex !important;
		margin: 0 auto 0 0 !important;
		text-align: center !important;
	}

	.mobile-centered-flex
	{
		float: none !important;
		clear: both;
		display: flex !important;
		margin: 0 auto;
		text-align: center;
	}

	.mobile-right-flex
	{
		float: none !important;
		clear: both;
		display: flex !important;
		margin: 0 0 0 auto;
		text-align: center;
	}
}

@media screen and (min-width: 1201px)
{
	.hide-on-desktop
	{
		display: none !important;
	}

	#header-mobile-only
	{
		display: none;
	}

    #desktop_search_button
	{
		font-family: font_awesome !important;
		text-decoration: none;
		padding: 2px;
		font-size: 15pt;
		background: transparent;
		border: none;
		color: #ffffff;
		margin-left: 13px;
	}

	#desktop_search_button:link,
	#desktop_search_button:visited
	{
		transition: all 200ms;
	}

	#desktop_search_button:active
	{
		transform: 	scale(0.85);
	}

	#desktop_search_button:hover
	{
		color: #00bce4 !important
	}

	#search_form
	{
		position: absolute;
		right: 70px;
        bottom: -52px;
	    z-index: 9999;
	}

	#search_form #search_field
	{
		width: 0;
		height: 100%;
		opacity: 0;
		padding: 8px 0;
		border: 0 solid #cccccc;
		border-radius: 3px;
		outline: none;
		background-color: #ffffff;
        border-radius: 3px;
        font-size: 12pt;
        color: #5a5a5a;
		box-shadow: 0 0 5px rgba(0,0,0,0.5);
        transition: all 200ms;
	}

	#search_form #search_field.open
	{
		width: 300px;
		opacity: 1;
		padding: 8px 15px;
		border: 1px solid #cccccc;
	}

	#search_form #search_field.closed
	{
		width: 0;
		opacity: 0;
		padding: 8px 0;
		border: 0 solid #cccccc;
	}

	#search_form #search_field:focus
	{
		background-color: #ffffff;
	}

    #search_form #search_field:hover
    {
        background-color: #f4f4f4;
    }
}

@media screen and (max-width: 1200px)
{
   	#mobile_search_button
	{
		position: absolute;
		top: 18px;
		right: 65px;
		font-family: font_awesome;
		font-size: 24px;
		text-decoration: none;
		color: #00bce4;
		border: none;
		background-color: transparent;
	}

    #search_form
    {
        position: fixed;
        top: 65px;
        left: 15px;
		height: 0;
        z-index: 999;
    }

    #search_form #search_field
    {
       	position: relative;
       	top: -65px;
       	height: 0;
		width: calc(100vw - 30px);
		opacity: 0;
		padding: 0 15px;
		border: 0 solid #cccccc;
		border-radius: 3px;
		outline: none;
		background-color: #ffffff;
		font-size: 12pt;
		box-shadow: 0 0 5px rgba(0,0,0,0.5);
		transition: all 200ms;
    }

    #search_form #search_field.open
	{
		transform: translateY(65px);
		height: 40px;
		opacity: 1;
		padding: 3px 15px;
		border: 1px solid #cccccc;
	}

	#search_form #search_field.closed
	{
		width: calc(100vw - 30px);
		opacity: 0;
		padding: 0 15px;
		border: 0 solid #cccccc;
	}

    #search_form #search_field:focus
    {
        background-color: #ffffff;
    }
}

/* Lightbox Styles */
.sl-overlay
{
	background: #000000 !important;
	opacity: 0.8 !important;
}

.sl-wrapper .sl-close
{
	font-size: 28pt !important;
	color: #ffffff !important;
}

.sl-wrapper .sl-counter
{
	font-size: 16pt !important;
	color: #ffffff !important;
}

.sl-wrapper .sl-navigation button.sl-prev,
.sl-wrapper .sl-navigation button.sl-next
{
	font-size: 30pt !important;
	color: #ffffff !important;
}

.sl-wrapper .sl-image .sl-caption
{
	font-size: 16pt !important;
}

.sl-wrapper .sl-image .description
{
	font-size: 12pt !important;
}

.sl-wrapper .sl-image .lightbox-link
{
	margin-top: 10px !important;
}

.sl-wrapper .sl-image a:link,
.sl-wrapper .sl-image a:active,
.sl-wrapper .sl-image a:visited
{
	font-size: 12pt !important;
}

@media screen and (max-width:1200px)
{
	.sl-wrapper .sl-close
	{
		right: 20px !important;
    	top: 80px !important;
	}
}

.background-image-wrapper
{
	width: 100%;
	max-width: 2000px;
	margin: 0 auto;
	background-size: cover;
}

.background-image-wrapper.forced-white-text
{
	background-color: #000000;
}

.forced-white-text *
{
	color: #ffffff !important;
}
