:root {
  --tap-size: 48px;
}
html,
body {
  height: 100%;
  margin: 0;
  background: #fff;
  min-width: 370px !important;
}

/* ===== NAVBAR OVERLAY (toujours visible en haut) ===== */

.site-navbar .brand,
.site-navbar .actions {
  pointer-events: auto;
} /* réactive les pointeurs sur le contenu utile */

.brand {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    line-height: 1;
    font-family: Impact, Haettenschweiler, "Arial Black", sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    color: #000;
    font-size: clamp(1.1rem, 2.8vw, 1.6rem);
  }

.brand img {
    display: block;
    height: 40px;
    width: auto;
  } 

.actions {
  display: flex;
  gap: 0.5rem;
  align-items: center;
}
.icon-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: var(--tap-size);
  height: var(--tap-size);
  color: #000;
  background: transparent;
  border: none;
  border-radius: 0.5rem;
}
.icon-btn:hover,
.icon-btn:focus-visible {
  background: rgba(0, 0, 0, 0.08);
}
.icon-btn i {
  font-size: 1.4rem;
}

/* Badge compteur panier */
.cart-badge {
  position: absolute;
  top: 0.4rem;
  right: 0.4rem;
  min-width: 1.2rem;
  height: 1.2rem;
  padding: 0 0.25rem;
  background: #dc3545; /* rouge bootstrap */
  color: #fff;
  font-size: 0.75rem;
  font-weight: 700;
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}

/* Dégradé blanc -> transparent en haut (colonnes + slides) */
.top-gradient {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 15%;
  background: linear-gradient(
    to bottom,
    rgba(255, 255, 255, 0.85),
    rgba(255, 255, 255, 0)
  );
  pointer-events: none;
  z-index: 1;
}

.text-ellipsis {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

.color-black {
    background: #000;
  }

  .color-white {
    background: #fff;
  }

  .color-grey {
    background: #808080;
  }

  .color-rose {
    background: #ffc0cb;
  }
  
.color-red {
    background: #e03131;
  }

  .color-lightblue {
    background: #80caff;
  }

  .color-blue {
    background: #1e66f5;
  }

  .color-yellow {
    background: #ffd43b;
  }

  .color-lightgreen {
    background: #80ff84;
  }

  .color-green {
    background: #008004;
  }

  .nav-link {
    color: inherit;
    text-decoration: none;
  }

  .nav-link:hover {
    color: #a0a0a0;
  }
