/*************************************************
 /$$$$$$$$  /$$$$$$  /$$   /$$ /$$$$$$$$  /$$$$$$
| $$_____/ /$$__  $$| $$$ | $$|__  $$__/ /$$__  $$
| $$      | $$  \ $$| $$$$| $$   | $$   | $$  \__/
| $$$$$   | $$  | $$| $$ $$ $$   | $$   |  $$$$$$
| $$__/   | $$  | $$| $$  $$$$   | $$    \____  $$
| $$      | $$  | $$| $$\  $$$   | $$    /$$  \ $$
| $$      |  $$$$$$/| $$ \  $$   | $$   |  $$$$$$/
|__/       \______/ |__/  \__/   |__/    \______/
**************************************************/
@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: 'Roboto';
    src: url('/fonts/Roboto-Regular.eot');
    src: url('/fonts/Roboto-Regular.eot?#iefix') format('embedded-opentype'),
        url('/fonts/Roboto-Regular.woff') format('woff'),
        url('/fonts/Roboto-Regular.ttf') format('truetype'),
        url('/fonts/Roboto-Regular.svg#Roboto-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Roboto_medium';
    src: url('/fonts/Roboto-Medium.eot');
    src: url('/fonts/Roboto-Medium.eot?#iefix') format('embedded-opentype'),
        url('/fonts/Roboto-Medium.woff') format('woff'),
        url('/fonts/Roboto-Medium.ttf') format('truetype'),
        url('/fonts/Roboto-Medium.svg#Roboto-Medium') format('svg');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Roboto_light';
    src: url('/fonts/Roboto-Light.eot');
    src: url('/fonts/Roboto-Light.eot?#iefix') format('embedded-opentype'),
        url('/fonts/Roboto-Light.woff') format('woff'),
        url('/fonts/Roboto-Light.ttf') format('truetype'),
        url('/fonts/Roboto-Light.svg#Roboto-Light') format('svg');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Roboto_semibold';
    src: url('/fonts/Roboto-SemiBold.eot');
    src: url('/fonts/Roboto-SemiBold.eot?#iefix') format('embedded-opentype'),
        url('/fonts/Roboto-SemiBold.woff') format('woff'),
        url('/fonts/Roboto-SemiBold.ttf') format('truetype'),
        url('/fonts/Roboto-SemiBold.svg#Roboto-SemiBold') format('svg');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}



@font-face {
    font-family: 'Roboto_Condensed_bold';
    src: url('/fonts/RobotoCondensed-Bold.eot');
    src: url('/fonts/RobotoCondensed-Bold.eot?#iefix') format('embedded-opentype'),
        url('/fonts/RobotoCondensed-Bold.woff') format('woff'),
        url('/fonts/RobotoCondensed-Bold.ttf') format('truetype'),
        url('/fonts/RobotoCondensed-Bold.svg#RobotoCondensed-Bold') format('svg');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

/******************************************************************************************************************************
  /$$$$$$  /$$        /$$$$$$  /$$$$$$$   /$$$$$$  /$$              /$$$$$$  /$$$$$$$$ /$$     /$$ /$$       /$$$$$$$$  /$$$$$$
 /$$__  $$| $$       /$$__  $$| $$__  $$ /$$__  $$| $$             /$$__  $$|__  $$__/|  $$   /$$/| $$      | $$_____/ /$$__  $$
| $$  \__/| $$      | $$  \ $$| $$  \ $$| $$  \ $$| $$            | $$  \__/   | $$    \  $$ /$$/ | $$      | $$      | $$  \__/
| $$ /$$$$| $$      | $$  | $$| $$$$$$$ | $$$$$$$$| $$            |  $$$$$$    | $$     \  $$$$/  | $$      | $$$$$   |  $$$$$$
| $$|_  $$| $$      | $$  | $$| $$__  $$| $$__  $$| $$             \____  $$   | $$      \  $$/   | $$      | $$__/    \____  $$
| $$  \ $$| $$      | $$  | $$| $$  \ $$| $$  | $$| $$             /$$  \ $$   | $$       | $$    | $$      | $$       /$$  \ $$
|  $$$$$$/| $$$$$$$$|  $$$$$$/| $$$$$$$/| $$  | $$| $$$$$$$$      |  $$$$$$/   | $$       | $$    | $$$$$$$$| $$$$$$$$|  $$$$$$/
 \______/ |________/ \______/ |_______/ |__/  |__/|________/       \______/    |__/       |__/    |________/|________/ \______/
*******************************************************************************************************************************/
html
{
	margin: 0;
	padding: 0;
	width: 100%;
}

body
{
	margin: 0;
	padding: 0 !important;
	width: 100%;
    font-family: 'Roboto_light', sans-serif;
	font-size: 14pt;
	color: #2D2D2D;
	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
{
    font-family: 'Roboto_medium', sans-serif;
	color: #9F0000;
}

a:hover
{
	color: #cc0000;
}

a:focus
{
	outline-offset: 2px;
}

input:focus,
textarea:focus,
select:focus
{
	outline: 1px solid #9F0000;
}

input[type="submit"]
{
	display: inline-flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
    font-family: 'Roboto_semibold', sans-serif;
	font-size: 14pt;
	font-weight: normal;
	font-style: normal !important;
	color: #ffffff !important;
	text-decoration: none !important;
	background-color: #BF0000;
	padding: 6px 20px;
	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: #9F0000;
}

input[type="submit"]:active
{
	transform: 	translate(0,2px)
 				scale(0.99, 0.99);
    box-shadow: inset 0 0 5px rgba(0,0,0,0.5);
}

input[type="text"],
input[type="password"],
select,
option,
textarea
{
    font-family: 'Roboto_light', sans-serif;
	font-size: 14pt;
	color: #2D2D2D;
}

hr
{
	height: 1px;
	background-color: rgb(191, 0, 0, 0.5);
	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;
}

.container-max-width-1600
{
	max-width: 1600px;
}

.container-max-width-2000
{
	max-width: 2000px;
}

.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: 25px;
}

.container ul li
{
	position: relative;
	list-style: none;
}

.container ul li::before
{
	content: '';
	position: absolute;
    display: block;
    left: -25px;
	width: 14px;
	height: 2px;
    background-color: #C00000;
    top: 18px;
}

.container ol li::marker
{
    font-family: 'Roboto_semibold', sans-serif;
	font-size: 14pt;
    color: #C00000;
}

.vertical-padding-top-110
{
	padding-top: 110px;
}

.vertical-padding-bottom-110
{
	padding-bottom: 110px;
}

.vertical-padding-top-60
{
	padding-top: 60px;
}

.vertical-padding-top-30
{
	padding-top: 30px;
}

.vertical-padding-bottom-60
{
	padding-bottom: 60px;
}

.vertical-padding-large
{
	padding-top: 115px;
	padding-bottom: 115px;
}

.vertical-padding-50
{
	padding-top: 50px;
	padding-bottom: 50px;
}

.vertical-padding-medium
{
	padding-top: 85px;
	padding-bottom: 85px;
}

.vertical-padding-small
{
	padding-top: 30px;
	padding-bottom: 30px;
}

@media screen and (max-width:992px)
{
	.vertical-padding-top-110
	{
		padding-top: 40px;
	}

	.vertical-padding-bottom-110
	{
		padding-bottom: 40px;
	}

	.vertical-padding-top-60
	{
		padding-top: 40px;
	}

	.vertical-padding-large
	{
		padding-top: 40px;
		padding-bottom: 40px;
	}

	.vertical-padding-50
	{
		padding-top: 30px;
		padding-bottom: 30px;
	}

	.vertical-padding-bottom-60
	{
		padding-bottom: 30px;
	}

	.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_toggle
	{
		margin-left: 30px;
	}

	#desktop_search_toggle > div
	{
		background-size: cover;
		background-position: center center;
		background-repeat: no-repeat;
		width: 18px;
		height: 18px;
	}

	#desktop_search_toggle .search
	{
		display: block;
		background-image: url("/images/loupe.svg");
	}

	#desktop_search_toggle.open .search
	{
		display: none;
	}

	#desktop_search_toggle .closed
	{
		display: none;
		background-image: url("/images/close.svg");
	}

	#desktop_search_toggle.open .closed
	{
		display: block;
	}

	#search_form
	{
		position: absolute;
		right: 0;
		top: 50px;
	    z-index: 9999;
	}

	#search_form #search_field
	{
		width: 0;
		height: 100%;
		opacity: 0;
		padding: 8px 0;
		border: 0 solid #cccccc;
		outline: none;
		background-color: #ffffff;
    font-family: 'Roboto_light', sans-serif;
        font-size: 14pt;
        color: #2D2D2D;
        transition: all 200ms;
	}

	#search_form #search_field.open
	{
		width: 798px;
		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)
{
	.hide-on-mobile
	{
		display: none !important;
	}

	#block_output_container
	{
		margin-top: 60px;
	}

	div#header-mobile-only #mobile-header-logo
	{
        display: block;
        width: auto;
        margin-left: 15px;
        top: 50%;
        position: relative;
        transform: translateY(-50%);
        max-height: 50px;
        height: 100%;
	}

	div#header-mobile-only #mobile-header-logo img
	{
        width: 100%;
        height: 100%;
        object-fit: contain;
        object-position: left;
	}

	div#header-mobile-only
	{
		display: block;
	    position: fixed;
	    top: 0;
	    height: 60px;
	    width: 100%;
	    background: #2D2D2D;
	    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;
	}

	#mobile_search_toggle
	{
		position: absolute;
		top: 18px;
		right: 63px;
	}

	#mobile_search_toggle > div
	{
		background-size: cover;
		background-position: center center;
		background-repeat: no-repeat;
		width: 25px;
		height: 25px;
	}

	#mobile_search_toggle .search
	{
		display: block;
		background-image: url("/images/loupe.svg");
	}

	#mobile_search_toggle.open .search
	{
		display: none;
	}

	#mobile_search_toggle .closed
	{
		display: none;
		background-image: url("/images/close.svg");
	}

	#mobile_search_toggle.open .closed
	{
		display: block;
	}

    #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: 'Roboto_medium', sans-serif;
		font-size: 12pt;
		box-shadow: 0 0 5px rgba(0,0,0,0.1);
		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 - 45px);
		opacity: 0;
		padding: 0 15px;
		border: 0 solid #cccccc;
	}

    #search_form #search_field:focus
    {
        background-color: #ffffff;
    }
}

@media screen and (max-width:992px)
{
	.md-centered
	{
		text-align: center !important;
	}
}

/* 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;
	}
}

/**********************************************************
 /$$   /$$ /$$$$$$$$  /$$$$$$  /$$$$$$$  /$$$$$$$$ /$$$$$$$
| $$  | $$| $$_____/ /$$__  $$| $$__  $$| $$_____/| $$__  $$
| $$  | $$| $$      | $$  \ $$| $$  \ $$| $$      | $$  \ $$
| $$$$$$$$| $$$$$   | $$$$$$$$| $$  | $$| $$$$$   | $$$$$$$/
| $$__  $$| $$__/   | $$__  $$| $$  | $$| $$__/   | $$__  $$
| $$  | $$| $$      | $$  | $$| $$  | $$| $$      | $$  \ $$
| $$  | $$| $$$$$$$$| $$  | $$| $$$$$$$/| $$$$$$$$| $$  | $$
|__/  |__/|________/|__/  |__/|_______/ |________/|__/  |__/
***********************************************************/
@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: 100;
		width: 100%;
		max-width: 2000px;
		margin: 0 auto;
		background-color: #2D2D2D;
	}

	#header-desktop > div:first-of-type
	{
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: 100%;
		max-width: 1170px;
		height: 100px;
		margin: 0 auto;
	}

	#header-desktop > div:first-of-type .logo
	{
		width: 255px;
	}

	#header-desktop #menu-builder-header-nav
	{
		position: relative;
		display: flex;
		align-items: center;
		width: calc(100% - 255px);
	}

	#header-desktop #menu-builder-header-nav .phone-button:link,
	#header-desktop #menu-builder-header-nav .phone-button:active,
	#header-desktop #menu-builder-header-nav .phone-button:visited
	{
		display: block;
		margin-left: 40px;
    font-family: 'Roboto_semibold', sans-serif;
		font-size: 13.5pt;
		color: #ffffff;
		width: 128px;
		height: 70px;
		margin-top: -30px;
		padding-top: 10px;
		padding-left: 20px;
		padding-right: 62px;
		text-decoration: none;
		background: url("/images/phone-icon.png") 78% 50% no-repeat #BF0000;
		transition: background 200ms;
	}

	#header-desktop #menu-builder-header-nav .phone-button:hover
	{
		background: url("/images/phone-icon.png") 78% 50% no-repeat #d80000;
	}
}


/**********************************************************
 /$$$$$$$$ /$$$$$$   /$$$$$$  /$$$$$$$$ /$$$$$$$$ /$$$$$$$
| $$_____//$$__  $$ /$$__  $$|__  $$__/| $$_____/| $$__  $$
| $$     | $$  \ $$| $$  \ $$   | $$   | $$      | $$  \ $$
| $$$$$  | $$  | $$| $$  | $$   | $$   | $$$$$   | $$$$$$$/
| $$__/  | $$  | $$| $$  | $$   | $$   | $$__/   | $$__  $$
| $$     | $$  | $$| $$  | $$   | $$   | $$      | $$  \ $$
| $$     |  $$$$$$/|  $$$$$$/   | $$   | $$$$$$$$| $$  | $$
|__/      \______/  \______/    |__/   |________/|__/  |__/
**********************************************************/
body > footer
{
	position: relative;
	z-index: 10;
	width: 100%;
	max-width: 2000px;
	margin: 0 auto;
}

body > footer > .first-row
{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	width: 100%;
	max-width: 1170px;
	margin: 0 auto;
}

body > footer > .first-row > .call-button:link,
body > footer > .first-row > .call-button:active,
body > footer > .first-row > .call-button:visited
{
	display: flex;
	align-items: center;
	height: 63px;
    font-family: 'Roboto_semibold', sans-serif;
	font-size: 16pt;
	font-weight: normal;
	color: #ffffff;
	padding: 0 18px;
	background-color: #BF0000;
	text-decoration: none;
	transition: background-color 200ms;
}

body > footer > .first-row > .call-button:hover
{
	background-color: #d80000;
}

body > footer > .first-row > .call-button img
{
	margin-left: 57px;
}

@media screen and (max-width:992px)
{
	body > footer > .first-row > .call-button:link,
	body > footer > .first-row > .call-button:active,
	body > footer > .first-row > .call-button:visited
	{
		display: none;
	}
}

body > footer > .first-row > .social-container
{
	display: flex;
	align-items: center;
	height: 63px;
    font-family: 'Roboto_semibold', sans-serif;
	font-size: 16pt;
	font-weight: normal;
	color: #ffffff;
	padding: 0 18px;
	background-color: #111111;
}

@media screen and (max-width:992px)
{
	body > footer > .first-row > .social-container
	{
		width: 100%;
		justify-content: center;
	}
}

body > footer > .second-row
{
	background-color: #6F7377;
}

body > footer > .second-row > div
{
	display: flex;
	justify-content: flex-end;
	align-items: center;
	width: calc(100% - 30px);
	max-width: 1170px;
	margin: 0 auto;
	height: 56px;
}

@media screen and (max-width:992px)
{
	body > footer > .second-row > div
	{
		flex-flow: column nowrap;
		justify-content: flex-start;
		height: auto;
		padding-top: 15px;
	}
}

body > footer > .second-row a
{
    font-family: 'Roboto_medium', sans-serif;
	font-size: 14pt;
	font-weight: normal;
	color: #ffffff;
	margin-right: 142px;
	text-decoration: none;
}

@media screen and (max-width:992px)
{
	body > footer > .second-row a
	{
		margin-bottom: 15px;
		margin-right: 0;
	}
}

body > footer > .second-row a img
{
	transition: transform 200ms;
}

body > footer > .second-row a:focus img,
body > footer > .second-row a:hover img
{
	transform: translateY(-3px);
}

@media screen and (min-width:993px)
{
	body > footer > .second-row a:first-of-type
	{
		margin-right: auto;
		margin-left: 0;
	}

	body > footer > .second-row a:last-of-type
	{
		margin-right: 0;
	}
}

body > footer > .third-row
{
	padding-top: 35px;
	padding-bottom: 30px;
}

@media screen and (max-width:992px)
{
	body > footer > .third-row #footer-logo
	{
		display: block;
		width: 204px;
		margin: 0 auto 30px auto;
	}
}

body > footer > .fourth-row
{
	padding-top: 18px;
	padding-bottom: 18px;
	background-color: #efefef;
}

body > footer .copyright-container
{
	width: calc(100% - 30px);
	margin: 0 auto;
	text-align: center;
}

body > footer .copyright-container,
body > footer .copyright-container a:link,
body > footer .copyright-container a:active,
body > footer .copyright-container a:visited
{
    font-family: 'Roboto', sans-serif;
	font-size: 10pt;
	font-weight: normal;
	color: #111111;
	text-decoration: none;
	transition: color 150ms;
}

body > footer .copyright-container a:hover
{
	color: #C00000;
}

/*********************************************************************************************
 /$$      /$$ /$$      /$$        /$$$$$$  /$$$$$$$$ /$$     /$$ /$$       /$$$$$$$$  /$$$$$$
| $$  /$ | $$| $$  /$ | $$       /$$__  $$|__  $$__/|  $$   /$$/| $$      | $$_____/ /$$__  $$
| $$ /$$$| $$| $$ /$$$| $$      | $$  \__/   | $$    \  $$ /$$/ | $$      | $$      | $$  \__/
| $$/$$ $$ $$| $$/$$ $$ $$      |  $$$$$$    | $$     \  $$$$/  | $$      | $$$$$   |  $$$$$$
| $$$$_  $$$$| $$$$_  $$$$       \____  $$   | $$      \  $$/   | $$      | $$__/    \____  $$
| $$$/ \  $$$| $$$/ \  $$$       /$$  \ $$   | $$       | $$    | $$      | $$       /$$  \ $$
| $$/   \  $$| $$/   \  $$      |  $$$$$$/   | $$       | $$    | $$$$$$$$| $$$$$$$$|  $$$$$$/
|__/     \__/|__/     \__/       \______/    |__/       |__/    |________/|________/ \______/
*********************************************************************************************/
p,
.ww_p
{
    font-family: 'Roboto_light', sans-serif;
	font-size: 14pt;
	font-weight: normal;
	color: #2D2D2D;
	line-height: 20pt;
	margin: 0;
	padding: 0;
}

p strong,
.ww_p strong
{
    font-family: 'Roboto_medium', sans-serif;
	font-weight: normal;
}

.ww_p_double_space
{
    font-family: 'Roboto_light', sans-serif;
	font-size: 14pt;
	font-weight: normal;
	color: #2D2D2D;
	line-height: 2;
	margin: 0;
	padding: 0;
}

.ww_p_double_space strong
{
    font-family: 'Roboto_medium', sans-serif;
	font-weight: normal;
}

.ww_p_alternate
{
    font-family: 'Roboto_light', sans-serif;
	font-size: 16pt;
	font-weight: normal;
	color: #2D2D2D;
	line-height: 22pt;
	margin: 0;
	padding: 0;
}

.ww_p_call_out
{
    font-family: 'Roboto_semibold', sans-serif;
	font-size: 26pt;
	font-weight: normal;
	color: #2D2D2D;
	line-height: 36pt;
	margin: 0;
	padding: 0;
}

.container h1,
.container h1.ww_h1
{
    font-family: 'Roboto_Condensed_bold';
	font-size: 44pt;
	font-weight: normal;
	color: #000000;
	line-height: 52pt;
	margin: 0 0 5px 0;
	padding: 0;
}

h2,
h2.ww_h2
{
    font-family: 'Roboto_Condensed_bold';
	font-size: 34pt;
	font-weight: normal;
	color: #000000;
	line-height: 1;
	margin: 0 0 15px 0;
	padding: 0;
}

h2.ww_h2 strong
{
	position: relative;
    font-family: 'Roboto_light', sans-serif;
	font-weight: normal;
	font-size: 16pt;
}

h2.ww_h2 strong::after
{
	content: "";
	position: absolute;
	top: 14px;
	right: -25px;
	width: 16px;
	height: 2px;
	background-color: #C00000;
}

h2.ww_h2 em
{
	position: relative;
	font-style: normal;
	display: inline-block;
	line-height: 1;
}

@media screen and (max-width:1230px)
{
	h2.ww_h2 em
	{
		padding-left: 30px;
	}
}

h2.ww_h2 em::after
{
	content: "";
	position: absolute;
	top: 5px;
	left: -30px;
	width: 18px;
	height: 34px;
	background: url("/images/half-fence-icon-red.svg") top center no-repeat;
}

@media screen and (max-width:1230px)
{
	h2.ww_h2 em::after
	{
		left: 0;
	}
}

h2.h1-style
{
    font-family: 'Roboto_Condensed_bold';
	font-size: 44pt;
	font-weight: normal;
	color: #000000;
	line-height: 34pt;
	margin: 0 0 100px 0;
	padding: 0;
}

h2.h1-style strong
{
	position: relative;
    font-family: 'Roboto_light', sans-serif;
	font-weight: normal;
	font-size: 16pt;
	padding-left: 30px;
}

h2.h1-style strong::after
{
	content: "";
	position: absolute;
	top: 14px;
	right: -25px;
	width: 16px;
	height: 2px;
	background-color: #C00000;
}

h3,
h3.ww_h3
{
    font-family: 'Roboto_Condensed_bold';
	font-size: 28pt;
	font-weight: normal;
	color: #000000;
	line-height: 34pt;
	margin: 0 0 10px 0;
	padding: 0;
}

h3.ww_h3 strong
{
	position: relative;
    font-family: 'Roboto_light', sans-serif;
	font-weight: normal;
	font-size: 16pt;
}

h3.ww_h3 strong::after
{
	content: "";
	position: absolute;
	top: 14px;
	right: -25px;
	width: 16px;
	height: 2px;
	background-color: #C00000;
}

@media screen and (max-width:768px)
{
	h3.ww_h3 strong::after
	{
		display: none;
	}
}

h4,
h4.ww_h4
{
    font-family: 'Roboto_Condensed_bold';
	font-size: 22pt;
	font-weight: normal;
	color: #000000;
	line-height: 28pt;
	margin: 0;
	padding: 0;
}

h5,
h5.ww_h5
{
    font-family: 'Roboto_Condensed_bold';
	font-size: 20pt;
	font-weight: normal;
	color: #000000;
	line-height: 24pt;
	margin: 0;
	padding: 0;
}

h6,
h6.ww_h6
{
    font-family: 'Roboto_Condensed_bold';
	font-size: 18pt;
	font-weight: normal;
	color: #000000;
	line-height: 22pt;
	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: 'Roboto_semibold', sans-serif;
	font-size: 14pt;
	font-weight: normal;
	font-style: normal !important;
	color: #ffffff !important;
	text-decoration: none !important;
	background-color: #BF0000;
	padding: 6px 20px;
	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
{
    font-family: 'Roboto_semibold', sans-serif;
	color: #ffffff;
	text-decoration: none !important;
}

.ww_action_button1:hover
{
	background-color: #9F0000;
}

.ww_action_button1:active
{
	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-flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
    font-family: 'Roboto', sans-serif;
	font-size: 16pt;
	font-weight: normal;
	font-style: normal !important;
	color: #2D2D2D !important;
	text-decoration: none !important;
	cursor: pointer;
	background: url("/images/right-arrow-gray.svg") left no-repeat;
	background-size: contain;
	padding-left: 36px;
	height: 30px;
	transition: all 0.2s;
	-webkit-tap-highlight-color: transparent;
}

.ww_action_button2 a
{
	line-height: 1;
	margin-top: 5px;
}

a .ww_action_button2,
a .ww_action_button2:link,
a .ww_action_button2:visited,
.ww_action_button2 a:link,
.ww_action_button2 a:visited
{
    font-family: 'Roboto', sans-serif;
	color: #2D2D2D !important;
	text-decoration: none !important;
}

.ww_action_button2:hover
{
	background-image: url("/images/right-arrow-red.svg");
}

.ww_action_button3
{
	display: inline-flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
    font-family: 'Roboto_semibold', sans-serif;
	font-size: 14pt;
	font-weight: normal;
	font-style: normal !important;
	color: #2d2d2d;
	text-decoration: none !important;
	border: 2px solid #2D2D2D;
	padding: 8px 20px;
	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
{
    font-family: 'Roboto_semibold', sans-serif;
	color: #2d2d2d;
	text-decoration: none !important;
}

.ww_action_button3:hover
{
	color: #ffffff;
	background-color: #2D2D2D;
}

.ww_action_button3:hover a
{
	color: #ffffff;
}

.ww_action_button3:active
{
	transform: 	translate(0,2px)
 				scale(0.99, 0.99);
    box-shadow: inset 0 0 5px rgba(0,0,0,0.5);
}

.ww_editor_body
{
	background-color: #FFFFFF;
}


/*********************************************************************
  /$$$$$$   /$$$$$$  /$$   /$$ /$$$$$$$$ /$$$$$$$$ /$$   /$$ /$$$$$$$$
 /$$__  $$ /$$__  $$| $$$ | $$|__  $$__/| $$_____/| $$$ | $$|__  $$__/
| $$  \__/| $$  \ $$| $$$$| $$   | $$   | $$      | $$$$| $$   | $$
| $$      | $$  | $$| $$ $$ $$   | $$   | $$$$$   | $$ $$ $$   | $$
| $$      | $$  | $$| $$  $$$$   | $$   | $$__/   | $$  $$$$   | $$
| $$    $$| $$  | $$| $$\  $$$   | $$   | $$      | $$\  $$$   | $$
|  $$$$$$/|  $$$$$$/| $$ \  $$   | $$   | $$$$$$$$| $$ \  $$   | $$
 \______/  \______/ |__/  \__/   |__/   |________/|__/  \__/   |__/
*********************************************************************/
#footer_contact_container
{
	padding-bottom: 25px;
	margin-bottom: 40px;
	border-bottom: 2px solid #DF7F7F;
}

#footer_contact_container p
{
    font-family: 'Roboto', sans-serif;
	font-weight: normal;
	font-size: 12.5pt;
	color: #111111;
	text-align: center;
}

#footer_contact_container p strong
{
    font-family: 'Roboto_semibold', sans-serif;
	font-weight: normal;
}

@media screen and (min-width:1200px)
{
	.container-fluid.gapless-container,
	.container-fluid.gapless-container .row [class^="col"]
	{
		padding-left: 0;
		padding-right: 0;
	}

	.container-fluid.gapless-container .row
	{
		margin-left: 0;
		margin-right: 0;
	}
}

.large-service-callout-link:link,
.large-service-callout-link:active,
.large-service-callout-link:visited
{
	display: block;
	text-decoration: none;
}

@media screen and (max-width:1200px)
{
	.large-service-callout-link:link,
	.large-service-callout-link:active,
	.large-service-callout-link:visited
	{
		width: 100%;
		max-width: 400px;
		margin: 0 auto 30px auto;
	}
}

.large-service-callout-link::before,
.large-service-callout-link::after
{
	content: "";
	position: absolute;
	z-index: 2;
	left: 0;
	right: 0;
	background-color: #ffffff;
	height: 10px;
	transition: all 200ms;
}

.large-service-callout-link::before
{
	top: 0;
}

.large-service-callout-link:hover::before
{
	top: -10px;
}

.large-service-callout-link::after
{
	bottom: 0;
}

.large-service-callout-link:hover::after
{
	bottom: -10px;
}

@media screen and (max-width:1200px)
{
	.large-service-callout-link::before,
	.large-service-callout-link::after
	{
		opacity: 0;
	}
}

.large-service-callout-link > span
{
	position: relative;
	display: flex;
	flex-flow: column nowrap;
	justify-content: flex-end;
	align-items: center;
	width: 100%;
	max-width: 500px;
	height: 500px;
	padding: 30px;
}

.large-service-callout-link > span::before
{
	content: "";
	position: absolute;
	z-index: 5;
	top: -16px;
	left: 50%;
	transform: translateX(-50%);
	width: 38px;
	height: 33px;
	background: url("/images/fence-icon.svg") top center no-repeat;
	background-size: cover;
	opacity: 0;
	transition: opacity 200ms;
}

.large-service-callout-link:hover > span::before
{
	opacity: 1;
}

@media screen and (max-width:1200px)
{
	.large-service-callout-link > span::before
	{
		opacity: 1;
	}
}

.large-service-callout-link > span::after
{
	content: "";
	position: absolute;
	z-index: 1;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 40%;
	background: linear-gradient(180deg, transparent, rgba(0,0,0,0.5));
}

.large-service-callout-link img.background
{
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
}

.large-service-callout-link .small
{
	position: relative;
	z-index: 2;
    font-family: 'Roboto_light', sans-serif;
	font-size: 16pt;
	font-weight: normal;
	color: #ffffff;
}

.large-service-callout-link .small::after
{
	content: "";
	position: absolute;
	top: 14px;
	right: -25px;
	width: 16px;
	height: 2px;
	background-color: #C00000;
}

.large-service-callout-link .large
{
	position: relative;
	z-index: 2;
    font-family: 'Roboto_Condensed_bold';
	font-size: 24pt;
	font-weight: normal;
	color: #ffffff;
}

.large-service-callout-link .hidden-text
{
	position: relative;
	z-index: 2;
    font-family: 'Roboto_medium', sans-serif;
	font-size: 14pt;
	font-weight: normal;
	text-align: center;
	color: #ffffff;
	opacity: 0;
	line-height: 0;
	margin-top: 0;
	transition: all 200ms;
}

.large-service-callout-link:hover .hidden-text
{
	opacity: 1;
	line-height: 1;
	margin-top: 10px;
}

@media screen and (max-width:1200px)
{
	.large-service-callout-link .hidden-text
	{
		opacity: 1;
		line-height: 1;
		margin-top: 10px;
	}
}

.concrete-stairs-background
{
	width: 100%;
	max-width: 2000px;
	margin: 0 auto;
	padding-top: 40px;
	background: url("/images/concrete-stairs-background.jpg") top center no-repeat;
	background-size: cover;
}

@media screen and (max-width:1200px)
{
	.concrete-stairs-background
	{
		padding-bottom: 40px;
	}
}

.padded-red-container
{
	position: relative;
	z-index: 10;
	padding: 120px 20px 35px 20px;
	background-color: #BF0000;
}

@media screen and (max-width:768px)
{
	.padded-red-container
	{
		padding: 50px 30px 25px 20px
	}
}

.padded-red-container.pull-down-60
{
	margin-bottom: -60px;
}

@media screen and (max-width:1200px)
{
	.padded-red-container.pull-down-60
	{
		margin-top: 140px;
	}
}

.ww_editor_body .padded-red-container.pull-down-60
{
	margin-bottom: 0;
}

.padded-red-container h2
{
    font-family: 'Roboto_semibold', sans-serif;
	font-weight: normal;
	font-size: 28pt;
	line-height: 1.2;
	color: #ffffff;
	margin-bottom: 70px;
}

@media screen and (max-width:768px)
{
	.padded-red-container h2
	{
		margin-bottom: 10px;
	}
}

.padded-red-container p
{
    font-family: 'Roboto_light', sans-serif;
	font-weight: normal;
	font-size: 16pt;
	color: #ffffff;
	margin-bottom: 25px;
	padding-bottom: 25px;
	border-bottom: 1px solid #ffffff;
}

.padded-red-container .ww_action_button2
{
	color: #ffffff !important;
}

.padded-red-container .ww_action_button2
{
	background-image: url("/images/right-arrow-white.svg");
}

.padded-red-container::before
{
	content: "";
	position: absolute;
	top: 20px;
	right: 10px;
	width: 29px;
	height: 26px;
	background: url("/images/white-fence-icon.svg") top center no-repeat;
	background-size: cover;
}

.light-gray-background
{
	width: 100%;
	max-width: 2000px;
	margin: 0 auto;
	background-color: #EFEFEF;
}

.our-process-image-link:link,
.our-process-image-link:active,
.our-process-image-link:visited
{
	position: relative;
	display: flex;
	flex-flow: column nowrap;
	justify-content: flex-start;
	width: 100%;
	max-width: 585px;
	background-color: #BF0000;
	height: 300px;
	padding: 30px 20px;
	text-decoration: none;
	margin: 0 auto 30px auto;
	overflow: hidden;
}

.our-process-image-link::before
{
	content: "";
	position: absolute;
	z-index: 3;
	top: 20px;
	right: 30px;
	width: 52px;
	height: 52px;
	background-repeat: no-repeat;
	background-position: top center;
}

.our-process-image-link.step-1::before
{
	background-image: url("/images/consultation-icon.png");
}

.our-process-image-link.step-2::before
{
	background-image: url("/images/design-icon.png");
}

.our-process-image-link.step-3::before
{
	background-image: url("/images/build-icon.png");
}

.our-process-image-link.step-4::before
{
	background-image: url("/images/approval-icon.png");
}

.our-process-image-link.step-1::before,
.our-process-image-link.step-2::before,
.our-process-image-link.step-3::before,
.our-process-image-link.step-4:before
{
	opacity: 1;
	transition: opacity 200ms;
}

.our-process-image-link.step-1:hover::before,
.our-process-image-link.step-2:hover::before,
.our-process-image-link.step-3:hover::before,
.our-process-image-link.step-4:hover:before
{
	opacity: 0;
}

@media screen and (max-width:632px)
{
	.our-process-image-link.step-1:hover::before,
	.our-process-image-link.step-2:hover::before,
	.our-process-image-link.step-3:hover::before,
	.our-process-image-link.step-4:hover:before
	{
		opacity: 1;
	}
}

.our-process-image-link::after
{
	content: "";
	position: absolute;
	z-index: 2;
	bottom: 30px;
	left: 20px;
	width: calc(100% - 40px);
	height: 2px;
	background-color: #ffffff;
	opacity: 0.5;
}

.our-process-image-link .image-container
{
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 1;
	transition: opacity 200ms;
}

.our-process-image-link:hover .image-container
{
	opacity: 0;
}

@media screen and (max-width:632px)
{
	.our-process-image-link:hover .image-container
	{
		opacity: 1;
	}
}

.ww_editor_body .our-process-image-link .image-container
{
	opacity: 1;
}

.our-process-image-link .image-container img.background
{
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
}

@media screen and (max-width:400px)
{
	.our-process-image-link .image-container img.background
	{
		object-position: 20%;
	}
}

.our-process-image-link .image-container::before
{
	content: "";
	position: absolute;
	z-index: 2;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	background-color: #2D2D2D;
	opacity: 0.6;
}

.ww_editor_body .our-process-image-link .image-container::before
{
	display: none;
}

.our-process-image-link span
{
	position: relative;
	z-index: 3;
	color: #ffffff;
}

.our-process-image-link .description
{
    font-family: 'Roboto_light', sans-serif;
	font-size: 13pt;
	font-weight: normal;
	opacity: 0;
	transition: opacity 200ms;
}

.our-process-image-link:hover .description
{
	opacity: 1;
}

@media screen and (max-width:632px)
{
	.our-process-image-link .description
	{
		display: none;
	}
}

.our-process-image-link .description strong
{
	display: block;
    font-family: 'Roboto_semibold', sans-serif;
	font-weight: normal;
	font-size: 13pt;
	padding-bottom: 15px;
}

.our-process-image-link .large-text
{
    font-family: 'Roboto_semibold', sans-serif;
	font-weight: normal;
	font-size: 28pt;
	margin: auto 0 0 0;
}

@media screen and (max-width:480px)
{
	.our-process-image-link .large-text
	{
		font-size: 24pt;
	}
}

.birdseye-deck-background
{
	width: 100%;
	max-width: 2000px;
	margin: 0 auto;
	padding-top: 40px;
	background: url("/images/birdseye-deck-background.jpg") top center no-repeat;
	background-size: cover;
}

@media screen and (max-width:1200px)
{
	.birdseye-deck-background
	{
		padding-bottom: 40px;
	}
}

.birdseye-deck-background .ww_action_button1.top-offset
{
	position: relative;
	top: -40px;
	padding-left: 35px;
}

.birdseye-deck-background .ww_action_button1.top-offset::before
{
	content: "";
	position: absolute;
	top: 10px;
	left: 10px;
	width: 20px;
	height: 20px;
	background: url("/images/right-arrow-white.svg");
	opacity: 0.8;
}

.forced-white-text *
{
	color: #ffffff !important;
}

.dark-gray-background
{
	width: 100%;
	max-width: 2000px;
	margin: 0 auto;
	background-color: #2D2D2D;
}

.forced-white-text .ww_action_button3
{
	border-color: rgba(255, 255, 255, 0.5);
}

.forced-white-text .ww_action_button3:hover
{
	border-color: #ffffff;
}

.padded-red-container.pull-down-170
{
	margin-bottom: -170px;
}

@media screen and (max-width:1200px)
{
	.padded-red-container.pull-down-170
	{
		margin-bottom: 0;
	}
}

.ww_editor_body .padded-red-container.pull-down-170
{
	margin-bottom: 0;
}

.warranty-box
{
	position: relative;
	background-color: #2D2D2D;
	height: 153px;
	display: flex;
	justify-content: center;
	align-items: flex-end;
	text-align: center;
    font-family: 'Roboto_semibold', sans-serif;
	font-size: 14pt;
	font-weight: normal;
	padding-bottom: 30px;
	color: #ffffff;
	width: 100%;
	max-width: 170px;
	margin: 0 auto 60px auto;
}

.warranty-box img
{
	position: absolute;
	top: -40px;
	left: 50%;
	transform: translateX(-50%);
}
.warranty-box::after
{
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 30px;
	height: 19px;
	background: url("/images/fence-icon-short.svg") top center no-repeat;
}

.overflow-wrapper
{
	overflow: hidden;
}

.our-values-overlay-container
{
	position: relative;
	height: 647px;
	margin-right: -213px;
}

@media screen and (max-width:1530px)
{
	.our-values-overlay-container
	{
		margin-right: 0;
	}
}

@media screen and (max-width:992px)
{
	.our-values-overlay-container
	{
		margin-top: 60px;
	}
}

.our-values-overlay-container img.background
{
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
	object-position: top right;
}

.our-values-overlay-container .overlay
{
	position: absolute;
	z-index: 2;
	top: 0;
	left: 0;
	padding: 55px 20px;
	width: 100%;
	max-width: 371px;
	height: 100%;
	background-color: rgba(45, 45, 45, 0.9);
}

.our-values-overlay-container .overlay h3
{
	margin-bottom: 40px;
}

.our-values-overlay-container .overlay h4
{
	margin-bottom: 10px;
}

.our-values-overlay-container .overlay h3,
.our-values-overlay-container .overlay h4,
.our-values-overlay-container .overlay p
{
	color: #ffffff;
}

.our-values-overlay-container .overlay p
{
	position: relative;
	padding-right: 100px;
}

.our-values-overlay-container .overlay p img
{
	position: absolute;
	top: 5px;
	right: 0;
}

.our-values-overlay-container .overlay hr
{
	opacity: 0.5;
	height: 2px;
	margin-top: 10px;
	margin-bottom: 25px;
	background-color: #ffffff;
}

.wood-fence-background
{
	position: relative;
	width: 100%;
	max-width: 2000px;
	margin: 0 auto;
	padding-top: 40px;
	background: url("/images/wood-fence-background.jpg") top center no-repeat;
	background-size: cover;
}

.wood-fence-background::after
{
	content: "";
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #111111;
	opacity:0.5;
}

.wood-fence-background.fixed-height
{
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
	align-items: center;
	text-align: center;
	height: 579px;
}

.wood-fence-background h2
{
	color: #ffffff;
}

.wood-fence-background h2,
.wood-fence-background p
{
	position: relative;
	z-index: 2;
}

.wood-fence-background.top-icon::before
{
	content: "";
	position: absolute;
	z-index: 3;
	top: -20px;
	left: 50%;
	transform: translateX(-50%);
	width: 32px;
	height: 32px;
	background: url("/images/fence-icon.svg") top center no-repeat;
}

.ww_editor_body .wood-fence-background.wood-fence-background.top-icon
{
	margin-top: 30px;
}

.pull-into-footer
{
	margin-bottom: -63px !important;
}

.dark-gray-callout-container
{
	position: relative;
	background-color: #2D2D2D;
	padding-top: 55px;
	padding-bottom: 55px;
	margin: 35px -30px 35px 0;
}

@media screen and (max-width:992px)
{
	.dark-gray-callout-container
	{
		margin: 35px 0;
	}
}

.dark-gray-callout-container::before
{
	content: "";
	position: absolute;
	z-index: -1;
	top: 0;
	left: -415px;
	width: 2000px;
	height: 100%;
	background-color: #2D2D2D;
}

.dark-gray-callout-container .arrow-icon
{
	margin:10px auto;
}

@media screen and (max-width:992px)
{
	.dark-gray-callout-container .arrow-icon
	{
		transform: rotate(90deg);
	}

	.dark-gray-callout-container::after
	{
		content: "";
		position: absolute;
		top: 0;
		right: -250px;
		width: 250px;
		height: 100%;
		background-color: #2D2D2D;
	}
}

@media screen and (min-width:1201px)
{
	.right-offset-image
	{
		max-width: none !important;
	}
}

@media screen and (max-width:1201px)
{
	.right-offset-image
	{
		display: block !important;
		margin: 0 auto 30px auto;
	}
}

.wood-fence-green-grass-background
{
	position: relative;
	width: 100%;
	max-width: 2000px;
	margin: 0 auto;
	padding-top: 40px;
	background: url("/images/wood-fence-green-grass-background.jpg") top center no-repeat;
	background-size: cover;
}

@media screen and (max-width:1200px)
{
	.wood-fence-green-grass-background
	{
		padding-bottom: 40px;
	}
}

.wood-fence-green-grass-background::after
{
	content: "";
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #111111;
	opacity:0.05;
}


.chain-link-fence-background
{
	position: relative;
	width: 100%;
	max-width: 2000px;
	margin: 0 auto;
	padding-top: 40px;
	background: url("/images/chain-link-fence-background.jpg") top center no-repeat;
	background-size: cover;
}

@media screen and (max-width:1200px)
{
	.chain-link-fence-background
	{
		padding-bottom: 40px;
	}
}

.chain-link-fence-background::after
{
	content: "";
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #111111;
	opacity:0.05;
}



.ornamental-fence-background
{
	position: relative;
	width: 100%;
	max-width: 2000px;
	margin: 0 auto;
	padding-top: 40px;
	background: url("/images/ornamental-fence-background.jpg") top center no-repeat;
	background-size: cover;
}

@media screen and (max-width:1200px)
{
	.ornamental-fence-background
	{
		padding-bottom: 40px;
	}
}

.ornamental-fence-background::after
{
	content: "";
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #111111;
	opacity:0.05;
}



.vinyl-background
{
	position: relative;
	width: 100%;
	max-width: 2000px;
	margin: 0 auto;
	padding-top: 40px;
	background: url("/images/vinyl-background.jpg") top center no-repeat;
	background-size: cover;
}

@media screen and (max-width:1200px)
{
	.vinyl-background
	{
		padding-bottom: 40px;
	}
}

.vinyl-background::after
{
	content: "";
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #111111;
	opacity:0.05;
}



.offset-product-image-container
{
	position: relative;
	margin-bottom: 20px;
	margin-top: 16px;
}

@media screen and (max-width:1200px)
{
	.offset-product-image-container
	{
		margin-bottom: 0;
	}
}

.offset-product-image-container::before
{
	content: "";
	position: absolute;
	z-index: 2;
	top: -16px;
	left: 50%;
	transform: translateX(-50%);
	width: 38px;
	height: 34px;
	background: url("/images/fence-icon.svg") top center no-repeat;
}

.offset-product-image-container .overlay-container
{
	position: absolute;
	bottom: 10px;
	left: 0;
	padding: 15px 20px 15px 45px;
	background-color: rgba(191, 0, 0, 0.75);
    font-family: 'Roboto_medium', sans-serif;
	font-size: 16pt;
	color: #ffffff;
}

@media screen and (min-width:1201px)
{
	.offset-product-image-container
	{
		width: 784px;
	}

	.offset-product-image-container.left
	{
		margin-left: -214px;
	}
}

@media screen and (max-width:1200px)
{
	.offset-product-image-container.right
	{
		margin-top: 80px;
	}
}

.bottom-left-floating-red-container
{
	position: relative;
	display: flex;
	align-items: flex-end;
	padding: 0 20px 45px 20px;
	width: 366px;
	height: 235px;
	margin: -200px 0 0 -200px;
	background-color: #BF0000;
    font-family: 'Roboto_semibold', sans-serif;
	font-size: 28pt;
	color: #ffffff;
}

@media screen and (max-width:1200px)
{
	.bottom-left-floating-red-container
	{
		font-size: 22pt;
		width: 296px;
		height: 195px;
		margin: -170px 0 0 -150px;
	}
}

@media screen and (max-width:992px)
{
	.bottom-left-floating-red-container
	{
		font-size: 22pt;
		width: 296px;
		height: 195px;
		margin:-160px 0 0 10px;
	}
}

.bottom-left-floating-red-container::before
{
	content: "";
	position: absolute;
	top: 20px;
	right: 15px;
	width: 29px;
	height: 26px;
	background: url("/images/white-fence-icon.svg") top center no-repeat;
}

.bottom-left-floating-red-container::after
{
	content: "";
	position: absolute;
	bottom: 30px;
	left: 20px;
	width: calc(100% - 40px);
	height: 2px;
	background-color: #ffffff;
	opacity: 0.5;
}

.long-arial-fence-background
{
	position: relative;
	width: 100%;
	max-width: 2000px;
	margin: 0 auto;
	padding-top: 40px;
	background: url("/images/long-arial-fence-background.jpg") top center no-repeat;
	background-size: cover;
}

@media screen and (max-width:1200px)
{
	.long-arial-fence-background
	{
		padding-bottom: 40px;
	}
}

.long-arial-fence-background::after
{
	content: "";
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #111111;
	opacity:0.5;
}

.long-arial-fence-background > div
{
	position: relative;
	z-index: 2;
}

.chain-link-background
{
	position: relative;
	width: 100%;
	max-width: 2000px;
	margin: 0 auto;
	padding-top: 40px;
	background: url("/images/chain-link-background.jpg") top center no-repeat;
	background-size: cover;
}

@media screen and (max-width:1200px)
{
	.chain-link-background
	{
		padding-bottom: 40px;
	}
}

.chain-link-background::after
{
	content: "";
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #111111;
	opacity:0.5;
}

.chain-link-background > div
{
	position: relative;
	z-index: 2;
}

.accordion h3
{
	position: relative;
    font-family: 'Roboto_medium', sans-serif;
	font-size: 16pt;
	font-weight: normal;
	border-bottom: 2px solid rgba(255, 255, 255, 0);
	cursor: pointer;
	padding: 10px 10px 10px 50px;
	margin-bottom: 0;
	transition: background-color 200ms;
}

.accordion h3.ui-accordion-header-collapsed
{
	border-bottom: 2px solid rgba(255, 255, 255, 0.5);
}

.accordion h3.ui-accordion-header-collapsed
{
	border-bottom: 2px solid #AF0101;
}

.forced-white-text .accordion h3.ui-accordion-header-active
{
	background-color: rgb(45, 45, 45, 0.9);
}

.accordion h3::before
{
	content: "";
	position: absolute;
	height: 17px;
	width: 17px;
	top: 25px;
	left: 20px;
	background: url("/images/plus.png") center center no-repeat;
}

.accordion h3.ui-accordion-header-active::before
{
	background: url("/images/minus.png") center center no-repeat;
}

.ww_editor_body .forced-white-text .accordion p,
.ui-accordion-content
{
	position: relative;
	padding: 20px 50px;
	border-bottom: 2px solid #AF0101;
}

.forced-white-text .ww_editor_body .forced-white-text .accordion p,
.forced-white-text .ui-accordion-content
{
	position: relative;
	padding: 20px 50px;
	background-color: rgb(45, 45, 45, 0.9);
	border-bottom: 2px solid rgba(255, 255, 255, 0.5);
}

.forced-white-text .ui-accordion-content::after
{
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 22px;
	height: 14px;
	background: url("/images/fence-icon-short.svg") top center no-repeat;
}

.padded-red-container.pull-down-260
{
	margin-bottom: -260px;
}

@media screen and (max-width:1200px)
{
	.padded-red-container.pull-down-260
	{
		margin-bottom: 40px;
	}
}

.ww_editor_body .padded-red-container.pull-down-260
{
	margin-bottom: 0;
}

.multiple-fenced-yards-background
{
	position: relative;
	width: 100%;
	max-width: 2000px;
	margin: 0 auto;
	padding-top: 40px;
	background: url("/images/multiple-fenced-yards-background.jpg") top center no-repeat;
	background-size: cover;
}

.multiple-fenced-yards-background.fixed-height
{
	height: 463px;
}

@media screen and (max-width:1200px)
{
	.multiple-fenced-yards-background
	{
		padding-bottom: 40px;
	}
}

.multiple-fenced-yards-background::after
{
	content: "";
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #111111;
	opacity:0.5;
}

.multiple-fenced-yards-background div
{
	position: relative;
	z-index: 2;
}


.outdoor-structure-background
{
	position: relative;
	width: 100%;
	max-width: 2000px;
	margin: 0 auto;
	padding-top: 40px;
	background: url("/images/outdoor-structure-background.jpg") top center no-repeat;
	background-size: cover;
}

.outdoor-structure-background.fixed-height
{
	height: 463px;
}

@media screen and (max-width:1200px)
{
	.outdoor-structure-background
	{
		padding-bottom: 40px;
	}
}

.outdoor-structure-background::after
{
	content: "";
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #111111;
	opacity:0.5;
}

.outdoor-structure-background div
{
	position: relative;
	z-index: 2;
}



.birdseye-composite-deck-background
{
	position: relative;
	width: 100%;
	max-width: 2000px;
	margin: 0 auto;
	padding-top: 40px;
	background: url("/images/birdseye-composite-deck-background.jpg") top center no-repeat;
	background-size: cover;
}

.birdseye-composite-deck-background.fixed-height
{
	height: 463px;
}

@media screen and (max-width:1200px)
{
	.birdseye-composite-deck-background
	{
		padding-bottom: 40px;
	}
}

.birdseye-composite-deck-background::after
{
	content: "";
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #111111;
	opacity:0.5;
}

.birdseye-composite-deck-background div
{
	position: relative;
	z-index: 2;
}