html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:top;}article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section {display: block;}body {line-height: 1;}ol, ul {list-style:none;}blockquote, q {quotes:none;}blockquote:before, blockquote:after, q:before, q:after {content:'';content: none;}table{border-collapse:collapse;border-spacing:0;}img{max-width:100%;}a{text-decoration:none;}


/* Common styles of menus */
.dl-menuwrapper{width:300px;position:fixed;top:2em;right:1em;-webkit-perspective:1000px;perspective:1000px;-webkit-perspective-origin:50% 200%;perspective-origin:50% 200%;z-index:3000;text-align:left;}
.dl-menuwrapper button{background:#e94e1b;border:1px solid #fff;;border-radius:0.15em;margin:0 auto;width:45px;height:45px;position:absolute;top:0;right:0;cursor:pointer;outline:none;color:#fff;font-size:1.25em;}
.dl-menuwrapper button:hover, .dl-menuwrapper button.dl-active{background:#383837;}
.dl-menuwrapper button:after {content: '';position:absolute;width:32px;height:2px;background:#fff;top:12px;left:6px;box-shadow: 0 10px 0 #fff, 0 20px 0 #fff;}
.dl-menuwrapper ul {background:#383837;padding:0;list-style:none;-webkit-transform-style:preserve-3d;transform-style:preserve-3d;width:100%;position:absolute;top:0;}
.dl-menuwrapper li {position:relative;display:block;}
.dl-menuwrapper li a {display:block;position:relative;padding:15px 15px;font-size:1em;color:#fff;outline:none;border-bottom:1px solid #e94e1b;text-transform:uppercase;}
.no-touch .dl-menuwrapper li a:hover {background:rgba(233,78,27,0.3);}
.dl-menuwrapper li.dl-back > a {padding-left:30px;background:rgba(0,0,0,0.1);}
.dl-menuwrapper li.dl-back:after, .dl-menuwrapper li > a:not(:only-child):after {position:absolute;top:0;line-height:50px;font-family: 'Font Awesome 5 Free';speak:none;-webkit-font-smoothing:antialiased;content:"\e000";}
.dl-menuwrapper li.dl-back:after {left:10px;color:rgba(255,255,255,0.9);-webkit-transform:rotate(180deg);transform:rotate(180deg);}
.dl-menuwrapper li > a:after {right:10px;color:rgba(255,255,255,0.6);}
.dl-menuwrapper .dl-menu {margin:5px 0 0 0;position:absolute;top:2.25em;width:100%;opacity:0;pointer-events:none;-webkit-transform:translateY(10px);transform:translateY(10px);-webkit-backface-visibility:hidden;backface-visibility:hidden;}
.dl-menuwrapper .dl-menu.dl-menu-toggle {transition:all 0.3s ease;}
.dl-menuwrapper .dl-menu.dl-menuopen {opacity:1;pointer-events:auto;-webkit-transform:translateY(0px);transform:translateY(0px);}
/* Hide the inner submenus */
.dl-menuwrapper li .dl-submenu {display:none;}
.dl-menu.dl-subview li, .dl-menu.dl-subview li.dl-subviewopen > a, .dl-menu.dl-subview li.dl-subview > a {display:none;}
.dl-menu.dl-subview li.dl-subview, .dl-menu.dl-subview li.dl-subview .dl-submenu, .dl-menu.dl-subview li.dl-subviewopen, .dl-menu.dl-subview li.dl-subviewopen > .dl-submenu, .dl-menu.dl-subview li.dl-subviewopen > .dl-submenu > li {display:block;}
/* Dynamically added submenu outside of the menu context */
.dl-menuwrapper > .dl-submenu {position:absolute;width:100%;top:0;left:0;margin:0;}
/* Animation classes for moving out and in */
.dl-menu.dl-animate-out-1 {-webkit-animation:MenuAnimOut1 0.4s;animation:MenuAnimOut1 0.4s;}
.dl-menu.dl-animate-out-2 {	-webkit-animation:MenuAnimOut2 0.3s ease-in-out;animation:MenuAnimOut2 0.3s ease-in-out;}
.dl-menu.dl-animate-out-3 {	-webkit-animation:MenuAnimOut3 0.4s ease;animation:MenuAnimOut3 0.4s ease;}
.dl-menu.dl-animate-out-4 {	-webkit-animation:MenuAnimOut4 0.4s ease;animation:MenuAnimOut4 0.4s ease;}
.dl-menu.dl-animate-out-5 {	-webkit-animation:MenuAnimOut5 0.4s ease;animation:MenuAnimOut5 0.4s ease;}
@-webkit-keyframes MenuAnimOut1{0%{}50%{-webkit-transform:translateZ(-250px) rotateY(30deg);}75%{-webkit-transform:translateZ(-372.5px) rotateY(15deg);opacity:.5;}100%{-webkit-transform:translateZ(-500px) rotateY(0deg);opacity:0;}}
@-webkit-keyframes MenuAnimOut2{0%{}100%{-webkit-transform:translateX(-100%);opacity:0;}}
@-webkit-keyframes MenuAnimOut3{0%{}100%{-webkit-transform:translateZ(300px);opacity:0;}}
@-webkit-keyframes MenuAnimOut4{0%{}100%{-webkit-transform:translateZ(-300px);opacity:0;}}
@-webkit-keyframes MenuAnimOut5{0%{}100%{-webkit-transform:translateY(40%);opacity:0;}}
@keyframes MenuAnimOut1{0%{}50%{-webkit-transform:translateZ(-250px) rotateY(30deg);transform:translateZ(-250px) rotateY(30deg);}75%{-webkit-transform:translateZ(-372.5px) rotateY(15deg);transform:translateZ(-372.5px) rotateY(15deg);opacity:.5;	}100%{-webkit-transform:translateZ(-500px) rotateY(0deg);transform:translateZ(-500px) rotateY(0deg);opacity:0;}}
@keyframes MenuAnimOut2{0%{}100%{-webkit-transform:translateX(-100%);transform:translateX(-100%);opacity:0;}}
@keyframes MenuAnimOut3{0%{}100%{-webkit-transform:translateZ(300px);transform:translateZ(300px);opacity:0;}}
@keyframes MenuAnimOut4{0%{}100%{-webkit-transform:translateZ(-300px);transform:translateZ(-300px);opacity:0;}}
@keyframes MenuAnimOut5{0%{}100%{-webkit-transform:translateY(40%);transform:translateY(40%);opacity:0;}}
.dl-menu.dl-animate-in-1{-webkit-animation:MenuAnimIn1 0.3s;animation:MenuAnimIn1 0.3s;}
.dl-menu.dl-animate-in-2{-webkit-animation:MenuAnimIn2 0.3s ease-in-out;animation:MenuAnimIn2 0.3s ease-in-out;}
.dl-menu.dl-animate-in-3{-webkit-animation:MenuAnimIn3 0.4s ease;	animation:MenuAnimIn3 0.4s ease;}
.dl-menu.dl-animate-in-4{-webkit-animation:MenuAnimIn4 0.4s ease;	animation:MenuAnimIn4 0.4s ease;}
.dl-menu.dl-animate-in-5{-webkit-animation:MenuAnimIn5 0.4s ease;	animation:MenuAnimIn5 0.4s ease;}
@-webkit-keyframes MenuAnimIn1{0%{-webkit-transform:translateZ(-500px) rotateY(0deg);opacity:0;}20%{-webkit-transform:translateZ(-250px) rotateY(30deg);opacity:0.5;}100%{-webkit-transform:translateZ(0px) rotateY(0deg);opacity:1;}}
@-webkit-keyframes MenuAnimIn2{0%{-webkit-transform:translateX(-100%);opacity:0;}100%{-webkit-transform:translateX(0px);opacity:1;}}
@-webkit-keyframes MenuAnimIn3{0%{-webkit-transform:translateZ(300px);opacity:0;}100%{-webkit-transform:translateZ(0px);opacity:1;}}
@-webkit-keyframes MenuAnimIn4{0%{-webkit-transform:translateZ(-300px);opacity:0;}100%{-webkit-transform:translateZ(0px);opacity:1;}}
@-webkit-keyframes MenuAnimIn5{0%{-webkit-transform:translateY(40%);opacity:0;}100%{-webkit-transform:translateY(0);opacity:1;}}
@keyframes MenuAnimIn1{0%{-webkit-transform:translateZ(-500px) rotateY(0deg);transform:translateZ(-500px) rotateY(0deg);opacity:0;}20%{-webkit-transform:translateZ(-250px) rotateY(30deg);transform:translateZ(-250px) rotateY(30deg);opacity:0.5;}100%{-webkit-transform:translateZ(0px) rotateY(0deg);transform:translateZ(0px) rotateY(0deg);opacity:1;}}
@keyframes MenuAnimIn2{0%{-webkit-transform:translateX(-100%);transform:translateX(-100%);opacity:0;}100%{-webkit-transform:translateX(0px);transform:translateX(0px);opacity:1;}}
@keyframes MenuAnimIn3{0%{-webkit-transform:translateZ(300px);transform:translateZ(300px);opacity:0;}100%{-webkit-transform:translateZ(0px);transform:translateZ(0px);opacity:1;	}}
@keyframes MenuAnimIn4{0%{-webkit-transform:translateZ(-300px);transform:translateZ(-300px);opacity:0;}100%{-webkit-transform:translateZ(0px);transform:translateZ(0px);opacity:1;}}
@keyframes MenuAnimIn5{0%{-webkit-transform:translateY(40%);transform:translateY(40%);opacity:0;}100%{-webkit-transform:translateY(0);transform:translateY(0);opacity:1;}}
.dl-menuwrapper > .dl-submenu.dl-animate-in-1{-webkit-animation:SubMenuAnimIn1 0.4s ease;animation:SubMenuAnimIn1 0.4s ease;}
.dl-menuwrapper > .dl-submenu.dl-animate-in-2{-webkit-animation:SubMenuAnimIn2 0.3s ease-in-out;animation:SubMenuAnimIn2 0.3s ease-in-out;}
.dl-menuwrapper > .dl-submenu.dl-animate-in-3{-webkit-animation:SubMenuAnimIn3 0.4s ease;animation:SubMenuAnimIn3 0.4s ease;}
.dl-menuwrapper > .dl-submenu.dl-animate-in-4{-webkit-animation:SubMenuAnimIn4 0.4s ease;animation:SubMenuAnimIn4 0.4s ease;}
.dl-menuwrapper > .dl-submenu.dl-animate-in-5{-webkit-animation:SubMenuAnimIn5 0.4s ease;animation:SubMenuAnimIn5 0.4s ease;}
@-webkit-keyframes SubMenuAnimIn1{0%{-webkit-transform:translateX(50%);opacity:0;}100%{-webkit-transform:translateX(0px);opacity:1;}}
@-webkit-keyframes SubMenuAnimIn2{0%{-webkit-transform:translateX(100%);opacity:0;}100%{-webkit-transform:translateX(0px);opacity:1;}}
@-webkit-keyframes SubMenuAnimIn3{0%{-webkit-transform:translateZ(-300px);opacity:0;}100%{-webkit-transform:translateZ(0px);opacity:1;}}
@-webkit-keyframes SubMenuAnimIn4{0%{-webkit-transform:translateZ(300px);opacity:0;}100%{-webkit-transform:translateZ(0px);opacity:1;}}
@-webkit-keyframes SubMenuAnimIn5{0%{-webkit-transform:translateZ(-200px);opacity:0;}100%{-webkit-transform:translateZ(0);opacity:1;}}
@keyframes SubMenuAnimIn1{0%{-webkit-transform:translateX(50%);transform:translateX(50%);opacity:0;}100%{-webkit-transform:translateX(0px);transform:translateX(0px);opacity:1;}}
@keyframes SubMenuAnimIn2{0%{-webkit-transform:translateX(100%);transform:translateX(100%);opacity:0;}100%{-webkit-transform:translateX(0px);transform:translateX(0px);opacity:1;}}
@keyframes SubMenuAnimIn3{0%{-webkit-transform:translateZ(-300px);transform:translateZ(-300px);opacity:0;}100%{-webkit-transform:translateZ(0px);transform:translateZ(0px);opacity:1;}}
@keyframes SubMenuAnimIn4{0%{-webkit-transform:translateZ(300px);transform:translateZ(300px);opacity:0;}100%{-webkit-transform:translateZ(0px);transform:translateZ(0px);opacity:1;}}
@keyframes SubMenuAnimIn5{0%{-webkit-transform:translateZ(-200px);transform:translateZ(-200px);opacity:0;}100%{-webkit-transform:translateZ(0);transform:translateZ(0);opacity:1;}}
.dl-menuwrapper > .dl-submenu.dl-animate-out-1{-webkit-animation:SubMenuAnimOut1 0.4s ease;animation:SubMenuAnimOut1 0.4s ease;}
.dl-menuwrapper > .dl-submenu.dl-animate-out-2{-webkit-animation:SubMenuAnimOut2 0.3s ease-in-out;animation:SubMenuAnimOut2 0.3s ease-in-out;}
.dl-menuwrapper > .dl-submenu.dl-animate-out-3{-webkit-animation:SubMenuAnimOut3 0.4s ease;animation:SubMenuAnimOut3 0.4s ease;}
.dl-menuwrapper > .dl-submenu.dl-animate-out-4{-webkit-animation:SubMenuAnimOut4 0.4s ease;animation:SubMenuAnimOut4 0.4s ease;}
.dl-menuwrapper > .dl-submenu.dl-animate-out-5{-webkit-animation:SubMenuAnimOut5 0.4s ease;animation:SubMenuAnimOut5 0.4s ease;}
@-webkit-keyframes SubMenuAnimOut1{0%{-webkit-transform:translateX(0%);opacity:1;}100%{-webkit-transform:translateX(50%);opacity:0;}}
@-webkit-keyframes SubMenuAnimOut2{0%{-webkit-transform:translateX(0%);opacity:1;}100%{-webkit-transform:translateX(100%);opacity:0;}}
@-webkit-keyframes SubMenuAnimOut3{0%{-webkit-transform:translateZ(0px);opacity:1;}100%{-webkit-transform:translateZ(-300px);opacity:0;}}
@-webkit-keyframes SubMenuAnimOut4{0%{-webkit-transform:translateZ(0px);opacity:1;}100%{-webkit-transform:translateZ(300px);opacity:0;}}
@-webkit-keyframes SubMenuAnimOut5{0%{-webkit-transform:translateZ(0);opacity:1;}100%{-webkit-transform:translateZ(-200px);opacity:0;}}
@keyframes SubMenuAnimOut1{0%{-webkit-transform:translateX(0%);transform:translateX(0%);opacity:1;}100%{-webkit-transform:translateX(50%);transform:translateX(50%);opacity:0;}}
@keyframes SubMenuAnimOut2{0%{-webkit-transform:translateX(0%);transform:translateX(0%);opacity:1;}100%{-webkit-transform:translateX(100%);transform:translateX(100%);opacity:0;}}
@keyframes SubMenuAnimOut3{0%{-webkit-transform:translateZ(0px);transform:translateZ(0px);opacity:1;}100%{-webkit-transform:translateZ(-300px);transform:translateZ(-300px);opacity:0;}}
@keyframes SubMenuAnimOut4{0%{-webkit-transform:translateZ(0px);transform:translateZ(0px);opacity:1;}100%{-webkit-transform:translateZ(300px);transform:translateZ(300px);opacity:0;}}
@keyframes SubMenuAnimOut5{0%{-webkit-transform:translateZ(0);transform:translateZ(0);opacity:1;}100%{-webkit-transform:translateZ(-200px);transform:translateZ(-200px);opacity:0;}}
/* No JS Fallback */
.no-js .dl-menuwrapper .dl-menu{position:relative;opacity:1;-webkit-transform:none;	transform:none;}
.no-js .dl-menuwrapper li .dl-submenu{	display:block;}
.no-js .dl-menuwrapper li.dl-back{	display:none;}
.no-js .dl-menuwrapper li > a:not(:only-child){background:rgba(0,0,0,0.1);}
.no-js .dl-menuwrapper li > a:not(:only-child):after{content:'';}

.orange {
    color: #e94e1b;
}
a {
    transition: color 0.2s;
}
/* Mobile */


html{overflow-x: hidden;}
body {font-family: 'Dosis', sans-serif; color:#151514; overflow-x: hidden;}
.conteneur{width:90%; margin:0 auto;}
.conteneurlg{width:90%; margin:0 auto; text-align: center;}
h1 { font-size:1.6em;}
.demandetravaux h2 { font-size:1.45em;}
h2,h3 { font-size:1.3em;color:#e94e1b;text-transform:uppercase; margin:1em 0;}
h4 { font-size:1.1em;}
a:hover {color: #e94e1b;}
p{font-size:1em;line-height:1.1em;margin:1em 0;}
.menuprincipal{display:none;}
nav.info{display:none;}
header{background:url(/images/index/entrepreneur-construction-pont-beton.jpg) no-repeat top center;padding-top:2em;text-align:center;}
body.accueil header{ min-height:300px;}
header .logo{width:75%;display:block;}
header .logo img{width:100%;display:inline-block; vertical-align:middle;}
.logo .anni10{display:none;}
a.btnorange{background-color:#e94e1b;color:#fdfdfc;text-transform:uppercase;padding:5px 10px;;-webkit-transition:all 0.5s ease 0s;-o-transition:all 0.5s ease 0s;-moz-transition:all 0.5s ease 0s;transition:all 0.5s ease 0s;}
a.btnorange:hover{background-color:#fdfdfc;color:#e94e1b;}
header a{ color: white;}
header a.tellink{margin:1em .5em;display:inline-block;font-size:.9em;}
body.accueil main{margin-top:-180px;}
body.accueil h1{color:#fdfdfc;font-size:1.5em; text-align:center;text-transform:uppercase; margin-bottom:1.5em;}
body.accueil h1 span{color:#e94e1b;}
article.service{width:66%;max-width:455px;margin:1em auto;position:relative;text-align:center;}
article.service a{color:#151514;font-size:1.2em;padding:.5em 0;margin:0;text-transform:uppercase;}
article.service a:nth-child(2){ display: block;}
article.service p{font-size:.9em; margin:1em auto;}
article.service div{display:inline-block;position:relative;background:#e94e1b;border:8px solid #fff;}
article.service div img:not(.fleche) {opacity:1;-webkit-transition:.5s ease-in-out;transition:.5s ease-in-out;-ms-transition:.5s ease-in-out;-webkit-transform: translateZ(0);width: calc(100% + .49px);position:relative;}
article.service p{position:absolute;bottom:1em; left:0;right:0;margin-left:auto;margin-right:0; opacity:0;-webkit-transition:.5s ease-in-out;transition:.5s ease-in-out;-ms-transition:.5s ease-in-out;color:#fdfdfc;padding:0 1em;}
article.service p img.fleche{margin-bottom:.5em;max-width:67px;}
article.service p span{text-align:justify;font-size:1.2em;color:#fdfdfc;display:block;z-index:1000;position:relative;}
article.service:hover{cursor:pointer;}
article.service:hover img:not(.fleche){opacity:.4;}
article.service:hover a{color:#e94e1b;}
article.service:hover p{opacity:1;}
.pontstruture{background-position: top left; background-repeat: no-repeat;}



section.pontstruture{ padding:2em 0;position:relative;z-index:100;margin-top:2em;}
section.pontstruture div.bloctxt{max-width:850px;}
section.pontstruture h2{color:#fdfdfc;text-align:center; }
section.pontstruture p{color:#fdfdfc;text-align:justify;}
section.demandetravaux {margin:2em 0;}
section.demandetravaux div.conteneurlg{border:1px solid #e94e1b;background-color:#fff; text-align:center;}
section.demandetravaux h4{margin:-.6em auto 0 auto;background-color:#e94e1b;color:#fdfdfc;text-transform:uppercase;display:inline-block;padding:9px 80px;font-size:1.3em;}
section.demandetravaux div.teldem{display:block;margin:1em 0;}
section.demandetravaux div.teldem{display: flex; flex-direction: column; align-items: center;}
section.demandetravaux div.teldem p{ width: 54%;}
section.demandetravaux div.teldem a{color:#151514;font-size:1.2em;margin:.5em .5em;display:inline-block;}
section.demandetravaux article{width:90%;max-width:350px; text-align:justify; border-top:2px solid #e94e1b;padding:1em 0; margin:1em auto;}
section.demandetravaux h5{text-transform:uppercase;font-size:1.1em;text-align:center;margin:1em 0;}
section.demandetravaux h3{text-align:center;}
section.demandetravaux figure{text-align:center;margin:1.5em 0;}
section.demandetravaux figcaption{color:#e94e1b;text-transform:uppercase;margin-bottom:.5em;}
section.demandetravaux img:not(.partenairelogo){border:4px solid transparent;box-sizing:border-box; margin:9px 21px;}
section.demandetravaux a:hover img:not(.partenairelogo){border:4px solid #e94e1b;}
section.demandetravaux div.conteneur p{width:85%; text-align:center;margin:1em auto 2em auto;}
section.demandetravaux .conteneur:nth-last-child(1){ display: flex; align-items: center; justify-content: center; flex-wrap: wrap;}
img.partenairelogo{width:75%;max-width:347px;margin:.5em 0;}
footer{background-image:linear-gradient(#2f2f2f,#1a1a1a) ;padding-top:2.5em;
}
footer p{color:#fdfdfc;margin:0;text-transform:uppercase;font-size:.9em;line-height:1.2em;}
footer p.titre{margin-bottom:.5em;font-size:1.1em;}
footer td{color:#fdfdfc;text-transform:uppercase;font-size:.9em;padding-bottom:3px;}
footer td:nth-child(2){color:#fdfdfc;padding-left:15px;}
footer aside{margin:1em 0;}
footer a{color:#fdfdfc;}
footer aside.plan{display:none;}
footer p.amf{text-transform:uppercase;margin-bottom:.5em;display:none;}
footer p.ymark{text-transform:uppercase;padding:3em 0;text-align:center;color:#fdfdfc;font-size:.8em;}

#contact-row-1, .page-404 {
    display: flex;
    padding-left: 4%;
 }


/* =============  TOUTES LES PAGES SERVICES  ========= */

.page-service .conteneur-texte-image h1 {
    margin-top: 20px;
    margin-bottom: 20px;
}

.conteneur-texte-image > div:nth-child(1) { padding-left: 4%;}

.page-service .gras {
    color: black; 
    font-size: 1.2em;
}

.pontstruture {
    background-image: linear-gradient(#e7501e,#853115);
}


.page-service .bloctxt h4 { text-align: left; color: white; font-weight: bold; margin: 15px 0;}

.page-service ul { grid-column-gap: 72px ;  text-align: left; color: white;}

.page-apropos ul{ color: black; line-height: 19px;}

.conteneur-grid { display: grid; grid-template-columns: 1fr;}
.conteneur-grid ul { width: 100%;}

.marge-li {
    margin-left: 38px;
}

.marge-li, .page-traitement li {
    margin-top: 8px;
}

.page-reparation li:not(.marge-li), .page-renforcement li:not(.marge-li), .page-genie li:not(.marge-li) {
    margin-top:21px;
}
.conteneur-texte-image .row-1 {display: flex;}

.conteneur-texte-image .row-2 {
    margin-top: 43px;
    margin-bottom: 31px;
}

/* =============  PAGE TRAITEMENT  ========= */

.page-traitement .ul-3 li:nth-child(3) {
    margin-top: 20px;
}
/* =============  PAGE GÉNIE  ========= */
.page-genie .bloctxt .marge-li:nth-child(2) {
    margin-top: 13px;
}
.page-genie .marge-li {
    margin-left: 65px;
}
/* =============  PAGE À PROPOS  ========= */
.page-apropos section.demandetravaux { background: unset;}

/* =============  PAGE CONTACT  ========= */
input, label,textarea {
    box-sizing: border-box;
}


 #contact-row-1 h1 {
   align-self: center;
   white-space: nowrap;
 }
#contact-row-1 img {
     margin-right: -67%;
     position: relative;
 }
 
#contact-row-2 #cordonnes {
     background-image: url(/images/fond.jpg);
     background-size: cover;
     padding: 2em 0;
     color: white;
 }
 
#contact-row-2 h2 {
     color: white;
 }
 
#contact-row-2 > #cordonnes > div {
     width: 90%;
     margin: 0 auto;
 }
 
#contact-row-2 #conteneur-icones {
     padding: 20px 0;
 }
 
#contact-row-2 #conteneur-icones > div {
     display: flex;
     align-items: center;
 }
 
#contact-row-2 #conteneur-icones > div a {
    margin: 1em 0;
     margin-left: 10px;
     font-size: 1em;
     color: #fdfdfc;
     
}
#contact-row-2 #conteneur-icones > div a:hover { color: #000;}

form {
    width: 90%;
    margin: 20px auto;
    display: flex;
    flex-direction: column;
}

form p { font-size: 1.2em; font-weight: bold;}

#tel-poste {
    display: flex;
}
input[name="name"] { display: none;}

form input[type="text"], form textarea { border: 1.9px solid #e02109; padding: 10px; width: 100%;}

label,.g-recaptcha{ margin: 7px 0;}

input[type="submit"] {
    width: 193px;
    background: #e53510;
    color: white;
    padding: 7px;
    font-size: 1em;
}


  
div#tel-poste{ justify-content: space-between;}
label[for="telephone"] {width: 60%;}
label[for="poste"] { width: 40%; margin-left: 18px;}


/*  Fichiers joint */

#attachments{
    width: 100%;
}

#attachments .action-files{
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: row;
}

#attachments #files-list{
    width: 100%;
    height: 100px;
    border: 1px solid black;
}

#attachments label.button{
    position: relative;
    width: 50px;
    height: 40px;
    margin-right: 15px;
    background-color: var(--main-blue);
    border-radius: 10px;
    cursor: pointer; 
    font-size: 1.5em;
    border: none;
    transition: all ease 0.25s;
}

#attachments label.button > div{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    cursor: pointer;
    background-color: #e53510;
    color: white;
}

#attachments label.button > input{
    width: 0 !important;
    height: 0 !important;
    opacity: 0;
    cursor: pointer;
    position: absolute;
    top: 0;
    left: 0;
}

#attachments label.button:hover{
    filter: brightness(85%);
}


#files-list{
    position: relative;
    color: #b5b5b0;
    width: 100%;
    margin: 5px 0;
    overflow-y: auto;
}

#files-list div{
    margin: 5px 0;
    background-color: var(--main-blue);
    cursor: pointer;
    color: black;
}

#files-list p {
    margin: 5px 9px;
}

.fileSize{
    position: relative;
    font-weight: bold;
    font-size: 0.9em;
    text-transform: lowercase;
    padding-left: 25px;
}

#files-list div:hover{
    filter: brightness(85%);
}

.active-filename{
    filter: brightness(75%) !important;
    color: white !important;
    border: 1px solid black;
}

#addFiles{
    position: relative;
    user-select: none;
    display: block;
}

#removeFiles{
    user-select: none;
    display: block;

}

label#joindre-images{
    width: 100%;
    height: 90%;
    position: absolute;
    left: 0;
    top: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: white;
    text-transform: uppercase;
    color: #b5b5b0;
    cursor: pointer;
}

#sizeMessage{
    color: red;
}

/* =============  PAGE POLITIQUE  ========= */

.page-politique{ margin-top: 20px; padding-right: 4%; }

.page-politique .conteneur-texte-image > div:nth-child(1) { width: unset;}
.page-politique .conteneur-texte-image {padding: 24px 0;}
.page-politique h2{ margin-bottom: 10px;}
.page-politique p{ font-size: 1.1em;}

/* ============= PAGE 404  =============== */
.page-404 { padding-top: 80px; padding-bottom: 80px;}

/* =============  MEDIA 496px  ========= */

@media only screen and (min-width: 496px) {
header .logo img{width:75%;}
.logo .anni10{max-width:105px;width:calc(25% - 1em);margin-left:1em;display:inline-block;}
header a.tellink{font-size:1.1em;}
}



/* =============  MEDIA 768px  ========= */

@media only screen and (min-width: 768px) {
.dl-menuwrapper{display:none;}
header .logo {text-align:left;width:45%;display:inline-block;margin-top:1em;}
header .logo img{width:74%;display:inline-block;}
body.accueil header{ min-height:400px;}
.logo .anni10{width:calc(25% - 1em);}
div.infodroite{display:inline-block;width:53%;text-align:right;}
nav.info{display:block;margin-top:1em;}
nav.info ul{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;}
nav.info ul li {padding:0 .5em;line-height:1.1em;}
nav.info ul li a{color:#fdfdfc;text-transform:uppercase;font-size:.9em;}
nav.info ul li a:hover{color:#e94e1b;}
nav.info ul li a i{font-size:.9em;padding-top:2px;}
nav.info ul li a.btnorange{display:inline-block;margin:.5em 0;}
header a.tellink{margin:.5em .5em 0 .5em;}
nav.menuprincipal{display:block;background-color:rgba(30,30,30,.7);margin-top:1.5em;}
nav.menuprincipal ul{display:flex;justify-content:space-between;}
nav.menuprincipal ul li a{color:#fdfdfc;padding:15px 10px;display:block;text-transform:uppercase;border-bottom:2px solid transparent;}
nav.menuprincipal ul li a:hover{background-image:url(../images/bg-menu-hover.jpg);border-bottom:2px solid #e94e1b;}
body.accueil h1{font-size:1.8em;line-height:1.1em;}
h1 { font-size:1.8em;}
.demandetravaux h2 { font-size:1.65em;}
h2 { font-size:1.5em;}
h4 { font-size:1.2em;}
p{font-size:1em;line-height:1.1em;}
article.service {display:inline-block;width:32%;margin:1em .2em;}
article.service div img{height: unset;}
section.demandetravaux article{display:inline-block;width:calc(33% - 1em);margin:0 .5em;}
section.demandetravaux figure{display:inline-block;width:49.5%;}
section.demandetravaux figcaption{height:30px;}
footer aside{display:inline-block;width:45%;}
footer a.logo{display:inline-block;width:45%;}

/* ========= TOUTES LES PAGES SERVICES  ========= */
.page-service .gras{ font-size: 1.7em;}


.conteneur-texte-image .row-1 img { margin-right: -67%; position: relative;}

.conteneur-texte-image .row-2 ul{ color: black;}


.conteneur-grid {grid-template-columns: 1fr 1fr;}
/* =============  PAGE À PROPOS  ========= */

.page-apropos section.demandetravaux article{
    width: calc(56% - 6em);
    max-width: unset;
}
.page-apropos .demandetravaux article:last-child {
    width: 60%;
    margin: auto;
    display: block;
    margin-top: 1em;
}

/* =============  PAGE CONTACT  ========= */
#contact-row-1 {
    padding-top: 20px;
    padding-bottom: 20px;
}
#contact-row-1 h1 {
    width: 100%;
}
#contact-row-1 img {
    margin-right: -32%;
}
label[for="telephone"] {width: 80%;}
label[for="poste"] { width: 20%; margin-left: 18px;}


}


/* =============  MEDIA 1024px  ========= */
@media only screen and (min-width: 1024px) {

header a.tellink{margin-top:1em;}
nav.menuprincipal{margin-top:2em;}
body.accueil header{ min-height:500px;}
body.accueil h1{font-size:3em;line-height:1.1em;}
body.accueil main{margin-top:-240px;}
article.service{width:calc(20.5% - 1em);}
h1 { font-size:2.8em;}
.demandetravaux h2 { font-size:2.5em;}
h2 { font-size:2.3em;}
h4 { font-size:1.8em;}
article.service p{font-size:.7em;}
article.service p img.fleche{width:25%;}
section.pontstruture{margin:3em 0 0 0;background-position:top center;height:calc(600px - 4em);padding-top:4em;}
section.demandetravaux h2,section.demandetravaux h3 {font-size: 1.5em;}
section.pontstruture div.bloctxt{width:55%;}
section.pontstruture h2{text-align:left; max-width: 736px;}
section.demandetravaux {
    margin-top:-10em;
    background: url("/images/index/bg-demande-travaux.jpg") top right -30em no-repeat;padding-top:15em;

}
section.demandetravaux figcaption{font-size:1.3em;height:auto;}
footer{background-position:top right -30em;}
footer aside.plan{display:inline-block;}
footer aside{width:28%;margin-bottom:7em;}
footer p.amf{display:inline-block;width:14%;margin:1em 0 0 auto;}
footer ul li {text-transform:uppercase;padding:0 0 .5em 0;font-size:.9em;}
footer ul li a:hover{color:#e94e1b !important;}

.accueil .pontstruture{background-image:url("/images/index/bg-pont-structure.png");}
.page-reparation .pontstruture{
    background-image: url(/images/reparation-beton-structural/beton-structure-1.jpg); 
    background-position: -279px -281px; 
}
.page-renforcement .pontstruture {
    background-image:  url(/images/renforcement-beton-structural/renforcement-beton.jpg);
    background-position: -279px -281px; 
    background-position: center;
}
.page-renforcement .conteneur-grid {
    grid-column-gap: 10px;
}
.page-traitement .pontstruture {
    background-image:  url(/images/traitement-surface-beton/resurfacage-beton.jpg);
    background-position: -259px -162px;
    background-position: center left;
}

.page-genie .pontstruture {
    background-image:  url(/images/genie-civil-beton/travaux-genie-civil.jpg);
    background-position: -279px -281px; 
    background-position: top;
}
.page-reparation .pontstruture {
    background-position: top;
}

.page-traitement section.pontstruture div.bloctxt { width: 100%;}
.page-traitement .conteneur-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
}

.page-genie .bloctxt .marge-li:nth-child(2) {
    margin-top: 27px;
}
.page-genie section.pontstruture div.bloctxt {
    width: unset;
}
.conteneur-texte-image { display: flex; align-items: center;}
.bloctxt h4 { font-size: 1.2em;}
.conteneur-texte-image > div { width: 78%; }
.conteneur-texte-image .row-2 { margin-right: 73px;}
.conteneur-texte-image .row-1{ flex-direction: column;}
.conteneur-texte-image .row-1 img{ right: -127px; margin-top:26px;}
.page-reparation .pontstruture .conteneurlg { margin-top: 207px;}
.page-renforcement .pontstruture .conteneurlg {margin-top: 68px;}
.page-traitement .pontstruture .conteneurlg {margin-top: 68px;}
.page-genie .pontstruture .conteneurlg {margin-top: 207px;}
.conteneur-3-images {margin: 114px auto;}
.conteneur-3-images p{ font-size: 1.3em;}


.page-genie section.pontstruture div.bloctxt {
    max-width: 72%;
}

.page-apropos .conteneur-texte-image{
    margin: 54px 0;
}

/* ========= PAGE CONTACT  ========= */
#contact-row-1 {
    padding-left: 13%;
}


#contact-row-2 { display: flex; padding-bottom: 80px;}
#contact-row-2 #cordonnes{ padding: 5em 13%;}

#contact-row-2 #cordonnes span {font-size: 1.5em; margin-top: 21px; display: inline-block;}

form{ 
    width: unset;
    margin: unset;
    flex: 1;
    margin-left: 50px;
    padding-right: 7%;
}

footer{background: url(/images/bg-footer.jpg) top center no-repeat;padding-top:2.5em;
}



}


@media only screen and (min-width: 1376px) {
.conteneur{width:1200px;}
.conteneurlg{width:1300px;}
article.service{width:calc(20% - 1.75em); margin:0 .75em;}
article.service p{font-size:.9em;}
article.service p img.fleche{width:50%;margin-bottom:1em;}
section.demandetravaux div.teldem a{font-size:2em;margin:.5em .5em;}
section.demandetravaux div.conteneur p{width:75%;}
section.demandetravaux article{margin:1em 3em;width:calc(33% - 6em);}
footer{background-position:top right -15em;}
footer aside{width:24%;margin-top:3em;margin-bottom:4em;}
footer p.amf{display:inline-block;width:20%;margin:1em 0 0 3em;}

/* =============  PAGE À PROPOS  ========= */

.page-apropos section.demandetravaux article{
    width: calc(47% - 6em);
}
/* =============  PAGE SERVICES  ========= */
.conteneur-texte-image h1{
    margin-left: 121px;
    font-size: 3.7em;
}
.conteneur-texte-image .row-2 {
    margin-left: 121px;
}
.conteneur-3-images p{
    color: black;
}
.page-politique .conteneur-texte-image {padding: 70px 0;}

}
@media only screen and (min-width: 1632px) {
.dl-menuwrapper{display:none;}
.conteneur{width:1395px; margin:0 auto;}
.conteneurlg{width:1575px; margin:0 auto;}
body.accueil h1{font-size:57px;line-height:1.1em;}
header a.tellink{font-size:1.3em;}
h1 { font-size:2.8em;}
.demandetravaux h2 { font-size:2.5em;}
h2 { font-size:3.3em;}
h4 { font-size:2.3em;}
nav.menuprincipal{margin-top:3em;}
nav.menuprincipal ul li a{font-size:1.3em;padding:20px 20px;}
body.accueil header{ min-height:900px;}
body.accueil h1{font-size:3.7em;margin-bottom:4em;line-height:1.2em;}
body.accueil h1 span{font-size:1.3em;}
body.accueil main{margin-top:-480px;}
article.service a{font-size:1.5em;height:44px;line-height:1.2em;}
article.service p{font-size:1em;}

section.pontstruture{margin:6em 0 0 0;height:calc(640px - 4em);padding-top:4em;}
section.pontstruture div.bloctxt{width:45%;}
section.demandetravaux {margin-top:-10em;background-position:top right;padding-top:15em;}
section.demandetravaux h4{font-size:1.4em;}
section.demandetravaux h5{font-size:1.4em;}
section.demandetravaux figcaption{font-size:1.4em;}
footer{background-position:top center;}
footer aside{margin-bottom:6em;width:27%;}
footer aside.plan{width:21%;}
footer p.amf{margin:1em 0 0 4em;}


/* =============  PAGE CONTACT  ========= */

#contact-row-, .page-404 { padding-left: 16%; padding-top: 80px; padding-bottom: 63px;}

#contact-row-1 h1, .page-404 h1 { font-size: 3.4em;}

#contact-row-1 img {
    width: 204%;
    margin-right: 0%;
    margin-right: -3%;
}
#contact-row-2 #cordonnes { padding: 5em 15%; }

#contact-row-2 h2 { font-size: 3.3em;}

form {
    padding-right: 13%;
    margin-left: 98px;
}
form input[type="text"], form textarea {
    padding: 20px;
}
/* =============  PAGE SERVICES  ========= */

.conteneur-texte-image {
    padding: 131px 0;
}
.conteneur-texte-image > div .conteneur-texte-image .row-1 { margin-bottom: 73px;}

.conteneur-3-images {margin: 114px auto;}

.page-reparation .pontstruture {
    height: calc(900px - 4em);
}
.page-renforcement .pontstruture {
    height: calc(900px - 4em);
}
.page-traitement .pontstruture .conteneurlg {
    margin-top:233px;
}
.page-traitement .conteneur-grid {
    grid-template-columns: 1fr 1fr 1fr;
}
.page-traitement .pontstruture {
    height: calc(900px - 4em);
}
.page-traitement section.pontstruture div.bloctxt {
    max-width: 69%;
}

.page-genie .pontstruture {
    height: calc(900px - 4em);
}

.page-genie section.pontstruture div.bloctxt {
    max-width: 59%;
}

.page-renforcement .pontstruture .conteneurlg {margin-top: 233px;}
.page-reparation section.pontstruture h3 {
    font-size: 3.7em;
    margin-bottom: 22px;
}
.page-renforcement section.pontstruture h3 {
    font-size: 3.7em;
}
.page-reparation section.pontstruture div.bloctxt {
    width: unset;
}
.page-renforcement section.pontstruture div.bloctxt {
    width: unset;
}
.page-genie section.pontstruture div.bloctxt {
    width: unset;
}

.page-reparation h3, .page-genie h3, .page-renforcement h3, .page-traitement h3 {
    margin-bottom: 18px;
}

.page-service ul{ font-size: 1.1em;}

.page-renforcement .conteneur-grid ul { width: 84%;}


.page-apropos .conteneur-texte-image{
    margin: 0 0;
}
/* =============  PAGE POLITIQUE  ========= */
.page-politique h2 { font-size: 2.0em;}

}