:root { --color0: #ffffff; --color2: #323435; --color3: #929799; --color4: #f0f0f0; --color5: #0664bd; --b1: #b2dffe ; --b2: #003f88 ; --b3: #3498db ; --y1: #f1c40f ; --yellow1: hsl(47deg 100% 50%); --yellow2: hsl(50deg 100% 50%) ; --font_family_1: "Roboto-Regular", sans-serif !important; --font_family_2: serif, sans-serif !important;--font_family_3: "Poppins-Medium", sans-serif !important; --taille_font: 16px; --s1: #234367 ; --s2: #DFB59D ; --s3: #90425C; --s4: #E4C8A7; --s5: #7EAECC; --s6: #FFE5C0; --s7: #A28127; --s8: #DCAA44; --s9: #FFF2BE; --s10: #DCDDDE; --s11: #64392E; --s12: #DDE89A; --s13: #C74A1A; --s14: #C4151C; --s15: #FFCE71; --s16: #C9DB34; --s17: #E9EC9A; --s18: #42C7F4; --s19: #4A6A8F; --s20: #97D5C9; --s21: #BC9DCA; --s22: #D3C8E3; --color1:#00509d  !important; --blue: #0c9eff ;}
html, body { height: 100%; }
body { width: 100%; margin: 0px; padding: 0px; }
a { transition: color 300ms ease-out 0s; }
a img { border: none; }
img { max-width: 100%; }
ul, ol { list-style: inside none none; padding-left: 0px; background-size: 15px; background-position: 0px 0px; }
ul li, ol li { background: url("../images/puce.svg") left top / 15px no-repeat; padding-left: 15px; }
ul li.niveau2, ol li.niveau2 { margin-left: 30px; }
menu, dir { padding-left: 15px; }
blockquote p { font-size: inherit; }
table, table td, table th { font-size: inherit; border: 1px solid rgb(124, 124, 124); }
main, section, article, aside, footer, header, nav, hgroup { display: block; }
iframe { border: none; }
[data-anim] { opacity: 0; }
.row { margin-right: 0px !important; margin-left: 0px !important; }
.nopad { padding-left: 0px; padding-right: 0px; }
.nopad-l { padding-left: 0px; }
.nopad-r { padding-right: 0px; }
.nomargin { margin: 0px; }
.hide { display: none; }
.center { text-align: center; }
.right { text-align: right; }
.justify { text-align: justify; }
.clear::after { content: ""; display: block; clear: both; }
.bold { font-weight: bold; }
.underline { text-decoration: underline; }
.relative { position: relative; }
.inline-block { display: inline-block; vertical-align: top; }
.noflicker { transform: translateZ(0px); }
.retrait { margin-left: -15px !important; margin-right: -15px !important; }
.transition { transition: all 400ms ease 0s; transform: translateZ(0px); }
.cover { background-size: cover !important; }
hr.trait { height: 1px; margin: -0.5em 0px; padding: 0px; color: var(--color3); background-color: var(--color3); border: 0px; opacity: 0.4; }
.page-contenu img { margin: 10px; }
body { color: var(--color2); font-family: Arial, Helvetica, sans-serif; font-size: var(--taille_font); background: var(--color0); }
a, a:link, a:visited { color: var(--color2); text-decoration: underline; }
a:hover { text-decoration: none; }
.corps a:hover { color: var(--color1); }
a:active { outline: 0px; }
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3 { color: var(--color1); font-family: var(--font_family_2); }
h1, .h1 { font-size: 31px; line-height: 31px; color: rgb(101, 102, 102); text-align: center; text-transform: uppercase; margin: auto auto 55px; display: table; position: relative; }
h1::before, .h1::before { content: ""; width: 75px; background: var(--color1); position: absolute; bottom: -10px; left: 50%; height: 2px; }
h2, .h2 { font-size: calc(var(--taille_font) + 0.8rem); }
h3, .h3 { font-size: calc(var(--taille_font) + 0.7rem); }
h4 { font-size: calc(var(--taille_font) + 0.6rem); }
h5 { font-size: calc(var(--taille_font) + 0.5rem); }
h6 { font-size: calc(var(--taille_font) + 0.4rem); }
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a, .h1 a, .h2 a, .h3 a, h1 a:link, h2 a:link, h3 a:link, h4 a:link, h5 a:link, h6 a:link, .h1 a:link, .h2 a:link, .h3 a:link, h1 a:visited, h2 a:visited, h3 a:visited, h4 a:visited, h5 a:visited, h6 a:visited, .h1 a:visited, .h2 a:visited, .h3 a:visited { font-size: inherit; color: inherit; text-decoration: none; }
h1 a:hover, h2 a:hover, h3 a:hover, h4 a:hover, h5 a:hover, h6 a:hover, .h1 a:hover, .h2 a:hover, .h3 a:hover { text-decoration: underline; }
.titre-secondaire {position: relative;font-size: 20px;line-height: 30px;padding: 5px 0px 0px;margin: 0px;color: var(--color1);font-family: var(--font_family_1);text-align: center;display: block;}
.hvr-shutter-out-horizontal { display: inline-block; vertical-align: middle; transform: translateZ(0px); box-shadow: rgba(0, 0, 0, 0) 0px 0px 1px; backface-visibility: hidden; position: relative; background-color: var(--color1); transition-property: color; transition-duration: 0.3s; }
.hvr-shutter-out-horizontal.dark { background-color: var(--color2); color: var(--color0); }
.hvr-shutter-out-horizontal.active { background-color: var(--color5); }
.hvr-shutter-out-horizontal::before { content: ""; position: absolute; z-index: -1; inset: 0px; background-color: var(--color5); transform: scaleX(0); transform-origin: 0% center; transition-property: transform; transition-duration: 0.3s; transition-timing-function: ease-out; border-radius: 5px; }
.hvr-shutter-out-horizontal.dark::before { background-color: var(--color2); }
.hvr-shutter-out-horizontal:hover, .hvr-shutter-out-horizontal:focus, .hvr-shutter-out-horizontal:active, a.hvr-shutter-out-horizontal:hover, a.hvr-shutter-out-horizontal:focus, a.hvr-shutter-out-horizontal:active { color: var(--color0); }
.hvr-shutter-out-horizontal:hover::before, .hvr-shutter-out-horizontal:focus::before, .hvr-shutter-out-horizontal:active::before { transform: scaleX(1); }
a.bouton-principal, button.bouton-principal {text-align: left;font-family: var(--font_family_1);color: var(--color0);text-decoration: none;padding: 13px 50px 13px 20px;font-size: 14px;text-transform: uppercase;border: 0px;border-radius: 5px;}
a.bouton-principal::after, button.bouton-principal::after { content: ""; width: 25px; height: 15px; right: 9px; top: 50%; transform: translateY(-50%); z-index: 9900; position: absolute; background-repeat: no-repeat; background-image: url("../images/more.svg") !important; }
.btn-service a.bouton-principal, .btn-service button.bouton-principal { text-align: left; font-family: var(--font_family_1); color: var(--color0); text-decoration: none; padding: 13px 75px 13px 20px; font-size: 14px; text-transform: uppercase; border: 0px; }
.btn-service a.bouton-principal::after { background-image: none; }
.body-page-1 .corps a.bouton-principal, .body-page-1 .corps button.bouton-principal { width: 180px; border-radius: 5px; margin: 15px 0px 50px; }
.main-page { position: relative; overflow: hidden; }
.tete { position: fixed; left: 0px; right: 0px; z-index: 9000; height: 90px; background: var(--color0); box-shadow: rgba(0, 0, 0, 0.15) 0px 3px 9px; }
.tete .logo-site { margin: 0px; padding: 17px 0px 17px 35px; height: 90px; }
.tete .logo-site a { font-size: 15px; color: var(--color1); text-decoration: none; font-family: var(--font_family_1); }
.tete .logo-site a:focus, .tete .logo-site a:hover { color: var(--color1); text-decoration: none; }
.tete .logo-site a img { height: auto; max-height: 100%; width: auto; transform: scale(1.6); }
.tete .infos { background: rgb(255, 255, 255); display: inline-block; height: 90px; padding: 25px 30px 0px; }
.tete .infos.infos_small { display: block; width: 120%; padding: 3px; height: 38px; position: relative; left: -20%; }
.tete .infos .tel {display: inline-block;vertical-align: top;font-size: 18px;color: var(--color1);padding: 5px 20px 0px 0px;margin: 0px;font-family: var(--font_family_3);}
.tete .infos .tel a { color: inherit; text-decoration: none; }
a.imagecont.noflicker.img1 { float: right; margin-left: 10px; margin-bottom: 10px; }
.sidebar-scroll-right .callTracker { width: 100%; height: 50px; }
.callTracker { position: relative; }
.callTracker span, .callTracker a { display: inline-block; text-align: left; min-width: 145px; padding: 0px; transition: all 500ms ease 0s; height: 100%; line-height: 1.64em; text-decoration: none; }
.callTracker .t_phone { opacity: 0; display: none; }
.callTracker .t_affiche { cursor: pointer; }
header .callTracker span, header .callTracker a { top: 5px; }
header .callTracker .t_affiche { font-size: 90%; }
.callTracker.active .t_phone { opacity: 1; display: inline-block; }
.callTracker.active .t_affiche { opacity: 0; display: none; }
.pied .callTracker a, .coordonnees .callTracker a { position: relative; left: 0px; }
.callTracker:not(.active) span:hover, .callTracker:not(.active) a:hover { color: var(--color0); }
.tete .widget-partage { display: none; }
.btn-partage .btnp { width: 36px; height: 36px; border-radius: 36px; background-color: var(--color0); background-repeat: no-repeat; background-position: center center; display: inline-block; transition: all 400ms ease 0s; text-align: center; }
.tete .infos.infos_small .btn-partage .btnp { width: 29px; height: 29px; }
.btn-partage .btnp:hover { transform: rotate(360deg); background-color: var(--color1); }
.copyright { text-align: justify; }
.tete .btn-partage { padding: 0px; display: inline-block; vertical-align: top; }
.navh { margin: 0px; z-index: 8000; display: inline-block; vertical-align: top; }
.navh .menu_principal { margin: 0px; padding: 0px; list-style: outside none; display: table; width: 100%; }
.navh .menu_principal > li { position: relative; display: table-cell; vertical-align: middle; text-align: center; padding: 0px; background: none; }
.navh .menu_principal > li::after { position: absolute; font-size: 20px; right: 0px; top: 43px; width: 5px; height: 5px; background: var(--color1); border-radius: 5px; content: " "; display: none; }
.navh .menu_principal > li:last-child::after { display: none; }
.navh .menu_principal > li:last-child { background: none; }
.navh .menu_principal a, .navh .menu_principal a:visited {color: var(--color2);display: block;font-size: 14px;text-transform: uppercase;padding: 35px 20px 35px 15px;text-decoration: none;font-family: var(--font_family_3);transition: all 400ms ease 0s;}
.navh .menu_principal a:hover, .navh .menu_principal li.active > a { color: var(--color1); }
.navh .menu_principal li.active > a:hover { cursor: default; }
.slogan { position: absolute; top: -190px; color: var(--color0); width: 100%; right: 0px; padding: 0px 1%; text-align: center; margin: 0px 0px 10px; }
h1.slogan::before, .h1.slogan::before { content: ""; width: 0px; height: 0px; background: none; position: inherit; bottom: inherit; left: inherit; }
.slogan .titre { font-size: 51px; font-family: var(--font_family_2); text-transform: uppercase; line-height: 40px; }
.slogan .titre span { font-size: 48px; }
.slogan .sous-titre { font-size: 30px; font-family: var(--font_family_2); line-height: 39px; }
.body-page-1 .slogan { top: -477px; text-align: center; width: 100%; transform: translateX(-50%); left: 50%; padding: 0px; }
.video-accueil { position: fixed; top: 0px; left: 50%; width: 120vw; height: 100vh; margin-left: -60vw; }
.video-accueil video { width: 100%; height: auto; vertical-align: top; z-index: 1; position: relative; }
.video-accueil .banniere { z-index: 0; }
.banniere { position: fixed; top: 0px; margin-left: 0px; height: 100%; left: 0px; width: 100%; }
.banniere::before { content: ""; position: absolute; z-index: 2; width: 100%; height: 100%; backdrop-filter: blur(5px); pointer-events: none; }
.body-page-1 .banniere::before { content: none; }
.btn-descendre { width: 112px; height: 112px; background: url(""); position: absolute; top: -148px; left: 50%; margin-left: -56px; overflow: hidden; text-indent: 300px; white-space: nowrap; }
.btn-descendre::before { display: none; content: ""; width: 8px; height: 8px; background: var(--color1); border-radius: 8px; position: absolute; top: 40px; left: 53px; transition: all 400ms ease 0s; }
.btn-descendre:hover::before { opacity: 0.4; top: 50px; }
.fluid-contenu { position: relative; z-index: 10; background: var(--color0); }
.fluid-contenu .corps { padding: 79px 10%; }
.body-gallery-4 .fluid-contenu .corps, .body-contact .fluid-contenu .corps { padding: 80px 0px 0px; }
.body-service-list .fluid-contenu .corps { padding: 0px; }
.recup-photos .propor .propor-cont .imagecont { position: absolute; inset: 0px; }
.recup-photos .propor .propor-cont .imagecont img { object-fit: cover; min-width: 100%; min-height: 100%; width: auto; flex: 1 1 0%; height: 100%; }
.recup-photos .propor { width: 100%; position: relative; margin-bottom: 10px; }
.recup-photos .propor::after { padding-top: 78%; display: block; content: ""; }
.recup-photos .propor .propor-cont { position: absolute; inset: 0px; overflow: hidden; border-radius: 10px !important; }
.recup-photos .propor .propor-cont .imagecont .imagefond { display: block; height: 100%; width: 100%; overflow: hidden; background-position: center center; background-repeat: no-repeat; }
.recup-photos .propor .propor-cont .imagecont .masque { display: block; position: absolute; top: -100%; left: 0px; opacity: 0; width: 100%; height: 100%; background-color: var(--color1); background-image: url("../images/more.svg"); background-repeat: no-repeat; background-position: center center; background-size: 40px; transition: all 0.15s ease-out 0s; }
.recup-photos .propor .propor-cont .imagecont:hover .masque { opacity: 0.7; top: 0px; }
.recup-photos .propor .propor-cont .imagecont:hover .imagefond { transform: scale(1.15); }
.certifs { display: table; table-layout: fixed; width: 100%; position: relative; z-index: 8000; background-size: 50% 1px; border-top: 2px solid var(--color4); border-bottom: 2px solid var(--color4); }
.certifs .cell.gauche { display: table-cell; vertical-align: top; width: 50%; background: var(--color4); }
.certifs .cell.gauche .contenu { padding: 150px 12% 140px; }
.certifs .cell.droite { display: table-cell; vertical-align: middle; width: 50%; padding: 80px 50px; background: var(--color0); }
.certifs .cell.droite .logo-certif { padding: 0px 15px; height: 260px; line-height: 260px; vertical-align: middle; text-align: center; }
.certifs .cell.droite .bg-noir { padding: 150px 0px; }
.actualites .cell.photo a { display: block; }
.actualites .cell.photo.cover img { object-fit: cover; min-width: 100%; min-height: 100%; width: auto; flex: 1 1 0%; height: 100%; }
.actualites { display: table; width: 100%; position: relative; z-index: 8000; background: var(--color0); }
.actualites article { display: table; width: 100%; }
.actualites .cell.photo { display: table-cell; vertical-align: top; width: 50%; background-position: center center; }
.actualites .cell.photo:hover { opacity: 0.95; }
.actualites .cell.texte { display: table-cell; vertical-align: top; width: 50%; border-bottom: 2px solid var(--color4); }
.actualites:last-child .cell.texte { border-bottom: none; }
.actualites .cell.texte .contenu { padding: 120px 10%; text-align: justify; direction: ltr; }
.actualites .cell.texte .contenu ul { padding: 0px; margin: 0px; }
.actualites .cell.texte .contenu ul li { padding: 5px 0px 5px 20px; background: url("../images/puce.svg") 0px 9px no-repeat; }
.actualites .cell.texte .contenu ul li .bouton-principal { display: block; }
.actualites a.bouton-principal, .news a.bouton-principal { min-width: 190px; margin: 50px 0px; }
.actualites .date_post, .news .date-article { font-size: 15px; font-style: italic; font-weight: bold; color: var(--color2); }
.news .ligne-actus .date-article { margin-top: 18px; margin-bottom: 0px; }
.news .ligne-actus .contenu-article { margin-top: 0px; }
.news .contenu-article { margin-top: 21px; }
.AvisClientsBg { padding: 0px 7%; }
.AvisClientsBg.bg-optionnel-gris .h1 { color: var(--color0); }
.etoiles .fa { color: rgb(255, 204, 0); }
.AvisClientsList { margin: 0px; padding: 0px; }
.AvisClientsList li { list-style: none; background: none; }
.avisClientsBg .h { text-align: center; }
.AvisClients:link, .AvisClients:visited, .AvisClients { position: relative; background-color: var(--color4); padding: 80px 20px 20px; text-align: center; height: 300px; margin-top: 100px; display: block; text-decoration: none; }
.AvisClients:active, .AvisClients:hover { background-color: var(--color0); }
.AvisClients .h { font-size: 18px; color: var(--color2); text-align: center; text-transform: uppercase; margin-bottom: 0px; }
.AvisClients p { font-size: 16px; margin-bottom: 0px; }
.AvisClients .blazy { font-size: 16px; color: var(--color0); width: 128px; margin: 0px auto 20px -64px; border-radius: 50%; position: absolute; top: -70px; left: 50%; background-size: cover; background-repeat: no-repeat; background-position: 50% 50%; background-color: var(--color4); }
.AvisClientsBg .bx-pager { bottom: 17px; }
.avisContent::before { content: "\00AB"; display: inline-block; margin-left: 5px; }
.temoignageScroll { max-height: 109px; text-align: center; overflow: hidden; }
.temoignageScroll .scrollbar-content { padding: 0px 10px 0px 0px; width: 100%; }
.temoignageScroll .scrollbar-path-vertical { right: 0px; }
.date_post { font-size: 12px; padding: 4px 0px; }
.AvisClientsBg .bx-controls.bx-has-pager { display: block; position: relative; height: 70px; }
.livre-elements { padding: 0px; margin-bottom: 40px; text-align: center; }
.livre-elements .blazy { margin: 0px auto 10px; border-radius: 50%; background-size: cover; background-repeat: no-repeat; background-position: 50% 50%; background-color: var(--color0); width: 115px; height: 115px; }
.livre-elements .pseudo { margin-bottom: 10px; }
.livre-elements .date { margin-bottom: 10px !important; }
.livre-elements .etoiles { margin-bottom: 0px !important; }
.livre-elements .temoignage { text-align: justify; }
.livre-elements .temoignage::before { content: "\00AB"; display: inline-block; margin-left: 5px; }
.divAvis { padding: 30px 20px; margin-bottom: 60px; background-color: var(--color4); border-radius: 2px; }
.btn-avis { margin-bottom: 30px; }
.modal-content a, .modal-content a:link, .modal-content a:visited { color: var(--color2); }
.modal-header .h1 { text-align: center; margin-bottom: 40px; color: var(--color2); font-size: 1.6vw; font-weight: bold; text-shadow: none; }
.modal { display: none; overflow: auto scroll; position: fixed; inset: 0px; outline: 0px; z-index: 9999; font-size: 16px; color: var(--color0); }
.modal-backdrop.in { z-index: 0; }
.modal-open .modal { z-index: 99997; background: rgba(0, 0, 0, 0.8); color: var(--color2); text-shadow: none; font-family: Arial, Helvetica, sans-serif; }
.modal-content .btn-close { border: 0px; background: none; padding: 0px; font-size: 21px; color: var(--color2); opacity: 0.2; line-height: 1; }
.modal-content .form-control { min-height: 44px; border-radius: 2px; }
.modal-content .btn-close:hover, .modal-content .btn-close:focus { opacity: 0.5; }
.modal-content .submit-review { padding-right: 60px !important; }
.modal-content label.control-label { display: none; padding-top: 0px !important; }
.modal-content label.control-label.label-note, .modal-content label.control-label.label-photo { display: block; padding-top: 14px !important; }
#add-review { text-align: center; }
#add-review .form-group { text-align: left; }
#add-review input[type="file"] { display: block; width: 100%; height: 50px; }
#add-review #stars-existing { margin: 0px auto 10px; display: block; text-align: left; padding-top: 15px; }
#add-review .form-group #captcha { height: 46px !important; }
.formulaire #add-review .form-group input, .formulaire #add-review .form-group textarea, .formulaire #add-review .form-group .form-control { background: var(--color0); border: 1px solid rgb(204, 204, 204); color: var(--color2); border-radius: 2px; }
.modal-content .form-control::placeholder { opacity: 1; color: var(--color2)  !important; }
#add-review .submit-review { float: none; display: block; background-image: none; margin: 15px auto !important; padding: 14px 15px !important; }
#add-review .body-review { height: 100px; }
#add-review .form-group.form-group-1 .col-md-10, #add-review .form-group.form-group-2 .col-md-10, #add-review .form-group.form-group-4 .col-md-10 { width: 100%; }
#add-review .conditions, .modal-content .email-block { font-size: 10px; font-weight: normal; font-style: italic; text-align: justify; opacity: 0.6; display: block; clear: both; color: var(--color2)  !important; }
.cont-slider { position: relative; }
.sudo-slider { width: 100%; z-index: 8999999; }
.sudo-slider .slide { text-align: center; height: 200px; line-height: 200px; }
.sudo-slider .slide img { max-height: 100%; }
.cont-slider .controls { z-index: 9000; display: inline-block; position: absolute; bottom: -100px; left: 0px; right: 0px; text-align: center; }
.cont-slider .controls ol { margin: 0px; padding: 0px; list-style-type: none; }
.cont-slider .controls ol li { display: inline-block; background: none; padding: 0px; }
.cont-slider .controls ol li a { display: block; width: 11px; height: 11px; background: var(--color2); margin: 0px 2px; border-radius: 50%; opacity: 0.1; }
.cont-slider .controls ol li.current a { opacity: 0.25; }
.cont-slider .controls ol li a span { display: none; }
.centerservice2 { margin: 0px 16% !important; }
.centerservice { margin: 0px 33% !important; }
.services { display: table; width: 100%; position: relative; z-index: 8000; background: var(--color0); border-bottom: 2px solid var(--color4); min-height: 55vh; }
.services .cell.gauche { display: table-cell; vertical-align: top; width: 50%; border-right: 2px solid var(--color4); background-position: center center; background-repeat: no-repeat; border-radius: 10px; }
.services .cell.droite { display: table-cell; vertical-align: top; width: 50%; }
.services .cell.droite .contenu { padding: 90px 6%; }
.services .cell.droite .contenu ul { list-style-type: none; list-style-image: none; padding: 0px; margin: 0px; }
.services .cell.droite .contenu ul li { background: none; padding: 0px 0px 10px; }
.services .cell.droite .contenu ul li .bouton-principal { display: block; }
.btn-service { text-align: center; margin: 10px 0px; }
.services .miettes { list-style-type: none; list-style-image: none; padding: 0px; margin: 0px; position: absolute; bottom: 20px; left: 0px; right: 0px; text-align: center; }
.services .miettes li { display: inline-block; vertical-align: top; background: none; padding: 0px; }
.services .miettes li a { width: 12px; height: 12px; border-radius: 12px; background: var(--color4); display: inline-block; opacity: 0.5; }
.services .miettes li a.active { cursor: default; opacity: 1; }
.realisations, .AvisClientsBg { position: relative; z-index: 8000; background: var(--color0); text-align: center; }
.realisations .contenu, .AvisClientsBg .contenu { padding: 135px 15px 80px; }
.realisations .galerie .propor, .news .propor { width: 100%; position: relative; margin-bottom: 10px; }
.realisations .galerie .propor::after, .news .propor::after { padding-top: 78%; display: block; content: ""; }
.realisations .galerie .propor .propor-cont, .news .propor .propor-cont { position: absolute; inset: 0px; }
.realisations .galerie .propor .propor-cont .imagecont, .news .propor .propor-cont .imagecont { height: 100%; display: block; width: 100%; overflow: hidden; position: relative; transform: translateZ(0px); }
.realisations .galerie .propor .propor-cont .imagecont .imagefond, .news .propor .propor-cont .imagecont .imagefond { display: block; height: 100%; width: 100%; overflow: hidden; background-position: center center; background-repeat: no-repeat; }
.realisations .galerie .propor .propor-cont .imagecont .masque, .news .propor .propor-cont .imagecont .masque { transition: all 400ms ease 0s; display: block; position: absolute; top: 0px; left: 0px; opacity: 0; width: 100%; height: 100%; background-color: var(--color1); background-image: url("../images/more.svg"); background-repeat: no-repeat; background-position: center center; }
.realisations .galerie .propor .propor-cont .imagecont:hover .masque, .news .propor .propor-cont .imagecont:hover .masque { opacity: 0.8; }
.realisations .galerie .propor .propor-cont .imagecont:hover .imagefond, .news .propor .propor-cont .imagecont:hover .imagefond { transform: scale(1.15); }
.intervention { position: relative; z-index: 8000; background: var(--color2); }
.intervention .contenu { padding: 60px 10% 80px; color: var(--color0); }
.intervention .contenu a, .intervention .contenu a:link, .intervention .contenu a:visited { color: var(--color0); }
.intervention h2 { color: var(--color0); }
.intervention ul { margin: 30px 0px 0px; padding: 0px; list-style-type: none; list-style-image: none; }
.intervention ul li { padding: 5px 0px 5px 15px; font-style: italic; }
.pied { position: relative; z-index: 9; background: var(--color0); }
.pied .bande1 { padding: 30px 10% 70px; }
.bande_contact_footer { padding: 70px 10% 50px; }
.bande_contact_footer .row1::after { display: block; width: 232px; height: 1px; content: ""; background: var(--color4); position: absolute; left: 50%; transform: translate(-50%, 0px); margin-top: 49px; }
.pied .bande2 { }
.pied h2 { }
.pied h3 { color: var(--color0); font-size: 16px; text-transform: uppercase; padding: 0px 0px 20px; position: relative; font-family: var(--font_family_1); }
.pied h3::before { content: ""; width: 75px; background: var(--color0); position: absolute; bottom: 3px; left: 0px; height: 2px; }
.pied .navf .menu_footer { color: var(--color3); padding: 15px 0px; list-style-type: none; margin: 0px; }
.pied .navf .menu_footer li { display: block; padding: 0px 0px 4px; background: none; position: relative; }
.pied .navf .menu_footer li:last-child { border: none; }
.pied .navf .menu_footer li a, .pied .navf .menu_footer li a:visited { font-size: 16px; padding: 0px 0px 0px 15px; color: inherit; text-decoration: none; }
.pied .navf .menu_footer li a::before { display: inline-block; content: "❯"; position: absolute; left: 0px; font-size: 14px; color: var(--color0); top: 0px; width: 9px; height: 16px; }
.pied .navf .menu_footer li a:hover { color: var(--color1); }
.pied .navf .menu_footer li.active a { text-decoration: underline; color: white !important}
.pied .navf .menu_footer li.active a:hover { cursor: default; text-decoration: none; }
.pied .menu_referencement { color: var(--color3); list-style-image: none; list-style-type: none; margin: 0px; text-align: justify; }
.pied .menu_referencement li { display: inline; padding: 0px; background: none; }
.pied .menu_referencement li::after { content: " - "; }
.pied .menu_referencement li:last-child::after { content: ""; }
.pied .menu_referencement li a, .pied .menu_referencement li a:visited { color: inherit; font-size: 16px; text-decoration: none; }
.pied .menu_referencement li a:hover { color: var(--color0); }
.pied .menu_referencement li.active a:hover { cursor: default; text-decoration: none; }
.pied address { margin: 0px; padding: 15px 0px 0px; color: var(--color0); font-size: 16px; }
.pied address p { background-repeat: no-repeat; margin: 0px; background-position: 0px 0px; padding: 0px 0px 10px 30px; }
.pied address p.adresse { background-image: url("../images/ico-adresse-f.svg"); background-size: 22px; }
.pied address p.tel.tel1 {background-image: url("../images/ico-tel-f.svg");background-size: 22px;display: inline-block;}
.pied address p.tel.tel2 { background-image: url("../images/ico-tel2-f.svg"); background-size: 22px; }
.pied address p.tel a { color: inherit; text-decoration: none; }
.pied address p a { text-decoration: none; color: inherit; }
.pied address p a:hover { text-decoration: underline; }
.pied .scrollbars { margin: 15px 0px 0px; height: 200px; }
.pied .horaires { color: var(--color3); padding: 10px 0px 0px; margin: 0px; font-size: 16px; }
.pied .copyright-footer { text-align: center; }
#logoFD svg * { fill: var(--color3); }
#logoFD svg { width: 210px; }
.pied .btn-like { padding: 11px 0px 0px; }
.pied .btn-partage { text-align: right; padding: 10px 0px 0px; margin-right: 55px; }
.scrollbars { width: 100%; height: 28vh; }
.scrollbar-path-vertical, .scrollbar-path-horizontal { position: absolute; background-color: rgb(236, 236, 236); z-index: 100; }
.mCSB_scrollTools .mCSB_draggerRail { background-color: var(--color4); }
.scrollbar-path-horizontal { bottom: 5px; left: 0px; width: 100%; height: 5px; }
.scrollbar-path-vertical { right: 5px; top: 0px; height: 100%; width: 5px; }
.scrollbar-path-horizontal { }
.scrollbar-handle { position: relative; top: 0px; left: 0px; background-color: var(--color1); }
.scrollbar-path-vertical .scrollbar-handle { height: 20%; width: 100%; }
.scrollbar-path-horizontal .scrollbar-handle { width: 20%; height: 100%; }
.scrollbar-path-vertical, .scrollbar-path-horizontal, .scrollbar-handle { border-radius: 5px; }
.scrollbar-content { padding: 0px 30px 0px 0px; float: none !important; }
.prestation { display: table; width: 100%; position: relative; z-index: 8000; background: var(--color0); }
.prestation:nth-child(2n) { direction: rtl; }
.prestation .cell.photo { display: table-cell; vertical-align: top; width: 50%; background-position: center center; }
.prestation .cell.photo:hover { opacity: 0.95; }
.prestation .cell.texte { display: table-cell; vertical-align: top; width: 50%; border-bottom: 2px solid var(--color4); }
.prestation:last-child .cell.texte { border-bottom: none; }
.prestation .cell.texte .contenu { padding: 90px 10%; text-align: center; direction: ltr; }
.prestation .cell.texte .contenu p { padding: 0px 0px 20px; }
.prestation .cell.texte .contenu ul { padding: 0px; margin: 0px; }
.prestation .cell.texte .contenu ul li { padding: 5px 0px 5px 20px; background: url("../images/puce.svg") 0px 9px no-repeat; }
.prestation .cell.texte .contenu ul li .bouton-principal { display: block; }
.body-contact h2 {color: #656666;text-transform: none;position: relative;margin-bottom: 55px;}
.tab-coordonnes h2::before {content: "";width: 97px;height: 2px;background: var(--blue);position: absolute;top: 50px;left: 0px;}
.body-contact .tab-formulaire .cell.droite h2 {text-align: center;margin-bottom: 70px;font-size: 30px;}
.body-contact .tab-formulaire .cell.droite h2::before {content: "";width: 75px;height: 2px;background: var(--blue);position: absolute;top: 50px;left: 50%;margin-left: -37px;}
.contact .tab-coordonnes { display: table; width: 100%; position: relative; z-index: 8000; background: var(--color0); }
.contact .tab-coordonnes .cell.gauche {display: table-cell;vertical-align: top;width: 50%;border-top: 2px solid var(--color4);position: relative;}
.contact .tab-coordonnes .cell.gauche .contenu { padding: 50px 12% 30px; }
.contact .tab-coordonnes .cell.centre { display: table-cell; vertical-align: top; width: 50%; }
.contact .tab-coordonnes .cell.droite { display: table-cell; vertical-align: top; width: 50%; }
.contact .tab-formulaire { display: table; width: 100%; position: relative; z-index: 8000; background: var(--color0); }
.contact .tab-formulaire .cell.gauche { display: table-cell; vertical-align: top; width: 50%; background: url("../images/contact.jpg") center center no-repeat; }
.contact .tab-formulaire .cell.droite { display: table-cell; vertical-align: top; width: 50%; border-bottom: 2px solid var(--color4); }
.contact .tab-formulaire .cell.droite .contenu { padding: 90px 12%; }
.contact .plan { font-size: 0px; }
.contact .plan .block #googlemapapi, .contact .plan iframe { width: 100% !important; height: 550px !important; }
.contact .coordonnees { padding: 0px 0px 20px; }
.contact .coordonnees h2 {margin-top: 20px;font-size: 35px;}
.contact .coordonnees address p { padding: 0px 0px 10px 30px; background-position: 0px 0px; background-repeat: no-repeat; }
.contact .coordonnees address p.adresse { background-image: url("../images/ico-adresse-f.svg"); background-size: 22px; }
.contact .coordonnees address p.tel.tel1 { background-image: url("../images/ico-tel-f.svg"); margin: 0px; background-size: 22px; }
.contact .coordonnees address p.tel.tel2 { background-image: url("../images/ico-tel2-f.svg"); background-size: 22px; }
.contact .coordonnees address p.tel a { color: inherit; text-decoration: none; }
.contact .coordonnees address p span.intitule { font-weight: bold; }
.contact .coordonnees address p a { text-decoration: none; color: inherit; }
.contact .coordonnees address p a:hover { text-decoration: underline; }
.contact .description-contact { padding: 0px 0px 10px; }
.contact .formulaire .form-group label.col-md-4 { padding-left: 0px !important; padding-right: 0px !important; }
.contact .formulaire .form-group div.col-md-8 { padding-left: 0px !important; padding-right: 0px !important; }
.contact .formulaire .form-group .col-md-4 { display: none; }
.contact .formulaire .form-group .col-md-8 { width: 100% !important; }
.form-group .label-rgpd strong, .info-rgpd strong, .info-rgpd a, .info-rgpd a:visited { color: var(--color1); }
.contact .formulaire .control-label { font-weight: normal; text-align: left !important; }
.contact .formulaire .form-group { margin-bottom: 8px; padding: 0px !important; margin-left: 0px !important; margin-right: 0px !important; }
.contact .formulaire .form-group .form-control { background: var(--color0); border: 1px solid var(--color3); box-shadow: none; font-size: inherit; color: var(--color2); border-radius: 10px; font-family: var(--font_family_1); width: 100% !important; }
.form-control:focus { color: rgb(0, 0, 0); background: var(--color0); }
.contact .formulaire .form-group textarea.form-control { height: 109px; position: static; }
.contact .formulaire .form-group input.form-control { height: 50px; line-height: 1; padding: 0px 12px; border-radius: 10px; font-family: var(--font_family_1); }
.contact .formulaire .form-group .form-control:focus, .contact .formulaire .form-group .form-control:active { border-color: var(--color1); }
.contact .formulaire .form-group select.form-control { height: 50px; line-height: 50px; padding: 5px 12px; border-radius: 10px; }
@media screen and (-webkit-min-device-pixel-ratio: 0), not all {
  .form-horizontal select.form-control { appearance: none !important; background-image: url("../images/image-select.svg") !important; background-repeat: no-repeat !important; background-position: right 15px center !important; line-height: normal !important; background-size: 22px !important; }
  .form-horizontal select.form-control option { color: inherit; }
}
.contact .formulaire .form-group input[name="captcha"] { display: inline-block; vertical-align: top; width: 31% !important; height: 50px !important; float: none !important; margin-right: 2% !important; }
.contact .formulaire .form-group input[name="captcha"] + a { width: 35%; display: inline-block; margin-right: 2%; vertical-align: top; }
.contact .formulaire .form-group #captcha { width: 100%; border-radius: 0px; padding: 0px; height: 50px !important; }
.contact .formulaire .form-group input.btn-primary { width: 30%; display: inline-block; position: relative; float: right; border-radius: 5px; }
.contact .formulaire .form-actions { font-size: 12px; }
.contact a.btn.btn-default { float: right; }
.body-error404 a.btn.btn-default, .contact .formulaire input.btn-primary, .contact a.btn.btn-default { padding: 15px 20px; font-family: var(--font_family_1); text-transform: uppercase; background-color: var(--color1); color: var(--color0); text-align: left; border-radius: 0px; font-size: 14px; border: none; text-decoration: none; transition: all 400ms ease 0s; background-size: 24px; background-position: left 90% center; background-image: url("../images/ico-envoyer.svg"); background-repeat: no-repeat; }
.body-error404 a.btn.btn-default { background-image: none; }
.body-error404 a.btn.btn-default:hover, .body-error404 a.btn.btn-default:active, .contact .formulaire input.btn-primary:hover, .contact .formulaire input.btn-primary:active, .contact a.btn.btn-default:hover, .contact a.btn.btn-default:active { background-color: var(--color5); }
::-webkit-input-placeholder { color: var(--color2)  !important; }
.pageseo .formulaire .form-group input[name="captcha"] { width: 100% !important; margin-right: 0px !important; text-align: left !important; }
.pageseo .formulaire .form-group input[name="captcha"] + a { position: absolute; width: 140px; top: 0px; right: 0px; margin-right: 0px !important; }
.gallery .bas-galerie { text-align: center; padding: 40px 0px 0px; }
.gallery .description-galerie { padding: 0px 0px 40px; text-align: justify; }
.gallery .multiple .ligne-photos .col-md-1, .gallery .multiple .ligne-photos .col-md-2, .gallery .multiple .ligne-photos .col-md-3, .gallery .multiple .ligne-photos .col-md-4, .gallery .multiple .ligne-photos .col-md-6 { padding-left: 0px !important; padding-right: 0px !important; }
.gallery .multiple .ligne-photos { margin-left: 0px !important; margin-right: 0px !important; }
.gallery .ligne-photos .propor { width: 100%; position: relative; margin-bottom: 15px; }
.gallery .multiple .ligne-photos .propor { margin-bottom: 0px; }
.custom-object-fit { position: relative; background-size: cover; background-position: center center; }
.custom-object-fit img { opacity: 0; }
.gallery .ligne-photos .propor::after { padding-top: 76%; display: block; content: ""; }
.gallery .ligne-photos .propor .propor-cont { position: absolute; inset: 0px; border-radius: 10px; overflow: hidden; }
.gallery .ligne-photos .propor .propor-cont img { object-fit: cover; min-width: 100%; min-height: 100%; width: auto; flex: 1 1 0%; height: 100%; }
.gallery .ligne-photos .propor .propor-cont .imagecont { transform: translateZ(0px); justify-content: center; display: flex; flex-direction: row; overflow: hidden; position: relative; height: 100%; border: 2px solid white; }
.gallery .ligne-photos .propor .propor-cont .imagecont .imagefond { display: block; height: 100%; width: 100%; overflow: hidden; background-position: center center; background-repeat: no-repeat; }
.gallery .ligne-photos .propor .propor-cont .imagecont .masque { display: block; position: absolute; top: -100%; left: 0px; opacity: 0; width: 100%; height: 100%; background-color: var(--color1); background-image: url("../images/more.svg"); background-repeat: no-repeat; background-position: center center; background-size: 40px; transition: all 0.15s ease-out 0s; }
.gallery .ligne-photos .propor .propor-cont .imagecont:hover .masque { opacity: 0.7; top: 0px; }
.gallery .ligne-photos .propor .propor-cont .imagecont:hover .imagefond { transform: scale(1.15); }
.gallery .nav { margin: 10px 0px; text-align: center; }
.gallery .nav li { display: inline-block; margin-bottom: 10px; background: none; padding: 0px 20px 0px 5px; }
.gallery .nav li::after { position: absolute; font-size: 20px; right: 0px; top: 18px; width: 5px; height: 5px; background: var(--color1); border-radius: 5px; display: block; content: " "; }
.gallery .nav li:last-child::after { display: none; }
.gallery .nav li a { background: none; display: block; color: var(--color1); text-transform: uppercase; font-size: 14px; font-family: var(--font_family_1); padding: 10px; text-align: center; border-radius: 0px; text-decoration: none; }
.gallery .nav li a:hover, .gallery .nav li.active a { background: none; color: var(--color2); }
.gallery .nav li.active a { cursor: default; }
.gallery .tab-content { padding-top: 10px; padding-bottom: 10px; }
.gallery .tab-content h2 { padding-left: 15px; margin-bottom: 20px; }
.gallery .bas-galerie { text-align: center; padding: 40px 0px 0px; }
.gallery .bas-galerie a.bouton-principal { padding-right: 60px; }
.gallery .bas-galerie a.bouton-principal::after { background-image: none; width: 22px; height: 22px; content: "+"; font-family: verdana; font-size: 35px; position: absolute; right: 20px; top: 7px; }
.header-sidebars, .sidebar-left, .sidebar-right { background-color: var(--color0); letter-spacing: 1px; }
.sidebar-left a, .sidebar-right a, .sidebar-bottom-controls a, .contactButton, .nav-item-active, .sidebar-form label, .sidebar-send-button, .sidebar-divider-text { color: var(--color0)  !important; }
.header-sidebars { height: 65px; z-index: 9999; position: fixed; left: 0px; right: 0px; top: 0px; width: 100%; box-shadow: rgba(0, 0, 0, 0.1) 0px 2px 3px 1px; }
.header-sidebars .header-top { display: table; height: 65px; width: 100%; }
.top-logo { display: table-cell; vertical-align: middle; position: relative; z-index: 9999; text-align: center; overflow-y: hidden; }
.top-logo img { position: absolute; left: 10px; top: -6px; max-height: 76px; max-width: 129px; transform: scale(0.8); }
.deploy-right-sidebar { border-left: 1px var(--color0) solid; display: table-cell; background-color: var(--color1); height: 65px; width: 65px; background-position: center center; }
.deploy-right-mail { border-left: 1px var(--color0) solid; display: table-cell; background-color: var(--color1); background-repeat: no-repeat; height: 65px; width: 65px; background-position: center center; position: absolute; right: 65px; top: 0px; }
.deploy-right-call { display: table-cell; background-color: var(--color1); background-size: auto 49%; height: 65px; width: 65px; background-position: center 16px; position: absolute; right: 130px; top: 0px; }
.sidebar-scroll-right { width: 275px; height: 100%; background-color: rgb(0, 61, 120); overflow: hidden auto !important; }
.sidebar-right { background-repeat: repeat; position: fixed; overflow: hidden; z-index: 99999; right: -280px; top: 0px; bottom: 0px; width: 270px; margin-right: 10px; box-shadow: rgba(0, 0, 0, 0.1) -2px 0px 2px 0px; font-family: var(--font_family_2)  !important; }
.sidebar-right a { text-decoration: none; display: block; overflow: hidden; position: relative; z-index: 1; color: var(--color0)  !important; }
.sidebar-right-logo { margin-left: 84px; top: 14px; right: 1px; max-width: 180px; float: inherit; max-height: 37px; position: relative; }
.sidebar-divider-text { font-size: 20px; padding-top: 15px; padding-left: 20px; padding-bottom: 15px; margin-bottom: 0px; background: var(--color2); opacity: 0.3; color: var(--color0)  !important; }
.submenu a:first-child { background-image: none !important; }
.submenu { display: none; }
.submenu-active { display: block; }
.sidebar-header-right { height: 65px; background-color: var(--color1); position: relative; }
.close-sidebar-right { height: 65px; width: 65px; margin-left: 0px; display: block; }
.sidebar-right .close-sidebar-right { position: absolute !important; }
.menu-mobile-dynamique { margin: 0px; padding: 0px; list-style: inside none none; }
.menu-mobile-dynamique li { width: 100%; margin-bottom: 1px; padding-left: 18px; background: var(--color1); }
.menu-mobile-dynamique .sub-menu li { background-color: transparent; margin-bottom: 0px; }
.menu-mobile-dynamique .sub-menu li a { height: 42px; text-transform: none; }
.menu-mobile-dynamique .sub-menu { background-image: linear-gradient(to bottom,var(--color1),var(--color1)); padding-top: 18px; padding-bottom: 18px; }
.menu-mobile-dynamique li.parent { background-image: url("../images/gopage.svg"); background-position: 241px 26.2px; background-repeat: no-repeat; background-size: 9px; }
.menu-mobile-dynamique li a { display: table-cell; width: 270px; vertical-align: middle; line-height: 18px; font-size: 16.2px; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); text-transform: uppercase; color: var(--color0); height: 60px; padding-left: 29px; background-position: 6px 20.9px; font-family: var(--font_family_1); }
.menu-mobile-dynamique ul { list-style: inside none none; padding-left: 0px; }
.menu-mobile-dynamique ul li a { background: none; }
.menu-mobile-dynamique input { appearance: none; border-radius: 0px; }
.menu-mobile-dynamique label { display: block; overflow: hidden; position: relative; border: 0px; vertical-align: baseline; outline: none; }
.no-bottom { margin-bottom: 0px !important; }
.menu-mobile-dynamique .sub-menu { display: none; }
.remonter { position: fixed; z-index: 9999; display: none; bottom: 10px; right: 10px; width: 44px; }
.remonter button { display: block; padding: 10px; text-align: center; border: none; border-radius: 7px; opacity: 0.5; }
.remonter button:hover { opacity: 0.8; }
.badge-optionnel { position: absolute; top: 0px; right: 0px; background: url("../images/badge-optionnel.png") right top no-repeat; width: 139px; height: 139px; }
.bg-optionnel { background: url("../images/bg-optionel.svg") center top / 60px repeat; }
.bg-optionnel-gris { background-size: 60px; }
.deprecated-ie { text-align: center; color: rgb(0, 0, 0); background: rgb(238, 238, 238); }
.deprecated-ie p { line-height: 30px; margin: 0px; }
.deprecated-ie a { line-height: 30px; font-family: Helvetica, arial, sans-serif; font-size: 13px; color: rgb(0, 0, 0); text-decoration: underline; }
.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar { background-color: var(--color1); }
.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar { background-color: var(--color5); }
.bx-pager.bx-default-pager a { background-color: var(--color4); }
.bx-pager.bx-default-pager a:hover, .bx-pager.bx-default-pager a.active { background-color: var(--color4); }
.vegas-timer-progress { background: var(--color0); }
.icones { width: 32px; margin: 16px 0px 0px 16px; height: 32px; fill: var(--color0); }
.deploy-right-sidebar .icones { width: 29px; }
.menu-mobile-dynamique li a::before { display: block; content: "❯"; position: absolute; left: 5px; font-size: 15px; color: var(--color0); }
.btn-partage .icones { width: 16px; margin: 0px; height: 16px; padding: 0px; position: relative; top: 9px; left: 0px; fill: var(--color3); }
.remonter .icones { margin: 0px 0px -5px; fill: var(--color1); text-align: center; }
.tete .tel .icones { width: 21px; margin: 0px 10px -3px 0px; height: 22px; fill: var(--color1); }
.btn-partage .btnp:hover .icones { fill: var(--color0); }
.tete .infos.infos_small .btn-partage .icones { top: 5px; left: 0px; }
.newsList { float: none; display: flex; flex-flow: row wrap; place-content: flex-start; align-items: flex-start; width: 100%; }
.newsList .ligne-actus { flex: 0 0 auto; margin: 0px 0px 30px; float: none; }
.news .date_post { text-align: center; color: var(--color0); font-weight: 800; font-size: clamp(12px, 0.5vw, 14px); line-height: 18px; text-transform: uppercase; display: block; background-color: var(--color1); position: absolute; left: 0px; top: 0px; padding: 7% 4% 4%; z-index: 50; margin: 0px; }
.news .date_post span { display: block; line-height: 13px; min-width: 84px; }
.news .date_post .s1 { line-height: 35px; padding-bottom: 5px; font-size: clamp(40px, 2vw, 50px); }
.newsList .propor .propor-cont .imagecont .masque { background-color: rgba(250, 250, 250, 0.2); background-image: none; }
.news .propor .propor-cont .imagecont:hover { transform: scale(1.15); }
.newsList .propor { overflow: hidden; }
.newsList .item .h3 { color: var(--color2); padding: 5px 0px 25px; margin: 0px; }
.newsList .item:hover .h3 { color: var(--color1); }
.newsList .item .h3 a:hover { text-decoration: none; }
.item-news { position: relative; }
.newsItem .photo img { object-fit: cover; min-width: 100%; min-height: 100%; flex: 1 1 0%; width: 100%; height: 100%; overflow-x: hidden; }
.newsItem .photo { width: 100%; height: clamp(300px, 40vw, 650px); background-color: rgb(242, 242, 242); transition: all 0.5s ease 0s; background-position: center center !important; background-repeat: no-repeat !important; }
.newsItem .contenu-article { padding: 15px 0px 0px; min-height: 200px; margin: 0px; }
.newsItem .div-rs { margin: 0px auto 40px; }
.newsItem .div-rs .btn-partage { display: inline-block; overflow: hidden; height: 36px; position: relative; top: 12px; }
.newsItem .div-rs .btn-partage .btnp { background-color: var(--color4); }
.newsItem .div-rs .btn-partage .btnp:hover { background-color: var(--color1); }
.newsItem .date_post { padding: 5% 3% 3%; }
.news_avant_apres { display: table; width: 100%; text-align: center; margin: 0px; height: 100%; }
.news_avant_apres > div { display: table-cell; float: none; padding: 0px; height: 100%; }
.news_avant_apres a, .news_avant_apres a:visited { padding: 15px 30px; color: var(--color1); text-decoration: none; border: 1px solid var(--color4); display: block; height: 100%; font-family: var(--font_family_1); text-transform: uppercase; }
.news_avant_apres a:hover, .news_avant_apres a:focus { border-color: var(--color3); text-decoration: none; }
.news_avant_apres > div:last-child { right: -5px; }
.news_avant_apres a:hover b, .news_avant_apres a:focus b { text-decoration: none; color: var(--color1); }
.navButtons, .navButtons:visited { padding: 0px 0px 10px; color: var(--color2); transition: all 0.8s ease 0s; text-decoration: none; display: block; }
.news_avant_apres a:hover span, .news_avant_apres a:focus span { color: var(--color2); text-decoration: none; }
a.return-to-news:visited, a.return-to-news, a.return-to-news:link { text-decoration: none; font-family: var(--font_family_1); text-transform: uppercase; color: var(--color2); }
a.return-to-news:hover, a.return-to-news:focus { text-decoration: underline; color: var(--color2); }
.pagination > li { background: none; padding-left: 0px; }
.pagination > li > a, .pagination > li > span { color: var(--color1); border-color: var(--color3); }
.pagination > .active > a, .pagination > .active > a:focus, .pagination > .active > a:hover, .pagination > .active > span, .pagination > .active > span:focus, .pagination > .active > span:hover { color: var(--color0); background-color: var(--color1); border-color: var(--color1); }
.pagination > li > a:focus, .pagination > li > a:hover, .pagination > li > span:focus, .pagination > li > span:hover { color: var(--color1); background-color: var(--color4); }
@media (min-width: 768px) {
  .dispaly_flex { display: flex; align-items: center; }
  .flex_child_2 { flex: 2 1 0%; }
  .flex_child_1 { flex: 1 1 0%; }
}
@media screen and (-webkit-min-device-pixel-ratio: 0) {
  .lightboxOverlay { overflow: scroll; }
  .lightboxOverlay::-webkit-scrollbar { width: 0px; }
}
@media (max-width: 991px) {
  .contact .formulaire .form-group > label.control-label { display: block; transition: all 400ms ease 0s; transform: translateZ(0px); bottom: 11px; opacity: 0.5; position: relative; font-size: 0px; }
  .contact .formulaire .form-group > label.focus { bottom: auto; font-size: var(--taille_font); padding-top: 5px; }
  .container { max-width: none; width: auto; }
  .centerservice2 { margin: 0px !important; }
  .centerservice { margin: 0px 25% !important; }
  .contact .formulaire .form-group .col-md-4 { width: 100% !important; }
  .contact .formulaire .form-group .col-md-8 { width: 100% !important; }
  .contact .formulaire .form-group input[name="captcha"] { width: 100% !important; margin-right: 0px !important; text-align: left !important; }
  .contact .formulaire .form-group input[name="captcha"] + a { position: absolute; width: 140px; top: 1px; right: 1px; margin-right: 0px !important; }
  .contact .formulaire .form-group input.btn-primary { width: 100%; margin-top: 8px; float: none; }
  .lb-prev { background: url("../images/lightbox-g.png") left 48% no-repeat; opacity: 1 !important; }
  .lb-next { background: url("../images/lightbox-d.png") right 48% no-repeat; opacity: 1 !important; }
  .video-accueil { position: static; width: 100%; height: auto; margin-left: 0px; }
  .banniere { height: 40vh; position: relative; }
  .pied .bande1 { padding: 0px 10% 70px; }
  .prestation .cell.texte .contenu { padding: 50px 10%; }
  .contact .tab-coordonnes .cell.gauche .contenu { padding: 50px 7% 30px; }
  .certifs .logo-certif img { background-size: contain; }
  .fluid-contenu { margin: 0px !important; }
  .slogan { top: -125px; width: 100%; left: 0px; padding: 0px 15px; }
  .body-page-1 .slogan { top: -200px; text-align: center; }
  .slogan .titre { font-size: 32px; line-height: 30px; }
  .slogan .titre span { font-size: 29px; }
  .slogan .sous-titre { font-size: 20px; line-height: 20px; }
  .gallery .description-galerie { padding: 0px 0px 40px; text-align: justify; }
}
@media (max-width: 767px) {
  .body-service-list-0  h1, 
  .body-service-list-0 .h1  {
   font-size: 25px; 
  }
  .corps { --taille_font:14px; font-size: var(--taille_font); }
  .pad-xs { padding-left: 15px !important; padding-right: 15px !important; }
  .pad-xs-l { padding-left: 15px !important; }
  .pad-xs-r { padding-right: 15px !important; }
  .centerservice2 { margin: 0px !important; }
  .centerservice { margin: 0px !important; }
  .nopad-xs { padding-left: 0px !important; padding-right: 0px !important; }
  .nopad-xs-l { padding-left: 0px !important; }
  .nopad-xs-r { padding-right: 0px !important; }
  h1, .h1 { font-size: 22px; line-height: 22px; }
  .titre-secondaire { font-size: 22px; line-height: 24px; }
  .body-page-1 .slogan { position: static; background: var(--color1); width: 100%; text-align: center; padding: 15px; transform: translateX(0px); }
  .slogan { text-align: center; }
  .slogan .titre {font-size: 30px;line-height: 24px;}
  .slogan .titre span { font-size: 23px; }
  .slogan .sous-titre { font-size: 17px; line-height: 17px; }
  .fluid-contenu .corps { padding: 20px 15px 40px; }
  .recup-photos .col-md-4 { padding-left: 5px !important; padding-right: 5px !important; }
  .recup-photos { margin-left: -5px !important; margin-right: -5px !important; }
  .newsList .recup-photos { margin-left: 0px !important; margin-right: 0px !important; }
  .recup-photos .propor { margin-bottom: 5px; }
  .certifs { display: block; }
  .certifs .cell.gauche { display: block; width: 100%; }
  .certifs .cell.gauche .contenu { padding: 30px 15px 40px; }
  .certifs .cell.droite { display: block; width: 100%; padding: 0px 15px 30px; }
  .certifs .cell.droite .bg-noir { padding: 40px 0px; }
  .cont-slider .controls { bottom: -20px; }
  .services { display: block; }
  .services .cell.gauche { display: block; width: 100%; height: 180px; }
  .services .cell.droite { display: block; width: 100%; }
  .services .cell.droite .contenu { padding: 30px 15px 40px; }
  .realisations { display: block; }
  .realisations .titre-secondaire { display: inline-block; width: 100%; }
  .realisations .col-md-3 { padding-left: 5px !important; padding-right: 5px !important; }
  .realisations { margin-left: -5px !important; margin-right: -5px !important; }
  .realisations .propor { margin-bottom: 5px; }
  .realisations .contenu, .AvisClientsBg .contenu { padding: 30px 15px 40px; }
  a.bouton-principal, button.bouton-principal { padding: 13px 40px 13px 20px; }
  .intervention .contenu { padding: 40px 15px 50px; }
  .AvisClientsBg { padding: 0px; }
  .pied .bande1, .bande_contact_footer { padding: 30px 15px; }
  .pied .btn-like { padding: 0px 0px 15px; text-align: center; }
  .pied .btn-partage { text-align: center; padding: 20px 0px 0px; }
  .pied .btn-partage a { text-align: center; }
  .body-gallery-4 .fluid-contenu .corps, .body-contact .fluid-contenu .corps { padding: 30px 0px 0px; }
  .contact .tab-coordonnes { display: block; }
  .contact .tab-coordonnes .cell.gauche { display: block; width: 100%; border: none; }
  .contact .tab-coordonnes .cell.gauche .contenu { padding: 0px 15px 30px; }
  .contact .tab-coordonnes .cell.centre { display: block; width: 100%; }
  .contact .tab-coordonnes .cell.droite { display: block; width: 100%; height: 180px; }
  .contact .plan .block #googlemapapi, .contact .plan iframe { height: 250px !important; }
  .contact .tab-formulaire { display: block; }
  .contact .tab-formulaire .cell.gauche { display: none; }
  .contact .tab-formulaire .cell.droite { display: block; vertical-align: top; width: 100%; border-bottom: 2px solid var(--color4); }
  .contact .tab-formulaire .cell.droite .contenu { padding: 30px 15px; }
  .contact .coordonnees { padding: 0px; }
  .gallery .description-galerie { padding: 0px 15px 20px; }
  .prestation, .actualites { display: block; }
  .prestation .cell.photo, .actualites .cell.photo { display: block; width: 100%; height: 180px; }
  .prestation .cell.texte, .actualites .cell.texte { display: block; width: 100%; clear: both; }
  .prestation .cell.texte .contenu, .actualites .cell.texte .contenu { padding: 30px 15px; }
  .gallery .ligne-photos .col-md-1, .gallery .ligne-photos .col-md-2, .gallery .ligne-photos .col-md-3, .gallery .ligne-photos .col-md-4, .gallery .ligne-photos .col-md-6 { padding-left: 5px !important; padding-right: 5px !important; }
  .gallery .ligne-photos { margin-left: -5px !important; margin-right: -5px !important; }
  .gallery .ligne-photos .propor { margin-bottom: 10px; }
  .gallery .nav li { margin-bottom: 0px; background: none; }
  .gallery .description-galerie { padding: 0px 0px 40px; text-align: justify; }
  .services .cell.droite .contenu { clear: both; }
  .scrollbars { width: 100%; height: auto; }
  .news_avant_apres > div:last-child { right: 0px; }
  .news_avant_apres > div { display: block; margin: 0px 0px 5px; }
  .news_avant_apres > div, .news_avant_apres { display: block; }
}
@media (min-width: 768px) and (max-width: 991px) {
  .pad-sm { padding-left: 15px !important; padding-right: 15px !important; }
  .pad-sm-l { padding-left: 15px !important; }
  .pad-sm-r { padding-right: 15px !important; }
  .nopad-sm { padding-left: 0px !important; padding-right: 0px !important; }
  .nopad-sm-l { padding-left: 0px !important; }
  .nopad-sm-r { padding-right: 0px !important; }
  .slogan { text-align: center; }
  .scrollbars { height: 240px; }
  .body-gallery-4 .fluid-contenu .corps, .body-contact .fluid-contenu .corps { padding: 30px 0px 0px; }
  h1, .h1 { font-size: 26px; line-height: 26px; }
  .titre-secondaire { font-size: 23px; line-height: 24px; }
  .gallery .description-galerie { padding: 0px 0px 40px; text-align: justify; }
}
@media (min-width: 991px) and (max-width: 1199px) {
  .gallery .description-galerie { padding: 0px 0px 40px; text-align: justify; }
  .tete .infos { height: auto; padding: 40px 30px 2px; }
  .btn-descendre { top: -165px; }
  .slogan { top: -125px; }
  .body-page-1 .slogan { top: -170px; }
  .slogan .titre {font-size: 40px;line-height: 30px;}
  .slogan .titre span { font-size: 29px; }
  .slogan .sous-titre { font-size: 20px; line-height: 20px; }
  .services a.bouton-principal { font-size: 11px; }
  .body-error404 a.btn.btn-default, .contact .formulaire input.btn-primary, .contact a.btn.btn-default { padding: 16px 20px; font-size: 12px; }
  .contact .coordonnees { padding: 0px; }
  .contact .formulaire .form-group input.btn-primary { width: 100%; margin-top: 8px; float: none; }
}
.infinite-scroll .chargement { background: url("../images/chargement.gif") center top no-repeat scroll rgba(0, 0, 0, 0); bottom: 0px; display: none; height: 32px; left: 50%; margin-left: -16px; position: absolute; width: 32px; }
.g-recaptcha { float: left; }
#g-recaptcha-response { left: 12px; position: relative; top: -45px; display: block !important; opacity: 0 !important; margin: 0px !important; height: 10px !important; }
@media print {
  @page { size: portrait; margin: 2cm; }
  body { background-color: var(--color0); font-family: serif; font-size: 10pt; }
  a::after { content: " [" attr(href) "] "; }
  h1, h2, h3 { font-family: verdana, serif; }
  .hide-print { display: none; }
  .hide { display: none; }
  .clear { clear: both; }
  div[class^="col-"] { width: 100%; }
  .gallery .ligne-photos div[class="col-md-2"] { width: 16.6667%; }
  .gallery .ligne-photos div[class="col-md-3"] { width: 25%; }
  .gallery .ligne-photos div[class="col-md-4"] { width: 33%; }
  .gallery .ligne-photos div[class="col-md-6"] { width: 50%; }
}
.intervention .h1 { margin-bottom: 40px; }
.flex_child_2 { font-size: 1.8rem; }
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: rgb(219, 219, 219); }
::-webkit-scrollbar-thumb { background-color: var(--color1); background-image: linear-gradient(315deg, lightblue 0%, var(--color1) 74%); border-radius: 10px; border: 2px solid rgb(219, 219, 219); }
::selection { background: var(--color1); color: white; }
.banniere::after { content: ""; position: absolute; top: 0px; left: 0px; background: rgba(0, 80, 157, 0.31); z-index: 1; width: 100%; height: 100%; }
h1::before, .h1::before { content: ""; width: 38px; background: url("../images/topTitle.svg") no-repeat; position: absolute; bottom: 8%; left: -43px; height: 24px; z-index: 3; transform: rotateY(180deg); }
#section10 { position: relative; width: 100%; height: 100%; }
#section10::after { position: absolute; bottom: 0px; left: 0px; content: ""; width: 100%; height: 80%; }
#section10 h1 { position: absolute; top: 50%; left: 50%; z-index: 2; transform: translate(-50%, -50%); color: rgb(255, 255, 255); font: 300 64px / 1 "Josefin Sans", sans-serif; text-align: center; white-space: nowrap; }
#scroll { background-color: rgb(255, 255, 255); }
#scroll::after { content: none; }
.scroll10 i { position: absolute; bottom: 20px; left: 50%; z-index: 2; display: inline-block; transform: translate(0px, -50%); color: rgb(255, 255, 255); font: 400 20px / 1 "Josefin Sans", sans-serif; letter-spacing: 0.1em; text-decoration: none; transition: opacity 0.3s ease 0s; }
#section10 i { padding-top: 60px; }
#section10 i span { position: absolute; top: 34px; left: 50%; width: 30px; height: 50px; margin-left: -15px; border: 2px solid rgb(255, 255, 255); border-radius: 50px; box-sizing: border-box; }
#section10 i span::before { position: absolute; top: 10px; left: 50%; content: ""; width: 6px; height: 6px; margin-left: -3px; background-color: rgb(255, 255, 255); border-radius: 100%; animation: 2s ease 0s infinite normal none running sdb10; box-sizing: border-box; }
@-webkit-keyframes sdb10 { 
  0% { transform: translate(0px, 0px); opacity: 0; }
  40% { opacity: 1; }
  80% { transform: translate(0px, 20px); opacity: 0; }
  100% { opacity: 0; }
}
@keyframes sdb10 { 
  0% { transform: translate(0px, 0px); opacity: 0; }
  40% { opacity: 1; }
  80% { transform: translate(0px, 20px); opacity: 0; }
  100% { opacity: 0; }
}
p.sidebar-divider-text { font-family: var(--font_family_1); background: var(--color1)  !important; }
.atous {vertical-align: middle;width: 100%;display: grid;grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));position: relative;gap: 10px;padding: 5px 10%;user-select: none !important;}
.atous .legend { margin-top: 10px; }
.atous .bloc { display: flex; flex-direction: column; justify-content: center; align-items: center; width: 100%; position: relative; transition: all 0.15s ease 0s; text-align: center; background: rgb(255, 255, 255); box-shadow: rgba(0, 0, 0, 0.16) 0px 0px 6px; padding: 20px; border-radius: 10px; overflow: hidden; z-index: 100; }
.atousImg { display: flex; align-items: center; justify-content: center; width: 100px; height: 100px; border-radius: 50%; border: 2px solid var(--color1); }
.atous .bloc img, .references .bloc img { width: 80px; height: auto; padding: 8px; }
.atouts-container { padding-top: 60px; padding-bottom: 135px; background: rgb(255, 255, 255); position: relative; }
.first1Container { margin-bottom: 30px; }
.intervention { background-color: rgb(4, 93, 233); background-image: linear-gradient(315deg, rgb(0, 73, 189) 0%, rgb(9, 198, 249) 181%); display: none; }
svg#logo_FD * { fill: rgb(255, 255, 255); }
.body-page-1 .services { padding: 0px 10%; border: none; }
.body-page-1 .realisations, .body-page-1 .AvisClientsBg { padding: 0px 8%; }
@media (max-width: 902px) {
  .body-page-1 .services { padding: 0px 2%; }
}
.bloc:hover { box-shadow: rgb(1, 80, 157) 0px 0px 10px; }
.page-contenu.clear p { font-family: var(--font_family_1); }
.body-contact-5 h1::before {content: "";width: 51px;background: url("../images/topTitle.svg") no-repeat;position: absolute;/* bottom: 62%; */left: -64px;z-index: 3;transform: rotateY(180deg);}
@media (max-width: 400px) {
  .h1, h1 { font-size: 19px; }
}
@media (max-width: 991px) {
  .body-contact-5 h1::before { display: none; }
}
p { font-family: var(--font_family_1); }
.intervention img { position: relative; }
use#court, image#court-3, use#court-2 { cursor: pointer; animation: 1s linear 0s infinite normal none running animate; }
@keyframes animate { 
  0% { opacity: 0; }
  100% { opacity: 1; }
}
#courts { position: fixed; inset: 0px; width: 100%; height: 100vh; z-index: 10001; background: rgba(2, 2, 2, 0.87); justify-content: center; flex-direction: column; align-items: center; overflow: hidden; display: none; }
.courtImg { border-radius: 10px; width: 40%; border: 2px solid white; }
.closeBtn { position: absolute; top: 20px; right: 20px; width: 20px; cursor: pointer; }
.courtName { color: white; padding: 20px 0px; }
#svgZone { width: 100%; }
.body-page-1 .flex_child_1.text-center { display: flex; justify-content: center; }
@media (max-width: 1013px) {
  .courtImg { width: 80%; }
  svg#svgZone { }
}
.carte { position: relative; }
#popupSvg { position: absolute; background-color: rgb(0, 0, 0); height: 50px; z-index: 999; padding: 3px; border-radius: 3px; display: none; width: 60px !important; }
#popupSvg img { width: 100%; height: 100%; }
#popupSvg::after { content: ""; border-width: 5px; border-style: solid; border-color: rgb(0, 0, 0) transparent transparent; position: absolute; left: 50%; transform: translateX(-50%); bottom: -10px; }
@media (max-width: 400px) {
  div#contactButtonsMobile a { font-size: 12px !important; padding: 8px !important; }
  div#contactButtonsMobile svg#Capa_1 { width: 12px !important; }
}
.loader { position: fixed; inset: 0px; width: 100%; height: 100vh; z-index: 10001; background: rgb(255, 255, 255); display: flex; justify-content: center; flex-direction: column; align-items: center; overflow: hidden; }
.squareContainer { display: flex; flex-direction: column; justify-content: center; }
.squares { display: flex; }
.square { width: 12px; height: 12px; background: black; border: 1px solid white; display: inline-block; }
.square1 { background: var(--s1); }
.square2 { background: var(--s2); }
.square3 { background: var(--s3); }
.square4 { background: var(--s4); }
.square5 { background: var(--s5); }
.square6 { background: var(--s6); }
.square7 { background: var(--s7); }
.square8 { background: var(--s8); }
.square9 { background: var(--s9); }
.square10 { background: var(--s10); }
.square11 { background: var(--s11); }
.square12 { background: var(--s12); }
.square13 { background: var(--s13); }
.square14 { background: var(--s14); }
.square15 { background: var(--s15); }
.square16 { background: var(--s16); }
.square17 { background: var(--s17); }
.square18 { background: var(--s18); }
.square19 { background: var(--s19); }
.square20 { background: var(--s20); }
.square21 { background: var(--s21); }
.square22 { background: var(--s22); }
.pied .navf .menu_footer li a {color: #ffffff9e  !important;}
.grand-band { position: relative; background: url("../images/footer-bg.jpg") 0% 0% / cover no-repeat; }
.grand-band::before { content: ""; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; background: var(--color1); opacity: 0.8; }
.pied .menu_referencement li a { color: var(--color0)  !important; }
.body-contact-5 .contact .coordonnees address p.adresse {background-image: url("../images/ico-adresse-f1.svg") !important;/* font-size: 18px; */}
.body-contact-5 .contact .coordonnees address p.tel.tel1 {background-image: url("../images/ico-tel-f1.svg");display: inline-block;font-size: 18px;}
.body-contact-5 .contact .coordonnees address p.tel.tel2 { background-image: url("../images/ico-tel2-f1.svg"); }
.body-page-1 .fluid-contenu .corps::after { background-image: url("../images/justice.png"); background-repeat: no-repeat; content: ""; position: absolute; top: 151px; left: -28px; width: 100%; height: 100%; opacity: 0.1; z-index: -1; background-size: contain; }
.bande_contact_footer { position: relative; }
.bande_contact_footer::before { content: ""; display: none; position: absolute; left: -69px; bottom: -82px; width: 20%; height: 100%; background-repeat: no-repeat; background-size: 83%; background-image: url("../images/bar.png"); }
.bande_contact_footer::after { content: ""; display: none; position: absolute; right: -117px; bottom: -82px; width: 20%; height: 100%; background-repeat: no-repeat; background-size: 83%; background-image: url("../images/bar.png"); }
@media (max-width: 1224px) {
  .bande_contact_footer::after { display: none; }
  .bande_contact_footer::before { display: none; }
}
@media(max-width:991px){
  .body-page-1 .fluid-contenu .corps::after {
    display: none
  }
}
@media(max-width:600px) {
 .body-service-list-0  a.bouton-principal{
   font-size: 12px ;
 }
 .body-service-list-0 a.bouton-principal::after {
   width: 20px;
   height: 20px;
   top: 25px;
   /* transform: translateY(-50%); */
 }
}
.contact .tab-coordonnes .cell.gauche::after {content: "";position: absolute;top: 0;left: 0;width: 100%;height: 100%;background: url(../images/bg1.png);z-index: -1;opacity: 0.1;background-size: contain;background-repeat: no-repeat;background-position: right;}
.contact .coordonnees .adresse .texte {
    font-size: 18px !important;
}
.body-contact-5 .contact .coordonnees address p.tel.tel2 {
    font-size: 18px ;
}