/*
Theme Name: STEP Website Theme
Description: WordPress Website Theme for STEP
Author: Christie and Co
Author URI: http://www.christieand.co/
Version: 1.0

*/

/***************************************************************************************************************************************************************************************/

/*HTML5 BOILERPLATE MINIFIED*/

/***************************************************************************************************************************************************************************************/

*{box-sizing:border-box;}article{display:block}aside{display:block}details{display:block}figcaption{display:block}figure{display:block;margin:0}footer{display:block}header{display:block}hgroup{display:block}nav{display:block}section{display:block}audio{display:inline;zoom:1}canvas{display:inline;zoom:1}video{display:inline;zoom:1}audio:not([controls]){display:none}[hidden]{display:none}html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;font-family:sans-serif;color:#222}button{font-family:sans-serif;color:#222;font-size:100%;vertical-align:middle;line-height:normal;cursor:pointer;-webkit-appearance:button;overflow:visible;margin:0}input{font-family:sans-serif;color:#222;font-size:100%;vertical-align:middle;line-height:normal;margin:0}select{font-family:sans-serif;color:#222;font-size:100%;vertical-align:middle;margin:0}textarea{font-family:sans-serif;color:#222;font-size:100%;overflow:auto;vertical-align:top;resize:vertical;margin:0}body{font-size:1em;line-height:1.4;margin:0}::-moz-selection{background:#333;color:#fff;text-shadow:none}::selection{background:#333;color:#fff;text-shadow:none}a{color:#00e}a:hover{color:#06e;outline:0}a:active{outline:0}abbr[title]{border-bottom:1px dotted}b{font-weight:700}strong{font-weight:700}blockquote{margin:1em 40px}dfn{font-style:italic}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}ins{background:#ff9;color:#000;text-decoration:none}mark{background:#ff0;color:#000;font-style:italic;font-weight:700}pre{font-family:monospace, serif;_font-family:'courier new', monospace;font-size:1em;white-space:pre-wrap;word-wrap:break-word}code{font-family:monospace, serif;_font-family:'courier new', monospace;font-size:1em}kbd{font-family:monospace, serif;_font-family:'courier new', monospace;font-size:1em}samp{font-family:monospace, serif;_font-family:'courier new', monospace;font-size:1em}q{quotes:none}q:before{content:none}q:after{content:none}small{font-size:85%}sub{font-size:75%;line-height:0;position:relative;vertical-align:baseline;bottom:-.25em}sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline;top:-.5em}ul{margin:1em 0;padding:0 0 0 40px}ol{margin:1em 0;padding:0 0 0 40px}dd{margin:0 0 0 40px}nav ul{list-style:none;list-style-image:none;margin:0;padding:0}nav ol{list-style:none;list-style-image:none;margin:0;padding:0}img{border:0;-ms-interpolation-mode:bicubic;vertical-align:middle}svg:not(:root){overflow:hidden}form{margin:0}fieldset{border:0;margin:0;padding:0}label{cursor:pointer}legend{border:0;margin-left:-7px;white-space:normal;padding:0}input[type="button"]{cursor:pointer;-webkit-appearance:button;overflow:visible}input[type="reset"]{cursor:pointer;-webkit-appearance:button;overflow:visible}input[type="submit"]{cursor:pointer;-webkit-appearance:button;overflow:visible}button[disabled]{cursor:default}input[disabled]{cursor:default}input[type="checkbox"]{box-sizing:border-box;width:13px;height:13px;padding:0}input[type="radio"]{box-sizing:border-box;width:13px;height:13px;padding:0}input[type="search"]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}input[type="search"]::-webkit-search-cancel-button{-webkit-appearance:none}button::-moz-focus-inner{border:0;padding:0}input::-moz-focus-inner{border:0;padding:0}input:invalid{background-color:#f0dddd}textarea:invalid{background-color:#f0dddd}table{border-collapse:collapse;border-spacing:0}td{vertical-align:top}.chromeframe{background:#ccc;color:#000;margin:.2em 0;padding:.2em 0}

/***************************************************************************************************************************************************************************************/

/*BODY STYLES*/

/***************************************************************************************************************************************************************************************/

:root {
  --white: #fff;
  --black: #000;
  --bodyFont: 'Open Sans', sans-serif;
	--red: #ce0e2d;
	--gray: #e5e5e5;
	--blue: #97caeb;
  --orange: #f18a00;
}

html {
    font-size: 100%;
}

body { 
	background: var(--white); 
	color: var(--black); 
	font: 1rem var(--bodyFont); 
    -webkit-font-smoothing: antialiased;
}

a { 
	text-decoration: none;
	transition: all .25s ease;

	color: var(--red);
}

a:hover {
	color: var(--black);
}

input[type=submit],
button {
	border-radius: 0;
	font-family: inherit;
	transition: all .25s ease;
}

img,
svg,
iframe {
	height: auto;
	max-width: 100%;
}

h1 {
	margin-bottom: 20px;

	font-family: 'Encode Sans Expanded', sans-serif;
	font-weight: 300;
	font-size: 60px;
	text-transform: uppercase;

	color: var(--red);
}

h2 {
	margin-bottom: 20px;
	font-family: 'Encode Sans Expanded', sans-serif;
	font-weight: 600;
	font-size: 30px;
	text-transform: uppercase;
}

h3 {
	margin-bottom: 20px;
	font-family: 'Encode Sans Expanded', sans-serif;
	font-weight: 600;
	font-size: 18px;
	text-transform: uppercase;

	color: var(--red);
}

p {
	margin-top: 0;
	line-height: 28px;
	margin-bottom: 20px;
}

p,
ul,
ol {
	
}

header, 
section, 
footer,
article {
	width: 100%;
}

.btn {
	background: var(--red);

	color: #FFF !important;
	text-transform: uppercase;
	font-weight: 600;
	font-size: 16px;

	border-radius: 0;

	padding: 5px 15px;

	border: 1px solid transparent;
}

.btn:hover {
	background: var(--white);
	color: var(--red) !important;
	border: 1px solid var(--red);
}

.btn.btn-black {
	background: var(--black);
}
.btn.btn-black:hover {
	color: var(--black) !important;
	background: var(--white);
	border: 1px solid var(--black);
}

.btn.btn-blue {
	background: var(--blue);
}
.btn.btn-blue:hover {
	color: var(--blue) !important;
	background: var(--white);
	border: 1px solid var(--blue);
}

.btn.btn-orange {
	background: var(--orange);
}
.btn.btn-orange:hover {
	color: var(--orange) !important;
	background: var(--white);
	border: 1px solid var(--orange);
}

.flex-container {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.grid {
	display: grid;
}

.accessibility {
	backface-visibility: hidden;
	left: -999999999px;
	position: absolute;
}

input[type=submit] {
	background: var(--red);
    color: var(--white);
    font-weight: 600;
    text-transform: uppercase;
    border: none;
    padding: 5px 10px;
    margin: 0;
}

.container {
	max-width: 1140px !important;
}

.responsive-only {
	display: none !important;
}

/***************************************************************************************************************************************************************************************/

/*HEADER STYLES*/

/***************************************************************************************************************************************************************************************/

/* Top Header */
header .top-header {
	height: 55px;
}
header .top-header > .container > .flex-container {
	align-items: flex-start;
}

/* Top Header */
header .top-header a.logo {
	position: relative;
	z-index: 9999;
}

/* Top Header - Right */
header .top-header .top-header--right {
	padding: 15px 0;
	align-items: center;
}

/* Top Header - Mini Menu */
header .top-header .top-header--right .mini-menu {
	margin: 0;
	padding: 0;

	list-style: none;

	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: flex-start;

	margin-right: 20px;
}
header .top-header .top-header--right .mini-menu li {
	border-right: 1px solid var(--black);
	padding: 0 10px;
}
header .top-header .top-header--right .mini-menu li:last-child {
	border-right: none;
	padding-right: 0 !important;
}
header .top-header .top-header--right .mini-menu li a {
	color: var(--black);
	text-transform: uppercase;

	font-weight: 600;
	font-size: 14px;
}

/* Top Header - Search */
header .top-header .top-header--right--search-container {
	margin-right: 20px;
}
header .top-header .top-header--right--search-container input {
	border: 1px solid var(--red);
	padding: 2px 5px;

	font-family: var(--bodyFont);
	font-size: 14px;
}
header .top-header .top-header--right--search-container input:focus {
	outline: none;
}
header .top-header .top-header--right--search-container button {
	display: none;
}

/* Top Header - Social Media */
header .top-header .top-header--right .social-media {
	margin: 0;
	padding: 0;

	list-style: none;

	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: flex-start;
}
header .top-header .top-header--right .social-media li {
	margin-right: 5px;
}

/* Bottom Header */
header .bottom-header {
	background: var(--red);
}

/* Bottom Header - Navigation */
header .bottom-header nav {
	position: relative;
	z-index: 99999;

	padding-left: 210px;
}
header .bottom-header nav ul {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;

	justify-content: space-between;
}
header .bottom-header nav ul > li {
	position: relative;
}
header .bottom-header nav ul > li.footer-only {
	display: none;
}
header .bottom-header nav ul > li > a {
	display: block;
	padding: 5px 10px;

	color: var(--white);
	font-weight: 600;
	text-transform: uppercase;
}
header .bottom-header nav ul > li > a:hover {
	text-decoration: none;
	background: var(--white);
	color: var(--red);
}
header .bottom-header nav ul li ul {
	display: none;

	position: absolute;
	top: 100%;

	background: var(--white);
	width: 200px;
	z-index: 9999;
}
header .bottom-header nav ul li:hover ul {
	display: block;
}
header .bottom-header nav ul li ul li a {
	color: var(--red);
	font-size: 14px;
}
header .bottom-header nav ul li ul li a:hover {
	color: var(--white);
	background: var(--red);
}

/***************************************************************************************************************************************************************************************/

/*FOOTER STYLES*/

/***************************************************************************************************************************************************************************************/

/* Top Footer */
footer .top-footer {
	background: var(--black);
	height: 50px;
}
footer .top-footer > .container > .flex-container {
	align-items: flex-start;
}

/* Top Footer - Newsletter Sign Up */
footer .top-footer .top-footer--newsletter-signup {
	padding: 8px 0;
	align-items: center;

	flex: 2;
}
footer .top-footer .top-footer--newsletter-signup p {
	font-family: 'Encode Sans Expanded', sans-serif;
	font-size: 18px;
	font-weight: 600;
	text-transform: uppercase;

	color: var(--white);
	margin-bottom: 0;
}
footer .top-footer .top-footer--newsletter-signup .gform_wrapper {
	flex: 2;
	margin: 0;
}
footer .top-footer .top-footer--newsletter-signup .gform_wrapper .gform_body {
	width: 80%;
	max-width: 100%;
}
#gform_fields_1 #field_1_1 {
	padding-right: 0;
}
#gform_fields_1 #field_1_1 input {
	border: none;
	background: var(--white);
	margin: 0;

	text-align: center;
}
footer .top-footer .top-footer--newsletter-signup .gform_wrapper .gform_footer input {
	background: var(--red);
	color: var(--white);
	font-weight: 600;
	text-transform: uppercase;
	border: none;

	padding: 5px 10px;
	margin: 0;
}

/* Top Footer - Right */
footer .top-footer .top-footer--right {
	align-items: flex-start;
}

/* Top Footer - Social Media Icons */
footer .top-footer .top-footer--right .social-media {
	margin: 0;
	padding: 0;
	list-style: none;

	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;

	margin-right: 40px;
	padding: 10px 0;
}
footer .top-footer .top-footer--right .social-media li {
	margin-right: 10px;
}
footer .top-footer .top-footer--right .social-media li:last-child {
	margin-right: 0;
}

/* Bottom Footer */
footer .bottom-footer {
	background: var(--red);

	padding: 40px 0;
}

/* Bottom Footer - Nav */
footer .bottom-footer .bottom-footer--top--left {
	flex: 2;
	padding-right: 80px;
}
footer .bottom-footer .bottom-footer--top--left ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
footer .bottom-footer .bottom-footer--top--left > ul {
	display: flex;	
	flex-direction: row;
	flex-wrap: nowrap;

	justify-content: space-between;
}
footer .bottom-footer .bottom-footer--top--left > ul > li > a {
	font-weight: bold;
}
footer .bottom-footer .bottom-footer--top--left ul li a {
	color: var(--white);
	font-size: 11px;
}

/* Bottom Footer - Right */
footer .bottom-footer .bottom-footer--top-right {
	padding-top: 90px;
	color: var(--white);
}
footer .bottom-footer .bottom-footer--top-right p {
	text-align: right;
	font-size: 12px;
	line-height: 24px;
}
footer .bottom-footer .bottom-footer--top-right p a {
	color: var(--white);
}
footer .bottom-footer .bottom-footer--top-right p.request-quote {
	font-weight: bold;
}

/* Bottom Footer - Bottom */
footer .bottom-footer .bottom-footer--bottom {
	margin-top: 40px;
	color: var(--white);
	font-weight: 600;
	font-size: 11px;
}
footer .bottom-footer .bottom-footer--bottom a {
	color: var(--white);
}

/***************************************************************************************************************************************************************************************/

/*HOME STYLES*/

/***************************************************************************************************************************************************************************************/

/* Hero */
.hero {
	position: relative;
	z-index: 999;
}
.hero p {
	line-height: 30px;
}
.hero .bold { 
	font-size: 60px !important; 
}
.hero .indent { 
	padding-left: 15px; 
	font-size: 40px !important; 
}
.hero img.ls-layer {
	transform: translateX(-80px);
}

/* Homepage Content */
.homepage-content {
	padding: 80px 0;
}
.homepage-content .bigger {
	font-family: 'Encode Sans Expanded', sans-serif;
	font-size: 30px;
}

/* Homepage Content - Testimonial */
.homepage-content .homepage-content--testimonial {
	background-image: url('images/quote-big.png');
	background-repeat: no-repeat;
	background-position: top left;
	
	padding-left: 65px;
	padding-top: 15px;
}
.homepage-content .homepage-content--testimonial .testimonial {
	font-weight: 300;
	font-style: italic;
	font-size: 20px;
}
.homepage-content .homepage-content--testimonial .reference {
	margin-top: 20px;
	font-weight: 600;
}

/* Buckets */
.homepage-buckets {
	background: var(--red);
	margin-top: 200px;
	padding-bottom: 40px;
}
.homepage-buckets .flex-container {
	flex-wrap: nowrap;
}
.homepage-buckets .bucket {
	flex: 1;
	margin-top: -180px;
}
.homepage-buckets .bucket p {
	margin-top: 20px;

	color: var(--white);
	text-align: right;

	padding-left: 25%;
	padding-right: 20px;
}

/* Latest Posts */
.latest-posts {
	background-color: var(--gray);
	padding-bottom: 80px;
}
.latest-posts .container {
	background-image: url('images/news-dots.png');
	background-repeat: no-repeat;
	background-position: top right;

	padding-top: 80px;
}
.latest-posts h2 {
	color: var(--red);
	margin-bottom: 60px;
}
.latest-posts .posts .content {
	color: #FFF;
}

/* Latest News */
.latest-news {
	background-color: var(--red);
}
.latest-news .container {
	background-image: url('images/posts-dots.png');
	background-repeat: no-repeat;
	background-position: bottom right;

	padding-top: 40px;
	min-height: 660px;
}
.latest-news h2 {
	color: var(--white);
	margin-bottom: 20px;
}
.latest-news .posts .content h3 {
	color: var(--white);
}
.latest-news .posts .publication {
	margin-bottom: 10px;
}
.latest-news .posts .publication a {
	color: var(--white);
}
.latest-news .posts .content p {
	color: var(--white);
}

/* Video */
.homepage-video {
	padding: 100px 0;
}
.homepage-video h2 {
	color: var(--red);
	margin-bottom: 20px;
}
.homepage-video .video-container {
	position: relative;
	overflow: hidden;
	padding-top: 56.25%;
	border: 20px solid #FFF;
	-webkit-box-shadow: 0px 0px 15px 0px rgb(0 0 0 / 75%);
	-moz-box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.75);
	box-shadow: 0px 0px 15px 0px rgb(0 0 0 / 75%);
}
.homepage-video .video-container iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

/***************************************************************************************************************************************************************************************/

/*LEARNING CENTER PAGE STYLES*/

/***************************************************************************************************************************************************************************************/

.page-template-page-learning-center .page-hero {
	height: 135px;
	padding-top: 0;
}

/***************************************************************************************************************************************************************************************/

/*DEFAULT PAGE STYLES*/

/***************************************************************************************************************************************************************************************/

.alignleft { 
	float: left; 
	margin-right: 15px; 
}

.alignright { 
	float: right; 
	margin-left: 15px; 
}

.aligncenter {
    display: block;
    margin: 0 auto 20px;
}

.alignnone {
    display: block;
    margin: 0 0 20px;
}

.wp-caption {
    max-width: 100%;
}

/***Page Hero***/
.page-hero {
	background: no-repeat center;
	background-size: cover;

	width: 100%;
	padding-top: 42.25%;
	position: relative;

	max-height: 550px;
}
.page-hero .container {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
}

.page-hero .page-hero--content-container {
	display: flex;
	flex-direction: column;
	height: 550px;
}
.page-hero .page-hero--content-container .page-hero--content-container--content {
	margin-top: auto;
	margin-bottom: 10px;
	margin-left: 60px;
}
.page-hero .page-hero--content-container .page-hero--content-container--content p {
	font-size: 31px;
	font-weight: 500;
	font-family: 'Encode Sans Expanded', sans-serif;
	color: var(--red);

	line-height: 36px;
}
.page-hero .page-hero--content-container .page-hero--content-container--content p span.bigger {
	font-size: 48px;
}
.page-hero .page-hero--content-container .page-hero--content-container--content p span.pos-indent {
	padding-left: 20px;
}
.page-hero .page-hero--content-container .page-hero--content-container--content p span.neg-indent {
	margin-left: -20px;
}

/* Page Content */
.page-content {
	padding-top: 60px;
	padding-bottom: 80px;
}

.page-content ul {
	margin: 0;
	padding: 0;

	padding-left: 20px;
}
.page-content ul li {
	margin-bottom: 10px;
}

.page-content-no-hero {
	padding-top: 210px;
}

/* Posts */
.posts .image {
	position: relative;
	height: 240px;

	background-size: cover;
	background-position: center;

	border: 2px solid var(--white);
}
.posts .image .date {
	position: absolute;
	top: 10px;
	right: 10px;

	background: var(--red);
	border: 2px solid var(--white);

	width: 60px;
}
.posts .image .date span {
	display: block;
	font-weight: bold;
	text-align: center;
	color: var(--white);

	line-height: 24px;
}
.posts .image .date span.month {
	font-size: 16px;
}
.posts .image .date span.day {
	font-size: 32px;
}
.posts .image .date span.year {
	font-size: 14px;
}
.posts .content {
	margin-top: 10px;
}

/* Post List */
.post-list {
	margin-top: 40px;
	margin-bottom: 20px;
}
.post-list .post {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;

	align-items: center;
	
	border-bottom: 1px solid #000;
	
	padding-bottom: 10px;
	margin-bottom: 10px;
}
.post-list .post .date {
	flex-basis: 10%;
	flex-grow: 0;
	flex-shrink: 0;
}
.post-list .post .title {
	flex-basis: 65%;
	flex-grow: 0;
	flex-shrink: 0;
	
	margin-left: 20px;
}
.post-list .post .title a {
	line-height: 25px;
	color: #000;
}
.post-list .post .read-more {
	flex-grow: 0;
	flex-shrink: 0;
	
	margin-top: 4px;
	margin-left: auto;
}
.post-list .post p {
	margin-bottom: 0;
	line-height: 1rem;
}

/***************************************************************************************************************************************************************************************/

/*ABOUT US PAGE STYLES*/

/***************************************************************************************************************************************************************************************/

/* About Us Page Content */
.page-id-91 .page-content {
	padding-bottom: 0;
}

.page-id-91 .page-hero .dots {
  position: absolute;
  right: 35px;
  top: 0;
  
	width: 280px;
	height: 550px;

  background: inherit;
  background-image: url('images/page-hero-dots.png');
	background-repeat: no-repeat;
  z-index: 999;
}

/* About Us Intro */
.about-us-intro {
	padding-bottom: 80px;
	position: relative;
}
.about-us-intro .side-image {
	margin-top: -260px;
}

/* Leadership Team */
#leadership-team--headline {
	background-position: top left !important;
	height: 210px;

	padding-left: 160px;
	padding-top: 40px;

	margin-bottom: 60px;
}
.managers-row {
	margin-bottom: 80px;
}
.managers-row h2 {
	color: var(--red);
	margin-bottom: 10px;
}
.team-row h3 {
	color: var(--red);
	margin-bottom: 0;
}

/***************************************************************************************************************************************************************************************/

/*WARM FLOOR PAGE STYLES*/

/***************************************************************************************************************************************************************************************/

.page-template-page-warmfloor .page-hero {
	background-position: bottom center;
}

/* Warmfloor Page Content */
.warmfloor-page-content .page-container {
	background-image: url('images/warmfloor-dots.png');
	background-repeat: no-repeat;
	background-position: 60px 100%;
}
.warmfloor-page-content .page-container.no-dots {
	background-image: none !important;
}
.warmfloor-page-content h2 {
	color: var(--red);
}

/* Warmfloor Side Menu */
.warmfloor-page-content .warmfloor--menu {
	margin-top: 18px;
}
.warmfloor-page-content .warmfloor--menu ul {
	display: block;
	list-style: none;

	margin: 0;
	padding: 0;
}
.warmfloor-page-content .warmfloor--menu ul li {
	position: relative;
}
.warmfloor-page-content .warmfloor--menu ul li a {
	display: block;
	margin-bottom: 10px;

	color: var(--black);
	text-transform: uppercase;
}
.warmfloor-page-content .warmfloor--menu ul li.current-menu-item > a, .warmfloor-page-content .warmfloor--menu ul li > a:hover {
	font-weight: bold;
	color: var(--red);
	text-decoration: none;
}
.warmfloor-page-content .warmfloor--menu ul li.current-menu-item > a:before, .warmfloor-page-content .warmfloor--menu ul li > a:hover:before {
	position: absolute;
	left: -20px;
	top: 8px;

	content: ' ';
	display: block;
	width: 10px;
	border-top: 4px solid var(--red);
}

/* Learning Center */
.warmfloor--learning-center {
	border-top: 2px solid var(--red);
	padding-top: 40px;

	margin-top: 80px;
}
.warmfloor--learning-center .learning-center--download {
	align-items: flex-end;
	
	border-bottom: 1px solid var(--red);
	
	margin-bottom: 5px;
	padding-bottom: 5px;
}

/* Residential Page */
.page-id-146 .page-hero .page-hero--content-container .page-hero--content-container--content {
	margin-top: 15%;
	margin-bottom: 0;
	margin-left: auto;
	margin-right: 80px;
}

/* Commercial Page */
.page-id-154 .page-hero .page-hero--content-container .page-hero--content-container--content {
	margin-top: 21%;
	margin-bottom: 0;
	margin-left: 90px;
	margin-right: auto;
}

/* RV Page */
.page-id-159 .page-hero .page-hero--content-container .page-hero--content-container--content {
	margin-top: 8%;
	margin-bottom: 0;
	margin-left: auto;
	margin-right: 80px;
}
.page-id-159 .page-hero .page-hero--content-container .page-hero--content-container--content p {
	color: var(--white);
}

.warmfloor-page-content .warmfloor-table {
	width: 70%;
	vertical-align: middle;
}
.warmfloor-page-content .warmfloor-table th {
	text-align: center;
	border-top: none;
	border-bottom: none;
}
.warmfloor-page-content .warmfloor-table td {
	border-top: none;
	border-bottom: 1px solid var(--red);
	
	padding: 5px 0;
	vertical-align: middle;
}
.warmfloor-page-content .warmfloor-table table {
	width: 100%;
}
.warmfloor-page-content .warmfloor-table table td {
	border-bottom: none;
	text-align: center;
	
	width: 50%;
}

/* Cost to Operate Page */
.cost-to-operate-embed iframe {
	height: 450px;
}

/* Additional Components Page */
.page-id-1227 .page-content {
	padding-bottom: 0;
}

/***************************************************************************************************************************************************************************************/

/*SNOW MELT PAGE STYLES*/

/***************************************************************************************************************************************************************************************/

/* Snowmelt Page Content */
.snowmelt-page-content .page-container {
	background-image: url('images/warmfloor-dots.png');
	background-repeat: no-repeat;
	background-position: 60px 100%;
}
.snowmelt-page-content .page-container.no-dots {
	background-image: none !important;
}
.snowmelt-page-content h1, .snowmelt-page-content h2, .snowmelt-page-content h3 {
	color: var(--blue);
}

/* Snowmelt Side Menu */
.snowmelt-page-content .snowmelt--menu {
	margin-top: 18px;
}
.snowmelt-page-content .snowmelt--menu ul {
	display: block;
	list-style: none;

	margin: 0;
	padding: 0;
}
.snowmelt-page-content .snowmelt--menu ul li {
	position: relative;
}
.snowmelt-page-content .snowmelt--menu ul li a {
	display: block;
	margin-bottom: 10px;

	color: var(--black);
	text-transform: uppercase;
}
.snowmelt-page-content .snowmelt--menu ul li.current-menu-item > a, .snowmelt-page-content .snowmelt--menu ul li > a:hover {
	font-weight: bold;
	color: var(--blue);
	text-decoration: none;
}
.snowmelt-page-content .snowmelt--menu ul li.current-menu-item > a:before, .snowmelt-page-content .snowmelt--menu ul li > a:hover:before {
	position: absolute;
	left: -20px;
	top: 8px;

	content: ' ';
	display: block;
	width: 10px;
	border-top: 4px solid var(--blue);
}

.snowmelt-page-content .snowmelt-table {
	width: 70%;
	vertical-align: middle;
}
.snowmelt-page-content .snowmelt-table th {
	text-align: center;
	border-top: none;
	border-bottom: none;
}
.snowmelt-page-content .snowmelt-table td {
	border-top: none;
	border-bottom: 1px solid var(--blue);
	
	padding: 5px 0;
	vertical-align: middle;
}
.snowmelt-page-content .snowmelt-table table {
	width: 100%;
}
.snowmelt-page-content .snowmelt-table table td {
	border-bottom: none;
	text-align: center;
	
	width: 50%;
}

.snowmelt-page-content .accessory-description {
	border-bottom: 1px solid var(--blue);
	padding-bottom: 20px;
}
.snowmelt-page-content .accessory-description .button-container {
	text-align: right;
}

/* Learning Center */
.snowmelt--learning-center {
	border-top: 2px solid var(--blue);
	padding-top: 40px;

	margin-top: 80px;
}
.snowmelt--learning-center .learning-center--download {
	align-items: flex-end;
	
	border-bottom: 1px solid var(--blue);
	
	margin-bottom: 5px;
	padding-bottom: 5px;
}

/* Snowmelt Page */
.page-id-167 .page-hero .page-hero--content-container .page-hero--content-container--content {
	margin-top: 5%;
	margin-left: 40%;
	margin-bottom: 0;
}
.page-id-167 .page-hero .page-hero--content-container .page-hero--content-container--content p {
	color: var(--white);
}

/* Roof Page */
.page-id-180 .page-hero .page-hero--content-container .page-hero--content-container--content {
	margin-top: 20%;
	margin-left: 20%;
	margin-bottom: 0;
}
.page-id-180 .page-hero .page-hero--content-container .page-hero--content-container--content p {
	color: var(--blue);
}

.page-id-180 .snowmelt-page-content .page-container {
	background-image: none;
}
.page-id-180 .snowmelt-page-content .page-container .snowmelt--menu {
	position: relative;
}
.page-id-180 .snowmelt-page-content .page-container .snowmelt--menu:after {
	display: block;
	content: ' ';
	
	width: 385px;
	height: 560px;
	
	float: left;
	
	background-image: url('images/warmfloor-dots.png');
	background-repeat: no-repeat;
	background-position: 0 0;
	
	position: absolute;
	left: -170%;
    top: 120%;
}

.page-id-180 .roof-benefits h3 {
	color: var(--black);
}

.page-id-180 .snowmelt--learning-center {
	margin-top: 0;
}

/* Gutter Page */
.page-id-185 .page-hero .page-hero--content-container .page-hero--content-container--content {
	margin-top: 5%;
	margin-left: 18%;
	margin-bottom: 0;
}
.page-id-185 .page-hero .page-hero--content-container .page-hero--content-container--content p {
	color: var(--blue);
}

/* Ground Page */
.page-id-191 .page-hero .page-hero--content-container .page-hero--content-container--content {
	margin-top: 35%;
	margin-left: 60%;
	margin-bottom: 0;
}
.page-id-191 .page-hero .page-hero--content-container .page-hero--content-container--content p {
	color: var(--blue);
}

/* Additional Components Page */
.page-id-221 .page-content {
	padding-bottom: 0;
}

/***************************************************************************************************************************************************************************************/

/*INDUSTRIAL PAGE STYLES*/

/***************************************************************************************************************************************************************************************/

/* Industrial Page Content */
.industrial-page-content .page-container {
	background-image: url('images/warmfloor-dots.png');
	background-repeat: no-repeat;
	background-position: 60px 100%;
}
.industrial-page-content .page-container.no-dots {
	background-image: none !important;
}
.industrial-page-content h1, .industrial-page-content h2, .industrial-page-content h3 {
	color: var(--orange);
}

/* industrial Side Menu */
.industrial-page-content .industrial--menu {
	margin-top: 18px;
}

.industrial-page-content .industrial--menu ul {
	display: block;
	list-style: none;

	margin: 0;
	padding: 0;
}
.industrial-page-content .industrial--menu ul li {
	position: relative;
}
.industrial-page-content .industrial--menu ul li a {
	display: block;
	margin-bottom: 10px;

	color: var(--black);
	text-transform: uppercase;
}
.industrial-page-content .industrial--menu ul li.current-menu-item > a, .industrial-page-content .industrial--menu ul li > a:hover {
	font-weight: bold;
	color: var(--orange);
	text-decoration: none;
}
.industrial-page-content .industrial--menu ul li.current-menu-item > a:before, .industrial-page-content .industrial--menu ul li > a:hover:before {
	position: absolute;
	left: -20px;
	top: 8px;

	content: ' ';
	display: block;
	width: 10px;
	border-top: 4px solid var(--orange);
}

.industrial-page-content .industrial-table {
	width: 70%;
	vertical-align: middle;
}
.industrial-page-content .industrial-table th {
	text-align: center;
	border-top: none;
	border-bottom: none;
}
.industrial-page-content .industrial-table td {
	border-top: none;
	border-bottom: 1px solid var(--orange);
	
	padding: 5px 0;
	vertical-align: middle;
}
.industrial-page-content .industrial-table table {
	width: 100%;
}
.industrial-page-content .industrial-table table td {
	border-bottom: none;
	text-align: center;
	
	width: 50%;
}

.industrial-page-content .accessory-description {
	border-bottom: 1px solid var(--orange);
	padding-bottom: 20px;
}
.industrial-page-content .accessory-description .button-container {
	text-align: right;
}

/* Learning Center */
.industrial--learning-center {
	border-top: 2px solid var(--orange);
	padding-top: 40px;

	margin-top: 80px;
}
.industrial--learning-center .learning-center--download {
	align-items: flex-end;
	
	border-bottom: 1px solid var(--orange);
	
	margin-bottom: 5px;
	padding-bottom: 5px;
}

/***************************************************************************************************************************************************************************************/

/*FAQ PAGE STYLES*/

/***************************************************************************************************************************************************************************************/
.arrow-r {
	width: 0;
	height: 0;

	border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 5px solid #000;
	display: inline-block;
}

.arrow-d {
	width: 0;
	height: 0;
	border-left: 5px solid transparent;
  border-right: 5px solid transparent;
	border-bottom: 5px solid #000;
	display: inline-block;
}

.collapse-container>:nth-child(odd) {
	padding: 10px;
	background-color: #FFF;
	border: 1px solid black;
	margin: auto;

	display: flex;
	justify-content: space-between;
	align-items: center;
}
.collapse-container>:nth-child(even) {
	background-color: white;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border: 1px solid black;
	padding: 20px;
}
.collapse-container>:nth-child(even) p:last-child {
	margin-bottom: 0;
}
.collapse-container>:nth-child(odd):hover {
	cursor: pointer;
	-moz-user-select: none; /* mozilla browsers */
    -khtml-user-select: none; /* webkit browsers */
}

/***************************************************************************************************************************************************************************************/

/*VIDEO PAGE STYLES*/

/***************************************************************************************************************************************************************************************/

.videos {
	padding: 40px 0;
}
.videos .video {
	margin-bottom: 20px;
}
.videos .video .video-title {
	background: var(--red);
  padding: 5px 10px;
	min-height: 130px;
	
	color: #FFF;
}
.videos .video .video-title p a {
	color: #FFF;
	font-weight: bold;
}

/***************************************************************************************************************************************************************************************/

/*TESTIMONIAL PAGE STYLES*/

/***************************************************************************************************************************************************************************************/

.testimonials .testimonial {
	border-bottom: 1px solid var(--red);
	padding-bottom: 40px;
	padding-left: 75px;
	padding-top: 20px;
	margin-bottom: 40px;
	background-image: url('images/quote-big.png');
	background-position: left top;
	background-repeat: no-repeat;
}

/***************************************************************************************************************************************************************************************/

/*NEWS & PRESS PAGE*/

/***************************************************************************************************************************************************************************************/

.page-template-page-news-and-press .news .publication a {
	color: var(--black);
}

.page-template-page-news-and-press .news .posts {
	margin-bottom: 60px;
}

.page-template-page-news-and-press .news .posts .post {
	display: flex;
	flex-direction: column;
}
.page-template-page-news-and-press .news .posts .post .content {
	display: flex;
	flex-direction: column;
	align-items: flex-start;

	height: 50%;
}
.page-template-page-news-and-press .news .posts .post .content a.btn {
	margin-top: auto;
	display: inline-block;
}

.page-template-page-news-and-press .press-releases {
	margin-top: 40px;
}
.page-template-page-news-and-press .press-releases h2 {
	color: var(--red);
}

/***************************************************************************************************************************************************************************************/

/*EVENT PAGE STYLES*/

/***************************************************************************************************************************************************************************************/

.events { 
	padding: 20px 0; 
}
.events .event { 
	display: flex;
	align-items: flex-start;

	min-height: 125px;
	border-bottom: 1px dotted #a4a6a9;

	margin-top: 60px;
}
.events .event:last-child { 
	border-bottom: none; 
}
.events .event .date {
	color: #FFF;
	background: var(--red);

	width: 105px;
	margin-right: 20px; 
	
	flex-grow: 0;
	flex-shrink: 0;
	padding: 20px;
}
.events .event .date span {
	display: block;
	font-weight: bold;
    text-align: center;
    color: var(--white);
    line-height: 24px;
	margin-bottom: 10px;
}
.events .event .date .day { 
	font-size: 2.750rem; 
}
.events .event .date .month {  
	font-size: 2rem;
}
.events .event .date .year {
	font-size: 1.5rem;
	margin-bottom: 0;
}
.events h2 {
	color: #000000; 
	margin: 0; 
}
.events .event-content .event-text p.location {
	text-transform: uppercase;
}

/***************************************************************************************************************************************************************************************/

/*FORM STYLES*/

/***************************************************************************************************************************************************************************************/

/* Global */
.gform_wrapper .top_label .gsection_description {
	font-size: 1rem;
	margin-top: 10px;
}
.gform_wrapper li.gfield.gf_list_2col ul.gfield_checkbox li label, .gform_wrapper li.gfield.gf_list_2col ul.gfield_radio li label, .gform_wrapper li.gfield.gf_list_3col ul.gfield_checkbox li label, .gform_wrapper li.gfield.gf_list_3col ul.gfield_radio li label, .gform_wrapper li.gfield.gf_list_4col ul.gfield_checkbox li label, .gform_wrapper li.gfield.gf_list_4col ul.gfield_radio li label {
	margin-top: 8px;
}

/* Roof Quote */
#field_4_14 {
	margin-top: 20px;
}
#field_4_17 {
	margin-top: 40px;
	margin-bottom: 40px;
}

/* RV Quote */
#field_5_33 {
	margin-top: 20px;
}
#field_5_17 {
	margin-top: 40px;
	margin-bottom: 40px;
}
#field_5_26, #field_5_27, #field_5_32, #field_5_34 {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;

	align-items: center;
}
#field_5_26 .gfield_label, #field_5_27 .gfield_label, #field_5_32 .gfield_label, #field_5_34 .gfield_label {
	flex-basis: 100%;
	flex-grow: 0;
	flex-shrink: 0;
}
#field_5_26 .ginput_container, #field_5_27 .ginput_container, #field_5_32 .ginput_container, #field_5_34 .ginput_container {
	flex-basis: 75%;
	flex-grow: 0;
	flex-shrink: 0;

	margin-top: 0;
	padding-right: 10px;
}
#field_5_26 .gfield_description, #field_5_27 .gfield_description, #field_5_32 .gfield_description, #field_5_34 .gfield_description {
	flex-basis: 25%;
	flex-grow: 0;
	flex-shrink: 0;

	padding-top: 0;
}

/* Warmfloor Quote */
#field_6_33 {
	margin-top: 20px;
}
#field_6_17 {
	margin-top: 40px;
	margin-bottom: 40px;
}
#field_6_26, #field_6_27, #field_6_32, #field_6_34, #field_6_41 {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;

	align-items: center;
}
#field_6_26 .gfield_label, #field_6_27 .gfield_label, #field_6_32 .gfield_label, #field_6_34 .gfield_label, #field_6_41 .gfield_label {
	flex-basis: 100%;
	flex-grow: 0;
	flex-shrink: 0;
}
#field_6_26 .ginput_container, #field_6_27 .ginput_container, #field_6_32 .ginput_container, #field_6_34 .ginput_container, #field_6_41 .ginput_container {
	flex-basis: 75%;
	flex-grow: 0;
	flex-shrink: 0;

	margin-top: 0;
	padding-right: 10px;
}
#field_6_26 .gfield_description, #field_6_27 .gfield_description, #field_6_32 .gfield_description, #field_6_34 .gfield_description, #field_6_41 .gfield_description {
	flex-basis: 25%;
	flex-grow: 0;
	flex-shrink: 0;

	padding-top: 0;
}

/***************************************************************************************************************************************************************************************/

/*QUOTE PAGE STYLES*/

/***************************************************************************************************************************************************************************************/

.page-template-page-quote .page-hero {
	height: 135px;
}

/***************************************************************************************************************************************************************************************/

/*MQ MAX-WIDTH 950*/

/***************************************************************************************************************************************************************************************/

@media only screen and (max-width: 1020px) {
	
	/* Header */
	header .top-header {
		height: auto;
	}

	header .top-header a.logo {
		display: none;
	}

	header .top-header .responsive-only {
		display: block !important;
		margin-bottom: 20px;
	}
	header .top-header > .container > .flex-container {
		align-items: center;
		justify-content: center;
	}
	header .top-header .top-header--right {
		flex-direction: column;
	}

	header .top-header .top-header--right .mini-menu, header .top-header .top-header--right--search-container {
		margin-right: 0;
		margin-bottom: 20px;
	}

	header .bottom-header nav {
		padding-left: 0;
	}
}

@media only screen and (max-width: 970px) {
	/* Footer */
	footer .top-footer .top-footer--newsletter-signup {
		justify-content: center;
	}
	footer .top-footer .top-footer--right, footer .bottom-footer .bottom-footer--top--left {
		display: none;
	}

	footer .bottom-footer {
		padding: 0;
	}
	footer .bottom-footer .bottom-footer--top {
		justify-content: center;
	}
	footer .bottom-footer .bottom-footer--top-right {
		padding-top: 0;
	}
	footer .bottom-footer .bottom-footer--top-right .responsive-only {
		display: block !important;
	}
	footer .bottom-footer .bottom-footer--top-right .responsive-only img {
		display: block !important;
		margin: 0 auto;
	}
	footer .bottom-footer .bottom-footer--top-right p {
		text-align: center;
	}
}

@media only screen and (max-width: 815px) {
	
	/* Header */
	header {
		clear: both;
	}
	header .top-header .top-header--right .mini-menu {
		flex-direction: column;
		align-items: center;
	}
	header .top-header .top-header--right .mini-menu li {
		border-right: 0;
		padding: 5px 0;
		text-align: center;
	}
}

@media only screen and (max-width: 810px) {
	#menu-primary, header .top-header .top-header--right .mini-menu {
		display: none;
	}
}

@media only screen and (max-width: 780px) {

	/* Home */
	.homepage-buckets {
		padding-top: 40px;
		margin-top: 0;
	}
	.homepage-buckets .flex-container {
		flex-direction: column;
	}
	.homepage-buckets .bucket {
		margin-top: 0;
		margin-bottom: 20px;
	}
	.homepage-buckets .bucket img {
		display: block;
		margin: 0 auto;
	}
	.homepage-buckets .bucket p {
		padding: 0;
		margin: 0;

		text-align: center;
	}

	/* About Us */
	.about-us-intro .side-image {
		margin-top: 0;
	}
	.about-us-intro .side-image img {
		display: block;
		margin: 0 auto;
	}

	.team-row img {		
		display: block;
		margin: 0 auto;
	}
	.team-row h3, .team-row p {
		text-align: center;
	}

	/* Warmfloor Page */
	.warmfloor-page-content .warmfloor-table {
		width: 100%;
	}

	/* Snowmelt Page */
	.snowmelt-page-content .snowmelt-table {
		width: 100%;
	}

	/* Industrial Page */
	.industrial-page-content .industrial-table {
		width: 100%;
	}

	.thermostats-row {
		text-align: center;
	}
	.thermostats-row img {
		display: block;
		margin: 0 auto;

		width: 50%;
	}
	.product-row {
		text-align: center;
	}
	.product-row img {
		display: block;
		margin: 0 auto;
	}
	.product-row ul, .thermostats-row ul {
		list-style: inside;
	}
}

@media only screen and (max-width: 767px) {

	.page-content-no-hero {
		padding-top: 40px;
	}
	
	/* Warmfloor Page */
	.warmfloor-page-content .warmfloor--menu {
		margin-left: 0;
		margin-bottom: 20px;
	}
	.warmfloor-page-content .warmfloor--menu select {
		width: 100%;
	}
	.warmfloor--learning-center img {
		display: block;
		margin: 0 auto;
	}
	.warmfloor--learning-center h2 {
		text-align: center;
	}
	.warmfloor-page-content .page-container {
		background-image: none;
	}

	/* Snowmelt Page */
	.snowmelt-page-content .snowmelt--menu {
		margin-left: 0;
		margin-bottom: 20px;
	}
	.snowmelt-page-content .snowmelt--menu select {
		width: 100%;
	}
	.snowmelt--learning-center img {
		display: block;
		margin: 0 auto;
	}
	.snowmelt--learning-center h2 {
		text-align: center;
	}
	.snowmelt-page-content .page-container {
		background-image: none;
	}

	/* Industrial Page */
	.industrial-page-content .industrial--menu {
		margin-left: 0;
		margin-bottom: 20px;
	}
	.industrial-page-content .industrial--menu select {
		width: 100%;
	}
	.industrial--learning-center img {
		display: block;
		margin: 0 auto;
	}
	.industrial--learning-center h2 {
		text-align: center;
	}
	.industrial-page-content .page-container {
		background-image: none;
	}

	/* News and Press */
	.page-template-page-news-and-press .news .posts {
		margin-bottom: 0;
	}
	.page-template-page-news-and-press .news .posts .post {
		margin-bottom: 40px;
	}
}

@media only screen and (max-width: 685px) {
	
	/* Warmfloor */
	.warmfloor--learning-center .learning-center--download {
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	.warmfloor--learning-center .learning-center--download .left, .warmfloor--learning-center .learning-center--download .right {
		margin-bottom: 10px;
	}

	/* Snowmelt */
	.snowmelt--learning-center .learning-center--download {
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	.snowmelt--learning-center .learning-center--download .left, .snowmelt--learning-center .learning-center--download .right {
		margin-bottom: 10px;
	}

	/* Industrial */
	.industrial--learning-center .learning-center--download {
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	.industrial--learning-center .learning-center--download .left, .industrial--learning-center .learning-center--download .right {
		margin-bottom: 10px;
	}
}

@media only screen and (max-width: 650px) {
	
	/* Footer */
	footer .top-footer {
		height: auto;
	}
	footer .top-footer .top-footer--newsletter-signup {
		flex-direction: column;
	}
	footer .top-footer .top-footer--newsletter-signup p {
		margin-bottom: 5px;
	}
	footer .top-footer .top-footer--newsletter-signup .gform_wrapper {
		flex-basis: 100%;
		flex-grow: 0;
		flex-shrink: 0;
		width: 100%;
	}
	footer .top-footer .top-footer--newsletter-signup .gform_wrapper .gform_body {
		width: 100%;
	}
	footer .top-footer .top-footer--newsletter-signup .gform_wrapper .gform_footer {
		margin: 0;
	}
}

@media only screen and (max-width: 575px) {

	/* About Us */
	#leadership-team--headline {
		padding-left: 140px;
	}
	#leadership-team--headline h1 {
		font-size: 2.813rem;
	}

}

@media only screen and (max-width: 478px) {
	h1 {
		font-size: 35px;
	}
}

@media only screen and (max-width: 445px) {

	/* About Us */
	#leadership-team--headline h1 {
		font-size: 35px;
	}
	
	/* Footer */
	footer .bottom-footer .bottom-footer--bottom {
		flex-direction: column;
		justify-content: center;
		align-items: center;
		align-content: center;
	}

}
