@charset "UTF-8";
:root {
  /* ---- FAMILLES DE POLICES ---- */
  --font-main: Arial;
  /* ---- COULEURS ---- */
  --color-black: black;
  --color-gray: gray;
  --color-muted: #464e51;
  /* ---- TAILLES DE POLICE ---- */
  --font-title-related: 14px;
  --font-desc: 14px;
  --font-price: 20px;
  --font-price-message: 11px;
  --font-attr: 14px;
  --font-signin: 15px;
  --font-category-name-mobile: 35px;
  --font-h2: 16px;
  --font-h3: 15px;
  --font-h4: 14px;
  /* ---- INTERLIGNES ---- */
  --line-height-desc: 1.75em;
  --line-height-title: 1.2em;
  --line-height-header: 20px;
  --line-height-price-message: 15px;
  /* ---- ESPACEMENTS ---- */
  --mb-sku: 15px;
  --mb-module: 15px;
  --pb-title: 15px;
  --pb-sku: 10px;
  --pb-breadcrumbs: 20px;
  --pt-breadcrumbs: 25px;
  --mb-category-list: 10px;
  --mb-summary: 15px;
  /* ---- LARGEURS & HAUTEURS ---- */
  --width-cat: 33.25%;
  --width-cat-900: 55%;
  --width-cat-700-1299: 100%;
  --width-cat-mobile: 100%;
  --max-height-cat: 270px;
  /* ---- AJOUTS COSMÉTIQUES ---- */
  --radius-card: 16px;
  --shadow-sm: 0 2px 8px rgba(0,0,0,.06);
  --shadow-md: 0 8px 24px rgba(0,0,0,.10);
  --transition-fast: 160ms;
}

/*************************
 *  TYPOGRAPHIE GLOBALE
 *************************/
.ecwid div,
.ecwid span,
.ecwid a,
.ecwid p {
  font-family: var(--font-main) !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  letter-spacing: .1px;
}

/*************************
 *  COULEURS & TITRES
 *************************/
.ins-tile--product-browser .ec-size div.ecwid-productBrowser .ec-store .ec-header-h1,
.ins-tile--product-browser .ec-size div.ecwid-productBrowser .ec-store .ec-header-h2,
.ins-tile--product-browser .ec-size div.ecwid-productBrowser .ec-store .ec-header-h3 {
  color: var(--color-black) !important;
  margin: 0 0 4px;
}

.ec-size .ec-store .ec-related-products__products .grid-product__title-inner .grid-product__price {
  font-size: var(--font-title-related);
  line-height: var(--line-height-title);
}

/*************************
 *  DESCRIPTION PRODUIT
 *************************/
div.product-details__product-description,
.grid__description-inner,
.ec-size .ec-store.ec-store__category-page--0 .grid__description-inner {
  font-family: var(--font-main) !important;
  color: var(--color-black) !important;
  text-align: justify;
  display: block;
  letter-spacing: .1px;
  word-break: break-word;
  -webkit-text-size-adjust: 100%;
  margin-bottom: 14px;
}

div.product-details__product-description br {
  display: none;
}

div.product-details__product-description h2,
div.product-details__product-description h3,
div.product-details__product-description h4 {
  font-family: var(--font-main) !important;
  line-height: var(--line-height-header) !important;
  margin: 14px 0 8px;
  color: var(--color-black);
}

div.product-details__product-description p {
  margin: 0 0 10px;
}

div.product-details__product-description ul,
div.product-details__product-description ol {
  margin: 8px 0 14px;
  padding-left: 18px;
}

div.product-details__product-description li {
  margin: 4px 0;
}

/*************************
 *  PRIX & INFORMATIONS
 *************************/
.ec-size .ec-store .grid-product__price .grid-product__price-amount {
  font-weight: bold !important;
  font-size: var(--font-price) !important;
  letter-spacing: .2px;
}

.ec-size .ec-store .grid-product__price {
  transition: color var(--transition-fast) ease;
}

.ec-size .ec-store .grid-product__price:hover {
  color: var(--color-muted);
}

.ec-size .ec-store .product-details__product-price:before {
  content: "Basculer entre prix HT <->TTC via le switcher";
  display: block;
  font-size: var(--font-price-message);
  color: var(--color-gray);
  line-height: var(--line-height-price-message);
  margin-bottom: 6px;
}

/*************************
 *  ATTRIBUTS & POIDS — TABLEAU PROFESSIONNEL
 *************************/
:root {
  --attr-table-border: rgba(0,0,0,.10);
  --attr-table-bg: #fff;
  --attr-table-bg-alt: rgba(0,0,0,.018);
  --attr-table-title-bg: rgba(0,0,0,.035);
  --attr-table-radius: 12px;
  --attr-table-pad-y: 11px;
  --attr-table-pad-x: 14px;
  --attr-table-title-width: minmax(150px, 34%);
}

/* CONTENEURS TABLEAU */
div.product-details__product-attributes,
div.product-details__product-weight {
  display: block;
  width: 100%;
  margin-top: 12px;
  margin-bottom: 14px;
  background: var(--attr-table-bg);
  border: 1px solid var(--attr-table-border);
  border-radius: var(--attr-table-radius);
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}

/* LIGNES */
div.product-details__product-attributes .details-product-attribute,
div.product-details__product-weight .details-product-attribute {
  display: grid;
  grid-template-columns: var(--attr-table-title-width) 1fr;
  align-items: stretch;
  min-height: 44px;
  background: #fff;
  border-bottom: 1px solid var(--attr-table-border);
}

div.product-details__product-attributes .details-product-attribute:last-child,
div.product-details__product-weight .details-product-attribute:last-child {
  border-bottom: none;
}

/* LIGNES ALTERNÉES */
div.product-details__product-attributes .details-product-attribute:nth-child(even),
div.product-details__product-weight .details-product-attribute:nth-child(even) {
  background: var(--attr-table-bg-alt);
}

/* COLONNE TITRE */
div.product-details__product-attributes .details-product-attribute__title,
div.product-details__product-weight .details-product-attribute__title {
  display: flex;
  align-items: center;
  padding: var(--attr-table-pad-y) var(--attr-table-pad-x);
  background: var(--attr-table-title-bg);
  border-right: 1px solid var(--attr-table-border);
  font-family: var(--font-main) !important;
  font-size: var(--font-attr);
  font-weight: 700;
  color: var(--color-muted);
  line-height: 1.35;
  white-space: normal;
  word-break: normal;
  overflow-wrap: break-word;
  hyphens: auto;
}

/* COLONNE VALEUR */
div.product-details__product-attributes .details-product-attribute__value,
div.product-details__product-weight .details-product-attribute__value {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: var(--attr-table-pad-y) var(--attr-table-pad-x);
  font-family: var(--font-main) !important;
  font-size: var(--font-attr);
  font-weight: 600;
  color: var(--color-black);
  line-height: 1.35;
  text-align: right;
  white-space: normal;
  word-break: normal;
  overflow-wrap: break-word;
  hyphens: auto;
  font-variant-numeric: tabular-nums;
}

/* SURVOL DISCRET */
div.product-details__product-attributes .details-product-attribute:hover,
div.product-details__product-weight .details-product-attribute:hover {
  background: rgba(0, 0, 0, 0.025);
}

/* ACCESSIBILITÉ */
div.product-details__product-attributes .details-product-attribute:focus-within,
div.product-details__product-weight .details-product-attribute:focus-within {
  outline: 2px solid rgba(59, 130, 246, 0.45);
  outline-offset: -2px;
}

/* MOBILE */
@media (max-width: 640px) {
  :root {
    --attr-table-title-width: minmax(115px, 42%);
    --attr-table-pad-y: 10px;
    --attr-table-pad-x: 11px;
  }
  div.product-details__product-attributes .details-product-attribute,
div.product-details__product-weight .details-product-attribute {
    grid-template-columns: var(--attr-table-title-width) 1fr;
    min-height: 42px;
  }
  div.product-details__product-attributes .details-product-attribute__title,
div.product-details__product-weight .details-product-attribute__title,
div.product-details__product-attributes .details-product-attribute__value,
div.product-details__product-weight .details-product-attribute__value {
    font-size: 13.5px;
  }
}

/* TRÈS PETITS ÉCRANS */
@media (max-width: 420px) {
  div.product-details__product-attributes .details-product-attribute,
div.product-details__product-weight .details-product-attribute {
    grid-template-columns: 1fr;
  }
  div.product-details__product-attributes .details-product-attribute__title,
div.product-details__product-weight .details-product-attribute__title {
    border-right: none;
    border-bottom: 1px solid var(--attr-table-border);
  }
  div.product-details__product-attributes .details-product-attribute__value,
div.product-details__product-weight .details-product-attribute__value {
    justify-content: flex-start;
    text-align: left;
  }
}

/*************************
 *  SKU & MINIATURES
 *************************/
.ec-size.ec-size--l .ec-store .product-details__product-sku {
  display: block;
  margin-top: 8px !important;
  margin-bottom: var(--mb-sku) !important;
  color: var(--color-gray);
}

.ec-size .ec-store .product-details__product-sku:empty {
  display: none;
}

.ec-size.ec-size--l .ec-store .product-details-module {
  margin-bottom: var(--mb-module);
}

.ec-size .ec-store .grid-product__title-inner {
  line-height: var(--line-height-title) !important;
  padding-bottom: var(--pb-title);
  transition: color var(--transition-fast) ease, text-decoration var(--transition-fast) ease;
}

.ec-size .ec-store .grid-product__title-inner:hover {
  color: var(--color-muted);
  text-decoration: none;
}

.ec-size .ec-store .grid-product__title-inner + .grid-product__sku-inner {
  margin-top: 4px;
}

.ec-size .ec-store .grid-product__sku-inner {
  padding-bottom: var(--pb-sku);
  color: var(--color-gray);
}

.ec-size .ec-store .ec-text-muted {
  font-weight: bold;
  font-family: var(--font-main) !important;
}

/* ✅ Correction mobile pour SKU trop collé au titre */
@media (max-width: 768px) {
  .ec-size .ec-store .product-details__product-sku {
    margin-top: 12px !important;
  }
}

/*************************
 *  MASQUAGES PRIX = 0
 *************************/
.ec-store-productsGrid-cell-zeroPrice .grid-product__price-amount,
.ec-store-productsGrid-cell-zeroPrice .grid-product__buy-now,
.ec-store-productsGrid-cell-zeroPrice .grid-product__button,
.ec-store-productsGrid-cell-zeroPrice .grid-product__price,
.product-details__product-price-row--zero-price,
.ec-size .ec-store .product-details__product-price-row--zero-price .product-details__product-price,
.ec-size .ec-store .product-details--zero-price .details-product-purchase__controls,
.product-details--zero-price .details-product-purchase__qty {
  display: none !important;
}

/*************************
 *  FILTRES & PRIX RECHERCHE
 *************************/
.ecwid-productBrowser-SearchPage .ec-filter.ec-filter--section-sticky-bar.ec-filter--price,
.instant-search-menu .cs-price-block,
.instant-search-menu .details-top-text .price {
  display: none !important;
}

/*************************
 *  AUTRES BLOCS
 *************************/
div.signin__description {
  font-weight: bold;
  font-size: var(--font-signin);
  text-align: justify;
  line-height: 1.6;
}

.ec-size .ec-store .product-details .ec-breadcrumbs {
  padding-bottom: var(--pb-breadcrumbs);
  padding-top: var(--pt-breadcrumbs);
  border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}

/*************************
 *  RESPONSIVE CATÉGORIES
 *************************/
@media screen and (min-width: 400px) {
  .ins-tiles .ins-tile.ins-tile--store .ins-component--category-list.ins-component--advanced .ins-component__item {
    width: var(--width-cat) !important;
    max-height: var(--max-height-cat) !important;
    border-radius: var(--radius-card);
    box-shadow: var(--shadow-sm);
    transition: transform var(--transition-fast) ease, box-shadow var(--transition-fast) ease;
  }
  .ins-tiles .ins-tile.ins-tile--store .ins-component--category-list.ins-component--advanced .ins-component__item:hover {
    transform: translateY(-2px);
    box-shadow: var(--shadow-md);
  }
  .ins-tiles.ins-tiles--900 .ins-tile.ins-tile--store .ins-component--category-list.ins-component--advanced .ins-component__item {
    width: var(--width-cat-900);
  }
}

@media screen and (max-width: 399px) {
  .ins-tiles .ins-tile.ins-tile--store .ins-component--category-list.ins-component--advanced .ins-component__item {
    width: var(--width-cat-mobile) !important;
    max-height: var(--max-height-cat) !important;
    border-radius: var(--radius-card);
    box-shadow: var(--shadow-sm);
  }
}

@media screen and (min-width: 700px) and (max-width: 1299px) {
  .ins-tiles .ins-tile.ins-tile--store .ins-component--category-list.ins-component--advanced .ins-component__item {
    width: var(--width-cat-700-1299) !important;
  }
}

@media only screen and (max-width: 768px) {
  div#tile-store-yerumx {
    --category-name-font-size: var(--font-category-name-mobile);
  }
}

/*************************
 *  FLEX & LAYOUT LISTES
 *************************/
.ins-component--product-list .ins-component__item-wrap {
  display: flex;
  gap: 6px;
}

.ins-tiles .ins-component--product-list .ins-component__price,
.ins-tiles .ins-component--product-list .ins-component__subtitle {
  flex: 1 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  text-align: center;
}

/*************************
 *  MASQUAGES & DIVERS
 *************************/
.ins-tile--store .ins-component--category-list:not(:last-child) {
  margin-bottom: var(--mb-category-list);
}

.ins-tile--footer .ins-tile__made-with {
  display: none !important;
}

.ins-tile__links a:last-child {
  display: none !important;
}

summary.custom-read-more {
  cursor: pointer;
  margin-bottom: var(--mb-summary);
  transition: color var(--transition-fast) ease;
  list-style: none;
}

summary.custom-read-more:hover {
  color: var(--color-muted);
}

summary.custom-read-more::-webkit-details-marker {
  display: none;
}

/*************************
 *  DESCRIPTIONS CATÉGORIES
 *************************/
.ec-size .ec-store .ec-category-description {
  font-family: var(--font-main) !important;
  color: var(--color-black) !important;
  text-align: justify;
  margin-top: 8px;
}

/*************************
 *  ACCESSIBILITÉ
 *************************/
@media (prefers-reduced-motion: reduce) {
  * {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
    scroll-behavior: auto !important;
  }
}
