/*
Theme Name: Hydropool Mississauga
Date: 26 April 2016
Author: Peter Wooster
Description: Styles for new Hydropool Miss website
Version: 1.0
License: GNU General Public License
License URI: license.txt
Text Domain: HydroMiss
Domain Path: /languages/
Tags:

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

 Copyright (C) 2016 Blueprint Internet Marketing
 California PPC is based on Underscores http://underscores.me/, (C) 2012-2013 Automattic, Inc.

Resetting and rebuilding styles have been helped along thanks to the fine work of
Eric Meyer http://meyerweb.com/eric/tools/css/reset/index.html
along with Nicolas Gallagher and Jonathan Neal http://necolas.github.com/normalize.css/
and Blueprint http://www.blueprintcss.org/
*/


/* =Reset
-------------------------------------------------------------- */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	border: 0;
	font-family: inherit;
	font-size: 100%;
	font-style: inherit;
	font-weight: inherit;
	margin: 0;
	outline: 0;
	padding: 0;
	vertical-align: baseline;
}
html {
	font-size: 62.5%; /* Corrects text resizing oddly in IE6/7 when body font-size is set using em units http://clagnut.com/blog/348/#c790 */
	overflow-y: scroll; /* Keeps page centered in all browsers regardless of content height */
	-webkit-text-size-adjust: 100%; /* Prevents iOS text size adjust after orientation change, without disabling user zoom */
	-ms-text-size-adjust:     100%; /* www.456bereastreet.com/archive/201012/controlling_text_size_in_safari_for_ios_without_disabling_user_zoom/ */
}
*,
*:before,
*:after { /* apply a natural box layout model to all elements; see http://www.paulirish.com/2012/box-sizing-border-box-ftw/ */
	-webkit-box-sizing: border-box; /* Not needed for modern webkit but still used by Blackberry Browser 7.0; see http://caniuse.com/#search=box-sizing */
	-moz-box-sizing:    border-box; /* Still needed for Firefox 28; see http://caniuse.com/#search=box-sizing */
	box-sizing:         border-box;
}
body {
	background: #fff;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
nav,
section {
	display: block;
}
ol, ul {
	list-style: none;
}
table { /* tables still need 'cellspacing="0"' in the markup */
	border-collapse: separate;
	border-spacing: 0;
}
caption, th, td {
	font-weight: normal;
	text-align: left;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: "";
}
blockquote, q {
	quotes: "" "";
}
a:focus {
	outline: thin dotted;
}
a:hover,
a:active {
	outline: 0;
}
a img {
	border: 0;
}


/* =Global
----------------------------------------------- */

body,
button,
input,
select,
textarea {
	color: #4d4d4d;
	font-family: sans-serif;
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 1.4;
}

/* Headings */
h1, h2, h3, h4, h5, h6 {
	color:#000000;
	font-weight:300;
}

h1 {
    font-weight:300;
}

hr {
	background-color: #868686;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

/* Text elements */
p {
	margin-bottom: 1em;
        font-size:1em;
}

ul, ol {
	margin: 0 0 1.5em 3em;
}

ul.disc, 
ul {
	list-style: disc;
}
ol {
	list-style: decimal;
}
li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}
dt {
	font-weight: bold;
}
dd {
	margin: 0 1.5em 1.5em;
}
b, strong {
	font-weight: 500;
        color:#02194e;
}

dfn, cite, em, i {
	font-style: italic;
}
blockquote {
	margin: 0 1.5em;
}
address {
	margin: 0 0 1.5em;
}
pre {
	background: #eee;
	font-family: "Courier 10 Pitch", Courier, monospace;
	font-size: 15px;
	font-size: 1.5rem;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}
code, kbd, tt, var {
	font: 15px Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}
abbr, acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}
mark, ins {
	background: #fff9c0;
	text-decoration: none;
}
sup,
sub {
	font-size: 75%;
	height: 0;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}
sup {
	font-size: 50%;
	bottom: 1.4ex;
}
sub {
	top: .5ex;
}
small {
	font-size: 75%;
}
big {
	font-size: 125%;
}
figure {
	margin: 0;
}
table {
	margin: 0 0 1.5em;
	width: 100%;
}
th {
	font-weight: bold;
}

p.options{
    line-height: 1;
}
p.options img {
    margin:0 .5em .5em 0;
}

img {
	height: auto; /* Make sure images are scaled correctly. */
	max-width: 100%; /* Adhere to container width. */
}
button,
input,
select,
textarea {
	font-size: 100%; /* Corrects font size not being inherited in all browsers */
	margin: 0; /* Addresses margins set differently in IE6/7, F3/4, S5, Chrome */
	vertical-align: baseline; /* Improves appearance and consistency in all browsers */
	*vertical-align: middle; /* Improves appearance and consistency in all browsers */
}
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 1px solid #ccc;
	border-color: #ccc #ccc #bbb #ccc;
	background: #e6e6e6;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.5), inset 0 15px 17px rgba(255, 255, 255, 0.5), inset 0 -5px 12px rgba(0, 0, 0, 0.05);
	color: rgba(0, 0, 0, .8);
	cursor: pointer; /* Improves usability and consistency of cursor style between image-type 'input' and others */
	-webkit-appearance: button; /* Corrects inability to style clickable 'input' types in iOS */
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 1;
	padding: .6em 1em .4em;
	text-shadow: 0 1px 0 rgba(255, 255, 255, 0.8);
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	border-color: #ccc #bbb #aaa #bbb;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8), inset 0 15px 17px rgba(255, 255, 255, 0.8), inset 0 -5px 12px rgba(0, 0, 0, 0.02);
}
button:focus,
input[type="button"]:focus,
input[type="reset"]:focus,
input[type="submit"]:focus,
button:active,
input[type="button"]:active,
input[type="reset"]:active,
input[type="submit"]:active {
	border-color: #aaa #bbb #bbb #bbb;
	box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 0.5), inset 0 2px 5px rgba(0, 0, 0, 0.15);
}
input[type="checkbox"],
input[type="radio"] {
	padding: 0; /* Addresses excess padding in IE8/9 */
}
input[type="search"] {
	-webkit-appearance: textfield; /* Addresses appearance set to searchfield in S5, Chrome */
	-webkit-box-sizing: content-box; /* Addresses box sizing set to border-box in S5, Chrome (include -moz to future-proof) */
	-moz-box-sizing:    content-box;
	box-sizing:         content-box;
}
input[type="search"]::-webkit-search-decoration { /* Corrects inner padding displayed oddly in S5, Chrome on OSX */
	-webkit-appearance: none;
}
button::-moz-focus-inner,
input::-moz-focus-inner { /* Corrects inner padding and border displayed oddly in FF3/4 www.sitepen.com/blog/2008/05/14/the-devils-in-the-details-fixing-dojos-toolbar-buttons/ */
	border: 0;
	padding: 0;
}
input[type="tel"],
input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
textarea {
	color: #666;
	border: 1px solid #ccc;
	border-radius: 0;
}
input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
textarea:focus {
	color: #111;
}
input[type="tel"],
input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"] {
	padding: 3px;
}
textarea {
	overflow: auto; /* Removes default vertical scrollbar in IE6/7/8/9 */
	padding-left: 3px;
	vertical-align: top; /* Improves readability and alignment in all browsers */
	width: 98%;
}

/*Breadcrumbs*/
#breadcrumbs.band .container{
	margin: 0.5em auto;
}
#breadcrumbs.band .content{
    padding: 0;
    font-size: 12px;
	line-height: 1;
}

#breadcrumbs.band,
section.breadcrumbs {
    background-color: #fff;
    padding: 0.2em .5em;
    margin: 0;
}

body:not(.woocommerce) .breadcrumb.container {
	display: block !important;
	max-width: 2000px;
	padding-bottom: 10px;
	margin-left: auto;
	margin-right: auto;
}

.light-grey-bg > #breadcrumbs.band{
	background-color: transparent;
}

.single-product #breadcrumbs.band{
	background-color: #f0f0f0;
}

.woocommerce.single-product .breadcrumb.container {
	display: flex !important;
	max-width: 1364px;
	margin-left: auto;
	margin-right: auto;
}

#breadcrumbs.band p, 
section.breadcrumbs p {
    margin:0;
}

.post-breadcrumbs {
	max-width: 1400px;
	padding: 10px 1em;
	margin: 0 auto;
}

/* Links */
a {
	color: #429dc0;
}
a:visited {
	color: #429dc0;
}
a:hover,
a:focus,
a:active {
	color: #429dc0;
}

/* Alignment */
.alignleft {
	display: inline;
	float: left;
	margin-right: 1.5em;
}
.alignright {
	display: inline;
	float: right;
	margin-left: 1.5em;
}
.aligncenter {
	clear: both;
	display: block;
	margin: 0 auto;
}

/* Text meant only for screen readers */
.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
}

.screen-reader-text:hover,
.screen-reader-text:active,
.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-weight: bold;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000; /* Above WP toolbar */
}

/* Clearing */
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after {
	content: '';
	display: table;
}

.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after {
	clear: both;
}

/* =Content
----------------------------------------------- */
html {
  scroll-behavior: smooth;
}
.page-content,
.entry-summary {
	margin: 1.5em 0 0;
}

.entry-content {
    margin:0;
}


.page-links {
	clear: both;
	margin: 0 0 1.5em;
}

.centered {
    text-align:center;
}

.add_to_cart_button{display:none;}

/* =Media
----------------------------------------------- */

.page-content img.wp-smiley,
.entry-content img.wp-smiley,
.comment-content img.wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}
.wp-caption {
	border: 1px solid #ccc;
	margin-bottom: 1.5em;
	max-width: 100%;
}
.wp-caption img[class*="wp-image-"] {
	display: block;
	margin: 1.2% auto 0;
	max-width: 98%;
}
.wp-caption-text {
	text-align: center;
}
.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}
.site-main .gallery {
	margin-bottom: 1.5em;
}
.gallery-caption {
}
.site-main .gallery a img {
	border: none;
	height: auto;
	max-width: 90%;
}
.site-main .gallery dd {
	margin: 0;
}
.site-main .gallery-columns-4 .gallery-item {
}
.site-main .gallery-columns-4 .gallery-item img {
}

@media screen and (max-width:767px){
	.Sirv.sirv-thumbnails-only-gallery .smv-selectors-box .smv-selectors .smv-ss .smv-scroll {
		justify-content: center;
	}
}

/* Make sure embeds and iframes fit their containers */
embed,
iframe,
object {
	max-width: 100%;
}

/* =Header
----------------------------------------------- */
#masthead{
	overflow: visible;
}
/* =Navigation
----------------------------------------------- */

.site-main [class*="navigation"] {
	margin: 0 0 1.5em;
	overflow: hidden;
}
[class*="navigation"] .nav-previous {
	float: left;
	width: 50%;
}
[class*="navigation"] .nav-next {
	float: right;
	text-align: right;
	width: 50%;
}

.main-navigation {
	clear: both;
	display: block;
}

.main-navigation ul {
	list-style: none;
	margin: 0;
	padding-left: 0;
}


.main-navigation li {
	float: left;
	position: relative;
}

.main-navigation a {
	display: block;
	text-decoration: none;
}

.main-navigation ul ul {
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	display: none;
	float: left;
	left: 0;
	position: absolute;
	top: 1.5em;
	z-index: 99999;
}

.main-navigation a:hover{
    /*background-color:#f49232;*/
    text-decoration: none;
}

.main-navigation ul ul ul {
	left: 100%;
	top: 0;
}
.main-navigation ul ul a {
	width: 100%;
}
.main-navigation ul ul li {
}

.main-navigation li:hover {
    background-color: #f2f2f2;
}

.main-navigation #mega-menu-primary ul.mega-sub-menu > li.mega-menu-item ul.menu > li > ul.sub-menu > li:hover {
    background-color: #5A8EC8;
}

.main-navigation ul ul li:hover > a {
    background-color:#5A8EC8;
}

.main-navigation li:hover > a {
    color:#3a55a4;
}
.main-navigation ul ul li:hover > a {
	color: white;
}
.main-navigation ul ul a:hover {
}
.main-navigation ul li:hover > ul {
	display: block;
}
.main-navigation .current_page_item a,
.main-navigation .current-menu-item a {
    color:#2d2d2d;
}


.main-navigation a,
.header-info a {
    color:#2d2d2d;
}

.main-navigation li.current-menu-item {
    background-color:#c0c0c0;
    color:white;
}

.main-navigation li.current-menu-parent {
    background-color:#c0c0c0;
}

.main-navigation li.current-menu-item > a{
    color:#3a55a4;
}
.main-navigation .sub-menu li.current-menu-item > a{
    color:white;
}
.main-navigation li.current-menu-parent > a {
    color:#3a55a4;
}

#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-megamenu > ul.mega-sub-menu,
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu{
	background-color: rgba(241,241,241,0.8);
}
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link:visited,
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link{
	background-color: transparent;
	color: #5A8EC8;
}

/* Small menu */
.menu-toggle {
    display:inline;
}

#burger {
    border:none;
    line-height:0;
    font-size:0;
    text-decoration:none;
    display:block;
    margin:0;
    border-radius:50%;
    padding:12px 10px;
    background-color: white;
    text-align:center;
	display: none;
}

#burger img {
    line-height:0;
    font-size:0;
    margin:0;
}

#burger .open-menu {
    /*display:inline-block;*/
}

#burger .close-menu {
    display:none;
}

#masthead.toggled #burger .open-menu {
    display:none;
}

#masthead.toggled #burger .close-menu {
    /*display:inline-block;*/
}

#burger:focus {
	outline:0;
}

.main-navigation {
   /* display: none;*/
    position:relative;
    float:none;
}
#mega-menu-wrap-primary .mega-menu-toggle {
    background: transparent;
    padding-top: 10px;
}
#masthead.toggled #site-navigation.main-navigation {
    display: block;
}

.main-navigation ul {
    float:right;
    width:100%;
    max-width: 240px;
    margin:0 0 1em 0;
    padding:.25em;
}

#footer-navigation.main-navigation ul {
    float:none;
    overflow:hidden;
    max-width:none;
    margin-left:0;
    padding:0;
}

.main-navigation ul ul, .sec-navigation ul ul {
    display:block;
    float: none;
    box-shadow:none;
    background: transparent;
}

.main-navigation li {
    float:none;
    text-align:left;
    margin:0;
    overflow:hidden;
}

.main-navigation li,
.sec-navigation li {
    color:#5A8EC8;
}

.main-navigation li a,
.sec-navigation li a{
    display:inline-block;
    padding:.25em .5em;
    margin-left:0;
    line-height:1.4;
    color:#5A8EC8;
}

#footer-navigation.main-navigation li {
    float:left;
    margin:0 .5em 0 0;
}

.main-navigation li ul {
    position:static;
}
/*
.main-navigation li li {
    margin-left:2em;
}*/

.main-navigation li li a {
    padding:0.25em .5em;
}

#site-navigation.main-navigation li.current-menu-item {
    background-color: #5A8EC8;
}

#site-navigation.main-navigation li.current-menu-parent {
    background-color: transparent; 
}

#site-navigation.main-navigation li.current-menu-item > a,
#site-navigation.main-navigation li.current-menu-parent > a {
    background-color:#f2f2f2;
}

#site-navigation.main-navigation li.current-menu-item > a:hover,
#site-navigation.main-navigation li.current-menu-parent > a:hover {
    background-color:#5A8EC8;
}

#site-navigation.main-navigation .sub-menu li.current-menu-item > a,
#site-navigation.main-navigation .sub-menu li.current-menu-parent > a,
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-current-menu-item a.mega-menu-link:visited,
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-current-menu-item a.mega-menu-link
{
    background-color:#5A8EC8!important;
	color:#fff!important;
}

#primary-navigation .nav-header a{
	text-transform: uppercase;
    display: block;
    font-weight: 600;
	padding: 3px 1em;
}

#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item{
	padding: 1em 0!important;
}

#primary-navigation #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-column.hot-tubs ul.mega-sub-menu > li.widget_nav_menu a,
#primary-navigation #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-column.swim-spas ul.mega-sub-menu > li.widget_nav_menu a,
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link{
	display: block;
	padding: 2px 1em;
}
#primary-navigation #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-column.hot-tubs ul.mega-sub-menu > li.widget_nav_menu a:hover,
#primary-navigation #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-column.swim-spas ul.mega-sub-menu > li.widget_nav_menu a:hover,
#primary-navigation .nav-header a:hover,
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link:hover{
	background-color:#5a8ec8!important;
	color: #fff!important;
}

#mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated,
#mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated:hover,
#mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated:focus{
	box-shadow: unset;
}

#mega-menu-wrap-primary #mega-menu-primary li.right-sub-menu ul.mega-sub-menu{
	right: 0;
}

/* ===========================================================================
    Blueprint IM Specific Rules 
    Author: Peter Wooster, Silver Maple Web 
    Copyright (C) 2015, Devondev Inc.
   =========================================================================== */

/* fonts */
body {
    font-family: 'Montserrat', sans-serif;
    width:100%;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.4;
    font-weight: 400;
    max-width:100%;
    margin:0;
    background-color:#fff;
    color:#000;
}

.layer,
.band {
    margin:0 auto;
    overflow:hidden;
	max-width: 2000px;
}

.layer-content,
.band-content {
    overflow:hidden;
}

.wrapper {
    width:100%;
    margin:0;
}

.inner-wrapper {
    margin-left:10px;
    margin-right:10px;
}

.main-wrapper>.inner-wrapper {
    margin-left:0px;
    margin-right:0px;
}

.container {
    padding:0 1em;
    margin:1em 0;
}

.full-width .container {
    padding:0;
}

.hero-top,.hero-bottom
{
	position: relative;
    overflow: hidden;
	min-height: 600px
}
.hero-top{
	padding-top: 300px;;
}
.hero-bottom{
	padding-bottom: 300px;
}
.hero-top .overlay ,
.hero-bottom .overlay {
	display: block;
    position: absolute;
    width: 100%;
    top: 0;
	left: 0;
	bottom: 0;
    background: rgba(0,0,0,0.4);
    height: auto;
	transition: 1s;
}
.hero-top .container,.hero-bottom .container
{
	position: relative;
	min-height: 300px;
	display: flex;
    align-items: center;
    justify-content: center;
}
.hero-bottom.animate .overlay {
	bottom: 300px;
}
.hero-top.animate .overlay {
	top: 300px;
}
.blog .hero-top.page-hero.animate .overlay, .single .hero-top.page-hero.animate .overlay {
    top: 50%;
}
.blog .page-hero.hero-top, .single .page-hero.hero-top {
    padding-top: 200px;
    min-height: 320px;
    display: flex;
    justify-content: flex-end;
    flex-direction: column;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50% 0;
}
.blog .hero-top .container, .single .hero-top .container {
    min-height: 200px;
	margin: 0 auto;
}
.blog .hero-top .content, .single .hero-top .content {
    padding: 1em 0;
}

.blog #content.site-content>p {
    margin: 0;
}
.blog .wrapper.main-wrapper, .single .wrapper.main-wrapper {
    padding: 0 1em;
}
.layer.write-up {
    background-color:white;
}

#testimonials {
    background-color: #f0f0f0;
}

.layer.products {
    background-color:#f2f2f2;
    color:#2d2d2d;
}

.layer.products b,
.layer.products strong,
.layer.products a:visited,
.layer.products a {
    color:#1a9cd8;
}

.layer.products-alt {
    background-color:#f0f0f0;
}

.products.columns {
    clear:both;
    float:none;
}

.reversed {
	background-color: #401eed;
    color:white;
}

.reversed h1,
.reversed h2,
.reversed h3{
    color:white;
}

.white-bg {
    background-color:white;
}

.white-bg a:visited,
.white-bg a {
    color:#4d4d4d;
}

.grey-bg {
    background-color:#868686;
    color:white;
}

.grey-bg h1, 
.grey-bg h2 {
    color:white;
}

.light-grey-bg {
    background-color:#f0f0f0;
}


.yellow-bg {
    background-color:#c8cf00;
}

.gold-bg {
    background-color:#d9b61c;
}

.blue-bg {
    background-color:#4a84b4;
    color:white;
}

.red-bg {
    background-color:#FE016E;
    color:white;
}

.pink-bg {
    background-color:#bd7fb4;
}

.dark-bg {
    background-color: #2d2d2d;
    color:white;
    padding-bottom:10px;
}

#hero {
    background-color:#f0f0f0;
    color:white;
}
.mustard-bg {
    background-color: #EAC700;
}

#hero .band-content,
#hero .layer-content {
    position:relative;
}

#hero h1.heading {
    text-align:center;
}

#hero h1.entry-title {
    color:white;
}

.hero {
    min-height:200px;
}

.hero.short {
    min-height:150px;
}

.hero.tall {
    min-height: 300px;
}

.hero.med {
    min-height: 300px;
}

.hero.align-center {
	align-content: center;
}

#home-hero ul{
    margin-left:0;
    width:100%;
}

#home-hero img {
    width:100%;
}

#home-hero .flexslider {
    margin:0;
    border:0;
}

#top-offer {
    background-color: rgba(18,48,172,.9);
    color:white;
}

#top-offer input {
    border: none;
}

#top-offer h1 span {
    font-size:.75em;
}

.offer h2,
.offer h1{
    color:white;
}

.offer input, 
.offer button {
    display:block;
    width:100%;
    max-width:480px;
    margin:0 auto .5em auto;
}

.offer h1 {
    margin-top:0;
}

.offer form {
    margin-bottom:0;
}

.offer form button {
    margin-bottom:0;
    font-size:19px;
}

.expand-form .frm_forms {
    display:none;
    height: auto;
    transition: max-height,1s;
    overflow: hidden;
	max-width: 420px;
    margin: 0 auto 1em;
}

#hero .layer-content,
#hero .band-content {
    position:relative;
}

#hero h1.heading {
    text-align:center;
}

#hero h1.entry-title {
    color:white;
}

#hero {
    min-height:200px;
}

#hero.short {
    min-height:150px;
}

.band-content {
    padding:1em 0;
}

.offer .container {
    margin: 0 auto 1em;
    padding: 0 1em;
}

.hero .band-content,
.offer .band-content {
    padding: 0;
}

.top-offer {
    margin: 0 auto;
}

.booking {
    background-color: #303131;
    overflow:hidden;
}

.booking .form-field,
.booking input {
    width:100%;
}

.booking textarea,
.booking input {
    border:none;
}

.frm_error {
    color: #d00;
    font-size: 16px;
}

.top-offer .container {
    margin: 0 .5em .5em;
    padding:0;
}

.top-offer .band-content {
    margin: 4px 16px 8px;
}

.top-offer .container h1 {
    font-size:2.5rem;
}

.category-links .container{
    margin-top:0;
    margin-bottom:0;
}
.category-links .content.columns.small-gutter {
    padding-top:0;
    padding-bottom:0;
}

.category-links .column {
    text-align:center;
}

.category-links .category a{
    color:#4d4d4d;
}

.product .image-box,
.category-links .image-box {
    position:relative;
}

.category-links .caption {
    position: absolute;
    top:0;
    right:0;
    left:0;
    background-color: rgba(0, 0, 202,.75);
    padding:0 12px;
    color:white;
}

.category .caption {
    padding:.75em 1.5em;
    font-size:1.25em;
}

.category .caption h2 {
    font-size: 1.5em;
}

.product .caption {
    background-color: #401eed;
    padding:1em;
    font-size:1.25em;
}

.category .caption:hover,
.product .caption:hover {
    background-color: #eeca17;
}

.category .caption:hover,
.product a:hover{
    text-decoration: none;
}


.product-container {
    background-color: #f9f9f9;
    padding-bottom:.5em;
}

.category-links .caption p {
    margin-top:0px;
    margin-bottom:8px;
    color:white;
}

.product .caption h2,
.category-links .caption h2{
    margin-top:8px;
    margin-bottom:0;
    color:white;
}

.category-links img {
    width:100%;
    max-width:100%;
    height:auto;
}

#category-description .band-content {
    background-color: rgba(255,255,255,.9);
    margin:2em 0;
    padding:1em;
}

.product .image-box {
    text-align: center;
}

.product .image-box img {
    margin-top:2em;
}

.img-90 .product .image-box p{
	line-height: 1;
}

.img-90 .product .image-box img {
	width: 90%;
}

.product-summary {
    background-color: #f9f9f9;
}

.product-summary .content{
	display: flex;
    flex-wrap: wrap;
	flex-direction: column;
    justify-content: space-between;
	align-items: center;
}

.product-summary .content .product-col{
	margin-bottom: 1.5em;
}

@media screen and (min-width:650px){
	.product-summary .content{
		flex-direction: row;
		justify-content: space-between;
		align-items: flex-start;
	}

	.product-summary .content .product-col{
		width: 48%;
		flex: 0 0 calc(50% - 1em);
	}
	
	.product-summary .content .product-col > img{
		margin-top: 1em;
	}
}


#content div.product div.product-summary div.images {
    text-align:center;
    width:45%;
}

.archive #woocommerce-content-band{
	padding-top: 6em;
}

p.woocommerce-products-compare-compare-button input[type="checkbox"]{
	width: 20px;
    height: 20px;
    vertical-align: middle;
    margin-right: 5px;
}

.woocommerce-products-compare-content{
	padding-top: 8em;
	max-width: 1600px;
	margin: 0 auto;
}
.woocommerce .product .product-summary .images img {
    display:inline-block;
    width:auto;
    max-width: 100%;
    margin-top: 16px;
    margin-top:1.6rem;
}

.woocommerce .product .product-summary .submit-link {
    margin:1em 0 1em 0 !important;
}

.product .product_title {
    display:none;
}

.woocommerce div.product div.summary.entry-summary{
    margin:0;
}


.woocommerce div.product p.price, 
.woocommerce div.product span.price {
    color:black
}

.product-summary h3 {
    font-size: 2em;
    color: #4e4e4e;
}

.product-summary ul {
    list-style:disc;
    margin-left:1.5em;
}

.product-summary ul.features {
    background-color:#f1f1f1;
    margin:0;
    list-style:none;
}

.product-summary dl {
    overflow:hidden;
}
.product-summary dt {
    width: 9em;
    float:left;
    clear:left;
    padding: 1em 0;
    font-weight:300; 
}
.product-summary dd {
    width: 100%;
    padding:1em 0 1em 10em;
    margin: 0 0 0 -9em;
    
    float:left;
}

.product-summary ul li {
    padding: .5em 0;
}

.product-summary ul.features li {
    padding: 0 1em;
}

.product-summary ul.features li:nth-of-type(odd) {
    background-color:white;
}

.woocommerce span.onsale {
    display:none;
}

.band {
    /*margin-bottom:16px;*/
}

@media screen and (min-width: 480px) {
    .offer .container,
    .offer .container {
        margin: 1em auto;
    }

    .top-offer {
        margin: 1em auto;
    }

    .top-offer .container {
        margin: 1em .5em;
    }

    .top-offer .band-content {
        margin: 16px;
    }
    
    .top-offer .container h1 {
        font-size:3rem;
    }

}


.translucent {
    background-color: rgba(255, 255, 255, .9);
}


h1.padded {
    margin:200px 0;
}

#secondary h1{
    font-size:24px;
    font-size:2.4rem;
    margin-top:0;
}


#top-coupon {
    max-width:372px;
    margin:1em auto;
    padding:1.5em;
    border-radius:8px;
    background-color: rgba(255, 255, 255, .60);
}

#secondary .coupon {
    margin-top: 0;
}

#top-coupon h1 {
    color:white;
    font-size:38px;
    font-size:3.8rem;
    margin-top:0;
}
#hero .top-offer h1 {
    margin-top:0;
}

#top-coupon h2 {
    color:white;
}

#secondary .coupon h1 {
    color:white;
}


#top-coupon h1.blue {
    color:#02194e;
}

#secondary .coupon h2,
#top-coupon h2 {
    font-size:29px;
    font-size:2.9rem;
}

#top-coupon form {
}

#bottom-coupon {
    padding-bottom:18px;
    padding-bottom:1.8rem;
}

#bottom-coupon h1,
#bottom-coupon p {
    margin-bottom:8px;
}

#bottom-coupon form {
    margin-bottom:1.5em;
}

.coupon input {
    width:100%;
    border-radius:0;
    margin:2px 0;
    font-size:14px;
    font-size:1.4rem;
    vertical-align: top;
}

.coupon .submit {
    background-color:#ff0000;
    border-radius:0;
    color:white;
    font-weight:700;
    font-size:18px;
    font-size:1.8rem;
}


img.block {
    display:block;
}

#pitch h2,
#pitch p,
#pitch img,
#bottom-coupon h1{
    text-align:center;
}

#pitch p {
    max-width:300px;
    margin:0 auto 1.5em auto;
}

#pitch p:first-child {
    margin-top:.5em;
    margin-bottom:0;
}

#pitch h2 {
    margin-top:0;
}

#primary {
    width:100%;
}

#secondary {
    width:100%;
}

/* headings */
h1, h2, h3, h4 {
    font-weight:400;
    line-height: 1.2;
}

h1 {
    font-weight:700;
    font-size:40px;
    font-size:4rem;
    margin: 20px 0 10px 0;
    margin: 2.0rem 0 1.0rem 0;
}
h2 {
    font-size:30px;
    font-size:3rem;
    margin: 18px 0 9px 0;
    margin: 1.8rem 0 .9rem 0;
}
h3 {
    font-size:25px;
    font-size:2.5rem;
    margin: 12px 0 6px 0;
    margin: 1.2rem 0 .6rem 0;
}


h2.widget-title {
    font-size:20px;
    font-size:2rem;
    margin: 18px 0 9px 0;
    margin: 1.8rem 0 .9rem 0;
	color: #f4f4f4;
	font-weight: 600;
}
.h1{
    color: #5A8EC8;
	font-size: 55px;
	font-weight: 400;
	line-height: 1.1;
}
.h2 {
    color: #5A8EC8;
    font-weight: 400;
    font-size: 40px;
	line-height: 1.1;
}
.h3 {
    color: #5A8EC8;
    font-weight: 400;
    font-size: 25px;
	letter-spacing: -1px;
}
.h4 {
    color: #5A8EC8;
    font-weight: 400;
    font-size: 23px;
}

a:visited,
a {
    color:#1a9cd8;
    text-decoration: none;
}

a:hover {
    text-decoration:underline;
}

p.tight {
    margin:0;
}

.tight-bottom {
    margin-bottom:0;
}

ul {
    /* list-style-image: url(images/reddot.png); */
    list-style:none;
}

ul.disc {
    list-style:disc;
}

button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
    text-shadow: none;
}

h1.entry-title a:visited,
h1.entry-title a {
    text-decoration: none;
    color:#429dc0;
}

.bar{
	
}

.bar:after{
	content: '';
    display: block;
    width: 55px;
    height: 5px;
    background: #A8D2E6;
    margin-top: 24px;
    margin-bottom: 24px;
}
.h1.bar:after{
	width: 70px;
}

.text-center .bar:after,
.text-center.bar:after{
    margin: 24px auto;
}
.text-left .bar:after{
    margin-left: 0;
}

/* Header and branding */
.site-header layer {
    min-height:65px;
    width:100%;
    overflow:visible;
}

.site-branding {
    position:static;
    width:100%;
    max-width:180px;
    margin:0;
    padding: 6px 10px 0;
}

.site-header .container{
    margin-top:0;
    margin-bottom:0;
}

.site-header .band-content{
    padding:0;
	display: flex;
	align-items: center;
}

.site-navs{
	display: flex;
    flex: 1 1 auto;
	justify-content: space-between;
    flex-direction: column;
}

#top-nav-section {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 25px;
    padding-top: 10px;
}
#top-nav-section a.submit-link{
    margin-top: 0;
    font-weight: 400;
    line-height: 1;
    font-size: 16px;
}
#top-nav-section .nav-call {
	font-size: 16px;
}
#top-nav-section .nav-call a {
    font-weight: 400;
    font-size: 16px;
    white-space: nowrap;
}
#top-nav-section .nav-call a:not(:hover){
    color: inherit;
}

@media screen and (min-width: 892px){
    #primary-navigation .nav-btn.hidden{
        display: none!important;
    }
    #top-nav-section .nav-call {
		font-size: 20px;
        padding-right: 10px;
    }
	#top-nav-section .nav-call a {
		font-size: 20px;
	}
}

@media screen and (max-width: 891px){
    #top-nav-section a.submit-link{
        display: none!important;
    }
    #top-nav-section .nav-call {
        text-align: right;
    }
}
/*
#primary-navigation{
	flex: 1 1 250px;
}
*/
.call {
    display:none;
}

/* inline-block columns 
   these should be used instead of the old floated columns below 
   - currently only 2 and 3 up and 40-60 is supported, the others are easy to add.
*/
.columns {
	text-align:center;
	margin-left: -32px;
        margin-top:32px;
}

.columns.small-gutter {
    margin-left: -16px;
    margin-top:16px;
}

.columns .column {
	display:inline-block;
	vertical-align:top;
	padding-left:32px;
        margin-bottom:32px;
	margin-right: -.4em;
	text-align:left;
}
.columns .column.text-center{
	text-align:center;
}

.wide-gap .column-content {
    padding-left: 1em;
    padding-right: 1em;
}

.columns.small-gutter .column {
	padding-left:16px;
        margin-bottom:16px;
}

.full-width,
.one-half,
.one-third,
.two-thirds,
.one-fifth,
.two-fifths,
.three-fifths,
.four-fifths,
.one-quarter,
.three-quarters{
	width:100%;
}

.column form{
    margin-right:.4em;
}


@media screen and (min-width:480px) {
	.one-half,
	.one-third,
        .one-quarter,
        .three-quarters,
	.one-fifth,
        .two-fifths,
	.three-fifths,
        .four-fifths{
            width:50%;
	}
	
	.columns.swap:after, .columns.swap:before{
		display: table;
		content: " ";
		clear: both;
	}
	.columns.swap .column.one-half{
		float: left;
		position: relative;
		margin-right: 0;
	}
	.columns.swap .column.one-half:first-of-type{
		left:50%;
	}
	.columns.swap .column.one-half:last-of-type{
		right:50%;
	}
}

@media screen and (max-width:700px) {
	.single-7 .one-third {
		width:100%;
	}
	.single-7 .one-half {
		width:100%;
	}
	.img-90.single-7 .product .image-box img {
		width: auto;
		max-width: 90%;
	}
}

@media screen and (min-width:768px) {
	.one-third {
            width:33.333333%;
	}
        .two-thirds {
            width:66.6666666%;
        }
        .one-quarter {
            width:25%;
        }
        .three-quarters {
            width:75%;
        }
        .one-fifth {
            width:20%;
	}
	.two-fifths {
            width:40%;
	}
	.three-fifths {
            width:60%;
	}
	.four-fifths {
            width:80%;
	}
}

.comparison {
	background-image: url(/wp-content/uploads/2016/04/coupon-hot-tub-background.jpg);
	background-size:cover;
}

.comparison .top-offer {
	float:none;
	margin:4em auto;
	background-color:transparent;
}

.top-offer.booking {
    margin-top:0;
    padding:0;
}

@media screen and (min-width:320px) {
/*    #site-navigation.main-navigation {
        position:fixed;
        overflow-y:scroll;
        height:100%;
        padding-bottom:80px;
        right:0;
        top:4em;
        z-index:9000;
    }
*/
    .site-header .container {
        margin-top:0;
    }
    
    .site-header .band-content {
        overflow:visible;
        position: relative;
    }
    

    .site-content {
        /*margin-top:-56px;*/
    }
    
    #hero h1 {
        margin-top:60px;
    }
    
    .main-navigation ul, .sec-navigation ul {
        margin:0;
        padding:0;
    }
    #burger {
        position:fixed;
        top:6px;
        right:4px;
        z-index:99999;
    } 
	
    .admin-bar #burger {
        top:48px;;
    } 
}

@media screen and (min-width: 380px) {
    .call {
        display:inline;
        color: #2d2d2d;
    }
    
    .site-branding {
        max-width: 280px;
    }
}

.site-branding a {
    font-size:0;
}


input[type="tel"],
input[type="email"],
input[type="text"],
select, textarea  {
    font-size:18px;
    line-height:1.2;
    padding:10px;
    border-radius:16px;
}

.submit-link.mobile,
.submit-link {
    font-size:18px;
    text-decoration: none;
    display:inline-block;
    min-width: 10em;
    margin: 0;
    text-align: center;
}
.submit-link.sm,
button.submit-link.sm{
	min-width: 11em;
	font-size: 19px;
}

.submit-link.desktop {
    display:none;
}

a.submit-link,
button.submit-link,
button[type="submit"],
input[type="submit"],
.woocommerce a.button{
    background-color: #5A8EC8;
	color: #fff;
    border: 0;
    font-weight: 500;
    box-shadow: none;
    font-size: 18px;
	text-transform: uppercase;
    line-height: 1.4;
    border-radius: 16px;
    padding: 10px 1.5em 10px;
    font-family: 'Montserrat', sans-serif;
}
button[type="submit"]{
	width: auto;
	min-width: 50%;
	margin-left: 0;
}

a.submit-link,
a:visited.submit-link,
.submit-link a,
.submit-link a:visited {
    color:#fff;
	text-shadow: none;
}

.bg-blue a.submit-link.white-b,
.bg-blue a:visited.submit-link.white-b,
.bg-blue:not(.bg-vdeo) button.submit-link.white-b{
    border: 1px solid #fff;
}

a.submit-link.white{
	background-color: #fff;
	color: #5A8EC8;
}
button.submit-link.white-b,
a:visited.submit-link.white-b,
a.submit-link.white-b{
	color:#fff;
	border-color: #fff;
}

a.submit-link:hover,
button.submit-link:hover,
button[type="submit"]:hover,
input[type="submit"]:hover,
.woocommerce a.button:hover {
    background-color:#7a7a7a;
    text-decoration: none;
    box-shadow:none;
	color:#fff;
}

.submit-link.sm{
	font-size: 16px;
    min-width: unset;
    padding: 5px 0.5em;
}
.woocommerce a.button{
	padding: 5px 1em;
	font-size: 18px;
	line-height: 1.3;
}

@media screen and (min-width: 480px){
	.submit-link.mobile,
	.submit-link {
		min-width: 9em;
	}
}

/*
.submit-link a:hover,
a:hover.submit-link,
input[type="submit"]:hover {
    background-color:#ff0000;
    color:white;
    text-decoration:underline;
    box-shadow: none;
}
*/

/* content */


article.page {
    margin: 0;
}

body.slug-cart article.page {
    margin-top: 3em;
}

section {
    overflow:hidden;
    /* border:1px solid grey; /** pkw testing */ 
}

.margins {
    margin:0 10px 2em 10px;
}

.pad-bottom {
    padding-bottom: 1.5em;
}

.large-headroom {
    margin-top:60px;
    margin-top:6rem;
}

.headroom {
    margin-top:24px;
    margin-top:2.4rem;
}

.small-headroom {
    margin-top:18px;
    margin-top:1.8rem;
}

.mobile {
    display:block;
}

.desktop {
    display:none;
}

#consultation {
    width:100%;
    max-width:397px;
    margin:.25em auto;
    overflow:hidden;
    border-left:solid 3px white;
    border-right:solid 3px white;
}

.opt-in #consultation {
    max-width:none;
    border:none;
}

#consultation img {
    display:block;
}

#consultation .info {
    background-color:#464646;
    border-top:solid white 3px;
    border-bottom:solid white 3px;
    padding: 3% 6%;
}

.opt-in #consultation .info {
    background-color: transparent;
    border:none;
    max-width:440px;
    margin:0 auto;
    padding:.75em;
}
.opt-in #consultation .info h1 {
    margin-top:.25em;
}

.opt-in #starter-kit .form,
.opt-in #starter-kit .info {
    border:none;
    padding:.75em;
}

#content.site-content {
    clear:both;
}

.archive ul,
.blog ul {
    margin:0;
    list-style:none;
}

ul.the-posts{
	display: flex;
    flex-wrap: wrap;
	justify-content: space-between;
}

.archive ul.the-posts li.hentry,
.blog ul.the-posts li.hentry {
    flex: 1 1 100%;
    margin-bottom: 3em;
}

@media screen and (min-width:768px){
	.archive ul.the-posts li.hentry,
	.blog ul.the-posts li.hentry {
		flex: 0 1 50%;
	}
	.archive ul.the-posts li.hentry:nth-child(even),
	.blog ul.the-posts li.hentry:nth-child(even) {
		padding-left: 1em;
	}
	.archive ul.the-posts li.hentry:nth-child(odd),
	.blog ul.the-posts li.hentry:nth-child(odd) {
		padding-right: 1em;
	}
}
@media screen and (min-width:1024px){
	ul.the-posts{
		justify-content: flex-start;
	}
	.archive ul.the-posts,
	.blog ul.the-posts {
		margin-left:-1em;
		margin-right:-1em;
	}
	.archive ul.the-posts li.hentry,
	.blog ul.the-posts li.hentry {
		flex: 0 1 33.3333%;
		padding-left: 1em;
		padding-right: 1em;
	}
}

.archive li.hentry:first-child,
.blog li.hentry:first-child {
    padding-top:0;
    margin-top:0;
}

.archive li.hentry:last-child,
.blog li.hentry:last-child {
    border-bottom:none;
}

.summary h2.entry-title{
	font-weight: 400;
    font-size: 24px;
}

.archive nav.navigation.paging-navigation,
.blog nav.navigation.paging-navigation{
	display: block;
    border-top: 1px solid #333;
    border-bottom: 1px solid #333;
    padding: 7px 0;
}

nav.navigation.paging-navigation a:visited, nav.navigation.paging-navigation a{
	color: inherit;
}
nav.navigation.paging-navigation a:focus, nav.navigation.paging-navigation a:hover{
	color: #008066;
	text-decoration: none;
}

.blog .page-hero.hero-top,
.single .page-hero.hero-top{
    padding-top: 200px;
	min-height: 320px;
	display: flex;
    justify-content: flex-end;
    flex-direction: column;
	background-size: cover;
    background-repeat: no-repeat;
    background-position: 50% 0;
} 
.single.bg-center .page-hero.hero-top{
	background-position: 50% 50%;
}
.blog .hero-top .container,
.single .hero-top .container{
	min-height: 200px;
}
.blog .hero-top .content,
.single .hero-top .content{
	padding: 1em 0;
}
.blog .hero-top.page-hero.animate .overlay,
.single .hero-top.page-hero.animate .overlay {
    top: 50%;
}

.single h1.entry-title{
	margin: 0;
    font-size: 32px;
    line-height: 40px;
    text-transform: uppercase;
}

.single #main-band .container{
	padding: 0;
}
.blog .wrapper.main-wrapper,
.single .wrapper.main-wrapper{
	padding: 0 1em;
}

.single div.entry-meta{
	text-align: center;
    font-size: 1em;
    border-top: 1px solid #333;
    padding-top: 1em;
}

aside.blog-description {
    background-color: #2D77DA;
    color:white;
    overflow:hidden;
    padding:0 .25em 1em .25em;
    margin-bottom: .25em;
}

.has-sidebar #secondary aside.cta {
    margin-bottom: .25em;
}

.has-sidebar #secondary aside.widget_search {
    margin-top:1.5em;
}

.has-sidebar #secondary aside.blog-description h1{
    color:white;
    margin-top:1em;
}

.single #secondary aside.blog-description {
    display:none;
}

h1.widget-title {
    font-size:39px;
    font-size:3.9rem;
    text-align:left;
    margin:0 0 5px 0;
}
.has-sidebar #secondary .widget_categories h1.widget-title {
    margin-left:0;
    font-size:18px;
    font-size:1.8rem;
}
.has-sidebar #secondary .widget_categories {
    font-size:15px;
    font-size:1.5rem;
}

.has-sidebar #secondary .cta h1.widget-title {
    margin:0;
    text-align:center;
}

.has-sidebar .search-field {
    box-sizing: border-box;
    width:100%;
}

.has-sidebar #secondary .textwidget {
    background-color:#e0e0e0;
    padding:8px;
    margin:1.5em 0 0 0;
}

/*
div.featured {
    display:none;
}
*/

.posted-on time.updated {
    display: none;
}

.blog .byline,
.blog .byline {
    display:inline;
}


.avatar {
    margin:0 auto 1em auto;
}

.bio {
    overflow:hidden;
    margin:0 .5em;
}

.bio .avatar {
    float:right;
}

.bio h1 {
    display:inline;
    margin-top:0;
}


h1.page-title,
h1.entry-title {
    margin-top:1em;
}
    
#service .icon{
    width:100%;
    margin:1em 0 .25em 0;
}

#service h2,
#service li .content{
    text-align:center;
}

#service h2 {
    margin:0;
    font-size:1.2em;
}

#service .description {
    width:100%;
    max-width:400px;
    margin:0 auto;
}

#service a:visited,
#service a {
    color:#1a9cd8;
    text-decoration: none;
}

#service a:hover {
    color:#1a9cd8;
    text-decoration: underline;
}


.ebook-left img {
    float:left;
    width:40%;
    max-width:119px;
    margin-right:0;
}

.ebook-left .description {
    margin:0;
    width:58%;
    max-width:11em;
    float:right;
}

.ebook-left .description p {
    margin-bottom:1em;
}

.ebook-left {
    overflow:hidden;
    padding-bottom:3em;
}

.ebook-submit{
    max-width:200px;
}

blockquote {
 quotes: "\201C" "\201D";
 position:relative;
}

blockquote:before { content: open-quote; font-weight: normal; font-size:3em; position:absolute;top:-.3em;}
blockquote:after { content: close-quote; font-weight: normal;  font-size:3em; position:absolute; bottom:-.65em;}
blockquote .indent {
    display:inline-block;
    width:1.5em;
}

#testimonials h1,
#testimonials p {
    text-align:left;
    color:#4d4d4d;
}

.client-quote blockquote {
    font-style: italic;
    color:#4d4d4d;
    font-size:19px;
    font-weight:300;
    margin:0;
    /*text-align:center;*/
}

#testimonials blockquote p {
    font-size: 14px;
}

.flexslider-1.client-quote .slides blockquote > p {
    display: inline;
}

.client-quote blockquote:before {
    content:”X”;
}

.client-quote blockquote:after {
    content:”\201D”;

}

.client-quote p.client-name {
    margin-bottom:0;
	font-size: 14px;
	font-weight: 500;
}

.client-quote.flexslider-1 {
	position: relative;
    background-color:transparent;
    border:none;
    box-shadow: none;
    margin-bottom:36px;
}

.widget.optin {
    overflow:hidden;
    color:white;
    margin-bottom:0;
}

.widget.optin h1 {
    color:white;
}
.widget.optin p {
    margin-bottom:5px;
}

.widget.optin .mblog {
    padding:24px;
    background-color:#999999;
}

.widget.optin .analysis {
    padding:24px;
    background-color:#ff0064;
}

.call-to-action {
    background-color: #ebe8e5;
    overflow:hidden;
    margin:1em 0;
}

.cta-left, 
.cta-right {
    width:100%;
    max-width:320px;
    margin:1em auto;
    text-align:center;
}

.submit-link {
    margin-top:.5em;
}

.cta-left .submit-link {
    display:none;
}

.cta img {
    max-width:160px;
}

.cta .submit-link {
    max-width:200px;
}

.d-flex{
	display: flex;
}
.d-flex.va-center{
	align-items: center;
}
.d-flex.justify-center{
	justify-content: center;
}
.d-flex .col-70{
	flex: 1 0 70%;
}
.d-flex .col-60{
	flex: 1 0 60%;
}
.d-flex .col-50{
	flex: 1 0 50%;
}
.d-flex .col-40{
	flex: 1 0 40%;
}
.d-flex .col-33{
	flex: 1 0 33.333%;
}
.d-flex .col-30{
	flex: 1 0 30%;
}
.d-flex .col-35{
	flex: 1 0 35%;
}
.d-flex .col-25{
	flex: 1 0 25%;
}

.d-flex.gap{
	gap: 25px;
}
.d-flex.gap .col-70{
	flex: 0 0 calc(70% - 25px);
}
.d-flex.gap .col-60{
	flex: 0 0 calc(60% - 25px);
}
.d-flex.gap .col-50{
	flex: 0 0 calc(50% - 25px);
}
.d-flex.gap .col-40{
	flex: 0 0 calc(40% - 25px);
}
.d-flex.gap .col-33{
	flex: 0 0 calc(33.333% - 25px);
}
.d-flex.gap .col-30{
	flex: 0 0 calc(30% - 25px);
}
.d-flex.gap .col-35{
	flex: 0 0 calc(35% - 25px);
}
.d-flex.gap .col-25{
	flex: 0 0 calc(25% - 19px);
}

@media screen and (max-width:991px){
	.d-flex{
		flex-direction: column;
	}
	.d-flex.mobile-swap{
		flex-direction: column-reverse;
	}
	.d-flex-row{
		flex-direction: row;
		flex-wrap: wrap;
	}
	.d-flex.flex-div {
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.d-flex.gap .mobile-col-50{
		flex: 0 0 calc(50% - 12.5px);
	}
}
@media screen and (max-width:767px){
	.d-flex.gap .xs-col-100 {
		flex: 0 0 100%;
	}
}
@media screen and (max-width: 480px){
	.d-flex.gap .mobile-col-50{
		flex: 0 0 100%;
	}
}
@media screen and (min-width:992px){
	.d-flex{
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.d-flex.gutter .col-40:nth-child(even){
		margin-left:10%;
	}
	.d-flex.gutter-sm > div:nth-child(even){
		margin-left:5%;
	}
}
@media screen and (min-width:415px) and (max-width: 991px){
	.sm-flex{
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
	}
	.sm-pr-2{
		padding-right: 2em;
	}
}

.bg-blue{
	background-color: #5A8EC8;
}
.bg-black{
	background-color: #000;
}
.bg-black-t {
    background-color: rgba(0,0,0,0.3);
}
.bg-light{
	background-color:#f9f9f9;
}
.bg-white{
	background-color: #fff;
}
.bg-white-t{
	background-color: rgba(255,255,255,0.8);
}


.bold{
	font-weight: bold;
}

.fw-600{
	font-weight: 600;
}

.round{
	border-radius: 100%;
}

.strong{font-weight: bold;}

.pull-left{
	float: left;
}
.pull-right{
	float: right;
}
.shadow{
	box-shadow: 1px 1px 5px rgba(0,0,0,0.5);
}
.text-blue{
	color: #5A8EC8;
}
.text-light-blue{
	color: #9DD3E9;
}
.text-center{
	text-align: center;
}
.text-lg {
    font-size: 120%;
}
.text-left{
	text-align: left;
}
.text-right{
	text-align: right;
}

.text-white,
.text-white h1,
.text-white h2,
.text-white .h2,
.text-white h3{
	color: #fff;
}

.text-uppercase{
	text-transform: uppercase;
}

.tint,
.tint .container{
	position: relative;
}
.tint .overlay{
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: 0.4;
}

.of-visible{
	overflow: visible;
}

.home-out-block .move-up {
    margin-top: -190px;
	position: relative;
}
.home-out-block h3{
	color: #5A8EC8;
}

.home-out-block img{
	height: 70px;
}


.home-out-block .content-block {
    position: relative;
	padding: 3em;
	flex: 0 0 33.333%;
}
.home-out-block .content-block:after {
    content: "";
    display: block;
    position: absolute;
    background: #ccc;
}

@media screen and (max-width: 1180px){
	.home-out-block .content-block {
		padding: 2em;
	}
}

@media screen and (min-width: 992px){
	.home-out-block .min-h-4l {
		min-height: 101px;
	}
	.home-out-block .content-block:after {
		right: 0;
		top: 2em;
		bottom: 1em;
		height: calc(100% - 3em);
		width: 1px;
	}
}

@media screen and (max-width: 991px){
	.home-out-block .content-block:after {
		right: 0;
		top: 2em;
		bottom: 1em;
		height: calc(100% - 3em);
		width: 1px;
	}
}
@media screen and (max-width: 767px){
	.home-out-block .content-block {
		flex: 0 0 100%;
	}
	.home-out-block .content-block:after {
		right: 1em;
		left: 1em;
		top: unset;
		bottom: 0;
		width: calc(100% - 2em);
		height: 1px;
	}
	.home-out-block .content-block:nth-child(2):after{
		content: '';
	}
	.home-out-block .content-block:nth-child(3):after{
		content: unset;
	}
	.home-out-block .content-block:nth-child(3):before,
	.home-out-block .content-block:nth-child(4):before{
		content: unset;
	}
}

.home-out-block .content-block:nth-child(4):after{
	content: unset;
}
	
@media screen and (max-width:767px){
	.mobile-center{
		text-align: center;
	}
	.mobile-center .bar:after{
		margin: 24px auto;
	}
}
@media screen and (max-width:441px){
	.xs-center{
		text-align: center;
	}
	.xs-center .bar:after{
		margin: 24px auto;
	}
}

#masthead {
    position: relative;
 /*   left: 0;
    right: 0;*/
    width: 100%;
	z-index: 1000;
	background: #fff;
}
/*
header#masthead:before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 130%;
    background-image: linear-gradient(#5A8EC8, transparent);
}
*/
/* footer */

#colophon {
    padding-bottom:10px;
    padding-bottom:1.0rem;
}


textarea#comment,
.slug-contact #primary .wpcf7 textarea,
.slug-contact #primary .wpcf7 input,
.slug-contact #primary .af-form-wrapper textarea {
    border:1px solid #ccc;
}
textarea#comment{
    width:100%;
}

.af-form-wrapper, 
div.wpcf7 {
    width:100%;
    max-width:397px;
    margin:0 auto;
}

.af-form-wrapper.full-width {
    max-width:100%;
} 

label.line{
    margin-right:1em;
}

form.full-width .text {
    width:50%;
    max-width: 400px;
}

.choices {
    display:inline-block;
}

.choices label {
    margin-right:1em;
}

.full-width select,
.full-width input {
    margin-left:.125em;
}

.bottom-offer .af-form-wrapper {
	max-width:none;
	margin-left:-.5em;
}

.bottom-offer .af-form-wrapper input {
	margin-left:.5em;
	margin-bottom:.5em;
	width:200px;
}

.bottom-offer.plain input {
    width:100%;
    margin-bottom:8px;
}

.finance img{
    background-color:white;
    padding:.5em;
}

@media screen and (min-width: 768px) {
    .bottom-offer.plain input {
        max-width: 13em;
        margin-right:8px;
        vertical-align:top;
    }
}

input,
textarea {
    border:none;
    max-width:100%;
    box-sizing:border-box;
    border-radius:0;
}

#contact-form input {
    border:none;
}

.has-sidebar .main-wrapper {
    background-color: #f5f5f5;
    padding-top:.5em;
    margin-top:0;
}

#colophon .coupon {
    overflow:hidden;
}

#colophon .coupon h1 {
    color:white;
} 

#colophon .site-info {
    width:100%;
}

#colophon .copyright {
    clear:both;
    font-size:.75em;
    color:#918d8a;
    text-align:left;
    padding-top:10px;
}

#colophon .contact {
    background-color:#4e4e4e;
    color:white;
    padding-top:1em;
    padding-bottom:1em;
}

#colophon .contact h2 {
    color:white;
}

ul.social-media{
    list-style: none;
    margin-left:0;
}

.social-media li {
    display: inline-block;
    margin:0 .5em;
}

.social-media li:first-child {
    margin-left:0;
}




div.entry-meta,
footer.entry-meta {
    font-size:12px;
    font-size:1.2rem;
}

.comments-link img {
    margin-right:.25em;
}

.us_posts_top {
    margin-bottom:1em;
}

.site-info .wrapper {
    margin-top:0;
    margin-bottom:0;
}

.translucent ul {
    list-style-image: url('images/tick.png');
    font-size: 1em;
    margin-left:1.5em;
}

.bullet {
    list-style-type: square;
    font-size: 1.1875em;
    margin-left:1.5em;
}

.translucent {
    background-color: rgba(255, 255, 255, .9);
    color:#2d2d2d;
    padding: .25em 1.5em;
    margin: 1em 0;
    font-size:1.25em
}

.top-offer {
    padding: 4px 24px 15px;
    font-size: 1.325em;
}

.top-offer h2 {
    font-size: 1.25em;
}

@media screen and (min-width:480px) {
    .top-offer {
        /*padding: 24px;*/
    }

    .top-offer h2 {
        font-size: 1.5em;
    }
}

.top-offer p {
    margin-bottom: 0;
}

#hero {
    margin-top:0;
}

#hero.translucent {
    color:#2d2d2d;
}

h2#your-type {
    display:inline-block;
    background-color: rgba(234, 199, 0, .5);
    padding:.5em;
}

.your-type {
    background-color: rgba(234, 199, 0, .5);
    padding:.5em;
}

.your-type h2 {
    font-weight: bold;
    color:#3899fc;
}    

.woocommerce-breadcrumb {
    display:none;
}

.featured-list li {
    display:inline-block;
    vertical-align:top;
    padding:.5em;
}


.featured-list {
    margin:0;
}

.featured-content {
    background-color: rgba(255,255,255,.85);
    overflow:hidden; 
}

.featured-content h2 {
    padding: 10px 40px;
}

.featured-content .sale-info {
    color:#fa5513;
    font-weight:500;
}

.featured-container{
    padding:0 50px;
}

#blog-items {
    padding-top:0;
}

#blog-items h1 {
    margin-top:.3em;
}


@media screen and (min-width:460px) {
    #bottom-coupon {
        text-align: center;
    }
    .top-info {
        overflow:hidden;
    }
}

@media screen and (min-width:600px) {
    .featured-container{
        padding:0 100px;
    }
}

#primary-navigation #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-column.hot-tubs ul.mega-sub-menu li.heading > a,
#primary-navigation #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-column.swim-spas ul.mega-sub-menu li.heading > a{
	font-weight: 600;
	display: block;
}

	#primary-navigation #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-column.hot-tubs ul.mega-sub-menu,
	#primary-navigation #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-column.swim-spas ul.mega-sub-menu{
		display:flex!important;
		flex-wrap: wrap;
	}   
	
	#primary-navigation #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-column.hot-tubs ul.mega-sub-menu {
		padding-right: 1em;
	}  
	
	#primary-navigation #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-column:nth-last-child(1 of .hot-tubs) ul.mega-sub-menu {
		padding-right: 0;
	} 
	
	#primary-navigation #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-column.swim-spas:not(:last-child) ul.mega-sub-menu{
		padding-right: 1em;
	}
	
	#primary-navigation #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-column:nth-last-child(1 of .swim-spas) ul.mega-sub-menu {
		padding-right: 0;
	} 
	
	#primary-navigation #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-column.hot-tubs ul.mega-sub-menu > li {
		flex: 1 1 50%;
	}
	
	#primary-navigation #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-column.swim-spas ul.mega-sub-menu > li {
		flex: 1 1 30%;
	}
	
	#primary-navigation #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-column.hot-tubs ul.mega-sub-menu > li:first-of-type,
	#primary-navigation #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-column.swim-spas ul.mega-sub-menu > li:first-of-type {
		flex: 1 0 100%;
		border-bottom: 1px solid #a8a8a8;
	}
	
	#primary-navigation #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-column.hot-tubs ul.mega-sub-menu > li.widget_nav_menu h4,
	#primary-navigation #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-column.swim-spas ul.mega-sub-menu > li.widget_nav_menu h4{
		text-transform: unset;
    white-space: nowrap;
	}
	
	#primary-navigation #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-column.hot-tubs ul.mega-sub-menu > li.widget_nav_menu a,
	#primary-navigation #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-column.swim-spas ul.mega-sub-menu > li.widget_nav_menu a,
	#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link{
		font-size: 16px;
	}
	/*
	#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-toggle-on > a.mega-menu-link,
	#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:hover{
		background: rgba(51, 51, 51,0.6);
		font-weight: 700;
	}
	/*#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item-has-children > a.mega-menu-link,
	#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link, 
	#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-current-menu-ancestor > a.mega-menu-link, 
	#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-current-page-ancestor > a.mega-menu-link {
		background: rgba(51, 51, 51,0.8);
		font-weight: 700;
		color: #fff;
	}
*/
@media screen and (max-width:1280px) {
	#mega-menu-wrap-primary #mega-menu-primary .mega-menu-column.mega-swim-spas.swim-spas {
		width: 100% !important;
	}
	
	#primary-navigation #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-column.swim-spas ul.mega-sub-menu > li {
		flex: 1 1 50%;
	}
}
@media screen and (min-width:920px) {
    .single main,
    .blog main {
        margin-left:0;
        margin-right:0;
    }

    header#masthead {
        min-height:93px;
    }

    .top-info {
        position:static;
        min-height:0;
        text-align:right;
    }

    
    #site-navigation.main-navigation, .sec-navigation {
        position:static;
        display:block;
        width:100%;
        padding-left:50px;
        padding-bottom:0;
        max-width:none;
        overflow-y:visible;
    }
    
    #burger {
        display:none;
    }
    
    .main-navigation ul, .sec-navigation ul {
        max-width:none;
    }
    
    #menu-main-menu li,
	#menu-top-menu li	{
        display:inline-block;
        float:none;
        color:black;
        margin-right:0;
    }
    
    .main-navigation li:hover, .sec-navigation li:hover {
        background-color:transparent;
    }

    
    ul#menu-main-menu,
	ul#menu-top-menu{
        text-align:center;
        width:100%;

    }
    
    #menu-primary-menu {
        float:none;
        position:static;
        margin:0;
        text-align:center;
        max-width:none;
    }
    
    .main-navigation ul ul {
        /*    position: absolute;
            top: 0;
            left:0;
            z-index: 99999;
            text-align:left;
            background-color:red;
            */
    }

    .main-navigation ul ul ul {
            top: 0;
    }
	
	.main-navigation ul ul a {
		width: auto;
		padding: 5px 0;
    white-space: nowrap;
	}

    .layer.navigation .menu>.menu-item {
        display: inline-block;
        padding-top:.25em;
        padding-bottom: .25em;
    }

    .menu{
        padding:1px 0;
    }

    header#masthead {
        overflow:visible;
    }
    
    nav#site-navigation{
        float:none;
        overflow:visible;
    }

    nav#site-navigation a:visited,
    nav#site-navigation a,
	#top-navigation a:visited,
	#top-navigation a {
        font-size:18px;
        /*color:#f4f4f4;
        margin:0 .25em;
        padding: 1.3em .5em;
		line-height: 1.1;*/
		font-weight: 500;
    }
	
	#top-navigation a:visited,
	#top-navigation a{
		font-weight: 300;
	}

    nav#site-navigation li {
        overflow:visible;
        margin-left:0;
     }

    nav#site-navigation li:hover>a:visited, 
    nav#site-navigation li:hover>a {
        color:#2d2d2d;
        background-color:#f2f2f2;
    }
    
    nav#site-navigation .sub-menu li:hover a:visited, 
    nav#site-navigation .sub-menu li:hover a {
        color:white;
        background-color:#5A8EC8;
    }
    
    nav#site-navigation .sub-menu {
    /*    background-color:#f2f2f2;
        top:100%;
        left:4px;
        width:auto;
        min-width:172px;
        padding:.5em 0;
        margin:0;
        display:none; */
    }
	
	nav#site-navigation .sub-menu a:visited,
	nav#site-navigation .sub-menu a{
		line-height: 1.4;
	}
    
    nav#site-navigation li:hover .sub-menu {
        display:block;
    }

    nav#site-navigation .sub-menu li a {
        width:100%;
        min-width: 172px;
        margin:0;
        padding-top:2px;
        padding-bottom:2px;
    }
    
    nav#site-navigation li:hover .sub-menu li a,
    #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout:hover ul.mega-sub-menu li.mega-menu-item a.mega-menu-link {
        color:black;
    }    
	
	#primary-navigation #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-column.swim-spas ul.mega-sub-menu > li {
		flex: 1 1 30%;
	}
    
    #category-description .band-content {
        margin:4em 0;
        padding: 1.5em 1.5em 0 1.7em;
        max-width:700px;
        float:right;
    }

    
    
    
    .has-sidebar #content {
        width:100%;
        background-color:#f5f5f5;
        margin:0;
    }

    .has-sidebar #primary {
        float:left;
        width:66%;
        margin:0;
        margin-top:1.5em;
    }
    
    .has-sidebar #secondary {
        margin:0;
        float:right;
        width:29%;
        margin-top:1.5em;
    }
/*
    #colophon .inner-wrapper,
    #content .inner-wrapper {
        overflow:hidden;
    }
*/    
    
    
    .avatar {
        float:right;
        margin:.5em 0 .5em 1em;
    }
    
    .bio {
        margin:0;
    }
    
    .bio p {
        margin-bottom:1em;
    }
    
/*
    section.featured {
        margin-top:.5em;
        margin-right:4%;
        width:16%;
        float:left;
    }
    section.featured img {
        max-width:100%;
        height:auto;
    }
 */   
    .wrapper,
    .container {
        max-width:1280px;
        padding:0 1em;
        margin:1em auto;
    }
	.full-width .wrapper,
    .full-width .container {
        max-width:100%;
		padding: 0;
    }

    .top-info .wrapper {
        margin-top:0;
        margin-bottom:0;
    }

    .has-sidebar .main-wrapper {
        margin-top:0;
        padding-top:0;
    }
    


/* content */
    div.entry-content {
        margin-top:0;
    }
    .margins {
        margin:0 3% 2em 3%;
    }
    
    #hero {
        overflow:hidden;
    }

    .hero form,
    .offer form {
        margin-bottom:0;
    }


    #content #secondary .widget input{
        width:100%;
        margin:2px 0;
    }
    
    
    #hero h1.heading {
        text-align:left;
        left:0;
        top:46%;
        position:absolute;
        color:white;
        text-shadow: 1px 1px 0 #02194e;
    }

    .hero.med {
        min-height: 350px;
    }

    .hero.short {
        min-height:375px;
    }
    
    .hero.short .content{
        min-height:375px;
    }

    .hero.short h1.heading {
        top:100px;
    }

    
    
    #top-coupon {
        margin:180px 0;
        float:right;
    }
    
    #hero.short #top-coupon {
        margin:40px 0;
    }
    
    #top-coupon.second-wash {
        margin:35px 0;
    }
    
    #hero.short #top-coupon.second-wash {
        margin:20px 0;
    }
    
    #top-coupon.congrats {
        margin:175px;
    }
    
    #hero.short #top-coupon.congrats {
        margin:45px;
    }
    
    #top-analysis {
        min-height:550px;
    }
    
    #bottom-analysis .left-column,
    #top-analysis .left-column{
        width:42%;
    }
    
    
    #service ul {
        text-align: center;
    }
    
    #service li {
        display:inline-block;
        vertical-align: top;
        padding:.5em;
        width:33%;
    }

    .has-sidebar .client-quote {
        width:100%;
        margin-right:0;
        float:none;
    }
    
    
    .af-form-wrapper {
        width:100%;
        /* max-width: 100%; */
    }
    
    .ppc-page .analysis .left-column {
        max-width:400px;
    }
    
    #colophon .contact {
        padding-top:3em;
        padding-bottom:3em;
    }
}

@media screen and (min-width:920px) {
    header#masthead {
        margin-bottom:0;
        padding-bottom:0;
    }

    .header-info {
        top:1.25em;
    }
    
    #colophon .contact-opt-in,
    #colophon .wpcf7 {
        width:65%;
    }
}

@media screen and (min-width:950px) {
    #footer-widgets .cta-left {
        float:left;
        text-align:left;
        margin-left: 5%;
        margin-right: 5%;
        width:48%;
    }

    #footer-widgets .cta-left h2 {
        margin-top:0;
        font-size:1.25em;
        margin-bottom:1em;
        padding:0;    
    }
    
    #footer-widgets .cta-left .submit-link {
        display:inline;
    }
    
    #footer-widgets .cta-right .submit-link {
        display:none;
    }
    
    #footer-widgets .cta-right {
        float:left;
        width:37%;
        margin-right:5%;
    }
}
/*
@media screen and (min-width: 1280px){
	.wrapper,
    .container {
        max-width:1200px;
    }
}*/
@media screen and (min-width: 1440px){
	.wrapper,
    .container {
        max-width:1400px;
    }
	.full-width .wrapper,
    .full-width .container {
        max-width: 100%;
    }
}

/* Formidable form styles  */
.frm_forms textarea {
    height:5.75em;
    border:solid 1px #ccc;
}

.frm_forms {
    border:none;
}
.slug-contact #primary .frm_forms textarea,
.slug-contact #primary .frm_forms input,
.slug-contact #primary .frm_forms select {
    border:1px solid #ccc;
}
.frm_forms input,
.frm_forms select,
.frm_forms textarea {
    width:100%;
    margin-bottom: .75em;
    box-sizing:border-box;
	font-family: 'Montserrat', sans-serif;
}

.frm_forms input[type="radio"] {
    width:1.5em;
    display:inline;
    position:relative;
    top:-.1em;
    line-height:1;
    margin-bottom:0;
}

.frm_forms label {
    line-height: 1;
}

.frm_radio {
    margin-bottom:.5em;
}

.frm_primary_label {
    font-size:21px;
    margin:.75em 0 .25em 0;
    display:block;
}

#form_contact-us-page input[type="submit"]{
	font-size: 1.7rem;
	line-height: 1;
}

#form_contact-us-page select{
	background: #fff;
	height: 37px
}

.top-offer .vertical_radio,
.top-offer .vertical_radio .frm_primary_label{
    font-size:16px;
}

.frm_none_container .frm_primary_label {
    display:none;
}

.frm_forms textarea {
    margin-bottom:.75em;
    height:136px;
    border-radius:16px;
}

.frm_submit {
    width:100%;
    margin:0 auto;
}

.frm_ajax_loading {
    display:none;
}

.frm_forms .form-field.geo-location {
    display:none;
}

#form_invite input {
    width:100%;
}

#form_invite input[type="submit"] {
    background-color: #ff0000;
    color:white;
}




@media screen and (min-width:768px) {
    /*#primary .frm_forms {
        width:100%;
        margin-left:0;
    }*/
    
    .social {
        float:right;
        width: 40%;
    }
    .connect {
        float:left;
        padding-right:1.5em;
        width:60%
    }
	
    .frm_forms .two-columns {
            overflow:hidden;
    }
    
    .frm_forms .header,
    .frm_forms .message {
        float:left;
        width:49%;
        margin:0 2% 0 0;
    }
    
    .frm_forms .message {
        margin:0;
    }
    
    .frm_forms .send input {
        margin:0;
    }
    
    .frm_forms textarea {
        margin-bottom: 12px;
    }

    .frm_forms {
        width:100%;
        max-width:none;
        margin-bottom:.25em;
        overflow:hidden;
    }
    
}
/* End Formidable form styles*/

/* Offer and Guides styles */
.top-offer {
    margin:1em auto;
    overflow:hidden;
}

.top-offer .offer-content {
    margin:25px;
    margin:2.5rem;
}

.top-offer .offer-content h1{
    margin:0;
    font-weight:300;
    line-height: 1.2;
    color:white;
}

.top-offer form {
    margin-top:1em;
}

.top-offer input {
    width:100%;
    margin-bottom:.5em;
    border-radius: 0;
}

.top-offer button {
    width:100%;
    margin-bottom:.5em;
    border-radius: 0;
}

.top-offer input,
.bottom-offer input {
    border: 1px solid #eeca17;
}

.booking.top-offer input {
    border: none;
}

.offer-master {
    padding:0;
}

.offer-title {
    padding: 1.5em;
    background-color: rgba(255, 255, 255, .9);
}

.offer-title h1 {
    padding:0;
    margin:0;
}

.offer-details {
    padding: .1em 1.5em .75em 1.5em;
	background-color: rgba(0, 0, 202,.75);
	color: white;
}

.offer-details h2 {
    color:white;
    font-size:1.75em;
}

.offer-details .frm_forms {
    margin-bottom:0;
}


.guides .text {
    max-width:420px;
}

.guides a {
    margin-left:0;
}

@media screen and (max-width:920px){
	.band.guides .content,
	#testimonials .content{padding: 0 1em}
}
@media screen and (max-width:480px){
	.band.guides .content,
	#testimonials .content{padding: 0 1.5em}
}

@media screen and (min-width:600px) {
   /* .top-offer fieldset{
        margin-left:-32px;
    }
    
    .top-offer .frm_submit,
    .top-offer .form-field {
        display: inline-block;
        width:50%;
        padding-left:32px;
        margin-right: -.4em;
    }*/
    
    .booking .frm_submit {
        width:100%;
        float:none;
    }
    
    .booking .form-field {
        width:100%;
        margin-right:0;
        float:none;
    }
    

    
    
    .bottom-offer .form-field {
        width:48%;
        margin-right:4%;
        float:left;
    }
    .bottom-offer .last-input {
        margin-right:0;
    }
}

@media screen and (max-width:750px){
	.home .top-offer{
		margin-top: 10em;
	}
	.offer-master.right-small{
		margin: 8em 0 2em;
	}
}

.right-medium,
.right-small,
.right-large,
.left-medium,
.left-small,
.left-large {
    float:left;
    max-width:500px;
    margin: 2em 0;
}


.right-medium,
.right-small,
.right-large {
    float:right;
}

.right-large,
.left-large {
    max-width:700px;
}

.right-small,
.left-small {
    max-width:500px;
}


.booking form {
    margin: 0;
}

.booking fieldset {
    width:100%;
}

.booking label {
    color:white;
    margin-top: .5em;
}

/* this undoes formidable styles that should be off */
.frm_form_field.frm_left_container label.frm_primary_label {
    float:none;
    max-width:none;
    display:inline-block;
    width:auto;
}



.booking-date {
    display:block;
    width:auto;
    margin-bottom:0;
}
.booking-date label, .booking-date input {
    display:inline-block;
    width:auto;
}

.booking-date input {
    display:inline-block;
    width:auto;
    max-width: 120px;
}

.booking-time {
    display:block;
    width:auto;
    margin-bottom:.5em;
}
.booking-time label, .booking-time select {
    display:inline-block;
    width:auto;
    margin-top:-.5em;
    margin-bottom:.5em;
}


.booking-time select {
    margin:8px auto 0 auto;
    display:inline-block;
}

.top-offer .content {
    margin:16px;
}

.top-offer {
	margin:10em 0 2em 0;
}

@media screen and (min-width:768px) {
}

/* Slick Slider CSS */
.slick-slider
{
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
}
.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;

    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide
{
    float: right;
}
.slick-slide img
{
    display: block;
}
.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide
{
    display: block;
}
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}

/* Arrows */
.slick-prev,
.slick-next
{
    font-size: 0;
    line-height: 0;

    position: absolute;
    top: 50%;

    display: block;

    padding: 0;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);

    cursor: pointer;

    color: transparent;
    border: none;
    outline: none;
    background: transparent;
    box-shadow:none;
    background-color: transparent;
    width:60px;
    height:60px;
    z-index: 99999;

}
.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus
{
    color: transparent;
    outline: none;
    background-color: transparent;
    box-shadow: none;
}

.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before
{
    opacity: 1;
}

.slick-prev.slick-disabled,
.slick-next.slick-disabled
{
    display:none;
}


.slick-prev
{
    left: -50px;
    background-image: url(images/prev-button.png);
}
[dir='rtl'] .slick-prev
{
    right: -50px;
    background-image: url(images/next-button.png);
    left: auto;
}


.slick-prev:before
{
    content: ' ';
}
[dir='rtl'] .slick-prev:before
{
    content: ' ';
}

.slick-next
{
    right: -50px;
    background-image: url(images/next-button.png);
}
[dir='rtl'] .slick-next
{
    right: auto;
    left: -50px;
    background-image: url(images/prev-button.png);
}
.slick-next:before
{
    content: ' ';
}
[dir='rtl'] .slick-next:before
{
    content: ' ';
}

@media screen and (min-width:600px) {
    .slick-prev
    {
        left: -60px;
    }
    [dir='rtl'] .slick-prev
    {
        right: -60px;
    }


    .slick-next
    {
        right: -60px;
    }
    [dir='rtl'] .slick-next
    {
        left: -60px;
    }
}

#top-banner {
    background-color: #1230ac;
}

#top-banner p,
#top-banner h2 {
    margin:4px 0;
    text-align:center;
}

#top-banner h2 {
    font-weight:bold;
    font-size:18px;
}
@media screen and (min-width:480px) {
    #top-banner h2 {
        font-weight:bold;
        font-size:24px;
    }
}
@media screen and (min-width:768px) {
    #top-banner .band-content {
        overflow:hidden;
        padding-top:0;
        padding-bottom:0;
    }

    #top-banner p,
    #top-banner h2 {
        float:left;
    }
    
    #top-banner h2 {
        width:40%;
        padding:.25em 1% 0 1%;
    }
    
    #top-banner p.details {
        width:36%;
        padding:0 1%;
        border-left:2px solid #f65a0d;
        border-right:2px solid #f65a0d;
    }
    
    #top-banner p.ends {
        width: 18%;
        padding:.5em 1% 0 1%;;
    }
}


/* print media query */

#home-hero{
	position: relative;
}
#home-hero .overlay{
	background-color: #000;
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0.3;
}
#home-hero .container{
	position: relative;
/*	min-height: 100vh;
	padding: 75px 1em 45px;
	display: flex;
	align-items: center;
	margin-top: 0;
	margin-bottom: 0;*/
}
.hero-sm #home-hero .container{
	min-height: 40vh;
}
#home-hero .container .content {
	max-width: 630px;
	color: #fff;
	padding-bottom: 200px;
	margin: 3em auto 2em;
}
#home-hero h1{
	color: #fff;
}
#home-hero p {
	text-shadow: 1px 1px 3px #444;
}
#home-hero .line-1 {
	font-size: 24px;
}
#home-hero .line-2 {
	max-width: 375px;
	margin-left: auto;
	margin-right: auto;
}
#home-hero .next-section{
	display: block;
	position: absolute;
	width: 20px;
	height: 20px;
	border-right: 3px solid #fff;
	border-bottom: 3px solid #fff;
	left: 50%;
	bottom: 20px;
	transform: rotate(45deg) translate(-50%,0);
}

@media screen and (min-width:768px){
	#home-hero h1{
		font-size: 60px;
		line-height: 1.1;
	}
}

@media screen and (max-width:767px){
	#home-hero .mobile-center {
		justify-content: center;
	}
}

.widget_nav_menu ul{
	margin-left: 0;
}
.widget_nav_menu ul a:visited, .widget_nav_menu ul a {
    color: inherit;
    text-decoration: none;
}
.main-navigation .widget_nav_menu ul a:visited, .main-navigation .widget_nav_menu ul a {
        color: #000;
}

.d-flex.cards .card.col-30{
	flex: 0 0 32%;
}

.card{
	border-radius: 7px;
	background-size: cover;
	background-position: top center;
	background-color: #5A8EC8;
	padding: 15% 1em 1em;
	color: #fff;
	position: relative;
	margin: 35px auto 0;
	max-width: 500px;
}
.card:before {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: #5A8EC8;
    border-radius: 7px;
    opacity: 0.4;
    z-index:0;
}
.card .card-content{
	position:relative;
}
.card .icon{
	position:absolute;
	top:0;
	left:50%;
	transform: translate(-50%,-50%);
	width:50px;
	height:50px;
	padding:10px;
	border-radius: 100%;
	background: #f3f3f4;
}
.card h3{
	color: inherit;
	text-align: center;
	font-weight: 600;
    font-size: 20px;
}

/*Video Background*/
.bg-vdeo {
	position: relative;
}
.vimeo-wrapper {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   z-index: 0;
   pointer-events: none;
   overflow: hidden;
}
.vimeo-wrapper iframe {
   width: 100vw;
   height: 56.25vw; /* Given a 16:9 aspect ratio, 9/16*100 = 56.25 */
   min-height: 100vh;
   min-width: 177.77vh; /* Given a 16:9 aspect ratio, 16/9*100 = 177.77 */
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
}

@media screen and (max-width:600px){
	.vimeo-wrapper iframe{
		min-height: unset;
		min-width: unset;
		top: 0;
		transform: translate(-50%, 0);
	}
	#home-hero .container{
		display: block;
		padding-bottom: 60px;
		padding-top: 60px;
	}
	#home-hero .container .content{
		/*padding-top: 38%;*/
	}
}

.home-page-parallax{
	background-image: url(https://blueprint.sirv.com/halton-spa/testimonials-desktop.jpg);
    /*background-attachment: fixed;*/
	background-repeat: no-repeat;
	background-size: cover;
	padding-top: 300px;
    margin-top: -300px;
	position: relative;
}
.home-page-parallax:before{
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: #000;
	opacity: 0.3;
}
.home-page-parallax .band{
	position: relative;
}

.round-bl{
	border-bottom-left-radius: 15px;
}
.round-br{
	border-bottom-right-radius: 15px;
}
.round-tl{
	border-top-left-radius: 15px;
}
.round-tr{
	border-top-right-radius: 15px;
}

.mb-1{
	margin-bottom: 1em;
}
.mb-2{
	margin-bottom: 2em;
}
.mb-3{
	margin-bottom: 3em;
}
.mt-0{
	margin-top: 0em;
}
.mt-1{
	margin-top: 1em;
}
.mt-2{
	margin-top: 2em;
}
.mt-3{
	margin-top: 3em;
}
.mb-0{
	margin-bottom: 0em !important;
}
.m-0{
	margin: 0 !important;
}

.p-1{
	padding: 1em;
}
.p-2{
	padding: 2em;
}
.p-3{
	padding: 3em;
}
.pb-1{
	padding-bottom: 1em;
}
.pb-2{
	padding-bottom: 2em;
}
.pb-3{
	padding-bottom: 3em;
}
.pt-1{
	padding-top: 1em;
}
.pt-2{
	padding-top: 2em;
}
.pt-3{
	padding-top: 3em;
}
.p-0{
	padding: 0 !important;
}
.pb-0{
	padding-bottom: 0 !important;
}
.pt-0{
	padding-top: 0 !important;
}

.available-colors span {
    display: inline-block;
    width: 80px;
    text-align: center;
	vertical-align: top;
	line-height: 1.2;
}
.available-colors span img{
	border: 1px solid #5A8EC8;
	border-radius: 100%;
}

.benefits-and-features .flexslider{
	background: unset;
    border: unset;
    box-shadow: unset;
	margin-bottom: 0;
}
.benefits-and-features .flexslider img{
	border-radius: 15px;
}
.benefits-and-features .flexslider li p{
	margin-top: 0.5em;
	font-size: 14px;
	line-height: 1.1;
}
.benefits-and-features .flexslider li p strong,
.benefits-and-features .flexslider li p a{
	display: block;
	font-size: 16px;
	margin: 8px 0;
}
.benefits-and-features .flex-direction-nav .flex-next {
    right: -32px;
}
.benefits-and-features .flex-direction-nav .flex-prev {
    left: -32px;
}
@media screen and (max-width: 1024px){
	.benefits-and-features .flexslider {
		max-width: calc(100% - 32px);
		margin: 0 auto;
	}
}

.brochure-section img,
.round-corners{
	border-radius: 15px;
}

@media screen and (min-width:1024px) and (max-width:1439px) {
	.md-center{
		text-align: center;
	}
	.md-pl-0{
		padding-left: 0em !important;
	}
	
}

@media screen and (max-width:1023px) {
	.desktop-show{
		display: none;
	}
	.mobile-border-t{
		border-top:1px solid #fff;
	}
	.mobile-border-t-dark{
		border-top:1px solid #ccc;
	}
	.mobile-hide{
		display: none;
	}
	.mobile-center{
		text-align: center;
	}
	.mobile-mb-0{
		margin-bottom: 0 !important;
	}
	.mobile-mb-1{
		margin-bottom: 1em;
	}
	.mobile-mb-2{
		margin-bottom: 2em;
	}
	.mobile-mt-0{
		margin-top: 0 !important;
	}
	.mobile-mt-1{
		margin-top: 1em;
	}
	.mobile-mt-2{
		margin-top: 2em;
	}
	.mobile-p-0{
		padding: 0em !important;
	}
	.mobile-pl-0{
		padding-left: 0em !important;
	}
	.mobile-p-1{
		padding: 1em !important;
	}
	.mobile-p-2{
		padding: 2em !important;
	}
	.mobile-pb-0{
		padding-bottom: 0 !important;
	}
	.mobile-pt-1{
		padding-top: 1em;
	}
	.mobile-pt-2{
		padding-top: 2em;
	}
	.mobile-pb-1{
		padding-bottom: 1em;
	}
	.mobile-pb-2{
		padding-bottom: 2em;
	}
}

/* Hero Slider 
.hero-slider ul.slides{
	display: flex;
    flex-wrap: nowrap;
}*/
.hero-slider ul.slides>li{
	display: none;
}
.hero-slider {
    min-height: 65vh;
}
.hero-slider, .hero-slider .band{
	position: relative;
}/*
.hero-slider .band .container{
	margin: 0 !important;
}*/
.hero-slider .band .overlay {
    background-color: #5A8EC8;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0.2;
}
.hero-slider .flex-control-nav {
    bottom: 18px;
	z-index: 10;
}
.hero-slider .flex-direction-nav {
    max-width: 1600px;
    margin: 0 auto;
    /*position: relative;*/
}
.hero-slider .flex-direction-nav .flex-next {
    right: 10px;
    height: 50px;
    opacity: 1;
    top: 50%;
}
.hero-slider .flex-direction-nav .flex-prev {
    left: 10px;
    height: 50px;
    opacity: 1;
    top: 50%;
}
.hero-slider .flex-direction-nav .flex-next,
.hero-slider .flex-direction-nav .flex-prev {
	color: #fff;
	text-shadow: 1px 1px 0 rgba(0,0,0,0.7);
}

.flex-control-paging li a:hover{
	background: #5A8EC8;
}

.band.top-hero .container{
	z-index: 1;
    position: relative;
    min-height: 65vh;
	display: flex;
    align-items: center;
    padding-top: 10%;
    padding-bottom: 10%;
	pointer-events: none;
}
.single-product .band.top-hero .container,
.hero-sm .band.top-hero .container{
	min-height: 65vh;
}
.band.top-hero .container .content{
	font-size: 130%;
}
.band.top-hero .container .content > *{
	pointer-events: all;
}
.band.top-hero .container .content h1,
.band.top-hero .container .content .h1,
.hero-h1{
	color: inherit;
    text-align: unset;
    font-size: 45px;
    text-shadow: 1px 1px 1px rgba(0,0,0,0.5);
}
.band.top-hero .container .content p,
.band.top-hero .container .content .product-hero-text,
.band.top-hero .container .content h2{
	text-shadow: 1px 1px 3px rgba(0,0,0,0.7);
}
.single-product .product-gallery {padding-bottom: 2em;}
.single-product .product-gallery .slides li{text-align: center;}
.single-product .product-gallery .flex-control-nav {
    bottom: 0;
}
.single-product .product-gallery .flex-direction-nav a{
	opacity:1;
	height: 45px;
}
@media screen and (min-width:768px){
	.single-product .product-gallery .flex-direction-nav .flex-prev {
		left: -35px;
	}
	.single-product .product-gallery .flex-direction-nav .flex-next {
		right: -35px;
	}
	.band.top-hero .container .content h1,
	.band.top-hero .container .content .h1,
	.hero-h1{
		font-size: 65px;
	}
	.hero-slider .flex-direction-nav .flex-next {
		right: 5%;
	}
	.hero-slider .flex-direction-nav .flex-prev {
		left: 5%;
	}
}
@media screen and (max-width: 767px){
	.band.top-hero .container .content{
		margin: 0 auto;
		padding: 0 20px;
	}
	.single-product .product-gallery {padding-bottom: 1em;}
}
span.attribute-heading {
    display: block;
    font-weight: bold;
}
span.attribute-info {
    display: block;
    font-size: 1.1em;
    font-weight: bold;
    color: #5A8EC8;
}

.product-info-band,
.product-info-band .container{
	position: relative;
}
.product-info-band .overlay{
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: rgba(255,255,255,0.85);
}

.cat-products{
	position: relative;
}
.cat-products .flex-direction-nav a,
#testimonials .flex-direction-nav a,
.benefits-and-features .flex-direction-nav a{
	height: 50px;
	opacity: 1!important;
	color: #5A8EC8;
	transition: 0.5s;
}
.cat-products .flex-direction-nav a:hover,
#testimonials .flex-direction-nav a:hover,
.benefits-and-features .flex-direction-nav a:hover{
	color: #2956a3;
}
.cat-products .flex-direction-nav .flex-prev,
#testimonials .flex-direction-nav .flex-prev{
    left: 0;
}
.cat-products .flex-direction-nav .flex-next,
#testimonials .flex-direction-nav .flex-next{
	right: 0;
}
.cat-products .flex-control-nav.flex-control-paging,
.benefits-and-features .flex-control-nav.flex-control-paging{
	display: none;
}
.cat-products .flex-viewport ul{
	margin-left: 0;
	/*margin: 0 auto 2em;
    display: flex;
    justify-content: flex-start;
    max-width: 95%;*/
}
@media screen and (min-width:768px){
	.cat-products.center-items .flex-viewport ul{
		max-width: 100%;
		display: flex;
		justify-content: center;
	}	
}
@media screen and (max-width:767px){
	.cat-products .flex-viewport {
		max-width: 300px;
		margin-left: auto;
		margin-right: auto;
	} 
}

/*
@media screen and (min-width:1024px){
	.cat-products .flex-viewport ul li.product{
		flex: 0 0 31%;
	}	
}
@media screen and (min-width:1200px){
	.cat-products .flex-viewport ul li.product{
		flex: 0 0 23.3%;
	}	
}
*/
.cat-products .prod-info{
	text-align: left;
}
.cat-products .prod-info h3{
	font-size:18px;
}

.people-icon{
	position: relative;
	display: inline-block;
    padding-right: 30px;
}
.people-icon:after{
	display: inline-block;
    content: '';
    position: absolute;
	right: 0;
	bottom: 3px;
    width: 28px;
    height: 100%;
    background-image: url(images/people-icon.svg);
	background-repeat: no-repeat;
    background-position: bottom;
	background-size: contain;
}

.selling-point .attribute{
	max-width: 180px;
}
.buttons-block .submit-link{
	min-width: 200px;
}
@media screen and (min-width:600px){
	.buttons-block .submit-link{
		margin-left: 2em;
	}
	.buttons-block .submit-link:first-of-type{
		margin-left: 0;
	}
}
@media screen and (max-width: 599px){
	.buttons-block{
		text-align: center;
	}
	.selling-point .attribute{
		margin: 0 auto;
	}
	.expand-form > .submit-link{
		margin-left:auto;
		margin-right:auto;
		display: block;
	}
	/*h1, h2{text-align: center;}*/
}

.stars{
	color: orange;
	display:inline-block;
	white-space: nowrap;
}

.tb-row-toggle{
	display: inline-block;
    width: 40px;
    height: 40px;
    border-radius: 100%;
    background: #ccc;
    position: relative;
	cursor: pointer;
	transition: 1s;	
}
.tb-row-toggle:hover{
	box-shadow: 0px 0px 5px rgba(0,0,0,0.5);
}
.tb-row-toggle.open{
	transform: rotateX(180deg);
}
span.tb-row-toggle:before {
    content: '';
    display: block;
    width: 20px;
    height: 20px;
    border-right: 4px solid #222;
    border-bottom: 4px solid #222;
    position: absolute;
    top: 44%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(45deg);
}
.specs .extra-rows{
	display: none;
}
form.cart{display:none!important;}

ul.products span.woocommerce-Price-amount.amount:before {
    content: 'From ';
}

ul.products .yotpo {
    margin-bottom: 0;
}

#main > .yotpo.yotpo-main-widget {
    max-width: 1600px;
    padding: 0 1em;
}

#hpModal .modal-info iframe{
	width: 100%;
    height: 223px;
}

.d-flex.model-list > .model{
	flex: 0 1 25%;
    margin: 0 0 2em;
    position: relative;
    padding: 0 1em 0;
	min-width: 240px;
}
.d-flex.model-list > .model .submit-link{
	min-width: unset;
    padding: 7px 1em;
    font-size: 18px;
    line-height: 23px;
}

.d-flex.model-list > .model.sold:before{
	content: '';
    display: block;
    width: 150px;
    height: 150px;
    position: absolute;
    background-image: url(https://blueprint.sirv.com/Hydropool/ppc-landing-page/SOLD.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    left: 50%;
    transform: translateX(-50%);
    top: 4%;
}

.woocommerce-products-compare-content .product a.product-link img {
    max-width: 350px;
}

.archive.post-type-archive-product main.site-main{
	max-width: 1400px;
    margin: 0 auto;
    padding: 0 1em;
}

.woocommerce-notices-wrapper .woocommerce-error {
	margin-top: 120px;
}

.cabinet-btn, .shell-btn{
	cursor: pointer;
}
.cabinet-btn:hover img, .shell-btn:hover img{
	box-shadow: 1px 1px 4px rgba(0,0,0,0.4);
}
.cabinet-btn.active img, .shell-btn.active img{
	box-shadow: 1px 1px 10px rgba(0,0,0,0.7);
}
.w-100{
	width: 100%;
}

.hide-menu .site-navs,
.hide-footer .site-footer section:first-of-type{
	display: none !important;
}

.promo-block{
	
}

@media screen and (min-width: 1440px){
	.xl-text-left{
		text-align: left!important;
	}
	.Sirv.sirv-thumbnails-only-gallery{
		max-height: 475px;
		overflow: hidden;
	}
}
@media screen and (max-width: 1439px){
	.lg-pb-2{
		padding-bottom: 2em;
	}
}

@media screen and (max-width: 991px){
	.attributes-block .d-flex{
		flex-direction: row;
		justify-content: center;
		flex-wrap: wrap;
	}	
}

@media screen and (min-width:415px) and (max-width: 991px){
	.sm-mxw-limit{
		max-width: 678px;
		margin: 0 auto;
	}
}
@media screen and (min-width:625px) and (max-width: 991px){
	.sm-left{
		text-align: left;
	}
	.sm-right{
		text-align: right;
	}
	.sm-space-between{
		justify-content: space-between;
	}
}
@media screen and (min-width:992px) and (max-width:1280px){
	.single-product .gallery-section{
		padding-bottom: 210px;
		position: relative;
	}
	.single-product .gallery-section .available-colors > .container{
		position: absolute;
		width: 700px;
		left: 50%;
		transform: translateX(-50%);
		bottom: 123px;
	}
	.single-product .gallery-section .available-colors > .container:last-of-type{
		bottom: 16px;
	}
	.hide-1280{
		display: none;
	}
}
@media screen and (max-width:617px){
	.available-colors .xs-center{
		text-align: center;
	}
	.available-colors .sm-pr-2{
		padding-right: 0;
	}
	.available-colors .sm-flex.sm-space-between{
		flex-direction: column;
	}
}

/*Comment Form*/
.single #comments{
	margin-bottom: 2em;
}
.single #comments #commentform label{
	display:block;
	margin-bottom: 5px;
}
.single #commentform p.comment-form-comment textarea{
	border: 1px solid #ccc;
	font-weight: 300;
	font-size: 16px;
}
.single #comments #commentform textarea#comment,
.single #comments #commentform input{
    padding: 10px;
    border-radius: 0;
}
.single #comments #commentform input{
	width: 100%;
    max-width: 420px;
}

.single #comments .comment-form-author input,
.single #comments .comment-form-email input,
.single #comments .comment-form-url input{
	border-bottom: 1px solid #ccc;
	margin-bottom: 4px;
	font-weight: 300;
	font-size: 16px;
}

.single #comments #commentform input[type=submit]{
	padding: 1em 2em;
	margin-top: 10px;
	border-radius: 16px;
}

.single:not(.logged-in) #comments #commentform p.comment-form-cookies-consent{
	display: flex;
}
.single:not(.logged-in) #comments #commentform p.comment-form-cookies-consent input{
	margin-top: 6px;
	margin-right: 13px;
	width: auto;
}

@media screen and (min-width:768px){
	.single #comments #commentform::after {
		content:"";
		display:block;
		clear:both;
	}
	.single:not(.logged-in) #comments #commentform p.comment-form-comment,
	.single:not(.logged-in) #comments #commentform p.comment-form-cookies-consent{
		display: block;
		width: 50%;
		margin-right: -5px;
		margin-top: 0;
		margin-bottom: 10px;
		float: left;
	}
	.single:not(.logged-in) #comments #commentform p.comment-form-author,
	.single:not(.logged-in) #comments #commentform p.comment-form-email,
	.single:not(.logged-in) #comments #commentform p.comment-form-url,
	.single:not(.logged-in) #comments #commentform p.form-submit{
		display: block;
		width:50%;
		float: left;
		padding-left: 2.5em;
		margin: 0 auto 10px;
	}
	.single:not(.logged-in) #comments #commentform p.form-submit{
		margin-right: 2.5em;
	}
	.single #comments #commentform input[type=submit]{
		padding: 1em 2em;
		margin-top: 10px;
	}
	.single:not(.logged-in) #comments #commentform textarea#comment,
	.single #comments #commentform input{
		width: 100%;
	}
	.single:not(.logged-in) #comments #commentform p.comment-form-cookies-consent{
		display: flex;
	}
	.single #comments .g-recaptcha{
		float: left;
		clear: left;
		margin-top: -8px!important;
		width: 50%;
	}
}

@media screen and (min-width: 1200px){
	.desktop-layout .flex-viewport ul {
		margin-left: 0;
		max-width: 100%;
		display: flex;
		justify-content: center;
	}
	.desktop-layout .flex-direction-nav{
		display: none;
	}
}

@media screen and (min-width: 992px){
	.desktop-layout-3 .flex-viewport ul {
		margin-left: 0;
		max-width: 100%;
		display: flex;
		justify-content: center;
	}
	.desktop-layout-3 .flex-direction-nav{
		display: none;
	}
}

@media screen and (min-width: 768px){
	.desktop-layout-2 .flex-viewport ul {
		margin-left: 0;
		max-width: 100%;
		display: flex;
		justify-content: center;
	}
	.desktop-layout-2 .flex-direction-nav{
		display: none;
	}
}

body.hide-compare p.woocommerce-products-compare-compare-button {
    display: none;
}


/*#bp-banner .desktop-banner {
	display: block;
	margin: 0 auto;
}

#bp-banner .tablet-banner,
#bp-banner .mobile-banner {
	display: none;
}


@media screen and (max-width: 1023px){
	#bp-banner .tablet-banner {
		display: block;
		margin: 0 auto;
	}

	#bp-banner .desktop-banner,
	#bp-banner .mobile-banner {
		display: none;
	}

}

@media screen and (max-width: 480px){
	#bp-banner .mobile-banner {
		display: block;
		margin: 0 auto;
	}

	#bp-banner .desktop-banner,
	#bp-banner .tablet-banner {
		display: none;
	}

}*/


.bp-banner-container {
    position: relative;
    max-width: 970px;
	font-family: 'Montserrat', Sans-serif;
	background-color: #242424 ;
	margin: 0 auto;
}

.bp-banner-container::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 5px;
	background-color: #F78B20;
	z-index: 1;
}

.bp-banner-inner {
	display: flex;
	align-items: center;
}

.bp-banner-img-left,
.bp-banner-img-right {
	flex: 0 0 21%;
	z-index: 2;
}

.bp-banner-img-left img,
.bp-banner-img-right img {
	display: flex;
}

.bp-banner-event-content {
	flex: 0 0 20%;
	padding-left: 20px;
	z-index: 3;
}

.bp-banner-event-content .bp-banner-event-title {
	color: #F78B20;
	font-size: 23px;
	font-weight: bold;
	text-align: left;
	line-height: 24px;	
	text-transform: uppercase;
	margin-bottom: 0;
}

.bp-banner-offer {
	flex: 0 0 38%;
	padding: 0 10px;
	z-index: 3;
}

.bp-banner-offer-content {
	color: #fff;
	font-size: 16px;
	font-weight: 500;
	line-height: 17px;
	text-transform: uppercase;
}

.bp-banner-offer-content p {
	font-size: 16px;
	font-weight: 500;
	line-height: 17px;
	margin-bottom: 5px;
}

.bp-banner-container .bp-banner-buttons {
    display: flex;
    justify-content: space-between;
}

.bp-banner-container .bp-banner-buttons a {
	display: flex;
	flex: 0 1 48%;
	justify-content: center;
	align-items: center;
	color: #fff !important;
	font-size: 9px;
	line-height: 1;
	font-weight: normal;
	text-decoration: none;
	text-align: center;
	text-transform: uppercase;
	background-color: #F78B20;
	padding: 4px 5px;
}


@media screen and (max-width: 1024px) {
	
	.bp-banner-container::after {
		height: 3px;
	}
	
	.bp-banner-img-left,
	.bp-banner-img-right {
		flex: 0 0 20%;
		z-index: 2;
	}
	
	.bp-banner-event-content .bp-banner-event-title {
		font-size: 23px;
		line-height: 24px;
	}
	
	.bp-banner-offer {
		flex: 0 0 40%;
	}
	
	.bp-banner-offer-content {
		font-size: 14px;
		padding: 0 7px;
	}

	.bp-banner-offer-content p {
		font-size: 14px;
	}
	
}

@media screen and (max-width: 900px) {
	
	.bp-banner-img-left,
	.bp-banner-img-right {
		flex: 0 0 19%;
		z-index: 2;
	}
	
	.bp-banner-event-content {
		padding-left: 5px;
	}
	
	.bp-banner-event-content .bp-banner-event-title {
		font-size: 20px;
		line-height: 21px;
	}
	
	.bp-banner-offer {
		flex: 0 0 37%;
    	padding: 0 5px;
	}
	
	.bp-banner-offer-content {
		font-size: 13px;
		padding: 0 5px;
	}
	
	.bp-banner-offer-content p {
		font-size: 13px;
		margin-bottom: 3px;
	}
	
	.bp-banner-container .bp-banner-buttons a {
		font-size: 8px;	
		padding: 3px 3px;
	}
	
}

@media screen and (max-width: 767px) {
	
	.bp-banner-container {
	    max-width: 480px;
		padding: 20px 10px;
	}
	
	.bp-banner-container::after {
		height: 5px;
	}
	
	.bp-banner-inner {
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	
	.bp-banner-img-left,
	.bp-banner-img-right {
		display: none;
	}
	
	.bp-banner-event-content {
		flex: 0 0 auto;
		padding-left: 0px;
	}
	
	.bp-banner-event-content .bp-banner-event-title {
		font-size: 27px;
		line-height: 28px;
		text-align: center;
	}
	
	.bp-banner-event-content .bp-banner-event-title br {
		display: none;		
	}
	
	.bp-banner-offer {
		flex: 0 0 auto;
    	padding: 0;
	}
	
	.bp-banner-offer-content {
		font-size: 11px;
		padding: 0;
	}
	
	.bp-banner-offer-content p {
		font-size: 11px;
		margin-bottom: 3px;
	}
	
	.bp-banner-container .bp-banner-buttons {
		width: 80%;
		margin: 0 auto;
	}
	
	.bp-banner-container .bp-banner-buttons a {
		font-size: 9px;	
		padding: 4px 3px;
	}

}

@media screen and (max-width: 480px) {
	
	.bp-banner-container {
		padding: 10px;
	}
	
	.bp-banner-inner {
		max-width: 320px;
		margin: 0 auto;
	}
	
	.bp-banner-event-content .bp-banner-event-title {
		font-size: 20px;
		line-height: 21px;
		text-align: center;
	}
	
	.bp-banner-offer-content {
		font-size: 13px;
		padding: 0;
	}

	.bp-banner-offer-content p {
		font-size: 13px;
		padding: 0;
	}

	.bp-banner-container .bp-banner-buttons {
		width: 90%;
		margin: 0 auto;
	}
	
	.bp-banner-container .bp-banner-buttons a {
		font-size: 9px;	
		padding: 4px 3px;
	}

}

#home-hero {
	background-position: 50% 60%;
}

.bpim-reviews .bp-g-review-container {
	height: 100%;
	background-color: rgba(255 255 255 / 80%);
    border-radius: 5px;
    padding: 20px;
}

.bpim-reviews .bp-g-reviews-list {
	display: flex !important;
}

#bpGoogleReviews {
	padding-bottom: 35px;
}

#footer-band {
		background-image: url(https://blueprint.sirv.com/southwest-spas/main-site/soutwest-spas-footer-mobile.jpg);
}

@media screen and (min-width: 481px) {
	#footer-band {
		background-image: url(https://blueprint.sirv.com/southwest-spas/main-site/soutwest-spas-footer.jpg);
		background-position: 50% 0;
		background-repeat: no-repeat;
		background-size: cover;
	}
}

@media screen and (max-width: 480px) {
	.cold-plunge-hero {
		position: relative;
	}
	.cold-plunge-hero > .overlay {
		content: '';
		position: absolute;
		top: 0;
		width: 100%;
		height: 100%;
		background-color: #000;
		z-index: 1;
		opacity: 0;
	}
}

.guy-tub-fade {
	background-image: url(https://blueprint.sirv.com/southwest-spas/main-site/guy-tub-fade.webp);
	background-position: top center;
	background-size: cover;
}

.guy-tub-fade img {
	display: none;
}

@media screen and (max-width:990px) {
	.guy-tub-fade {
		background-image: none;
		text-align: center;
	}
	.guy-tub-fade img {
		display: block;
		margin: 0 auto;
	}
}

.ice-bg {
	position: relative;
	background-image: url(https://blueprint.sirv.com/southwest-spas/main-site/ice-background.webp);
}

.ice-bg > .overlay {
	content: '';
	position: absolute;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: #fff;
	z-index: 1;
	opacity: .9;
}

.ice-bg > .container {
	position: relative;
	z-index: 2;
	margin-bottom: 0 !important;
}

.arctic-plunge-compare-container {
	max-width: 1180px;
	margin: 0 auto;
}

.arctic-plunge-compare-row {
	display: flex;
	justify-content: space-between;
	gap: 10px;
	background-color: #e6e6e6;
	padding: 10px;
}

.arctic-plunge-compare-row:nth-child(even) {
	background-color: #fff;	
}

.arctic-plunge-compare-row p:empty {
	display: none;
}

.arctic-plunge-compare-row .prod-col {
	flex: 0 1 50%;
	display: flex;
	gap: 5px;
	padding: 10px;
}

.arctic-plunge-compare-row .prod-col .prod-img,
.arctic-plunge-compare-row .prod-col .prod-info {
	flex: 0 1 50%;
}

.arctic-plunge-compare-row .prod-col ul {
	list-style: disc;
    margin-left: 18px;
	margin-bottom: 0;
}

.arctic-plunge-compare-row .prod-col h3 {
	color: #000;
	font-size: 22px;
	font-weight: bold;
}


@media screen and (max-width:990px) {
	.arctic-plunge-compare-container {
		max-width: 590px;
	}
	.arctic-plunge-compare-row {
		flex-direction: column;
		gap: 0;
	}
}

@media screen and (max-width:499px) {
	.arctic-plunge-compare-container {
		max-width: 350px;
	}
	.arctic-plunge-compare-row .prod-col {
		flex-direction: column;
	}
}


.bp-list {
	display: flex;
	flex-wrap: wrap;
}

.bp-list p:empty {
	display: none;
}

.bp-list p:last-child {
	margin-bottom: 0;
}

.bp-list .bp-list-item {
	flex: 0 0 50%;
	display: flex;
	align-items: center;
	gap: 5px;
	padding: 10px 5px;
}

.bp-list .bp-list-item img {
	width: 50px;
}


@media screen and (max-width:767px) {
	
	.bp-list .bp-list-item {
		flex: 0 0 100%;
	}
	
}

.home-content-blocks .col-33 .img-wrap {
	position: relative;
}

.home-content-blocks .col-33 .img-wrap::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: url('https://blueprint.sirv.com/southwest-spas/main-site/img-mask-center.png');
	background-size: contain;
	background-position: bottom center;
	background-repeat: no-repeat;
}

@media screen and (min-width:768px) {
	.home-content-blocks .col-33:nth-child(3n+1) .img-wrap::before {
		background-image: url('https://blueprint.sirv.com/southwest-spas/main-site/img-mask-left.png');		
	}
	.home-content-blocks .col-33:nth-child(3n+3) .img-wrap::before {
		background-image: url('https://blueprint.sirv.com/southwest-spas/main-site/img-mask-right.png');
		
	}
}

@media screen and (max-width:767px) {
	.home-content-blocks {
		max-width: 400px;
		padding: 5px;
		margin-left: auto;
		margin-right: auto;
	}
}

#notice-banner-top {
	display: none !important;
}

.swim-spa-icon img {
	height: 50px;
	margin-top: 20px;
}

a.woocommerce-LoopProduct-link {
}


.in-page-promo .col-35 {
	padding-right: 2em;
}

@media screen and (max-width:1450px) {
	.in-page-promo .col-35 {
		padding-left: 2em;
	}
}


.hydroguide-and-buttons-container {
	width: 100%;
	max-width: 525px;
	padding: 0 0.5em;
}

.hydroguide-and-buttons {
	display: none;
	width: 100%;
	max-width: 525px;
	margin-left: auto;
	margin-right: auto;
}

.hydroguide-and-buttons-container .hydroguide-and-buttons,
.hydroguide-and-buttons.show {
	display: block;
}

.hydroguide-and-buttons .product-buttons:first-child {
	margin-top: 0;
}

.bp-hydroguide-container .bp-hydroguide-field-total {
    flex: 0 0 216px;
}

.bp-hydroguide-container .bp-hydroguide-field-total .bp-hydroguide-total-cost-label {
	font-size: 15px;
    margin-bottom: 5px;
}

.bp-hydroguide-container .bp-hydroguide-field-total .bp-hydroguide-total-cost {
	font-size: 26px;
}

.bp-hydroguide-container .bp-hydroguide-field-disclaimer p {
    font-size: 12px;
    line-height: 1.4;
}

.bp-hydroguide-disclaimer p {
	font-size: 75%;
	line-height: 1.4;
}

.product-buttons {
	margin-top: 30px;
}

.product-buttons {
	display: flex;
	justify-content: space-between;
}

.product-buttons a.submit-link {
	min-width: 220px;
}

.product-buttons {
	width: 100%;
}

@media screen and (max-width:990px) {
	
	.hydroguide-and-buttons-container {
		padding: 2em 0.5em;
	}
	
	.product-buttons {
		margin-top: 3em;
	}
	
}

@media screen and (max-width:545px) {
	.bp-hydroguide-container .bp-hydroguide-field-total {
		flex: 0 0 auto;
	}
	.product-buttons {
		flex-direction: column;
		gap: 20px;
	}
	
	.hp-website-page div.mobile-form{
		display: block!important;
	}	
	.hp-website-page div.mobile-form p.h3,
	.hp-website-page div.mobile-form p.h2{
		margin-bottom: 10px;
	}
	.hp-website-page a.mobile-form-btn, 
	.hp-website-page button.mobile-form-btn{
		display:none!important;
	}
	.hp-website-page .hero-promo .mobile-form{
		padding: 0 0 1em;
	}
	.hp-website-page .hero-promo .mobile-form p.h2,
	.hp-website-page #ht-buyers-guide-band .mobile-form p.h2,
	.hp-website-page div.mobile-form p.h3,
	.hp-website-page .pop-up-info .mobile-form p.h2{
		font-size: 18px;
	}
}

.cat-products.ap-124-125 img {
	aspect-ratio: 124/125;
	object-fit: contain;
}