/*
Theme Name: abrideal
Version: 1.0.0
Author: agence ohmyweb.
*/


@charset "UTF-8";
@import "variables.css";

body {color: var(--charter); font-family: 'Nunito Sans', sans-serif;}
a {text-decoration: none; color: var(--charter); transition: var(--transition)}
p a {text-decoration: underline}
a:hover {color: inherit}
a.btn-charter, span.btn-charter, .gform_next_button, .btn-primary {background-color: var(--orange); margin: 0; border-radius: 18px; border-color: transparent; display: inline-block; color: white; font-weight: 300; padding: .5rem 3rem; position: relative; transition: var(--transition); border: solid 1px var(--orange);}
@media (max-width: 767.98px) {
	a.btn-charter, span.btn-charter, .gform_next_button, .btn-primary {padding: .5rem 1rem;}
}

span.hwdf-item { cursor: pointer; }

.gform_next_button {border-color: transparent; border-width: 1px;}
.gform_previous_button {border-radius: 18px; border-width: 1px; display: inline-block; font-weight: 300; padding: .5rem 3rem; position: relative; transition: var(--transition)}
a.btn-charter:hover, span.btn-charter:hover, .btn-primary:hover {background-color: white; color: var(--orange); border: var(--orange);}
.gform_next_button:hover, .gform_previous_button, .btn-primary:focus, .btn-primary.active, .btn-primary.active:focus {background-color: white; color: var(--orange); border-color: var(--orange); box-shadow: none;}
body .gform_wrapper.gravity-theme .gform_page_footer {margin-top: 3rem;}

h1 {font-size: 2.1rem}
h2 {font-size: 1.6rem}
h3 {font-size: 1.4rem; font-weight: 800}
h1, h2 {font-weight: 900}
p {font-weight: 200}
.stretched-link {position: relative;}
header#header {position: relative; z-index: 4}
.topnav {background-color: var(--charter); position: relative; z-index: 2; display: flex; justify-content: flex-end; padding:.2rem 1.5rem;}
.topnav > ul {list-style: none; padding: 0; margin: 0;}
.topnav > ul > li {display: inline-block; position: relative; vertical-align: middle; padding: 0 .5rem}
.topnav > ul > li > span {cursor: default;}
.topnav > ul > li > ul {margin: 0; min-width: 40px; opacity: 0; visibility: hidden; padding: 0; list-style: none; position: absolute; top: 100%; left: 0; right: 0; text-align: center; border-radius: 0 0 .25rem .25rem; background-color: var(--charter);}
.topnav > ul > li:hover > ul {opacity: 1; visibility: visible;}
.topnav > ul > li:after {content: ""; height: 3px; width: 3px; border-bottom-left-radius: 100%; background: var(--orange); margin-left: 1rem; display: inline-block; vertical-align: middle;}
@media (min-width:640px) {
	.topnav > ul > li:last-child > a::before, .topnav > ul > li:last-child > span::before {content: ""; height: 12px; width: 30px; display: inline-block; vertical-align: baseline; background-image: url("assets/images/fr.svg"); background-repeat: no-repeat;}
}
.topnav > ul > li:last-child:after {content: none}
.topnav a, .topnav span {color: white; text-transform: uppercase; font-weight: 800; font-size: .7rem;}
@media (max-width:540px) {
	.topnav > ul {white-space: nowrap; overflow-x: scroll; overflow-y: hidden}
	.topnav ul > li:after {margin: 0 .25rem auto .5rem}
	.topnav a, .topnav span {font-size: .5rem}
	.topnav ul li {padding: 0}
}
.topnav a:hover, .topnav span:hover {color: var(--charterlight);}
@media (max-width:1199.98px) {
	.topnav {justify-content: center}
}
.navbar.main_nav {height: 100%; padding-top: 0; padding-bottom: 0;}
@media (min-width:1200px) {
	.navbar.main_nav {display: flex;}
	.heading {padding: 10px 20px; align-items: center; display: grid;}
	.burger {display: none}
}
.logo-container .logo {height: auto;}
@media (min-width: 1200px) and (max-width: 1399.98px) {
	.heading {grid-template-columns : 130px auto 285px;}
	.logo-container .logo {margin: auto; max-width: 160px; width: 100%;}
}
@media (min-width: 1400px) and (max-width: 1599.98px) {
	.heading {grid-template-columns : 180px auto 345px;}
	.logo-container .logo {margin: auto; max-width: 170px; width: 100%;}
}
@media (min-width:1600px) {
	.logo-container .logo {width: 180px;}
	.heading {grid-template-columns : 210px auto 410px;}
}
@media (max-width:1199.98px) {
	.heading {display: flex; align-items: center}
	.heading > div {display: flex}
	.logo-container .logo {width: 120px}
}
@media (max-width:540px) {
	.logo-container .logo {width: 100%}
}
.call-to-action {font-size: 0; text-align: right}
@media (min-width: 1200px) {
	body:not(.single-pool_enclosure) header .call-to-action {
		position: fixed;
		right: 20px;
		transition: all ease-in .3s;
	}

	body.fixed header .call-to-action .btn-cta {
		padding: 1.5rem 0 0;
		height: 70px;
	}

	body.fixed header .call-to-action .btn-cta::before {
		height: 15px;
		width: 15px;
		background-size: 15px;
	}
}
@media (max-width:1199.98px) {
	.call-to-action {margin-left: auto}
}
.inline.call-to-action {text-align: center}
.btn-cta {display: inline-block; padding: 3rem 0 0; height: 95px; width: 115px; text-align: center; color: white; vertical-align: top; font-size: .8rem; position: relative; line-height: normal}
.inline.call-to-action .btn-cta {height: auto; padding: .5rem 4rem .5rem 5rem; line-height: 1rem; width: auto; text-align: left; border-radius: 0 30px 30px 0; transition: all ease-in .3s;}
@media (min-width: 768px) and (max-width: 991.98px) {
	.inline.call-to-action .btn-cta {margin: 0 1rem;}
}
@media (min-width: 992px) {
	.inline.call-to-action .btn-cta {margin: 0 2rem;}
}
@media (max-width: 767.98px) {
	.inline.call-to-action .btn-cta {
		margin: .25rem auto;
		display: block;
		width: 250px;
	}
}
.cta-col .inline.call-to-action .btn-cta {display: block; margin: 1rem auto; max-width: 250px; left: .75rem}
.cta-col .inline.call-to-action .btn-cta {font-size: .8rem; padding-top: .7rem; padding-bottom: .7rem}
.btn-cta:before {content: ""; display: block; position: absolute; transform: translateX(-50%); left: 50%; top: .5rem; height: 30px; width: 30px; transition: var(--transition); background-position: 50%; background-size: 20px; background-repeat: no-repeat}
.inline.call-to-action .btn-cta:before {top: 0;transform: none;left: -1.5rem; width: 4.5rem; bottom: 0;height: auto; border-radius: 30px 0 0 30px;transition: var(--transition)}
.inline.call-to-action .btn-cta:hover::before {background-position: 35px;}
.inline.call-to-action .btn-cta.call-back:before {background-color: #6299a8}
.inline.call-to-action .btn-cta.quotation:before {background-color: #333b41}
.inline.call-to-action .btn-cta.catalog:before {background-color: #c54b36}
.btn-cta:hover {color: white}
.btn-cta:hover:before {transform:translateX(-50%) rotate(15deg)}
.btn-cta span {text-transform: uppercase; display: block; font-weight: 800}
.btn-cta.call-back {background-color: var(--charterlight);}
.btn-cta.call-back:hover {background-color: #6299a8;}
.btn-cta.call-back:before {background-image: url("assets/images/pic-call.svg")}
.btn-cta.quotation {background-color: var(--charter)}
.btn-cta.quotation:hover {background-color: #333b41;}
.btn-cta.quotation:before {background-image: url("assets/images/pic-quotation.svg")}
.btn-cta.catalog {background-color: var(--orange)}
.btn-cta.catalog:hover {background-color: #c54b36;}
.btn-cta.catalog:before {background-image: url("assets/images/pic-catalogue.svg"); background-size: 25px}
body.home aside.cta-container {padding: 4rem 0 0;}
aside.cta-container {background-color: white;}
@media (min-width: 768px) {
	body.home aside.cta-container {padding-bottom: 1rem; transition: all ease-in .3s; z-index: 2;}
}
@media (max-width: 767.98px) {
	body.home aside.cta-container {padding: 2rem 0 0;}
}
body:not(.home) aside.cta-container {padding: 2rem 0;}
@media (min-width:1600px) {
	.btn-cta {width: 135px}
}
@media (max-width:1399.98px) {
	.btn-cta {width: 95px; height: 85px; font-size: .7rem; padding-top: 2.5rem; padding-bottom: 0;}
}

@media (max-width:575.98px) {
	.heading > div.logo-container {}
	.heading > div.logo-container .logo {height: 55px; width: auto}
	.heading .btn-cta {width: 65px; height: 65px; font-size: 0;}
	.heading .btn-cta::before {top: .7rem}
	.heading .btn-cta:after {font-size: .45rem; text-transform: uppercase; display: block; margin: .5rem auto 0}
	.heading .btn-cta.call-back:after {content: "Rappel";}
	.heading .btn-cta.quotation:after {content: "Devis";}
	.heading .btn-cta.catalog:after {content: "Catalogue";}
}

/**Naviguation**/
@media (min-width:1200px) {
	.main_nav > button {display: none;}
	.main_nav > ul {margin: 0; padding: 0; height: 100%; display: flex; list-style: none; justify-content: center; width: 100%; letter-spacing: var(--letterspace)}
	.main_nav > ul > li {text-align: center; position: relative; font-size: 1rem}
	.main_nav > ul > li::after {opacity: 0;content: ""; position: absolute; bottom: .75rem; transform: translateX(-50%); left: 50%; height: 10px; width: 50px; background: url("assets/images/wave.svg"); background-size: contain; background-position: 50%; background-repeat: no-repeat; display: block; transition: var(--transition);}
	.main_nav > ul > li.active::after, .main_nav > ul > li:hover::after {opacity: 1;}
	.main_nav > ul#menu-header > li > a:after {content: ""; height: 20%; background: var(--charter); width: 1px; position: absolute; transform: translateY(-50%); top: 50%; right: 0}
	.main_nav > ul#menu-header > li:last-child > a:after {display: none}
	.single-pool_enclosure .main_nav > ul > li a:after {background: white}
	.main_nav > ul > li:last-child a:after {content: none}
	.main_nav > ul > li > a {display: flex; height: 100%; justify-content: center; flex-direction: column; font-weight: 200;}
	.main_nav > ul > li > a > span {display: block; text-transform: uppercase; font-weight: 800; font-size: .9rem}
	.main_nav > ul > li > a + ul {position: absolute; top: 90%; transform: translateX(-50%); left: 50%; padding: .5rem 1.5rem; background-color: white; list-style: none; transition: all ease-in .3s; opacity: 0; visibility: hidden;}
	.main_nav > ul#menu-header > li:hover > a + ul {opacity: 1; visibility: visible; top: 100%;}
	.main_nav > ul > li > a + ul > li > a {display: block; padding: .5rem; white-space: nowrap; border-top: solid 1px #e7f2fb}
	.main_nav > ul > li > a + ul > li:hover > a {color: var(--charterlight);}
	.main_nav > ul > li > a + ul > li:first-child > a {border-top: none}
	.main_nav > ul > li > a > span {display: block;text-transform: uppercase;font-weight: 800;font-size: .9rem;}
	.main_nav > ul > li > a > span {font-size: .8rem;}
	.main_nav > ul > li > a + ul > li.menu-item-has-children {position: relative;}
	.main_nav > ul > li > a + ul > li.menu-item-has-children::after {content: "\f054"; font-family: "Font Awesome 5 Free"; opacity: .65; font-weight: 600; display: block; position: absolute; right: 0; font-size: 12px; transform: translateY(-50%); top: 50%; transition: all ease-in .3s;}
	.main_nav > ul > li > a + ul > li.menu-item-has-children:hover::after {color:var(--charterlight); right: -.25rem; opacity: 1;}
	.main_nav > ul > li > a + ul > li > a + ul {position: absolute; top: 0; left: 100%; padding: .5rem 1.5rem; background-color: white; list-style: none; transition: all ease-in .3s; opacity: 0; visibility: hidden;}
	.main_nav > ul > li > a + ul > li:hover > a + ul {opacity: 1; visibility: visible;}
	.main_nav > ul > li > a + ul > li > a + ul > li > a {white-space: nowrap;display: block; padding: .5rem; border-top: solid 1px #e7f2fb}
	.main_nav > ul > li > a + ul > li > a + ul > li:first-child > a {border-top: none;}

	.subnav-collapse {display: none}
}
@media (min-width:1760px) {
	.main_nav > ul > li > a {padding: 0 3.5rem;}
}
@media (min-width:1600px) and (max-width:1759.98px) {
	.main_nav > ul > li > a {padding: 0 2.5rem;}
}
@media (min-width:1200px) and (max-width:1399.98px) {
	.main_nav > ul > li {font-size: .8rem;}
	.main_nav > ul > li > a > span {font-size: .75rem;}
	.main_nav > ul > li > a {padding: 0 1.5rem}
	.main_nav > ul#menu-header > li > a::after {height: 30%;}
	.main_nav > ul#menu-header > li::after {bottom: .05rem;}
}
@media (min-width:1400px) and (max-width:1599.98px) {
	.main_nav > ul > li {font-size: .9rem}
	.main_nav > ul > li > a {padding: 0 2rem}
	.main_nav > ul > li > a > span {font-size: .8rem;}
	.main_nav > ul#menu-header > li > a:after {height: 25%;}
}


@media (max-width:1199.98px) {
	.main_nav > button {position: absolute; right: 1rem; top: 1rem; background-color: transparent; color: var(--charter); font-size: 1.5rem; border: none; transition: all ease-in .15s;}
	.main_nav > button:hover {transform: rotate(45deg);}
	.main_nav > button + div {padding: 1.5rem 1.5rem 0; margin-bottom: 2rem; background-color: white; width: 100%; justify-content: center}
	.main_nav > button + div img {width: 100%; max-width: 120px; height: auto;}
	.offcanvas-start-menu {
		top: 0;
		left: 0;
		width: calc(100% - 65px);
		transform: translateX(-100%);
	}
	.offcanvas-menu {
		position: fixed;
		bottom: 0;
		z-index: 1050;
		display: flex;
		justify-content: flex-start;
		max-width: 100%;
		visibility: hidden;
		background-clip: padding-box;
		outline: 0;
		transition: transform .3s ease-in-out;
		background-color: white;
		box-shadow: 0 0 85px rgba(0,0,0,.85)
	}
	.offcanvas-menu.show {
		transform: none;
	}
	.main_nav ul#menu-header {padding:2rem 2rem 5rem 2rem; width: 100%; height: calc(100% - 130px); list-style: none; overflow-y: scroll; box-shadow: 0 0 20px rgba(0,0,0,.4) inset;}
	.main_nav > ul > li {position: relative; border-bottom: solid 2px #eee; padding: 1rem 0}
	.main_nav > ul > li:first-child {padding-top: 0;}
	.main_nav ul li a {display: block; position: relative; font-size: .8rem}
	.main_nav > ul#menu-header > li > a {text-transform: uppercase; font-weight: bold; display: block;}
	.main_nav ul li button {position: absolute; right: 0; top: 0; width: 50px; height: 50px}
	.main_nav ul.sub-menu {list-style: none; padding: .5rem;}

}

/**Burger**/
.burger {margin-right: 5px; width: 55px; justify-content: center}
@media (max-width:575.98px) {
	.burger {width: 35px;}
}
.burger button {background-color: transparent; border: none; font-size: 2rem; color: var(--charter);}
@media (max-width: 575.98px) {
	.burger button {
		font-size: 1.5rem;
	}
}

/**Slider HP**/
.slide-content {position: absolute; transform: translateY(-50%); top: 50%; left: 5%; right: 5%; text-align: center; color: white;}
.slide-content p:first-of-type > strong {font-size:1.8rem; margin: 0; padding: 0;}
.slide-content p {font-size:1.3rem; font-weight: 200; line-height: normal; margin: 0; position: relative; padding: 0;}
.slide-content p + a {margin-top: 1.5rem;}

.product-list-heading div div + img {display: none;position: 	relative; transform: translateX(-50%); left: 50%; max-width: 700px; top: 5%}
@media (min-width: 1500px) {
	.product-list-heading div div + img {display: block;}
}
@media (max-width: 767.98px) {
	.product-list-heading div div + img {display: none;}
}
.slide-content p strong {display:block; margin-bottom:2rem; font-weight: 900; font-size: 2rem;}
.home .hero {height: 400px; position: relative;}
.home .hero > img {object-fit: cover; height: 100%; width: 100%;}
.home .hero::after {content: ""; display: block; position: absolute; top: 0; bottom: 0; left: 0; right: 0; background: rgb(0,0,0);
	background: linear-gradient(180deg, rgba(0,0,0,0.5732493681066176) 0%, rgba(0,0,0,0) 100%);z-index: 1;}
.review_widget {position: relative; z-index: 2;}
.hero .review_widget {position: absolute; z-index: 9; background-color: #044865; padding: .5rem; border-radius: 20px;}
@media (min-width: 768px) {
	.hero .review_widget {bottom: 1px; left: 1px;}
}
@media (max-width: 767.98px) {
	.hero .review_widget {bottom: 10px; transform: translateX(-50%); left: 50%;}
}
.single-pool_enclosure .mainSlider {height: 600px;}
.single-pool_enclosure .mainSlider:before, .single-pool_enclosure .mainSlider:after {content: ""; display: block; position: absolute; left: 0; right: 0; background: red; height: 150px; z-index: 2}
.single-pool_enclosure .mainSlider:before {top: 0; bottom: auto; background: rgb(0,0,0);background: linear-gradient(180deg, rgba(0,0,0,0.49761911600577735) 0%, rgba(0,0,0,0) 100%);}
.single-pool_enclosure .mainSlider:after {bottom: 0; top: auto;  background: rgb(0,0,0);background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.5032213569021359) 100%);}
.slide-content {z-index: 3;}
@media (max-width: 767.98px) {
	.slide-content p strong {font-size: 1.5rem}
	.slide-content p {font-size:1rem;}
}
@media (max-width: 575.98px) {
	.single-pool_enclosure .mainSlider {height: 65Vh; min-height: 350px}
}
@media (min-width:768px) and (max-width: 991.98px) {
	.mainSlider {height: 690px}
}
.mainSlider img {width: 100%; height: 100%; object-fit: cover}
.home .swiper-buttons {position: absolute;  z-index: 9;bottom: 1px;}
@media (max-width:767.98px) {
	.home .swiper-buttons {right: 1px;}
}
@media (min-width:768px) {
	.home .swiper-buttons {transform: translateX(-50%); left: 50%;}
}
.swiper-buttons {font-size: 0;}
.swiper-buttons > div {display: inline-block; vertical-align: middle; margin: 1px 1px 0; background-color: white; font-size: .9rem; padding: .05rem; height: 45px; width: 45px; color: var(--orange); line-height: 45px; text-align: center; transition: var(--transition)}
.single-pool_enclosure .swiper-buttons > div {margin: 0 1px 1px 0}
.swiper-buttons > div:hover {background-color: var(--orange); color: white}
.swiper-pagination-bullet-active {background-color: var(--orange)}

.home-banner {
	background-color: var(--charter);
	color: white;
	padding: 1rem;
	display: flex;
	align-items: center;
	justify-content: center;
}
.home-banner a {
	text-decoration: none;
	color: white;
}
@media (max-width: 767.98px) {
	.home-banner p {
		flex-wrap: wrap;
		flex-direction: column;
		display: flex;
		text-align: center;
	}
}
.home-banner p {
	display: flex;
	align-items: center;
	margin: 0;
}
.home-banner p span {
	justify-content: center;
	display: inline-flex;
	padding: .5rem 1.5rem;
	line-height: normal;
	text-align: center;
	background-color: var(--charterlight);
	border-radius: 20px;
	color: white;
	text-transform: uppercase;
	font-size: .8rem;
	font-weight: bold;
}
@media (min-width: 768px) {
	.home-banner p span {
		margin-left: 1rem;
	}
	.home-banner strong {
		text-align: right;
		margin-right: 1.5rem;
	}
}
@media (max-width: 767.98px) {
	.home-banner p span {
		margin-top: 1rem;
	}
}
/**Intro SEO**/
body.home .intro {max-width: none;}
.intro {padding: 4rem; text-align: center; margin: auto; max-width: 900px;}
.intro h1 {font-size: 2rem; margin-bottom: 2rem}
.intro p {font-size: 1.1rem; line-height: normal}
@media (max-width: 767.98px) {
	.intro {padding: 2rem}
	.intro h1 {font-size: 1.5rem;}
	.intro p {font-size: .9rem;}
}
.intro p a {color: var(--orange); font-weight: 600}
.intro p:only-child, .intro p:last-of-type {margin-bottom: 0}

/**Section**/
section {padding: 3rem 1.5rem}
@media (max-width: 991.98px) {
	section {padding: 2.5rem 1rem}
	section.g-0-mobile {padding-right: 0; padding-left: 0}
}
@media (max-width: 767.98px) {
	section {padding: 2.5rem 0}
}
@media (min-width: 768px) and (max-width: 991.98px) {
	section {padding: 2.5rem 1rem}
}
@media (min-width: 992px) {
	section#catalog-request {padding: 2.5rem 0}
}
section.grey, aside.grey {background-color: var(--grey)}
section.grey.archive {padding: 1.5rem}
.white {background-color: white}

/**Bloc categ HP**/
.bloc_catgeory_card {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.bloc_catgeory_card > div {
	flex: 0 0 18%;
	max-width: 18%;
	margin: 1%;
	height: auto;
}
@media (max-width: 767.98px) {
	.bloc_catgeory_card > div {
		flex: 0 0 48%;
		max-width: 48%;
		margin: 1%;
	}
	.bloc_catgeory_card {
		margin: 0 -1.5rem;
	}
}
@media (min-width: 768px) and (max-width: 1199.98px) {
	.bloc_catgeory_card > div {
		flex: 0 0 31%;
		max-width: 31%;
		margin: 1%;
	}
	.bloc_catgeory_card {
		margin: 0 -1.5rem;
	}
}
.bloc_catgeory_card > div > div {
	height: 100%;
}
.bloc_catgeory_card > div .category-block-links {
	height: 100%;
	margin: 0;
}
.bloc_catgeory_card > div .category-block-links h2 {
	font-size: 1.2rem;
}
.category-block > div {text-align: center}
.category-block + .gallery {
	margin-top: 0;
}
.archive.category-block > div {max-width: none;}
.gammeList {margin: auto}
.gammeList .category-block-links {margin-right: 1.1rem; margin-left: 1.1rem}
.category-block-links {display: block; background-color: white; border-radius: 40px; margin: 1.25rem .5rem; transition: all ease-in .3s; max-width: 450px; height: 90%}
@media (max-width: 767.98px) {
	.category-block-links {margin: .5rem auto; border-radius: 20px}
	.gammeList .category-block-links {margin-right: .5rem; margin-left: .5rem}
	.gammeList .category-block-links h2 {white-space: nowrap; text-overflow: ellipsis; overflow: hidden}
}
.category-block-links:hover {box-shadow: var(--boxshadowB)}
.category-block-links img {width: 100%; height: auto;}
.category-block-links h2 {margin: 0; padding: 0 1rem;}
.category-block-links span:first-of-type {font-weight: 200;}
.category-block-links h2 {display: block;}
.category-block-links .card-pool_category_title {display: block; font-size: 1.25rem; line-height: normal; font-weight: 900;}

@media (max-width: 767.98px) {
	.category-block-links .card-pool_category_title {
		font-size: .85rem;
		line-height: 1;
		padding: 0 .5rem .25rem;
	}
}

.category-block-links .card-pool_category_subtitle {display: block;}
.category-block-links span + span {color: var(--orange);padding-bottom: 2rem; font-size: .85rem; font-weight: bold;}
.category-block-links span:only-of-type {padding-bottom: 2rem;}
@media (max-width: 767.98px) {
	.category-block-links h2, .bloc_catgeory_card > div .category-block-links h2 {font-size: .85rem; line-height:1.1}
	.category-block-links img {width: 90%;}
	.category-block-links span + span, .category-block-links span:first-of-type {font-size: .7rem;}
}


/**Breadcrumb **/
ol.breadcrumb {padding: 0; margin: 0; font-size: .9rem; justify-content: center;}
body.single-pool_enclosure ol.breadcrumb {justify-content: left}
.breadcrumb-container {background-color: var(--grey); padding: .5rem 1rem}
.breadcrumb-item.active {font-weight: 700; color: var(--charter)}

/** Formulaires **/
@media (max-width: 767.98px) {
	.form-request .gform_wrapper.gravity-theme .gf_step {
		padding: .25rem;
		margin: 0;
		width: 33%;
	}
	.form-request .gform_wrapper.gravity-theme .gf_step_number {
		line-height: 35px;
	}
	.form-request .gform_wrapper.gravity-theme .gf_step_number, .form-request .gform_wrapper.gravity-theme .gf_step_label {
		display: block;
		text-align: center;
		margin: auto;
	}
	.form-request .gform_wrapper.gravity-theme .gf_step_label {padding: .5rem 0 .5rem 0;}
}
section#catalog-request {background-color: #eee;}
.liflet-wrapper {display: flex; flex-wrap: wrap;}
@media (max-width: 991.98px) {
	.liflet-wrapper {justify-content: center;}
}
.container-liflet {margin: auto; padding: 0; max-width: 1500px;}
.page-template-contact .form-wrapper {padding: 0 3rem 3rem 3rem; box-shadow: 0 0 30px rgba(0,0,0,.2);}
.page-template-contact .form-wrapper .form-request {background-color: white; border-radius: 2.5rem; padding: 5rem;}
@media (max-width: 767.98px) {
	.page-template-contact .form-wrapper .form-request {border-radius: 1.5rem; padding: 1.5rem;}
}
.page-template-contact .form-wrapper .head_title-over_top {color: white;position: relative;padding: 0 0 3rem 0; display: flex; align-items: center;}
.page-template-contact .form-wrapper .head_title-over_top h1 {line-height: 2.3rem; text-transform: uppercase; letter-spacing: .05rem; margin: 0;}
.page-template-contact .form-wrapper .head_title-over_top h1 span {display: block; font-weight: 100; text-transform: none}
@media (max-width: 767.98px) {
	.page-template-contact .form-wrapper .head_title-over_top {padding-bottom: 1rem;}
	.page-template-contact .form-wrapper .head_title-over_top h1 {font-size: 1.5rem; line-height: 1;}
}
@media (min-width: 992px) {
	.page-template-contact .form-wrapper .head_title-over_top {left: -3rem;}
}
@media (max-width: 991.98px) {
	.page-template-contact .form-wrapper .head_title-over_top {left: -1rem;}
}
.page-template-contact .form-wrapper .head_title-over_top::before {width: 100px; height: 100px; content: ""; display: block; margin-right: 1rem; background-size: 35px; background-repeat: no-repeat; background-position: center;}

/* Par defaut */
.page-template-contact .form-wrapper {background-color: #79c1d4;}
.page-template-contact .form-wrapper .head_title-over_top::before {background-color:#6299a8;background-image: url("assets/images/pic-contact.svg");}


/* Catalogue */
.page-template-contact.page-id-2370 .form-wrapper {background-color: var(--orange);}
.page-template-contact.page-id-2370 .form-wrapper .head_title-over_top::before {background-color:#c54b36;background-image: url("assets/images/pic-catalogue.svg");}
/* Devis */
.page-template-contact.page-id-2365 .form-wrapper {background-color: #515d67;}
.page-template-contact.page-id-2365 .form-wrapper .head_title-over_top::before {background-color:#333b41;background-image: url("assets/images/pic-quotation.svg");}
/* Rappel */
.page-template-contact.page-id-2358 .form-wrapper {background-color: #79c1d4;}
.page-template-contact.page-id-2358 .form-wrapper .head_title-over_top::before {background-color:#6299a8;background-image: url("assets/images/pic-call.svg");}
/* SAV */
.page-template-contact.page-id-5528 .form-wrapper {background-color: #79c1d4;}
.page-template-contact.page-id-5528 .form-wrapper .head_title-over_top::before {background-color:#6299a8;background-image: url("assets/images/pic-sav.svg");}

article.main-contact h1 {text-align: center; margin-bottom: 2rem;}
@media (max-width: 767.98px) {
	article.main-contact h1 {
		font-size: 1.3rem;
		margin-bottom: 1rem;
	}
}
article.main-contact h1 + div {display: flex; flex-wrap: wrap; justify-content: center;}
article.main-contact h1 + div > div {text-align: center;}
@media (max-width: 575.98px) {
	article.main-contact h1 + div > div {flex: 0 0 100%;}
}
@media (min-width: 576px) and (max-width: 1199.98px) {
	article.main-contact h1 + div > div {flex: 0 0 50%;}
}
@media (min-width: 1200px) {
	article.main-contact h1 + div > div {flex: 0 0 33%;}
}
article.main-contact h1 + div > div > div {box-shadow: var(--boxshadow);border-radius: 1.5rem; padding: 2rem; border: solid 1px #e0e0e0; margin: 1rem;}
@media (max-width: 767.98px) {
	article.main-contact h1 + div > div > div {margin: .5rem;}
}
article.main-contact h1 + div > div > div strong {display: block; text-transform: uppercase; font-weight: 800; margin-bottom: 1rem; line-height: 1;}

body .gform_wrapper.gravity-theme .gf_page_steps {border-bottom: none; display: flex; justify-content: space-around;}
@media (max-width: 767.98px) {
	body .gform_wrapper.gravity-theme .gf_page_steps {margin: 0 -1.5rem;}
}
.points_forts_request > div {margin: auto; max-width: 350px; padding: 0 1rem;}
@media (min-width: 768px) {
	.points_forts_request > div {position: sticky; top: 1rem;}
}
.points_forts_request h2 {text-align: center; margin-top: 1.5rem;}
.points_forts_request h2::after {content: ""; height: 10px; width: 50px; margin: 1rem auto 2rem auto; background: url("assets/images/wave.svg"); background-size: contain; background-position: 50%; background-repeat: no-repeat; display: block;}
.points_forts_request ul {
	list-style: none;
	margin: 0;
	padding: 1.5rem;
	background-color: white;
	border-radius: 1.5rem;
}
.points_forts_request ul li {display: flex; flex-wrap: wrap; line-height: normal; margin-bottom: 1.5rem; padding-bottom: 1.5rem; border-bottom: solid 1px #eee;}
.points_forts_request ul li:last-child {border-bottom: none; margin-bottom: 0; padding-bottom: 0;}
.points_forts_request ul li img {
	width: 50px;
	height: auto;
	margin: 0 1rem .5rem 0;
}
.points_forts_request ul li:nth-child(2) img,.points_forts_request ul li:nth-child(3) img,.points_forts_request ul li:nth-child(5) img {filter: invert(1); width: 40px}
.points_forts_request ul li span:first-child {flex: 0 0 20%;}
.points_forts_request ul li span:nth-child(2) {font-size: 14px}
.points_forts_request ul li span strong {display: block; text-transform: uppercase;}
@media (max-width: 991.98px) {
	.points_forts_request {
		order: 2;
	}
	.page-template-contact .form-wrapper {padding:0 1rem 1rem 1rem;}
}

/**Product list **/
.productList {max-width: 1220px; margin: auto;}
p.legal {padding: 1rem 0 0 2rem; margin: 0; text-align: center}
.product-list-pagination {max-width: 600px; margin:1rem auto 0; text-align: center}
@media (min-width: 576px) {
	.product-list-pagination {padding: 2.5rem 0 0;}
}
.archive .product-list-pagination {padding-top: 1.5rem}
.product-list-pagination > div {display: inline-block; vertical-align: middle}
.product-list-pagination > div.swiper-button-lock {display: none;}
.swiper-pagination.productList-pagination {position: inherit; width: auto}
.product-list-pagination > div.button-prev, .product-list-pagination > div.button-next {position: relative; height: 16px; width: 40px}
@media (max-width: 575.98px) {
	.product-list-pagination > div.button-prev, .product-list-pagination > div.button-next {display: none;}
}
.product-list-pagination > div.button-prev {margin-right: 1rem}
.product-list-pagination > div.button-next {margin-left: 1rem}
.product-list-pagination > div.button-prev span, .product-list-pagination > div.button-next span {background-color: var(--charter); height: 1px; width: 35px; position: absolute; display: block; transform: translateY(-50%); top: 50%;}
.product-list-pagination > div.button-next span {right:0}
.product-list-pagination > div.button-prev span {left: 0}
.product-list-pagination > div.button-prev:before, .product-list-pagination > div.button-prev:after {height: 1px; background-color: var(--charter); content: ""; display: block; left: 0; width: 7px; position: absolute}
.product-list-pagination > div.button-prev:before {transform: rotate(35deg); bottom: 5px;}
.product-list-pagination > div.button-prev:after {transform: rotate(-35deg); top: 5px;}
.product-list-pagination > div.button-prev:hover span, .product-list-pagination > div.button-prev:hover:before, .product-list-pagination > div.button-prev:hover:after {background-color: var(--orange)}

.product-list-pagination > div.button-next:before, .product-list-pagination > div.button-next:after {height: 1px; background-color: var(--charter); content: ""; display: block; right: 0; width: 7px; position: absolute}
.product-list-pagination > div.button-next:before {transform: rotate(35deg); top: 5px;}
.product-list-pagination > div.button-next:after {transform: rotate(-35deg); bottom: 5px;}
.product-list-pagination > div.button-next:hover span, .product-list-pagination > div.button-next:hover:before, .product-list-pagination > div.button-next:hover:after {background-color: var(--orange)}

.eco-friendy-container {
	display: flex;
	max-width: 1200px;
	margin: auto;
	flex-wrap: wrap;
	justify-content: space-evenly;
}
.eco-friendy .heading-bloc > {margin-bottom: 2.5rem;}
.eco-friendy-container > div {
	flex: 0 0 30%;
	max-width: 30%;
	text-align: center;
}
.eco-friendy-container > div > img {
	display: block;
	width: 100%;
	max-width: 70px;
	height: auto;
	margin: auto;
}
@media (min-width: 992px) {
	.eco-friendy-container > div > img {
		max-width: 100px;
	}
}
.eco-friendy-container > div > strong {
	font-size: 1rem;
	line-height: 1;
	display: block;
	margin: 1rem 0 .5rem;
}
.eco-friendy-container > div > p {font-size: .75rem;}
@media (min-width: 992px) {
	.eco-friendy-container > div > strong {font-size: 1.25rem;}
	.eco-friendy-container > div > p {font-size: .9rem;}
}
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {width: 15px; height: 15px; margin-right: .6rem; margin-left: .6rem}
.heading-bloc {text-align: center; margin: auto; max-width: 1321px; padding: 0 1rem 1rem}
.heading-bloc h2, .heading-bloc h3 {font-size: 2.1rem; margin-bottom: 1rem}
.heading-bloc .heading-bloc-title {font-size: 1rem; font-weight: 800;}

@media (min-width: 992px) {
	.heading-bloc .heading-bloc-title {font-size: 1.5rem}
}


.heading-bloc p {font-size: 1.2rem; line-height: 1.5rem}
article.product {margin: 0 1rem}
article.product_type {height: 100%; padding-bottom: 2.5rem;}
article.product_type > div {height: 100%;}
article.product_type a img {width: 100%; height: auto; max-height: 100%;}
article.product_type .card-pool_category_title {font-size: 1.5rem;}
.product-list article.product {margin: 1rem; position: relative;}
article.product > div {display: block; box-shadow: var(--boxshadow); border-radius: 0 0 1.5rem 1.5rem; border: solid 1px #e0e0e0;}
article.product > div * {transition: var(--transition)}
article.product > div:hover {border-color:#fac3b9}
article.product .cardContent {text-align: center; padding: 2.5rem}
article.product > div:hover img {opacity: .75}
article.product h3, article.product .card-product_title {font-weight: 800; font-size: 1.5rem; position: relative;}
article.product h3 span, article.product .card-product_title span {display: block; font-weight: 100; font-size: 1.1rem}
article.product h3 + strong, article.product .card-product_title + strong {display: block; color: var(--orange)}
@media (max-width: 767.98px) {
	.heading-bloc h2, .heading-bloc h3 {font-size: 1.3rem}
	.heading-bloc p {font-size: .8rem; line-height: normal}
	article.product {margin: 0 .5rem}
	.product-list article.product {margin: .5rem}
	article.product .cardContent {padding: 1.5rem}
	article.product h3, article.product .card-product_title {font-size: 1.1rem}
	article.product h3 span, article.product .card-product_title span, article.product h3 + strong, article.product .card-product_title + strong {font-size: .8rem; line-height: normal}
}

.product-list-heading {position: relative; overflow: hidden}
.product-list-heading > img {object-fit: cover; height: 100%; width: 100%;}
.product-list-heading > img ~ div:first-of-type {background-color: var(--charter);}
@media (min-width:1200px) {
	.product-list-heading > img ~ div:first-of-type::before {content: ""; background: var(--charter);position: absolute;border-radius: 60%}
	.product-list-heading aside {transform: translate(-50%,-50%); top: 50%;}
}


.product-list-heading aside {position: absolute; background-color: transparent;}
@media (min-width: 1480px) {
	.product-list-heading aside {left: 50%;}
}
@media (min-width:1200px) and (max-width: 1479.98px) {
	body.page-template-category-pool_enclosure .product-list-heading aside {left: 55%;}
}
@media (min-width:1200px) and (max-width: 1479.98px) {
	body.page-template-all-pool_enclosure .product-list-heading aside {left: 45%;}
}
@media (max-width: 1199.98px) {
	.product-list-heading aside {transform: translateX(-50%); top: 5rem; left: 50%; width: 100%;}
	.product-list-heading aside .inline.call-to-action a {width: auto;}
}
@media (max-width: 767.98px) {
	.product-list-heading aside {max-width: 400px;}
	.product-list-heading aside .inline.call-to-action {justify-content: space-around;}
	.product-list-heading aside .inline.call-to-action .btn-cta {border-radius: 1rem; padding: .5rem 1.5rem; text-align: center;}
	.product-list-heading aside .inline.call-to-action .btn-cta::before {display: none;}
}
.product-list-heading aside .inline.call-to-action {display: flex;}
@media (min-width: 768px) and (max-width: 1199.98px) {
	.product-list-heading aside .inline.call-to-action {justify-content: center;}
	.product-list-heading aside .inline.call-to-action .btn-cta:not(:last-of-type) {margin-right: 3rem}
}
@media (min-width:1200px) {
	.product-list-heading aside .inline.call-to-action {flex-direction: column;}
}

.product-list-heading aside .inline.call-to-action a {margin: .5rem 0;}
@media (min-width:1200px) {
	.product-list-heading > img ~ div:first-of-type::before {width: 400px; height: 1100px; transform: translateY(-50%); top: 50%; left: -5rem; }
	.page-template-category-pool_enclosure .product-list-heading img ~ div:first-of-type::before {right: auto; left: 100%; transform: translateY(-50%) rotate(180deg); background: transparent; box-shadow: 150px -50px 0 0 var(--charter); width: 250px}
	.product-list-heading > img {max-width: 1150px}
	.page-template-category-pool_enclosure .product-list-heading > img {float: right}
	.product-list-heading > img ~ div:first-of-type {position: absolute;right: 0; top: 0; bottom: 0; width: 45%; min-width: 600px;}
	.page-template-category-pool_enclosure .product-list-heading img ~ div:first-of-type {left: 0; right: auto;}
	.product-list-heading > img ~ div:first-of-type div {position: absolute; transform: translate(-50%,-50%); left: 50%; top: 50%; width: 90%; max-width: 650px;}
	.product-list-heading > img ~ div:first-of-type h1 {font-size: 2.5rem;}
	.product-list-heading > img ~ div:first-of-type .h2 {font-size: 1.8rem;}
	.product-list-heading > img ~ div:first-of-type p {font-size: 1.1rem}
	.product-list-heading > img ~ div:first-of-type h1, .product-list-heading img ~ div:first-of-type .h2 {margin-bottom: 2.5rem;}
	.product-list-heading {height: 75Vh; min-height: 800px}
}
@media (min-width:1199.98px) {
	.page-template-category-pool_enclosure .product-list-heading img ~ div:first-of-type div {transform: translate(-50%,-50%); top: 50%;}
}
@media (max-width:1199.98px) {
	.product-list-heading > img ~ div:first-of-type div {position: relative;}
	.product-list-heading > img ~ div:first-of-type {position: relative; padding: 1.5rem}
	.product-list-heading > img ~ div:first-of-type:before {width: 1500px; height: 400px; transform: translateX(-50%); left: 50%}
}
@media (max-width: 575.98px) {
	.product-list-heading > img {height: 300px}
	.product-list-heading > img ~ div:first-of-type div h1 {font-size: 1.4rem; margin-bottom: 1.5rem;}
	.product-list-heading > img ~ div:first-of-type div .h2 {font-size: 1.2rem; margin-bottom: 1.5rem;}
	.product-list-heading > img ~ div:first-of-type div p {font-size: .9rem; line-height:normal;}
}
@media (min-width: 576px) and (max-width: 767.98px) {
	.product-list-heading > img {height: 400px}
	.product-list-heading > img ~ div:first-of-type div h1 {font-size: 1.7rem; margin-bottom: 1.8rem;}
	.product-list-heading > img ~ div:first-of-type div .h2 {font-size: 1.4rem; margin-bottom: 1.8rem;}
	.product-list-heading > img ~ div:first-of-type div p {font-size: 1rem; line-height:normal;}
}
@media (min-width: 768px) and (max-width: 1199.98px) {
	.product-list-heading > img {height: 500px}
	.product-list-heading > img ~ div:first-of-type div h1 {font-size: 2.1rem; margin-bottom: 1.8rem;}
	.product-list-heading > img ~ div:first-of-type div .h2 {font-size: 1.7rem; margin-bottom: 1.8rem;}
	.product-list-heading > img ~ div:first-of-type div p {font-size: 1.2rem; line-height:normal;}
}
.product-list-heading > img ~ div:first-of-type div {color: white; padding: 3rem;}
@media (max-width:1199.98px) {
	.product-list-heading > img ~ div:first-of-type div {color: white; padding: 2rem;}
}
@media (max-width: 991.98px) {
	.product-list-heading > img ~ div:first-of-type div {padding: 1rem;}
	.product-list-heading > img ~ div:first-of-type {padding: 1rem;}
}
.product-list-heading > img ~ div:first-of-type div a {color: var(--orange)}
.product-list-heading > img ~ div:first-of-type div h1 {}
.product-list-heading > img ~ div:first-of-type div .h2 {font-weight: 200}

.gallery img {width: 100%;}

/** Réalisations **/
.single-production h1 {text-align: center; text-transform: uppercase;}
.single-production h1 small {display: block; font-size: 1.25rem; font-weight: 100; text-transform: capitalize;}
@media (max-width: 767.98px) {
	.single-production h1 {font-size: 1.5rem;}
	.single-production h1 small {font-size: .9rem;}
}
article.type-production > div::after {clear: both; content: ""; display: block}
article.type-production > div > div {padding: .5rem; position: relative; float: left;}

@media (min-width: 992px) {
	article.type-production > div > div {width: 33.2%;}
	article.type-production > div > div:nth-of-type(6n+1) {
		width: 66.8%;
	}
	article.type-production > div > div:nth-of-type(12n+1) {
		float: right;
	}
	article.type-production > div > div:nth-of-type(3n+1) {
		clear: left;
	}
}
@media (max-width: 991.98px) {
	article.type-production > div > div:nth-of-type(3n+1) {
		width: 100%;
	}
	article.type-production > div > div {width: 50%;}
}

article.type-production > div > div span {position: absolute; bottom: 1rem; left: 1rem; background-color: white; padding: .5rem; color: var(--charter); font-size: .65rem; text-transform: uppercase; font-weight: 800; letter-spacing: .05rem;}
@media (max-width: 991.98px) {
	article.type-production > div > div span {padding: .25rem; font-size: .5rem;}
}

/**Conseillers / Salons**/
.select2-dropdown {max-height: 500px; overflow-y: scroll; padding: 1rem; box-shadow: 0 0 50px rgba(0,0,0,.25);}
#locator, .shows {padding: 0;}
#locator > div:first-child {background-image: url("./assets/images/focus.jpg"); background-size: cover; padding: 5rem; position: relative; z-index: 1; height: calc(100Vh - 200px); min-height: 650px;}
.shows > div:first-child {background-image: url("./assets/images/bg-shows.jpg"); background-size: cover; padding: 5rem; position: relative; z-index: 1;}
#locator > div:first-child::after, .shows > div:first-child::after {content: ""; position: absolute; inset: 0; background: rgb(51,59,65,.65);}
#locator > div:first-child h1, .shows h1, .single-show-page > div > img ~ div:first-of-type h1 {margin: auto; display: block; padding: 3rem 3rem 0 3rem; position: relative; width: 100%;color: white;}
#locator > div:first-child h1::after, #locator > div:first-child h1::before, .shows h1::after, .shows h1::before, .single-show-page > div > img ~ div:first-of-type h1::before, .single-show-page > div > img ~ div:first-of-type h1::after {display: block; background-color: var(--orange); content: ""; position: absolute;}
#locator > div:first-child h1::after, #locator > div:first-child h1::before, .shows > div:first-child h1::after, .shows > div:first-child h1::before, .single-show-page > div > img ~ div:first-of-type h1::before, .single-show-page > div > img ~ div:first-of-type h1::after {height: 1px; width: 40px; top: 0; left: 0;}
#locator > div:first-child h1::after, .shows > div:first-child h1::after, .single-show-page > div > img ~ div:first-of-type h1::after {transform: rotate(90deg);  top: 20px; left: -20px;}
#locator > div:first-child p, .shows > div:first-child p {margin: 0; color: white;font-size: 1.2rem; line-height: 1.2;}
#locator > div:first-child p {padding: .5rem 3rem 3rem;}
.container-small {max-width: 800px; margin: 2rem auto;}
.shows > div:first-child p {padding: .5rem 3rem 0;}
.shows > div:nth-child(2) {padding: 3rem;}
.shows > div:nth-child(2) ul {display: flex; flex-wrap: wrap; align-items: stretch; width: 100%; margin: auto; padding: 0; list-style: none; max-width: 1400px;}
.shows > div:nth-child(2) ul > li {margin: 1%; flex: 0 0 48%;}
@media (max-width: 767.98px) {.shows > div:nth-child(2) ul {justify-content: space-between;}}
@media (min-width: 768px) {
	.shows > div:nth-child(2) ul > li {flex: 0 0 31%;}
}
.shows > div:nth-child(2) ul > li a.btn-charter {display: flex; align-items: center; justify-content: center; text-align: center; height: 100%;}
.archive-shows h1 {text-align: center; margin-top: 3rem; margin-bottom: 2rem;}
.single-show-page > div > img {width: 100%;}
.single-show-page > div > img ~ div:first-of-type {background-color: var(--charter); color: white; padding: 3rem;}
.single-show-page > div > img ~ div:first-of-type h1 {font-size: 3rem;}
.single-show-page > div > img ~ div:first-of-type h1 + p {padding-left: 3rem;}
.single-show-page > div > img ~ div:first-of-type h1 + p + div {padding-left: 3rem;}
@media (max-width: 767.98px) {
	.single-show-page > div > img ~ div:first-of-type {padding: 1rem;}
	.single-show-page > div > img ~ div:first-of-type h1 {font-size: 1.25rem; padding: 1.5rem 0 .5rem 1.5rem;}
	.single-show-page > div > img ~ div:first-of-type h1 + p {padding-left: 1.5rem;}
	.single-show-page > div > img ~ div:first-of-type h1 + p + div {padding-left: 0; display: flex; flex-direction: column; flex-wrap: wrap;}
	.single-show-page > div > img ~ div:first-of-type h1 + p + div a {width: 100%; text-align: center;}
	.single-show-page > div > img ~ div:first-of-type h1 + p + div a:first-child {margin-bottom: .5rem;}
}

.single-show-page > div:nth-child(2) {padding: 3rem; border: solid 1px var(--charter);}
.single-show-contact > ul {display: flex; padding: 2rem 0 0;}
.single-show-contact > ul > li > button {border-style: solid; border-width: 1px 1px 0 1px; border-color: var(--grey); padding: 1rem 2rem; border-radius: 0; margin: 0 1rem 0 0; color: var(--charter); text-transform: uppercase; font-weight: 800; font-size: .85rem;}
.single-show-contact > ul > li > button.active {border-color: var(--orange); background-color: var(--orange); color: white;}
.single-show-contact > ul > li > button:focus {box-shadow: none;}
.single-show-contact .tab-content {padding: 2rem; border: solid 1px var(--orange);}
@media (max-width: 767.98px) {
	.single-show-contact > ul {flex-direction: column; flex-wrap: wrap;}
	.single-show-contact > ul > li > button {margin: 0 0 0 0; width: 100%;}
}
#locator > div:first-child .search-form, .shows > div:first-child > div {
	padding: 5rem;
	margin: 3rem auto;
	display: flex;
	flex-wrap: wrap;
	max-width: 1400px;
	width: 90%;
	position: relative;
	z-index: 2;
}
#locator > div:nth-child(2) {
	display: flex;
	max-width: 1500px;
	padding: 3rem;
	margin: auto;
	flex-wrap: wrap;
}
#locator > div:nth-child(2) > div {
	padding: 1rem;
	flex: 0 0 100%;
	flex-wrap: wrap;
	display: flex;
}
#locator > div:nth-child(2) > div > ul {display: flex; flex-wrap: wrap; align-items: flex-start;}
#locator > div:nth-child(2) > div > ul > li {flex: 0 0 25%; max-width: 25%; margin-bottom: 1rem; list-style: none;overflow: hidden; white-space: nowrap; text-overflow: ellipsis;}
#locator > div:nth-child(2) > div > ul > li > a:hover {color: var(--orange);}
#locator > div:nth-child(2) > div h2 {text-transform: uppercase; font-size: 1.3rem;flex: 0 0 100%; margin-bottom: 3rem;}
.search-form .select2-container {
	flex: 0 0 100%;
	width: 100%;
	padding: 2rem;
	border-radius: 5rem;
	background-color: white;
	border: solid 1px transparent;
}
.search-form .select2-container--open {
	border-radius: 0;
	border-color: #aaaaaa;
}
.search-form .select2-selection__placeholder {text-transform: uppercase;}
.select2-container .select2-selection--single {display: flex; align-items: center;}

@media (max-width: 991.98px) {
	#locator > div:first-child, .shows > div:first-child {padding: 2rem 0; height: auto; min-height: auto;}
	#locator > div:nth-child(2) {padding: .5rem;}
	#locator > div:first-child .search-form, .shows > div:first-child > div {padding: 1rem; margin: 1rem;}
	.search-form .select2-container {padding: 1rem;}
	#locator > div:first-child h1, .shows h1 {padding: 1.5rem 1.5rem 0 1.5rem; font-size: 1.6rem;}
	#locator > div:nth-child(2) > div h2, .search-form .select2-selection__placeholder {font-size: .85rem;}
	#locator > div:first-child p, .shows > div:first-child p {font-size: .85rem; padding:.5rem 1.5rem 1.5rem;}
	#locator > div:nth-child(2) > div {
		padding: 1rem;
		flex: 0 0 100%;
		display: flex;
	}
	#locator > div:nth-child(2) > div h2 {margin-bottom: 1rem;}
	#locator > div:nth-child(2) > div > ul {justify-content: space-between; padding: 0}
	#locator > div:nth-child(2) > div > ul > li {
		flex: 0 0 48%;
		max-width: 48%;
		font-size: .75rem;
		margin-bottom: .5rem;
	}
}

/** Conseillers **/
.single-rep_locator h1, .single-rep_locator h2 {
	text-align: center;
	max-width: 900px;
	padding: 0 1rem;
}
.single-rep_locator h1 {margin: auto}
@media (max-width: 767.98px) {
	.single-rep_locator h1 {font-size: 1.3rem;}
}
.single-rep_locator h2 {color:var(--orange); font-size: 1.25rem; margin: 1rem auto 3rem auto; font-weight: 100;}
.conseiller {
	display: flex;
	flex-wrap: wrap;
	box-shadow: var(--boxshadow);
	border-radius: 1.5rem;
	border: solid 1px #e0e0e0;
	justify-content: space-between;
	min-height: 500px;
	width: 90%;
	margin: auto;
}
.single-rep_locator .conseiller {
	margin-top: 2rem;
}
@media (max-width: 767.98px) {
	.conseiller {max-width: 500px; margin: auto;}
}
@media (min-width: 768px) {
	.conseiller {width: 100%;max-width: 900px;}
}
.content-conseiller, .other-town, .contact-conseiller {max-width: 900px; margin: auto;}
.content-conseiller {padding: 0 1rem;}
@media (max-width: 767.98px) {
	.content-conseiller {font-size: .85rem; padding: 1rem;}
}
.contact-conseiller > ul {display: flex; justify-content: center; list-style: none; padding: 2rem;}
.contact-conseiller > ul > li > button {margin: 0 1rem;}
@media (max-width: 767.98px) {
	.contact-conseiller > ul {padding:1rem 0;}
	.contact-conseiller > ul > li > button {font-size: .75rem; margin: 0 .5rem;}
}
.contact-conseiller .content-pane {padding: 2.5rem; margin-bottom: 2.5rem; border: solid 1px var(--grey); border-radius: 2.5rem;}
.other-town {background-color: var(--grey);}
.other-town > div {padding: 2rem; background-color: white; border-radius: 2.5rem;}
.other-town {padding: 1.5rem;}
@media (min-width: 768px) {
	.other-town {padding: 2.5rem;}
}
.other-town > div > strong {font-weight: 800; display: block; line-height: 1; margin-bottom: 1rem;}
.other-town > div > strong {font-size: 1.25rem;}
@media (min-width: 768px) {
	.other-town > div > strong {
		font-size: 1.75rem;
	}
}
.other-town > div > div {padding: .5rem 0;}
@media (min-width: 768px) {
	.other-town > div > div {padding: 1rem;}
}
.other-town > div > div h3 {font-size: .75rem; text-transform: uppercase; font-weight: 900;}
@media (min-width: 768px) {
	.other-town > div > div h3 {
		font-size: 1rem;
	}
}
.other-town > div > div a span {color: var(--orange); display: block; line-height: 1;}
@media (max-width: 767.98px) {
	.other-town > div > div a span {font-size: .75rem;}
}
.conseiller > div:first-child {flex: 0 0 100%;}
@media (min-width: 768px) {
	.conseiller > div:first-child {
		flex: 0 0 40%;
	}
}
.conseiller > div:first-child > img {height: 100%; width: 100%;}
@media (min-width: 768px) {
	.conseiller > div:first-child > img {object-fit: cover;border-radius: 1.5rem 0 0 1.5rem;}
}

.conseiller > div:nth-child(2) {flex: 0 0 100%; display: flex; flex-wrap: wrap; align-items: center;}
@media (min-width: 768px) {
	.conseiller > div:nth-child(2) {flex: 0 0 40%; margin-right:10%;}
}
.conseiller > div:nth-child(2) > div > strong {font-size: 1.5rem; font-weight: 800; display: block; margin-bottom: 2rem;}
@media (max-width: 767.98px) {
	.conseiller > div:nth-child(2) > div {padding: 1rem;}
}
.conseiller > div:nth-child(2) > div > div {position: relative; padding-left: 3.5rem; font-style: italic; font-size: 1.25rem;}
.conseiller > div:nth-child(2) > div > div::before {content: ""; background-image: url("assets/images/quote.svg"); background-size: contain; background-repeat: no-repeat; position: absolute; top: 0; left: 0; display: block; height: 4rem; width: 2rem;}
@media (max-width: 767.98px) {
	.conseiller > div:nth-child(2) > div > div {font-size: .85rem; padding-left: 1.5rem;}
	.conseiller > div:nth-child(2) > div > div::before {width: 1rem;}
}
/**CMS HP**/
.img-cover {object-fit: cover; height: 100%; width: 100%; object-position: center}
@media (min-width: 768px) {.cms-container .img-cover {border-bottom-right-radius: 5rem}}
.cms-container .container-custom {max-width: 1300px; margin: auto}
.page-template-all-pool_enclosure .cms-container .container-custom {max-width: 1500px;}
.cms-content {background-color: white; height: 100%;}
@media (min-width: 768px) {
	.cms-content {padding: 4rem; border-top-left-radius: 5rem;}
}
.cms-content span {display: block; color: var(--orange); font-weight: 200}
.cms-content h2, .cms-content h3 {font-weight: 800; font-size: 1.8rem; max-width: 350px; margin-bottom: 2.5rem}

.page-template-all-pool_enclosure .cms-content h2, .page-template-all-pool_enclosure .cms-content h3 {max-width: none;}
@media (min-width: 992px) {.cms-content > div {column-count: 2; column-gap: 4rem}}
a.read {display: block; color: var(--orange); font-weight: 700; margin-top: 1.5rem}
@media (max-width: 767.98px) {
	a.read {background-color: var(--orange); border-radius: 18px; display: inline-block; font-weight: 300; padding: .5rem 3rem; position: relative; transition: var(--transition); max-width: 200px; color: white; text-align: center}
	a.read:hover {background-color: white; color: var(--orange)}
}
@media (max-width: 991.98px) {
	.reverse > div:first-child {
		order: 1;
	}
}
.reverse .cms-content {border-top-left-radius: 0; border-bottom-right-radius:5rem}
.cms-container .reverse  .img-cover {border-bottom-right-radius: 0; border-top-left-radius: 5rem}

@media (max-width: 767.98px) {
	.cms-content h2, .cms-content h3 {font-size: 1.3rem; margin-bottom: 1.5rem}
	.cms-content span {font-size: .8rem}
	.cms-container .img-cover {border-top-left-radius: 2.5rem}
	.cms-content {padding: 2rem; border-bottom-right-radius: 2.5rem;}
	.reverse .cms-content {border-bottom-right-radius: 2.5rem;}
	.cms-container .col-md-5 {order: -1}
	.cms-container .reverse  .img-cover {border-top-left-radius: 2.5rem}
}

/**Steps**/
.steps-container {overflow: hidden}
.swiper.steps {padding-top: 2rem; margin: 0 -20rem; overflow: hidden;}
.steps .swiper-slide.swiper-slide-active {background: white;opacity: 1; box-shadow: var(--boxshadowB)}
.steps .swiper-slide {opacity: .2; position: relative}
.steps .swiper-slide img {max-width: 500px; width: 100%; float: right}
@media (max-width: 575.98px) {
	.steps .swiper-slide img {
		height: 350px;
		object-fit: cover;
	}
}
.steps .swiper-slide div.step {position: absolute; top: 0; bottom: 0; right: 65%; left: 0; background: white}
.steps .swiper-slide div.step > div {position: absolute; transform: translateY(-50%); top: 50%; right: -6.5rem; left: 2.5rem; padding: 2rem 1rem 2rem; background: white}
.steps .swiper-slide div.step > div > strong, .featureDotcontent h3 {display: block; text-transform: uppercase; color:var(--charterlight); font-size: 1.2rem; font-weight: 800; letter-spacing: var(--letterspace); margin-bottom: 1.5rem}
.steps .swiper-slide div.step > div p, .featureDotcontent p {font-size: 1.1rem; line-height: 1.4rem; margin: 0}
.steps .swiper-slide div.step[data-step]:before, .featureDotcontent > div:before {content: attr(data-step); position: absolute; font-size: 15rem; font-weight: 900; color: rgba(113,199,236,.85); opacity: .25; transform: translateY(-50%); left: 1rem; top: 40%; z-index: 1}
.featureDotcontent > div:before {content: attr(data-title); opacity: .15;}
@media (min-width: 1200px) {
	.featureDotcontent > div:before { left: -3.5rem;}
}
.steps .swiper-pagination-bullet {height: 30px; width: 30px; line-height: 30px; background: none; color: var(--charterlight); opacity: .85; font-weight: 800; font-size: 1.2rem}
.steps .swiper-pagination-bullet-active {color: var(--orange)}
@media (max-width: 767.98px) {
	.steps .swiper-slide div.step > div p {font-size: .8rem; line-height: normal}
}

div.gallery {margin-top: 4rem}
/**Reviews container**/
body.home .reviews-container {padding: 0}
.reviews-container {padding:5rem 0;}

.review-customer {padding-left: 1.8rem; padding-right: 1.8rem; margin-top: 4rem}
.review-customer a.btn-primary {display: block;  margin: 2rem auto; width: 200px; text-align: center; padding: 1rem 2rem;}
.review-customer > div:first-child > div {width: 100%;}
.review-customer-container {box-shadow: var(--boxshadow); border: solid 1px #eee;}
@media (min-width: 1200px) {
	.review-customer-container {
		display: flex;
	}
	.review-video {flex: 0 0 60%;}
	.review-statment {flex: 0 0 40%;}
}

.review-customer .review-statment {display: flex; flex-direction: column; justify-content: center;}
@media (min-width: 1200px) {
	.review-customer .review-statment {padding: 4rem;}
}
@media (max-width: 1999.98px) {
	.review-customer .review-statment {padding: 2rem;}
}
body.page-template-all-pool_enclosure .reviews-container {padding:0;}
/**Labels & certifications**/
.partners {padding: 0 1.5rem}
body.page-template-all-pool_enclosure .partners {padding: 2rem 0}
.partners h4, .reviews h4, .partners h3, .reviews h3 {font-weight: 800; font-size: 1.5rem}
.partners ul {list-style: none; padding: 0 0 1rem 0; margin: 0; display: flex; justify-content: center;}
.partners ul li {display: flex; align-items: center; justify-content: center; font-size: 1rem;  flex: 0 0 20%; max-width: 13%; padding: .5rem}
.partners ul li img {height: auto; width: 100%; max-width: 150px}
.partners ul li:last-child {border-right: none}
@media (max-width: 767.98px) {
	.partners ul {flex-wrap: wrap;}
	.partners ul li {flex: 0 0 35%; max-width: 35%;}
}
.partners .press {margin-top: 4rem}
body.page-template-all-pool_enclosure .partners .press {margin-top: 0;}

section#text-video div > div p {
	padding-top: 50%;
	position: relative;
}
section#text-video div > div p iframe {
	position: absolute;
	top: 0;
	width: 100%;
	height: 100%;
}
.cms .video {display: flex; justify-content: space-around; margin-top: 2rem;}
.cms .video a {flex: 0 0 49%; position: relative; cursor: pointer;}
.cms .video a::after {content: "\f04b"; font-family: "Font Awesome 5 Free"; position: absolute; font-weight: 600; z-index: 2; color: white; font-size: 1.4rem; transform: translate(-50%,-50%); top: 45%; left: 50%; display: block;}
.cms .video a::before {content: ""; display: block; position: absolute; inset: 0; background-color: rgba(0,0,0,.25); z-index: 1; transition: all ease-in .3s;}
.cms .video a:hover::before {background-color: rgba(0,0,0,.15);}
.cms .video a:only-of-type {margin-right: auto;}
.cms .video a img {width: 100%; height: auto;}
.cms .video a strong {
	position: relative;
	z-index: 2;
	display: block;
	background-color: var(--grey);
	color: var(--charter);
	padding: .5rem;
	font-size: .75rem;
	text-transform: uppercase;
	text-align: center;
}
@media (max-width: 767.98px) {
	.cms .video a strong {font-size: .6rem;}
}
.accordion-container {padding: 5rem; background: white; border-radius: 5rem 0 5rem 0; margin-left: auto; margin-right: auto;}
.cms .accordion-container {padding: 0; margin: 1rem 0}
.cms .accordion-container .accordion {max-width:900px;}
.cms .accordion-container .accordion-title {font-size: 2.8rem; font-weight: 800; margin-top: 3rem}
@media (max-width: 767.98px) {
	.cms .accordion-container .accordion-title {font-size: 2rem}
}

.accordion-button {color: var(--charter)}
@media (max-width: 767.98px) {
	.accordion-container {padding: 1rem; border-radius: 2rem 0 2rem 0;}
}
.accordion-container .accordion-item {border: none}
.accordion-container .accordion-button {font-weight: 800; font-size: .8rem; text-transform: uppercase}
.accordion-container .accordion-button:focus {box-shadow: none; border: none}
.accordion-container .accordion-button:not(.collapsed) {box-shadow: none; border-radius: 10px 10px 0 0; background-color: var(--charter); color: white}
.accordion-container .accordion-button h3 {margin: 0; font-size: .8rem;}
.accordion-container .accordion-body {border-width: 0 1px 1px 1px; border-radius: 0 0 10px 10px; border-style: solid; border-color: var(--greydark); padding: 2rem; font-size: 1.1rem; line-height: normal; font-weight: 200}
.accordion-container .accordion-body p:last-child, .accordion-container .accordion-body p:last-of-type {margin-bottom: 0}
.accordion-container .accordion-button::after {background-image: none; content: "\2b"; font-family: "Font Awesome 5 Free"; font-weight: 900; font-size: 1rem;}
.accordion-container .accordion-button:not(.collapsed)::after {content: "\f068"; transform: none;}

/**CMS**/
.cms h2, .options h2, .plus_model h2, .features h2, .realisations h2 {font-size: 2.8rem; margin-bottom: 2.5rem; font-weight: 800}
.single-pool_enclosure .cms h1 {font-size: 2.1rem; margin-bottom: 0;}
.single-pool_enclosure .cms:last-of-type h4, .plus_model h2, .options h2, .features h2, .realisations h2 {font-size: 2.1rem;}
.features h2, .realisations h2 {margin-bottom: 0; text-align: center}
.features h2 + span, .realisations h2 + span {text-align: center; font-size: 1.2rem; display: block; margin-bottom: 3.5rem; font-weight: 100; color: var(--paragraph)}

.single-pool_enclosure .cms h3 {font-size: 1rem; text-transform: uppercase; font-weight: 700}
.cms h3, .single-pool_enclosure .cms h2 {font-size: 1.7rem; font-weight: 100; margin-bottom: 2.5rem;}
.cms p {font-size: 1rem; color: var(--paragraph)}
.page-template-category-pool_enclosure .cms p {font-size: 1.15rem}
.page-template-category-pool_enclosure .cms a {text-decoration: underline}
@media (max-width: 767.98px) {
	.cms h2 {font-size: 2rem;}
	.cms h3 {font-size: 1.2rem;}
	.cms p {font-size:.9rem}
}

/** Guide Pratique **/
.introguide {text-align: center; padding-bottom: 1.5rem; margin-bottom: 1.5rem; border-bottom: solid 1px #eee;}
.introguide > div {max-width: 900px; margin: 0 auto;}
.introguide a {color: var(--orange);}
.bottomguide {padding: 0 1.5rem;}
.bottomguide ul {font-weight: 200}
.filter-items {
	display: flex;
	justify-content: space-around;
	margin-bottom: 2rem;
	align-items: baseline;
}
body .nav-link:focus {color: var(--charter);}
.filter-items a {color: var(--charter); display: block; padding: 1rem 2rem; position: relative; bottom: -1px;}
.filter-items a::after {background: url("assets/images/wave.svg"); background-size: contain; background-position: 50%; background-repeat: no-repeat; display: block; transition: all ease-in .3s;}
@media (min-width: 992px) {
	.filter-items a {border: solid 1px var(--grey); border-radius: 2rem;}
	.filter-items a:hover {border-color: var(--charterlight);}
	.filter-items a::after {opacity: 0;content: ""; position: absolute; bottom: .75rem; transform: translateX(-50%); left: 50%; height: 10px; width: 50px;}
	.filter-items a.is-checked {padding-bottom: 2rem; border: none;}
	.filter-items a.is-checked, .filter-items a:hover {color: var(--charter);}
	.filter-items a.is-checked::after {opacity: 1; text-decoration: none;}
	.filter-items a.is-checked {font-weight: 800;}
}

@media (max-width: 991.98px) {
	.filter-items a {width: 100%; padding: .5rem 0; display: block; position: relative; text-decoration: none; text-transform: uppercase; font-size: 11px;}
	.filter-items a::after {opacity: 0;content: ""; position: absolute; top: 50%; transform: translateY(-50%); right:0; height: 10px; width: 35px}
	.filter-items a.is-checked {font-weight: 800;}
	.filter-items a.is-checked::after {opacity: 1;}
}

article.pratical_guide {line-height: normal;}
article.pratical_guide img {width: 100%; max-width: 100%; height: auto}
article.pratical_guide a {color: var(--orange);}
article.pratical_guide ul {font-weight: 200; margin: 1rem 0;}
article.pratical_guide ul li {margin: .25rem 0;}
article.pratical_guide p {margin-bottom: 1.5rem;}
article.pratical_guide a.btn-charter {color:#fff;}
article.pratical_guide a.btn-charter:hover {color: var(--orange);}
body.single-pratical_guide .summary {
	top: 6rem;
	z-index: 1;
}
body.single-pratical_guide .summary ul {
	padding: 0;
	margin: 0;
	list-style-type: none;
	border-top: 1px solid #ddd;
}
body.single-pratical_guide .summary ul li {
	padding: 1rem;
	border-left: 1px solid #ddd;
	border-right: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	transition: all ease .5s;
}
body.single-pratical_guide .summary ul li:hover {
	background-color: #ddd;
}
body.single-pratical_guide .summary ul li a {
	display: block;
	font-weight: 700;
}
body.single-pratical_guide .summary ul li .count {
	display: inline-block;
	background: var(--charterlight);
	color: #fff;
	margin-right: 0.8rem;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	padding: 4px;
	text-align: center;
	box-sizing: border-box;
}

ul.pagination {justify-content: center;}
ul.pagination a {color: var(--charter);}
ul.pagination a:hover {color: var(--charter);}
.page-item.active .page-link {background-color: var(--charter); border-color: var(--charter);}

/**Actus**/
.swiper.news {padding-bottom: 5rem}
.cards {text-align: center; padding: 0 1rem; height: 100%; position: relative}
.cards .item {border-bottom-left-radius: 1.5rem; border-bottom-right-radius: 1.5rem; height: 100%; transition: var(--transition);display: block;background-clip: border-box; border: 1px solid rgba(0,0,0,.125);}
.cards:hover .item {box-shadow: var(--boxshadow)}
.cards img {width: 100%; height: auto}
.cards:hover img {opacity: .75}
.cards .item {display: block;}
.cards .item div {padding: 2rem 2rem 6rem;}
.cards.cards-press .item div {padding: 1rem;}
.cards .item div h4 {font-weight: 800}
.cards .item div + span {position: absolute; transform: translateX(-50%); left: 50%; bottom: 2rem; white-space: nowrap;}
.cards .item div + span:hover {border: solid 1px var(--orange)}
@media (max-width: 771.98px) {
	.cards {padding: 0;}
	.cards .item {padding-bottom: 5rem;}
	.cards.cards-press a {padding-bottom: 0;}
	.cards .item div {padding: .5rem;}
	.cards .item div h4 {font-size: 15px; line-height: 15px; margin: 1rem 0 0}
	.cards.cards-press .item div h4 {margin-bottom: 1rem;}
	.cards .item div p {display: none}
}
.card-pool_enclosure_title {
	font-size: 24px;
	font-weight: 800;
	display: block;
	line-height: 1.8rem;
	padding-bottom: 1rem;
}
/**Fiche produit**/
.product-list {justify-content: center;}
.product-container {max-width: 1200px; padding: 0 1.5rem;}
.product-container.summary .d-grid-template {
	padding-bottom: 3rem;
}
@media (min-width: 992px) {
	.product-container .d-grid-template {grid-template-columns: auto 400px; display: grid}
	.product-container .d-grid-template > div:nth-child(1) {padding-right: 5rem}
	.product-container .d-grid-template > div:nth-child(2) {padding: 0; }
	.product-container.summary .d-grid-template > div:nth-child(2) {position: relative; top: -89px; z-index: 3}
}
.single-pool_enclosure header#header {position: absolute; top: 0; left: 0; right: 0; z-index: 2}
body.single-pool_enclosure:has(.wpfront-notification-bar-spacer.wpfront-fixed-position) header#header { top: 45px; }
body.single-pool_enclosure.admin-bar:has(.wpfront-notification-bar-spacer.wpfront-fixed-position) header#header { top: 77px; }
@media (max-width: 1199.98px) {
	.single-pool_enclosure header#header  {z-index: 5;}
}
.single-pool_enclosure header#header a {color: white;}
@media (max-width: 1199.98px) {
	.single-pool_enclosure header#header #menu-header a {color: var(--charter);}
}
.single-pool_enclosure header#header .sub-menu a {color: var(--charter);}
.single-pool_enclosure header#header .sub-menu a:hover {color: var(--charterlight);}
.single-pool_enclosure .functions {position: relative; z-index: 3; top: -46px}
.functions > div {display: inline-block; vertical-align: middle}
.functions > div > button {background: transparent; color: white; font-weight: 700; font-size: .8rem; border: none; padding: .5rem 1.5rem .5rem 2.5rem; margin-left: 1.5rem; position: relative; cursor: pointer}

@media (max-width: 575.98px) {
	.functions > div > button span {display: none;}
	.functions > div > button {padding: .5rem .5rem .5rem 2rem; text-transform: capitalize}
}

.functions > div > button:hover, .functions > div > button:focus {cursor: pointer}
.functions > div > button:before {content: ""; display: block; height: 25px; width: 40px; background-size: contain; background-repeat: no-repeat; position: absolute; left: 0; transform: translateY(-50%); top: 50%}
.functions > div:nth-child(2) > button:before {background-image: url("assets/images/galery.svg")}
.functions > div:nth-child(3) > button:before {background-image: url("assets/images/camera.svg")}
.cta-col {position: sticky; top: 2rem}
.cta-block {border: solid 1px var(--orange)}
.cta-heading {font-size: 0; background: white}
.cta-content {padding: 1.5rem}
.cta-heading > div {display: inline-block; font-size: 1rem; vertical-align: middle}
.cta-heading > div:first-child {padding: 1.25rem; position: relative; color: white; background: var(--orange); box-shadow: -5px -5px 25px rgba(0,0,0,.25) inset; width: 60%}
.cta-heading > div:first-child:after {content: ""; position: absolute; right: -.6rem; transform: translateY(-50%); top: 50%;display : inline-block; height : 0; width : 0; border-top : 10px solid transparent; border-bottom : 10px solid transparent; border-left : 10px solid #ce4836;}

.cta-heading > div:first-child strong {text-transform: uppercase; display: block; font-weight: 700; font-size: 1.5rem; line-height: 1.5rem}
.cta-heading > div:first-child span {display: block}
.cta-heading > div:nth-child(2) {padding: 0 1.25rem; text-align: center; text-transform: uppercase; width: 40%; background-color: white;}
.cta-heading > div:nth-child(2) a {font-weight: 700; color: var(--orange); font-size: .75rem; display: block}
.cta-heading > div:nth-child(2) a:before {content: "\f56d"; color: var(--charter); display: block; margin: auto; font-size: 1.5rem; font-family: "Font Awesome 5 Free"; font-weight: 900;}

/*.functions + .cms {padding-bottom: 2rem; margin-bottom: 2rem; border-bottom: solid 1px var(--grey)}*/

.reasons {padding: 2rem; border-radius: 20px; border: solid 1px var(--grey)}
.reasons strong {display: block; font-size: 1.3rem; color: var(--orange); margin-bottom: 1.5rem; padding-left: 4rem; position: relative; text-align: left; line-height: 1.5rem; font-weight: 800}
.reasons strong:before {content: "\f059";font-family: "Font Awesome 5 Free"; font-weight: 900; position: absolute; left: .5rem; top: .5rem; font-size: 2.5rem}
.reasons ul li {list-style: none; padding: .8rem .8rem .8rem 1.8rem; position: relative}
.reasons ul li:last-of-type {padding-bottom: 0}
.reasons ul li:before {content: "\f00c";font-family: "Font Awesome 5 Free"; font-weight: 900; color: var(--orange); position: absolute; left: 0; top: .8rem; font-size: .9rem}
.reasons + div {
	padding: 1rem 1rem 0 1rem;
	font-size: 13px;
	line-height: normal;
}
.options {border-top: solid 1px var(--grey); border-bottom: solid 1px var(--grey); padding: 3rem 0 .5rem 0}
.options-content {font-size: 0; padding-bottom: 2.5rem}
.options-content > div {display: inline-block; vertical-align: top; font-size: 1rem}
.options-content > div:first-child {width: 25%}
.options-content > div:first-child img {width: 80%; height: auto; }
.options-content > div:last-child {width: 75%; max-width: 340px}
.options-content h3 {font-weight: 700; font-size: .9rem}
.options-content p {color: var(--paragraph); font-size: .95rem; line-height: 1.3rem}

.plus_model {border-top: solid 1px var(--grey); border-bottom: solid 1px var(--grey); padding-top: 3rem; padding-bottom: 1.5rem; margin-bottom: 1.5rem;}
.plus_model .accordion-container {padding: 0; margin: 1rem 0}
.plus_model .accordion-container .accordion {max-width:900px;}
.plus_model .accordion-container .accordion-title {font-size: 2.8rem; font-weight: 800; margin-top: 3rem}
@media (max-width: 767.98px) {
	.plus_model .accordion-container .accordion-title {font-size: 2rem}
}

section.features {max-width: 1750px; margin: auto}
body.home section.reviews::after {display: none;}
body.page-template-all-pool_enclosure section.reviews {padding: 0 0 3rem;}
.summary::after, section.reviews::after {content: ""; display: block; max-width: 1200px; height: 1px; background: var(--grey); margin: auto}
section.reviews::after {position: relative; bottom: -3.5rem}
.dviewcontent {position: relative; margin-bottom: 3rem}
@media (min-width: 1200px) {
	.dviewcontent .mappingDots {height: 45px; font-size: 1.2rem; width: 45px;}
}
@media (min-width: 768px) and (max-width: 1199.98px) {
	.dviewcontent .mappingDots {height: 35px; font-size: .9rem; width: 35px;}
}
@media (max-width: 767.98px) {
	.dviewcontent .mappingDots {height: 30px; font-size: .7rem; width: 30px;}
}
.dviewcontent .mappingDots {position: absolute;border-radius: 100%;background-color: var(--charterlight);display: block;border: 4px solid transparent;transform: translate(-50%, -50%);-webkit-transition: all 0.4s ease;-moz-transition: all 0.4s ease;-o-transition: all 0.4s ease;-ms-transition: all 0.4s ease;transition: all 0.4s ease;box-shadow: 0 0 20px rgba(0,0,0,.1); color: white; cursor: pointer;}
.dviewcontent .mappingDots:before {content: "\2b"; font-family: "Font Awesome 5 Free"; position: absolute; transform: translate(-50%,-50%); top: 50%; left: 50%}
.dviewcontent .mappingDots:hover, .dviewcontent .mappingDots.focused {background-color: white; border-color: var(--charterlight); color: var(--charterlight); content: "-"}
.dviewcontent .mappingDots:hover:before, .dviewcontent .mappingDots.focused:before { content: "-"}
.featureDotcontent > div.inactive.active {opacity: 1;}
.featureDotcontent {padding: 2.5rem 0 2.5rem 5rem;height: 300px; position: relative}
.featureDotcontent > div {position: absolute; transition: all ease-in .3s; text-align: left}
.featureDotcontent > div.inactive {opacity: 0;}
@media (max-width: 1199.98px) {
	.featureDotcontent {padding: 0 1rem 2.5rem 0;border-top: solid 1px rgba(113,199,236,.35);}
	.featureDotcontent > div.inactive.active, .featureDotcontent > div.active {left: 45%;}
	.featureDotcontent > div {transform: translate(-50%,-50%); top: 50%; left: 50%;}
}
@media (min-width: 1200px) {
	.featureDotcontent {padding: 2.5rem 0 2.5rem 5rem;border-left: solid 1px rgba(113,199,236,.35);}
	.featureDotcontent > div.inactive.active,.featureDotcontent > div.active {transform: translateY(-50%) translateX(0);}
	.featureDotcontent > div {transform: translateY(-50%) translateX(5%);top: 50%;}
}
section.realisations {overflow: hidden; position: relative}
.swiper.realisation img {width: 100%; transition: all ease-in .15s}
.swiper.realisation img:hover {cursor: pointer; opacity: .75}
.swiper.realisation .label {position: absolute; bottom: 1rem; left: 1rem; display: inline-block; background-color: white; padding: .35rem; font-size: .8rem; z-index: 4; font-weight: 700}
.offset-swipper {margin: 0 -20rem; position: relative;}
.offset-swipper:before, .offset-swipper:after {content: ""; display: block; width: 15rem; position: absolute; top: 0; bottom: 0; z-index: 2}
.offset-swipper:before {left: 15rem; background: rgb(255,255,255);background: linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 25%, rgba(255,255,255,0) 100%); }
.offset-swipper:after {right: 15rem; background: rgb(255,255,255);background: linear-gradient(270deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 25%, rgba(255,255,255,0) 100%); }
section.realisations .swiper-buttons {position: absolute; transform: translateY(-50%); top: 60%; left: 1rem; right: 1rem; z-index: 3}
section.realisations .swiper-buttons > div:first-child {float: right}
section.realisations .swiper-buttons > div:nth-child(2) {float: left}

.seo_content {
	padding: 1rem;
	background-color: white;
	margin: 3rem 0;
	border-radius: 2.5rem 0 2.5rem 0;
}
@media (min-width: 768px) {
	.seo_content {padding: 2.5rem; border-radius: 5rem 0 5rem 0;}
	.seo_content img {width: 100%; height: auto}
}

section.flexible {padding-bottom: 7rem}
.flexible-container {max-width: 1100px; background-color: white; padding: 5rem; margin: auto; border-radius: 5rem 0 5rem 0}
@media (max-width: 1199.98px) {
	.flexible-container {padding: 0;}
}
.flexible-container a {color: var(--charterlight); text-decoration: underline}
.skroler-title {position: relative; height: 7rem; bottom: -2rem; overflow: hidden}
.skroler-title h2, .skroler-title span {position: absolute; font-size: 3.8Vw; letter-spacing: var(--letterspacemax); text-transform: uppercase; line-height: 1; font-weight: 800; right: -70%; text-align: right; text-shadow: 20px 20px 0 #61c3d715;}
.skroler-title h2:before, .skroler-title span:before {content: ""; height: 20px; width: 100px; background-image: url("assets/images/wave.svg"); background-size: contain; background-repeat: no-repeat; display: block; margin-bottom: .5rem}

@media (min-width: 992px) {
	.col-lg-6:first-child .flexible-text-container {padding: 3rem 3rem 3rem 0;}
	.col-lg-6:last-child .flexible-text-container {padding: 3rem 0 3rem 3rem;}
}

@media (max-width: 991.98px) {
	.col-lg-6:first-child .flexible-text-container, .col-lg-6:last-child .flexible-text-container {padding: 3rem 1em;}
}
.img-responsive {width: 100%; max-width: 100%; height: auto;}
.col-12 .flexible-text-container {padding: 3rem; text-align: center}
.row:last-child .col-12 .flexible-text-container {padding-bottom: 0}
.flexible-text-container h2 {font-size: 2.1rem; margin-bottom: 2.5rem}
.flexible-text-container h3 {font-size: 1.9rem; margin-bottom: 2rem}
.flexible-text-container p:only-child, .flexible-text-container p:last-child {margin-bottom: 0;}

.flexible-content {margin-bottom: 3rem}
.flexible-content h1.head-title {text-align: center; margin-bottom: 3rem; font-size: 3rem}
.flexible-content h2 {margin-bottom: 2.5rem; font-weight: 900}
.flexible-content h2.accordion-header {margin-bottom: 0}
.flexible-content .btn-charter {margin-top: 2rem}
.flexible-content.quote {text-align: center; font-size: 2rem; line-height: normal; font-style: italic; position: relative; padding: 5rem}
.flexible-content.quote:before {display: block; content: "''"; font-size: 15rem; position: absolute; top: -2rem; left: -2rem; opacity: .5}

@media (max-width: 767.98px) {
	.flexible-content.quote {font-size: 1rem; padding:2.5rem}
	.flexible-content.quote:before {font-size: 5rem; top: 0; left: 0}
	.flexible-content h1.head-title {font-size: 2rem; line-height: normal; margin-bottom: 0;}
}
#focus image {height: 100%}

/**Footer**/
footer#footer {padding: 10rem 0; background-image: url("assets/images/img-footer.jpg"); background-size: cover; background-position: 50%; position: relative}
@media (max-width:991.98px) {footer#footer {padding: 8rem 0 5rem 0}}
footer#footer:before {content: ""; position: absolute; top: 0; left: 0; right: 0; display: block; width: 100%; height: 30rem; background: rgb(51,59,65);background: linear-gradient(180deg, rgba(51,59,65,1) 0%, rgba(51,59,65,0.8897759787508753) 30%, rgba(51,59,65,0.4275911048012955) 70%, rgba(51,59,65,0) 100%); z-index: 1}
footer#footer:after {position: absolute; z-index: 2; background: rgb(51,59,65,.65); top: 0; left: 0; bottom: 0; right: 0; content: ""; display: block}
footer#footer > div {max-width: 1750px; margin: auto; position: relative; z-index: 3; color: white; padding: 0 3rem}
@media (max-width: 767.98px) {
	footer#footer > div {padding: 0 1rem;}
}
@media (min-width:992px) {
	footer#footer .center-block {margin-top: -5rem}
}
@media (max-width:991.98px) {footer#footer .reinsurance {margin-bottom: 2rem}}
@media (min-width:992px) {footer#footer .reinsurance {margin-bottom: 12rem}}
footer#footer .reinsurance ul {list-style: none; text-align: center; margin: 0; padding: 0; font-size: 0;}
footer#footer .reinsurance ul li {display: inline-block; vertical-align: top; width: 20%; font-size: 1rem; padding: 4rem 2% 0; position: relative}
@media (max-width: 767.98px) {
	footer#footer .reinsurance ul li {width: 50%}
}

@media (max-width: 991.98px) {
	footer#footer .reinsurance ul li:first-child {display: block; width: 100%; margin-bottom: 2rem;}
}

@media (min-width:768px) and (max-width: 991.98px) {
	footer#footer .reinsurance ul li {width: 25%}
}

@media (max-width: 767.98px) {
	footer#footer .reinsurance ul li {width: 50%}
}

footer#footer .reinsurance ul li:first-child img {width: 130px; height: auto; top: -80px}
footer#footer .reinsurance ul li:nth-child(2) img {width: 85px; top: -50px;}
footer#footer .reinsurance ul li:nth-child(3) img {width: 75px;top: -40px;}
footer#footer .reinsurance ul li:nth-child(4) img {width: 80px;top: -15px;}
footer#footer .reinsurance ul li:nth-child(5) img {width: 60px;top: -30px;}
footer#footer .reinsurance ul li img {display: block; height: auto; position: absolute; transform: translateX(-50%); left: 50%; top: 0;}
footer#footer .reinsurance ul li strong {display: block; font-weight: 900; text-transform: uppercase; font-size: 1.1rem}
@media (max-width: 767.98px) {
	footer#footer .reinsurance ul li strong {font-size: .75rem}
	footer#footer .reinsurance ul li img {top: 20px;}
	footer#footer .reinsurance ul li:nth-child(2) img {top: -30px;}
	footer#footer .reinsurance ul li:nth-child(2) img {width: 45px; top: 8px;}
	footer#footer .reinsurance ul li:nth-child(3) img {width: 45px;top: 8px;}
	footer#footer .reinsurance ul li:nth-child(4) img {width: 45px;top: 20px;}
	footer#footer .reinsurance ul li:nth-child(5) img {width: 45px;top: 8px;}
}
@media (min-width: 768px) and (max-width: 1199.98px) {
	footer#footer .reinsurance ul li strong {font-size: .9rem}
}
.logo-footer-container {max-width: 270px; width: 100%; border-radius: 100px;padding: 2.5rem; background-color: white; margin: 0 auto 5rem auto}
@media (max-width: 767.98px) {
	.logo-footer-container {width: 230px; padding: 2rem}
}
@media (max-width:991.98px) {.logo-footer-container { margin: 2.5rem auto 2rem auto}}
.logo-footer-container img {width: 100%; height: auto;}
footer#footer strong.title {font-size: 1.7rem;display: block;margin:.5rem 0 1rem;font-weight: 800;}
footer#footer .edito {font-size: 1.1rem; line-height: normal}
@media (max-width:991.98px) {footer#footer .edito {text-align: center}}
footer#footer .contact-bloc {text-align: center}
footer#footer .contact-bloc .btn-charter {border-radius: 35px; line-height: 1.3rem; font-size: .9rem; padding-left: 4rem; padding-right: 4rem}
footer#footer .contact-bloc .btn-charter strong {display: block; text-transform: uppercase; font-weight: 800}
footer#footer .contact-bloc .btn-charter + div {padding-top: 2rem;}
footer#footer .contact-bloc .btn-charter + div a, footer#footer .contact-bloc .btn-charter + div span {color: white; font-size: 1.65rem; transition: all ease-in .3s; margin: 0 .7rem;}
footer#footer .contact-bloc .btn-charter + div a:hover, footer#footer .contact-bloc .btn-charter + div span:hover {color: var(--orange);}
footer#footer .contact-bloc strong.title:after {content: ""; display: block; height: 10px; background-image: url("assets/images/wave.svg"); background-size: contain; background-position: 50%; background-repeat: no-repeat; margin-top: 10px}
footer#footer .contact-bloc ul {list-style: none; margin: auto; padding:.5rem 0 3rem 0}
footer#footer .contact-bloc ul li {display: block; padding: .15rem; text-align: center; font-size: 0;}
footer#footer .contact-bloc ul li span {font-size: .9rem; display: inline-block; vertical-align: middle}
footer#footer .contact-bloc ul li span:first-child {text-align: right; padding-right: .5rem; width: 45%; text-transform: uppercase}
footer#footer .contact-bloc ul li span:last-child {text-align: left; padding-left: .5rem; width: 55%}
@media (min-width:992px) {footer#footer .block-links {float: right; margin-right: 5rem;}}
@media (max-width:991.98px) {footer#footer .block-links {text-align: center; margin-top: 3rem}}
footer#footer .block-links ul {margin: 0; list-style: none; padding: 0}
footer#footer .block-links ul li {margin-bottom: .5rem}
footer#footer .block-links ul li a, footer#footer .block-links ul li span {color: white; text-transform: uppercase; font-size: .9rem; font-weight: 200}
footer#footer .block-links ul li a:hover, footer#footer .block-links ul li span:hover {color: var(--orange)}
footer#footer .bottom-block > div {padding-top: 2rem; text-align: center;}
footer#footer .bottom-block > div > span {font-size: 14px; display: block; line-height: normal;}
footer#footer .bottom-block > div > img {margin: 1rem; height: auto; background-color: white; padding: .25rem;}
footer#footer .bottom-block > div > img:first-of-type {width: 80px}
footer#footer .bottom-block > div > img:nth-of-type(2) {width: 120px}
