/*=============== GOOGLE FONTS ===============*/
@import url('https://fonts.googleapis.com/css2?family=Lato:wght@400;700&family=Spartan:wght@400;500;600;700&display=swap');

/*  VARIABLES CSS  */
:root {
  --header-height: 4rem;

  /*  Colors  */
  /* Color mode HSL(hue, saturation, lightness) */
  --first-color: hsl(176, 88%, 27%);
  --first-color-alt: hsl(129, 44%, 94%);
  --second-color: hsl(34, 94%, 87%);
  --title-color: hsl(0, 0%, 13%);
  --text-color: hsl(154, 13%, 32%);
  --text-color-light: hsl(60, 1%, 56%);
  --body-color: hsl(0, 0%, 100%);
  --container-color: hsl(0, 0%, 93%);
  --border-color: hsl(129, 36%, 85%);
  --border-color-alt: hsl(113, 15%, 90%);

  /*  Font and typography  */
  /* .5rem = 8px | 1rem = 16px ... */
  --body-font: 'Lato', sans-serif;
  --second-font: 'Spartan', sans-serif;
  --big-font-size: 3.5rem;
  --h1-font-size: 2.75rem;
  --h2-font-size: 2rem;
  --h3-font-size: 1.75rem;
  --h4-font-size: 1.375rem;
  --large-font-size: 1.125rem;
  --normal-font-size: 1rem;
  --small-font-size: 0.875rem;
  --smaller-font-size: 0.75rem;
  --tiny-font-size: 0.6875rem;

  /*  Font weight  */
  --weight-400: 400;
  --weight-500: 500;
  --weight-600: 600;
  --weight-700: 700;

  /*========== Transition ==========*/
  --transition: cubic-bezier(0, 0, 0.05, 1);
}

/* Responsive typography */
@media screen and (max-width: 1200px) {
  :root {
    --big-font-size: 2.25rem;
    --h1-font-size: 2rem;
    --h2-font-size: 1.375rem;
    --h3-font-size: 1.25rem;
    --h4-font-size: 1.125rem;
    --large-font-size: 1rem;
    --normal-font-size: 0.9375rem;
    --small-font-size: 0.8125rem;
    --smaller-font-size: 0.6875rem;
    --tiny-font-size: 0.625rem;
  }
}

/*  =============== BASE ===============*/
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

input,
textarea,
body {
  color: var(--text-color);
  font-family: var(--body-font);
  font-size: var(--normal-font-size);
  font-weight: var(--weight-400);
}

body {
  background-color: var(--body-color);
}

h1,h2,h3,h4 {
  font-family: var(--second-font);
  color: var(--title-color);
  font-weight: var(--weight-600);
}

ul {
  list-style: none;
}

a {
  text-decoration: none;
}

p {
  line-height: 1.5rem;
}

img {
  max-width: 100%;
}

button,
textarea,
input {
  background-color: transparent;
  border: none;
  outline: none;
}

table {
  width: 100%;
  border-collapse: collapse;
}

.text-right {
    text-align: right;
}

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

.text-left {
    text-align: left;
}

.sup-normal {
    font-size: 20px;
}

.sup-old {
    font-size: 12px;
}

.sup-promo {
    font-size: 20px;
}

.pt-2 {
    padding-top: 6px;
}

.currency {
    font-size: 0.7em;
    vertical-align: super; /* ou sub pour indice */
    /*color: #555; /* optionnel */
}

.img-table-cmd {
    width: 50px;
    height: auto;
}
/*  =============== REUSABLE CSS CLASSES ===============*/
.container {
    max-width: 1320px;
    margin-inline: auto;
    padding-inline: .75rem;
}

.box__slide {
    width: 1320px;
    max-width:1320px;
    overflow: hidden;
    margin: auto;
}

.container__slide {
    width:100%;
    max-width: 1320px;
    margin-inline: auto;
    padding-inline: .75rem;
}

.grid {
    display: grid;
    gap: 1.5rem;
}

.section {
  padding-block: 2rem;
}

.section--lg {
    /*padding-block: 4rem;*/
    padding-block: 2rem 3rem;
}

.section__title {
  font-size: var(--h4-font-size);
  margin-bottom: 1.5rem;
}

.section__title span {
  color: var(--first-color);
}

.form__input {
  border: 1px solid var(--border-color-alt);
  padding-inline: 1rem;
  height: 45px;
  border-radius: 0.25rem;
  font-size: var(--small-font-size);
}

.new__price{
  color: var(--first-color);
  font-weight: var(--weight-600);
}

.old__price {
  color: var(--text-color-light);
  font-size: var(--small-font-size);
  text-decoration: line-through;
}

.normal__price {
    color: var(--text-color-light);
    font-size: 2rem;
    font-weight: var(--weight-600);
}

.normal__price-liste {
    color: var(--text-color-light);
    font-size: 1.125rem;
    font-weight: var(--weight-600);
}

.normal__price-showcase {
    color: var(--text-color-light);
    font-weight: var(--weight-600);
}

.form {
  row-gap: 1rem;
}

.form__group {
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
}

.textarea {
  height: 200px;
  padding-block: 1rem;
  resize: none;
}

/*  =============== HEADER & NAV ===============*/
.header__top {
  background-color: var(--first-color-alt);
  border-bottom: 1px solid var(--first-color);
  padding-block: 0.875rem;
}

.header__container {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.header__contact span:first-child {
  margin-right: 2rem;
}

.header__contact span,
.header__alert-news,
.header__top-action {
  font-size: var(--small-font-size);
}

.header__alert-news {
  color: var(--text-color-light);
  font-weight: var(--weight-600);
}

.header__top-action {
  color: var(--text-color);
}

.nav,
.nav__menu,
.nav__list,
.header__user-actions {
  display: flex;
  align-items: center;
}

.nav {
  height: calc(var(--header-height) + 2.5rem);
  justify-content: space-between;
  column-gap: 1rem;
}

.nav__logo-img {
  width: 120px;
}

.nav__menu {
  flex-grow: 1;
  margin-left: 2.5rem;
}

.nav__list {
  column-gap: 2.5rem;
  margin-right: auto;
}

.nav__link {
  color: var(--title-color);
  font-weight: var(--weight-700);
  transition: all 0.2s var(--transition);
}

.header__search {
  width: 340px;
  position: relative;
}

.header__search .form__input {  
  width: 100%;
}

.search__btn {
  position: absolute;
  top: 24%;
  right: 1.25rem;
  cursor: pointer;
}

.header__user-actions {
  column-gap: 1.25rem;
}

.header__action-btn {
  position: relative;
}

.header__action-btn img {
  width: 24px;
}

.header__action-btn .count {
  position: absolute;
  top: -0.625rem;
  right: -0.625rem;
  background-color: var(--first-color);
  color: var(--body-color);
  height: 18px;
  width: 18px;
  line-height: 18px;
  border-radius: 50%;
  text-align: center;
  font-size: var(--tiny-font-size);
}

.nav__menu-top,
.nav__toggle {
  display: none;
}

/* Active link */
.active-link,
.nav__link:hover {
  color: var(--first-color);
}

/*  =============== HOME ===============*/
.home__container {
  grid-template-columns: 5fr 7fr;
  align-items: center;
}

.home__subtitle,
.home__description {
  font-size: var(--large-font-size);
}

.home__subtitle {
  font-family: var(--second-font);
  font-weight: var(--weight-600);
  margin-bottom: 1rem;
  display: block;
}

.home__title {
  font-size: var(--h1-font-size);
  font-weight: var(--weight-700);
  line-height: 1.4;
}

.home__title span {
  color: var(--first-color);
  font-size: var(--big-font-size);
}

.home__description {
  margin-block: .5rem 2rem;
}

.home__img {
  justify-self: flex-end;
}

/******** SLIDE SWIPER *********/
.swiper-slide img.slide__img {
    /*justify-self: flex-end;*/
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.swiper-slide {
    display: block;
    flex-shrink: 0;
    height: 100%;
    position: relative;
    transition-property: transform;
    width: 100%;
}

.flex-slide {
    display: flex;
    align-items: center;
}

.content-slide {
    position: absolute;
    width: 45%;
    padding: 1.5rem 2.0rem 1.5rem 2.8rem;
}

.title-slide {
    font-size: var(--h1-font-size);
    font-weight: var(--weight-700);
    line-height: 1.4;
}

.title-slide span {
    color: var(--first-color);
    font-size: var(--big-font-size);
}

.subtitle-slide {
    font-family: var(--second-font);
    font-weight: var(--weight-600);
    margin-bottom: 1rem;
    display: block;
}

.text-slide {
    font-size: var(--large-font-size);
    margin-block: .5rem 2rem;
}

.autoplay-progress {
    position: absolute;
    right: 16px;
    bottom: 16px;
    z-index: 10;
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    color: var(--swiper-theme-color);
    color: #088179;
}

    .autoplay-progress svg {
        --progress: 0;
        position: absolute;
        left: 0;
        top: 0px;
        z-index: 10;
        width: 100%;
        height: 100%;
        stroke-width: 4px;
        /*stroke: var(--swiper-theme-color);*/
        stroke: #088179;
        fill: none;
        stroke-dashoffset: calc(125.6px * (1 - var(--progress)));
        stroke-dasharray: 125.6;
        transform: rotate(-90deg);
    }

.swiper-pagination-bullet-active {
    background: var(--swiper-pagination-color,#088179);
    opacity: var(--swiper-pagination-bullet-opacity,1);
}


/*  =============== BUTTONS ===============*/
.btn {
  display: inline-block;
  background-color: var(--first-color);
  border: 2px solid var(--first-color);
  color: var(--body-color);
  padding-inline: 1.75rem;
  height: 49px;
  line-height: 49px;
  border-radius: .25rem;
  font-family: var(--second-font);
  font-size: var(--small-font-size);
  font-weight: var(--weight-700);
  transition: all 0.4s var(--transition);
}

.btn:hover {
  background-color: transparent;
  color: var(--first-color);
}

.btn-add {
    /*display: inline-block;*/
    border: 2px solid var(--first-color);
    color: var(--first-color);
    height: 49px;
    line-height: 49px;
    border-radius: .25rem;
    font-family: var(--second-font);
    font-size: var(--small-font-size);
    font-weight: var(--weight-700);
    transition: all 0.4s var(--transition);
}

.btn-add:hover {
    background-color: var(--first-color);
    color: var(--body-color);
    transition: all 0.4s var(--transition);
}

.btn-remove {
    height: 30px;
    line-height: 30px;
    width: 35px;
    border: 2px solid #F7948D;
    padding-inline: 0.5rem;
    color: #F7948D;
    border-radius: .25rem;
    font-family: var(--second-font);
    font-size: var(--small-font-size);
    font-weight: var(--weight-700);
    transition: all 0.4s var(--transition);
}

    .btn-remove:hover {
        background-color: #FF7C73;
        color: var(--body-color);
        border-color: #FF7C73;
        transition: all 0.4s var(--transition);
    }


.btn--md,
.btn--sd {
    font-family: var(--body-font);
}

.btn--md {  
  height: 45px;
  line-height: 42px;
}

.btn--sm {
  height: 40px;
  line-height: 36px;
}

.btn-add--sm {
    height: 30px;
    line-height: 30px;
    width: 35px;
}

.btn--sd {
    height: 32px;
    width: 140px;
    padding-inline: 0.5rem;
    line-height: 28px;
}


.flex {
  display: flex;
  align-items: center;
  column-gap: .5rem;
}

/*  =============== CATEGORIES ===============*/
.categories {
  overflow: hidden;
}

.category__item {
  text-align: center;
  border: 1px solid var(--border-color);
  padding: 0.625rem 0.625rem 1.25rem;
  border-radius: 1.25rem;
}

.category__img {
  border-radius: 0.75rem;
  margin-bottom: 1.25rem;
}

.category__title {
  color: var(--text-color);
  font-size: var(--small-font-size);
}

/* Swiper class */
.swiper {
  overflow: initial;
}

.swiper-horizontal .swiper-navigation-icon {
  display: none;
}

.swiper-horizontal .swiper-button-next,
.swiper-horizontal .swiper-button-prev {
  top: -1.875rem;
  background-color: var(--first-color-alt);
  border: 1px solid var(--body-color);
  width: 30px;
  height: 30px;
  border-radius: 50%;
  color: var(--first-color);
  font-size: var(--tiny-font-size);
  }

.swiper-horizontal .sw-css-next {
    position: relative;
    top: -335px;
    right: -1255px;
}

.swiper-horizontal .swiper-button-prev {
    left: initial;
    right: 2.5rem;
}

.swiper-horizontal .sw-css-prev {
    position: relative;
    /*top: -335px;*/
    top: -326px;
    right: -10px;
}

.swiper-horizontal > .swiper-pagination-bullets, 
.swiper-pagination-bullets.swiper-pagination-horizontal, 
.swiper-pagination-custom, .swiper-pagination-fraction {
    bottom: var(--swiper-pagination-bottom,25px);
    /*left: 0;
    top: var(--swiper-pagination-top,auto);
    width: 100%;*/
}

/*  =============== PRODUCTS ===============*/
.tab__btns {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-bottom: 2rem;
}

.tab__btn {
  background-color: var(--container-color);
  color: var(--title-color);
  padding: 1rem 1.25rem 0.875rem;
  border-radius: .25rem;
  font-family: var(--second-font);
  font-size: var(--small-font-size);
  font-weight: var(--weight-600);
  cursor: pointer;
}

.products__container {
  grid-template-columns: repeat(4, 1fr);
}

.product__item {
  border: 1px solid var(--border-color);
  border-radius: 1.5rem;
  transition: all 0.2s var(--transition);
}

.product__banner {
  padding: 0.625rem 0.75rem 0.75rem;
}

.product__banner,
.product__images {
  position: relative;
}

.product__images {
  display: block;
  overflow: hidden;
  border-radius: 1.25rem;
}

.product__img {
  vertical-align: middle;
  transition: all 1.5s var(--transition);
}

.product__item:hover .product__img {
  transform: scale(1.1);
}

.product__img.hover {
  position: absolute;
  top: 0;
  left: 0;
}

.product__actions {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  column-gap: 0.5rem;
  transition: all .2s var(--transition);
}

.action__btn {
  width: 40px;
  height: 40px;
  line-height: 42px;
  text-align: center;
  border-radius: 50%;
  background-color: var(--first-color-alt);
  border: 1px solid var(--body-color);
  color: var(--text-color);
  font-size: var(--small-font-size);
  position: relative;
}

.action__btn::before,
.action__btn::after {
  position: absolute;
  left: 50%;
  transform: translate(-50%);
  transition: all .3s cubic-bezier(0.71, 1.7, 0.77, 1.24);
}

.action__btn::before {
  content: '';
  top: -2px;
  border: .5rem solid transparent;
  border-top-color: var(--first-color);
}

.action__btn::after {
  content: attr(aria-label);
  bottom: 100%;
  background-color: var(--first-color);
  color: var(--body-color);
  font-size: var(--tiny-font-size);
  white-space: nowrap;
  padding-inline: 0.625rem;
  border-radius: 0.25rem;
  line-height: 2.58;
}

.product__boxbadge {
    position: absolute;
    top: 1.0rem;
    left: 6.5rem;
    transform: translate(-34%, -90%);
    display: flex;
    flex-wrap: wrap;
    column-gap: 0.5rem;
    transition: all .2s var(--transition);
    width: 100%;
}

.product__badge {
    position: absolute;
    left: 1.25rem;
    top: 1.25rem;
    background-color: var(--first-color);
    color: var(--body-color);
    padding: .25rem .625rem;
    border-radius: 2.5rem;
    font-size: var(--tiny-font-size);
}


    .product__badge.light-pink {
        background-color: hsl(341, 100%, 73%);
        position: relative;
    }

    .product__badge.light-green {
        background-color: hsl(155, 20%, 67%);
        position: relative;
    }

    .product__badge.light-orange {
        background-color: hsl(24, 100%, 73%);
        position: relative;
    }

    .product__badge.light-blue {
        background-color: hsl(202, 53%, 76%);
        position: relative;
    }

.product__content {
  padding: 0 1.25rem 1.125rem;
  position: relative;
}

.product__category {
  color: var(--text-color-light);
  font-size: var(--small-font-size);
}

.product__title {
  font-size: var(--normal-font-size);
  margin-block: 0.75rem 0.5rem;
}

span.product__title {
    display: block;
    font-family: var(--second-font);
    color: var(--title-color);
    font-weight: var(--weight-600);
    font-size: var(--normal-font-size);
    margin-block: 0.75rem 0.5rem;
}

.product__rating {
  color: hsl(42, 100%, 50%);
  font-size: var(--small-font-size);
  margin-bottom: 0.75rem;
}

.product__price .new__price {
  font-size: var(--large-font-size);
}

.cart__btn {
  position: absolute;
  bottom: 1.6rem;
  right: 1.25rem;
}

/* Active Tab */
.tab__btn.active-tab {
  color: var(--first-color);
  background-color: var(--second-color);
}

.tab__item:not(.active-tab) {
  display: none;
}

/* Product Hover */
.product__img.hover,
.product__actions,
.action__btn::before,
.action__btn::after,
.product__item:hover .product__img.default {
  opacity: 0;
}

.product__item:hover {
  box-shadow: 0 0 10px hsla(0, 0%, 0%, 0.1);
}

.product__item:hover .product__img.hover,
.product__item:hover .product__actions,
.action__btn:hover::before,
.action__btn:hover::after {
  opacity: 1;
}

.action__btn:hover::before,
.action__btn:hover::after {
  transform: translateX(-50%) translateY(-0.5rem);
}

.action__btn:hover {
  background-color: var(--first-color);
  border-color: var(--first-color);
  color: var(--body-color);
}

/*  =============== DEALS ===============*/
.deals__container {
  grid-template-columns: repeat(2, 1fr);
}

/*.deals__item:nth-child(1) {
  background-image: url(../images/events/deals-1.jpg);
}

.deals__item:nth-child(2) {
  background-image: url(../images/events/deals-2.png);
}*/

.deals__item {
  padding: 3rem;
  background-size: cover;
  background-position: center;
  display: flex;
  flex-direction: column;
  row-gap: 1.5rem;
}

.deals__brand {
  color: var(--first-color);
  font-size: var(--h3-font-size);
  margin-bottom: .25rem;
}

.deals__category {
  font-family: var(--second-font);
  font-size: var(--small-font-size);
}

.deals__title {
  max-width: 240px;
  font-size: var(--large-font-size);
  font-weight: var(--weight-400);
  line-height: 1.3;
}

.deals__price .new__price,
.deals__price .old__price {
  font-size: var(--large-font-size);
}

.deals__price .new__price {
  color: hsl(352, 100%, 60%);
}

.deals__countdown-text {
  margin-bottom: 0.25rem;
}

.countdown {
  display: flex;
  column-gap: 1.5rem;
}

.countdown__amount {
  position: relative;
}

.countdown__amount::after {
  content: ':';
  color: var(--title-color);
  font-size: var(--large-font-size);
  position: absolute;
  right: -25%;
  top: 20%;
}

.countdown__period {
  background-color: var(--first-color);
  color: var(--body-color);
  width: 60px;
  height: 50px;
  line-height: 50px;
  text-align: center;
  border-radius: .25rem;
  font-size: var(--large-font-size);
  font-weight: var(--weight-600);
  margin-bottom: .5rem;
}

.unit {
  font-size: var(--small-font-size);
  text-align: center;
  display: block;
}

.deals__btn .btn {
  background-color: transparent;
  color: var(--first-color);
}

/*  =============== NEW ARRIVALS ===============*/
.new__arrivals {
  overflow: hidden;
}

/*  =============== SHOWCASE ===============*/
.showcase__container {
  grid-template-columns: repeat(4, 1fr);
}

.showcase__wrapper .section__title {
  font-size: var(--normal-font-size);
  border-bottom: 1px solid var(--border-color-alt);
  padding-bottom: .75rem;
  margin-bottom: 2rem;
  position: relative;
}

.showcase__wrapper .section__title::before {
  content: '';
  position: absolute;
  left: 0;
  bottom: -1.3px;
  width: 50px;
  height: 2px;
  background-color: var(--first-color);
}

.showcase__item {
  display: flex;
  align-items: center;
  column-gap: 1.5rem;
}

.showcase__item:not(:last-child) {
  margin-bottom: 1.5rem;
}

.showcase__img {
  width: 86px;
}

.showcase__content {
  width: calc(100% - 110px);
}

.showcase__title {
  font-size: var(--small-font-size);
  font-weight: var(--weight-500);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-bottom: 0.5rem;
}

/*  =============== NEWSLETTER ===============*/
.newsletter {
  background-color: hsl(166, 23%, 74%);
}

.home__newsletter {
  margin-top: 2rem;
}

.newsletter__container {
  grid-template-columns: repeat(2, 3.5fr) 5fr;
  align-items: center;
  column-gap: 3rem;
}

.newsletter__title {
  column-gap: 1rem;
  font-size: var(--large-font-size);
}

.newsletter__icon {
  width: 40px;
}

.newsletter__description {
  color: var(--title-color);
  font-family: var(--second-font);
  font-size: var(--small-font-size);
  font-weight: var(--weight-600);
  text-align: center;
}

.newsletter__form {
  display: flex;
}

.newsletter__input,
.newsletter__btn {
  font-size: var(--small-font-size);
}

.newsletter__input {
  background-color: var(--body-color);
  padding-inline: 1.25rem;
  width: 100%;
  height: 48px;
  border-radius: 0.25rem 0 0 0.25rem;
}

.newsletter__btn {
  background-color: var(--title-color);
  color: var(--body-color);
  padding-inline: 2rem;
  border-radius: 0 0.25rem 0.25rem 0;
  font-family: var(--second-font);
  font-weight: var(--weight-500);
  letter-spacing: .5px;
  cursor: pointer;
  transition: all .3s var(--transition);
}

.newsletter__btn:hover {
  background-color: var(--first-color);
}

/*  =============== FOOTER ===============*/
.footer__container {
  grid-template-columns: 4.5fr repeat(2, 2fr) 3.5fr;
  padding-block: 2.5rem;
}

.footer__logo-img {
  width: 120px;
}

.footer__subtitle {
  color: var(--text-color-light);
  font-size: var(--small-font-size);
  margin-block: 1.25rem 0.625rem;
}

.footer__description {
  margin-bottom: 0.25rem;
}

.footer__description span {
  font-weight: var(--weight-600);
}

.footer__social .footer__subtitle {
  margin-top: 1.875rem;
}

.footer__social-links {
  column-gap: 0.25rem;
}

.footer__social-icon {
  width: 20px;
  opacity: 0.7;
}

.footer__title {
  font-size: var(--large-font-size);
  margin-block: 1rem 1.25rem;
}

.footer__link {
  color: var(--title-color);
  font-size: var(--small-font-size);
  margin-bottom: 1rem;
  display: block;
  transition: all .3s var(--transition);
}

.footer__link:hover {
  color: var(--first-color);
  margin-left: 0.25rem;
}

.footer__bottom {
  display: flex;
  justify-content: space-between;
  padding-block: 1.25rem;
  border-top: 1px solid var(--border-color-alt);
}

.copyright,
.designer {
  color: var(--text-color-light);
  font-size: var(--small-font-size);
}

/*  =============== BREADCRUMBS ===============*/
.breadcrumb {
  background-color: var(--container-color);
  padding-block: 1.5rem;
}

.breadcrumb__list {
  column-gap: .75rem;
}

.breadcrumb__link {
  color: var(--text-color);
  font-size: var(--small-font-size);
}

/*  =============== SHOP ===============*/
.total__products {
  margin-bottom: 2.5rem;
}

.total__products span {
  color: var(--first-color);
  font-weight: var(--weight-600);
}

.pagination {
  display: flex;
  column-gap: 0.625rem;
  margin-top: 2.75rem;
}

.pagination__link {
  display: inline-block;
  width: 34px;
  height: 34px;
  line-height: 34px;
  text-align: center;
  border-radius: .25rem;
  color: var(--text-color);
  font-size: var(--small-font-size);
  font-weight: var(--weight-700);
  transition: all 0.15s var(--transition);
}

.pagination__link.active,
.pagination__link:hover {
  background-color: var(--first-color);
  color: var(--body-color);
}

.pagination__link.icon {
  border-top-right-radius: 50%;
  border-bottom-right-radius: 50%;
}

/*  =============== DETAILS ===============*/
.details__container {
  grid-template-columns: 5.5fr 6.5fr;
}

.details__img {
    transition: opacity 0.3s ease, transform 0.3s ease;
    opacity: 1;
    transform: scale(1) translateX(0);
}

/*** Animation Images Gallery ***/
.details__img.animate-out {
    opacity: 0;
    transform: scale(0.95) translateX(-20px); /* glissement vers la gauche + zoom out */
}

.details__img.animate-in {
    opacity: 1;
    transform: scale(1) translateX(0); /* retour à l’état normal */
}
/*******/

.details__small-images {
  grid-template-columns: repeat(4, 1fr);
  column-gap: .625rem;
}

.details__small-img {
    cursor: pointer;
    /*** effet tactile sur les miniatures (option) ***/
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
}

/* Animation déclenchée par hover */
/*.details__small-img:hover ~ .details__img {
    opacity: 0;
    transform: scale(0.95) translateX(-20px);
}*/

.details__small-img:hover {
    transform: scale(1.05);
    transition: transform 0.2s ease;
    cursor: pointer;
    border: 1px solid var(--first-color);
}


.details__title {
  font-size: var(--h2-font-size);
}

.details__brand {
  font-size: var(--small-font-size);
  margin-block: 1rem;
}

.details__brand span {
  color: var(--first-color);
}

.details__price {
  border-top: 1px solid var(--border-color-alt);
  border-bottom: 1px solid var(--border-color-alt);
  padding-block: 1rem;
  column-gap: 1rem;
}

.details__price .new__price {
  font-size: var(--h2-font-size);
}

.details__price .old__price {
  font-size: var(--normal-font-size);
  font-weight: var(--weight-500);
}

.details__price .save__price {
  font-size: var(--normal-font-size);
  font-weight: var(--weight-500);
  color: rgba(255, 34, 34, 0.65);        

}


.short__description {
  margin-block: 1rem 2rem;
}

.list__item,
.meta__list {
  font-size: var(--small-font-size);
  margin-bottom: .75rem;
}

.details__color,
.details__size {
  column-gap: .75rem;
}

.details__color {
  margin-block: 2rem 1.5rem;
}

.details__size {
  margin-bottom: 2.5rem;
}

.details__color-title,
.details__size-title {
  font-size: var(--small-font-size);
  font-weight: var(--weight-600);
}

.color__list,
.size__list {
  display: flex;
  column-gap: 0.25rem;
}

.color__link {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  display: block;
}


/*********** Theme Input Radio Couleur  ************/
.color__list {
    display: flex;
    gap: 0.50rem;
    padding: 0;
    list-style: none;
}

.color__list span {
    display: inline-block;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    position: relative;
    cursor: pointer;
    transition: transform 0.5s ease;
}

.color__list span:hover {
    transform: scale(1.15);
}

/* Masquer l'input natif */
    .color__list span input[type="radio"] {
        opacity: 0;
        position: absolute;
        inset: 0;
        cursor: pointer;
        display: none;
    }

/* Sélectionné dynamiquement */
.color__list .color-selected {
    display: inline-block;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    outline: 1px solid #333;
    box-shadow: 0 0 2px 5px rgba(0, 0, 0, 0.2);
    transform: translate(0%, 0%) scale(1);
}

.selected-color-label {
    display: block;
    width: 200px;
}

/*********** Theme Input Radio Size  ************/
.size__list {
    padding: 0;
    display: flex;
    gap: 7px;
}

.size__list input[type="radio"] {
    display: none;
}

.size__list label {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px; /* largeur fixe*/
    height: 30px; /* hauteur fixe */
    padding: 6px 12px;
    margin: 4px;
    border-radius: 6px;
    background-color: #f9f9f9;
    transition: all 0.2s ease;
    border: 1px solid var(--border-color-alt);
    color: var(--text-color);
    font-size: var(--small-font-size);
    font-family: var(--body-font);
    font-weight: var(--weight-400);
    box-sizing: border-box;
    cursor: pointer;
}

.size__list label:hover {
    border-color: #666;
    background-color: #eaeaea;
    transform: scale(1.05);
}

.size__selected {
    background-color: #333;
    color: white;
    border-color: #333;
}

.size__list input[type="radio"]:checked + label {
    background-color: var(--first-color);
    color: var(--body-color);
    border-radius: 4px;
}

.selected-size-label {
    display: block;
    width: 150px;
}

/******************************************/

.size-active {
    background-color: var(--first-color);
    color: var(--body-color);
}

.details__action {
  display: flex;
  column-gap: 0.375rem;
  margin-bottom: 3.25rem;
}

.quantity,
.details__action-btn {
  border: 1px solid var(--border-color-alt);
  font-size: var(--small-font-size);
}

.quantity {
  max-width: 80px;
  padding-block: 0.5rem;
  padding-inline: 1rem 0.5rem;
  border-radius: .25rem;
}

.details__action-btn {
    color: var(--text-color);
    line-height: 38px;
    padding-inline: 0.75rem;
    border-radius: 4px;
}

.details__action-btn:hover {
    color: var(--first-color);
    border: 1px solid var(--first-color);
    background-color: #08817924;
}

.details__meta {
  border-top: 1px solid var(--border-color-alt);
  padding-top: 1rem;
}

/*  =============== DETAILS INFO & REVIEWS ===============*/
.detail__tabs {
  display: flex;
  column-gap: 1.75rem;
  margin-bottom: 3rem;
}

.detail__tab {
  font-family: var(--second-font);
  font-size: var(--large-font-size);
  font-weight: var(--weight-600);
  cursor: pointer;
}

.detail__tab.active-tab {
  color: var(--first-color);
}

.details__tab-content:not(.active-tab) {
  display: none;
}

.info__table tr th,
.info__table tr td {
  border: 1px solid var(--border-color-alt);
  padding: 0.625rem 1.25rem;
}

.info__table tr th {
  font-weight: var(--weight-500);
  text-align: left;
}

.info__table tr td {
  color: var(--text-color-light);
}

.reviews__container {
  padding-bottom: 3rem;
  row-gap: 1.25rem;
}

.review__single {
  border-bottom: 1px solid var(--border-color-alt);
  padding-bottom: 1.25rem;
  display: flex;
  align-items: flex-start;
  column-gap: 1.5rem;
}

.review__single:last-child {
  padding-bottom: 3rem;
}

.review__img {
  width: 70px;
  border-radius: 50%;
  margin-bottom: 0.5rem;
}

.review__title {
  font-size: var(--tiny-font-size);
}

.review__data {
  width: calc(100% - 94px);
}

.review__description {
  margin-bottom: 0.5rem;
}

.review__rating {
  color: hsl(42, 100%, 50%);
  margin-bottom: 0.25rem;
}

.review__rating,
.review__data {
  font-size: var(--small-font-size);
}

.review__form-title {
  font-size: var(--large-font-size);
  margin-bottom: 1rem;
}

.rate__product {
  margin-bottom: 2rem;
}

/*  =============== CART ===============*/
.table__container {
  overflow-x: auto;
}

.table {
  table-layout: fixed;
  margin-bottom: 2rem;
}

.table tr {
  border-top: 1px solid var(--border-color-alt);
}

.table tr:last-child {
  border-bottom: 1px solid var(--border-color-alt);
}

.table tr th:nth-child(1),
.table tr td:nth-child(1) {
  width: 216px;
}

.table tr th:nth-child(2),
.table tr td:nth-child(2) {
  width: 400px;
}

.table tr th:nth-child(3),
.table tr td:nth-child(3) {
  width: 108px;
}

.table tr th:nth-child(4),
.table tr td:nth-child(4) {
  width: 220px;
}

.table tr th:nth-child(5),
.table tr td:nth-child(5) {
  width: 200px;
}

.table tr th:nth-child(6),
.table tr td:nth-child(6) {
  width: 152px;
}

.table__img {
  width: 80px;
}

.table tr th,
.table tr td {
  padding: 0.5rem;
  text-align: center;
}

.table__title,
.table__description,
.table__price,
.table__subtotal,
.table__trash,
.table__stock {
  font-size: var(--small-font-size);
}

.table__title,
.table__stock {
  color: var(--first-color);
}

.table__description {
  max-width: 250px;
  margin-inline: auto;
}

.table_trash {
  color: var(--text-color-light);
}

.cart__actions {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-top: 1.5rem;
}

.td-action {
    width: 200px;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
    gap: 15px;
}

.divider {
  position: relative;
  text-align: center;
  margin-block: 3rem;
}

.divider::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  border-top: 2px solid var(--border-color-alt);
}

.divider i {
  color: var(--text-color-light);
  background-color: var(--body-color);
  font-size: 1.25rem;
  padding-inline: 1.25rem;
  position: relative;
  z-index: 10;
}

.cart__group {
  grid-template-columns: repeat(2, 1fr);
  align-items: flex-start;
}

.cart__shipping .section__title,
.cart__coupon .section__title,
.cart__total .section__title {
  font-size: var(--large-font-size);
  margin-bottom: 1rem;
}

.cart__coupon {
  margin-top: 3rem;
}

.coupon__form .form__group {
  align-items: center;
}

.cart__total {
  border: 1px solid var(--border-color-alt);
  border-radius: 0.25rem;
  padding: 1.75rem;
}

.cart__total-table {
  margin-bottom: 1rem;
}

.cart__total-table tr td {
  border: 1px solid var(--border-color-alt);
  padding: 0.75rem 0.5rem;
  width: 50%;
}

.cart__total-title {
  font-size: var(--small-font-size);
}

.cart__total-price {
  color: var(--first-color);
  font-weight: var(--weight-700);
}

.cart__total .btn {
  display: inline-flex;
}

/*  =============== CART OTHERS ===============*/
.table-panier {
    width: 100%;
    border-collapse: collapse;
    margin-top: 1rem;
}

    .table-panier th, .table-panier td {
        padding: 10px;
        text-align: center;
        border: 1px solid #ccc;
    }

/*.btn {
    cursor: pointer;
    border-radius: 5px;
    padding: 3px 8px;
}*/

.btn-outline-secondary {
    border: 1px solid #999;
    background: #f9f9f9;
}

    .btn-outline-secondary:hover {
        background: #e0e0e0;
    }

.total-panier {
    text-align: right;
    margin-top: 15px;
}

.total-general-label {
    font-size: 1.3em;
    font-weight: bold;
    color: #2b2b2b;
}

.confirm-panier {
    text-align: right;
    margin-top: 20px;
}

.btn-success {
    background-color: #28a745;
    border: none;
    color: white;
    padding: 10px 20px;
    border-radius: 8px;
    cursor: pointer;
    font-size: 1em;
    transition: all 0.2s ease-in-out;
}

    .btn-success:hover {
        background-color: #218838;
    }
/*  =============== WISHLIST ===============*/

/*  =============== CHECKOUT ===============*/
.checkout__container {
  grid-template-columns: repeat(2, 1fr);
}

.checkout__group:nth-child(2) {
  border: 1px solid var(--border-color-alt);
  padding: 2rem;
  border-radius: 0.5rem;
}

.checkout__group .section__title {
  font-size: var(--large-font-size);
}

.checkout__title {
  font-size: var(--small-font-size);
}

.order__table tr th,
.order__table tr td {
  border: 1px solid var(--border-color-alt);
  padding: .5rem;
  text-align: center;
}

.order__table tr th {
  color: var(--title-color);
  font-size: var(--small-font-size);
}

.order__img {
  width: 80px;
}

.table__quantity,
.order__subtitle {
  font-size: var(--small-font-size);
}

.order__grand-total {
  color: var(--first-color);
  font-size: var(--large-font-size);
  font-weight: var(--weight-700);
}

.payment__methods {
  margin-block: 2.5rem 2.75rem;
}

.payment__title {
  margin-bottom: 1.5rem;
}

.payment__option {
  margin-bottom: 1rem;
}

.payment__input {
  accent-color: var(--first-color);
}

.payment__label {
  font-size: var(--small-font-size);
}

/*  =============== COMPARE ===============*/
.compare__table tr th,
.compare__table tr td {
  padding: 0.5rem;
  border: 1px solid var(--border-color-alt);
}

.compare__table tr th {
  color: var(--text-color-light);
  font-size: var(--small-font-size);
}

.compare__table tr td {
  text-align: center;
}

.compare__colors {
  justify-content: center;
}

.table__weight,
.table__dimension {
  font-size: var(--small-font-size);
}

/*  =============== LOGIN & REGISTER ===============*/
.login-register__container {
  grid-template-columns: repeat(2, 1fr);
  align-items: flex-start;
}

.login,
.register {
  border: 1px solid var(--border-color-alt);
  padding: 2rem;
  border-radius: 0.5rem;
}

/*  =============== ACCOUNTS ===============*/
.account__container  {
  grid-template-columns: 4fr 8fr;
}

.account__tabs {
  border: 1px solid var(--border-color-alt);
  border-radius: 0.25rem;
}

.account__tab {
  padding: 1rem 2rem;
  color: var(--title-color);
  font-size: var(--small-font-size);
  display: flex;
  align-items: center;
  column-gap: .625rem;
  cursor: pointer;
}

.account__tab.active-tab {
  background-color: var(--first-color);
  color: var(--body-color);
}

.account__tab:not(:last-child) {
  border-bottom: 1px solid var(--border-color-alt);
}

.tab__content:not(.active-tab) {
  display: none;
}

.tab__content {
  border: 1px solid var(--border-color-alt);
}

.tab__header {
  background-color: var(--container-color);
  border-bottom: 1px solid var(--border-color-alt);
  padding: 1rem;
  font-size: var(--small-font-size);
}

.tab_body {
  padding: 1rem;
}

.placed__order-table tr th {
  color: var(--title-color);
  text-align: left;
}

.placed__order-table tr th,
.placed__order-table tr td {
  border: 1px solid var(--border-color-alt);
  padding: 0.5rem;
  font-size: var(--small-font-size);
}

.view__order,
.edit {
  color: var(--first-color);
}

.address {
  font-style: normal;
  font-size: var(--small-font-size);
  line-height: 1.5rem;
}

.city {
  margin-bottom: .25rem;
}

.edit {
  font-size: var(--small-font-size);
}

/*  =============== BREAKPOINTS ===============*/
/* For large devices */
@media screen and (max-width: 1400px) {
  .container {
    max-width: 1140px;
  }
  .products__container,
  .showcase__container {
    grid-template-columns: repeat(3, 1fr);
  }
  .account__container {
    grid-template-columns: 3fr 9fr;
  }
  .box__slide {
    width: 1140px;
  }
    .content-slide {
        width: 55%;
    }
    .swiper-horizontal .sw-css-next {
        top: -300px;
        right: -1075px;
    }
    .swiper-horizontal .sw-css-prev {
        top: -300px;
        right: -10px;
    }
}

@media screen and (max-width: 1200px) {
    .container {
        max-width: 960px;
    }

    .header__top {
        display: none;
    }

    .nav {
        height: calc(var(--header-height) + 1.5rem);
    }

    .nav__logo-img {
        width: 116px;
    }

    .nav__menu {
        position: fixed;
        right: -100%;
        top: 0;
        max-width: 400px;
        width: 100%;
        height: 100%;
        padding: 1.25rem 2rem;
        background-color: var(--body-color);
        flex-direction: column;
        align-items: flex-start;
        row-gap: 2rem;
        box-shadow: 0 0 15px hsla(0, 0%, 0%, 0.1);
        z-index: 100;
        transition: all .25s var(--transition);
    }

    .show-menu {
        right: 0;
    }

    .nav__list {
        order: 1;
        flex-direction: column;
        align-items: flex-start;
        row-gap: 1.5rem;
    }

    .nav__link {
        font-size: var(--large-font-size);
    }

    .header__search .form__input {
        border-color: var(--first-color);
    }

    .nav__menu-top,
    .nav__toggle {
        display: flex;
    }

    .nav__menu-top {
        align-items: center;
        justify-content: space-between;
        width: 100%;
        margin-bottom: 1.25rem;
    }

    .nav__menu-logo img {
        width: 100px;
    }

    .nav__close {
        font-size: var(--h2-font-size);
        line-height: 1rem;
    }

    .header__action-btn img {
        width: 21px;
    }

    .home__container {
        grid-template-columns: 5.5fr 6.5fr;
    }

    .countdown {
        column-gap: 1rem;
    }

    .countdown__period {
        width: 36px;
        height: 36px;
        line-height: 36px;
    }

    .countdown__amount::after {
        right: -30%;
        top: 14%;
    }

    .box__slide {
        width: 960px;
    }

    .content-slide {
        width: 50%;
    }

    .swiper-horizontal .swiper-button-next,
    .swiper-horizontal .swiper-button-prev {
        top: -28px;
        width: 26px;
        height: 26px;
    }

    .swiper-horizontal .swiper-button-prev {
        right: 36px;
    }

    .swiper-horizontal .sw-css-next {
        top: -240px;
        right: -900px;
    }

    .swiper-horizontal .sw-css-prev {
        top: -240px;
        right: -10px;
    }

    .account__tab {
        padding: 0.75rem 1rem;
    }

    .checkout__group:nth-child(2) {
        padding: 1.5rem;
    }

    .details__brand {
        margin-block: 0.75rem;
    }

    .details__price {
        padding-block: 0.75rem;
    }

    .short__description {
        margin-bottom: 1.5rem;
    }

    .details__color {
        margin-block: 1.75rem 1.25rem;
    }

    .details__size {
        margin-block: 2.25rem;
    }

    .color__link {
        width: 22px;
        height: 22px;
    }

    .size__link {
        padding: 0.375rem 0.625rem;
    }

    .details__action {
        margin-bottom: 2.75rem;
    }

    .autoplay-progress {
        right: 15px;
        bottom: 10px;
    }
    .swiper-horizontal > .swiper-pagination-bullets, 
    .swiper-pagination-bullets.swiper-pagination-horizontal, 
    .swiper-pagination-custom, .swiper-pagination-fraction {
        bottom: var(--swiper-pagination-bottom, 16px);
    }
}

/* For medium devices */
@media screen and (max-width: 992px) {
  .container {
    max-width: 740px;
  }
  .section--lg {
    padding-block: 1rem 1rem;
  }
  .box__slide {
    width: 740px;
  }
  .content-slide {
    width: 55%;
    padding: 1.5rem 1.5rem 1.5rem 2.0rem;
  }

  .title-slide {
    font-size: 1.8rem;
    font-weight: var(--weight-700);
    line-height: 1.4;
  }

  .title-slide span {
    font-size: var(--big-font-size);
  }

  .subtitle-slide {
    font-family: var(--second-font);
    font-weight: var(--weight-600);
    margin-bottom: 1rem;
    display: block;
  }

.text-slide {
    font-size: var(--large-font-size);
    margin-block: .2rem 1rem;
}
  .home__container,
  .deals__container,
  .checkout__container,
  .newsletter__container,
  .account__container,
  .cart__group {
    grid-template-columns: 1fr;
  }
  .cart__group {
    row-gap: 2.75rem;
  }
  .home__img {
    justify-self: center;
  }
  .btn {
    height: 45px;
    line-height: 45px;
  }

    .btn--md {
        height: 42px;
        line-height: 39px;
    }
  .btn--sm {
    height: 38px;
    line-height: 35px;
  }
  .newsletter__description {
    display: none;
  }
  .products__container,
  .showcase__container,
  .footer__container,
  .details__container {
    grid-template-columns: repeat(2, 1fr);
  }
  .login,
  .register {
    padding: 1.25rem;
  }
  .table tr th:nth-child(1),
  .table tr td:nth-child(1) {
    width: 140px;
  }
  .table tr th:nth-child(2),
  .table tr td:nth-child(2) {
    width: 330px;
  }
  .table tr th:nth-child(3),
  .table tr td:nth-child(3) {
    width: 80px;
  }
  .table tr th:nth-child(4),
  .table tr td:nth-child(4) {
    width: 160px;
  }
  .table tr th:nth-child(5),
  .table tr td:nth-child(5) {
    width: 160px;
  }
  .table tr th:nth-child(6),
  .table tr td:nth-child(6) {
    width: 100px;
  }
    .swiper-horizontal .sw-css-next {
        top: -180px;
        right: -680px;
    }

    .swiper-horizontal .sw-css-prev {
        top: -180px;
        right: -10px;
    }
}

@media screen and (max-width: 768px) {
  .container {
    max-width: 540px;
  }
  .box__slide {
    width: 540px;
  }

  .content-slide {
    width: 90%;
    padding: 1.0rem 1.0rem 1.0rem 1.5rem;
  }

  .title-slide {
    font-size: 1.4rem;
    font-weight: var(--weight-700);
    line-height: 1.4;
  }

  .title-slide span {
    font-size: 1.8rem;
    display: block;
  }

  .subtitle-slide {
    font-family: var(--second-font);
    font-weight: var(--weight-500);
    margin-bottom: 0.8rem;
    display: block;
  }

  .text-slide {
    font-size: 0.8rem;
    margin-block: .2rem 0.8rem;
  }


  .btn--md {
    height: 32px;
    line-height: 29px;
    padding-inline: 1.0rem;
  }

  .products__container,
  .showcase__container,
  .footer__container,
  .login-register__container,
  .details__container {
    grid-template-columns: 100%;
  }
  .tab__header,
  .tab_body {
    padding: 0.75rem;
  }
  .compare__table tr td {
    display: block;
  }
    .swiper-horizontal .sw-css-next {
        top: -130px;
        right: -482px;
    }

    .swiper-horizontal .sw-css-prev {
        top: -130px;
        right: -7px;
    }

}

/* For small devices */
@media screen and (max-width: 576px) {
  .box__slide {
    width: 480px;
  }
    .content-slide {
        width: 90%;
        padding: 1.0rem 1.0rem 1.0rem 1.5rem;
    }

    .title-slide {
        font-size: 1.1rem;
        font-weight: var(--weight-700);
        line-height: 1.1;
    }

        .title-slide span {
            font-size: 1.2rem;
            display: block;
        }

    .subtitle-slide {
        font-family: var(--second-font);
        font-weight: var(--weight-200);
        margin-bottom: 0.8rem;
        display: block;
        font-size:0.9rem;
    }

    .text-slide {
        font-size: 0.8rem;
        margin-block: .1rem 0.3rem;
    }


    .btn--md {
        height: 28px;
        line-height: 24px;
        padding-inline: 0.6rem;
        font-size: 0.7rem;
    }

  .category__item {
    padding-bottom: 1rem;
  }
  .category__img {
    margin-bottom: 1rem;
  }
  .deals__item,
  .checkout__group:nth-child(2) {
    padding: 1.25rem;
  }
  .pagination {
    column-gap: 0.5rem;
    margin-top: 2.5rem;
  }
  .pagination__link {
    width: 30px;
    height: 30px;
    line-height: 30px;
  }
  /****** Mieux d'annuler ce block *******/
  .placed__order-table th,
  .order__table tr th {
    display: none;
  }
  .placed__order-table tr td,
  .order__table tr td,
  .info__table tr th,
  .info__table tr td {
    display: block;
  }
  /****************************************/
  .form__group {
    grid-template-columns: 1fr;
  }
  .cart__total {
    padding: 1.25rem;
  }
  .payment__methods {
    margin-block: 2.25rem 2.5rem;
  }
  .detail__tabs {
    column-gap: 1.25rem;
    margin-bottom: 2.5rem;
  }
  .review__single {
    column-gap: 1rem;
  }
  .footer__title {
    margin-top: 0.25rem;
  }
  .footer__bottom {
    flex-direction: column;
    align-items: center;
  }

    .swiper-horizontal .sw-css-next {
        top: -110px;
        right: -422px;
    }

    .swiper-horizontal .sw-css-prev {
        top: -110px;
        right: -7px;
    }

}

@media screen and (max-width: 350px) {
  .box__slide {
    width: 320px;
  }  
  .action__btn {
    width: 36px;
    height: 36px;
    line-height: 38px;
  }
  .cart__btn {
    bottom: 1.4rem;
    right: 1.25rem;
  }
  .showcase__item {
    column-gap: 1rem;
  }
  .showcase__img {
    width: 70px;
  }
  .showcase__content {
    width: calc(100% - 86px);
  }
  .swiper-button-next,
  .swiper-button-prev {
    display: none;
  }
  .compare__table tr th,
  .cart__total-table tr td {
    display: block;
    width: 100%;
  }
}

.btn-retour {

    background-color: #5b6b79;
    display: inline-block;
    border: 2px solid #5b6b79;
    color: var(--body-color);
    padding-inline: 1.75rem;
    height: 49px;
    line-height: 49px;
    border-radius: .25rem;
    font-family: var(--second-font);
    font-size: var(--small-font-size);
    font-weight: var(--weight-700);
    transition: all 0.4s var(--transition);
}

    .btn-retour:hover {
        background-color: transparent;
        color: #5b6b79;
    }

@media screen and (max-width: 992px) {
    .btn-retour {
        height: 45px;
        line-height: 45px;
    }
}

    /*********** Panier ************/
    .panier-container {
        /*grid-template-columns: repeat(2, 1fr);*/
        grid-template-columns: repeat(1, 2fr 1fr);
        margin-inline: auto;
        padding-inline: .75rem;
    }

.panier-container-confirme {
    grid-template-columns: repeat(1, 2fr 1fr);
    margin-inline: auto;
    padding-inline: .75rem;
    margin: 0 auto;
    /*padding: 0 200px;*/
}


    @media screen and (max-width: 992px) {
        .panier-container {
            grid-template-columns: 1fr;            
        }

        .panier-container-confirme {
            grid-template-columns: 1fr;
            /*padding: 100px*/
        }

    }

    .panier-item {
        padding: 1rem;
        /*display: flex;*/
        /*flex-direction: column;*/
        /*row-gap: 1.5rem;*/
    }

    .cart_totals .cart_totals_summary {
        background-color: #f5f5f5;
        color: #111111;
        border-radius: 10px;
        padding: 30px;
    }

    .cart_totals .notes {
        border-bottom: 1px solid #e1e1e1;
    }

    .mb-10 {
        margin-bottom: .625rem;
    }

    .pb-20 {
        padding-bottom: 1.25rem;
    }

    .mb-15 {
        margin-bottom: .9375rem;
    }

    .mt-0 {
        margin-top: 0;
    }

    .fs-16 {
        font-size: 1rem;
    }

    .cart_totals .cart_totals_summary .cart_totals-form-row {
        position: relative;
    }

        .cart_totals .cart_totals_summary .cart_totals-form-row .input-text {
            transition: none;
        }

    textarea {
        width: 100%;
        padding: 1.25rem;
        border-radius: 10px;
        background-color: white;
        border: 1px solid #ebebeb;
    }

    .cart_totals .cart_totals_summary h2 {
        font-size: 1.25rem;
        font-weight: 600;
        margin-top: 24px;
        margin-bottom: 10px;
    }

.cart_totals .cart_totals_summary h1 {
    font-size: 1.55rem;
    font-weight: 600;
    margin-bottom: 15px;
}


    .cart_totals table.shop_table {
        border-collapse: collapse;
        margin-bottom: 0;
        margin: 0 0 1.5em;
        width: 100%;
        border: none;
    }

    .cart_totals .cart_totals_summary .cart-subtotal {
        font-weight: 600;
        font-size: 1rem;
    }

    .cart_totals .order-total {
        font-size: 1.125rem;
        font-weight: 600;
    }

table.shop_table .order-total {
    font-size: 1rem;
    border-top: 1px solid #e1e1e1;
}

.cart_totals .cart_totals_summary .cart-subtotal th {
    text-align: start;
    padding: 10px 0;
    border: none;
    border-bottom: 1px solid #e1e1e1;
}


.cart_totals .cart_totals_summary .cart-subtotal td {
    text-align: end;
    border-bottom: 1px solid #e1e1e1;
}

    .cart_totals .cart_totals-shipping-totals th {
        display: none;
    }

    table.shop_table .cart_totals-shipping-totals h3 {
        font-size: 16px;
        font-size: 1rem;
        font-weight: 600;
        margin-top: 8px;
    }

    table.shop_table ul.cart_totals-shipping-methods {
        margin: 0;
        padding-left: 0;
        list-style: none;
        /*padding: 0 0 10px;*/
    }


        table.shop_table ul.cart_totals-shipping-methods span {
            font-size: .875rem;
            padding-left: 10px;
        }


            table.shop_table ul.cart_totals-shipping-methods span.cart_totals-Price-amount {
                float: inline-end;
                margin-top: 3px;
                font-weight: 500;
                color: #111;
                margin-left: -70px;
            }


.cart-table-panier tr th {
    text-align: center;
    background: #fafafa;
    padding: 10px;
    border-bottom: 1px solid #eee;
}

.cart-table-panier tr td {
    padding: 10px;
    border-bottom: 1px dashed #dedede;
}

.cart-table-panier tr:last-child td {
    padding-bottom: 0px;
    border-bottom: none;
}




.cart_totals .cart_totals-shipping-totals p {
    margin-top: 0;
}

    .cart_totals .cart_totals-shipping-destination {
        font-size: .9375rem;
        margin-bottom: 0;
    }

table.shop_table .order-total {
    border-top: 1px solid #e1e1e1;
    font-size: 1.125rem;
    font-weight: 600;
}

    table.shop_table tr:last-child th {
        border-bottom: none;
    }

    .cart_totals .order-total th {
        font-weight: 600;
        text-align: start;
    }

    table.shop_table .order-total td {
        text-align: end;
    }

    table.shop_table tr:last-child td, table.shop_table tr:last-child th {
        border-bottom: none;
    }

    .cart_totals .cart_totals_summary .cart-subtotal th,
    .cart_totals .cart_totals_summary .order-total th {
        background: none;
        padding-left: 0px;
    }

.checkout-payment {
    padding: 0 30px;
    margin: 0 -30px;
    border-top: 1px solid #e1e1e1;
}

.checkout-payment ul.wc_payment_methods {
    list-style: none;
    font-size: 14px;
    font-size: .875rem;
    margin: 0;
    padding: 0;
}

    .checkout-payment ul.wc_payment_methods li {
        padding: 24px 0;
        border-bottom: 1px solid #e1e1e1;
    }


    .checkout-payment ul.wc_payment_methods .payment_box p {
        margin-bottom: 0;
        margin-top: 18px;
        line-height: 22px;
    }

    .checkout-payment .terms-and-conditions-wrapper {
        font-size: .875rem;
        line-height: 22px;
        margin-top: 23px;
    }

    .checkout-payment .privacy-policy-text {
        color: #444;
        
    }

    .checkout-payment .terms-and-conditions-wrapper .privacy-policy-text p {
        margin-bottom: 16px;
        text-align: justify;
    }

        .checkout-payment .terms-and-conditions-wrapper p a {
            text-decoration: underline;
            color: #404040;
            font-size: .875rem;
            text-align: left;
        }

        .checkout-payment .terms-and-conditions-wrapper p a:hover {
            color: #b52e25;
            outline: 0;
        }

        .checkout-payment .terms-and-conditions-wrapper p.validate-required {
            margin-bottom: 30px;
        }

.form-row label {
    display: block;
    font-size: .875rem;
    font-weight: 500;
    color: #111;
    margin-bottom: 9px;
    cursor: pointer;
}

.form-row input.form__input-checkbox {
    width: auto;
    position: relative;
    margin-inline-end: 14px;
    transition: .3s;
    height: 14px
}



.form-row label input[type=checkbox]::before {
    content: "";
    display: block;
    position: absolute;
    width: 20px;
    height: 20px;
    top: -2px;
    inset-inline-start: 0;
    border: 1px solid #ebebeb;
    border-radius: 2.5px;
    background-color: #fff;
    transition: .3s;
}

.form-row label input[type=checkbox]:checked::before {
    border-color: #111;
    background-color: #111;
    content: "";
    margin: 0;
}

.form-row label input[type=checkbox]:checked::after {
    content: "";
    display: block;
    width: 5px;
    height: 10px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    inset-inline-start: 8px;
}


    .checkout-payment .terms-and-conditions-checkbox-text {
    font-weight: 400;
    line-height: 20px;
}

span.terms-and-conditions-checkbox-text a {
    text-decoration: underline;
    color:#000;
}

span.terms-and-conditions-checkbox-text a:hover {    
    color: #b52e25;
    outline: 0;
}

.mt-30 {
    margin-top: 1.875rem;
}

.pt-27 {
    padding-top: 1.6875rem;
}

.border-top {
    border-top: 1px solid #e1e1e1;
}

.information-box h6 {
    margin-top: 0;
    margin-bottom: 14px;
    font-size: 16px;
}

.information-box p {
    margin-top: -3px;
    margin-bottom: 16px;
    font-size: 13px;
    font-style: italic;
    text-align: justify;
    padding-left: 5px;
}



    /*********************/
    .cart-container {
        /*max-width: 900px;*/
        margin: 0 auto;
        padding: 20px;
        background: #fff;
        border-radius: 10px;
        box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    }

        .cart-container h2 {
            border-bottom: 1px solid rgba(0,0,0,0.1);
            padding-bottom: 10px;
            margin-bottom: 25px;
        }

    .cart-item {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 10px 0;
        border-bottom: 1px solid #eee;
    }

        .cart-item img {
            width: 80px;
            height: 80px;
            border-radius: 8px;
            object-fit: cover;
        }

    .cart-item-info {
        flex: 1;
        margin-left: 20px;
    }

        .cart-item-info h4 {
            margin: 0;
            font-size: 18px;
        }

        .cart-item-info p {
            margin: 2px 0;
            color: #666;
        }

    .cart-item-actions input[type=number] {
        width: 60px;
        text-align: center;
    }

    .cart-summary {
        text-align: right;
        padding: 20px 0;
        font-size: 18px;
    }

    .empty-cart {
        text-align: center;
        color: #777;
        margin: 50px 0;
    }

    .cart-qte {
        display: flex;
        width: 100px;
        border: 1px solid #999;
        border-radius: 6px;
        text-align: center;
        margin-right: 4px;
    }

    .cart-qte-btn {
        background: transparent;
        color: #666;
        width: 30px;
        padding-top: 4px;
        line-height: 1.0;
        border: none;
        font-size: 20px;
        cursor: pointer;
    }

        .cart-qte-btn:hover {
            background: rgba(0,0,0,0.1);
            color: #000;
        }

    .cart-action-btn {
        background: transparent;
        color: #666;
        width: 30px;
        padding-top: 2px;
        line-height: 1.0;
        border: none;
        font-size: 20px;
        cursor: pointer;
    }

        .cart-action-btn:hover {
            color: #000;
        }

    .cart-item-actions {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        width: 170px;
    }

    input.quantite-input {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 40px;
        border-left: 1px solid #999;
        border-right: 1px solid #999;
        cursor: default;
        text-align: center
    }

    /********* Confirmation Commande ***********/

    .container-cmd {
        /*max-width: 900px;*/
        margin: 50px 20px;
        background: #fff;
        border-radius: 10px;
        padding: 30px;
        box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    }

        .container-cmd h2 {
            text-align: center;
            margin-bottom: 30px;
        }

    table {
        width: 100%;
        border-collapse: collapse;
        margin-bottom: 20px;
    }

    tr th {
        text-align: center;
    }

    th, td {
        padding: 10px;
        border-bottom: 1px solid #eee;
        text-align: left;
    }

    th {
        background: #fafafa;
    }

    .summary {
        text-align: right;
        font-size: 18px;
        margin-top: 10px;
    }

    @media screen and (max-width: 768px) {
        table.cart-table {
            max-width: 653px;
        }

        tr th:nth-child(2), tr td:nth-child(2),
        tr th:nth-child(4), tr td:nth-child(4),
        tr th:nth-child(5), tr td:nth-child(5) {
            display: none;
        }

        .cart-table-panier tr th:nth-child(2),
        .cart-table-panier tr td:nth-child(2),
        .cart-table-panier tr th:nth-child(4),
        .cart-table-panier tr td:nth-child(4) {
            display: table-cell;
        }

    }

    @media screen and (max-width: 546px) {
        table.cart-table {
            max-width: 400px;
        }

        tr th:nth-child(2), tr td:nth-child(2),
        tr th:nth-child(4), tr td:nth-child(4),
        tr th:nth-child(5), tr td:nth-child(5),
        tr th:nth-child(8), tr td:nth-child(8) {
            display: none;
        }

        tr th:nth-child(6), tr td:nth-child(6) {
            width: 60px;
        }

        .cart-table-panier tr th:nth-child(2),
        .cart-table-panier tr td:nth-child(2) {
            display: table-cell;
            width: 100px;
        }
        .cart-table-panier tr th:nth-child(3),
        .cart-table-panier tr td:nth-child(3) {
            width: 70px;
        }
        .cart-table-panier tr th:nth-child(4),
        .cart-table-panier tr td:nth-child(4) {
            display: table-cell;
            width: 70px;
        }
    }

.shop_table tr td  {
    border-bottom: 1px solid #e1e1e1;
}
    /*************** Commande Confirmée **********************/
    .confirmation-container {
        max-width: 950px;
        margin: 60px auto;
        background: #fff;
        border-radius: 12px;
        padding: 40px;
        text-align: center;
        box-shadow: 0 2px 10px rgba(0,0,0,0.1);
        animation: fadeIn 0.6s ease-in-out;
    }

    .icon-check {
        font-size: 60px;
        color: #28a745;
        margin-bottom: 20px;
    }

    h2.titre-green {
        color: #28a745;
        margin-bottom: 10px;
    }

    p.p-cmdconf {
        font-size: 16px;
        color: #555;
    }

    .order-number {
        font-size: 20px;
        color: #333;
        margin: 15px 0;
        font-weight: bold;
    }

    .progress-bar {
        display: flex;
        justify-content: space-between;
        margin: 30px 0;
        position: relative;
    }

    .progress-step {
        text-align: center;
        width: 25%;
        position: relative;
    }

        .progress-step::before {
            content: '';
            position: absolute;
            top: 15px;
            left: -50%;
            width: 100%;
            height: 4px;
            background-color: #ccc;
            z-index: 0;
        }

        .progress-step:first-child::before {
            content: none;
        }

        .progress-step.active::before {
            background-color: #28a745;
        }

        .progress-step .circle {
            width: 30px;
            height: 30px;
            border-radius: 50%;
            background-color: #ccc;
            margin: 0 auto 5px;
            line-height: 30px;
            color: white;
            z-index: 1;
            position: relative;
        }

        .progress-step.active .circle {
            background-color: #28a745;
        }

        .progress-step.preactive .circle {
            background-color: #efb000;
        }

    @keyframes fadeIn {
        from {
            opacity: 0;
            transform: translateY(10px);
        }

        to {
            opacity: 1;
            transform: translateY(0);
        }
    }

    @media screen and (max-width: 768px) {
        .confirmation-container {
            max-width: 660px;
        }
    }

    @media screen and (max-width: 546px) {
        .confirmation-container {
            max-width: 460px;
        }
    }


    /******* Panier (Table Total) ********/
    @media screen and (max-width: 768px) {

        .cart_totals .cart_totals_summary .cart-subtotal td,
        .cart_totals .cart_totals_summary .cart-subtotal th,
        .cart_totals .cart_totals_summary .shipping td,
        .cart_totals .cart_totals_summary .order-total td {
            display: table-cell;
        }
    }


    /**************FORMULAIRE COMMANDE *********************/
.form-row {
    margin: 0 0 20px 0;
}

    .form-row label {
        display: block;
        font-size: 14px;
        font-size: .875rem;
        font-weight: bold;
        color: var(--gz-color-dark);
        margin-bottom: 9px;
        text-align: left;
    }

    .form-row input[type=text] {
        color: #444;
        border-width: 1px;
        border-style: solid;
        border-color: #ebebeb;
        outline: 0;
        transition: .4s;
        font-size: 14px;
        padding: calc(15 / 16 * 1rem) calc(20 / 16 * 1rem);
        background-color: #fff;
        border-radius: 30px;
        -webkit-appearance: none;
        line-height: normal;
        width: 100%;
    }

    .form-row .form-control:hover {
        border-color: #3c6;
    }
    
    .form-row .form-control:focus {
        border-color: #111;
    }

    .form-row select {
        color: #444;
        border-width: 1px;
        border-style: solid;
        border-color: #ebebeb;
        outline: 0;
        transition: .4s;
        font-size: 14px;
        padding: calc(15 / 16 * 1rem) calc(20 / 16 * 1rem);
        background-color: #fff;
        border-radius: 30px;
        -webkit-appearance: none;
        line-height: normal;
        width: 100%;
    }


select {
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg width='10' height='5' viewBox='0 0 10 5' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.08984 1.32227L4.58984 4.82227C4.69922 4.94076 4.83594 5 5 5C5.16406 5 5.30078 4.94076 5.41016 4.82227L8.91016 1.32227C9.02865 1.21289 9.08789 1.08073 9.08789 0.925781C9.08789 0.761719 9.02865 0.620443 8.91016 0.501953C8.80078 0.392578 8.66406 0.337891 8.5 0.337891C8.33594 0.337891 8.19922 0.392578 8.08984 0.501953L5 3.5918L1.91016 0.501953C1.80078 0.392578 1.66406 0.337891 1.5 0.337891C1.33594 0.337891 1.19922 0.392578 1.08984 0.501953C0.971354 0.620443 0.912109 0.761719 0.912109 0.925781C0.912109 1.08073 0.971354 1.21289 1.08984 1.32227Z' fill='%23111111'/%3E%3C/svg%3E");
    background-position: calc(100% - 20px) center;
    background-repeat: no-repeat;
    padding-right: 45px;
    cursor: pointer;
}


select > option {
    font-weight: 500;
}

.text-danger {
    color: red;
    font-size: 0.875rem;
    margin-top: 0.25rem;
}

input.form-control:invalid {
    border: 1px solid red;
}



.placed__order-detailtable tr th, .placed__order-detailtable tr td {
    /*border: 1px solid var(--border-color-alt);*/
    padding: 0.5rem;
    font-size: var(--small-font-size);
}

.placed__order-detailtable tr th {
    color: var(--title-color);
    text-align: left;
}

.placed__order-detailtable tr td img {
    width: 40px;
    height: auto;
    margin-right: 0.5rem;
    vertical-align: middle;
}




#ContentPlaceHolder1_gvCommandesUser tr td:nth-child(2),
#ContentPlaceHolder1_gvCommandesUser tr td:nth-child(4) {
    text-align: center;
} 

#ContentPlaceHolder1_gvCommandesUser tr td:nth-child(3) {
    text-align: right;
}

table#ContentPlaceHolder1_gvCommandesUser {
    margin-bottom: -30px;
}

table .aspNetPager {
    text-align: center;
    padding: 10px 0 0 0;
    display: block;
}

    table .aspNetPager td {
        border: none;
    }

.aspNetPager tr td {
    padding: 0;
    border-top: none;
    vertical-align: middle;
}

table .aspNetPager span {
    display: inline-block;
    margin: 0 5px;
    padding: 6px 12px;
    background-color: var(--first-color);
    color: white;
    border-radius: 4px;
    font-weight: bold;
}

table .aspNetPager a {
    display: inline-block;
    margin: 0 5px;
    padding: 6px 12px;
    background-color: #f8f9fa;
    color: var(--first-color);
    border: 1px solid #dee2e6;
    border-radius: 4px;
    text-decoration: none;
    transition: all 0.3s ease;
}

#ContentPlaceHolder1_gvDetailsUser tr th:nth-child(5),
#ContentPlaceHolder1_gvDetailsUser tr th:nth-child(6),
#ContentPlaceHolder1_gvDetailsUser tr td:nth-child(6) {
    text-align: center;
}

#ContentPlaceHolder1_gvDetailsUser tr td:nth-child(5),
#ContentPlaceHolder1_gvDetailsUser tr td:nth-child(7) {
    text-align: right;
}

.header-detail-vmd {
    margin-bottom: 20px;
    font-size: 0.7rem;
    font-weight: 600;
    text-align: center;
    text-decoration: underline;
}

.p-right-5 {
    padding-right: 0.5rem;
}

.m-t-25 {
    margin-top: 25px;
}

.badge {
    display: inline-block;
    padding: .45em .8em;
    font-size: .75em;
    font-weight: 500;
    line-height: 1;
    /*color: #fff;*/
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: 6px;
}

.status-enattente {
    background: #eff0f2;
    color: #5b6b79;
}

.status-encours {
    background: #e6f8fb;
    color: #00bcd4;
}

.status-termine {
    background: #edf7ee;
    color: #4caf50;
}

.status-annule {
    background: #fff5e6;
    color: #ff9800;
}

/**** Mise à jour Profil Client********/

.flex-user {
    display: flex;
    column-gap: .5rem;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
}

.input-boxuser {
    position: relative;
    margin: 30px 0;
    display: flex;
    gap: 20px;
}


.input-boxuser input {
    display: block;
    width: 100%;
    padding: 1rem 1.5rem .725rem;
    font-size: .875rem;
    font-weight: 400;
    outline: none;
    line-height: 1.5;
    color: #888;
    appearance: none;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #bec8d0;
    border-radius: 4px;
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}

    .input-boxuser i {
        position: absolute;
        right: 20px;
        top: 50%;
        transform: translateY(-50%);
        color: #888;
        font-size: 20px;
    }

    .input-boxuser > label {
        position: absolute; 
        top: 0;
        left: 0;
        z-index: 2;
        max-width: 100%;
        height: 100%;
        padding: .7rem .75rem;
        overflow: hidden;
        color: rgba(var(--bs-body-color-rgb), 1);
        text-align: start;
        text-overflow: ellipsis;
        white-space: nowrap;
        pointer-events: none;
        border: 1px solid transparent;
        transform-origin: 0 0;
        transition: opacity .1s ease-in-out, transform .1s ease-in-out;
    }

    .input-boxuser > .form-control {
       height: 3.17rem; 
        min-height: 3.17rem;
    }

        .input-boxuser > .form-control:focus ~ label {
            transform: scale(.85) translateY(-.5rem) translate(.15rem);
            color : var(--first-color);
        }

        .input-boxuser > .form-control:not(:placeholder-shown) ~ label {
            transform: scale(.85) translateY(-.5rem) translateX(.15rem);
        }

.form-control:focus {
    color: #888;    
    background-color: rgba(8, 129, 121, .1);
    border-color: var(--first-color);
    outline: 0;    
}


input.form-control[type=file] {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;

}

.input-boxuser input[type=file] {
    padding: 0;
    cursor: pointer;
}

.input-boxuser input.form-control[type=file]::file-selector-button {
    border: none;
    padding: 0px 15px;
    border-right: 1px solid #bec8d0;
    color: #888;
    font-size: .875rem;
    font-weight: 400;
    line-height: 3.5;
    background-color: #e8ebee;
    cursor: pointer;
}

    .input-boxuser input.form-control[type=file]::file-selector-button:hover {
        background-color: #e5e5e5;
    }



.form-control[type=file]:hover {
    background-color: #f7f7f7;
}

.input-boxuser input.form-control[type=file]:hover::file-selector-button {
    background-color: #e5e5e5;
}

    .input-boxuser input.form-control[type=submit] {
        position: relative;
        flex: 1 1 auto;
        width: 1%;
        min-width: 0;
    }

.input-boxuser input[type=submit] {
    color: #5b6b79;
    border-color: #5b6b79;
    padding: 3px 65px 0px 10px;
    cursor: pointer;
}

    .input-boxuser input[type=submit]:hover {
        background-color: #5b6b79;
        color: #fff;
    }

.input-boxuser .btn {
    position: relative;
    flex: 1 1 auto;
    width: 1%;
    min-width: 0;
    height: 3.17rem;
    margin-left: -21px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.mt-user-0 {
    margin-top: 0;
}

.mb-user-10 {
    margin-bottom: 10px;
}

.btn-secondary-user {
    display: inline-block;
    color: #fff;
    background-color: #5b6b79;
    height: 49px;
    line-height: 49px;
    border: 2px solid #5b6b79;
    padding-inline: 1.75rem;
    border-radius: .25rem;
    font-family: var(--second-font);
    font-size: var(--small-font-size);
    font-weight: var(--weight-700);
    transition: all 0.4s var(--transition);
}

    .btn-secondary-user:hover {
        color: #5b6b79;
        background-color: #fff;
        border-color: #5b6b79;
    }

.input-boxuser-grid {
    position: relative;
    margin: 30px 0;
    display: flex;
    gap: 20px;
}

    .input-boxuser-grid input {
        display: block;
        width: 100%;
        padding: 1rem 1.5rem .725rem;
        font-size: .875rem;
        font-weight: 400;
        outline: none;
        line-height: 1.5;
        color: #888;
        appearance: none;
        background-color: #fff;
        background-clip: padding-box;
        border: 1px solid #bec8d0;
        border-radius: 4px;
        transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
    }

    .input-boxuser-grid > label {
        position: absolute;
        top: 0;
        left: 0;
        z-index: 2;
        max-width: 100%;
        height: 100%;
        padding: .7rem .75rem;
        overflow: hidden;
        color: rgba(var(--bs-body-color-rgb), 1);
        text-align: start;
        text-overflow: ellipsis;
        white-space: nowrap;
        pointer-events: none;
        border: 1px solid transparent;
        transform-origin: 0 0;
        transition: opacity .1s ease-in-out, transform .1s ease-in-out;
    }

    .input-boxuser-grid i {
        position: absolute;
        right: 20px;
        top: 50%;
        transform: translateY(-50%);
        color: #888;
        font-size: 20px;
    }

    .input-boxuser-grid img {
        height: 130px;
        width: 140px;
    }

    .input-boxuser-grid > .form-control:focus ~ label {
        transform: scale(.85) translateY(-.5rem) translate(.15rem);
        color: var(--first-color);
    }

    .input-boxuser-grid > .form-control:not(:placeholder-shown) ~ label {
        transform: scale(.85) translateY(-.5rem) translateX(.15rem);
    }

.img-modal-thumbnail-client {
    padding: .25rem;
    background-color: #d9dde1;
    border: 1px solid #b9b9b9;
    border-radius: 4px;
    max-width: 100%;
    height: auto;
}

.mt-user--80 {
    margin-top: -80px;
}

.width-user-75{
    width: 75%;
}

span#ContentPlaceHolder1_LabelMessageDashboard,
span#ContentPlaceHolder1_LabelMessageCmd,
span#ContentPlaceHolder1_LabelMessageProfil,
span#ContentPlaceHolder1_LabelMessagePassword {
    display: block;
    /*height: 290px;*/
    text-align: center;
    font-size: 22px;
    padding: 30px 30px;
}

.tab__description {
    font-size: 14px;
    font-weight: var(--weight-400);
    padding: 15px;
}

.row-flex {
    display: flex;
    gap: 15px;
    margin-top: 0;
    margin-right: 12px;
    margin-left: 12px;
    flex-wrap: wrap;
    align-content: center;
    justify-content: space-evenly;
    align-items: stretch;
}

.card-client {
    --bs-card-spacer-y: 25px;
    --bs-card-spacer-x: 25px;
    --bs-card-title-spacer-y: .5rem;
    --bs-card-title-color:;
    --bs-card-subtitle-color:;
    --bs-card-border-width: 0px;
    --bs-card-border-color: #f1f1f1;
    --bs-card-border-radius: 0.375rem;
    --bs-card-box-shadow: 0 1px 20px 0 rgba(69, 90, 100, .08);
    --bs-card-inner-border-radius: 0px;
    --bs-card-cap-padding-y: 25px;
    --bs-card-cap-padding-x: 25px;
    --bs-card-cap-bg: transparent;
    --bs-card-bg: #ffffff;
    --bs-card-img-overlay-padding: 1.25rem;
    --bs-card-group-margin: .75rem;
    --bs-primary-rgb: 70, 128, 255;
    --bs-secondary-rgb: 91, 107, 121;
    --bs-success-rgb: 0, 188, 212;
    --bs-info-rgb: 70, 128, 255;
    --bs-warning-rgb: 76, 175, 80;
    --bs-danger-rgb: 255, 152, 0;
    --bs-light-rgb: 248, 249, 250;
    --bs-dark-rgb: 33, 37, 41;
    --bs-primary: #8c57ff;
    --bs-success: #00bcd4;
    --bs-info: #4680ff;
    --bs-warning: #4caf50;
    --bs-danger: #ff9800;
    --bs-light: #f8f9fa;
    --bs-dark: #212529;
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    height: var(--bs-card-height);
    color: var(--bs-body-color);
    word-wrap: break-word;
    background-color: var(--bs-card-bg);
    background-clip: border-box;
    border: var(--bs-card-border-width) solid var(--bs-card-border-color);
    border-radius: var(--bs-card-border-radius);
    --bs-card-border-width: 1px;
    border-bottom-width: 2px;
}


.h-25 {
    height: 25% !important;
}

.h-50 {
    height: 50% !important;
}
.h-75 {
    height: 75% !important;
}
.h-100 {
    height: 100% !important;
}

.w-25 {
        width: 25% !important;
}

.w-50 {
    width: 50% !important;
}

.w-75 {
    width: 75% !important;
}

.w-100 {
    width: 100% !important;
}


.card-client {   
    margin-bottom: 24px;
    transition: box-shadow .2s ease-in-out;
    padding: var(--bs-card-spacer-y) var(--bs-card-spacer-x);
    margin: var(--bs-card-group-margin);
    box-shadow: var(--bs-card-box-shadow);
}

    .card-client:hover {
        box-shadow: 0 0.375rem 1rem 0 rgba(46, 38, 61, 0.22);
        border-bottom-width: 3px;
    }

.bg-primary {
    --bs-bg-opacity: 1;
    --bs-border-bottom-color: var(--bs-primary);
    --bs-card-border-bottom-color: var(--bs-primary);
    border-bottom-color: var(--bs-primary);
    color: var(--bs-primary);
}

.bg-success {
    --bs-bg-opacity: 1;
    --bs-border-bottom-color: var(--bs-success);
    --bs-card-border-bottom-color: var(--bs-success);
    border-bottom-color: var(--bs-success);
    color: var(--bs-success);
}

.bg-warning {
    --bs-bg-opacity: 1;
    --bs-border-bottom-color: var(--bs-warning);
    --bs-card-border-bottom-color: var(--bs-warning);
    border-bottom-color: var(--bs-warning);
    color: var(--bs-warning);
}

.card-client.bg-primary .card-body h3 {
    color: var(--bs-primary);
    text-align: center;
    font-weight: var(--weight-500);
}

.card-client.bg-success .card-body h3 {
    color: var(--bs-success);
    text-align: center;
    font-weight: var(--weight-500);
}

.card-client.bg-warning .card-body h3 {
    color: var(--bs-warning);
    text-align: center;
    font-weight: var(--weight-500);
}

.card-client:hover .card-body h3 {
    font-weight: var(--weight-600);
}

.card-client:hover .card-body span {
    font-weight: var(--weight-600);
}

@media screen and (max-width: 1200px) {
    .w-25 {
        width: 28% !important;
    }
}

@media screen and (max-width: 768px) {
    .width-user-75 {
        width: 65%;
    }
    .btn-secondary-user {
        height: 45px;
        line-height: 45px;
    }
    .w-25 {
        width: 39% !important;
    }
}

@media screen and (max-width: 528px) {
    .w-25 {
        width: 42% !important;
    }
}
