
.color_1{
    background-color:  #151617;
}
.color_2{
    background-color:  #02cc97;
}
.color_3{
    background-color:  #B5C9C8;
}
.color_4{
    background-color: #759187;
}
.color_5{
    background-color: #74893D;
}
.color_6{
    background-color: #F3F3F8;
}
.text_color_1{
  color:  #151617;
}
.text_color_2{
  color:  #02cc97;
}
.text_color_3{
  color:  #E7C4B1;
}
.text_color_4{
  color: #FBF3EB;
}
.text_color_5{
  color: #C1DEBA;
}
.text_color_6{
  color: #FFF;
}

.blue_grad {
    background-image: linear-gradient(to right,#84cdf6, #4d94e7 );
  }
.purple_grad{
    background-image: linear-gradient(to right, #a9dacd,
    #02cc97);
}
.orange_grad{
    background-image: linear-gradient(to right, #f6b7a1,#ff8b69);
}
.pink_grad{
    background-image: linear-gradient(to right, 
    #d85d72,#f7a1b3);
}

.warnning{
    background: #ff506d;
}

/* .text_color_3{
    color:  rgb(170, 212, 85);
  }
  .text_color_4{
    color: rgb(4, 154, 224);;
  }
  .text_color_5{
    color:  rgb(0, 70, 128);;
  } */
.grey_color{
    color:#999;
}
.one-edge-shadow {
	box-shadow: 0 8px 6px -6px rgb(0 0 0 / 52%);
}

.paragraphe{
    font-size: 18px;
    padding: 5px 0px;
}
.bold{
    font-weight: 700;
}
.f_28{
    font-size: 23px;
}

.p_5{
    padding: 5px;
}

.pb_10{
    padding-bottom: 10px;
}

.button{width: 92%;height: 46px;padding: 10px; margin: 18px 0px; border-radius: 25px;text-align: center; cursor: pointer;}
.button_large{width: 240px;height: 40px;padding: 10px; margin: 0px 0px; border-radius: 25px;text-align: center; cursor: pointer;}

.line-through{
    text-decoration: line-through;
}

.custom_select{
    padding: 6px;
    width: 203px;
    -webkit-appearance: button;
}

.dropdown {
    position: relative;
    display: inline-block;
  }

.dropdown_container{
    display: none;
    position: absolute;
    grid-template-columns: 1fr 1fr 1fr;
    /* background-color: #f9f9f9; */
    width: 100%;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
    z-index: 1;
    left: 0;
    top: 90px;
}

.dropdown_cat{
    padding-left: 0px;
}
.dropdown_sub{
    padding-left: 0px;
}



.dropdown_item{
    width: 90%;
    max-width: 70em;
    margin: 0 auto;
    padding: 0 1.875em;}


.dropdown_sub:hover{
    background: #F3F3F8;
    color: #151617;
}
.dropdown_cat:hover{
    background: #F3F3F8;
    color:#151617;}


.center{
    text-align: center;
}

.shadow{box-shadow:2px 2px 10px rgba(116, 116, 116, 0.4);}


.badge_cart{
    display: inline-block;
    border-radius: 50%;
    position: absolute;
    min-width: 16px;
    top: 29%;
    left: 92%;
    font-size: small;
    text-align: center;
    color: #fefefe;
    padding: 0 3px;
}
@keyframes fadec { from {left:-10%; opacity:0.6;} to {right:0%; opacity:1;}}
@keyframes fade_left { from {right:-10%; opacity:0.6;} to {left:0%; opacity:1;}}

/************************************  HOME PAGE   **************************************************************/
/***********************************                          *************************************************************/

/* #home_page{
    display: grid;
    grid-template-rows: 500px 0.5fr 1fr;
} */

.head_section{
    display: grid;
    grid-template-rows: 1fr;
    position: relative;
}


.cart{
    position: relative;
    display: inline-block;
    font-size: 18px;
    cursor: pointer;
}
.cart img{
   font-weight: 700;
    width: 20px;
}
.sidebar_icon{
    padding: 10px 10px;
    font-size: 18px;
    display: none;
}
.menu{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    
    grid-gap: 5px;
}

.menu_item{
    font-weight: 500;
    font-size: 18px;
    cursor: pointer;
}

.sidebar{
    grid-template-columns: 1fr;
    height: 100%;
    width: 100%;
    position:fixed;
    left: 0px;
    top: 0px;
    z-index: 100;
    display: none
}
.menu_side{
    display: grid;
    grid-template-rows: 80px 1fr ;
}
.menu_side_header{
    display: grid;
    place-items: center;
    grid-template-columns: 80px 1fr 80px ;
}
.skip{
    font-size: 18px;
    padding: 10px;
}
.skip img{
   font-weight: 700;
    width: 20px;
}
.skip_btn {
    font-size: 18px;
    padding: 10px;
}
.menu_side_items{
    display: grid;
    grid-template-rows: 80px 80px 80px 80px ;
    padding: 20px;
    place-items: flex-start;
    cursor: pointer;
}
.menu_side_item{
    font-size: 20px;
    
}
.menu_side_item img{
    font-weight: 700;
    width: 20px;
    margin-right: 25px;
}

.circle{
    position: absolute;
    
    top: 5px;
    right: -10px;
    
}
.circle img{
    position: absolute;
    height: 450px;
    width: 550px;
    top: 90px;
    right: 50px;
}


.banner{
    display: grid;
    grid-template-columns: 1fr 1fr;
}

.title_section{
    position: absolute;
    top: 190px;
    left: 140px;

}
.main_title{
    font-size: 50px;
    font-weight: 900;
    padding: 5px 0px;
}

.body_section{
    
    display: grid;
 
}
.boutique_section{
    display: grid;
    grid-template-rows: 80px 1fr ;
    grid-gap: 10px;
  
}

.title_block{
    padding: 20px;
    font-size: 32px;
    justify-self: center;
    text-align: center;

}

/* .card_group{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 20px;
    justify-items: center;
    padding: 20px;
} */
.carousel{padding:15px;width: 100%; overflow-x:hidden ;display: flex;}
.carousel .card_product{position: relative; display:grid; width:270px; margin:0px; margin-right:15px;place-items: center;padding: 15px;border-radius: 10px}
.carousel .item_img{position: relative; display:grid; width:270px; margin:0px; margin-right:15px;place-items: center;padding: 15px;border-radius: 10px}

.card_product{position: relative; display:grid; width:265px; margin:0px; margin-right:15px;place-items: center;padding: 10px;border-radius: 7px}
.card_product_boutique{position: relative; display:grid; width:265px; margin:0px; margin-right:15px;place-items: center;padding: 10px;border-radius: 7px}
.card_product_promo{position: relative; display:grid; width:265px; margin:0px; margin-right:15px;place-items: center;padding: 10px;border-radius: 7px}

.image_container{
    padding: 5px;
    width: 240px;
    height: 250px;
}
.image_container img{
    max-width: 100%;
    max-height: 100%;
    display: block; /* remove extra space below image */
}

.button_container{
    justify-self: center;
    margin: 0px!important;
}

.product_name{
    justify-self: center;
    padding: 5px 5px;
}
.product_price_section{
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 12px;
    padding: 5px;
    justify-items: center;
}
.footer_section{
    /* height: 300px; */
    padding: 2rem 0;
    position: relative;
    bottom: 0px;
    margin-top: 100px;
    /* text-align: center;
    font-size: 19px;
    font-weight: 500; */
   
} 
.container_footer{
    padding-left: 40px ;
    padding-right: 20px;
    display: grid;
    grid-gap: 5px;
    grid-template-rows: 1fr 50px 100px 50px;
}
.menu_footer{
    display: grid;
    grid-template-columns: 50% 25% 25% ;
    padding: 10px;
}
.column_footer{
    display: grid;
    width:70%;
    /* grid-template-rows: 1fr 1fr 1fr; */

}
.ending_footer{
    display: grid;
    align-self: center;
    place-items: center;
    grid-template-columns: 1fr 1fr 1fr 1fr;
}

.ligne{
    width: 50%;
    border: solid 1px #FFF;
    align-self: center;
    justify-self: center;
    height: 0.4px;
}

.social_list{
    display:inline;
    font-size: x-large;
}

.copyright{
    display:inline;
    align-self: center;
    place-self: center;
    color: #646464;
}

.text_logo{
    color: white;
    font-weight: bold;
    font-size: xxx-large;
    padding-bottom: 15px;

  }


/************************************  Loading Page **************************************************************/
/***********************************                 *************************************************************/

#loading_page{
  position: fixed;
  height: 100vh;
  width: 100%;
  display: flex;
  top:0;
  z-index: 1400;
  align-items: center;
  justify-content: center;
  background: #fff;
  visibility: visible;
}
#loading_page .loader img{
  width: 120px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  animation: heartbeat 2s infinite;
}
#loading_page .loader h4{
  
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  animation: heartbeat 2s infinite;
}

/* #loading_page .loader:after{
  position: absolute;
  content: "";
  height: 100%;
  width: 100%;
  border-radius: 50%;
  border: 5px solid #1977cc;
  border-top-color: transparent;
  animation: rotate 4s linear infinite;
} */
@keyframes heartbeat
{
  0%
  {
    transform: scale( .75 );
  }
  20%
  {
    transform: scale( 1 );
  }
  40%
  {
    transform: scale( .75 );
  }
  60%
  {
    transform: scale( 1 );
  }
  80%
  {
    transform: scale( .75 );
  }
  100%
  {
    transform: scale( .75 );
  }
}
@keyframes rotate {
  100%{
    transform: rotate(360deg);
  }
}


/*--------------------------------------------------------------
Top Bar
--------------------------------------------------------------*/
#topbar {
    background: #fff;
    height: 40px;
    font-size: 14px;
    transition: all 0.5s;
    z-index: 996;
    align-items: center!important;
  }
  #topbar .container{
    justify-content: space-between!important;
    width: 100%;
    padding-right: var(--bs-gutter-x,1.75rem);
    padding-left: var(--bs-gutter-x,1.75rem);
    margin-right: 4em;
    margin-left: 4em;
  }
  #topbar .contact-info{
    align-items: center!important;
    cursor: pointer;
  }
  #topbar .social-links{
    align-items: center!important;
  }
  #topbar .google-trans{
    align-items: center!important;
  }
  #topbar.topbar-scrolled {
    top: -40px;
  }
  #topbar .contact-info a {
    line-height: 1;
    color: #444444;
    transition: 0.3s;
    text-decoration: none;
  }
  #topbar .contact-info a:hover {
    color: #1977cc;
  }
  #topbar .contact-info i {
    color: #1977cc;
    padding-right: 4px;
    margin-left: 15px;
    line-height: 0;
    font-size: larger;
  }
  #topbar .contact-info i:first-child {
    margin-left: 0;
  }
  #topbar .social-links a {
    color: #437099;
    padding-left: 15px;
    display: inline-block;
    line-height: 1px;
    transition: 0.3s;
    font-size: larger;
  }
  #topbar .google-trans a {
    color: #437099;
    padding-left: 15px;
    display: inline-block;
    line-height: 1px;
    transition: 0.3s;
    font-weight: 600;
  }
  #topbar .social-links a:hover {
    color: #1977cc;
  }
  #topbar .social-links a:first-child {
    border-left: 0;
  }

  .google-translate {
    display: inline-block;
    vertical-align: top;
    padding-top: 15px;
}

.goog-logo-link {
    display: none !important;
}

.goog-te-gadget {
    color: transparent !important;
}
.goog-te-gadget-simple {
    border: 0px !important;
}

.goog-te-gadget img{
    display: none !important;
}

.goog-te-banner-frame.skiptranslate {
    display: none !important;
}
.goog-te-gadget-simple .goog-te-menu-value span {
text-decoration: none;
padding-right: 10px;
}

  
  @media (max-width: 991px) {
    #topbar .d-flex{
        display: -webkit-box!important;
    }
    #topbar .social-links{
        display: none;
      }
      #topbar {
        height: 60px;}
      #topbar .container{
        /* justify-content: space-between!important; */
    /* width: 100%; */
    padding-right: var(--bs-gutter-x,0rem);
    padding-left: var(--bs-gutter-x,0rem);
    margin-right: 1em;
   margin-left: 1em;
    }
    /* #topbar.topbar-scrolled {
        top: -60px;
      } */

     /* #topbar .contact-info a {
        padding-right: 2%;
      }*/

      #topbar .mobile-none {
        display: none;
      }

  }

/*--------------------------------------------------------------
Header
--------------------------------------------------------------*/
#header {
    background: #fff;
    transition: all 0.5s;
    z-index: 997;
    padding: 15px 0;
    top: 40px;
    box-shadow: 0px 2px 15px rgba(25, 119, 204, 0.1);
  }
  #header.header-scrolled {
    top: 0;
  }

  #header .container{
    align-items: center;
    padding-right: var(--bs-gutter-x,1.75rem);
    padding-left: var(--bs-gutter-x,1.75rem);
    margin-right: 4em;
    margin-left: 4em;
  }
  #header .logo {
    font-size: 30px;
    margin: 0;
    padding: 0;
    line-height: 1;
    font-weight: 700;
    letter-spacing: 0.5px;
    font-family: "Poppins", sans-serif;
    margin-right: auto;
    
  }
  #header .logo a {
    color: #2c4964;
    text-decoration: none;
  }
  #header .logo img {
    max-height: 43px;
  }
  
  /**
  * Appointment Button *
  */
  .appointment-btn {
    margin-left: 25px;
    background: #1977cc;
    color: #fff;
    border-radius: 50px;
    padding: 8px 25px;
    white-space: nowrap;
    transition: 0.3s;
    font-size: 14px;
    display: inline-block;
  }
  .appointment-btn:hover {
    background: #166ab5;
    color: #fff;
  }
  @media (max-width: 768px) {
    .appointment-btn {
      margin: 0 15px 0 0;
      padding: 6px 18px;
    }
  }
  @media (max-width: 991px) {
    #header{
        top: 55px;
    }
    /* #header.header-scrolled {
        top: 0px;
      } */
  }
  
  /*--------------------------------------------------------------
# Navigation Menu
--------------------------------------------------------------*/
/**
* Desktop Navigation 
*/
.navbar {
    padding: 0;
    order: 0
  }
  .navbar ul {
    margin: 0;
    padding: 0;
    display: flex;
    list-style: none;
    align-items: center;
  }
  .navbar li {
    position: relative;
  }
  .navbar > ul > li {
    position: relative;
    white-space: nowrap;
    padding: 8px 0 8px 20px;
  }
  .navbar a, .navbar a:focus {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 15px;
    color: #2c4964;
    white-space: nowrap;
    transition: 0.3s;
    border-bottom: 2px solid #fff;
    padding: 5px 2px;
    font-weight: 600;
    text-decoration: none;
  }
  .navbar a i, .navbar a:focus i {
    font-size: 12px;
    line-height: 0;
    margin-left: 5px;
  }
  .navbar a:hover, .navbar .active, .navbar .active:focus, .navbar li:hover > a {
    color: #1977cc;
    border-color: #1977cc;
  }

  /**
* Mobile Navigation 
*/
.mobile-nav-toggle { 
    color: #2c4964;
    font-size: 28px;
    cursor: pointer;
    display: none!important;
    line-height: 0;
    transition: 0.5s;
  }
  .mobile-nav-toggle.bi-x {
    color: #fff;
  }
  
  @media (max-width: 991px) {
    .mobile-nav-toggle {
      display: block!important;
    }

    .navbar ul {
      display: none;
    }
  }
  .navbar-mobile {
    position: fixed;
    overflow: hidden;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    background: rgba(28, 47, 65, 0.9);
    transition: 0.3s;
    z-index: 999;
  }
  .navbar-mobile .mobile-nav-toggle {
    position: absolute;
    top: 15px;
    right: 15px;
  }
  .navbar-mobile ul {
    display: block;
    position: absolute;
    top: 55px;
    right: 15px;
    bottom: 15px;
    left: 15px;
    padding: 10px 0;
    background-color: #fff;
    overflow-y: auto;
    transition: 0.3s;
  }
  .navbar-mobile > ul > li {
    padding: 0;
  }
  .navbar-mobile a, .navbar-mobile a:focus {
    padding: 10px 20px;
    font-size: 15px;
    color: #2c4964;
    border: none;
  }
  .navbar-mobile a:hover, .navbar-mobile .active, .navbar-mobile li:hover > a {
    color: #1977cc;
  }
  .navbar-mobile .getstarted, .navbar-mobile .getstarted:focus {
    margin: 15px;
  }


/*--------------------------------------------------------------
# Hero Section
--------------------------------------------------------------*/
#hero {
    width: 100%;
    height: 90vh;
    background-size: cover ;
  
   
  }
#hero2 {
    width: 100%;
    height: 60vh;
    background-size: cover ;
    background: 
    linear-gradient(
        rgba(25, 97, 204, 0.486), 
        rgba(25, 97, 204, 0.486)
      ) ,url('../img/hero-bg.jpeg');
   align-items: center;
   place-content: center;
  }

  #hero2 .container{
      align-items: center;
      padding-top: 9%;
      justify-content: center;
      text-align: center
  }
  #hero2 h1 {
    margin: 0;
    font-size: 48px;
    font-weight: 700;
    line-height: 56px;
    text-transform: uppercase;
  }
  #hero2 h3 {
    
    margin: 10px 0 0 0;
    font-size: 24px;
  }
  #hero2 a {
    
    text-decoration: none;
    color: white;
  }
  #hero2 i {
    font-size: 19px;
    padding-left: 5px;
  }
  @keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
       opacity: 1;
    }
  }
  .container_hero {
    position: relative;
    top: 40%;
    left: 10%;
  }
  .container_hero h1 {
    margin: 0;
    font-size: 48px;
    font-weight: 700;
    line-height: 56px;
    text-transform: uppercase;
  }
  .container_hero h2 {
    color: #2c4964;
    margin: 10px 0 0 0;
    font-size: 24px;
  }
  .container_hero .btn-get-started {
    font-family: "Raleway", sans-serif;
    text-transform: uppercase;
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 1px;
    display: inline-block;
    padding: 12px 35px;
    margin-top: 30px;
    border-radius: 50px;
    transition: 0.5s;
    color: #fff;
    text-decoration: none;
  }
  .container_hero .btn-get-started:hover {
    background: #3291e6;
  }
  @media (min-width: 1024px) {
    #hero {
      background-attachment: fixed;
    }
  }
  @media (max-width: 992px) {
    #hero {
      margin-bottom: 0;
      height: 100vh;
      background-size: cover;
    }
    .container_hero {
      padding-bottom: 63px;
    }
    .container_hero h1 {
      font-size: 28px;
      line-height: 36px;
    }
    .container_hero h2 {
      font-size: 18px;
      line-height: 24px;
      margin-bottom: 30px;
      margin-right: 70px;
    }
     #hero2 h1 {
    font-size: 40px;
  }
  }
  @media (max-height: 600px) {
    #hero {
      height: 110vh;
    }
  }
  
  /*--------------------------------------------------------------
  # Sections General
  --------------------------------------------------------------*/
  section {
    padding: 60px 0;
    overflow: hidden;
  }
  
  .section-bg {
    background-color: #f1f7fd;
  }
  
  .section-title {
    text-align: center;
    padding-bottom: 30px;
  }
  .section-title h2 {
    font-size: 32px;
    font-weight: bold;
    margin-bottom: 20px;
    padding-bottom: 20px;
    position: relative;
    color: #0B1332;
  }
  .section-title h2::before {
    content: "";
    position: absolute;
    display: block;
    width: 120px;
    height: 1px;
    background: #ddd;
    bottom: 1px;
    left: calc(50% - 60px);
  }
  .section-title h2::after {
    content: "";
    position: absolute;
    display: block;
    width: 40px;
    height: 3px;
    background: #1977cc;
    bottom: 0;
    left: calc(50% - 20px);
  }
  .section-title p {
    margin-bottom: 0;
  }

/*--------------------------------------------------------------
# About
--------------------------------------------------------------*/
.about .icon-boxes{
    align-items: stretch;
    justify-content: center
    
}
.about .icon-boxes h4 {
    font-size: 18px;
    color: #4b7dab;
    margin-bottom: 15px;
  }
  .about .icon-boxes h3 {
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 15px;
  }
  .about .icon-box {
    margin-top: 40px;
  }
  .about .icon-box .icon {
    float: left;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 64px;
    height: 64px;
    border: 2px solid rgb(240, 92, 95);
    border-radius: 50px;
    transition: 0.5s;
  }
  .about .icon-box .icon i {
    color: #F22023;
    font-size: 32px;
  }
  .about .icon-box:hover .icon {
    background: #F22023;
    border-color: #F22023;
  }
  .about .icon-box:hover .icon i {
    color: #fff;
  }
  .about .icon-box .title {
    margin-left: 85px;
    font-weight: 700;
    margin-bottom: 10px;
    font-size: 18px;
  }
  .about .icon-box .title a {
    color: #2c4964;
    transition: 0.3s;
    text-decoration: none;
  }
  .about .icon-box .title a:hover {
    color: #F22023;
  }
  .about .icon-box .description {
    margin-left: 85px;
    line-height: 24px;
    font-size: 14px;
  }
   .about .icon-box {
    margin-top: 40px;
  }
  .about .icon-box .icon {
    float: left;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 64px;
    height: 64px;
    border: 2px solid rgb(240, 92, 95);
    border-radius: 50px;
    transition: 0.5s;
  }
  .about .icon-box .icon i {
    color: #F22023;
    font-size: 32px;
  }
  .about .icon-box:hover .icon {
    background: #F22023;
    border-color: #F22023;
  }
  .about .icon-box:hover .icon i {
    color: #fff;
  }
  .about .icon-box .title {
    margin-left: 85px;
    font-weight: 700;
    margin-bottom: 10px;
    font-size: 18px;
  }
  .about .icon-box .title a {
    color: #2c4964;
    transition: 0.3s;
    text-decoration: none;
  }
  .about .icon-box .title a:hover {
    color: #F22023;
  }
  .about .icon-box .description {
    margin-left: 85px;
    line-height: 24px;
    font-size: 14px;
  }
  .about .video-box {
    background: url("../img/first_post.jpg") center center no-repeat;
    background-size: cover;
    min-height: 500px;
  }
  .about .video-box-service {
    background-size: contain;
    max-width:  100%;
  }
  .about .video-box-service img{
    width: 100%;
    height: 100%;
  }
  .about .video-box2 {
    background: url("../img/nerce1.jpeg") center center no-repeat;
    background-size: cover;
    min-height: 500px;
  }
  .about .video-box1 {
    background: url("../img/doctor1.jpeg") center center no-repeat;
    background-size: cover;
    min-height: 500px;
  }

  .about .row{
      display: grid;
      grid-template-columns: 1fr 1fr;
  }
  .about .row-service{
      display: grid;
      grid-template-columns: 1fr 0.5fr;
      place-items: center;
  }

  .about .icon-box2 {
    margin-top: 36px;
  }
  .about .icon-box2 .icon {
    float: left;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 35px;
    height: 35px;
    border: 1px solid white;
    border-radius: 50px;
    transition: 0.5s;
  }
  .about .icon-box2 .icon i {
    color: white;
    font-size: 16px;
  }
  .about .icon-box2:hover .icon {
    background: white;
    border-color: white;
  }
  .about .icon-box2:hover .icon i {
    color: #1977cc;
  }
  .about .icon-box2 .title {
    margin-left: 70px;
    font-weight: 700;
    margin-bottom: 10px;
    font-size: 16px;
    margin-top: 7px
  }
  .about .icon-box2 ul {
    margin-left: 98px;
    margin-bottom: 10px;
    font-size: 16px;
    margin-top: 7px;
    color: white;
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  .about .icon-box2 ul .side_li {
    margin-left: 70px;
  }
  .about .icon-box2 .title a {
    color: white;
    transition: 0.3s;
    text-decoration: none;
  }
  .about .icon-box2 .title a:hover {
    color: white;
  }
  .about .icon-box2 .description {
    margin-left: 85px;
    line-height: 24px;
    font-size: 14px;
  }
  .about .about-infirmiers-phone{
    display: none;
  }

  @media (max-width: 991px) {
    .about .row{
      display: grid;
      grid-template-columns: 1fr ;
  }
  .about .video-box {
    background-size: contain;
    min-height: 400px;
  }
  /* .about{
    padding: 5% 5%;
  } */
  .about .row-service{

    grid-template-columns: 1fr ;
   
}
.about .icon-box2 ul {
  margin-left: 55px;
  
}
.about .icon-box2 .title {
  margin-left: 46px;
  
}
.about .icon-boxes  {
  padding: 8%;
  
}

.about .about-infirmiers-desktop{
  display: none;
}
.about .about-infirmiers-phone{
  display: block;
}
  }
  
  /*--------------------------------------------------------------
# Contact
--------------------------------------------------------------*/
.contact .info {
    width: 100%;
    background: #fff;
  }
.contact .container {
   padding: 0% 5%;
  }
  .contact .info i {
    font-size: 20px;
    color: #F22023;
    float: left;
    width: 44px;
    height: 44px;
    background: #ff9a9c5e;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50px;
    transition: all 0.3s ease-in-out;
  }
  .contact .info h4 {
    padding: 0 0 0 60px;
    font-size: 22px;
    font-weight: 600;
    margin-bottom: 5px;
    color: #2c4964;
  }
  .contact .info p {
    padding: 0 0 0 60px;
    margin-bottom: 0;
    font-size: 14px;
    color: #4b7dab;
    font-weight: 600;
    line-height: 1.5;
   
    text-decoration: none;
  }
  .contact .info a {
   
    color: #4b7dab;
    
    text-decoration: none;
  }
  .contact .info .email, .contact .info .phone {
    margin-top: 20px;
  }
  .contact .info .email:hover i, .contact .info .address:hover i, .contact .info .phone:hover i {
    background: #F22023;
    color: #fff;
  }
  .contact .email-form {
    width: 100%;
    background: #fff;
  }
  .contact .email-form .form-group {
    padding-bottom: 8px;
  }
  .contact .email-form #error {
    display: none;
    color: #fff;
    background: #ed3c0d;
    text-align: left;
    padding: 15px;
    font-weight: 600;
  }
  .contact .email-form .error-message br + br {
    margin-top: 25px;
  }
  .contact .email-form .sent-message {
    display: none;
    color: #fff;
    background: #18d26e;
    text-align: center;
    padding: 15px;
    font-weight: 600;
  }
  .contact .email-form .loading {
    display: none;
    background: #fff;
    text-align: center;
    padding: 15px;
  }
  .contact .email-form .loading:before {
    content: "";
    display: inline-block;
    border-radius: 50%;
    width: 24px;
    height: 24px;
    margin: 0 10px -6px 0;
    border: 3px solid #18d26e;
    border-top-color: #eee;
    -webkit-animation: animate-loading 1s linear infinite;
    animation: animate-loading 1s linear infinite;
  }
  .contact .email-form input, .contact .email-form textarea {
    border-radius: 0;
    box-shadow: none;
    font-size: 14px;
    width: 100%;
    border: solid 1px rgb(0 0 0 / 20%);
  }
  .contact .email-form input {
    height: 44px;
    width: 100%;
    border: solid 1px rgb(0 0 0 / 20%);
    padding: 10px 12px;
    font-weight: 600;
  }
  .contact .email-form textarea {
    padding: 10px 12px;
    font-weight: 600;
  }
  .contact .email-form button[type=submit] {
    background:  #F22023;
    border: 0;
    padding: 10px 35px;
    color: #fff;
    transition: 0.4s;
    border-radius: 50px;
    font-weight: 600;
  }
  .contact .email-form button[type=submit]:hover {
    background: #0B1332
  }
  .contact .row{
    display: grid;
    grid-template-columns: 0.5fr 1fr;
    grid-gap: 8%;
    }

    .contact a{
        text-decoration: none;
        }

  @-webkit-keyframes animate-loading {
    0% {
      transform: rotate(0deg);
    }
    100% {
      transform: rotate(360deg);
    }
  }
  @keyframes animate-loading {
    0% {
      transform: rotate(0deg);
    }
    100% {
      transform: rotate(360deg);
    }
  }

  @media (max-width: 991px) {
    .contact .row{
      display: grid;
      grid-template-columns: 1fr ;
  }
  
  
  }

/*--------------------------------------------------------------
# Counts
--------------------------------------------------------------*/
.counts {
  background: #f1f7fd;
  padding: 70px 0 60px;
}
.counts .row{
 display: grid;
 grid-template-columns: 1fr 1fr 1fr;
 padding-top: 6%;
}
.counts .count-box {
  padding: 60px 30px 0px 30px;
  width: 100%;
  position: relative;
  text-align: center;
  
}
.counts .count-box .title {
  margin-top: 10px;
  font-weight: 700;
  margin-bottom: 10px;
  font-size: 16px;
}
.counts .count-box .title a {
  color: #2c4964;
  transition: 0.3s;
  text-decoration: none;
}
.counts .count-box i {
  position: absolute;
  top: -25px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 50px;
  color: #1977cc;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.counts .count-box img {
  position: absolute;
  top: -25px;
  left: 50%;
  transform: translateX(-50%);
  width: 20%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.counts .count-box span {
  font-size: 36px;
  display: block;
  font-weight: 600;
  color: #082744;
}
.counts .count-box p {
  padding: 0;
  margin: 0;

  font-size: 16px;
}

@media (max-width: 991px) {
  .counts .row{
    grid-template-columns: 1fr;
    /* padding-top: 10%; */
 
  }
  .counts .row .p-l-r-5{
    padding: 10% 5%;
 
  }
}

/*--------------------------------------------------------------
# CodePromo
--------------------------------------------------------------*/
.code-promo {
  background: #f1f7fd;
  padding: 70px 0 60px;
}
.code-promo .row{
 display: grid;
 grid-template-columns: 1fr 1fr 1fr;
 padding-top: 6%;
}
.code-promo .count-box {
  padding: 60px 30px 0px 30px;
  width: 100%;
  position: relative;
  text-align: center;
  
}
.code-promo .count-box i {
  position: absolute;
  top: -25px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 50px;
  color: #F22023;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.code-promo .count-box span {
  font-size: 36px;
  display: block;
  font-weight: 600;
  color: #082744;
}
.code-promo .count-box p {
  padding: 0;
  margin: 0;
  font-family: "Raleway", sans-serif;
  font-size: 14px;
}

.code-promo .icon-box {
  text-align: center;
  border: 1px solid #d5e1ed;
  padding: 60px 20px;
  transition: all ease-in-out 0.3s;
  height: 100%;
}

.code-promo .grid-cards-promo{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    padding: 5% 5% 0% 5%;
}
.code-promo .grid-cards-promo .box{
    cursor: pointer;
} 

.code-promo .icon-box .icon {
  margin: 0 auto;
  width: 70px;
  height: 70px;
  background: #F22023;
  border-radius: 5px;
  transition: all 0.3s ease-out 0s;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
  transform-style: preserve-3d;
}
.code-promo .icon-box .icon i {
  color: #fff;
  font-size: 26px;
}

.code-promo .icon-box img {
  color: #fff;
  font-size: 28px;
  width: 50px;
}
.code-promo .icon-box .icon::before {
  position: absolute;
  content: "";
  left: -8px;
  top: -8px;
  height: 100%;
  width: 100%;
  background: rgb(241, 225, 226);
  border-radius: 5px;
  transition: all 0.3s ease-out 0s;
  transform: translateZ(-1px);
}
.code-promo .icon-box h4 {
  font-weight: 700;
  margin-bottom: 15px;
  font-size: 24px;
}
.code-promo .icon-box h4 a {
  color: #2c4964;
  text-decoration: none;
}
.code-promo .icon-box p {
  line-height: 24px;
  font-size: 14px;
  color: #2c4964;
  text-decoration: none;
  margin-bottom: 0;
}
.code-promo .icon-box:hover {
  background: #F22023;
  border-color: #F22023;
}
.code-promo .icon-box:hover .icon {
  background: #fff;
}
.code-promo .icon-box:hover .icon i {
  color: #F22023;
}
.code-promo .icon-box:hover .icon .filter-white {
 filter: invert(37%) sepia(79%) saturate(622%) hue-rotate(170deg) brightness(95%) contrast(105%);
}
.code-promo .icon-box:hover .icon::before {
  background: rgb(248, 154, 161);
}
.code-promo .icon-box:hover h4 a , .code-promo .icon-box:hover p {
  color: #fff;
}

@media (max-width: 991px) {
  .code-promo .row{
    grid-template-columns: 1fr;
    /* padding-top: 10%; */
 
  }
  .code-promo .row .p-l-r-5{
    padding: 10% 5%;
 
  }

  .code-promo .grid-cards-promo{
    display: grid;
    grid-template-columns: 1fr ;
}

}


/*--------------------------------------------------------------
# Services
--------------------------------------------------------------*/
.services .icon-box {
    text-align: center;
    border: 1px solid #d5e1ed;
    padding: 60px 20px;
    transition: all ease-in-out 0.3s;
    height: 100%;
  }

  .services .grid-cards{
      display: grid;
      grid-template-columns: 1fr 1fr 1fr;
      padding: 5% 5% 0% 5%;
  }
  .services .grid-cards .box{
      cursor: pointer;
  } 
  .services .grid-cards2{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    padding: 5% 5% 0% 5%;
}
.services .grid-cards2 .box{
    cursor: pointer;
} 

  .services .icon-box .icon {
    margin: 0 auto;
    width: 64px;
    height: 64px;
    background: #1977cc;
    border-radius: 5px;
    transition: all 0.3s ease-out 0s;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    transform-style: preserve-3d;
  }
  .services .icon-box .icon i {
    color: #fff;
    font-size: 28px;
  }
  .filter-white{
    filter: brightness(0) invert(1);
}
  .services .icon-box img {
    color: #fff;
    font-size: 28px;
    width: 50px;
  }
  .services .icon-box .icon::before {
    position: absolute;
    content: "";
    left: -8px;
    top: -8px;
    height: 100%;
    width: 100%;
    background: #badaf7;
    border-radius: 5px;
    transition: all 0.3s ease-out 0s;
    transform: translateZ(-1px);
  }
  .services .icon-box h4 {
    font-weight: 700;
    margin-bottom: 15px;
    font-size: 24px;
  }
  .services .icon-box h4 a {
    color: #2c4964;
    text-decoration: none;
  }
  .services .icon-box p {
    line-height: 24px;
    font-size: 14px;
    margin-bottom: 0;
  }
  .services .icon-box:hover {
    background: #1977cc;
    border-color: #1977cc;
  }
  .services .icon-box:hover .icon {
    background: #fff;
  }
  .services .icon-box:hover .icon i {
    color: #1977cc;
  }
  .services .icon-box:hover .icon .filter-white {
   filter: invert(37%) sepia(79%) saturate(622%) hue-rotate(170deg) brightness(95%) contrast(105%);
  }
  .services .icon-box:hover .icon::before {
    background: #3291e6;
  }
  .services .icon-box:hover h4 a, .services .icon-box:hover p {
    color: #fff;
  }
  /*--------------------------------------------------------------
# Service_page
--------------------------------------------------------------*/
  .service_page .grid-cards2 .box{
    cursor: pointer;
} 
.service_page .grid-cards2{
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  padding: 5% 5% 0% 5%;
}

.service_page .icon-box {
  text-align: center;
  border: 1px solid #d5e1ed;
  padding: 60px 20px;
  transition: all ease-in-out 0.3s;
  height: 100%;
}
.service_page .icon-box .icon {
  margin: 0 auto;
  width: 64px;
  height: 64px;
  background: #1977cc;
  border-radius: 5px;
  transition: all 0.3s ease-out 0s;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
  transform-style: preserve-3d;
}
.service_page .icon-box .icon i {
  color: #fff;
  font-size: 28px;
}
.service_page .icon-box img {
  color: #fff;
  font-size: 28px;
  width: 50px;
}
.service_page .icon-box .icon::before {
  position: absolute;
  content: "";
  left: -8px;
  top: -8px;
  height: 100%;
  width: 100%;
  background: #badaf7;
  border-radius: 5px;
  transition: all 0.3s ease-out 0s;
  transform: translateZ(-1px);
}
.service_page .icon-box h4 {
  font-weight: 700;
  margin-bottom: 15px;
  font-size: 24px;
}
.service_page .icon-box h4 a {
  color: #2c4964;
  text-decoration: none;
}
.service_page .icon-box p {
  line-height: 24px;
  font-size: 14px;
  margin-bottom: 0;
}
.service_page .icon-box:hover {
  background: #1977cc;
  border-color: #1977cc;
}
.service_page .icon-box:hover .icon {
  background: #fff;
}
.service_page .icon-box:hover .icon i {
  color: #1977cc;
}
.service_page .icon-box:hover .icon .filter-white {
 filter: invert(37%) sepia(79%) saturate(622%) hue-rotate(170deg) brightness(95%) contrast(105%);
}
.service_page .icon-box:hover .icon::before {
  background: #3291e6;
}
.service_page .icon-box:hover h4 a, .service_page .icon-box:hover p {
  color: #fff;
}

  @media (max-width: 991px) {
    .services .grid-cards{
      display: grid;
      grid-template-columns: 1fr ;
  }
    .services .grid-cards2{
      display: grid;
      grid-template-columns: 1fr ;
  }
  .service_page .grid-cards2{
      display: grid;
      grid-template-columns: 1fr ;
  }
  
  
  }

  /*--------------------------------------------------------------
# Conseils
--------------------------------------------------------------*/
.conseils .icon-box img{
  text-align: center;
  background-size: cover;
  max-width: 100%;
}
.conseils .icon-box {
  place-self: center;
 
}

.conseils .grid-cards-conseils{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr ;
    padding: 5% 5% 0% 5%;
}
.conseils .grid-cards-conseils .box-conseil{
    cursor: pointer;
    display: grid;
    grid-template-rows: 1fr 0.5fr ;
    border: 1px solid #d5e1ed;
    transition: all ease-in-out 0.3s;
    height: 100%;
} 
.conseils .icon-box .icon {
  margin: 0 auto;
  width: 64px;
  height: 64px;
  background: #1977cc;
  border-radius: 5px;
  transition: all 0.3s ease-out 0s;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
  transform-style: preserve-3d;
}
.conseils .icon-box .icon i {
  color: #fff;
  font-size: 28px;
}
.conseils .icon-box .icon::before {
  position: absolute;
  content: "";
  left: -8px;
  top: -8px;
  height: 100%;
  width: 100%;
  background: #badaf7;
  border-radius: 5px;
  transition: all 0.3s ease-out 0s;
  transform: translateZ(-1px);
}
.conseils .text-box{
  padding: 0px 20px;
}
.conseils .text-box .time-conseil{
  color: #b3b3b3;
  font-size: 13px;
  padding-bottom: 5px;
  font-weight: 600;
}
.conseils .box-conseil h4 {
  font-weight: 700;
  margin-bottom: 15px;
  font-size: 20px;
}
.conseils .box-conseil h4 a {
  color: #2c4964;
  text-decoration: none;
}
.conseils .box-conseil p {
  line-height: 24px;
  font-size: 14px;
  margin-bottom: 0;
}
.conseils .box-conseil:hover {
  background: #1977cc;
  border-color: #1977cc;
}
.conseils .box-conseil:hover .icon-box .icon {
  background: #fff;
}
.conseils .box-conseil:hover .icon-box .icon i {
  color: #1977cc;
}
.conseils .box-conseil:hover .icon-box .icon::before {
  background: #3291e6;
}
.conseils .box-conseil:hover  h4 a, .conseils .box-conseil:hover p {
  color: #fff;
  text-decoration: none
}
.conseils_details .container{
  display: grid;
  grid-template-columns: 1fr 0.5fr;
  }
  
  .conseils_details .text-box .time-conseil{
    color: #b3b3b3;
    font-size: 13px;
    padding-bottom: 5px;
    font-weight: 600;
  }
  
  .conseils_details .video-box img{
    text-align: center;
    background-size: cover;
    max-width: 70%;
  }
   .conseils_details .container .recent_blog{
    display: grid;
    grid-template-rows: 0.5fr;
    align-self: flex-start;
    }
   .conseils_details .container .recent_blog .box-conseil .icon-box img{
    background-size: cover;
    max-width: 70%;
  
    }
    .conseils_details .time-conseil{
      color: #b3b3b3;
      font-size: 13px;
      padding-bottom: 5px;
      font-weight: 600;
    }
  
    .conseils_details h4 {
      font-weight: 700;
  
    }
    .conseils_details .box-conseil h4 {
      font-weight: 700;
      margin-bottom: 15px;
      font-size: 16px;
    }
    .conseils_details .box-conseil h4 a {
      color: #2c4964;
      text-decoration: none;
    }
  
@media (max-width: 991px) {
  .conseils .grid-cards-conseils{
    display: grid;
    grid-template-columns: 1fr ;
}
.conseils_details .container{
  display: grid;
  grid-template-columns: 1fr;
  
  }
  .conseils_details .video-box img{
    padding-top: 20px;
    max-width: 100%;
  }
}

/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
#footer {
    color: #444444;
    font-size: 14px;
    background: #f1f7fd;
  }
  #footer .footer-top {
    padding: 60px 0 30px 0;
    background: #fff;
    box-shadow: 0px 2px 15px rgba(25, 119, 204, 0.1);
  }
  #footer .footer-top .container {
    padding: 0% 5%;
    
  }
  #footer .footer-top .footer-contact {
    margin-bottom: 30px;
  }
  #footer .footer-top .footer-contact h4  {
    font-size: 22px;
    margin: 0 0 30px 0;
    padding: 2px 0 2px 0;
    line-height: 1;
    font-weight: 700;
  }
  #footer .footer-top .footer-contact p {
    font-size: 14px;
    line-height: 24px;
    margin-bottom: 0;
    font-family: "Raleway", sans-serif;
    color: #777777;
  }
  #footer .footer-top .footer-contact a {
    text-decoration: none;
    color: #777777;
  }
  #footer .footer-top h4 {
    font-size: 16px;
    font-weight: bold;
    color: #444444;
    position: relative;
    padding-bottom: 12px;
  }
  #footer .footer-top h3 {
    font-size: 20px;
    font-weight: bold;
    color: #444444;
    position: relative;
    padding-bottom: 12px;
  }
  #footer .footer-top .footer-links {
    margin-bottom: 30px;
  }
  #footer .footer-top .footer-links ul {
    list-style: none;
    padding: 0;
    margin: 0;
  }
  #footer .footer-top .footer-links ul i {
    padding-right: 8px;
    color: #1c84e3;
    font-size: 11px;
    line-height: 1;
  }
  #footer .footer-top .footer-links ul li {
    padding: 10px 0;
    display: flex;
    align-items: center;
  }
  #footer .footer-top .footer-links ul li:first-child {
    padding-top: 0;
  }
  #footer .footer-top .footer-links ul a {
    color: #777777;
    transition: 0.3s;
    display: inline-block;
    line-height: 1;
    text-decoration: none;
    cursor: pointer;
  }
  #footer .footer-top .footer-links ul a:hover {
    text-decoration: none;
    color: #1977cc;
  }
 
  #footer .credits {
    padding-top: 5px;
    font-size: 13px;
    color: #444444;
    margin-right: auto;
  }
  #footer .social-links a {
    font-size: 20px;
    display: inline-block;
    background: #1977cc;
    color: #fff;
    line-height: 1;
    padding: 8px 0;
    margin-right: 4px;
    border-radius: 50%;
    text-align: center;
    width: 36px;
    height: 36px;
    transition: 0.3s;
    text-decoration: none;
  }
  #footer .social-links a:hover {
    background: #1c84e3;
    color: #fff;
    text-decoration: none;
  }

  #footer .container2{
padding: 3% 5%; 

  }

  #footer a {
      text-decoration: none;
      
  }


  .phone-link a {
    font-size: 34px;
    display: none;
    background: #1977cc;
    color: #fff;
    line-height: 1;
    padding: 17px 0;
    margin-right: 4px;
    border-radius: 50%;
    text-align: center;
    width: 70px;
    height: 70px;
    transition: 0.3s;
    text-decoration: none;
    position: fixed;
    bottom: 50px;
    right:30px;
  }
  .phone-link a:hover {
    background: #1c84e3;
    color: #fff;
    text-decoration: none;
  }

  @media (max-width: 991px) {
    .phone-link a {
      display: inline-block;
    }
  }

/************************************  BOUTIQUE PAGE   **************************************************************/
/***********************************                          *************************************************************/



#boutique_page{
    display: grid;
    grid-template-columns: 280px 1fr;
    display: none;
    /* height: 100vh;
    width: 100vw;
    padding-bottom: 2.5rem; */
}
#promotion_page{
    display: grid;
    grid-template-columns: 280px 1fr;
    display: none;
    /* height: 100vh;
    width: 100vw;
    padding-bottom: 2.5rem; */
}

.filter_section{
    display: grid;
    grid-template-rows: 1fr;
    grid-gap: 10px;
    padding: 20px;
    height: 300px;
}

.category_card{
    display: grid;
    grid-template-rows: 50px 1fr;
    border-radius: 7px;
    border: solid 1px #B5C9C8; 
}

.category_name_card{
    padding: 5px;
    font-size: large;
    
}
.sub_category_name_card{
    padding: 5px 12px;
    color: dimgrey;
}

.category_name_card:hover{
 
    text-decoration: underline;
}
.sub_category_name_card:hover{
    
    text-decoration: underline;
}

.selected{
    
    text-decoration: underline;
    }

.category_card_list{
   padding: 12px;
   
   display: grid;
}

.category_card_title{
   place-items: center;
   padding: 12px;
   font-size: 18px;
}

.filter_card{
    display: grid;
    grid-template-rows: 50px 1fr;
    border-radius: 7px;
    border: solid 1px #FBF3EB; 
}
.title_card_list{
    place-items: center;
    padding: 12px;
    text-align: center;
    display: grid;
    grid-template-rows: 1fr 1fr 1fr;
 }
.filter_card_title{
    place-items: center;
    padding: 12px;
    text-align: center;
 }

.products_section{
    display: grid;
    grid-template-rows: 100px 1fr;
}

.filter_head{
    
    place-items: end;
    padding-top: 20px;
    padding-left: 20px;
    justify-content: flex-start;
    display: flex;
}

.orderby{
    padding: 5px 10px 5px 5px;
    border: solid 3px #B5C9C8;
    width:225px;
    border-radius: 5px;
    margin-right:15px
}

.research_section{
    padding: 5px 10px 5px 5px;
    border: solid 3px #B5C9C8;
    border-radius: 5px;
    margin-right:15px
}
.research_section input{
    border: none ;
    outline: 0;
    font-size: 15px;
    width: 230px;
    height: 27px;
}

.cards_container{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 20px;
    justify-items: center;
    padding: 20px;

}
.cards_container2{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 20px;
    justify-items: center;
    padding: 20px;

}
.badge_promo{
    position: absolute;
    border-right: 70px solid  rgba(255, 17, 17, 0.507);
    border-bottom: 70px solid transparent;
    right: 0px;
    top:0px;

}

.text_badge{
    padding: 5px; 
    right: 0px;
    top:0px;
    position: absolute;
    z-index: 100;
}

.filter_card_list{
    padding: 15px;
    display: grid;
    grid-template-rows: 1fr 1fr 1fr;

}


/************************************  PRODUCT PAGE   **************************************************************/
/***********************************                          *************************************************************/



#product_page{
    grid-template-rows: 1fr;
    display: none;
}

.details_product{
    display: grid;
    grid-template-columns: 13% 37% 50%;
    padding: 20px;
    margin-top: 20px; 
    margin-bottom: 20px; 
}

.product_info{
    display: grid;
    grid-auto-rows: 1fr 1fr 1fr 1fr;
}

.sug_section{
    padding: 20px;
}


.item_img{width:340px; background-color: rgb(255, 255, 255);object-fit: cover; place-self: start;}
.item_img img {width: 100%;}
.small_item_img {width: 120px;place-self: start; }
.small_item_img img {width: 100%; }
.input-group{display:grid; grid-template-columns: 40% 60%;place-items: center;}
.item_body{width:100%;padding-left: 50px;padding-right: 20px;}
.item_body_title {font-size: 28px;font-weight: 700; padding-bottom:10px;}
.item_body_subtitle{font-size: 18px;font-weight: 300;color: rgb(141, 141, 141);}
.en_stock{color: rgb(84, 190, 13)}
.item_body .price {text-align: left; font-weight: 700; font-size: 28px;}
#quantity-select{width: 150px; height: 29px ;border: 2px solid  rgb(192, 192, 192,0.8); outline: none; color: #646464;padding: 2px 2px 2px 5px}
#product-price{padding: 10px;}
#product-price .price{text-align: center;}
.input_quantity{justify-self: start;}
.quentity_form{width:30px;border: 2px ;}


/************************************  CART     **************************************************************/
/***********************************            *************************************************************/

#overlay{background-color: rgb(0, 0, 0,0.6); height: 100%; display: block;width: 100%; position: fixed; top: 0;left: 0;z-index:200;display: none; }
#cart_container{animation: fadec 0.3s forwards ease-out;width: 40vw;height: 100vh;;background-color: rgb(238, 238, 238);position: fixed;z-index: 300;top: 0;right: 0;display: none; grid-template-rows: 10% 1fr 45%;}
@keyframes fadec { from {right:-10%; opacity:0.6;} to {right:0%; opacity:1;}}
.body_cart{background-color: rgb(255, 254, 254);overflow: auto;padding-bottom: 15px ;}
.buttons_container{display: grid;grid-template-columns: 1fr 1fr;text-align: center;  padding-bottom: 10px;justify-items: center;}
.header_cart{
    display: grid;
    place-items: center;
    grid-template-columns: 40px 1fr ;
}
.header_cart .title {font-size: 18px;font-weight:600; text-align: center;}
.footer_cart{background-color: white; border-top: 1px solid rgba(231, 231, 231, 0.8);box-shadow:1px 1px 10px rgba(180, 180, 180, 0.4) ;}

.cart_product_container{display: grid;grid-template-columns: 0.5fr 1.3fr 0.3fr 0.3fr;margin-top: 30px;}
.cart_product_img{width: 80px; margin-left: 11px;}
.cart_product_informations{padding-left: 10px;}
.cart_product_img img {width: 100%;object-fit: cover;}
.cart_product_subtitle {text-align: left; }

#retour{background-color: rgba(255, 255, 255, 0) ; color: rgb(53, 53, 53);border: 1px solid rgb(53, 53, 53); padding: 10px;}
#modifier{background-color: rgba(255, 255, 255, 0) ; color: rgb(53, 53, 53);border: 1px solid rgb(53, 53, 53); padding: 10px; }
#confirme_cart{ color: rgb(255, 255, 255); padding: 10px;}
#confirme_cart:hover{background-color:rgb(175, 214, 166)}
#save_cart{display:none;color: rgb(255, 255, 255); padding: 10px;}
.cart_product_icon i {display: block;}
.fa-times {color: rgb(180, 180, 180);}


.invoice_container{text-align: center;margin-top:5px ;}
.total{font-size: 18px;font-weight: 600;color: rgb(31, 32, 32);}
.delivery{color:rgb(96, 97, 97) }
.sous_total{color:rgb(96, 97, 97) }

/************************************  FORMULAIRE **************************************************************/
/***********************************            *************************************************************/
#cart_form{display: none;overflow:auto;background-color: white;}

.input-container{text-align: center;margin-bottom: 10px; margin-top: 10px;}
.input-container input {border: solid 1px #dfdfdfda; padding: 5px; text-align: left;outline-color: none;border-radius: 5px; margin-top:10px; width:85%}
.input-container select {border: solid 1px #dfdfdfda; padding: 10px; text-align: left;outline-color: none; border-radius: 5px;  margin-top:10px; width:85%; 
    -webkit-appearance: button;}

.label{color:#9b9a9a;}
#error{color: red; padding-top: 20px;}


#cat_filter{
    display:none;
}

.analysis_cards{

    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    height: 35%;
    /* width: 88%; */
    padding: 10px;
    grid-gap: 10px;
    place-self: center;
}

.card_info{
    
    place-self: center;
    background-color: rgb(255, 255, 255);
    width: 100%;
    height: 100%;
    margin: 0px 0px;
    place-items: center;
    padding: 15px 20px;
    border-radius: 5px;
    display: flex;
    overflow: hidden;
    justify-content: center;
    transition: all 0.2s;
}

.card_info_content{
    font-size: 18px;
}

.card_info_content .h6 .h3{
    padding-left: -5px !important;
}


.card_info_icon{
    padding: 17px 0px;
    font-size: 25px;
}

.card_info_icon-circle{
    border-radius: 50%;
    display: flex;
    justify-content: center;
    height: 60px;
    width: 60px;
    align-items: center;
    justify-content: center;
}



@media screen and (min-width:800px) and (max-width:1024px){
    #home_page{grid-template-columns: 1fr}
    .navbar{
        padding: 0px;
        grid-template-columns: 80px 1fr 80px;
    }
    .logo{
        width: 180px;
    }
    /* .card_group{grid-template-columns: 1fr} */
    .menu{display:none}
    .sidebar_icon{display: block;}
    
    .banner{
        grid-template-columns: 1fr 1fr;
    }
    .title_section {
        
        left: 60px;
    }

    .cards_container{
        grid-template-columns: 1fr 1fr;

    
    }
    .info_container{
        grid-template-columns: 1fr !important;
        }
    .info_container2{
        grid-template-columns: 1fr !important;
        padding-top: 0px !important;    
        margin-left: 0px !important;
        margin-right: 0px !important;
        }
        
    .menu_footer {
        grid-template-columns: 1fr ;
        grid-gap: 10px
    }
    .ending_footer {
        
        grid-template-columns: 1fr ;
    }

    .mycontainer_form {
        margin-right: 40px;
        margin-left: 40px;
        margin-top: 10px;
    }
    
   
}
@media screen and (min-width:414px) and (max-width:800px){
    #home_page{grid-template-columns: 1fr}
    .navbar{
        padding: 0px;
        grid-template-columns: 80px 1fr 80px;
    }
    .logo{
        width: 180px;
    }
    /* .card_group{grid-template-columns: 1fr} */
    .menu{display:none}
    .sidebar_icon{display: block;}
    .circle{display: none;}
    .banner{
        grid-template-columns: 1fr 1fr;
    }
    .title_section {
        
        left: 60px;
    }

    .cards_container{
        grid-template-columns: 1fr 1fr;

    
    }
    .info_container{
        grid-template-columns: 1fr !important;
        }
    .info_container2{
        grid-template-columns: 1fr !important;
        padding-top: 0px !important;    
        margin-left: 0px !important;
        margin-right: 0px !important;
        }
        
    .menu_footer {
        grid-template-columns: 1fr ;
        grid-gap: 10px
    }
    .ending_footer {
        
        grid-template-columns: 1fr ;
    }

    .mycontainer_form {
        margin-right: 40px;
        margin-left: 40px;
        margin-top: 10px;
    }
    #boutique_page{
        grid-template-columns: 1fr;
    }
    #cat_filter{
        display:block;
    }
    .filter_section{
        display:none;
    }

    .filter_head {
        padding-top: 5px;
        grid-template-columns: 1fr 1fr;
        grid-gap: 5px;
    }

    .cards_container{
        grid-template-columns: 1fr 1fr;
        grid-gap: 10px;
        padding: 5px;
        margin-top: 10px;
        margin-bottom: 10px;
    }

    .card_product{
        width:250px;
        padding:2px;
        
    }
    .card_product_boutique{
        width:250px;
        padding:2px;
        
    }
    .card_product_promo{
        width:250px;
        padding:2px;
        
    }

    .orderby{
        width:225px;
    }
    .research_section{
        width: 225px
    }
    .research_section input{
        width: 180px
    }
    .details_product{
        grid-template-columns: 1fr;
        
    }

    #product_page{
        grid-template-rows: 1fr;
    }
    #cart_container{width: 100vw; height: 100vh;}
}



@media screen and (min-width:0px) and (max-width:414px){
    #home_page{grid-template-columns: 1fr}
    .navbar{
        padding: 0px;
        grid-template-columns: 80px 1fr 80px;
    }
    .logo{
        width: 180px;
    }
    .menu{display:none}
    .sidebar_icon{display: block;}
    .circle{display: none;}
    .banner{
        grid-template-columns: 1fr;
    }
    .title_section {
        top: 207px;
        left: 60px;
    }
    .mycontainer_photo{
  
        width:50% !important;
        
     }
     #about_us .mycontainer_text {
    
    padding-left: 0px !important;
}
    .info_container{
        grid-template-columns: 1fr !important;
        }
    .info_container2{
        grid-template-columns: 1fr !important;
        padding-top: 0px !important;    
        margin-left: 0px !important;
        margin-right: 0px !important;
        }
    
    #cat_filter{
        display:block;
    }
    .filter_section{
        display:none;
    }

    .cards_container{
        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-gap: 20px;
        justify-items: center;
        padding: 20px;
    
    }
    .menu_footer {
        grid-template-columns: 1fr ;
    }
    .ending_footer {
        
        grid-template-columns: 1fr ;
    }
    #promotion_page {
        grid-template-columns: 1fr;
        
    }
    .mycontainer_form {
        margin-right: 40px;
        margin-left: 40px;
        margin-top: 10px;
    }
    
    #boutique_page{
        grid-template-columns: 1fr;
    }
    #cat_filter{
        display:block;
    }
    .filter_section{
        display:none;
    }
    .products_section {
        display: grid;
        grid-template-rows: 1fr;
    }

    .filter_head {
       display: grid;
        grid-template-columns: 1fr;
        place-items: center;
        grid-gap: 6px;
        padding: 5px;
    
    }
    
    .cards_container{
        grid-template-columns: 1fr ;
    }
    .cards_container2{
        grid-template-columns: 1fr ;
    }

    .orderby{
        width:225px;
    }
    .research_section{
        width: 225px
    }
    .research_section input{
        width: 180px
    }

    .details_product{
        grid-template-columns: 1fr;
        
    }

    #product_page{
        grid-template-rows: 1fr;
    }
    #cart_container{width: 100vw; grid-template-rows: 10% 1fr 50%; height: 100vh;}

    .analysis_cards{
        height: 60%;
        width: 90%;
        grid-template-columns: 1fr 1fr;
    }
    
    .input-group{grid-template-columns: 1fr;place-items: center;}
    .small_item_img {
    display: none;}
    .item_body{
        padding-left:20px;
    }
}


.searchBox {
    position: absolute;
    top: 20%;
    left: 83%;
    transform:  translate(-80%,20%);
    /* background: #2f3640; */
    height: 40px;
    border-radius: 40px;
    padding: 5px;

}

.searchBox:hover > .searchInput {
    width: 120px;
    padding: 0 2px;
}

.searchBox:hover > .searchButton {
  background: none;
  color : #2f3640;
}

.searchButton {
    color: black;
    float: right;
    width: 40px;
    height: 40px;
    background: none;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 17px;
    transition: 0.4s;
}

.searchInput {
    border:none;
    background: none;
    outline:none;
    float:left;
    padding: 0;
    color: white;
    font-size: 16px;
    transition: 0.4s;
    line-height: 40px;
    width: 0px;

}

.mycontainer{display: grid; grid-template-rows: 100px 1fr ;}
.mycontainer_title{font-size: 27px; font-weight: 700;color: rgb(73, 73, 73); margin: 25px;text-align: center; }
.mycontainer_text{color:rgb(104, 104, 104);font-size: 25; margin: 40px}
.mycontainer_form{color:rgb(104, 104, 104);font-size: 25; margin-right: 40px; margin-top:5px}
.animatable{opacity:0; }

/************************************  ABOUT US  **************************************************************/
/***********************************            *************************************************************/

#test{color: #9b9a9a;}

#about_us{margin-top: 40px;}

#about_us .mycontainer_title{padding: 0px; margin: 0px;color: #858585;font-weight: 500;}
#about_us .mycontainer_text{text-align: left; padding-left:40px} 
.info_container{display: grid; grid-template-columns: 1fr 1fr; padding-top: 20px;}
.info_container2{display: grid; grid-template-columns: 1fr; padding-top: 20px;    margin-left: 80px;
    margin-right: 40px;}
.mycontainer_media iframe {box-shadow:2px 2px 10px rgba(87, 87, 87, 0.4); margin-top: 25px;}
.mycontainer_media{justify-self: center;}

.mycontainer_photo{
    padding: 5px;
    width:40%;
    justify-self: center;
}
.mycontainer_photo img{
    max-width: 100%;
    max-height: 100%;
    display: block; /* remove extra space below image */
}


.social_media_icon_container{padding-top: 50px;}


@media screen and (max-width: 620px) {
.searchBox:hover > .searchInput {
    width: 150px;
    padding: 0 6px;
}
}

/************************************  POPUP  **************************************************************/
/***********************************            *************************************************************/



.popup_container{animation: fade 0.5s forwards ease-out; width:500px;height: 350px;background-color:white;  border-radius:15px; position: fixed;display: none;z-index: 400;top: 25%; left: 25%;text-align: center;}
.popup_body{padding-top: 40px;text-align: -webkit-center;}
.popup_icon{margin-bottom: 35px; color: #02cc97;}
.popup_message{color: rgb(73, 73, 73);font-size: 22px; font-weight: 700;}
#close{margin-top: 100px;background-color: rgba(255, 255, 255, 0);border: 1px solid rgb(53, 53, 53); padding: 0px; padding-top: 8px;color: rgb(53, 53, 53);width: 50%;}
#close:hover{background-color: rgba(53, 53, 53, 0.753);color: white;}

/************************************  CANTACT US  **************************************************************/
/***********************************            *************************************************************/

#form_login{background-color: white;text-align: left;padding: 25px; display: grid;  grid-template-rows: 1fr;}
.form_login_container{
    width: 100%;
}


.input_container{padding:10px;color: rgb(90, 89, 89); }
.title{padding-left: 9px}
.input_container input {border-bottom: solid 2px rgb(148, 146, 146);color: gray;height: 45px;width: 100%; outline: none; border-top:none; border-left:none; border-right: none;}
.input_container input:hover { 
border-bottom-color: #02cc97;
}
.input_container textarea {border-bottom: solid 2px rgb(148, 146, 146);color: gray;width: 100%; outline: none; border-top:none; border-left:none; border-right: none;}
.input_container textarea:hover { 
border-bottom-color: #02cc97;
}
.button_container{display: grid;place-items: center;width: 100%;padding: 10px 0px; color: honeydew;}



.card{width: 265px; height:410px;margin-right:15px; border: none; box-shadow:2px 2px 10px rgba(87, 87, 87, 0.4);}
.empty-card{background:#F3F3F8; border-radius:7px; min-width: 280px;min-height: 358px;}

* {box-sizing:border-box}

/* Slideshow container */
.slideshow-container {
  max-width: 1000px;
  position: relative;
  margin: auto;
}

/* Hide the images by default */
.mySlides {
  display: none;
  padding: 10px;
  place-items:center
}

/* Next & previous buttons */
.prev, .next {
  cursor: pointer;
  position: absolute;
  top: 50%;
  width: auto;
  margin-top: -22px;
  padding: 4px;
  margin: -13px;
  color: grey;
  font-weight: bold;
  font-size: 28px;
  transition: 0.6s ease;
  border-radius: 0 3px 3px 0;
  user-select: none;
}

/* Position the "next button" to the right */
.next {
  right: 0;
  border-radius: 3px 0 0 3px;
}

/* On hover, add a black background color with a little bit see-through */


/* Caption text */
.text {
  color: #f2f2f2;
  font-size: 15px;
  padding: 8px 12px;
  position: absolute;
  bottom: 8px;
  width: 100%;
  text-align: center;
}

/* Number text (1/3 etc) */
.numbertext {
  color: #f2f2f2;
  font-size: 12px;
  padding: 8px 12px;
  position: absolute;
  top: 0;
}

/* The dots/bullets/indicators */
.dot {
  cursor: pointer;
  height: 15px;
  width: 15px;
  margin: 0 2px;
  background-color: #bbb;
  border-radius: 50%;
  display: inline-block;
  transition: background-color 0.6s ease;
}

.popup {
    display: none; /* Hidden by default */
    position: fixed; /* Stay in place */
    z-index: 1; /* Sit on top */
    padding-top: 200px; /* Location of the box */
    left: 0;
    top: 0;
    width: 100%; /* Full width */
    height: 100%; /* Full height */
    overflow: auto; /* Enable scroll if needed */
    background-color: rgb(0,0,0); /* Fallback color */
    background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
  }

  .popup .popup-content {
    background-color: #fefefe;
    margin: auto;
    padding: 20px;
    border: 1px solid #888;
    width: 50%;
    height: 30%;
    display: grid;
    grid-template-rows: 1fr 40%;

  }
 .popup-content .popup_footer{display: grid;place-items: center;background-color: white; padding: 0% ; }
/* Fading animation */
.fade {
  -webkit-animation-name: fade;
  -webkit-animation-duration: 1.5s;
  animation-name: fade;
  animation-duration: 1.5s;
}

@-webkit-keyframes fade {
  from {opacity: .4}
  to {opacity: 1}
}

@keyframes fade {
  from {opacity: .4}
  to {opacity: 1}
}