@font-face {
font-family:'Gilroy Light';
src: url('../font/Gilroy-Light.eot');
src: url('../font/Gilroy-Light.eot?#iefix') format('embedded-opentype'),
url('../font/Gilroy-Light.woff2') format('woff2'),
url('../font/Gilroy-Light.woff') format('woff'),
url('../font/Gilroy-Light.svg#Gilroy-Light') format('svg');
font-weight: 300;
font-style: normal;
font-stretch: normal;
unicode-range: U+0020-00FE;
}

@font-face {
font-family:'Gilroy ExtraBold';
src: url('../font/Gilroy-ExtraBold.eot');
src: url('../font/Gilroy-ExtraBold.eot?#iefix') format('embedded-opentype'),
url('../font/Gilroy-ExtraBold.woff2') format('woff2'),
url('../font/Gilroy-ExtraBold.woff') format('woff'),
url('../font/Gilroy-ExtraBold.svg#Gilroy-ExtraBold') format('svg');
font-weight: 800;
font-style: normal;
font-stretch: normal;
unicode-range: U+0020-00FE;
}

@font-face {
font-family:'Gilroy Light Italic';
src: url('../font/Gilroy-LightItalic.eot');
src: url('../font/Gilroy-LightItalic.eot?#iefix') format('embedded-opentype'),
url('../font/Gilroy-LightItalic.woff2') format('woff2'),
url('../font/Gilroy-LightItalic.woff') format('woff'),
url('../font/Gilroy-LightItalic.svg#Gilroy-LightItalic') format('svg');
font-weight: 300;
font-style: italic;
font-stretch: normal;
unicode-range: U+0020-00FE;
}

@font-face {
font-family:'Gilroy ExtraBold Italic';
src: url('../font/Gilroy-ExtraBoldItalic.eot');
src: url('../font/Gilroy-ExtraBoldItalic.eot?#iefix') format('embedded-opentype'),
url('../font/Gilroy-ExtraBoldItalic.woff2') format('woff2'),
url('../font/Gilroy-ExtraBoldItalic.woff') format('woff'),
url('../font/Gilroy-ExtraBoldItalic.svg#Gilroy-ExtraBoldItalic') format('svg');
font-weight: 800;
font-style: italic;
font-stretch: normal;
unicode-range: U+0020-00FE;
}

* {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
margin: 0;
padding: 0;
outline: none;
}

html, body{height:100%;}

html{overflow-x:hidden;}

body {
font-family:'Gilroy Light', Arial, sans-serif;
font-size:15px;
color:#1c1e22;
background-color:#fff;
width:100%;
-webkit-font-smoothing: antialiased;
-webkit-text-size-adjust: 100%;
}

input[type=text],input[type=file], input[type=password], button, select, textarea {
font-family: inherit;
font-size: inherit;
font-family:'Gilroy Light', Arial, sans-serif;
font-size:15px;
color:#1c1e22;
border:none;
}

textarea{
resize:none;
overflow:auto;
}

::-webkit-input-placeholder{
color:#1c1e22;
opacity:1;
}

:-moz-placeholder{
color:#1c1e22;
opacity:1;
}

::-moz-placeholder{
color:#1c1e22;
opacity:1;
}

input:-ms-input-placeholder, textarea:-ms-input-placeholder{
color:#1c1e22;
opacity:1;
}

button, a{cursor:pointer;}

button{
background:transparent;
border:none;
}

a, a:hover{
border:0;
text-decoration:none;
color:#1c1e22;
}

video{
max-width:100%;
height:auto;
}

table{border-collapse:collapse;}

img{
border:none;
max-width:100%;
}

ul{list-style-type:none;}

ul, ol{list-style-position:inside;}

label{display:block;}

canvas{-ms-touch-action:double-tap-zoom;}

h1, h2, h3, h4, h5{
font-weight:normal;
display:block;
}

header, nav, footer, section, article, aside, figure, figcaption, mark, time, main{display:block;}

sup, sub{text-transform:none;}

.clrb{clear:both;}

input:-webkit-autofill{-webkit-box-shadow: 0 0 0 1000px white inset;}


/**************************************/
/*************** GÉNÉRAL **************/
/**************************************/

/**** TEXTE AVEC UNDERSCORE AU DEBUT ****/
.underscore{
position:relative;
display:inline-block;
}

.underscore:before{
content:'_';
position:absolute;
top:0;
left:0;
transform:translateX(-100%);
}

/**** CKEDITOR ****/
.editor{line-height:20px;}

.editor > a{
text-decoration:underline;
color:#1c1e22;
}

.editor > em, .editor > i{
font-family:'Gilroy Light Italic';
font-style:normal;
}

.editor > b, .editor > strong{
font-family:'Gilroy ExtraBold';
font-weight:normal;
}

.editor > em strong, .editor > i strong, .editor > em b, .editor > i b, .editor > b i, .editor > strong i, .editor > b em, .editor > strong em{
font-family:'Gilroy ExtraBold Italic';
font-style:normal;
font-weight:normal;
}

.editor > .underscore:before{
position:static;
transform:none;
}

.editor > .gras{
font-family:'Gilroy ExtraBold';
font-size:20px;
}

/**** BACKGROUND SVG ****/
.svg{
background-repeat:no-repeat;
background-position:center center;
background-size:100% auto;
}

/**** IMAGES GRIS / COULEUR AU SURVOL ****/
.grayscale{
opacity:0.2;
transition:all 0.3s;
}

/**** CONTENEUR GENERAL ****/
.global{
width:1720px;
max-width:100%;
margin:0 auto;
padding-left:40px;
padding-right:40px;
}

/**** TITRES EXTRABOLD ****/
.exbold{
font-family:'Gilroy ExtraBold';
color:#000;
}

.exbold.s135{
font-size:135px;
line-height:115px;
}

.exbold.s100{
font-size:100px;
line-height:90px;
}

.exbold.s70{
font-size:70px;
line-height:70px;
}

.exbold.s40{
font-size:40px;
line-height:40px;
}

.exbold.s35{
font-size:35px;
line-height:35px;
}

.exbold.s30{
font-size:30px;
line-height:30px;
}

.exbold.s28{
font-size:28px;
line-height:28px;
}

.exbold.s25{
font-size:25px;
line-height:25px;
}

.exbold.s22{
font-size:22px;
line-height:22px;
}

/**** BOUTONS LIENS ****/
a.bt_lien, span.bt_lien, button.bt_lien{
display:inline-block;
font-family:'Gilroy ExtraBold';
font-size:20px;
padding-bottom:5px;
position:relative;
color:#000;
cursor:pointer;
}

.bt_lien:before{
position:absolute;
content:'';
width:100%;
height:3px;
background-color:#000;
display:block;
bottom:0;
left:-30px;
transition:0.5s;
}

/**** BOUTONS RETOUR ****/
.bt_back{
display:inline-block;
padding:0 25px 0 20px;
height:32px;
line-height:30px;
-webkit-border-radius:30px;
-moz-border-radius:30px;
border-radius:30px;
background-color:#000;
border:1px solid #000;
color:#fff;
transition:0.2s;
}

.bt_back span{
display:inline-block;
background:url(../img/fleche_left_blanc.svg) no-repeat left center;
background-size:5px 9px;
padding-left:15px;
}

/**** LISTE RÉALISATIONS ****/
section.rea.hidden{display:none;}

section.rea > ul li .txt{
position:relative;
height:100%;
padding:35px 90px 115px 55px;
-moz-box-shadow: 3px 3px 5px 0px #e8e8e8;
-webkit-box-shadow: 3px 3px 5px 0px #e8e8e8;
-o-box-shadow: 3px 3px 5px 0px #e8e8e8;
box-shadow: 3px 3px 5px 0px #e8e8e8;
filter:progid:DXImageTransform.Microsoft.Shadow(color=#e8e8e8, Direction=134, Strength=8);
margin:0 5px 10px 5px;
}

section.rea > ul li .txt .img{
position:absolute;
top:0;
left:0;
width:40%;
overflow:hidden;
height:100%;
display:block;
}

section.rea > ul li .txt .img img{display:block;}

section.rea > ul li .txt.is_img{padding-left:calc(55px + 40%);}

section.rea > ul li .txt p{margin-top:15px;}

section.rea > ul li .txt .bt_lien{
position:absolute;
bottom:45px;
left:85px;
}

section.rea > ul li .txt.is_img .bt_lien{left:calc(85px + 40%);}

/**** FICHE DÉTAIL (RÉALISATION ET PRODUIT) ****/
section.fiche_detail .diapo, section.fiche_detail .txt{
display:inline-block;
vertical-align:top;
width:50%;
}

section.fiche_detail .diapo{position:relative;}

#ct_rea_detail section.fiche_detail .txt{padding:30px 0 0 120px;}

#ct_produits section.fiche_detail .txt{padding-left:60px;}

section.fiche_detail .diapo.hidden{display:none;}

section.fiche_detail .diapo.hidden + .txt{
width:100%;
padding:0;
}

section.fiche_detail .diapo .slick-slide .gde{
display:block;
width:100%;
max-height:785px;
text-align:center;
}

section.fiche_detail .diapo .slick-slide img{
display:inline-block;
vertical-align:middle;
}

section.fiche_detail .diapo .zoom{
position:absolute;
bottom:15px;
left:20px;
width:22px;
height:22px;
background-image:url(../img/zoom.svg);
cursor:pointer;
}

section.fiche_detail .diapo .controls{
display:inline-block;
position:absolute;
bottom:0;
right:0;
}

section.fiche_detail .diapo .controls .puces, section.fiche_detail .diapo .controls .fleches, section.fiche_detail .diapo .controls .puces li, section.fiche_detail .diapo .controls .puces li button, section.fiche_detail .diapo .controls .fleches button{
display:inline-block;
vertical-align:middle;
}

section.fiche_detail .diapo .controls .puces{padding-right:15px;}

section.fiche_detail .diapo .controls .puces li button{
width:7px;
height:7px;
background:url(../img/puce.svg) no-repeat center center;
background-size:100% 100%;
font-size:0;
line-height:0;
opacity:0.3;
}

section.fiche_detail .diapo .controls .puces li.slick-active button{opacity:1;}

section.fiche_detail .diapo .controls .puces li + li{margin-left:3px;}

section.fiche_detail .diapo .controls .fleches{
padding:12px 24px;
background-color:#fff;
position:relative;
}

section.fiche_detail .diapo .controls .fleches:before{
position:absolute;
width:5px;
height:5px;
-webkit-border-radius:5px;
-moz-border-radius:5px;
border-radius:5px;
background-color:#000;
content:'';
top:50%;
left:50%;
margin:-2px 0 0 -2px;
}

section.fiche_detail .diapo .controls .fleches button{
width:8px;
height:14px;
background-repeat:no-repeat;
background-position:center center;
background-size:100% 100%;
font-size:0;
line-height:0;
}

section.fiche_detail .diapo .controls .fleches button.slick-prev{
background-image:url(../img/fleche_left.svg);
margin-right:25px;
}

section.fiche_detail .diapo .controls .fleches button.slick-next{
background-image:url(../img/fleche_right.svg);
margin-left:25px;
}

section.fiche_detail .diapo.noslide .controls{display:none;}

section.fiche_detail .txt h1{padding-bottom:20px;}

section.fiche_detail .txt .bt_back + h1{padding-top:35px;}

section.fiche_detail .txt .editor + .bt_lien{margin-top:35px;}

/**** LISTE DES RUBRIQUES PRODUITS ****/
section.produits_rub{text-align:center;}

#ct_accueil section.produits_rub{padding-top:120px;}

section.produits_rub h2{padding-bottom:25px;}

section.produits_rub ul li{
display:inline-block;
vertical-align:top;
width:calc(25% - 14px);
margin:15px 7px 0 7px;
-moz-box-shadow:5px 5px 5px 0px #eaeaea;
-webkit-box-shadow:5px 5px 5px 0px #eaeaea;
-o-box-shadow:5px 5px 5px 0px #eaeaea;
box-shadow:5px 5px 5px 0px #eaeaea;
filter:progid:DXImageTransform.Microsoft.Shadow(color=#eaeaea, Direction=134, Strength=5);
}

section.produits_rub ul li a{display:block;}

section.produits_rub ul li a .img{
overflow:hidden;
position:relative;
}

section.produits_rub ul li a .img img{
display:block;
width:100%;
}

section.produits_rub ul li a .img img.height{
height:100%;
width:auto;
max-width:none;
}

section.produits_rub ul li a .img img + img{
visibility:hidden;
position:absolute;
top:0;
left:0;
}

section.produits_rub ul li a .img.survol img:first-child{visibility:hidden;}

section.produits_rub ul li a .img.survol img + img{visibility:visible;}

section.produits_rub ul li a .titre{
height:70px;
line-height:50px;
padding:10px;
}

section.produits_rub ul li a .titre .ti{
line-height:20px;
display:inline-block;
vertical-align:middle;
font-size:16px;
}

/**** MENU CATALOGUE PRODUITS ****/
main.catalogue{
display:table;
table-layout:fixed;
}

aside.nav_produits, aside.nav_produits + section{
display:table-cell;
vertical-align:top;
}

aside.nav_produits{
width:21%;
position:relative;
padding:50px 0;
background:url(../img/ombre_right.png) repeat-y right top;
}

aside.nav_produits ul{padding:30px 0;}

aside.nav_produits ul li{
display:block;
padding-top:5px;
}

aside.nav_produits ul li .underscore:before{
position:static;
transform:none;
}

aside.nav_produits ul li > .s22{display:none;}

aside.nav_produits ul li .ssrub{
padding:15px 0 20px 0;
display:none;
}

aside.nav_produits ul li.open .ssrub{display:block;}

aside.nav_produits ul li .ssrub div{display:block;}

aside.nav_produits ul li .ssrub div a.active{font-family:'Gilroy ExtraBold';}

aside.nav_produits .separ{
position:relative;
padding-top:38px;
}

aside.nav_produits .separ:before{
position:absolute;
width:105px;
max-width:100%;
height:3px;
background-color:#000;
content:'';
top:0;
left:0;
}

aside.nav_produits + section{width:79%;}

aside.nav_produits + section.produits_rub{padding:135px 0 165px 90px;}

aside.nav_produits + section.produits_liste{padding:50px 0 150px 120px;}

aside.nav_produits + section.fiche_detail{padding:50px 0 70px 120px;}

/**** MENU BURGER ****/
.menu_burger{
position:fixed;
top:0;
left:0;
right:0;
bottom:0;
width:100%;
height:100%;
background-color:#fff;
opacity:0.98;
text-align:center;
display:none;
z-index:7000;
padding:40px;
}

.menu_burger .close{
position:absolute;
top:20px;
right:20px;
width:20px;
height:20px;
background-image:url(../img/close.svg);
cursor:pointer;
}

.menu_burger > a{
font-size:25px;
font-family:'Gilroy ExtraBold';
display:block;
margin:10px 0;
}

.menu_burger .reseaux{margin-top:20px;}

.menu_burger .reseaux a + a{margin-left:15px;}

.menu_resp{
display:none;
position:fixed;
top:0;
left:0;
width:100%;
padding:15px 15px 10px 15px;
background-color:#fff;
z-index:5500;
}

.menu_resp:after{
content:'';
position:absolute;
bottom:-6px;
left:0;
width:100%;
height:6px;
background:url(../img/ombre_bottom.png) repeat-x left center;
}

.menu_resp .logo{
display:inline-block;
vertical-align:middle;
width:calc(100% - 30px);
height:25px;
}

.menu_resp .logo a{
display:inline-block;
width:200px;
}

.menu_resp .logo a .img{display:block;}

.menu_resp .burger{
cursor:pointer;
background-image:url(../img/burger.svg);
width:25px;
height:21px;
}


/************************************/
/*************** INDEX **************/
/************************************/

/**** HEADER ****/
body > header{
line-height:17px;
position:relative;
}

body > header .logo, body > header nav{padding-top:80px;}

body > header .logo, body > header nav, body > header nav a, body > header nav .reseaux, .menu_burger .reseaux a, .menu_resp .burger{display:inline-block;}

body > header .logo, body > header nav{vertical-align:top;}

body > header nav a, body > header nav .reseaux, .menu_burger .reseaux a, .menu_resp .burger{vertical-align:middle;}

body > header .logo{width:21%;}

body.page_produits > header .logo{background:url(../img/ombre_right.png) repeat-y right top;}

body > header .logo a{
display:inline-block;
width:301px;
max-width:90%;
}

body > header .logo a img{display:block;}

body > header nav{
width:79%;
text-align:right;
font-size:17px;
font-family:'Gilroy ExtraBold';
}

body > header nav > a{position:relative;}

body > header nav > a.active:before{
content:'';
position:absolute;
left:0;
bottom:-8px;
height:3px;
width:100%;
background-color:#000;
}

body > header nav > a + a{margin-left:70px;}

body > header nav .reseaux{padding-left:60px;}

body > header nav .reseaux a + a{margin-left:25px;}

body > header nav .reseaux a, .menu_burger .reseaux a{height:17px;}

body > header nav .reseaux a.fb, .menu_burger .reseaux a.fb{width:9px;}

body > header nav .reseaux a.in, .menu_burger .reseaux a.in{width:17px;display:none;}

body > header nav .reseaux a.pin, .menu_burger .reseaux a.pin{width:13px;display:none;}

body > header .ssmenu{
position:absolute;
top:80%;
left:0;
width:100%;
z-index:5000;
padding:35px 0 0 20px;
visibility:hidden;
}

body > header .ssmenu.visible{visibility:visible;}

body > header .ssmenu > div{
background-color:#fff;
-moz-box-shadow:5px 5px 5px 0px #eaeaea;
-webkit-box-shadow:5px 5px 5px 0px #eaeaea;
-o-box-shadow:5px 5px 5px 0px #eaeaea;
box-shadow:5px 5px 5px 0px #eaeaea;
filter:progid:DXImageTransform.Microsoft.Shadow(color=#eaeaea, Direction=134, Strength=5);
padding:10px 10px 30px 10px;
}

body > header .ssmenu.produits{text-align:center;}

body > header .ssmenu.produits a{
display:inline-block;
vertical-align:top;
margin:0 1px;
font-size:17px;
}

body > header .ssmenu .img{
display:block;
width:205px;
height:205px;
margin-bottom:30px;
overflow:hidden;
}

body > header .ssmenu .img img{
display:block;
width:100%;
}

body > header .ssmenu .img img.height{
height:100%;
width:auto;
max-width:none;
}

body > header .ssmenu.rea .left, body > header .ssmenu.rea .right, body > header .ssmenu.rea .right .visu, body > header .ssmenu.rea .right .txt{
display:inline-block;
vertical-align:top;
}

body > header .ssmenu.rea .left, body > header .ssmenu.rea .right .visu{width:37%;}

body > header .ssmenu.rea .left a{
display:inline-block;
vertical-align:top;
margin:0 1px;
font-size:17px;
text-align:center;
}

body > header .ssmenu.rea .right, body > header .ssmenu.rea .right .txt{width:63%;}

body > header .ssmenu.rea .right .visu{
text-align:center;
font-size:17px;
}

body > header .ssmenu.rea .right .visu .img{width:100%;}

body > header .ssmenu.rea .right .txt{padding-left:35px;}

body > header .ssmenu.rea .right .txt p{
padding:20px 0 25px 0;
width:430px;
max-width:100%;
}

body > header .ssmenu.rea .right .txt .bt_lien{margin-left:30px;}

body > header .ssmenu.rea .right .txt .bt_lien:before{transition:none;}

body > header .ssmenu.rea.visible .right .txt .bt_lien:before{transition:0.5s;}

/**** FOOTER ****/
body > footer{
background:url(../img/ombre_top.png) repeat-x left top;
padding:70px 20px;
text-align:center;
}

body > footer .logo{
display:block;
width:301px;
max-width:100%;
margin:0 auto;
}

body > footer .logo img{display:block;}

body > footer h4{
font-family:'Gilroy ExtraBold';
font-size:22px;
margin:5px 0 45px 0;
}

body > footer h4.underscore:before{
position:static;
transform:none;
}

body > footer .link a{
font-family:'Gilroy ExtraBold';
font-size:17px;
display:inline-block;
vertical-align:middle;
}

body > footer .link a + a{
position:relative;
padding-left:25px;
margin-left:15px;
}

body > footer .link a + a:before{
display:inline-block;
content:'_';
position:absolute;
bottom:0;
left:0;
}

body > footer a.ny{
display:inline-block;
width:115px;
margin-top:30px;
}


/**************************************/
/*************** ACCUEIL **************/
/**************************************/

#ct_accueil{
padding-top:140px;
padding-bottom:120px;
}

#ct_accueil .intro{
position:relative;
padding:40px 0 0 20%;
}

#ct_accueil .intro h1{
position:absolute;
top:0;
left:0;
width:830px;
max-width:100%;
z-index:100;
}

#ct_accueil .catalogue{
display:table;
width:100%;
table-layout:fixed;
}

#ct_accueil .catalogue a{
display:table-cell;
vertical-align:middle;
width:50%;
position:relative;
padding-right:1px;
}

#ct_accueil .catalogue a + a{
padding-right:0;
padding-left:1px;
}

#ct_accueil .catalogue a span{
display:block;
position:absolute;
top:50%;
left:0;
text-align:center;
color:#fff;
width:100%;
padding:20px;
transform:translateY(-50%);
}

#ct_accueil .catalogue a img{display:block;}

#ct_accueil .bureau{
padding-top:110px;
margin:0 20%;
position:relative;
}

#ct_accueil .bureau h2{width:150%;}

#ct_accueil .bureau .txt{
display:inline-block;
vertical-align:top;
width:50%;
padding:45px 0;
}

#ct_accueil .bureau .txt .editor{
width:345px;
max-width:100%;
padding:20px 0 30px 0;
}

#ct_accueil .bureau .img{
display:inline-block;
vertical-align:top;
width:50%;
}

#ct_accueil .bureau .img img{
display:block;
margin-right:auto;
}

#ct_accueil .slick-slider .slick-arrow{
position:absolute;
top:50%;
display:block;
width:13px;
height:23px;
margin-top:-10px;
background-position:center center;
background-size:100% 100%;
background-repeat:no-repeat;
font-size:0;
line-height:0;
}

#ct_accueil .slick-slider .slick-prev{
left:-65px;
background-image:url(../img/fleche_left.svg);
}

#ct_accueil .slick-slider .slick-next{
right:-65px;
background-image:url(../img/fleche_right.svg);
}

#ct_accueil .rea{padding-top:110px;}

#ct_accueil .rea > ul{padding:45px 0 65px 0;}

#ct_accueil .rea > .bt{text-align:center;}

#ct_accueil .marques{
text-align:center;
padding-top:100px;
}

#ct_accueil .marques.hidden{display:none;}

#ct_accueil .marques #slider_accueil_marques{margin-top:85px;}

#ct_accueil .marques #slider_accueil_marques li{
text-align:center;
padding:0 30px;
}

#ct_accueil .marques #slider_accueil_marques li > a, #ct_accueil .marques #slider_accueil_marques li > span{
display:block;
height:60px;
line-height:60px;
}

#ct_accueil .marques #slider_accueil_marques li img{
display:inline-block;
vertical-align:middle;
}


/**************************************************************/
/*************** QUI SOMMES NOUS ET REALISATIONS **************/
/**************************************************************/

#ct_qui, #ct_rea{
padding-top:70px;
padding-bottom:150px;
}

#ct_qui .intro .img, #ct_qui .intro .txt, #ct_rea .intro .img, #ct_rea .intro .txt{
display:inline-block;
vertical-align:bottom;
width:50%;
}

#ct_qui .intro .img img, #ct_rea .intro .img img{
display:block;
width:100%;
}

#ct_qui .intro .txt, #ct_rea .intro .txt{padding:0 0 100px 120px;}

#ct_qui .intro .txt h1, #ct_rea .intro .txt h1{
position:relative;
left:-35%;
padding-bottom:35px;
}

#ct_qui .intro .txt .editor, #ct_rea .intro .txt .editor{
width:525px;
max-width:100%;
}

#ct_rea .intro .txt .bt_lien{margin:30px 0 0 30px;}

#ct_qui .marques{
padding:110px 0 165px 0;
text-align:center;
}

#ct_qui .marques h2{
width:650px;
max-width:100%;
margin:0 auto;
padding-bottom:40px;
}

#ct_qui .marques .rub{padding-top:60px;}

#ct_qui .marques .rub + .rub{
margin-top:25px;
background:url(../img/ombre_top.png) repeat-x top left;
}

#ct_qui .marques .rub h3{padding-bottom:35px;}

#ct_qui .marques .rub ul li{
display:inline-block;
vertical-align:middle;
padding:35px;
}

#ct_qui .marques .rub ul li > a, #ct_qui .marques .rub ul li > span{display:inline-block;}

#ct_qui .marques .rub ul li img{display:block;}

#ct_qui .paragraphe .img, #ct_qui .paragraphe .txt{
display:inline-block;
vertical-align:middle;
}

#ct_qui .paragraphe .img{width:55%;}

#ct_qui .paragraphe .img img{
display:block;
width:100%;
}

#ct_qui .paragraphe .txt{
width:45%;
padding:0 80px 0 110px;
}

#ct_qui .paragraphe .txt .editor, #ct_qui .paragraphe .txt .bt_lien{margin-top:35px;}

#ct_rea .accroche{
padding-top:110px;
position:relative;
}

#ct_rea .accroche img{
display:block;
margin:0 auto;
}

#ct_rea .accroche img + h2{
position:absolute;
bottom:-55px;
left:0;
padding:0 265px;
}

#ct_rea .rea{padding-top:235px;}

#ct_rea_detail .rea{padding-top:60px;}

#ct_rea .rea h2, #ct_rea_detail .rea h2{padding-bottom:55px;}

#ct_rea .rea h2.underscore:before, #ct_rea_detail .rea h2.underscore:before{
position:static;
transform:none;
}

#ct_rea .rea > ul li, #ct_rea_detail .rea > ul li{
display:inline-block;
vertical-align:top;
width:50%;
margin-top:5px;
}

#ct_rea_detail{
padding-top:65px;
padding-bottom:140px;
}


/*********************************************/
/*************** PRODUITS LISTE **************/
/*********************************************/

#ct_produits .produits_liste > .s30{
padding-bottom:25px;
margin-bottom:50px;
background:url(../img/ombre_bottom.png) repeat-x left bottom;
}

#ct_produits .produits_liste > a{
display:inline-block;
vertical-align:middle;
position:relative;
overflow:hidden;
width:calc(50% - 2px);
height:340px;
margin-bottom:4px;
}

#ct_produits .produits_liste > a.pair{margin-left:4px;}

#ct_produits .produits_liste > a img{
display:block;
margin:0 auto;
position:relative;
}

#ct_produits .produits_liste >  a .info{
position:absolute;
top:0;
left:0;
width:100%;
height:340px;
line-height:340px;
background:rgba(255, 255, 255, 0.8);
text-align:center;
display:none;
}

#ct_produits .produits_liste > a .info div{
display:inline-block;
vertical-align:middle;
line-height:20px;
padding:30px;
}

#ct_produits .produits_liste > a .info div h2{
font-size:15px;
display:inline-block;
}

#ct_produits .produits_liste .lien_showroom{
position:relative;
background-color:#e8e8e8;
margin-bottom:50px;
}

#ct_produits .produits_liste .lien_showroom.hidden{display:none;}

#ct_produits .produits_liste .lien_showroom a{display:block;}

#ct_produits .produits_liste .lien_showroom a img{
display:block;
width:100%;
}

#ct_produits .produits_liste .lien_showroom a span{
display:block;
min-height:49px;
background-image:url(../img/fleche_right.svg);
background-repeat:no-repeat;
background-position:right 145px center;
background-size:28px 49px;
padding:70px 100px 70px 70px;
width:100%;
}

#ct_produits .produits_liste .lien_showroom a img + span{
position:absolute;
top:50%;
left:0;
transform:translateY(-50%);
background-image:url(../img/fleche_right_blanc.svg);
color:#fff;
padding:0 100px 0 70px;
}


/*********************************************/
/*************** PRODUIT DETAIL **************/
/*********************************************/

#ct_produits .fiche_detail > .s30{
padding-bottom:25px;
margin-bottom:40px;
background:url(../img/ombre_bottom.png) repeat-x left bottom;
}

#ct_produits .fiche_detail > .retour{margin-bottom:45px;}

#ct_produits section.fiche_detail .txt .carac{
display:table;
font-size:18px;
padding:0 100px 20px 0;
}

#ct_produits section.fiche_detail .txt .carac > div span, #ct_produits section.fiche_detail .txt .carac > div strong{
display:table-cell;
vertical-align:top;
}

#ct_produits section.fiche_detail .txt .carac > div span{padding-right:20px;}

#ct_produits section.fiche_detail .txt .carac > div strong{
font-family:'Gilroy ExtraBold';
font-weight:normal;
}

#ct_produits section.fiche_detail .txt .carac.hidden{display:none;}

#ct_produits section.fiche_detail .cross{padding-top:90px;}

#ct_produits section.fiche_detail .cross .exbold{padding-bottom:45px;}

#ct_produits section.fiche_detail .cross ul li{
display:inline-block;
vertical-align:middle;
width:calc(25% - 3px);
}

#ct_produits section.fiche_detail .cross ul li + li{margin-left:1px;}

#ct_produits section.fiche_detail .cross ul li a{overflow:hidden;}

#ct_produits section.fiche_detail .cross ul li a, #ct_produits section.fiche_detail .cross ul li a img{
display:block;
width:100%;
}

#ct_produits section.fiche_detail .cross ul li a img{margin:0 auto;}

#ct_produits section.fiche_detail .cross ul li a img.height{
max-width:none;
width:auto;
height:100%;
}

#ct_produits section.fiche_detail .cross.hidden{display:none;}


/**************************************/
/*************** CONTACT **************/
/**************************************/

#ct_contact{
padding-top:70px;
padding-bottom:75px;
}

#ct_contact .intro .img, #ct_contact .intro .txt{
display:inline-block;
vertical-align:bottom;
width:50%;
}

#ct_contact .intro .img img{
display:block;
width:100%;
}

#ct_contact .intro .txt{padding-left:120px;}

#ct_contact .intro .txt h1{
position:relative;
left:-35%;
padding-bottom:50px;
}

#ct_contact .intro .txt .coords{
display:table;
width:100%;
table-layout:fixed;
margin-bottom:50px;
}

#ct_contact .intro .txt .coords li{
display:table-cell;
vertical-align:top;
padding:0 35px 30px 0;
}

#ct_contact .intro .txt .coords li:first-child{width:25%;}

#ct_contact .intro .txt .coords li:first-child + li{width:35%;}

#ct_contact .intro .txt .coords li:first-child + li + li{width:40%;}

#ct_contact .intro .txt .coords li + li{
border-left:2px solid #000;
padding-left:35px;
}

#ct_contact .intro .txt .coords li + li.vide{
border-left:none;
padding-left:0;
}

#ct_contact .intro .txt #gmap{
width:100%;
height:310px;
}

#ct_contact .formulaire{padding:165px 120px 0 120px;}

#ct_contact .formulaire form{
display:block;
padding:40px 120px 0 120px;
}

#ct_contact .formulaire form input[type=text], #ct_contact .formulaire form textarea{
padding:30px;
margin-top:10px;
display:inline-block;
vertical-align:middle;
border-bottom:3px solid #000;
}

#ct_contact .formulaire form input[type=text]{width:calc(50% - 60px);}

#ct_contact .formulaire form input.left{margin-right:60px;}

#ct_contact .formulaire form input.right{margin-left:60px;}

#ct_contact .formulaire form textarea{
width:100%;
height:265px;
}

#ct_contact .formulaire form input[type=text].erreur, #ct_contact .formulaire form textarea.erreur{
border-bottom:3px solid #d0393e;
color:#d0393e;
}

#ct_contact .formulaire form input.erreur::-webkit-input-placeholder, #ct_contact .formulaire form textarea.erreur::-webkit-input-placeholder{color:#d0393e;}

#ct_contact .formulaire form input.erreur:-moz-placeholder, #ct_contact .formulaire form textarea.erreur:-moz-placeholder{color:#d0393e;}

#ct_contact .formulaire form input.erreur::-moz-placeholder, #ct_contact .formulaire form textarea.erreur::-moz-placeholder{color:#d0393e;}

#ct_contact .formulaire form input.erreur:-ms-input-placeholder, #ct_contact .formulaire form textarea.erreur:-ms-input-placeholder{color:#d0393e;}

#ct_contact .formulaire form .mention{
text-align:right;
padding:15px 0 30px 0;
font-size:11px;
}

#ct_contact .formulaire form .alerte{
display:none;
font-family:'Gilroy ExtraBold';
text-align:center;
padding-bottom:30px;
color:#d0393e;
}

#ct_contact .formulaire form .bt{text-align:center;}

#ct_contact .formulaire .envoye{
display:none;
font-family:'Gilroy ExtraBold';
text-align:center;
font-size:20px;
margin:100px 0;
padding:100px;
}

/***************************************************************/
/*************** MENTIONS LÉGALES ET PLAN DU SITE **************/
/***************************************************************/

#ct_legal, #ct_plan{
padding-top:70px;
padding-bottom:120px;
}

#ct_legal .bandeau, #ct_plan .bandeau{position:relative;}

#ct_legal .bandeau img, #ct_plan .bandeau img{
display:block;
margin:0 auto;
}

#ct_legal .bandeau img + h1, #ct_plan .bandeau img + h1{
position:absolute;
bottom:-35px;
left:120px;
}

#ct_legal .paragraphes{
padding-top:70px;
width:800px;
max-width:100%;
margin:0 auto;
}

#ct_legal .paragraphes article{
padding-top:70px;
text-align:center;
}

#ct_legal .paragraphes article h2{padding-bottom:35px;}

#ct_plan .erreur{
padding-top:135px;
width:800px;
max-width:100%;
margin:0 auto;
text-align:center;
font-size:20px;
}

#ct_plan .erreur.hidden{display:none;}

#ct_plan .plan{
padding-top:135px;
width:800px;
max-width:100%;
margin:0 auto;
}

#ct_plan .plan article{
display:inline-block;
vertical-align:top;
width:50%;
padding-right:120px;
line-height:24px;
}

#ct_plan .plan article + article{
padding-right:0;
padding-left:120px;
}

#ct_plan .plan article a.underscore{margin-bottom:15px;}


/***********************************************/
/*************** SHOWROOM VIRTUEL **************/
/***********************************************/

#ct_showroom{
padding-top:120px;
padding-bottom:120px;
}

#ct_showroom h1{padding-bottom:120px;}

#ct_showroom h1.underscore:before{
position:static;
transform:none;
}

/* rgpd */
.rgpdContainer{
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 60px;
    background-color: rgba(242, 242, 242, 0.95);
    z-index: 100;
}
.rgpdContainer img{
    position: absolute;
    top: 20px;
    right: 35px;
    cursor: pointer;
}
.rgpdContainer .rgpdDisplay{
    width: 100%;
    margin: 0 auto;
    padding: 15px 0;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    overflow: hidden;
    font-family: 'Gilroy Light';
    color: black;
}
.rgpdDisplay p{
    letter-spacing: 1px;
    padding: 10px 0;
    margin: 0 25px 0 0;
}
.rgpdContainer .rgpdDisplay .generalButton{
    font-size: 12px;
    padding: 0 20px;
    cursor: pointer;
    letter-spacing: 1px;
    position: relative;
    background-color: black;
    font-family: 'Gilroy ExtraBold';
    color: white;
    cursor: pointer;
}
.rgpdContainer .rgpdDisplay .generalButton:nth-child(2){
    margin: 0 15px 0 0;
}
.rgpdContainer .rgpdDisplay .generalButton:nth-child(3){
    margin: 0 25px 0 0;
    background-color: white;
    color: black;
}
.rgpdDisplay a{
    border-bottom: 0.5px solid black;
    padding: 10px 0 0;
    letter-spacing: 1px;
    height: 32px;
    font-family: 'Gilroy Light';
    color: black;
    cursor: pointer;
}

.cookiePop{
    margin: 25px auto;
    max-width: 200px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.4);
    text-align: center;
    cursor: pointer;
}

.cookieInformation{
    text-align: center;
    font-size: 8px;
    letter-spacing: 1px;
    line-height: 10px;
    margin-top: 25px;
}

.cookieInformation a{
    border-bottom: 1px solid rgba(0, 0, 0, 0.4);
    padding-bottom: 2px;
}

.hidden{
    display: none !important;
}
