/*************************************************
 /$$$$$$$$  /$$$$$$  /$$   /$$ /$$$$$$$$  /$$$$$$
| $$_____/ /$$__  $$| $$$ | $$|__  $$__/ /$$__  $$
| $$      | $$  \ $$| $$$$| $$   | $$   | $$  \__/
| $$$$$   | $$  | $$| $$ $$ $$   | $$   |  $$$$$$
| $$__/   | $$  | $$| $$  $$$$   | $$    \____  $$
| $$      | $$  | $$| $$\  $$$   | $$    /$$  \ $$
| $$      |  $$$$$$/| $$ \  $$   | $$   |  $$$$$$/
|__/       \______/ |__/  \__/   |__/    \______/
**************************************************/
@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-display: block;
}

@font-face
{
    font-family: 'Source Sans 3';
    src: url('/fonts/SourceSans3-SemiBold.eot');
    src: url('/fonts/SourceSans3-SemiBold.eot?#iefix') format('embedded-opentype'),
        url('/fonts/SourceSans3-SemiBold.woff') format('woff'),
        url('/fonts/SourceSans3-SemiBold.ttf') format('truetype'),
        url('/fonts/SourceSans3-SemiBold.svg#SourceSans3-SemiBold') format('svg');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face
{
    font-family: 'Source Sans 3';
    src: url('/fonts/SourceSans3-Bold.eot');
    src: url('/fonts/SourceSans3-Bold.eot?#iefix') format('embedded-opentype'),
        url('/fonts/SourceSans3-Bold.woff') format('woff'),
        url('/fonts/SourceSans3-Bold.ttf') format('truetype'),
        url('/fonts/SourceSans3-Bold.svg#SourceSans3-Bold') format('svg');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face
{
    font-family: 'Source Sans 3';
    src: url('/fonts/SourceSans3-Regular.eot');
    src: url('/fonts/SourceSans3-Regular.eot?#iefix') format('embedded-opentype'),
        url('/fonts/SourceSans3-Regular.woff') format('woff'),
        url('/fonts/SourceSans3-Regular.ttf') format('truetype'),
        url('/fonts/SourceSans3-Regular.svg#SourceSans3-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face
{
    font-family: 'Gloock';
    src: url('/fonts/Gloock-Regular.eot');
    src: url('/fonts/Gloock-Regular.eot?#iefix') format('embedded-opentype'),
        url('/fonts/Gloock-Regular.woff') format('woff'),
        url('/fonts/Gloock-Regular.ttf') format('truetype'),
        url('/fonts/Gloock-Regular.svg#Gloock-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@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-display: swap;
}


/******************************************************************************************************************************
  /$$$$$$  /$$        /$$$$$$  /$$$$$$$   /$$$$$$  /$$              /$$$$$$  /$$$$$$$$ /$$     /$$ /$$       /$$$$$$$$  /$$$$$$
 /$$__  $$| $$       /$$__  $$| $$__  $$ /$$__  $$| $$             /$$__  $$|__  $$__/|  $$   /$$/| $$      | $$_____/ /$$__  $$
| $$  \__/| $$      | $$  \ $$| $$  \ $$| $$  \ $$| $$            | $$  \__/   | $$    \  $$ /$$/ | $$      | $$      | $$  \__/
| $$ /$$$$| $$      | $$  | $$| $$$$$$$ | $$$$$$$$| $$            |  $$$$$$    | $$     \  $$$$/  | $$      | $$$$$   |  $$$$$$
| $$|_  $$| $$      | $$  | $$| $$__  $$| $$__  $$| $$             \____  $$   | $$      \  $$/   | $$      | $$__/    \____  $$
| $$  \ $$| $$      | $$  | $$| $$  \ $$| $$  | $$| $$             /$$  \ $$   | $$       | $$    | $$      | $$       /$$  \ $$
|  $$$$$$/| $$$$$$$$|  $$$$$$/| $$$$$$$/| $$  | $$| $$$$$$$$      |  $$$$$$/   | $$       | $$    | $$$$$$$$| $$$$$$$$|  $$$$$$/
 \______/ |________/ \______/ |_______/ |__/  |__/|________/       \______/    |__/       |__/    |________/|________/ \______/
*******************************************************************************************************************************/
html
{
	margin: 0;
	padding: 0;
	width: 100%;
}

body
{
	margin: 0;
	padding: 0 !important;
	width: 100%;
	font-family: "Source Sans 3", sans-serif;
	font-size: 13pt;
	color: #000000;
	background-color: transparent !important;
}

.container img:not(.img-non-responsive),
.container-fluid img:not(.img-non-responsive)
{
	display: inline-block;
	max-width: 100%;
	height: auto !important;
	border: none;
}

a:link,
a:visited,
a:active,
a:hover
{
	color: #850037;
}

a:focus
{
	outline-offset: 2px;
}

input:focus,
textarea:focus,
select:focus
{
	outline: 1px solid #850037;
}

input[type="submit"]
{
	display: inline-flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
	font-family: "Source Sans 3", sans-serif;
	font-size: 12pt;
	font-weight: 600;
	font-style: normal !important;
	color: #ffffff !important;
	text-decoration: none !important;
	background-color: #850037;
	padding: 8px 15px;
	border: none;
	cursor: pointer;
	text-align: center;
	transition: all 0.2s;
	-webkit-tap-highlight-color: transparent;

	/*iPad Overrides*/
	border: none;
	-webkit-appearance: none;
}

input[type="submit"]:hover
{
	background-color: #a00043;
}

input[type="text"],
input[type="password"],
select,
option,
textarea
{
	font-family: "Source Sans 3", sans-serif;
	font-size: 13pt;
	color: #000000;
}

hr
{
	height: 1px;
	background-color: #d7d7d7;
	border: 0;
}

.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%;
}

div.container-max-width
{
	max-width: 1200px;
}

div.container-max-width-1575
{
	max-width: 1575px;
}

.embeddedContent[data-resizetype="responsive"],
.rem-responsive-16x9-video
{
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
}

.embeddedContent[data-resizetype="responsive"] iframe,
.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%;
}

.container ul
{
	padding-left: 20px;
}

.container ul li
{
	position: relative;
	list-style: none;
}

.container ul li::before
{
	content: '\2022';
	position: absolute;
    display: block;
    left: -20px;
	font-family: "Source Sans 3", sans-serif;
    color: #000000;
    font-size: 13pt;
    top: 0;
}

.vertical-padding-top-200
{
	padding-top: 200px;
}

.vertical-padding-top-185
{
	padding-top: 185px;
}

.vertical-padding-top-120
{
	padding-top: 120px;
}

.vertical-padding-top-60
{
	padding-top: 60px;
}

.vertical-padding-80
{
	padding-top: 80px;
	padding-bottom: 80px;
}

.vertical-padding-bottom-100
{
	padding-bottom: 100px;
}

.vertical-padding-bottom-80
{
	padding-bottom: 80px;
}

.vertical-padding-bottom-30
{
	padding-bottom: 30px;
}

.vertical-padding-bottom-15
{
	padding-bottom: 15px;
}

.vertical-padding-bottom-40
{
	padding-bottom: 40px;
}

.vertical-padding-large
{
	padding-top: 80px;
	padding-bottom: 80px;
}

.vertical-padding-medium
{
	padding-top: 60px;
	padding-bottom: 60px;
}

.vertical-padding-small
{
	padding-top: 30px;
	padding-bottom: 30px;
}

@media screen and (max-width:1200px)
{
	.vertical-padding-top-200
	{
		padding-top: 60px;
	}

	.vertical-padding-top-185
	{
		padding-top: 65px;
	}

	.vertical-padding-top-120
	{
		padding-top: 40px;
	}

	.vertical-padding-bottom-100
	{
		padding-bottom: 40px;
	}

	.vertical-padding-80
	{
		padding-top: 40px;
		padding-bottom: 40px;
	}

	.vertical-padding-bottom-80
	{
		padding-bottom: 40px;
	}

	.vertical-padding-large
	{
		padding-top: 40px;
		padding-bottom: 40px;
	}

	.vertical-padding-medium
	{
		padding-top: 30px;
		padding-bottom: 30px;
	}
}

@media screen and (max-width:992px)
{
	.md-centered
	{
		float: none !important;
		clear: both !important;
		display: block !important;
		margin-left: auto !important;
		margin-right: auto !important;
		text-align: center !important;
	}
}

@media screen and (max-width:1500px)
{
	.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: 1501px)
{
	.hide-on-desktop
	{
		display: none !important;
	}

	#header-mobile-only
	{
		display: none;
	}

	#desktop_search_button:link,
	#desktop_search_button:visited
	{
		text-decoration: none;
		/* margin-right: 25px;
		margin-left: 50px; */
		background-image: url("/images/search.svg");
		background-size: cover;
		width: 27px;
		height: 27px;
		margin-right: 15px;
		margin-left: 11px;
	}

	#desktop_search_button.active
	{
		background-image: url("/images/close.svg");
	}

	#search_form
	{
		position: relative;
		/* right: 320px; */
	    z-index: 9999;
		/* width: 258px;
		margin-right: 21px; */
	}

	#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-family: 'lato_regular', sans-serif;
        font-size: 12pt;
        color: #5a5a5a;
		box-shadow: 0 0 5px rgba(0,0,0,0.5);
        transition: all 200ms;
		/* width: 100%;
		height: 0;
		padding: 0 12px 0 12px;
		border: none;
		border-bottom: 1px solid #ffffff;
		outline: none;
		background-color: #ffffff;
		font-family: "Source Sans 3", sans-serif;
        font-size: 12pt;
        color: #212121;
		pointer-events: none;
        transition: all 200ms; */
	}

	#search_form #search_field.closed
	{
		width: 0;
		opacity: 0;
		padding: 8px 0;
		border: 0 solid #cccccc;
		/* height: 0;
		padding: 0 12px 0 12px;
		pointer-events: none; */
	}

	#search_form #search_field:focus,
	#search_form #search_field.open
	{
		width: 300px;
		opacity: 1;
		padding: 8px 15px;
		border: 1px solid #cccccc;
		margin-left: 30px;

		/* pointer-events: all;
		height: 44px;
		padding: 5px 12px 4px 12px; */
	}

	#search_form #search_field:focus
	{
		background-color: #ffffff;
	}

    #search_form #search_field:hover
    {
        background-color: #f4f4f4;
    }
}

/* @media screen and (max-width:1700px)
{
	#search_form
	{
		width: 170px;
	}
} */

@media screen and (max-width: 1500px)
{
	.hide-on-mobile
	{
		display: none !important;
	}

	#block_output_container
	{
		margin-top: 60px;
	}

	div#header-mobile-only #mobile-header-logo
	{
		display: inline-block;
		margin-left: 15px;
		margin-top: 7px;
		height: 50px;
		max-width: 46vw;
	}

	div#header-mobile-only #mobile-header-logo img
	{
		width: 100%;
	}

	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;
	}

	#header-mobile-only .icon-container
	{
		position: absolute;
		top: 15px;
		right: 100px;
		display: flex;
	}

	#header-mobile-only .icon-container > a
	{
		margin-right: 15px;
	}

	#header-mobile-only .icon-container > a:last-of-type
	{
		margin-right: 0;
	}

	#mobile_account_link
	{
		font-size: 17pt;
		color: #000000;
	}

	#mobile_view_quote_link
	{
		font-size: 17pt;
		color: #000000;
	}

   	#mobile_search_button:link,
	#mobile_search_button:active,
	#mobile_search_button:visited,
	#mobile_search_button:hover
	{
		position: absolute;
		top: 20px;
		right: 65px;
		text-decoration: none;
		background-image: url("/images/search-dark.svg");
		background-size: cover;
		width: 20px;
		height: 20px;
	}

	#mobile_search_button.active
	{
		background-image: url("/images/close-dark.svg");
	}

    #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;
		outline: none;
		background-color: #ffffff;
		font-family: arial;
		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;
    }
}

@media screen and (max-width:380px)
{
	div#header-mobile-only #mobile-header-logo
	{
		width: 230px;
	}
}

/* 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;
}

/**********************************************************
 /$$   /$$ /$$$$$$$$  /$$$$$$  /$$$$$$$  /$$$$$$$$ /$$$$$$$
| $$  | $$| $$_____/ /$$__  $$| $$__  $$| $$_____/| $$__  $$
| $$  | $$| $$      | $$  \ $$| $$  \ $$| $$      | $$  \ $$
| $$$$$$$$| $$$$$   | $$$$$$$$| $$  | $$| $$$$$   | $$$$$$$/
| $$__  $$| $$__/   | $$__  $$| $$  | $$| $$__/   | $$__  $$
| $$  | $$| $$      | $$  | $$| $$  | $$| $$      | $$  \ $$
| $$  | $$| $$$$$$$$| $$  | $$| $$$$$$$/| $$$$$$$$| $$  | $$
|__/  |__/|________/|__/  |__/|_______/ |________/|__/  |__/
***********************************************************/
@media screen and (max-width: 1500px)
{
	body header
	{
		position: relative;
		z-index: 10;
	}

	#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;
	}

	#header-desktop #menu-builder-header-nav .red-button
	{
		display: none;
	}
}

@media screen and (min-width: 1501px)
{
	body header
	{
		position: sticky;
		top: 0;
		/* margin-top: 10px; */
		z-index: 100;
	}

	#header-desktop
	{
		position: relative;
		width: 100%;
		max-width: 1975px;
		margin: 0 auto;
		transition: background 200ms;
	}

	body.fully-loaded #header-desktop
	{
		/* background: #0c0c0c; */
		background: linear-gradient(180deg, #000000, transparent);
		/* background: linear-gradient(180deg, rgba(84, 84, 84, 0), rgba(88, 88, 88, 0), rgba(97, 97, 97, 0), rgba(113, 113, 113, 0), rgba(132, 132, 132, 0), rgba(154, 154, 154, 0), rgba(177, 177, 177, 0), rgba(200, 200, 200, 0), rgba(221, 221, 221, 0), rgba(239, 239, 239, 0), rgba(251, 251, 251, 0), rgba(255, 255, 255, 0)); */
	}

	#header-desktop::before
	{
		content: "";
		position: absolute;
		z-index: -1;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		opacity: 0;
		background: linear-gradient(180deg, #000000, transparent);
		transition: opacity 200ms;
	}

	body.fully-loaded.not-at-top #header-desktop::before
	{
		opacity: 1;
	}
	body.fully-loaded.not-at-top #header-desktop
	{
		background: transparent;
	}

	#header-desktop > .top-row
	{
		display: flex;
		justify-content: flex-end;
		align-items: center;
		width: calc(100% - 145px);
		max-width: 1945px;
		padding-top: 25px;
		/* margin: 0 auto 11px auto; */
	}

	#header-desktop > .top-row p
	{
		letter-spacing: 2px;
	}

	#header-desktop > .top-row .additional-links
	{
		font-family: "Source Sans 3", sans-serif;
		font-weight: normal;
		color: #ffffff;
		text-decoration: none;
		margin-left: 37px;
	}

	#header-desktop > .top-row .additional-links i
	{
		transition: transform 200ms;
	}

	#header-desktop > .top-row .additional-links:hover i
	{
		transform: translateY(-3px);
	}

	#header-desktop > .bottom-row
	{
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: calc(100% - 258px);
		max-width: 1945px;
		margin: 0 auto;
		padding-bottom: 25px;
	}

	#header-desktop #menu-builder-header-nav
	{
		position: relative;
		display: flex;
		align-items: center;
	}

	#header-desktop #menu-builder-header-nav .red-button:link,
	#header-desktop #menu-builder-header-nav .red-button:visited
	{
		display: flex;
		justify-content: center;
		align-items: center;
		text-align: center;
		font-family: "Source Sans 3", sans-serif;
		font-size: 14pt;
		font-weight: 600;
		color: #850037;
		background: rgba(255, 255, 255, 0.7);
		height: 44px;
		padding: 0 15px;
		text-decoration: none;
		transition: background-color 200ms;
		margin-right: 25px;
	}

	.cke_editable.red-button
	{
		background: #767475;
	}


	#header-desktop #menu-builder-header-nav .red-button img
	{
		margin-right: 8px;
		transition: transform 200ms;
	}

	#header-desktop #menu-builder-header-nav .red-button:hover img
	{
		transform: translateX(3px);
	}

	#header-desktop #menu-builder-header-nav .red-button:hover
	{
		background-color: #850037;
		color: #ffffff;
	}
}

@media screen and (max-width:1600px)
{
	#header-desktop > .top-row,
	#header-desktop > .bottom-row
	{
		width: calc(100% - 20px);
	}
}

/**********************************************************
 /$$$$$$$$ /$$$$$$   /$$$$$$  /$$$$$$$$ /$$$$$$$$ /$$$$$$$
| $$_____//$$__  $$ /$$__  $$|__  $$__/| $$_____/| $$__  $$
| $$     | $$  \ $$| $$  \ $$   | $$   | $$      | $$  \ $$
| $$$$$  | $$  | $$| $$  | $$   | $$   | $$$$$   | $$$$$$$/
| $$__/  | $$  | $$| $$  | $$   | $$   | $$__/   | $$__  $$
| $$     | $$  | $$| $$  | $$   | $$   | $$      | $$  \ $$
| $$     |  $$$$$$/|  $$$$$$/   | $$   | $$$$$$$$| $$  | $$
|__/      \______/  \______/    |__/   |________/|__/  |__/
**********************************************************/
body > footer
{
	/* width: calc(100% - 20px); */
	max-width: 2000px;
	margin: 30px auto 0 auto;
	padding: 20px 0;
	border-top: 1px solid #D1D1D1;
}

body > footer .container-fluid > .row:first-of-type
{
    max-width: 1320px;
    margin: 0 auto;
}


/*********************************************************************************************
 /$$      /$$ /$$      /$$        /$$$$$$  /$$$$$$$$ /$$     /$$ /$$       /$$$$$$$$  /$$$$$$
| $$  /$ | $$| $$  /$ | $$       /$$__  $$|__  $$__/|  $$   /$$/| $$      | $$_____/ /$$__  $$
| $$ /$$$| $$| $$ /$$$| $$      | $$  \__/   | $$    \  $$ /$$/ | $$      | $$      | $$  \__/
| $$/$$ $$ $$| $$/$$ $$ $$      |  $$$$$$    | $$     \  $$$$/  | $$      | $$$$$   |  $$$$$$
| $$$$_  $$$$| $$$$_  $$$$       \____  $$   | $$      \  $$/   | $$      | $$__/    \____  $$
| $$$/ \  $$$| $$$/ \  $$$       /$$  \ $$   | $$       | $$    | $$      | $$       /$$  \ $$
| $$/   \  $$| $$/   \  $$      |  $$$$$$/   | $$       | $$    | $$$$$$$$| $$$$$$$$|  $$$$$$/
|__/     \__/|__/     \__/       \______/    |__/       |__/    |________/|________/ \______/
*********************************************************************************************/
p,
.ww_p
{
	font-family: "Source Sans 3", sans-serif;
	font-size: 13pt;
	color: #000000;
	font-weight: normal;
	line-height: 20pt;
	margin: 0;
	padding: 0;
}

.ww_p em
{
	position: relative;
	font-style: normal;
	padding-left: 44px;
}

.ww_p em::before
{
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 31px;
	height: 1px;
	background-color: #000000;
}

.ww_p_double_space
{
	font-family: "Source Sans 3", sans-serif;
	font-size: 13pt;
	color: #000000;
	font-weight: normal;
	line-height: 28pt;
	margin: 0;
	padding: 0;
}

.ww_p_alternate
{
	font-family: "Source Sans 3", sans-serif;
	font-size: 14pt;
	color: #000000;
	font-weight: normal;
	line-height: 23pt;
	margin: 0;
	padding: 0;
}

.ww_p_call_out
{
	font-family: "Montserrat", sans-serif;
	font-size: 23pt;
	font-weight: normal;
	color: #212121;
	line-height: 30pt;
	margin: 0;
	padding: 0;
}

.ww_p_call_out strong
{
	font-family: "Gloock", serif;
	font-size: 21pt;
	color: #000000;
}

h1,
h1.ww_h1
{
	font-family: "Gloock", serif;
	font-size: 36pt;
	font-weight: normal;
	color: #212121;
	margin: 0 0 30px 0;
	padding: 0;
}

h2,
h2.ww_h2
{
	font-family: "Gloock", serif;
	font-size: 27pt;
	font-weight: normal;
	color: #212121;
	margin: 0 0 20px 0;
	padding: 0 0 20px 0;
}

h2.ww_h2 strong
{
	font-family: "Montserrat", sans-serif !important;
	font-size: 23pt !important;
	font-weight: normal !important;
	line-height: 30pt !important;
}

h2.ww_h2 em
{
	position: relative;
	font-style: normal;
	text-decoration: none;
}

h2.ww_h2 em::before
{
	content: "";
	position: absolute;
	bottom: -20px;
	left: 50%;
	transform: translateX(-50%);
	width: 35px;
	height: 1px;
	background-color: #000000;
}

h3,
h3.ww_h3
{
	font-family: "Montserrat", sans-serif;
	font-size: 23pt;
	font-weight: normal;
	color: #212121;
	margin: 0 0 15px 0;
	padding: 0;
}

h4,
h4.ww_h4
{
	font-family: "Gloock", serif;
	font-size: 20pt;
	font-weight: normal;
	color: #212121;
	margin: 0;
	padding: 0;
}

h5,
h5.ww_h5
{
	font-family: "Montserrat", sans-serif;
	font-size: 18pt;
	font-weight: normal;
	color: #212121;
	margin: 0;
	padding: 0;
}

h6,
h6.ww_h6
{
	font-family: "Gloock", serif;
	font-size: 19pt;
	font-weight: normal;
	color: #212121;
	margin: 0;
	padding: 0;
}

.ww_emphasis
{
	font-weight: bold;
	font-style: normal;
}

.ww_strong_emphasis
{
	font-weight: bold;
	font-style: italic;
}

.ww_action_button1
{
	display: inline-flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
	font-family: "Source Sans 3", sans-serif;
	font-size: 12pt;
	font-weight: 600;
	font-style: normal !important;
	color: #ffffff !important;
	text-decoration: none !important;
	background-color: #850037;
	padding: 8px 15px;
	border: none;
	cursor: pointer;
	text-align: center;
	transition: all 0.2s;
	-webkit-tap-highlight-color: transparent;
}

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: #a00043;
}

.ww_action_button2
{
	display: inline-flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
	font-family: "Source Sans 3", sans-serif;
	font-size: 12pt;
	font-weight: 600;
	font-style: normal !important;
	color: #111111 !important;
	text-decoration: none !important;
	background-color: #E0E0E0;
	padding: 8px 15px;
	border: none;
	cursor: pointer;
	text-align: center;
	transition: all 0.2s;
	-webkit-tap-highlight-color: transparent;
}

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: #111111;
	text-decoration: none !important;
}

.ww_action_button2:hover
{
	background-color: #b9b9b9;
}

.ww_action_button3
{
	display: inline-flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
	font-family: "Source Sans 3", sans-serif;
	font-size: 12pt;
	font-weight: 600;
	font-style: normal !important;
	color: #ffffff !important;
	text-decoration: none !important;
	background-color: #2C2C2C;
	padding: 8px 15px;
	border: none;
	cursor: pointer;
	text-align: center;
	transition: all 0.2s;
	-webkit-tap-highlight-color: transparent;
}

a .ww_action_button3,
a .ww_action_button3:link,
a .ww_action_button3:visited,
.ww_action_button3 a:link,
.ww_action_button3 a:visited
{
	color: #ffffff;
	text-decoration: none !important;
}

.ww_action_button3:hover
{
	background-color: #3f3f3f;
}


.ww_editor_body
{
	background-color: #FFFFFF;
}


/*********************************************************************
  /$$$$$$   /$$$$$$  /$$   /$$ /$$$$$$$$ /$$$$$$$$ /$$   /$$ /$$$$$$$$
 /$$__  $$ /$$__  $$| $$$ | $$|__  $$__/| $$_____/| $$$ | $$|__  $$__/
| $$  \__/| $$  \ $$| $$$$| $$   | $$   | $$      | $$$$| $$   | $$
| $$      | $$  | $$| $$ $$ $$   | $$   | $$$$$   | $$ $$ $$   | $$
| $$      | $$  | $$| $$  $$$$   | $$   | $$__/   | $$  $$$$   | $$
| $$    $$| $$  | $$| $$\  $$$   | $$   | $$      | $$\  $$$   | $$
|  $$$$$$/|  $$$$$$/| $$ \  $$   | $$   | $$$$$$$$| $$ \  $$   | $$
 \______/  \______/ |__/  \__/   |__/   |________/|__/  \__/   |__/
*********************************************************************/
#header_contact_container
{
	display: flex;
	justify-content: flex-end;
	align-items: center;
}

#header_contact_container a
{
	font-family: "Source Sans 3", sans-serif;
	font-weight: normal;
	color: #ffffff;
	margin-right: 37px;
}

#header_contact_container a:last-of-type
{
	margin-right: 0;
}

.cke_editable #header_contact_container
{
	background-color: #11110F;
}

#footer_contact_container
{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	width: 100%;
}

@media screen and (max-width:1500px)
{
	#footer_contact_container
	{
		margin: 0 auto;
	}
}

@media screen and (max-width:1200px)
{
	#footer_contact_container
	{
		flex-flow: column nowrap;
		justify-content: flex-start;
		align-items: center;
		text-align: center;
		max-width: 100%;
	}
}

#footer_contact_container h2
{
	font-size: 15pt;
	margin-bottom: 10px;
	padding-bottom: 0;
}

@media screen and (max-width:992px)
{
	#footer_contact_container h2
	{
		margin-top: 10px;
	}

	#footer_contact_container .col-md-2 h2,
	#footer_contact_container .col-md-3 h2
	{
		margin-top: 15px;
	}
}

#footer_contact_container a,
#footer_contact_container p
{
	font-family: "Source Sans 3", sans-serif;
	font-size: 12pt;
	color: #606060;
	text-decoration: none;
}

#footer_contact_container a:hover
{
	color: #850037;
}

#footer_copyright_container
{
	border-top: 1px solid #D1D1D1;
	margin-top: 15px;
	padding-top: 15px;
	text-align: center;
}

#footer_copyright_container .spacer
{
	display: inline-block;
	margin: 0 15px;
}

@media screen and (max-width:1440px)
{
	#footer_copyright_container .spacer
	{
		display: block;
	}
}

#footer_copyright_container .additional-links
{
	display: inline-flex;
}

@media screen and (max-width:480px)
{
	#footer_copyright_container .additional-links
	{
		display: flex;
		flex-flow: column nowrap;
		justify-content: flex-start;
	}
}

#footer_copyright_container .additional-links a
{
	margin-right: 25px;
}

@media screen and (max-width:480px)
{
	#footer_copyright_container .additional-links a
	{
		margin-right: 0;
		margin-bottom: 15px;
	}
}

#footer_copyright_container .additional-links a:last-of-type
{
	margin-right: 0;
}

#footer_copyright_container,
#footer_copyright_container a:link,
#footer_copyright_container a:active,
#footer_copyright_container a:visited
{
	font-family: "Source Sans 3", sans-serif;
	font-size: 13pt;
	font-weight: normal;
	color: #606060;
	text-decoration: none;
	transition: color 150ms;
}

#footer_copyright_container a:hover
{
	color: #860038;
}

#floating_homestead_logo
{
    position: absolute;
    top: -184px;
    right: -120px;
}

@media screen and (max-width:1500px)
{
	#floating_homestead_logo
	{
		right: 0;
	}
}

@media screen and (max-width:1200px)
{
	#floating_homestead_logo
	{
		display: none;
	}
}

.padded-shadow-link:link,
.padded-shadow-link:active,
.padded-shadow-link:visited
{
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
	align-items: center;
	height: 263px;
	padding: 15px;
	margin-top: 25px;
	text-decoration: none;
	transition: all 200ms;
}

.padded-shadow-link:hover,
.padded-shadow-link:focus
{
	box-shadow: 0 0 20px rgba(0,0,0,0.6);
}

.padded-shadow-link img
{
	margin-bottom: 12px;
}

.padded-shadow-link .caption
{
	font-family: "Gloock", serif;
	font-size: 21pt;
	font-weight: normal;
	color: #000000;
	margin-bottom: 12px;
}

.padded-shadow-link .description
{
	color: #1f1f1f;
}

.narrow-well .row [class^="col-"]
{
	padding-left: 5px;
	padding-right: 5px;
}

.solution-image-link:link,
.solution-image-link:active,
.solution-image-link:visited
{
	position: relative;
	display: block;
	height: 500px;
	text-decoration: none;
	background-color: #302e2b;
	overflow: hidden;
}

@media screen and (max-width:1200px)
{
	.solution-image-link:link,
	.solution-image-link:active,
	.solution-image-link:visited
	{
		margin-top: 10px;
	}
}

.solution-image-link::before
{
	content: "";
	position: absolute;
	z-index: 2;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #000000;
	opacity: 0;
	transition: opacity 250ms ease-out;
}

.solution-image-link:hover::before,
.solution-image-link:focus::before
{
	opacity: 0.5;
}

@media screen and (max-width:768px)
{
	.solution-image-link::before
	{
		opacity: 0.5;
	}
}

.cke_editable .solution-image-link::before
{
	display: none;
}

.solution-image-link img.background
{
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100% !important;
	max-width: 387px;
	height: 100% !important;
	max-width: none !important;
	margin: 0 auto;
	object-fit: cover;
}

.solution-image-link .overlay-container
{
	position: absolute;
	z-index: 3;
	top: 50%;
	left: 0;
	width: 100%;
	padding: 0 40px 70px 40px;
	display: flex;
	flex-flow: column nowrap;
	justify-content: flex-start;
	align-items: center;
	text-align: center;
	transition: top 250ms ease-out;
}

@media screen and (min-width:768px)
{
	.solution-image-link:hover .overlay-container,
	.solution-image-link:focus .overlay-container
	{
		top: 18%;
	}
}

@media screen and (max-width:768px)
{
	.solution-image-link .overlay-container
	{
		position: absolute;
		z-index: 3;
		top: 0;
		left: 0;
		width: 100%;
		padding: 20px;
		display: flex;
		flex-flow: column nowrap;
		justify-content: center;
		align-items: center;
		text-align: center;
		transition: top 250ms ease-out;
		height: 100%;
	}
}

.solution-image-link .overlay-container .caption
{
	position: relative;
	font-family: "Gloock", serif;
	font-size: 21pt;
	font-weight: normal;
	color: #ffffff;
	padding-bottom: 35px;
	margin-bottom: 35px;
}

.solution-image-link .overlay-container .caption::after
{
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 31px;
	height: 1px;
	background-color: #ffffff;
}

.solution-image-link .overlay-container .description
{
	font-size: 14pt;
	color: #ffffff;
	opacity: 1;
	transition: opacity 250ms ease-out;
}

@media screen and (min-width:768px)
{
	.solution-image-link .overlay-container .description
	{
		opacity: 0;
	}

	.solution-image-link:hover .overlay-container .description,
	.solution-image-link:focus .overlay-container .description
	{
		opacity: 1;
	}
}

.solution-image-link .overlay-container .link
{
	position: relative;
	font-weight: 600;
	color: #ffffff;
	margin-top: 30px;
	opacity: 1;
	transition: opacity 250ms ease-out;
}

.solution-image-link .overlay-container .link::after
{
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background-color: #ffffff;
}

@media screen and (min-width:768px)
{
	.solution-image-link .overlay-container .link
	{
		opacity: 0;
	}

	.solution-image-link:hover .overlay-container .link,
	.solution-image-link:focus .overlay-container .link
	{
		opacity: 1;
	}
}

.large-image-link:link,
.large-image-link:active,
.large-image-link:visited
{
	position: relative;
	display: block;
	height: 500px;
	text-decoration: none;
	background-color: #37342d;
	overflow: hidden;
}

@media screen and (max-width:992px)
{
	.large-image-link:link,
	.large-image-link:active,
	.large-image-link:visited
	{
		margin-bottom: 10px;
	}
}

.large-image-link img.background
{
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100% !important;
	max-width: 387px;
	height: 100% !important;
	max-width: none !important;
	margin: 0 auto;
	object-fit: cover;
}

.large-image-link::before
{
	content: "";
	position: absolute;
	z-index: 2;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #000000;
	opacity: 0;
	transition: opacity 250ms ease-out;
}

.large-image-link:hover::before,
.large-image-link:focus::before
{
	opacity: 0.5;
}

.cke_editable .large-image-link::before
{
	display: none;
}

.large-image-link .overlay-container
{
	position: absolute;
	z-index: 3;
	bottom: 0;
	right: 0;
	padding: 30px 50px;
	display: flex;
	flex-flow: column nowrap;
	justify-content: flex-end;
	align-items: flex-end;
}

.large-image-link .overlay-container .caption
{
	font-family: "Gloock", serif;
	font-size: 21pt;
	font-weight: normal;
	color: #ffffff;
}

.large-image-link .overlay-container .description
{
	font-family: "Montserrat", sans-serif;
	font-size: 16pt;
	font-weight: normal;
	color: #ffffff;
}

.flex-container
{
	display: flex;
}

@media screen and (max-width:768px)
{
	.flex-container.responsive
	{
		flex-flow: column nowrap;
		align-items: center;
	}
}

.flex-container .small-image-link
{
	margin-right: 30px;
	margin-bottom: 30px;
}

@media screen and (max-width:768px)
{
	.flex-container .small-image-link
	{
		margin-right: 0;
	}
}

.flex-container .small-image-link:last-of-type
{
	margin-right: 0;
}

.small-image-link:link,
.small-image-link:active,
.small-image-link:visited
{
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	width: 225px;
	max-width: 100%;
	text-decoration: none;
	height: 149px;
	background-color: #302e2b;
	overflow: hidden;
}

@media screen and (max-width:768px)
{
	.flex-container .small-image-link
	{
		width: 100%;
	}
}

.small-image-link img
{
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	object-fit: cover;
}

.small-image-link::before
{
	content: "";
	position: absolute;
	z-index: 2;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #000000;
	opacity: 0.4;
	transition: opacity 200ms;
}

.small-image-link:hover::before
{
	opacity: 0.7;
}

.small-image-link span
{
	position: relative;
	z-index: 3;
	font-family: "Source Sans 3", sans-serif;
    font-weight: bold;
    font-size: 20pt;
	color: #ffffff;
}

.custom-breadcrumb
{
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	padding-left: 0 !important;
}

.custom-breadcrumb li
{
	margin-bottom: 15px;
	margin-right: 15px;
}

.custom-breadcrumb li::before
{
	display: none !important;
}

@media screen and (max-width:1200px)
{
	.custom-breadcrumb
	{
		overflow: auto;
		flex-flow: row nowrap;
		justify-content: flex-start;
	}

	.custom-breadcrumb li
	{
		white-space: nowrap;
		margin-right: 15px;
		margin-bottom: 0;
	}
}

.flex-button-container
{
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
}

.flex-button-container > em,
.flex-button-container > a
{
	margin-right: 15px;
	margin-left: 15px;
	margin-bottom: 15px;
}

@media screen and (max-width:480px)
{
	.flex-button-container > em,
	.flex-button-container > a
	{
		margin-right: 7px;
		margin-left: 7px;
		margin-bottom: 7px;
		padding: 5px 7px !important;
		font-size: 10pt !important;
	}
}

.accordion h2
{
	font-size: 17.333px !important;
	padding: .5em .5em .5em 2em !important;
}

.ui-accordion-header::before
{
	content: "\f067";
	font-family: "font_awesome";
	position: absolute;
	left: 15px;
}

.ui-accordion-header.ui-accordion-header-collapsed::before
{
	content: "\f067";
}

.ui-accordion-header.ui-accordion-header-active::before
{
	content: "\f068";
}
