/*
Theme Name: Crystal Pools 2020
Text Domain: crystalpools
Version: 2.0
Description: 
Author: Kat Clark
Author URI: https://hello-developers.com/


										   ,      ▐▓⌐                           
							 ,▄▄      «╫▓^▐▓▌m²<   ▓▌                           
							Γ ▓▌     Γ╒▓▌ ▓▌╓▓Γ4▀,▓▓                ,«─Ç▓▄      
						,▄▄ƒ ▓█`,.},ε ▓▓ ▓▓ ▄ ▄▓▓█▀        ,.═─^` ,▄▄▓▓▓█`      
					   Γ ▓▓ ▓▓ ▓ ▄▓▓ ▓▓ ▓▓.".▓▓.   ,.m²^ ,▄▄▄▓▓█▀▀▌▐ ▐▓`        
					  ƒ ▓▓ ▐▓ ╚ #▓▓ ▐▓▄▄▓  ▓█▀"`Γ,▄▄▄▓▓█▀▀▀▌▐▄ ▓▓,▓▀╒▓▌.        
					 ╒  , ╒▓▀,▄▄▄▓▓▓█▀▓▓.▓▓▄▓▓▓█▀▀,. ▄É╒▓`▄▓▓ ▄▓▀██ ,, {▓       
				,.  ╒`▐▓▌ ▓▌ z▀` ▄▄▄▓▓▓ ▐▓ ▄▄ ▓▓ ▄█ ▓▓ ▓.▓▓▀`╓▓▀    ▀▀╓▓▀       
		   ╒`  ▄▄ ▐▄Γ╒▓▓ ▓▓ ƒ ▓▓▀Γ,└▄ `╓▓▀▄█.▓▓Γ/▀,▓█╦  ,▄▓█▓▓▀     └ ▓▌        
		  ╙█▓ ▓▓ ╓▓▓▓▓▀▓╫▓ , ▓▓`▐▀ ▓▓Γ ▓▌╒▀,▓█Æ ,▄▓▀   `▀▀`└          ▀█         
		   ╒ ▄▓.▄▓ ▄µ ▓▌▐▄  ╓▓▀ ▀╓█▓ƒ ▓▓^╗▄▓▀/ ▓▓Γ.                             
		  ╒.╓█ ▓▓`▓▀╓▓█▌▐▓Γ╒▓▀╕,▄▄▓▓▀█▀     .▄▓▓                                
		  `╓▀ ▓▓▀ `²▀▓▄▌▐▌ ▓▓  └`└                                              
		,Γ  ,▓█ ^φ▓▓█▀ [  ▓▓                                                    
	,┘,▄▄▓▓▓█▀         │▄▓▓                                                     
	▀▀▀`.               ..                                                      
*/

/* Reset and Hello Library */
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, img, ins, kbd, q, s, samp,
small, strike, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend, figure,
table, caption, tbody, tfoot, thead, tr, th, td { margin: 0; padding: 0; border: 0; outline: 0; font-weight: inherit; font-style: inherit; font-size: 100%; font-family: inherit; vertical-align: baseline; }
*, *:before, *:after {
	-moz-box-sizing: box-border; -webkit-box-sizing: box-border; box-sizing: box-border;
}
a:active { outline: none; }
*:focus { outline: 0; -moz-outline-style: none; }
body { line-height: 1; color: black; background: white; }
ol, ul { list-style: none; }
ol { list-style-type: decimal; list-style-position: inside; }
sup {  vertical-align: super; font-size: 0.6em; }
/* tables still need 'cellspacing="0"' in the markup */
table {	border-collapse: separate; border-spacing: 0; }
caption, th, td { text-align: left; font-weight: normal; }
blockquote:before, blockquote:after, q:before, q:after { content: "";}
blockquote, q { quotes: "" ""; }
em { font-style: italic; }
u { text-decoration: underline; }
img { max-width: 100%; height: auto; }
svg { max-height: 100%; display: inline-block; }

.screen-reader-text { border: 0; clip: rect(1px, 1px, 1px, 1px); -webkit-clip-path: inset(50%); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute !important; width: 1px; word-wrap: normal !important; word-break: normal; }
.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; -webkit-clip-path: none; clip-path: none; color: #21759b; display: block; font-size: 14px; font-size: 0.875rem; font-weight: 700; height: auto; right: 5px; line-height: normal; padding: 15px 23px 14px; text-decoration: none; top: 5px; width: auto; z-index: 100000; }

/* LINES */
.line { width: 100%; overflow: hidden; float: none; clear: both; }
.left { float: left; display: inline; }
.right { float: right; display: inline; }
.center { display: block; margin: 0 auto; }
.clear { clear: both; line-height: 0px; font-size: 0px; height: 0px; border-style: none; outline-style: none; overflow: hidden; }
.one_half { width: 50%; }
.one_quarter { width: 25%; }
.three_quarters { width: 75%; }
.one_third { width: 33.3333%; }
.two_thirds { width: 66.6666%; }
.one_sixth { width: 16.6666%; }
.flex_justify { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -ms-flex-pack: center; justify-content: space-between;  }
.flex { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex; }
/* .flex-justify::after { content: ""; flex: auto; } */
.row_reverse { flex-direction: row-reverse; }
.flex_wrap { -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }
.align_items_center { align-items: center; }
.flex_column { -ms-flex-direction: column; flex-direction: column; }

/* BASIC WYSIWYG */
dfn, cite, em, i { font-style: italic; }
pre { background: #eee; font-family: "Courier 10 Pitch", Courier, monospace; font-size: 15px; font-size: 0.9375rem; line-height: 1.6; margin-bottom: 1.6em; max-width: 100%; overflow: auto; padding: 1.6em; }
code, kbd, tt, var { font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace; font-size: 15px; font-size: 0.9375rem; }
abbr, acronym { border-bottom: 1px dotted #666; cursor: help; }
mark, ins { background: #eee; text-decoration: none; }
big { font-size: 125%; }
blockquote { quotes: "" ""; }
blockquote { font-size: 18px; font-size: 1.125rem; font-style: italic; line-height: 1.7; margin: 0; overflow: hidden; padding: 0; }
blockquote cite { display: block; font-style: normal; font-weight: 700; margin-top: 0.5em; }
address { margin: 0 0 1.5em; }
q { quotes: "“" "”" "‘" "’"; }
blockquote:before, blockquote:after { content: ""; }
:focus { outline: none; }

/* TEXT ALIGNS */
.tac { text-align: center; }
.tar { text-align: right; }
.tal { text-align: left; }

/* IMG Aligns */
.alignleft { display: inline; float: left; margin-right: 1.5em; }
.alignright { display: inline; float: right; margin-left: 1.5em; }
.aligncenter { clear: both; display: block; margin-left: auto; margin-right: auto; }

/* POSITIONS */
.tr { position: absolute; top: 0; right: 0; z-index: 1; }
.tl { position: absolute; top: 0; left: 0; z-index: 1; }
.br { position: absolute; bottom: 0; right: 0; z-index: 1; }
.bl { position: absolute; bottom: 0; left: 0; z-index: 1; }
.mr { position: absolute; top: 50%; right: 0; z-index: 1; }
.ml { position: absolute; top: 50%; left: 0; z-index: 1; }
.mm { position: absolute; top: 50%; left: 50%; z-index: 1; }
.mb { position: absolute; bottom: 0; left: 50%; z-index: 1; }
.mt { position: absolute; top: 0; left: 50%; z-index: 1; }
.bm { position: absolute; bottom: 50%; left: 50%; }

.hidden { display: none; }
.block { display: block; }
.noborder { border: 0 !important; }
.nopadding { padding: 0 !important; }
.nomargin { margin: 0 !important; }

.pf { position: fixed; }
.pr { position: relative; }
.hm { margin: 0 auto; display: block; }
.vm { position: relative; top: 50%; -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }

.mobile_only { display: none; }
.desktop_only { display: block; }

input.interactive { position: absolute; top: -9999px; left: -9999px; visibility: hidden; opacity: 0; }




/* THEME */
body,html { font-family: 'Montserrat', Arial, Sans-serif; font-size: 16px; font-weight: 300; line-height: 1.3125; color: #707070; }
html::before { content: ''; display: block; width: 1px; height: 42px; }
.return-line, .entry-content { width: 1434px; max-width: 90%; margin: 0 auto; }
.margin { margin: 20px; display: block; }

/* FONTS */
h1, .h1, h2, .h2, h3, .h3 { font-weight: 300; line-height: 1.3; margin-bottom: 0.3em; letter-spacing: 0.01em; }
h1, .h1 { font-size: 38px; /* letter-spacing: -0.03em;  */ letter-spacing: 0.01em; }
h2, .h2 { /* font-size: 28px;  */color: #3BC0F2; font-size: 36px; margin-bottom: 0.67em; }
h3, .h3 { font-size: 24px; font-weight: 700; margin-bottom: 1em; }
h4, .h4 { font-size: 24px; line-height: 1.16; font-weight: 700; margin-bottom: 0.66em; }
h5, .h5 { font-size: 20px; line-height: 1.1; margin-bottom: 0.88em; color: #2699FB; }
h6, .h6 { font-size: 18px; line-height: 1.1; margin-bottom: 0.88em; font-weight: 300; text-transform: uppercase; }
p, li { font-size: 16px; line-height: 1.3; font-weight: 300; }
li { margin-bottom: 0.4em; }
p, ul, ol { margin-bottom: 1.125em; }
a { color: inherit; text-decoration: none; }
a.readmore { color: #3976BD; text-decoration: none; /* font-weight: 700; */ }

th { font-weight: bold; }
ul li { padding-left: 2.2em; position: relative; }
ul li::before { content: "\2022"; display: block; /* width: 1.5em; margin-left: -1.5em; line-height: 0.5; vertical-align: middle; */ position: absolute; font-size: 4em; top: 0.09em; left: 0; margin: 0; line-height: 0; }
p a, li a { text-decoration: underline; color: #2E74C6; }

a.btn { display: inline-block; min-width: 175px; text-align: center; font-weight: 700; font-size: 16px; background-color: #3BC0F2; color: #fff !important;  box-shadow: 0px 3px 6px rgba(0,0,0,0.3); -webkit-border-radius: 11px; -moz-border-radius: 11px; border-radius: 11px; text-decoration: none !important; padding: 14px 25px 17px 25px; margin-bottom: 7px; }
a.btn.secondary { min-width: 240px; background-color: #4392D5; /* letter-spacing: -0.3px; */ text-transform: uppercase; -webkit-border-radius: 7px; -moz-border-radius: 7px; border-radius: 7px; }
a.btn.large { font-size: 25px; padding: 1.3em 1em; }
a.btn.white { background-color: #fff; border: 1px solid #707070; color: #707070 !important; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; font-weight: 300; box-shadow: none; }
a.btn:hover { background-color: rgba(59,192,242,0.5); }
a.btn.secondary:hover { background-color: rgba(67, 146, 213, .5); } 
a.btn.white:hover { background-color: #fff; }

.uppercase { text-transform: uppercase; }
.weight-light { font-weight: 300; }
.weight-bold { font-weight: 700; }
.accent { color: #00BBEA; }

.text-light h1, .text-light h2, .text-light h3, .text-light h4, .text-light h5, .text-light h6, .text-light p, .text-light li, .text-light a, .text-light { color: #fff !important; }
.text-dark h1, .text-dark h2, .text-dark h3, .text-dark h4, .text-dark h5, .text-dark h6, .text-dark p, .text-dark li, .text-dark a, .text-dark { color: #707070 !important; }

/* GENERAL */
.caption { display: block; /* font-size: 16px; */ font-size: 14px; line-height: 1.4;/*  text-transform: uppercase; */ position: absolute; top: 0; right: 0; left: 0; padding: 0.5em 1em; margin: 0; /* font-weight: 300; */ font-weight: 700; background: rgba(74, 74, 74, 0.69) 0% 0% no-repeat padding-box; text-align: center; /* letter-spacing: 0; */ color: #FFFFFF !important; text-shadow: 0px 2px 2px #000000;  }
.caption.bottom { top: auto; bottom: 0; }
.caption.under { position: static; display: block; margin-top: -1px; }

.image { display: block; width: 100%; position: relative; }

.image-box { position: relative; display: block; text-align: center; }
.image-box h3 { /* font-size: 32px; */ font-size: 24px; line-height: 0.9; color: #fff; /* font-weight: 300; */ font-weight: 700; text-shadow: 0px 2px 2px #000000; margin-bottom: 0; }
.image-box .image-content { width: 95%; height: 100%; display: flex; align-items: center; -ms-flex-pack: center; justify-content: center; position: absolute; top: 0; left: 0; right: 0; bottom: 0; margin: auto; }

.box-caption { background-color: #f1f1f1; text-decoration: none; position: relative; overflow: hidden; display: block; /* cursor: pointer; */ }
.box-caption img { width: 100%; display: block; }
.box-caption .caption { /* font-size: 22px; line-height: 1.18; */ font-size: 16px; /* background-color: #4A4A4A; */ background: rgba(74, 74, 74, 0.69) 0% 0% no-repeat padding-box; text-transform: none; padding: 1.3em 1em; text-shadow: none; text-align: left; -webkit-transition: all 0.2s; /* Safari */ transition: all 0.2s; }
.box-caption.hover-caption .caption { transform: translateY(101%); }
.box-caption.hover-caption:hover .caption { transform: translateY(0%); }

.box-shadow { box-shadow: 0px 1px 16px rgba(0,0,0,0.3); }
.box-shadow h2 { font-size: 28px; color: #707070; }
.box-shadow p.uppercase { margin-bottom: 0.9em; }
.box-shadow .accent { color: #3976BD; letter-spacing: -0.01em; }

.box-border { border: 1px solid #707070; }
.box-border h2 { color: #3976BD; font-size: 18px; font-weight: 700; margin-bottom: 0.1em; }
.box-border p { font-size: 16px; }
.box-border .accent { color: #707070; }

.post-box { padding-bottom: 60px; border: 1px solid #707070; position: relative;  }
.post-box h2 { color: #2699FB; font-size: 24px; }
.post-box p { font-size: 18px; }
.post-box .caption { background-color: #3BC0F2; text-shadow: none; text-transform: none; font-weight: 700; }

.attachment-post-thumbnail { display: block; width: 100%; }
.cat { background-color: #00BBEA; text-transform: uppercase; font-weight: 500; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; color: #fff; padding: 2px 10px; font-size: 10px; margin: 10px 0 0 10px; display: inline-block; }
.tr .cat { margin: 10px 10px 0 0; }

.one_half { width: calc(50% - 20px); margin: 15px 0;}
.one_third { width: calc(33.33% - 20px); margin: 15px 0; }
.one_quarter { width: calc(25% - 22.5px); margin: 15px 0; }
.three_quarters { width: calc(75% - 15px); margin: 15px 0; }
.two_thirds { width: calc(66.66% - 15px); margin: 15px 0; }
.one_sixth { width: calc(16.66% - 8px); margin: 15px 0; } 

.fade { max-height: 4em; overflow: hidden; position: relative; -webkit-transition: all 0.2s; /* Safari */ transition: all 0.2s; padding-bottom: 1.3em; }
.fade::after { content: ""; height: 2em;  position: absolute; bottom: 1.2em; left: 0px; width: 100%; background: transparent linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%) 0% 0% no-repeat padding-box; opacity: 1; pointer-events: none; z-index: 9; }
.fade label { position: absolute; bottom: 0; left: 0; cursor: pointer; z-index: 10; width: 100%; height: 1.3em; font-weight: 700; color: rgba(0,0,0,0.3); background-color: #fff; }
.fade label::after { content: 'more'; display: inline-block; margin-left: 5px;  }
.fader:checked ~ .fade { max-height: 1000px; }
.fader:checked ~ .fade::after { opacity: 0; }
.fader:checked ~ .fade label::after { content: 'less'; }

body:not(.home) #water { padding-bottom: 100px; }
section { padding: 50px 0; /* border-top: 1px solid #DEDEDE; */ }
section > h2 { margin-bottom: 30px; }

.chess { background-color: #f6fbff; padding: 0; width: 100%; display: flex; /* border-top: 1px solid #DEDEDE; border-bottom: 1px solid #DEDEDE; */ }
.chess .square { flex: 0 0 auto; }
.chess .black { background-position: center center; background-size: cover; min-height: 650px; width: 50%; align-self: stretch; }
.chess .white { /* width: 590px; max-width: 90%; */ max-width: 633px; width: 40%; margin: 50px 5%; margin-right: auto; }
.chess.row_reverse .white { margin-left: auto; /* margin-right: 84px; */ margin-right: 5%; }
@media screen and (min-width: 1920px) {
	.chess .white { margin: 50px 84px; margin-right: auto; }
	.chess.row_reverse .white { margin-left: auto; margin-right: 84px; }
}

#page-chess { padding: 0; }
#page-chess p { font-size: 22px; }

/* HEADER */
#debris { position: fixed; top: 0; left: 0; right: 0; z-index: 3; }
#below-header { padding: 38px 0; z-index: 101; position: relative; }

#above-header { width: 100%; height: 40px; align-items: center; align-content: stretch; border-top: 1px solid #707070; border-bottom: 1px solid #707070; background-color: #333; z-index: 100; position: relative; }
#above-header::after { content: ''; position: absolute; top: 100%; left: 0px; width: 100%; height: 131px; background: transparent linear-gradient(180deg, #2E5471 0%, #2E547100 100%) 0% 0% no-repeat padding-box; opacity: 1; pointer-events: none; z-index: 1; }
#above-header .tagline { font-size: 18px; margin: 0; }
#above-header .horizontal-menu a { display: block; padding: 10px 20px; font-weight: 700; color: inherit;  }
#above-header .horizontal-menu li.phone { font-size: 18px; }
#above-header .horizontal-menu li.residential a, #above-header  .horizontal-menu li.commercial a { text-align: center; color: #fff; background-color: #3BC0F2; }
#above-header .horizontal-menu li.commercial a { background-color: #C32235; color: #fff; }
#above-header .social-icons .svg-icon { fill: #fff; }
@media screen and (min-width: 1920px) {
	#above-header .horizontal-menu a { padding-left: 60px; padding-right: 60px; }
	#above-header .horizontal-menu li.residential a, #above-header  .horizontal-menu li.commercial a { padding-left: 50px; padding-right: 50px; }
}

#skimmer { width: 100%; position: relative; }
#skimmer .banner { min-height: 236px; background-size: cover; background-position: center center; background-image: var(--wpr-bg-50075843-e84d-4e0d-ab9f-565b07509bbd); position: relative; flex-direction: column-reverse; }
#skimmer .banner.large { min-height: 500px; height: 70vh; }
#filter-system { z-index: 2; margin-bottom: 24px; align-items: flex-end ; }
#filter-system h1 { font-size: 16px; font-weight: 700; }

#water { position: relative; z-index: 2; }

#breadcrumbs { padding: 1em 0; border-bottom: 1px solid #DEDEDE; }
#breadcrumbs p { font-size: 14px; line-height: 1.2; /* letter-spacing: -0.43px; */ color: #4A4A4A; margin: 0; }
#breadcrumbs a { text-decoration: none; color: #4A4A4A; }
#breadcrumbs .icon { text-indent: -99999em; background: #fff var(--wpr-bg-763d6b90-fb3b-43d4-bb06-7f628a00cf6d) no-repeat center center; display: inline-block; width: 1em; height: 1em;  }

/* MENUS */
.horizontal-menu { display: flex; margin: 0; }
.horizontal-menu li { padding: 0; margin: 0; }
.horizontal-menu li::before { display: none; }
.horizontal-menu a { text-decoration: none; font-weight: 700; }
.social-icons { flex-direction: row !important; margin: 0 0 0 5px; padding: 0; }
.social-icons .svg-icon { fill: #4a4a4a; }
.social-icons li a { padding: 0 0.7em !important; opacity: 0.7; -webkit-transition: opacity 0.2s; /* Safari */ transition: opacity 0.2s; vertical-align: middle; }
.social-icons li a:hover { opacity: 1; }

.primary-menu { display: flex; flex-wrap: wrap; -ms-flex-pack: center; justify-content: flex-end; font-size: 16px; font-weight: 700; }
.primary-menu li { position: relative; }
.primary-menu li a { display: block; padding: 0 0.9em; color: #fff; }
.primary-menu li.menu-item-has-children a { padding-right: 1.5em; }
.primary-menu li.menu-item-has-children:after { content: ''; display: block; height: 0; width: 0; border: 5px solid transparent; border-top-color: #fff; position: absolute; right: 0.5em; top: 0.5em; pointer-events: none; }
.primary-menu a:hover,
.primary-menu a:focus,
.current-menu-ancestor > a,
.current-menu-parent > a,
.current-menu-item > a,
.current-page-ancestor > a,
.current_page_parent > a { text-decoration: underline; }

/* SUB MENU */
.primary-menu ul { background: #000; border-radius: 0.4em; color: #fff; opacity: 0; padding: 1em 0; position: absolute; right: 9999rem; top: calc(100% + 2em); transition: opacity 0.15s linear, transform 0.15s linear, right 0s 0.15s; transform: translateY(0.6rem); width: 20em; z-index: 10; }
.primary-menu li.menu-item-has-children:hover > ul,
.primary-menu li.menu-item-has-children:focus > ul,
.primary-menu li.menu-item-has-children.focus > ul { right: 0; opacity: 1; transform: translateY(0); transition: opacity 0.15s linear, transform 0.15s linear; }
.primary-menu ul::before,
.primary-menu ul::after { content: ""; display: block; position: absolute; bottom: 100%; }
.primary-menu ul::before { height: 2rem; left: 0; right: 0; }
.primary-menu ul::after { border: 0.8em solid transparent; border-bottom-color: #000; right: 1.8rem; }
.primary-menu ul a { background: transparent; border: none; color: inherit; display: block; padding: 1em 2em; transition: background-color 0.15s linear; width: 100%; }
.primary-menu ul li.menu-item-has-children > a { padding-right: 4.5em; }
.primary-menu ul li.menu-item-has-children .icon { position: absolute; right: 1.5em; top: calc(50% - 0.5em); }

/* MOBILE NAV */
label[for="navcheck"] { position: relative; width: 25px; height: 25px; outline: none; background: none; cursor: pointer; z-index: 110; visibility: hidden; opacity: 0; }
#hamburger .patty, #hamburger .patty:before, #hamburger .patty:after { background-color: white; display: block; position: absolute; left: 0; top: 0; width: 100%; height: 2px; -webkit-transition: all 0.5s; transition: all 0.5s; }
#hamburger .patty { background-color: transparent; }
#hamburger .patty { margin-top: 10px; }
#hamburger .patty:before { content: ''; top: -4px; }
#hamburger .patty:after { content: ''; top: 4px; }
[id="navcheck"] ~ nav { /* overflow: hidden; */ -webkit-transition: all 0.2s; /* Safari */ transition: all 0.2s; }

/* Active */
[id="navcheck"]:checked ~ nav { right: 0; opacity: 1; transform: translateY(0); transition: opacity 0.15s linear, transform 0.15s linear;  }
[id="navcheck"]:checked + label .patty:before { top: 0 !important; -ms-transform: rotate(45deg); /* IE 9 */ -webkit-transform: rotate(45deg); /* Safari */ transform: rotate(45deg); }
[id="navcheck"]:checked + label .patty:after { top: 0 !important; right: 0; -ms-transform: rotate(-45deg); /* IE 9 */ -webkit-transform: rotate(-45deg); /* Safari */ transform: rotate(-45deg); }

/* POP - deleted - client chanbged mind >:O */
#pop-out { width: 860px; max-width: 90%; position: fixed; top: 170px; left: 100%; background-color: #fff; padding: 20px; /* transform: translateX(-100%); */ z-index: 100; -webkit-transition: all 0.2s; /* Safari */ transition: all 0.2s;  box-shadow: 0px 2px 12px rgba(0,0,0,0.3); border: 1px solid #707070; }
input#enquiry { position: absolute; top: -9999px; left: -9999px; visibility: hidden; opacity: 0; }
label[for="enquiry"] { position: absolute; top: 0; left: 0; transform: rotate(-90deg) translate(-100%, -100%); transform-origin: 0 0; font-size: 23px; color: #fff; text-transform: uppercase; padding: 10px 18px; background-color: rgba(74, 74, 74, 0.83); border: 1px solid #707070; cursor: pointer; }
label[for="enquiry"]::after { content: '+'; background-color: rgba(38, 153, 251, 1); color: #fff; position: absolute; top: 0; right: 0; padding: 0 5px; font-size: 30px; line-height: 1; font-weight: 700; transform: translateY(-100%);  }

/* Active */
/*
[id="enquiry"]:checked ~ #pop-out { transform: translateX(-100%); }
[id="enquiry"]:checked ~ #pop-out label[for="enquiry"] { background-color: #2699FB; font-size: 0; }
[id="enquiry"]:checked ~ #pop-out label[for="enquiry"]::before { content: 'Close'; font-size: 23px; }
[id="enquiry"]:checked ~ #pop-out label[for="enquiry"]::after { display: none; }
[id="enquiry"]:checked::before { content: ''; position: fixed; top: 0; left: 0; right: 0; bottom: 0; width: 100vw; height: 100vh; background-color: rgba(0,0,0,0.2); transition: opacity 0.5s cubic-bezier(0.19, 1, 0.22, 1); z-index: 100; }
*/



/* FOOTER */
#main-drains { /* background-color: #02659D; */ background-color: #333; border-top: 1px solid #e9e9e9; }
#main-drains .top { background-color: #fff; padding: 14px 0; align-items: center; }
#main-drains .bottom { background-color: #2D2D2E; padding: 14px 0; }
#main-drains .social-icons path { fill: #fff; }
#main-drains .footer-copyright { padding: 0; margin: 0; font-size: 15px; }
#main-drains #mc_embed_signup_scroll { display: flex; width: 80%; }
#main-drains #mc_embed_signup_scroll input { background-color: transparent; border: 1px solid rgba(255,255,255,0.5); padding: 14px 20px; border-radius: 8px; color: #fff; flex: 1 1 auto; }
#main-drains #mc_embed_signup_scroll input[type="submit"] { background-color: #fff; color: #02659D; text-transform: uppercase; margin-left: 10px;  }
.footer-widgets .two_thirds .mobile_line { margin-top: 0; }
.footer-widgets li { margin: 0; }
#crystal-footer { padding: 45px 0; }
#crystal-footer h2 { margin: 0;  }

/* BACK TO TOp */
#btt { position: fixed; bottom: 20%; right: 0; font-size: 23px; color: #fff; padding: 10px 18px; background-color: rgba(74, 74, 74, 0.83); border: 1px solid #707070; cursor: pointer; z-index: 20; }
#btt::after { content: '\02191';	}

/* CTA  */
#cta_1 { padding: 150px 0; align-items: center; }
#cta_1 h2 { margin-bottom: 0.3em; color: #707070; }
#cta_1 .btn { margin: 0 50px; }

/* SINGULAR */
.features { border-bottom: 1px solid #DEDEDE; }
.sidebar-left { display: flex; -ms-flex-pack: center; justify-content: space-between; flex-direction: column; max-width: 350px; }
.sidebar-left .lead { align-self: flex-start; margin: 0 auto; }
.sidebar-left .lead h1 { font-weight: 700; font-size: 24px; line-height: 1.1; margin-bottom: 0.92em; }
.sidebar-left .lead p { font-size: 22px; font-weight: 300; margin-bottom: 1.09em; }
.sidebar-left .blockquote { margin: auto 0; }
.sidebar-left .blockquote p { font-weight: 700; font-size: 28px; margin-bottom: 0.85em; line-height: 1.14; color: #3BC0F2; }
.sidebar-left #image-cluster { margin: auto 0; }
.sidebar-left #image-cluster img { margin: 24px 0; }

.page-content .wp-post-image { margin-bottom: 20px; }
.page-content a { color: #3976BD; text-decoration: underline; }
.page-content ul.ticks-list li { position: relative; padding-left: 3em; margin-bottom: 2em; }
.page-content ul.ticks-list li::before { content: ''; display: block; position: absolute; width: 0.4em; height: 0.8em; border: 2px solid #3BC0F2; border-left: 0; border-top: 0; transform: rotate(45deg); top: 0.3em; left: 0.6em; margin-left: -1em; font-size: 1em; line-height: 1; vertical-align: middle; margin: 0;  }
.page-content ul.ticks-list li::after { content: ''; display: block; position: absolute; width: 1.7em; height: 1.7em; border: 1px solid #4A4A4A; left: 0; top: 0; }
.page-content h2 { margin-top: 1.6em; }
.page-content h3 { margin-top: 2.2em; }
.page-content h2:first-of-type { margin-top: 0; }
.page-content .embed-container { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; height: auto; margin-bottom: 2em; }
.embed-container iframe, .embed-container object, .embed-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }


/* FORMS  */
.gform_wrapper li { margin: 0; padding: 0; }
.gform_wrapper li::before, .gform_wrapper li::before { display: none; }
.gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]) { border: solid 2px #4A4A4A; -webkit-border-radius: 25px; -moz-border-radius: 25px; border-radius: 25px; padding: 14px 17px !important; font-size: 14px !important; -webkit-appearance: none; -moz-appearance: none; }
.gform_wrapper textarea { border: solid 2px #4A4A4A; -webkit-border-radius: 8px; -moz-border-radius: 8px; border-radius: 8px; }
.gform_wrapper .gform_footer input.button, .gform_wrapper .gform_footer input[type=submit], .gform_wrapper .gform_page_footer input.button, .gform_wrapper .gform_page_footer input[type=submit] { display: inline-block; min-width: 315px; text-align: center; font-weight: 700; font-size: 16px; background-color: #4392D5; color: #fff !important; -webkit-border-radius: 11px; -moz-border-radius: 11px; border-radius: 11px; text-decoration: none !important; border: 0; padding: 14px 25px 12px 25px; margin: 0 auto; cursor: pointer; -webkit-appearance: none; -moz-appearance: none; }
.gform_wrapper .top_label .gfield_label { padding: 18px 0 4px 0; }
.gform_wrapper .top_label div.ginput_container { margin: 0 !important; }
.gform_wrapper li.gfield.gfield_error, .gform_wrapper li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning { padding-left: 20px; }
.gform_wrapper .ginput_container_select { border: solid 2px #4A4A4A; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; position: relative; }
.gform_wrapper .ginput_container_select::after { content: ''; width: 8px; height: 8px; border: 1px solid transparent; transform: rotate(45deg); border-right-color: #333; border-bottom-color: #333; position: absolute; top: calc(50% - 4px); right: 20px; pointer-events: none; }
.gform_wrapper .ginput_container_select .gfield_select { border: 0; width: 110%; margin: 0 0 0 10px !important; background-color: transparent; display: block; padding: 14px 0 !important; font-size: 14px !important; -webkit-appearance: none; -moz-appearance: none; }
.gform_wrapper .field_description_below .gfield_description { padding: 0; }

.gform_wrapper input[type="radio"] { opacity: 0; visibility: hidden; cursor: pointer; margin-right: 10px; }
.gform_wrapper input[type="radio"] ~ label::before { content:''; position: absolute; top: 6px; left: 0; height: 16px; width: 16px; background-color: #fff; border: 2px solid #3BC0F2; border-radius: 50%; }
.gform_wrapper input[type="radio"] ~ label::after { content:''; position: absolute; top: 10px; left: 4px; width: 8px; height: 8px; border-radius: 50%; background: #3BC0F2; opacity: 0; }
.gform_wrapper input[type="radio"]:checked ~ label::after{ opacity: 1; }

.gform_wrapper input[type="checkbox"] { opacity: 0; visibility: hidden; cursor: pointer; margin: 0 20px 20px 0;  }
.gform_wrapper input[type="checkbox"] ~ label::before { content:''; position: absolute; top: 2px; left: 0; height: 30px; width: 30px; background-color: #fff; border: 2px solid #BCE0FD; }
.gform_wrapper input[type="checkbox"] ~ label::after { content:''; position: absolute; top: 8px; left: 10px; width: 10px; height: 14px; border: 2px solid #3BC0F2; border-left: 0; border-top: 0; transform: rotate(45deg); opacity: 0; }
.gform_wrapper input[type="checkbox"]:checked ~ label::after{ opacity: 1; }

.gform_wrapper form.with-types { position: relative; }
.gform_wrapper form.with-types li.gfield.master { position: absolute; width: 52%; }
.gform_wrapper form.with-types li.gfield:not(.master) { margin: 0 0 0 52% !important; background-color: #dadedf; padding: 2px 34px; }
.gform_wrapper form.with-types .gform_footer { width: 48%; margin-left: 52%; }

table.gsurvey-likert .gsurvey-likert-row-label {
	font-weight: 700;
	background-color: rgba(238, 238, 238, .6);
	text-align: left;
	padding: 8px !important; }

/* HOME */
.slides { z-index: 0; margin: 0; }
.slide .line { height: 80vh; min-height: 600px; background-size: cover; position: relative; }
.slide-content { position: absolute; bottom: 8%; left: 0; right: 0; width: 90%; max-width: 1443px; margin: 0 auto; text-align: center; }
.slide-content * { color: #fff; }
.slide-content h1, .slide-content h2 { font-weight: 300; text-transform: uppercase; /* font-size: 38px; */ font-size: 32px; text-shadow: 0px 0px 20px #000; }
.slide-content p { font-weight: 300; font-size: 18px;text-shadow: 0px 0px 20px #000;  }
.slide-content img { margin: 2em auto; }
body.home main h2 { color: #707070; font-size: 24px; }
#intro h2 { font-weight: 700; }
#intro p { font-size: 18px; }
#intro .mobile_line:first-child { margin-right: 48px; }
#pool-locations, #recent-projects { padding-top: 0; }
#pool-locations h2 { color: #3BC0F2; font-weight: 700; }
#pool-locations p { font-size: 18px; }
#pool-LGAS { padding-top: 0; }
#pool-LGAS h2 { color: #3BC0F2; font-weight: 700; }
#pool-LGAS p { font-size: 18px; }
#pool-LGAS ul { columns: 2; }
#pool-LGAS ul li { padding: 0; }
#pool-LGAS ul li::before { content: none; }
/* #pool-LGAS a.btn { text-align: left; } */
#pool-types { border-top: 1px solid #DEDEDE; }
#buyers-guide { border-top: 1px solid #DEDEDE; }
#buyers-guide h2 { font-size: 36px; color: #3BC0F2; }
#buyers-guide p { font-size: 24px; }
#buyers-guide ul { margin-bottom: 2em; }
#types-gallery { margin-bottom: 35px; }
.pool_type img { width: 100%;}
#why-crystal p { font-size: 16px; }
#news { border-top: 1px solid #DEDEDE; }
#news .return-line:first-child { /* margin-top: 25px; */ margin-bottom: 20px; }
#news .mobile_line img { width: 100%; }
#testimonials { background: #007cb1 var(--wpr-bg-74ce5c11-5df4-4c4d-a0d5-37d087dd549d) no-repeat center center; background-size: cover; padding: 75px 0; }
#testimonials h2 { font-size: 32px; }
#testimonials p { font-size: 15px;/*  letter-spacing: 0; */ margin: 0;}
#testimonials-carousel { margin: 40px auto; }
.testimonial { position: relative; background-color: #fff; display: flex; flex-direction: column; -ms-flex-pack: center; justify-content: center; align-items: center; min-height: 340px; margin: 0 15px 15px; }
.testimonial::after { content: ''; width: 38px; height: 38px; background-color: #fff; transform: rotate(45deg) translate(0, 50%); position: absolute; left: 50%; bottom: 0; }
.testimonial svg { fill: #3BC0F2; }
.testimonial_excerpt { min-height: 100px; margin: 20px; }
#social h2 { font-size: 32px; }
#social h5 { font-weight: 700; }
#social .social-icons { display: flex; -ms-flex-pack: center; justify-content: space-between; margin-bottom: 15px;  }
#social .social-icons li a { padding: 0 !important; }
#social .social-icons svg { width: 35px; height: 35px; }

/* FAQS / Reviews */
.control-valve { margin: 0 0 40px 0; }
.control-valve .text { margin-left: 30px; width: 100%; }
.control-valve .icon-image { flex: 0 0 auto; min-width: 100px; max-width: 100px; }
.control-valve .icon-image img { margin: 0 auto; display: block; }
.control-valve h5 { color: #020202; }
.control-valve h2, .control-valve h3 { margin-top: 0; }
.control-valve h2 { font-size: 32px; }
#reviews .icon-image { width: 214px; }
#reviews .icon-image img { display: block; border: 1px solid #707070; }
#reasons .control-valve .text { margin: 30px 0 0 0; }

/* Singular */
.format-video .image::before { content: ''; display: block; position: absolute; top: 0; left: 0; right: 0; bottom: 0; margin: auto; width: 67px; height: 67px; background-color: #C32235; box-shadow: 0px 1px 6px #000000B1; border: 3px solid #F7F9FA; -webkit-border-radius: 50%; -moz-border-radius: 50%; border-radius: 50%; }
.format-video .image::after { content: ''; display: block; position: absolute; top: 0; left: 0; right: 0; bottom: 0; margin: auto; height: 0; width: 0; border: 16px solid transparent; border-left: 25px solid #fff; transform: translateX(25%); }
.pagination-wrapper, .pagination-single { margin-bottom: 90px; }
.pagination-wrapper .prev, .pagination-wrapper .next { padding: 0 1em; }
.pagination-wrapper .page-numbers { min-width: 1em; display: inline-block; }
.pagination-wrapper .current { text-decoration: underline; }

/* ARCHIVES */
.filter { cursor: pointer; }
.filter img { display: block; }
.three_quarters .filter { display: block; position: relative; background-color: #f1f1f1; text-decoration: none; }
.three_quarters .filter.is-checked { outline: 2px solid #3BC0F2; }
.grid.return-line { width: 1454px; }
.grid .one_third { margin: 10px; display: block; }
.post-type-archive-portfolio h2.showing { margin-top: 10px; margin-bottom: 30px; font-size: 28px; font-weight: 700; color: #707070; }
.post-type-archive-commercial h2.showing { margin-top: 10px; min-height: 80px; font-size: 28px; font-weight: 700; color: #707070; }
.post-type-archive-portfolio #breadcrumbs { padding: 1em 0; border: 0; }  
.post-type-archive-commercial #breadcrumbs { min-height: 50px; padding: 1em 0; border: 0; } 
#header .button-group { margin-top: -125px; }
.post-type-archive-portfolio #header .button-group { margin-top: -165px; }
#filter-system .one_quarter, #filter-system .three_quarters { margin: 0; }

/* WP Gallery */
.gallery { display: flex; flex-wrap: wrap; margin: 3em 0 3em -0.8em; width: calc(100% + 1.6em); }
.gallery-item { margin: 0.8em 0; padding: 0 0.8em; width: 100%; box-sizing: border-box; }
.gallery-caption { display: block; margin-top: 0.8em; }
.gallery-columns-2 .gallery-item { max-width: 50%; }
.gallery-columns-3 .gallery-item { max-width: 33.33%; }
.gallery-columns-4 .gallery-item { max-width: 25%; }
.gallery-columns-5 .gallery-item { max-width: 20%; }
.gallery-columns-6 .gallery-item { max-width: 16.66%; }
.gallery-columns-7 .gallery-item { max-width: 14.28%; }
.gallery-columns-8 .gallery-item { max-width: 12.5%; }
.gallery-columns-9 .gallery-item { max-width: 11.11%; }

/* SINGLE POOLS */
/* body.single-portfolio #water { padding-bottom: 0; } */
#single-pool { margin-bottom: 0; padding-bottom: 0; }
p.lead { font-size: 1.5em; }
#gallery .return-line::after { content: ''; width: calc(33.33% - 20px); }

#single-pool > .flex_justify { padding: 0 0 50px 0; align-items: center; }
#single-pool .description {  }
#single-pool table { margin-top: 85px; font-size: 14px; }
#single-pool td, #single-pool th { font-size: 16px; padding: 5px 0; }
#single-pool th { padding-right: 45px; }
#single-pool .image { width: 57%; }
#single-pool .text { width: 30%; max-width: 460px; margin: 50px auto; }

.secondary-descriptor { color: rgba(74, 74, 74, .64); margin: 10px 0 38px; text-transform: uppercase; }
.job-number { font-size: 14px;  color: rgba(74, 74, 74, .64); text-transform: uppercase; }

/* COMMERCIAL */
.commercial #main-drains,
.commercial a.btn { background-color: #C32235; }
.commercial a.btn:hover { background-color: rgba(195, 34, 53, 0.5); }
.commercial h2,
.commercial .page-content ul li::before,
.commercial .blockquote p,
.commercial p a { color: #C32235; }
.commercial #skimmer .banner { background-image: none; background-color: #C32235; }
.commercial #above-header::after { background: transparent linear-gradient(180deg, #030303A7 0%, #2E547100 100%) 0% 0% no-repeat padding-box; }
.commercial .gform_wrapper .gform_footer input.button, .commercial .gform_wrapper .gform_footer input[type=submit] { background-color: #C32235; }

#expertise h2 { font-size: 28px; margin:  0 0 0.3em 0; }
#expertise p { font-size: 18px; margin: 0 50px 0 0; }
#expertise .return-line { background: transparent linear-gradient(90deg, #64111b 00%, #64111b 30%, #C32235 60%) 0% 0% no-repeat padding-box; }
#expertise .one_third { margin: 0; background: no-repeat center center; background-size: cover; min-height: 150px; }
#expertise .two_thirds { margin: 30px; }
.commercial .chess { background-color: #f5f5f5; }
.commercial .cat { background-color: #C32235; }
#com-features { border-top: 1px solid #DEDEDE; border-bottom: 0;}
.commercial .readmore { color: #C32235; }
.commercial .category-commercial .caption { background-color: #C32235; }
.commercial .three_quarters .filter.is-checked { outline: 2px solid #C32235; }


/* WORK WITH US */
.awsm-job-entry-content { max-width: 100%; }

.awsm-application-form input[type="text"],
.awsm-application-form input[type="email"],
.awsm-application-form input[type="tel"]{ border: solid 2px #4A4A4A; -webkit-border-radius: 25px; -moz-border-radius: 25px; border-radius: 25px; padding: 14px 17px !important; font-size: 14px !important; -webkit-appearance: none; -moz-appearance: none; }
.awsm-application-form label { display: inline-block; font-size: 16px; font-weight: 700; margin-bottom: 8px; padding: 0; }
.awsm-application-form textarea { border: solid 2px #4A4A4A; -webkit-border-radius: 8px; -moz-border-radius: 8px; border-radius: 8px;padding: 14px 17px !important; font-size: 14px !important; -webkit-appearance: none; -moz-appearance: none; }
.awsm-application-form input[type="file"] { background: rgba(0,0,0,.02); border: 1px dashed #ccc; border-radius: 4px; margin-bottom: 8px; padding: 32px; text-align: center; }

.awsm-job-more-container { margin-top: 10px;}

.awsm-job-wrap { margin-top: 40px; }
.awsm-grid-item .awsm-job-item { box-shadow: unset; border: 1px solid #707070; padding: 40px 30px 80px; position: relative; }
.awsm-grid-item .awsm-grid-left-col { display: flex; flex-direction: column; }
.awsm-grid-item .caption { background-color: #3BC0F2; text-shadow: none; text-transform: none; font-weight: 700; }
.awsm-grid-item p { font-size: 18px; color: #707070; line-height: 1.3; font-weight: 300; }
.awsm-grid-item h2.awsm-job-post-title { font-size: 28px; color: #707070; line-height: 1.3; font-weight: 300; margin-bottom: 18px; }
.awsm-grid-item p.awsm-job-category { font-size: 16px; margin-bottom: 10px; }
.awsm-grid-item .awsm-job-featured-image { margin: -40px -30px 40px -30px; width: calc(100% + 60px); order: -1; }
.awsm-grid-item .awsm-job-more { display: none; }
.awsm-grid-item .awsm-job-item::after { content: ""; height: 30%; position: absolute; bottom: 60px; left: 0px; width: 100%; background: transparent linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%) 0% 0% no-repeat padding-box; opacity: 1; pointer-events: none; z-index: 9; }
.awsm-grid-item .awsm-job-item .caption { z-index: 10; }
.awsm-grid-item .awsm-grid-right-col { min-height: 80px; }

/* SLICK */

/* Arrows */
.slick-prev,
.slick-next { font-size: 0; line-height: 0; position: absolute; z-index: 10; top: 50%; display: block; margin-top: -15px; overflow: hidden; display: block; width: 45px; height: 45px; cursor: pointer; color: transparent; outline: none; padding: 0; border: none; background: transparent; }
.slick-prev::before, .slick-next::before { content: ''; width: 20px; height: 20px; border: 2px solid transparent; border-top-color: #fff; border-right-color: #fff; text-indent: -100px; position: absolute; top: 8px; display: block; }
.slick-prev::before { -ms-transform: rotate(-135deg); -webkit-transform: rotate(-135deg); transform: rotate(-135deg); left: 10px; }
.slick-next::before { -ms-transform: rotate(45deg); -webkit-transform: rotate(45deg); transform: rotate(45deg); right: 10px; }
.slick-prev { left: -45px; }
.slick-next { right: -45px; }


.page-id-4278 .page-content ul li { margin-bottom: 1.3em; }

.vbox-figlio { max-height: 90vh; }

.admin-bar #debris { top: 32px; }

@media screen and (max-width: 782px) {
	.admin-bar #debris { top: 46px; }
}


@media (max-width: 1260px) {
	#above-header .tagline { font-size: 14px; }
	#single-pool table { margin-top: 30px; }
	#header .button-group .one_sixth { width: calc(33% - 22.5px); }
}

@media (max-width: 980px) { 
	.mobile_only { display: block !important; }
	.desktop_only { display: none !important; }
	.mobile-hide { display: none; }
	.mobile_line { width: 100% !important; max-width: 100% !important; float: none; clear: both; /* display: block; */ /* overflow: hidden; */ }
	.mobile_half { width: calc( 50% - 7px) !important; }
		
	.flex { -ms-flex-direction: column; flex-direction: column; }
	.flex_justify { -ms-flex-direction: column; flex-direction: column; }
	.flex_center { -ms-flex-direction: column; flex-direction: column; }
	.footer-widgets { -ms-flex-direction: column; flex-direction: column; }
	.horizontal-menu { -ms-flex-direction: column; flex-direction: column; }
	
	.mobile_flex_row { -ms-flex-direction: row; flex-direction: row; }
	
	h1, .h1 { font-size: 28px; /* letter-spacing: -0.03em;  */ letter-spacing: 0.01em; }
	h2, .h2 { /* font-size: 28px;  */color: #3BC0F2; font-size: 24px; margin-bottom: 0.67em; }
	h3, .h3 { /* font-size: 14px; */ font-size: 18px; font-weight: 700; margin-bottom: 1em; }
	h4, .h4 { font-size: 16px; line-height: 1.16; font-weight: 700; margin-bottom: 0.66em; }
/* 	h5, .h5 { font-size: 10px; line-height: 1.1; margin-bottom: 0.88em; color: #2699FB; } */
	
	.box-shadow h2 { font-size: 24px; }
	a.btn.large { font-size: 18px; }
	
	.slide { height: 90vh; }
	.slide img { max-width: none; min-height: 100%; }
	.slide .slide-content { top: 50%; }
	
	html::before { height: 35px; }
	#above-header { width: 100%; height: 33px; }
	#above-header nav { width: 100%; }
	#above-header .horizontal-menu { flex-direction: row; -ms-flex-pack: center; justify-content: stretch; }
	#above-header .horizontal-menu li { flex: 1 1 auto; text-align: center; }
	#above-header .horizontal-menu a { padding: 10px 0 !important; font-size: 10px !important; }
	
	#below-header { padding: 30px 0; }
	label[for="navcheck"] { visibility: visible; opacity: 1; margin-left: 30px; }
	[id="navcheck"] ~ nav { width: 80%; overflow: hidden; position: absolute; background: #000; padding: 2em; border-radius: 0.4em; color: #fff; right: 9999rem; top: 90%; transition: opacity 0.15s linear, transform 0.15s linear, right 0s 0.15s; transform: translateY(0.6rem); z-index: 10; }
	.primary-menu li a { padding: 0.9em 0; }
	
	#skimmer { right: 0; margin: auto; }
	#skimmer .return-line { flex-wrap: wrap;  }
	#skimmer .banner.large { min-height: 500px; height: 50vh; }
	
	#filter-system { margin-top: 85px; align-items: flex-start; }
			
	.slide-content h1, .slide-content h2 { font-size: 28px; }
	.slide .line { height: 60vh; }
	
	#intro { text-align: center; }
	#intro .mobile_line:first-child { margin: 0; }
	
	#pool-locations { text-align: center; }
	#pool-locations .one_quarter { margin: 7px 0; }
		
	.control-valve .text { margin: 0; }
	.control-valve .icon-image { margin: 0 0 20px 0; }
	
	#expertise .two_thirds { width: auto !important; }
	#expertise p { margin: 0; }
	
	#testimonials h2 { font-size: 24px; }
	#testimonials-carousel { max-width: 80%; }
	.slick-prev { left: -25px; }
	.slick-next { right: -25px; }
	
	#news .flex_justify,
	#types-gallery { flex-direction: row; flex-wrap: wrap; }
	#news .mobile_line,
	#types-gallery .mobile_line { width: calc(50% - 15px) !important; }
	
	#single-pool .description { width: 90%; margin: 0 auto; }
		
	.chess { flex-direction: column; }
	.chess .white, .chess.row_reverse .white { margin: 50px auto; width: 90% !important; }
	.chess .black { min-height: 350px; }
	
	#header .button-group { margin-top: 0 !important; }
	#header .button-group .one_quarter { margin: 7px 0; }
/* 	.post-type-archive-portfolio .button-group a { margin-bottom: 10px; } */
	.grid .one_third { margin: 10px 0; }
	
	.sidebar-left .lead { margin: 0; }
	.sidebar-left .blockquote p { font-size: 20px; }
	p.lead { font-size: 1.2em; }
	.next-post { margin-bottom: 10px; }
	.previous-post { text-align: right; }
	.page-content .alignright { float: none; clear: both; display: block; margin: 1.5em 0; }
	
}

@media (max-width: 580px) {
	#news .flex_justify,
	#types-gallery { flex-direction: column; }
	#news .mobile_line,
	#types-gallery .mobile_line { width: 100% !important; }

	
}