@charset "utf-8";
/* CSS Document */

/*-------------------------------------------------------------------
	Global
-------------------------------------------------------------------*/
*, *:before, *:after { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
body { background:#ffffff; font-family:'Roboto', sans-serif; font-weight:400; }
a { }
.clear { clear:both; }
.wrapper { clear:both; position:relative; z-index:2;  }
.wrapper .section, #footer .section, #copyright .section { width:100%; max-width:970px; margin:0 auto; }
.wrapper.grey { background:#282724; padding:52px 0; }
.wrapper.grey .section { overflow:hidden; }
.wrapper.has-dark-grey-bg  { overflow:hidden; }
.section:after { clear:both; }
.col95, .col90, .col80, .col70, .col60, .col50, .col40, .col30, .col20, .col10{ float: left; padding:0 2% 0 0; }
.col5 { float: left!important; padding:0 2% 0 0!important; }
.col95 { width: 95%!important; }
.col90 { width: 90%; }
.col80 { width: 80%; }
.col70 { width: 70%; }
.col60 { width: 60%; }
.col50 { width: 50%; }
.col40 { width: 40%; }
.col30 { width: 30%; }
.col33 { width: 33%; }
.col25 { width: 25%; }
.col20 { width: 20%; }
.col10 { width: 10%; }
.col5 { width: 5%!important; }
.column { zoom:1; /* For IE 6/7 (trigger hasLayout) */ }
.column:nth-child(2n) { padding:0 0 0 2%; float:right; }
.column:nth-child(2n+1) { clear:both; }
#preload { display:none; }
h1 { color:#ff0000; font-size:40px; text-transform:uppercase; font-weight:700; }
h1 span { font-weight:200; color:#FFF; }
h2 { color:#ff0000; margin:0; font-size:30px; text-transform:uppercase; font-weight:300; line-height:36px; padding:0 0 14px 0; }
h3 { color:#FFF; font-size: 20px; /*text-align: center;*/
    text-transform: uppercase; position: relative; z-index: 1; margin: 0 0 0 0;}

h3 sup { font-size:7px; position: relative; top: -6px;}
h4 { color:#ff0000; margin:0; font-size:20px; text-transform:uppercase; font-weight:700; line-height:22px; padding:5px 0 12px 0; }
p, .column ul { color:#FFF; font-size:14px; line-height:19px; margin:0 0 20px 0; }
.column ul li { background: url(../images/common/list-icon-white.png) no-repeat 0 6px;clear:both;padding: 0 0 8px 17px; }
p a { color:#ff0000; }
p em { font-style:italic; }
hr { height:1px; background:#282724; border:none; margin:0; padding:0; }
::selection { background:#cd2f36; color:#FFF; }
::-moz-selection { background:#ff0000; color:#FFF; }
.about img { width:100%; border:13px solid #FFF; }




/*-------------------------------------------------------------------
	Navigation
-------------------------------------------------------------------*/
.logo { display:block; width:261px; height:69px; background:url(../images/common/logo.png) no-repeat; float:left; margin:26px 0; }
#top .section { position:relative; }
.top { -webkit-box-shadow: 0px 10px 17px 0px rgba(0,0,0,0.3); -moz-box-shadow: 0px 10px 17px 0px rgba(0,0,0,0.3); box-shadow: 0px 10px 17px 0px rgba(0,0,0,0.3); position:relative; z-index:2; background:#1c1b19; }
#top .nav { float:right; margin:50px 0 0 0; position:relative; z-index:2; }
#top .nav a { font-size:18px; color:#FFF; text-transform:uppercase; font-family:'Roboto Condensed', sans-serif; padding:0 0 20px 0; }
#top .nav li:first-child a { margin:0; }
#top .nav ul li ul li a, .nav ul li ul li:first-child a { margin:0 0 0 0; }
#top .nav ul li ul li a span { font-family: FontAwesome; padding:0 4px 0 0; }
#top .nav ul li { float:left; position:relative; padding:0 14px; }
#top .nav ul li ul { position:absolute; border:1px solid #292825; -webkit-box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.2);
-moz-box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.2); box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.2); width:173px; left:0; margin:-1px 0 0 -34px; top:35px; }
#top .nav ul li ul li { float:none; background:#343330; margin:0 0 0 0;  }
#top .nav ul li ul li a { font-size:12px; text-transform:uppercase; display:block; padding:8px 10px;  }
#top .nav ul li:hover ul li a { border:none;color:#FFF; }

#top .nav ul li:hover a,  #top .nav ul li:hover ul li a.selected { color:#ff0000;}
#top .nav ul li ul li a:hover,.nav ul li ul li.selected a, #top .nav a.selected { color:#ff0000; border:none;  }
#top .nav ul li ul li a.sgreen:hover, .nav ul li ul li.selected a.sgreen, #top .nav a.sgreen.selected {color:#33cc00 !important; }

#top .nav .arrow {  background:url(../images/common/nav-arrow-grey.png); width:16px; height:13px; position:absolute; left:50%; margin:-11px 0 0 -8px; }
#top .nav .sect { background:#343330; color:#ff0000; font-weight:700; font-size:14px; text-transform:uppercase; padding:8px 10px; cursor:default; }
#top .nav .sect.green { color:#33cc00; }
#top .nav ul li.sep { width:1px; height:20px; background:#ff0000; padding:0; margin:0 14px; }
#top .nav ul li:last-child { padding-right:0; }
#top .nav ul li ul li, #top .nav ul li ul li:last-child { border:none; padding: 0; }
#top .nav .hr { padding:0;}
#top .nav .hr hr {  background:#292825;  }
#top .nav .fa-angle-right { background:url(../images/common/list-icon-right-white.png); display:block; float:left; width:4px; height:8px; position:relative; top:2px; margin:0 4px 0 0; }

.disabled {
  opacity: 0.65; 
  cursor: not-allowed!important;
}

/*-------------------------------------------------------------------
	Sub Navigation
-------------------------------------------------------------------*/
.subNav { background:#1c1b19; -webkit-border-radius:8px; -moz-border-radius:8px; border-radius:8px; margin:0 0 13px 0; }
.subNav h3 { font-size:14px; color:#ff0000; font-weight:700; font-family:'Roboto Condensed', sans-serif; text-transform:uppercase; padding:9px; }
.subNav a { color:#FFF; font-family:'Roboto Condensed', sans-serif; text-transform:uppercase; font-size:14px; display:block; padding:10px 25px; -webkit-transition:all .3s ease; -moz-transition:all .3s ease; -o-transition:all .3s ease; transition:all .3s ease; }
.subNav a:last-child {-webkit-border-bottom-right-radius: 8px; -webkit-border-bottom-left-radius: 8px; -moz-border-radius-bottomright: 8px; -moz-border-radius-bottomleft: 8px; border-bottom-right-radius: 8px; border-bottom-left-radius: 8px; }
.subNav a:hover, .subNav .selected { background:#ff0000; color:#ffffff; }
.subNav.green a:hover, .subNav.green .selected { background:#33cc00; color:#ffffff; }
.subNav a .fa { margin:0 27px 0 0; }
.fa-angle-left { background:url(../images/common/list-icon-left-over.png); width:7px; height:11px; display:block; float:left; position:relative; top:1px; }
.subNav a:hover .fa-angle-left, .subNav a.selected .fa-angle-left { background:url(../images/common/list-icon-left-over.png); }

.subNavLink { background: #1c1b19; display: block; width: 130px; float: right; margin-bottom:20px; }
.subNavLink a { color:#FFF; font-family:'Roboto Condensed', sans-serif; text-transform:uppercase; font-size:14px; display:block; padding: 10px 12px; -webkit-transition:all .3s ease; -moz-transition:all .3s ease; -o-transition:all .3s ease; transition:all .3s ease; }
.fa-angle-right { background:url(../images/common/list-icon-white.png); width: 5px; height: 8px; display: block; float: right; position: relative; top: 2px; }
.subNavLink a:hover { background:#ff0000; color:#ffffff; }

.custom-zone {
  display: flex;
  align-items: center;
  text-decoration: none;
  border: none;
  background: none;
  padding: 16px 18px;
  background-color: #1C1B19; /* Noir */
  border-radius: 10px; /* Coins arrondis */
  transition: background-color 0.3s, transform 0.3s;

}

.custom-button {
  display: flex;
  align-items: center;
  text-decoration: none;
  border: none;
  background: none;
  cursor: pointer;
  padding: 16px 18px;
  background-color: #1C1B19; /* Noir */
  border-radius: 10px; /* Coins arrondis */
  transition: background-color 0.3s, transform 0.3s;

}

.custom-button:hover {
  background-color: #343330; /* Gris foncé */
 /* transform: scale(1.05);  Agrandir légèrement */
}

.icon-container {
  background-color: #67542F; /* Brun */
  border-radius: 4px; /* Coins arrondis */
  display: flex;
  justify-content: center;
  align-items: center;
  width: 57px;
  height: 57px;
  margin-right: 8px;
  padding: 10px;
  transition: background-color 0.3s;
    
  
   
    flex-shrink: 0; /* Empêche l'icône de rétrécir */
}

.custom-button:hover .icon-container {
  background-color: #ff0000; /* Brun plus clair */
}

.icon-cloche {
  width: 37px;
  height: 37px;
}

.text-container {
color: #fff; /* Blanc */
padding: 10px 16px;
font-size: 18px;
line-height: 22px;
transition: color 0.3s;
text-transform: uppercase;
font-weight: 500;
}


.custom-button:hover .text-container {
  color: #ddd; /* Gris clair */
}

.title-light {
    font-size: 34px;
    font-weight: 300;  
}

.buttons {
    display: flex;
    gap: 10px;
}

.custom-zone-big {
    display: flex;
    align-items: center;
    background-color: #1C1B19; /* Noir */
    padding: 16px 18px;
    border-radius: 10px; /* Coins arrondis */
    transition: background-color 0.3s, transform 0.3s;
}

.content-container {
    display: flex;
    align-items: center;
    justify-content: space-between; /* Sépare l'icône et le contenu de droite */
    width: 100%; /* S'étend sur toute la zone */
}

.icon-container {
    display: flex;
    justify-content: center;
    align-items: center;
  
   
    flex-shrink: 0; /* Empêche l'icône de rétrécir */
}


.right-container {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    flex-grow: 1; /* Permet à cette section de prendre le reste de l'espace */
}



.buttons-container {
    display: flex;
    gap: 10px;
    justify-content: flex-start; /* Aligne les boutons à gauche de la section droite */
    padding: 0 5px;
}

.btn {
    display: inline-flex;
    align-items: center;
    background-color: transparent;
    border: none;
    color: #6D6A60;

    cursor: pointer;
    padding: 5px 10px;
    font-family: Arial, sans-serif;
    transition: color 0.3s;
    font-size:14px;
}

.btn:hover {
    color: #ff0000;
}

.icon-fleche {
    width: 16px;
    height: 12px;
    margin-left: 5px;
      transition: transform 0.3s ease; /* Ajoute une transition fluide */
}

.btn:hover .icon-fleche {
    transform: translateX(5px); /* Déplace la flèche de 5px vers la droite */
}

/*-------------------------------------------------------------------
	Others
-------------------------------------------------------------------*/
.bt { color:#FFF; font-size:14px; font-family:'Roboto Condensed', sans-serif; width:100%; display:block; background:#1c1b19; font-weight:700; text-transform:uppercase; -webkit-border-radius:8px; -moz-border-radius:8px; border-radius:8px; padding:10px; -webkit-transition:all .3s ease; -moz-transition:all .3s ease; -o-transition:all .3s ease; transition:all .3s ease; margin:0 0 13px 0; }
.bt:hover, .bt.selected { background:#343330; }
.bt .ico { width:40px; height:40px; display:inline-block; margin:0 10px 0 0; -webkit-border-radius:4px; -moz-border-radius:4px; border-radius:4px; }
.bt .title { position:relative; top:-13px; }
.bt.soumission .ico { background:url(../images/common/ico-soumission.png) no-repeat center #42413c; background-size:50%; }
.bt.equipement .ico { background:url(../images/common/ico-equipement.png) no-repeat center #8e8d8a; background-size:50%; }
.bt.mobile .ico { background:url(../images/common/ico-phone.png) no-repeat center #42413c; background-size:50%; }

.bt.appel .ico { background:url(../images/common/ico-appel.png) no-repeat center #8e8d8a; background-size:50%; }
.bt.video .ico { background:url(../images/common/ico-video.png) no-repeat center #ff0000; background-size:50%; }
.bt.nouvelles .ico { background:url(../images/common/ico-news.png) no-repeat center #42413c; background-size:50%; }
.deneigement .ico { background:url(../images/common/ico-deneigement.png) no-repeat center #ff0000; background-size:50%; width:40px; height:40px; display:inline-block; margin:0 10px 10px 0; -webkit-border-radius:4px; -moz-border-radius:4px; border-radius:4px; float:left; }
.entretien .ico { background:url(../images/common/ico-entretien.png) no-repeat center #33cc00; background-size:50%; width:40px; height:40px; display:inline-block; margin:0 10px 10px 0; -webkit-border-radius:4px; -moz-border-radius:4px; border-radius:4px; float:left; }
.deneigement .title, .entretien .title { position:relative; top:14px; }
.mainTitle { background:#ffffff; overflow:hidden; }
.width-100 { width: 100%;}

.inline-block { display: inline-block; }
.number { list-style-type: decimal; color: #FFF; font-size: 14px; line-height: 19px; margin: 0 0 20px 1rem; }
.number li { margin-bottom: 1rem; }
.width-200 { width: 200px;}
.width-485 {    max-width: 485px!important;}
.auto { width: auto; }
.margin-0 { margin: 0;}
.hide-section { display: none; }
.mt075 { margin-top: 0.75rem; }
.mb1-5 { margin-bottom: 1.5rem; }
.mb1 { margin-bottom: 1rem!important; }
.mb015 { margin-bottom: 0.15rem}
.ml1 { margin-left: 1rem!important; }
.mt1 { margin-top: 1rem!important; }
.pb0 { padding-bottom: 0; }
.pt0 { padding-top:0!important; }
.top-9 { top:-9px!important; }
.height-61 { height:61px!important; }
.image { display: block; width: 30%; float: left; }
.image-margin {     margin: 0 28px 28px 28px; }
.slide-accueil { background: #000!important; height: 500px!important; }
.slidePicture-accueil {    margin: 120px auto 96px auto!important; float: none!important;}
.title-accueil { text-align: center; display: block; margin-top: 2rem; color:#ffffff; font-weight: 300; font-size: 30px;     line-height: 30px;} 
.h2-accueil { color: #ffffff; font-weight: 600; font-size: 40px; text-align: center;}
.h3-accueil { text-align: center;color: #33cc00; font-size: 40px; line-height: 46px; }
.h3-accueil span{ color: #ffffff; font-size: 40px; font-weight: 200; display: block; }
.h4-accueil { color: #ffffff; font-size: 30px; margin: 0 0 8px 0; }
.red { color: #ff0000;  }
.texte-accueil { text-align: center; color: #000000; font-size: 30px!important; font-weight: 300; line-height: 30px;     margin: 0 1rem 20px 1rem;}
.texte-accueil span{ display: block; margin: 32px 0 50px 0; font-size: 20px; font-weight: 600;}
.zoneform-accueil { background: #000;-webkit-border-radius: 8px; -moz-border-radius: 8px; border-radius: 8px; overflow: auto; padding: 35px; margin: 1rem;}
.grey-acceuil {   padding: 20px 0 40px 0!important;}
.icon-acceuil {font-family: 'Roboto Condensed', sans-serif; display: block; -webkit-border-radius: 8px; -moz-border-radius: 8px; border-radius: 8px; margin: 13px 0; padding: 13px 0; text-align: center; font-size: 16px; color: #FFF; text-transform: uppercase; -webkit-transition: all .3s ease; -moz-transition: all .3s ease; -o-transition: all .3s ease; transition: all .3s ease; }
.icon-acceuil.deneigement .icos { background: url(../images/common/ico-deneigement.png) no-repeat center #ff0000; }
.icon-acceuil.entretien .icos { background: url(../images/common/ico-entretien.png) no-repeat center #33cc00; }
.icon-acceuil .icos { display: block; width: 60px; height: 60px; background: #8e8d8a; margin: 0 auto 13px auto; -webkit-border-radius: 8px; -moz-border-radius: 8px; border-radius: 8px; }
.texte-zone-accueil { font-size: 20px; line-height: 26px; color: #000000;}
.texte-zone-accueil span { display:block; margin-bottom: 8px; }
.zip-field-accueil { width: 200px; text-align: center; font-size: 20px; text-transform: uppercase; color: #ffffff; padding: 10px; margin-bottom: 18px;}
.bt-acceuil { background: #fff; border: none; width: 200px; padding: 12px; text-transform: uppercase; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; }
.bt-acceuil:hover { background: #42413c; color: #fff;  }

.zip-field-accueil::placeholder { color: #ffffff; opacity: 1; /* Firefox */ }
.form-accueil { margin: 0 auto; background: none; width: 235px; display: block; }
.margin-top-50 { margin-top: 50px!important; }
.non-desservi{ color: #fe2222; text-align: center; font-size: 20px; text-transform: uppercase; margin-top: 50px;margin-bottom: 30px; line-height: 30px; }
.desservi{ color: #33cc00; text-align: center; font-size: 20px; text-transform: uppercase; }
.desservi-text{ color: #000000; text-align: center; font-size: 14px; }
.overflowvisible { overflow: visible!important; }
form#form.form-accueil label.error { margin: -10px 0 14px 0; }
.bt-retour { margin: 0 auto; display: block; text-align: center; color:#282724;}
.video-carriere { position: relative; height: 430px; }
.prix-soumission { background-color: #1c1b19;  -webkit-border-radius: 8px; -moz-border-radius: 8px;
    border-radius: 8px;margin-bottom:1rem;}
.prix-soumission strong{ font-size: 1.25rem;}
.prix-soumission div { color: #fff; padding:8px 8px; }
.big-price {font-size: 1.25rem;}
.prix-soumission div span{ font-size: 0.75rem; }
.prix-soumission div { color:#147dd7; }
/*.bg-color { background-color: #1c1b19; height: 40px; }*/
/*-------------------------------------------------------------------
	Home
-------------------------------------------------------------------*/
.icon { width:20%; font-family:'Roboto Condensed', sans-serif; display:block; -webkit-border-radius:8px; -moz-border-radius:8px; border-radius:8px; float:left; margin:13px 0; padding:13px 0; text-align:center; font-size:16px; color:#FFF; text-transform:uppercase; -webkit-transition:all .3s ease; -moz-transition:all .3s ease; -o-transition:all .3s ease; transition:all .3s ease; }
.icon:hover { background:#343330; }
.icon .icos { display:block; width:78px; height:78px; background:#8e8d8a; margin:0 auto 13px auto; -webkit-border-radius:8px; -moz-border-radius:8px; border-radius:8px; }
.icon.deneigement .icos { background:url(../images/common/ico-deneigement.png) no-repeat center #ff0000; }
.icon.entretien .icos { background:url(../images/common/ico-entretien.png) no-repeat center #33cc00; }
.icon.soumission .icos { background:url(../images/common/ico-soumission.png) no-repeat center #42413c; }
.icon.appel .icos {background: url(../images/common/ico-appel.png) no-repeat center #037edc; }
.icon.phone .icos { background:url(../images/common/ico-phone.png) no-repeat center #ff0000; }
.icon.equipment .icos { background:url(../images/common/ico-equipement.png) no-repeat center #8e8d8a; }
.program, .app { -webkit-border-radius: 8px; -moz-border-radius: 8px; border-radius: 8px; background:#1c1b19; overflow:hidden; display:block; margin: 0 0 20px 0; line-height: 16px; }
.program .ico { background:url(../images/common/ico-dollar.png) no-repeat center #ff0000; display:block; height:104px; width:100%; }
.program .icod { background:url(../images/common/ico-deneigement-circle.png) no-repeat center; display:block; height:104px; width:100%; }
.program .icop { background:url(../images/common/ico-entretien-circle.png) no-repeat center; display:block; height:104px; width:100%; }
.program .bgSnow { background:url(../images/common/bg-snow.png) no-repeat center; display:block; width:100%; background-size:cover; }
.program .bgGrass { background:url(../images/common/bg-grass.png) no-repeat center; display:block; width:100%; background-size:cover; }
.program .text, .app .text {  padding:13px; display:block; color:#FFF; font-size:12px; }
.app .ico { background:url(../images/common/ico-app.png) no-repeat center #ff0000; display:block; height:104px; width:100%; }
.textd strong {  color:#039eef !important; }
.textg strong {  color:#33cc00 !important; }
.app { display: block;}
.program .text strong, .app .text strong { color:#ff0000; text-transform:uppercase; font-size:14px; padding:0 0 10px 0; display:block; line-height: 16px; }
.alert-icon:before { content: ""; display: block; float: left; width: 78px; height: 78px; margin: 0 18px 20px 0; background:url(../images/common/ico-alert.png) no-repeat center }
.subtitle { font-size:16px; display: block;}
.cell { opacity: 0; position: absolute;top: 0; left: 0; height: 0; width: 0; z-index: -1; }

.alerte-deneigement { background-image: url(../images/common/ico-deneigement-circle.png); background-repeat: no-repeat; background-size: 36px; background-position-y: center;     background-position-x: 4px; }
.p-alert {     padding: 4px 0 4px 48px; margin:0; }
.display-flow { display: flow-root; }


/*-------------------------------------------------------------------
	Equipments
-------------------------------------------------------------------*/
.card { background:#ffffff; padding:13px 26px 13px 13px; margin:0 0 13px 0; overflow:hidden; }
.card img { float:left; width:47%; }
.card .infos { float:right; width:49%; }
.card .infos .price { font-size:20px; font-weight:700; color:#ff0000; }
.card .infos p { font-size:12px; margin:0; padding:0; line-height:15px;  }
.card .infos .detail { font-size:12px; margin:0 0 12px 0; line-height:15px; }
.card .infos hr { margin:20px 0; }
.card a { color:#ff0000; }

/*-------------------------------------------------------------------
	Footer
-------------------------------------------------------------------*/
#footer { background:#42413c; overflow:hidden; padding:26px 0 0 0; }
#footer .logo { width:84px; height:41px; background:url(../images/common/logo-footer.png) no-repeat; float:none; margin:15px 0 }
#footer .column { border-top:1px solid #646463;}
#footer .column:nth-child(4n) { border-top:none;}
#footer .column:nth-child(2n) {  float:left; margin: 0 0 0 4%; padding:0; }
#footer .column:nth-child(2n+1) { clear:none; float:left; margin: 0 0 0 4%; }
#footer p { color:#ffffff; font-size:12px; margin:0 0 14px 0; line-height:15px; }
#footer .title { color:#999999; font-weight:700; display:block; }
#footer .small { font-size:10px; display:block; font-style:italic; }
#footer .logo-certified { background:url(../images/common/logo-certified.png) no-repeat; margin:0 auto; width:103px; height:92px; display:block;  }
#footer .nav a { color:#999999; font-size:12px; display:block; text-transform:uppercase; border-bottom:1px solid #646463; padding:10px 0; -webkit-transition:all .3s ease; -moz-transition:all .3s ease; -o-transition:all .3s ease; transition:all .3s ease; }
#footer .nav a:hover, #footer .nav a.selected { color:#ffffff; }
#footer .col25 { width:22%; }
#footer .column:first-child { margin:0; }
#copyright { background:#282724; color:#999999; font-size:12px; padding:21px 0; }
#copyright #logo-cameleon { display:block; float:right; width:161px; height:31px; background:url(../images/common/logo-cameleon.png) no-repeat;     position: relative; top: -10px; }

/*-------------------------------------------------------------------
	Form
-------------------------------------------------------------------*/

.zoneform {background:#1c1b19; padding:14px; }
form { background:#1c1b19; padding:13px; }
form label { font-size:14px; color:#FFF; display:block; margin:0 0 14px 0; }
form label span { color:#ff0000; margin:0 3px 0 0; }
form input, form textarea, form mail{ border:1px solid #42413c; background:#282724; display:block; padding:3px 5px; margin:8px 0 0 0; width:50%; -webkit-transition:border .3s ease; -moz-transition:border .3s ease; -o-transition:border .3s ease; transition:border .3s ease;-webkit-border-radius:0; -moz-border-radius:0; border-radius:0;  }
form input[type="radio"] { display: inline-block; }
form input[type="text"], form textarea, form input[type="mail"] {  -webkit-appearance:none; background:#282724; border:1px solid #42413c;  }
form input[type="file"], form input[type="file"]:hover { background:#1c1b19; border:none; } 

.input-hidden { position: absolute; left: -9999px; }
input[type=radio]:checked + label { background: #000000!important; }
input[type=radio]:hover + label { background: #000000!important; }
input[type=radio] + label { cursor: pointer; color: #fff;  width: 200px; font-weight: 700; height: auto; font-size: 14px; font-family: 'Roboto Condensed', sans-serif; transition: 500ms all;  text-transform: uppercase; -webkit-border-radius: 8px; -moz-border-radius: 8px; border-radius: 8px; padding: 10px 10px 6px 10px; background: #282724!important; }
.selectseason span { display: inline-block; padding: 2px; left: 49px; position: relative; top: -14px; color: #fff; font-size:18px;  }

form textarea, form mail { width:100%; height:70px; resize:vertical; padding:5px 5px; }
form input:focus, form input:hover, form textarea:focus, form textarea:hover, form email:focus, form email:hover { border:1px solid #ff0000; outline:none; }
.form-field { color: #fff;}
.files p {   color: #f00; margin-top: 1rem;}
#fileElem { visibility: hidden; width: 0; height: 0; margin:0; padding:0; }
#fileSelect, .btSubmit { display: inline-block; background:#ff0000; color:#ffffff; display:inline-block; padding:4px 8px; font-family:'Roboto Condensed', sans-serif; text-transform:uppercase; -webkit-border-radius:6px; -moz-border-radius:6px; border-radius:6px; border:none; }
.btSubmit { display:block; float:right; width:auto; padding:10px 34px; -webkit-transition:all .3s ease; -moz-transition:all .3s ease; -o-transition:all .3s ease; transition:all .3s ease; }
.btSubmit:hover { background:#42413c; border:none; }
.disablebt { background:#42413c; border:none; opacity: 0.4; }
.disablebt:hover { background:#42413c; border:none;  opacity: 0.4;}
form input[type="checkbox"] { width:auto; float:left; padding:0; margin:0 7px 0 0; }
form label.error { color:#ff0000; font-size:12px; padding:4px 0 0 0; }
.success { background:#33cc00; padding:20px; color:#ffffff; }
.failure { background:#ff0000; padding:20px; color:#ffffff; }
.bt-next {  width: auto; border-style: solid; float: right; border-width: 1px; }
.qty {padding: 15px; width: 20%; color: #ffffff;}
/*-------------------------------------------------------------------
	Map
-------------------------------------------------------------------*/
#map_wrapper {background: url(../images/common/bg-slider.jpg) bottom center; height: 430px; position:relative; z-index:1; text-align: center; }

#map_canvas { height:430px; width:100%; max-width:970px; margin:0 auto;-webkit-box-shadow: 0px 0px 10px 6px rgba(0,0,0,0.3); -moz-box-shadow: 0px 0px 10px 6px rgba(0,0,0,0.3); box-shadow: 0px 0px 10px 6px rgba(0,0,0,0.3); }
.map { width: 990px; height: 430px; display: block; margin: 0 auto; background: url(../images/common/map.png); background-repeat: no-repeat; }
#map_canvas .projectTitle { color:#ff0000; margin:0; font-size:26px; text-transform:uppercase; font-weight:100; line-height:28px; padding:0 0 8px 0; }
#map_canvas .location { margin:0; color:#000; }
.logo-25 { display:inline-block; width:126px; height:94px; background:url(../images/common/patch-25.png); position:relative; left:27px; top:11px; background-repeat:no-repeat; background-position:center; }

.logo-30 { display:inline-block; width:126px; height:94px; background:url(../images/common/patch-30.png); position:relative; left:27px; top:11px; background-repeat:no-repeat; background-position:center; }
/*-------------------------------------------------------------------
	Colors
-------------------------------------------------------------------*/
.green { color:#33cc00 !important; }
.green h3 { color:#33cc00 !important; }
.red { color:#fe2222 !important; }
.slideVideo { position:relative; top:87px; }
.has-dark-grey-bg { background:#1c1b19; }
.has-green-bg { background:#33cc00;padding:100px 0; }
.has-green-bg-alt { background-color:#33cc00; }
.has-red-bg { background:#fe2222 ;padding:100px 0; }
.has-red-bg-alt { background-color:#fe2222;  }
.has-grey-bg { background: #42413c; }
.has-grey { color:#c4c4c4; }
.white { color: #ffffff; }
.white-bg { background: #ffffff; }
.blue { color: #039eef!important; }
.bg-blue { background: #039eef; }
.right { text-align: right; }


/* Cookies */ 

    #cookie-banner {
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        background: #1c1b19;
        border-top: 1px solid #fb2e2c;
        box-shadow: 0 -2px 8px rgba(0,0,0,0.1);
        padding: 15px 20px;
        display: none;
        z-index: 9999;
    }
    #cookie-banner h3 {
        margin: 0 0 5px;
        font-size: 16px;
        font-weight: 900;
    }
    #cookie-banner p {
        margin: 0;
        font-size: 14px;
        line-height: 1.4em;
    }
    .cookie-content {
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 20px;
        flex-wrap: wrap;
    }
    .cookie-buttons { flex-shrink: 0; }
    #cookie-banner button {
        margin: 3px;
        padding: 8px 16px;
        border: none;
        border-radius: 5px;
        cursor: pointer;
        font-size: 14px;
    }
    #accept-all { background: #2196F3; color: white; }
    #decline-all { background: #f44336; color: white; }
    #customize { background: #777; color: white; }
    #save-custom { background: #777; color: white; }

    #cookie-customize {
        margin-top: 15px;
        padding: 10px;
        background: #282724;
        border: 1px solid #665433;
        border-radius: 8px;
        display: none;
    }
    #cookie-customize label {
        display: block;
        margin-bottom: 8px;
        color: #ffffff;
        font-size: 14px;
    }

    /* --- Bouton flottant --- */
    #cookie-settings-btn {
        position: fixed;
        bottom: 30px; /* un peu au-dessus de la bannière */
        left: 20px;
        background: #444;
        color: #fff;
        border: none;
        border-radius: 50%;
        width: 45px;
        height: 45px;
        font-size: 20px;
        cursor: pointer;
        box-shadow: 0 4px 12px rgba(0,0,0,0.3);
        z-index: 9998;
        display: none;
        }
/*-------------------------------------------------------------------
	Less than 1078px
-------------------------------------------------------------------*/
@media screen and (max-width: 1078px) {
	#slider .vid .content { height:429px !important; }
    .map {  width: 100%; height: 438px; display: block;  margin: 0 auto; background-size: cover; } 
}

/*-------------------------------------------------------------------
	Less than 970px
-------------------------------------------------------------------*/
@media screen and (max-width: 970px) {
	.section { width:94% !important; }
	#top .nav a { font-size:16px; }
	#top .nav ul li {  padding: 0 9px; }
	.bt.soumission .ico, .bt.equipement .ico  {float: left;}
	.bt { display:inline-block;} 
	.bt .title {top: 6px;}
    
    .btspecial { display:block;     height: 60px;}
	.btspecial .title { top:13px; }
	.logo { width:210px; background-size:contain; }
	.logo-25 { width:80px; background-size:contain; }
   
}

/*-------------------------------------------------------------------
	Less than 768px
-------------------------------------------------------------------*/
@media screen and (max-width: 768px) {
		.intro .flexslider .slides .slidePicture { height:auto !important; width:50%; }
#slider .vid .content { height:auto !important; }
	.icon { width:50%; padding:13px; position:relative; }
	.icon .icos { float:left; margin:0; }
	.icon .stitle { position:absolute; top:50%; margin:-7px 0 0 104px; display:block;font-size: 14px; }
	.hide { display:none; }
	.show { display:block; }
	
	.logo { margin:26px 5%; }
	#menu-trigger { width:21px; height:17px; display:block; background:url(../images/common/ico-trigger-white.png) center no-repeat; background-size:50%; float:right; padding:20px; margin:40px 5%;-webkit-border-radius:8px; -moz-border-radius:8px; border-radius:8px; }
	#menu-trigger:hover { background:url(../images/common/ico-trigger.png) center no-repeat #ebebeb; background-size:50%; }
	#top, .top { position:relative; z-index:1000; }
	#top .section { width:100% !important; }
	#top .nav { margin:0; background:url(../images/common/shadow-nav.png) repeat-x #fff; position: absolute; width: 100%; top:121px; zoom: 1;filter: alpha(opacity=98); 	opacity: 0.98; z-index:1000;}
	#top .nav { float:none; clear:both; }
	#top .nav ul li { float:none; width:100%; padding:0; border-bottom:1px solid #1c1b19; }
	#top .nav ul li a { width:100%; display:block; padding:12px 5%; background:#343330; }
	#top .nav ul li ul { position:relative; display:block !important; width:auto; }
	#top .nav ul li ul { border:none; -webkit-box-shadow:none; -moz-box-shadow:none; box-shadow:none; margin:0; top:auto; }
	#top .nav ul li ul li { border:none; }
	#top .nav .arrow { display:none; }
	#top .nav ul li ul li a { padding: 8px 8%; }
	#top .nav .hr { display:none !important; }
	#top .nav .sect {  padding:12px 8%;  }
    .hide-section { display: none; }
    .slidePicture-accueil {    width: 80%!important; }
    .title-accueil { font-size: 24px;  margin: -1rem 1rem 0 1rem; }
    .slide-accueil { height: 450px!important;}
    .h4-accueil { margin: 0 1rem 8px 1rem; }
    .texte-zone-accueil { margin: 0 1rem 20px 1rem;}     
    .image-accueil {    width: 90%;  display: block; margin: 2rem auto 0 auto }
    .mb2  {    margin-bottom: 2rem;}
    .mt0  {    margin-top: 0rem;}
    .margin-top-50 { margin-top: 10px!important; }
     #map_wrapper {  height: 345px; }
    .map { height: 345px; }
    .video-carriere { padding:50% 0 0 0; height: auto;  }
    }

.polique {
    
    color: #999999;
    display: inline-block;
    margin-left: 1rem;
    
}
    
/*-------------------------------------------------------------------
	Less than 595px (Mobile)
-------------------------------------------------------------------*/
@media screen and (max-width: 595px) {
	.logo-25 { top:4px; width:70px; }
	.section { width:100% !important; }
	.wrapper.grey { padding:25px 0; }
	.grey .section, #footer .section, #copyright .section { position:relative; overflow:hidden; width:95% !important; }
	.column { float:none !important; padding:0 0 0 0 !important; width:100% !important; margin:0 auto !important; }
	.icon { width:100%; }
	.logo { width:130px; height:35px; background-size:100%; margin: 32px 0 32px 5%; }
	.icon { padding:5% 5%; -webkit-border-radius:0; -moz-border-radius: 0; border-radius: 0; margin:0; text-align:left; }
	.icon span { margin:0; float:left; }
	.bt .title {top: 13px;}
	#menu-trigger { margin:30px 13px; }
	#top .nav { top:88px; }
	#top .sService a { padding:8px 12% !important; }
	h1 { margin:26px 5%; }
	#map_wrapper {  height: 168px; }
    .map { height: 168px; }
	#copyright #logo-cameleon { float:none;     margin: 10px 0 0 0; top: 0px; right: -2px; }
	#footer .logo-certified { margin:20px 0; }	
	.icon .stitle { font-size:16px; margin:-8px 0 0 104px; }
	.card { padding:13px; }
	.card img { width:100%; margin-bottom:10px; }
	.card .infos { width:100%; float:none; }
	form { margin:0 0 13px 0; }
	.bt .ico { float:left; }
	.slideVideo {top: 0; }
    .col5, .col95 { float: left!important; padding:0 2% 0 0!important; }
    .col95 { width: 95%!important; }
    .col5 { width: 5%!important; }
    .image { display: block; width: 26%; float: left; }
    .logo-30 {left: 8px;top: 1px;background-size: 80%; }
    
    	.grid { grid-template-columns:100%; }
	.sm-order-1 { order:1; }
	.sm-order-2 { order:2; }
	.sm-order-3 { order:3; }
	.sm-order-4 { order:4; }
	.sm-order-5 { order:5; }
	.sm-grid-columns-1-11 { grid-template-columns:1fr 11fr; }
	.sm-grid-columns-2-10 { grid-template-columns:2fr 10fr; }
	.sm-grid-columns-3-9 { grid-template-columns:3fr 9fr; }
	.sm-grid-columns-4-8 { grid-template-columns:4fr 8fr; }
	.sm-grid-columns-5-7 { grid-template-columns:5fr 7fr; }
	.sm-grid-columns-6-6 { grid-template-columns:6fr 6fr; }
	.sm-grid-columns-7-5 { grid-template-columns:7fr 8fr; }
	.sm-grid-columns-8-4 { grid-template-columns:8fr 4fr; }
	.sm-grid-columns-9-3 { grid-template-columns:9fr 3fr; }
	.sm-grid-columns-10-2 { grid-template-columns:10fr 2fr; }
	.sm-grid-columns-11-1 { grid-template-columns:11fr 1fr; }
	.sm-grid-columns-12 { grid-template-columns:12fr; }
	.sm-grid-columns-equal-2 { grid-template-columns:6fr 6fr; }
	.sm-grid-columns-equal-3 { grid-template-columns:4fr 4fr 4fr; }
	.sm-grid-columns-equal-4 { grid-template-columns:3fr 3fr 3fr 3fr; }
	.sm-grid-columns-equal-5 { grid-template-columns:2.4fr 2.4fr 2.4fr 2.4fr 2.4fr; }
    .sm-grid-gap-1 {grid-gap:1em;  }
	.show { display:block; }
 
}


/*-------------------------------------------------------------------
	Retina Displays
-------------------------------------------------------------------*/
@media only screen and (-Webkit-min-device-pixel-ratio: 1.5), only screen and (-moz-min-device-pixel-ratio: 1.5), only screen and (-o-min-device-pixel-ratio: 3/2), only screen and (min-device-pixel-ratio: 1.5) {
	.logo { background:url(../images/common/logo-@2x.png) no-repeat; background-size:100%; }
}
