@import url('https://fonts.googleapis.com/css?family=Rubik:300,300i,400,500,600,700&display=swap');
@import url('https://fonts.googleapis.com/css?family=Poppins:400,500&display=swap');

html, body {
    overflow-x: hidden;
}
body{
    font-family: 'Rubik', sans-serif;
    font-size: 14px;
    color: #0F3644;
    font-weight: 400;
    line-height: 25px;
}
h1, h2, h3 {
    font-family: 'Rubik', sans-serif;
    color: #4E7281;
}
h1 {
    font-size: 48px;
    line-height: 55px;
    font-weight: 300;
}
h2 {
    font-size: 35px;   
    font-weight: 700;
    line-height: 40px;
}
h3 {
    font-size: 20px;
    line-height: 25px;
}
a {
    color: #7FAEC1;
    transition: all .3s ease-in;
}
a:hover,
a:focus,
a:active {
    color: #0F3644;
    text-decoration: none;
}
.btn, .btn-custom {
    font-family: 'Rubik', sans-serif;
    display: inline-block;
    font-size: 14px;
    color: #fff!important;
    font-weight: 500;
    line-height: 18px;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    padding: 15px 25px;
    transition: all .3s ease-in-out;
}
.btn {    
    background: #0F3644;
    border: none;
    border-radius: 10px;
    box-shadow: 0px 10px 20px #00014A5C;
}
.btn-custom {
    background: #4E7281;
    border-radius: 25px;
}
.btn.focus, .btn:focus {
    box-shadow: none;
}
.btn:hover,
.btn:active,
.btn:focus  {
    background: #0F3644;
    color: #fff;
}
.btn-custom:hover,
.btn-custom:active,
.btn-custom:focus  {
    background: #0F3644;
    color: #fff;
}
:focus {
    outline: none;
}
.btn-primary:not(:disabled):not(.disabled).active:focus, 
.btn-primary:not(:disabled):not(.disabled):active:focus, 
.show>.btn-primary.dropdown-toggle:focus {
    box-shadow: none;
}
strong, b {
    font-weight: 700;
}
.form-control:focus {
    background-color: none;
    border-color: none;
    outline: 0;
    box-shadow: none;
}
#sectheader .headerinter {
    padding: 10px 25px;
    padding-right: 95px;
    display: flex;
    justify-content: space-between;
    box-shadow: 0px 2px 20px #0000000D;
}
#cntinfo, 
#cntlogo {
    display: flex;
    align-items: center;
}
#cntlogo .boxslogan {
    font-family: 'Rubik', sans-serif;
    font-size: 14px;
    color: #4E7281;
    font-weight: 300;
    line-height: 20px;
    letter-spacing: 1px;
    text-transform: uppercase;
    border-left: 1px solid rgba(46, 108, 178, .3);
    padding: 16px 18px;
    margin-left: 22px;
}
#cntlogo .boxlogo {
    max-width: 190px;
}
#cntlogo .boxlogo .logointer {
    display: inline-block;
}
#cntlogo .boxlogo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.btnicn img {
    margin-right: 12px;
}
.btnicn {
    display: inline-flex;
    align-items: center;
}
#cntsearch {
    display: inline-flex;
    border-radius: 30px;
    background: rgba(46, 152, 211, .1);
    padding: 3px 25px;
    height: 43px;
    align-items: center;
    margin-left: 35px;
}
#cntsearch input {
    border: none;
    background: transparent;
    color: #4E7281;
    text-transform: uppercase;
    font-weight: 300;
    font-size: 13px;
    letter-spacing: 1px;
    width: 215px;
    padding: 0;
}
#cntsearch input::placeholder {
    color: #4E7281;
}
#cntsearch img {
    margin-right: 10px;
}
#cntrs {
    border-left: 1px solid rgba(46, 108, 178, .3);
    padding: 4px 30px;
    padding-right: 0;
    margin-left: 32px;
}
.boxrs {
    width: 43px;
    height: 43px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    background: rgba(46, 152, 211, .1);
    border-radius: 50%;
}
#sectheader {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99;
    width: 100%;
    background: #fff;
}
#btnnav {
    width: 65px;
    height: 100%;
    background: #0F3644;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5px;
    cursor: pointer;
    position: absolute;
    top: 0;
    right: 0;
}
#btnnav span {
    display: block;
    height: 2px;
    width: 25px;
    background: #fff;
    border-radius: 4px;
    opacity: 1;
    transform-origin: left;
    transition: all .3s ease-in-out;
}
#btnnav span:first-child {
    margin-bottom: 7px;
}
#btnnav span:first-child, 
#btnnav span:last-child {
    width: 15px;
}
#btnnav span:nth-child(2) {
    transition-delay: .2s;
}
#btnnav span:last-child {
    margin-top: 7px;
}
#btnnav.active span:first-child, 
#btnnav.active span:last-child {
    width: 22px;
}
#btnnav.active span:first-child {
    transform: rotate(45deg);
}
#btnnav.active span:nth-child(2) {
    opacity: 0;
    width: 0;
}
#btnnav.active span:last-child {
    transform: rotate(-45deg) translate(1px, -2px);
}
#btnnav.active .btninter {
    padding-left: 12px;
}
#btnnav .btninter {
    display: flex;
    flex-direction: column;
    align-items: center;
}
#nav-vertical {
    width: 65px;
    height: calc(100vh - 72px);
    position: fixed;
    top: 72px;
    right: 0;
    background: #0F3644;    
    justify-content: space-between;
    display: flex;
    flex-direction: column;
    padding-bottom: 13px;
    z-index: 90;
}
#navlist {
    list-style: none;
    padding-left: 0;
    margin-bottom: 0;
}
#navlist li > a,
#navcoord > a {
    display: flex;
    align-items: center;
    justify-content: center;
}
#navlist li > a .cntimgnav {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;    
    padding: 5px;
    position: relative;
    z-index: 2;
    background: transparent;
    transition: all .3s ease-in-out;
}
#navlist li > a {
    height: 72px;
    border-top: 1px solid rgba(255,255,255,.3);
    position: relative;
    transition: all .3s ease-in-out;
}
#navlist li:last-child > a {
    border-bottom: 1px solid rgba(255,255,255,.3);
}
#navlist li > a img,
#navcoord > a img {
    width: 24px;
}
/* #navlist li:nth-child(4),
#navlist li:last-child { display: none;} */
#navcoord {
    display: flex;
    flex-direction: column;
}
#navcoord > a {
    height: 50px;
    padding: 5px 0;
}
#navlist a > .txtnav {
    position: absolute;
    top: 0;
    right: calc(-100% - 200px);
    opacity: 0;
    z-index: 1;
    background: #048DB7;
    border-radius: 10px 0 0 10px;
    width: 225px;
    height: 100%;
    padding: 20px 23px;
    padding-right: 10px;
    display: flex;
    align-items: center;
    font-size: 14px;
    text-transform: uppercase;
    font-weight: 500;
    color: #fff;
    transition: all .3s ease-in-out;
}
#navlist a:hover > .txtnav {
    transition-delay: .2s;
    right: 100%;
    opacity: 1;
}
#navlist a:hover .cntimgnav {
    background: #048DB7;
}
#navlist li:first-child > a > .txtnav {
    background: #0076B9;
}
#navlist li:first-child > a:hover .cntimgnav {
    background: #0076B9;
}
#navigation {
    position: fixed;
    top: 0;
    right: 56px;
    height: 100vh;
    width: 22%;
    box-shadow: -10px 0px 34px #00000029;
    padding-top: 85px;
    z-index: 88;
    background: transparent;
    opacity: 0;
    transform: translateX(100%);
    transition: all .4s ease-in;
}
#navigation.open {
    opacity: 1;
    background: #fff;
    transform: translateX(0);
}
#navigation .listnav {
    list-style: none;
    padding-left: 0;
    margin-bottom: 0;
    position: relative;
    z-index: 1;
    overflow-y: auto;
}
#navigation .listnav .menu-item {
    border-bottom: 1px solid rgba(46, 152, 211, .2);
}
#navigation .listnav .menu-item > a {
    display: block;
    font-family: 'Rubik', sans-serif;
    font-size: 18px;
    font-weight: 700;
    color: #4E7281;
    line-height: 21px;
    padding: 15px 40px 15px 25px;
    position: relative;
    background: transparent;
    transition: all .4s ease-in;
}
#navigation .listnav .menu-item > a::after {
    content: "";
    display: block;
    border: 1px solid #4E7281;
    width: 8px;
    height: 8px;
    transform: rotate(45deg);
    border-bottom: none;
    border-left: none;
    position: absolute;
    top: 42%;
    right: 40px;
}
#navigation .menu-item-has-children .boxsubitem {
    position: fixed;
    top: 85px;
    width: 100%;
    right: 0;
    opacity: 0;
    background: transparent;
    transform: translateX(100%);
    transition: all .4s ease-in;    
    z-index: 2;
}
#navigation .menu-item-has-children .boxsubitem.opensub {
    opacity: 1;
    background: #fff;
    transform: translateX(0);
    height: 100%;
}
#navigation .menu-item-has-children .boxsubitem .titlesub {
    font-size: 18px;
    font-weight: 700;
    color: #0076B9;
    line-height: 21px;
    padding: 15px;
    padding-left: 60px;
    position: relative;
    background: #D5EAF6;
    cursor: pointer;
    margin-bottom: 17px;
}
#navigation .menu-item-has-children .boxsubitem .titlesub::before {
    content: "";
    display: block;
    border: 1px solid #0076B9;
    width: 10px;
    height: 10px;
    transform: rotate(45deg);
    border-top: none;
    border-right: none;
    position: absolute;
    top: 42%;
    left: 28px;
}
#navigation .menu-item-has-children .boxsubitem .menu-item > a  {
    font-size: 16px;
    font-weight: 500;
    position: relative;
}
#navigation .menu-item-has-children .boxsubitem > .listnav {
    overflow-y: auto;
    height: calc(100vh - 113px);
}
#navigation .menu-item-has-children .boxsubitem .menu-item > a::after  {
    content: none;
}
#navigation .menu-item-has-children .boxsubitem a {
    font-size: 14px;
    color: #4E7281;
    padding-top: 10px;
    padding-bottom: 10px;
}
#navigation .menu-item-has-children .boxsubitem .menu-item {
    border-bottom: none;
}
#boxrdv {
    display: none;
    max-width: 600px;
    border-radius: 0;
    overflow: hidden;
    transform: translateY(-50px);
    transition: all .7s;
    padding: 0 40px;
    background: transparent;
    color: #fff;    
    font-size: 14px;
    font-weight: 700;
    line-height: 20px;
    letter-spacing: 0.36px;
}  
#boxrdv h2,
#boxrdv p {
    transform: translateY(-50px);
    opacity: 0;    
    transition-property: transform, opacity;
    transition-duration: .4s;
}
.fancybox-slide--current #boxrdv,
.fancybox-slide--current #boxrdv h2,
.fancybox-slide--current #boxrdv p {
    transform: translateY(0);
    opacity: 1;
}
.fancybox-slide--current #boxrdv h2 {
    transition-delay: .1s;
    font-size: 27px;
    color: #4E7281;
    line-height: 30px;
    text-align: center;
}
.fancybox-slide--current #boxrdv p {
    transition-delay: .3s;
}  
#boxrdv .cntformrdv {
    background: #0F3644;
    padding: 25px 40px 35px;
    border-radius: 15px;
}
#boxrdv h2::after {
    content: "";
    display: block;
    width: 46px;
    height: 5px;
    background: url('../img/title-img.svg') no-repeat left top;
    background-size: contain;
    margin: 10px auto 20px;
}
.fancybox-bg {
    background: #0F3644;
}
.fancybox-is-open .fancybox-bg {
    opacity: .95;
}
.boxformrdv .form-control:not(.cntmg) {
    height: 50px;
}
.boxformrdv .form-control {
    border-radius: 10px;
    padding-left: 20px;
    padding-right: 20px;
}
.boxformrdv .form-group {
    margin-bottom: 10px;
    position: relative;
}
.boxformrdv .cntmg {
    padding-top: 16px;
    padding-bottom: 16px;
}
.boxformrdv .form-control {
    font-size: 14px;
    font-weight: 400;
    line-height: 18px;
    letter-spacing: 0.36px;
}
.boxformrdv .form-control::placeholder {
    color: #B4B4B4;
}
.fancybox-button {
    width: 50px;
    height: 50px;
    padding: 0!important;
}
.fancybox-toolbar .fancybox-button {
    width: 30px;
    height: 30px;
}
.fancybox-slide--html .fancybox-close-small {
    right: -13px;
}
.boxformrdv form .form-check {
    padding-left: 0;
    margin-top: 17px;
}
.boxformrdv .cntcheck label[for="accept"] {
    font-size: 9.5px;
    line-height: 12px;
    margin-top: 0;
    font-weight: 600;
}
.boxformrdv .cntcheck [type="checkbox"]:not(:checked), 
.boxformrdv .cntcheck [type="checkbox"]:checked {
    /* position: absolute;
    left: -9999px; */
}
.boxformrdv .cntcheck [type="checkbox"]:not(:checked) + label, 
.boxformrdv .cntcheck [type="checkbox"]:checked + label {
    position: relative;
    padding-left: 27px;
    cursor: pointer;
}
.boxformrdv .cntcheck [type="checkbox"]:not(:checked) + label:before, 
.boxformrdv .cntcheck [type="checkbox"]:checked + label:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 16px;
    height: 16px;
    border-radius: 3px;
    border: none;
    background: #fff;
    box-shadow: none;
}
.boxformrdv .cntcheck [type="checkbox"]:not(:checked) + label:after {
    opacity: 0;
    transform: scale(0);
}
.boxformrdv .cntcheck [type="checkbox"]:not(:checked) + label::after, 
.boxformrdv .cntcheck [type="checkbox"]:checked + label::after {
    content: "✔";
    position: absolute;
    top: -2px;
    left: 1px;
    font-weight: 700;
    font-size: 17px;
    color: #4E7281;
    transition: all 0.2s ease 0s;
}
.boxformrdv .form-check .linkpw {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}
.boxformrdv .cntcheck .wpcf7-list-item-label {
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 1px;
}
.boxformrdv .cntcheck .form-check-inline {
    margin-left: 15px;
    margin-right: 0;
}
span.wpcf7-list-item {
    display: inline-block;
    margin: 0;
}
.acceptance .form-check-input {
    position: absolute;
    margin-top: 4px;
}
.acceptance2 label {
    padding-left: 17px;
}
.boxformrdv .boxaccept .form-check-label {
    font-size: 12px;
    line-height: 17px;
}
.boxformrdv .boxaccept .form-check:last-child {
    margin-top: 7px;
    margin-bottom: 20px;
}
#cntdate img,
#cntdate2 img {
    position: absolute;
    top: 50%;
    right: 14px;
    transform: translateY(-50%);
    width: 30px;
}
#sectbanniere .banniereinter {
    height: calc(100vh - 72px);
    overflow: hidden;
}
#banniereimg .itemintern,
#cntbanniere .itemimg {
    position: relative;
    overflow: hidden;
}
#banniereimg .itemintern::before,
#cntbanniere .itemimg::before {
    content: "";
    display: block;
    width: 220vh;
    height: 310vh;
    background: rgba(18, 18, 67, .43);
    position: absolute;
    top: -9vh;
    left: -33vw;
    border-radius: 50%;
    z-index: 2;
}
#banniereimg .itemintern .itemimg {
    position: relative;
    z-index: 1;
    height: 100vh;
}
#banniereimg .itemintern .itemimg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
#banniereimg .itemintern .cntlegende {
    position: absolute;
    top: 10%;
    left: 0;
    width: 100%;
    z-index: 3;
    color: #fff;
}
#banniereimg .itemintern .cntlegende .listcat {
    list-style: none;
    padding-left: 0;
    display: flex;
    align-items: center;
    margin-bottom: 20px;
}
#banniereimg .itemintern .cntlegende .listcat .icncat {
    display: inline-block;
    width: 46px;
    margin-right: 16px;
}
#banniereimg .itemintern .cntlegende .listcat > li{
    display: flex;
    align-items: flex-end;
    font-size: 20px;
    color: #fff;
    font-weight: 300;
    text-transform: uppercase;
    letter-spacing: 4px;
}
#banniereimg .itemintern .cntlegende .listcat > li+li{
    margin-left: 37px;
}
#banniereimg .itemintern .cntlegende h2 {
    font-size: 50px;
    color: #fff;
    margin-bottom: 25px;
    text-align: left;
}
#banniereimg .itemintern .cntlegende .txtdescript {
    font-size: 18px;
    font-weight: 300;
    line-height: 30px;
    margin-bottom: 20px;
}
#banniereimg .itemintern .cntlegende .legendeinter {
    max-width: 680px;
    margin-left: 130px;
}
#cntlistcat {
    position: absolute;
    bottom: 45px;
    left: 0;
    width: 100%;
    z-index: 5;
}
#cntlistcat .cntboxcat {
    max-width: 923px;
    margin: 0 auto;
    font-size: 20px;
    font-weight: 500;
    line-height: 30px;
    display: flex;
    width: 100%;
}
#cntlistcat .cntboxcat .boxleft,
#cntlistcat .cntboxcat .boxright {
    width: 100%;
    height: 63px;
}
#cntlistcat .cntboxcat .boxleft {
    background: #fff;
    text-align: center;
    color: rgba(46, 108, 178, 1);
    border-radius: 12px 0 0 12px;
    padding: 20px;
}
#cntlistcat .cntboxcat .boxcolinter {
    display: flex;    
    width: 100%;
    margin-right: 20px;
}
#cntlistcat .cntboxcat .btn {
    padding: 14px 20px;
}
#cntlistcat .cntboxcat .boxright {
    background: #0F3644;    
    border-radius: 0 12px 12px 0;
    display: flex;
    align-items: center;
}
#cntlistcat .boxselect {
    position: relative;
    color: #fff;
    width: 100%;
}
#interselect .cntcheck {
    position: relative;
    z-index: 2;
}
#cntlistcat .boxselect .arrowselect {
    position: absolute;
    top: 45%;
    right: 30px;
    transform: translateY(-50%);
    z-index: 1;
}
#cntlistcat .boxselect .arrowselect::after {
    content: "";
    display: block;
    border: 2px solid #fff;
    width: 12px;
    height: 12px;
    transform: rotate(45deg);
    border-top: none;
    border-left: none;
}
#selectcatlist .form-group {
    position: relative;
    margin-bottom: 0;
}
#selectcatlist .formcatlist {
    padding: 10px 10px 0 0;
    position: absolute;
    top: calc(100% - 9px);
    left: 0;
    width: 100%;
    color: #57ACDB;
    z-index: 2;
    border-radius: 0 0 13px 13px;
    overflow: hidden;
    background: #0F3644;    
}
#selectcatlist .listcheck {
    max-height: 0;
    opacity: 0;
    transition: all .3s ease-in-out;
}
#selectcatlist .listcheck.openselect {
    opacity: 1;
}
#selectcatlist .listcheck::-webkit-scrollbar {
    width: 10px;
}  
#selectcatlist .listcheck::-webkit-scrollbar-track {
    background: #fff; 
    border-radius: 8px;
    margin-bottom: 25px;
}   
#selectcatlist .listcheck::-webkit-scrollbar-thumb {
    background: #4E7281; 
    border-radius: 8px;
}  
#selectcatlist .listcheck::-webkit-scrollbar-thumb:hover {
    background: rgb(32, 75, 126); 
}
#selectcatlist .itemcheck {
    display: flex;
    align-items: center;
    background: transparent;
    transition: all .3s ease-in-out;    
    padding: 7px 12px;
    padding-right: 33px;
    padding-left: 50px;
    cursor: pointer;
}
#selectcatlist .formcatlist .itemcheck:hover {
    background: #fff;
}
#selectcatlist .itemcheck .cnttitle {
    font-size: 12px;
}
#selectcatlist .itemcheck .itemligne {
    width: 36px;
    height: 35px;
    font-size: 16px;
    border-radius: 5px;
    margin-bottom: 0;
    margin-right: 10px;
}
#selectcatlist .itemcheck .itemligne span {
    margin-right: 2px;
}
.cntitems .slick-arrow {
    font-size: 0;
    line-height: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    padding: 0;
    cursor: pointer;
    color: transparent;
    border: none;
    outline: none;
    background: #fff;
    box-shadow: 0px 5px 15px #00000040;
    transition: all .3s ease-in-out;
    z-index: 9;
}
.cntitems .slick-prev {
    left: 7%;
}
.cntitems .slick-next {
    right: 7%;
}
.cntitems .slick-arrow::before {
    content: '';
    height: 12px;
    width: 12px;
    display: block;
    border: 2px solid #4E7281;
    border-top: none;
    border-right: none;
    transform: rotate(45deg) translate(1px , -1px);
}
.cntitems .slick-next:before {
    transform: rotate(-135deg) translate(1px , -1px);
}
#sectbanniere .cntitems.slick-slider {
    height: calc(100vh - 72px);
}
#mainwrapper,
#sectfooter {
    margin-right: 65px;
}
.cntitems .slick-dots {
    position: absolute;
    bottom: 135px;
    display: block;
    width: 100%;
    padding: 0;
    margin: 0;
    list-style: none;
    text-align: center;
}
.cntitems .slick-dots li {
    position: relative;
    display: inline-block;
    width: 20px;
    height: 20px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer;
}
.cntitems .slick-dots li button {
    font-size: 0;
    line-height: 0;
    display: block;
    width: 14px;
    height: 14px;
    padding: 5px;
    margin: 0 auto;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: none;
    border-radius: 50%;
    background: #fff;
    transition: all .3s ease-in-out;
}
.cntitems .slick-dots li.slick-active button {    
    width: 20px;
    height: 20px;
    background: #4E7281;
}
#sectabout {
    padding: 40px 0 80px;
    position: relative;
}
#sectabout > div {
    position: relative;
    z-index: 2;
}
#sectabout::before {
    content: '';
    display: block;
    width: 100%;
    height: 50%;
    background:#F0FAFF;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}
.home h2 {
    text-align: center;
    font-size: 28px;
    color: #4E7281;
    line-height: 30px;
    margin-bottom: 30px;
}
.titleborder::after {
    content: "";
    display: block;
    width: 46px;
    height: 5px;
    background-image: url('../img/ligne.svg');
    background-repeat: no-repeat;
    background-position: left top;
    background-size: contain;
    margin: 10px auto 20px;
}
.titlewhite::after {
    background-image: url('../img/ligne.svg');
}
#cntchiffre > div {
    text-align: center;
}
#cntchiffre .cntinternumb {
    display: block;
    font-size: 50px;
    font-weight: 300;
    line-height: 60px;
    color: #4E7281;
    margin-bottom: 15px;
}
#cntchiffre .txtnumber {
    font-size: 20px;
    font-weight: 700;
    line-height: 30px;
    color: #4E7281;
}
#sectservice {
    margin-top: -57px;
    margin-bottom: -77px;
    position: relative;
    z-index: 2;
}
#cntservice {
    width: 480px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
}
#cntservice .itemservice {
    border-radius: 90px 90px 0px 90px;
    background: #4E7281;
    width: 210px;
    height: 210px;
    padding: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin: 8px;
}
#cntservice .itemservice:nth-child(2) {
    border-radius: 90px 90px 90px 0px;
    background: #4E7281;
}
#cntservice .itemservice:nth-child(3) {
    border-radius: 90px 0px 90px 90px;
    background: #4E7281;
}
#cntservice .itemservice:nth-child(4) {
    border-radius: 0px 90px 90px 90px;
    background: #4E7281;
}
#cntservice .itemservice h3 {
    color: #fff;
    font-weight: 700;
}
#cntservice .itemservice .icnservice {
    width: 60px;
    height: 60px;
}
#cntservice .itemservice .icnservice img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
#cntservice .itemservice .titlewhite::after {
    margin: 10px auto 12px;
}
#sectlistservice {
    padding-top: 150px;
    padding-bottom: 50px;
    margin-bottom: 20px;
}
#sectlistservice .listimg {
    height: 360px;
    overflow: hidden;
    border-radius: 32px 32px 0px 32px;
    box-shadow: 0px 10px 20px #0F36442F;
}
#sectlistservice .listimg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
#sectlistservice .listtxt h3 {
    font-size: 24px;
    font-weight: 700;
    letter-spacing: .56px;
    line-height: 30px;
}
#sectlistservice .cntlisttxt {
    display: flex;
    align-items: center;
}
#sectlistservice .listtxt {
    padding-left: 50px;
}
#sectlistservice .listtxt h3.titleborder::after {
    margin-left: 0;
    margin-bottom: 10px;
}
#sectlistservice .listtxt .cntdescript {
    margin-bottom: 17px;
}
#sectlistservice .itemlisting {
    margin-bottom: 30px;
}
#sectlistservice .itemlisting:last-child {
    margin-bottom: 0;
}
#sectlistservice .itemlisting:nth-child(even) > div {
    flex-direction: row-reverse;
}
#sectlistservice .itemlisting:nth-child(even) .listimg {
    margin-left: 50px;
    border-radius: 0px 32px 32px 32px;
}
#sectlistservice .itemlisting:nth-child(even) h3,
#sectlistservice .itemlisting:nth-child(even) .listtxt {
    text-align: right;
}
#sectlistservice .itemlisting:nth-child(even) .listtxt h3.titleborder::after {
    margin-left: auto;
    margin-right: 0;
}
#sectlistservice .itemlisting:nth-child(3) .listimg {
    border-radius: 32px 0 32px 32px;
}
#sectnews {
    padding: 50px 0;
}
#sectnews .box-actus {
    margin: 0 10px;
    background: #fff;
    position: relative;
    box-shadow: 0px 3px 6px #00000029;
    border-radius: 0px 0px 15px 15px;    
    transform: scale(0.9);
    transition: all .3s ease-in-out;
}
#sectnews .slick-current .box-actus {       
    transform: scale(1);
    box-shadow: 0px 10px 20px #0000003C;
}
#sectnews .box-actus .cnt-img {
    height: 190px;
    overflow: hidden;
}
#sectnews .box-actus .cnt-img .img-inter {
    height: 100%;
    transform: skewY(5deg);
    transform-origin: right;
    overflow: hidden;
}
#sectnews .box-actus .cnt-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: skewY(-5deg) scale(1.3);
}
#sectnews .box-actus .cnt-actus {
    padding-top: 0;
    padding-bottom: 50px;
    min-height: 180px;
}
#sectnews .box-actus .cnt-actus, 
#sectnews .box-actus .cnt-actus .link-actus {
    padding-left: 25px;
    padding-right: 25px;
}
#sectnews .box-actus .cnt-actus h3, 
#sectnews .box-actus .cnt-actus h3 a {
    font-size: 14px;
    color: #4E7281;
    font-weight: 700;
    margin-bottom: 0;
}
#sectnews .box-actus .cnt-actus h3 a {
    display: inline-block;
}
#sectnews .box-actus .date-actus {
    font-size: 10px;
}
#sectnews .box-actus .cnt-actus .txt-actus {
    font-size: 13px;
    font-weight: 400;
    line-height: 18px;
    margin-top: 15px;
}
#sectnews .box-actus .cnt-actus .link-actus {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: absolute;
    bottom: 20px;
    left: 0;
    width: 100%;
}
#sectnews .box-actus .cnt-actus .link-actus a {
    display: inline-block;
    border-top: 12px dotted #0F3644;
    width: 45px;
    margin-left: auto;
}
#sectnews .box-actus .cnt-actus .titlenew {
    font-size: 14px;
    color: #0F3644;
    font-weight: 500;
}
#listnews {
    margin-top: 50px;
}
#listnews .slick-list,
#listtestimonials .slick-list {
    padding-bottom: 40px!important;
}
#listnews .slick-prev,
#listtestimonials .slick-prev  {
    left: -50px;
}
#listnews .slick-next,
#listtestimonials .slick-next {
    right: -50px;
}
.cntbtn {
    margin-top: 20px;
    text-align: center;
}
#sectrdv {    
    position: relative;
}
#sectrdv .cntimgrdv {
    height: 650px;
    overflow: hidden;
    position: relative;
    z-index: 1;
}
#sectrdv .cntimgrdv img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: left bottom;
    position: relative;
    z-index: 1;
}
#sectrdv .cntimgrdv::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #0F3644;
    opacity: .2;
    z-index: 2;
}
#sectrdv .cntboxrdv {
    position: absolute;
    top: 50%;
    left: 0;
    z-index: 5;
    width: 100%;
    transform: translateY(-50%);
}
#sectrdv .cntboxrdv h2 {
    text-align: left;
    font-size: 42px;
    color: #fff;
    font-weight: 700;
    line-height: 45px;
    letter-spacing: 1px;
    text-shadow: 0 1px 14px rgba(0, 0, 0, 0.5);
    margin-bottom: 5px;
}
#sectrdv .cntboxrdv .cnttxtrdv {
    font-size: 30px;
    line-height: 36px;
    color: #fff;
    font-weight: 300;
    text-shadow: 0 1px 14px rgba(0, 0, 0, 0.5);
    max-width: 620px;
    margin-bottom: 30px;
}
#sectrdv .cntboxrdv .btn-custom {
    font-size: 20px;
    line-height: 25px;
    padding: 15px 30px;
}
#sectrdv .cntboxrdv .btnicn img {
    margin-right: 20px;
    width: 23px;
}
#secttestimonial {
    padding: 50px 0;
}
#pagetestimonials .boxitem,
#listtestimonials .boxitem {
    box-shadow: 0px 3px 6px #00000029;
    border-radius: 0px 0px 15px 15px;
    transform: scale(.9);
    transition: all .3s ease-in-out;
}
#pagetestimonials .slick-current .boxitem,
#listtestimonials .slick-current .boxitem {       
    transform: scale(1);
    box-shadow: 0px 10px 20px #0000003C;
}
#pagetestimonials  .slick-current .boxitem .cntimg,
#listtestimonials .boxitem .cntimg {
    height: 120px;
    overflow: hidden;
}
#pagetestimonials  .boxitem .cntimg img,
#listtestimonials .boxitem .cntimg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
#pagetestimonials .boxitem .cntimg img { max-height: 190px;}

#pagetestimonials  .boxitem .cntboxitem,
#listtestimonials .boxitem .cntboxitem {
    padding: 19px 25px;
}
#pagetestimonials .boxitem .cntboxitem .cnticn,
#listtestimonials .boxitem .cntboxitem .cnticn {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}
#pagetestimonials .boxitem .cntboxitem h3,
#listtestimonials .boxitem .cntboxitem h3 {
    font-size: 14px;
    color: #4E7281;
    font-weight: 700;
    line-height: 16px;
    margin-bottom: 7px;
}
#pagetestimonials .boxitem .cntboxitem .cnttxt,
#listtestimonials .boxitem .cntboxitem .cnttxt {
    font-size: 14px;
    font-weight: 300;
    font-style: italic;
    line-height: 16px;
    color: #0F3644;
    margin-bottom: 5px;
}
#pagetestimonials .boxitem .cntboxitem .cntnote,
#listtestimonials .boxitem .cntboxitem .cntnote {
    display: flex;
    align-items: baseline;
}

#pagetestimonials .boxitem .cntboxitem .liststars,
#listtestimonials .boxitem .cntboxitem .liststars {
    list-style: none;
    padding-left: 0;
    margin: 0 -2px;
    display: flex;
    align-items: center;
}
#pagetestimonials .boxitem .cntboxitem .liststars > li,
#listtestimonials .boxitem .cntboxitem .liststars > li {
    margin: 0 2px;
}
#pagetestimonials .boxitem .cntboxitem .boxnote,
#listtestimonials .boxitem .cntboxitem .boxnote {
    line-height: 12px;
    font-size: 11px;
    margin-left: 12px;
    transform: translateY(2px);
}
#pagetestimonials .boxitem .cntboxitem .boxnote span,
#listtestimonials .boxitem .cntboxitem .boxnote span {
    font-size: 130%;
    font-weight: 700;
}
#pagetestimonials .boxitem .cntboxitem .boxfooter,
#listtestimonials .boxitem .cntboxitem .boxfooter {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 22px;    
    font-size: 14px;
    line-height: 16px;
}
#pagetestimonials .boxitem .cntboxitem .boxfooter .linkmore,
#listtestimonials .boxitem .cntboxitem .boxfooter .linkmore {
    font-weight: 700;
    text-transform: uppercase;
}
#sectfooter .boxmenufooter {
    background: #0F3644;
    padding: 60px 0 30px;
}
#sectfooter .titlefooter {
    font-size: 18px;
    font-weight: 700;
    color: #fff;
    line-height: 25px;
    margin-bottom: 9px;
}
#sectfooter .menufooter {
    list-style: none;
    padding-left: 0;
    margin-bottom: 0;
    font-weight: 500;
}
#sectfooter .menufooter a:hover {
    color: #fff;
}
#sectfooter .menufooter > li {
    margin-bottom: 5px;
}
#sectfooter .footerinter {
    max-width: 940px;
    margin: 0 auto;
}
#sectfooter .listcoord {
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 910px;
}
#sectfooter .boxcoordfooter {
    padding: 50px 0;
}
#sectfooter .listcoord .titlecoot {
    font-size: 16px;
    font-weight: 600;
    line-height: 20px;
    margin-bottom: 7px;
}
#sectfooter .listcoord {
    font-size: 14px;
    font-weight: 500;
}
#sectfooter .listcoord,
#sectfooter .listcoord a {
    color: #0F3644;
}
#sectfooter .coopiright {
    background: #0F3644;
    padding: 13px;
    text-align: center;
    font-family: 'Poppins', sans-serif;
    font-size: 12px;
    line-height: 22px;
    letter-spacing: .8px;
}
#sectfooter .coopiright,
#sectfooter .coopiright a {
    color: #7FAEC1;
}
#scrolltop {
    position: fixed;
    bottom: 30px;
    right: 8%;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    padding: 0;
    opacity: 0;
    visibility: hidden;
    background: #fff;
    box-shadow: 0px 5px 15px #00000040;
    transition: all .5s ease-in-out;
    z-index: 99;
}
#scrolltop.show {
    opacity: 1;
    visibility: visible;
}
#scrolltop::before {
    content: '';
    height: 12px;
    width: 12px;
    display: block;
    border: 2px solid #4E7281;
    border-bottom: none;
    border-right: none;
    transform: rotate(45deg) translate(2px , 2px);
}
.pginter #sectbanniere .banniereinter {
    height: calc(44vh);
    position: relative;
}
#cntbanniere,
#cntbanniere .itemimg {
    height: 100%;
}
.pginter #cntbanniere .itemimg::before {
    left: -43vw;
    width: 278vh;
}
.pginter #cntbanniere .itemimg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
}
#titlelegende {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    transform: translateY(-50%);
    z-index: 5;
}
#titlelegende h1 {
    color: #fff;
    text-transform: uppercase;
    margin-bottom: 0;
    letter-spacing: 9px;
    display: flex;
    align-items: flex-end;
}
#titlelegende h1 img {
    margin-right: 30px;
    transform: translateY(-9px);
    max-width: 120px;
    flex: 0 0 120px;
}
.pginter .titleborder::after {
    margin-left: 0;
}
.pginter h2.titleborder::after {
    margin-top: 20px;
}
.cnttxtimg .coltxt {
    display: flex;
    align-items: center;
    padding: 35px;
    padding-left: 0;
    background: #fff;
}
.cnttxtimg .imginter .cntimg {
    width: 400px;
    height: 500px;
    box-shadow: 0px 10px 20px #0F36442F;
    margin: -72px auto 30px;    
    position: relative;
    border-radius: 30px 30px 30px 0;
}
.cnttxtimg .imginter .cntimg img {
    width: 100%;
    height: 100%;
    border-radius: 30px 30px 30px 0;
    object-fit: cover;
    object-position: center;
}
.rowtxtimg,
.rowtxtimg > div {
    position: relative;
}
.rowtxtimg > div {
    z-index: 2;
}
.rowtxtimg::before,
.rowtxtimg::after {
    content: "";
    display: block;
    width: 50%;
    height: 100%;
    position: absolute;
    top: 0;
    z-index: 1;
}
.rowtxtimg::before {
    background: #0F3644;
    right: 0;
}
.rowtxtimg::after {
    background: #fff;
    left: 0;
}
.cnttxtimg .colimg {
    padding-left: 35px;
    padding-bottom: 10px;
}
.rowtxtimg .imginter h3 {
    font-size: 20px;
    color: #4E7281;
    line-height: 28px;
    font-weight: 700;
    letter-spacing: .48px;
    margin-bottom: 0;
}
.rowtxtimg .imginter h3 span {
    display: block;
    color: #fff;
}
#sectboxabout {
    position: relative;
    z-index: 2;
}
.cnttxtimg .imginter .cntimg::before {
    content: "";
    display: block;
    width: 158px;
    height: 123px;
    background-image: url('../img/aqua-blanc.svg');
    background-repeat: no-repeat;
    background-position: left top;
    background-size: contain;
    position: absolute;
    bottom: -48px;
    right: -97px;
}
.pginter #sectabout {
    padding-top: 90px;
}
.rowtxtimg.cntimgleft::before {
    right: auto;
    left: 0;
}
.rowtxtimg.cntimgleft::after {
    right: 0;
    left: auto;
}
.rowtxtimg.cntimgleft .cnttxtimg .imginter .cntimg {
    margin-left: 0;
}
.rowtxtimg.cntimgleft .cnttxtimg .imginter .cntimg::before {
    right: auto;
    left: -55px;
    bottom: -53px;
}
.rowtxtimg.cntimgleft .cnttxtimg .imginter .cntimg img {
    border-radius: 30px 30px 0 30px;
}
.rowtxtimg.cntimgleft .cnttxtimg .coltxt {
    padding-top: 45px;
    padding-left: 60px;
    padding-right: 0;
}
.rowtxtimg.cntimgleft {
    padding-bottom: 50px;
}
#sectlistservice.secttxtimgleft {    
    padding-top: 210px;
    padding-bottom: 0;
    margin-bottom: 0;
}
#sectrdv.sectrdvcenter .cntboxrdv,
#sectrdv.sectrdvcenter .cntboxrdv h2 {
    text-align: center;
}
#sectrdv.sectrdvcenter .cntboxrdv .cnttxtrdv {
    margin-left: auto;
    margin-right: auto;
}
#sectrdv .pgquisommes {
    top: 90px;
    transform: translateY(0);
}
#sectrdv.sectrdvcenter .cntimgrdv::before {
    opacity: .3;
}
.pginter #secttestimonial h2 {
    text-align: center;
    font-size: 28px;
    color: #4E7281;
    line-height: 30px;
    margin-bottom: 30px;
}
.pginter #secttestimonial h2::after {
    margin-left: auto;
    margin-top: 10px;
}
.rowtxtimg .cnttxtimg .coltxt h3  {
    font-weight: 700;
    margin-bottom: 20px;
}
.pgpiscines .cnttxtimg .imginter .cntimg .boxicn {
    display: block;
    width: 158px;
    height: 123px;
    position: absolute;
    bottom: -48px;
    right: -76px;
}
.pgpiscines .cnttxtimg .imginter .cntimg .boxicn img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.pgpiscines .cnttxtimg .imginter .cntimg::before {
    content: none;
}
.pgpiscines .cnttxtimg .imginter .cntimg {
    margin-bottom: 80px;
}
.pgpiscines .cnttxtimg .colimg {
    padding-bottom: 40px;
}
#sectgallerytxt .cntimg {
    height: 500px;
}
#sectgallerytxt .cntgaltxt .itemgal,
#sectgallerytxt .cntimg {
    position: relative;
}
#sectgallerytxt .cntimg img,
#sectgallerytxt .cntgaltxt .itemgal img {
    width: 100%;
    height: 100%;
    object-fit: cover;    
    position: relative;
    z-index: 1;
}
#sectgallerytxt .cntimg,
#sectgallerytxt .cntgaltxt .itemgal {
    cursor: pointer;
}
#sectgallerytxt .cntimg .imglink,
#sectgallerytxt .itemgal .imglink {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50% , -50%);
    width: 100%;
    height: 100%;
    z-index: 5;
    background: rgba(18, 18, 67, .1);
    padding: 30px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    cursor: pointer;
}
#sectgallerytxt .cntimg .imglink,
#sectgallerytxt .cntimg .imglink .imglinktxt,
#sectgallerytxt .itemgal .imglink,
#sectgallerytxt .itemgal .imglink .imglinktxt {
    transition: all .3s ease-in-out;
}
#sectgallerytxt .cntimg:hover .imglink,
#sectgallerytxt .itemgal:hover .imglink {
    width: 90%;
    height: 90%;
    background: rgba(18, 18, 67, .7);
}
#sectgallerytxt .cntimg .imglink .imglinktxt {
    padding-left: 16%;
}
#sectgallerytxt .cntimg .imglink .imglinktxt,
#sectgallerytxt .itemgal .imglink .imglinktxt {
    max-width: 430px;
    width: 100%;
    opacity: 0;
    visibility: hidden;
}
#sectgallerytxt .cntimg:hover .imglink .imglinktxt,
#sectgallerytxt .itemgal:hover .imglink .imglinktxt {
    opacity: 1;
    visibility: visible;
}
#sectgallerytxt .cntimg .imglink .imglinktxt h3,
#sectgallerytxt .itemgal .imglink .imglinktxt h3 {
    color: #fff;
    font-size: 20px;
    font-weight: 300;
    margin-bottom: 25px;
}
#sectgallerytxt .cntgaltxt {
    height: 500px;
    display: flex;
    flex-wrap: wrap;
}
#sectgallerytxt .cntgaltxt > div {
    height: 50%;    
    width: 100%;
    max-width: 50%;
    flex: 0 0 50%;
}
#sectgallerytxt .cntgaltxt > div:first-child {
    max-width: 100%;
    flex: 0 0 100%;
}
#sectgallerytxt .rowitemgal {
    background: #0F3644;
}
#sectgallerytxt .cntgaltxt .cnttxt {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    text-align: center;
}
#sectgallerytxt .cntgaltxt .cnttxt h3 {
    color: #4E7281;
    margin-bottom: 0;
}
#sectgallerytxt .cntgaltxt .cnttxt h3 span {
    display: block;
    text-align: center;
    color: #fff;
}
#sectgallerytxt .cntgaltxt .cnttxt .titleborder::after {
    margin-left: auto;
    margin-bottom: 0;
}
#sectgallerytxt .row2 .cntgaltxt > div {
    max-width: 50%;
    flex: 0 0 50%;
    height: 100%;
}
#sectgallerytxt .row2 .cntgaltxt .groupitem {
    display: flex;
    flex-direction: column;
}
#sectgallerytxt .row2 .cntgaltxt .groupitem > div {
    height: 50%;
}
#sectblue {
    background: #4E7281;
    padding: 45px 0;
    color: #fff;
}
#sectblue h2 {
    color: #fff;
    font-size: 20px;
    font-weight: 300;
    line-height: 30px;
}
#sectblue h3 {
    font-size: 20px;
    color: #fff;
    font-weight: 700;
    margin-bottom: 30px;
}
#sectblue .listdimention {
    display: flex;
    margin-left:-30px;
    margin-right:-30px;
    margin-bottom: 30px;
}
#sectblue .listdimention .itemdimension {
    padding: 2px 30px;
    border-right: 1px solid #4E7281;
    font-weight: 700;
    font-size: 14px;
}
#sectblue .listdimention .itemdimension:last-child {
    border-right: none;
}
#sectblue a.linkdimention {
    color: #fff;
    font-weight: 300;
    font-size: 20px;
    line-height: 30px;
}
#sectlistbassin {
    padding: 35px 0 20px;
}
#sectlistbassin .listbassins {
    margin-top: 50px;
}
#sectlistbassin .listbassins .cntimg {
    height: 270px;
    border-radius: 13px;
    overflow: hidden;
    margin-bottom: 25px;
    position: relative;
}
#sectlistbassin .listbassins .cntimg a {
    display: block;
    width: 100%;
    height: 100%;
}
#sectlistbassin .listbassins .cntimg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1);
    transition: all .3s ease-in-out;
}
#sectlistbassin .listbassins .cntimg:hover img {
    transform: scale(1.3);
}
#sectlistbassin .listbassins .cntimg > a::before {
    content: "";    
    display: block;
    width: 100%;
    height: 100%;
    background: #0F3644;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    z-index: 2;
    transition: all .3s ease-in-out;
}
#sectlistbassin .listbassins .cntimg:hover a::before {
    opacity: .7;
}
#sectlistbassin .listbassins .cntimg a .icnviewmore {
    width: 50px;
    height: 50px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50% , -50%);
    z-index: 5;
    opacity: 0;
    transition: all .3s ease-in-out;
}
#sectlistbassin .listbassins .cntimg:hover a .icnviewmore {
    opacity: 1;
}
#sectlistbassin .listbassins .cntimg a .icnviewmore::before,
#sectlistbassin .listbassins .cntimg a .icnviewmore::after {
    content: "";
    background: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50% , -50%);
    z-index: 5;
}
#sectlistbassin .listbassins .cntimg a .icnviewmore::before {
    width: 50px;
    height: 1px;
}
#sectlistbassin .listbassins .cntimg a .icnviewmore::after {
    width: 1px;
    height: 50px;
}
#sectrdv .cntrdvform .cntboxrdv {
    position: relative;
    top: 0;
    left: 0;
    transform: translateY(0);
    display: flex;
    flex-direction: column;
    justify-content: center;
}
#sectrdv .cntrdvform {
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    line-height: 20px;
    letter-spacing: 0.36px;
    position: relative;
    z-index: 5;
}
#sectrdv .cntrdvform .cntformrdv {
    background: #0F3644;
    padding: 25px 40px 35px;
}
.boxformrdv .boxaccept.cntcheck [type="checkbox"]:checked + label::after {
    top: 0px;
}
#sectrdv.formbassins .cntimgrdv {
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
#sectrdv.formbassins .cntrdvform .cntformrdv h3 {
    font-weight: 700;
    color: #fff;
    letter-spacing: .48px;
    margin-bottom: 25px;
}
#sectrdv.formbassins .cntimgrdv::before {
    opacity: .5;
}
.pglanding #sectbanniere .banniereinter,
.pglanding #cntbanniere .itemimg {
    height: 100%;
    min-height: 100vh;
}
.pglanding #cntbanniere {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.pglanding #cntbanniere .itemimg img {
    min-height: 100vh;
}
.pglanding #titlelegende {
    position: relative;
    top: 0;
    transform: translateY(0);
}
.pglanding #titlelegende .cntformrdv {
    background: #0F3644;
    padding: 25px 40px 35px;
}
.pglanding #titlelegende .cntrdvform {
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    line-height: 20px;
    letter-spacing: 0.36px;
    position: relative;
    z-index: 5;
}
.pglanding #titlelegende h3 {
    font-size: 25px;
    font-weight: 700;
    text-transform: uppercase;
    color: #4E7281;
    margin-bottom: 15px;
}
.pglanding #titlelegende h4 {
    font-size: 20px;
    font-weight: 700;
}
.pglanding #titlelegende .cntformrdv p {
    font-size: 20px;
    font-weight: 300;
    line-height: 25px;
}
.pglanding #titlelegende .boxformrdv {
    margin-top: 20px;
}
.pglanding .boxformrdv .form-control {
    margin-bottom: 5px;
}
.pglanding #titlelegende h1 {
    align-items: center;
    margin-bottom: 20px;
}
.pglanding #titlelegende .cnttitleinter {
    display: flex;
    align-items: center;
}
.pglanding #titlelegende .cnttitleinter h2 {
    text-align: left;
    font-size: 42px;
    color: #fff;
    font-weight: 700;
    line-height: 45px;
    letter-spacing: 1px;
    text-shadow: 0 1px 14px rgba(0, 0, 0, 0.5);
    margin-bottom: 5px;
}
.pglanding #titlelegende .cnttxtrdv {
    font-size: 30px;
    line-height: 36px;
    color: #fff;
    font-weight: 300;
    text-shadow: 0 1px 14px rgba(0, 0, 0, 0.5);
    max-width: 620px;
    margin-bottom: 30px;
}
.pglanding #cntbanniere .itemimg::before {
    left: -53vw;
    width: 333vh;
}
.pglanding #sectabout {
    padding-top: 50px;
}
.pglanding #sectservice {
    margin-bottom: 20px;
}
.pglanding #secttestimonial {
    padding-top: 10px;
}
#mainwrapper .content-actus{
    padding-top: 3rem;
    padding-bottom: 3rem;
}
.wpcf7-form-control-wrap.date{
    position: relative;
    display: block;
    background:#fff;
    border-radius: 10px;
}
.wpcf7-form-control-wrap.date input {
    z-index: 1;
    position: relative;
    background: transparent;
}
.wpcf7-form-control-wrap.date::after{
    content: "";
    display: block;
    background: url(../img/form-date.svg) no-repeat center;
    width: 20px;
    height: 20px;
    position: absolute;
    right: 1rem;
    top: 50%;
    transform: translateY(-50%);
    z-index: 0;
}
.wpcf7-form-control-wrap.date input{
    padding-right: 3rem;
}
.wpcf7-form-control-wrap.description textarea{
    min-height: 150px;
}
.cntcheck p{
    display: none;
}

/*  MISE à JOURS */
#cntarticle .itemactus {
    border-radius: 15px;
    box-shadow: 0px 10px 20px #0000003C;
    overflow: hidden;
    margin-bottom: 20px;
}
#cntarticle .itemactus .cntimg {
    height: 300px;
}
#cntarticle .itemactus .cntimg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
#cntarticle .itemactus .cntnews {
    padding: 25px 25px 90px;
    position: relative;
    background: #fff;
}
#cntarticle .itemactus .cntnews h3 {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 0;
}
#cntarticle .itemactus .cntnews .dateactus {
    font-size: 11px;
}
#cntarticle .itemactus .cntnews .txtactus {
    margin-top: 10px;
}
#cntarticle .itemactus .cntnews .cntbtn {
    text-align: right;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 15px 25px 25px;
}
#cntarticle {
    max-width: 66.66%;
    flex: 0 0 66.66%;
}
#cntaside {
    max-width: 33.33%;
    flex: 0 0 33.33%;
    padding-top: 20px;
    padding-left: 40px;
}
#listactus {
    padding-top: 40px;
    padding-bottom: 60px;
}
#listactus h2 {
    margin-bottom: 30px;
}
#listactus h2.titleborder::after {
    margin-top: 10px;
}
#blocknews {
    display: flex;
    flex-wrap: wrap;
}
#cntaside h2 {
    font-size: 20px;
    margin-bottom: 25px;
}
#cntaside h2.titleborder::after {
    margin-top: 5px;
}
#cntaside .articleaside {
    margin-bottom: 50px;
}
#cntaside .itemnewsrecente {
    margin-bottom: 20px;
}
#cntaside .itemnewsrecente .cntimg {
    width: 75px;
    height: 75px;
    border-radius: 10px;
    overflow: hidden;
}
#cntaside .itemnewsrecente .cntimg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
#cntaside .itemnewsrecente .cnttxtnews {
    padding-left: 10px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
#cntaside .itemnewsrecente .cnttxtnews h3 {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 0;
}
#cntaside .itemnewsrecente .cnttxtnews h3 a {
    color: #4E7281;
}
#cntaside .itemnewsrecente .cnttxtnews .dateactus {
    font-size: 11px;
}
#cntaside .listarchives {
    background: #fff;
    border-radius: 10px;
    position: relative;
}
#cntaside .listarchives::before {
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    border-width: 10px 6px;
    border-style: solid;
    border-color: #4E7281 transparent transparent transparent;
    position: absolute;
    font-weight: 400;
    top: 50%;
    right: 18px;
    transform: translateY(-25%);
}
#cntaside .listarchives .boxselect {
    width: 100%;
    border: 1px solid #4E7281;
    height: 55px;
    padding: 10px 20px;
    padding-right: 30px;
    border-radius: 10px;
    font-size: 14px;
    color: #4E7281;
    font-weight: 500;
    -webkit-appearance: none;
    background: transparent;
    position: relative;
    z-index: 2;
}
#cntaside .listarchives .boxselect option {
    color: #0F3644;
}
.backlink {
    display: inline-block;
    font-size: 16px;
    text-transform: uppercase;
    font-weight: 500;
    color: #4E7281;
    margin-bottom: 20px;
}
.backlink .icnarrow {
    display: inline-block;
    margin-right: 6px;
}
.backlink .icnarrow img {
    width: 20px;
    transform: rotate(180deg) translateY(1px);
}
#cntarticle .boxactusintern {
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0px 10px 20px #0000003C;
    background: #fff;
}
#cntarticle .boxactusintern .cntimg {
    height: 280px;
    overflow: hidden;
}
#cntarticle .boxactusintern .cntimg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
#cntarticle .boxactusintern .boxcntinternews {
    padding: 20px;
    min-height: 620px;
}
#cntarticle .boxactusintern .boxcntinternews h3 {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 0;
}
#cntarticle .boxactusintern .boxcntinternews .dateactus {
    font-size: 11px;
}
#cntarticle .boxactusintern .boxcntinternews .txtactus {
    margin-top: 8px;
}
#boxcontact {
    padding-top: 40px;
    padding-bottom: 60px;
}
#boxcontact .txtcontact {
    font-size: 18px;
    color: #4E7281;
    line-height: 25px;
    margin-bottom: 25px;
}
#boxcontact .boxcontact {
    max-width: 700px;
    margin: 0 auto;
}
#boxcontact .boxcontact .form-control {
    border-radius: 10px;
    border: none;
    background: #F4F4F8;
    padding: 10px 20px;
}
#boxcontact .boxcontact .form-control:not(.cntmg) {
    height: 50px;
}
#boxcontact .boxcontact .form-control::placeholder {
    color: #B4B4B4;
}
#boxcontact .boxcontact .titleborder {
    font-weight: 700;
}
#boxcontact .form-row {
    margin-right: -8px;
    margin-left: -8px;
    margin-bottom: 25px;
}
#boxcontact .form-row:nth-child(3) {
    margin-bottom: 0;
}
#boxcontact .form-row>.col, 
#boxcontact .form-row>[class*=col-] {
    padding-left: 8px;
    padding-right: 8px;
    margin-bottom: 10px;
}
#boxcontact .formtitle .titleborder::after {
    margin-bottom: 0;
}
#boxcontact .listpiscine {
    background: #F4F4F8;
    border-radius: 10px;
    position: relative;
}
#boxcontact .listpiscine::before {
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    border-width: 10px 6px;
    border-style: solid;
    border-color: #4E7281 transparent transparent transparent;
    position: absolute;
    font-weight: 400;
    top: 50%;
    right: 18px;
    transform: translateY(-25%);
}
#boxcontact .listpiscine .boxselect {
    width: 100%;
    border: none;
    height: 50px;
    padding: 10px 20px;
    padding-right: 30px;
    border-radius: 10px;
    font-size: 14px;
    color: #B4B4B4;
    -webkit-appearance: none;
    background: transparent;
    position: relative;
    z-index: 2;
}
#boxcontact .listpiscine .boxselect option {
    color: #0F3644;
}
#boxcontact .cntlabel {
    display: flex;
    align-items: center;
    color: #4E7281;
    font-size: 15px;
}
#boxcontact .boxlabel {
    font-size: 12px;
    color: #4E7281;
    margin-bottom: 15px;
}
#boxcontact form .form-check {
    padding-left: 0;
    margin-top: 0;
}
#boxcontact .cntcheck {
    margin-top: 25px;
    margin-bottom: 45px;
}
#boxcontact .cntcheck label[for="accept"] {
    font-size: 9.5px;
    line-height: 12px;
    margin-top: 0;
    font-weight: 600;
}
#boxcontact .cntcheck [type="checkbox"]:not(:checked), 
#boxcontact .cntcheck [type="checkbox"]:checked {
    /* position: absolute;
    left: -9999px; */
    margin-right: 10px;
}
#boxcontact .cntcheck [type="checkbox"]:not(:checked) + label, 
#boxcontact .cntcheck [type="checkbox"]:checked + label {
    position: relative;
    padding-left: 27px;
    cursor: pointer;
    color: #4E7281;
    font-size: 12px;
    line-height: 15px;
}
#boxcontact .cntcheck [type="checkbox"]:not(:checked) + label:before, 
#boxcontact .cntcheck [type="checkbox"]:checked + label:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 16px;
    height: 16px;
    border-radius: 3px;
    border: none;
    background: #E2E2E2;
    box-shadow: none;
}
#boxcontact .cntcheck [type="checkbox"]:not(:checked) + label:after {
    opacity: 0;
    transform: scale(0);
}
#boxcontact .cntcheck [type="checkbox"]:not(:checked) + label::after, 
#boxcontact .cntcheck [type="checkbox"]:checked + label::after {
    content: "✔";
    position: absolute;
    top: -2px;
    left: 1px;
    font-weight: 700;
    font-size: 17px;
    color: #4E7281;
    transition: all 0.2s ease 0s;
}
.blocktxtimg {
    padding-top: 50px;
    padding-bottom: 60px;
}
.sectiontxtimg .itemlisting .listimg {
    height: 360px;
    overflow: hidden;
    border-radius: 32px 32px 0px 32px;
    box-shadow: 0px 10px 20px #0F36442F;
}
.sectiontxtimg .itemlisting .listimg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.sectiontxtimg .itemlisting .listtxt h3 {
    font-size: 24px;
    font-weight: 700;
    letter-spacing: .56px;
    line-height: 30px;
}
.sectiontxtimg .itemlisting .cntlisttxt {
    display: flex;
    align-items: center;
}
.sectiontxtimg .itemlisting .listtxt {
    padding-left: 25px;
}
.sectiontxtimg .itemlisting:nth-child(odd) .listtxt {
    padding-left: 0;
    padding-right: 25px;
}
.sectiontxtimg .itemlisting .listtxt h3.titleborder::after {
    margin-left: 0;
    margin-bottom: 10px;
}
.sectiontxtimg .itemlisting .listtxt .cntdescript {
    margin-bottom: 17px;
}
.sectiontxtimg .itemlisting {
    margin-bottom: 60px;
}
.sectiontxtimg .itemlisting:last-child {
    margin-bottom: 0;
}
.sectiontxtimg .itemlisting:last-child {
    margin-bottom: 0;
}
.sectiontxtimg .itemlisting:nth-child(odd) > div {
    flex-direction: row-reverse;
}
.sectiontxtimg .itemlisting:nth-child(even) > div {
    flex-direction: row;
}
.sectiontxtimg .itemlisting .listimg {
    border-radius: 32px 32px 32px 0;
}
.sectiontxtimg .itemlisting .listimg {
    margin-right: 25px;
    margin-left: 0;
}
.sectiontxtimg .itemlisting:nth-child(odd) .listimg {
    margin-left: 25px;
    margin-right: 0;
}
.sectiontxtimg .itemlisting h3,
.sectiontxtimg .itemlisting .listtxt {
    text-align: left;
}
.sectiontxtimg .itemlisting .listtxt h3.titleborder::after {
    margin-left: 0;
    margin-right: auto;
}
#sectionband {
    padding: 60px 0 70px;
    background: #0F3644;
    color: #fff;
    text-align: center;
}
#sectionband .titleborder::after {
    margin-left: auto;
    margin-top: 20px;
}
#sectionband .listbox h3 {
    font-size: 30px;
    font-weight: 700;
    line-height: 40px;
}
#sectlistbassin .listbassins .cntimg h3 {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    color: #fff;
    background: #0F3644;
    margin: 0;
    padding: 13px 20px;
    z-index: 5;
}
#mainwrapper.pgtxtimg #sectlistbassin {
    padding-top: 0;
}
#mainwrapper.pgtxtimg {
    padding-bottom: 30px;
}
#boxcontact .boxcontact textarea{
    min-height: 250px;
}
#boxcontact .boxcontact .acceptance2 label {
    padding-left: 0;
}
#boxcontact .boxcontact .cntcheck label{
    display: flex;
    line-height: 20px;
    align-items: baseline;
}
.boxaccept .form-check-input {
    position: absolute;
    margin-top: 0;
    margin-left: 0;
    visibility: hidden;
}
.cntcheck .form-check-input {
    position: absolute;
    margin-top: 0;
    margin-right: 0;
    margin-left: 0;
    visibility: hidden;
}

.cnt-modal {
    max-width: 550px;
    overflow: hidden;
    transform: translateY(-50px);
    transition: all .7s;
    background-color: transparent;
    padding: 50px;
}
.cnt-modal h3 { margin-top: 10px;}

.cnt-modal .fancybox-button {
    right: 3px !important;
}
.cnt-modal.fancybox-content {
    background: transparent !important;
}
.cnt-modal .mainmodal {
    background: #fff;
    padding: 15px;
}
.cnt-modal .fancybox-button svg { 
    color: #fff; 
}
#breadcrumb {
    position: absolute;
    top: 15px;
    left: 0;
    width: 100%;
    z-index: 5;
}
#breadcrumb .listlink {
    padding-left: 0;
    list-style: none;
    margin-bottom: 0;
    display: flex;
    font-size: 14px;
}
#breadcrumb .listlink,
#breadcrumb .listlink a {
    color: #fff;
}
#breadcrumb .listlink .active {
    font-weight: 700;
}
#breadcrumb .listlink > li::after {
    content: ">";
    display: inline-block;
    color: #fff;
    margin: 0 5px;
}
#breadcrumb .listlink > li:last-child::after {
    content: none;
}
#sectlistbassin .listbassins .colitem {
    width: 369px;
    height: 270px;
    padding-left: 10px;
    padding-right: 10px;    
    margin-bottom: 20px;
}
#sectlistbassin .cntfilterbtn > .button {
    font-size: 18px;
    background: transparent;
    border: 2px solid #0F3644;
    border-radius: 10px;
    color: #0F3644;
    height: 49px;
    text-transform: uppercase;
    padding: 10px 20px;
    font-weight: 500;
    outline: none;
    margin: 0 0.4%;
    margin-bottom: 15px;
    transition: all .3s ease-in-out;
}
#sectlistbassin .cntfilterbtn {
    margin-left: -0.4%;
    margin-right: -0.4%;
}
#sectlistbassin .cntfilterbtn > .button.is-checked {  
    background: #4E7281;
    border: none;
    box-shadow: 0px 10px 20px #00014A5C;
    color: #fff;
}
#sectreal {
    padding-top: 40px;
    padding-bottom: 70px;
}
#listgallerie .itemimg {
    height: 340px;
    box-shadow: 0px 10px 20px #0F36442F;
    border-radius: 40px 40px 40px 0px;
    overflow: hidden;
    margin: 15px;
    margin-top: 0;
}
#listgallerie .itemimg img,
#navgallerie .itemimg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
#navgallerie {
    margin-left: 15px;
}
#navgallerie .itemimg {
    height: 100px;
    border-radius: 10px;
    overflow: hidden;
    margin-left: 0px;
    margin-right: 12px;
    margin-bottom: 20px;
    box-shadow: 5px 7px 8px #0F36442F;
}
.main-page-full { padding: 2rem 0;}
#navcoord > a {
    position: relative;
}
#navcoord a > .imgcoord {
    width: 100%;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
}
#navcoord a:hover > .imgcoord {
    position: relative;
    z-index: 2;
    background: #0F3644;
}
#navcoord a > .txtcoord {
    position: absolute;
    top: 0;
    right: calc(-100% - 200px);
    opacity: 0;
    z-index: 1;
    background: #0F3644;
    border-radius: 10px 0 0 10px;
    width: max-content;
    height: 100%;
    padding: 20px 23px;
    padding-right: 10px;
    display: flex;
    align-items: center;
    font-size: 14px;
    font-weight: 500;
    color: #fff;
    transition: all .3s ease-in-out;
}
#navcoord a:hover > .txtcoord {
    transition-delay: .2s;
    right: 100%;
    opacity: 1;
}
.maintitle h1 { font-size : 38px }