

@font-face {
    font-family: 'rakesly';
    src: url('fonts/RakeslyRg-Regular.woff2') format('woff2'),
    url('fonts/RakeslyRg-Regular.woff') format('woff');
    font-weight: bold;
    font-style: normal;
}

@font-face {
    font-family: 'rakesly';
    src: url('fonts/rakesly_lt_it-webfont.woff2') format('woff2'),
    url('fonts/rakesly_lt_it-webfont.woff') format('woff');
    font-weight: normal;
    font-style: italic;
}

@font-face {
    font-family: 'rakesly';
    src: url('fonts/rakesly_lt-webfont.woff2') format('woff2'),
    url('fonts/rakesly_lt-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'louis';
    src: url('fonts/louis_george_cafe-webfont.woff2') format('woff2'),
    url('fonts/louis_george_cafe-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'icomoon';
    src:
            url('fonts/icomoon.ttf?fnjozq') format('truetype'),
            url('fonts/icomoon.woff?fnjozq') format('woff'),
            url('fonts/icomoon.svg?fnjozq#icomoon') format('svg');
    font-weight: normal;
    font-style: normal;
}

.pic:before {
    font-family: 'icomoon' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.pic-bottom:before {
    content: "\e990";
}
.pic-casque:before {
    content: "\e991";
}
.pic-cloche:before {
    content: "\e992";
}
.pic-enveloppe:before {
    content: "\e993";
}
.pic-left:before {
    content: "\e994";
}
.pic-livre:before {
    content: "\e995";
}
.pic-right:before {
    content: "\e996";
}
.pic-top:before {
    content: "\e997";
}
.pic-picto1:before {
    content: "\e910";
}
.pic-picto2:before {
    content: "\e921";
}
.pic-picto3:before {
    content: "\e932";
}
.pic-picto4:before {
    content: "\e943";
}
.pic-picto5:before {
    content: "\e954";
}
.pic-picto6:before {
    content: "\e965";
}
.pic-picto7:before {
    content: "\e911";
}
.pic-picto8:before {
    content: "\e912";
}
/*! HTML5 Boilerplate v4.3.0 | MIT License | http://h5bp.com/ */
html, button, input, select, textarea {
    color: #000;
    font-family: 'rakesly';
}

html {
    font-size: 1em;
    line-height: 1.2;
    overflow-y: scroll;
    height: 100%;
    box-sizing: border-box;
    overflow-x: hidden;
}

*, *:before, *:after {
    box-sizing: inherit;
}

::-moz-selection {
    background: rgba(0, 88, 112, 0.78);
    text-shadow: none;
}

::selection {
    background: rgba(0, 88, 112, 0.78);
    text-shadow: none;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

audio, canvas, img, video {
    vertical-align: middle;
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

textarea {
    resize: vertical;
}

.browsehappy {
    margin: 0.2em 0;
    background: #ccc;
    color: #1d1d1d;
    padding: 0.2em 0;
}

/* ==========================================================================   Author's custom styles   ========================================================================== */
body {
    height: 100%;
}

img {
    max-width: 100%;
    height: auto;
}

a {
    transition: all .3s ease;
    text-decoration: none;
}

a:focus {
    outline: 0;
}

#header { position:absolute; top:0; left:0; width:100%; z-index: 99; }
#content { padding:50px 50px 0 100px; position: relative; min-height: 100vh; }
#header .logoRow { padding:70px 20px 20px 120px; position:absolute; left:0; top:0; width:230px; background: #fff; height:180px; }
#header .logoRow:before { content:""; position:absolute; right:0; bottom:0; width:130px; height:130px; box-shadow:inset -3px -3px 2px rgba(0,0,0,.1); }
#header .logoRow a { position: relative; display: block; }

#menuLeft { position: absolute; left:0; width:100px; height:100%; top:0; padding-top:130px; z-index: 99; }
.stickyInner {     height: 836px; }
.stickyInner ul { font-family: 'louis'; list-style: none; margin: 0; padding: 0; width:710px; height:100px; transform: rotate(-90deg) translateX(-100%); transform-origin: 0 0; }
.stickyInner li { display: inline-block; vertical-align: middle; }
#menuLeft a { color:#000; }
#menuLeft a:hover { color:#ad1a38; }
#menuLeft li a { display: inline-block; height: 100px; line-height: 100px; padding: 0 0.8em; letter-spacing: .03em; font-size: .9em; position: relative; overflow: hidden; vertical-align: middle; }
#menuLeft li:before {  content:"\f111"; font-family: FontAwesome; color:#ad1a38; font-size: .3em; display: inline-block; vertical-align: middle; margin-bottom: .1em; }
#menuLeft li a:before {  content:"\f111"; line-height: 1; font-family: FontAwesome; color:#ad1a38; font-size: .45em; position:absolute; top:100%; transition:top .3s ease; left:50%;  }
#menuLeft li a:hover:before {  top:80%;  }
#menuLeft .rsContainer { padding-top:630px; text-align: center; }
#menuLeft .rsContainer a { display: block; margin-bottom:.5em; padding-right:3px; }

@keyframes fade {
    0% { opacity: 0}
    100% { opacity: 1; }
}
@keyframes menu {
    0% { opacity: 0; transform: translateY(1em)}
    100% { opacity: 1; transform: translateY(0) }
}
@keyframes menu2 {
    0% { transform: translateY(-100%)}
    100% { transform: translateY(0) }
}
@keyframes menu3 {
    0% { transform: translateY(-200px);}
    100% { transform: translateY(0) }
}

#page { animation:fade 1s ease 0s 1; }
.pageout #page { opacity: 0; transition: opacity .2s ease; }

.blockLng { position:absolute; top:0; right:50px; }

.language-switcher { margin:0; padding:0; list-style: none; }
.language-switcher li { display:inline-block; }
.language-switcher a { display:inline-block; height:50px; line-height: 50px; margin-left:.5em; position: relative; overflow: hidden; }
.language-switcher a:before {  content:"\f111"; line-height: 1; font-family: FontAwesome; color:#ad1a38; font-size: .3em; position:absolute; top:150%; transition:top .3s ease; left:50%; margin-left:-.45em;  }
.language-switcher .active a:before {  top:77%;  }
.language-switcher a:hover:before {  top:77%;  }
#nav { position: absolute; right: 50px; top: 50px; animation:menu3 .5s ease 0s 1; }
#header .main-menu > .menu { margin: 0; padding: 0; list-style: none; }
#header .main-menu > .menu > li { display:inline-block; vertical-align: top; position:relative; }
#header .main-menu > .menu > li > a { display: block; padding:1.7em 1em; color:#fff; font-family: 'louis'; letter-spacing: .02em; text-transform: uppercase; font-size: .9em; position: relative }
#header .main-menu > .menu > li > a:hover:before{ top:85%; }
#header .main-menu > .menu > li > a:before { content:"\f111"; transition: top .3s ease; line-height: 1; font-family: FontAwesome; color:#fff; font-size:3px; position:absolute; left:50%; margin-left: -.42em; top:70%;  }
#header .main-menu > .menu > li > ul { position: absolute; left:50%; width:220px; top:100%; background: #fff; padding:1.2em; text-align: center; margin: 0 0 0 -110px; list-style: none; box-shadow:0 3px 10px rgba(0,0,0,0.1), 0 10px 20px rgba(0,0,0,0.1); display:none;}
#header .main-menu > .menu > li:hover > ul { animation:menu .3s ease 0s 1; display: block; }
#header .main-menu > .menu > li > ul:before { content:""; position:absolute; left:50%; top:-12px; border-bottom: 12px solid #fff; border-left:10px solid transparent; border-right: 10px solid transparent; margin-left:-10px; }
#header .main-menu > .menu > li > ul a { color:#000; font-family: 'louis'; letter-spacing: .05em; text-transform: uppercase; font-size: .75em; display:block; padding:.5em 0; }
#header .main-menu > .menu > li > ul a:hover { color:#0badcc; }
#header .main-menu { display: inline-block; vertical-align: middle; }

.menuBtn { display: inline-block; padding: .5em .5em .4em; color: #fff; text-transform: uppercase; font-family: louis; font-size: 0.8em; vertical-align: middle;  background: #008098;  border-radius: 0.2em; margin: 0 1em; letter-spacing: .05em; box-shadow: 5px 5px 10px rgba(0,0,0,0.3); }
.menuBtn i { margin: 0 0.2em; font-size: 1.2em; }
a.menuBtn:hover { background: #009cb5; }
.bgred { background: #ad1a38; }
.menuBtn a { color:#fff; }

.linkTopTel { position: relative; top:-1px; }
.menuBtn.bgred { margin-right:1.5em; }

#searchToggler { color: #008098; width: 1.5em; display: inline-block; padding:0 0 0 0.6em; vertical-align: middle; font-size: 1.2em; text-shadow: 3px 3px 16px #000; }
#searchToggler:hover { color:#009cb5; }

.bordered { border-left: 1px solid rgba(255,255,255,0.7); }
.linkTopContact { display: inline-block; padding: 0 0 0 .1em; }
.linkTopContact i { position: relative; top:1px; }
.menuBtn a:hover { opacity:.8; }

#menuToggler { display:none; }

.topsearch { position:fixed; top:0; right:-364px; background:#fff; transition: right .3s ease; }
.searchOn .topsearch { right:50px; }
#topsearchInput { padding: 1em 1em 0.8em; height: 50px; letter-spacing: .04em; box-sizing: border-box; border: 1px solid rgba(224, 224, 224, 0.7); background: #fff;  }
#topsearchInput:focus { box-shadow: inset 0 1px 2px rgba(0,0,0,.1); outline:0; }
.topsearch button { padding: .5em 1.3em; color: #fff; background: #ad1a38; border: 0; height: 50px; box-shadow: inset 0 0 0 6px #fff; vertical-align: top; border-radius: 0; }
.topsearch button:hover { background: #831729 }
.searchOn #searchToggler i:before {content:"\f00d"; }

.alerte { margin:0 -1px; background: #ad1a38; color:#fff; padding:1.1em 17em 1.1em 2.9em; letter-spacing: .04em; animation:left .8s ease 1.3s 1; animation-fill-mode: backwards; }
.alerteInner { display: flex; align-items: flex-start; }
.alerte .pic-cloche { font-size: 1.4em; margin: -0.1em 0.7em -1em 0; animation:cloche 1.3s ease 1.6s 1; transform-origin: 0 0; }
.alerteTitle { font-weight: bold; margin-right: 1em; }
.alerteLink { margin-left: .7em; white-space: nowrap; align-self: center; }
.alerteLink a { color:#fff; border-bottom:1px solid rgba(255,255,255,.5); }
.alerteLink a:hover { border-bottom:1px solid rgba(255,255,255,1); }

.contactLink img { transform: translateZ(0); display: block; }
.contactLink { position: absolute; right: 15px; bottom: -86px; transform: scale(0.9) rotate(0); z-index: 2; animation:contact .5s ease 1.3s 1; animation-fill-mode: backwards; }
.contactLink:hover { transform: scale(1) rotate(10deg); }

#footer .logoRow { position: absolute; left: 50%; top: 0; width: 120px; margin-left: -60px; padding: 24px; background: #fff; box-shadow: inset 3px -3px 3px rgba(0,0,0,0.2); }
#footer { padding:50px; line-height: 1.4; background: #000; position: relative; letter-spacing: .03em; margin-top:2em; }

.menuZone1 { width:20%; align-self: flex-end; }
.menuZone2 { width:12.5%; }
.menuZone3 { width:10%; }
.menuZone4 { width:15%; text-align: center; align-self: flex-end; font-size: .9em; }
.menuZone5 { width:12.5%; }
.menuZone6 { width:30%; text-align: right; }

#footer a { color:rgba(255,255,255,.8); }
#footer a:hover { color:#fff; }

.menuZone4 .rsContainer { margin-top:.7em; font-size: 1.4em; }
.menuZone4 .rsContainer a { margin:0 .5em; }
#footer li a { font-family:louis; text-transform: uppercase; font-size: .7em; }
#footer strong { text-transform: uppercase; }
#footer ul { margin: 0; padding: 0; list-style: none; }
#footer p { margin-top:0 }
#footer .menuZone1 li { display: inline-block; vertical-align: top; }
#footer .menuZone1 li:after { content:" - "; display: inline-block; vertical-align: middle; }
#footer .menuZone1 li:last-child:after { content:""; }

.topOn #header { position: fixed; background: #fff; box-shadow:5px 0 8px rgba(0,0,0,0.2), 0 -13px 8px 10px #fff; animation: menu2 .5s ease 0s 1; left:100px; width:auto; right:0;  height: 90px; z-index: 100; }
.topOn #header .language-switcher { display:none; }
.topOn #header .logoRow:before { display:none; }
.topOn #header .logoRow { padding: 15px; width: 90px; height: 90px; }
.topOn #header .main-menu > .menu > li > a { color:#000; }
.topOn #nav { top: 11px; animation:none;}
.topOn #header .main-menu > .menu > li > a:before { color:#000; }
.topOn #searchToggler { text-shadow: none; border-color:rgba(0,0,0,.1); }
.topOn .menuBtn { box-shadow: 5px 5px 10px rgba(0,0,0,0.1); }
.topOn .topsearch { right:-364px; top: 90px; }
.topOn.searchOn .topsearch { right: 0; top: 90px; }

.homeHeader { height:calc(100vh - 150px); z-index: 2; position:relative; box-shadow:0 0 8px rgba(0,0,0,0.3),  inset 0 0 190px 10px rgba(0,0,0,0.4); background-size: cover; background-position: center center; min-height: 400px; background-color: #0b545e; color:#fff; padding:50px 60px; text-align: right; display: flex; align-items: flex-end; background-attachment: fixed; }
.homeHeaderInner{ width: 100%; position: relative; z-index: 2; overflow: hidden; padding-top:5em; }
.homeHeaderInner:after { content:""; width:32em; height:3px; background:#fff; right:0; bottom:0; position: absolute; animation:trait 1.5s ease .25s; animation-fill-mode: backwards; transform-origin: 100% 100%; opacity: 0;}
.homeHeaderInner h1 { margin:0; font-size: 3.3em; height: 1.18em; letter-spacing: .05em; overflow: hidden; animation: h1 .25s ease .6s 1; animation-fill-mode: backwards; }
.homeHeaderInner h2 { font-style:italic; margin:0; height: 1.18em; letter-spacing: .03em; font-weight:normal; font-size: 1.6em; overflow: hidden; animation: h2 .5s ease .85s 1; animation-fill-mode: backwards; }
.homeHeaderInner h2:before { content:"\f111"; font-family: FontAwesome; color:#ad1a38; font-style: normal; font-size: .3em; display: inline-block; vertical-align: middle; margin-right: 1.5em; margin-bottom: 1.3em; }

.footerInner { display: flex; align-items: flex-start; color:#fff; justify-content:center; }

.themap { height:50vh; min-height: 300px; background: #eee; position: relative; }
.mapmap { position: absolute; left:0; top:0; height:100%; width:100%; }


@keyframes h1 {
    0% { height:0; transform:translateY(-1.18em); }
    100% { height:1.18em; transform:translateY(0); }
}
@keyframes contact {
    0% { transform: scale(0) rotate(0); }
    80% { transform: scale(1.1) rotate(0); }
    100% {transform: scale(0.9) rotate(0)); }
}
@keyframes left {
    0% { opacity:0; transform:translateY(-50px);}
    100% { opacity:1; transform:translateY(0); }
}
@keyframes h2 {
    0% { height:0; }
    100% { height:1.18em; }
}
@keyframes cloche {
    0% { transform:rotate(0); }
    20% { transform:rotate(20deg); }
    40% { transform:rotate(-20deg); }
    60% { transform:rotate(20deg); }
    80% { transform:rotate(-20deg); }
    100% { transform:rotate(0); }
}
@keyframes trait {
    0% { transform:scaleX(0) translateY(-3.894em); opacity:1; }
    20% { transform:scaleX(1) translateY(-3.894em); opacity:1;  }
    40% { transform:scaleX(1) translateY(0); opacity:1;  }
    70% { transform:scaleX(1) translateY(-1.888em) translateX(0); opacity:1;  }
    90% { transform:scaleX(0) translateY(-1.888em) translateX(100%); opacity:1;  }
    100% { transform:scaleX(0) translateY(-1.888em) translateX(100%); opacity:1;  }
}

.btn { position:relative; text-transform: uppercase; border:1px solid #ad1a38; font-family: louis; color:#ad1a38; padding:.45em 0.8em 0.4em 2em; letter-spacing: .05em; font-size: .7em; border-radius: 3px; }
.btn:before { content:""; width:6px; height:6px; border:3px solid #ad1a38; border-radius: 50%; position: absolute; top:50%; left:1em; margin:-3px 0 0 -3px; transition:margin .2s ease, width .2s ease, height .2s ease, border .2s ease; }
.btn:after { content:"\f067"; font-family: FontAwesome; text-transform: none; position: absolute; left:1em; top:1em; transform:scale(0); margin: -.44em 0 0 -.35em; transition:transform .3s ease; }
.btn:hover:after { transform:scale(1); }
.btn:hover:before { width:16px; height:16px; margin:-8px 0 0 -8px; border:1px solid rgba(173, 26, 56, 0.07); }
.btn span { display:inline-block; transform:translateX(0); transition: transform .2s ease; }
.btn:hover span { transform:translateX(.3em) }

.marques { display:block; position:relative; height:120px; margin:1.3em auto; }
.sliderMarques { padding:1em 3em; }
.marquesTitle { position: absolute; transform: translateY(-50%) rotate(-90deg); left:0; top: 50%; text-align: center; color: #000; margin: 0; }
.marquesTitle:after { content:""; height:2em; width:1px; background: #000; position: absolute; top:100%; left:50%; margin-top:.5em; }
.sliderRow { position:absolute; left:160px; right:0; top:0; height:100%; display:flex; justify-content: space-around; align-items: center; background:#fff; }
.marquesTitleLine1 { display: block; text-transform: uppercase; transition:transform .3s ease .1s; }
.marquesTitleLine2 { font-weight: normal; display: block; transition:transform .3s ease 0s; }
.marquesTitle i { position:absolute; bottom:0; left:50%; margin-left:-.45em; transform:scale(0); border-radius:50%; box-shadow:inset 0 0 0 1em #000; transition:transform .3s ease 0s, box-shadow .3s ease 0s; width:1em; height:1em; line-height: 1; }
.marques:hover .marquesTitle i { transform:scale(.5); box-shadow:inset 0 0 0 0 #000; transition:transform .3s ease .2s, box-shadow .3s ease .2s; }
.marques:hover .marquesTitle .marquesTitleLine1 { transform:translateY(-.5em) }
.marques:hover .marquesTitle .marquesTitleLine2 { transform:translateY(-.75em) }

.largeur {max-width:1900px; margin:auto; }

.btnImg { display:block; padding:4em; text-align: center; background-color: #0b545e; color:#fff; margin:1.3em auto; background-size:cover; background-position: center center; border-radius:2px; position: relative; box-shadow:0 4px 8px rgba(0,0,0,0.1); }
.btnImg:before { content:""; position:absolute; left: 0; right:0; top:0; bottom:0; transform:scale(.5); opacity:0; transition:transform .3s ease, opacity .3s ease; background:rgba(0, 129, 153, 0.25); }
.btnImg:hover:before { opacity:1; transform:scale(1); }

.homeActus { border:4px solid #d4b790; padding:2em; text-align: center; box-shadow:0 4px 8px rgba(0,0,0,0.1); }
.blocTitle { margin: 0; font-size: 2.5em; font-weight: bold; letter-spacing: .03em; margin-bottom:.75em; }
.title { display:block; line-height: 0.9; margin-bottom: .2em; }
.subtitle { display: block; font-size: .5em; font-family: 'rakesly'; font-weight: normal;  letter-spacing: .01em; }
.btns { margin-top:2em; }

.btnImgTxt { margin: 0; font-size: 3.9em; font-weight: bold; letter-spacing: .03em; margin-bottom:.75em; position: relative; }
.btnImgTitle { display:block; }
.btnImgTitle:before { content: "\f111"; font-family: FontAwesome; color: #ad1a38; font-size: 0.22em; margin-right: 0.3em; display: inline-block; vertical-align: middle; }
.btnImgTitle:after { content: "\f111"; font-family: FontAwesome; color: #ad1a38; font-size: 0.22em; margin-left: 0.3em; display: inline-block; vertical-align: middle; }
.btnImgSubtitle { display: block; font-size: .32em; font-family: 'rakesly'; margin-top:.6em; font-weight: normal; letter-spacing: .01em; }
.btnImg1 { background-image: url(../img/photo02.jpg); }
.btnImg2 { background-image: url(../img/photo03.jpg); padding:8em 4em; }
.btnImg3 { background-image: url(../img/photo09.jpg); }
.btnImgTitle2 { font-weight:normal; font-size: .9em; }

.btnWhite { border-color:#fff; color:#fff;}
.btnWhiteAlt { border-color:#fff; color:#fff;}
.btnWhite:before { border-color:#fff; }
.btnWhite:hover:before { width:16px; height:16px; margin:-8px 0 0 -8px; border:1px solid rgba(255,255,255, 0.07); }

.btn .pic-right { font-size: 2.6em; margin: -.7em .2em; top: .03em; position: relative; display: inline-block; vertical-align: middle; }

.parent { display: flex; align-items: center; }
.tier { width:33%; }
.tier2 { width:67%; }

.noborder { border:0; }

.square { border:1px solid #000; margin:0 3em; box-shadow:0 0 0 1px rgba(0,0,0,.3); border-radius: 1px; padding:2em; text-align: center; position: relative; }
.squareIcon { position: absolute; left:50%; padding:.25em; background: #fff; top:-.8em; font-size: 2.3em; transform:translateX(-50%); }
.pretitle { display:block; font-family: louis; color:#d4b790; text-transform: uppercase; font-size: .3em; margin-bottom: 0.5em; font-weight: normal; margin-top: 1em; }
.infos { letter-spacing: .01em; margin-bottom:1.75em; margin-top:-.75em; }

.totop { margin:7em 0 3em 0; text-align: center; padding-right:40px; }
#toTop { font-family: louis; color:#008199; border:1px solid #008199; border-radius: 5px; display: inline-block; padding:1em; font-size: .7em; letter-spacing: .03em; text-transform: uppercase; position:relative;  }
#toTop:before { position:absolute; content:"\e997"; font-family: icomoon; left:50%; bottom:100%; font-size: 3em; margin: 0 0 -.12em -.5em; transition: margin .3s ease; }
#toTop:hover:before { margin-bottom:.15em; }

.section { transform: translateY(5em); transition: transform .2s ease 0s; }
.sectionCurrentOn { transform: translateY(0); transition: transform 1s ease 0s; }

.homeActusWrapper { display:flex; justify-content: space-around; margin:2em 0; align-items: stretch; }
.sep:last-child { display:none; }
.actuTeaserPhoto { float:left; width:40%; margin-right:5%; }
.actuTeaserContent { float:left; width:55%; text-align: left; }
.actuTeaser { margin:0 2%; color:#000; }
.actuTeaser2 { color:#000; }
.sep { min-width:3px; width:3px; background: #d4b790; }

.time { display:block; font-family: louis; color:#d4b790; text-transform: uppercase; font-size: .9em; margin-bottom: 0.5em; font-weight: normal;  }

.blocProducts { background: #008098; padding:5em 3em; color:#fff; box-shadow: 0 4px 8px rgba(0,0,0,0.1); }
.blocProducts > .largeur { display:flex; align-items: center; }
.blocProductHeader { min-width:210px; }
.blocProductItems { width:85%; display:flex; align-items: stretch; justify-content: space-between; }

.smallTitle { margin:.7em 0; font-size: 1.6em; letter-spacing: .03em; }
.produit { color:#000; background:#fff; padding:.5em 1.5em 1.5em; margin:0 2%; box-shadow:10px 10px 50px rgba(0,0,0,.1); max-width:21%; position: relative; }
.produit:nth-child(2):before { content:""; position:absolute; width:153px; height:90px; right:-46px; bottom:-24px; background: url(../img/produit01.png); }
.produit:nth-child(3):before { content:""; position:absolute; width:114px; height:92px; right: -27px; bottom: -20px; background: url(../img/produit02.png); }
.produit:nth-child(1):before { content:""; position:absolute; width:69px; height:142px; right: 2px; bottom: -62px; background: url(../img/produit03.png); }
.produit:nth-child(4):before { content:""; position:absolute; width:123px; height:119px; right: -30px; bottom: -38px; background: url(../img/produit04.png); }

.path-notfront #header:before{ content: ""; right: 50px; height: 130px; position: absolute; left: 0; top: 50px; background: #009cb5; box-shadow: 2px -2px 2px rgba(0,0,0,.1); }
.path-notfront a.menuBtn{ color:#009cb5; background: #fff;  }
.path-notfront a.menuBtn:hover{ color:#fff; background:#009cb5; }
.path-notfront #searchToggler{ color:#fff; text-shadow: none; }
.path-notfront #searchToggler:hover{ color:rgba(255,255,255,.7); }
.topOn .path-notfront #header:before{  display: none; }
.topOn .path-notfront #searchToggler{ color:#009cb5; }
.topOn .path-notfront #searchToggler:hover{ color: #0bbddc; }
.topOn .path-notfront a.menuBtn{ background:#009cb5; color: #fff;  }
.topOn .path-notfront a.menuBtn:hover{ color:#009cb5; background: #fff; }
.path-notfront #content { padding-top:180px; }
.user-login-form { padding:2em; }
.path-notfront .totop { display:none; }

#header .main-menu > .menu > .menu-item--active-trail > a:before { transform: scale(2); }

.mainHeader { background: #009cb5; color:#fff; padding:1.4em 2em; box-shadow: 0 0 2px 2px rgba(0,0,0,.1);}
.mainHeaderInner { float:right; }
.mainTitle { margin:0; letter-spacing: .05em; font-size: 3.3em; font-weight: bold;}
.mainSubTitle { margin:0; font-style: italic;  letter-spacing: .03em; font-weight: normal; font-size: 1.6em; }
.mainSubTitle:before { content: "\f111"; font-family: FontAwesome; color: #ad1a38; font-style: normal; font-size: .3em; display: inline-block; vertical-align: middle; margin-right: 1.5em; margin-bottom: 1.3em; }

.bc { text-transform: uppercase; font-family: 'louis'; padding:1em 0; color:#ad1a38; letter-spacing: .05em; font-size: .7em; border-bottom:1px solid rgba(0,0,0,.1); }
.bc a { color:#ad1a38 }
.bc a:hover { color:#000; }

.body { text-align: center; padding:1.5em 0 3em; max-width:710px; margin:auto; }
.rte { font-size: 1.2em; }
.rte h3 { font-size: 2em; }

.services { display:flex; text-align: center; }
.service { flex-basis:16.66%; padding:0 1em;  }

.service i { font-size: 4.5em; color:#ad1a38; }
.serviceTitle { color:#009cb5; text-transform: uppercase; max-width: 160px; margin:1em auto; font-size:1.4em; min-height: 2.8em; }
.serviceSubTitle { display: block; text-transform: none; font-size: .7em; }
.serviceInfos { letter-spacing: .03em; max-width: 200px; margin:1em auto; }
.serviceInfos p:after { content: "\f111"; font-family: FontAwesome; color:#d4b790; font-style: normal; font-size: .4em; display:block; margin-top:2.2em; }
.serviceInfos p:last-child:after { display: none; }

.tab { animation:menu 1s ease 0s 1;  }
.rte strong { font-weight: normal; color:#009cb5; }
.rte a {  color:#009cb5; border-bottom: 1px solid rgba(0,0,0,.1); }
.rte a:hover {  color:#0badcc; border-bottom: 1px solid #0badcc; }
.tab17 ul:last-child { display: flex; flex-wrap: wrap; padding: 0; list-style:none; }
.tab17 ul:last-child li { flex-basis:29.33%; margin:2%; }
.tabs {  background: linear-gradient(to bottom, rgba(0,0,0,0.07) 0%,rgba(0,0,0,0) 100%); }

.photobloc { padding:1.5em 3em; background-size: cover; background-position: center center;  }
.photoblocInner { width:300px; background:#ad1a38; color:#fff; text-align: center; padding:2em; box-shadow: 10px 10px 12px rgba(0,0,0,.1); }
.photoblocInner i { font-size: 4.5em; }
.photoblocInner h3 { text-transform: uppercase; margin:.5em auto 1.3em; font-size:1.4em; max-width: 220px; }
.photoblocInner p:after { content: "\f111"; font-family: FontAwesome; color:#d4b790; font-style: normal; font-size: .4em; display:block; margin-top:2.2em; }
.photoblocInner p:last-child:after { display: none; }
.photoblocInner p {letter-spacing: .03em; max-width: 120px; margin:1em auto; }

.tabNav { text-align: center; background:#fff; }
.tabNavItem { display: inline-block; padding: 1.7em 2em; color: #000; opacity:.4; font-family: 'louis'; letter-spacing: .02em; text-transform: uppercase;  font-size: .9em;  position: relative; overflow: hidden; }
.tabNavItem:before { content: "\f111"; line-height: 1; font-family: FontAwesome; color: #ad1a38; font-size: .45em; position: absolute; top: 100%; transition: top .3s ease; left: 50%; }
.tabNavItem:hover:before { top: 80%; }
.tabNavItem:hover { opacity:1; }
.tabNavCurrent:before { top: 80%; }
.tabNavCurrent { opacity:1; }

.colonnes { display: flex; flex-wrap: wrap; justify-content: center; max-width:1700px; margin:1em auto 3em auto; text-align: center; }
.colonne { flex-basis: 22%; border-right:1px solid #0bbddc; padding:0 1em; font-family: 'louis'; font-size:1em; line-height: 1.5; }
.colonne a {color:#000; }
.rte h4 { text-transform: uppercase; font-family: 'rakesly'; color:#009cb5; letter-spacing: .02em; font-size: 1.2em; }
.colonne a:hover { color:#ad1a38; border-color :#ad1a38; }
.colonne:nth-child(4n) { border-right:0; }

.mapWindow {  background:#ad1a38; color:#fff; text-align: center; padding:2em; box-shadow: 10px 10px 12px rgba(0,0,0,.1); position: absolute; z-index: 2; left:3em; top:50%; transform: translateY(-50%); letter-spacing: .03em; width:300px; font-size: 1.1em; }

.action22 { float: right; width: 360px; margin:5em  3em; }

.formulaire23 { padding-right:500px; margin-right:-500px; width:100%; margin-bottom:6em; }
.formulaire h2 { text-transform: uppercase; color:#009cb5; margin:2em 0 1em; letter-spacing: .03em; }

button.btn { background: none; font-size: .9em; margin:2em 0; }

.form-item { margin:1em 0; font-size: 1.2em; }
.form-text { border:0; border-bottom:1px solid #000; font-family: 'rakesly';  padding:.3em; width:100% }
.form-email { border:0; border-bottom:1px solid #000; font-family: 'rakesly';  padding:.3em; width:100% }
.form-tel { border:0; border-bottom:1px solid #000; font-family: 'rakesly';  padding:.3em; width:100% }
.form-textarea { border:0; border-bottom:1px solid #000; font-family: 'rakesly';  padding:.3em; height:2em; width:100% }
.formulaire23 .js-form-item-nom { width:31.83%; margin-right:3%; float: left; }
.formulaire23 .js-form-item-prenom { width:31.83%; margin-right:3%; float:left; }
.formulaire23 .js-form-item-email { width:31.83%; margin-right:3%; float:left; clear:left; }
.formulaire23 .js-form-item-telephone { width:31.83%; margin-right:3%; float:left; }
.formulaire23 .js-form-item-adresse { clear:left; float:left; width:100%; }
.formulaire23 .js-form-item-votre-message { clear:left; float:left; width:100%; }
.formulaire23 .js-form-item-code-postal { width:31.83%; margin-right:3%; float: left;  clear:left; }
.formulaire23 .js-form-item-ville { width:31.83%; margin-right:3%; float: left; }
.formulaire23 .js-form-item-pays { width:30.34%; float: left; }
.formulaire23 .js-form-type-webform-markup { clear:left; padding-top:1em; margin-bottom:0; }
.formulaire23 .js-form-type-checkbox { display: inline-block; margin-right:2em; }
.option {  position: relative; margin-left:.5em; cursor: pointer; }
.option:before { content:""; width:1em; height:1em; border:1px solid #000; transition:box-shadow .3s ease; border-radius: 3px; position: absolute; left:-1.5em; top:.1em; }
.form-checkbox { visibility: hidden; }
.form-radio { visibility: hidden; }
.js-form-type-radio .option:before { border-radius: 50%; }
.form-checkbox:checked + .option:before { box-shadow:inset 0 0 0 4px #fff, inset 0 0 0 15px #ad1a38; }
.form-radio:checked + .option:before { box-shadow:inset 0 0 0 4px #fff, inset 0 0 0 15px #ad1a38; }
.js-webform-type-radios legend { display:none; }
.webform-radios-other legend { display:none; }
.js-webform-radios-other-input { display:none; }
.js-webform-radios-other-input label { display:none; }

.webform-confirmation { text-align: center; padding:3em 1em; font-size: 1.3em; }
.webform-confirmation__back{ margin-top:.3em; }
.webform-confirmation__back a { color:#ad1a38; border-bottom:1px solid #ddd; }
.webform-confirmation__back a:hover { border-color:#ad1a38; }

.formulaire24 { text-align: center; max-width: 1200px; margin:0 auto 5em; }
.formulaire24 .webform-type-checkboxes legend{ display:none; }
.formulaire24 h2 { margin-bottom: 0; }
.formulaire24 .js-form-type-webform-markup { margin-top:5em; }
.formulaire24 .js-form-type-webform-markup:first-child { margin-top: .2em; }
.js-form-type-managed-file .form-submit-action { display:none; }
.formulaire24 #edit-civilite--wrapper { width:31.33%; margin-right:3%; float:left; text-align: left; }
.formulaire24 .form-item-civilite { float:left; width:48%; margin-right:4%; margin-top: 0.3em; }
.formulaire24 .form-item-civilite:last-child { margin-right:0; }
.formulaire24 .js-form-item-nom { width:31.33%; margin-right:3%; float:left; }
.formulaire24 .js-form-item-prenom { width:31.33%; float:left; }
.formulaire24 .js-form-item-email { width:31.33%; margin-right:3%; float:left; }
.formulaire24 .js-form-item-telephone { width:31.33%; float:left; }
.formulaire24 .js-form-item-adresse { clear:both; }
.formulaire24 .js-form-item-code-postal { width:31.33%; margin-right:3%; float:left; }
.formulaire24 .js-form-item-ville { width:31.33%; margin-right:3%; float:left; }
.formulaire24 .js-form-item-pays { width:31.33%; float:left; }
.formulaire24 .js-form-item-votre-message { clear:both; }
.formulaire24 #ajax-wrapper { float:left; width:48%; margin-right:4%; }
.formulaire24 #ajax-wrapper--2 { float:left; width:48%; }
.formulaire24 #edit-markup-03 { clear:both; margin-top:0; padding-top:5em; }
.formulaire24 .description { font-size: .8em; padding-top:.5em; opacity: .7; }
.formulaire24 .js-form-type-checkbox { display: inline-block; margin-right: 2em; }
.formulaire24 .form-item-comment-avez-vous-connu-catequip-radios { display: inline-block; margin-right: 2em; }
.formulaire24 .js-form-type-checkbox:last-child { margin-right: 0; }
.formulaire24 .form-item-comment-avez-vous-connu-catequip-radios:last-child { margin-right: 0; }
.formulaire24 .form-item .form-item { font-size: 1em; }

.form-file { border:1px solid #000; padding:.5em; }

.square1 { background: url(../img/photo10.jpg) left bottom no-repeat; padding-left: 10em; }
.square1 .squareIcon { left: 62%; }

.actuTop { text-align: center; margin-top:3em; }
.actuDetail .btns { text-align: center; margin-bottom:3em; padding-right:50px; }
.actuDetail .mainContent { padding-right:50px; position: relative; }
.retitle { font-size:2em; font-weight: bold; max-width: 500px; margin:0 auto 1em; }
.photoIntro { max-width:640px; margin:1em auto; text-align: center; }
.rteAlt {  padding: 0.1em 0 0.1em; max-width: 500px; margin: auto; }
.rteAlt a[href^=http] { color:#ad1a38; letter-spacing: .2em; text-transform: uppercase; font-family: 'louis'; font-style: normal; font-size: .7em }
.rteAlt a[href^=http]:hover { border-color:#ad1a38; }
.rteAlt a[href^=http]:focus { border-color:#ad1a38; }
.rteAlt a[href^=mailto] { color:#000; }

.prevActu { color:#ad1a38; letter-spacing: .2em; text-transform: uppercase; font-family: 'louis';  font-size:.85em; position: absolute; bottom:50%; left:0; animation:fade 1s ease 1s 1; animation-fill-mode: backwards;  }
.prevActu i { font-size: 2.1em; position:relative; top:.17em; padding:0 .5em; transition:transform .3s ease; }
.prevActu:hover i { transform:translateX(-.25em); }
.prevActu:focus i { transform:translateX(-.25em); }
.prevActu.prevActuNext { left:auto; right:0; }
.prevActu.prevActuNext:hover i { transform:translateX(.25em); }
.prevActu.prevActuNext:focus i { transform:translateX(.25em); }

.allActus .btns { text-align: center; margin-bottom:3em; }

.actus { display: flex; width:100%; justify-content: space-between; max-width:1900px; margin:3em auto 0;  }
.actuWrapper { flex-basis: calc(33% - 1em); }
.actuTeaser2 { flex-basis: calc(33% - 1em); }
.actuWrapper:first-child .actuTeaser2Photo { padding-bottom: 103%; }
.actuTeaser2Photo { padding-bottom: 48.1%; background-size: cover; background-position: center center; margin-bottom:1em;  }
.actusTitle { color:#009cb5; font-size: 2.3em; letter-spacing: .03em; max-width: 270px; margin: 0 0 0.5em; }
.actuTeaser2 .infos { margin-bottom:.5em; }
.actuTeaser2 { margin-bottom:1.5em; display:block; }
.actuTeaser2 .smallTitle { margin-top:0; }

.produits { display: flex; width:100%; justify-content: space-between; max-width:1900px; margin:2.1em auto 0;  }
.produitsWrapper1 { flex-basis: calc(33% - 1em); }
.produitsWrapper2 { flex-basis: calc(67% - 1em);}
.produitsWrapper3 { display: flex; justify-content: space-between;   }
.produitsWrapper3 .actuTeaser2 { flex-basis: calc(50% - 1em) }
.produitsWrapper5 { flex-basis: 100%; display: flex;justify-content: space-between; flex-wrap: wrap;   }
.produitsWrapper5 .actuTeaser2 { flex-basis:calc(33% - 1em)   }
.produitsWrapper1 .actuTeaser2Photo { padding-bottom:130%; }
.produitsWrapper4 .actuTeaser2Photo { padding-bottom:28.4%; }

.wait { height:30vh; animation:tilt 1s linear 0s infinite; background: linear-gradient(to right, #efefef 0%,#efefef 32%,#ffffff 32.1%,#ffffff 34%,#efefef 34%,#efefef 34.1%,#efefef 65%,#ffffff 65.1%,#ffffff 67%,#efefef 67.1%,#efefef 100%); }
@keyframes tilt {
    0% { opacity:.5; }
    50% { opacity:1; }
    100% { opacity:.5; }
}

.listes { max-width:1200px; margin:3em auto 0; display: flex; flex-wrap: wrap; justify-content: center; }
.liste { flex-basis: 20%; max-width:20%; margin-bottom:3em; padding:0 2em; border-right: 1px solid #0bbddc; }
.liste:nth-child(5n) { border-right: 0; }
.liste:last-child { border-right: 0; }
.listeLogo { text-align: center; display: flex; align-items: center; flex-direction: column; height:100px; justify-content: center; }
.listeTitle { margin-top:2em; font-weight:bold; margin-bottom:0; font-size: 1.2em; letter-spacing: .03em; }

.page19 .downloads { background-image: url(../img/photo10.jpg); background-size: auto auto; background-position: left bottom; background-repeat:no-repeat; border:1px solid #000; box-shadow: 0 0 0 1px rgba(0,0,0,.3);    padding: 1.5em 3em; }
.downloads { position: relative; padding:0; }
.downloads .squareIcon { display:none;}
.page19 .downloads .squareIcon { display:block;}
.downloads .photoblocInner { margin:auto; background: #009cb5; position: relative; width:800px; max-width: 100%; }
.downloads a { font-style: normal; color:#fff; display:block; background:rgba(255,255,255,.1); padding:1em; text-align: left; padding-right:50px; position: relative; font-size: 1.1em; letter-spacing: .02em; }
.downloads a:after { content:"\f0ab"; font-family: FontAwesome; position:absolute; right:.5em; top:.5em; font-size: 1.5em; opacity: .7; transition:opacity .3s ease; }
.downloads .photoblocInner p { max-width:none; }
.downloads .photoblocInner p:after { display:none; }
.downloads a:hover:after { opacity:1; }
.downloads a:hover { background:rgba(255,255,255,.2); }
.downloads a:focus { background:rgba(255,255,255,.2); }

.liens { margin:3em auto; max-width:1900px; display: flex; justify-content: space-between; flex-wrap: wrap; }
.lien { flex-basis: calc(50% - 2em); margin-bottom:4em; overflow: hidden; }
.lienInner { display:block; background-size: cover; background-position: center center; padding-bottom:50%; position: relative; }
.lienInnerInner { background: #fff; position:absolute; left:0; bottom:0; padding:2em 1em; width:400px;   box-shadow:0 0 0 50vw rgba(0,0,0,0); transition: box-shadow .5s ease;}
.lienInnerInner h3 { color:#000; font-size: 2em; letter-spacing: .03em; margin: 0; }
.lienInnerInner p { color: #000;  margin-top: 0.2em; }
.lienInnerInner .btn { display:none; }
.lienInner:hover .btn { display:inline-block; animation: fade .5s ease 0s 1; }
.lienInner:hover .lienInnerInner { box-shadow:0 0 0 50vw rgba(0,0,0,.3); }


.pager { margin-top:2em; }
.pager li { display:inline-block; padding:0; }
.pager li:before { display:none; }
.pager a { display: inline-block; background:rgba(255,255,255,.8); font-weight: bold; color:#009cb5; height:2em; line-height: 2.4; width:1.5em; text-align: center; border-radius: 3px; box-shadow: 0 3px 2px rgba(0,0,0,.1); }
.pager a:hover { background:#fff; color:#009cb5; }
.pager a:focus { background:#fff; color:#009cb5 }

.search-results li { margin-bottom:.5em; padding:1em; border:1px solid #000; box-shadow: 0 0 0 1px rgba(0,0,0,.3); list-style: none;  }
.search-results { margin:0 auto; padding: 0; max-width: 1900px; }
.search-results a { color:#ad1a38; border-bottom:1px solid rgba(0,0,0,.1); }
.search-results a:hover { border-color:#ad1a38; }

#main .blocProducts { margin:3em auto; max-width:1900px; }
.produitDetail .body{ padding-bottom:1em; }

.separator { height:1px; background:rgba(0,0,0,.1); max-width:90%; width:1200px; margin:3em auto;  }
.separator + .body { margin-top:-3em; }


.ficheLeft { width:470px;}
.ficheRight { position:absolute; top:0; right:0; height: 100%; width: calc(100% - 470px - 2em); overflow: hidden; }
.ficheRight:after { content:""; width:100%; height:100px; position: absolute; top:100%; left:0; box-shadow:0 0 210px rgba(0,0,0,0.6), 0 0 50px rgba(0,0,0,0.2); z-index: 3; }
.fiche { position:relative; min-height:70vh; max-width: 1900px; margin: auto;}
.fiche .body { text-align: left; padding-bottom: 0; }
.fiche .tabs { display:flex;  flex-direction: column; height:100%; background: #f2f2f2;}
.fiche .tabNav { flex-basis:70px;  }
.fiche .tabInner { flex-basis:100%; overflow-y: auto; overflow-x: hidden; }
.ficheLeft:last-child { width:auto; }

.js-form-type-webform-markup a { color:#009cb5; border-bottom:1px solid rgba(0,0,0,.1); }
.js-form-type-webform-markup a:hover { border-color:#009cb5; }
.js-form-type-webform-markup a:focus { border-color:#009cb5; }

.rgpd { padding: 1em; border: 1px solid #000; }

.tab121 img { margin: 0 1em; }

.intro { text-align: center; padding: .1em; border-bottom:1px solid rgba(0,0,0,.1); margin:0 2em; font-size: 1.2em; letter-spacing: .05em; }
.intro strong { color:#009cb5 }
.intro a { color:#000; border-bottom:1px solid rgba(0,0,0,.1) }
.intro a:hover { border-color :#009cb5; }

.ficheproduit { margin:0 2em; padding:2em 0; border-bottom:1px solid rgba(0,0,0,.1); }
.ficheproduitInner { max-width:700px; margin:auto; }
.ficheproduitLeft { float:left; width:30%; padding:0 1em 0 0; text-align: center; }
.ficheproduitRight { float:left; width:70%; padding-bottom:3em; }
.ficheproduitRight h3 { margin: .5em 0 0; font-size: 1.6em;}
.ficheproduitTxt { font-size: 1.2em; }
.ficheproduitTxt p:first-child{ margin-top:0; }
.ficheproduitTxt strong { font-weight: normal; color:#009cb5; }
.ficheproduitTxt ul { padding:0; }
.ficheproduitTxt li { position: relative; padding-left:1em; list-style: none; }
.ficheproduitTxt li:before { content:""; display: block; width:3px; height:3px; border-radius: 50%; background: #000; position: absolute; left:3px; top:.5em; }
.ficheproduitTxt a { color:#000; border-bottom:1px solid rgba(0,0,0,.1) }
.ficheproduitTxt a:hover { border-color :#009cb5; }

.produitsWrapper3:last-child { display: block;}
.produitsWrapper3:last-child .actuTeaser2Photo { padding-bottom: 25.9%; }

.actuTeaser2Photo { position: relative; }
.actuTeaser2Photo:after { content:""; position:absolute; left:0; top:0; width:100%; height:100%; background: rgba(0, 156, 181, 0.16); transition:opacity .2s ease; opacity:0; }
.actuTeaser2Photo:hover:after { opacity: 1; }

.rte iframe { max-width: 100%;}

.paragraph--type--liste-de-photos { text-align: center; }
.paragraph--type--liste-de-photos img {  display: inline-block; margin:1em; }

.titremarque { text-align: center; margin-top:2em;  font-size: 2em; }

/* ==========================================================================   Media Queries   ========================================================================== */
@media only screen and (max-width: 1445px) {
    #content { padding: 30px 30px 0 60px; }
    #header .logoRow { padding: 45px 15px 15px 75px; width: 160px; height: 130px; }
    #header .logoRow:before { width:100px; height:100px; }
    .language-switcher a { height: 30px; line-height: 17px; }
    .language-switcher .active a:before { top: 69%;  }
    .language-switcher a:hover:before { top: 69%;  }
    #menuLeft { width:60px; }
    #menuLeft li a { height: 60px; line-height: 60px; }
    .stickyInner ul { height:60px; }
    #menuLeft { padding-top:80px;}
    #menuLeft .rsContainer { padding-top: 670px; }
    .topOn #header { left:60px; }
    .searchOn .topsearch { right: 30px; }
    #topsearchInput { padding: 0.1em 0.3em 0.2em; height: 30px; }
    .topsearch button { padding: 0.2em 0.8em; height: 30px; box-shadow: none; }
    #nav { right: 30px; top: 30px; }
    .blockLng { right:30px; }
    #searchToggler { text-shadow:3px 3px 16px rgba(0, 0, 0, 0.75); }
    #header .main-menu > .menu > li > a { padding:1.7em 0.8em; }
    .totop { padding-right:30px; }
    .topOn #header { height:66px; }
    .topOn #nav { top: 0; }
    .topOn #header .logoRow {  padding: 8px; width: 66px; height: 66px;  }
    .produit:nth-child(4):before { background-size: contain; background-repeat: no-repeat; width: 94px; height: 113px; right: -29px;    bottom: -40px; }
    .produit:nth-child(3):before { background-size: contain; background-repeat: no-repeat; width: 84px;height: 66px; right: 2px; bottom: -11px; }
    .produit:nth-child(1):before { background-size: contain; background-repeat: no-repeat; width: 69px; height: 110px; right: -14px; bottom: -21px; }
    .produit:nth-child(2):before { background-size: contain; background-repeat: no-repeat; width: 107px; height: 62px; right: -13px; bottom: -25px; }
    .path-notfront #header:before { right: 30px; height: 100px; top: 30px; }
    .path-notfront #content { padding-top: 130px; }
    .actuDetail .mainContent { padding-right:30px; }
    .actuDetail .btns { padding-right:30px; }
    .blocsFocus .tier{ float:none; width:auto; margin:3em auto; }
    .blocsFocus .tier2 { float:none; width:auto; margin:3em auto; }
}
@media only screen and (max-width: 1325px) {
    body { font-size: .9em; }
    .stickyInner ul { width: 623px; }
    #menuLeft { padding-top: 103px; }
    #menuLeft .rsContainer { padding-top: 578px; }
    .blocProducts{ padding: 4em 1.6em; }
    .smallTitle { font-size:1.4em; }
    .btnImg2 { padding:6em 4em; }
    #footer { font-size:.9em; }
    #footer li a { display: inline-block;  margin: 0.3em auto; }
    .topOn #header { height:59px; }
    .topOn #header .logoRow {  padding: 6px; width: 59px; height: 59px;  }
    .action22 {  width: 320px; }
    .ficheLeft { width: 33%;}
    .ficheRight { width: calc(67% - 2em); }
}
@media only screen and (max-width: 1205px) {
    #nav { font-size: .9em; }
    .homeHeader { padding: 30px 40px; }
    .blocProducts > .largeur { display: block; }
    .blocProductHeader { text-align: center; margin-bottom: 2em; }
    .blocProducts { padding: 1.5em 1.4em; }
    .blocProductItems { width: auto; }
    .smallTitle { font-size: 1.2em; }
    .menuZone6 { width: 27%; }
    .menuZone5 { width: 15.5%; }
    .topOn #header { height:53px; }
    .topOn #header .logoRow {  padding: 4px; width: 53px; height: 53px;  }
    .produit:nth-child(4):before { background-size: contain; background-repeat: no-repeat; width: 67px; height: 62px; right: -28px; bottom: -11px;}
    .produit:nth-child(3):before { background-size: contain; background-repeat: no-repeat; width: 68px; height: 54px; right: 2px; bottom: -7px; }
    .produit:nth-child(1):before { background-size: contain; background-repeat: no-repeat; width: 39px; height: 62px; right: -4px; bottom: -12px; }
    .produit:nth-child(2):before { background-size: contain; background-repeat: no-repeat; width: 77px; height: 62px; right: -13px; bottom: -25px; }
    .liste { flex-basis: 25%; max-width:25%; }
    .liste:nth-child(5n) { border-right: 1px solid #0bbddc; }
    .liste:nth-child(4n) { border-right: 0; }
    .liste:last-child { border-right: 0; }
    .blocsFocus { display:block; }
    .square1 .squareIcon { left:50%; }
}
@media only screen and (max-width: 1110px) {
    #content { padding: 20px 20px 0 40px; }
    #header .logoRow { padding: 30px 10px 10px 50px; width: 120px; height: 100px; }
    #header .logoRow:before { width:80px; height:80px; }
    .language-switcher a { height: 20px; line-height: 7px; }
    .language-switcher .active a:before { top: 61%;  }
    .language-switcher a:hover:before { top: 61%;  }
    #menuLeft { width:40px; }
    #menuLeft li a { height: 40px; line-height: 40px; }
    .stickyInner ul { height:40px; }
    #menuLeft { padding-top:60px;}
    .topOn #header { left:40px; }
    .searchOn .topsearch { right: 20px; }
    #topsearchInput { height: 20px; }
    .topsearch button { height: 20px;  }
    #nav { right: 20px; top: 20px; }
    .blockLng { right:20px; }
    .totop { padding-right:20px; }
    #header .main-menu{ font-size:.9em; }
    #header .main-menu > .menu > li > ul { width:180px; margin-left:-90px; }
    .language-switcher img { width: 14px; }
    .homeHeaderInner { font-size: 0.7em; }
    #menuLeft { padding-top: 72px; }
    #menuLeft .rsContainer { padding-top: 599px; }
    .blocTitle { font-size: 1.8em; }
    .subtitle { font-size: .5em; }
    .sliderMarques img {  max-width: 11%; }
    .sliderMarques { padding: 0 1em; }
    .btnImg2 { padding: 4em 1em; }
    #footer .logoRow { width: 70px; margin-left: -35px; padding: 11px; }
    .menuZone1 { position: absolute; right: 1em; bottom: 1em; width:auto; }
    .menuZone6 { display: none; }
    .menuZone2 { width: 20%; }
    .menuZone3 { width: 20%; }
    .menuZone4 { width: 20%; }
    .menuZone5 { width: 40%; }
    .contactLink { width: 90px;  bottom: -69px; }
    .path-notfront #header:before { right: 20px; height: 80px; top: 20px; }
    .path-notfront #content { padding-top: 100px; }
    .action22 {  width: 240px; }
    .formulaire23 { padding-right: 340px; margin-right: -340px; }
    .prevActu { bottom: -3.7em; }
    .actuDetail .mainContent { padding-right:20px; }
    .actuDetail .btns { padding-right:20px; }
}
@media only screen and (max-width: 1010px) {
    .serviceLabel { display:none; }
    .btnImgTitle2 { font-size: 0.7em;  display: block; line-height: 1.2; }
    .services { flex-wrap: wrap }
    .service { flex-basis:33.333%; margin-bottom:3em;  }
    .liens { justify-content: center; }
    .lien { flex-basis: 100%; max-width:800px; }
}
@media only screen and (max-width: 925px) {
    #nav { display:none; }
    #menuLeft { display:none; }
    .language-switcher { display:none; }
    #content { padding: 10px; }
    #header .logoRow { padding: 20px 10px 10px 20px; width: 90px; height: 90px; }
    .contactLink { width: 90px; bottom: 5px; right: 5px; }
    .homeHeaderInner { padding-top:0; }
    .homeHeaderInner:after { display:none; }
    .alerteInner { justify-content: center; }
    .alerte { padding:.5em; }
    .homeHeader { padding: 1em;  height: calc(100vh - 75px); align-items: center; text-align: center; font-size: 3vw; text-shadow: 3px 2px 10px rgba(0, 0, 0, 0.42); }
    .totop { margin: 5em 0 0 0; padding-right:0; }
    .topOn #header { left: 0; }
    .topOn #header .logoRow { margin-left: 6px; }
    #menuToggler { display: block; position: absolute; right: 10px; top: 10px; color: #fff; font-size: 2.3em; padding: .3em .5em; }
    #menuToggler:hover { opacity:.8; }
    .menuOn #menuToggler{ position: fixed; z-index: 150; right: 0; top: 0; padding: 0.21em 0.3em; color:#008098;}
    .menuOn.topOn #header{ animation:none;}
    #nav{ animation:none;}
    .menuOn { overflow: hidden; }
    .menuOn .language-switcher { display:block; animation:fade .5s ease 0s 1; }
    .menuOn #menuToggler i:before { content:"\f00d"; }
    .menuOn #nav { display:block; top:0; left:0; right:0; width:auto; height:auto; position: fixed; z-index: 149; bottom:56px; background: #fff; overflow-y:scroll; animation:menu .3s ease 0s 1; }
    #header .main-menu > .menu > li > a:before { display:none!important; }
    #header .main-menu { display: block; }
    #header .main-menu { display: block; }
    #header .main-menu > .menu > li:hover > ul { display:none; }
    #header .main-menu > .menu > li { display: block; }
    #header .main-menu > .menu > li > a { color:#000; display: block;  text-align: center;  border-bottom: 2px solid #e8e8e8; font-size: 1em; line-height: 1; padding: 2.1em 1em 1.8em; }
    #header .main-menu > .menu > li > a:hover { background:#f5f5f5; }
    .menuBtn { display: block; margin: 0; border-radius: 0; padding: 1.2em; text-align: center; font-size: 1em; box-shadow: none!important; }
    .menuBtn.bgred { margin-right: 0; }
    #searchToggler { text-shadow: none!important; padding: 0.9em; text-align: center;  width: auto; display: block; }
    .searchOn .topsearch { right: 0; padding-right: 15px;  top: 60px!important; }
    .menuOn #menuLeft { position:fixed; bottom: 0; left: 0; width: 100%; height: 56px; display: block; z-index:4; background: #008098; box-shadow: 0 0 23px 5px rgba(0, 0, 0, 0.26), 0 0 5px 0 rgba(0, 0, 0, 0.02); padding: 0; top: auto; text-align: center; animation:fade .3s ease 0s 1; }
    .sticky { position:static!important; width:auto!important; }
    .sticky + div { position:static!important; height:auto!important; }
    #topsearchInput { height: 58px; padding: 1.1em;  font-size: 1.1em; }
    .topsearch button { height: 58px; width: 50px; }
    .stickyInner { height: auto; }
    .stickyInner ul { height: auto; width: auto;  transform: none; display:inline;  }
    #menuLeft .rsContainer { padding-top: 0; }
    #menuLeft a { color:#fff; }
    #menuLeft .rsContainer a { display: inline-block; margin: 0 0.3em;  padding-right: 0;  color: #fff; }
    #menuLeft li a:before { display:none; }
    #menuLeft li:before { display:none; }
    #menuLeft a:hover { color:#fff; opacity: .7; }
    #menuLeft .rsContainer { padding-top: 6px; display: inline-block; vertical-align: middle; }
    #menuLeft li a {  display:inline-block;  height: auto; padding: .5em .5em 0; text-transform: uppercase; font-size: 0.73em; letter-spacing: .1em; line-height: 1; }
    .path-notfront #header:before { right: 10px; height: 80px; top: 10px; }
    .path-notfront #content { padding-top: 90px; }
    .topOn #menuToggler { right: 0; top: 0; padding: 0.21em 0.3em; color:#008098; }
    .colonne { flex-basis: 50%; }
    .colonne:nth-child(2n) { border-right: 0; }
    .action22 {  width: auto; float: none; }
    .formulaire23 { padding-right: 0; margin: 0 auto 4em; max-width: 90%; text-align: center; }
    .formulaire23 .js-form-item-nom { width: 48.5%; }
    .formulaire23 .js-form-item-prenom { width: 48.5%; margin-right:0; }
    .formulaire23 .js-form-item-email { width: 48.5%; }
    .formulaire23 .js-form-item-telephone { width: 48.5%; margin-right:0; }
    .actuDetail .mainContent { padding-right:0; }
    .actuDetail .btns { padding-right:0; }
    .ficheLeft { width: 38%;}
    .ficheRight { width: calc(62% - 0.5em);}
    .blockLng { right: 50%; bottom: -9px; z-index: 999; position: fixed; top: auto; transform: translateX(50%);}
    #menuLeft .sticky { max-width: 300px; margin: auto;}
}
@media only screen and (max-width: 750px) {
    .blocProductItems { flex-wrap: wrap; }
    .produit { min-width: 46%; margin-bottom: 1em; }
    .alerteLink { display: inline-block; }
    .alerteDetail { display: inline-block; }
    .alerteTitle { display: inline-block; }
    .marquesTitle { position: relative; transform: none; left: auto; top: auto;}
    .alerteInner { display:block; text-align: center; }
    .sliderMarques img { max-width: 24%; min-width: 24%; margin: 2%; }
    .marques { max-width: 380px; height: 50px; padding-bottom: 58%; box-sizing: content-box; }
    .marquesTitle:after {display:none; }
    .sliderRow { flex-wrap: wrap; position: absolute; left: 0; right: 0; top: 70px; height: auto; bottom: 0; }
    .sep { display: none; }
    .homeActusWrapper { display: block; }
    .infos { margin-bottom:.75em; }
    .actuTeaser {  display: block; margin: 0 0 2em; }
    .btnImgTitle {  font-size: 0.5em; }
    #footer .logoRow { display: none; }
    .menuZone1 { right: 50%; transform: translateX(50%); }
    .footerInner { display: block; }
    #footer { padding: 20px; }
    .menuZone3 { width: auto; display: block; text-align: center; margin-top: 1em; }
    .menuZone2 { width: auto; text-align: center; }
    .menuZone4 { width: auto; text-align: center; margin-top: 1em; }
    .menuZone5 { width: auto; text-align: center; margin-top: 1em; margin-bottom:2em; }
    .parent { display: block; }
    .tier { width: auto;  }
    .square { margin: 2em 0;}
    .tier2 { width: auto; }
    .blocProductHeader { min-width: 0; }
    .mapWindow { position: static; transform: none; width: auto; }
    .mapmap { position: relative; height: 300px; }
    .themap { height: auto; min-height: 0;}
    .formulaire24 #edit-civilite--wrapper { width:auto; margin-right:0; float:none; }
    .formulaire24 .js-form-item-nom { width:48%; margin-right:4%; float:left; }
    .formulaire24 .js-form-item-prenom { width:48%; float:left; }
    .formulaire24 .js-form-item-email { width:48%; margin-right:4%; float:left; clear:both; }
    .formulaire24 .js-form-item-telephone { width:48%; float:left; }
    .formulaire24 .js-form-item-adresse { clear:both; }
    .formulaire24 .js-form-item-code-postal { width:31.33%; margin-right:3%; float:left; }
    .formulaire24 .js-form-item-ville { width:31.33%; margin-right:3%; float:left; }
    .formulaire24 .js-form-item-pays { width:31.33%; float:left; }
    .formulaire24 .js-form-item-votre-message { clear:both; }
    .formulaire24 .form-item-civilite { margin-bottom: -.5em; }
    .formulaire24 #ajax-wrapper { float:none; width:auto; margin-right:0; }
    .formulaire24 #ajax-wrapper--2 { float:none; width:auto; }
    .formulaire24 .js-form-type-checkbox { display: block; margin-right: 0; }
    .formulaire24 .form-item-comment-avez-vous-connu-catequip-radios { display: block; margin-right: 0; }
    .actuDetail .mainContent { text-align: center; }
    .prevActu { position: static; display: inline-block; margin: 0 1em; }
    .actus { display: block; text-align: center; }
    .actusTitle { margin-left:auto; margin-right:auto; }
    .actuWrapper:first-child .actuTeaser2Photo { padding-bottom:48.1%; }
    .actuTeaser2 { margin-bottom:3em; }
    .liste { flex-basis: 33.3%; max-width:33.3%; }
    .liste:nth-child(4n) { border-right: 1px solid #0bbddc; }
    .liste:nth-child(3n) { border-right: 0; }
    .liste:last-child { border-right: 0; }
    .lienInnerInner { position: static; width:auto; }
    .lienInnerInner .btn { display:inline-block; }
    .lienInner:hover .btn { animation:none; }
    .produits { display: block; text-align: center; }
    .produitsWrapper3 { display: block;  }
    .produitsWrapper5 { display: block;  }
    .produitsWrapper5 .actuTeaser2 { flex-basis:calc(33% - 1em)   }
    .produitsWrapper1 .actuTeaser2Photo { padding-bottom:48.1%; }
    .produitsWrapper4 .actuTeaser2Photo { padding-bottom:48.1%; }
    .ficheRight { width: auto; position: static;  height: auto;}
    .ficheLeft { max-width: 500px; margin: auto; width: auto;}
    .produitsWrapper3:last-child .actuTeaser2Photo {    padding-bottom: 48.1%; }
    .ficheRight:after { display:none; }
}
@media only screen and (max-width: 535px) {
    .menuOn #menuLeft { padding:0 2em 20px; }
    .mainHeader { font-size: .8em; }
    .service { flex-basis:50%;  }
    .colonne { flex-basis: 100%; border: 0; }
    .liste { flex-basis: 100%; max-width:100%; text-align: center; border-bottom: 1px solid #0bbddc; padding-bottom:2em; margin-bottom:2em; }
    .liste:nth-child(1n) { border-right: 0; }
    .listeLogo { height:auto; }
    .liste:last-child { border-bottom: 0; }
    .page19 .downloads { padding:1em;}
    .tab121 img { display:block; margin:.3em auto;}
    .intro { text-align: left; margin:0 1em; }
    .ficheproduitLeft { float:none; width:auto; padding:0; }
    .ficheproduitRight { float:none; width:auto; padding:0; }
}
@media only screen and (max-width: 445px) {
    .produit { min-width: 96%; }
    .actuTeaserPhoto {  float: none;  width: auto; margin-right:0; margin-bottom:1em; }
    .actuTeaserContent {  float: none;  width: auto; }
    .btnImg{ padding:2em 1em; }
    .btnImgBtns { font-size: .8em; }
    .btnImgTitle { font-size: 0.4em; }
    .btnImgTitle2 { font-size: 0.5em; }
    .menuOn #menuLeft { padding:0; }
    .photobloc { padding: 1em; }
    .photoblocInner { width: auto; }
    .tabNavItem { padding: 1.7em 0.6em; font-size: 0.8em; }
    .mainHeaderInner { float: none; text-align: center; font-size: 0.8em; }
    .square1 { padding-left:2em; background: none;}
}

/*@media print,       (-o-min-device-pixel-ratio: 5/4),       (-webkit-min-device-pixel-ratio: 1.25),       (min-resolution: 120dpi) {}*//* ==========================================================================   Helper classes   ========================================================================== */
.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    *text-indent: -9999px;
}

.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 150%;
}

.hidden {
    display: none !important;
    visibility: hidden;
}

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

.invisible {
    visibility: hidden;
}

.clearfix:before, .clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
}

.clearfix {
    *zoom: 1;
}

/* ==========================================================================   Print styles   ========================================================================== */
@media print {
    * {
        background: transparent !important;
        color: #1d1d1d !important;
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a, a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after {
        content: "";
    }

    pre, blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group;
    }

    tr, img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    @page {
        margin: 0.5cm;
    }

    p, h2, h3 {
        orphans: 3;
        widows: 3;
    }

    h2, h3 {
        page-break-after: avoid;
    }
}


.ss-wrapper {
    overflow: hidden;
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 1;
    float: left;
}

.ss-content {
    height: 100%;
    width: calc(100% + 18px);
    padding: 0 0 0 0;
    position: relative;
    overflow: auto;
    box-sizing: border-box;
}

.ss-content.rtl {
    width: calc(100% + 18px);
    right: auto;
}

.ss-scroll {
    position: relative;
    background: rgba(0, 0, 0, 0.1);
    width: 9px;
    border-radius: 4px;
    top: 0;
    z-index: 2;
    cursor: pointer;
    opacity: 0;
    transition: opacity 0.25s linear;
}

.ss-hidden {
    display: none;
}

.ss-container:hover .ss-scroll,
.ss-container:active .ss-scroll {
    opacity: 1;
}

.ss-grabbed {
    -o-user-select: none;
    -ms-user-select: none;
    -moz-user-select: none;
    -webkit-user-select: none;
    user-select: none;
}