@font-face { font-family: 'axibl'; src: url('fonts/axiformablack.eot'); src: url('fonts/axiformablack.eot?#iefix') format('embedded-opentype'), url('fonts/axiformablack.woff2') format('woff2'), url('fonts/axiformablack.ttf') format('truetype'), url('fonts/axiformablack.svg#Axiforma-Black') format('svg'); font-weight: normal; font-style: normal; }
@font-face { font-family: 'axibold'; src: url('fonts/axibold.eot'); src: url('fonts/axibold.eot?#iefix') format('embedded-opentype'), url('fonts/axibold.woff2') format('woff2'), url('fonts/axibold.ttf') format('truetype'), url('fonts/axibold.svg#Axiforma-Bold') format('svg'); font-weight: normal; font-style: normal; }
@font-face { font-family: 'robb'; src: url('fonts/robbold.eot'); src: url('fonts/robbold.eot?#iefix') format('embedded-opentype'), url('fonts/robbold.woff2') format('woff2'), url('fonts/robbold.ttf') format('truetype'), url('fonts/robbold.svg#Roboto-Bold') format('svg'); font-weight: normal; font-style: normal; }
@font-face { font-family: 'robreg'; src: url('fonts/robreg.eot'); src: url('fonts/robreg.eot?#iefix') format('embedded-opentype'), url('fonts/robreg.woff2') format('woff2'), url('fonts/robreg.ttf') format('truetype'), url('fonts/robreg.svg#Roboto-Regular') format('svg'); font-weight: normal; font-style: normal; }
@font-face { font-family: 'axihitalic'; src: url('fonts/axiheavyitalic.eot'); src: url('fonts/axiheavyitalic.eot?#iefix') format('embedded-opentype'), url('fonts/axiheavyitalic.woff2') format('woff2'), url('fonts/axiheavyitalic.ttf') format('truetype'), url('fonts/axiheavyitalic.svg#Axiforma-HeavyItalic') format('svg'); font-weight: normal; font-style: normal; }

.slick-slider{position: relative;display: block;box-sizing: border-box;-webkit-user-select: none;-moz-user-select: none; -ms-user-select: none;user-select: none; -webkit-touch-callout: none; -khtml-user-select: none; -ms-touch-action: pan-y; touch-action: pan-y; -webkit-tap-highlight-color: transparent; }
.slick-list{position: relative;display: block;overflow: hidden;margin: 0;padding: 0;}
.slick-list:focus{outline: none;}
.slick-list.dragging{cursor: pointer;cursor: hand;}
.slick-slider .slick-track,.slick-slider .slick-list{-webkit-transform: translate3d(0, 0, 0);-moz-transform: translate3d(0, 0, 0);-ms-transform: translate3d(0, 0, 0);-o-transform: translate3d(0, 0, 0);transform: translate3d(0, 0, 0);}
.slick-track{position: relative;top: 0;left: 0;display: block;margin-left: auto;margin-right: auto;}
.slick-track:before,.slick-track:after{display: table;content: '';}
.slick-track:after{clear: both;}
.slick-loading .slick-track{visibility: hidden;}
.slick-slide{display: none;float: left;height: 100%;min-height: 1px;}
[dir='rtl'] .slick-slide{float: right;}
.slick-slide img{display: block;}
.slick-slide.slick-loading img{display: none;}
.slick-slide.dragging img{pointer-events: none;}
.slick-initialized .slick-slide{display: block;}
.slick-loading .slick-slide{visibility: hidden;}
.slick-vertical .slick-slide{display: block;height: auto;border: 1px solid transparent;}
.slick-arrow.slick-hidden {display: none;}

body, ul, li, ol, form, h1, h2, h3, h4, h5, h6, div, span, p { padding:0; margin:0; border:0; -webkit-text-size-adjust:none; -moz-text-size-adjust:none; text-size-adjust:none;}
article, aside, dialog ,figcaption, figure, footer, header, hgroup, main, nav, section, svg { display:block;}
input, textarea{ -webkit-appearance:none; -ms-appearance:none; appearance:none; -moz-appearance:none; -o-appearance:none; border-radius:0;}
*{ outline:none !important; box-sizing:border-box; }
*:before, *:after { transition:all ease-in-out 300ms }
strong, b { font-weight:normal; font-family:'robb';}
ul{ list-style-type:none; }
button { cursor:pointer }
body{ font:normal 15px/28px robreg; color:#000;}
a { text-decoration:none; color:#f9812a; transition:all ease-in-out 300ms; position:relative; }
img { border:none; display:block; }
#wrapper { overflow:hidden; background:#fff; max-width: 1920px; margin: 0 auto; }
.wrapper { width:100%; max-width:1250px; margin:0 auto; padding-left:40px; padding-right: 40px; position:relative; z-index: 4; }
p { margin-bottom:30px; }
.section { padding: 80px 0;}
.center { text-align: center; }
.texte ul, .detail ul { margin: 30px 0 30px 50px }
.texte ul li, .detail ul li { padding-left: 20px; position: relative; }
.texte ul li:before, .detail ul li:before { content: ''; position: absolute; width: 9px; height: 9px; border-radius: 50%; background: #f9812a; left: 0; top: 10px; }
.texte :last-child { margin-bottom: 0; }
.btn { display: inline-block; border-radius: 54px; font: 16px/54px robb; overflow: hidden; }
.flex { display: flex; flex-flow: row wrap; }
.bg-grey { background-color: #f4f4f4 ! important; }
.pad { padding: 80px 0; }
h1 { font: 65px/81px axibl; color: #000; }
#page h1 { font: 40px/51px axibl; }
h2, .title { font: 30px/43px axibl; color: #000; display: inline-block; margin-bottom: 15px; position: relative; }
h2::after, .title::after{ content:''; background: url('images/before-titre.svg'); width: 44px; height: 48px; position: absolute; left: -44px; top: -30px; }
.custom-page h2::after { display: none; }
h3 { font: 20px/36px axibl; }
h3 a { color: #000; display: inline-block; }
header{ position: relative; z-index: 60; padding: 0 80px; }
.logo-menu { align-items: center; justify-content: space-between; }
.nav-menu>ul>li { padding: 20px 25px; position: relative; }
.nav-menu>ul>li:last-child { padding-right: 0; }
.nav-menu>ul>li::after { content: ''; position: absolute; right: -5px; width: 9px; height: 9px; border-radius: 50%; background-color: #f9812a; top: 50%; margin-top: -5px; }
.nav-menu>ul>li:last-child::after { display: none; }
.nav-menu>ul>li>a { font: normal 18px/77px robb; position: relative; display: inline-block; color: #000; cursor: pointer; }
.nav-menu>ul>li>a::after { content: ''; background: url('images/hover-menu.svg') no-repeat center; position: absolute; right: 0; width: 0; height: 14px; bottom: 0; }
.sub-menu { position: absolute; display: block; text-align: left; padding: 0 40px; border-radius: 18px; left: 0; width: 250px; top: 110px; max-height: 0; opacity: 0; visibility: hidden; z-index: 200; overflow: hidden; box-shadow: 0px 0 23px 10px rgba(0,0,0,.06); background: #fff; }
.sub-menu li { border-bottom: 1px solid #f3f3f3 }
.sub-menu li:last-child { border-bottom: 0 }
.sub-menu li a { font: 16px/24px robb; color: #000; display: inline-block; padding: 10px 0; cursor: pointer; }
.sub-menu .current-menu-item a { color: #f9812a }

.fixed { position: fixed; top: 50%; right: -12px; z-index: 5555; }
.fixed .rappel { width: 170px; border-radius: 12px; color: #fff; padding: 10px 40px; line-height: 24px; background: #1f4488; box-shadow: 0 0 15px rgba(0,0,0,.1); }

.banner { background: url('images/illustration-ville.svg') no-repeat bottom center; background-size: cover; height: calc(100vh - 90px); min-height: 500px; position: relative; z-index: 1; }
.banner:before { content: url('images/nuage.svg'); position: absolute; top: 20vh; right: calc(50% - 200px); }
.banner:after { content: ''; position: absolute; top: 10vh; right: 20vh; width: 40vh; height: 40vh; background:url('images/sun.png') no-repeat center; background-size: cover; }
.banner .texte { max-width: 580px; padding-top: 10vh; }
.banner .texte h1 { margin-bottom: 45px; }
.home .banner .texte h1 { margin-bottom: 0; }
.btn.cta { color: #fff; text-transform:uppercase; box-shadow: inset 300px 0 0 0 #1f4488; padding: 2px 59px 0; top: 0; border: 1px solid #1f4488; }
.btn.boutton { color: #000; border: 1px solid #000; padding: 2px 60px 0 80px; background: url('images/tel.svg') no-repeat left+45px center; margin-right: 20px; }
.bloc-ptexte { align-items: center; position: relative; z-index: 1; }
.bloc-ptexte::after { position: absolute; right: -560px; content: url('images/bg-ptexte.svg'); opacity: .12; z-index: -1; }
.bloc-ptexte.reverse::after { -webkit-transform: scaleX(-1); transform: scaleX(-1); right: initial; left: -568px; top: -320px; }
.bloc-ptexte { margin: 80px 0; }
.bloc-ptexte > div { width: 50%; }
.bloc-ptexte .image img { max-width: 100%; height: auto; margin: auto; }
.bloc-ptexte .texte { padding-left: 140px; text-align: right; padding-right: 50px; }
.bloc-ptexte.reverse { flex-direction: row-reverse; }
.bloc-ptexte.reverse .texte { text-align: left; padding-left: 0; padding-right: 55px; }
.bloc-ptexte.reverse .texte h2::after { left: initial; right: -56px; -webkit-transform: scaleX(-1); transform: scaleX(-1); }
/*.bloc-ptexte.reverse .texte p { text-align: justify; }*/
.voir-plus { color: #000; text-transform: uppercase; font-size: 12px; position: relative; padding-right: 40px }
.voir-plus svg { margin-left: 13px; display: inline-block; position: absolute; top: 1px; right: 0; }
.nos-activite { position: relative; z-index: 9; }
.nos-activite .texte { position: absolute; top: 170px; max-width: 390px; padding-right: 50px; }
.nos-activite .title::after { -webkit-transform: scaleX(-1); transform: scaleX(-1); left: initial; right: -44px; }
.list-activite { width: calc(50% + 250px); position: relative; left: calc(50% - 195px); }

.conteneur { padding: 42px 10px; height: 572px; transition: all 300ms ease-in-out; }
.conteneur .image { position: relative; border-radius: 45px; overflow: hidden; height: 100%; }
.conteneur .image img{ filter: grayscale(1); width: 100%; height: 100%; object-fit: cover; border-radius: 45px; }
.conteneur .caption { display: flex; visibility: hidden; opacity: 0; justify-content: center; flex-direction: column; align-items: center; position: absolute; top:30px; bottom:30px; right:25px; left:25px; padding: 20px; border-radius: 45px; background: linear-gradient(137deg, #f9812a 0%, #ffb026 100%); margin: auto; transform: scale(0); color: #fff; text-align: center }
.conteneur .caption h3 { font: 22px/38px axibl; color: #fff; text-align: center; display: block; }
.conteneur .caption h3 a { color: #fff }
.conteneur .caption h3:after { content:''; width: 44px; height: 2px; background: #ea7b15; display: block; margin: 24px auto 26px }
.conteneur .caption .btn { background: url('images/arrow-plus-white.svg') no-repeat center #ea7b15; display: block; width: 50px; height: 50px; border: 4px solid #f4921e; border-radius: 50% }
.conteneur.slick-slide:not(.slick-current) .caption .btn { opacity:0 }

.similairessp .conteneur .caption h3:after { display: none; }
.similairessp .conteneur .caption .btn { margin-top: 20px }
.conteneur.slick-current { padding: 0 10px; }
.conteneur.slick-current .image::before { content: ''; position: absolute; top:0;bottom:0;left:0;right: 0; background: linear-gradient(137deg, #ffb026, #f9812a); opacity: .18; }
.conteneur.slick-current .image img { border-radius: 45px; filter: grayscale(0); }
.conteneur.slick-current .caption { opacity: 1; visibility: visible; transform: scale(1); }
.slick-offre { padding-bottom: 85px; }
.slick-offre button, .slick-page-activite button, .slick-arrow { position: absolute; bottom: 8px; border: 1px solid #000; font-size: 0; width: 30px; height: 30px; border-radius: 50%; background: url('images/arrow-slick.svg') no-repeat center;  }
.slick-offre .conteneur { width: 390px }
.slick-offre .conteneur.slick-current { width: 425px }
.slick-prev { transform: rotate(180deg); left: 180px; }
.slick-next { left: 220px; }
.pagingInfo { position: absolute; right: 20px; bottom: -650px; font: 24px/28px axibl; }
.pagingInfo::before { content: ''; position: absolute; width: 318px; height: 1px; background-color: #dfdfdf; right: 130px; top: 13px; }
.slick-page-activite .conteneur { width: 390px }

.bloc-page { padding-top: 130px; text-align: center; position: relative; z-index: 9; }
.title.center:after { right: 0; left:0; top: -56px; margin: auto; }
.bloc-page::after { content: ''; position: absolute; top: 432px; bottom: 177px; left: 0; right: 0; background-color: #f9812a; }
.bloc-33 { margin: 0 -23px }
.bloc-33 .item { width: 33.33%; padding: 20px 23px; }
.bloc-33 .item .card { border-radius: 45px; overflow: hidden; text-align: left; box-shadow: 0 23px 23px rgba(0,0,0,.04); height: 100%; background-color: #fff; }
.bloc-33 .item .card img { height: 237px; object-fit: cover; width: 100%; }
.bloc-33 .card .texte { padding: 25px 30px; background-color: #fff; }
.bloc-33 .texte h3, .bloc-33 .texte p { margin-bottom: 15px; }

.bandeau { border-radius: 45px; position: relative; background-color: #fff; box-shadow: 0px 0 23px 10px rgba(0,0,0,.04); text-align: left; margin: 60px 0; overflow: hidden; padding: 60px 0; }
.bandeau .titre { font: 24px/34px axihitalic; color: #000; margin-bottom: 10px; }
.bandeau .texte { width: 50%; padding-left: 120px; }
.bandeau .image { position: absolute; right: 0; top: 0; bottom: 0; width: 50%; }
.bandeau .image::before { content: ''; background: url('images/mask-white.svg'); position: absolute; left: 0;top: 0; bottom: 0; width: 200px; background-size: cover; }
.bandeau img { max-width: 100%; width: 100%; max-height: 100%; height: 100%; object-fit: cover; }

.bloc-marque { text-align: center; padding: 120px 0 80px; }
.list-marque { margin: 30px -15px 0; }
.list-marque .item { width: 25%; padding: 0 15px; }
.list-marque .item div { border: 1px solid #eaeaea; display: flex; justify-content: center; align-items: center; border-radius: 45px; height: 275px; background: #fff; }
.list-marque img { max-width: 60%; max-height: 60%; width: auto; height: auto; object-fit: contain; }

.banniere-pad { padding: 60px 0 }
.banniere-contact .grid div { padding-left: 70px; background: url('images/incite-contact.svg') no-repeat left center; }
.banniere-contact div p { font: 18px/28px robb; margin-bottom: 0 }
.ban-tel, .ban-mail, .adresse { font: 18px/28px robb; }
.banniere-contact.wrapper { padding: 0 100px; }
.grid { display: grid; grid-template-columns: 1fr 260px; grid-gap: 60px; align-items: center }


/*****Page*****/
.banner-page h1 { width: 50%; }
.banner-page .flex.wrapper { padding-top: 67px; align-items: flex-end; }
.banner-page .texte { width: 50%; padding-left: 20px;  }
.banner-page .image { height: 328px; border-radius: 45px; overflow: hidden; margin-top: 56px; width: 100%; }
.banner-page .image img { max-width: 100%; width: 100%; height: 100%; object-fit: cover; object-position: center; margin: auto; border-radius: 45px; }
.avantage { padding: 268px 0 30px; text-align: center; margin-top: -164px; }
.avantage  .title.center:after, .bloc-page-activite .title.center:after, .bloc-realisation .title.center:after, .faq .title.center:after {  -webkit-transform: scaleX(-1); transform: scaleX(-1); }
.avantage .bloc-33 .item { padding: 20px 30px; }
.avantage .image { width: 68px; height: 68px; background-color: #000; border-radius: 50%; display: flex; justify-content: center; align-items: center; margin: 0 auto 20px; }
.avantage h3 { font: 20px/31px axibl; min-height:62px; margin-bottom: 10px; }
.avantage h3 span { display: inline-block; }
.avantage .item:nth-child(2) .image { background: #f9812a; }
.bloc-page-activite { padding: 135px 0 170px; text-align: center; }
.bloc-page-activite .title { margin-bottom: 0 }
.bloc-page-activite .min-wrap { max-width: 520px; margin: 0 auto 60px; }
.bloc-page-activite button { margin-bottom: -90px; }
.bloc-page-activite .slick-prev { left: calc(50% - 40px) }
.bloc-page-activite .slick-next { right:calc(50% - 40px); left: initial; }
.bloc-50 { justify-content: center; }
.bloc-50 .conteneur { max-width: 50% }

.breadcrumbs { background-color: #f8f8f8; padding: 12px 0 13px; }
.breadcrumbs a { font: 15px/28px robreg; color: #000; }
.breadcrumbs a::after { content: ">"; margin: 0 30px; }
.breadcrumbs .breadcrumb_last { color: #f9812a; }

.bandeau.nomarg { margin-bottom: -130px; margin-top: 0; }
#page .bg-grey.faq { padding: 280px 0 80px; text-align: center; }
.page-template-page-obfusquer #page .bg-grey.faq { text-align: left; padding-top: 200px }
.bloc-full { padding: 80px 0; }
.bloc-full h2::after { left: initial; right: -45px; -webkit-transform: scaleX(-1); transform: scaleX(-1); }
.bloc-textimg { justify-content: space-between; padding: 80px 0; align-items: center; position: relative; }
.bloc-textimg .texte { width: 50%; padding-right: 60px; position: relative; z-index: 9; }
.bloc-textimg .texte h1 { margin-bottom: 25px; }
.bloc-textimg .image { border-radius: 45px; overflow: hidden; width: 50%; position: relative; z-index: 9; }
.bloc-textimg .image img { max-width: 100%; max-height: 100%; width: 100%; height: auto; object-fit: cover; }
.bloc-textimg.reverse { flex-direction: row-reverse; }
.a-propos>.bg-grey:first-child { padding-top: 80px; }
.a-propos h1 { text-align: center; }
.bloc-textimg.reverse .texte, .liste .bloc-textimg:nth-child(2) .texte { padding-right: 0; padding-left: 60px; }
.a-propos h2:after { left: 0; top: -60px }
.a-propos .sspage { padding-top: 130px; background-color: #fff; }
.boutton.enpl { padding: 2px 60px 0; background: #fff; margin-right: 0; text-transform: uppercase; }
.liste .bloc-textimg:nth-child(2) { flex-direction: row-reverse; }
.liste .bloc-textimg:nth-child(2)::before { content: ''; position: absolute; top: 0; right: -10000px; bottom: 0; left:-10000px; background: #f8f8f8; }
.full { padding: 260px 0 80px; text-align: center; background: #fff; }
.a-propos .full h2 { line-height: 43px; }
.a-propos .full h2:after { right: 0; margin: auto; top: -58px; }
.mainpage { padding: 80px 0 0; }
.propr { padding: 80px 0 69px; justify-content: space-evenly; margin: 0 -10px; }
.propr .item { max-width: 50%; text-align: center; padding: 0 10px; }
.propr .image { width: 365px; max-width: 100%; height: auto; border: 10px solid #eaeaea; border-radius: 45px; overflow: hidden; margin-bottom: 36px; }
.propr .image img { width:100%; }
.propr .nom { font: 20px/28px axibl; }
.propr .btn { margin: 30px 15px 0 }
.propr .btn svg { fill: #f9812a; }

.a-propos .critere { text-align: center; padding: 80px 0; }
.a-propos .critere h1 { font: 30px/48px axibl; margin-bottom: 20px; }
.bloc-textimg .texte ul { margin-left: 20px; }
.bloc-textimg .texte ul li { margin-bottom: 10px; }
.bloc-textimg .texte ul li:last-child { margin-bottom: 0 }
.bloc-realisation .flex { margin: 0 -26px; }
.bloc-realisation { text-align: center; padding: 120px 0 80px }
.bloc-realisation .item { padding: 20px 26px; width: 33.33%; }
.bloc-realisation .item > a { border-radius: 45px; overflow: hidden; display: block; position: relative; }
.bloc-realisation .item > a:before, .lister-image .image a:before { content: ''; position: absolute; top: 0; right:0; left: 0; bottom: 0; background: url('images/search.svg') no-repeat center #000; opacity: 0; background-size: 50px }
.bloc-realisation .item img { width: 100%; height: auto; border-radius: 45px; }

#contact { padding: 80px 0 0; }
/*#contact h1 { margin-bottom: 50px; }*/
#contact .bloc-50 .gauche { width: 50%; padding-right: 80px; }
#contact .gauche a { display: block; }
#contact .gauche .ban-tel { padding: 5px 0 5px 80px; background: url('images/casque.svg') no-repeat left center; margin-bottom: 30px; max-width: 350px; background-size: 55px; }
#contact .gauche .ban-mail { padding:2px 0 2px 80px; background: url('images/mailer.svg') no-repeat left center; margin-bottom: 30px; background-size: 55px; }
.ban-mail span, .right span { display: inline-block }
.adresse span { display: block }
.adresse { padding: 2px 0 2px 80px; background: url('images/location.svg') no-repeat left top; background-size: 40px; }
.droite { width: 50%; }
.droite .parent-form { border-radius: 45px; border: 1px solid #f1f1f1; background-color: #fff; box-shadow: 0 23px 32px rgba(0,0,0,.04); padding: 40px 75px 20px; }
.droite .parent-form .form-group { margin-bottom: 18px; }
.form-group br { display: none; }
.screen-reader-response { display: none; }
.droite .parent-form label { display: block; margin-bottom: 10px; }
.droite .parent-form input { display: block; width: 100%; border: 1px solid #f1f1f1; background-color: #f8f8f8; padding: 15px; }
.droite .parent-form textarea { resize: none; width: 100%; height: 270px; border: 1px solid #f1f1f1; background-color: #f8f8f8; padding: 15px; font: normal 15px/28px robreg; }
.droite .parent-form .right { text-align: right; margin-top: 20px; margin-bottom: 30px; }
.droite .parent-form button { padding: 0 40px; border: none; }
.wpcf7-form-control-wrap { display: block; }
.droite .parent-form select { display: block; width: 100%; border: 1px solid #f1f1f1; padding: 9px 15px; -webkit-appearance: none; -moz-appearance: none; appearance: none; background: url(images/arrow_select.svg) no-repeat top 19px right 20px #f8f8f8; font: normal 15px/28px robreg; }
#contact .map { display: block; margin-top: -120px; max-width: 100%; height: 500px; width: 100%; min-height: 450px; object-fit: cover; }
.wpcf7-response-output[role='alert'] { color: #f9812a; padding: 20px; margin-top: 40px; text-align: center; }
.wpcf7-not-valid-tip { color:red; margin-top:10px }
/******/
.banner-actu { background-color: #f4f4f4; }
.banner-actu .mnwrap { max-width: 700px; padding: 80px 20px 285px; margin: auto; text-align: center; }
.listers { margin: -262px -35px 60px; }
.listers .item { width: 33.33%; padding: 30px 35px; }
.listers .card { border-radius: 45px; overflow: hidden; }
.listers .card .image { position: relative; }
.listers .card .image img { width: 100%; height: 232px; object-fit: cover; }
.date { padding: 4px 20px 2px 40px; display: inline-block; background: url('images/date.svg') no-repeat left+20px center #f9812a; color: #fff; position: absolute; bottom: 0; left: 0; z-index: 1; }
.listers .card h3 { background-color: #f4f4f4; padding: 25px 30px; font: 18px/25px axibl; }
.wp-pagenavi { text-align: center; margin: 34px 0 60px; }
.wp-pagenavi > * { display: inline-block; vertical-align: middle; }
.previouspostslink, .nextpostslink { display: inline-block; border: 1px solid #000; font-size: 0; width: 27px; height: 27px; border-radius: 50%; background: url('images/arrow-slick.svg') no-repeat center; background-size: 5px; }
.previouspostslink { transform: rotate(180deg); margin-right: 10px; }
.nextpostslink { margin-left: 10px; }
.wp-pagenavi .page, .wp-pagenavi .current { margin: 0 10px; color: #000; }
.wp-pagenavi .current { color: #f9812a; position: relative; }
.wp-pagenavi .current::after { content: ''; position: absolute; bottom: -5px; left: 0; right: 0; width: 7px; height: 7px; background-color: #f9812a; border-radius: 50%; margin: auto; }

.detail { padding: 50px 0; position: relative; text-align: center; }
.detail::before { content: ''; position: absolute; left: 0; right: 0; top: 0; height: 460px; background-color: #f4f4f4; }
.detail h1 { font: 36px/47px axibl; margin-bottom: 25px; }
.detail .date { position: relative; margin-bottom: 40px; }
.detail .image {  overflow: hidden; border-radius: 45px; margin-bottom: 60px; }
.detail .image img { width: 100%; height: auto; max-height: 510px; object-fit: cover; }
.detail h2 { font: 26px/35px axibl; }
.detail h2:after { display: none; }
.partage { padding: 25px 75px; background-color: #20232a; border-radius: 20px; color: #fff; display: flex; justify-content: space-between; align-items: center; }
.label { text-transform: uppercase; }
.social a { display: inline-block; width: 32px; height: 32px; margin-left: 30px; background-size: 32px ! important; }
.social .facebook { background: url('images/facebook.svg') no-repeat center; }
.social .twitter { background: url('images/twiter.svg') no-repeat center; }
.social .linkedin { background: url('images/linkedin.svg') no-repeat center; }
#actu-detail .listers { margin-top: 0; margin-bottom:0; text-align: left; }
.similaire { text-align: center; padding: 134px 0 50px }
.similaire .listers .card h3 { background-color: #fff; }
.wp-block-media-text { margin-bottom: 30px }
.wp-block-media-text .wp-block-media-text__content { padding-right: 0 }
.wp-block-media-text.has-media-on-the-right .wp-block-media-text__content { padding-left:0; padding-right: 8% }
.wp-block-media-text__media img { height: auto }

.banner-faq { padding: 80px 0; text-align: center; }
.banner-faq :last-child { margin-bottom: 0; }
.banner-faq h1 { font: 36px/42px axibl; margin-bottom: 17px; }
.accordeon { margin: 80px 0; text-align: left; }
.accordeon .item { margin-bottom: 10px; }
.accordeon-title { border-radius: 20px; border: 1px solid #e4e4e4; padding: 21px 80px 19px 40px; font: 19px/28px axibold; position: relative; cursor: pointer; }
.accordeon-title.open { background-color: #20232a; color: #fff; }
.accordeon-title.open span { background-color: #f9812a; }
.accordeon-title.open span:after { display: none; }
.accordeon-title span { width: 28px; height: 28px; position: absolute; top:0;bottom:0;right:40px; margin: auto; border-radius: 50%; background-color: #20232a;  }
.accordeon-title span::before { content: ''; width: 14px;height: 2px; background-color: #fff; position: absolute; top:0;bottom:0;left:0;right:0; margin:auto; }
.accordeon-title span::after { content: ''; width: 2px;height: 14px; background-color: #fff; position: absolute; top:0;bottom:0;left:0;right:0; margin:auto; }
.accordeon .contenu { display: none; padding: 40px 50px; }
.accordeon .contenu p { margin-bottom: 10px }
.accordeon .contenu p:last-child { margin-bottom: 0 }
.faq .accordeon { margin:0 }
.faq .title { margin-bottom: 40px; }

.chiffre .bloc-25 { margin-top: 40px; }
.bloc-25 .item { width: 25%; padding: 0 10px; }
.chiffre { padding: 120px 0 80px; text-align: center; }
.progress { width: 133px; height: 133px; position: relative; text-align: center; margin: 0 auto 24px; }
.progress span { font: 45px/48px axibl; color: #f9812a; position: absolute; top:50%; transform: translateY(-50%); left: 0; right: 0; text-align: center; }
.progress.pfont span { font: 25px/27px axibl; }
.chiffre .caption { font: 20px/31px axibold;  }
.reference .banner-actu .mnwrap { padding-bottom: 175px; max-width: 840px; }
.lister-image { margin-top: -143px; margin-bottom: 80px; }
.lister-image .flex { padding-right: 34px; padding-left: 34px; }
.lister-image .image { width: 25%; padding: 6px; }
.lister-image .image a { position: relative; display: block; border-radius: 45px; overflow: hidden; }
.lister-image .image img { max-width: 100%; max-height: 100%; object-fit: cover; width: 100%; border-radius: 45px; }

.fbandeau { background-color: #1f4488; }
.fbandeau .wrapper { justify-content: center; }
.fbandeau .wrapper > * { display: block; background-size: 20px;background-position: left center; background-repeat: no-repeat; color:#fff; padding:5px 0; padding-left: 35px; font: 16px/28px robreg; margin: 5px 20px; }
.fbandeau .wrapper .adress { background-image: url('images/home.svg'); }
.fbandeau .wrapper .tel { background-image: url('images/phone.svg'); }
.fbandeau .wrapper .mail { background-image: url(images/mailer-white.svg);  }

footer .fondnoir { background-color: #000; padding: 40px 0; color: #fff; }
.parentf { justify-content: center; }
.parentf > div { width: 250px; }
.parentf .info { display: flex; align-items: center; }
.nlogo img { width: 160px; }
.nlogo a { display: block; }
.parentf ul { width: calc(100% - 500px); justify-content: center; }
.parentf ul li { padding: 0 35px; position: relative; }
.parentf ul li::after { content: ''; position: absolute; right: -5px; width: 9px; height: 9px; border-radius: 50%; background-color: #f9812a; top: 50%; margin-top: -8px; }
.parentf ul li:last-child::after { display: none; }
.parentf ul li:last-child { padding-right: 0; }
.parentf ul li:first-child { padding-left: 0; }
.parentf ul li a { color: #fff; text-transform: uppercase; font-size: 13px; }
.reseau-sociau { justify-content: flex-end; }
footer svg { fill: #fff; }
.reseau-sociau a { margin-left: 18px; }
.totop { width: 33px; height: 33px; border-radius: 50%; background-color: #fff; display: flex; justify-content: center; align-items: center; }
.totop svg { fill: #000 }

.nc_tweetContainer.swp_share_button.total_shares.total_sharesalt { display: none; }
.swp_horizontal_panel.swp_individual_full_color.swp_other_full_color { display: flex; }
.swp_horizontal_panel.swp_individual_full_color.swp_other_full_color * { font-size: 0; }
.swp_facebook a { background: url('images/facebook.svg') no-repeat center; }
.swp_twitter a { background: url('images/twiter.svg') no-repeat center; }
.swp_linkedin a { background: url('images/linkedin.svg') no-repeat center; }

.mention .bg-grey { padding: 80px 0; }
.mention h2::before { display: none; }
.page404 {text-align: center;font: normal 24px/30px robreg;padding: 0 40px;height: 70vh;display: table;width: 100%;border-top: 1px solid #f3f3f3;}
.page404>div {display: table-cell;vertical-align: middle;}
.page404 span {display: block;font: normal 120px/130px axibl;color: #f9812a;}

.avantage .item p:last-child { margin-bottom: 0 }
.mention h1 { margin-bottom: 30px }
.mention h2:after { display: none }
.padbotreduit { padding-bottom: 80px }
.similairessp .conteneur { height: 370px; padding-top:0; padding-bottom: 0 }
.similairessp button { margin-bottom: -70px; }
.bloc-page-activite.similairessp { padding-bottom: 140px }
.track-width .slick-track { margin-left: 0 }
.slick-page-activite .slick-current.slick-active.slick-center { width: 400px }
.deux { justify-content: center; }
.deux .conteneur { padding: 0 20px; max-width: 50% }
.deux .conteneur .caption { opacity:1; transform: scale(1); visibility: visible; }
.deux .conteneur .image:hover .caption { transform: scale(1) !important; }
.deux .conteneur .image img { filter: grayscale(0); }
.similaire-produit { text-align: center; padding: 134px 0 38px }
.similaire-produit .image { height: 360px; display: block }
.produit { justify-content: center }
.produit .caption h3 { font: 20px/26px axibl; }
.produit .conteneur { height: initial; padding: 40px 20px; width: 33.33%; }
.produit .caption { top: initial; right:0; left:0; bottom:0; border-top-left-radius:0; border-top-right-radius:0; }
.produit .caption h3:after { display: none; }
.produit .conteneur:nth-child(2) .caption, .produit.seul .conteneur .caption { transform: scale(1); opacity:1; visibility: visible; }
.produit .conteneur:nth-child(2) .image img, .produit.seul .conteneur .image img { filter: grayscale(0) }
.bloc-full img { max-width: 100%; height: auto; }

.withptexte .bloc-ptexte { margin:0; padding: 80px 0 }
.withptexte .bloc-ptexte .image { padding-right: 50px; }
.withptexte .bloc-ptexte .image img { margin: 0; border-radius: 10px }
.withptexte .bloc-ptexte .texte { text-align: left; padding: 0; }
.bg-white { background: #fff; position: relative }
.bg-white::before { content:''; position: absolute; bottom:0; top: 0; left: -10000px; width: 10000px; background: #fff; }
.bg-white::after { content:''; position: absolute; bottom:0; top: 0; right: -10000px; width: 10000px; background: #fff; }
.withptexte .bloc-ptexte.reverse .image { padding-left: 50px; padding-right:0 }
.page-id-783 .bg-grey, .page-id-998 .bg-grey { height: 70vh; display: flex; align-items: center }
.page-id-783 .texte, .page-id-998 .texte { text-align: center; }
.page-id-783 .texte h1, .page-id-998 .texte h1 { font: 30px/40px axibl; margin-bottom: 10px; color: #f9812a; }
/*****/
.blocker { z-index: 9999 !important }
.modal { padding: 50px; }
.modal .wpcf7-form-control-wrap { display:block; margin: 20px 0; }
.modal .wpcf7-form-control-wrap input { height: 50px }
.modal label { font: normal 18px/28px robb }
.modal p { margin-bottom: 0; text-align: right; }
.modal .wpcf7-form-control-wrap input { padding: 10px 30px; background: #f6f6f6; border-radius: 10px; border: 0; width: 100%; }
.fbandeau .wrapper .rappel { border: 1px solid #fff; color: #fff; padding: 0 40px; line-height: 40px; }
.custombg { background: #f8f8f8 !important; }
.aligncenter { margin: auto }

.pt-0 { padding-top: 0}

.spacer-full-text { background: #f4f4f4; padding: 65px 0;}
.organigramm-list { padding-top: 80px; }
.organigramm-item {background: white; padding: 30px; border-radius: 15px; display: inline-block; max-width: 480px; text-align: left;width: 100%; height: 100%}
.organigramm-item header { padding: 30px 0 0;}
.organigramm-item header img { position: absolute; top: -80px; left: 0; width: 100px; height: 100px; border-radius: 50%; background: #1f4488; }
.organigramm-item .identity {position: relative; color: #f9812a; font-size: 22px;}
.organigramm-item .identity strong { display: block; color: grey; font-size: 16px;}
.organigramm-item .identity::after { content:""; height: 100%; background-color: #f9812a; width: 5px; position: absolute; left: -30px; top: 0;border-top-right-radius: 5px; border-bottom-right-radius: 5px;}
.organigramm-list.ceo { margin-bottom: 100px}
.exp li { position: relative; padding-left: 20px}
.exp li::before { content:""; position: absolute; background-color: #f9812a; width: 6px; height: 6px; border-radius: 50%; left: 0; top: 10px}
.grid-list-organigram { display: grid; grid-template-columns: 1fr 1fr 1fr; align-items: center; align-items: center; gap: 100px 20px;}
.grid-list-organigram .item { text-align: center; height: 100%;}
.grid-list-organigram #el-3 { grid-column-start: 1; } 
.grid-list-organigram #el-1, .grid-list-organigram #el-2 { position: relative; transform: translateX(50%); }