/*
Theme Name: Ludus
Author: ahfront
Description: Ludus - is complete multipurpose polish eCommerce template built with
best practices. It will be perfect solution for your current or future shop, customizable
into any store contains responsiveness & great UI. Well tested on compatible browsers.
The template contains 40+ HTML files, 3 Homepages, 3 Header Styles, 12 Dashboard Pages,
3 Product Pages, 7 Shop Pages, 5 Blog Pages, Box mode and generated 10 Color variations but could
create unlimited colors.
Version: 1.0.0
Tags: one-column, two-columns, three-columns, four-columns, right-sidebar,
custom-colors, box-mode, custom-header, custom-menu, custom-logo, featured-images
*/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
1.0 Base Styles
2.0 Typography
3.0 Pre-configured styles
4.0 Layout Utility Styles
5.0 Components
6.0 Header
  6.1 Primary Nav
  6.2 Secondary Nav
9.0 About-Page
10.0 Contact-Page
11.0 Cart-Wishlist-Pages
12.0 Empty-404-Pages
13.0 Checkout-Page
14.0 Signin Signup Lost Password-Page
15.0 FAQ-Page
16.0 Dashboard-Pages
17.0 Blog-Pages
18.0 Product-Detail-Pages
19.0 Shop-Pages
20.0 Vendor Extension Pages
  20.1 Bootstrap
  20.2 jquery.shopnav
  20.3 Owl-Carousel
  20.4 jquery.scrollUp
  20.5 Slick Carousel

--------------------------------------------------------------*/
/*--------------------------------------------------------------
1.0 Base Styles
--------------------------------------------------------------*/
/**
 * Setup box-sizing
 */
 html {
  box-sizing: border-box;
  -webkit-tap-highlight-color: transparent; }
  html.boxed {
    background-color: #eee; }

*,
*::before,
*::after {
  box-sizing: inherit; }

/**
 * Set up a background-color and height on the root and body element.
 */
body {
  line-height: 1.5;
  font-size: 1rem;
  -webkit-font-smoothing: antialiased; }

.config {
  overflow: hidden; }

/**
 * Basic styles for headings and paragraph
 */
h1, h2, h3, h4, h5, h6 {
  padding: 0;
  margin: 0; }

h1 {
  font-size: 50px;
  line-height: 50px; }

h2 {
  font-size: 32px;
  line-height: 46px; }

h3 {
  font-size: 18px;
  line-height: 32px; }

h4 {
  font-size: 16px;
  line-height: 30px; }

h5 {
  font-size: 15px;
  line-height: 30px; }

p {
  margin: 0;
  padding: 0;
  font-size: 14px;
  line-height: 24px; }

/**
 * Basic styles for links
 */
a, a:hover, a:focus {
  outline: none;
  text-decoration: none;
  cursor: pointer; }

/**
 * Basic style for image element
 */
img {
  border: 0; }
  img:focus {
    outline: none; }

/**
 * Basic style for iframe element
 */
iframe {
  border: none;
  overflow: hidden; }

iframe[src*="soundcloud"] {
  width: 100%; }

/*--------------------------------------------------------------
Box Module
--------------------------------------------------------------*/
/* Body Element */
@media (min-width: 576px) {
  html.boxed body {
    background-color: #ffffff;
    margin: 0 auto; } }

@media (min-width: 576px) {
  html.boxed body {
    max-width: 546px; } }

@media (min-width: 791px) {
  html.boxed body {
    max-width: 770px; } }

@media (min-width: 1025px) {
  html.boxed body {
    max-width: 990px; } }

@media (min-width: 1230px) {
  html.boxed body {
    max-width: 1200px; } }

/* Header with container Element */
@media (max-width: 1024px) {
  html.boxed header .container {
    padding-left: 20px;
    padding-right: 20px; } }

@media (min-width: 1025px) {
  html.boxed header .container {
    padding-left: 40px;
    padding-right: 40px; } }


@media (min-width: 576px) {
  html.boxed .app-content {
    max-width: 546px; } }

@media (min-width: 791px) {
  html.boxed .app-content {
    max-width: 770px; } }

@media (min-width: 1025px) {
  html.boxed .app-content {
    max-width: 990px; } }

@media (min-width: 1230px) {
  html.boxed .app-content {
    max-width: 1200px; } }


/* App Content with container */
@media (max-width: 1024px) {
  html.boxed .app-content .container {
    padding-left: 20px;
    padding-right: 20px;
    border: 1px solid #dcdcdc; /* Bordure légère de 1px avec une couleur gris clair */
    border-radius: 5px; /* Optionnel : pour arrondir légèrement les coins */
  }
}

@media (min-width: 1025px) {
  html.boxed .app-content .container {
    padding-left: 40px;
    padding-right: 40px;
    border: 1px solid #dcdcdc; /* Bordure légère de 1px avec une couleur gris clair */
    border-radius: 5px; /* Optionnel : pour arrondir légèrement les coins */
  }
}






/*--------------------------------------------------------------
2.0 Typography
--------------------------------------------------------------*/
/**
 * Basic typography style for copy text
 */
body {
  color: #7f7f7f;
  font-family: "Open Sans", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; }

/*--------------------------------------------------------------
3.0 Pre-configured styles
--------------------------------------------------------------*/
/**
* JavaScript Disabled Page
*/
.no-js #app {
  display: none; }

.app-setting {
  background-color: #ffffff;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  height: 100vh;
  position: fixed;
  z-index: 1000001;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0; }
  .app-setting__wrap {
    text-align: center;
    padding: 2.1875rem;
    background-color: #fbfbfb;
    border-left: 0.1875rem solid steelblue; }
  .app-setting__h1 {
    font-size: 2.0625rem;
    font-weight: 700;
    line-height: 42px;
    color: #333333; }
  .app-setting__text {
    font-size: 0.8125rem;
    color: #ababab; }

/**
* Preloader
*/
.preloader.is-active {
  width: 100%;
  text-align: center;
  height: 100%;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 1000000;
  background: white;
  display: block; }

.preloader {
  display: none; }
  .preloader__wrap {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: center;
        justify-content: center;
    height: 100%; }
  .preloader__img {
    display: block; }

/*
  * Row modifier class
 */
.row--center {
  -ms-flex-pack: center;
      justify-content: center; }

/*
  * Fitvids plugin modifier class
 */
.fluid-width-video-wrapper {
  background-color: #f5f5f5; }

/*
  * Social media classes with property background-color & color.
  * 's' is a prefix and represents a social media class.
 */
/* Facebook */
.s-fb--bgcolor-hover:hover {
  background-color: #4267b2; }

.s-fb--color-hover:hover {
  color: #4267b2; }

.s-fb--color {
  color: #4267b2; }

/* Twitter */
.s-tw--bgcolor-hover:hover {
  background-color: #38A1F3; }

.s-tw--color-hover:hover {
  color: #38A1F3; }

.s-tw--color {
  color: #38A1F3; }

/* instagram */
.s-insta--bgcolor-hover:hover {
  background-color: #B108C8; }

.s-insta--color-hover:hover {
  color: #B108C8; }

.s-insta--color {
  color: #B108C8; }

/* youtube */
.s-youtube--bgcolor-hover:hover {
  background-color: #ED3833; }

.s-youtube--color-hover:hover {
  color: #ED3833; }

.s-youtube--color {
  color: #ED3833; }

/* linkedin */
.s-linked--bgcolor-hover:hover {
  background-color: #0077B5; }

.s-linked--color-hover:hover {
  color: #0077B5; }

.s-linked--color {
  color: #0077B5; }

/* googleplus */
.s-gplus--bgcolor-hover:hover {
  background-color: #dd4b39; }

.s-gplus--color-hover:hover {
  color: #dd4b39; }

.s-gplus--color {
  color: #dd4b39; }

/* Whats App */
.s-wa--color {
  color: #25d366; }

.s-wa--color-hover:hover {
  color: #25d366; }

/*
  * Global classes you can use these classes on elements and components of your application.
  * Remember: Don't confuse your mind with utility classes & Global classes.
  * Utility class has a prefix 'u' that represents root namespace also has a sub-namespace
  * prefix. These are low-level utility classes that make it easy to build complex user interfaces.
  * Global class has a prefix 'gl' and these classes are ready-made styles that you could
  * use on different elements like span, div, h1, h3 and components like button, selectbox. scrollbar etc.
 */
/*
  * Chrome Default Style for scrollbar
 */
.gl-scroll::-webkit-scrollbar {
  height: 8px;
  width: 8px; }

.gl-scroll::-webkit-scrollbar-track {
  background: #eee; }

.gl-scroll::-webkit-scrollbar-thumb {
  background: #888; }

.gl-scroll::-webkit-scrollbar-thumb:hover {
  background: #555; }

/*
  * Global Rating Style apply on any div that has `i` element as children
 */
.gl-rating-style > i {
  margin-left: 2px;
  color: #ff9600; }
  .gl-rating-style > i:first-child {
    margin-left: 0; }

.gl-rating-style-2 > i {
  margin-left: 2px;
  color: steelblue; }
  .gl-rating-style-2 > i:first-child {
    margin-left: 0; }

/*
  * Signup, Login Social Buttons
 */
.gl-s-api {
  width: 80%;
  margin: 0 auto; }
  .gl-s-api__btn {
    border: none;
    cursor: pointer;
    text-align: center;
    display: block;
    width: 100%;
    padding: 12px;
    color: #ffffff;
    font-size: 14px;
    font-weight: 600;
    transition: background-color 0.5s linear; }
    .gl-s-api__btn:focus {
      outline: 0; }
    .gl-s-api__btn span {
      margin-left: 10px; }
  .gl-s-api__btn--fb {
    background-color: #4267b2; }
    .gl-s-api__btn--fb:hover {
      background-color: #3b5c9f; }
  .gl-s-api__btn--gplus {
    background-color: #dd4b39; }
    .gl-s-api__btn--gplus:hover {
      background-color: #d73925; }

/*
 * Inline Maker 1
  */
.gl-inline {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -ms-flex-align: center;
      align-items: center; }
  .gl-inline div {
    -ms-flex: 1;
        flex: 1;
    margin-right: 14px; }
    .gl-inline div:last-child {
      margin-right: 0; }

/*
* Inline Maker 2
 */
.gl-l-r {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: justify;
      justify-content: space-between; }

/**
  * DOB: Date of Birth Select Box
 */
.gl-dob {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center; }
  .gl-dob .select-box {
    -ms-flex: 1;
        flex: 1;
    margin-right: 8px; }
    .gl-dob .select-box:last-child {
      margin-right: 0; }

.gl-link {
  font-size: 13px;
  font-weight: 600;
  color: steelblue;
  transition: color 0.5s linear; }
  .gl-link:hover {
    color: #fa4400; }

.gl-h1 {
  color: #333333;
  font-size: 18px;
  margin-bottom: 8px; }

.gl-text {
  display: block;
  color: #a0a0a0;
  font-size: 13px; }

.gl-label {
  margin-bottom: 8px;
  display: block;
  color: #333333;
  font-size: 13px;
  font-weight: 600; }

/**
* Global Tag
 */
.gl-tag {
  margin-right: 8px;
  display: inline-block;
  margin-bottom: 10px;
  padding: 5px 13px;
  font-size: 12px;
  font-weight: 600;
  border-radius: 22px; }
  .gl-tag:last-child {
    margin-right: 0; }

/*
* Global Modal Classes
 */
.gl-modal-h1 {
  margin-bottom: 8px;
  line-height: 1;
  display: block;
  color: #333333;
  font-size: 20px;
  font-weight: 600; }

.gl-modal-text {
  color: #a0a0a0;
  font-size: 13px; }

.gl-modal-btn-group {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center; }
  .gl-modal-btn-group button {
    margin-right: 12px; }
    .gl-modal-btn-group button:last-child {
      margin-right: 0; }

@media (max-width: 575px) {
  .gl-inline {
    display: block; }
    .gl-inline div {
      display: block;
      margin-right: 0; }
  .gl-l-r {
    display: block; }
  .gl-dob {
    display: block; }
    .gl-dob .select-box {
      width: 100%;
      margin-bottom: 8px;
      margin-right: 0; }
      .gl-dob .select-box:last-child {
        margin: 0; } }

/**
  * Default Pulse Animation
 */
@-webkit-keyframes mypulse {
  0% {
    box-shadow: 0 0 0 0 #bdc3c7; }
  100% {
    box-shadow: 0 0 0 1.5em rgba(189, 195, 199, 0); } }
@keyframes mypulse {
  0% {
    box-shadow: 0 0 0 0 #bdc3c7; }
  100% {
    box-shadow: 0 0 0 1.5em rgba(189, 195, 199, 0); } }

/*--------------------------------------------------------------
4.0 Layout Utility Styles
--------------------------------------------------------------*/
/**
 * Utility classes for colors:
 * Convey meaning through color with a handful of color utility classes.
 * Includes support for styling links too.
 */
.u-c-brand {
  color: steelblue !important; }

.u-c-secondary {
  color: #333333 !important; }

.u-c-white {
  color: #ffffff !important; }

.u-c-black {
  color: #000000 !important; }

.u-c-grey {
  color: #7f7f7f !important; }

.u-c-silver {
  color: #a0a0a0 !important; }

/*
  * Display Utility
 */
.u-d-block {
  display: block; }


/*
  * Sizing
  * Easily make an element as wide or as tall (relative to its parent) with our width and height utilities.
 */
.u-w-100 {
  width: 100%; }

.u-h-100 {
  height: 100%; }

/**
  * Image Responsive utility classes
 */
.u-img-fluid {
  width: 100%;
  max-width: 100%;
  height: auto; }








/*--------------------------------------------------------------
5.0 Components
--------------------------------------------------------------*/

/* Assurez-vous que les styles du texte sont appliquÃ©s correctement */
.btn--e-brand,
.btn--e-brand .btn-text,
.btn--e-brand-b-2,
.btn--e-brand-b-2 .btn-text,
.btn--e-white-brand,
.btn--e-white-brand .btn-text,
.btn--e-transparent-brand-b-2,
.btn--e-transparent-brand-b-2 .btn-text,
.btn--e-transparent-hover-brand-b-2,
.btn--e-transparent-hover-brand-b-2 .btn-text,
.btn--e-brand-shadow,
.btn--e-brand-shadow .btn-text {
  color: #ffffff; /* Couleur du texte en blanc */
}

/* Style du bouton de marque avec couleur primaire */
.btn--e-brand {
  background-color: #2a7ae2; /* Bleu primaire */
  border: 2px solid #2a7ae2; /* Bordure bleue */
  color: #ffffff; /* Texte blanc */
}

.btn--e-brand:hover {
  background-color: #1e5bb6; /* Bleu plus foncÃ© au survol */
  border-color: #1e5bb6; /* Bordure plus foncÃ©e au survol */
}

/* Bouton de marque avec bordure et couleur primaire */
.btn--e-brand-b-2 {
  background-color: #2a7ae2; /* Bleu primaire */
  border: 2px solid #2a7ae2; /* Bordure bleue */
}

.btn--e-brand-b-2:hover {
  background-color: #1e5bb6; /* Bleu plus foncÃ© au survol */
  border-color: #1e5bb6; /* Bordure bleue plus foncÃ©e */
}

/* Bouton blanc avec bordure et couleur primaire */
.btn--e-white-brand {
  background-color: #ffffff; /* Fond blanc */
  border: 1px solid #2a7ae2; /* Bordure bleue */
  color: #2a7ae2; /* Texte bleu */
}

.btn--e-white-brand:hover {
  background-color: #2a7ae2; /* Bleu primaire au survol */
  color: #ffffff; /* Texte blanc au survol */
}

/* Bouton transparent avec bordure de marque */
.btn--e-transparent-brand-b-2 {
  background-color: transparent; /* Fond transparent */
  border: 2px solid #2a7ae2; /* Bordure bleue */
}

.btn--e-transparent-brand-b-2:hover {
  border-color: #1e5bb6; /* Bordure plus foncÃ©e au survol */
  color: #1e5bb6; /* Texte plus foncÃ© au survol */
}

/* Bouton transparent avec survol de marque */
.btn--e-transparent-hover-brand-b-2 {
  background-color: transparent; /* Fond transparent */
  border: 2px solid #2a7ae2; /* Bordure bleue */
}

.btn--e-transparent-hover-brand-b-2:hover {
  background-color: #2a7ae2; /* Fond bleu au survol */
  color: #ffffff; /* Texte blanc au survol */
}

/* Bouton blanc avec ombre et bordure */
.btn--e-brand-shadow {
  background-color: #2a7ae2; /* Texte bleu */
  border: 1px solid #dee2e6; /* Bordure gris clair */
  color: white; /* Texte blanc */
}

.btn--e-brand-shadow:hover {
  background-color: #2a7ae2; /* Bleu primaire au survol */
  color: #ffffff; /* Texte blanc au survol */
  border-color: #2a7ae2; /* Bordure bleue au survol */
}






/* Style du bouton d'achat similaire au bouton de marque */
.btn--e-achat {
  position: relative; /* Positionner le conteneur pour le texte */
  color: #ffffff; /* Texte blanc */
  border: 1px solid transparent; /* Bordure transparente */
  background-color: #2a7ae2; /* Bleu primaire */
  overflow: hidden; /* Masquer tout dÃ©bordement du texte */
  padding: 10px 20px; /* Padding pour le bouton */
  transition: background-color .5s ease-in; /* Transition fluide pour la couleur de fond */
  transform: translateY(-20%)
}

.btn--e-achat .btn-text {
  display: inline-block; /* Afficher le texte en bloc */
  transition: transform .3s ease-in; /* Transition fluide pour l'agrandissement du texte */
}

.btn--e-achat:hover {
  background-color: #1e5bb6; /* Bleu plus foncÃ© au survol */
}

.btn--e-achat:hover .btn-text {
  transform: scale(1.4); /* Agrandir le texte au survol */
}

/* Bouton d'achat avec bordure et couleur primaire */
.btn--e-achat-b-2 {
  position: relative; /* Positionner le conteneur pour le texte */
  color: #ffffff; /* Texte blanc */
  background-color: #2a7ae2; /* Bleu primaire */
  border: 2px solid #2a7ae2; /* Bordure bleue */
  transition: background-color 0.5s ease-in, border-color 0.5s ease-in; /* Transition fluide pour la couleur de fond et bordure */
}

.btn--e-achat-b-2 .btn-text {
  display: inline-block; /* Afficher le texte en bloc */
  transition: transform .3s ease-in; /* Transition fluide pour l'agrandissement du texte */
}

.btn--e-achat-b-2:hover {
  background-color: #1e5bb6; /* Bleu plus foncÃ© au survol */
  border-color: #1e5bb6; /* Bordure bleue plus foncÃ©e */
}

.btn--e-achat-b-2:hover .btn-text {
  transform: scale(1.4); /* Agrandir le texte au survol */
}

/* Bouton blanc avec bordure et couleur primaire */
.btn--e-achat-white {
  position: relative; /* Positionner le conteneur pour le texte */
  border: 1px solid #2a7ae2; /* Bordure bleue */
  color: #2a7ae2; /* Texte bleu */
  background-color: #ffffff; /* Fond blanc */
  transition: background-color .3s linear, color .3s linear; /* Transition linÃ©aire pour la couleur de fond et texte */
}

.btn--e-achat-white .btn-text {
  display: inline-block; /* Afficher le texte en bloc */
  transition: transform .3s ease-in; /* Transition fluide pour l'agrandissement du texte */
}

.btn--e-achat-white:hover {
  background-color: #2a7ae2; /* Bleu primaire au survol */
  color: #ffffff; /* Texte blanc au survol */
}

.btn--e-achat-white:hover .btn-text {
  transform: scale(1.4); /* Agrandir le texte au survol */
}

/* Bouton transparent avec bordure de marque */
.btn--e-achat-transparent-b-2 {
  position: relative; /* Positionner le conteneur pour le texte */
  color: #ffffff; /* Texte blanc */
  border: 2px solid #2a7ae2; /* Bordure bleue */
  background-color: transparent; /* Fond transparent */
  transition: border-color .5s ease-in, color .3s ease-in; /* Transition fluide pour la couleur de bordure et texte */
}

.btn--e-achat-transparent-b-2 .btn-text {
  display: inline-block; /* Afficher le texte en bloc */
  transition: transform .3s ease-in; /* Transition fluide pour l'agrandissement du texte */
}

.btn--e-achat-transparent-b-2:hover {
  border-color: #1e5bb6; /* Bordure plus foncÃ©e au survol */
  color: #1e5bb6; /* Texte plus foncÃ© au survol */
}

.btn--e-achat-transparent-b-2:hover .btn-text {
  transform: scale(1.4); /* Agrandir le texte au survol */
}

/* Bouton transparent avec survol de marque */
.btn--e-achat-transparent-hover-brand-b-2 {
  position: relative; /* Positionner le conteneur pour le texte */
  color: #ffffff; /* Texte blanc */
  border: 2px solid #2a7ae2; /* Bordure bleue */
  background-color: transparent; /* Fond transparent */
  transition: background-color .1s ease-in, border-color .1s ease-in; /* Transition rapide pour la couleur de fond et bordure */
}

.btn--e-achat-transparent-hover-brand-b-2 .btn-text {
  display: inline-block; /* Afficher le texte en bloc */
  transition: transform .3s ease-in; /* Transition fluide pour l'agrandissement du texte */
}

.btn--e-achat-transparent-hover-brand-b-2:hover {
  background-color: #2a7ae2; /* Fond bleu au survol */
  color: #ffffff; /* Texte blanc au survol */
}

.btn--e-achat-transparent-hover-brand-b-2:hover .btn-text {
  transform: scale(1.4); /* Agrandir le texte au survol */
}

/* Bouton blanc avec ombre et bordure */
.btn--e-achat-white-shadow {
  position: relative; /* Positionner le conteneur pour le texte */
  border: 1px solid #dee2e6; /* Bordure gris clair */
  box-shadow: 1px 2px 8px 0 rgba(0, 0, 0, 0.08); /* Ombre lÃ©gÃ¨re */
  background-color: #ffffff; /* Fond blanc */
  color: #2a7ae2; /* Texte bleu */
  transition: background-color .3s linear, border-color .3s linear; /* Transition linÃ©aire pour les couleurs et la bordure */
}

.btn--e-achat-white-shadow .btn-text {
  display: inline-block; /* Afficher le texte en bloc */
  transition: transform .3s ease-in; /* Transition fluide pour l'agrandissement du texte */
}

.btn--e-achat-white-shadow:hover {
  background-color: #2a7ae2; /* Bleu primaire au survol */
  color: #ffffff; /* Texte blanc au survol */
  border-color: #2a7ae2; /* Bordure bleue au survol */
}

.btn--e-achat-white-shadow:hover .btn-text {
  transform: scale(1.4); /* Agrandir le texte au survol */
}






/* Assurez-vous que les styles du texte sont appliquÃ©s correctement */
.btn--e-achat,
.btn--e-achat .btn-text,
.btn--e-achat-b-2,
.btn--e-achat-b-2 .btn-text,
.btn--e-achat-white,
.btn--e-achat-white .btn-text,
.btn--e-achat-transparent-b-2,
.btn--e-achat-transparent-b-2 .btn-text,
.btn--e-achat-transparent-hover-brand-b-2,
.btn--e-achat-transparent-hover-brand-b-2 .btn-text,
.btn--e-achat-white-shadow,
.btn--e-achat-white-shadow .btn-text {
  color: #ffffff; /* Couleur du texte en blanc */
}

/* Style du bouton d'achat similaire au bouton de marque */
.btn--e-achat {
  position: relative; /* Positionner le conteneur pour le texte */
  color: #ffffff; /* Texte blanc */
  border: 1px solid transparent; /* Bordure transparente */
  background-color: #2a7ae2; /* Bleu primaire */
  overflow: hidden; /* Masquer tout dÃ©bordement du texte */
  padding: 10px 20px; /* Padding pour le bouton */
  transition: background-color .5s ease-in; /* Transition fluide pour la couleur de fond */
}

.btn--e-achat .btn-text {
  display: inline-block; /* Afficher le texte en bloc */
  transition: transform .3s ease-in; /* Transition fluide pour l'agrandissement du texte */
}

.btn--e-achat:hover {
  background-color: #1e5bb6; /* Bleu plus foncÃ© au survol */
}

.btn--e-achat:hover .btn-text {
  transform: scale(1.4); /* Agrandir le texte au survol */
}

/* Bouton d'achat avec bordure et couleur primaire */
.btn--e-achat-b-2 {
  position: relative; /* Positionner le conteneur pour le texte */
  color: #ffffff; /* Texte blanc */
  background-color: #2a7ae2; /* Bleu primaire */
  border: 2px solid #2a7ae2; /* Bordure bleue */
  transition: background-color 0.5s ease-in, border-color 0.5s ease-in; /* Transition fluide pour la couleur de fond et bordure */
}

.btn--e-achat-b-2 .btn-text {
  display: inline-block; /* Afficher le texte en bloc */
  transition: transform .3s ease-in; /* Transition fluide pour l'agrandissement du texte */
}

.btn--e-achat-b-2:hover {
  background-color: #1e5bb6; /* Bleu plus foncÃ© au survol */
  border-color: #1e5bb6; /* Bordure bleue plus foncÃ©e */
}

.btn--e-achat-b-2:hover .btn-text {
  transform: scale(1.4); /* Agrandir le texte au survol */
}

/* Bouton blanc avec bordure et couleur primaire */
.btn--e-achat-white {
  position: relative; /* Positionner le conteneur pour le texte */
  border: 1px solid #2a7ae2; /* Bordure bleue */
  color: #2a7ae2; /* Texte bleu */
  background-color: #ffffff; /* Fond blanc */
  transition: background-color .3s linear, color .3s linear; /* Transition linÃ©aire pour la couleur de fond et texte */
}

.btn--e-achat-white .btn-text {
  display: inline-block; /* Afficher le texte en bloc */
  transition: transform .3s ease-in; /* Transition fluide pour l'agrandissement du texte */
}

.btn--e-achat-white:hover {
  background-color: #2a7ae2; /* Bleu primaire au survol */
  color: #ffffff; /* Texte blanc au survol */
}

.btn--e-achat-white:hover .btn-text {
  transform: scale(1.4); /* Agrandir le texte au survol */
}

/* Bouton transparent avec bordure de marque */
.btn--e-achat-transparent-b-2 {
  position: relative; /* Positionner le conteneur pour le texte */
  color: #ffffff; /* Texte blanc */
  border: 2px solid #2a7ae2; /* Bordure bleue */
  background-color: transparent; /* Fond transparent */
  transition: border-color .5s ease-in, color .3s ease-in; /* Transition fluide pour la couleur de bordure et texte */
}

.btn--e-achat-transparent-b-2 .btn-text {
  display: inline-block; /* Afficher le texte en bloc */
  transition: transform .3s ease-in; /* Transition fluide pour l'agrandissement du texte */
}

.btn--e-achat-transparent-b-2:hover {
  border-color: #1e5bb6; /* Bordure plus foncÃ©e au survol */
  color: #1e5bb6; /* Texte plus foncÃ© au survol */
}

.btn--e-achat-transparent-b-2:hover .btn-text {
  transform: scale(1.4); /* Agrandir le texte au survol */
}

/* Bouton transparent avec survol de marque */
.btn--e-achat-transparent-hover-brand-b-2 {
  position: relative; /* Positionner le conteneur pour le texte */
  color: #ffffff; /* Texte blanc */
  border: 2px solid #2a7ae2; /* Bordure bleue */
  background-color: transparent; /* Fond transparent */
  transition: background-color .1s ease-in, border-color .1s ease-in; /* Transition rapide pour la couleur de fond et bordure */
}

.btn--e-achat-transparent-hover-brand-b-2 .btn-text {
  display: inline-block; /* Afficher le texte en bloc */
  transition: transform .3s ease-in; /* Transition fluide pour l'agrandissement du texte */
}

.btn--e-achat-transparent-hover-brand-b-2:hover {
  background-color: #2a7ae2; /* Fond bleu au survol */
  color: #ffffff; /* Texte blanc au survol */
}

.btn--e-achat-transparent-hover-brand-b-2:hover .btn-text {
  transform: scale(1.4); /* Agrandir le texte au survol */
}

/* Bouton blanc avec ombre et bordure */
.btn--e-achat-white-shadow {
  position: relative; /* Positionner le conteneur pour le texte */
  border: 1px solid #dee2e6; /* Bordure gris clair */
  box-shadow: 1px 2px 8px 0 rgba(0, 0, 0, 0.08); /* Ombre lÃ©gÃ¨re */
  background-color: #ffffff; /* Fond blanc */
  color: #2a7ae2; /* Texte bleu */
  transition: background-color .3s linear, border-color .3s linear; /* Transition linÃ©aire pour les couleurs et la bordure */
}

.btn--e-achat-white-shadow .btn-text {
  display: inline-block; /* Afficher le texte en bloc */
  transition: transform .3s ease-in; /* Transition fluide pour l'agrandissement du texte */
}

.btn--e-achat-white-shadow:hover {
  background-color: #2a7ae2; /* Bleu primaire au survol */
  color: #ffffff; /* Texte blanc au survol */
  border-color: #2a7ae2; /* Bordure bleue au survol */
}

.btn--e-achat-white-shadow:hover .btn-text {
  transform: scale(1.4); /* Agrandir le texte au survol */
}


/* Fin de section Button Component */







.add-to-cart-btn {
  position: relative; /* Positionner le bouton */
  color: #ffffff; /* Texte blanc */
  border: 1px solid transparent; /* Bordure transparente */
  background-color: #2a7ae2; /* Bleu primaire */
  overflow: hidden; /* Masquer tout dÃ©bordement du texte */
  padding: 10px 35px; /* Largeur augmentÃ©e avec padding horizontal de 70px et hauteur rÃ©duite avec padding vertical de 5px */
  transition: background-color 0.5s ease-in; /* Transition fluide pour la couleur de fond */
  z-index: 1; /* Ordre par dÃ©faut */
  white-space: nowrap; /* EmpÃªcher le retour Ã  la ligne du texte */
  border-radius: 15px;
  
}

.add-to-cart-btn .btn-text {
  display: inline-block; /* Afficher le texte en bloc */
  transition: transform .3s ease-in; /* Transition fluide pour l'agrandissement du texte */
}

.add-to-cart-btn:hover {
  background-color: #1e5bb6; /* Bleu plus foncÃ© au survol */
  z-index: 10; /* Monter le bouton au-dessus des autres Ã©lÃ©ments lors du survol */
}

.add-to-cart-btn:hover .btn-text {
  transform: scale(1.4); /* Agrandir le texte au survol */
}





.amazon-pay-btn {
  position: relative;
  color: #ffffff;
  border: 1px solid transparent;
  background-color: #2a7ae2;
  overflow: hidden;
  padding: 10px 35px;
  transition: background-color 0.5s ease-in;
  z-index: 1;
  white-space: nowrap;
  border-radius: 10px;
  text-decoration: none; /* Enlever la soulignement du lien */
  transform: translateX(-15px); /* Décaler le bouton vers la gauche */
}

.amazon-pay-btn .btn-text {
  display: inline-block;
  transition: transform .3s ease-in;
}

.amazon-pay-btn:hover {
  background-color: #1e5bb6;
  z-index: 10;
}

.amazon-pay-btn:hover .btn-text {
  transform: scale(1.4);
}










/* Countdown Component */
.countdown--style-special {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: center;
      justify-content: center; }
  .countdown--style-special .countdown__content {
    margin: 0 6px 10px;
    text-align: center;
    padding: 5px 24px;
    background-color: rgba(255, 255, 255, 0.98); }
  .countdown--style-special .countdown__value {
    font-size: 35px;
    font-weight: 600;
    display: block;
    color: #333333; }
  .countdown--style-special .countdown__key {
    font-size: 12px;
    font-weight: 600;
    display: block;
    color: steelblue; }

.countdown--style-banner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: center;
      justify-content: center; }
  .countdown--style-banner .countdown__content {
    margin: 0 10px 10px;
    text-align: center;
    padding: 5px 24px;
    background-color: #333333; }
  .countdown--style-banner .countdown__value {
    font-size: 48px;
    font-weight: 600;
    display: block;
    color: #ffffff; }
  .countdown--style-banner .countdown__key {
    font-size: 12px;
    font-weight: 600;
    display: block;
    color: #ffffff; }

.countdown--style-section {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .countdown--style-section .countdown__content {
    margin: 18px 20px 20px 0;
    padding: 8px 22px;
    box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.06);
    background-color: rgba(255, 255, 255, 0.98); }
  .countdown--style-section .countdown__value {
    font-size: 26px;
    font-weight: 600;
    display: block;
    color: #333333; }
  .countdown--style-section .countdown__key {
    font-size: 10px;
    font-weight: 600;
    display: block;
    color: steelblue; }

/* Input-Counter Component */
.input-counter {
  position: relative;
  display: inline-block;
  max-width: 132px;
  min-width: 132px; }
  .input-counter__text {
    border-radius: 25px;
    display: block;
    width: 100%;
    height: 50px;
    font-size: 14px;
    font-weight: 600;
    text-align: center; }
    .input-counter__text:focus {
      outline: 0; }
  .input-counter--text-primary-style {
    color: #333333;
    transition: all 0.6s linear;
    border: 2px solid transparent;
    background-color: #f1f1f1; }
    .input-counter--text-primary-style:focus {
      background-color: transparent;
      border-color: steelblue; }
  .input-counter__minus, .input-counter__plus {
    top: 0;
    display: inline-block;
    font-size: 10px;
    cursor: pointer;
    position: absolute;
    width: 50px;
    line-height: 50px;
    height: 100%;
    text-align: center;
    color: #7f7f7f;
    transition: color 0.5s; }
    .input-counter__minus:hover, .input-counter__plus:hover {
      color: #333333; }
  .input-counter__minus {
    left: 0; }
  .input-counter__plus {
    right: 0; }

/* Input Text Component */
.input-text {
  font-size: 12px;
  background-clip: padding-box;
  padding: 0 18px;
  height: 40px; }
  .input-text--border-radius {
    border-radius: 25px; }
  .input-text--primary-style {
    color: #333333;
    transition: all 0.6s linear;
    border: 2px solid transparent;
    background-color: #f1f1f1; }
    .input-text--primary-style:focus {
      background-color: transparent;
      border-color: steelblue; }
  .input-text--style-1 {
    color: #5c636c;
    transition: all 0.6s linear;
    border: 1px solid transparent;
    background-color: #f1f1f1; }
    .input-text--style-1:focus {
      box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.1);
      background-color: transparent;
      border-color: #eee; }
  .input-text--style-2 {
    color: #5c636c;
    border: 1px solid transparent;
    background-color: #f1f1f1;
    transition: all 0.6s linear; }
    .input-text--style-2:focus {
      background-color: #ffffff; }
  .input-text--only-white {
    border: 1px solid transparent;
    color: #333333;
    background-color: #ffffff; }
  .input-text:focus {
    outline: 0; }

.input-text:disabled {
  background-color: #cecece; }

input::-ms-clear {
  display: none; }

/* Preload Aspect Ratio Component */
/*
  * Example 1 For Square: <a class="aspect aspect--bg-grey aspect--square u-d-block"><img src="a.jpg" class="aspect__img" alt=""></a>
  * Example 2 For Non Square: <div class="aspect aspect--bg-grey aspect--1286-890"><img src="a.jpg" class="aspect__img" alt=""></div>
 */
/*
  * Some Points to use Aspect Ratio Component classes:
  * Make sure the element on which it adds, it would be a block or inline-block element,
  * if it is not then you could add utility class 'u-d-block', 'u-d-inline-block' or you
  * could directly target that element with CSS to make inline or block.
  * By default '.aspect--square' or '.aspect--16:9: resolution' class takes height according to
  * the height of the child image element.
  * But if the parent element is a flex element then aspect ratio technique doesn't work because
  * '.aspect--square' or '.aspect--16:9: resolution' contains padding top/bottom property with a
  * percentage value.
  * There are also some cases you do not want to have '.aspect--square' or '.aspect--16:9: resolution'
  * class to take width & height that match with child image element.
  * Then you could append CSS class or directly target that parent element with CSS and
  * set your custom width & height.
  * If the image has aspect ratio square, i.e. 4:3 then you would add class '.aspect--square'
  * on the element. This class has a padding-bottom:100% property.
  * 100% means to take the entire height of the image.
  * If the image doesn't have aspect ratio square then to make a custom class
  * like '.aspect--imageWidth-imageHeight' and use ready-made sass function() nonsquare(imageWidth,imageHeight)
  * that returns padding-bottom property with the value calculated according to image resolution.
  * You could also change the background-color of placeholder according to your own choice.
  * By default, only 2 classes are generated.
 */
.aspect {
  position: relative; }

.aspect--bg-grey {
  background-color: #ffffff; }

.aspect--bg-grey-fb {
  background-color: #ffffff; }

.aspect--square {
      padding-bottom: 0; /* RÃ©duit le padding */
}


/*
  * Add this class inside '.aspect' child image element. If you want to make an image responsive then
  * you can use utility u-img-fluid class.
 */
.aspect__img {
  position: absolute;
  width: 100%;
  height: 100%; }

/* Product Component */
.product-o {
  padding: 20px;
  background-color: #ffffff; }

.product-o--hover-off {
  box-shadow: 0 0 21px 0 rgba(0, 0, 0, 0.1); }

.product-o--radius {
  border-radius: 14px; }

.product-o--hover-on {
  transition: all 0.4s ease-in-out; }
  .product-o--hover-on:hover {
    box-shadow: 0 0 21px 0 rgba(0, 0, 0, 0.1); }

.product-o:hover .product-o__wrap:before {
  opacity: 1; }

.product-o:hover .product-o__action-wrap {
  opacity: 1;
  -webkit-transform: translateY(-50%) scale(1);
          transform: translateY(-50%) scale(1); }

.product-o:hover .product-o__action-list > li {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0); }

.product-o__wrap {
  position: relative; }
  .product-o__wrap:before {
    content: "";
    background: rgba(0, 0, 0, 0.6);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    opacity: 0;
    transition: all 400ms cubic-bezier(0.175, 0.885, 0.32, 1.275); }

.product-o__action-wrap {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 0;
  opacity: 0;
  z-index: 2;
  -webkit-transform: translateY(-50%) scale(0.8);
          transform: translateY(-50%) scale(0.8);
  transition: all 0.2s ease 0s; }

.product-o__action-list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0;
  padding: 0;
  list-style: none; }
  .product-o__action-list > li {
    margin: 0 4px 6px;
    opacity: 0;
    -webkit-transform: translateY(50%);
            transform: translateY(50%);
    transition: all 0.3s ease 0.1s; }
    .product-o__action-list > li > a {
      display: block;
      width: 35px;
      text-align: center;
      border-radius: 50%;
      height: 35px;
      line-height: 35px;
      background-color: rgba(255, 255, 255, 0.25);
      color: #ffffff;
      font-size: 12px;
      transition: all 0.3s ease 0s; }
      .product-o__action-list > li > a:hover {
        background-color: #333333;
        color: #ffffff; }

.product-o__category {
  display: block;
  margin-top: 4px; }
  .product-o__category > a {
    color: #a0a0a0;
    transition: color 0.5s;
    font-size: 12px; }
    .product-o__category > a:hover {
      color: steelblue; }

.product-o__name > a {
  color: #333333;
  font-size: 14px;
  font-weight: 600;
  transition: color 0.5s; }
  .product-o__name > a:hover {
    color: steelblue; }

.product-o__rating {
  margin-bottom: 4px; }
  .product-o__rating i {
    font-size: 12px; }

.product-o__review {
  margin-left: 4px;
  font-size: 12px;
  color: #a0a0a0; }

.product-o__price {
  display: block;
  color: #333333;
  font-size: 14px;
  font-weight: 600; }

.product-o__discount {
  font-weight: 600;
  margin-left: 30px;
  color: steelblue;
  font-size: 14px;
  text-decoration: line-through; }

.product-o__countdown-wrap {
  margin-top: 16px; }

.product-o__special-count-wrap {
  position: absolute;
  width: 100%;
  bottom: 20px; }

.x-product {
  padding: 20px;
  border-radius: 6px;
  transition: -webkit-transform 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  transition: transform 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  transition: transform 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55), -webkit-transform 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.06); }
  .x-product .row {
    -ms-flex-align: center;
        align-items: center; }
  .x-product__feature-list {
    margin: 0;
    padding: 0;
    list-style: none; }
  .x-product:hover {
    -webkit-transform: translateY(-6px);
            transform: translateY(-6px); }

.feature {
  margin-bottom: 20px; }
  .feature__name {
    color: #333333;
    font-size: 13px;
    font-weight: 600;
    display: block; }
  .feature__value {
    color: #7f7f7f;
    font-size: 12px;
    display: block; }

.product-l {
  display: -ms-flexbox;
  display: flex; }
  .product-l__img-wrap {
    margin-right: 20px; }
  .product-l__rating i {
    font-size: 12px; }
  .product-l__link {
    width: 110px;
    height: 110px; }
  .product-l__category {
    display: block; }
    .product-l__category > a {
      color: #a0a0a0;
      transition: color 0.5s;
      font-size: 12px; }
      .product-l__category > a:hover {
        color: steelblue; }
  .product-l__name {
    display: block;
    margin-bottom: 4px; }
    .product-l__name > a {
      color: #333333;
      font-size: 14px;
      font-weight: 600;
      transition: color 0.5s; }
      .product-l__name > a:hover {
        color: steelblue; }
  .product-l__price {
    display: block;
    color: #333333;
    font-size: 14px;
    font-weight: 600; }
  .product-l__discount {
    font-weight: 600;
    margin-left: 15px;
    color: steelblue;
    font-size: 14px;
    text-decoration: line-through; }

.product-o2 {
  background-color: #ffffff;
  box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.06); }
  .product-o2__wrap {
    position: relative;
    overflow: hidden; }
  .product-o2__action-wrap {
    position: absolute;
    z-index: 2;
    opacity: 0;
    transition: all 0.6s linear;
    left: 20px;
    top: 20px; }
  .product-o2__action-list {
    margin: 0;
    padding: 0;
    text-align: center;
    list-style: none; }
    .product-o2__action-list > li {
      margin-bottom: 6px; }
      .product-o2__action-list > li > a {
        display: inline-block;
        width: 35px;
        text-align: center;
        border-radius: 50%;
        height: 35px;
        line-height: 35px;
        background-color: steelblue;
        color: #ffffff;
        font-size: 12px;
        transition: all 0.3s ease 0.1s; }
        .product-o2__action-list > li > a:hover {
          background-color: #ffffff;
          color: steelblue; }
      .product-o2__action-list > li:last-child {
        margin-bottom: 0; }
  .product-o2__countdown-wrap {
    position: absolute;
    right: 0;
    top: 0;
    background-color: rgba(0, 0, 0, 0.6);
    width: 60px;
    height: 100%; }
  .product-o2__img {
    transition: all 0.6s ease-in-out;
    -webkit-transform: scale(1);
            transform: scale(1); }
  .product-o2__content {
    padding: 10px; }
  .product-o2__category {
    display: block;
    margin-top: 4px; }
    .product-o2__category > a {
      color: #a0a0a0;
      transition: color 0.5s;
      font-size: 12px; }
      .product-o2__category > a:hover {
        color: steelblue; }
  .product-o2__name {
    display: block; }
    .product-o2__name > a {
      color: #333333;
      font-size: 14px;
      font-weight: 600;
      transition: color 0.5s; }
      .product-o2__name > a:hover {
        color: steelblue; }
  .product-o2__rating {
    margin-bottom: 4px; }
    .product-o2__rating i {
      font-size: 12px; }
  .product-o2__review {
    margin-left: 4px;
    font-size: 12px;
    color: #a0a0a0; }
  .product-o2__price {
    display: block;
    color: #333333;
    font-size: 14px;
    font-weight: 600; }
  .product-o2__discount {
    font-weight: 600;
    margin-left: 30px;
    color: #333333;
    font-size: 14px;
    text-decoration: line-through; }

.product-o2:hover .product-o2__img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1); }

.product-o2:hover .product-o2__action-wrap {
  opacity: 1; }

.product-r {
  border-radius: 15px;
  overflow: hidden;
  background-color: #ffffff;
  transition: -webkit-transform 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  transition: transform 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  transition: transform 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55), -webkit-transform 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  box-shadow: 2px 2px 8px 3px rgba(36, 37, 38, 0.08); }
  .product-r__container {
    position: relative; }
  .product-r__ribbon-wrap {
    position: absolute;
    top: 0;
    right: 25px; }
  .product-r__action-wrap {
    width: 100%;
    position: absolute;
    top: 50%;
    left: 0;
    opacity: 0;
    z-index: 2;
    -webkit-transform: translateY(-50%) scale(0.8);
            transform: translateY(-50%) scale(0.8);
    transition: all 0.2s ease 0s; }
  .product-r__action-list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 0;
    padding: 0;
    list-style: none; }
    .product-r__action-list > li {
      margin: 0 4px 6px;
      opacity: 0;
      -webkit-transform: translateY(50%);
              transform: translateY(50%);
      transition: all 0.3s ease 0.1s; }
      .product-r__action-list > li > a {
        display: block;
        width: 35px;
        text-align: center;
        border-radius: 50%;
        height: 35px;
        line-height: 35px;
        background-color: #ffffff;
        color: steelblue;
        box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.06);
        font-size: 12px;
        transition: all 0.3s ease 0s; }
        .product-r__action-list > li > a:hover {
          background-color: #ffffff;
          color: steelblue; }
  .product-r__info-wrap {
    padding: 14px; }
  .product-r__category {
    display: block;
    margin-bottom: 2px; }
    .product-r__category > a {
      color: #a0a0a0;
      transition: color 0.5s;
      font-size: 12px; }
      .product-r__category > a:hover {
        color: steelblue; }
  .product-r__n-p-wrap {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between;
    margin-bottom: 6px; }
  .product-r__name, .product-r__price {
    -ms-flex: 0 1 auto; }
  .product-r__name {
    display: block; }
    .product-r__name > a {
      color: #333333;
      font-size: 14px;
      font-weight: 600;
      transition: color 0.5s; }
      .product-r__name > a:hover {
        color: steelblue; }
  .product-r__price {
    display: block;
    font-weight: 600;
    color: steelblue;
    font-size: 16px; }
  .product-r__description {
    margin-bottom: 6px;
    display: block;
    color: #7f7f7f;
    font-size: 12px; }
  .product-r:hover {
    -webkit-transform: translateY(-6px);
            transform: translateY(-6px); }
    .product-r:hover .product-r__action-wrap {
      opacity: 1;
      -webkit-transform: translateY(-50%) scale(1);
              transform: translateY(-50%) scale(1); }
    .product-r:hover .product-r__action-list > li {
      opacity: 1;
      -webkit-transform: translateY(0);
              transform: translateY(0); }

.product-bs {
  background-color: #ffffff;
  box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.06);
  transition: -webkit-transform 0.7s ease-in-out;
  transition: transform 0.7s ease-in-out;
  transition: transform 0.7s ease-in-out, -webkit-transform 0.7s ease-in-out; }
  .product-bs__container {
    padding: 20px; }
  .product-bs__wrap {
    position: relative;
    margin-bottom: 4px; }
  .product-bs__action-wrap {
    width: 100%;
    position: absolute;
    top: 50%;
    left: 0;
    opacity: 0;
    z-index: 2;
    -webkit-transform: translateY(-50%) scale(0.8);
            transform: translateY(-50%) scale(0.8);
    transition: all 0.2s ease 0s; }
  .product-bs__action-list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 0;
    padding: 0;
    list-style: none; }
    .product-bs__action-list > li {
      margin: 0 4px 6px;
      opacity: 0;
      -webkit-transform: translateY(50%);
              transform: translateY(50%);
      transition: all 0.3s ease 0.1s; }
      .product-bs__action-list > li > a {
        display: block;
        width: 35px;
        text-align: center;
        border-radius: 50%;
        height: 35px;
        line-height: 35px;
        background-color: steelblue;
        color: #ffffff;
        font-size: 12px;
        transition: all 0.3s ease 0s; }
        .product-bs__action-list > li > a:hover {
          box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.06);
          background-color: #ffffff;
          color: steelblue; }
  .product-bs__category {
    display: block; }
    .product-bs__category > a {
      color: #a0a0a0;
      transition: color 0.5s;
      font-size: 12px; }
      .product-bs__category > a:hover {
        color: steelblue; }
  .product-bs__name {
    display: block; }
    .product-bs__name > a {
      color: #333333;
      font-size: 14px;
      font-weight: 600;
      transition: color 0.5s; }
      .product-bs__name > a:hover {
        color: steelblue; }
  .product-bs__rating {
    margin-bottom: 4px; }
    .product-bs__rating i {
      font-size: 12px; }
  .product-bs__review {
    margin-left: 4px;
    font-size: 12px;
    color: #a0a0a0; }
  .product-bs__price {
    display: block;
    color: #333333;
    font-size: 14px;
    font-weight: 600; }
  .product-bs__discount {
    font-weight: 600;
    margin-left: 30px;
    color: #333333;
    font-size: 14px;
    text-decoration: line-through; }

.product-bs:hover {
  -webkit-transform: translateY(-8px);
          transform: translateY(-8px); }
  .product-bs:hover .product-bs__action-wrap {
    opacity: 1;
    -webkit-transform: translateY(-50%) scale(1);
            transform: translateY(-50%) scale(1); }
  .product-bs:hover .product-bs__action-list > li {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0); }

.product-short {
  background-color: #fbfbfb;
  transition: -webkit-transform 0.7s ease-in-out;
  transition: transform 0.7s ease-in-out;
  transition: transform 0.7s ease-in-out, -webkit-transform 0.7s ease-in-out; }
  .product-short:hover {
    -webkit-transform: translateY(-8px);
            transform: translateY(-8px); }
  .product-short__container {
    padding: 30px; }
  .product-short__info {
    margin-top: 14px; }
  .product-short__price {
    display: block;
    font-size: 12px;
    font-weight: 600;
    color: steelblue; }
  .product-short__name {
    display: block; }
    .product-short__name > a {
      font-size: 14px;
      font-weight: 600;
      color: #333333;
      transition: color 0.5s; }
      .product-short__name > a:hover {
        color: steelblue; }
  .product-short__category {
    display: block; }
    .product-short__category > a {
      font-size: 11px;
      color: #a0a0a0;
      transition: color 0.5s; }
      .product-short__category > a:hover {
        color: steelblue; }

/* Checkbox, Radio Component */
/*
  * Remember these are very important styles and make sure input checkbox always has a greater z-index from label
  * and any other div's.
  * Remember these styles make checkbox horizontal center, and when you click out of the boundary region
  * Behind the scenes checkbox has a opacity 0 but it will be checked.
 */
.check-box [type="checkbox"] {
  position: absolute;
  left: 0;
  top: 0;
  min-width: 16px;
  width: 100%;
  height: 100%;
  z-index: 2;
  opacity: 0;
  cursor: pointer; }

.radio-box [type="radio"] {
  position: absolute;
  left: 0;
  top: 0;
  min-width: 16px;
  width: 100%;
  height: 100%;
  z-index: 2;
  opacity: 0;
  cursor: pointer; }

.check-box {
  position: relative;
  display: inline-block;
  white-space: nowrap;
  line-height: 1; }
  .check-box__label {
    position: initial;
    display: inline-block;
    font-weight: 600;
    font-size: 13px;
    color: #333333;
    margin-left: 24px;
    white-space: normal; }
    .check-box__label:before, .check-box__label:after {
      content: '';
      width: 18px;
      height: 18px;
      display: block;
      border: 2px solid transparent;
      z-index: 0;
      transition: all .5s ease;
      position: absolute;
      left: 0;
      top: 0; }
    .check-box__label:before {
      background-color: #f1f1f1; }
    .check-box__label:after {
      -webkit-transform: scale(0.6);
              transform: scale(0.6); }

.check-box input:checked ~ .check-box__state label:before {
  -webkit-animation: mypulse 1s;
          animation: mypulse 1s; }

.check-box input:checked ~ .check-box__state.check-box__state--primary label:before {
  border-color: steelblue;
  background-color: #ffffff; }

.check-box input:checked ~ .check-box__state.check-box__state--primary label:after {
  -webkit-transform: scale(0.4);
          transform: scale(0.4);
  background-color: steelblue; }

.radio-box {
  position: relative;
  display: inline-block;
  white-space: nowrap;
  line-height: 1; }
  .radio-box__label {
    position: initial;
    display: inline-block;
    font-weight: 600;
    font-size: 13px;
    color: #333333;
    white-space: normal;
    margin-left: 24px; }
    .radio-box__label:before, .radio-box__label:after {
      content: '';
      width: 18px;
      height: 18px;
      display: block;
      border-radius: 50%;
      border: 2px solid transparent;
      z-index: 0;
      transition: all .5s ease;
      position: absolute;
      left: 0;
      top: 0; }
    .radio-box__label:before {
      background-color: #f1f1f1; }
    .radio-box__label:after {
      -webkit-transform: scale(0.6);
              transform: scale(0.6); }

.radio-box input:checked ~ .radio-box__state label:before {
  -webkit-animation: mypulse 1s;
          animation: mypulse 1s; }

.radio-box input:checked ~ .radio-box__state.radio-box__state--primary label:before {
  border-color: steelblue;
  background-color: #ffffff; }

.radio-box input:checked ~ .radio-box__state.radio-box__state--primary label:after {
  -webkit-transform: scale(0.4);
          transform: scale(0.4);
  background-color: steelblue; }

/* Select-Box Component */
.select-box {
  display: block;
  max-width: 100%;
  font-size: 13px;
  font-weight: 600;
  padding: 10px 12px 11px 15px;
  cursor: pointer;
  line-height: 1.2; }
  .select-box--primary-style {
    color: #333333;
    border: 2px solid transparent;
    background-color: #f1f1f1; }
  .select-box--transparent-b-2 {
    color: #333333;
    border: 1px solid transparent;
    background-color: transparent; }
  .select-box:focus {
    outline: 0; }
  .select-box::-ms-expand {
    background-color: transparent;
    border: 0; }

.select-box:disabled {
  background-color: #cecece; }

.select-box--primary-style:focus::-ms-value {
  color: #333333;
  background-color: #f1f1f1; }

.select-box--transparent-b-2:focus::-ms-value {
  color: #333333;
  background-color: #ffffff; }

/* Textarea Component */
.text-area {
  height: 100%;
  font-size: 12px;
  font-weight: 600;
  padding: 18px;
  resize: vertical; }
  .text-area--border-radius {
    border-radius: 25px; }
  .text-area--primary-style {
    color: #5c636c;
    transition: all 0.6s linear;
    border: 2px solid transparent;
    background-color: #f1f1f1; }
    .text-area--primary-style:focus {
      background-color: transparent;
      border-color: steelblue; }
  .text-area:focus {
    outline: 0; }

/* Modal Component */
.dismiss-button {
  z-index: 2;
  position: absolute;
  top: 0;
  right: -50px;
  background-color: transparent;
  padding: 8px;
  font-size: 24px;
  border: 0;
  color: #ffffff;
  cursor: pointer;
  transition: color 110ms ease-in-out; }
  .dismiss-button:hover {
    color: steelblue; }

#dash-newsletter .modal-dialog {
  width: 100%;
  max-width: 450px; }

#dash-newsletter .modal-body {
  padding: 1.875rem; }

.d-modal__form {
  width: 100%; }
  .d-modal__form .btn {
    padding: 14px 46px;
    font-size: 12px;
    font-weight: 600; }
  .d-modal__form a {
    font-size: 15px;
    font-weight: 600;
    color: steelblue;
    transition: color 110ms ease-in-out; }
    .d-modal__form a:hover {
      color: #7f7f7f; }

#edit-ship-address .modal-dialog, #add-ship-address .modal-dialog {
  width: 100%;
  max-width: 750px; }

#edit-ship-address .modal-body, #add-ship-address .modal-body {
  padding: 1.875rem; }

.checkout-modal1__form, .checkout-modal2__form {
  width: 100%; }
  .checkout-modal1__form .btn, .checkout-modal1__form .input-text, .checkout-modal1__form .select-box, .checkout-modal2__form .btn, .checkout-modal2__form .input-text, .checkout-modal2__form .select-box {
    border-radius: 6px; }
  .checkout-modal1__form .input-text, .checkout-modal1__form .select-box, .checkout-modal2__form .input-text, .checkout-modal2__form .select-box {

    width: 100%; }
  .checkout-modal1__form .btn, .checkout-modal2__form .btn {
    font-weight: 600;
    padding: 16px 46px; }



#add-to-cart {
  position: relative; /* Positionner le conteneur pour le texte */
  color: #ffffff; /* Texte blanc */
  border: 1px solid transparent; /* Bordure transparente */
  background-color: #2a7ae2; /* Bleu primaire */
  overflow: hidden; /* Masquer tout dÃ©bordement du texte */
  padding: 10px 20px; /* Padding pour le bouton */
  transition: background-color .5s ease-in; /* Transition fluide pour la couleur de fond */
}

#add-to-cart .btn-text {
  display: inline-block; /* Afficher le texte en bloc */
  transition: transform .3s ease-in; /* Transition fluide pour l'agrandissement du texte */
}

#add-to-cart:hover {
  background-color: #1e5bb6; /* Bleu plus foncÃ© au survol */
}

#add-to-cart:hover .btn-text {
  transform: scale(1.4); /* Agrandir le texte au survol */
}




/* Style pour le bouton avec la classe .achat */
.achat {
  position: relative; /* Positionner le conteneur pour le texte */
  color: #ffffff; /* Texte blanc */
  border: 1px solid transparent; /* Bordure transparente */
  background-color: #2a7ae2; /* Bleu primaire */
  overflow: hidden; /* Masquer tout dÃ©bordement du texte */
  padding: 10px 20px; /* Padding pour le bouton */
  transition: background-color .5s ease-in; /* Transition fluide pour la couleur de fond */
}

.achat .btn-text {
  display: inline-block; /* Afficher le texte en bloc */
  transition: transform .3s ease-in; /* Transition fluide pour l'agrandissement du texte */
}

.achat:hover {
  background-color: #1e5bb6; /* Bleu plus foncÃ© au survol */
}

.achat:hover .btn-text {
  transform: scale(1.4); /* Agrandir le texte au survol */
}





.success {
  text-align: center; }
  .success__text-wrap {
    margin-bottom: 18px; }
    .success__text-wrap i {
      margin-right: 8px;
      font-size: 16px;
      color: steelblue; }
    .success__text-wrap span {
      font-weight: 700;
      font-size: 14px;
      color: #333333; }
  .success__img-wrap {
    display: inline-block;
    vertical-align: middle;
    background-color: #f5f5f5;
    width: 120px;
    height: 120px; }
    .success__img-wrap img {
      min-width: 120px; }
  .success__name {
    display: block;
    margin: 4px 0;
    font-size: 14px;
    font-weight: 600;
    color: #333333; }
  .success__quantity {
    margin-bottom: 4px;
    display: block;
    font-size: 12px;
    color: #a0a0a0; }
  .success__price {
    display: block;
    font-weight: 700;
    font-size: 14px;
    color: steelblue; }

.s-option {
  text-align: center; }
  .s-option__text {
    display: block;
    margin-bottom: 20px;
    font-size: 12px;
    color: #a0a0a0; }
  .s-option__link-box {
    width: 85%;
    margin: 0 auto; }
  .s-option__link {
    margin-bottom: 20px;
    display: block;
    padding: 12px 8px;
    width: 100%;
    text-align: center;
    font-weight: 600;
    font-size: 13px; }

#quick-look .modal-dialog {
  width: 100%;
  max-width: 991px; }

#quick-look .modal-body {
  padding: 1.875rem; }

.new-l--center {
  text-align: center; }

#newsletter-modal .modal-dialog {
  width: 100%;
  max-width: 800px; }

#newsletter-modal .modal-body {
  padding: 0; }

#newsletter-modal .new-l__dismiss {
  z-index: 2;
  position: absolute;
  top: 0;
  right: 10px;
  background-color: transparent;
  padding: 8px;
  font-size: 16px;
  border: 0;
  color: #515151;
  cursor: pointer; }

#newsletter-modal .row {
  -ms-flex-align: center;
      align-items: center; }

.new-l__img-wrap {
  background-color: #f5f5f5;
  position: relative; }
  .new-l__img-wrap:before {
    transition: all 0.6s linear;
    content: '';
    position: absolute;
    z-index: 1;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    opacity: 0;
    background-color: rgba(0, 0, 0, 0.4); }

.new-l__img-wrap:hover:before {
  opacity: 1; }

.new-l__h3 {
  font-size: 26px;
  line-height: 1.2;
  color: #333333; }

.new-l__p1 {
  font-size: 14px;
  line-height: 21px; }

.new-l__p2 {
  font-size: 12px;
  color: #a0a0a0; }

.new-l__link {
  font-size: 13px;
  color: #7f7f7f;
  transition: all .3s; }
  .new-l__link:hover {
    color: steelblue;
    text-decoration: underline; }

.new-l__form {
  width: 100%; }
  .new-l__form .btn {
    width: 100%; }
  .new-l__form .btn {
    padding: 13px 30px;
    font-size: 14px;
    font-weight: 600; }

.news-l__input {
  width: 100%;
  font-size: 12px;
  padding: 0 18px;
  height: 40px;
  color: #333333;
  transition: all 0.6s linear;
  border: 2px solid rgba(0, 0, 0, 0.08);
  border-radius: 4px;
  background-color: #ffffff; }
  .news-l__input:focus {
    border-color: steelblue; }
  .news-l__input:focus {
    outline: 0; }
  .news-l__input::-ms-clear {
    display: none; }

@media (max-width: 991px) {
  .new-l__col-1 {
    display: none; } }




/*--------------------------------------------------------------
6.0 Header
--------------------------------------------------------------*/
.header-wrapper {
  position: relative;
}

.header--style-1 {
  background-color: #ffffff;
}

.header--style-2 {
  background-color: #242424;
}

.header--style-3 {
  position: absolute;
  width: 100%;
  background-color: transparent;
  z-index: 2;
}

.header--box-shadow {
  box-shadow: 0 2px 7px 0 rgba(0, 0, 0, 0.07);
}




/* NAV METEO - DATE - HEURE */

/* Styles généraux pour le nav météo */
.nav-weather-time {
    width: auto;
    max-width: 1320px;
    padding: 0;
    background-color: transparent;
    border-radius: 15px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0px auto 0;
}

/* Widget météo et heure */
.weather-time-widget {
    display: flex;
    flex-wrap: wrap;
    position: relative;
    min-height: 50px;
    width: 100%;
    max-width: 1320px;
    background-color: white; /* Couleur de fond douce */
    border-radius: 8px;
    padding: 5px 10px 5px 15px;
    align-items: center;
    justify-content: center;
    box-shadow: 
        0 2px 8px rgba(0, 0, 0, 0.1),
        0 4px 10px rgba(0, 0, 0, 0.1),
        0 6px 15px rgba(0, 0, 0, 0.1);
    font-family: 'Roboto', sans-serif;
    font-size: 14px;
    color: #333; /* Couleur du texte par défaut */
    margin: 5px auto 0;
}

/* Effet de mise au point */
.weather-time-widget:hover {
    transform: scale(1.05);
}

/* Animation continue pour les icônes météo */
@keyframes pulse {
    0%, 100% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.1);
    }
}

/* Style pour l'icône météo */
.weather-widget i[data-temperature] {
    animation: pulse 1.5s infinite; /* Animation continue */
    transition: color 0.3s ease; /* Animation douce pour la couleur */
}

/* Style pour la ville et le pays */
.city-country {
    color: #3b5998; /* Couleur moderne pour la ville et le pays */
    font-weight: bold;
    font-size: 16px;
    margin-right: 15px;
}

/* Style pour la température */
.temperature-widget {
    font-weight: bold;
    font-size: 20px;
    margin-right: 15px;
    color: #3b5998; /* Couleur moderne pour la température */
}

/* Style pour la date */
.date-widget {
    color: #3b5998; /* Couleur moderne pour la date */
    font-size: 14px; /* Taille de texte réduite pour la date */
}

/* Style pour l'heure */
.time-widget {
    color: #3b5998; /* Couleur moderne pour l'heure */
    font-weight: bold;
    font-size: 14px;
    display: flex;
    align-items: center;
}

/* Ajout d'espace autour du séparateur */
.time-widget span.separator {
    margin: 0 5px; /* Espace autour du séparateur */
}

/* Media Queries pour responsive design */
@media (max-width: 768px) {
    .weather-time-widget {
        flex-direction: column;
        align-items: center;
        padding: 8px;
    }

    .time-widget {
        margin-left: 0;
        margin-top: 5px;
    }
}

/* Styles pour le défilement d'actualités */
   .news-ticker {
      width: 100%;
      max-width: 1320px;
      margin: 20px auto;
      background-color: white;
      border-radius: 8px;
      overflow: hidden;
      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    }

    .news-container {
      display: flex;
      white-space: nowrap;
      animation: scroll 30s linear infinite;
    }

    .news-item {
      padding: 10px 20px;
      font-family: 'Roboto', sans-serif;
      font-size: 14px;
      color: #333;
      margin-right: 40px;
    }

    @keyframes scroll {
      0% { transform: translateX(100%); }
      100% { transform: translateX(-100%); }
    }


/* FIN DE METEO - DATE - HEURE */

/* FIN DE METEO - DATE - HEURE */






/* Styles de base pour la navigation */
.primary-nav-wrapper--border {
  width: 100%;
  position: relative;
  height: auto;
  padding: 0;
  box-sizing: border-box;
  max-width: 1350px;
  max-height: 100px;
  background-color: transparent;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 auto;
}

.primary-nav {
  display: flex;
  flex-wrap: wrap;
  position: relative;
  width: 100%;
  justify-content: space-between;
  align-items: center;
  height: 100%;
}

.secondary-nav-wrapper {
  width: 100%;
  position: relative;
  height: auto;
  max-height: 100px;
  padding: 0;
  box-sizing: border-box;
  max-width: 1350px;
  background-color: transparent;
  border-radius: 15px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  margin-bottom: 20px;
}

.secondary-nav {
  display: flex;
  flex-wrap: nowrap;
  position: relative;
  width: 100%;
  max-width: 1350px;
  justify-content: space-between;
  align-items: center;
  margin: 0 auto;
  height: 100%;
}

/* Logo principal */
.main-logo {
  display: inline-block;
  vertical-align: middle;
  margin: 0 20px;
  max-width: 300px;
  transition: transform 0.3s;
}

.main-logo img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 200px;
}

.main-logo:hover {
  transform: scale(1.5);
}

/* Barre de recherche */
.conteneur-recherche {
  flex: 1;
  max-width: 500px;
  margin: 0 20px;
}

.groupe-recherche {
  display: flex;
  align-items: center;
  border: 1px solid #ddd;
  border-radius: 25px;
  overflow: hidden;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

#champ-recherche {
  flex: 1;
  padding: 10px 20px;
  border: none;
  font-size: 16px;
  outline: none;
  min-width: 0;
}

/* Bouton de recherche */
.appuyer {
  padding: 10px 20px;
  border: none;
  background-color: #007bff;
  color: white;
  cursor: pointer;
  transition: background-color 0.3s;
  border-radius: 0 25px 25px 0;
  display: flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
}



@media (max-width: 768px) {
  .primary-nav, 
  .secondary-nav {
      flex-direction: column;
      align-items: center;
      padding: 10px 0;
  }

  .primary-nav {
      padding-bottom: 10px;
  }

  .secondary-nav {
      height: auto;
  }

  .main-logo {
      margin-bottom: 10px;
      max-width: 150px;
  }

  .main-logo img {
      max-height: 100px;
  }

  .conteneur-recherche {
      margin: 10px 0;
      max-width: 100%;
  }

  .groupe-recherche {
      flex-direction: row;
      border-radius: 25px;
  }

  #champ-recherche {
      width: 100%;
      border-radius: 25px 0 0 25px;
      padding: 8px 15px;
      font-size: 14px;
  }

  .appuyer {
      width: auto;
      border-radius: 0 25px 25px 0;
      padding: 8px 15px;
      font-size: 14px;
  }

  .ah-list--design1 {
      flex-direction: column;
      gap: 10px;
  }
}

@media (max-width: 480px) {
  .main-logo {
      max-width: 100px;
  }

  .main-logo img {
      max-height: 60px;
  }

  .conteneur-recherche {
      margin: 5px 0;
  }

  #champ-recherche {
      padding: 8px 15px;
      font-size: 14px;
  }

  .appuyer {
      padding: 8px 15px;
      font-size: 14px;
  }
}

@media (max-width: 320px) {
  .main-logo {
      max-width: 80px;
  }

  .main-logo img {
      max-height: 50px;
  }

  #champ-recherche {
      padding: 5px 10px;
      font-size: 12px;
  }

  .appuyer {
      padding: 5px 10px;
      font-size: 12px;
  }
}

@media (max-width: 180px) {
  .main-logo {
      max-width: 60px;
  }

  .main-logo img {
      max-height: 40px;
  }

  #champ-recherche {
      padding: 5px 10px;
      font-size: 12px;
  }

  .appuyer {
      padding: 5px 10px;
      font-size: 12px;
  }
}


/*--------------------------------------------------------------
20.2 jquery.shopnav - Version Modernisée
--------------------------------------------------------------*/

/* Reset de base */
.ah-list,
.ah-list li,
.ah-list ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

/* Styles de base pour les liens */
.ah-list > li > a {
    text-decoration: none;
    transition: color 0.3s ease, background-color 0.3s ease;
}

/* Design 1 : Liens en ligne */
.ah-list--design1 > li {
    display: inline-block;
}

.ah-list--design1 > li > a {
    display: inline-block;
    font-size: 16px;
    padding: 20px 18px;
    color: #333333;
}

.ah-list--design1 > li > a:hover {
    color: #2a7ae2;
    background-color: rgba(42, 122, 226, 0.1);
}

/* Design 2 : Liens en ligne avec style différent */
.ah-list--design2 > li {
    display: inline-block;
}

.ah-list--design2 > li > a {
    font-weight: 700;
    font-size: 12px;
    display: inline-block;
    padding: 25px 14px;
    margin-left: 60px;
    color: #333333;
}

.ah-list--design2 > li > a:hover {
    color: #2a7ae2;
}

/* Menus déroulants */
.has-dropdown {
    position: relative;
}

.has-dropdown > ul {
    background-color: #ffffff;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    position: absolute;
    text-align: left;
    padding: 10px 0;
    z-index: 1000;
    white-space: nowrap;
    transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease;
    top: 100%;
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
}

.has-dropdown:hover > ul {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.has-dropdown > ul > li > a {
    display: block;
    padding: 10px 20px;
    color: #333333;
    font-size: 14px;
    font-weight: 600;
    transition: background-color 0.3s ease;
}

.has-dropdown > ul > li > a:hover {
    background-color: #f8f8f8;
}

/* Positionnement des sous-menus */
.has-dropdown--ul-left-100 > ul {
    left: 100%;
    top: 0;
}

.has-dropdown--ul-right-100 > ul {
    right: 100%;
    top: 0;
}

/* Navigation mobile */
@media (max-width: 1024px) {
    .ah-lg-mode {
        position: fixed;
        left: -315px;
        width: 315px;
        height: 100%;
        top: 0;
        background-color: #ffffff;
        z-index: 20000;
        overflow-y: auto;
        transition: left 0.4s ease-in-out;
    }

    .menu-init.js-open .ah-lg-mode {
        left: 0;
    }

    .menu-init.js-open:after {
        content: "";
        width: 100%;
        height: 100%;
        position: fixed;
        top: 0;
        left: 0;
        display: block;
        background-color: rgba(0, 0, 0, 0.7);
        z-index: 19999;
    }

    .ah-close {
        color: #333333;
        padding: 20px;
        font-size: 13px;
        font-weight: 600;
        cursor: pointer;
        display: block;
    }

    .ah-list > li {
        position: relative;
        display: block;
        border-top: 1px solid #f8f8f8;
    }

    .ah-list > li > a {
        display: block;
        padding: 12px 18px;
        font-size: 14px;
        color: #333333;
    }

    .ah-list > li:last-child {
        border-bottom: 1px solid #f8f8f8;
    }

    .js-menu-toggle {
        width: 30px;
        height: 30px;
        border-radius: 50%;
        background-color: #ffffff;
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
        position: absolute;
        right: 15px;
        top: 10px;
        transition: all 0.3s ease;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .js-menu-toggle:after {
        font-family: 'Font Awesome 5 Free';
        content: "\F067";
        font-weight: 900;
        color: #333333;
        font-size: 12px;
    }

    .js-menu-toggle.js-toggle-mark:after {
        content: "\F068";
    }

    .has-dropdown > ul {
        width: 100% !important;
        box-shadow: none;
        position: static;
        padding: 0;
        opacity: 1;
        visibility: visible;
        display: none;
    }

    .has-dropdown > ul > li > a {
        padding: 10px 36px;
    }

    .ah-list > li > ul > li > ul > li > a {
        padding: 10px 54px;
    }

    .ah-list > li > ul > li > ul > li > ul > li > a {
        padding: 10px 72px;
    }
}

/* Styles pour les très petits écrans (moins de 480px) */
@media (max-width: 480px) {
    .ah-lg-mode {
        width: 100%; /* Pleine largeur sur très petits écrans */
        left: -100%;
    }

    .ah-list > li > a {
        padding: 10px 15px; /* Réduire le padding pour les petits écrans */
    }

    .js-menu-toggle {
        right: 10px; /* Ajuster la position du bouton */
        top: 5px;
    }

    .has-dropdown > ul > li > a {
        padding: 8px 20px; /* Réduire le padding pour les sous-menus */
    }

    .ah-list > li > ul > li > a {
        padding: 8px 30px; /* Ajuster le padding pour les sous-menus imbriqués */
    }

    .ah-list > li > ul > li > ul > li > a {
        padding: 8px 40px;
    }

    .ah-list > li > ul > li > ul > li > ul > li > a {
        padding: 8px 50px;
    }
}

/* Grands écrans : Styles supplémentaires */
@media (min-width: 1025px) {
    .ah-close {
        display: none;
    }

    .ah-list > li > a:hover {
        color: #2a7ae2;
    }

    .has-dropdown > ul > li:hover {
        background-color: #f8f8f8;
    }

    .has-dropdown:hover > ul {
        opacity: 1;
        visibility: visible;
    }

    .ah-list > .has-dropdown:hover > ul {
        top: 100%;
    }

    .has-dropdown .has-dropdown:hover > ul {
        top: 0;
    }

    .ah-list > .has-dropdown:hover > a {
        color: #2a7ae2;
    }

    .has-dropdown > a .fa-angle-down {
        font-size: 12px;
        margin-left: 8px;
        transition: transform 0.3s ease;
    }

    .has-dropdown:hover > a .fa-angle-down {
        transform: rotate(90deg);
    }
}

/*--------------------------------------------------------------
Styles pour les boutons modernes
--------------------------------------------------------------*/

/* Style de base pour les boutons */
.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 20px;
    font-size: 14px;
    font-weight: 600;
    color: #ffffff;
    background-color: #2a7ae2;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    transition: background-color 0.3s ease, transform 0.2s ease, box-shadow 0.3s ease;
    text-align: center;
    text-decoration: none;
    outline: none;
}

.btn:hover {
    background-color: #1e5bbf;
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

.btn:active {
    transform: translateY(0);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

/* Style pour les boutons avec icône */
.btn--icon {
    padding: 10px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
}

/* Style pour le texte du bouton mega */
.toggle-mega-text {
    font-size: 16px;
    font-weight: 700;
    text-transform: uppercase;
}

/* Style pour le bouton secondaire */
.toggle-button--secondary {
    background-color: #6c757d;
}

.toggle-button--secondary:hover {
    background-color: #5a6268;
}

/* Style pour le bouton shop */
.toggle-button-shop {
    background-color: #28a745;
}

.toggle-button-shop:hover {
    background-color: #218838;
}

/* Styles pour les petits écrans */
@media (max-width: 768px) {
    .btn {
        padding: 8px 16px;
        font-size: 12px;
    }

    .btn--icon {
        padding: 8px;
        width: 36px;
        height: 36px;
    }

    .toggle-mega-text {
        font-size: 14px;
    }
}

/* Styles pour les très petits écrans */
@media (max-width: 480px) {
    .btn {
        padding: 6px 12px;
        font-size: 10px;
    }

    .btn--icon {
        padding: 6px;
        width: 32px;
        height: 32px;
    }

    .toggle-mega-text {
        font-size: 12px;
    }
}



/* Extension Mega Menu */
.mega-text {
  width: 50px;
  height: 34px;
  display: inline-block;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  
  font-size: 12px;
  font-weight: 600;
  line-height: 34px;
  text-align: center;
  cursor: pointer;
  color: #ffffff; }

.mega-menu-list > ul > li > a {
  display: block;
  padding: 10px 22px;
  color: #000000;
  text-transform: uppercase;
  font-weight: 600;
  font-size: 12px; }



.mega-menu-content {
  display: none; }

.mega-menu-content.js-active {
  display: block; }

.mega-menu-content [class*="col-"] > ul > li > a {
  padding: 4px 0;
  display: block;
  color: #333333;
  font-size: 13px;
  transition: color 0.5s; }
  .mega-menu-content [class*="col-"] > ul > li > a:hover {
    color: #2a7ae2; }

.mega-menu-content [class*="col-"] > ul > .mega-list-title > a {
  font-weight: 700; }

.mega-menu-content > h5 {
  font-weight: 600;
  margin: 6px 0 0;
  font-size: 12px;
  color: #000000; }

@media (max-width: 1024px) {
  .mega-menu {
    display: none; }
  .mega-menu-list {
    padding: 20px;
    border: 1px solid #f6f6f6; }
    .mega-menu-list > ul > li {
      position: relative; }
  .mega-menu-content {
    padding: 20px; }
  .mega-menu-content .row {
    display: block; }
  .mega-menu-content [class*="col-"] {
    margin-bottom: 15px;
    max-width: 100%; }
  .mega-image {
    display: none; } }

@media (min-width: 1025px) {
  .js-open.mega-text {
    -webkit-animation: mypulse 1s;
            animation: mypulse 1s; }
  .js-open.mega-text ~ .mega-menu {
    display: block; }
  .mega-menu {
    display: none;
    padding: 30px;
    width: 100%;
    background-color: #ffffff;
    box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.13);
    position: absolute;
    z-index: 998;
    top: 100%; }
  .mega-menu-wrap {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap; }
  .mega-menu-list {
    -ms-flex: 0 0 20%;
        flex: 0 0 20%;
    max-width: 20%; }
  .mega-menu-content {
    -ms-flex: 0 0 80%;
        flex: 0 0 80%;
    max-width: 80%;
    overflow-y: auto;
    padding: 0 17px;
    height: 370px;
    transition: opacity 0.5s;
    display: none; }
    .mega-menu-content::-webkit-scrollbar {
      width: 8px; }
    .mega-menu-content::-webkit-scrollbar-track {
      background: #eee; }
    .mega-menu-content::-webkit-scrollbar-thumb {
      background: #2a7ae2; }
    .mega-menu-content::-webkit-scrollbar-thumb:hover {
      background: #2a7ae2; }
  .mega-banner {
  position: relative;
  overflow: hidden;
  box-shadow: 0 5px 10px rgba(42, 122, 226, 0.8); /* Ombre bleue plus épaisse sur tous les côtés */
  border-radius: 12px; /* Arrondir les coins */
  margin-bottom: 20px;
}

.mega-banner img {
  -webkit-transform: scale(1);
  transform: scale(1);
  transition: all 0.6s ease-in-out;
  border-radius: 12px; /* Applique également l'arrondi aux images */
}

.mega-banner:hover img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}

.mega-image {
  margin: auto 0;
}


.service {
  display: flex;
  background-color: #ffffff;
  padding: 23px;
  box-shadow: 0 6px 15px 0 rgba(36, 37, 38, 0.08);
  border: 2px solid #f5f5f5;
  width: 100%;
}

.service-container {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: flex-start; /* Aligner les éléments à gauche */
  padding: 30px;
}

.service-item {
  display: flex;
  align-items: flex-start; /* Aligner les éléments en haut */
  text-decoration: none;
  color: inherit;
  flex: 1 1 20%;
  margin-right: 10px; /* Ajuster la marge droite */
}

.service-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 10px; /* Espacement entre l'icône et le texte */
}

.service-icon img {
  width: 50px; /* Largeur des images */
  height: 50px; /* Hauteur des images */
  object-fit: contain; /* Ajuster l'image à l'intérieur du conteneur */
}

.service-content {
  text-align: left;
  display: flex;
  flex-direction: column;
}

.service-title {
  font-size: 1rem;
  margin: 0;
}

.service-desc {
  margin: 0;
  color: gray;
  font-size: 0.8rem;
}

.title {
  margin-left: 30px;
  font-weight: 600;
  font-size: 2rem;
}

@media (max-width: 768px) {
  .service-icon img {
    width: 80px; /* Redimensionner pour les écrans plus petits */
    height: 80px;
  }
}

@media (max-width: 480px) {
  .service-icon img {
    width: 60px; /* Redimensionner pour les écrans encore plus petits */
    height: 60px;
  }
}

.service-item {
  text-align: center; /* Centrer le contenu */
  margin-bottom: 20px; /* Espacement entre les éléments de service */
}

.service-content {
  display: block; /* Pour que les liens prennent tout l'espace disponible */
  text-decoration: none; /* Supprimer la décoration des liens */
  color: inherit; /* Conserver la couleur du texte */
}
	
.service-thumbnail {
  width: 30px; /* Largeur de l'image */
  height: 20px; /* Hauteur de l'image */
  object-fit: contain; /* Ajuster l'image à l'intérieur du conteneur */
  display: block; /* Supprimer les marges blanches autour de l'image */
}
	
	
/* Styles pour le lien du panier */
.mini-cart-shop-link {
    position: relative;
    display: inline-block;
}


.mini-cart-shop-link > .total-item-round {
    top: -10px;
    right: -10px;
}

/* Badge d'indication du nombre d'articles */
.total-item-round {
    width: 24px;
    height: 24px;
    line-height: 24px;
    border-radius: 50%;
    text-align: center;
    font-size: 11px;
    background-color: var(--badge-bg-color);
    color: var(--badge-text-color);
    position: absolute;
    top: 40px;
    right: 10px;
    z-index: 100;
}
/* Conteneur du mini-panier */
.mini-cart {
    background-color: #ffffff;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Ombre plus douce */
    width: 480px;
    padding: 16px;
    position: absolute;
    transition: all 0.3s ease;
    z-index: 998;
    top: 0%;
    opacity: 0;
    right: 0;
    visibility: hidden;
    border-radius: 10px;
}

/* Affichage au survol */
.has-dropdown:hover > .mini-cart {
    top: 100%;
    opacity: 1;
    visibility: visible;
}

/* Conteneur des produits */
.mini-product-container {
    max-height: 280px;
    padding: 10px;
    overflow-y: auto;
    background-color: var(--background-color); /* Fond doux pour le conteneur */
}

/* Styles pour chaque produit */
.mini-product {
    display: flex;
    align-items: center;
    justify-content: space-between; /* Assure que le contenu est bien espacé */
    padding: 12px;
    border-bottom: 1px solid #eee; /* Ligne de séparation entre les produits */
    transition: transform 0.3s ease;
}

.card-mini-product:last-child {
    border-bottom: none; /* Supprime la ligne du dernier produit */
}

/* Image et informations du produit */
.mini-product {
    display: flex;
    align-items: center;
	transition: transform 0.3s ease;
}


.mini-product.added {
    transform: scale(1.05);
}

.mini-product.removed {
    transition: transform 0.3s ease;
    transform: scale(0);
    opacity: 0;
}



/* Image du produit */
.mini-product__image-wrapper {
    flex: 0 0 60px; /* Fixe la largeur de l'image */
    margin-right: 10px; /* Espacement entre l'image et le texte */
}

.mini-product__image-wrapper img {
    width: 60px; /* Fixe la largeur de l'image */
    height: 60px; /* Fixe la hauteur de l'image */
    object-fit: cover; /* S'assure que l'image garde ses proportions */
    border-radius: 5px; /* Coins arrondis pour l'image */
}



/* Informations du produit */
.mini-product__info-wrapper {
    flex: 1; /* Permet à l'info-wrapper d'occuper l'espace restant */
    display: flex;
    flex-direction: column;
    justify-content: space-between; /* Espace entre les lignes */
}



/* Alignement sur la même ligne pour la couleur et la taille */
.mini-product__info {
    display: flex;
	flex-direction: column;
    justify-content: space-between; /* Espace entre les lignes */
    align-items: center; /* Aligne les éléments verticalement au centre */
}


/* Styles communs pour la couleur et la taille */
.mini-product__color,
.mini-product__size {
    display: flex; /* Utiliser flex pour un meilleur alignement */
    align-items: center; /* Aligner le texte au centre */
    margin-right: 00px; /* Espacement entre couleur et taille */
    font-size: 14px; /* Ajustez la taille de la police ici */
    font-family: 'Roboto', sans-serif; /* Application de la police Roboto */
}

/* Styles spécifiques pour la couleur */
.mini-product__color {
    color: #007BFF; /* Bleu primaire, un peu plus doux */
}

/* Styles spécifiques pour la taille */
.mini-product__size {
    color: #555555; /* Un gris doux */
    transform: translateX(0); /* Position initiale */
    transition: transform 0.3s ease; /* Ajoute une transition douce */
}




/* Alignement sur la même ligne pour quantité, prix unitaire et prix total */
.mini-product__quantity,
.mini-product__unit-price,
.mini-product__total-price {
    display: inline-block; /* Affichage sur la même ligne */
    margin-right: 10px; /* Espacement entre les éléments */
}


/* Conteneur pour quantité, prix unitaire et prix total */
/* Conteneur pour quantité, prix unitaire et prix total */
.mini-product__price-info {
    display: flex; /* Utilise flexbox pour aligner horizontalement */
    justify-content: center; /* Centre les éléments horizontalement */
    width: 100%; /* Assurez-vous que le conteneur occupe tout l'espace disponible */
    gap: 10px; /* Espace uniforme entre les éléments */
}



.mini-product__name {
font-size: 18px;
    font-weight: 600;
    color: var(--primary-color);
}



/* Styles de texte */
.mini-product__quantity,
.mini-product__unit-price {
    font-size: 14px;
    font-weight: 600;
    color: var(--text-color);
}


/* Prix total */
.mini-product__total-price {
    font-size: 16px;
    font-weight: bold;
    color: var(--primary-color);
    text-align: right; /* Aligne le prix total à droite */
}

/* Alignement du lien de suppression */
.mini-product__delete-link {
    margin-left: auto; /* Place le lien de suppression à droite */
    color: #ff0000; /* Couleur de l'icône */
    text-decoration: none; /* Supprime le soulignement */
    font-weight: bold;
    padding: 8px; /* Ajoute un peu de padding pour cliquer facilement */
}

.mini-product__delete-link:hover {
    color: var(--primary-color); /* Change la couleur au survol */
}



/* Prix total */
.mini-product__total-price {
    font-size: 16px;
    font-weight: bold;
    color: var(--primary-color);
    text-align: right; /* Aligne le prix total à droite */
}


/* Totaux */
.mini-total {
    margin-top: 10px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px; /* Ajout d'espace intérieur */
    background-color: #f9f9f9; /* Couleur de fond douce */
    border: 1px solid #e0e0e0; /* Bordure légère */
    border-radius: 5px; /* Coins arrondis */
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); /* Ombre douce */
    font-family: 'Roboto', sans-serif; /* Utilisation de la police Roboto */
}

/* Style spécifique pour la valeur du sous-total */
.subtotal-value {
    font-weight: bold; /* Mettre en gras */
    font-size: 20px; /* Augmenter la taille du montant total */
    color: #007BFF; /* Couleur pour le montant total (bleu doux) */
}

/* Style spécifique pour le texte du sous-total */
.subtotal-text {
    font-weight: 600; /* Mettre en gras */
    font-size: 18px; /* Taille de police ajustée */
    color: #555; /* Couleur du texte (gris doux) */
}



/* Actions */
.mini-link {
    display: block;
    text-align: center;
    padding: 12px 42px;
    border-radius: 6px;
    margin-top: 20px;
    font-weight: 700;
    font-size: 10px;
    background-color: var(--primary-color); /* Bouton d'action avec couleur */
    color: #fff;
    text-decoration: none;
}

/* Styles pour le bouton d'action */
.mini-link:hover {
    background-color: darken(var(--primary-color), 10%); /* Assombrit au survol */
}

/* Responsivité */
@media (max-width: 1024px) {
    .mini-cart-shop-link > .total-item-round {
        top: 5px;
        left: 38px;
    }
    .has-dropdown > .mini-cart {
        width: 100%;
        padding: 14px;
        position: static;
        opacity: 1;
        visibility: visible;
    }
}
	
	
	
/*--------------------------------------------------------------
8.0 Index-Pages:
--------------------------------------------------------------*/
.fixed-list {
  position: fixed;
  top: 50%;
  right: 10px;
  z-index: 99;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%); }
  .fixed-list > ul {
    display: block;
    margin: 0;
    padding: 0;
    background-color: #ffffff;
    border-radius: 1.5625rem; }
    .fixed-list > ul > li > a {
      color: #333333;
      text-align: center;
      font-size: 14px;
      padding: 14px; }
      .fixed-list > ul > li > a.active {
        background-color: steelblue;
        color: #ffffff; }
    .fixed-list > ul > li:first-child > a {
      border-top-left-radius: 1.5625rem;
      border-top-right-radius: 1.5625rem; }
    .fixed-list > ul > li:last-child > a {
      border-bottom-left-radius: 1.5625rem;
      border-bottom-right-radius: 1.5625rem; }

.bg-anti-flash-white {
  background-color: #f3f3f3; }

.white-container {
  width: 1220px;
  background-color: #ffffff;
  max-width: 100%;
  margin: 0 auto; }

.section__intro {
  position: relative; }

.block {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  padding: 4px 0;
  -ms-flex-align: center;
      align-items: center;
  border-bottom: 1px solid #e7e7e7; }
  .block__title {
    color: #333333;
    display: block;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 8px; }

.category-o {
  position: relative;
  border: 2px dashed #f5f5f5;
  border-radius: 50%;
  overflow: hidden; }
  .category-o__img-wrap {
    border-radius: 50%; }
  .category-o__img {
    border-radius: 50%;
    -webkit-transform: scale(1);
            transform: scale(1);
    transition: all 0.6s linear; }
  .category-o__info {
    content: '';
    position: absolute;
    z-index: 2;
    width: 100%;
    text-align: center;
    bottom: 40px; }
  .category-o__shop-now {
    box-shadow: 0 3px 7px 0 rgba(0, 0, 0, 0.07);
    font-size: 13px;
    padding: 10px 25px;
    border-radius: 20px;
    font-weight: 600;
    display: inline-block; }
  .category-o:before {
    content: '';
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    transition: all 0.3s linear;
    background-color: rgba(0, 0, 0, 0.8);
    opacity: 0; }

.category-o:hover:before {
  opacity: 1; }

.category-o:hover .category-o__img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1); }

.tab-list {
  margin: 0;
  padding: 0; }
  .tab-list > li {
    margin-right: 8px;
    margin-bottom: 12px; }
    .tab-list > li > a {
      border-radius: 20px;
      font-weight: 600;
      font-size: 13px;
      padding: 10px 16px;
      color: #333333; }
      .tab-list > li > a.active {
        border-color: steelblue;
        background-color: steelblue;
        color: #ffffff; }
    .tab-list > li:last-child {
      margin-right: 0; }

.promotion-o {
  position: relative;
  display: block;
  transition: -webkit-transform 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  transition: transform 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  transition: transform 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55), -webkit-transform 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55); }
  .promotion-o__content {
    position: absolute;
    width: 100%;
    z-index: 2;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    top: 50%;
    text-align: center; }
  .promotion-o__link {
    box-shadow: 0 3px 7px 0 rgba(0, 0, 0, 0.07);
    font-size: 13px;
    padding: 10px 25px;
    font-weight: 600;
    transition: all .3s linear;
    display: inline-block; }

.promotion-o:hover {
  -webkit-transform: translateY(-6px);
          transform: translateY(-6px); }

.i3-banner {
  position: relative;
  display: block;
  overflow: hidden;
  cursor: pointer; }
  .i3-banner:before {
    transition: all 0.6s linear;
    content: '';
    position: absolute;
    z-index: 1;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    opacity: 0;
    background-color: rgba(0, 0, 0, 0.4); }
  .i3-banner__img {
    -webkit-transform: scale(1);
            transform: scale(1);
    transition: all 0.6s ease-in-out; }

.i3-banner:hover:before {
  opacity: 1; }

.i3-banner:hover .i3-banner__img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1); }

.aspect--1048-334 {
  padding-bottom: 31.87023%; }

.section__text-wrap {
  text-align: center; }

.section__content {
  position: relative; }

.section__heading {
  font-weight: 600;
  letter-spacing: -.02rem;
  font-size: 28px;
  position: relative; }

.section__span {
  font-size: 13px;
  display: block; }

.collection {
  position: relative;
  display: block;
  overflow: hidden;
  cursor: pointer; }
  .collection:before {
    transition: all 0.6s linear;
    content: '';
    position: absolute;
    position: absolute;
    z-index: 1;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    opacity: 0;
    background-color: rgba(0, 0, 0, 0.4); }
  .collection__img {
    -webkit-transform: scale(1);
            transform: scale(1);
    transition: all 0.6s ease-in-out; }

.collection:hover:before {
  opacity: 1; }

.collection:hover .collection__img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1); }

.aspect--1286-890 {
  padding-bottom: 69.20684%; }

.filter-category-container {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: center;
      justify-content: center; }

.filter__btn--style-1 {
  position: relative;
  transition: all 0.3s ease 0s;
  display: block;
  border: none;
  padding: 18px;
  font-size: 14px;
  color: #333333;
  font-weight: 600;
  background-color: transparent; }
  .filter__btn--style-1:before {
    content: '';
    width: 0;
    height: 2px;
    background-color: #2a7ae2;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    transition: all 0.2s ease 0s; }
  .filter__btn--style-1:hover {
    color: #2a7ae2; }
    .filter__btn--style-1:hover:before {
      width: 100%; }
  .filter__btn--style-1.js-checked {
    color: #2a7ae2; }
    .filter__btn--style-1.js-checked:before {
      width: 100%; }

.filter__btn--style-2 {
  transition: all 0.3s ease 0s;
  display: block;
  padding: 15px 27px;
  margin: 0 8px 10px;
  border: 2px solid #f7f7f9;
  font-size: 12px;
  color: #7f7f7f;
  background-color: transparent; }
  .filter__btn--style-2:hover {
    border-color: #2a7ae2;
    color: #333333; }
  .filter__btn--style-2.js-checked {
    border-color: #2a7ae2;
    color: #333333; }

.load-more {
  text-align: center;
  padding: 40px 0; }
  .load-more > button {
    padding: 22px 56px;
    border: none;
    border-radius: 5px;
    font-size: 13px; }

.banner-bg {
  padding: 7em 0;
  position: relative;
  background: #f5f5f5 url(../images/banners/banner-bg.jpg) repeat fixed center center;
  background-size: cover; }
  .banner-bg__wrap {
    text-align: center; }
  .banner-bg__text-block {
    display: block; }
  .banner-bg__text-1 {
    font-weight: 600;
    margin-bottom: 6px;
    font-size: 58px; }
  .banner-bg__text-2 {
    font-weight: 600;
    margin-bottom: 12px;
    font-size: 31px; }
  .banner-bg__text-3 {
    margin-bottom: 18px;
    font-size: 14px; }
  .banner-bg__shop-now {
    display: inline-block;
    padding: 14px 30px;
    font-weight: 600;
    border-radius: 40px;
    font-size: 13px; }

.promotion {
  display: block;
  position: relative; }
  .promotion:before {
    transition: all 0.3s linear;
    content: '';
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.8);
    opacity: 0; }
  .promotion__content {
    position: absolute;
    width: 100%;
    z-index: 2;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    top: 50%;
    text-align: center; }
  .promotion__text-wrap {
    display: inline-block;
    background-color: rgba(255, 255, 255, 0.9);
    padding: 30px 15px;
    transition: all 0.5s ease-in-out; }
  .promotion__text-1 {
    font-size: 14px; }
  .promotion__text-2 {
    font-size: 20px;
    font-weight: 600; }

.promotion:hover:before {
  opacity: 1; }

.promotion:hover .promotion__text-wrap {
  background-color: white; }

.column-product__title {
  display: block;
  font-size: 18px;
  font-weight: 600; }

.column-product__list {
  margin: 0;
  padding: 0;
  list-style: none; }

.column-product__item {
  margin-bottom: 30px; }

.column-product__item:last-child {
  margin-bottom: 0; }


#brand-slider {
  position: static; }

@media (max-width: 991px) {
  .block {
    display: block; }
  .success__img-wrap, .success__info-wrap {
    display: none; } }

/*--------------------------------------------------------------
9.0 About-Page
--------------------------------------------------------------*/
.about {
  background-color: #ffffff;
  box-shadow: 0 1px 15px 0 rgba(0, 0, 0, 0.07); }
  .about__container {
    padding: 60px; }
  .about__info {
    text-align: center; }
  .about__h2 {
    color: #333333;
    font-weight: 600;
    margin-bottom: 10px;
    font-size: 24px; }
  .about .about__p-wrap {
    position: relative;
    margin-bottom: 20px; }
    .about .about__p-wrap:before, .about .about__p-wrap:after {
      content: '';
      display: block;
      width: 70px;
      position: absolute;
      border: solid steelblue; }
    .about .about__p-wrap:before {
      top: -10px;
      left: -8px;
      border-top-width: 1px; }
    .about .about__p-wrap:after {
      bottom: -10px;
      right: -8px;
      border-bottom-width: 1px; }
  .about__p {
    color: #333333; }
  .about__link {
    display: inline-block;
    padding: 12px 42px;
    border-radius: 40px;
    font-weight: 600;
    font-size: 12px; }

.team-member {
  background-color: #fbfbfb;
  transition: -webkit-transform 0.7s ease-in-out;
  transition: transform 0.7s ease-in-out;
  transition: transform 0.7s ease-in-out, -webkit-transform 0.7s ease-in-out; }
  .team-member__wrap {
    position: relative; }
  .team-member__social-wrap {
    width: 100%;
    position: absolute;
    top: 50%;
    left: 0;
    opacity: 0;
    z-index: 2;
    -webkit-transform: translateY(-50%) scale(0.8);
            transform: translateY(-50%) scale(0.8);
    transition: all 0.2s ease 0s; }
  .team-member__social-list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 0;
    padding: 0;
    list-style: none; }
    .team-member__social-list > li {
      margin: 0 4px 6px;
      opacity: 0;
      -webkit-transform: translateY(50%);
              transform: translateY(50%);
      transition: all 0.3s ease 0.1s; }
      .team-member__social-list > li > a {
        display: block;
        width: 35px;
        text-align: center;
        border-radius: 50%;
        height: 35px;
        line-height: 35px;
        background-color: #ffffff;
        color: steelblue;
        font-size: 12px;
        transition: all 0.3s ease 0s; }
        .team-member__social-list > li > a:hover {
          color: #ffffff; }
  .team-member__info {
    padding: 16px; }
  .team-member__name {
    display: block;
    font-size: 14px;
    font-weight: 600;
    color: #333333; }
  .team-member__job-title {
    display: block;
    font-size: 11px;
    color: #a0a0a0; }

.team-member:hover {
  -webkit-transform: translateY(-8px);
          transform: translateY(-8px); }
  .team-member:hover .team-member__social-wrap {
    opacity: 1;
    -webkit-transform: translateY(-50%) scale(1);
            transform: translateY(-50%) scale(1); }
  .team-member:hover .team-member__social-list > li {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0); }

.testimonial {
  text-align: center; }
  .testimonial__img-wrap {
    margin-bottom: 16px; }
  .testimonial__double-quote {
    display: block; }
    .testimonial__double-quote i {
      font-size: 28px;
      color: #333333; }
  .testimonial__block-quote {
    margin: 0 auto;
    width: 70%;
    padding: 10px 20px; }
    .testimonial__block-quote p {
      font-size: 14px;
      font-weight: 600;
      color: #333333; }
  .testimonial__author {
    display: block;
    font-size: 13px;
    color: #a0a0a0; }

.testimonial .testimonial__img-wrap .testimonial__img {
  display: inline-block;
  width: 165px;
  height: 165px;
  border-radius: 50%; }

/*--------------------------------------------------------------
10.0 Contact-Page
--------------------------------------------------------------*/
.g-map {
  background-color: #eee; }

#map {
  height: 450px;
  width: 100%; }

.contact-o {
  background-color: #ffffff;
  padding: 23px;
  transition: -webkit-transform 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  transition: transform 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  transition: transform 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55), -webkit-transform 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  border: 2px solid #f5f5f5;
  box-shadow: 0 6px 15px 0 rgba(36, 37, 38, 0.08); }
  .contact-o:hover {
    -webkit-transform: translateY(-6px);
            transform: translateY(-6px); }
  .contact-o__wrap {
    text-align: center; }
  .contact-o__icon {
    margin-bottom: 10px; }
    .contact-o__icon > i {
      color: steelblue;
      font-size: 48px; }
  .contact-o__info-text-1 {
    display: block;
    font-size: 17px;
    margin-bottom: 4px;
    color: #333333;
    font-weight: 600;
    text-transform: uppercase; }
  .contact-o__info-text-2 {
    font-size: 12px;
    margin-bottom: 2px;
    display: block;
    color: #7f7f7f; }

.contact-area__heading {
  margin-bottom: 30px; }
  .contact-area__heading h2 {
    display: inline-block;
    font-size: 26px;
    font-weight: 700;
    color: #333333;
    background-color: #ffffff; }

.contact-f {
  width: 100%; }
  .contact-f .input-text, .contact-f .text-area {
    border-radius: 6px;
    width: 100%; }
  .contact-f .text-area {
    height: 185px; }
  .contact-f .btn {
    padding: 19px 21px;
    border-radius: 25px; }

/*--------------------------------------------------------------
11.0 Cart-Wishlist-Pages
--------------------------------------------------------------*/
.table-responsive {
  overflow-x: auto; }

.table-p {
  width: 100%;
  border: 1px solid #eee;
  border-collapse: collapse; }
  .table-p tr {
    position: relative;
    border-top: 1px solid #eee; }
  .table-p td {
    padding: 20px; }
  .table-p__box {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -ms-flex-align: center;
        align-items: center; }
  .table-p__img-wrap {
    display: inline-block;
    vertical-align: middle;
    background-color: #f5f5f5;
    width: 120px;
    height: 120px; }
    .table-p__img-wrap img {
      display: block;
      min-width: 120px; }
  .table-p__info {
    margin-left: 18px; }
  .table-p__name {
    display: block; }
    .table-p__name > a {
      color: #333333;
      font-size: 14px;
      font-weight: 600;
      transition: color 0.5s; }
      .table-p__name > a:hover {
        color: steelblue; }
  .table-p__category {
    display: block; }
    .table-p__category > a {
      color: #a0a0a0;
      transition: color 0.5s;
      font-size: 12px; }
      .table-p__category > a:hover {
        color: steelblue; }
  .table-p__variant-list {
    margin: 0;
    padding: 0;
    list-style: none; }
    .table-p__variant-list > li > span {
      color: #a0a0a0;
      font-size: 12px; }
  .table-p__price {
    text-align: center;
    display: block;
    color: #333333;
    font-size: 14px;
    font-weight: 600; }
  .table-p__input-counter-wrap {
    text-align: center; }
  .table-p__del-wrap {
    text-align: center; }
  .table-p__delete-link {
    padding: 10px;
    font-size: 16px;
    display: inline-block;
    color: #333333;
    transition: color 0.5s; }
    .table-p__delete-link:hover {
      color: steelblue; }

.w-r {
  background-color: #ffffff;
  border: 1px solid #eee;
  box-shadow: 1px 1px 6px 0 rgba(0, 0, 0, 0.07); }
  .w-r__container {
    display: -ms-flexbox;
    display: flex;
    padding: 20px;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: justify;
        justify-content: space-between; }
  .w-r__wrap-1, .w-r__wrap-2 {
    -ms-flex: 0 1 auto; }
  .w-r__wrap-1 {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: start;
        justify-content: flex-start; }
  .w-r__img-wrap {
    display: inline-block;
    vertical-align: middle;
    background-color: #f5f5f5;
    width: 120px;
    height: 120px; }
    .w-r__img-wrap img {
      display: block;
      min-width: 120px; }
  .w-r__info {
    margin-left: 18px; }
  .w-r__name {
    display: block; }
    .w-r__name > a {
      color: #333333;
      font-size: 14px;
      font-weight: 600;
      transition: color 0.5s; }
      .w-r__name > a:hover {
        color: steelblue; }
  .w-r__category {
    display: block;
    margin-bottom: 2px; }
    .w-r__category > a {
      color: #a0a0a0;
      transition: color 0.5s;
      font-size: 12px; }
      .w-r__category > a:hover {
        color: steelblue; }
  .w-r__price {
    display: block;
    color: steelblue;
    font-size: 14px;
    font-weight: 600; }
  .w-r__discount {
    font-weight: 600;
    margin-left: 12px;
    color: #333333;
    font-size: 14px;
    text-decoration: line-through; }
  .w-r__link {
    font-size: 12px;
    font-weight: 600;
    display: inline-block;
    border-radius: 5px;
    margin: 0 0 10px 10px;
    padding: 12px 30px; }

.route-box {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  background-color: #f1f1f1;
  -ms-flex-pack: justify;
      justify-content: space-between; }
  .route-box__g {
    -ms-flex: 0 1 auto; }
  .route-box__link {
    color: #333333;
    font-size: 13px;
    text-align: center;
    padding: 17px;
    font-weight: 600;
    display: inline-block;
    transition: color 0.5s; }
    .route-box__link:hover {
      color: steelblue; }
  .route-box i {
    margin-right: 2px; }

.f-cart__pad-box {
  border: 1px solid #eee;
  padding: 32px 22px 35px; }

.f-cart__table {
  width: 100%;
  border-collapse: collapse; }
  .f-cart__table td {
    color: #333333;
    vertical-align: middle;
    font-size: 14px;
    font-weight: 600;
    padding: 8px 0; }
  .f-cart__table td:first-child {
    text-align: left; }
  .f-cart__table td {
    text-align: right; }
  .f-cart__table tr:last-child td {
    font-size: 16px;
    font-weight: 700;
    color: steelblue; }

.f-cart__ship-link {
  font-size: 13px;
  text-align: center;
  padding: 17px;
  font-weight: 600;
  border-radius: 6px;
  display: block; }

.f-cart .input-text, .f-cart .select-box, .f-cart .text-area, .f-cart .btn {
  border-radius: 6px;
  width: 100%; }

.f-cart .text-area {
  height: 350px; }

.f-cart .btn {
  padding: 16px;
  font-weight: 600;
  font-size: 13px; }

@media (max-width: 991px) {
  .w-r__wrap-2 {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -ms-flex-align: end;
        align-items: flex-end; } }

@media (max-width: 767px) {
  .table-p td {
    min-width: 200px; }
  .w-r__container {
    -ms-flex-direction: column;
        flex-direction: column; }
  .w-r__wrap-1 {
    -ms-flex-direction: column;
        flex-direction: column; }
  .w-r__info {
    text-align: center;
    margin: 15px 0 15px; }
  .w-r__wrap-2 {
    -ms-flex-align: center;
        align-items: center; } }

/*--------------------------------------------------------------
12.0 Empty-404-Pages
--------------------------------------------------------------*/
.empty {
  text-align: center; }
  .empty__big-text {
    display: block;
    margin-bottom: 12px;
    color: steelblue;
    line-height: 1;
    font-size: 85px;
    font-weight: 600; }
  .empty__text-1 {
    display: block;
    font-size: 14px;
    font-weight: 700;
    margin-bottom: 12px;
    color: #333333; }
  .empty__text-2 {
    display: block;
    font-size: 14px;
    font-weight: 700;
    margin-bottom: 24px;
    color: #a0a0a0; }
    .empty__text-2 > a {
      color: steelblue;
      padding: 2px; }
      .empty__text-2 > a:after {
        content: ',';
        margin: 0 2px;
        color: #333333; }
    .empty__text-2 > a:last-child:after {
      content: none; }
  .empty__search-form {
    position: relative;
    width: 40%;
    margin: 0 auto; }
    .empty__search-form .btn {
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%);
      right: 8px; }
  .empty__redirect-link {
    border-radius: 40px;
    padding: 16px;
    display: inline-block;
    font-weight: 600;
    font-size: 13px; }

#search-label {
  padding: 0 36px 0 18px;
  width: 100%; }

/*--------------------------------------------------------------
13.0 Checkout-Page
--------------------------------------------------------------*/
.msg {
  background-color: #ffffff;
  box-shadow: 0 6px 15px 0 rgba(36, 37, 38, 0.08);
  padding: 20px; }
  .msg__text {
    padding: 8px 0;
    display: block;
    font-size: 14px;
    font-weight: 600;
    color: #333333; }

.l-f__form {
  width: 100%; }

.l-f .input-text {
  width: 100%; }

.l-f .input-text, .l-f .btn {
  border-radius: 6px; }

.l-f .btn {
  font-weight: 600;
  padding: 12px 18px; }

.c-f__form {
  position: relative;
  width: 50%; }

.c-f .input-text {
  width: 100%; }

.c-f .input-text, .c-f .btn {
  border-radius: 6px; }

.c-f .btn {
  font-weight: 600;
  padding: 12px 18px; }

.checkout-f {
  width: 100%; }
  .checkout-f .input-text, .checkout-f .select-box, .checkout-f .text-area, .checkout-f .btn {
    width: 100%;
    border-radius: 6px; }
  .checkout-f .text-area {
    height: 185px; }
  .checkout-f .btn {
    font-weight: 600;
    padding: 18px; }

.checkout-f__h1 {
  color: #333333;
  font-size: 18px;
  margin-bottom: 8px; }

.o-summary__section {
  background-color: #ffffff;
  border: 1px solid #eee; }

.o-summary__box {
  padding: 20px; }

.o-summary__item-wrap {
  max-height: 228px;
  padding: 17px;
  overflow-y: auto; }

.o-summary__table {
  width: 100%;
  border-collapse: collapse; }
  .o-summary__table td {
    color: #333333;
    vertical-align: middle;
    font-size: 14px;
    font-weight: 600;
    padding: 8px 0; }
  .o-summary__table td:first-child {
    text-align: left; }
  .o-summary__table td {
    text-align: right; }
  .o-summary__table tr:last-child td {
    font-size: 16px;
    font-weight: 700;
    color: steelblue; }

.o-card {
  border: 1px solid #f5f5f5;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: justify;
      justify-content: space-between;
  background-color: #ffffff;
  padding: 10px;
  margin-bottom: 22px; }
  .o-card:last-child {
    margin-bottom: 0; }
  .o-card__flex {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center; }
  .o-card__img-wrap {
    display: inline-block;
    vertical-align: middle;
    width: 60px;
    height: 60px;
    background-color: #f5f5f5; }
    .o-card__img-wrap img {
      display: block;
      min-width: 60px; }
  .o-card__info-wrap {
    margin-left: 18px; }
  .o-card__name {
    display: block; }
    .o-card__name > a {
      color: #333333;
      font-size: 13px;
      font-weight: 600;
      transition: color 0.5s; }
      .o-card__name > a:hover {
        color: steelblue; }
  .o-card__quantity {
    font-size: 13px;
    margin-bottom: 2px;
    display: block; }
  .o-card__price {
    display: block;
    color: steelblue;
    font-size: 13px;
    font-weight: 600; }
  .o-card__del {
    padding: 10px;
    font-size: 16px;
    display: inline-block;
    color: #333333;
    transition: color 0.5s; }
    .o-card__del:hover {
      color: steelblue; }

.ship-b__text {
  display: block;
  font-weight: 600;
  font-size: 13px;
  color: #333333;
  margin-bottom: 4px; }

.ship-b__box {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: justify;
      justify-content: space-between; }

.ship-b__p {
  margin-bottom: 4px;
  color: #7f7f7f;
  font-weight: 600;
  font-size: 13px;
  -ms-flex: 0 0 50%;
      flex: 0 0 50%;
  max-width: 50%; }

.ship-b__edit {
  display: inline-block;
  font-size: 13px;
  font-weight: 600;
  padding: 6px 12px;
  border-radius: 6px; }

@media (max-width: 575px) {
  .o-summary__item-wrap {
    max-height: 466px; }
  .o-card__flex {
    display: block;
    padding: 14px;
    text-align: center; }
  .o-card__info-wrap {
    margin-left: 0; }
  .ship-b__box {
    display: block; }
  .ship-b__p {
    max-width: 100%; } }

/*--------------------------------------------------------------
14.0 Signin Signup Lost Password-Page
--------------------------------------------------------------*/
.l-f-o {
  border: 1px solid #eee; }
  .l-f-o__pad-box {
    padding: 20px; }
  .l-f-o__form {
    width: 100%; }
  .l-f-o .input-text, .l-f-o .btn, .l-f-o .select-box {
    border-radius: 6px; }
  .l-f-o .input-text {
    width: 100%; }
  .l-f-o .btn {
    font-weight: 600;
    padding: 12px 18px; }
  .l-f-o__create-link {
    font-size: 13px;
    text-align: center;
    padding: 12px;
    display: block;
    font-weight: 600;
    border-radius: 6px; }

/*--------------------------------------------------------------
15.0 FAQ-Page
--------------------------------------------------------------*/
.faq__heading {
  font-weight: 700;
  font-size: 13px;
  color: #333333;
  margin-bottom: 6px; }

.faq__text {
  font-size: 13px;
  color: #7f7f7f; }

.faq__list {
  border-top: 1px solid #eee;
  padding: 14px 0; }
  .faq__list:last-child {
    border-bottom: 1px solid #eee; }

.faq__question {
  display: block;
  position: relative;
  padding: 8px 0;
  font-size: 16px;
  font-weight: 600;
  color: #333333; }

.faq__question:before {
  content: "\F107";
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  position: absolute;
  top: 8px;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
  right: 12px;
  transition: -webkit-transform 0.5s ease-in-out;
  transition: transform 0.5s ease-in-out;
  transition: transform 0.5s ease-in-out, -webkit-transform 0.5s ease-in-out; }

.faq__question.collapsed:before {
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg); }

/*--------------------------------------------------------------
16.0 Dashboard-Pages
--------------------------------------------------------------*/
.dash__box--bg-white {
  background-color: #ffffff; }

.dash__box--border {
  border: 1px solid #eee; }

.dash__box--bg-grey {
  background-color: #fbfbfb; }

.dash__box--shadow {
  box-shadow: -2px 0px 14px 0 rgba(36, 37, 38, 0.08); }

.dash__box--shadow-2 {
  box-shadow: -6px 2px 8px 0 rgba(36, 37, 38, 0.08); }

.dash__box--radius {
  border-radius: 15px; }

.dash__pad-1 {
  padding: 26px 20px; }

.dash__pad-2 {
  padding: 24px; }

.dash__pad-3 {
  padding: 26px; }

.dash__f-list {
  margin: 0;
  padding: 0;
  list-style: none; }
  .dash__f-list > li {
    padding: 4px 0; }
    .dash__f-list > li > a {
      font-size: 13px;
      display: block;
      color: #000000; }

.dash-l-r {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: justify;
      justify-content: space-between; }

.dash-active {
  font-weight: 600;
  color: #000000; }

.dash__w-list {
  margin: 0;
  padding: 0;
  list-style: none;
  text-align: center; }
  .dash__w-list > li {
    border-bottom: 1px solid #eee; }

.dash__w-wrap {
  padding: 18px 0; }

.dash__w-icon {
  width: 45px;
  height: 45px;
  display: inline-block;
  line-height: 45px;
  border-radius: 50%;
  font-size: 14px;
  margin-bottom: 8px; }

.dash__w-icon-style-1 {
  background-color: rgba(255, 69, 0, 0.14); }
  .dash__w-icon-style-1 > i {
    color: steelblue; }

.dash__w-icon-style-2 {
  background-color: rgba(0, 148, 68, 0.14); }
  .dash__w-icon-style-2 > i {
    color: #009444; }

.dash__w-icon-style-3 {
  background-color: rgba(49, 133, 252, 0.14); }
  .dash__w-icon-style-3 > i {
    color: #3185FC; }

.dash__w-text {
  display: block;
  font-weight: 700;
  font-size: 40px;
  line-height: 1;
  color: #000000; }

.dash__w-name {
  display: block;
  color: #a0a0a0;
  font-weight: 600;
  font-size: 13px; }

.dash__h1 {
  line-height: 1;
  color: #333333;
  font-size: 18px; }

.dash__h2 {
  line-height: 1;
  font-size: 14px;
  color: #333333; }

.dash__text {
  display: block;
  font-size: 12px;
  color: #7f7f7f; }

.dash__text-2 {
  display: block;
  font-size: 13px;
  font-weight: 600;
  color: #7f7f7f; }

.dash__link > a {
  font-size: 13px;
  font-weight: 600;
  transition: color 0.5s linear; }

.dash__link--brand > a {
  color: steelblue; }
  .dash__link--brand > a:hover {
    color: #fa4400; }

.dash__link--secondary > a {
  color: #333333; }
  .dash__link--secondary > a:hover {
    color: steelblue; }

.dash__link--black > a {
  color: #000000; }

.dash__table-wrap {
  height: 300px;
  overflow: auto; }

.dash__table {
  width: 100%;
  border-collapse: collapse; }
  .dash__table thead {
    background-color: #fbfbfb; }
  .dash__table th, .dash__table td {
    padding: 20px;
    text-align: center;
    font-weight: 600;
    color: #333333; }
  .dash__table th {
    font-size: 14px; }
  .dash__table td {
    font-size: 13px; }
  .dash__table tbody tr {
    border-bottom: 1px solid #eee; }
    .dash__table tbody tr:last-child {
      border-bottom: 0; }

.dash__table-img-wrap {
  background-color: #f5f5f5;
  display: inline-block;
  vertical-align: middle;
  width: 40px;
  height: 40px; }
  .dash__table-img-wrap img {
    display: block;
    min-width: 40px; }

.dash-edit-p {
  width: 100%; }
  .dash-edit-p .btn, .dash-edit-p .input-text, .dash-edit-p .select-box {
    border-radius: 6px; }
  .dash-edit-p .input-text {
    width: 100%; }
  .dash-edit-p .btn {
    font-weight: 600;
    padding: 16px 46px; }

.dash__custom-link {
  font-weight: 600;
  display: inline-block;
  text-align: center;
  padding: 14px 18px;
  font-size: 13px;
  border-radius: 6px;
  width: 12rem; }

.manage-o__text {
  font-size: 13px;
  font-weight: 600; }

.manage-o__text-2 {
  font-size: 14px;
  font-weight: 600; }

.manage-o__header {
  padding-bottom: 14px;
  border-bottom: 1px solid #eee; }

.manage-o__icon {
  font-weight: 600;
  font-size: 13px;
  color: #333333; }

.manage-o__timeline {
  padding-top: 40px; }
  .manage-o__timeline [class*="col-"] {
    padding: 0;
    text-align: center; }

.timeline-row {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }

.timeline-l-i {
  position: relative;
  border-radius: 3px;
  border-top: 3px solid #eee; }
  .timeline-l-i .timeline-circle {
    position: absolute;
    width: 18px;
    height: 18px;
    background: #ffffff;
    border: 2px solid #eee;
    margin: auto;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0; }
    .timeline-l-i .timeline-circle:before {
      content: "";
      display: block;
      width: 8px;
      height: 8px;
      background-color: #eee;
      margin: auto;
      position: absolute;
      top: 0;
      left: 0;
      bottom: 0;
      right: 0; }

.timeline-l-i.timeline-l-i--finish {
  border-color: #6B5AED; }
  .timeline-l-i.timeline-l-i--finish .timeline-circle {
    border-color: #6B5AED; }
    .timeline-l-i.timeline-l-i--finish .timeline-circle:before {
      background-color: #6B5AED; }

.timeline-text {
  margin-top: 20px;
  font-size: 13px;
  text-transform: uppercase;
  display: block;
  font-weight: 600;
  color: #333333; }

.manage-o__description {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: justify;
      justify-content: space-between; }

.description__container {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center; }

.description__img-wrap {
  width: 90px;
  height: 90px;
  border-radius: 50%;
  display: inline-block;
  vertical-align: middle;
  background: #f5f5f5; }
  .description__img-wrap img {
    border-radius: 50%;
    display: block;
    min-width: 90px; }

.description-title {
  margin-left: 12px;
  font-size: 14px;
  font-weight: 600;
  color: #333333; }

.dash__address-header {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: justify;
      justify-content: space-between; }

.dash__table-2-wrap {
  overflow: auto; }

.dash__table-2 {
  width: 100%;
  border-collapse: collapse; }
  .dash__table-2 thead {
    background-color: #fbfbfb; }
  .dash__table-2 th, .dash__table-2 td {
    padding: 20px;
    min-width: 200px;
    text-align: left;
    font-weight: 600;
    color: #333333; }
  .dash__table-2 th {
    font-size: 14px; }
  .dash__table-2 td {
    font-size: 13px; }
  .dash__table-2 tbody tr {
    border-bottom: 1px solid #eee; }
    .dash__table-2 tbody tr:last-child {
      border-bottom: 0; }

.address-book-edit {
  display: inline-block;
  font-size: 13px;
  font-weight: 600;
  padding: 6px 12px;
  border-radius: 6px; }

.dash__address-make {
  width: 100%; }
  .dash__address-make .btn {
    font-weight: 600;
    padding: 16px 46px;
    border-radius: 6px; }

.dash-address-manipulation {
  width: 100%; }
  .dash-address-manipulation .btn, .dash-address-manipulation .input-text, .dash-address-manipulation .select-box {
    border-radius: 6px; }
  .dash-address-manipulation .input-text, .dash-address-manipulation .select-box {
    width: 100%; }
  .dash-address-manipulation .btn {
    font-weight: 600;
    padding: 16px 46px; }

.dash-track-order {
  width: 100%; }
  .dash-track-order .btn, .dash-track-order .input-text {
    border-radius: 6px; }
  .dash-track-order .input-text {
    width: 100%; }
  .dash-track-order .btn {
    font-weight: 600;
    padding: 16px 46px; }

.m-order {
  width: 100%; }
  .m-order__select-wrapper {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center; }
  .m-order label {
    color: #333333;
    font-size: 13px;
    font-weight: 600; }
  .m-order .select-box {
    border-radius: 6px; }

.m-order__list {
  background-color: #ffffff; }

.m-order__get {
  border: 1px solid #eee;
  margin-bottom: 30px;
  background-color: #ffffff;
  padding: 24px; }
  .m-order__get:last-child {
    margin-bottom: 0; }

.manage-o__badge {
  display: inline-block;
  text-align: center;
  width: 5.9375rem;
  padding: 8px;
  font-size: 13px;
  font-weight: 600;
  background-color: transparent;
  border-radius: 32px; }

.badge--processing {
  background-color: rgba(49, 133, 252, 0.14);
  color: #3185FC; }

.badge--shipped {
  background-color: rgba(0, 148, 68, 0.14);
  color: #009444; }

.badge--delivered {
  background-color: rgba(255, 69, 0, 0.14);
  color: steelblue; }

@media (max-width: 991px) {
  .dash__box--w {
    margin-bottom: 30px; } }

@media (max-width: 767px) {
  .dash__address-header {
    display: block; }
    .dash__address-header .dash__h1 {
      margin-bottom: 8px; }
    .dash__address-header .dash__link {
      display: block; } }

@media (max-width: 575px) {
  .dash-l-r {
    display: block; }
  .manage-o__description {
    display: block;
    text-align: center; }
  .description__container {
    display: block; }
  .description-title {
    margin: 12px 0; } }

/*--------------------------------------------------------------
17.0 Blog-Pages
--------------------------------------------------------------*/
.blog-t-w {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }

.post-prev, .post-next {
  text-align: center;
  z-index: 1;
  cursor: pointer;
  display: inline-block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: 35px;
  height: 35px;
  line-height: 35px;
  border-radius: 50%;
  color: #333333;
  background-color: #ffffff;
  box-shadow: 0 6px 15px 0 rgba(36, 37, 38, 0.08);
  margin: auto 0;
  opacity: 0;
  transition: opacity .6s ease-in; }

.post-prev {
  left: 20px; }

.post-next {
  right: 20px; }

.post-prev:before, .post-next:before {
  content: '';
  background: rgba(255, 255, 255, 0.3);
  width: 35px;
  height: 35px;
  position: absolute;
  left: 0;
  top: 0;
  transition: all .3s;
  border-radius: 50%;
  box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.4); }

.post-prev:hover:before, .post-next:hover:before {
  -webkit-transform: scale(1.6);
          transform: scale(1.6);
  opacity: .6; }

.post-gallery:hover .post-prev, .post-gallery:hover .post-next {
  opacity: 1; }

.post-video-block {
  position: relative;
  background-color: #f5f5f5;
  width: 100%; }

.post-video-link {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 7;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center; }

.post-video-link:before {
  width: 3.875rem;
  height: 3.875rem;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -1.9375rem;
  margin-left: -1.9375rem;
  transition: -webkit-transform .3s;
  transition: transform .3s;
  transition: transform .3s, -webkit-transform .3s;
  border-radius: 50%;
  box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.4);
  z-index: 3; }

.post-video-link:hover:before {
  box-shadow: 0 0 0 12px rgba(255, 255, 255, 0.3);
  -webkit-transform: scale(0.9);
          transform: scale(0.9); }

.post-video-block .post-video-link:before {
  content: '';
  background: url(../video/video-play.png) no-repeat 0 0;
  background-size: contain; }

.post-video-block.process .post-video-link:before {
  content: none; }

.post-video-block.process.pause .post-video-link:before {
  content: '';
  background: url(../video/video-pause.png) no-repeat; }

.post-center-wrap {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center; }

.aspect--1366-768 {
  padding-bottom: 56.22255%; }

.bp {
  border-radius: 6px;
  background-color: #ffffff;
  box-shadow: 1px 1px 8px 0 rgba(36, 37, 38, 0.08); }
  .bp__wrap {
    padding: 25px; }
  .bp__thumbnail {
    margin-bottom: 12px; }
  .bp__stat {
    margin-bottom: 6px; }
    .bp__stat .bp__stat-wrap {
      margin-right: 22px; }
      .bp__stat .bp__stat-wrap:last-child {
        margin-right: 0; }
  .bp__publish-date > a {
    font-size: 12px;
    font-weight: 600;
    color: #a0a0a0; }
  .bp__author > a {
    font-size: 12px;
    text-decoration: overline;
    font-weight: 600;
    color: steelblue; }
  .bp__comment > a {
    color: #7f7f7f;
    font-weight: 600;
    font-size: 12px; }
  .bp__category > a {
    color: #a0a0a0;
    font-weight: 600;
    transition: color 110ms ease-in-out;
    font-size: 12px;
    margin-right: 2px; }
    .bp__category > a:last-child {
      margin-right: 0; }
    .bp__category > a:hover {
      color: steelblue; }
  .bp__h1 {
    display: block;
    margin-bottom: 6px; }
    .bp__h1 > a {
      font-size: 20px;
      font-weight: 600;
      color: #333333; }
  .bp__h2 {
    display: block;
    margin-bottom: 16px;
    font-size: 14px;
    font-weight: 400;
    color: #a0a0a0; }
  .bp__p {
    margin-bottom: 12px;
    font-size: 13px;
    color: #7f7f7f; }
  .bp__read-more {
    display: block;
    margin-bottom: 6px; }
    .bp__read-more > a {
      font-size: 14px;
      font-weight: 700;
      color: steelblue; }
  .bp__social-list {
    margin: 0;
    padding: 0;
    list-style: none;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .bp__social-list > li {
      margin-right: 16px; }
      .bp__social-list > li:last-child {
        margin-right: 0; }
      .bp__social-list > li > a {
        font-size: 14px; }

.bp--img .bp__thumbnail {
  overflow: hidden; }
  .bp--img .bp__thumbnail img {
    transition: -webkit-transform 0.6s ease-in-out;
    transition: transform 0.6s ease-in-out;
    transition: transform 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out;
    -webkit-transform: scale(1);
            transform: scale(1); }

.bp--img:hover .bp__thumbnail {
  overflow: hidden; }
  .bp--img:hover .bp__thumbnail img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1); }

.bp audio, .bp video, .bp-mini audio, .bp-mini video, .bp-detail audio, .bp-detail video {
  display: block;
  width: 100%; }

.blog-m__element {
  width: 33.33%;
  padding: 20px 10px; }

.bp-mini {
  background-color: #ffffff;
  box-shadow: 2px 2px 8px 0 rgba(36, 37, 38, 0.08);
  overflow: hidden;
  border-radius: 15px; }
  .bp-mini__content {
    padding: 4px 20px 10px; }
  .bp-mini__stat {
    margin-bottom: 2px; }
    .bp-mini__stat .bp-mini__stat-wrap {
      margin-right: 22px; }
      .bp-mini__stat .bp-mini__stat-wrap:last-child {
        margin-right: 0; }
  .bp-mini__publish-date > a {
    font-size: 11px;
    font-weight: 600;
    color: #7f7f7f; }
  .bp-mini__preposition {
    color: #7f7f7f;
    font-size: 12px; }
  .bp-mini__author > a {
    color: steelblue;
    font-size: 12px; }
  .bp-mini__comment > a {
    color: #7f7f7f;
    font-size: 12px; }
  .bp-mini__category {
    margin-bottom: 4px; }
    .bp-mini__category > a {
      color: #7f7f7f;
      font-weight: 600;
      transition: color 110ms ease-in-out;
      font-size: 11px;
      margin-right: 2px; }
      .bp-mini__category > a:last-child {
        margin-right: 0; }
      .bp-mini__category > a:hover {
        color: steelblue; }
    .bp-mini__category > a:last-child:after {
      content: none; }
  .bp-mini__h1 {
    display: block;
    margin-bottom: 4px; }
    .bp-mini__h1 > a {
      transition: color 110ms ease-in-out;
      font-size: 14px;
      font-weight: 600;
      color: #333333; }
      .bp-mini__h1 > a:hover {
        color: steelblue; }
  .bp-mini__p {
    margin-bottom: 8px;
    font-size: 12px;
    color: #7f7f7f; }

.bp-mini--img .bp-mini__thumbnail {
  overflow: hidden; }
  .bp-mini--img .bp-mini__thumbnail img {
    transition: -webkit-transform 0.6s ease-in-out;
    transition: transform 0.6s ease-in-out;
    transition: transform 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out;
    -webkit-transform: scale(1);
            transform: scale(1); }

.bp-mini--img:hover .bp-mini__thumbnail {
  overflow: hidden; }
  .bp-mini--img:hover .bp-mini__thumbnail img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1); }

.detail-post {
  max-width: 740px;
  padding: 0 15px;
  width: 100%;
  margin: 0 auto; }

.bp-detail {
  position: relative; }
  .bp-detail__thumbnail {
    margin-bottom: 12px; }
  .bp-detail__stat {
    margin-bottom: 6px; }
    .bp-detail__stat .bp-detail__stat-wrap {
      margin-right: 22px; }
      .bp-detail__stat .bp-detail__stat-wrap:last-child {
        margin-right: 0; }
  .bp-detail__publish-date > a {
    font-size: 12px;
    font-weight: 600;
    color: #a0a0a0; }
  .bp-detail__author > a {
    font-size: 12px;
    text-decoration: overline;
    font-weight: 600;
    color: steelblue; }
  .bp-detail__category > a {
    color: #a0a0a0;
    font-weight: 600;
    transition: color 110ms ease-in-out;
    font-size: 12px;
    margin-right: 2px; }
    .bp-detail__category > a:last-child {
      margin-right: 0; }
    .bp-detail__category > a:hover {
      color: steelblue; }
  .bp-detail__h1 {
    display: block;
    margin-bottom: 6px; }
    .bp-detail__h1 > a {
      font-size: 20px;
      font-weight: 600;
      color: #333333; }
  .bp-detail__p {
    margin-bottom: 16px;
    color: #333333;
    font-size: 18px;
    line-height: 2; }
    .bp-detail__p a {
      font-weight: 700;
      color: steelblue;
      transition: all .3s; }
      .bp-detail__p a:hover {
        color: #7f7f7f;
        text-decoration: underline; }

.bp-detail__q {
  width: 100%;
  text-align: center;
  padding: 3rem;
  margin: 0 0 1rem;
  background-color: #ffffff;
  border-radius: 6px;
  border: 2px solid steelblue; }
  .bp-detail__q i {
    font-size: 2.125rem;
    color: #333333;
    margin-bottom: 8px; }

.bp-detail__q-title {
  display: block;
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 8px;
  color: #333333; }

.bp-detail__q-citation {
  display: block;
  font-size: 12px;
  font-weight: 600;
  color: #7f7f7f; }

.bp-detail__social-list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .bp-detail__social-list > li {
    margin-right: 16px; }
    .bp-detail__social-list > li:last-child {
      margin-right: 0; }
    .bp-detail__social-list > li > a {
      font-size: 1.125rem; }

.bp-detail__postnp {
  margin: 1.375rem 0; }
  .bp-detail__postnp a {
    font-size: 13px;
    border-bottom: 1px solid #333333;
    font-weight: 600;
    color: #333333;
    transition: color 110ms ease-in-out,border-color 110ms ease-in-out; }
    .bp-detail__postnp a:hover {
      color: steelblue;
      border-color: steelblue; }

.blog-w__h {
  display: block;
  vertical-align: middle;
  font-size: 16px;
  color: #333333;
  letter-spacing: 0.03em;
  font-weight: 600;
  margin-bottom: 24px;
  padding-bottom: 12px;
  border-bottom: 1px solid #f7f7f7; }

.blog-w__list {
  margin: 0;
  padding: 0;
  list-style: none; }
  .blog-w__list > li {
    margin-bottom: 12px; }
    .blog-w__list > li:last-child {
      margin-bottom: 0; }
    .blog-w__list > li > a {
      font-size: 12px;
      font-weight: 600;
      color: #7f7f7f; }
      .blog-w__list > li > a:hover {
        color: #333333; }

.blog-search-form {
  position: relative;
  width: 100%; }
  .blog-search-form .input-text {
    width: 100%;
    border-radius: 6px; }
  .blog-search-form .btn {
    position: absolute;
    top: 50%;
    right: 15px;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    font-size: 18px; }

.blog-w__b-l {
  margin: 0;
  padding: 0;
  list-style: none; }
  .blog-w__b-l > li {
    margin-bottom: 30px; }
    .blog-w__b-l > li:last-child {
      margin-bottom: 0; }

.blog-w__b-l-2 {
  margin: 0;
  padding: 0;
  list-style: none; }
  .blog-w__b-l-2 > li {
    margin-bottom: 8px; }
    .blog-w__b-l-2 > li:last-child {
      margin-bottom: 0; }

.b-l__date {
  font-size: 10px;
  color: #a0a0a0;
  display: block;
  margin-bottom: 6px; }

.b-l__text {
  font-size: 12px;
  color: #7f7f7f; }

.b-l__h {
  display: block;
  margin-bottom: 6px; }
  .b-l__h > a {
    font-size: 12px;
    transition: color 110ms ease-in-out;
    color: #333333;
    font-weight: 600; }
    .b-l__h > a:hover {
      color: steelblue; }

.b-l__h-2 > a {
  font-size: 12px;
  transition: color 110ms ease-in-out;
  color: #333333;
  font-weight: 600; }
  .b-l__h-2 > a:hover {
    color: steelblue; }

.b-l__p {
  display: block;
  font-size: 12px;
  color: #7f7f7f; }

.blog-pg {
  margin: 0;
  padding: 0;
  list-style: none;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center; }
  .blog-pg > li {
    margin-right: 14px; }
    .blog-pg > li:last-child {
      margin-right: 0; }
    .blog-pg > li > a {
      width: 42px;
      text-align: center;
      height: 42px;
      line-height: 42px;
      font-size: 12px;
      display: block;
      font-weight: 600;
      border-radius: 50%;
      background-color: transparent;
      color: #333333; }

.blog-pg > li > a:hover {
  background-color: steelblue;
  color: #ffffff; }

.blog-pg > li.blog-pg--active > a {
  background-color: steelblue;
  color: #ffffff;
  border-color: steelblue; }

.d-meta__text {
  display: block;
  color: #333333;
  font-size: 32px;
  font-weight: 700; }

.d-meta__text-2 {
  display: block;
  color: #333333;
  font-size: 18px;
  font-weight: 600; }

.d-meta__text-3 {
  display: block;
  color: #7f7f7f;
  font-size: 12px; }

.d-meta__comments ol {
  margin: 0;
  padding: 0;
  list-style: none; }

.d-meta__comments .comment-children {
  padding-left: 1rem; }

.d-meta__p-comment {
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 1.5rem; }

.p-comment__wrap1 {
  margin-right: 20px; }

.p-comment__img-wrap {
  width: 80px;
  height: 80px;
  background-color: #f5f5f5; }

.p-comment__author {
  display: block;
  margin-bottom: 2px;
  font-size: 14px;
  font-weight: 600;
  color: #333333; }

.p-comment__timestamp {
  display: block;
  margin-bottom: 2px; }
  .p-comment__timestamp a {
    font-size: 12px;
    font-weight: 600;
    color: #7f7f7f;
    transition: color 110ms ease-in-out; }
    .p-comment__timestamp a:hover {
      color: steelblue; }

.p-comment__paragraph {
  color: #7f7f7f;
  font-size: 13px;
  margin-bottom: 8px;
  width: 100%;
  max-width: 470px; }

.p-comment__reply {
  font-size: 13px;
  font-weight: 600;
  color: steelblue;
  border-bottom: 0; }
  .p-comment__reply:hover {
    border-bottom: 1px solid steelblue; }

.respond__form {
  width: 100%; }
  .respond__form .btn, .respond__form .input-text, .respond__form .text-area {
    border-radius: 6px; }
  .respond__form .input-text, .respond__form .text-area {
    width: 100%; }
  .respond__form .text-area {
    height: 15.625rem; }
  .respond__form .btn {
    font-weight: 600;
    padding: 16px 46px; }

.respond__group {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap; }
  .respond__group div {
    -ms-flex: 1;
        flex: 1;
    margin-right: 14px; }
    .respond__group div:last-child {
      margin-right: 0; }

@media (max-width: 991px) {
  .blog-m__element {
    width: 50%; }
  .respond__group {
    display: block; }
    .respond__group div {
      display: block;
      margin-right: 0; } }

@media (max-width: 767px) {
  .blog-m__element {
    width: 100%; } }





/*--------------------------------------------------------------
18.0 Product-Detail-Pages
--------------------------------------------------------------*/

/* Breadcrumb navigation styles */
.pd-breadcrumb__list {
  list-style: none; /* Supprime les puces de la liste */
  padding: 0; /* Supprime le padding */
  margin: 0; /* Supprime la marge */
  word-wrap: break-word; /* Gère le débordement de texte */
}

.pd-breadcrumb__list > li {
  display: inline-block; /* Affiche les éléments en ligne */
}

.pd-breadcrumb__list > li > a {
  color: #007bff; /* Couleur bleue pour les liens */
  font-size: 12px; /* Taille de police */
  transition: color 0.3s; /* Transition douce pour le changement de couleur */
}

.pd-breadcrumb__list > li > a:hover {
  color: #0056b3; /* Couleur bleue plus foncée au survol */
}

.pd-breadcrumb__list > li.is-marked > a {
  color: #0056b3; /* Couleur bleue foncée pour l'élément marqué */
  font-weight: 700; /* Gras pour l'élément actif */
}

.pd-breadcrumb__list > li.has-separator:after {
  content: '-'; /* Séparateur entre les éléments */
  margin: 0 6px; /* Espace autour du séparateur */
}

/* Styles de l'élément de détail du produit */
.pd {
  cursor: pointer; /* Curseur de pointeur pour les éléments cliquables */
}

.pd-wrap {
  position: relative; /* Positionnement relatif pour les enfants */
}

.pd-text {
  position: absolute; /* Position absolue pour placer le texte */
  top: 15px; /* Position depuis le haut */
  padding: 8px; /* Espace intérieur */
  right: 15px; /* Position depuis la droite */
  font-size: 12px; /* Taille de police */
  color: #333; /* Couleur du texte */
}

/* Liste des réseaux sociaux */
.pd-social-list {
  margin: 0; /* Supprime la marge */
  padding: 0; /* Supprime le padding */
  list-style: none; /* Supprime les puces de la liste */
  display: flex; /* Affichage flexible pour les éléments */
  flex-wrap: wrap; /* Permet le retour à la ligne */
}

.pd-social-list > li {
  margin-right: 16px; /* Espace entre les éléments */
}

.pd-social-list > li:last-child {
  margin-right: 0; /* Supprime l'espace après le dernier élément */
}

.pd-social-list > li > a {
  font-size: 1.125rem; /* Taille de police */
  transition: color 0.3s; /* Transition pour le changement de couleur */
  color: #333; /* Couleur du lien */
}

/* Styles pour les étiquettes de détail du produit */
.pd-detail__label {
  display: block; /* Affiche l'étiquette sur une nouvelle ligne */
  font-size: 14px; /* Taille de police */
  font-weight: 700; /* Gras */
  color: #333; /* Couleur du texte */
}

/* Détails en ligne */
.pd-detail__inline span {
  margin-right: 0.375rem; /* Espace entre les éléments en ligne */
}

.pd-detail__inline span:last-child {
  margin-right: 0; /* Supprime l'espace après le dernier élément */
}

/* Alignement et style des détails en ligne */
.pd-detail-inline-2 {
  display: flex; /* Affichage flexible */
  flex-wrap: nowrap; /* Pas de retour à la ligne */
  align-items: center; /* Centre les éléments verticalement */
}

.pd-detail-inline-2 div {
  margin-right: 14px; /* Espace entre les éléments */
}

.pd-detail-inline-2 div:last-child {
  margin-right: 0; /* Supprime l'espace après le dernier élément */
}

/* Styles pour le nom du produit */
.pd-detail__name {
  display: block; /* Affiche le nom sur une nouvelle ligne */
  color: #333; /* Couleur du texte */
  font-size: 16px; /* Taille de police */
  font-weight: 600; /* Semi-gras */
}

/* Styles pour le prix du produit */
.pd-detail__price {
  color: #0056b3; /* Couleur bleue pour le prix */
  font-size: 2rem; /* Taille de police plus grande */
  font-weight: 700; /* Gras */
  transition: color 0.3s ease, transform 0.3s ease; /* Transition pour un effet doux */
}

.pd-detail__price:hover {
  color: #0056b3; /* Changement de couleur au survol */
  transform: scale(1.1); /* Légère augmentation de la taille au survol */
}


/* Styles pour le rabais */
.pd-detail__discount {
  color: #007bff; /* Couleur bleue pour le rabais */
  font-size: 14px; /* Taille de police */
  font-weight: 600; /* Semi-gras */
  transition: color 0.3s; /* Transition douce pour le changement de couleur */
}

.pd-detail__del {
  color: #a0a0a0; /* Couleur gris clair pour le prix barré */
  font-size: 12px; /* Taille de police */
}

/* Styles pour la notation */
.pd-detail__rating {
  display: block; /* Affiche la notation sur une nouvelle ligne */
}

.pd-detail__rating i {
  font-size: 12px; /* Taille de police pour les icônes de notation */
}

/* Styles pour les avis des produits */
.pd-detail__review > a {
  font-size: 12px; /* Taille de police */
  transition: color 0.3s; /* Transition pour le changement de couleur */
  color: #333; /* Couleur du texte */
}

.pd-detail__review > a:hover {
  color: #007bff; /* Couleur bleue au survol */
  text-decoration: underline; /* Soulignement au survol */
}

/* Styles pour la disponibilité et le stock */
.pd-detail__stock,
.pd-detail__left {
  font-size: 12px; /* Taille de police */
  font-weight: 600; /* Semi-gras */
  padding: 8px; /* Espace intérieur */
  display: inline-block; /* Affichage en ligne */
  border-radius: 30px; /* Bords arrondis */
}

.pd-detail__stock {
  background-color: rgba(0, 148, 68, 0.14); /* Fond vert clair */
  color: #009444; /* Couleur du texte vert */
}

.pd-detail__left {
  background-color: rgba(255, 69, 0, 0.14); /* Fond rouge clair */
  color: #007bff; /* Couleur bleue pour le texte */
}

/* Description du produit */
.pd-detail__preview-desc {
  font-size: 13px; /* Taille de police */
  color: #7f7f7f; /* Couleur gris clair */
}

/* Liens de clic */
.pd-detail__click-wrap > a {
  font-size: 13px; /* Taille de police */
  color: #007bff; /* Couleur bleue pour les liens */
  transition: color 0.3s; /* Transition pour le changement de couleur */
}

.pd-detail__click-wrap > a:hover {
  color: #0056b3; /* Couleur bleue foncée au survol */
  text-decoration: underline; /* Soulignement au survol */
}

.pd-detail__click-count {
  font-size: 10px; /* Taille de police */
  color: #a0a0a0; /* Couleur gris clair */
}

/* Formulaire de détail du produit */
.pd-detail__form {
  width: 100%; /* Largeur complète */
}

.pd-detail__form .btn {
  padding: 1rem 3rem; /* Espacement intérieur */
  border-radius: 0.375rem; /* Bords arrondis */
}

/*--------------------------------------------------------------
  * Variations
--------------------------------------------------------------*/
/* Styles pour les options de couleur dans la section produit */
.pd-detail .color__radio {
    display: inline-block; /* Affichage en ligne pour les options de couleur */
    margin-right: 10px; /* Espace à droite entre les options */
}

/* Styles pour les étiquettes de couleur */
.pd-detail .color__radio-label {
    display: block; /* Affichage en bloc pour permettre le clic */
    width: 30px; /* Ajustez la taille selon vos besoins */
    height: 30px; /* Ajustez la taille selon vos besoins */
    border: 1px solid #ccc; /* Optionnel : une bordure pour visualiser */
    cursor: pointer; /* Curseur pointeur pour l'interaction */
    border-radius: 50%; /* Bords arrondis pour un aspect plus agréable */
    transition: border 0.3s; /* Transition douce pour l'effet de sélection */
}

/* Masquer le bouton radio standard */
.pd-detail .color__radio input[type="radio"] {
    display: none; /* Éviter l'affichage par défaut */
}

/* Styles appliqués lorsque l'option de couleur est sélectionnée */
.pd-detail .color__radio input[type="radio"]:checked + .color__radio-label {
    border: 2px solid #007bff; /* Mettre en évidence la couleur sélectionnée */
    background-color: rgba(0, 123, 255, 0.1); /* Optionnel : couleur de fond légère pour la sélection */
}

/* Styles pour l'effet au survol sur les étiquettes de couleur */
.pd-detail .color__radio-label:hover {
    border-color: #0056b3; /* Bord bleu foncé au survol */
}







/* Styles pour les couleurs et tailles */
.pd-detail__color,
.pd-detail__size {
  display: flex; /* Affichage flexible */
  flex-wrap: wrap; /* Retour à la ligne */
}



.debug-couleur {
        display: none;	
    }

/* Styles pour les boutons radio de couleur */
.color__radio {
  position: relative; /* Positionnement relatif */
  line-height: 1.89; /* Hauteur de ligne */
  margin-right: 36px; /* Espace à droite */
  display: inline-block; /* Affichage en ligne */
}

.color__radio [type="radio"] {
  position: absolute; /* Positionnement absolu */
  left: 0; /* Aligne à gauche */
  top: 0; /* Aligne en haut */
  min-width: 30px; /* Largeur minimale */
  width: 100%; /* Largeur complète */
  height: 100%; /* Hauteur complète */
  z-index: 2; /* Superposition au-dessus */
  opacity: 0; /* Invisible */
  cursor: pointer; /* Curseur pointeur */
}

.color__radio-label {
  position: initial; /* Position initiale */
  display: inline-block; /* Affichage en ligne */
}

/* Styles des éléments de couleur */
.color__radio-label:before,
.color__radio-label:after {
  content: ''; /* Contenu vide */
  width: 30px; /* Largeur */
  height: 30px; /* Hauteur */
  border-radius: 50%; /* Bords arrondis pour les cercles */
  display: inline-block; /* Affichage en ligne */
  border: 2px solid transparent; /* Bord transparent par défaut */
  transition: border-color 0.3s; /* Transition pour le changement de couleur du bord */
}

.color__radio-label:before {
  background-color: #e0e0e0; /* Couleur de fond par défaut */
}

.color__radio:checked + .color__radio-label:before {
  border-color: #007bff; /* Bord bleu lorsqu'il est sélectionné */
}

.color__radio-label:hover:before {
  border-color: #333333; /* Bord bleu foncé au survol */
}



/*--------------------------------------------------------------
  * Styles améliorés pour les caractéristiques produit
--------------------------------------------------------------*/
.size__radio {
  display: flex; /* Affichage flexible */
  margin-right: 36px; /* Espace à droite */
  align-items: center; /* Aligner verticalement */
}

.size__radio [type="radio"] {
  position: absolute; /* Positionnement absolu */
  left: 0; /* Aligne à gauche */
  top: 0; /* Aligne en haut */
  min-width: 30px; /* Largeur minimale */
  width: 100%; /* Largeur complète */
  height: 100%; /* Hauteur complète */
  z-index: 2; /* Superposition au-dessus */
  opacity: 0; /* Invisible */
  cursor: pointer; /* Curseur pointeur */
}

/* Style pour l'étiquette des caractéristiques */
.size__radio-label {
  padding: 12px 18px; /* Espacement intérieur amélioré */
  border-radius: 8px; /* Coins plus arrondis */
  background-color: #fff; /* Fond blanc */
  border: 1px solid #007bff; /* Bord bleu */
  color: #333; /* Couleur du texte sombre */
  font-size: 14px; /* Taille de police améliorée pour la lisibilité */
  font-weight: 600; /* Texte plus audacieux */
  transition: background-color 0.3s, border-color 0.3s, color 0.3s; /* Transitions fluides */
  display: flex; /* Utilisation de flexbox pour aligner le texte avec l'icône */
  align-items: center; /* Alignement vertical */
  cursor: pointer; /* Curseur pointer */
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); /* Légère ombre portée */
}

/* Effet lorsque la caractéristique est sélectionnée */
.size__radio:checked + .size__radio-label {
  background-color: #333333; /* Fond bleu lorsque sélectionné */
  color: #fff; /* Texte en blanc */
  border-color: #333333; /* Bord bleu foncé */
  box-shadow: 0 0 10px rgba(0, 123, 255, 0.4); /* Ombre bleue légère autour du bouton sélectionné */
}

/* Effet de survol */
.size__radio-label:hover {
  background-color: #f0f0f0; /* Fond gris clair au survol */
  border-color: #007bff; /* Bord bleu au survol */
  transform: scale(1.05); /* Légère mise en valeur au survol */
}

/* Désactivation des options */
input[type="radio"]:disabled + .size__radio-label {
  background-color: #fff; /* Fond blanc pour les éléments désactivés */
  color: #aaa; /* Texte gris clair */
  cursor: not-allowed; /* Curseur interdiction */
  border-color: #007bff; /* Bord bleu pour les éléments désactivés */
}

/* Améliorations visuelles supplémentaires */
.size__radio-label::before {
  content: ''; /* Icône ou autre contenu */
  margin-right: 8px; /* Espacement avant le texte */
  display: inline-block; /* Affichage en ligne */
  width: 12px; /* Largeur de l'icône */
  height: 12px; /* Hauteur de l'icône */
  border-radius: 50%; /* Icône ronde */
  background-color: #007bff; /* Couleur d'icône pour la sélection */
  transition: background-color 0.3s; /* Transition fluide */
}

/* Effet d'icône lorsque sélectionné */
.size__radio:checked + .size__radio-label::before {
  background-color: #0056b3; /* Icône bleue foncée lorsqu'elle est sélectionnée */
}


/* Styles pour le bouton d'ajout au panier */
.pd-detail__add-to-cart {
  background-color: #007bff; /* Couleur bleue du bouton */
  color: #fff; /* Couleur blanche du texte */
  font-size: 16px; /* Taille de police */
  font-weight: 600; /* Semi-gras */
  border: none; /* Pas de bord */
  border-radius: 5px; /* Bords arrondis */
  padding: 1rem 2rem; /* Espacement intérieur */
  transition: background-color 0.3s, transform 0.2s; /* Transition pour le changement de couleur et d'échelle */
}

.pd-detail__add-to-cart:hover {
  background-color: #0056b3; /* Couleur bleu foncé au survol */
  transform: scale(1.05); /* Légère augmentation de taille au survol */
}

/*--------------------------------------------------------------
  * Mobile Styles
--------------------------------------------------------------*/

/* Adaptation pour les petits écrans */
@media (max-width: 768px) {
  .pd-detail__name {
    font-size: 14px; /* Réduction de la taille de police */
  }

  .pd-detail__price {
    font-size: 1.5rem; /* Réduction de la taille de police */
  }

  .pd-detail__form {
    flex-direction: column; /* Disposition en colonne */
  }

  .pd-detail__add-to-cart {
    width: 100%; /* Largeur complète sur mobile */
  }

  .pd-detail__color,
  .pd-detail__size {
    flex-direction: column; /* Disposition en colonne pour les couleurs et tailles */
  }
}


















/*--------------------------------------------------------------
19.0 Shop-Pages
--------------------------------------------------------------*/
.shop-w-master__heading {
  font-size: 18px;
  color: #333333;
  font-weight: 700;
  line-height: 20px; }

.sidebar--bg-snow {
  background-color: #f9f9f9; }

.shop-w--style {
  border: 1px solid #f1f1f1;
  background-color: #ffffff;
  box-shadow: 0 6px 15px 0 rgba(36, 37, 38, 0.08); }

.shop-w__intro-wrap {
  position: relative; }

.shop-w__h {
  font-size: 14px;
  padding: 14px 18px;
  border-bottom: 1px solid #efefef;
  color: #333333;
  font-weight: 700;
  line-height: 20px; }

.shop-w__wrap {
  padding: 14px; }

.shop-w__toggle.collapsed:before {
  content: "\F067"; }

.shop-w__toggle {
  position: absolute;
  top: 50%;
  padding: 8px 12px;
  background-color: transparent;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 10px;
  font-size: 12px;
  cursor: pointer;
  color: #444; }

.shop-w ul {
  margin: 0;
  padding-left: 0;
  list-style: none; }

.shop-w__list {
  overflow: auto;
  max-height: 290px; }
  .shop-w__list > li {
    position: relative;
    padding: 8px 16px; }

.shop-w__list-2 {
  overflow: auto;
  max-height: 290px; }
  .shop-w__list-2 > li {
    padding: 0.25rem 0;
    position: relative; }

.list__content {
  position: relative; }
  .list__content [type="checkbox"] {
    position: absolute;
    left: 0;
    top: 0;
    min-width: 16px;
    width: 100%;
    height: 100%;
    z-index: 2;
    opacity: 0;
    cursor: pointer; }
  .list__content span {
    padding: 8px 16px;
    display: block;
    font-size: 14px;
    transition: background-color 110ms ease-in-out,color 110ms ease-in-out;
    color: #7f7f7f; }

.list__content:hover span {
  color: #333333;
  background-color: #ececec;
  border-radius: .5rem; }

.list__content input:checked + span {
  background-color: #ececec;
  color: #333333;
  border-radius: .5rem; }

.shop-w__total-text {
  font-size: 11px;
  position: absolute;
  cursor: pointer;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  color: #333333;
  right: 13px; }

.shop-w__category-list {
  overflow: auto;
  max-height: 290px; }
  .shop-w__category-list > li {
    padding: 4px 14px; }
    .shop-w__category-list > li > a {
      font-size: 14px;
      color: #333333;
      transition: color 110ms ease-in-out; }
      .shop-w__category-list > li > a:hover {
        color: steelblue; }
    .shop-w__category-list > li ul .has-list > a {
      font-size: 13px;
      font-weight: 700;
      color: #333333; }
    .shop-w__category-list > li ul {
      display: none;
      padding-left: 8px; }
      .shop-w__category-list > li ul li a {
        font-size: 13px;
        color: #7f7f7f;
        transition: color 110ms ease-in-out; }
        .shop-w__category-list > li ul li a:hover {
          color: steelblue; }

.has-list {
  position: relative; }

.category-list__text {
  font-size: 10px;
  color: #a0a0a0; }

.js-shop-category-span {
  cursor: pointer;
  font-size: 13px;
  color: #444;
  transition: color 110ms ease-in-out; }
  .js-shop-category-span:hover {
    color: #000000; }

.js-shop-category-span.is-expanded:before {
  content: '\f068'; }

.shop-w__form-p-wrap {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 8px 0; }
  .shop-w__form-p-wrap div {
    margin-right: 8px;
    margin-bottom: 12px; }
    .shop-w__form-p-wrap div:last-child {
      margin-right: 0; }
  .shop-w__form-p-wrap .input-text, .shop-w__form-p-wrap .btn {
    height: 40px;
    padding: 8px;
    border-radius: 2px; }
  .shop-w__form-p-wrap .input-text {
    width: 80px; }
  .shop-w__form-p-wrap .btn {
    width: 40px; }

.color__check {
  position: relative;
  line-height: 1.89;
  margin-right: 36px;
  display: inline-block; }

.color__check [type="checkbox"] {
  position: absolute;
  left: 0;
  top: 0;
  min-width: 30px;
  width: 100%;
  height: 100%;
  z-index: 2;
  opacity: 0;
  cursor: pointer; }

.color__check-label {
  position: initial;
  display: inline-block; }

.color__check-label:before, .color__check-label:after {
  content: '';
  width: 30px;
  height: 30px;
  display: block;
  border: 2px solid transparent;
  z-index: 0;
  position: absolute;
  left: 0;
  top: 0; }

.color__check-label:after {
  -webkit-transform: scale(0.6);
          transform: scale(0.6);
  background-color: inherit; }

.color__check input:checked + label:before {
  border-color: #d2d2d2; }

.rating__check {
  position: relative;
  cursor: pointer; }
  .rating__check [type="checkbox"] {
    position: absolute;
    left: 0;
    top: 0;
    min-width: 16px;
    width: 100%;
    height: 100%;
    z-index: 2;
    opacity: 0;
    cursor: pointer; }

.rating__check-star-wrap > i {
  margin-left: 2px;
  color: steelblue;
  transition: color .4s ease-in-out; }
  .rating__check-star-wrap > i:first-child {
    margin-left: 0; }

.rating__check-star-wrap span {
  font-size: 12px;
  color: #333333;
  margin-right: 2px; }

.rating__check:hover .rating__check-star-wrap > i {
  color: steelblue; }

.rating__check input:checked + .rating__check-star-wrap > i {
  color: steelblue; }

.shop-p__meta-wrap {
  box-shadow: 0 8px 16px rgba(42, 122, 226, 0.5); /* Ombre bleue */
  padding: 20px;
  border-radius: 0.625rem; /* Arrondir les coins */
}


.shop-p__meta-text-1 {
  display: block;
  font-size: 14px;
  margin-bottom: 6px;
  font-weight: 700;
  color: #333333; }

.shop-p__meta-text-2 {
  font-size: 14px;
  font-weight: 700;
  color: #7f7f7f; }

.shop-p__tool-style {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: justify;
      justify-content: space-between; }

.tool-style__group {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .tool-style__group span {
    position: relative;
    display: inline-block;
    height: 40px;
    cursor: pointer;
    border: 2px solid #e5e5e5;
    font-size: 13px;
    padding: 8px 18px;
    font-weight: 700;
    color: #333333; }
    .tool-style__group span:hover {
      background-color: lightsteelblue;
      color: steelblue;
      border-color: steelblue;
      z-index: 2; }
  .tool-style__group span:not(:last-child) {
    margin-right: -2px; }
  .tool-style__group span.is-active {
    background-color: lightsteelblue;
    color: steelblue;
    border-color: steelblue;
    z-index: 2; }

.tool-style__form-wrap {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center; }
  .tool-style__form-wrap div + div {
    margin-left: 15px; }
  .tool-style__form-wrap select {
    border-radius: .25rem; }














/* Styles pour le conteneur des produits en mode liste */
.is-list-active .products-container {
  display: block; /* Affichage en bloc pour les produits en mode liste */
  position: relative; /* Positionner le zoom Ã  l'intÃ©rieur */
  overflow: hidden; /* EmpÃªcher le dÃ©bordement du contenu */
}

/* Styles pour les produits en mode liste */
.is-list-active .product-m {
  padding: 15px 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  border: 1px solid #ddd;
  border-radius: 8px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1),
              0 4px 8px rgba(0, 0, 0, 0.1);
  margin-bottom: 40px;
  flex-direction: row;
  align-items: flex-start;
  justify-content: flex-start;
  width: 100%;
  height: 550px;
  transition: box-shadow 0.3s ease, transform 0.3s ease;
  position: relative;
  overflow: auto; /* DÃ©filement activÃ© */
}

/* Personnalisation de la barre de dÃ©filement pour Webkit (Chrome, Safari) */
.is-list-active .product-m::-webkit-scrollbar {
  width: 12px; /* Largeur de la barre de dÃ©filement */
}

.is-list-active .product-m::-webkit-scrollbar-track {
  background-color: #f1f1f1; /* Couleur de fond de la piste */
  border-radius: 10px; /* Coins arrondis de la piste */
}

.is-list-active .product-m::-webkit-scrollbar-thumb {
  background-color: #007bff; /* Couleur du pouce de la barre de dÃ©filement */
  border-radius: 10px; /* Coins arrondis du pouce */
  border: 2px solid #f1f1f1; /* Bordure autour du pouce */
}

.is-list-active .product-m::-webkit-scrollbar-thumb:hover {
  background-color: #0056b3; /* Couleur du pouce au survol */
}

/* Personnalisation pour Firefox */
.is-list-active .product-m {
  scrollbar-width: thin; /* DÃ©finir la taille de la barre de dÃ©filement sur mince */
  scrollbar-color: #007bff #f1f1f1; /* Couleur du pouce et de la piste */
  transition: box-shadow 0.3s ease, transform 0.3s ease;
}


/* Au survol, ajouter une ombre Ã©paisse autour des bordures et un effet de zoom */
.is-list-active .product-m:hover {
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2),
              0 8px 16px rgba(0, 0, 0, 0.2); /* Ombre Ã©paisse autour des produits */
  transform: scale(1.03); /* LÃ©gÃ¨re augmentation de la taille du conteneur */
  background: #ffffff;
  border-radius: 0.1875rem;
}


  

/* Styles pour les images du produit en mode liste */
.is-list-active .product-m__thumb {
  position: relative; /* Pour positionner les images superposÃ©es */
    -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
    max-width: 33.33333%;
    padding-right: 15px;
    padding-left: 15px;  
  overflow: hidden; /* Cacher les parties qui dÃ©passent du conteneur */
  display: flex; /* Utiliser Flexbox pour centrer le contenu */
  justify-content: center; /* Centrer horizontalement */
  align-items: center; /* Centrer verticalement */
  width: 100%; /* Occuper toute la largeur disponible */
  height: 500px; /* Hauteur fixe, ajustable */
  }

.is-list-active .product-image {
  max-width: 100%; /* Image peut occuper la totalitÃ© de la largeur disponible */
  max-height: 100%; /* Limiter la hauteur de l'image */
  height: auto; /* Maintenir les proportions de l'image */
  object-fit: cover; /* Ajuster l'image au conteneur sans dÃ©formation */
  transition: opacity 0.3s ease; /* Transition douce lors du changement d'image */
  
}

.is-list-active .product-image-second-hover {
  position: absolute; /* Positionner l'image seconde au-dessus de la premiÃ¨re */
  top: 50%; /* Positionne le haut de l'image au centre vertical du conteneur */
  left: 50%; /* Positionne le cÃ´tÃ© gauche de l'image au centre horizontal du conteneur */
  width: 100%; /* Occuper toute la largeur du conteneur */
  height: 100%; /* Ajustement de la hauteur au conteneur */
  object-fit: cover; /* Ajuster l'image au conteneur sans dÃ©formation */
  opacity: 0; /* CachÃ©e par dÃ©faut */
  transition: opacity 0.6s ease-in-out, transform 0.6s ease-in-out, filter 0.6s ease-in-out; /* Transition plus longue et fluide */
  pointer-events: none; /* EmpÃªcher les Ã©vÃ©nements de souris sur cette image */
  transform: translate(-50%, -50%) scale(1.05); /* Centre l'image et ajoute un lÃ©ger zoom */
  filter: blur(2px); /* Ajoute un lÃ©ger flou initial */
}

/* Au survol, afficher la seconde image et cacher la premiÃ¨re */
.is-list-active .product-m:hover .product-image {
  opacity: 0; /* Cacher la premiÃ¨re image */
}

.is-list-active .product-m:hover .product-image-second-hover {
  opacity: 1; /* Afficher la seconde image */
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); /* S'assurer que l'image reste centrÃ©e */
  filter: blur(0); /* Supprime le flou pour un effet de mise au point */
  object-fit: contain; /* Adapter l'image dans le conteneur sans dÃ©formation */
}


/* Conteneur de produit non interactif lorsque le zoom est visible */
.is-list-active .zoom-container.show ~ .products-container {
    pointer-events: none; /* DÃ©sactiver les Ã©vÃ©nements de souris */
}

/* Assurez-vous que le conteneur de zoom est toujours au-dessus */
.is-list-active .zoom-container {
    pointer-events: auto; /* Activer les Ã©vÃ©nements de souris pour le conteneur de zoom */
}

.is-list-active .products-container {
    pointer-events: auto; /* RÃ©activer les Ã©vÃ©nements de souris pour les conteneurs de produits */
}








/* ZOOM EN MODE LISTE */

/* Conteneur de zoom en mode liste */
.is-list-active .zoom-container {
    display: none; /* MasquÃ© par dÃ©faut */
    position: fixed; /* Positionnement fixe pour couvrir toute la fenÃªtre */
    top: 0;
    left: 0;
    width: 71vw; /* Largeur de la fenÃªtre */
    height: 67.7vh; /* Hauteur de la fenÃªtre */
    background-color: rgba(0, 0, 0, 0.8); /* Fond noir semi-transparent */
    z-index: 9999; /* Assurez-vous que c'est au-dessus de tous les autres Ã©lÃ©ments */
    justify-content: center; /* Centrer le contenu horizontalement */
    align-items: center; /* Centrer le contenu verticalement */
    overflow: hidden; /* Masquer tout dÃ©passement */
    transition: opacity 0.3s ease; /* Transition douce pour l'opacitÃ© */
	border: 1px solid #ddd; /* Bordure gris clair autour des produits */
    border-radius: 8px; /* Coins lÃ©gÃ¨rement arrondis */
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1),
              0 4px 8px rgba(0, 0, 0, 0.1); /* Ombre autour des produits */
}


/* Assurez-vous que les autres produits ne sont pas interactifs lorsque le zoom est affichÃ© */
.is-list-active .products-container.no-interact {
    pointer-events: none; /* DÃ©sactiver les Ã©vÃ©nements de souris pour les autres produits */
}

/* Conteneur de zoom lorsqu'il est affichÃ© */
.is-list-active .zoom-container.show {
    display: flex; /* Afficher le conteneur en mode flex */
    opacity: 1; /* Assurez-vous que le conteneur est complÃ¨tement visible */
    pointer-events: auto; /* Assurez-vous que les Ã©vÃ©nements de souris sont activÃ©s pour le conteneur de zoom */
	visibility: visible; /* Assurez-vous que le conteneur est visible */
}


/* Class to disable interactions */
.product-m.no-interact {
    pointer-events: none; /* DÃ©sactiver les Ã©vÃ©nements de souris */
}

/* Images dans le conteneur de zoom */
.is-list-active .zoom-container .zoom-image-wrapper {
    position: relative;
    width: 90vw; /* Largeur maximale de l'image */
    height: 90vh; /* Hauteur maximale de l'image */
}

.is-list-active .zoom-container .zoomed-image,
.is-list-active .zoom-container .zoomed-image-2 {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain; /* Adapter l'image sans dÃ©formation */
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(0.85); /* Centrer et agrandir lÃ©gÃ¨rement l'image */
}

/* Bouton de fermeture */
.is-list-active .zoom-close {
    position: absolute;
    top: 20px;
    right: 40px;
    background-color: #fff; /* Fond blanc */
    border: none;
    font-size: 24px;
    cursor: pointer;
    z-index: 10001; /* Assurez-vous qu'il est au-dessus de l'image */
}

/* Boutons de navigation */
.is-list-active .zoom-button {
    color: white;
    cursor: pointer;
    font-size: 36px; /* Taille des boutons de navigation */
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10001; /* Assurez-vous qu'ils sont au-dessus de l'image */
}

.is-list-active .preview-button {
    left: 20px; /* Position Ã  gauche */
}

.is-list-active .next-button {
    right: 40px; /* Position Ã  droite */
}

/* Assurez-vous que les conteneurs des produits ne sont pas interactifs lorsque le zoom est visible */
.is-list-active .products-container {
    pointer-events: none; /* DÃ©sactiver les Ã©vÃ©nements de souris */
}









/* Styles pour le bouton "quick look" */
/* Style gÃ©nÃ©ral pour le bouton "quick look" en vue liste */
.is-list-active .product-m__quick-look {
  position: absolute;
  top: 8px;
  right: 22px;
  opacity: 0; /* Cacher par dÃ©faut */
  visibility: hidden; /* Cacher par dÃ©faut */
  z-index: 10;
  background-color: rgba(255, 255, 255, 0.8); /* Fond blanc avec opacitÃ© */
  padding: 5px;
  border-radius: 50%; /* Bouton en cercle */
  cursor: pointer;
  transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out, transform 0.3s ease;
  transform: scale(0.9); /* LÃ©gÃ¨rement rÃ©duit au dÃ©part */
}

/* Style spÃ©cifique pour le bouton "quick look" dans la vue liste au survol */
.is-list-active .product-m:hover .product-m__quick-look {
  opacity: 1; /* Rendre visible au survol */
  visibility: visible; /* Rendre visible au survol */
  transform: scale(1); /* Retour Ã  la taille normale */
  opacity: 1;
  visibility: visible; 
}

/* Style de l'icÃ´ne dans le bouton "quick look" */
.is-list-active .product-m__quick-look .quick-look-trigger {
  display: inline-block;
  width: 40px;
  height: 40px;
  background-color: #2a7ae2; /* Bleu primaire */ 
  border-radius: 50%; /* Forme de cercle */
  color: white; /* Couleur de l'icÃ´ne */
  font-size: 18px;
  text-align: center;
  line-height: 40px; /* Centrer verticalement */
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1); /* Ombre */
  transition: background-color 0.3s ease, box-shadow 0.3s ease, transform 0.3s ease;
}

/* Effet au survol pour l'icÃ´ne */
.is-list-active .product-m__quick-look .quick-look-trigger:hover {
  background-color: #1e5bb6; /* Bleu plus foncÃ© au survol */
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.2); /* Ombre plus grande */
  transform: scale(1.1); /* Zoom lÃ©ger */
}

/* Style du lien dans le bouton "quick look" */
.is-list-active .product-m__quick-look > a {
  font-size: 16px; /* Taille de police de 16px */
  color: #2a7ae2; /* Bleu primaire */ 
  transition: color 0.3s ease-in-out; /* Transition de couleur lors du survol */
}

/* Style du lien dans le bouton "quick look" au survol */
.is-list-active .product-m__quick-look > a:hover {
  color: #fa4400; /* Couleur du texte au survol */
}




/* Style pour le contenu du produit */
.is-list-active .product-m__content {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 15px; /* Ajouter de la marge intÃ©rieure pour une meilleure prÃ©sentation */
  border: 1px solid #e0e0e0; /* Bordure lÃ©gÃ¨re pour dÃ©limiter le conteneur */
  border-radius: 8px; /* Coins arrondis pour un look moderne */
  background-color: #fff; /* Fond blanc pour contraster avec le produit */
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Ombre lÃ©gÃ¨re pour ajouter de la profondeur */
   position: relative;
    -ms-flex: 0 0 66.66667%;
        flex: 0 0 66.66667%;
    max-width: 66.66667%;
    padding-right: 15px;
    padding-left: 15px; 
}

/* Style du bouton d'ajout au panier */
.is-list-active .product-m__add-cart {
  transition: transform 0.3s ease, background-color 0.3s ease;
  transform: translate(15%, 0%); /* Centre le bouton avec l'Ã©lÃ©ment parent */
  position: absolute;
    bottom: 15px;
    left: 15px;
    right: 15px;
    opacity: 0;
    visibility: hidden;
    transition: 0.3s; 
}

/* Style du lien Ã  l'intÃ©rieur du bouton d'ajout au panier */
.is-list-active .product-m__add-cart > a {
  padding: 12px 20px;
  border-radius: 4px; /* Coins lÃ©gÃ¨rement arrondis */
  font-size: 16px;
  background-color: #2a7ae2; /* Couleur de fond moderne */
  color: #fff; /* Texte en blanc */
  text-decoration: none;
  display: inline-block;
  text-align: center;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); /* Ombre lÃ©gÃ¨re pour un effet de profondeur */
  transition: background-color 0.3s ease, box-shadow 0.3s ease;
}


.is-list-active .product-m__add-cart > a:hover {
  background-color: #1a5ab9; /* Couleur plus foncÃ©e au survol */
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); /* Ombre plus marquÃ©e au survol */
}

.is-list-active .product-m:hover .product-m__add-cart {
    opacity: 1;
    visibility: visible; }

/* Style de la catÃ©gorie du produit */
.is-list-active .product-m__category {
  margin-bottom: 12px; /* Espacement infÃ©rieur accru pour une meilleure aÃ©ration */
  font-size: 14px;
  color: #6c757d; /* Couleur subtile gris-bleu pour un effet moderne */
  text-transform: uppercase; /* Texte en majuscules pour un style plus impactant */
  letter-spacing: 0.5px; /* Espacement des lettres pour amÃ©liorer la lisibilitÃ© */
}

/* Style du lien de la catÃ©gorie */
.is-list-active .product-m__category > a {
  color: steelblue; /* Couleur bleu-cyan pour un effet vibrant */
  font-weight: 600; /* Semi-gras pour rendre le lien plus attractif */
  transition: color 0.3s ease, text-decoration 0.3s ease;
  text-decoration: none; /* Supprimer la sous-ligne par dÃ©faut */
}

/* Style du lien de catÃ©gorie au survol */
.is-list-active .product-m__category > a:hover {
  color: #138496; /* Couleur plus foncÃ©e au survol pour un contraste agrÃ©able */
  text-decoration: underline; /* Sous-ligne pour indiquer le survol */
}

/* Style du nom du produit */
.is-list-active .product-m__name > a {
  font-size: 20px; /* Taille de police augmentÃ©e pour plus de prÃ©sence */
  font-weight: 700; /* Texte en gras pour attirer l'attention sur le nom du produit */
  color: #343a40; /* Couleur gris anthracite pour un style sobre et moderne */
  transition: color 0.3s ease, transform 0.3s ease; /* Transition douce avec effet de zoom */
  text-transform: capitalize; /* PremiÃ¨re lettre en majuscule pour un effet premium */
  transform-origin: center; /* Fixe l'origine de la transformation au centre */
  display: inline-block; /* Permet au lien d'Ãªtre traitÃ© comme un bloc en ligne */
}

/* Style du nom du produit au survol */
.is-list-active .product-m__name > a:hover {
  color: #007bff; /* Bleu vif au survol pour un effet moderne */
  transform: scale(1.05); /* LÃ©ger zoom au survol pour attirer l'attention, sans dÃ©placement */
}


/* Style du prix du produit */
.is-list-active .product-m__price {
  font-size: 20px; /* Taille de police plus grande pour plus de visibilitÃ© */
  color: #ff4500; /* Couleur orange-rouge vibrante pour le prix */
  font-weight: 700;
  letter-spacing: 0.8px; /* Espacement des lettres pour un effet plus dÃ©fini */
}

/* Style du prix rÃ©duit ou de la remise */
.is-list-active .product-m__discount {
  font-size: 16px; /* LÃ©gÃ¨rement plus grand pour plus de lisibilitÃ© */
  color: #6c757d; /* Couleur gris-bleu plus claire pour la remise */
  text-decoration: line-through; /* Prix barrÃ© pour indiquer la remise */
  margin-left: 8px; /* Espace entre le prix rÃ©duit et le prix original */
}

/* Ajouter des styles pour des badges promotionnels (optionnel) */
.is-list-active .product-m__badge {
  background-color: #28a745; /* Vert vif pour une promotion ou nouveautÃ© */
  color: white; /* Texte blanc pour un bon contraste */
  font-size: 12px;
  padding: 4px 8px;
  border-radius: 4px; /* Bords arrondis pour un effet moderne */
  text-transform: uppercase;
  font-weight: 600;
  display: inline-block;
  margin-bottom: 10px;
}



/* Style de la description du produit */
/* Style gÃ©nÃ©ral pour la description */
.product-m__preview-description {
  font-family: 'Roboto', sans-serif; /* Typographie moderne */
  color: #444; /* Couleur du texte gris foncÃ© */
  font-size: 16px;
  line-height: 1.8; /* Espacement confortable entre les lignes */
  padding: 20px; /* Marges intÃ©rieures */
  background-color: #f9f9f9; /* Fond clair pour contraste */
  border-radius: 12px; /* Coins arrondis pour un effet moderne */
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05); /* Ombre douce */
  transition: box-shadow 0.3s ease, background-color 0.3s ease;
}

.product-m__preview-description:hover {
  background-color: #fff; /* Changement subtil du fond au survol */
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1); /* Ombre plus marquÃ©e au survol */
}

/* Accentuer certains mots ou phrases */
.product-m__preview-description .highlight {
  color: #007bff; /* Bleu moderne pour accentuer certains Ã©lÃ©ments */
  font-weight: 700; /* Gras pour plus d'importance */
}

/* Titres de sections (ex : CaractÃ©ristiques principales) */
.product-m__preview-description .section-title {
  display: block;
  margin-top: 20px;
  font-size: 18px;
  font-weight: 700;
  color: #333; /* Couleur lÃ©gÃ¨rement plus sombre pour les titres */
  border-left: 4px solid #007bff; /* Barre colorÃ©e Ã  gauche pour accentuer */
  padding-left: 10px;
  text-transform: uppercase; /* Texte en majuscules pour l'importance */
}

/* Liste des caractÃ©ristiques du produit */
.product-m__preview-description .features-list {
  margin-top: 10px;
  padding-left: 20px;
  list-style: none; /* Suppression des puces classiques */
}

.product-m__preview-description .features-list li {
  position: relative;
  padding-left: 30px; /* Espacement pour les icÃ´nes personnalisÃ©es */
  margin-bottom: 12px;
}

.product-m__preview-description .features-list li::before {
  content: 'âœ“'; /* IcÃ´ne personnalisÃ©e pour chaque point de la liste */
  position: absolute;
  left: 0;
  top: 0;
  color: #007bff; /* IcÃ´ne bleue moderne */
  font-weight: bold;
  font-size: 18px;
}

/* Liste du contenu de la boÃ®te */
.product-m__preview-description .box-content {
  margin-top: 10px;
  padding-left: 20px;
  list-style: none; /* Suppression des puces classiques */
}

.product-m__preview-description .box-content li {
  position: relative;
  padding-left: 30px;
  margin-bottom: 8px;
}

.product-m__preview-description .box-content li::before {
  content: 'ðŸŽ®'; /* IcÃ´ne spÃ©cifique pour chaque Ã©lÃ©ment de la boÃ®te */
  position: absolute;
  left: 0;
  top: 0;
  font-size: 18px;
}




/* Style gÃ©nÃ©ral du bouton de la liste de souhaits */
.is-list-active .product-m__wishlist a {
  font-size: 16px;
  color: #333333; /* Couleur du texte sobre */
  text-decoration: none; /* Suppression du soulignement */
  display: inline-flex; /* Pour aligner le texte avec l'icÃ´ne */
  align-items: center; /* Centrer verticalement */
  padding: 8px 16px; /* Espacement intÃ©rieur confortable */
  border: 2px solid transparent; /* Bordure transparente par dÃ©faut */
  border-radius: 8px; /* Coins arrondis pour un effet moderne */
  background-color: #f9f9f9; /* Fond lÃ©ger et Ã©purÃ© */
  transition: all 0.4s ease; /* Transition fluide pour tous les changements */
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05); /* Ombre douce pour l'effet de bouton flottant */
}

.is-list-active .product-m__wishlist a::before {
  content: 'â™¡'; /* IcÃ´ne de cÅ“ur avant le texte */
  font-size: 18px;
  color: steelblue; /* IcÃ´ne colorÃ©e */
  margin-right: 8px; /* Espacement entre l'icÃ´ne et le texte */
  transition: transform 0.4s ease; /* Animation de l'icÃ´ne au survol */
}

/* Effet au survol du bouton de la liste de souhaits */
.is-list-active .product-m__wishlist a:hover {
  color: #fff; /* Couleur du texte blanche au survol */
  background-color: steelblue; /* Fond colorÃ© au survol */
  background-color: #2a7ae2; /* Couleur de fond moderne */
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.15); /* Ombre plus marquÃ©e au survol */
}

.is-list-active .product-m__wishlist a:hover::before {
  transform: scale(1.2); /* Agrandir lÃ©gÃ¨rement l'icÃ´ne au survol */
  color: #fff; /* Changer la couleur de l'icÃ´ne au survol */
}






/* Style de la pagination */
.shop-p__pagination {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  justify-content: center;
  align-items: center;
}

.shop-p__pagination > li {
  margin-right: 10px;
}

.shop-p__pagination > li:last-child {
  margin-right: 0;
}

.shop-p__pagination > li > a {
  width: 40px;
  height: 40px;
  line-height: 40px;
  font-size: 14px;
  text-align: center;
  display: block;
  font-weight: 600;
  border-radius: 50%;
  background-color: #f0f0f0; /* Couleur de fond gris clair */
  color: #333; /* Couleur du texte */
  transition: background-color 0.3s ease, color 0.3s ease;
  text-decoration: none;
}

.shop-p__pagination > li.is-active > a {
  background-color: #007bff; /* Bleu vif pour l'Ã©lÃ©ment actif */
  color: #fff; /* Couleur du texte blanc pour l'Ã©lÃ©ment actif */
}

.shop-p__pagination > li:not(.is-active) > a:hover {
  background-color: #e0e0e0; /* Gris clair au survol */
  color: #007bff; /* Bleu vif au survol */
  text-decoration: none;
}

/* Style pour le bouton de pagination avec une icÃ´ne */
.shop-p__pagination > li > a.fas {
  width: 40px;
  height: 40px;
  line-height: 40px;
  font-size: 16px; /* Taille de la police pour l'icÃ´ne */
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: transparent;
  color: #007bff; /* Couleur des icÃ´nes */
}

.shop-p__pagination > li > a.fas:hover {
  color: #0056b3; /* Couleur plus foncÃ©e pour les icÃ´nes au survol */
}

.shop-a__wrap {
  position: fixed;
  top: 0;
  width: 350px;
  min-height: 100vh;
  bottom: 0;
  z-index: 9999;
  right: 0;
  transition: all 400ms ease-out;
  -webkit-transform: translate(200px, 0);
          transform: translate(200px, 0);
  box-shadow: 0 0 7px 2px rgba(0, 0, 0, 0.09);
  background-color: #ffffff;
  visibility: hidden;
  opacity: 0;
}

.shop-a__inner {
  overflow: auto;
  height: 100%;
  padding: 1.25rem 1.125rem;
}

.shop-a.is-open .shop-a__wrap {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  visibility: visible;
  opacity: 1;
}

@media (max-width: 575px) {
  .is-list-active .product-m__thumb {
    margin-bottom: 30px;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .is-list-active .product-m__content {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .is-list-active .product-m__wishlist {
    position: static;
    text-align: right;
  }
  .shop-p__tool-style {
    display: block;
  }
  .tool-style__form-wrap {
    display: block;
  }
  .tool-style__form-wrap div + div {
    margin-left: 0;
  }
}

/* FIN MODE LISTE*/












/* CONTENEUR POUR PRODUIT */



/* Conteneur des produits en mode grille */
.is-grid-active .products-container {
  display: grid; /* Utilisation de CSS Grid pour organiser les Ã©lÃ©ments en grille */
  grid-template-columns: repeat(4, 1fr); /* CrÃ©ation de 4 colonnes de largeur Ã©gale */
  gap: 20px; /* Espacement de 20px entre les Ã©lÃ©ments de la grille */
}


/* Styles pour les produits en mode grille */
.is-grid-active .product-m {
  border: 0.5px solid #fff; /* Bordure blanche autour des produits */
  border-radius: 8px; /* Coins légèrement arrondis */
  box-shadow: 
    0 -2px 4px rgba(42, 122, 226, 0.5), /* Ombre bleue au-dessus des produits */
    0 4px 8px rgba(42, 122, 226, 0.5); /* Ombre bleue en dessous des produits */
  /* Style des Ã©lÃ©ments produits ici */
  /* Vous pouvez ajouter des propriÃ©tÃ©s spÃ©cifiques pour le style des produits */
}




/* Style de l'élément au survol du produit */
.is-grid-active .product-m__hover {
  position: absolute; /* Positionnement absolu pour le placement spécifique */
  top: 97%; /* Ajustement à 97% pour ne pas recouvrir le haut */
  width: 100%; /* Largeur à 100% du conteneur */
  z-index: 11; /* Augmenter le z-index à 11 pour être au-dessus du bouton "quick look" */
  padding: 4px 16px 14px; /* Rembourrage autour du contenu */
  left: 0; /* Positionnement à 0px du côté gauche */
  background: #ffffff; /* Fond blanc pour l'élément au survol */
  box-shadow: 0 0 12px rgba(42, 122, 226, 0.8); /* Ombre bleue uniquement */
  transition: all 300ms ease-in-out; /* Transition pour les changements d'état */
  opacity: 0; /* Opacité initiale à 0 pour être caché */
  visibility: hidden; /* Visibilité initiale cachée */
}

/* Style de l'élément au survol dans la vue grille */
.is-grid-active .product-m:hover .product-m__hover {
  top: 98%; /* Ajustement à 98% pour plus de marge */
  opacity: 1; /* Opacité à 1 pour être complètement visible */
  visibility: visible; /* Visibilité à visible */
  background-color: #ffffff; /* Fond totalement opaque */
  z-index: 11; /* Assurer que l'élément est au-dessus des autres */
  /* Même ajustement ici pour n'avoir que l'ombre en dessous */
  box-shadow: 0 4px 12px rgba(42, 122, 226, 0.8); /* Ombre bleue uniquement en dessous */
  transition: top 0.3s ease, opacity 0.3s ease, visibility 0.3s ease, box-shadow 0.3s ease; /* Transition fluide */
}

/* Style du produit au survol dans la vue grille */
.is-grid-active .product-m:hover {
  /* Ajuster ici aussi pour garder l'ombre uniquement en dessous */
  box-shadow: 0 4px 15px 0 rgba(42, 122, 226, 0.8); /* Ombre bleue uniquement en dessous */
}

/* Style de la wishlist */
.is-grid-active .product-m__wishlist {
  text-align: right; /* Alignement du texte Ã  droite */
}

/* Style du lien dans la wishlist */
.is-grid-active .product-m__wishlist a {
  font-size: 16px; /* Taille de police de 16px */
  color: #a0a0a0; /* Couleur du texte */
  transition: color 110ms ease-in-out; /* Transition de couleur lors du survol */
}

/* Style du lien dans la wishlist au survol */
.is-grid-active .product-m__wishlist a:hover {
  color: steelblue; /* Couleur du texte au survol */
}

/* Style de la description du produit dans la vue grille */
.is-grid-active .product-m__preview-description {
  margin-bottom: 8px; /* Marge infÃ©rieure pour espacer la description */
  font-size: 12px; /* Taille de police de 12px */
  color: #7f7f7f; /* Couleur du texte de la description */
}




/* Style de la vignette du produit */
.is-grid-active .product-m__thumb {
  position: relative; /* Positionnement relatif pour les Ã©lÃ©ments enfants */
}

/* Style du bouton d'ajout au panier */
.is-grid-active .product-m__add-cart {
  position: absolute; /* Positionnement absolu pour le positionnement spÃ©cifique */
  bottom: 15px; /* Positionnement Ã  15px du bas */
  left: 15px; /* Positionnement Ã  15px du cÃ´tÃ© gauche */
  right: 15px; /* Positionnement Ã  15px du cÃ´tÃ© droit */
  opacity: 0; /* OpacitÃ© initiale Ã  0 pour Ãªtre cachÃ© */
  visibility: hidden; /* VisibilitÃ© initiale cachÃ©e */
  transition: 0.3s; /* Transition pour l'affichage du bouton */
}

/* Style du lien Ã  l'intÃ©rieur du bouton d'ajout au panier */
.is-grid-active .product-m__add-cart > a {
  padding: 12px; /* Rembourrage de 12px autour du texte */
  border-radius: 0.125rem; /* Coins arrondis du bouton */
  font-size: 13px; /* Taille de police de 13px */
  width: 100%; /* Largeur Ã  100% du conteneur */
  text-align: center; /* Alignement du texte au centre */
  display: block; /* Affichage en bloc pour occuper toute la largeur */
}

/* Style du contenu du produit */
.is-grid-active .product-m__content {
  padding: 4px 16px 6px; /* Rembourrage autour du contenu */
}

/* Style de la catÃ©gorie du produit */
.is-grid-active .product-m__category {
  margin-bottom: 2px; /* Marge infÃ©rieure pour l'espacement entre les Ã©lÃ©ments */
  line-height: 1.2; /* Hauteur de ligne pour l'espacement vertical */
}

/* Style du lien de la catÃ©gorie */
.is-grid-active .product-m__category > a {
  color: #a0a0a0; /* Couleur du texte */
  transition: color 0.5s; /* Transition de couleur lors du survol */
  font-size: 12px; /* Taille de police de 12px */
}

/* Style du lien de catÃ©gorie au survol */
.is-grid-active .product-m__category > a:hover {
  color: steelblue; /* Couleur du texte au survol */
}

/* Style du nom du produit */
.is-grid-active .product-m__name > a {
  color: #333333; /* Couleur du texte */
  font-size: 14px; /* Taille de police de 14px */
  font-weight: 600; /* Poids de police pour rendre le texte gras */
  transition: color 0.5s; /* Transition de couleur lors du survol */
}

/* Style du nom du produit au survol */
.is-grid-active .product-m__name > a:hover {
  color: steelblue; /* Couleur du texte au survol */
}

/* Style du prix du produit */
.is-grid-active .product-m__price {
  line-height: 1.2; /* Hauteur de ligne pour l'espacement vertical */
  color: #ff0000; /* Couleur du texte pour le prix */
  font-size: 14px; /* Taille de police de 14px */
  font-weight: 600; /* Poids de police pour rendre le texte gras */
}

/* Style du prix rÃ©duit ou de la remise */
.is-grid-active .product-m__discount {
  font-weight: 600; /* Poids de police pour rendre le texte gras */
  margin-left: 30px; /* Marge gauche pour espacer la remise du prix */
  color: steelblue; /* Couleur du texte pour la remise */
  font-size: 14px; /* Taille de police de 14px */
  text-decoration: line-through; /* Texte barrÃ© pour indiquer une remise */
}

/* Style de la note du produit */
.is-grid-active .product-m__rating {
  margin-bottom: 6px; /* Marge infÃ©rieure pour espacer les notes */
}


/* Style des étoiles de la note */
.is-grid-active .product-m__rating i {
  font-size: 12px; /* Taille de police des Ã©toiles */
}

/* Style des avis du produit */
.is-grid-active .product-m__review {
  margin-left: 4px; /* Marge gauche pour espacer les avis */
  font-size: 11px; /* Taille de police des avis */
  color: #a0a0a0; /* Couleur du texte des avis */
}



/* Style du bouton d'ajout au panier au survol */
.is-grid-active .product-m:hover .product-m__add-cart {
  opacity: 1; /* OpacitÃ© Ã  1 pour Ãªtre visible */
  visibility: visible; /* VisibilitÃ© Ã  visible */
}

/* Style du bouton "quick look" au survol */
.is-grid-active .product-m:hover .product-m__quick-look {
  opacity: 1; /* OpacitÃ© Ã  1 pour Ãªtre visible */
  visibility: visible; /* VisibilitÃ© Ã  visible */
}





/* Style gÃ©nÃ©ral pour le bouton "quick look" */
.is-grid-active .product-m__quick-look {
  position: absolute;
  top: 8px;
  right: 22px;
  opacity: 0; /* Cacher par dÃ©faut */
  visibility: hidden; /* Cacher par dÃ©faut */
  z-index: 10;
  background-color: rgba(255, 255, 255, 0.8); /* Fond blanc avec opacitÃ© */
  padding: 5px;
  border-radius: 50%; /* Bouton en cercle */
  cursor: pointer;
  transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out, transform 0.3s ease;
  transform: scale(0.9); /* LÃ©gÃ¨rement rÃ©duit au dÃ©part */
}

/* Style spÃ©cifique pour le bouton "quick look" dans la vue grille */
.is-grid-active .product-m:hover .product-m__quick-look {
  opacity: 1; /* Rendre visible au survol */
  visibility: visible; /* Rendre visible au survol */
  transform: scale(1); /* Retour Ã  la taille normale */
}

/* Style de l'icÃ´ne dans le bouton "quick look" */
.is-grid-active .product-m__quick-look .quick-look-trigger {
  display: inline-block;
  width: 40px;
  height: 40px;
  background-color: #2a7ae2; /* Bleu primaire */; /* Couleur de fond */
  border-radius: 50%; /* Forme de cercle */
  color: white; /* Couleur de l'icÃ´ne */
  font-size: 18px;
  text-align: center;
  line-height: 40px; /* Centrer verticalement */
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1); /* Ombre */
  transition: background-color 0.3s ease, box-shadow 0.3s ease, transform 0.3s ease;
}

/* Effet au survol pour l'icÃ´ne */
.is-grid-active .product-m__quick-look .quick-look-trigger:hover {
  background-color: #1e5bb6; /* Bleu plus foncÃ© au survol */
  border-color: #1e5bb6; /* Bordure bleue plus foncÃ©e */
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.2); /* Ombre plus grande */
  transform: scale(1.1); /* Zoom lÃ©ger */
}

/* Style du lien dans le bouton "quick look" */
.is-grid-active .product-m__quick-look > a {
  font-size: 16px; /* Taille de police de 16px */
  color: #2a7ae2; /* Bleu primaire */; 
  transition: color 110ms ease-in-out; /* Transition de couleur lors du survol */
}

/* Style du lien dans le bouton "quick look" au survol */
.is-grid-active .product-m__quick-look > a:hover {
  color: #fa4400; /* Couleur du texte au survol */
}





.is-grid-active .image-wrapper {
    margin: 0; /* Supprime les marges externes */
    padding: 0; /* Supprime les espacements internes */
    position: relative; /* Permet aux Ã©lÃ©ments enfants positionnÃ©s absolument de se placer correctement par rapport Ã  ce conteneur */
    width: 300px; /* RÃ©duit la largeur du conteneur pour crÃ©er plus d'espace sur les cÃ´tÃ©s */
    height: 300px; /* Maintient la hauteur du conteneur */
    overflow: hidden; /* Cache les parties des images qui dÃ©bordent du conteneur */
    display: flex; /* Utilise Flexbox pour centrer le contenu */
    justify-content: center; /* Centre les images horizontalement */
    align-items: center; /* Centre les images verticalement */
    background-color: #ffffff; /* Ajoute un fond blanc au conteneur */
    box-sizing: border-box; /* Inclut les bordures et le padding dans les dimensions totales */
}


/* Styles des images */
.is-grid-active .product-image, .product-image-second-hover {
    display: block; /* Assure que les images sont traitÃ©es comme des blocs pour Ã©viter les espaces sous les images */
    max-width: 100%; /* Limite la largeur maximale des images au conteneur */
    max-height: 100%; /* Limite la hauteur maximale des images au conteneur */
    position: absolute; /* Positionne les images de maniÃ¨re absolue par rapport au conteneur parent */
    top: 50%; /* Positionne le haut de l'image au centre vertical du conteneur */
    left: 50%; /* Positionne le cÃ´tÃ© gauche de l'image au centre horizontal du conteneur */
    transform: translate(-50%, -50%); /* Centre les images au milieu du conteneur */
    object-fit: contain; /* Ajuste l'image pour qu'elle s'adapte Ã  l'intÃ©rieur du conteneur sans dÃ©formation */
}

/* Image par dÃ©faut */
.is-grid-active .product-image.default {
    z-index: 1; /* Place l'image par dÃ©faut au-dessus de l'autre image */
    transition: opacity 0.3s ease-in-out; /* Transition douce pour l'opacitÃ© */
    background-color: #ffffff; /* Ajoute un fond blanc pour Ã©viter toute couleur de fond non dÃ©sirÃ©e */
}

/* Image au survol */
.is-grid-active .product-image-second-hover {
    z-index: 0; /* Place l'image de survol sous l'image par dÃ©faut */
    opacity: 0; /* L'image est cachÃ©e par dÃ©faut */
    transition: opacity 0.3s ease-in-out, transform 0.3s ease-in-out; /* Transition douce pour l'opacitÃ© et la transformation */
    background-color: #ffffff; /* Ajoute un fond blanc pour Ã©viter toute couleur de fond non dÃ©sirÃ©e */
}

/* Effet de survol */
.is-grid-active .image-wrapper:hover .product-image.default {
    opacity: 0; /* Cache l'image par dÃ©faut lorsque le conteneur est survolÃ© */
}

.is-grid-active .image-wrapper:hover .product-image-second-hover {
    opacity: 1; /* Affiche l'image de survol lorsque le conteneur est survolÃ© */
    transform: translate(-50%, -50%) scale(1); /* Assure que l'image de survol est au centre et Ã  sa taille normale */
}




/* ZOOM EN MODE GRILLE */
/* Masquer le conteneur de zoom par dÃ©faut pour le mode grille */
.is-grid-active .zoom-container {
    display: none; /* Par dÃ©faut, le conteneur est cachÃ© */
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.8);
    justify-content: center;
    align-items: center;
    z-index: 1000;
    overflow: hidden;
}

.is-grid-active .zoomed-image {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(1.2);
}

/* Afficher le conteneur de zoom lorsqu'il a la classe 'show' */
.is-grid-active .zoom-container.show {
    display: flex; /* Afficher en mode flex lors du clic */
}

.is-grid-active .zoom-close {
    position: absolute;
    top: 10px;
    right: 20px;
    background-color: #fff;
    border: none;
    font-size: 1.5rem;
    cursor: pointer;
    z-index: 1001; /* Assurez-vous que le bouton est au-dessus de l'image */
}

/* Boutons pour naviguer entre les images */
.is-grid-active .zoom-button {
    color: white;
    cursor: pointer;
    font-size: 1.5rem;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1001;
}

.is-grid-active .preview-button {
    left: 10px;
}

.is-grid-active .next-button {
    right: 20px;
}
/* FIN DE ZOOM EN MODE GRILLE */




 


/* FIN CONTENEUR POUR PRODUIT */





/*--------------------------------------------------------------
20.0 Vendor Extension Pages
--------------------------------------------------------------*/
/*--------------------------------------------------------------
20.1 Bootstrap
--------------------------------------------------------------*/
/* Modal styles */
.modal {
  z-index: 999999; }

.modal-content {
  display: block !important;
  border: none;
  border-radius: 0; }

.modal--radius {
  border-radius: 8px; }

.modal--shadow {
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.45); }

/* Tootip styles */
.tooltip {
  font-family: "Open Sans", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 12px;
  font-weight: 600; }

.tooltip.show {
  opacity: 1; }

.bs-tooltip-top .arrow::before, .bs-tooltip-auto[x-placement^="top"] .arrow::before {
  border-top-color: #f5f5f5; }

.bs-tooltip-right .arrow::before, .bs-tooltip-auto[x-placement^="right"] .arrow::before {
  border-right-color: #f5f5f5; }

.bs-tooltip-bottom .arrow::before, .bs-tooltip-auto[x-placement^="bottom"] .arrow::before {
  border-bottom-color: #f5f5f5; }

.bs-tooltip-left .arrow::before, .bs-tooltip-auto[x-placement^="left"] .arrow::before {
  border-left-color: #f5f5f5; }

.tooltip-inner {
  color: #333333;
  background-color: #f5f5f5;
  border-radius: 2px; }

@media (max-width: 991px) {
  .tooltip.show {
    opacity: 0; } }






/*--------------------------------------------------------------
20.2 jquery.shopnav
--------------------------------------------------------------*/

/* Style de base pour la liste des éléments de navigation */
.ah-list {
  margin: 0; /* Supprime les marges */
  padding: 0; /* Supprime les espaces internes */
}

/* Suppression des puces pour les éléments de la liste */
.ah-list li {
  list-style: none; /* Supprime les puces des listes */
}

/* Réinitialisation des marges et des paddings pour les sous-listes */
.ah-list ul {
  margin: 0; /* Supprime les marges des sous-listes */
  padding: 0; /* Supprime les espaces internes des sous-listes */
}

/* Design 1 pour la liste : affichage en ligne */
.ah-list--design1 > li {
  display: inline-block; /* Affiche les éléments en ligne */
}

/* Style des liens dans le design 1 : taille de police, padding */
.ah-list--design1 > li > a {
  display: inline-block; /* Affiche les liens en ligne */
  font-size: 16px; /* Taille de la police */
  padding: 28px 18px; /* Espacement interne des liens */
  color: #2a7ae2; /* Couleur des liens */
  text-transform: uppercase; /* Texte en majuscules */
  font-weight: 600; /* Gras du texte */
}

/* Couleur des liens secondaire : gris */
.ah-list--link-color-secondary > li > a {
  color: #333333; /* Couleur des liens secondaires */
}

/* Couleur des liens blanche */
.ah-list--link-color-white > li > a {
  color: #ffffff; /* Couleur des liens blancs */
}

/* Design 2 pour la liste : affichage en ligne avec texte plus petit et en gras */
.ah-list--design2 > li {
  display: inline-block; /* Affiche les éléments en ligne */
}

.ah-list--design2 > li > a {
  font-weight: 700; /* Gras du texte */
  font-size: 12px; /* Taille de la police */
  display: inline-block; /* Affiche les liens en ligne */
  padding: 31px 14px; /* Espacement interne des liens */
  color: #2a7ae2; /* Couleur des liens */
  text-transform: uppercase; /* Texte en majuscules */
}

/* Gestion des dropdowns (sous-menus) */
.has-dropdown > ul .has-dropdown {
  position: relative; /* Positionnement relatif pour les sous-menus */
}

/* Style des sous-menus : fond blanc, ombre légère, animation */
.has-dropdown > ul {
  background-color: #ffffff; /* Fond blanc pour les sous-menus */
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.13); /* Ombre légère */
  position: absolute; /* Positionnement absolu */
  text-align: left; /* Alignement du texte à gauche */
  padding: 20px 0; /* Espacement interne des sous-menus */
  z-index: 999; /* Positionnement au-dessus des autres éléments */
  white-space: nowrap; /* Éviter le retour à la ligne */
  transition: all 0.3s ease; /* Transition fluide */
  top: 120%; /* Positionnement au-dessus de l'élément parent */
  opacity: 0; /* Opacité initiale */
  visibility: hidden; /* Visibilité cachée */
}

/* Style des liens dans les sous-menus */
.has-dropdown > ul > li > a {
  display: block; /* Affiche les liens en bloc */
  padding: 8px 20px; /* Espacement interne des liens */
  color: #333333; /* Couleur des liens */
  font-size: 12px; /* Taille de la police */
  font-weight: 600; /* Gras du texte */
  transition: color 0.3s ease; /* Transition fluide de la couleur */
}

/* Couleur au survol des liens dans les sous-menus */
.has-dropdown > ul > li > a:hover {
  color: #2a7ae2; /* Couleur au survol */
  background-color: rgba(42, 122, 226, 0.1); /* Fond au survol avec transparence */
}

/* Alignement des sous-menus */
.has-dropdown--ul-left-100 > ul {
  left: 100%; /* Positionnement à droite de l'élément parent */
}

.has-dropdown--ul-right-100 > ul {
  right: 100%; /* Positionnement à gauche de l'élément parent */
}

/* Responsive : style pour les écrans jusqu'à 1024px */
@media (max-width: 1024px) {

  /* Suppression de l'icône de flèche dans le menu mobile */
  .menu-init .fa-angle-down:before {
    content: none; /* Masque l'icône de flèche */
  }

  /* Animation de l'ouverture du menu mobile */
  .menu-init.js-open .ah-lg-mode {
    left: 0; /* Positionne le menu mobile à gauche */
    transition: all .4s ease-in-out; /* Transition fluide */
  }

  /* Fond semi-transparent derrière le menu mobile */
  .menu-init.js-open:after {
    content: ""; /* Contenu vide */
    width: 100%; /* Largeur totale */
    height: 100%; /* Hauteur totale */
    position: fixed; /* Position fixe */
    top: 0; /* Position en haut */
    left: 0; /* Position à gauche */
    display: block; /* Affiche le fond */
    background-color: rgba(0, 0, 0, 0.7); /* Fond semi-transparent */
    z-index: 19999; /* Position au-dessus des autres éléments */
  }

  /* Style du menu mobile */
  .ah-lg-mode {
    position: fixed; /* Position fixe */
    left: -315px; /* Position initiale en dehors de l'écran */
    width: 315px; /* Largeur du menu */
    height: 100%; /* Hauteur du menu */
    top: 0; /* Position en haut */
    background-color: #ffffff; /* Fond blanc */
    z-index: 20000; /* Position au-dessus des autres éléments */
    overflow-y: auto; /* Défilement vertical */
  }

  /* Bouton de fermeture du menu mobile */
  .ah-close {
    color: #333333; /* Couleur du texte */
    padding: 20px; /* Espacement interne */
    font-size: 13px; /* Taille de la police */
    font-weight: 600; /* Gras du texte */
    cursor: pointer; /* Curseur pointer */
    display: block; /* Affiche le bouton */
  }

  /* Style des éléments de la liste dans le menu mobile */
  .ah-list > li {
    position: relative; /* Positionnement relatif */
    display: block; /* Affiche les éléments en bloc */
    border-top: 1px solid #f8f8f8; /* Bordure supérieure */
  }

  /* Style des liens dans le menu mobile */
  .ah-list > li > a {
    display: block; /* Affiche les liens en bloc */
    padding: 8px 18px; /* Espacement interne des liens */
    color: #333333; /* Couleur des liens */
  }

  /* Suppression du dernier bord inférieur dans le menu mobile */
  .ah-list > li:last-child {
    border-bottom: 1px solid #f8f8f8; /* Bordure inférieure pour le dernier élément */
  }

  /* Redimensionnement des polices dans les deux designs pour le mobile */
  .ah-list--design1 > li > a, .ah-list--design2 > li > a {
    font-weight: normal; /* Poids de la police normal */
    font-size: 14px; /* Taille de la police */
  }

  /* Les liens blancs deviennent gris dans le menu mobile */
  .ah-list--link-color-white > li > a {
    color: #333333; /* Couleur des liens blancs devenus gris */
  }

  /* Bouton de basculement du menu mobile */
  .js-menu-toggle {
    width: 21px; /* Largeur du bouton */
    display: block; /* Affiche le bouton */
    height: 21px; /* Hauteur du bouton */
    border-radius: 50%; /* Bordures arrondies */
    background-color: #ffffff; /* Fond blanc */
    box-shadow: 1px 1px 0 0 rgba(0, 0, 0, 0.13); /* Ombre légère */
    position: absolute; /* Positionnement absolu */
    right: 15px; /* Position à droite */
    top: 6px; /* Position en haut */
    transition: all .3s; /* Transition fluide */
    cursor: pointer; /* Curseur pointer */
  }

  /* Icône "+" dans le bouton de basculement */
  .js-menu-toggle:after {
    font-family: 'Font Awesome 5 Free'; /* Famille de police pour les icônes */
    content: "\F067"; /* Code icône "+" */
    position: absolute; /* Positionnement absolu */
    top: 50%; /* Position verticale au centre */
    width: 100%; /* Largeur totale */
    font-weight: 900; /* Poids de la police */
    color: #333333; /* Couleur de l'icône */
    display: block; /* Affiche l'icône */
    transform: translateY(-50%); /* Centre verticalement */
    text-align: center; /* Alignement du texte */
    font-size: 8px; /* Taille de l'icône */
  }

  /* Icône "-" lorsqu'on bascule */
  .js-menu-toggle.js-toggle-mark:after {
    content: "\F068"; /* Code icône "-" */
  }

  /* Suppression des animations et ajustements pour les dropdowns sur mobile */
  .has-dropdown > ul {
    width: 100% !important; /* Largeur totale pour les sous-menus */
    box-shadow: none; /* Supprime l'ombre */
    transition: none; /* Aucune transition */
    position: static; /* Positionnement statique */
    padding: 0 0 10px; /* Espacement interne */
    opacity: 1; /* Opacité visible */
    visibility: visible; /* Visibilité */
    display: none; /* Masque les sous-menus */
  }

  /* Ajustement du padding pour les sous-sous-menus sur mobile */
  .ah-list > li > ul > li > ul > li > a {
    padding: 8px 54px; /* Espacement interne des sous-sous-menus */
  }

  /* Gestion des padding en fonction de la profondeur des sous-menus */
  .ah-list > li > ul > li > ul > li > ul > li > a {
    padding: 8px 72px; /* Espacement interne pour les niveaux plus profonds */
  }
}

/* Style pour les écrans larges (plus de 1025px) */
@media (min-width: 798px) {

  /* Le bouton de fermeture du menu mobile n'apparaît pas */
  .ah-close {
    display: none; /* Masque le bouton de fermeture */
  }

  /* Couleur de survol des liens */
  .ah-list > li > a:hover {
    color: #2a7ae2; /* Couleur au survol */
    background-color: rgba(42, 122, 226, 0.1); /* Fond au survol avec transparence */
  }

  /* Changement de couleur au survol des sous-menus */
  .has-dropdown > ul > li:hover {
    background-color: #f6f6f6; /* Fond au survol */
  }

  /* Affichage du sous-menu au survol */
  .has-dropdown:hover > ul {
    opacity: 1; /* Opacité visible */
    visibility: visible; /* Visibilité */
  }

  /* Sous-menus pour les listes avec dropdown */
  .ah-list > .has-dropdown:hover > ul {
    top: 100%; /* Positionnement au bas de l'élément parent */
  }

  /* Gestion des sous-dropdowns (sous-sous-menus) */
  .has-dropdown .has-dropdown:hover > ul {
    top: 0; /* Positionnement au haut de l'élément parent */
  }

  /* Couleur du lien parent lorsque le dropdown est activé */
  .ah-list > .has-dropdown:hover > a {
    color: #2a7ae2; /* Couleur du lien actif */
  }

  /* Icône de flèche à droite pour les sous-menus */
  .has-dropdown > a .fa-angle-down {
    font-size: 10px; /* Taille de la flèche */
    line-height: 18px; /* Hauteur de ligne */
    float: right; /* Alignement à droite */
    color: #2a7ae2; /* Couleur de la flèche */
  }

  /* Changement d'icône pour les sous-sous-menus */
  .has-dropdown:hover > a .i-state-right:before {
    content: "\F105"; /* Code icône pour sous-sous-menus */
    color: #2a7ae2; /* Couleur de l'icône */
  }
}






/* Extension Mega Menu */

/* Style du bouton de texte du Mega Menu */
.mega-text {
  width: 34px; /* Largeur du bouton */
  height: 34px; /* Hauteur du bouton */
  display: inline-block; /* Affiche le bouton en ligne */
  background-color: #2a7ae2; /* Fond bleu du bouton */
  font-size: 12px; /* Taille de la police */
  font-weight: 600; /* Gras du texte */
  line-height: 34px; /* Hauteur de ligne pour centrer le texte */
  text-align: center; /* Alignement du texte au centre */
  margin-left: 12px;
  margin-top: -10px;
  cursor: pointer; /* Curseur pointer */
  color: #ffffff; /* Couleur du texte */
  box-shadow: 0 4px 8px rgba(42, 122, 226, 0.5); /* Ombre bleue autour du bouton */
  border-radius: 4px; /* Arrondi des coins pour un effet plus doux */
}


/* Style des liens du Mega Menu */
.mega-menu-list > ul > li > a {
  display: block; /* Affiche les liens en bloc */
  padding: 10px 22px; /* Espacement interne des liens */
  color: #000000; /* Couleur du texte */
  background-color: transparent; /* Fond transparent par défaut */
  text-transform: uppercase; /* Texte en majuscules */
  font-weight: 600; /* Gras du texte */
  font-size: 12px; /* Taille de la police */
  white-space: nowrap; /* Éviter le retour à la ligne */
  line-height: 20px; /* Hauteur de ligne */
  border-bottom: 1px solid #f2f2f2; /* Bordure inférieure */
  transition: background-color 0.3s, color 0.3s; /* Transition fluide pour le changement de couleur */
}

/* Couleur au survol des rubriques spécifiques */
.mega-menu-list > ul > li > a:hover {
  background-color: #2a7ae2; /* Fond bleu au survol */
  color: #ffffff; /* Couleur du texte au survol */
}

/* Style du sous-menu du méga menu */
.mega-menu-list > ul {
  max-height: 400px; /* Hauteur maximale du sous-menu */
  overflow-y: auto; /* Affiche une barre de défilement verticale si nécessaire */
}

/* Personnalisation de la barre de défilement (pour Webkit) */
.mega-menu-list > ul::-webkit-scrollbar {
  width: 8px; /* Largeur de la barre de défilement */
}

.mega-menu-list > ul::-webkit-scrollbar-thumb {
  background-color: #2a7ae2; /* Couleur du curseur de la barre de défilement */
  border-radius: 4px; /* Coins arrondis du curseur */
}

.mega-menu-list > ul::-webkit-scrollbar-track {
  background-color: #f0f0f0; /* Couleur de l'arrière-plan de la barre de défilement */
}

/* Personnalisation de la barre de défilement (pour Firefox) */
.mega-menu-list > ul {
  scrollbar-width: thin; /* Épaisseur de la barre de défilement */
  scrollbar-color: #2a7ae2 #f0f0f0; /* Couleur du curseur et de l'arrière-plan */
}







/* Variables CSS */
:root {
    --primary-color: #2a7ae2;
    --text-color: #333333;
    --background-color: #f9f9f9; /* Couleur de fond douce */
    --badge-bg-color: var(--primary-color);
    --badge-text-color: #ffffff;
}

	
  

/*--------------------------------------------------------------
20.3 Owl-Carousel
--------------------------------------------------------------*/
.slider-fouc {
  display: none; }

.s-skeleton {
  position: relative;
  border-radius: 15px; /* Ajoute un rayon de bordure pour arrondir les coins */
  box-shadow: 0 0 15px rgba(42, 122, 226, 0.8); /* Ombre bleue épaisse sur tous les côtés, y compris au-dessus */
}



  .s-skeleton--h-600 {
    min-height: 600px;
    border-radius: 15px; /* Ajoute un rayon de bordure pour arrondir les coins */}

  .s-skeleton--h-640 {
    min-height: 640px;
    border-radius: 15px; /* Ajoute un rayon de bordure pour arrondir les coins */}

  .s-skeleton--bg-grey {
    background-color: #f5f5f5; 
    border-radius: 15px; /* Ajoute un rayon de bordure pour arrondir les coins */}
  
  .s-skeleton--bg-black {
    background-color: #000000;
    border-radius: 15px; /* Ajoute un rayon de bordure pour arrondir les coins */}

  .s-skeleton .owl-carousel {
    position: static; 
    border-radius: 15px; /* Ajoute un rayon de bordure pour arrondir les coins */}

.primary-style-1 .hero-slide {
  height: 600px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center; }

.primary-style-2 .hero-slide {
  height: 600px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center; }

.primary-style-3 .hero-slide {
  height: 640px; }

.primary-style-3-wrap {
  position: absolute;
  bottom: 120px;
  z-index: 1;
  width: 100%; }

.hero-slide {
  background: center center/cover no-repeat; }
  .hero-slide--1 {
    background-image: url(../images/slider/banner-1.jpg); }
  .hero-slide--2 {
    background-image: url(../images/slider/banner-2.jpg); }
  .hero-slide--3 {
    background-image: url(../images/slider/banner-3.jpg); }
  .hero-slide--4 {
    background-image: url(../images/slider/slide-4.jpg); }
  .hero-slide--5 {
    background-image: url(../images/slider/slide-5.jpg); }
  .hero-slide--6 {
    background-image: url(../images/slider/slide-6.jpg); }
  .hero-slide--7 {
    background-image: url(../images/slider/slide-7.jpg); }
  .hero-slide--8 {
    background-image: url(../images/slider/slide-8.jpg); }
  .hero-slide--9 {
    background-image: url(../images/slider/slide-9.jpg); }

.owl-carousel .owl-dots {
  position: absolute; }

.owl-carousel button.owl-dot:focus {
  outline: 0; }

.owl-carousel.primary-style-1 .owl-dots {
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 40px; }

.owl-carousel.primary-style-1 button.owl-dot {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  display: block;
  margin-bottom: 6px;
  background: #e1e1e1;
  transition: background 0.8s ease-out; }
  .owl-carousel.primary-style-1 button.owl-dot:last-child {
    margin-bottom: 0; }
  .owl-carousel.primary-style-1 button.owl-dot.active, .owl-carousel.primary-style-1 button.owl-dot:hover {
    background: transparent linear-gradient(-180deg, steelblue 0%, #ff6a33 100%); }

.owl-carousel.primary-style-2 .owl-dots {
  width: 100%;
  text-align: center;
  bottom: 20px; }

.owl-carousel.primary-style-2 button.owl-dot {
  width: 11px;
  height: 11px;
  display: inline-block;
  margin-right: 4px;
  border-radius: 50%;
  background-color: #7f7f7f;
  transition: background 0.8s ease-out; }
  .owl-carousel.primary-style-2 button.owl-dot:last-child {
    margin-right: 0; }
  .owl-carousel.primary-style-2 button.owl-dot.active, .owl-carousel.primary-style-2 button.owl-dot:hover {
    background-color: #ffffff; }

.primary-style-2-container {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto; }

@media (min-width: 576px) {
  .primary-style-2-container {
    max-width: 540px; } }

@media (min-width: 768px) {
  .primary-style-2-container {
    max-width: 720px; } }

@media (min-width: 992px) {
  .primary-style-2-container {
    max-width: 960px; } }

.owl-carousel.primary-style-3 .owl-dots {
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 40px; }

.owl-carousel.primary-style-3 button.owl-dot {
  width: 5px;
  height: 32px;
  display: block;
  margin-bottom: 6px;
  background-color: #f3f3f3;
  transition: background 0.8s ease-out; }
  .owl-carousel.primary-style-3 button.owl-dot:last-child {
    margin-bottom: 0; }
  .owl-carousel.primary-style-3 button.owl-dot.active, .owl-carousel.primary-style-3 button.owl-dot:hover {
    background-color: steelblue; }

.owl-carousel#testimonial-slider .owl-dots {
  width: 100%;
  text-align: center;
  bottom: -30px; }

.owl-carousel#testimonial-slider button.owl-dot {
  width: 11px;
  height: 11px;
  display: inline-block;
  border: 1px solid #333333;
  margin-right: 4px;
  border-radius: 50%;
  background-color: transparent;
  transition: background 0.8s ease-out; }
  .owl-carousel#testimonial-slider button.owl-dot:last-child {
    margin-right: 0; }
  .owl-carousel#testimonial-slider button.owl-dot.active, .owl-carousel#testimonial-slider button.owl-dot:hover {
    background-color: #333333; }

.content-span-1 {
  font-size: 1.25rem;
  font-weight: 700;
  display: block; }

.content-span-2 {
  font-weight: 700;
  font-size: 3.25rem;
  display: block; }

.content-span-3 {
  display: block;
  font-size: 0.875rem;
  margin-bottom: 8px; }

.content-span-4 {
  display: block;
  font-weight: 600;
  font-size: 0.875rem;
  margin-bottom: 20px; }
  .content-span-4 span {
    font-weight: 700;
    margin-left: 4px;
    font-size: 1.375rem; }

.shop-now-link {
  padding: 18px 53px;
  font-size: 0.75rem;
  position: relative;
  transition: background 0.3s;
  text-align: center;
  border-radius: 6px;
  display: inline-block; }

.owl-item .slider-content--animation * {
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both; }

.owl-item.active .content-span-1 {
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
  -webkit-animation-name: fadeInLeft;
          animation-name: fadeInLeft; }

.owl-item.active .content-span-2 {
  -webkit-animation-delay: 1s;
          animation-delay: 1s;
  -webkit-animation-name: fadeInLeft;
          animation-name: fadeInLeft; }

.owl-item.active .content-span-3 {
  -webkit-animation-delay: 1.5s;
          animation-delay: 1.5s;
  -webkit-animation-name: fadeInLeft;
          animation-name: fadeInLeft; }

.owl-item.active .content-span-4 {
  -webkit-animation-delay: 1.5s;
          animation-delay: 1.5s;
  -webkit-animation-name: fadeInLeft;
          animation-name: fadeInLeft; }

.owl-item.active .shop-now-link {
  -webkit-animation-delay: 2s;
          animation-delay: 2s;
  -webkit-animation-name: fadeInLeft;
          animation-name: fadeInLeft; }

.product-slider, .tab-slider {
  position: static; }
  .product-slider .owl-item:hover, .tab-slider .owl-item:hover {
    z-index: 2; }

/* Products-Slider (Previous & Next Buttons) */
.section__content:hover .p-prev, .section__content:hover .t-prev, .section__content:hover .p-next, .section__content:hover .t-next {
  opacity: 1; }

.p-prev, .p-next {
  text-align: center;
  box-shadow: 0 6px 15px 5px rgba(36, 37, 38, 0.08);
  z-index: 1;
  cursor: pointer;
  display: inline-block;
  position: absolute;
  top: 0;
  bottom: 0;
  height: 72px;
  line-height: 72px;
  width: 36px;
  background-color: #ffffff;
  margin: auto 0;
  transition: opacity .6s ease-in,background-color .6s ease-in;
  opacity: 0; }
  .p-prev > i, .p-next > i {
    font-size: 14px;
    color: #333333;
    display: block;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%); }

.p-prev {
  left: 0;
  border-bottom-right-radius: 90px;
  border-top-right-radius: 90px; }
  .p-prev > i {
    left: 6px; }

.p-next {
  right: 0;
  border-bottom-left-radius: 90px;
  border-top-left-radius: 90px; }
  .p-next > i {
    right: 6px; }

.t-prev, .t-next {
  text-align: center;
  z-index: 1;
  display: inline-block;
  box-shadow: 0 6px 15px 5px rgba(36, 37, 38, 0.08);
  background-color: #ffffff;
  position: absolute;
  top: 0;
  bottom: 0;
  cursor: pointer;
  height: 36px;
  line-height: 36px;
  width: 36px;
  margin: auto 0;
  transition: opacity .6s ease-in;
  opacity: 0; }
  .t-prev > i, .t-next > i {
    font-size: 14px;
    color: #333333;
    display: block;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%); }

.t-prev {
  left: 0;
  border-bottom-right-radius: 90px;
  border-top-right-radius: 90px; }
  .t-prev > i {
    left: 10px; }

.t-next {
  right: 0;
  border-bottom-left-radius: 90px;
  border-top-left-radius: 90px; }
  .t-next > i {
    right: 10px; }

#brand-slider .owl-stage {
  margin: 1.25rem 0; }

.brand-slide {
  width: 155px;
  height: 60px;
  margin: 0 auto; }
  .brand-slide a {
    display: block;
    background-color: #ffffff;
    transition: all .3s; }
    .brand-slide a:hover {
      box-shadow: 2px 3px 8px 0 rgba(0, 0, 0, 0.2); }

.b-prev, .b-next {
  text-align: center;
  z-index: 1;
  display: inline-block;
  position: absolute;
  top: 0;
  cursor: pointer;
  bottom: 0;
  height: 36px;
  line-height: 36px;
  width: 36px;
  box-shadow: 0 6px 15px 5px rgba(36, 37, 38, 0.08);
  background-color: #ffffff;
  margin: auto 0;
  transition: opacity .6s ease-in;
  opacity: 0; }
  .b-prev > i, .b-next > i {
    font-size: 14px;
    color: #333333; }

.b-prev {
  left: 0; }

.b-next {
  right: 0; }

/* Brand-Slider (Previous & Next Buttons) */
.section__content:hover .b-prev, .section__content:hover .b-next {
  opacity: 1; }






/*--------------------------------------------------------------
20.3-1 Owl-Carousel
Ce fichier CSS est utilisé pour styliser un carrousel d'images avec des fonctionnalités de diaporama, des animations, et des contrôles de navigation (précédent/suivant). Il inclut des styles spécifiques pour la mise en page des images, la pagination, et les animations du contenu textuel.
--------------------------------------------------------------*/

/* Masquer le curseur pendant le chargement */
.slider-fouc {
  display: none; 
}

/* Conteneur de squelette pour afficher des éléments avant le chargement complet du contenu */
.s-skeleton {
  position: relative;
  border-radius: 15px; /* Ajoute un rayon de bordure pour arrondir les coins */
}
 
/* Différentes hauteurs pour le conteneur de squelette */
.s-skeleton--h-600 {
  min-height: 600px;
  border-radius: 15px; /* Ajoute un rayon de bordure pour arrondir les coins */
}

.s-skeleton--h-640 {
  min-height: 640px; 
  border-radius: 15px; /* Ajoute un rayon de bordure pour arrondir les coins */
}

/* Arrière-plans différents pour le squelette */
.s-skeleton--bg-grey {
  background-color: #f5f5f5; 
  border-radius: 15px; /* Ajoute un rayon de bordure pour arrondir les coins */
}

.s-skeleton--bg-black {
  background-color: #000000; 
  border-radius: 15px; /* Ajoute un rayon de bordure pour arrondir les coins */
}

/* Styles pour le carrousel dans le squelette */
.s-skeleton .owl-carousel {
  position: relative; /* Assure que le carrousel est correctement positionné */
  z-index: 1; /* Positionne le carrousel en dessous du bouton */
  border-radius: 15px; /* Ajoute un rayon de bordure pour arrondir les coins */
}

/* Styles pour les diapositives individuelles dans le carrousel */
.curseur-principal .diapositive-hero {
  height: 640px; /* Définit la hauteur des diapositives */
  border-radius: 15px; /* Ajoute des bords arrondis aux diapositives */
  position: relative; /* Relative pour que les éléments enfants en position absolue fonctionnent correctement */
  z-index: 1; /* S'assure que les diapositives sont sous le bouton promo */
}

/* Positionnement absolu pour le conteneur du texte sur les diapositives */
.conteneur-cible {
  position: absolute;  
  bottom: 120px; /* Positionne le conteneur à 120px du bas */
  z-index: 10; /* Place le texte au-dessus des diapositives mais sous le bouton promo */
  width: 100%; /* Occupe toute la largeur de son conteneur parent */
}

/* Styles de base des diapositives */
.diapositive-hero {
  background: center center/cover no-repeat; /* Centre l'image de fond et couvre tout l'espace */
  z-index: 1; /* Z-index inférieur pour que les éléments en superposition soient au-dessus */
}

/* Arrière-plans spécifiques pour certaines diapositives */
.diapositive-hero--7 {
  background-image: url(../../images/slider/xbox-game-pass-core-banner.gif); /* Image de fond pour la diapositive 7 */
  z-index: 1;
}

.diapositive-hero--8 {
  background-image: url(../../images/slider/playstation-pass-cadeau.gif); /* Image de fond pour la diapositive 8 */
}

.diapositive-hero--9 {
  background-image: url("../../images/slider/abonnement-nintendo-switch-online.gif"); /* Image de fond pour la diapositive 9 */
}

/* Pagination (points) du carrousel */
.owl-carousel .owl-dots {
  position: absolute; /* Positionne les points du curseur de manière absolue */
}

.owl-carousel button.owl-dot:focus {
  outline: 0; /* Supprime le contour de mise au point lorsque l'on clique sur un point */
}

/* Styles pour les points de pagination dans le carrousel principal */
.owl-carousel.curseur-principal .owl-dots {
  top: 50%; /* Positionne les points à 50% de la hauteur du curseur */
  transform: translateY(-50%); /* Centre verticalement les points */
  right: 40px; /* Les place à 40px du côté droit */
}

.owl-carousel.curseur-principal button.owl-dot {
  width: 5px; /* Définit la largeur des points */
  height: 32px; /* Définit la hauteur des points */
  display: block; /* Assure que les points sont des blocs pour pouvoir les styliser */
  margin-bottom: 6px; /* Ajoute un espace entre chaque point */
  background-color: #f3f3f3; /* Couleur de fond des points inactifs */
  transition: background 0.3s ease-out; /* Transition douce pour le changement de couleur de fond */
}

.owl-carousel.curseur-principal button.owl-dot:last-child {
  margin-bottom: 0; /* Supprime la marge pour le dernier point */
}

.owl-carousel.curseur-principal button.owl-dot.active, 
.owl-carousel.curseur-principal button.owl-dot:hover {
  background-color: #2a7ae2; /* Change la couleur de fond des points actifs ou survolés */
}

/* Styles pour le texte affiché sur les diapositives */
.texte-principal {
  font-size: 1.25rem; /* Taille de police pour le premier texte */
  font-weight: 700; /* Applique une graisse de texte élevée (bold) */
  display: block; /* Affiche le texte comme un bloc */
}

.texte-reduction {
  font-weight: 700; /* Gras pour le deuxième texte */
  font-size: 3.25rem; /* Taille de police pour le deuxième texte */
  display: block; /* Affiche le texte comme un bloc */
}

.texte-offre {
  display: block; /* Affiche le texte comme un bloc */
  font-size: 0.875rem; /* Taille de police pour le troisième texte */
  margin-bottom: 8px; /* Ajoute un espace en dessous du texte */
  font-weight: bold; /* Met le texte en gras */
}

.texte-prix {
  display: block; /* Affiche le texte comme un bloc */
  font-weight: 600; /* Gras pour le quatrième texte */
  font-size: 0.875rem; /* Taille de police pour le quatrième texte */
  margin-bottom: 20px; /* Ajoute un espace en dessous du texte */
}

.span-contenu-4 span {
  font-weight: 700; /* Gras pour l'élément interne du quatrième texte */
  margin-left: 4px; /* Ajoute un espace à gauche de cet élément */
  font-size: 1.375rem; /* Taille de police pour cet élément interne */
}

/* Styles hérités de btn--e-achat.add-to-cart-btn pour lien-achat */
/* Styles principaux pour le nouveau nom de classe */
.btn-achat-promo {
  padding: 25px 10px;
  font-size: 1rem; /* Augmenté de 0.75rem à 1rem pour un texte plus grand */
  position: relative;
  transition: transform 0.3s, font-size 0.3s; /* Ajout de la transition sur la taille de police */
  text-align: center;
  border-radius: 15px;
  display: inline-block;
  color: #ffffff; /* Texte blanc */
  background-color: #2a7ae2; /* Fond bleu */
  border: 2px solid #ffffff;
  box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1);
  /* text-transform: uppercase; */ /* Commenté pour enlever la majuscule */
  letter-spacing: 0.05em;
  cursor: pointer;
  z-index: 2000;
  pointer-events: auto;
  will-change: transform;
  transform: translateY(-15)
}


/* Effet au survol du bouton d'achat */
.btn-achat-promo:hover {
  transform: scale(1.0);
  color: #ffffff; /* Assurez-vous que le texte reste blanc au survol */
  font-size: 1.8rem; /* Augmenter légèrement la taille du texte au survol */
  font-weight: bold; /* Applique le gras uniquement lors du survol */
}

/* Animation pour le bouton dans les diapositives actives */
.owl-item.active .btn-achat-promo {
  animation-delay: 1.5s;
  animation-name: fadeInLeft;
}




/* Animation des éléments textuels à l'intérieur des diapositives */
.owl-item .animation-contenu * {
  animation-duration: 1s;
  animation-fill-mode: both;
  will-change: transform, opacity; /* Optimisation des performances */
}

/* Différents délais d'animation pour chaque texte de la diapositive active */
.owl-item.active .texte-principal {
  animation-delay: 1.5s; /* Délai de 0,5 seconde avant le démarrage de l'animation */
  animation-name: fadeInLeft; /* Utilise l'animation fadeInLeft */
}

.owl-item.active .texte-reduction {
  animation-delay: 1s; /* Délai de 1 seconde avant le démarrage de l'animation */
  animation-name: fadeInLeft; /* Utilise l'animation fadeInLeft */
}

.owl-item.active .texte-offre {
  animation-delay: 1.5s; /* Délai de 1,5 seconde avant le démarrage de l'animation */
  animation-name: fadeInLeft; /* Utilise l'animation fadeInLeft */
}

.owl-item.active .texte-prix {
  animation-delay: 1.5s; /* Délai de 1,5 seconde avant le démarrage de l'animation */
  animation-name: fadeInLeft; /* Utilise l'animation fadeInLeft */
}


/* Mise à jour des classes de couleur */
.u-c-blanc {
  color: #fff; /* Blanc */
}

.u-c-bleu-nuit {
  color: #145ce0; /* Bleu nuit */
}

.u-c-noir {
  color: #000000; /* Bleu nuit */
}

.u-c-rouge {
  color: #FF0004; /* Bleu nuit */
}

.u-c-jaune {
  color: #ffd700; /* Jaune doré */
}

.u-c-bleu-violet {
  color: #0019D9; /* bleu violet */
}

.u-c-bleu-clair {
  color: #003dfc; /* bleu cair */
}

.u-c-bleu-pur {
  color: #0b2547; /* bleu cair */
}


.u-c-marque {  
  font-size: 1.8rem; /* Ajustez la taille selon vos besoins */
  font-weight: bold; /* Met le texte en gras */
}



/* Navigation du carrousel (Précédent/Suivant) */
/*--------------------------------------------------------------*/

/* Conteneur de navigation positionné relativement */
.navigation-carrousel {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  height: auto; /* Ajusté pour éviter de prendre toute la hauteur */
  display: flex; /* Flexbox pour aligner les éléments */
  justify-content: space-between; /* Les boutons sont distribués aux extrémités */
  padding: 0 10px; /* Optionnel : espace intérieur autour du conteneur */
}

/* Style général des boutons */
.bouton-precedent,
.bouton-suivant {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  cursor: pointer;
  z-index: 999;
  background-color: rgba(0, 0, 0, 0.5); /* Ajouter un fond semi-transparent si nécessaire */
  border-radius: 50%; /* Optionnel : arrondir les boutons */
}

.bouton-precedent {
  left: 1px; /* Ajustez l'espace à gauche */
  margin-left: 1px; /* Ajouter un espace entre le bouton et le bord */
}

.bouton-suivant {
  right: 1px; /* Ajustez l'espace à droite */
  margin-right: 1px; /* Ajouter un espace entre le bouton et le bord */
}

/* Style des images des boutons */
.bouton-precedent img,
.bouton-suivant img {
  width: 24px;
  height: auto;
}

/* Effets d'interaction */
.bouton-precedent:hover,
.bouton-suivant:hover {
  opacity: 0.8;
}

.bouton-precedent:focus,
.bouton-suivant:focus {
  outline: 2px solid #000;
}


.image-etiquette-container {
  position: relative; /* Pour que l'étiquette puisse être positionnée par rapport à l'image */
}



.image-etiquette-text {
  position: absolute;
  bottom: -61px; 
  left: 1px; 
  width: 250px; /* Augmenter la largeur */
  height: 60px; /* Augmenter la hauteur */
  background: rgba(0, 0, 0, 0.5); 
  color: #fff; 
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px; /* Ajuster l'espacement interne */
  border-top-right-radius: 15px; /* Coins supérieurs droits arrondis */
  border-top-left-radius: 15px; /* Coins supérieurs droits arrondis */
  border-bottom-right-radius: 15px; /* Coins inférieurs droits arrondis */
  border-bottom-left-radius: 15px; /* Coins inférieurs droits arrondis */
  z-index: 10;
  font-size: 16px; /* Augmenter la taille de la police si nécessaire */
  text-align: center; 
}





/*--------------------------------------------------------------
20.4 jquery.scrollUp
--------------------------------------------------------------*/
/* ScrollUp Custom */
#topScroll {
  right: 24px;
  bottom: 60px;
  width: 50px;
  height: 50px;
  line-height: 50px;
  box-shadow: 2px 2px 4px 4px rgba(36, 37, 38, 0.08);
  background-color: #ffffff;
  color: #333333;
  font-size: 18px;
  text-align: center; }

/*--------------------------------------------------------------
20.5 Slick Carousel
--------------------------------------------------------------*/
.slick-slide, .slick-slide * {
  outline: none; }

#pd-o-thumbnail .slick-slide:not(.slick-current) {
  opacity: .4; }

#js-product-detail-modal-thumbnail .slick-slide:not(.slick-current) {
  opacity: .4; }

.pt-prev, .pt-next {
  text-align: center;
  z-index: 1;
  display: inline-block;
  position: absolute;
  top: 0;
  cursor: pointer;
  bottom: 0;
  border-radius: 50%;
  height: 36px;
  line-height: 36px;
  width: 36px;
  margin: auto 0;
  transition: opacity ease-in-out .5s, background-color ease-in 0.3s;
  background-color: #ffffff;
  opacity: 0; }
  .pt-prev i, .pt-next i {
    font-size: 12px;
    color: #000000; }

.pt-prev {
  left: 20px; }

.pt-next {
  right: 20px; }

#pd-o-thumbnail:hover .pt-prev, #pd-o-thumbnail:hover .pt-next {
  opacity: .8; }

#js-product-detail-modal-thumbnail:hover .pt-prev, #js-product-detail-modal-thumbnail:hover .pt-next {
  opacity: .8; }





















/* CONTENUR DES PAGES DESCRIPTION DES PRODUITS*/

.custom-container {
    max-width: 1320px;              /* Largeur maximale */
    margin: 20px auto;              /* Centrage avec espace vertical */
    padding: 20px;                  /* Espacement intérieur */
    border: 1px solid #dcdcdc;      /* Bordure légère de 1px */
    border-radius: 15px;             /* Coins arrondis */
    background-color: #ffffff;      /* Couleur de fond blanche */
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); /* Ombre légère */
    transition: all 0.3s ease;      /* Transition fluide */
}

/* Effet au survol (optionnel) */
.custom-container:hover {
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2); /* Ombre renforcée au survol */
}

/* Styles responsive */
@media (max-width: 1024px) {
    .custom-container {
        margin: 15px;               /* Réduction de l'espace autour */
        padding: 15px;               /* Ajustement de l'espacement intérieur */
    }
}

@media (max-width: 768px) {
    .custom-container {
        margin: 10px;               /* Espace réduit pour les tablettes */
        padding: 10px;               /* Réduction de l'espacement intérieur */
        border: 1px solid #ccc;      /* Bordure légèrement plus foncée pour une meilleure visibilité */
    }
}

@media (max-width: 576px) {
    .custom-container {
        margin: 5px;                /* Espace minimal pour les petits écrans */
        padding: 5px;                /* Réduction supplémentaire pour les petits écrans */
        font-size: 14px;             /* Réduction de la taille de la police pour s'adapter aux petits écrans */
    }
}


/* CONTENUR DES PAGES DESCRIPTION DES PRODUITS*/




/* Style du conteneur principal */
.review-section {
  display: flex;
  justify-content: space-between; /* Cela place les éléments à gauche et à droite */
  align-items: center; /* Centrer verticalement */
  width: 100%; /* Occuper toute la largeur */
  margin: 10px 0; /* Espacement autour */
}

/* Style pour le groupe contenant le titre des avis */
.review-header {
  display: flex; /* Utiliser flexbox pour aligner les enfants en ligne */
  justify-content: space-between; /* Espace entre les éléments à gauche et à droite */
  width: 100%; /* Occuper toute la largeur */
}

.review-count {
  text-align: left; /* Aligner le texte à gauche */
  margin-right: 20px; /* Un peu d'espace entre les éléments */
}

/* Style pour le sélecteur de tri */
.sort-dropdown {
  text-align: right; /* Aligner le sélecteur à droite */
}

/* Style du sélecteur */
.select-box {
  border-radius: 0.375rem;
  padding: 0.5rem;
  font-size: 14px;
  border: 1px solid #ccc;
}

/* Style réactif pour les petits écrans */
@media (max-width: 575px) {
  .review-header {
    flex-direction: column; /* Empiler les éléments en colonne sur les petits écrans */
    text-align: center; /* Centrer le contenu */
  }

  .review-count {
    margin-bottom: 10px; /* Espacement en bas du titre */
  }

  .sort-dropdown {
    margin-top: 10px; /* Espacement au-dessus du sélecteur */
  }
}








/* Style général pour les avis */
.review-card {
    background-color: #fff;
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 15px;
    margin-bottom: 20px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    transition: box-shadow 0.3s ease;
}

/* Effet au survol des cartes d'avis */
.review-card:hover {
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

/* Informations utilisateur et date */
.review-card__info {
    display: flex;
    justify-content: space-between;
    font-size: 14px;
    color: #555;
    margin-bottom: 10px;
}

/* Nom de l'utilisateur */
.review-card__user {
    font-weight: bold;
    color: #333;
}

/* Date de l'avis */
.review-card__date {
    color: #888;
}

/* Note de l'avis */
.review-card__rating {
    margin: 10px 0;
    font-size: 18px;
    color: #f5a623;
}

/* Affichage des étoiles */
.review-card__rating i {
    color: inherit;
}

/* Commentaire de l'avis */
.review-card__comment {
    font-size: 16px;
    color: #333;
    margin-bottom: 15px;
}

/* Style pour l'image et la vidéo */
.review-card__media {
    margin-top: 15px;
    display: flex;
    justify-content: center;
    text-align: center;
}

/* Image et vidéo dans l'avis */
.review-card__media img,
.review-card__media video {
    max-width: 100%;
    max-height: 300px;
    object-fit: contain;
    border-radius: 5px;
    display: block;
}

/* Adaptation pour les petits écrans */
@media (max-width: 768px) {
    .review-card__info {
        flex-direction: column;
        align-items: flex-start;
    }

    .review-card__user,
    .review-card__date {
        font-size: 12px;
    }

    .review-card__rating {
        font-size: 16px;
    }

    .review-card__comment {
        font-size: 14px;
    }

    .review-card__media img,
    .review-card__media video {
        max-height: 200px; /* Réduit la taille des médias sur les petits écrans */
    }
}

/* Adaptation pour les très petits écrans (smartphones) */
@media (max-width: 480px) {
    .review-card {
        padding: 10px; /* Moins de padding pour s'adapter aux petits écrans */
    }

    .review-card__info {
        font-size: 12px;
    }

    .review-card__rating {
        font-size: 14px;
    }

    .review-card__comment {
        font-size: 12px;
    }

    .review-card__media img,
    .review-card__media video {
        max-height: 150px; /* Encore plus petit sur les très petits écrans */
    }
}















/* Structure principale pour afficher les éléments côte à côte */
.ligne {
    display: flex;
    flex-wrap: wrap; /* Permet aux éléments de passer à la ligne sur des écrans plus petits */
    justify-content: space-between;
    gap: 20px; /* Espacement entre les colonnes */
}

/* Colonne gauche et droite de chaque section */
.col-gauche, .col-droite {
    flex: 1 1 48%; /* Chaque colonne prend 48% de la largeur disponible avec un petit espacement */
}

/* Tableaux */
.tableau-produit {
    width: 100%;
    border-collapse: collapse;
    margin-top: 10px;
}

.tableau-produit td {
    padding: 8px;
    border: 1px solid #ddd;
    text-align: left;
}

.tableau-produit td:first-child {
    font-weight: bold;
}

/* Liste des informations complémentaires */
.col-droite ul {
    list-style: none;
    padding: 0;
}

.col-droite ul li {
    margin-bottom: 8px;
}

/* Vidéos */
.videos {
    display: flex;
    gap: 20px;
    justify-content: center;
    margin-top: 20px;
}

.video-container {
    flex: 1 1 48%;
    display: flex;
    justify-content: center;
}

video {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
}

/* Adaptation pour les écrans plus petits */
@media (max-width: 768px) {
    .col-gauche, .col-droite {
        flex: 1 1 100%; /* Sur les écrans plus petits, les colonnes prennent toute la largeur */
    }

    .videos {
        flex-direction: column; /* Les vidéos passent en colonne sur les petits écrans */
        gap: 10px;
    }

    .video-container {
        flex: 1 1 100%; /* Les vidéos prennent toute la largeur disponible */
    }
}

@media (max-width: 480px) {
    /* Espacement réduit sur les très petits écrans */
    .ligne {
        gap: 10px;
    }

    .col-gauche, .col-droite {
        flex: 1 1 100%; /* Les colonnes prennent toute la largeur */
    }

    video {
        max-width: 100%;
    }
}

}