/* general*/
* {
  outline : none;
}

button {
  margin : 0
}

button::-moz-focus-inner {
  border : 0;
}

/* lien */

a:hover, button:hover {
  cursor : pointer;
}

a.lien_gris_clair {
  padding   : 0 5px;
  color     : #666c6c;
  font-size : 12px;
  border    : 1px solid transparent;
}

a.lien_gris_clair:hover {
  color : #e7322a;
}

a.lien_gris_clair:active {
  color  : #e7322a;
  border : 1px solid transparent;
}

a.lien_gris_fonce {
  padding   : 0 5px;
  color     : #2c333f;
  font-size : 14px;
  border    : 1px solid transparent;
}

a.lien_gris_fonce:hover {
  color : #e7322a;
}

a.lien_gris_fonce:active {
  color  : #e7322a;
  border : 1px solid transparent;
}

a.espace_client {
  border                     : 1px solid #454c4b;
  height                     : 36px;
  width                      : 160px;
  text-transform             : uppercase;
  display                    : inline-block;
  background                 : #ffffff;
  position                   : relative;
  line-height                : 32px;
  border-bottom-left-radius  : 30px;
  border-bottom-right-radius : 30px;
  text-align                 : center;
}

a.espace_client span {
  display        : inline-block;
  vertical-align : middle;
  font-family    : "BarlowSemi", arial, sans-serif;
  font-size      : 13px;
  line-height    : 14px;
  color          : #454c4b;
}

a.espace_client span:before {
  content         : '';
  background      : url(/images/picto_espace_client.png) no-repeat;
  background-size : 15px;
  width           : 15px;
  height          : 15px;
  display         : inline-block;
  vertical-align  : middle;
  margin-right    : 5px;
  margin-top      : -4px;
}

a.espace_client:hover, a.espace_client:active {
  background : #454c4b;
}

a.espace_client:hover span, a.espace_client:active span {
  color : #ffffff;
}

a.espace_client:hover span:before, a.espace_client:active span:before {
  background : url(/images/picto_espace_client_blanc.png) no-repeat;
}

@media (max-width : 992px) {
  #header .menu_haut {
    padding : 0 5px;
  }

  a.espace_client {
    width : 120px;
  }

  a.espace_client span {
    font-size : 11px;
  }
  .menu_haut .content .recherche input{
    width: 105px;
  }
}

a.lien_vert {
  font-weight     : bold;
  padding         : 2px 8px;
  color           : #e7322a;
  text-decoration : underline;
}

a.lien_vert:visited {
  color  : #e7322a;
  border : none;
}

a.lien_vert:hover {
  color : #e7322a;
}

a.lien_vert:active {
  color  : #e7322a;
  border : none;
}

a.lien_bleu {
  padding   : 3px 6px;
  color     : #e7322a;
  font-size : 13px;
}

a.lien_bleu:hover {
  color : #e7322a;
}

a.lien_bleu:active {
  color  : #e7322a;
  border : none;
}

a.lien_bleu_not_border {
  color       : #454c4b;
  font-size   : 13px;
  font-weight : 500;
}

a.lien_bleu_not_border:hover,
a.lien_bleu_not_border:active {
  color : #e7322a;
}

/** search field **/
.search-field {
  display : inline-block;
  -webkit-box-shadow: 0 5px 15px 0 rgba(0,0,0,0.15);
  box-shadow: 0 5px 15px 0 rgba(0,0,0,0.15);
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -ms-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
  -webkit-border-radius: 2px;
  border-radius: 2px;
}

.search-field:hover,
.search-field:focus,
.search-field:active {
  -webkit-box-shadow: 0 5px 30px 0 rgba(0,0,0,0.30);
  box-shadow: 0 5px 30px 0 rgba(0,0,0,0.30);
}

.search-field input {
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -ms-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
  float                     : left;
  width                     : 330px;
  border                    : none;
  font-family               : 'arial';
  font-size                 : 15px;
  padding                   : 10px 16px;
  height                    : 50px;
  color: #333333;
  font-weight: bold;
  border-bottom-left-radius : 2px;
  border-top-left-radius    : 2px;
  display                   : inline-block;
  -webkit-box-shadow:inset 0 0 0 0 black;
  box-shadow:inset 0 0 0 0 black;
}

.search-field button {
  -webkit-box-shadow: 0 5px 15px 0 rgba(0,0,0,0.15);
  box-shadow: 0 5px 15px 0 rgba(0,0,0,0.15);
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -ms-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
  float                      : left;
  border                     : none;
  border-bottom-right-radius : 2px;
  border-top-right-radius    : 2px;
  font-size                  : 18px;
  height                     : 50px;
  line-height                : 50px;
  color                      : #ffffff;
  font-family: arial;
  font-weight: bold;
  display                    : inline-block;
  padding                    : 0 22px;
  background: black;
  background: -moz-linear-gradient(-45deg, black 0%, black 100%);
  background: -webkit-linear-gradient(-45deg, black 0%,black 100%);
  background: linear-gradient(135deg, black 0%,black 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#004696', endColorstr='#fcc400',GradientType=1 );
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}

.search-field button:hover,
.search-field button:focus,
.search-field button:active {
  background: #e2a400;
  background: -moz-linear-gradient(-45deg, black 0%, #333333 100%);
  background: -webkit-linear-gradient(-45deg, black 0%,#333333 100%);
  background: linear-gradient(135deg, black 0%,#333333 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e2a400', endColorstr='#efba00',GradientType=1 );
}

.search-field input:focus {
  -webkit-box-shadow:inset 0 0 0 2px black;
  box-shadow:inset 0 0 0 2px black;
}

.search-field ::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  color: #B7B8B9;
  font-size: 15px;
  font-weight: normal;
}

.search-field ::-moz-placeholder { /* Firefox 19+ */
  color: #B7B8B9;
  font-size: 15px;
  font-weight: normal;
}

.search-field :-ms-input-placeholder { /* IE 10+ */
  color: #B7B8B9;
  font-size: 15px;
  font-weight: normal;
}

.search-field :-moz-placeholder { /* Firefox 18- */
  color: #B7B8B9;
  font-size: 15px;
}

.geoloc {
  float      : left;
  margin-top : 15px;
}

.geoloc a {
  color     : #ffffff;
  font-size : 13px;
}

.geoloc a:hover {
  text-decoration : underline;
}

/** contact form */
.input_wrapper {
  display : inline-block;
}

.input_wrapper label {
  font-size     : 17px;
  color         : #454c4b;
  display       : block;
  text-align    : left;
  margin-bottom : 6px;
}

.input_wrapper input[type=text] {
  color         : #454c4b;
  font-size     : 15px;
  border        : none;
  width         : 320px;
  height        : 40px;
  line-height   : 40px;
  background    : #e9e9ea;
  border-radius : 2px;
  padding       : 10px;
}

.input_wrapper input:-webkit-autofill,
.input_wrapper input:-webkit-autofill:hover,
.input_wrapper input:-webkit-autofill:focus,
.input_wrapper input:-webkit-autofill:active {
  -webkit-box-shadow : 0 0 0 1000px #e9e9ea inset;
  transition         : background-color 5000s ease-in-out 0s;
}


.input_wrapper input[type=text]:hover {
  box-shadow : 0 1px 1px rgba(0, 0, 0, 0.2) inset;
}

.input_wrapper input[type=text]:focus {
  border : 2px solid #e7322a;
}

.input_wrapper input.validation-failed {
  border : 2px solid red;
  color  : red;
}

.input_wrapper textarea {
  background : #e9e9ea;
  border     : none;
  width      : 100%;
  color      : #454c4b;
  font-size  : 15px;

  padding    : 10px;
}

form div.mooniform-selector {
  width  : 320px;
  height : 40px;
}

form div.mooniform-selector, form div.mooniform-selector span {
  background-image : none;
  background       : #e9e9ea;
}

form div.mooniform-selector span:after {
  text-align     : center;
  pointer-events : none;
  cursor         : pointer;
  font-family    : 'FontAwesome';
  font-size      : 20px;
  content        : "\f107";
  color          : #ffffff;
  line-height    : 40px;
  width          : 40px;
  height         : 40px;
  position       : absolute;
  right          : 0;
  bottom         : 0;
  background     : #e7322a;
}

form div.mooniform-selector span {
  width       : 310px;
  height      : 40px;
  line-height : 40px;
  color       : #000000;
  font-size   : 15px;

}

form div.mooniform-selector select {
  width  : 320px;
  height : 40px;
}

form div.mooniform-hover, form div.mooniform-hover span {
  box-shadow : -4px 1px 2px rgba(0, 0, 0, 0.2) inset;
}

form div.mooniform-hover span:after {
  background : #e7322a
}

form div.mooniform-focus {
  border : 2px solid #e7322a
}

form div.mooniform-focus span:after {
  background : #e7322a
}

form div.mooniform-active, form div.mooniform-active span {
  box-shadow : -4px 1px 2px rgba(0, 0, 0, 0.2) inset;
}

form div.mooniform-active {
  border : none
}

form div.mooniform-active span:after {
  background : #e7322a
}

/* BOUTONS */
.btn_bleu {
  -webkit-transform : translateY(0px);
  transform         : translateY(0px);
  transition        : transform 0.3s;
  background        : #e7322a;

  color             : #ffffff;
  font-size         : 15px;
  border-radius     : 3px;
  border            : none;
  height            : 44px;
  min-width         : 190px;
  box-shadow        : 0 1px 1px rgba(0, 0, 0, 0.2) inset;
}

.btn_bleu:hover {
  -webkit-transform : translateY(-2px);
  transform         : translateY(-2px);
  transition        : transform 0.3s;
  background        : #e7322a;
  box-shadow        : 0 2px 2px rgba(0, 0, 0, 0.2)
}

.btn_bleu:active {
  background : #e7322a;
  border     : none;
  box-shadow : 0 2px 2px rgba(0, 0, 0, 0.2) inset;
}

.btn_bleu2 {
  -webkit-transform : translateY(0px);
  transform         : translateY(0px);
  transition        : transform 0.3s;
  background        : #e7322a;

  color             : #ffffff;
  font-size         : 14px;
  border-radius     : 3px;
  border            : none;
  height            : 33px;
  min-width         : 190px;
  box-shadow        : 0 1px 1px rgba(0, 0, 0, 0.2) inset;
}

.btn_bleu2:hover {
  -webkit-transform : translateY(-2px);
  transform         : translateY(-2px);
  transition        : transform 0.3s;
  box-shadow        : 0 2px 2px rgba(0, 0, 0, 0.2);
  color             : #ffffff;
}

.btn_bleu2:active {
  border     : none;
  box-shadow : 0 2px 2px rgba(0, 0, 0, 0.2) inset;
  color      : #ffffff;
}

.btn_vert {
  -webkit-transform : translateY(0px);
  transform         : translateY(0px);
  transition        : transform 0.3s;

  height            : 40px;
  min-width         : 220px;
  background        : #e7322a;
  border-radius     : 4px;
  border            : none;
  box-shadow        : 0 1px 1px rgba(0, 0, 0, 0.2) inset;
  color             : #ffffff;
  font-size         : 15px;
  display           : inline-block;
  line-height       : 40px;
  text-align        : center;
  padding           : 0 10px;
}

.btn_vert:hover {
  -webkit-transform : translateY(-2px);
  transform         : translateY(-2px);
  transition        : transform 0.3s;
  background        : #e7322a;
  box-shadow        : 0 2px 2px rgba(0, 0, 0, 0.2)
}

.btn_vert:active {
  background : #e7322a;
  border     : none;
  box-shadow : 0 2px 2px rgba(0, 0, 0, 0.2) inset;
}

.btn_vert2 {
  -webkit-transform : translateY(0px);
  transform         : translateY(0px);
  transition        : transform 0.3s;

  height            : 33px;
  line-height       : 27px;
  padding           : 3px 25px;
  background        : #e7322a;
  border-radius     : 4px;
  border            : none;
  box-shadow        : 0 1px 1px rgba(0, 0, 0, 0.2) inset;
  color             : #ffffff;
  font-size         : 15px;
}

.btn_vert2:hover {
  -webkit-transform : translateY(-2px);
  transform         : translateY(-2px);
  transition        : transform 0.3s;
  background        : #e7322a;
  box-shadow        : 0 2px 2px rgba(0, 0, 0, 0.2)
}

.btn_vert2:active {
  background  : #e7322a;
  border      : none;
  box-shadow  : 0 2px 2px rgba(0, 0, 0, 0.2) inset;
  line-height : 27px;
}

.btn_rouge {
  display               : inline-block;
  padding               : 0 20px;
  height                : 37px;
  line-height           : 33px;
  border                : 1px solid #e7322a;
  -webkit-border-radius : 19px;
  -moz-border-radius    : 19px;
  border-radius         : 19px;
  text-align            : center;
  font-family           : BarlowSemi, Arial, sans-serif;
  font-size             : 16px;
  color                 : #e7322a;
  -webkit-transition    : all 0.25s ease-in-out;
  -moz-transition       : all 0.25s ease-in-out;
  -ms-transition        : all 0.25s ease-in-out;
  -o-transition         : all 0.25s ease-in-out;
  transition            : all 0.25s ease-in-out;
  -webkit-transform     : translateY(0px);
  transform             : translateY(0px);
}

.btn_rouge:hover {
  -webkit-transform : translateY(-2px);
  transform         : translateY(-2px);
  box-shadow        : 0 2px 2px rgba(0, 0, 0, 0.2)
}

.btn_rouge:active {
  box-shadow : 0 2px 2px rgba(0, 0, 0, 0.2)
}

.btn_noir {
  display               : inline-block;
  padding               : 0 20px;
  height                : 37px;
  line-height           : 33px;
  border                : 1px solid #454c4b;
  -webkit-border-radius : 19px;
  -moz-border-radius    : 19px;
  border-radius         : 19px;
  text-align            : center;
  font-family           : BarlowSemi, Arial, sans-serif;
  font-size             : 16px;
  color                 : #454c4b;
  -webkit-transition    : all 0.25s ease-in-out;
  -moz-transition       : all 0.25s ease-in-out;
  -ms-transition        : all 0.25s ease-in-out;
  -o-transition         : all 0.25s ease-in-out;
  transition            : all 0.25s ease-in-out;
  -webkit-transform     : translateY(0px);
  transform             : translateY(0px);
}

.btn_noir:hover {
  -webkit-transform : translateY(-2px);
  transform         : translateY(-2px);
  box-shadow        : 0 2px 2px rgba(0, 0, 0, 0.2)
}

.btn_noir:active {
  box-shadow : 0 2px 2px rgba(0, 0, 0, 0.2)
}

.btn_blanc {
  display           : inline-block;
  line-height       : 39px;

  background        : #ffffff;
  border-radius     : 4px;
  font-size         : 15px;
  height            : 39px;
  padding           : 0 15px;
  -webkit-transform : translateY(0px);
  transform         : translateY(0px);
  transition        : transform 0.3s
}

.btn_blanc:hover {
  border            : none;
  box-shadow        : 0 2px 2px rgba(0, 0, 0, 0.2);
  -webkit-transform : translateY(-2px);
  transform         : translateY(-2px);
  transition        : transform 0.3s
}

.btn_blanc:active {
  box-shadow  : 0 2px 2px rgba(0, 0, 0, 0.2) inset;
  border      : none;
  line-height : 39px;
  padding     : 0 15px;
}

.btn_blanc_vert {
  -webkit-transform : translateY(0px);
  transform         : translateY(0px);
  transition        : transform 0.3s;
  color             : #e7322a;
  border            : 1px solid #e7322a;
  display           : inline-block;
  line-height       : 33px;

  background        : #ffffff;
  border-radius     : 4px;
  font-size         : 14px;
  height            : 33px;
  padding           : 0 15px;
}

.btn_blanc_vert:hover {
  -webkit-transform : translateY(-2px);
  transform         : translateY(-2px);
  transition        : transform 0.3s;
  color             : #e7322a;
  box-shadow        : 0 2px 2px rgba(0, 0, 0, 0.2);
  border            : 1px solid #e7322a;
  line-height       : 33px
}

.btn_blanc_vert:active {
  box-shadow  : none;
  border      : 1px solid #e7322a;
  color       : #e7322a;
  line-height : 33px
}

.btn_blanc_bleu {
  -webkit-transform : translateY(0px);
  transform         : translateY(0px);
  transition        : transform 0.3s;
  color             : #454c4b;
  border            : 1px solid #454c4b;
  display           : inline-block;
  line-height       : 33px;

  background        : #ffffff;
  border-radius     : 4px;
  font-size         : 14px;
  height            : 33px;
  padding           : 0 15px;
}

.btn_blanc_bleu:hover {
  -webkit-transform : translateY(-2px);
  transform         : translateY(-2px);
  transition        : transform 0.3s;
  color             : #454c4b;
  box-shadow        : 0 2px 2px rgba(0, 0, 0, 0.2);
  border            : 1px solid #454c4b;
  line-height       : 33px
}

.btn_blanc_bleu:active {
  box-shadow  : none;
  border      : 1px solid #454c4b;
  color       : #454c4b;
  line-height : 33px
}

.btn_rdv {
  -webkit-transform : translateY(0px);
  transform         : translateY(0px);
  transition        : transform 0.3s;
  border            : none;
  text-align        : left;
  position          : relative;
  display           : inline-block;
  line-height       : 42px;
  background        : #e7322a;
  font-weight       : bold;
  border-radius     : 4px;
  color             : #ffffff;
  text-transform    : uppercase;
  font-size         : 12px;
  height            : 40px;
  padding           : 0 0 0 75px;
  width             : 280px;
}

.btn_rdv:before {
  content         : "";
  position        : absolute;
  left            : 40px;
  top             : 10px;
  background      : url(/images/picto_btn_rdv.png) no-repeat;
  background-size : contain;
  height          : 21px;
  width           : 21px;
}

.btn_rdv:hover {
  -webkit-transform : translateY(-2px);
  transform         : translateY(-2px);
  transition        : transform 0.3s;
  background        : #e7322a;
  box-shadow        : 0 2px 2px rgba(0, 0, 0, 0.2)
}

.btn_rdv:active {
  background  : #e7322a;
  box-shadow  : 0 2px 2px rgba(0, 0, 0, 0.2) inset;
  border      : none;
  line-height : 39px;
  padding     : 0 0 0 80px;
}

.btn_rdv:active:before {
  top  : 9px;
  left : 40px
}

.btn_rdv:disabled {
  background : #e8eaed
}

/****/
.btn_rdv_tel {
  cursor        : default !important;
  border        : none;
  text-align    : left;
  position      : relative;
  display       : inline-block;
  line-height   : 14px;
  color         : #454c4b;
  background    : #c8daf5;
  border-radius : 4px;
  font-size     : 12px;
  height        : 39px;
  padding       : 0 0 0 80px;
  width         : 280px;
  padding-top   : 7px;
}

.btn_rdv_tel:before {
  content    : "";
  position   : absolute;
  left       : 40px;
  top        : 9px;
  background : url('/images/front/sprites-centre.png') 0 -107px no-repeat transparent;
  height     : 24px;
  width      : 21px;
}

.btn_rdv2_tel {
  cursor         : default !important;
  border         : none;
  text-align     : left;
  position       : relative;
  display        : inline-block;
  line-height    : 14px;

  background     : #c8daf5;
  border-radius  : 4px;
  color          : #454c4b;
  text-transform : uppercase;
  font-size      : 12px;
  height         : 53px;
  padding        : 12px 0 0 40px;
  width          : 230px;
}

.btn_rdv2_tel:before {
  content    : "";
  position   : absolute;
  left       : 12px;
  top        : 15px;
  background : url('/images/front/sprites-centre.png') 0 -107px no-repeat transparent;
  height     : 26px;
  width      : 31px;
}

.btn_rdv.disabled {
  background-color : #e8eaed;
  color            : #454c4b;
}

.btn_rdv_tel.disabled {
  background-color : #e8eaed;
  color            : #454c4b;
}

.btn_rdv_sticky {
  text-transform    : uppercase;
  -webkit-transform : translateY(0px);
  transform         : translateY(0px);
  transition        : transform 0.3s;
  border            : none;
  text-align        : center;
  position          : relative;
  display           : inline-block;
  vertical-align    : middle;
  line-height       : 32px;

  background        : #454c4b;
  border-radius     : 4px;
  color             : #ffffff;
  font-size         : 10px;
  height            : 32px;
  width             : 150px;
}

.btn_rdv_sticky:hover {
  -webkit-transform : translateY(-2px);
  transform         : translateY(-2px);
  transition        : transform 0.3s;
  background        : #e7322a;
  box-shadow        : 0 2px 2px rgba(0, 0, 0, 0.2)
}

.btn_rdv_sticky:active {
  background : #e7322a;
  box-shadow : 0 2px 2px rgba(0, 0, 0, 0.2) inset;
  border     : none;
}

.btn_rdv_vert {
  -webkit-transform : translateY(0px);
  transform         : translateY(0px);
  transition        : transform 0.3s;
  border            : none;
  text-align        : center;
  position          : relative;
  display           : inline-block;
  line-height       : 50px;

  background        : #e7322a;
  border-radius     : 4px;
  color             : #ffffff;
  font-size         : 20px;
  height            : 50px;
  width             : 230px;
}

.btn_rdv_vert:hover {
  -webkit-transform : translateY(-2px);
  transform         : translateY(-2px);
  transition        : transform 0.3s;
  background        : #e7322a;
  box-shadow        : 0 2px 2px rgba(0, 0, 0, 0.2)
}

.btn_rdv_vert:active {
  background : #e7322a;
  box-shadow : 0 2px 2px rgba(0, 0, 0, 0.2) inset;
  border     : none;
}

.btn_rdv.disabled {
  background-color : #e9e9ea;
  color            : #e7322a;
}

.btn_call {
  -webkit-transform : translateY(0px);
  transform         : translateY(0px);
  transition        : transform 0.3s;
  border            : none;
  text-align        : left;
  position          : relative;
  display           : inline-block;
  line-height       : 15px;

  background        : #e7322a;
  border-radius     : 4px;
  color             : #454c4b;
  text-transform    : uppercase;
  font-size         : 12px;
  height            : 39px;
  padding           : 7px 0 0 70px;
  width             : 280px;
}

.btn_call:before {
  content    : "";
  position   : absolute;
  left       : 30px;
  top        : 8px;
  background : url(/images/front/sprites-centre.png) 0 -107px no-repeat;
  height     : 24px;
  width      : 22px;
}

.btn_call.disabled {
  background-color : #e8eaed;
  color            : #454c4b;
}

.btn_rdv2 {
  -webkit-transform : translateY(0px);
  transform         : translateY(0px);
  transition        : transform 0.3s;
  border            : none;
  text-align        : left;
  position          : relative;
  display           : inline-block;
  line-height       : 56px;
  font-weight       : 500;
  background        : #e7322a;
  border-radius     : 4px;
  color             : #ffffff;
  text-transform    : uppercase;
  font-size         : 12px;
  height            : 53px;
  padding           : 0 0 0 50px;
  width             : 210px;
}

.btn_rdv2:before {
  content    : "";
  position   : absolute;
  left       : 12px;
  top        : 13px;
  background : url(/images/picto_btn_rdv.png) no-repeat;
  height     : 31px;
  width      : 31px;
}

.btn_rdv2:hover {
  -webkit-transform : translateY(-2px);
  transform         : translateY(-2px);
  transition        : transform 0.3s;
  background        : #e7322a;
  box-shadow        : 0 2px 2px rgba(0, 0, 0, 0.2);
}

.btn_rdv2:active {
  background  : #e7322a;
  box-shadow  : 0 2px 2px rgba(0, 0, 0, 0.2) inset;
  border      : none;
  line-height : 53px;
  padding     : 0 0 0 45px;
}

.btn_rdv2:active:before {
  top  : 13px;
  left : 12px;
}

.reduction {
  -webkit-transform : translateY(0px);
  transform         : translateY(0px);
  transition        : transform 0.3s;
  border            : none;
  text-align        : left;
  position          : relative;
  display           : inline-block;
  line-height       : 16px;
  font-weight       : 500;
  background        : #e9e9ea;
  border-radius     : 4px;
  color             : #454c4b;
  font-size         : 16px;
  height            : 53px;
  padding           : 11px 0 0 50px;
  width             : 210px;
}

.reduction:before {
  content    : "";
  position   : absolute;
  left       : 12px;
  top        : 11px;
  background : url(/images/picto_reduction.png) no-repeat;
  height     : 35px;
  width      : 31px;
}

.reduction:hover {
  background        : #e9e9ea;
  box-shadow        : 0 2px 2px rgba(0, 0, 0, 0.2);
  -webkit-transform : translateY(-2px);
  transform         : translateY(-2px);
  transition        : transform 0.3s
}

.reduction:active {
  background : #e9e9ea;
  box-shadow : 0 2px 2px rgba(0, 0, 0, 0.2) inset;
  border     : none;
  padding    : 10px 0 0 50px;
}

.reduction:active:before {
  top  : 11px;
  left : 12px;
}

.more-result {
  box-shadow          : 0 2px 2px rgba(153, 153, 153, 0.2);
  border              : none;
  position            : relative;
  display             : inline-block;
  line-height         : 52px;
  font-family         : Barlow, Arial, sans-serif;
  background          : #e9e9ea;
  text-align          : center;
  color               : #e7322a;
  text-transform      : uppercase;
  font-size           : 16px;
  height              : 52px;
  width               : 100%;
  transition-duration : 0.3s;
}

.more-result:hover {
  box-shadow        : 0 2px 2px rgba(0, 0, 0, 0.2);
  -webkit-transform : translateY(-2px);
  transform         : translateY(-2px);
}

.more-result:active {
  box-shadow  : 0 2px 2px rgba(0, 0, 0, 0.2) inset;
  border      : none;
  line-height : 52px;
}

.c-bleu {
  color : #454c4b
}

.c-bleu-fonce {
  color : #454c4b
}

.c-vert {
  color : #e7322a
}

/* MAP */
.picto_map {
  display     : inline-block;
  text-align  : center;
  cursor      : pointer;
  width       : 46px;
  height      : 62px;
  background  : url(/images/picto_map.png) no-repeat center 13px;
  line-height : 60px;
  color       : #ffffff;
  font-size   : 13px;
}

.picto_map:hover {
  background-position : center -98px;
  line-height         : 48px;
}

.picto_map:active {
  background-position : center -315px;
  line-height         : 48px;
}

.picto_map:disabled {
  background-position : center -420px;
  line-height         : 48px;
}

/* FOOTER */
.menu_footer {
  display : block;
}

.menu_footer .item {
  float       : left;
  width       : 168px;
  height      : 105px;
  line-height : 110px;
  display     : inline-block;
  /*background     : url(/images/bord_menu_footer.png) bottom right no-repeat;*/
  position    : relative;
}

.menu_footer .item span {
  display        : inline-block;
  vertical-align : middle;
  line-height    : 20px;
  width          : 100%;
  text-align     : center;
  font-size      : 14px;
  font-family    : "BarlowSemi", arial, sans-serif;
  color          : #959595;
}

.menu_footer .item span:before {
  content         : "";
  display         : inline-block;
  width           : 100%;
  height          : 40px;
  margin-bottom   : 5px;
  background-size : contain;
}

.menu_footer .item.rdv span, .menu_footer .item.alerte span {
  color : #e7322a;
}

.menu_footer .item.rdv span:before {
  background : url(/images/footer-rdv.svg) no-repeat center;
}

.menu_footer .item.centre span:before {
  background : url(/images/footer-centres.svg) no-repeat center;
}

.menu_footer .item.alerte span:before {
  background : url(/images/footer-alerte.svg) no-repeat center;
}

.menu_footer .item.faq span:before {
  background : url(/images/footer-faq.svg) no-repeat center;
}

.menu_footer .item.carriere span:before {
  background : url(/images/footer-carrieres.svg) no-repeat center;
}

.menu_footer .item.contact span:before {
  background : url(/images/footer-contact.svg) no-repeat center;
}

.menu_footer .item:hover, .menu_footer .item:active {
  background : #f9f9f9;
}

.footer {
  background : #454c4b;
  padding    : 10px;
}

.lien_blanc {
  color     : #ffffff;

  font-size : 12px;
}

.lien_blanc:hover {
  color : #e7322a;
}

.lien_blanc:active {
  border : none;
  color  : #e7322a;
}

/** RAPPEL */
.rappel {
  position     : relative;
  line-height  : 63px;
  padding-left : 192px;
  text-align   : left;
  width        : 100%;
  height       : 63px;
  background   : #e9edf1;
  display      : inline-block;
  color        : #e7322a;
}

.rappel:hover {
  background : #e7322a;
  color      : #ffffff;
  transition : background 0.3s;
}

.rappel:active {
  background : #e7322a;
  border     : none;
  color      : #ffffff;
}

.rappel p {
  display        : inline-block;
  line-height    : 19px;
  vertical-align : middle;

  font-size      : 18px;
}

.rappel span {

  font-size : 15px;
}

.rappel .astuce {
  position     : absolute;
  left         : 0;
  height       : 62px;
  margin-right : 34px;
  font-family  : 'complete_in_himregular';
  color        : #e7322a;
  font-size    : 38px;
  background   : url(/images/picto_rappel.png) no-repeat 10px 10px;
  padding-left : 80px;
}

.rappel:hover .astuce {
  color               : #ffffff;
  background-position : 10px -71px;
}

.rappel:active .astuce {
  color               : #ffffff;
  background-position : 10px -71px;
}

/** FAQ **/
.question {
  margin-top  : 30px !important;
  padding     : 10px 28px;
  display     : inline-block;
  background  : #ffffff;
  width       : 320px;
  line-height : 65px;
  height      : 85px;
  color       : #556076;
  position    : relative;
}

.question p {
  margin-right   : 10px;
  top            : 25px;
  position       : absolute;
  line-height    : 16px;
  vertical-align : middle;
  display        : inline-block;

  font-size      : 14px;
}

.question:before {
  transition : width 0.3s;
  content    : "";
  width      : 5px;
  height     : 85px;
  background : #e7322a;
  position   : absolute;
  left       : 0;
  top        : 0;
}

.question:hover:before {
  width      : 15px;
  transition : width 0.3s;
  box-shadow : 0 2px 2px rgba(0, 0, 0, 0.2)
}

.question:active:before {
  width      : 15px;
  transition : width 0.3s;
}

.question:hover {
  box-shadow : 0 2px 2px rgba(0, 0, 0, 0.2)
}

.question:active {
  box-shadow : 0 2px 2px rgba(0, 0, 0, 0.2) inset;
  color      : #556076;
  background : #ffffff;
}

/* itineraire */
.itineraire {
  display                   : inline-block;
  background                : #ffffff;
  width                     : 339px;
  height                    : 77px;
  border-bottom-left-radius : 4px;
  border-top-left-radius    : 4px;
  padding-left              : 70px;
  position                  : relative;
}

.itineraire .picto-itineraire {
  border-bottom-left-radius : 4px;
  border-top-left-radius    : 4px;
  text-align                : center;
  background                : url('/images/picto_itineraire.png') no-repeat center 14px #e7322a;
  width                     : 60px;
  line-height               : 125px;
  height                    : 77px;
  position                  : absolute;
  left                      : 0;
  top                       : 0;
  color                     : #ffffff;
}

.itineraire label {
  font-size     : 16px;
  color         : #454c4b;
  display       : block;
  padding-top   : 9px;
  margin-bottom : 5px;
}

.itineraire input {
  border-bottom-left-radius : 4px;
  border-top-left-radius    : 4px;
  padding                   : 5px;
  width                     : 215px;
  height                    : 34px;
  background                : #eff2f5;
  border                    : none;
  float                     : left;
}

.itineraire input:hover {
  box-shadow : 0 2px 2px rgba(0, 0, 0, 0.2) inset;
}

.itineraire input:active {
  box-shadow : 0 2px 2px rgba(0, 0, 0, 0.2) inset;
  border     : none;
}

.itineraire button {
  font-size                  : 14px;
  width                      : 41px;
  height                     : 34px;
  float                      : left;
  background                 : #e7322a;
  border                     : none;
  border-bottom-right-radius : 4px;
  border-top-right-radius    : 4px;
  color                      : #ffffff;
}

.itineraire button:hover {
  background : #e7322a;
}

.itineraire button:active {
  background : #e7322a;
  border     : none;
}

/** Menu lateral */

.menu_gauche a {
  border-bottom : 1px solid #ffffff;
  line-height   : 55px;
  width         : 100%;
  height        : 55px;
  display       : inline-block;
  background    : #e9e9ea;
  font-size     : 15px;
  color         : #454c4b;
  position      : relative;
  border-radius : 4px;
  padding-left  : 20px;
  font-weight   : 500;
}

.menu_gauche a span {
  z-index : 5;
  width   : 100%;
  display : block;
}

.menu_gauche a:before {
  z-index    : 4;
  transition : width 0.3s;
  content    : "";
  width      : 0;
  height     : 55px;
  background : #e7322a;
  position   : absolute;
  left       : 0;
  top        : 0;
}

.menu_gauche a:hover:before {
  width      : 15px;
  transition : width 0.3s;
  box-shadow : 0 2px 2px rgba(0, 0, 0, 0.2)
}

.menu_gauche li.level1.active ul li.level2 a:before {
  width      : 5px;
  transition : width 0.3s;
  color      : #e7322a;
  content    : ''
}

.menu_gauche a:active:before, .menu_gauche li.active > a:before {
  width      : 5px;
  transition : width 0.3s;
  color      : #e7322a;
}

.menu_gauche li.level1.active ul li.level2 a:hover,
.menu_gauche a:hover {
  color      : #e7322a;
  background : #e9e9ea;
  transition : background linear 1s;
}

.menu_gauche li.active > a {
  color      : #e7322a;
  background : #e9e9ea;
}

.menu_gauche li.has-children > a:after {
  z-index     : 6;
  width       : 41px;
  height      : 41px;
  font-family : 'FontAwesome';
  font-size   : 27px;
  content     : "\f107";
  color       : #454c4b;
  position    : absolute;
  right       : 6px;
  top         : 6px;
  text-align  : center;
  line-height : 41px;
}

.menu_gauche li.has-children > a.open:after {
  content : "\f106";
  color   : #e7322a
}

.menu_gauche li.level2 a {
  padding-left : 30px;
}

.menu_gauche li.level3 a {
  padding-left : 45px;
}

.menu_gauche li.level4 a {
  padding-left : 60px;
}

.menu_gauche li.level2 a {
  font-size   : 14px;
  /*padding-left : 40px;*/
  font-weight : normal;
}

/*.menu_gauche li.level2.active a {*/
/*color : #454c4b;*/
/*}*/

/*.menu_gauche .sub-menu ul.sub-menu {*/
/*height : auto;*/
/*}*/

/* menu 124 points de controle */
.menu_124 .item {
  margin             : 5px;
  border-radius      : 2px;
  display            : inline-block;
  height             : 140px;
  width              : 140px;
  border             : 1px solid #c8c8c8;
  background         : #ffffff;
  position           : relative;
  -webkit-transition : all 0.25s ease-in-out;
  -moz-transition    : all 0.25s ease-in-out;
  -ms-transition     : all 0.25s ease-in-out;
  -o-transition      : all 0.25s ease-in-out;
  transition         : all 0.25s ease-in-out;
}

.menu_124 .item h2 {
  margin-bottom : 0;
  z-index       : 4;
  position      : absolute;
  width         : 140px;
  bottom        : 5px;
  left          : 0;
  text-align    : center;
  font-weight   : bold;
  font-size     : 15px;
  color         : #e7322a;
}

.menu_124 .item:before {
  background : url(/images/picto_124.png) no-repeat;
  content    : "";
  position   : absolute;
  left       : 12px;
  top        : 20px;
  height     : 140px;
  width      : 140px;
}

.menu_124 .item.freinage:before {
  background-position : -151px 0;
}

.menu_124 .item.direction:before {
  background-position : -306px 0;
}

.menu_124 .item.visibilite:before {
  background-position : -454px 0;
}

.menu_124 .item.eclairage:before {
  background-position : -600px 0;
}

.menu_124 .item.liaison-sol:before {
  background-position : -754px 0;
}

.menu_124 .item.structure:before {
  background-position : -906px 0;
}

.menu_124 .item.equipement:before {
  background-position : -1067px 0;
}

.menu_124 .item.organes-mecaniques:before {
  background-position : -1211px 0;
}

.menu_124 .item.pollution:before {
  background-position : -1363px 0;
}

.menu_124 .item:hover {
  background : #e9e9ea;
}

.menu_124 .item:active {
  background : #e9e9ea;
}

.menu_124 dt.actif .item h2 {
  color : #ffffff;
}

.menu_124 .item:active:before {
  top  : 20px;
  left : 12px;
}

.menu_124 .item:active span {
  bottom : 5px;
  left   : 0;
}

.menu_124 dt.actif .item {
  background-color : #454c4b;
  border-color     : #454c4b;
}

.menu_124 dt.actif .item:before {
  background-position : 0 -244px;
}

.menu_124 dt.actif .item.freinage:before {
  background-position : -151px -244px;
}

.menu_124 dt.actif .item.direction:before {
  background-position : -306px -244px;
}

.menu_124 dt.actif .item.visibilite:before {
  background-position : -454px -244px;
}

.menu_124 dt.actif .item.eclairage:before {
  background-position : -600px -244px;
}

.menu_124 dt.actif .item.liaison-sol:before {
  background-position : -754px -244px;
}

.menu_124 dt.actif .item.structure:before {
  background-position : -906px -244px;
}

.menu_124 dt.actif .item.equipement:before {
  background-position : -1067px -244px;
}

.menu_124 dt.actif .item.organes-mecaniques:before {
  background-position : -1211px -244px;
}

.menu_124 dt.actif .item.pollution:before {
  background-position : -1363px -244px;
}

.menu_124 dt.actif .item span {
  color : #ffffff;
}

.menu_124 .item:after {
  transition  : bottom 0.3s, height 0.3s;
  background  : url(/images/fleche_bleue_bas.png) no-repeat;
  content     : "";
  height      : 0;
  width       : 24px;
  position    : absolute;
  left        : 50%;
  margin-left : -12px;
  bottom      : 0;
  z-index     : 5;
}

.menu_124 dt.actif .item:after {
  background  : url(/images/fleche_bleue_bas.png) no-repeat;
  content     : "";
  height      : 14px;
  width       : 24px;
  transition  : bottom 0.3s, height 0.3s;
  position    : absolute;
  left        : 50%;
  margin-left : -12px;
  bottom      : -14px;
}

/** Onglet faq */
.view-faq dt {
  box-shadow : 0 2px 2px rgba(0, 0, 0, 0.2);
}

.view-faq .item {
  background   : #e9e9ea;
  padding-left : 30px;
  line-height  : 65px;
  width        : 100%;
  height       : 65px;
  display      : inline-block;
  position     : relative;
}

.view-faq .item p, .view-faq .item h2.question-titre {
  position       : absolute;
  z-index        : 6;
  top            : 25px;
  display        : inline-block;
  font-family    : BarlowSemi, Arial, sans-serif;
  font-size      : 14px;
  color          : #454c4b;
  line-height    : 17px;
  vertical-align : middle;
}

.view-faq .item:before {
  pointer-events : none;
  z-index        : 5;
  transition     : width 0.5s;
  content        : "";
  height         : 65px;
  width          : 5px;
  position       : absolute;
  left           : 0;
  top            : 0;
  background     : #e7322a;
}

.view-faq .item:after {
  z-index       : 6;
  width         : 41px;
  height        : 41px;
  font-family   : 'FontAwesome';
  font-size     : 27px;
  content       : "\f107";
  color         : #ffffff;
  position      : absolute;
  right         : 13px;
  top           : 13px;
  background    : #959595;
  border-radius : 4px;
  text-align    : center;
  line-height   : 41px;
}

.view-faq .item:hover {
  background : #e9e9ea;
}

.view-faq .item:hover:before {
  width      : 15px;
  transition : width 0.3s;
}

.view-faq .item:hover:after {
  background : #e7322a;
}

/* .view-faq .item:focus:before{width:767px;transition: width 0.3s;}
.view-faq .item:focus:after{background:#0064B4;}
.view-faq .item:focus p{color:#ffffff;} */

.view-faq dt.actif .item, .view-faq .item:active {
  box-shadow : 0 2px 2px rgba(0, 0, 0, 0.2) inset;
}

.view-faq dt.actif .item:before, .view-faq .item:active:before {
  width      : 5px;
  transition : width 0.3s;
}

.view-faq dt.actif .item:after, .view-faq .item:active:after {
  background : #e7322a;
  content    : "\f106";
}

/*.view-faq dt.actif .item p, .view-faq .item:active p {*/
/*color : #556073;*/
/*}*/

/* Not for Safari */
html:lang(en) > body div input {
  left : -.4em;
  top  : -.4em;
}

* + html div input {
  left : -.4em;
  top  : -.4em;
}

* html div input {
  left : -.4em;
  top  : -.4em;
}
