@charset "UTF-8";
*{
    -webkit-appearance: none;
}
html,body {
    font-size:14px;
    color: #003a5d;
}
/*select,input,textarea,button,.texte,p,a,img {font-size:1rem;line-height:1rem;}
p:not(:last-child),ul:not(:last-child),ol:not(:last-child),img:not(:last-child) {margin-bottom:0.6em;}
html,select,input,textarea,button{outline: none;}
select,input,textarea{border-radius: 0;box-sizing: border-box;}*/
body, html{margin: 0;padding: 0;width:100%;overflow-x:hidden;min-height:100vh;}
body {display:flex;flex-direction:column;justify-content:space-between;}
iframe,img{border: 0;}
label{cursor: pointer;}
button,
a, .bouton{cursor: pointer;text-decoration: none;transition:color 0.4s ease;}
/*h1,h2,h3,h4,h5,h6{margin: 0;line-height:1.2em;}
h1 {font-size:3.815em;}
h2 {font-size:3.052em;}
h3 {font-size:2.441em;}
h4 {font-size:1.953em;}
h5 {font-size:1.563em;}
h6 {font-size:1.25em;}*/
h1:not(:last-child),h2:not(:last-child),h3:not(:last-child),h4:not(:last-child),h5:not(:last-child),h6:not(:last-child){margin-bottom:0.6em;}
.aucun-resultat {
    font-size:38px;
    color:black;
    text-align:center;
    padding:40px;
    text-transform:uppercase;
    width: calc(100% - 20px);
    margin: 0 10px;
    box-sizing:border-box;
    border: 2px solid black;
}

.slick-track {
    display: flex;
}

.droite{
    float:right;
    margin-left: 12px;
    margin-bottom: 10px;
    line-height: 0;
}
.petit{width: 140px;}
.moyen{width: 320px;}
.grand{width: 100%;}
#old-browser-dialog p{
    text-align:center;
    font-size:18px;
    background-color:#FAF1AA;
    padding:5px;
    position:relative;
    top:100px;
}
#old-browser-dialog a{
    cursor:pointer;
    color:#0000ff;
    text-decoration:underline;
}
.admin-preview{
    border-width: 2px;
    border-style: dashed;
    border-color: rgba(0,0,0,0.2);
    box-sizing: border-box;
    position:relative;
}
.admin-preview:after {
    content: "";
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    background-image: linear-gradient(-45deg, #AEAEAD 0%, #AEAEAD 25%, white 25%, white 50%, #AEAEAD 50%, #AEAEAD 75%, white 75%, white 100%);
    background-image: -webkit-linear-gradient(-45deg, #AEAEAD 0%, #AEAEAD 25%, white 25%, white 50%, #AEAEAD 50%, #AEAEAD 75%, white 75%, white 100%);
    background-size: 20px 20px;
    z-index: 10;
    opacity: 0.3;
    pointer-events:none;
}
.wrap{max-width: 1260px;width: 100%;margin: auto;box-sizing:border-box;}
.wrap.small {max-width:1024px;}
img,video{max-width: 100%;vertical-align:top;}
.txt-left{text-align:left;}
.txt-center{text-align: center}
.txt-right{text-align: right}
button,.bouton{
    -webkit-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    transition: all 0.4s ease;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border: 2px solid #e07233 !important;
    background: #e07233;
    padding: 9px 30px;
    font-size: 14px;
    font-weight: 600;
    text-transform: uppercase;
    line-height: 20px;
    vertical-align: middle;
    box-sizing: border-box;
    border-radius: 0;
    /* background: black; */
    color: white;
    text-align: center;
}

button.inverse,.bouton.inverse {
    color:black;
    background:white;
}

button:hover, .bouton:hover {background:white;color:black;}

button.inverse:hover,.bouton.inverse:hover {
    color:white;
    background:black;
}

/*select,
textarea,
input[type="text"],
input[type="password"],
input[type="number"],
input[type="date"],
input[type="time"],
input[type="search"],
input[type="url"],
input[type="email"],
input[type="tel"]
{
    appearance: none;
    -webkit-appearance: none;
    width: 100%;
    outline: none;
    padding: 6px 6px;
    font-size: 16px;
    line-height:1em;
    border: 0;
    border-bottom: 1px solid #707070;
    transition: box-shadow 0.3s, border 0.3s;
    box-sizing: border-box;
    background-color: transparent;
}
textarea{border: 1px solid #707070;height: 120px;resize:vertical;}
select {
    height: 33px;width: 100%;!*border: 1px solid #707070;*!
    transition: box-shadow 0.3s ease 0s, border 0.3s ease 0s;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-position: center right 10px;
    background-repeat: no-repeat;
    cursor: pointer;background-size: auto 86%;
    padding-right: 38px;
}*/
select.invalid,
textarea.invalid,
input[type="text"].invalid,
input[type="password"].invalid,
input[type="number"].invalid,
input[type="date"].invalid,
input[type="time"].invalid,
input[type="search"].invalid,
input[type="url"].invalid,
input[type="email"].invalid,
input[type="tel"].invalid,
input[type="month"].invalid {
    border-color:red;
}
select:focus,
textarea:focus,
input[type="text"]:focus,
input[type="password"]:focus,
input[type="number"]:focus,
input[type="date"]:focus,
input[type="time"]:focus,
input[type="search"]:focus,
input[type="url"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus
{
    border-bottom: solid 1px #888;
    /*box-shadow: 1px 1px 1px 1px #969696;*/
    /*background-color: white;*/
}

/*footer {box-sizing:border-box;padding:10px;box-shadow: 0 0 5px 0 rgba(0,0,0,0.4);}
footer > .wrap {display:flex;justify-content:space-between;align-items:flex-end;}
footer a {transition:opacity 0.4s ease;}
footer a:hover {opacity:0.6;}
footer .reseaux-sociaux a {display:inline-block;width:30px;height:30px;}
footer .reseaux-sociaux a:not(:last-child) {margin-right:10px;}
footer .reseaux-sociaux a svg, footer .reseaux-sociaux a img {width: 100%;height: 100%;object-fit: contain;}*/
.titre-page h1 {font-size:36px;position:relative;z-index:1;}
.contenu > .section{position: relative;position:relative;background-size: cover;background-position: center;}
/*.section .wrap{display: flex;flex-wrap: wrap;justify-content: space-between;align-items: start;z-index: 200;position: relative;}*/
/*.section .wrap .paragraphe0,
.section .wrap .paragraphe1{width: calc(100% - 20px);margin:10px;box-sizing:border-box;}
.section .wrap .paragraphe2{width: calc(50% - 20px);box-sizing:border-box;margin:10px;}
.section .wrap .paragraphe3{width: calc((100% / 3) - 20px);box-sizing:border-box;margin:10px;}
.section .wrap .paragraphe4{width: calc(25% - 20px);box-sizing:border-box;margin:10px;}
.section .wrap .paragraphe5{width: calc(20% - 20px);box-sizing:border-box;margin:10px;}
.section .wrap.h-aucun {padding-left:10px;padding-right:10px;}
.section .wrap.h-aucun .paragraphe0,
.section .wrap.h-aucun .paragraphe1{width: 100%;margin:10px 0;box-sizing:border-box;}
.section .wrap.h-aucun .paragraphe2{width: 50%;box-sizing:border-box;margin:10px 0;}
.section .wrap.h-aucun .paragraphe3{width: calc(100% / 3);box-sizing:border-box;margin:10px 0;}
.section .wrap.h-aucun .paragraphe4{width: 25%;box-sizing:border-box;margin:10px 0;}
.section .wrap.h-aucun .paragraphe5{width: 20%;box-sizing:border-box;margin:10px 0;}*/
.padding_1 {padding:0 0;}
.padding_2 {padding:20px 0;}
.padding_3 {padding:40px 0;}
.padding_4 {padding:80px 0;}
.margin_1 {margin:0 auto;}
.margin_2 {margin:20px auto;}
.margin_3 {margin:40px auto;}
.margin_4 {margin:80px auto;}
/*.d-full {width:calc(100% - 20px);}
.d1-2 {width:calc(50% - 20px);}
.d1-3 {width:calc((100% / 3) - 20px);}
.d1-4 {width:calc(25% - 20px);}
.d2-3 {width:calc((100% / 3 * 2) - 20px);}
.d3-4 {width:calc(75% - 20px);}
.d1-5 {width:calc(20% - 20px);}
.d2-5 {width:calc(40% - 20px);}
.d3-5 {width:calc(60% - 20px);}
.d4-5 {width:calc(80% - 20px);}
.d1-6 {width:calc((100%  / 6) - 20px);}
.d5-6 {width:calc((100%  / 6 * 5) - 20px);}
.d-full,.d1-2,.d1-3,.d1-4,.d2-3,.d3-4,.d1-5,.d2-5,.d3-5,.d4-5,.d1-6,.d5-6,
.t1-2,.t1-3,.t1-4,.t2-3,.t3-4,.t1-5,.t2-5,.t3-5,.t4-5,.t1-6,.t5-6,
.m1-2,.m1-3,.m1-4,.m2-3,.m3-4,.m1-5,.m2-5,.m3-5,.m4-5,.m1-6,.m5-6{box-sizing:border-box;margin-left:10px;margin-right:10px;}*/
.section .wrap.v-start {align-items:flex-start;}
.section .wrap.v-end {align-items:flex-end;}
.section .wrap.v-stretch {align-items:stretch;}
.section .wrap.v-center {align-items:center;}
.section .wrap.h-start {justify-content:flex-start;}
.section .wrap.h-end {justify-content:flex-end;}
.section .wrap.h-space-between {justify-content:space-between;}
.section .wrap.h-center {justify-content:center;}
.graph .circle-outside {background-color: #CDCDCD;}
.graph .circle-inside:before {background-color: white;}
.pagination {margin:20px 0;}
.pagination > span, .pagination > a {
    font-size:20px;
    height:40px;
    display:inline-block;
    box-sizing:border-box;
    border-bottom:5px solid black;
    padding:0 10px;
    transition:all 0.4s ease;
    cursor:pointer;
}

.pagination > span:hover, .pagination > a:hover, .pagination .actif {
    border-bottom-width:15px;
}
.cache {display:none;}

.joindre-fichier > label {
    display:flex;
}
form {position:relative;}
.reponse-ajax {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width:100%;
    height:100%;
    display: flex;
    justify-content: center;
    align-items: center;
    pointer-events:none;
}
.reponse-ajax .message-ajax {
    background: white;
    width: auto;
    color: black;
    padding: 10px 20px;
    max-width: 100%;
    border-radius: 10px;
    text-align: center;
    box-sizing: border-box;
    text-transform: uppercase;
    font-weight: bold;
    box-shadow: 0 0 10px 0 rgba(0,0,0,0.6);
    border:2px solid black;
    display:none;
    pointer-events:none;
}

#map {height:50vh;}

/****************************** YOUTUBE ******************************/

.youtube {
    width:100%;
    height:0;
    padding-bottom: 56.25%;
    overflow:hidden;
    cursor:pointer;
    position:relative;
}

.youtube .thumbnail {
    background-size:cover;
    background-position:center center;
    background-repeat:no-repeat;
    position:absolute;
    top:0;
    left:0;
    bottom:0;
    right:0;
    margin:auto;
}

.youtube .blurry {
    -webkit-filter: blur(5px);
    -moz-filter: blur(5px);
    -o-filter: blur(5px);
    -ms-filter: blur(5px);
    filter: blur(5px);
    top:-5px;
    left:-5px;
    bottom:-5px;
    right:-5px;
}

.youtube:after {
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    background-image: url(/images/youtube_icon.png);
    background-size: 128px;
    background-repeat: no-repeat;
    background-position:center center;
    position: absolute;
    margin: auto;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background-color: rgba(0,0,0,0.6);
    z-index:5;
}

.youtube iframe {
    width:100%;
    height:100%;
    position:absolute;
    left:0;
    top:0;
    z-index:10;
}

/****************************** GRAPHIQUES ******************************/
.graph{ padding-bottom: 20px; }
.graph .pourc .valeur:after {content:"%";}
.graph .frac .valeur:after {content:"/"attr(data-fraction);}
.graph .centered {width:100%;text-align:center;}
.graph .centered .circle-outside, .graph .centered .texte {width:30%;margin:auto;}
.graph .double {width:25%;box-sizing:border-box;}
.graph .double:nth-of-type(even) {margin-right:20%;}
.graph .double:nth-of-type(odd) {margin-left:20%;}
.graph .triple {width:26%;}
.graph .quadruple {width:21%;}
.graph .quintuple {width:18%;}
.graph .circle-outside {width: 100%;margin: auto;border-radius: 50%;background: #cdcdcd;}
.graph .circle-inside {border-radius: 50%;width: 100%;padding-bottom: 100%;height: 0;position: relative;}
.graph .circle-inside:before {position: absolute;content: "";top: 20px;left: 20px;bottom: 20px;right: 20px;border-radius: 50%;background:white;}
.graph .valeur {position: absolute;top: 0;bottom: 0;right: 0;left: 0;display: flex;align-items: center;justify-content: center;font-size: 48px;font-weight: bold;}
.graph .titre,
.graph .sous-titre {width:100%;margin-bottom:20px;}
.graph .sous-titre {font-size:30px;}
.graph .titre ~ .triple,
.graph .sous-titre ~ .triple,
.graph .titre ~ .centered,
.graph .sous-titre ~ .centered,
.graph .titre ~ .quadruple,
.graph .sous-titre ~ .quadruple,
.graph .titre ~ .quintuple,
.graph .sous-titre ~ .quintuple,
.graph .titre ~ .double,
.graph .sous-titre ~ .double {margin-top:30px;}
.graph .texte {padding-top:15px;font-size: 30px;text-align: center;}
.demi-wrap .graph,
.tier .graph,
.quadruple .graph {padding:60px 20px;box-sizing:border-box;}
.demi-wrap .graph .paragraphe,
.tier .graph .paragraphe,
.quadruple .graph .paragraphe {flex-direction:column;justify-content:center;align-items:center;}
.demi-wrap .graph .centered:not(:last-of-type),
.tier .graph .centered:not(:last-of-type),
.quadruple .graph .centered:not(:last-of-type) {margin-bottom:30px;}
.demi-wrap .graph .centered .circle-outside,
.tier .graph .centered .circle-outside,
.quadruple .graph .centered .circle-outside,
.demi-wrap .graph .centered .texte,
.tier .graph .centered .texte,
.quadruple .graph .centered .texte {width:60%;}
.quadruple .graph .valeur {font-size:36px;}
.quadruple .graph .texte {font-size:24px;}
.wrap .graph {padding-left:20px;padding-right:20px;}
.graph > .flex {
    flex-wrap:wrap;
}
/***************************** Slider **************************/
.slider-bouton{display: none}
.diaporama-slider{position: relative;height: 456px;text-align: center;overflow: hidden;}
.slider-nextimg,
.slider-previmg,
.slider-img{background: url(/images/slider.jpg) center no-repeat;background-size: cover;position: absolute;left: 0;right: 0;top: 0;bottom: 0;z-index: 1;background-color:#fff;}
.slider-previmg,
.slider-nextimg{z-index: 2;}
.diaporama-slider-fade .slider-nextimg{left: 0;right: 0;z-index: 0;}
.slider-previmg.reset,
.slider-nextimg.reset{-webkit-transition: all 0.6s ease;-ms-transition: all 0.6s ease;transition: all 0.6s ease;}
.slider-previmg{left: -100%;right: 100%;}
.slider-nextimg{left: 100%;right: -100%;}
.slider-previmg.show,
.slider-nextimg.show{left: 0;right: 0;-webkit-transition: all 1.4s ease;-ms-transition: all 1.4s ease;transition: all 1.4s ease;}
.slider-shadow{position: absolute;left: 0;right: 0;top: 0;bottom: 0;z-index: 3;background: rgba(0,0,0,0.45);}
.slider-titre{text-transform: uppercase;color: #fff;font-size: 36px;font-family: 'Roboto Slab', sans-serif;font-weight: bold;margin-bottom: 20px;display: none}
.slider-texte{color: #fff;font-size: 24px;font-family: 'Roboto Slab', sans-serif;font-weight: bold;margin-bottom: 20px;display: none}
.slider-puces{position: absolute;bottom: 38px;left: 0;right: 0;z-index: 4;display: none;}
.slider-puces a{display: inline-block;border: 2px solid #fff;margin: 0 7px;-webkit-transition: all 0.4s ease;-ms-transition: all 0.4s ease;transition: all 0.4s ease;}
.slider-puces a:hover,
.slider-puces a.actif{background: #fff;}
.slider-contenu{position: absolute;bottom: 148px;left: 40px;right: 40px;z-index: 5;}
.slider-puces.slider-puces-round a{
    font-size: 0;border-radius: 50%;padding: 5px;
}
.slider-puces.slider-puces-round-num a{
    font-size: 8px;border-radius: 50%;height: 10px;width: 10px;line-height: 10px;
}
.slider-puces.slider-puces-square a{
    font-size: 0;line-height:1em;padding: 5px;
}
.slider-puces.slider-puces-square-num a{
    font-size: 0.64em;height: 1.25em;width: 1.25em;line-height: 1.25em;text-align:center;
}
.slider-puces.vert-top-left{position: absolute;left: 20px;top: 8px;bottom: auto;right: auto;}
.slider-puces.vert-top-right{position: absolute;right: 20px;top: 8px;bottom: auto;left: auto;}
.slider-puces.vert-bottom-left{position: absolute;left: 20px;top: auto;bottom: 8px;right: auto;}
.slider-puces.vert-bottom-right{position: absolute;right: 20px;top: auto;bottom: 8px;left: auto;}
.slider-puces.vert-bottom-right a,
.slider-puces.vert-bottom-left a,
.slider-puces.vert-top-right a,
.slider-puces.vert-top-left a{margin: 7px 0;display: block;}
.slider-puces.vert-left-flex{position: absolute;left: 20px;top: 8px;bottom: 8px;right: auto;display: flex;flex-direction: column;justify-content: space-around;}
.slider-puces.vert-right-flex{position: absolute;left: auto;top: 8px;bottom: 8px;right: 20px;display: flex;flex-direction: column;justify-content: space-around;}
.slider-puces.hor-bottom-flex{position: absolute;left: 8px;top: auto;bottom: 38px;right: 8px;display: flex;flex-direction: row;justify-content: space-around;}
.slider-puces.hor-top-flex{position: absolute;left: 8px;top: 38px;bottom: auto;right: 8px;display: flex;flex-direction: row;justify-content: space-around;}
.slider-puces.hor-top-left{position: absolute;left: 8px;top: 38px;bottom: auto;right: auto;}
.slider-puces.hor-top-center{position: absolute;left: 8px;top: 38px;bottom: auto;right: 8px;}
.slider-puces.hor-top-right{position: absolute;left: auto;top: 38px;bottom: auto;right: 8px;}


.miniature-images{
    width:20%;
}

.image-fenetre{
    width: 25%;
    margin-top: 1%;
}

.section .wrap.background {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-size: cover;
    background-position: center;
}

.section .wrap .section-images-fenetre{
    justify-content: flex-start;
}
/***************************** Formulaires **************************/
.formulaire-auto-conteneur{display: flex;flex-wrap: wrap;justify-content: space-between;align-items: start;margin-bottom:20px;}
.formulaire-auto-conteneur > :not(:last-child) {margin-bottom:28px;}
.formulaire-auto-conteneur table td:not(:first-child){text-align: center}
.formulaire-auto-conteneur table,
.formulaire-auto-conteneur select,
.formulaire-auto-conteneur textarea,
.formulaire-auto-conteneur input[type=email],
.formulaire-auto-conteneur input[type=number],
.formulaire-auto-conteneur input[type=text]{width: 100%;}
.formulaire-auto-conteneur input[type=radio] + .formulaire-auto-etoile path{-webkit-transition: all 0.4s ease;-ms-transition: all 0.4s ease;transition: all 0.4s ease;	}
.formulaire-auto-conteneur .question-options-conteneur-etoile input[type=radio] {display:none;}
/* .formulaire-auto-conteneur label {display:inline-block;} */
.formulaire-auto-conteneur label > input,
.formulaire-auto-conteneur label > span {vertical-align:middle;}
.formulaire-auto-conteneur input[type=checkbox], .formulaire-auto-conteneur input[type=radio] {width:20px;height:20px;box-sizing:border-box;-webkit-appearance:none;border:2px solid;border-radius:4px;margin: 0;margin-right: 10px;cursor:pointer;position:relative;}
.formulaire-auto-conteneur input[type=radio] {border-radius:50%;}
.formulaire-auto-conteneur input[type=checkbox]:after, .formulaire-auto-conteneur input[type=radio]:after {content:"";opacity:0;position:absolute;transition:0.4s ease;color:#FFF;}
.formulaire-auto-conteneur input[type=checkbox]:after {
    border-radius: 4px;
    width: 20px;
    height: 20px;
    top: -2px;
    left: -2px;
    content: '\2713';
    text-align: center;
    font-weight: bold;
}
.formulaire-auto-conteneur input[type=radio]:after {border-radius:50%;top:4px;left:4px;bottom:4px;right:4px;}
.formulaire-auto-conteneur input[type=checkbox]:checked:after,
.formulaire-auto-conteneur input[type=radio]:checked:after,
.formulaire-auto-conteneur input[type=checkbox]:hover:after,
.formulaire-auto-conteneur input[type=radio]:hover:after{opacity:1;}
.formulaire-auto-conteneur .question-options-conteneur label {margin-bottom:10px;}
.formulaire-auto-conteneur > div {transition:all 0.4s ease;}
.formulaire-auto-conteneur > .invalid {border:1px solid red;box-shadow:0 0 4px 0 rgba(255,0,0,0.6);box-sizing:border-box;padding:5px;margin:10px 0;}
.formulaire-auto-conteneur > .invalid > div:first-child {color:red;font-weight:bold;}
.formulaire-auto-conteneur > .invalid input[type=checkbox] {border-color:red;}
.formulaire-auto-conteneur > .invalid input[type=checkbox]:after {background-color:red;}
.formulaire-auto-conteneur .titre-question {
    font-size:14px;
    font-weight:bold;
    margin-bottom:10px;}
.form .titre-formulaire {font-size:20px;margin-bottom:20px;}
/****************** Produits *******************/
/*#produits-resultats-recherche {display:flex;justify-content: start;flex-wrap:wrap;}*/
/*.produit-resultat-image-cont,
#produits-resultats-recherche .produit-resultat {*/
    /*width: calc(33.3% - 10px);
    box-shadow: 0 0 5px 0 rgba(0,0,0,0.4);
    border:2px solid black;*/
    /*position:relative;
    box-sizing:border-box;
    height: 250px;*/
    /*margin:5px;*/
/*}
.produit-resultat .produit-resultat-image {transition:all 0.4s ease;position:relative;overflow:hidden;}
.produit-resultat .produit-resultat-image a.image-produit {
    width: 100%;
    height: 0;
    padding-bottom: 75%;
    display: block;
    overflow: hidden;
    position: relative;
    overflow:hidden;
    transition:filter 0.4s ease;
    vertical-align:top;
}
.produit-resultat .produit-resultat-image:after {opacity:0;content:"";position:absolute;top:0;left:0;right:0;bottom:0;box-shadow:inset 0 0 10px 0 rgba(0,0,0,0.4);transition:all 0.4s ease;pointer-events:none;}
.produit-resultat .produit-resultat-image img {vertical-align:top;}
.produit-resultat-image-cont:hover .produit-resultat-image {
    box-shadow:inset 0 0 20px 10px rgba(0,0,0,0.4);
}
.produit-resultat-image-cont:hover .produit-resultat-image:not(.fullscreen) .liste-images a.image-produit {
    filter:brightness(0.6);
}
.produit-resultat .produit-resultat-image img {position:absolute;top:0;left:0;bottom:0;right:0;width:100%;height:100%;object-fit:cover;}
.produit-resultat:hover .produit-resultat-image:after {opacity:1;}
.produit-resultat .produit-resultat-image .actions-rapide {
    position:absolute;
    top:-40px;
    right:0;
    padding:10px;
    z-index:10;
    transition:all 0.4s ease;
    display:flex;
}
.produit-resultat .actions-rapide a {
    display:block;
    width:24px;
    height:24px;
    background-size:contain;
    background-repeat:no-repeat;
    background-position:center center;
    transition:all 0.4s ease;
    vertical-align:top;
    cursor:pointer;
}
.produit-resultat .d2-3 .actions-rapide{
    display:flex;
}
.produit-resultat .d2-3 .actions-rapide a.ajouter-panier,
.produit-resultat .d2-3 .actions-rapide a.enlever-panier{filter: invert(1)}
.produit-resultat .produit-resultat-image.fullscreen .actions-rapide a {width:40px;height:40px;}
.produit-resultat .produit-resultat-image.fullscreen .actions-rapide .ajouter-souhait {background-size:36px 36px;}
#produits-resultats-recherche .produit-resultat-image:hover .actions-rapide,
.produit-resultat-image-cont:hover .produit-resultat-image .actions-rapide,
.produit-resultat .produit-resultat-image.fullscreen .actions-rapide {top:0;}
.produit-resultat .actions-rapide a:not(:last-child) {margin-right:10px;}*/
/*.produit-resultat .actions-rapide .ajouter-panier {
    background-image:url("/images/icons/add-to-cart.svg");
    position:relative;
}
.produit-resultat .actions-rapide .ajouter-souhait {
    background-image:url("/images/icons/add-to-wishlist.svg");
    background-size:20px 20px;
}

.produit-resultat .actions-rapide .ajouter-souhait.dedans, .produit-resultat .actions-rapide .ajouter-souhait:hover {
    background-image:url("/images/icons/in-wishlist.svg");
}

.produit-resultat .actions-rapide .ajouter-panier.dedans, .produit-resultat .actions-rapide .ajouter-panier:hover {
    background-image:url("/images/icons/in-cart.svg");
}

.produit-resultat .actions-rapide .voir-fiche {
    background-image:url("/images/icons/view.svg");
}

.produit-resultat .actions-rapide .voir-fiche:hover {
    background-image:url("/images/icons/view-hover.svg");
}
.produit-resultat .actions-rapide .enlever-panier {
    background-image:url("/images/icons/remove-from-cart.svg");
    display:none;
}

.produit-resultat .actions-rapide .enlever-panier:hover {
    background-image:url("/images/icons/remove-from-cart-hover.svg");
}
.produit-resultat .produit-resultat-details, .panier-image .nom-produit {padding:10px;position:absolute;bottom:0;color:#FFF;width: 100%;box-sizing: border-box;background: rgba(0,0,0,0.6);}
.produit-resultat .produit-resultat-details .bouton {margin-top:20px;}
.produit-resultat-details a:hover {color:#FFF;}
.page-produit .produit-detail {display:flex;flex-wrap:wrap;justify-content:space-between;width: 100%;align-items: start;}
.page-produit .titre-page {margin-bottom:40px;}
.page-produit .titre-page:before {right:unset;left:0;}*/
.slick-arrow {
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:30px;
    height:30px;
    border-radius:50%;
    background:#FFF;
    cursor:pointer;
    background-size:10px 10px;
    background-repeat:no-repeat;
    background-position:center center;
    z-index:10;
    transition:all 0.4s ease;
}
.slick-arrow.slick-prevArrow {
    left:-5px;
    background-image:url("/images/icons/left-arrow.svg");
    border-radius:0 50% 50% 0;
}
.slick-arrow.slick-nextArrow {
    right:-5px;
    background-image:url("/images/icons/right-arrow.svg");
    border-radius:50% 0 0 50%;
}
.produit-resultat-image:not(.fullscreen) .liste-images:hover .slick-arrow {
    background-color:rgba(255,255,255,0.4);
}

.liste-images:hover .slick-arrow.slick-prevArrow, .produit-resultat-image.fullscreen .liste-images .slick-arrow.slick-prevArrow {
    left:10px;
    border-radius:50%;
}

.liste-images:hover .slick-arrow.slick-nextArrow, .produit-resultat-image.fullscreen .liste-images .slick-arrow.slick-nextArrow {
    right:10px;
    border-radius:50%;
}

.liste-images a.image-produit:focus {
    outline:unset;
}

.produit-resultat-image.fullscreen .liste-images a.image-produit {
    width:100vw;
    height:100vh;
    padding:0
}

.produit-resultat-image.fullscreen .liste-images a.image-produit img {
    width:100vw;
    height:100vh;
    object-fit:contain;
}

.conteneur-produits {width:100%;}

.produit-resultat .actions-rapide .ajouter-panier .qte-panier {
    font-size:10px;
    display:flex;
    justify-content:center;
    align-items:center;
    position:absolute;
    top:-6px;
    right:-6px;
    background:white;
    box-shadow:0 0 4px 0 rgba(0,0,0,0.4);
    border-radius:50%;
    width:16px;
    height:16px;
    color:#000;
    opacity:0;
    transition:opacity 0.4s ease;
}

.produit-resultat .actions-rapide .ajouter-panier.dedans .qte-panier {
    opacity:1;
}

.produit-resultat-prix .prix-ancien .montant {
    text-decoration:line-through;
    font-size:10px;
}

/************************* Panier *************************/

.panier .etapes {
    display: flex;
    width: 100%;
    justify-content: space-between;
    font-weight: bold;
    font-size: 20px;
    margin-bottom: 20px;
}

.panier .etapes > div {
    flex: 0;
    flex-grow: 1;
}

.panier .etapes .actif {
    border-bottom: 8px solid #000;
}

.panier-table {
    display:table;
    width:100%;
    background:white;
    box-shadow:0 0 5px 0 rgba(0,0,0,0.4);
    padding:10px;
    box-sizing:border-box;
    margin:20px 0;
}

.panier-table .entete, .panier-table .panier-item, .panier-table .panier-totaux {
    display:table-row;
}

.panier-table .entete > div, .panier-table .panier-item > div {
    border-bottom:1px solid #000;
}

.panier-table .entete > div, .panier-table .panier-item > div, .panier-table .panier-totaux > div {
    display:table-cell;
    vertical-align:middle;
    padding:10px;
}

.panier-table .panier-totaux > div {
    padding:5px;
}

.panier-table .panier-totaux.stotal > div {
    padding-top:10px;
}

.panier-table .entete > .panier-colone-prix, .panier-table .panier-item > .panier-colone-prix {
    text-align:right;
}

.panier-totaux.code-promo {
    display: flex;
    flex-direction:column;
    align-items:flex-end;
    justify-content: flex-end;
}

.panier .etapes {  display: flex;  justify-content: space-between;  width: 100%;  margin-bottom:30px;  }
.panier .etapes > div.actif {  border-bottom: 10px solid #000;  margin-bottom: 6px;  }
.panier .etapes > div {  border-bottom: 5px solid #cecdcd;  margin-right: 0;  flex: 1;  margin-bottom: 6px;  padding-bottom: 5px;  font-weight: 400; color:#8b8888;  }
.panier .etapes > div:last-child {  margin-right: 0;  }

.panier #panier-table {  display: table;  width: 100%;  margin: 54px 0 20px;  text-align: center;  }
.panier #panier-table .entete div {font-size:16px; padding-bottom: 20px;}
.panier #panier-table > div {  display: table-row; border-bottom: solid 1px #000; }
.panier #panier-table > div > div {  display: table-cell;  vertical-align: middle;  }
.panier .panier-colone-prix {  text-align: right; }
.panier .panier-colone-item {  text-align: left;  }
.panier .panier-item .panier-colone-item {font-size:36px; }
.panier .panier-item .panier-colone {font-size:30px; }
.panier .panier-item .panier-colone-prix {font-size:24px;}
.panier #panier-table .entete {padding-bottom:20px;}
.panier #panier-table .panier-colone-spacing {width:150px;padding-right:10px;padding-left:20px;}
.panier #panier-table .spacer {width:100%; height:1px;background-color:#000;}
.panier #panier-table select[name='quantite[]'] { font-size:30px;line-height: 30px; border-bottom:0;padding-right:0px; min-width: 50px;}
.panier #panier-table select[name='quantite[]'] option {font-size:16px;padding-right:0;}
.panier .panier-taxes div {font-size:24px;text-align:right;margin-bottom: 5px;}
.panier .panier-taxes div:last-child {margin-bottom:30px;}
.ue-bout .panier .panier-taxes div.livraison {margin-bottom:0px;}
.panier #conteneur-totaux {width:100%; }
.panier .panier-taxes, .panier .code-promo {display: flex;align-items: flex-end;flex-direction: column;width: 100%;margin-top:10px;}
.panier .panier-total {font-size:36px;width:100%;text-align:right;}
.panier .compte-existant {background-color: #8b8888;}
.panier #panier-compte-options {display: flex;margin-top: 40px;color: #333;align-items: stretch;margin-bottom: 100px;width:100%;}
#panier-compte-options > div {flex: 1;padding: 14px 12px 71px;position: relative;}
.panier-compte-options-titre {font-weight: 400;font-size: 24px;text-transform: uppercase; }
#panier-compte-options .bouton {
    cursor: pointer;
    display: block;
    text-transform: uppercase;
    text-align: center;
    position: absolute;
    left: 12px;
    right: 12px;
    bottom: 25px;
    padding: 5px 0;
    font-weight: 400;
    font-size: 19px;
    border-radius:0;
}
#panier-btn-connexion{ position: initial!important; }
/*.bouton.gris {background: #9f9d9d;border-color: #9f9d9d;color: #fff;}*/
#panier-compte-options input {width: 100%;margin-top: 10px;border: 0;height: 30px;box-sizing: border-box;padding-left: 2px;background: none;border-bottom:1px solid #000;color:#000;}
#panier-compte-options input::placeholder {color:white; opacity: 1;}
#panier-compte-options button.bouton {width: calc(100% - 24px);}
#panier-form-connexion-chargement {position: absolute;right: 0;top: 0;display: none;width: 150px;height: 52px;}
.chargement {background: url(../images/chargement.svg) center no-repeat;height: 65px;}
/*.panier .compte-existant .panier-compte-options-titre {color:white;}*/
/*.panier .nouveau-compte .bouton {color:#0D5D81;}
.panier .commande-rapide .bouton {background-color:#0D5D81;color:white;}
.panier .compte-existant .bouton:hover {background-color:#9f9d9d;}
.panier .nouveau-compte .bouton:hover {background-color:#0D5D81;color:white;}
.panier .commande-rapide .bouton:hover {background-color:#9f9d9d; color:#0D5D81;}*/
.panier .compte-existant .panier-compte-options-titre {width:90%;margin:auto;}
#panier-form-connexion {width: 90%;margin: 0 auto 10px;}
.panier .nouveau-compte div {width:90%;margin:auto;}
.panier .nouveau-compte div:nth-child(2) {margin-top:10px;}
.panier .commande-rapide div {width:90%;margin:auto;}
.panier .commande-rapide div:nth-child(2) {margin-top:10px;}

/***************************************** Facturation *****************************************/
.panier #wrap-facturation {display:flex;margin-top: 20px;width:100%;}
.panier #wrap-facturation #info-facturation {width:calc(100% - (100% / 3));}
.panier #wrap-facturation #sommaire {width: calc(33.33% - 20px);padding-left:20px;}
/*.bg-bleu {background-color:#0D5D81;}*/
.panier #wrap-facturation .champs {display:flex;justify-content: space-between;flex-direction: row;flex-wrap: wrap;}
.panier #wrap-facturation #panier-table {margin: 0 0 20px;}
.panier #wrap-facturation input:not([type=submit]):not([type=checkbox]), .panier #wrap-facturation select {width: 48%;margin-top: 10px;border: 0;height: 30px;box-sizing: border-box;padding-left: 2px;border-bottom:1px solid #000;color:#000;}
.panier #wrap-facturation select {background-image:url(/images/icons/select.png)}
/*.panier #wrap-facturation select option {color:#0d5d81;}*/
.panier #wrap-facturation input::placeholder { opacity: 1;}
.panier #wrap-facturation .bg-bleu {padding: 20px 20px 45px;}
.panier #wrap-facturation .titre-facturation {font-size:24px;  text-transform: uppercase;}
.panier #wrap-facturation .panier-colone-item {font-size:16px;}
/*.panier #wrap-facturation .bouton {width: calc(100% - 20px);border-radius: 0;margin-top: 35px;text-align: center;font-size: 19px;}
.panier #wrap-facturation .bouton:hover {background-color:#0D5D81;color:white;}*/
.panier #sommaire .entete > div {padding-bottom:0;border-bottom:1px solid #000;}
.panier #sommaire .entete + .panier-item div {padding-top:20px;}
.panier #confirmation .message {font-size:24px; text-align:center;line-height: 35px;}
.panier #confirmation #img-confirmation {margin:50px auto 30px; display: block;}
.panier #confirmation {width:100%;text-align: center;}
/*.panier #confirmation .bouton {padding: 8px 100px;border-radius: 0;margin: 60px auto;}
.panier #confirmation .bouton:hover {background-color:#0D5D81; color:white;}*/
.panier #panier-table .entete.mobile {display:none;}
.form-commande {width:100%;}

.table-totaux {
    display:table;
    border-collapse:collapse;
}

.table-totaux > div {
    display:table-row;
}

.table-totaux > div > div {
    display:table-cell;
}

.table-totaux > div > div:last-child {
    text-align:right;
    padding-left:20px;
}

.table-totaux .total {
    border-top:1px solid black;
}

.old-price {
    text-decoration:line-through;
}

#btn-ajouter-code-promo{
    margin-top:5%;
}

.panier-image img {vertical-align:top;}

.panier-image a {display:inline-block;position:relative;border:2px solid #000;box-shadow: 0 0 5px 0 rgba(0,0,0,0.4);max-width:300px;}

.panier-image .nom-produit {font-size:22px;font-weight:bold;transition:color 0.4s ease;}

.panier-image a:hover .nom-produit {color:white;}

.panier-vide {
    text-align: center;
    font-size: 24px;
    font-weight: bold;
    padding: 20px;
    box-shadow: 0 0 5px 0 rgba(0,0,0,0.4);
    margin-top: 20px;
    margin-bottom: 20px;
}

.boite-conteneur {
    width:100%;
}

.panier-lien{
    width:200px;
}

#panier-btn-connexion{
    margin-top:3%;
}

/**************************FAQ**************************/

.table-faq{
    width:100%;
}

.titre-categorie{
    padding: 10px;
}
.faq-question-conteneur{cursor: pointer}
.faq-reponse-conteneur{
    display:none;
}

.faq-module{
    padding:10px;
}

.faq-module:not(:last-child){
    border-bottom:1px solid #0003;
}

.faq-question{
    font-weight: bold;
}

/**********************Nous joindre***********************/

#nous-joindre-formulaire form {width:100%;display:flex;flex-wrap:wrap;justify-content:space-between;}

#nous-joindre-formulaire label {
    color: black;
    text-transform: uppercase;
    font-weight: normal;
    margin-left: 6px;
    font-size: 16px;
    margin-bottom:10px;
}

#nous-joindre-formulaire .joindre-fichier label {
    margin-left:0;
    margin-bottom:0;
}

#nous-joindre-formulaire form .champs {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: space-between;
}

#nous-joindre-formulaire form .message {
    width:100%;
}

#nous-joindre-formulaire form .message textarea {height: 100px;}

#nous-joindre-formulaire form .champs > * {
    margin-bottom:20px;
    width: 31%;
}

#nous-joindre-formulaire form button, #nous-joindre-formulaire form > .recaptcha {
    margin-top:20px;
}

#nous-joindre-formulaire form .btn-container {
    flex-grow:1;
    width: 100%;
}

.ouvertures .texte {
    display: block;
    margin-right: 5px;
    width: 140px;
}

.ouvertures > p > span {
    display: block;
}

.ligne-horaire{
    display:flex;
    justify-content: space-between;
}
/*************************NOUVELLES*************************/
.sectionN .input-recherche.troisChoix , .sectionN .filtre-annee.troisChoix{ width: 32%!important; }
.contenu > .sectionN {
    display: grid;
    grid-template-columns: calc((100% - 1424px) / 2) repeat(3, minmax(0, 1fr)) calc((100% - 1424px) / 2);
    grid-column-gap: 32px;
    grid-row-gap: 28px;
    margin-bottom: 0px;
}
.contenu > .sectionN > .wrap {
    grid-column-start: 2;
    grid-column-end: span 3;
    display: grid;
    grid-column-gap: 32px;
    grid-row-gap: 28px;
    grid-template-columns: repeat(12, minmax(0, 1fr));
}
.contenu > .sectionN > .wrap .btn-action {width:100%;}
.contenu > .sectionN > .wrap > .paragraphe1 {
    grid-column-end: span 12;
}
.sectionN.nouvelles .resultat-recherche {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-column-gap: 32px;
    grid-row-gap: 28px;
}
.single-nouvelle-bloc, .single-nouvelle-bloc:visited, .single-nouvelle-bloc:hover {
    color: white;
}
.single-nouvelle-bloc {
    display: flex;
    flex-direction: column;
}
.single-nouvelle-bloc .image-container {
    width: 100%;
    height: 0px;
    padding-bottom: calc(100% * 288 / 432);
    position: relative;
    margin-bottom: 0px;
    overflow:hidden;
}
.single-nouvelle-bloc .image-container img {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition:transform 0.3s ease;
}

.single-nouvelle-bloc .contenu-liste-nouvelle {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 22px;
    flex-grow: 1;
    transition: background 0.3s ease;
}
.single-nouvelle-bloc .contenu-liste-nouvelle > :not(:last-child) {
    margin-bottom: 10px;
}

.single-nouvelle-bloc .titre-publication:after {
    content: "";
    display: inline-block;
    width: 23px;
    height: 15px;
    position: absolute;
    transform-position: center center;
    right: 0px;
    top: 0px;
    bottom: 0px;
    margin: auto;
    transform: rotate(-90deg);
    background: white;
    -webkit-mask-image: url(/images/flechebas.svg);
    mask: url(/images/flechebas.svg);
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center center;
    -webkit-mask-size: contain;
    mask-size: contain;
    mask-position: center center;
    mask-repeat: no-repeat;
}

.featured-article {
    border: 1px solid #82757529;
    padding: 10px;
    justify-content: center;
}

.btn_gestion{
    padding: 5px;
    border: 1px solid #82757529;
    margin-top: 5px;
    border-radius: 4px;
    width: 100%;
}

.article {
    border: 1px solid #82757529;
    padding: 10px;
    width: 30%;
    margin-top: 2%;
}

.article.vide {
    all: unset;
}

.wrap.section-nouvelles {
    display:block;
}


/***** CANDIDATURE *****/

#label-cv{
    padding:5px;
    border-radius:5px;
}
.section-ouverture {
    padding: 20px;
}
.divArchives input:checked + a{color: inherit}
.wrap.background{position: absolute;left: 0;right: 0;top: 0;bottom: 0;z-index: -1;max-width: none;background-size: cover;background-repeat: no-repeat;background-position: center top;}

/*NOTE: catégorie réalisation */
.categorie-realisation-container, .categorie-realisation-container {
    width:100%;
    height: 100%;
    margin: 0;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    background-color: rgba(0, 0, 0, 0.5);
    background:black;
    transition:opacity 0.4s ease;
}

.categorie-realisation-container:hover {
    opacity: 0.8;
}

.equipe-container {
    display: flex;
    flex-direction: column;
    background: black;
    justify-content: flex-end;
}

.equipe-container .image-categorie {
    flex-grow: 1;
}

.categorie-realisation-container .infos , .equipe-container .infos {
    box-sizing:border-box;
    padding:20%;
    color:white;
    padding-top: 45px;
    background: black;
}

.categorie-realisation-container .infos .titre {
    font-size:30px;
    font-weight:normal;
    line-height:1em;
    margin:0;
    text-transform:uppercase;
}

.equipe-container .infos .titre {
    margin:0;
    line-height:1em;
    font-size:20px;
}

.categorie-realisation-container .infos .texte, .equipe-container .infos .texte {
    font-size:18px;
    line-height:1.2em;
    margin:0;
}

.equipe-container .infos .texte {font-size:20px;font-weight: lighter;}

.categorie-realisation-container .infos > :not(:last-child), .equipe-container .infos > :not(:last-child) {
    margin-bottom:10px;
}

.categorie-realisation-container > div, .equipe-container > div {
    display: flex;
    justify-content: flex-end;
    flex-direction: column;
    background: black;
}

.categorie-realisation-container .image-categorie, .equipe-container .image-categorie {
    background-size: cover;
    background-position: center center;
    width: 100%;
}

/*NOTE: CALL TO ACTION*/
.cta, .ctae {
    padding: 0 50px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.cta .titre, .ctae .titre {
    text-transform:uppercase;
}

.cta.paragraphe2, .ctae.paragraphe2 {
    padding: 40px calc(100% / 12);
}


/*NOTE: CALL TO ACTION AVEC IMAGE */
.ctai .btn-call-conteneur {margin-top:25px;}
.ctai .cta .titre {font-weight:normal;}

/*NOTE: Catégorie Réalisation */
.catr {
    display: flex;
    flex-direction: column;
    background: black;
    justify-content: stretch;
}

/*NOTE: liste réalisations */
.liste-realisation-single {
    display:flex;
    flex-direction:column;
    color:black;
    margin-bottom:20px;
}

.liste-realisation-single:hover {
    color:black;
}

.liste-realisation-single .infos {
    border:2px solid black;
    padding:12% 20% 20%;
    flex-grow:1;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    background:white;
}

.liste-realisation-single .infos .ligne-1 {
    font-weight:normal;
    margin-bottom:30px;
}

.liste-realisation-single .infos .ligne-1 > :not(:last-child) {
    margin-bottom:20px;
}

.liste-realisation-single .titre {
    font-size:22px;
    margin:0;
    text-transform: uppercase;
    font-weight: normal;
}

.liste-realisation-single .texte {
    font-size:14px;
    margin:0;
}

.liste-realisation-single .bouton {
    font-size:14px;
    padding: 11px 4px;
}

.choix-categorie .bouton {
    width: auto;
    font-size: 14px;
    font-weight: bold;
    padding: 8px 20px;
    background: white;
    color: black;
    line-height: 18px;
}

.choix-categorie {
    margin-bottom: 40px;
    padding:0 10px;
}

.choix-categorie .bouton:not(:last-child) {
    margin-right: 10px;
}

.choix-categorie .bouton.actif {
    background: black;
    color: white;
}

/*NOTE: Fiche */
.fiche .titre {
    font-size:30px;
    line-height:1em;
    margin-bottom:20px;
    text-transform:uppercase;
}

.fiche .texte {
    line-height:1.2em;
    font-size:18px;
    margin-bottom:30px;
}

.fiche .texte > :first-child {
    margin-top:0;
}

.fiche .texte > :last-child {
    margin-bottom:0;
}

.fiche .texte > :not(:last-child) {
    margin-bottom:30px;
}

.fiche .texte p {line-height:1.2em;}

.fiche .image-petite > img {
    width: 100%;
}

.fiche .image-large .single-image > img {
    width: 100%;
}

.fiche .bouton {
    width:auto;
    font-size:18px;
    padding-left:30px;
    padding-right:30px;
}

/*NOTE: Slider */
.slideshow-large {
    overflow: hidden;
    margin-bottom:20px;
}

.slideshow-large img {
    margin-bottom: 0;
}

.slideshow-large > img {
    width: 100%;
}

.slideshow-large > img:not(:first-child) {
    display: none;
}

.slideshow-vignettes {
    display: flex;
    overflow: hidden;
    position:relative;
}

.slideshow-vignettes img {
    margin-bottom: 0;
}

.slideshow-vignettes > img {
    width: calc((100% - 80px) / 5);
    margin-right: 20px;
    transform: translateX(calc(-50% - 10px));
}

.slideshow-vignettes .slick-slide {
    box-sizing: border-box;
    padding: 0 10px;
    cursor:pointer;
}
.slideshow-vignettes:before, .slideshow-vignettes:after {
    position: absolute;
    top: 0;
    bottom: 0;
    background: rgba(255, 255, 255, 0.5);
    width: 10%;
    content: "";
    display: block;
    z-index: 10;
}
.slideshow-vignettes:before {left:0;}
.slideshow-vignettes:after {right:0;}

/*NOTE: section extra fiche */
.bg_grey {
    background:#E9EAEC;
}

.liens-section .bouton, .liste-alliage-single .bouton {width:auto;padding-left:20px;padding-right:20px;}
.liens-section .bouton.inverse {background:transparent;}
.liens-section .bouton.inverse:hover {background:black;}
.liste-alliage-single .image {
    display: flex;
    align-items: stretch;
}

.liens-section .liste-alliage-single {padding:0 10px;}

.liste-alliage-single .image img {object-fit:cover;}

.liste-alliage-single p {
    font-size: 18px;
    line-height: 1.4em;
}

.liens-section .liste-alliage-single:not(:last-child) {margin-bottom:20px}

.liens-section .entete-liens .titre {
    text-transform:uppercase;
    font-size:48px;
}

.liens-section .entete-liens {margin-bottom:40px;}

/*NOTE : liste d'alliage */
.liste-alliage-single .image {width:calc(100% / 3);}
.liste-alliage-single .infos {
    width:calc(100% / 3 * 2);
    padding: 40px;
    box-sizing: border-box;
    border: 2px solid black;
    background: white;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
}

.liste-alliage-single .infos :not(:last-child) {
    margin-bottom:20px;
}

.liste-alliage-single .infos .titre {text-transform:uppercase;font-weight:normal;font-size:30px;line-height:1em;}
.liste-alliage-single .infos .texte {line-height:1.2em;font-size:18px;}
.liste-ajax .liste-alliage-single:not(:last-child) {margin-bottom:20px;}
.liste-alliage-single :first-child {
    margin-top: 0;
}

.liste-alliage-single :last-child {
    margin-bottom: 0;
}

/*NOTE: slideshow realisations*/
.slideshow-realisations .slick-track {
    display: flex;
}

.slideshow-realisations .slick-slide {
    height: inherit !important;
    padding: 0 10px;
}

.slideshow-realisations .slick-track .liste-realisation-single {
    height: 100%;
    display: flex !important;
    margin: 0;
}

.slideshow-realisations .slick-slide > div {
    height: 100%;
}

.slideshow-realisations .liste-realisation-single .infos {
    flex-grow: 1;
}

.slideshow-realisations:before, .slideshow-realisations:after {
    position: absolute;
    top: 0;
    bottom: 0;
    background: rgba(233, 234, 236, 0.5);
    width: 9%;
    content: "";
    display: block;
    z-index: 10;
}
.slideshow-realisations:before {left:0;}
.slideshow-realisations:after {right:0;}

/*NOTE: Blogue*/
.filtres {margin-bottom:70px;}
.filtres select, .filtres input[type="text"] {
    width: 100%;
    color: #58585a;
    line-height: 16px;
    padding: 10px;
    padding-right:30px;
    height: auto;
    font-size: 16px;
    -webkit-appearance: none;
    appearance: none;
    box-sizing: border-box;
    height: 37px;
    font-weight: normal;
}
.filtres select option {color:#58585a;}
.filtres .select-container:after, .filtres .recherche-container:after {
    background:#58585a;
    right:0;
}
.filtres .select-container {width: calc(50% - 5px);}
.filtres .select-container:after {
    mask:url('/images/triangle.svg');
    -webkit-mask-image:url('/images/triangle.svg');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
}

.filtres .section-gauche {
    display:flex;
    justify-content:space-between;
}

.filtres input[type="text"] {width:100%;}

.filtres input::-webkit-input-placeholder { /* Chrome/Opera/Safari */
    color:#58585a;
    font-weight:normal;
}
.filtres input::-moz-placeholder { /* Firefox 19+ */
    color:#58585a;
    font-weight:normal;
}
.filtres input:-ms-input-placeholder { /* IE 10+ */
    color:#58585a;
    font-weight:normal;
}
.filtres input:-moz-placeholder { /* Firefox 18- */
    color:#58585a;
    font-weight:normal;
}

.blog-article {
    display: flex;
    flex-direction: column;
    margin-top:10px;
    margin-bottom:10px;
    color:black;
    text-align: center;
}

.blog-article .infos {
    padding: 20px 20px 40px;
    /*border: 1px solid black;*/
    flex-grow: 1;
}

.blog-article .titre {
    font-weight: normal;
    font-size: 22px;
    line-height: 1em;
    text-transform: uppercase;
}

.blog-article .date {
    font-weight: normal;
    line-height: 1em;
    font-size: 14px;
    color:#6d6b6b;
}

.blog-article .infos :not(:last-child) {
    margin-bottom: 10px;
}

.blog-article .texte {
    line-height: 1.2em;
    font-size: 14px;
}

.liste-blogue .afficher-plus {
    margin-top: 40px;
    font-size: 14px;
    line-height: 14px;
    padding: 11px 10px;
}

.fiche-blogue .date {
    font-size: 14px;
    font-weight: normal;
    margin-bottom:20px;
    color:#6d6b6b;
}

.fiche-blogue {
    flex-direction: row-reverse;
}

.fiche-blogue .titre-commentaires{font-size: 30px; line-height: 45px; font-weight: bold; margin-bottom: 30px; }
.fiche-blogue .titre-soumettre{font-size: 24px; line-height: 45px; font-weight: bold; margin-bottom: 30px; margin-top: 30px; }
.fiche-blogue .separateur{ margin: 30px 0; border-bottom: 1px solid black; }

#nous-joindre-formulaire input, #nous-joindre-formulaire textarea {color:black;}

/* Formulaire candidature */
#nous-joindre-formulaire ::-webkit-input-placeholder { /* Chrome/Opera/Safari */
    color:black;
    text-transform:uppercase;
    font-weight:normal;
}
#nous-joindre-formulaire ::-moz-placeholder { /* Firefox 19+ */
    color:black;
    text-transform:uppercase;
    font-weight:normal;
}
#nous-joindre-formulaire :-ms-input-placeholder { /* IE 10+ */
    color:black;
    text-transform:uppercase;
    font-weight:normal;
}
#nous-joindre-formulaire :-moz-placeholder { /* Firefox 18- */
    color:black;
    text-transform:uppercase;
    font-weight:normal;
}

#nous-joindre-formulaire .bouton {
    font-size: 18px;
    padding: 10px 30px;
    width: auto;
    line-height: 1em;
}

.titre-message {
    color:black;
    text-transform:uppercase;
    font-weight:normal;
}

.equipe-container .infos {
    padding: 30px 16%;
}

.equipe-container .social .icone {
    width: 20px;
    height: 20px;
    display: inline-block;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    transition: opacity 0.4s ease;
}

.equipe-container .social .icone:not(:last-child) {
    margin-right: 10px;
}

.equipe-container .social .icone:hover {
    opacity: 0.8;
}

.icone.courriel {
    background-image: url(/images/mail.svg);
}

.icone.telephone {
    background-image: url(/images/phone.svg);
}

.icone.linkedin {
    background-image: url(/images/linkedin.svg);
}

.map-container {position:relative;overflow: hidden;}

.map-container #map {position:absolute;top: 46px;left:0;right:0;bottom: 0;height: calc(100% - 46px);}

.bureaux.wrap {position:relative;pointer-events:none;}

.zoneBureau {width:100%;}

.liste-bureaux {
    width: 100%;
    display: flex;
    margin-bottom:10px;
    pointer-events:all;
}

.liste-bureaux .choix-bureau {
    background: black;
    color: white;
    padding: 4px 13px;
    text-transform: uppercase;
    font-weight: 900;
    font-size: 24px;
    cursor:pointer;
    border:1px solid black;
    transition:background-color 0.4s ease, color 0.4s ease;
}

.liste-bureaux .choix-bureau:not(:last-child) {
    margin-right:10px;
}

.liste-bureaux .choix-bureau:hover {
    background:white;
    color:black;
}

.infos-bureaux {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding-bottom:20vh;
    max-width: calc(50% - 60px);
}

.infos-bureaux .bureau {
    background:black;
    color:white;
    font-size:18px;
    padding: 80px;
    display:none;
    pointer-events:all;
}
.infos-bureaux .bureau:first-child {display:block;}

.infos-bureaux a {color:white;display: block;}
.infos-bureaux .courriel {text-decoration:underline;}
.infos-bureaux a:hover {
    color: white;
}

.infos-bureaux .bureau p {
    margin: 0;
}

.infos-bureaux .bureau > :not(:last-child) {
    margin-bottom: 30px;
}

.infos-bureaux .bureau a, .infos-bureaux .bureau div, .infos-bureaux .bureau .titre, .infos-bureaux .bureau p {line-height:1em;font-size:24px;}
.infos-bureaux .bureau .adresse {font-weight: normal;}
.navigation .separateur {
    height: 1px;
    background: black;
}

.wrap .paragraphe.ctae {
    margin-top:-180px;
    background:black;
    color:white;
    padding:80px;
}

.wrap .paragraphe.ctae .bouton {border-color:white;}

.cta .texte, .ctae .texte {margin-bottom:20px;}

.cta .texte > :first-child, .ctae .texte > :first-child {
    margin-top:0;
}

.cta .texte > :last-child, .ctae .texte > :last-child {
    margin-bottom:0;
}

.ctae .titre {
    font-size: 30px;
    font-weight: normal;
    margin-bottom: 20px;
}

.cta .texte p, .ctae .texte p {
    line-height: 1.5em;
}

.ctae .bouton {width:auto;padding-left:30px;padding-right:30px;}

.std .texte p {
    line-height: 1.5em;
}

.std .titre {
    line-height: 1em;
    text-transform: uppercase;
    margin-bottom: 20px;
    font-size: 30px;
}

.paragraphe.img img {
    width:100%;
}
.recaptcha {margin-top: 18px;}
.cta.paragraphe1 {
    display: grid;
    grid-auto-rows: auto;
    grid-template-columns: 1fr 3fr;
    grid-gap: 20px;
    grid-auto-rows: auto;
    grid-auto-flow: column;
    align-items: start;
    padding: 0;
}

.cta.paragraphe1 .titre {
    grid-row-end: span 2;
    margin: 0;
}

.cta.paragraphe1 .texte {
    margin-bottom: 0;
}

.cta.paragraphe1 .bouton {
    width:auto;
    padding-left:60px;
    padding-right:60px;
}

.cta.paragraphe1 :only-child {
    grid-column-end: span 2;
    grid-row-end: span 1;
}

/*.entete-image:after {
    display: block;
    position: absolute;
    height: 80px;
    bottom: 100%;
}

.entete-image:after {content: "";position: absolute;bottom: 0;left: 0;right: 0;height: 180px;transform: translateY(50%);background-size: auto 100%;background-repeat: repeat-x;background-position: top center;z-index: 100;}*/
.section.equipe {width: calc(100% + 20px);}

.liens-section > .wrap {padding:0 10px;}

.cta-container {
    display: flex;
    align-items: stretch;
}

.cta-container > div {
    box-sizing: border-box;
    width: 50%;
}

.cta-container .cta {
    border: 1px solid black;
    padding: 20px calc(100% / 12);
}

footer {background-color:black !important;color: white;box-sizing:border-box;box-shadow: 0 0 5px 0 rgba(0,0,0,0.4);margin-top: 50px;}
footer > .wrap {display:flex;justify-content:space-between;align-items:flex-end;/*flex-direction:column;*/box-sizing:border-box;}
footer a {color: #fff;color: var(--main-color);transition:opacity 0.4s ease;}
footer a:hover {opacity:0.6;}
footer .reseaux-sociaux a {display:inline-block;width:30px;height:30px;}
footer .reseaux-sociaux a:not(:last-child) {margin-right:10px;}
footer h2 {font-size:24px;}
footer .footerHaut{display:flex;margin-top:90px;margin-bottom:60px;justify-content: space-between;}
footer .a-propos, footer .localisation, footer p {font-size: 1rem;line-height: 1.8rem;}
footer .tel-mail a {display:block;font-size: 1rem;line-height: 1.8rem;}
footer .footerBas{
    display: flex;
    justify-content: flex-start;
    width: 100%;
    margin-bottom:130px;
    align-items: center;
    padding: 17px 0;
}
footer textarea::placeholder, footer input::placeholder {color:#aeacac;font-weight:normal;font-size:14px;font-family: 'Roboto Condensed', sans-serif;}
footer .formulaire-ajax label {color:#aeacac;margin-bottom:5px;display:block;font-weight:normal;font-size:14px;font-family: 'Roboto Condensed', sans-serif;}
footer textarea, footer input {color:white !important;font-family: 'Roboto Condensed', sans-serif;padding: 6px 0;margin-bottom:16px;border-bottom:1px solid white !important;}
footer input {padding:6px 0 !important;}
footer textarea {border: 1px solid white;}
footer .send-form{ border: 1px solid white; padding: 6px; cursor:pointer; }
footer .send-form:hover{opacity:0.6;}
footer .footerHautDroit a {justify-self: self-end;align-self: center;}
footer .footerHautDroit img{width: auto;flex-grow: 1;vertical-align: middle;margin-left: 5.9%;align-self:center;}
footer .svgTchin{width: 140px;margin-left: 10px;}
footer .facebook {width: 32px;height: 32px;background-image: url(/images/facebook.svg);background-size: contain;background-position: center center;background-repeat: no-repeat;margin-right: 30px;display: inline-block;margin-top: -4px;}
footer .droit{display:flex;align-items: flex-end;}
footer u {margin-right:50px;}
footer a:hover {color:white !important;}
footer #iso-img {width: 270px;margin-top: 20px;margin-bottom: -40px;}
.footer-end {margin-bottom:-50px !important;}
.footerBas > :not(:last-child) {margin-right:20px;}
.footerBas .realisation-par {display:flex;align-items:center;}

.btn-categorie {display:none;}

.titre-page .ctas {
    display: flex;
    justify-content: space-between;
    margin-top:20px;
}

.titre-page .ctas .bouton {
    width: calc(50% - 10px);
    border: 1px solid white;
    flex-shrink: 0;
}

.page-accueil .titre-page h1 {line-height:1em;margin:0;}
.titre-page h2 {font-size:62px;margin:0;}




/********** Carrière **********/

.carriere .flex.content.complet.low-margin.entreprise {
    height:475px;
    color: white;
}
.carriere + div {
    background-color: white;
    z-index: 1;
    margin-top: 20px;
}
.carriere form{
    padding: 25px;
    color: white;
    position:relative;
}

.carriere form .titre {
    font-size: 24px;
    font-weight: 400;
    line-height: 1em;
}
.carriere form input[type=text], .carriere input[type=email], .carriere input[type=date], .carriere input[type=url] {
    color: white;
    border-color: white;
}
.carriere input[type=text], .carriere input[type=email], .carriere input[type=date], .carriere .formulaire select, .carriere input[type=url], .carriere input[type=checkbox]{
    margin-bottom: 40px;
}
.carriere textarea {
    -webkit-appearance: none;
    appearance: none;
    border: 1px solid white;
    color: white;
    height: 200px;
    background: unset;
    resize: vertical;
    width: 100%;
    box-sizing: border-box;
    padding: 10px;
    margin-bottom: 10px;
}
.carriere form .btn input[type=submit] {
    width: 100%;
    border: solid 1px #ffffff;
    padding: 10px 20px;
    cursor: pointer;
}

.carriere form.submitting:after {
    content: "";
    position: absolute;
    display: block;
    width:100%;
    height:100%;
    top:0;
    left:0;
    right:0;
    bottom:0;
    background-image: url(/images/loading.svg);
    background-color: rgba(0,0,0,0.2);
    background-size: 100px;
    background-repeat: no-repeat;
    background-position: center;
    backdrop-filter: blur(2px);
}

.carriere .btn input[type=submit], .carriere .btn a {
    border-color: white;
    color: white;
}
.carriere form ::placeholder{
    color: white;
    opacity: 0.99;
}
.carriere form :-ms-input-placeholder{
    color: white;
}

.carriere form .btn, .carriere .liste-emplois input[type=text], .carriere input[type=email], .carriere input[type=date]{
    width: 100%;
}

.carriere .wrap {
    margin-top: 175px;
}
.carriere .wrap .flex.column{
    margin-left: 10px;
}
.carriere .formulaire2 select {
    width: 100%;
    filter: invert(100%);
    color: black;
    font-weight: 500;
    background: url(/images/icons/select.png) center right no-repeat;
}
.carriere h1 {
    font-size: 48px;
    font-weight: 300;
}
.carriere h2 {
    font-size: 24px;
    font-weight: 500;
}
.carriere .paragraphe {
    color: black;
}
.carriere .liste-emplois .titre-categorie {
    background: none;
    box-sizing: border-box;
    height: 30px;
    border: none;
    border-bottom: solid 1px #373841;
    width: 49%;
    color: black;
}
.carriere .liste-emplois div:not(.titre-categorie){
    width: 100%;
}
.carriere .entete-emplois > * {
    margin: 20px 0;
}
.carriere .entete-emplois .space-between {
    display: flex;
    justify-content: space-between;

}
.carriere .entete-emplois {
    margin-bottom: 10px;
}
.carriere .entete-emplois select.d1-3 {
    width: calc((100%) / 3);
}
.carriere .entreprise > *{
    margin: auto;
    padding: 10px;
}
.carriere .entreprise h2.titre{
    position: relative;
    text-transform: uppercase;
    display: inline-block;
    margin-bottom: 10px;
    font-size: 42px;
}
.carriere .entreprise h2.titre:after{
    bottom: 0;
    right: 0;
    position: absolute;
    width: 50%;
    content: "";
    border: none;
    border-bottom: solid 1px white;
}
.carriere .entreprise h3.titre{
    font-size: 36px;
}
.carriere .entreprise .titre, .carriere .formulaire, .carriere .formulaire input{
    font-weight: 300;
}
.carriere .entreprise .btn a{
    width: 100%;
    margin-top: 25px;
}
.carriere .entreprise .paragraphe {
    line-height: 1.3;
}
.carriere .entreprise .wrap{
    align-items: flex-start;
}
.carriere .liste-emplois a.tuile{
    display: inline-flex;
    flex-direction: column;
    margin: 20px 20px 20px 0;
    border: solid 1px #b4c3ca;
    padding: 15px;
    width: 180px;
}
.carriere .liste-emplois .tuile h4.titre,.carriere .liste-emplois .tuile{
    font-size: 14px;
}
.carriere .icone{
    display: inline-block;
    margin-right: 5px;
    width: 20px;
    height: 20px;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    transition: opacity 0.4s ease;
    vertical-align: middle;
}
.carriere .localisation .icone{
    background-image: url(/images/icons/localisation.svg);
}
.carriere .date .icone{
    background-image: url(/images/icons/calendrier.svg);
}
.carriere .liste-emplois a.tuile .entreprise{
    margin-bottom:  20px;
}
.carriere .liste-emplois a.tuile .localisation, .carriere .liste-emplois a.tuile .date{
    margin-bottom:  5px;
}
.carriere .liste-emplois a.tuile .titre{
    font-weight: bolder;
}
.carriere .liste-emplois a.tuile span{
    color: #343435;
}
.carriere .entreprise .paragraphe {
    color: white;
}
.carriere .detail-poste.column > :not(:first-child) {
    margin-bottom: 0;
}
.carriere .detail-poste.column .localisation, .carriere .detail-poste.column .paragraphe {
    margin-top: 20px;
}
.carriere .detail-poste.column .date {
    margin-top: 10px;
}
.carriere .detail-poste.column .date, .carriere .detail-poste.column .localisation {
    color: #343435;
}

.carriere .detail-poste.column .paragraphe {
    padding-right: 30px;
}
.carriere .formulaire .joindre-fichier input {
    width: calc((100% - 60px) / 4 * 3);
}
.carriere .formulaire .joindre-fichier a {
    width: 110px;
    height: 36px;
    box-sizing: border-box;
    border-radius: 0;
    text-align: center;
    font-family: 'Fira Sans Condensed', sans-serif;
    font-size: 16px;
    outline: none;
    color: #ffffff;
    /*color: #0d5d81;*/
    border: 1px solid;
    /*border-radius: 4px;*/
    background-color: transparent;
    padding: 10px 5px;
}

.carriere .formulaire .message span {
    padding-left: 9px;
    display: inline-block;
    margin-bottom: 10px;
}

.carriere .formulaire h2 {
    margin-bottom: 20px;
}
.carriere .formulaire .btn{
    margin: 20px 0 10px 0;
}
.carriere .message_confirmation {
    margin-bottom: 30px;
    display: none;
}
.carriere .formulaire.entreprises input[type=text], .carriere .formulaire.entreprises input[type=date], .carriere .formulaire.entreprises input[type=url]{
    width: 100%;
}
.carriere .full {
    width: 100%;
}
.carriere .formulaire.entreprises select {
    border-bottom-color : white;
    background: url(/images/icons/select-white.png) transparent center right no-repeat;
    color: white;
}
.carriere .formulaire.entreprises select option {
    color: black;
}
.carriere textarea {
    margin-bottom: 20px;
}
.carriere #fichier {
    margin-right: 20px;
}
.carriere .detail-poste .btn a {
    background-color: #0D5D81;
    margin-top: 15px;
}
.carriere .formulaire select{
    text-transform: uppercase;
    font-weight: 300;
}
.carriere input[type=url] {
    background: none;
    border: none;
    border-bottom: solid 1px white;
    height: 30px;
    padding: 0 0 0 9px;
}
.carriere .date .icone {
    width: 15px;
    margin-left: 3px;
    margin-bottom: 3px;
    height: 20px;
}
.carriere .detail-poste .entreprise {
    color: #6a6a6b;
}
.carriere .formulaire input[type="checkbox"] {
    background: white;
    border: 1px solid white;
}
.carriere .employeur-conciliant span{
    line-height: 26px;
    padding-left: 9px;
}
.carriere .content .wrap .d1-2 .btn a {
    color: white;
    font-weight: 400;
    font-size: 18px;
    padding: 10px 20px;
    letter-spacing: 0;
    display: inline-block;
    box-sizing: border-box;
    border: 1px solid white;
    transition: all 0.4s ease;
    cursor: pointer;
    background: unset;
    text-align: center;
    margin-bottom: 0;
}
.carriere form input {
    text-transform: uppercase;
}

.ico-localisation{ padding: 11px 8px; background: url(../images/localisation.svg) center no-repeat; background-size: 15px auto; display: inline-block; margin-left: 0; margin-right: 7px; vertical-align: middle; }
.ico-temps{padding:11px 8px;background: url(../images/horloge.svg) center no-repeat;background-size: 15px;display: inline-block;margin-right: 6px;vertical-align: middle;}
.ico-date{padding:11px 8px;background: url(../images/calendrier.svg) center no-repeat;background-size: 15px;display: inline-block;margin-right: 6px;vertical-align: middle;}

.formulaire-carriere input[type=text],
.formulaire-carriere input[type=email],
.formulaire-carriere select{padding-top: 4px; padding-bottom: 4px; margin-top:30px; border:none; border-bottom: 1px solid;}
.formulaire-carriere{ width: 50%; /* width: 450px;*/ padding: 33px 34px 35px 38px;border-bottom: 1px solid #344b57;background: #fff;box-shadow: 1px 0 21px 0 rgba(0, 0, 0, 0.57);position: sticky;top: 100px; }
.formulaire-carriere .titre{text-transform: uppercase; font-size: 24px;}
.formulaire-carriere .titre + select{margin-top: 22px; color: #000; border:none; border-bottom: 1px solid;}
.formulaire-carriere .titre + select+option{color: #000;}
.formulaire-carriere textarea{margin-top: 5px;}
.formulaire-carriere button{display: block; width: 40%; font-weight: bold; margin-top: 30px; border-radius: 5px; }
.formulaire-carriere .formulaire-ligne{display: flex;align-items: center; justify-content: space-between; margin-top: 0;}
.formulaire-ligne > input{flex: 1;}
.formulaire-ligne > input.double{width: 48%; flex: unset; border:none; border-bottom: 1px solid;}
.formulaire-ligne .bouton{font-weight: bold; padding: 9px 27px; font-size: 16px; margin-left: 24px; background: #464748; margin-top: 10px; border-radius: 7px;}
.formulaire-ligne .bouton-lien{ margin-left: 24px; margin-top: 10px; }
.formulaire-ligne a.bouton-lien{ color: #000; border: 2px solid; border-radius: 4px; padding: 11px; padding-right: 17px; padding-left: 17px; }
.formulaire-carriere label{margin-top: 30px;display: block;color: #344b57;}
.formulaire-carriere .formulaire-ligne label{margin-top: 26px;}
.formulaire-carriere .label-titre{text-transform: uppercase; display: block;}
label textarea.bloc{ border: 1px solid;}
.formulaire-emplois input:focus:required:invalid,
.formulaire-emplois input:-moz-submit-invalid,
.formulaire-emplois input:-moz-ui-invalid,
.formulaire-emplois textarea:focus:required:invalid,
.formulaire-emplois textarea:-moz-submit-invalid,
.formulaire-emplois textarea:-moz-ui-invalid,

.page-emplois, .page-blog{ font-family: 'Montserrat', sans-serif; width: 100%; }
.page-emplois .titre{ position: initial; }
.page-emplois .titre:before {
    position: absolute;
    content: "";
    height: 0;
    width: 0;
    bottom: 0;
    left: 0;
}
.page-emplois .resultat-section .resultat-titre{font-size: 19px; font-weight: normal; padding: 6px 0;}
.page-emplois .resultat-section .resultat-liste{flex-wrap: wrap; padding: 18px 23px 0 0; }
.page-emplois .resultat-section .resultat-liste article{ transition: all 0.4s ease; display: flex; flex-direction: row; }
.page-emplois .resultat-section .resultat-liste article:hover{ transform: scale(1.1); transition: all 0.4s ease; }
.page-emplois .resultat-liste article{width: 80%; border-bottom: 1px solid #b4c3ca; text-align: left;min-height: 0; margin-bottom: 20px;}
.page-emplois .resultat-details{padding: 14px; display: flex; flex-direction: row;}
.page-emplois .resultat-details .titre{font-size: 15px; text-transform: none;margin: 0;}
.page-emplois .resultat-details .detail{margin-top: 6px; margin-left: 40px;}
.page-emplois .resultat-section {padding: 2px 0 0;}
.page-emplois .colones-emplois{display: flex; flex-direction: row; margin-top: 30px;}
.colone-emplois-liste{ width: 900px; padding-top: 43px; }
.colone-emplois-liste .titre{font-size: 16px;}
.colone-emplois-liste article a .titre{color:#000;}
.colone-emplois-liste article a .resultat-details{color:#7D7D7D;}
.select-positions{display: flex;margin: 46px 0 36px; justify-content: space-between; margin-right: 50px;}
.select-positions select{flex: 1;}
.select-positions-titre{font-size: 24px; font-weight: bold; text-transform: uppercase; margin-right: 28px;}

.page-emplois p.texte{color:#464748; line-height: 26px; font-size: 16px;}
.page-emplois h2.titre{color:#353539; font-size: 33px; line-height: 90px;}
.page-emplois h3.sous-titre{color:#000000; margin-top: 10px; font-size: 16px;}
.page-emplois-details .colone-emplois-liste{padding-top: 25px;}
.page-emplois-details .sous-titre{font-size: 16px;font-weight: normal;text-transform: uppercase;}
.page-emplois-details .ico-temps,
.page-emplois-details .ico-localisation{margin-right: 8px;}



/********** Fin Carrière **********/



.space-between {
    justify-content: space-between;
}
.flex {
    display: flex;
}
.column {
    flex-direction: column;
}
.flex-wrap {
    flex-wrap: wrap;
}

/* Formulaire de connexion */
.conteneur-form-connexion{ display: flex; align-items: center; margin-top: 50px; }
.form-connexion-gauche{ flex: 1; padding-right: 20px; padding-left: 20px; }
.form-connexion-gauche .bouton{ margin-top: 10px; }
.form-connexion-droite{ flex: 1; border-left: 1px solid #000; padding-left: 20px; padding-right: 20px; padding-bottom: 31px; }

/* FORMULAIRE ADRESSES */
.adresse input[type="radio"]{ width:20px; height:20px; -webkit-appearance: none; position: relative; }
.adresse input[type="radio"]:after{ top: 4px; right: 4px; bottom: 4px; left: 4px; border-width: 2px; border-radius: 50%; content: ""; position: absolute; }
.form-compte input[type="checkbox"]{ width:20px; height:20px; -webkit-appearance: none; position: relative; }
.form-compte input[type="checkbox"]:after{ top: 4px; right: 4px; bottom: 4px; left: 4px; border-width: 2px; content: ""; position: absolute; }
.form-compte label.checkbox{ display: flex; align-items: center; }

@media screen and (min-width:801px) {
    .filtres-recherche > .wrap {
        justify-content:flex-end;
    }

    .filtres-recherche > .wrap > :not(:first-child) {
        margin-left:20px;
    }

    .ico.edition.fixed {position: fixed;top: 80px;}
}

.liste-activites.slick-initialized, .liste-nouvelles.slick-initialized {
    margin-left:-10px;
    margin-right:-10px;
    max-width:unset;
    width:calc(100% + 20px);
}

.liste-activites .slick-slide, .liste-nouvelles .slick-slide {
    padding: 0px 10px;
    box-sizing: border-box;
}

.liste-activites {  justify-content:space-between; font-size:14px;  }
.liste-activites img {  width:100%;  margin-bottom:20px;  }
.liste-activites .titre {  font-weight:300;  font-size:20px;  margin-bottom:6px;  line-height:1em;  }
.liste-activites .date {  font-weight:500;  color:#8e8d8d;  margin-bottom:6px;  line-height:1em;  }
.liste-activites .description { font-weight:600;  color:#8e8d8d;  line-height:1em;  }
.liste-activites .entete {  display: flex;  justify-content: space-between;  align-items: center;  margin-bottom:50px;  }
.activites .entete {  display:flex;  justify-content:space-between;  align-items:center;  margin-bottom:50px;  }
.activites .entete .titre, .nouvelles .entete .titre {  font-weight:300;  font-size:56px;  }
.liste-activites .image_hover {  margin-bottom: 20px;  height: 0px;  padding-bottom: 68%;  overflow: hidden;  position: relative;  }
.liste-activites .image_hover img {  width: 100%;  height: 100%;  object-fit: cover;  }
.liste-activites .image_hover .image {  position: absolute;  top: 0px;  left: 0px;  bottom: 0px;  right: 0px;  transition:all 0.4s ease;  }
.liste-activites .image_hover:hover .image {  top: -10px;  left: -10px;  bottom: -10px;  right: -10px;  }
.liste-activites a {  display:block;  }
.liste-complete-activites .liste-activites > a {  margin-bottom:60px;  }
.liste-complete-activites .liste-activites .titre {  font-size:24px;  }
.low-margin {
    margin-bottom:100px;
    margin-top:100px;
}
/*.btn-container{ display: flex; }*/
.btn-container .bouton:not(:last-child) {
    margin-right:20px;
}

.commentaire-auteur{ font-style: italic; }



/* STYLE PRODUITS */
/*.produitsN .produits-entete{
    display:flex;
    flex-direction: row;
    width: 100%;
    justify-content: flex-start;
    padding-top:60px;
    padding-bottom:30px;
    font-size: 30px;
    color: #7a8286
}

.produitsN .produits-entete :first-child{
font-size: 30px;
color: #0d5d81;
font-family: 'Fira Sans Extra Condensed', sans-serif;
font-weight: 900;
}
.produitsN .produits-entete .space {
    margin:0px 6px;
}
.produitsN .menu_produits{
    display: flex;
    flex-direction: row;
}
.produitsN .conteneur-produits{
    display: flex;
    flex-direction: row;
    width:100%;
    justify-content:space-between;
    margin-bottom:255px;
}
.produitsN .produits-filtres{
    background-color: #e6e6e6;
    box-sizing:border-box;
    padding:0px 20px;
}
.produitsN .conteneur1100 .wrap{ display: flex; }
.produitsN #produits-resultats{
    margin-top: 40px;
}
.produitsN .display-mobile{ display: none; }
.produitsN #produits-filtres-form input[type="checkbox"]:checked {
    background: #e6e6e6;
}
.produitsN #produits-resultats-recherche{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
}

.produitsN #produits-resultats-recherche { display: grid; grid-template-columns: repeat(3, 1fr); grid-column-gap: 20px; grid-row-gap: 20px; }

.produitsN .boite-conteneur.produit-resultat.d1-3{
    position: relative;
}
.produitsN .produit-resultat-image img{
    width:50%;
    height: 160px;
    object-fit: contain;
    display: block;
    margin: auto;
    padding-bottom: 40px;
}
.produitsN .produit-resultat-details{
    padding-left: 30px;
    color: #000;
}
.produitsN .produit-resultat-prix{
    font-size:24px;
    font-weight: 500;
    padding-bottom: 15px;
    color: #131413;
}

.produitsN .produit-resultat-titre a{
    font-size: 18px;
    color: #000;
    font-weight: bold;
}
.produitsN .format{
    font-size: 14px;
    padding-top: 15px;
}
.produitsN .produit-resultat-details .code_produit {
    padding-top: 15px;
    color: #6b6c6b;
    font-size: 14px;
}
.produitsN .conteneur1100 .recherche{
    background-color: #e6e6e6;
    margin-bottom: 10px;
    margin-top: 10px;
    box-sizing: border-box;
    border: none;

}
.produitsN .conteneur1100 .recherche input{
    background-color: #e6e6e6;
    border: none;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left:10px;
    background: url(/images/icones/search.png) transparent center right 10px no-repeat;
    background-size: auto 13px;
    padding-right:30px;
    width:100%;
}
.produitsN .conteneur1100 .recherche input{color: #000;background-size: auto 16px;}
.produitsN select{color: #000;border-color: #0e70b6;}
.produitsN .conteneur1100 .recherche img{
    margin-top: 10px;
}
.produitsN .pagination.haut.desktop{
    display: none;
}
.produitsN .page_title.page_title_classement{
    padding-top: 35px;
    padding-bottom: 20px;
}
.produitsN .page_title.page_title_classement{
    color: #000000;
    font-weight: bold;
}
.produitsN #produits-resultats .prix{
    padding-bottom:10px;
}
.produitsN .produits-filtres-conteneur {
    border-bottom: 1px solid #a7c9db;
    color: #000;
    padding-bottom:30px;
    margin-bottom:30px;
}
.produitsN .ctFiltres.wrap{ align-items: center; }
.produitsN .produits-filtres-conteneur input[type="checkbox"]{border-color: #9C9C9C;margin-right: 10px;border-radius: 2px;width: 18px;height: 18px;}
.produitsN .produits-filtres-conteneur input[type="checkbox"]:before{background-size: 10px;}
.produitsN .produits-filtres .page_title.page_title_classement,
.produitsN .produits-filtres .sous-titre{font-weight: normal;font-size: 24px;padding-bottom: 20px;}
.produitsN .separateur{border-top: 1px solid #9F9D9D;
    margin-bottom: 30px;
    margin-top: 30px;
}
.produitsN .produitsN .separateur{border-color: #a7c9db;}
.produitsN .boite-conteneur{ background-color: #e6e6e6; }
.produitsN .boite-conteneur.produit-resultat.d1-3 .separateur {
    position: absolute;
    bottom: 10px;
    margin: 0px;
    width: 70%;
    left: 15%;
}
.produitsN .sous-titre{
    font-size: 22px;
    font-weight:bold;
    color:black;
}
.produitsN #produits-resultats .pagination-conteneur {
    border-bottom:1px solid black;
    display:inline-block;
}
.produitsN #produits-resultats .pagination a, #produits-resultats .pagination span {
    border-width:0px;
    color:black;
}
.produitsN #produits-resultats .pagination .actif {
    color:#1486c1;
    border-color:#1486c1;
    border-bottom-width:14px;
}
.produitsN .produitsN #produits-resultats .pagination .actif {
    border-bottom-width: 4px;padding-bottom: 9px;
}
.produitsN .produit-resultat.wrap{
    display: flex;
    justify-content: center;
    flex-direction: row;
    padding-bottom:350px;
}
.produitsN .produit-resultat.wrap .produit-resultat-image img{
height: auto;
}
.produitsN .produit-resultat-details.d1-2{
align-self: baseline;
}
.produitsN .produits-filtres-conteneur .aucun-resultat{ font-size: 15px!important; padding: 0; }
.produitsN .produit-resultat-titre{
    font-size: 30px;
    font-weight: bold;
    color: #131413;
    line-height: 0.6em;
}
.produitsN .produit-detail h1 {line-height: 0.9em;}
.produitsN .produit-categorie{
    padding-bottom:20px;
    font-size: 24px;
    color: #131413;
    font-weight: bold;
}
.produitsN .format-produit, .produitsN .autre-format{
    padding-bottom: 30px;
    font-size:20px;
}
.produitsN .description-produit{
    padding-bottom: 40px;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.4em;
}
.produitsN #select-quantite-produits{
    margin-bottom: 20px;
    padding-right: 20px;
    font-size:18px;
    font-weight: 500;
    color: #131413;
}
.produitsN input#select-quantite-produits {
    -webkit-appearance: none;
    appearance: none;
    box-sizing: border-box;
    border-radius: 0;
    height: 30px;
    padding: 0 0 0 9px;
    border: none;
    border-bottom: solid 1px #0e70b6;
    max-width:100px;
}
.produitsN input#select-quantite-produits {
    -moz-appearance: textfield;
}
.produitsN input#select-quantite-produits::-webkit-outer-spin-button,
.produitsN input#select-quantite-produits::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
.produitsN .fct-add-panier{
    background-color:#0d5d81;
    font-size:30px;
    font-weight: 300;
    color:#ffffff;
    text-align: center;
    padding: 10px 30px 10px 30px;
    border-radius: unset;
}
.produitsN .conteneur.conteneur1100.page-produit .produits-entete.wrap{
    padding-bottom:100px;
}
.produitsN .code-produit{
    color: #6b6c6b;
    font-size: 20px;
    margin-top:10px;
    margin-bottom:10px;
}
.produitsN .panier-colone-produit{
    font-size: 18px;
    color: #131413;
    font-weight: 800;
    padding-left: 10px;
}
.produitsN .produits-poubelle img{
    padding-left: 10px;
}
.produitsN .panier #panier-table > div > * {
    border-bottom: solid 1px #0e70b6;
}
.conteneur.page-produit{overflow-x: hidden;}
.produit-resultat-image{position: relative;-webkit-transition: all 0.4s ease;-ms-transition: all 0.4s ease;transition: all 0.4s ease;}
.produit-detail{position: relative;}
.edition-photo,
.ico.edition{background-image: url(../images/icones/edition.svg);background-color: #7d9553;border-radius: 50%;position: absolute;right: -42px;width: 116px;height: 116px;background-size: auto 38px;top: -20px;}
.edition-photo{background-image: url(../images/icones/photo_edition.svg);background-color: #ff0000;right: 0;top: -29px;}
.bouton-enregistrer{background: url(../images/icones/enregistrer.svg) red left 20px center no-repeat;text-transform: uppercase;padding: 11px 36px 11px 78px;border: 0;border-radius: 0;color: #fff;font-weight: 300;font-size: 30px;background-size: auto 30px;margin-top: 18px;-webkit-transition: all 0.4s ease;-ms-transition: all 0.4s ease;transition: all 0.4s ease;}
.bouton-enregistrer:disabled{background-color: #7a8286;cursor: wait}
.mode-edition-actif{display: none;}
.produit-detail .mode-edition-actif textarea{border: 1px solid #0e70b6;padding: 28px 18px;resize: none;width: 100%;margin-bottom: 18px;}
.produit-detail .mode-edition-actif .mce-panel{border-color: #0e70b6;}
.produit-detail .mode-edition-actif .mce-panel.mce-edit-area {border-right-width:1px !important;}
.produit-detail .mode-edition-actif .mce-statusbar{display: none}
.produit-detail .mode-edition-actif input{width: 100%;border-color: #0e70b6;margin-bottom: 18px;color: #000;}
.produit-detail .mode-edition-actif .code-produit{margin-bottom: 18px;opacity: 0.4;}
.produit-detail .mode-edition-actif input.input-small{width: 80px;}
.produit-detail .mode-edition-actif input[type=file]{opacity: 0;position: absolute;left: 0;right: 0;top: -18px;bottom: 0;cursor: pointer;}
.produit-detail .produit-resultat-image.dragover{opacity:0.6;}

.produitsN .panier #panier-table > div:not(.entete) > div{text-align: start; color: #131413; font-weight: 800;}
.produitsN .panier #panier-table > div:not(.entete) > div:not(.panier-colone-produit){white-space: nowrap;}
.produitsN .panier #panier-table > div.entete > div {color: #131413;text-align: left;}
.produitsN .panier #panier-table .panier-colone-spacing{width: 10px;}
.produitsN .bloc-vide{width:120px;}
.produitsN .panier-colone {width: 100px; padding-bottom: 15px;}
.produitsN .panier-colone-format{width: 75px;}
.produitsN .panier #panier-table .entete div{padding-bottom: 10px;}
.produitsN .panier #panier-table .entete div{color: #0e70b6;}
.produitsN .description-categorie{font-weight: 400;}
.produitsN .panier .panier-item .panier-colone-prix{font-size: 18px; color:#0e70b6;}
.produitsN .panier #conteneur-totaux{color:#0e70b6}
.produitsN .btn-suivant > input{
    -webkit-appearance: none;
    text-align: center;
    background: #0e70b6;
    color: white;
    padding: 5px 0;
    text-transform: uppercase;
    text-align: center;
    transition: all 0.4s ease;
    border: 1px solid #0d5d81;
    font-weight: 300;
    font-size: 30px;
    padding: 12px 30px 12px 30px;
    width: unset;
    cursor:pointer;
}
.produitsN .panier #wrap-facturation {
    flex-wrap:wrap;
}
.produitsN .aucun-produit {
    font-size:24px;
}
.produitsN .panier #conteneur-totaux {
    color:#131413;
}
.produitsN .panier #conteneur-totaux .conditions {
    font-size:14px;
    text-align:right;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.produitsN .panier #wrap-facturation #sommaire {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.produitsN #sommaire .btn-soumettre {
    text-align:right;
}
.produitsN .panier #wrap-facturation .bouton {
    -webkit-appearance: none;
    text-align: center;
    background: #0e70b6;
    color: white;
    padding: 5px 0;
    text-transform: uppercase;
    text-align: center;
    transition: all 0.4s ease;
    border: 1px solid #0d5d81;
    font-weight: 300;
    font-size: 30px;
    padding: 12px 30px 12px 30px;
    width: unset;
    cursor:pointer;
}
.produitsN .produit-quantite{font-size: 18px; color:#131413; font-weight: 800}
.produitsN #wrap-facturation .panier-colone{padding-bottom:0px;}
.produitsN #info-facturation {background-color: #0d5d81;}
.produitsN .panier-item{color: #131413; font-weight: 800}
.produitsN .slick-list.draggable{height: unset;padding-top: 100px;}
.produitsN .navigation .wrap .logo img{max-height: 60px}
.produitsN .navigation > .wrap > div > a.logo{margin-top: 5px;}
.produitsN .infos .d1-2.flex.column .ue-logo {width: 126px}
.produitsN .ancien-prix {
    text-decoration: line-through;
    font-weight: normal;
}
.produitsN .page-produit .ancien-prix {
    font-size:20px;
}
.produitsN .autre-format h3 {margin-bottom:10px;}
.produitsN .autre-format a {
    display: inline-block;
    padding: 5px;
    border: 1px solid #0d5d81;
    color: #0d5d81;
    transition: all 0.4s ease;
    margin-right: 10px;
}

.produitsN .autre-format a:hover {
    background-color:#0d5d81;
    color:white;
}

.produitsN .produit-specifications.section-flex {
    display: flex;
    flex-wrap: wrap;
    align-items:flex-start;
}

.produitsN .produit-specifications.section-flex .produit-resultat-prix {
    margin-left:20px;
    color: #0d5d81;
    font-weight:700;
}

.produitsN input#select-quantite-produits {padding-right:20px;margin-bottom:0px;}
.produitsN .qte-holder {position:relative;margin-bottom:20px;}
.produitsN .qte-holder .add {display:inline-block;position:absolute;top:0px;right:0px;bottom:50%;background-color:#0d5d81;background-image:url(/images/up.svg);background-size:14px;background-position:center center;background-repeat:no-repeat;width:20px;z-index:10;}
.produitsN .qte-holder .remove {display:inline-block;position:absolute;bottom:0px;right:0px;top:50%;background-color:#0d5d81;background-image:url(/images/down.svg);background-size:14px;background-position:center center;background-repeat:no-repeat;width:20px;z-index:10;}

*/

.bloc-image-gris {
    display: block;
    color: currentColor;
  }
  .bloc-image-gris:hover, .bloc-image-gris:visited {
    color: currentColor;
  }
  .bloc-image-gris .image-bloc-gris {
    width: 100%;
    height: 0px;
    padding-bottom: 74%;
    background-size: cover;
    background-position: center center;
  }
  .bloc-image-gris .infos-bloc-gris {
    font-size: 18px;
    line-height: 0.8em;
    text-align: center;
    padding: 30px 0px;
    background-color: #e5e5e5;
  }
  .bloc-image-gris .infos-bloc-gris > :not(:last-child) {
    margin-bottom: 10px;
  }
  .bloc-image-gris .infos-bloc-gris .titre-bloc-gris {
    font-weight: 700;
  }
  .bloc-image-gris .infos-bloc-gris .soustitre-bloc-gris {
    font-weight: 400;
  }

  .section-liste-produits {
    margin-top: 110px;
  }
  .section-liste-produits .bloc-image-gris .image-bloc-gris {
    border-radius: 100%;
    padding-bottom: 100%;
  }
  .section-liste-produits .bloc-image-gris .infos-bloc-gris {
    background-color: white;
  }

  .fiche-produit-complete .image-produit > img {
    width: 100%;
    margin-top: 80px;
  }
  .fiche-produit-complete .fiche-infos {
    margin-top: 110px;
    display: flex;
    justify-content: space-between;
  }
  .fiche-produit-complete .fiche-infos .infos-titre {
    display: inline-flex;
    flex-direction: column;
  }
  .fiche-produit-complete .fiche-infos .infos-titre > :not(:last-child) {
    margin-bottom: 5px;
  }
  .fiche-produit-complete .fiche-infos + .texte {
    margin-top: 50px;
  }
  .fiche-produit-complete .texte p {
    margin: 0px;
  }
  .fiche-produit-complete .texte > :first-child {
    margin-top: 0px;
  }
  .fiche-produit-complete .texte > :not(:last-child) {
    margin-bottom: 10px;
  }
  .fiche-produit-complete .caracteristiques {
    margin-top: 80px;
  }
  .fiche-produit-complete .caracteristiques .ligne-caracteristique {
    display: flex;
    align-items: flex-start;
  }
  .fiche-produit-complete .caracteristiques .ligne-caracteristique:not(:last-child) {
    margin-bottom: 50px;
  }
  .fiche-produit-complete .caracteristiques .ligne-caracteristique .titre {
    width: calc((100% / 3) - 20px);
    margin-right: 20px;
    flex-shrink: 0;
    display: inline-flex;
    color: black;
    align-items: flex-end;
  }
  .fiche-produit-complete .caracteristiques .ligne-caracteristique .titre > span {
    flex-shrink: 0;
    display: inline-block;
    font-size: 24px;
    font-weight: bold;
    line-height: 0.8em;
    margin-right: 10px;
    max-width: calc(100% - 60px);;
  }
  .fiche-produit-complete .caracteristiques .ligne-caracteristique .titre:after {
    content: "";
    display: inline-block;
    flex-grow: 1;
    flex-shrink: 1;
    height: 0px;
    border: 1px solid black;
    margin-bottom: 8px;
  }
  .fiche-produit-complete .caracteristiques .ligne-caracteristique .texte {
    flex-shrink: 1;
    flex-grow: 1;
  }
  .fiche-produit-complete .liste-actions {
    margin-top: 100px;
    margin-bottom: 180px;
  }
  .fiche-produit-complete .liste-actions > :not(:last-child) {
    margin-right: 10px;
  }
  .fiche-produit-complete .liste-actions .btn-transparent {
    color: black;
  }
  .fiche-produit-complete .recommandations {
    margin-bottom: 160px;
  }
  .fiche-produit-complete .recommandations > .titre {
    margin-bottom: 70px;
    font-size: 36px;
    line-height: 0.8em;
    font-weight: 700;
  }

  .infos-fromage {
    display: inline-flex;
    flex-direction: row;
    align-items: flex-end;
  }
  .infos-fromage .spacing {
    width: 60px;
    display: inline-block;
  }
  .infos-fromage > :not(:last-child) {
    margin-right: 10px;
  }

  .fiche-produit-complete .main-titre, .fiche-produit .main-titre {
    font-size: 36px;
    font-weight: bold;
    line-height: 0.8em;
    margin: 0px;
    display: inline-block;
  }
  .fiche-produit-complete .second-titre, .fiche-produit .second-titre {
    padding-right: 10px;
    font-size: 18px;
    font-weight: bold;
    line-height: 0.8em;
    margin: 0px;
    display: inline-block;
  }

  .section-boutique {
    padding: 40px 0px;
  }
  .section-boutique.boutique-fiche {
    padding-bottom: 80px;
  }
  .section-boutique .btn-container {
    text-align: center;
    margin-top: 40px;
  }
  .section-boutique .produits-carousel .liste-produits .produit {
    margin-bottom: 0px;
  }

  .liste-produits {
    overflow: hidden;
  }
  .liste-produits .slick-list .slick-track {
    display: flex;
    margin-left: 0px;
  }
  .liste-produits .slick-list .slick-track .slick-slide {
    box-sizing: border-box;
    padding: 0px 20px;
  }
  .liste-produits .produit {
    display: block;
    color: currentColor;
  }
  .liste-produits .produit a {
    color: inherit;
    display: block;
  }
  .liste-produits .produit a.btn {
    display: inline-block;
  }
  .liste-produits .produit:hover, .liste-produits .produit:visited {
    color: currentColor;
  }
  .liste-produits .produit .image-produit {
    width: 100%;
    height: 0px;
    padding-bottom: 100%;
    background-size: cover;
    background-position: center center;
    margin-bottom: 10px;
  }
  .liste-produits  .btn-transparent {
    border: 1px solid black;
}

.liste-produits .btn {
    display: inline-block;
    box-sizing: border-box;
    text-align: center;
    font-size: 20px;
    font-weight: 700;
    line-height: 1em;
    padding: 25px 50px;
    border-radius: 15px;
}
  .liste-produits .produit .infos-produit {
    font-size: 18px;
    line-height: 0.8em;
    text-align: center;
  }
  .liste-produits .produit .infos-produit > :not(:last-child) {
    margin-bottom: 10px;
  }
  .liste-produits .produit .infos-produit .titre-produit {
    font-weight: 700;
    line-height: 1em;
  }
  .liste-produits .produit .infos-produit .soustitre-produit {
    font-weight: 400;
  }
  .liste-produits + .navigation-produits {
    width: 100%;
    text-align: center;
    margin-top: 40px;
  }
  .liste-produits + .navigation-produits:empty {
    display: none;
  }
  .liste-produits + .navigation-produits .produits-dots {
    list-style-type: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    list-style-type: none;
    appearance: none;
    -webkit-appearance: none;
    padding: 0px;
    margin: 0px;
  }
  .liste-produits + .navigation-produits .produits-dots li {
    padding: 0px 5px;
    margin-bottom: 0px;
  }
  .liste-produits + .navigation-produits .produits-dots li [role=tab] {
    display: block;
    width: 19px;
    height: 19px;
    padding: 0px;
    outline: none;
    color: transparent;
    background: #86794f;
    line-height: 0px;
    font-size: 0px;
    cursor: pointer;
    border-radius: 50%;
    border: 2px solid white;
    box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.5);
    opacity: 0.25;
    -webkit-transition: background-color 0.4s ease, opacity 0.4s ease;
    -ms-transition: background-color 0.4s ease, opacity 0.4s ease;
    transition: background-color 0.4s ease, opacity 0.4s ease;
  }
  .liste-produits + .navigation-produits .produits-dots li.slick-active [role=tab] {
    opacity: 1;
    background: black;
  }
  .liste-produits + .navigation-produits .produits-dots li:before {
    display: none;
  }

  .section-nouvelles {
    padding-top: 60px;
    padding-bottom: 150px;
  }
  .section-nouvelles .bloc-image-gris {
    margin-bottom: 20px;
  }
  .section-nouvelles .btn-container .afficher-plus {
    margin-top: 100px;
  }
  .section-nouvelles.single .entete-nouvelle {
    font-size: 18px;
    font-weight: bold;
    line-height: 0.8em;
  }
  .section-nouvelles.single .entete-nouvelle:not(:first-child) {
    margin-top: 90px;
  }
  .section-nouvelles.single .entete-nouvelle h1 {
    line-height: 0.8em;
    font-size: 36px;
    margin-top: 10px;
  }
  .section-nouvelles.single .texte {
    margin-top: 40px;
    font-size: 16px;
    line-height: 1.5em;
  }
  .section-nouvelles.single .texte p, .section-nouvelles.single .texte ol, .section-nouvelles.single .texte ul {
    margin: 0px;
  }
  .section-nouvelles.single .texte li {
    line-height: 1.5em;
  }
  .section-nouvelles.single .texte > :first-child {
    margin-top: 0px;
  }
  .section-nouvelles.single .texte > :not(:last-child) {
    margin-bottom: 30px;
  }
  .section-nouvelles.single .bloc-images {
    margin-top: 50px;
  }
  .section-nouvelles.single .recommandations {
    margin-top: 160px;
  }
  .section-nouvelles.single .recommandations > .titre {
    margin-bottom: 70px;
    font-size: 36px;
    line-height: 0.8em;
    font-weight: 700;
  }

  .section-boutique {
    padding-top: 60px;
    padding-bottom: 150px;
  }
  .section-boutique .liste-produits {
    margin-left: -10px;
    width: calc(100% + 20px);;
  }
  .section-boutique .liste-produits .produit {
    margin-bottom: 80px;
    width: calc((100% / 3) - 20px);
    margin-left: 10px;
    margin-right: 10px;
    box-sizing: border-box;
  }
  .section-boutique .liste-produits .produit .btn {
    color: black;
    padding: 15px 32px;
    margin-top: 20px;
  }
  .section-boutique .liste-produits .produit .btn:after {
    content: "";
    width: 22px;
    height: 22px;
    display: inline-block;
    margin-left: 10px;
    margin-top: -2px;
    vertical-align: top;
    -webkit-mask-image: url("/images/panier.png");
    mask: url("/images/panier.png");
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center center;
    -webkit-mask-size: contain;
    mask-size: contain;
    mask-position: center center;
    mask-repeat: no-repeat;
    background-color: black;
  }
  .section-boutique .titre-suggestions {
    font-size: 36px;
    font-weight: bold;
    margin-bottom: 60px;
  }
  .section-boutique .wrap.produits-carousel {
    padding-top: 125px;
  }
  .section-boutique .btn-container {
    padding-top: 50px;
  }
  .section-boutique .fiche-produit .section-titre {
    margin-bottom: 50px;
  }
  .section-boutique .fiche-produit .section-titre .titre, .section-boutique .fiche-produit .section-titre .soustitre {
    font-weight: bold;
    line-height: 0.8em;
    margin: 0px;
  }
  .section-boutique .fiche-produit .section-titre .titre {
    font-size: 36px;
  }
  .section-boutique .fiche-produit .section-titre .soustitre {
    font-size: 18px;
  }
  .section-boutique .fiche-produit .section-titre > :not(:last-child) {
    margin-bottom: 5px;
  }
  .section-boutique .fiche-produit .texte {
    margin-top: 40px;
    font-size: 16px;
    line-height: 1.5em;
  }
  .section-boutique .fiche-produit .texte p, .section-boutique .fiche-produit .texte ol, .section-boutique .fiche-produit .texte ul {
    margin: 0px;
  }
  .section-boutique .fiche-produit .texte li {
    line-height: 1.5em;
  }
  .section-boutique .fiche-produit .texte > :first-child {
    margin-top: 0px;
  }
  .section-boutique .fiche-produit .texte > :not(:last-child) {
    margin-bottom: 30px;
  }
  .section-boutique .fiche-produit .formats-produit {
    width: 50%;
    margin-bottom: 40px;
  }
  .section-boutique .fiche-produit .prix {
    font-size: 24px;
    font-weight: bold;
    display: none;
    margin-bottom: 30px;
  }
  .section-boutique .fiche-produit .prix .numerique {
    margin-right: 5px;
  }
  .section-boutique .fiche-produit .choix-quantite {
    width: auto;
    display: inline-flex;
    align-items: center;
    border: 2px solid black;
    margin-bottom: 60px;
    -webkit-touch-callout: none;
    /* iOS Safari */
    -webkit-user-select: none;
    /* Safari */
    -khtml-user-select: none;
    /* Konqueror HTML */
    -moz-user-select: none;
    /* Old versions of Firefox */
    -ms-user-select: none;
    /* Internet Explorer/Edge */
    user-select: none;
    -webkit-transition: border-color 0.4s ease;
    -ms-transition: border-color 0.4s ease;
    transition: border-color 0.4s ease;
  }
  .section-boutique .fiche-produit .choix-quantite .bouton{
    border: 0!important;
    border-left: 2px solid black;
  }
  .section-boutique .fiche-produit .choix-quantite .input-qte {
    padding: 0px 20px;
    display: inline-flex;
    align-items: center;
  }
  .section-boutique .fiche-produit .choix-quantite .input-qte .moins, .section-boutique .fiche-produit .choix-quantite .input-qte .plus {
    font-weight: bold;
    font-size: 24px;
    color: #9d9c9c;
    cursor: pointer;
  }
  .section-boutique .fiche-produit .choix-quantite .input-qte input {
    width: 30px;
    margin: 0px 2px;
    border-bottom-width: 0px;
    text-align: center;
    text-align-last: center;
    font-weight: bold;
    padding: 0px;
    font-size: 24px;
    /* Firefox */
  }
  .section-boutique .fiche-produit .choix-quantite .input-qte input::placeholder {
    text-align: center;
    text-align-end: center;
    font-weight: bold;
    font-size: 24px;
  }
  .section-boutique .fiche-produit .choix-quantite .input-qte input::-webkit-input-placeholder {
    text-align: center;
    text-align-end: center;
    font-weight: bold;
    font-size: 24px;
  }
  .section-boutique .fiche-produit .choix-quantite .input-qte input::-moz-placeholder {
    opacity: 1;
    text-align: center;
    text-align-end: center;
    font-weight: bold;
    font-size: 24px;
  }
  .section-boutique .fiche-produit .choix-quantite .input-qte input:-ms-input-placeholder {
    text-align: center;
    text-align-end: center;
    font-weight: bold;
    font-size: 24px;
  }
  .section-boutique .fiche-produit .choix-quantite .input-qte input:-moz-placeholder {
    text-align: center;
    text-align-end: center;
    font-weight: bold;
    font-size: 24px;
  }
  .section-boutique .fiche-produit .choix-quantite .input-qte input::-webkit-outer-spin-button, .section-boutique .fiche-produit .choix-quantite .input-qte input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
  }
  .section-boutique .fiche-produit .choix-quantite .input-qte input[type=number] {
    -moz-appearance: textfield;
  }
  .section-boutique .fiche-produit .choix-quantite .btn {
    font-size: 16px;
    padding: 19px 30px;
    -webkit-transition: background-color 0.4s ease, border-color 0.4s ease;
    -ms-transition: background-color 0.4s ease, border-color 0.4s ease;
    transition: background-color 0.4s ease, border-color 0.4s ease;
  }
  .section-boutique .fiche-produit .choix-quantite.disabled {
    border-color: #939393;
  }
  .section-boutique .fiche-produit .choix-quantite.disabled .btn {
    background-color: #939393;
    border-color: #939393;
  }
  .section-boutique .fiche-produit .btn-container {
    justify-content: space-between;
  }
  .section-boutique .fiche-produit .btn-transparent {
    border-color: black;
    color: black;
    padding-left: 10px;
    padding-right: 10px;
    width: calc(50% - 10px);;
  }

  .categories-filtres input[type=checkbox] {
    display: none;
  }
  .categories-filtres input[type=checkbox]:checked + span {
    color: black;
  }
  .categories-filtres .categorie-container {
    display: flex;
    flex-direction: column;
  }
  .categories-filtres .categorie-container .main-categorie {
    font-weight: 700;
    font-size: 24px;
  }
  .categories-filtres .categorie-container .main-categorie:not(:last-child) {
    margin-bottom: 10px;
  }
  .categories-filtres .categorie-container .sub-categorie {
    font-size: 18px;
  }
  .categories-filtres .categorie-container .sub-categorie:not(:last-child) {
    margin-bottom: 10px;
  }
  .categories-filtres .categorie-container:not(:last-child) {
    margin-bottom: 70px;
  }

  .listp {
    padding-top: 80px;
  }
  .listp .btn-container {
    margin-top: 50px;
    margin-bottom: 50px;
    text-align: center;
  }

  a.logo-panier {
    position: relative;
  }
  a.logo-panier:after {
    content: attr(qte);
    background: black;
    font-size: 10px;
    font-weight: bold;
    text-align: center;
    width: 18px;
    height: 18px;
    line-height: 18px;
    color: white;
    display: inline-block;
    border-radius: 50%;
    position: absolute;
    top: -5px;
    right: -9px;
  }
  .section-boutique .btn-cat-mobile{ display: none; }

  .textavant_form {
    border-bottom: 1px solid;
    padding-bottom: 24px;
}
h3.titre-formulaire {
    display: none;
}
.formulaire_prescription {
    padding-top: 36px;
}
.question-options-conteneur.question-options-required div label {
    display: inline-block;
}
.question-options-conteneur:not(.question-options-conteneur.question-options-required) {
    display: flex;
    flex-direction: row;
}
.joindre-fichier input[type="file"] {
    display: none !important;
}
h5 {
    font-weight: 400;
}
.titre-question {
    color: black;
}
.formulaire-auto-conteneur label.bouton {
    width: 15%;
    pointer-events: all;
    min-width: 140px;
    justify-content: center;
    margin-bottom: 16px;
}
.header_irmquebec{
    background-image: url(/images/BANDEAU-SECTION_RDV-QUEBEC.png);
    margin-bottom: 40px;
    height: 340px;
}
.header_irmquebec2024{
    background-image: url(/images/IRM_BANDEAU_PRESCRIPTION.png);
    margin-bottom: 40px;
    height: 340px;
}
.header_troisR{
    background-image: url(/images/BANDEAU-SECTION_RDV-3R.png);
    margin-bottom: 40px;
    height: 340px;
}
.prescriptions{
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 50%;
    background: -moz-linear-gradient(top, rgba(0,0,0,0,0) 0%, rgba(0,0,0,0.85) 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(0,0,0,0)), color-stop(100%,rgba(0,0,0,0.85)));
    background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.85) 100%);
    background: -o-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.85) 100%);
    background: -ms-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.85) 100%);
    background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.85) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#b3000000', GradientType=0);
}
header{
    margin-bottom: 40px;
}
header div:nth-child(1) {
    justify-content: center !important;
}

footer {
    background-color: #aa995d !important;
    color: white !important;
    box-sizing: border-box;
    box-shadow: 0 0 5px 0 rgb(0 0 0 / 40%);
    margin-top: 50px;
    font-size: 12px;
    height: 50px;
}

footer a {
    color: white !important;
}
.formulaire-auto-largeur5 {
    display: none;
}
.question-options-conteneur.type-radio.question-options-required {
    display: flex;
}
.question-options-conteneur.type-radio.question-options-required div:not(:first-child) {
    margin-left: 16px;
}
textarea {
    padding: 18px 18px 2px 18px;
}
.complet.form input, .complet.form select{
    height: 50px;
    float: left;
    margin-right: 3%;
    margin-bottom: 23px;
    border-radius: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    background: #f6f6f6;
    border: 1px solid #fff;
    display: block !important;
    color: #444;
    font-size: 13px;
    /* text-transform: capitalize !important; */
    padding-left: 18px;
    border: 1px solid #e1e1e1;
    max-width: 100%;
    font-family: 'PT Sans', sans-serif;
    font-style: normal;
    font-weight: 400;
}
.content.complet.form {
    margin: 20px;
}
.complet.form .formulaire-auto-conteneur input[type=checkbox], .formulaire-auto-conteneur input[type=radio]{
    width: 20px;
    height: 20px;
    box-sizing: border-box;
    -webkit-appearance: none;
    border: 2px solid;
    margin: 0;
    margin-right: 10px;
    cursor: pointer;
    position: relative;
    pointer-events: none;
}
.content.complet.form .formulaire-auto-largeur2{
    width: calc(50% - 20px);
}
.content.complet.form .formulaire-auto-largeur1{
    width: calc(100% - 20px);
}
.content.complet.form .formulaire-auto-largeur3{
    width: calc(33.3333333333% - 20px);
}
.content.complet.form .question-options-conteneur {
    display: grid;
    grid-template-columns: repeat(2, max-content);
    column-gap: 60px;
}

.content.complet.form .text-checkbox {
    display: inline-block;
    margin-bottom: 16px;
}

.content.complet.form .text-radio {
    display: inline-block;
    margin-bottom: 16px;
}
.content.complet.form h5 {
    font-size: 24px;
    margin: 20px 0;
}
.formulaire-auto-conteneur input[type=checkbox]:after, .formulaire-auto-conteneur input[type=radio]:after {
    background-color: #ECA447;
}

.content.complet.form label {
    pointer-events: none;
}

.complet.form .formulaire-auto-conteneur input[type=checkbox],.complet.form  .formulaire-auto-conteneur input[type=radio] {
    color: #ECA447;
    border-color: #ECA447;
}

.complet.form .formulaire-auto-conteneur input[type=radio] {
    border-radius: 50%;
}

.bouton-soum{
    margin-left: 10px;
}
label {
    text-align: left;
}

.titre-question {
    text-align: left;
}

.text-checkbox {
    font-size: 16px;
}
.complet.form h3.titre {
    width: 100%;
}
.results-btn{
    display: flex;
}
.textavant_form a {
    color: #aa995d;
}

.textavant_form a:hover {
    color: #003a5d;
}

/* FIN STYLE PRODUITS */


/* REALSIATIONS */
.realisationsNouveau .wrap:first-of-type{ align-items: initial!important; }
.realisationsNouveau .vedette {display:flex;justify-content: space-between;}
.realisationsNouveau .vedette-petit {display:flex;flex-direction: column;width: calc((100% / 3) - 15px);flex: 1 0 32%;}
.realisationsNouveau .item.vedette-grand .image-principale {width: 100%;height:100%;margin:0;padding:0;font-size:0;object-fit:cover;}
.realisationsNouveau .item.vedette-grand {position:relative;margin:0 14px 14px 0;flex: 1 0 calc(66% - 3px);}
.realisationsNouveau .item.vedette-grand .details {position:absolute;bottom:0;left:0;right:0;    background: linear-gradient(to bottom, transparent 30px, #000000 180px);padding: 140px 35px 30px 35px;-webkit-transition: all 0.4s ease;-ms-transition: all 0.4s ease;transition: all 0.4s ease;}
.realisationsNouveau .item.item-small {position:relative; margin-bottom:14px;font-size: 0;}
.realisationsNouveau .item.item-small .details {position:absolute;bottom:0;left:0;right:0;background: linear-gradient(to bottom, transparent 30px, #000000 180px);padding: 140px 30px 20px 30px;-webkit-transition: all 0.4s ease;-ms-transition: all 0.4s ease;transition: all 0.4s ease;}
.realisationsNouveau .item.item-small .details .titre {font-family: 'Montserrat', sans-serif;font-size:20px;line-height:25px;margin-bottom: 13px;    font-weight: 400;}
.realisationsNouveau .titre {color:white;}
.realisationsNouveau .item {cursor:pointer;}
.realisationsNouveau .item.vedette-grand .titre {font-size:36px;line-height:38px;font-family: 'Montserrat', sans-serif;margin-bottom: 13px; font-weight: 400;}
.realisationsNouveau .item.vedette-grand .lieu {display:inline-block; margin-right: 35px;}
.realisationsNouveau .item.vedette-grand .categorie {display:inline-block;}
.realisationsNouveau .item.vedette-grand .lieu img {display:inline-block;}
.realisationsNouveau .item.vedette-grand .lieu .nom-lieu {display:inline-block;font-family: 'Montserrat', sans-serif;font-size:16px;color:white;font-weight:300;line-height: 29px;margin-left: 4px;}
.realisationsNouveau .item.vedette-grand .categorie img {display:inline-block;}
.realisationsNouveau .item.vedette-grand .categorie .nom-categorie {display:inline-block;font-family: 'Montserrat', sans-serif;font-size:16px;color:white;font-weight:300;line-height: 29px;margin-left: 4px;}

.realisationsNouveau .item.item-small .lieu {display:inline-block; margin-right: 35px;-webkit-transition: all 0.4s ease;-ms-transition: all 0.4s ease;transition: all 0.4s ease;}
.realisationsNouveau .item.item-small .categorie {display:inline-block;-webkit-transition: all 0.4s ease;-ms-transition: all 0.4s ease;transition: all 0.4s ease;}
.realisationsNouveau .item.item-small .lieu img {display:inline-block;}
.realisationsNouveau .item.item-small .lieu .nom-lieu {display:inline-block;font-family: 'Montserrat', sans-serif;font-size:14px;color:white;font-weight:300;line-height: 23px;margin-left: 4px;}
.realisationsNouveau .item.item-small .categorie img {display:inline-block;}
.realisationsNouveau .item.item-small .categorie .nom-categorie {display:inline-block;font-family: 'Montserrat', sans-serif;font-size:14px;color:white;font-weight:300;line-height: 23px;margin-left: 4px;}

.realisationsNouveau .item .infos {display:none;}
.realisationsNouveau.liste {margin-bottom: 70px;}
.realisationsNouveau .liste-suite {display: flex;flex-wrap: wrap;justify-content: space-between;}
.realisationsNouveau .section-droite {margin-top: 90px;flex-grow: 1;}
.realisationsNouveau .liste-suite .item.item-small, .realisationsNouveau .vedette-petit, .realisationsNouveau .dummy {width:calc((100% - 28px) / 3);}
.realisationsNouveau.categorie .liste-suite .item.item-small, .realisationsNouveau.categorie .vedette-petit, .realisationsNouveau.categorie .dummy {width:calc((100% - 14px) / 2);}
.realisationsNouveau .dummy {height:0;}
body.saving::before {
    content: '';
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 10001;
    mask-image: url(../images/icons/chargement.svg);
    mask-size: 78px;
    mask-position: center center;
    mask-repeat: no-repeat;
    background-color: #003a5d;
}
body.saving::after {
    content: '';
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 10000;
    background-color: rgba(0,0,0,0.25);
}
.form-error-message{display: none;font-weight: bold;color: red;}