
/* Text reveal title H1 H2 */

.box-title {
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  width: 100vw;
  min-height: 30vh;
  color: #082c5d;

}

/* title styles */
.home-title span{
    position: relative;
    overflow: hidden;
    display: block;
    line-height: 1.1;
}

.home-title span::after{
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background: #082c5d;
    line-height: 1.1;
    animation: a-ltr-after 2s cubic-bezier(.77,0,.18,1) forwards;
    transform: translateX(-101%);
}

.home-title span::before{
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background: white;
    animation: a-ltr-before 2s cubic-bezier(.77,0,.18,1) forwards;
    transform: translateX(0);
}

.home-title span:nth-of-type(1)::before,
.home-title span:nth-of-type(1)::after{
    animation-delay: 1s;
}

.home-title span:nth-of-type(2)::before,
.home-title span:nth-of-type(2)::after{
    animation-delay: 1.5s;
}

@keyframes a-ltr-after{
    0% {transform: translateX(-100%)}
    100% {transform: translateX(101%)}
}

@keyframes a-ltr-before{
    0% {transform: translateX(0)}
    100% {transform: translateX(200%)}
}
/* Custom button contact*/
.cta-blue svg {
  stroke: #082c5d!important;

}

.cta-blue span {
  vertical-align: middle;
  color:#082c5d!important;
}

.cta-blue:hover, .cta-blue:hover span{
  color:#fff!important;
}
.cta-blue:hover svg{
  stroke: #fff!important;
}

/* Custom button contact*/
.cta {
  position: relative;
  margin: auto;
  padding: 6px 22px;
  transition: all 0.2s ease;
}
.cta:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  border-radius: 28px;
  background: #e42321;
  width: 40px;
  height: 40px;
  transition: all 0.3s ease;
}
.cta svg {
  position: relative;
  top: 0;
  margin-left: 10px;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke: #fff;
  stroke-width: 2;
  transform: translateX(-5px);
  transition: all 0.3s ease;
}

.cta span {
  position: relative;
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 0.1em;
  vertical-align: middle;
  color:#fff;
}

.cta-2:hover{
  color:#fff;
}
.cta:hover:before{
  width: 100%;
  background: #e42321;
}
.cta:hover svg{
  transform: translateX(0);
  transform: scale(.96);
}
/* navigation desktop*/
.navbar a,.navbar a:visited,.navbar a:hover,.navbar a:active{
  -webkit-backface-visibility:hidden;
          backface-visibility:hidden;
	position:relative;
  transition:0.5s color ease;

}
.navbar a:hover{
	color:#e42321;
}
.navbar a.before:before,.navbar a.after:after{
  content: "";
  transition:0.5s all ease;
  -webkit-backface-visibility:hidden;
          backface-visibility:hidden;
  position:absolute;
}
.navbar a.before:before{
  top:-0.10em;
}
.navbar a.after:after{
  bottom:-0.10em;
}
.navbar a.before:before,.navbar a.after:after{
  height:3px;
  width:0;
  background:#e42321;
}
.navbar a.first:after{
  left:0;
}

.navbar a.before:hover:before,.navbar a.after:hover:after{
  width:100%;
  
}

/*bug avec dropdown icon, I move it*/
.navbar .dropdown-toggle::after{
  border-top:none;
  border-right:none;
  border-bottom:none;
  border-left:none;
}

/* navigation mobile*/
@media (max-width:768px){
  .navbar a,.navbar a:visited,.navbar a:hover,.navbar a:active{
    -webkit-backface-visibility:hidden;
            backface-visibility:hidden;
   /* position:initial!important;*/
    transition:0.5s color ease;
  color:white!important;
}

  .navbar a:hover{
	color:#e42321!important;
}
  .navbar a.first:after{
    left:0;
    margin-left:0em;
  }
  .navbar a.before:hover:before,.navbar a.after:hover:after{
    width:100%;
    
  }
  .nav-special.fullscreen-nav .nav > li a, .nav-special.fullscreen-nav .nav .dropdown-menu > li > a{
    text-align:left;
    padding-left:30px;
  }
  .nav-special.fullscreen-nav .close-special-menu {
    margin-left: 20px;
    position:absolute!important;
    width:50px;
    margin-top:20px;
    }
  .nav-special.fullscreen-nav .site-navigation {
      margin-top: 0%!important;
      }
  .nav-special.fullscreen-nav .site-navigation {
      text-align: left;
      }
  .nav-special.fullscreen-nav .close-special-menu .close-icon{
        height:3px;
      }
}

/* Reglage tab-anything*/
.tab-anything .dropdown-menu.fullwidth, .tab-anything .dropdown-toggle.fullwidth, .tab-anything label span, .tab-anything a{
  font-family:"RobotoCondensed-Bold"!important;
}

/*Custom fiche produit reflow*/
.ref-product-info h5{
  font-family:"RobotoCondensed-bold";
  color:#082c5d;
  font-size:1.5em!important;
}
.ref-price{
  font-size:1.5em!important;
  color:#e42321;
  text-align: center;
}
.reflow-product-list .ref-product, .reflow-product-list .ref-product .ref-product-data{
  padding-bottom:30px;
}
.reflow-product-list.ref-cards .ref-product:hover{
  transition: all .3s ease-out;
  box-shadow: 0 9px 21px 0 rgba(17,17,17,.22);
    -webkit-transform: translateY(-7px);
    -ms-transform: translateY(-7px);
    transform: translateY(-7px);
}
.reflow-product-list.ref-cards .ref-product .ref-product-data {
  padding: 0px 20px 0px 20px;
}
.reflow-product-list.ref-cards .ref-product{
  text-align: center;;
}

@media (max-width: 991px){
  .reflow-product-list.ref-cards .ref-products{
    --ref-products-per-row: 2!important;
  }
}
@media (min-width: 992px){
  .reflow-product-list.ref-cards .ref-products{
    --ref-products-per-row: 3!important;
  }
}
@media (max-width: 576px){
  .reflow-product-list.ref-cards .ref-products{
    --ref-products-per-row: 1!important;
  }
}

/*Show button selectionner*/
.reflow-product-list.ref-cards .ref-product .ref-addons {
  opacity: 1!important;
  visibility: visible!important;
  padding: 0px 20px 0px 20px;
  text-align:center;
}
.ref-addons a.ref-button.preview-toggle{
  border-radius:0px;
  background-color:#082c5d!important;
  font-family:'RobotoCondensed-Bold';
}
/*badge quantite*/

.has-quantity.reflow-cart-toggler::before{
  min-width:18px;
  min-height:18px;
  text-align:center;
  padding:3px!important;
  background:#e42321;
  transform:translate(50%,-60%);

}
/*Suppression liens au panier*/
.ref-footer .ref-links{
  display:none!important;
}
.reflow-shopping-cart .ref-cart .ref-footer{
  justify-content:end!important;
}
.reflow-shopping-cart.ref-checkout-content .ref-links{
  display:none;
}


/*custom submenu main*/
.navbar a.dropdown-item{
  padding: 5px 30px 5px 30px;
}

/*custom zoom produits*/
/*** Zoom produit custom ***/
#zoom-produits .ref-price{
  text-align: left!important;
}