/** Shopify CDN: Minification failed

Line 4301:10 Expected identifier but found whitespace
Line 4301:12 Unexpected "{"
Line 4301:21 Expected ":"
Line 4353:10 Expected identifier but found whitespace
Line 4353:12 Unexpected "{"
Line 4353:21 Expected ":"
Line 4374:10 Expected identifier but found whitespace
Line 4374:12 Unexpected "{"
Line 4374:21 Expected ":"
Line 4388:10 Expected identifier but found whitespace
... and 208 more hidden warnings

**/


/* CSS from section stylesheet tags */
:root {
  --color-black: #000000;
  --color-white: #ffffff;
  --color-orange: #b45c31;
  --color-grey: #505050;
  --color-grey-light: rgba(0, 0, 0, 0.25);
  --font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
}

.article-musardise {
  font-family: var(--font-family);
  color: var(--color-black);
  width: 100%;
}

.article-musardise__wrapper {
  max-width: 695px;
  margin: 0 auto;
  padding: 0 20px;
}

.article-musardise__breadcrumb {
  text-align: left;
  margin: 32px 0 47px;
}
.article-musardise__breadcrumb ol {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.article-musardise__breadcrumb li {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.366;
  color: var(--color-black);
}
.article-musardise__breadcrumb a {
  color: inherit;
  text-decoration: none;
}
.article-musardise__breadcrumb a:hover {
  text-decoration: underline;
}

.article-musardise__header {
  text-align: center;
  margin-bottom: 60px;
}

.article-musardise__tag-wrapper {
  display: flex;
  justify-content: center;
  margin-bottom: 20px;
}
.article-musardise__tag {
  display: inline-block;
  padding: 6px 8px;
  font-size: 11px;
  font-weight: 400;
  line-height: 1;
  color: var(--color-white);
  background: var(--color-orange);
  border-radius: 2px;
}

.article-musardise__title {
  font-size: 32px;
  font-weight: 600;
  font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  line-height: 1.366;
  margin: 0 0 12px;
  text-align: left;
}

.article-musardise__meta {
  margin-bottom: 0;
}
.article-musardise__metadata {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.366;
  color: var(--color-grey);
  margin: 0 0 40px;
  text-align: left;
}

.article-musardise__featured-image-container {
    width: 100vw;
    display: flex;
    justify-content: center;
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
    margin-bottom: 40px;
  }

.article-musardise__featured-image--large {
    border-radius: 8px;
    overflow: hidden;
    width: 930px;
    height: 200px;
    max-width: none;
  }
.article-musardise__featured-image--large img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border-radius: 8px;
  }

.article-musardise__content {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.366;
  margin-bottom: 60px;
}
.article-musardise__content h2 {
  font-size: 24px;
  font-weight: 600;
  font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  line-height: 1.366;
  margin: 40px 0 20px;
}
.article-musardise__content h3 {
  font-size: 20px;
  font-weight: 600;
  font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  line-height: 1.366;
  margin: 30px 0 15px;
}
.article-musardise__content p {
  margin: 0 0 20px;
}
.article-musardise__content img {
  max-width: 100%;
  height: auto;
  border-radius: 8px;
  margin: 20px 0;
}
.article-musardise__content blockquote {
  border-left: 4px solid var(--color-orange);
  padding-left: 20px;
  margin: 30px 0;
  font-style: italic;
  color: var(--color-grey);
}

.article-musardise__comments {
  border-top: 1px solid #e0e0e0;
  padding-top: 60px;
}
.article-musardise__comments-title {
  font-size: 24px;
  font-weight: 600;
  line-height: 1.3;
  margin: 0 0 40px;
  text-align: center;
}

.article-musardise__comments-list {
  margin-bottom: 60px;
}
.article-musardise__comment {
  padding: 30px 0;
  border-bottom: 1px solid #f0f0f0;
}
.article-musardise__comment:last-child {
  border-bottom: none;
}
.article-musardise__comment-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 15px;
}
.article-musardise__comment-author {
  font-size: 16px;
  font-weight: 600;
  margin: 0;
}
.article-musardise__comment-date {
  font-size: 14px;
  color: var(--color-grey);
}
.article-musardise__comment-content {
  font-size: 16px;
  line-height: 1.5;
}

.article-musardise__comment-form {
  background: #f9f9f9;
  padding: 40px;
  border-radius: 8px;
}
.article-musardise__comment-form-title {
  font-size: 20px;
  font-weight: 600;
  margin: 0 0 30px;
  text-align: center;
}
.article-musardise__form-row {
  display: flex;
  gap: 20px;
  margin-bottom: 20px;
}
.article-musardise__form-field {
  flex: 1;
  margin-bottom: 20px;
}
.article-musardise__form-label {
  display: block;
  font-size: 14px;
  font-weight: 500;
  margin-bottom: 8px;
  color: var(--color-black);
}
.article-musardise__form-input,
.article-musardise__form-textarea {
  width: 100%;
  padding: 12px 16px;
  border: 1px solid #ddd;
  border-radius: 4px;
  font-size: 16px;
  font-family: inherit;
  transition: border-color 0.3s ease;
}
.article-musardise__form-input:focus,
.article-musardise__form-textarea:focus {
  outline: none;
  border-color: var(--color-orange);
}
.article-musardise__form-textarea {
  min-height: 120px;
  resize: vertical;
}
.article-musardise__form-submit {
  background: var(--color-black);
  color: var(--color-white);
  border: none;
  padding: 15px 30px;
  font-size: 16px;
  font-weight: 500;
  border-radius: 4px;
  cursor: pointer;
  transition: background-color 0.3s ease;
}
.article-musardise__form-submit:hover {
    background: var(--color-orange);
  }

  .article-musardise__comments-pagination {
    text-align: center;
    margin-top: 40px;
  }

  .article-musardise__back-button {
    margin-top: 60px;
    text-align: left;
  }

  .article-musardise__back-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-family: var(--font-family);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.366;
    color: var(--color-black);
    text-decoration: none;
    transition: color 0.3s ease;
  }

  .article-musardise__back-link:hover {
    color: var(--color-orange);
  }

  .article-musardise__back-link svg {
    transition: transform 0.3s ease;
  }

  .article-musardise__back-link:hover svg {
    transform: translateX(-2px);
  }

/* Styles pour le slider personnalisé */
.article-musardise__slider-wrapper {
  margin: 60px 0;
  width: 100vw;
  margin-left: calc(-50vw + 50%);
  margin-right: calc(-50vw + 50%);
}

.article-musardise__slider {
  position: relative;
  overflow: hidden;
}

.article-musardise__slider-track {
  display: flex;
  gap: 20px;
  padding: 0 20px;
  transition: transform 0.6s ease;
  will-change: transform;
}

.article-musardise__slider-slide {
  flex: 0 0 695px;
  width: 695px;
  height: 445px;
}

.article-musardise__slider-card {
  position: relative;
  width: 100%;
  height: 100%;
  border-radius: 8px;
  overflow: hidden;
}

.article-musardise__slider-image-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.article-musardise__slider-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 8px;
}

/* Navigation du slider - Style inspiré de collections-slider */
.article-musardise__slider-navigation {
      margin-top: 40px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 0 20px;
      width: 100%;
    }

    .article-musardise__back-link {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      font-family: var(--font-family);
      font-size: 16px;
      font-weight: 400;
      line-height: 1.366;
      color: var(--color-black);
      text-decoration: none;
      transition: color 0.3s ease;
    }

    .article-musardise__back-link:hover {
      color: var(--color-orange);
    }

    .article-musardise__back-link svg {
      transition: transform 0.3s ease;
    }

    .article-musardise__back-link:hover svg {
      transform: translateX(-2px);
    }

    .article-musardise__slider-arrows {
      display: flex;
      gap: 24px;
    }

.article-musardise__slider-arrow {
  width: 32px;
  height: 32px;
  background: transparent;
  border: none;
  cursor: pointer;
  color: #000000;
  transition: all 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
}

.article-musardise__slider-arrow:hover {
  color: #421F07;
  transform: scale(1.1);
}

.article-musardise__slider-arrow:disabled,
.article-musardise__slider-arrow.disabled {
  opacity: 0.3;
  cursor: not-allowed;
  color: #ccc;
  pointer-events: none;
}

.article-musardise__slider-arrow:disabled:hover,
.article-musardise__slider-arrow.disabled:hover {
  transform: none;
  color: #ccc;
}

@media (max-width: 768px) {
    .article-musardise__wrapper {
      padding: 20px 16px;
    }
    .article-musardise__breadcrumb {
      margin: 20px 0 30px;
    }
    .article-musardise__title {
      font-size: 28px;
    }
    .article-musardise__featured-image-container {
      width: 100%;
      margin-left: 0;
      margin-right: 0;
      margin-bottom: 30px;
    }
    .article-musardise__featured-image--large {
      width: 100%;
      max-width: 100%;
      height: 180px;
    }
    .article-musardise__featured-image--large img {
      height: 100%;
    }
    .article-musardise__content {
      font-size: 15px;
    }
    .article-musardise__content h2 {
      font-size: 24px;
    }
    .article-musardise__content h3 {
      font-size: 20px;
    }
    .article-musardise__form-row {
      flex-direction: column;
      gap: 0;
    }
    .article-musardise__comment-form {
      padding: 30px 20px;
    }
    .article-musardise__comment-header {
      flex-direction: column;
      align-items: flex-start;
      gap: 5px;
    }
    
    .article-musardise__slider-wrapper {
      margin: 0 -16px;
    }
    
    .article-musardise__slider-slide {
      min-width: calc(100vw - 32px);
      height: 280px;
    }
    
    .article-musardise__slider-navigation {
      padding: 0 16px;
    }
    
    .article-musardise__back-link {
      font-size: 14px;
      gap: 8px;
    }
    
    .article-musardise__back-link svg {
      width: 12px;
      height: 12px;
    }
    
    .article-musardise__slider-arrows {
      gap: 16px;
    }
  }
  
  @media (max-width: 1440px) {
    .article-musardise__featured-image--large {
      width: calc(100vw - 40px);
      max-width: 930px;
      height: 200px;
    }
    
    .article-musardise__slider-slide {
      min-width: 695px;
      height: 445px;
    }
    
    .article-musardise__slider-progress-bar {
      width: 695px;
    }
    
    .article-musardise__slider-navigation {
      justify-content: center;
      gap: 20px;
    }
  }
.cart-page {
    padding-top: 180px;
    grid-column: 1 / -1 !important;
  }

  .cart-page__container {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 20px;
    width: 100%;
  }
  
  /* Styles pour les animations et l'état de chargement */
  .cart-page__item {
    transition: height 0.3s ease, opacity 0.3s ease, margin 0.3s ease, padding 0.3s ease;
    overflow: hidden;
  }
  
  .cart-page__item.removing {
    opacity: 0.5;
  }
  
  .cart-updating .cart-page__form {
    opacity: 0.7;
    pointer-events: none;
  }
  
  .cart-updating::after {
    content: '';
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 3px;
    background: linear-gradient(to right, transparent, var(--color-primary), transparent);
    animation: loading 1.5s infinite;
    z-index: 9999;
  }
  
  @keyframes loading {
    0% { transform: translateX(-100%); }
    100% { transform: translateX(100%); }
  }
  
  /* Styles pour les notifications */
  .cart-notification {
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 1000;
  max-width: 300px;
}
  
  .cart-notification__message {
    padding: 12px 16px;
    margin-bottom: 10px;
    border-radius: 4px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    font-size: 14px;
    font-weight: 500;
    opacity: 1;
    transform: translateX(0);
    transition: opacity 0.3s ease, transform 0.3s ease;
  }
  
  .cart-notification__message--success {
    background-color: #EDF7ED;
    color: #1E4620;
    border-left: 4px solid #4CAF50;
  }
  
  .cart-notification__message--error {
    background-color: #FDEDED;
    color: #5F2120;
    border-left: 4px solid #EF5350;
  }
  
  .cart-notification__message--hiding {
    opacity: 0;
    transform: translateX(10px);
  }
  
  .cart-page__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 30px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--color-border);
  }
  
  .cart-page__title {
    font-family: var(--font-navigation);
    font-size: 32px;
    font-weight: 600;
    line-height: 1.37;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    margin: 0 0 20px 0;
    color: var(--color-text, #000000);
  }
  
  .cart-page__continue-shopping {
    display: flex;
    align-items: center;
    gap: 8px;
    font-family: var(--font-navigation);
    font-size: 14px;
    color: var(--color-text);
    text-decoration: none;
    transition: color 0.2s ease;
  }
  
  .cart-page__continue-shopping:hover {
    color: var(--color-primary);
  }
  
  .cart-page__items {
    margin-bottom: 30px;
  }
  
  .cart-page__items-header {
    display: grid;
    grid-template-columns: 3fr 1fr 1fr 1fr;
    padding: 0 0 15px;
    border-bottom: 1px solid var(--color-border);
    font-family: var(--font-navigation);
    font-weight: var(--font-weight-medium);
    color: var(--color-text-muted);
    font-size: 14px;
  }
  
  .cart-page__items-header-product {
    grid-column: 1;
  }
  
  .cart-page__items-header-price {
    grid-column: 2;
    text-align: center;
  }
  
  .cart-page__items-header-quantity {
    grid-column: 3;
    text-align: center;
  }
  
  .cart-page__items-header-total {
    grid-column: 4;
    text-align: right;
  }
  
  .cart-item {
    display: grid;
    grid-template-columns: 120px 1fr 1fr 1fr 1fr;
    grid-template-areas: 
      "image details price quantity total";
    padding: 20px 0;
    border-bottom: 1px solid var(--color-border);
    gap: 20px;
    align-items: center;
  }
  
  .cart-item__image-wrapper {
    grid-area: image;
    width: 120px;
    height: 120px;
  }
  
  .cart-item__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: var(--border-radius);
  }
  
  .cart-item__details {
    grid-area: details;
    display: flex;
    flex-direction: column;
    gap: 8px;
  }
  
  .cart-item__title {
    font-family: var(--font-navigation);
    font-size: 16px;
    font-weight: 600;
    line-height: 1.366;
    margin: 0;
  }
  
  .cart-item__title-link {
    color: #000;
    text-decoration: none;
    transition: color 0.3s ease;
  }
  
  .cart-item__title-link:hover {
    color: #B45C31;
  }
  
  .cart-item__variant {
    font-family: var(--font-navigation);
    font-size: 14px;
    color: var(--color-text-muted);
  }
  
  .cart-item__custom-properties {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 8px;
  }
  
  .cart-item__property {
    font-family: var(--font-navigation);
    font-size: 14px;
    color: var(--color-text-muted);
    display: flex;
    gap: 4px;
  }
  
  .cart-item__property-name {
    font-family: var(--font-navigation);
    font-weight: 500;
  }
  
  .cart-item__property-value {
    font-family: var(--font-navigation);
    color: var(--color-text);
  }
  
  .cart-item__price-mobile {
    display: none;
    margin-top: 8px;
  }
  
  .cart-item__price-desktop {
    grid-area: price;
    text-align: center;
  }
  
  .cart-item__price-regular {
    font-family: var(--font-navigation);
    text-decoration: line-through;
    color: var(--color-text-muted);
    font-size: 14px;
    display: block;
  }
  
  .cart-item__price-final {
    font-family: var(--font-navigation);
    font-weight: var(--font-weight-medium);
  }
  
  .cart-item__quantity {
    grid-area: quantity;
    display: flex;
    justify-content: center;
  }
  
  .cart-item__total {
    font-family: var(--font-navigation);
    grid-area: total;
    text-align: right;
    font-weight: var(--font-weight-medium);
  }
  
  .cart-item__remove {
    margin-top: 10px;
    background: none;
    border: none;
    padding: 0;
    font-family: var(--font-navigation);
    font-size: 14px;
    color: var(--color-text-muted);
    text-decoration: underline;
    cursor: pointer;
    transition: color 0.2s ease;
    text-align: left;
  }
  
  .cart-item__remove:hover {
    color: var(--color-error);
  }
  
  /* Quantity selector styles */
  .quantity-selector {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border: 1px solid var(--color-border);
    border-radius: var(--border-radius);
    background: var(--color-white);
    width: 105px;
    height: 44px;
    padding: 0 12px;
  }
  
  .quantity-selector__btn {
    border: none;
    background: transparent;
    font-family: var(--font-navigation);
    font-weight: 400;
    font-size: 18px;
    line-height: 1;
    color: var(--color-text);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    width: 20px;
    height: 20px;
    margin: 0;
  }
  
  .quantity-selector__input {
    border: none;
    background: transparent;
    text-align: center;
    font-family: var(--font-navigation);
    font-weight: 400;
    font-size: 16px;
    line-height: 1.366;
    color: var(--color-text);
    -moz-appearance: textfield;
    width: 30px;
    padding: 0;
    margin: 0;
    outline: none;
  }
  
  .quantity-selector__input::-webkit-inner-spin-button,
  .quantity-selector__input::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
  }
  
  /* Footer styles */
  .cart-page__footer {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding-top: 30px;
  }
  
  .cart-page__footer-summary {
    width: 100%;
    max-width: 400px;
  }
  
  .cart-page__subtotal {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--color-border);
  }
  
  .cart-page__subtotal-label {
    font-family: var(--font-navigation);
    font-weight: var(--font-weight-medium);
  }
  
  .cart-page__subtotal-value {
    font-family: var(--font-navigation);
    font-weight: var(--font-weight-bold);
    font-size: 18px;
  }
  
  .cart-page__taxes {
    font-family: var(--font-navigation);
    font-size: 14px;
    color: var(--color-text-muted);
    margin-bottom: 20px;
  }
  
  .cart-page__checkout {
    margin-top: 20px;
  }
  
  .cart-page__checkout-button {
    width: 100%;
  }
  
  /* Empty cart styles */
  .cart-page__empty {
    text-align: center;
    padding: 40px 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 20px;
  }
  
  .cart-page__empty-message {
    font-family: var(--font-navigation);
    font-size: 18px;
    font-weight: 400;
    color: var(--color-text, #000000);
    margin-bottom: 20px;
  }
  
  .cart-page__empty .button,
  .btn {
    display: inline-block;
    padding: 14px 24px;
    font-family: var(--font-navigation);
    font-size: 14px;
    font-weight: 600;
    text-align: center;
    text-decoration: none;
    border-radius: 4px;
    border: 1px solid transparent;
    cursor: pointer;
    transition: all 0.2s ease;
  }
  
  .cart-page__empty .button,
  .btn--primary {
    background-color: var(--color-primary);
    color: var(--color-white);
  }
  
  .cart-page__empty .button:hover,
  .btn--primary:hover {
    background-color: var(--color-primary-dark, #A0512B);
  }
  
  .btn--secondary {
    background-color: transparent;
    color: var(--color-primary);
    border-color: var(--color-primary);
  }
  
  .btn--secondary:hover {
    background-color: rgba(var(--color-primary-rgb, 181, 93, 49), 0.1);
  }
  
  .btn--large {
    padding: 16px 28px;
    font-size: 16px;
  }
  
  /* Responsive styles */
  @media screen and (max-width: 768px) {

    .cart-page{
      padding-top: 30px;
    }

    .cart-page__header {
      flex-direction: column;
      align-items: flex-start;
      gap: 15px;
    }
    
    .cart-page__items-header {
      display: none;
    }
    
    .cart-item {
        gap: 15px;
        display: flex;
        flex-wrap: wrap;
        align-items: flex-start;
    }
    
    .cart-item__image-wrapper {
        width: 80px;
        height: 120px;
        overflow: hidden;
    }
    
    .cart-item__price-desktop {
      display: none;
    }

    .cart-item__details{
      gap: 0;
      width: calc(100% - 110px);
    }
    
    .cart-item__price-mobile {
      display: block;
    }
    
    .cart-item__quantity {
      justify-content: flex-start;
    }
    
    .cart-item__total {
      text-align: left;
      font-size: 20px;
      margin-left: auto;
      align-self: flex-end;
    }
    
    .cart-page__footer {
      flex-direction: column;
      gap: 20px;
    }
    
    .cart-page__footer-summary {
      max-width: 100%;
    }
  }
.collection-accordion {
    overflow: hidden;
    background: var(--bg-color);
  }
  
  .collection-accordion__container {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    padding: 20px;
    max-width: 1440px;
    margin: 0 auto;
    width: 100%;
    justify-content: center;
  }

  .collection-accordion__title {
    font-family: "The Seasons Light", serif;
    font-size: 40px;
    font-weight: 300;
    line-height: 1em;
    text-transform: uppercase;
    color: var(--text-color);
    margin: 0;
    width: 35%;
    padding-right: 30px;
    flex-shrink: 0;
    text-align: left;
  }
  
  .collection-accordion__wrapper {
    display: flex;
    flex-direction: column;
    gap: 0;
    width: 65%;
  }

  .collection-accordion__item {
    display: flex;
    flex-direction: column;
    align-self: stretch;
  }

  .collection-accordion__details {
    border: none;
    padding: 0;
    margin: 0 0 30px 0;
    position: relative;
  }
  
  .collection-accordion__details:not(:last-child)::after {
    content: '';
    position: absolute;
    bottom: -15px;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: var(--border-color);
  }
  
  .collection-accordion__details:last-child {
    margin-bottom: 0;
  }

  .collection-accordion__summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    list-style: none;
    font-family: "Avenir Next", sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.3660000562667847em;
    color: var(--text-color);
    width: 100%;
    padding: 0 0 20px 0;
  }

  .collection-accordion__summary::-webkit-details-marker {
    display: none;
  }

  .collection-accordion__question {
    flex: 1;
    text-align: left;
  }

  .collection-accordion__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 13px;
    height: 13px;
    flex-shrink: 0;
    color: var(--text-color);
    transition: transform 0.25s ease-out;
  }

  .collection-accordion__details[open] .collection-accordion__icon {
    transform: rotate(180deg);
  }

  .collection-accordion__content {
    padding: 0 0 20px 0;
    font-family: "Avenir Next", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3660000562667847em;
    
    opacity: 0;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.25s;
  }

  .collection-accordion__content .metafield-rich_text_field > * {
    margin: 20px 0 0 0;
  }

  .collection-accordion__content .metafield-rich_text_field > *:first-child{
    margin-top: 0;
  }


  .collection-accordion__content .metafield-rich_text_field p + ul,
  .collection-accordion__content .metafield-rich_text_field p + h3{
    margin-top: 16px;
  }

  .collection-accordion__content strong{
    font-weight: 600;
  }

  .collection-accordion__content h3{
    font-size: 24px;
  }

  .collection-accordion__content ul li{
    margin-bottom: 10px;
  }

  .collection-accordion__details[open] .collection-accordion__content {
    opacity: 1;
    max-height: 1000px;
    transition: max-height 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.25s 0.05s;
  }

  .collection-accordion__separator {
    border: none;
    border-top: 1px solid var(--border-color);
    margin: 20px 0;
    margin-top: 0;
    height: 1px;
    background: none;
    display: block;
  }

  /* Responsive */
  @media screen and (max-width: 990px) {
    .collection-accordion__container {
      flex-direction: column;
      padding: 40px 30px;
    }
    
    .collection-accordion__title {
      width: 100%;
      text-align: center;
    }
    
    .collection-accordion__wrapper {
      max-width: 100%;
      width: 100%;
    }
  }

  @media screen and (max-width: 768px) {
    .collection-accordion__container {
      padding: 10px 20px 0px 20px;
    }
    
    .collection-accordion__title {
      font-size: 32px;
      padding-right: 0px;
      margin-bottom: 30px;
    }
  }
  
  /* Override parent container constraints */
  .shopify-section > .collection-accordion {
    grid-column: 1 / -1 !important;
  }
  
  .shopify-section > .collection-accordion .collection-accordion__container {
    grid-column: 1 / -1 !important;
  }
.collection-header-type1 {
    position: relative;
    padding-top: var(--section-padding-top, 120px);
    padding-bottom: var(--section-padding-bottom, 60px);
    background-color: var(--color-background, #FFFFFF);
    grid-column: 1 / -1 !important;
  }

  .collection-header-type1__container {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 20px;
    width: 100%;
  }

/* Fil d'Ariane */
.collection-header-type1__breadcrumb {
  position: absolute;
  top: 190px;
  left: 20px;
  z-index: 3;
}

.breadcrumb-list {
  display: flex;
  align-items: center;
  list-style: none;
  padding: 0;
  margin: 0;
  gap: 8px;
}

.collection-header-type1 .breadcrumb-item, .collection-header-type1 .breadcrumb-separator {
  font-family: 'Avenir Next', sans-serif;
  font-size: 14px;
  font-weight: 400;
  color: #000000 !important;
}

.collection-header-type1 .breadcrumb-link {
  color: #000000 !important;
  text-decoration: none;
  transition: color 0.2s ease;
}

.collection-header-type1 .breadcrumb-link:hover {
  color: #333333 !important;
}

.collection-header-type1 .breadcrumb-item--current {
  color: #000000 !important;
  font-weight: 500;
}

.collection-header-type1 .breadcrumb-separator {
  color: #000000;
  font-size: 14px;
}

/* Header Content */
.collection-header-type1__content {
  display: flex;
  flex-direction: column;
  gap: 60px;
}

/* Titre et Description */
.collection-header-type1__text {
  text-align: center;
  max-width: 800px;
  margin: 0 auto;
  color: var(--color-text, #000000);
}

.collection-header-type1__title {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
    font-size: 32px;
    font-weight: 600;
    line-height: 1.37;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--color-text, #000000);
    margin: 0 0 20px 0;
    transform: translateY(20px);
    opacity: 0;
    animation: slideUpFadeIn 0.8s ease-out 0.3s forwards;
  }

  @keyframes slideUpFadeIn {
    to {
      transform: translateY(0);
      opacity: 1;
    }
  }

.collection-header-type1__description {
  font-family: 'Avenir Next', sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  color: var(--color-text, #000000);
  margin: 0;
}

/* Grille des Catégories */
.collection-header-type1__categories {
  display: flex;
  gap: 20px;
  overflow-x: auto;
  padding-bottom: 8px;
  scrollbar-width: thin;
  -webkit-overflow-scrolling: touch;
  width: 100%;
}

@media screen and (min-width: 769px) {
  .collection-header-type1__categories .category-card {
    flex: 1;
    min-width: 0;
    max-width: none;
  }
}

.collection-header-type1__categories::-webkit-scrollbar {
  height: 4px;
}

.collection-header-type1__categories::-webkit-scrollbar-track {
  background: #f1f1f1;
  border-radius: 2px;
}

.collection-header-type1__categories::-webkit-scrollbar-thumb {
  background: #888;
  border-radius: 2px;
}

/* Category Card */
.category-card {
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  background-color: #f5f5f5;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  flex: 0 0 auto;
  width: auto;
  min-width: 0;
}



.category-card__image-wrapper {
  position: relative;
  overflow: hidden;
  height: 180px;
  width: 100%;
}

.category-card__image,
.category-card__image--placeholder {
  width: 100%;
  height: 100%;
}

.category-card__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}



.category-card__image--placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #f0f0f0;
}

.placeholder-svg {
  width: 60px;
  height: 60px;
  opacity: 0.3;
}

/* Overlay Content */
.category-card__overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(145, 64, 10, 0);
  padding: 0;
  height: 100%;
  transition: background 0.3s ease;
  cursor: pointer;
}

.category-card__overlay:hover {
  background: rgba(145, 64, 10, 0.25);
}

.category-card__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  height: 100%;
  gap: 8px;
  padding: 0 20px 30px 20px;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
}

.category-card__content:has(.category-card__button) {
  justify-content: center;
  padding: 0 20px 25px 20px;
  gap: 12px;
}

.category-card__text {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  text-align: center;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  transform: translateY(0);
  padding-top: 0;
}

.category-card__content:has(.category-card__button) .category-card__text {
  padding-top: 160px;
}

.category-card__subtitle {
  font-family: 'Avenir Next', sans-serif;
  font-size: 14px;
  font-weight: 400;
  color: #FFFFFF;
  margin: 0;
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.category-card__title {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
    font-size: 32px;
    font-weight: 600;
    line-height: 1.37;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    text-align: center;
    color: #FFFFFF;
    margin: 0;
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  }

.category-card__button {
  font-family: 'Avenir Next', sans-serif;
  font-size: 14px;
  font-weight: 400;
  color: #000000;
  background: #FFFFFF;
  border: 1px solid #FFFFFF;
  border-radius: 4px;
  padding: 12px 30px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  text-decoration: none;
  text-align: center;
  opacity: 0;
  transform: translateY(30px);
}

.category-card:hover .category-card__content {
  justify-content: flex-end;
  align-items: center;
  padding: 0 20px 28px 20px;
  gap: 6px;
  transform: translateY(-2px);
}

.category-card:hover .category-card__content:has(.category-card__button) {
  justify-content: center;
  padding: 0 20px 22px 20px;
  gap: 8px;
  transform: translateY(-3px);
}

.category-card:hover .category-card__button {
  opacity: 1;
  transform: translateY(-2px);
}

.category-card:hover .category-card__text {
  transform: translateY(-1px);
}

.category-card:hover .category-card__content:has(.category-card__button) .category-card__text {
  transform: translateY(-1px);
  padding-top: 70px;
}

/* Responsive Design */
@media screen and (max-width: 1024px) {
  .collection-header-type1__categories {
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
  }
  
  .collection-header-type1__title {
    font-size: 36px;
  }
  
  .collection-header-type1__content {
    gap: 40px;
  }
}

@media screen and (max-width: 768px) {
    .collection-header-type1__container {
      padding: 0;
    }
    
    .collection-header-type1__breadcrumb {
      top: 180px;
      left: 20px;
    }
    
    .collection-header-type1__title {
      font-size: 32px;
    }
  
  .collection-header-type1__description {
    font-size: 14px;
  }
  
  .collection-header-type1__categories {
    gap: 0;
    padding: 0;
    margin: 0;
    width: 100vw;
    overflow-x: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
  
  .collection-header-type1__categories::-webkit-scrollbar {
    display: none;
  }
  
  .category-card {
    flex: 0 0 100vw;
    width: 100vw;
    min-width: 100vw;
    max-width: 100vw;
    margin: 0;
    padding: 0;
  }
  
  .category-card__image-wrapper {
    aspect-ratio: 1/1;
    height: 100vw;
  }
  
  .category-card__title {
    font-size: 20px;
  }
  
  .category-card__overlay {
    background: rgba(145, 64, 10, 0.25) !important;
    padding: 20px 16px;
  }
  
  .category-card__content {
    justify-content: center !important;
    padding: 0 20px 22px 20px !important;
    gap: 8px !important;
  }
  
  .category-card__content:has(.category-card__button) .category-card__text {
    padding-top: 70px !important;
  }
  
  .category-card__button {
    font-size: 14px;
    padding: 14px 0;
    opacity: 1 !important;
    transform: translateY(0) !important;
  }
  
  /* Désactiver toutes les animations hover sur mobile */
  .category-card:hover .category-card__content {
    justify-content: center !important;
    padding: 0 20px 22px 20px !important;
    gap: 8px !important;
    transform: none !important;
  }
  
  .category-card:hover .category-card__content:has(.category-card__button) {
    justify-content: center !important;
    padding: 0 20px 22px 20px !important;
    gap: 8px !important;
    transform: none !important;
  }
  
  .category-card:hover .category-card__button {
    opacity: 1 !important;
    transform: translateY(0) !important;
  }
  
  .category-card:hover .category-card__text {
    transform: translateY(0) !important;
  }
  
  .category-card:hover .category-card__content:has(.category-card__button) .category-card__text {
    transform: translateY(0) !important;
    padding-top: 70px !important;
  }
  
  .breadcrumb-item, .breadcrumb-separator {
    color: #000000 !important;
  }
  
  .breadcrumb-link {
    color: #000000 !important;
  }
  
  .breadcrumb-item--current {
    color: #000000 !important;
  }
}

@media screen and (max-width: 480px) {
    .collection-header-type1 {
      padding-top: calc(var(--section-padding-top, 60px) * 0.7);
      padding-bottom: calc(var(--section-padding-bottom, 60px) * 0.7);
    }
    
    .collection-header-type1__title {
      font-size: 28px;
    }
    
    .breadcrumb-item {
      font-size: 12px;
    }
    
    .collection-header-type1__breadcrumb {
      top: 40px;
      left: 20px;
    }
    
    .collection-header-type1__categories {
      gap: 0;
      padding: 0;
      margin: 0;
      width: 100vw;
      overflow-x: auto;
      scrollbar-width: none;
      -ms-overflow-style: none;
    }
    
    .collection-header-type1__categories::-webkit-scrollbar {
      display: none;
    }
  
  .category-card {
    flex: 0 0 100vw;
    width: 100vw;
    min-width: 100vw;
    max-width: 100vw;
    margin: 0;
    padding: 0;
  }
  
  .category-card__image-wrapper {
    aspect-ratio: 1/1;
    height: 100vw;
  }
  
  .category-card__title {
    font-size: 18px;
  }
  
  .category-card__button {
    font-size: 13px;
    padding: 12px 0;
    opacity: 1 !important;
    transform: translateY(0) !important;
  }
  
  .breadcrumb-item, .breadcrumb-separator {
    color: #000000 !important;
  }
  
  .breadcrumb-link {
    color: #000000 !important;
  }
  
  .breadcrumb-item--current {
    color: #000000 !important;
  }
}
/* --- Variables locales pour la section --- */
:root {
  --font-body-family: 'Avenir Next', sans-serif;
  --font-heading-family: 'Roslindale', serif;
}

.collection-header-type2 {
    padding-top: var(--section-padding-top, 120px);
    padding-bottom: var(--section-padding-bottom, 60px);
    background-color: var(--color-background, #FFFFFF);
    grid-column: 1 / -1 !important;
  }

  .collection-header-type2__container {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 20px;
    width: 100%;
  }

/* --- Hero Section --- */
.collection-header-type2__hero {
  position: relative;
  min-height: 296px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  border-radius: 12px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 27px;
}

.collection-header-type2__overlay {
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  background-color: rgba(0, 0, 0, 0);
  z-index: 1;
}

/* Fil d'Ariane (sur l'image) */
.collection-header-type2__breadcrumb {
  position: absolute;
  top: 10px;
  left: 20px;
  z-index: 3;
}

.breadcrumb-list {
  display: flex;
  align-items: center;
  list-style: none;
  padding: 0;
  margin: 0;
  gap: 8px;
}

.breadcrumb-item, .breadcrumb-separator {
  font-family: var(--font-body-family);
  font-size: 14px;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.7);
}

.breadcrumb-link {
  color: inherit;
  text-decoration: none;
  transition: color 0.2s ease;
}

.breadcrumb-link:hover {
  color: #FFFFFF;
}

.breadcrumb-item--current {
  color: #FFFFFF;
  font-weight: 500;
}

/* Contenu du Hero (Titre) */
.collection-header-type2__hero-content {
  position: relative;
  z-index: 2;
  text-align: center;
  padding: 24px;
}

.collection-header-type2__subtitle {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
    font-size: 14px;
    font-weight: 400;
    color: #FFFFFF;
    margin: 0 0 8px 0;
    text-transform: none;
    letter-spacing: normal;
  }

  .collection-header-type2__title {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
    font-size: 32px;
    font-weight: 600;
    line-height: 1.37;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: #FFFFFF;
    margin: 0;
    text-shadow: 0 1px 4px rgba(0,0,0,0.1);
    transform: translateY(20px);
    opacity: 0;
    animation: slideUpFadeIn 0.8s ease-out 0.3s forwards;
  }

  @keyframes slideUpFadeIn {
    to {
      transform: translateY(0);
      opacity: 1;
    }
  }

/* --- Bloc sous l'image : deux colonnes --- */
.collection-header-type2__bottom {
  display: flex;
  gap: 122px; /* Conforme maquette */
}

.collection-header-type2__desc-col {
  flex: 0 0 35%; /* Pourcentage flexible */
  max-width: 450px;
}

.collection-header-type2__desc-text {
  font-family: var(--font-body-family);
  font-size: 16px;
  color: #000000;
  line-height: 26px; /* Conforme maquette */
  font-weight: 400;
}

.collection-header-type2__links-col {
  flex: 1;
}

.subcategories-nav {
  column-count: 3;
  column-gap: 32px;
  padding-top: 8px;
}

.subcategory-link {
  font-family: var(--font-body-family);
  font-size: 16px;
  font-weight: 500; /* Medium */
  color: #000000;
  text-decoration: none;
  transition: color 0.2s ease;
  display: block;
  margin-bottom: 10px;
  break-inside: avoid;
}

.subcategory-link:hover {
  color: #B45C31;
  text-decoration: underline;
}

.subcategory-link--active {
  color: #B45C31;
  font-weight: 600;
}

/* --- Responsive Design --- */
@media screen and (max-width: 1200px) {
  .collection-header-type2__bottom {
    gap: 60px;
    padding: 0 30px;
  }
}

@media screen and (max-width: 990px) {
  .collection-header-type2__hero {
    min-height: 360px;
    margin-bottom: 48px;
  }
  .collection-header-type2__title {
    font-size: 72px;
  }
  .collection-header-type2__bottom {
    flex-direction: column;
    gap: 32px;
    padding: 0 20px;
  }
  .collection-header-type2__desc-col {
    max-width: 100%;
    text-align: center;
  }
  .subcategories-nav {
    column-count: 2;
    text-align: center;
  }
}

@media screen and (max-width: 768px) {
  .collection-header-type2{
    padding-bottom: 0 !important;
  }
  .collection-header-type2__container {
    padding: 0 16px;
  }
  .collection-header-type2__hero {
    min-height: 300px;
    align-items: flex-end;
    margin-bottom: 30px;
  }
   .collection-header-type2__hero::after{
      content: '';
  display: block;
  width: 100%;
  height: 100%;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.7), transparent);
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
   }


  .collection-header-type2__title {
    font-size: 56px;
    line-height: 1.2;
  }
  .collection-header-type2__breadcrumb {
    top: 20px;
    left: 20px;
  }
  .subcategories-nav {
    column-count: 2;
    text-align: left;
  }

  .collection-header-type2__bottom{
    padding: 0;
  }

  .collection-header-type2{
    padding-top: 30px !important;
  }
}

@media screen and (max-width: 480px) {
    .collection-header-type2__hero {
    min-height: 240px;
  }
  .collection-header-type2__title {
    font-size: 40px;
  }
}

/* Fallback si pas d'image de fond */
.collection-header-type2__hero:not([style*="background-image"]) {
  background: linear-gradient(135deg, #6a4f44 0%, #4a342a 100%);
}
/* --- Variables locales pour la section --- */
:root {
  --font-body-family: 'Avenir Next', sans-serif;
  --font-heading-family: 'Roslindale', serif;
}

.collection-header-type3 {
    padding-top: var(--section-padding-top, 120px);
    padding-bottom: var(--section-padding-bottom, 60px);
    background-color: var(--color-background, #FFFFFF);
    grid-column: 1 / -1 !important;
  }

  .collection-header-type3__container {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 20px;
    width: 100%;
  }

/* --- Hero Section --- */
.collection-header-type3__hero {
  position: relative;
  min-height: 477px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  border-radius: 12px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  margin-bottom: 27px;
}



/* Fil d'Ariane (sur l'image) */
.collection-header-type3__breadcrumb {
  position: absolute;
  top: 10px;
  left: 20px;
  z-index: 3;
  color: #FFFFFF !important;
}

.breadcrumb-list {
  display: flex;
  align-items: center;
  list-style: none;
  padding: 0;
  margin: 0;
  gap: 8px;
}

.breadcrumb-item, .breadcrumb-separator {
  font-family: var(--font-body-family);
  font-size: 14px;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.7);
}

.breadcrumb-link {
  color: inherit;
  text-decoration: none;
  transition: color 0.2s ease;
}

.breadcrumb-link:hover {
  color: #FFFFFF;
}

.breadcrumb-item--current {
  color: #FFFFFF;
  font-weight: 500;
}

/* Contenu du Hero (Titre + Texte) */
.collection-header-type3__hero-content {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 20px;
  max-width: 748px;
  width: 100%;
  padding: 40px 100px 40px 62px;
  align-items: flex-start;
  text-align: left;
}
.collection-header-type3__hero::before{
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.5), transparent);
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
}


.collection-header-type3__title {
    color: #FFF;
    font-family: 'The Seasons Light', 'Playfair Display', 'Times New Roman', serif;
    font-weight: 300;
    font-size: 78px;
    line-height: 1.118421052631579em;
    text-transform: uppercase;
    letter-spacing: normal;
    margin: 0;
    width: 100%;
    transform: translateY(20px);
    opacity: 0;
    animation: slideUpFadeIn 0.8s ease-out 0.3s forwards;
  }

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



.collection-header-type3__description {
    color: #FFF;
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
    font-weight: 300;
    font-size: 16px;
    line-height: 1.3660000562667847em;
    margin: 0;
    max-width: 395px;
    width: 100%;
  }



/* --- Responsive Design --- */
@media screen and (max-width: 1200px) {
  .collection-header-type3__container {
    padding: 0 30px;
  }
  .collection-header-type3__hero-content {
    padding: 30px 60px 30px 40px;
    max-width: 600px;
  }
}

@media screen and (max-width: 990px) {
  .collection-header-type3__hero {
    min-height: 600px;
    margin-bottom: 48px;
  }
  .collection-header-type3__title {
    font-size: 24px !important;
  }
  .collection-header-type3__container {
    padding: 0 20px;
  }
  .collection-header-type3__hero-content {
    padding: 25px 30px 25px 30px;
    max-width: 100%;
    width: 100%;
  }
}

@media screen and (max-width: 768px) {
  .collection-header-type3__container {
    padding: 0 16px;
  }
  .collection-header-type3__hero {
    min-height: 500px;
  }
  .collection-header-type3__title {
    font-size: 28px !important;
  }
  .collection-header-type3__breadcrumb {
    top: 20px;
    left: 20px;
  }
  .collection-header-type3__hero-content {
    padding: 20px 20px 20px 20px;
  }
  .collection-header-type3__text-content {
    max-width: none;
    width: 100%;
  }
}

@media screen and (max-width: 480px) {
  .collection-header-type3{
    padding-top: 16px !important;
  }
  .collection-header-type3__hero {
    min-height: 400px;
    position: relative;
    align-items: flex-end;
    margin-bottom: 0;
  }
  .collection-header-type3__hero::before{
      content: '';
    display: block;
    width: 100%;
    height: 100%;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.7), transparent);
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
  }

  .collection-header-type3__hero-content {
    padding: 15px 16px 15px 16px;
  }
  .collection-header-type3__subtitle,
  .collection-header-type3__description {
    font-size: 14px;
  }
}

/* Fallback si pas d'image de fond */
.collection-header-type3__hero:not([style*="background-image"]) {
  background: linear-gradient(135deg, #6a4f44 0%, #4a342a 100%);
}
.collection-products-grid {
    padding-top: var(--section-padding-top, 60px);
    padding-bottom: var(--section-padding-bottom, 60px);
    background-color: var(--color-background, #FFFFFF);
    grid-column: 1 / -1 !important;
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    left: 0 !important;
    right: 0 !important;
    position: relative;
  }

  /* Override any parent grid positioning with higher specificity */
  .shopify-section > .collection-products-grid,
  .shopify-section > #main-collection-product-grid,
  [data-id*="template--"] > .collection-products-grid {
    grid-column: 1 / -1 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    justify-self: stretch !important;
  }

  /* Force reset for grid containers */
  .shopify-section:has(> .collection-products-grid) {
    display: block !important;
  }

  .shopify-section > *:where(.collection-products-grid) {
    grid-column: 1 / -1 !important;
  }

  /* Ultra-specific override for Shopify grid system */
  .shopify-section > #main-collection-product-grid,
  .shopify-section > [data-id*="template--"] > .collection-products-grid,
  .shopify-section > .collection-products-grid[data-collection-grid],
  .shopify-section > * > .collection-products-grid,
  .shopify-section .collection-products-grid {
    grid-column: 1 / -1 !important;
    grid-column-start: 1 !important;
    grid-column-end: -1 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    left: 0 !important;
    right: 0 !important;
    justify-self: center !important;
    align-self: center !important;
  }

  /* Reset the entire grid system for collection pages */
  body:has(.collection-products-grid) .shopify-section > * {
    grid-column: 1 / -1 !important;
  }

  body:has(.collection-products-grid) .shopify-section {
    display: block !important;
  }

  .collection-products-grid__container {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 20px;
    width: 100%;
    box-sizing: border-box;
    position: relative;
    left: 0;
    right: 0;
  }

/* Debug Info */
.debug-info {
  background: #f0f0f0;
  padding: 20px;
  margin-bottom: 20px;
  border-radius: 8px;
  font-family: monospace;
  font-size: 12px;
}

/* Barre d'outils */
.collection-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 16px;
  padding: 16px 0;
  flex-wrap: wrap;
}

/* Bouton Filtres */
.collection-toolbar__filters-toggle {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: 'Avenir Next', sans-serif;
  font-size: 14px;
  font-weight: 500;
  color: var(--color-text, #000000);
  background: transparent;
  border: 1px solid #E0E0E0;
  border-radius: 6px;
  padding: 10px 16px;
  cursor: pointer;
  transition: all 0.2s ease;
}

.collection-toolbar__filters-toggle:hover {
  border-color: var(--color-text, #000000);
  background-color: #F9F9F9;
}

.filters-toggle__icon {
  width: 16px;
  height: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.filters-toggle__count {
  font-size: 12px;
  color: #858585;
}

/* Tri */
.collection-toolbar__sort {
  position: relative;
  display: flex;
  align-items: center;
  gap: 8px;
}

.sort-label {
  font-family: 'Avenir Next', sans-serif;
  font-size: 14px;
  font-weight: 700;
  color: var(--color-text, #000000);
  white-space: nowrap;
}

.sort-select {
  font-family: 'Avenir Next', sans-serif;
  font-size: 14px;
  color: var(--color-text, #000000);
  background: #FFFFFF;
  border: 1px solid #E0E0E0;
  border-radius: 6px;
  padding: 10px 32px 10px 16px;
  min-width: 180px;
  cursor: pointer;
  appearance: none;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
  background-position: right 12px center;
  background-repeat: no-repeat;
  background-size: 16px;
  text-align: right;
  direction: rtl;
}

.sort-select option {
  direction: ltr;
  text-align: left;
}

/* Conteneur tri et résultats */
.collection-toolbar__sort-and-results {
  display: flex;
  align-items: center;
  gap: 20px;
  margin-left: auto;
}

/* Informations résultats */
.collection-toolbar__results {
  white-space: nowrap;
}

.results-info {
  font-family: 'Avenir Next', sans-serif;
  font-size: 14px;
  color: #858585;
  text-align: right;
}

.sort-select:focus {
  outline: 2px solid var(--color-primary, #B45C31);
  outline-offset: 2px;
}

/* Filtres Actifs */
.collection-active-filters {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 24px;
  padding: 12px 0;
  flex-wrap: wrap;
}

.active-filters-list {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  flex: 1;
}

.active-filter-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-family: 'Avenir Next', sans-serif;
  font-size: 13px;
  font-weight: 500;
  color: var(--color-text, #000000);
  background-color: #F5F5F5;
  border: 1px solid #E0E0E0;
  border-radius: 20px;
  padding: 6px 12px;
  transition: all 0.2s ease;
}

.active-filter-badge:hover {
  background-color: #EEEEEE;
}

.active-filter-badge__remove {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  background: none;
  border: none;
  border-radius: 50%;
  cursor: pointer;
  transition: all 0.2s ease;
  padding: 0;
  margin-left: 2px;
}

.active-filter-badge__remove:hover {
  background-color: #DDDDDD;
}

.active-filter-badge__remove::before {
  content: '×';
  font-size: 14px;
  font-weight: 600;
  color: #666666;
}

.active-filters__clear-all {
  font-family: 'Avenir Next', sans-serif;
  font-size: 13px;
  font-weight: 500;
  color: #858585;
  background: none;
  border: none;
  cursor: pointer;
  text-decoration: underline;
  transition: color 0.2s ease;
}

.active-filters__clear-all:hover {
  color: var(--color-text, #000000);
}

/* Grille de produits */
.products-grid {
    display: grid;
    grid-template-columns: repeat(var(--columns-mobile, 2), 1fr);
    gap: 20px;
    margin-bottom: 48px;
  }



/* Pagination */
.collection-pagination {
  margin-top: 48px;
}

.pagination-list {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  list-style: none;
  padding: 0;
  margin: 0;
  flex-wrap: wrap;
}

.pagination-item {
  display: flex;
}

.pagination-link {
  display: flex;
  align-items: center;
  gap: 4px;
  font-family: 'Avenir Next', sans-serif;
  font-size: 14px;
  font-weight: 500;
  color: var(--color-text, #000000);
  text-decoration: none;
  padding: 8px 12px;
  border-radius: 6px;
  transition: all 0.2s ease;
  min-width: 40px;
  justify-content: center;
}

.pagination-link:hover {
  background-color: #F5F5F5;
}

.pagination-link--current {
  background-color: var(--color-primary, #B45C31);
  color: #FFFFFF;
}

.pagination-link--current:hover {
  background-color: var(--color-primary, #B45C31);
}

.pagination-ellipsis {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8px 4px;
  color: #858585;
  font-size: 14px;
}

.pagination-arrow {
  font-size: 16px;
}

/* État vide */
.collection-empty {
  text-align: center;
  padding: 80px 20px;
}

.collection-empty__title {
  font-family: 'Avenir Next', sans-serif;
  font-size: 24px;
  font-weight: 600;
  color: var(--color-text, #000000);
  margin: 0 0 16px 0;
}

.collection-empty__description {
  font-family: 'Avenir Next', sans-serif;
  font-size: 16px;
  color: #858585;
  margin: 0 0 24px 0;
  max-width: 400px;
  margin-left: auto;
  margin-right: auto;
}

.collection-empty__button {
  font-family: 'Avenir Next', sans-serif;
  font-size: 14px;
  font-weight: 500;
  color: var(--color-primary, #B45C31);
  background: transparent;
  border: 1px solid var(--color-primary, #B45C31);
  border-radius: 6px;
  padding: 12px 24px;
  cursor: pointer;
  transition: all 0.2s ease;
}

.collection-empty__button:hover {
  background-color: var(--color-primary, #B45C31);
  color: #FFFFFF;
}


/* Responsive Design */
@media screen and (min-width: 768px) {
  .products-grid {
    grid-template-columns: repeat(var(--columns-tablet, 3), 1fr);
    gap: 24px;
  }
  
  .collection-toolbar {
    flex-wrap: nowrap;
  }
  
  .collection-toolbar__results {
    text-align: right;
  }
  
  .collection-active-filters {
    flex-wrap: nowrap;
  }
}

@media screen and (min-width: 1024px) {
  .products-grid {
    grid-template-columns: repeat(var(--columns-desktop, 4), 1fr);
    gap: 28px;
  }
}

@media screen and (max-width: 767px) {
  .collection-products-grid__container {
    padding: 0 16px;
  }
  .collection-products-grid{
    margin-top: 30px !important;
    padding-top: 10px !important;
    border-top: solid 1px #ECECEC;
  }
  .collection-toolbar {
    gap: 12px;
    padding: 12px 0;
    flex-direction: row !important; 
  }
  
  .collection-toolbar__filters-toggle {
    order: 1;
    font-size: 13px;
    padding: 8px 12px;
  }
  
  .collection-toolbar__results {
    order: 3;
    width: 100%;
    text-align: right !important;
    margin-top: 0 !important;
  }
  
  .collection-toolbar__sort {
    order: 2;
    width: 60% !important;
    justify-content: flex-end !important;
  }
  
  .collection-toolbar__sort::before{
    display: none;
  }
  .sort-select {
    font-size: 13px;
    padding: 8px 28px 8px 12px;
    min-width: 140px;
  }
  
  .collection-active-filters {
    margin-bottom: 16px;
    padding: 8px 0;
  }
  
  .active-filter-badge {
    font-size: 12px;
    padding: 4px 8px;
  }
  
  .active-filters__clear-all {
    font-size: 12px;
  }
  
  .products-grid {
    gap: 16px;
    margin-bottom: 32px;
  }
  
  .pagination-list {
    gap: 4px;
  }
  
  .pagination-link {
    padding: 6px 8px;
    font-size: 13px;
    min-width: 32px;
  }
  
  .pagination-text {
    display: none;
  }
}

@media screen and (max-width: 480px) {
  .collection-empty {
    padding: 60px 16px;
  }
  
  .collection-empty__title {
    font-size: 20px;
  }
  
  .collection-empty__description {
    font-size: 14px;
  }
}
.collection-products-grid {
  padding-top: var(--section-padding-top, 40px);
  padding-bottom: var(--section-padding-bottom, 40px);
  background-color: var(--color-background, #FFFFFF);
}
.collection-products-grid.loading .collection-products-grid__container {
  opacity: 0.5;
}
.collection-products-grid__container {
  width: 100%;
}
.collection-toolbar {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 16px;
  padding: 16px 0;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.collection-toolbar__filters-toggle {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: 'Avenir Next', sans-serif;
  font-size: 14px;
  font-weight: 500;
  color: var(--color-text, #000000);
  background: transparent;
  border: 1px solid #000000;
  border-radius: 6px;
  padding: 8px 12px;
  cursor: pointer;
  transition: all 0.2s ease;
}
.collection-toolbar__filters-toggle:hover {
  border-color: var(--color-text, #000000);
  background-color: #F9F9F9;
}
.filters-toggle__icon {
  width: 16px;
  height: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.filters-toggle__count {
  font-size: 12px;
  color: var(--color-text, #000000);
  margin-left: 2px;
}
.collection-toolbar__results {
  color: var(--color-text, #000000);
  margin-left: auto;
  font-family: 'Avenir Next', sans-serif;
  font-size: 14px;
  text-align: right;
}
.results-info {
  font-family: 'Avenir Next', sans-serif;
  font-size: 14px;
  color: var(--color-text, #000000);
}
.collection-toolbar__sort {
  position: relative;
  display: flex;
  align-items: center;
  gap: 6px;
}
.collection-toolbar__sort::before {
  content: "Trier par";
  font-family: 'Avenir Next', sans-serif;
  font-size: 14px;
  font-weight: 600;
  color: var(--color-text, #000000);
}
.sort-select {
  font-family: 'Avenir Next', sans-serif;
  font-size: 14px;
  font-weight: 500;
  color: var(--color-text, #000000);
  background: transparent;
  border: none;
  padding: 4px 16px 4px 0;
  min-width: 120px;
  max-width: 150px;
  cursor: pointer;
  appearance: none;
  text-decoration: underline;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23000000' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
  background-position: right 0 center;
  background-repeat: no-repeat;
  background-size: 14px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.sort-select:focus {
  outline: 2px solid var(--color-primary, #B45C31);
  outline-offset: 2px;
}
.sort-select:hover {
  color: var(--color-primary, #B45C31);
}
.collection-active-filters {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  margin-bottom: 24px;
}
.active-filters-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.active-filter-badge {
  display: flex;
  align-items: center;
  background-color: #f0f0f0;
  border-radius: 4px;
  padding: 4px 8px;
  font-size: 13px;
}
.active-filter-badge__text {
  margin-right: 6px;
}
.active-filter-badge__remove {
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  display: flex;
  align-items: center;
  color: #858585;
}
.active-filter-badge__remove:hover {
  color: #000;
}
.active-filters__clear-all {
  font-size: 13px;
  text-decoration: underline;
  background: none;
  border: none;
  cursor: pointer;
  color: #858585;
}
.active-filters__clear-all:hover {
  color: #000;
}

.products-grid {
  display: grid;
  grid-template-columns: repeat(var(--columns-mobile, 2), 1fr);
  gap: 16px;
  margin-bottom: 48px;
  width: 100%;
}
.collection-pagination { margin-top: 48px; }
.pagination-list {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  list-style: none;
  padding: 0;
  margin: 0;
  flex-wrap: wrap;
}
.pagination-item { display: flex; }
.pagination-link {
  display: flex;
  align-items: center;
  gap: 4px;
  font-family: 'Avenir Next', sans-serif;
  font-size: 14px;
  font-weight: 500;
  color: var(--color-text, #000000);
  text-decoration: none;
  padding: 8px 12px;
  border-radius: 6px;
  transition: all 0.2s ease;
  min-width: 40px;
  justify-content: center;
}
.pagination-link:hover { background-color: #F5F5F5; }
.pagination-link--current {
  background-color: var(--color-primary, #B45C31);
  color: #FFFFFF;
}
.pagination-link--current:hover { background-color: var(--color-primary, #B45C31); }
.pagination-ellipsis {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8px 4px;
  color: #858585;
  font-size: 14px;
}
.pagination-arrow { font-size: 16px; }
.collection-empty { text-align: center; padding: 80px 20px; }
.collection-empty__title {
  font-family: 'Avenir Next', sans-serif;
  font-size: 24px;
  font-weight: 600;
  color: var(--color-text, #000000);
  margin: 0 0 16px 0;
}
.collection-empty__description {
  font-family: 'Avenir Next', sans-serif;
  font-size: 16px;
  color: #858585;
  margin: 0 0 24px 0;
  max-width: 400px;
  margin-left: auto;
  margin-right: auto;
}
.collection-empty__button {
  font-family: 'Avenir Next', sans-serif;
  font-size: 14px;
  font-weight: 500;
  color: var(--color-primary, #B45C31);
  background: transparent;
  border: 1px solid var(--color-primary, #B45C31);
  border-radius: 6px;
  padding: 12px 24px;
  cursor: pointer;
  transition: all 0.2s ease;
}
.collection-empty__button:hover {
  background-color: var(--color-primary, #B45C31);
  color: #FFFFFF;
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
@media screen and (max-width: 380px) {
  .products-grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  .collection-toolbar {
    gap: 12px;
    justify-content: flex-start;
    flex-direction: row;
    align-items: flex-start;
    width: 100%;
  }

  .collection-toolbar__sort::before {
    display: none;
  }
  .collection-toolbar__results {
    width: 100%;
    text-align: left;
    margin-top: 0;
    font-size: 13px;
  }
  .collection-toolbar__sort {
    width: 100%;
    justify-content: flex-start;
  }
  .sort-select {
    min-width: 100px;
    max-width: 120px;
    font-size: 13px;
  }
}

@media screen and (min-width: 381px) and (max-width: 767px) {
  .products-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
  }
  .collection-toolbar {
    gap: 12px;
    justify-content: flex-start;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
  }
  .collection-toolbar__results {
    width: 100%;
    text-align: left;
    margin-top: 0;
    font-size: 13px;
  }
  .collection-toolbar__sort {
    width: 100%;
    justify-content: flex-start;
  }
  .sort-select {
    min-width: 110px;
    max-width: 130px;
    font-size: 13px;
  }
}

@media screen and (min-width: 768px) {
  .products-grid {
    grid-template-columns: repeat(var(--columns-tablet, 3), 1fr);
    gap: 24px;
  }
  .collection-toolbar { 
    flex-wrap: nowrap; 
    gap: 20px;
    justify-content: flex-start;
  }
  .collection-toolbar__results { 
    text-align: left; 
    margin-left: auto; 
    padding-right: 80px;
  }
  .sort-select {
    min-width: 140px;
    max-width: none;
  }
}
@media screen and (min-width: 1024px) {
  .products-grid {
    grid-template-columns: repeat(var(--columns-desktop, 4), 1fr);
    gap: 28px;
  }
  .collection-toolbar__filters-toggle {
    padding: 10px 16px;
  }
  .sort-select {
    min-width: 160px;
    max-width: none;
  }
}
@media screen and (max-width: 767px) {
  .collection-products-grid__container { padding: 0 16px; }
  .collection-toolbar { gap: 12px; padding: 12px 0; }
  .collection-toolbar__filters-toggle { order: 1; font-size: 13px; padding: 8px 12px; }
  .collection-toolbar__results { order: 3; width: 100%; text-align: left; margin-top: 8px; }
  .collection-toolbar__sort { order: 2; }
  .sort-select { font-size: 13px; padding: 8px 28px 8px 12px; min-width: 140px; }
  .products-grid { gap: 16px; margin-bottom: 32px; }
  .pagination-list { gap: 4px; }
  .pagination-link { padding: 6px 8px; font-size: 13px; min-width: 32px; }
  .pagination-text { display: none; }
}
@media screen and (max-width: 480px) {
  .collection-empty { padding: 60px 16px; }
  .collection-empty__title { font-size: 20px; }
  .collection-empty__description { font-size: 14px; }
}
.filters-drawer-overlay {
  position: fixed;
  top: 0; left: 0; width: 100vw; height: 100vh;
  background: rgba(0,0,0,0.5);
  z-index: 1000;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s;
  display: none;
}
.filters-drawer-overlay.is-visible {
  opacity: 1;
  pointer-events: auto;
  display: block;
}
.filters-drawer {
  position: fixed;
  top: 0; left: 0;
  width: 361px;
  max-width: 100vw;
  height: 100vh;
  background: #fff;
  z-index: 1001;
  box-shadow: 4px 0 20px rgba(0,0,0,0.10);
  transform: translateX(-100%);
  transition: transform 0.4s cubic-bezier(.4,0,.2,1);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.filters-drawer.is-open { transform: translateX(0); display: flex; }
.filters-drawer__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 24px 40px 0 40px;
}
.filters-drawer__title {
  font-family: 'Avenir Next', sans-serif;
  font-size: 20px;
  font-weight: 700;
  color: #000;
}
.filters-drawer__close {
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
  margin-left: 16px;
  display: flex;
  align-items: center;
}
.filters-drawer__content {
  flex: 1;
  overflow-y: auto;
  overflow-x: hidden;
  padding: 24px 40px 0 40px;
  max-height: calc(100vh - 140px);
}
.filter-accordion {
  border: none;
  margin-bottom: 22px;
  background: none;
}
.filter-accordion__trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 0;
  background: none;
  border: none;
  font-family: 'Avenir Next', sans-serif;
  font-size: 16px;
  font-weight: 600;
  color: #000;
  cursor: pointer;
  outline: none;
}
.filter-accordion__icon {
  margin-left: 24px;
  transition: transform 0.3s ease;
}
.filter-accordion[open] .filter-accordion__icon { transform: rotate(180deg); }
.filter-accordion__content {
  padding: 0;
  max-height: 0;
  overflow: hidden;
  transition: all 0.3s ease;
  opacity: 0;
}
.filter-accordion[open] .filter-accordion__content {
  max-height: 500px;
  padding: 20px 0 0 0;
  opacity: 1;
}
.filter-options { display: flex; flex-direction: column; gap: 20px; }
.filter-option {
  display: flex;
  align-items: center;
  gap: 14px;
  font-family: 'Avenir Next', sans-serif;
  font-size: 16px;
  color: #000;
  cursor: pointer;
}
.filter-checkbox {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.filter-option__checkmark {
  width: 18px; height: 18px;
  border: 1px solid #858585;
  border-radius: 4px;
  background: #fff;
  display: inline-block;
  position: relative;
}
.filter-checkbox:checked + .filter-option__checkmark {
  background: #B45C31;
  border-color: #B45C31;
}
.filter-checkbox:checked + .filter-option__checkmark::after {
  content: '';
  position: absolute;
  left: 5px; top: 1px;
  width: 6px; height: 10px;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}
.filter-option__label { font-weight: 400; }
.filter-option__count { font-size: 14px; color: #858585; margin-left: 4px; }
.price-range-inputs { display: flex; align-items: flex-end; gap: 10px; }
.price-input-group { display: flex; flex-direction: column; gap: 4px; }
.price-input__label { font-size: 14px; color: #858585; font-weight: 400; font-family: 'Avenir Next', sans-serif; }
.price-input {
  width: 100px;
  padding: 8px 12px;
  border: 1px solid #E8E8E8;
  border-radius: 4px;
  font-size: 16px;
  color: #000;
  font-family: 'Avenir Next', sans-serif;
}
.price-input-separator { font-size: 16px; color: #858585; margin: 0 8px; align-self: flex-end; margin-bottom: 8px; }
.price-range-hint { font-size: 14px; color: #858585; margin-top: 10px; }
.filters-drawer__footer {
  display: flex;
  gap: 10px;
  padding: 20px 40px;
  border-top: 1px solid #E8E8E8;
  background: #fff;
  position: sticky;
  bottom: 0;
  z-index: 10;
  flex-shrink: 0;
}
.filters-drawer__clear {
  flex: 1;
  font-size: 14px;
  color: #858585;
  background: #fff;
  border: 1px solid #E8E8E8;
  border-radius: 4px;
  padding: 12px 0;
  cursor: pointer;
  transition: background 0.2s;
}
.filters-drawer__clear:hover { background: #F5F5F5; }
.filters-drawer__apply {
  flex: 2;
  font-size: 14px;
  color: #fff;
  background: #B45C31;
  border: none;
  border-radius: 4px;
  padding: 12px 0;
  cursor: pointer;
  font-weight: 600;
  transition: background 0.2s;
}
.filters-drawer__apply:hover { background: #9A4A26; }
.filter-collection-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.filter-collection-list__link {
  text-decoration: none;
  font-size: 16px;
  color: #000;
  font-weight: 400;
}
.filter-collection-list__link:hover {
  text-decoration: underline;
}
@media (max-width: 480px) {
  .filters-drawer { width: 100vw; min-width: 0; padding: 0; }
  .filters-drawer__header,
  .filters-drawer__content,
  .filters-drawer__footer { padding-left: 16px; padding-right: 16px; }
}
.filters-drawer__separator {
  border: none;
  border-top: 1px solid #E8E8E8;
  margin: 24px 0 24px 0;
}

.filters-drawer__separator:last-child {
  display: none;
}
.collections-grid {
    padding-top: var(--section-padding-top, 60px);
    padding-bottom: var(--section-padding-bottom, 60px);
    background-color: var(--color-background, #FFFFFF);
    grid-column: 1 / -1 !important;
    width: 100%;
    overflow-x: hidden;
  }

  .collections-grid__container {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 20px;
    width: 100%;
  }

  .collections-grid__container {
    width: 100%;
  }

  .collections-grid__header {
    text-align: center;
    margin-bottom: 50px;
    max-width: 481px;
    margin-left: auto;
    margin-right: auto;
  }

  .collections-grid__title {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-weight: 600;
    font-size: 32px;
    line-height: 1.366;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: #0F0D22;
    margin: 0 0 18px 0;
  }

  .collections-grid__description {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.366;
    text-align: center;
    color: #0F0D22;
    margin: 0;
  }

  .collections-grid__grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
  }
  
  @media screen and (max-width: 989px) {
    .collections-grid__grid {
      grid-template-columns: repeat(2, 1fr);
    }
  }
  
  @media screen and (max-width: 749px) {
    .collections-grid__grid {
      grid-template-columns: 1fr;
    }
  }

  .collection-card {
    position: relative;
    border-radius: 4px;
    overflow: hidden;
    background: #D9D9D9;
    width: 100%;
    aspect-ratio: 343/543;
    display: flex;
    flex-direction: column;
  }

  .collection-card__link {
    text-decoration: none;
    color: inherit;
    display: flex;
    flex-direction: column;
    height: 100%;
  }

  .collection-card__image-container {
    position: relative;
    flex: 1;
    overflow: hidden;
  }

  .collection-card__image,
  .collection-card__image--placeholder {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;

    .image {
        width: 100% !important;
        height: 100% !important;
    }
  }

  .collection-card__image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    object-position: center;
  }

  .collection-card__image--placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #D9D9D9;
  }

  .collection-card__image--placeholder .placeholder-svg {
    width: 100px;
    height: 100px;
    opacity: 0.3;
  }

  .collection-card__content {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 14px;
    padding-bottom: 20px;
    display: flex;
    flex-direction: column;
    gap: 40px;
  }

  .collection-card__text {
    display: flex;
    flex-direction: column;
    gap: 0;
    text-align: center;
    transition: transform 0.3s ease;
  }

  .collection-card__subtitle {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.366;
    color: #FFFFFF;
    margin: 0;
    text-align: center;
  }

  .collection-card__title {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-weight: 600;
    font-size: 32px;
    line-height: 1.366;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: #FFFFFF;
    margin: 0;
    text-align: center;
  }

  .collection-card__button {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.366;
    color: #000000;
    background: #FFFFFF;
    border: 1px solid #FFFFFF;
    border-radius: 4px;
    padding: 12px 30px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    text-align: center;
    opacity: 0;
    transform: translateY(30px);
  }

  .collection-card:hover .collection-card__button {
    opacity: 1;
    transform: translateY(0);
  }

  .collection-card__text {
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    transform: translateY(60px);
  }

  .collection-card:hover .collection-card__text {
    transform: translateY(-5px);
  }

  /* Responsive Design */
  @media screen and (max-width: 1199px) {
    .collections-grid__grid {
      grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
      gap: 16px;
    }

    .collection-card {
      width: 100%;
      max-width: 343px;
      height: 480px;
      justify-self: center;
    }
  }

  @media screen and (max-width: 767px) {
    .collections-grid {
      width: 100%;
      margin-left: 0;
      padding: 40px 0 0 0 !important;
      overflow-x: auto;
    }

    .collections-grid__container {
      padding: 0 16px;
    }

    .collections-grid__header {
      margin-bottom: 32px;
      padding: 0 20px;
    }

    .collections-grid__title {
      font-size: 24px;
      letter-spacing: 4.8px;
      margin-bottom: 12px;
    }

    .collections-grid__description {
      font-size: 14px;
    }

    .collections-grid__grid {
      display: flex;
      grid-template-columns: none;
      gap: 16px;
      overflow-x: auto;
      scroll-snap-type: x mandatory;
      -webkit-overflow-scrolling: touch;
      scrollbar-width: none;
      -ms-overflow-style: none;
      padding: 0 20px;
    }
    
    .collections-grid__grid::-webkit-scrollbar {
      display: none;
    }

    .collection-card {
      flex: 0 0 280px;
      height: 400px;
      scroll-snap-align: start;
    }

    .collection-card__title {
      font-size: 24px;
    }

    .collection-card__content {
      gap: 24px;
      padding: 12px;
    }
  }
.collections-slider {
    padding-top: var(--padding-top, 80px);
    padding-bottom: var(--padding-bottom, 80px);
    background: var(--color-background);
    grid-column: 1 / -1 !important;
    overflow: hidden;
  }
  
  .collections-slider__container {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 20px;
    width: 100%;
    box-sizing: border-box;
  }
  
  /* Header - Pixel Perfect selon Figma */
  .collections-slider__header {
    text-align: center;
    margin-bottom: 38px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 18px;
  }
  
  .collections-slider__title {
    font-family: 'Avenir Next', var(--font-navigation, sans-serif);
    font-weight: 600;
    font-size: 24px;
    line-height: 1.366;
    letter-spacing: 20%;
    text-transform: uppercase;
    color: #0F0D22;
    margin: 0;
    text-align: center;
  }
  
  .collections-slider__subtitle {
    font-family: 'Avenir Next', var(--font-navigation, sans-serif);
    font-weight: 400;
    font-size: 16px;
    line-height: 1.366;
    color: #0F0D22;
    margin: 0;
    text-align: center;
    width: 481px;
    height: 23px;
  }
  
  /* Carousel */
  .collections-slider__carousel {
    position: relative;
    overflow: visible;
    margin: 0 -20px;
  }
  
  .collections-slider__track {
    display: flex;
    gap: 20px;
    padding: 0 20px;
    transition: transform 0.6s ease;
    will-change: transform;
  }
  
  .collections-slider__slide {
    flex: 0 0 666px;
    width: 666px;
    height: 660px;
    transition: opacity 0.3s ease;
  }

  .collections-slider__slide {
    opacity: 1;
  }
  
  .collections-slider__card {
    position: relative;
    width: 666px;
    height: 660px;
    border-radius: 4px;
    overflow: hidden;
    background: #D9D9D9;
  }
  
  .collections-slider__image-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  
  .collections-slider__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 4px;
    transition: transform 0.3s ease;
  }
  
  /* Overlay */
  .collections-slider__overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 73px 202px;
    background: transparent;
    color: white;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    z-index: 2;
  }
  
  .collections-slider__collection-title {
    font-family: 'The Seasons Light', serif;
    font-weight: 200;
    font-size: 40px;
    line-height: 1;
    text-transform: uppercase;
    text-align: center;
    margin: 0;
    color: white;
  }
  
  .collections-slider__cta-button {
    background: white;
    color: black;
    border: 1px solid white;
    padding: 12px 30px;
    border-radius: 4px;
    font-family: 'Avenir Next', var(--font-navigation, sans-serif);
    font-size: 14px;
    font-weight: 400;
    line-height: 1.366;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.3s ease;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transform: translateY(10px);
  }
  
  .collections-slider__slide:hover .collections-slider__cta-button {
    opacity: 1;
    transform: translateY(-15px);
  }

  .collections-slider__slide:hover .collections-slider__image {
    transform: scale(1.1);
  }
  
     /* Navigation - Style adapté de nouveautes avec esprit Figma */
   .collections-slider__navigation {
     margin-top: 40px;
     display: flex;
     align-items: center;
     justify-content: space-between;
   }
   
   .collections-slider__progress-container {
     flex: 1;
     display: flex;
     justify-content: center;
   }
  
     .collections-slider__progress-bar {
     width: 700px;
     height: 1px;
     background: #B3B3B3;
     position: relative;
   }
   
   .collections-slider__progress-fill {
     height: 3px;
     background: #421F07;
     transition: width 0.6s ease;
     width: 25%;
     position: absolute;
     top: -1px;
   }
  
     .collections-slider__arrows {
     display: flex;
     gap: 24px;
     margin-left: -20px;
     margin-right: 20px;
   }
   
   .collections-slider__arrow {
     width: 32px;
     height: 32px;
     background: transparent;
     border: none;
     cursor: pointer;
     color: #000000;
     transition: all 0.3s ease;
     display: flex;
     align-items: center;
     justify-content: center;
   }
   
   .collections-slider__arrow:hover {
     color: #ff6b6b;
     transform: scale(1.1);
   }
   
   .collections-slider__arrow:disabled,
   .collections-slider__arrow.disabled {
     opacity: 0.3;
     cursor: not-allowed;
     color: #ccc;
     pointer-events: none;
   }
   
   .collections-slider__arrow:disabled:hover,
   .collections-slider__arrow.disabled:hover {
     transform: none;
     color: #ccc;
   }
  
     /* Responsive Design - Maintient largeur fixe */
   @media screen and (max-width: 1440px) {
     .collections-slider__container {
       padding: 0 20px;
     }
     
     .collections-slider__navigation {
       justify-content: center;
       gap: 20px;
     }
     
     .collections-slider__progress-container {
       width: 700px;
     }
     
     .collections-slider__progress-bar {
       width: 700px;
     }
   }
  
  @media screen and (max-width: 767px) {
    .collections-slider {
      width: 100vw;
      margin-left: calc(-50vw + 50%);
      padding-top: 30px;
      padding-bottom: calc(var(--padding-bottom, 80px) * 0.5);
   
    }
    
    .collections-slider__container {
      max-width: none;
      padding: 0;
    }
    
    .collections-slider__header {
      padding: 0 16px;
      margin-bottom: 24px;
    }
    
    .collections-slider__title {
      font-size: 20px;
    }
    
    .collections-slider__subtitle {
      width: 100%;
      height: auto;
      font-size: 14px;
    }
    
    .collections-slider__carousel {
      margin: 0;
      overflow: hidden;
      padding-left: 16px;
    }
    
    .collections-slider__track {
      display: flex;
      gap: 16px;
      padding: 0 16px;
      overflow-x: auto;
      scroll-snap-type: x mandatory;
      -webkit-overflow-scrolling: touch;
      scrollbar-width: none;
      -ms-overflow-style: none;
    }
    
    .collections-slider__track::-webkit-scrollbar {
      display: none;
    }
    
    .collections-slider__slide {
      flex: 0 0 280px;
      width: 280px;
      height: 350px;
      scroll-snap-align: start;
      opacity: 1 !important;
    }
    
    .collections-slider__card {
      width: 280px;
      height: 350px;
    }
    
    .collections-slider__overlay {
      padding: 30px 20px;
    }
    
    .collections-slider__collection-title {
      font-size: 24px;
    }
    
    .collections-slider__cta-button {
      opacity: 1;
      transform: translateY(0);
      font-size: 12px;
      padding: 10px 24px;
      height: 32px;
    }
    
    .collections-slider__navigation {
      display: none;
    }
  }
  
  /* Empty State */
  .collections-slider__empty {
    text-align: center;
    padding: 60px 20px;
    color: rgba(var(--color-foreground), 0.6);
  }
  
  .collections-slider__empty p {
    margin: 0 0 16px 0;
    font-size: 1.125rem;
  }
#main-collections-grid {
  grid-column: 1;
}

.collections-grid {
  padding-top: var(--section-padding-top, 40px);
  padding-bottom: var(--section-padding-bottom, 40px);
  background-color: var(--color-background, #FFFFFF);
}

.collections-grid__container {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}

/* Page Header */
.collections-header {
  text-align: center;
  margin-bottom: 48px;
}

.collections-title {
  font-family: 'Avenir Next', sans-serif;
  font-size: 32px;
  font-weight: 600;
  color: var(--color-text, #000000);
  margin: 0 0 16px 0;
  line-height: 1.2;
}

.collections-subtitle {
  font-family: 'Avenir Next', sans-serif;
  font-size: 16px;
  color: #6B7280;
  margin: 0;
  max-width: 500px;
  margin-left: auto;
  margin-right: auto;
}

/* Collections Grid */
.collections-list {
  display: grid;
  grid-template-columns: repeat(var(--columns-mobile, 2), 1fr);
  gap: 24px;
  margin-bottom: 48px;
}

.collection-item {
  display: flex;
  flex-direction: column;
}

/* Collection Card */
.collection-card {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  background: var(--color-background, #FFFFFF);
  border-radius: 8px;
  overflow: hidden;
  transition: all 0.3s ease;
}

/* Image Wrapper */
.collection-card__image-wrapper {
  position: relative;
  overflow: hidden;
  background: #f5f5f5;
  border-radius: 8px;
  height: 300px;
  min-height: 300px;
  border: solid 1px #F0F0F0;
}

.collection-card__image-link {
  display: block;
  position: relative;
  height: 300px;
  width: 100%;
  text-decoration: none;
}

.collection-card__image {
  position: relative;
  height: 300px;
  width: 100%;
  overflow: hidden;
}

.collection-card__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform 0.3s ease;
}

.collection-card__img .image,
.collection-card__img .image-wrapper,
.collection-card__img img {
  height: 100% !important;
  width: 100% !important;
}

.collection-card__img img,
.collection-card__img .image > img {
  height: 100% !important;
  width: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
}

.collection-card:hover .collection-card__img {
  transform: scale(1.05);
}

.collection-card__image--placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #f0f0f0;
  height: 100% !important;
  width: 100%;
}

.placeholder-svg {
  width: 60px;
  height: 60px;
  opacity: 0.3;
}

/* Overlay */
.collection-card__overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.0) 0%, rgba(0, 0, 0, 0.7) 100%);
  display: flex;
  align-items: flex-end;
  padding: 24px;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.collection-card:hover .collection-card__overlay {
  opacity: 1;
}

.collection-overlay__content {
  width: 100%;
}

.collection-overlay__title {
  font-family: 'Avenir Next', sans-serif;
  font-size: 18px;
  font-weight: 600;
  color: #FFFFFF;
  margin: 0 0 8px 0;
  line-height: 1.3;
}

.collection-overlay__count {
  font-family: 'Avenir Next', sans-serif;
  font-size: 14px;
  color: rgba(255, 255, 255, 0.8);
  margin: 0 0 12px 0;
}

.collection-overlay__cta {
  font-family: 'Avenir Next', sans-serif;
  font-size: 14px;
  font-weight: 600;
  color: #FFFFFF;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  display: inline-block;
  padding: 8px 16px;
  background: rgba(255, 255, 255, 0.2);
  border-radius: 4px;
  backdrop-filter: blur(4px);
  transition: all 0.2s ease;
}

.collection-card:hover .collection-overlay__cta {
  background: var(--color-primary, #B45C31);
  transform: translateY(-2px);
}

/* Collection Info */
.collection-card__info {
  padding: 16px 0 0 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex-grow: 1;
}

#main-collections-grid .collection-card__title {
  margin: 0;
  font-family: var(--font-navigation);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.366;
}

#main-collections-grid .collection-card__title a {
  color: #000;
  text-decoration: none;
}

#main-collections-grid .collection-card__title a:hover {
  color: #B45C31;
}

.collection-card__description {
  font-family: 'Avenir Next', sans-serif;
  font-size: 14px;
  color: #6B7280;
  line-height: 1.4;
  margin: 0;
}

.collection-card__count {
  font-family: 'Avenir Next', sans-serif;
  font-size: 12px;
  font-weight: 500;
  color: #858585;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-top: auto;
}

/* Empty State */
.collections-empty {
  text-align: center;
  padding: 80px 20px;
}

.collections-empty__icon {
  margin-bottom: 24px;
}

.collections-empty__title {
  font-family: 'Avenir Next', sans-serif;
  font-size: 24px;
  font-weight: 600;
  color: var(--color-text, #000000);
  margin: 0 0 16px 0;
}

.collections-empty__description {
  font-family: 'Avenir Next', sans-serif;
  font-size: 16px;
  color: #6B7280;
  margin: 0;
  max-width: 400px;
  margin-left: auto;
  margin-right: auto;
}

/* Responsive Design */
@media screen and (max-width: 480px) {
  .collections-list {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  
  :root {
    --collection-card-image-height: 250px;
  }
  
  .collections-title {
    font-size: 24px;
  }
  
  .collections-subtitle {
    font-size: 14px;
  }
  
  .collection-card__info {
    padding: 12px 0 0 0;
    gap: 6px;
  }
  
  .collection-card__title {
    font-size: 14px;
  }
  
  .collection-card__description {
    font-size: 13px;
  }
  
  .collection-overlay__title {
    font-size: 16px;
  }
  
  .collection-card__overlay {
    padding: 16px;
  }
  
  .collections-empty {
    padding: 60px 16px;
  }
  
  .collections-empty__title {
    font-size: 20px;
  }
  
  .collections-empty__description {
    font-size: 14px;
  }
}

@media screen and (min-width: 481px) and (max-width: 767px) {
  .collections-list {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
  
  :root {
    --collection-card-image-height: 280px;
  }
  
  .collections-title {
    font-size: 28px;
  }
}

@media screen and (min-width: 768px) {
  .collections-list {
    grid-template-columns: repeat(var(--columns-tablet, 3), 1fr);
    gap: 24px;
  }
  
  :root {
    --collection-card-image-height: 300px;
  }
}

@media screen and (min-width: 1024px) {
  .collections-list {
    grid-template-columns: repeat(var(--columns-desktop, 4), 1fr);
    gap: 28px;
  }
  
  :root {
    --collection-card-image-height: 320px;
  }
}
.edito-accordion {
    overflow: hidden;
  }
  
  .edito-accordion__container {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    padding: 20px;
    max-width: 1440px;
    margin: 0 auto;
    width: 100%;
    justify-content: center;
  }

  .edito-accordion__title {
    font-family: "The Seasons Light", serif;
    font-size: 40px;
    font-weight: 300;
    line-height: 1em;
    text-transform: uppercase;
    color: {{ section.settings.text_color }};
    margin: 0;
    width: 35%;
    padding-right: 30px;
    flex-shrink: 0;
    text-align: left;
  }
  
  .edito-accordion__wrapper {
    display: flex;
    flex-direction: column;
    gap: 0;
    width: 65%;
  }

  .edito-accordion__item {
    display: flex;
    flex-direction: column;
    align-self: stretch;
  }

  .edito-accordion__details {
    border: none;
    padding: 0;
    margin: 0 0 30px 0;
    position: relative;
  }
  
  .edito-accordion__details:not(:last-child)::after {
    content: '';
    position: absolute;
    bottom: -15px;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #FF6B35;
  }
  
  .edito-accordion__details:last-child {
    margin-bottom: 0;
  }

  .edito-accordion__summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    list-style: none;
    font-family: "Avenir Next", sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.3660000562667847em;
    color: {{ section.settings.text_color }};
    width: 100%;
    padding: 0 0 20px 0;
  }

  .edito-accordion__summary::-webkit-details-marker {
    display: none;
  }

  .edito-accordion__question {
    flex: 1;
    text-align: left;
  }

  .edito-accordion__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 13px;
    height: 13px;
    flex-shrink: 0;
    color: {{ section.settings.text_color }};
    transition: transform 0.25s ease-out;
  }

  .edito-accordion__details[open] .edito-accordion__icon {
    transform: rotate(180deg);
  }

  .edito-accordion__content {
    padding: 0 0 20px 0;
    font-family: "Avenir Next", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3660000562667847em;
    color: {{ section.settings.text_color }};
    opacity: 0;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.25s;
  }

  .edito-accordion__content p {
    margin: 0;
  }

  .edito-accordion__details[open] .edito-accordion__content {
    opacity: 1;
    max-height: 1000px;
    transition: max-height 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.25s 0.05s;
  }

  .edito-accordion__separator {
    border: none;
    border-top: 1px solid #FF6B35;
    margin: 20px 0;
    margin-top: 0;
    height: 1px;
    background: none;
    display: block;
  }

  /* Responsive */
  @media screen and (max-width: 990px) {
    .edito-accordion__container {
      flex-direction: column;
      padding: 40px 30px;
    }
    
    .edito-accordion__title {
      width: 100%;
      text-align: center;
    }
    
    .edito-accordion__wrapper {
      max-width: 100%;
      width: 100%;
    }
  }

  @media screen and (max-width: 768px) {
    .edito-accordion__container {
      padding: 30px 20px;
    }
    
    .edito-accordion__title {
      font-size: 32px;
    }
  }
  
  /* Override parent container constraints */
  .shopify-section > .edito-accordion {
    grid-column: 1 / -1 !important;
  }
  
  .shopify-section > .edito-accordion .edito-accordion__container {
    grid-column: 1 / -1 !important;
  }
.edito-content-columns {
    overflow: hidden;
    grid-column: 1;
  }
  
  .edito-content-columns__container {
    margin: 0 auto;
    padding: 0 20px;
    width: 100%;
  }

  .edito-content-columns__title {
    font-family: "Avenir Next", sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: 32px;
    line-height: 44px;
    color: var(--text-color, #000000);
    margin: 0 0 60px 0;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 0.2em;
  }

  .edito-content-columns__content {
    display: flex;
    gap: 51px;
    align-items: center;
    min-height: 400px;
  }

  .edito-content-columns__column--1 {
    width: var(--column-1-width, 50%);
    display: flex;
    flex-direction: column;
    justify-content: center;
  }

  .edito-content-columns__column--2 {
    width: var(--column-2-width, 50%);
    display: flex;
    flex-direction: column;
    justify-content: center;
  }

  /* Styles d'image */
  .edito-content-columns__image {
    width: 100%;
  }

  .edito-content-columns__image img {
    display: block;
    max-width: var(--image-max-width, 100%);
    max-height: var(--image-max-height, none);
    width: auto;
    height: auto;
    object-fit: contain;
    border-radius: var(--image-border-radius, 0);
  }

  /* Alignement des images selon text-align du parent */
  [style*="text-align: left"] .edito-content-columns__image img {
    margin-left: 0;
    margin-right: auto;
  }

  [style*="text-align: center"] .edito-content-columns__image img {
    margin-left: auto;
    margin-right: auto;
  }

  [style*="text-align: right"] .edito-content-columns__image img {
    margin-left: auto;
    margin-right: 0;
  }

  /* Styles de texte */
  .edito-content-columns__text-content {
    width: 100%;
  }

  .edito-content-columns__text.rte {
    font-family: "Avenir Next", sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 22px;
    color: var(--text-color, #000000);
  }

  .edito-content-columns__text.rte h1,
  .edito-content-columns__text.rte h2,
  .edito-content-columns__text.rte h3,
  .edito-content-columns__text.rte h4,
  .edito-content-columns__text.rte h5,
  .edito-content-columns__text.rte h6 {
    font-family: "Avenir Next", sans-serif;
    font-weight: 600;
    margin: 0 0 20px 0;
    color: var(--text-color, #000000);
  }

  .edito-content-columns__text.rte p {
    margin: 0 0 15px 0;
  }

  .edito-content-columns__text.rte p:last-child {
    margin-bottom: 0;
  }

  .edito-content-columns__text.rte a {
    color: var(--text-color, #000000);
    text-decoration: underline;
  }

  .edito-content-columns__text.rte ul,
  .edito-content-columns__text.rte ol {
    margin: 0 0 15px 0;
    padding-left: 20px;
  }

  .edito-content-columns__text.rte li {
    margin-bottom: 5px;
  }

  /* Styles d'accordéon */
  .edito-content-columns__accordion-wrapper {
    margin-top: 30px;
  }

  .edito-content-columns__accordion-details {
    cursor: pointer;
  }

  .edito-content-columns__accordion-summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 0;
    list-style: none;
    cursor: pointer;
    user-select: none;
  }

  .edito-content-columns__accordion-summary::-webkit-details-marker {
    display: none;
  }

  .edito-content-columns__accordion-question {
    font-family: "Avenir Next", sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: 16px;
    line-height: 22px;
    color: var(--text-color, #000000);
    flex: 1;
    padding-right: 20px;
  }

  .edito-content-columns__accordion-icon {
    flex-shrink: 0;
    width: 13px;
    height: 8px;
    transition: transform 0.3s ease;
    color: var(--text-color, #000000);
  }

  .edito-content-columns__accordion-details[open] .edito-content-columns__accordion-icon {
    transform: rotate(180deg);
  }

  .edito-content-columns__accordion-content {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.3s ease;
    overflow: hidden;
  }

  .edito-content-columns__accordion-details[open] .edito-content-columns__accordion-content {
    grid-template-rows: 1fr;
  }

  .edito-content-columns__accordion-answer {
    overflow: hidden;
    padding: 0 0 20px 0;
    font-family: "Avenir Next", sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 22px;
    color: var(--text-color, #000000);
  }

  .edito-content-columns__accordion-answer.rte p {
    margin: 0 0 10px 0;
  }

  .edito-content-columns__accordion-answer.rte p:last-child {
    margin-bottom: 0;
  }

  .edito-content-columns__accordion-separator {
    border: none;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    margin: 0;
  }

  /* Responsive */
  @media screen and (max-width: 768px) {
    .edito-content-columns__title {
      font-size: 24px;
      line-height: 33px;
      margin-bottom: 40px;
    }

    .edito-content-columns__content {
      flex-direction: column;
      gap: 30px;
      min-height: auto;
    }

    .edito-content-columns__column--1,
    .edito-content-columns__column--2 {
      width: 100% !important;
    }

    .edito-content-columns__accordion-wrapper {
      margin-top: 20px;
    }
  }
.edito-header {
  padding-top: var(--section-padding-top, 100px);
  padding-bottom: var(--section-padding-bottom, 100px);
  background-color: var(--color-background, #FFFFFF);
  grid-column: 1 / -1 !important;
}

.edito-header__container {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 20px;
  width: 100%;
}

/* --- Hero Section --- */
.edito-header__hero {
  position: relative;
  min-height: 300px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  border-radius: 12px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Fil d'Ariane (sur l'image) */
.edito-header__breadcrumb {
  position: absolute;
  top: 20px;
  left: 20px;
  z-index: 3;
  color: #FFFFFF !important;
}

.breadcrumb-list {
  display: flex;
  align-items: center;
  list-style: none;
  padding: 0;
  margin: 0;
  gap: 8px;
}

.breadcrumb-item, .breadcrumb-separator {
  font-family: 'Avenir Next', sans-serif;
  font-size: 14px;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.7) !important;
}

.breadcrumb-link {
  color: inherit !important;
  text-decoration: none;
  transition: color 0.2s ease;
}

.breadcrumb-link:hover {
  color: #FFFFFF !important;
}

.breadcrumb-item--current {
  color: #FFFFFF !important;
  font-weight: 500;
}

/* Contenu du Hero (Titre + Texte centrés) */
.edito-header__hero-content {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 20px;
  max-width: 800px;
  width: 100%;
  padding: 60px 40px;
  align-items: center;
  text-align: center;
}

.edito-header__title {
  color: #FFFFFF;
  font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  font-style: normal;
  font-weight: 600;
  font-size: 32px;
  line-height: 44px;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  margin: 0;
  width: 100%;
}

.edito-header__title h1,
.edito-header__title h2,
.edito-header__title h3,
.edito-header__title h4,
.edito-header__title h5,
.edito-header__title h6 {
  font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  font-style: normal;
  font-weight: 600;
  font-size: 32px;
  line-height: 44px;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  margin: 0 0 20px 0;
  color: #FFFFFF;
}

.edito-header__title p {
  font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  font-style: normal;
  font-weight: 600;
  font-size: 32px;
  line-height: 44px;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  margin: 0;
  color: #FFFFFF;
}

.edito-header__title br {
  display: block;
  content: "";
  margin-bottom: 20px;
}

.edito-header__description {
  color: #FFFFFF;
  font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.5em;
  margin: 0;
  width: 100%;
}

/* --- Responsive Design --- */
@media screen and (max-width: 1200px) {
  .edito-header__container {
    padding: 0 30px;
  }
  .edito-header__hero-content {
    padding: 50px 30px;
    max-width: 700px;
  }
}

@media screen and (max-width: 990px) {
  .edito-header__hero {
    min-height: 250px;
  }
  .edito-header__hero-content {
    padding: 40px 25px;
    max-width: 100%;
  }
  .edito-header__title {
    font-size: 28px;
    line-height: 38px;
  }
  .edito-header__title h1,
  .edito-header__title h2,
  .edito-header__title h3,
  .edito-header__title h4,
  .edito-header__title h5,
  .edito-header__title h6,
  .edito-header__title p {
    font-size: 28px;
    line-height: 38px;
  }
}

@media screen and (max-width: 768px) {
  .edito-header {
    padding-top: 20px;
  }
  .edito-header__container {
    padding: 0 16px;
  }
  .edito-header__hero {
    min-height: 200px;
  }
  .edito-header__hero-content {
    padding: 40px 20px;
  }
  .edito-header__title {
    font-size: 24px;
    line-height: 32px;
  }
  .edito-header__title h1,
  .edito-header__title h2,
  .edito-header__title h3,
  .edito-header__title h4,
  .edito-header__title h5,
  .edito-header__title h6,
  .edito-header__title p {
    font-size: 24px;
    line-height: 32px;
  }
  .edito-header__description {
    font-size: 14px;
  }
  .edito-header__breadcrumb {
    top: 15px;
    left: 15px;
  }
}

@media screen and (max-width: 480px) {
  .edito-header__hero {
    min-height: 180px;
  }
  .edito-header__hero-content {
    padding: 40px 16px;
  }
  .edito-header__title {
    font-size: 20px;
    line-height: 28px;
  }
  .edito-header__title h1,
  .edito-header__title h2,
  .edito-header__title h3,
  .edito-header__title h4,
  .edito-header__title h5,
  .edito-header__title h6,
  .edito-header__title p {
    font-size: 20px;
    line-height: 28px;
  }
}

/* Fallback si pas d'image de fond */
.edito-header__hero:not([style*="background-image"]) {
  background: linear-gradient(135deg, #6a4f44 0%, #4a342a 100%);
}
.edito-one-column {
    overflow: hidden;
    grid-column: 1;
  }
  
  .edito-one-column__container {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    padding: 20px;
    max-width: 1440px;
    margin: 0 auto;
    width: 100%;
  }

  .edito-one-column__title {
    font-family: "The Seasons Light", serif;
    font-size: 36px;
    line-height: 1em;
    text-transform: uppercase;
    color: #000;
    margin: 0;
    width: 35%;
    padding-right: 100px;
    flex-shrink: 0;
  }
  
  .edito-one-column__content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 65%;
  }

  .edito-one-column__column {
    display: flex;
    flex-direction: column;
    gap: 20px;
    width: 100%;
    max-width: 90%; /* Largeur optimale pour une seule colonne */
  }

  .edito-one-column__column-title, .edito-one-column__content h3 {
    font-family: "Avenir Next", sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.3660000562667847em;
    text-transform: uppercase;
    color: #000;
    margin: 0;
  }

  .edito-one-column__column-text {
    font-family: "Avenir Next", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5714285714285714em;
    color: #000;
    margin: 0;
  }

  .edito-one-column__column-text p {
    margin: 0 0 1em 0;
  }

  .edito-one-column__column-text p:last-child {
    margin-bottom: 0;
  }

  @media screen and (max-width: 768px) {
    .edito-one-column__container {
      flex-direction: column;
      padding: 20px;
    }

    .edito-one-column__title {
      width: 100%;
      padding-right: 0;
      margin-bottom: 30px;
      font-size: 32px;
    }

    .edito-one-column__content {
      width: 100%;
    }

    .edito-one-column__column {
      width: 100%;
      max-width: none;
    }
  }
.edito-picto {
    overflow: hidden;
    grid-column: 1;
  }
  
  .edito-picto__container {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 20px;
    width: 100%;
  }

  .edito-picto__title {
    font-family: "Avenir Next", sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: 32px;
    line-height: 44px;
    color: var(--text-color, #000000);
    margin: 0 0 20px 0;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 0.2em;
  }

  .edito-picto__description {
    font-family: "Avenir Next", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5em;
    color: var(--text-color, #000000);
    margin: 0 0 60px 0;
    text-align: center;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
  }

  .edito-picto__description p {
    margin: 0;
  }

  .edito-picto__grid {
    display: grid;
    grid-template-columns: repeat(var(--columns-desktop, 4), 1fr);
    gap: var(--item-gap, 40px);
    align-items: start;
  }

  .edito-picto__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: var(--content-gap, 24px);
  }

  .edito-picto__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: var(--picto-size, 60px);
    height: var(--picto-size, 60px);
    flex-shrink: 0;
  }

  .edito-picto__icon-image {
    width: 100%;
    height: 100%;
    object-fit: contain;
    filter: var(--picto-color, none);
  }

  .edito-picto__content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    width: 100%;
  }

  .edito-picto__item-title {
    font-family: "Avenir Next", sans-serif;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.3;
    color: var(--text-color, #000000);
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 0.1em;
  }

  .edito-picto__item-text {
    font-family: "Avenir Next", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    color: var(--text-color, #000000);
    margin: 0;
  }

  .edito-picto__item-text p {
    margin: 0;
  }

  .edito-picto__item-text a {
    color: var(--text-color, #000000);
    text-decoration: underline;
    text-underline-offset: 2px;
  }

  .edito-picto__button {
    font-family: "Avenir Next", sans-serif;
    font-size: 14px;
    font-weight: 600;
    color: var(--text-color, #000000) !important;
    text-decoration: underline;
    text-underline-offset: 4px;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    transition: opacity 0.2s ease;
    margin-top: 8px;
  }

  .edito-picto__button:hover {
    opacity: 0.7;
  }

  /* Responsive Design */
  @media screen and (max-width: 1024px) {
    .edito-picto__grid {
      grid-template-columns: repeat(var(--columns-tablet, 2), 1fr);
      gap: calc(var(--item-gap, 40px) * 0.75);
    }
    
    .edito-picto__title {
      font-size: 28px;
      line-height: 38px;
    }
    
    .edito-picto__description {
      margin-bottom: 50px;
    }
  }

  @media screen and (max-width: 768px) {
    .edito-picto__container {
      padding: 0 20px;
    }
    
    .edito-picto__grid {
      grid-template-columns: repeat(var(--columns-mobile, 1), 1fr);
      gap: calc(var(--item-gap, 40px) * 0.6);
    }
    
    .edito-picto__title {
      font-size: 24px;
      line-height: 32px;
      margin-bottom: 16px;
    }
    
    .edito-picto__description {
      font-size: 14px;
      margin-bottom: 40px;
    }
    
    .edito-picto__item {
      gap: calc(var(--content-gap, 24px) * 0.75);
    }
    
    .edito-picto__item-title {
      font-size: 16px;
    }
    
    .edito-picto__item-text {
      font-size: 14px;
    }
    
    .edito-picto__button {
      font-size: 13px;
    }
  }

  @media screen and (max-width: 480px) {
    .edito-picto__container {
      padding: 0 16px;
    }
    
    .edito-picto__item {
      gap: calc(var(--content-gap, 24px) * 0.6);
    }
    
    .edito-picto__title {
      font-size: 20px;
      line-height: 28px;
    }
  }
.edito-text {
    overflow: hidden;
    grid-column: 1;
  }
  
  .edito-text__container {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 20px;
    width: 100%;
  }

  .edito-text__title {
    font-family: "Avenir Next", sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: 32px;
    line-height: 44px;
    color: var(--text-color, #000000);
    margin: 0 0 60px 0;
    text-align: center;
  }

  /* Layout Centré */
  .edito-text__content--centered {
    display: flex;
    justify-content: center;
  }

  .edito-text__centered-content {
    width: var(--centered-width, 60%);
    max-width: 1240px;
  }

  /* Layout Deux Colonnes */
  .edito-text__content--two-columns {
    display: flex;
    gap: 51px;
    align-items: flex-start;
  }

  .edito-text__column--1 {
    width: var(--column-1-width, 50%);
  }

  .edito-text__column--2 {
    width: var(--column-2-width, 50%);
  }

  /* Styles de texte communs */
  .edito-text__text {
    font-family: "Avenir Next", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5em;
    color: var(--text-color, #000000);
    margin: 0;
  }

  .edito-text__text h2 {
    font-family: "Avenir Next", sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: 32px;
    line-height: 44px;
    margin: 0 0 20px 0;
    /*letter-spacing: 0.2em;
    text-transform: uppercase;*/
  }

  .edito-text__text h3 {
    font-family: "Avenir Next", sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: 24px;
    line-height: 33px;
    margin: 0 0 16px 0;
    /*letter-spacing: 0.2em;
    text-transform: uppercase;*/
  }

  .edito-text__text h4 {
    font-family: "Avenir Next", sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: 20px;
    line-height: 27px;
    margin: 0 0 12px 0;
    /*letter-spacing: 0.2em;
    text-transform: uppercase;*/
  }

  .edito-text__text p {
    margin: 0 0 1em 0;
  }

  .edito-text__text p:last-child {
    margin-bottom: 0;
  }

  /* Responsive */
  @media screen and (max-width: 768px) {
    .edito-text__container {
      padding: 0 20px;
    }

    .edito-text__title {
      font-size: 28px;
      line-height: 38px;
      margin-bottom: 40px;
    }

    .edito-text__content--centered {
      justify-content: flex-start;
    }

    .edito-text__centered-content {
      width: 100%;
    }

    .edito-text__content--two-columns {
      flex-direction: column;
      gap: 30px;
    }

    .edito-text__column--1,
    .edito-text__column--2 {
      width: 100%;
    }
  }
.edito-two-columns {
    overflow: hidden;
    grid-column: 1;
  }
  
  .edito-two-columns__container {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    padding: 20px;
    max-width: 1440px;
    margin: 0 auto;
    width: 100%;
  }

  .edito-two-columns__title {
    font-family: "The Seasons Light", serif;
    font-size: 40px;
    font-weight: 300;
    line-height: 1em;
    text-transform: uppercase;
    color: {{ section.settings.text_color }};
    margin: 0;
    width: 35%;
    padding-right: 100px;
    flex-shrink: 0;
  }
  
  .edito-two-columns__content {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 51px;
    width: 65%;
  }

  .edito-two-columns__column {
    display: flex;
    flex-direction: column;
    gap: 20px;
    flex: 1;
    width: 436px;
  }

  .edito-two-columns__column-title, .edito-two-columns__content h3 {
    font-family: "Avenir Next", sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.3660000562667847em;
    text-transform: uppercase;
    color: {{ section.settings.text_color }};
    margin: 0;
  }

  .edito-two-columns__column-text {
    font-family: "Avenir Next", sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.5714285714285714em;
    color: {{ section.settings.text_color }};
    margin: 0;
  }

  .edito-two-columns__column-text p {
    margin: 0 0 1em 0;
  }

  .edito-two-columns__column-text p:last-child {
    margin-bottom: 0;
  }

  @media screen and (max-width: 768px) {
    .edito-two-columns__container {
      flex-direction: column;
      padding: 20px;
    }

    .edito-two-columns__title {
      width: 100%;
      padding-right: 0;
      margin-bottom: 30px;
      font-size: 32px;
    }

    .edito-two-columns__content {
      width: 100%;
      flex-direction: column;
      gap: 30px;
    }

    .edito-two-columns__column {
      width: 100%;
    }
  }
.edito-two-columns {
    overflow: hidden;
    grid-column: 1;
  }
  
  .edito-two-columns__container {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    padding: 20px;
    max-width: 1440px;
    margin: 0 auto;
    width: 100%;
  }

  .edito-two-columns__title {
    font-family: "The Seasons Light", serif;
    font-size: 40px;
    font-weight: 300;
    line-height: 1em;
    text-transform: uppercase;
    color: {{ section.settings.text_color }};
    margin: 0;
    width: 35%;
    padding-right: 100px;
    flex-shrink: 0;
  }
  
  .edito-two-columns__content {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 51px;
    width: 65%;
  }

  .edito-two-columns__column {
    display: flex;
    flex-direction: column;
    gap: 20px;
    flex: 1;
    width: 436px;
  }

  .edito-two-columns__column-title, .edito-two-columns__content h3 {
    font-family: "Avenir Next", sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.3660000562667847em;
    text-transform: uppercase;
    color: {{ section.settings.text_color }};
    margin: 0;
  }

  .edito-two-columns__column-text {
    font-family: "Avenir Next", sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.5714285714285714em;
    color: {{ section.settings.text_color }};
    margin: 0;
  }

  .edito-two-columns__column-text p {
    margin: 0 0 1em 0;
  }

  .edito-two-columns__column-text p:last-child {
    margin-bottom: 0;
  }

  @media screen and (max-width: 768px) {
    .edito-two-columns__container {
      flex-direction: column;
      padding: 0 20px;
    }

    .edito-two-columns__title {
      width: 100%;
      padding-right: 0;
      margin-bottom: 30px;
      font-size: 32px;
    }

    .edito-two-columns__content {
      width: 100%;
      flex-direction: column;
      gap: 30px;
    }

    .edito-two-columns__column {
      width: 100%;
    }
  }
.faq-page {
    overflow: hidden;
  }
  
  .faq-page__container {
    display: grid;
    grid-template-columns: 1fr 1.5fr;
    gap: 0;
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
  }

  .faq-page__sidebar {
    display: flex;
    align-items: start;
    justify-content: center;
    padding: 60px 70px;
    height: 852px;
  }
  
  .faq-page__sidebar-content {
    max-width: 420px;
  }

  .faq-page__title {
    font-family: "The Seasons Light", serif;
    font-size: 40px;
    font-weight: 300;
    line-height: 1;
    text-transform: uppercase;
    margin: 0 0 20px;
  }

  .faq-page__description {
    font-family: "Avenir Next", sans-serif;
    font-size: 16px;
    line-height: 1.36;
  }
  
  .faq-page__description p {
    margin: 0;
  }

  .faq-page__main {
    padding: 100px 80px;
    background-color: #fff;
    width: 100%;
    max-width: none;
  }

  .faq-page__accordion-wrapper {
    display: flex;
    flex-direction: column;
    gap: 20px;
    width: 100%;
    max-width: none;
  }

  .faq-page__block-category {
    margin-bottom: 20px;
  }
  
  .faq-page__block-category:not(:first-child) {
    margin-top: 40px;
  }
  /* Les marges personnalisées sont désormais inline */

  .faq-page__question-separator {
    border-bottom: 1px solid #91400A;
    margin: 20px 0 0 0;
    width: 100%;
  }

  .faq-page__category-title {
    font-family: "Avenir Next", sans-serif;
    font-size: 24px;
    font-weight: 600;
    line-height: 1.36;
    color: #1E1E1E;
    margin: 0;
  }
  
  .faq-page__accordion-item {
    border-top: 1px solid #91400A;
    padding-top: 20px;
  }
  
  .faq-page__accordion-item:first-of-type {
     border-top: none;
     padding-top: 0;
  }
  
  .faq-page__block-question + .faq-page__block-category {
     margin-top: 60px;
  }

  .faq-page__accordion-summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    list-style: none; /* Hide default marker */
    font-family: "Avenir Next", sans-serif;
    font-size: 16px;
    font-weight: 600;
    color: #000;
    width: 100%;
  }

  .faq-page__accordion-summary::-webkit-details-marker {
    display: none; /* Hide default marker for Chrome/Safari */
  }

  .faq-page__answer {
    padding-top: 20px;
    font-family: "Avenir Next", sans-serif;
    font-size: 16px;
    line-height: 1.36;
    color: #000;
    opacity: 0;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s cubic-bezier(0.4,0,0.2,1), opacity 0.25s;
  }
  
  .faq-page__answer p {
    margin: 0;
  }

  .faq-page__accordion-item[open] .faq-page__answer {
    opacity: 1;
    max-height: 1000px; /* valeur suffisamment grande pour la plupart des contenus */
    transition: max-height 0.3s cubic-bezier(0.4,0,0.2,1), opacity 0.25s 0.05s;
  }

  /* Custom icon */
  .faq-page__accordion-icon {
    position: relative;
    width: 14px;
    height: 14px;
    flex-shrink: 0;
    margin-left: 20px;
  }

  .faq-page__accordion-icon::before,
  .faq-page__accordion-icon::after {
    content: '';
    position: absolute;
    background-color: #000;
    transition: transform 0.25s ease-out;
  }

  .faq-page__accordion-icon::before {
    top: 50%;
    left: 0;
    width: 100%;
    height: 1px;
    transform: translateY(-50%);
  }

  .faq-page__accordion-icon::after {
    top: 0;
    left: 50%;
    width: 1px;
    height: 100%;
    transform: translateX(-50%);
  }

  details[open] > .faq-page__accordion-summary .faq-page__accordion-icon::after {
    transform: translateX(-50%) rotate(90deg);
  }
  
  details[open] > .faq-page__accordion-summary .faq-page__accordion-icon::before {
    transform: translateY(-50%) rotate(180deg);
    opacity: 0;
  }
  
  /* Responsive */
  @media screen and (max-width: 990px) {
    .faq-page__container {
      grid-template-columns: 1fr;
    }
    .faq-page__sidebar {
      padding: 40px 30px;
      text-align: center;
    }
    .faq-page__main {
      padding: 50px 30px;
    }
  }
  
  /* Override parent container constraints */
  .shopify-section > .faq-page {
    grid-column: 1 / -1 !important;
  }
  
  .shopify-section > .faq-page .faq-page__container {
    grid-column: 1 / -1 !important;
  }
.featured-collection {
    padding-top: var(--padding-top, 60px);
    padding-bottom: var(--padding-bottom, 60px);
  }
  
  .featured-collection__container {
    max-width: var(--page-width);
    margin: 0 auto;
    padding: 0 var(--page-margin);
  }
  
  /* Section Header */
  .section-header {
    text-align: center;
    margin-bottom: 3rem;
  }
  
  .section-title {
    font-size: clamp(1.75rem, 4vw, 2.5rem);
    font-weight: bold;
    margin: 0 0 1rem 0;
    color: var(--color-foreground);
  }
  
  .section-description {
    font-size: 1.125rem;
    line-height: 1.6;
    color: rgba(var(--color-foreground), 0.8);
    margin: 0 0 1.5rem 0;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
  }
  
  .section-link {
    margin-top: 1.5rem;
  }
  
  .section-link .btn {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
  }
  
  /* Products Grid */
  .featured-collection__products {
    position: relative;
  }
  
  .product-grid {
    display: grid;
    grid-template-columns: repeat(var(--columns-mobile, 2), 1fr);
    gap: 1.5rem;
  }
  
  .product-card-wrapper {
    position: relative;
  }
  
  /* Carousel Specific */
  .featured-collection__products--carousel {
    overflow: hidden;
    position: relative;
  }
  
  .featured-collection__products--carousel .product-grid {
    display: flex;
    gap: 1.5rem;
    transition: transform 0.5s ease;
  }
  
  .carousel-slide {
    flex: 0 0 calc((100% - (var(--columns-mobile, 2) - 1) * 1.5rem) / var(--columns-mobile, 2));
  }
  
  /* Carousel Controls */
  .carousel-controls {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    transform: translateY(-50%);
    display: flex;
    justify-content: space-between;
    pointer-events: none;
    z-index: 2;
  }
  
  .carousel-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    background: var(--color-background);
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-radius: 50%;
    cursor: pointer;
    transition: all 0.3s ease;
    pointer-events: auto;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  }
  
  .carousel-btn:hover {
    background: var(--color-accent, #000);
    color: var(--color-background);
    transform: scale(1.1);
  }
  
  .carousel-btn--prev {
    transform: translateX(-50%);
  }
  
  .carousel-btn--next {
    transform: translateX(50%);
  }
  
  .carousel-btn:disabled {
    opacity: 0.5;
    cursor: not-allowed;
    transform: scale(1);
  }
  
  /* Carousel Dots */
  .carousel-dots {
    display: flex;
    justify-content: center;
    gap: 0.5rem;
    margin-top: 2rem;
  }
  
  .carousel-dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    border: none;
    background: rgba(0, 0, 0, 0.2);
    cursor: pointer;
    transition: all 0.3s ease;
  }
  
  .carousel-dot--active,
  .carousel-dot:hover {
    background: var(--color-accent, #000);
  }
  
  /* Empty State */
  .featured-collection__empty {
    text-align: center;
    padding: 3rem 1rem;
    color: rgba(var(--color-foreground), 0.7);
  }
  
  /* Responsive */
  @media screen and (min-width: 768px) {
    .product-grid {
      grid-template-columns: repeat(var(--columns-desktop, 4), 1fr);
      gap: 2rem;
    }
    
    .carousel-slide {
      flex: 0 0 calc((100% - (var(--columns-desktop, 4) - 1) * 2rem) / var(--columns-desktop, 4));
    }
    
    .featured-collection__products--carousel .product-grid {
      gap: 2rem;
    }
  }
  
  @media screen and (min-width: 1024px) {
    .carousel-controls {
      left: -2rem;
      right: -2rem;
    }
  }
.footer {
    background-color: var(--footer-bg, #B45C31);
    color: var(--footer-text, #FFFFFF);
    position: relative;
    width: 100%;
  }

  .footer__main {
    position: relative;
    padding: 59px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 130px;
    max-width: 100%;
    margin: 0 auto;
  }

  /* Logo en filigrane */
  .footer__logo-watermark {
    position: absolute;
    left: 50px;
    top: 263px;
    width: 307px;
    height: 321px;
    opacity: 0.45;
    pointer-events: none;
  }

  .footer__logo-watermark-icon {
    width: 100%;
    height: 100%;
  }

  /* Contenu principal */
  .footer__content {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 40px;
    width: 100%;
    max-width: 100%;
    position: relative;
    z-index: 1;
  }

  /* Section Newsletter */
  .footer__newsletter {
    background-color: #421F07;
    border-radius: 2px;
    padding: 50px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 160px;
    width: 100%;
  }

  .footer__newsletter-content {
    display: flex;
    flex-direction: column;
    gap: 20px;
    width: 323px;
  }

  .footer__newsletter-title {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-weight: 600;
    font-size: 24px;
    line-height: 1.366;
    margin: 0;
    color: var(--footer-text, #FFFFFF);
  }

  .footer__newsletter-description {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.366;
    margin: 0;
    color: var(--footer-text, #FFFFFF);
  }

  .footer__newsletter-form {
    display: flex;
    align-items: center;
    gap: 12px;
  }

  .footer__newsletter-input-wrapper {
    display: flex;
    align-items: center;
    gap: 12px;
  }

  .footer__newsletter-input-container {
    display: flex;
    flex-direction: column;
    /*gap: 20px;*/
    position: relative;
  }

  .footer__newsletter-input {
    background: transparent;
    border: none;
    color: var(--footer-text, #FFFFFF);
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.366;
    padding: 8px 4px 9px;
    outline: none;
    width: 391px;
  }

  .footer__newsletter-input::placeholder {
    color: var(--footer-text, #FFFFFF);
    opacity: 1;
    font-style: italic;
  }

  .footer__newsletter-underline {
    width: 391px;
    height: 1px;
    background-color: var(--footer-text, #FFFFFF);
    transition: background-color 0.2s ease;
  }

  .footer__newsletter-input--invalid + .footer__newsletter-underline {
    background-color: #ff4444;
  }

  .footer__newsletter-input--valid + .footer__newsletter-underline {
    background-color: #44ff44;
  }

  .footer__newsletter-submit {
    background-color: #FFFFFF;
    border: 1px solid #FFFFFF;
    border-radius: 2px;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    flex-shrink: 0;
  }

  .footer__newsletter-submit:hover {
    background-color: #F5F5F5;
    border-color: #F5F5F5;
  }

  .footer__newsletter-submit:disabled {
    opacity: 0.6;
    cursor: not-allowed;
  }

  .footer__newsletter-submit--loading {
    pointer-events: none;
  }

  .footer__newsletter-arrow {
    width: 18px;
    height: 16px;
    color: #421F07;
    font-size: 14px;
  }

  /* Section Navigation */
  .footer__nav-section {
    display: flex;
    gap: 18px;
    align-items: flex-start;
  }

  .footer__nav-columns {
    display: flex;
    gap: 17px;
  }

  .footer__nav-column {
    display: flex;
    flex-direction: column;
    gap: 2px;
    width: 315px;
  }

  .footer__nav-column:last-child {
    width: 318px;
  }

  .footer__nav-link {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-weight: 600;
    font-size: 16px;
    line-height: 1.366;
    color: var(--footer-text, #FFFFFF);
    text-decoration: none;
    padding: 8px 0 9px;
    position: relative;
    display: inline-block;
    transition: all 0.2s ease;
    width: fit-content;
  }

  .footer__nav-link:hover,
  .footer__nav-link--active {
    opacity: 0.8;
  }

  .footer__nav-link::after {
    content: '';
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 1px;
    background: var(--footer-text, #FFFFFF);
    transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  }

  .footer__nav-link:hover::after,
  .footer__nav-link--active::after {
    width: 100%;
  }

  /* Section Informations */
  .footer__info {
    display: flex;
    flex-direction: column;
    gap: 18px;
    max-width: 426px;
  }

  .footer__description {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.366;
    color: #421F07;
    margin: 0;
  }

  .footer__social {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 20px;
    text-align: left;
  }

  .footer__social-icons {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 17px;
    flex-wrap: wrap;
  }

  .footer__social-label {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-weight: 600;
    font-size: 16px;
    line-height: 1.366;
    color: #421F07;
    display: block;
    margin-bottom: 0;
  }

  .footer__social-link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    transition: opacity 0.2s ease;
  }

  .footer__social-link:hover {
    opacity: 0.8;
  }

  .footer__social-icon {
    width: 28px;
    height: 28px;
    color: #421F07;
  }

  /* Footer légal */
  .footer__legal {
    display: flex;
    gap: 10px;
    justify-content: center;
    align-items: center;
    padding: 20px 59px;
    background-color: var(--footer-bg, #B45C31);
  }

  .footer__legal-link {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.366;
    color: var(--footer-text, #FFFFFF);
    text-decoration: none;
    transition: opacity 0.2s ease;
  }

  .footer__legal-link:hover {
    opacity: 0.8;
  }

  .footer__legal-separator {
    color: var(--footer-text, #FFFFFF);
    opacity: 0.6;
    margin: 0 10px;
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.366;
  }

  /* Responsive Design */
  @media screen and (max-width: 1200px) {
    .footer__main {
      padding: 40px 30px;
      gap: 80px;
    }

    .footer__logo-watermark {
      left: 20px;
      top: 200px;
      width: 250px;
      height: 260px;
    }

    .footer__newsletter {
      flex-direction: column;
      gap: 40px;
      text-align: center;
    }

    .footer__newsletter-content {
      width: 100%;
      max-width: 400px;
    }

    .footer__newsletter-input {
      width: 100%;
      max-width: 300px;
    }

    .footer__newsletter-underline {
      width: 100%;
      max-width: 300px;
    }

    .footer__nav-section {
      flex-direction: column;
      gap: 30px;
      width: 100%;
    }

    .footer__nav-columns {
      justify-content: center;
      flex-wrap: wrap;
      gap: 30px;
    }

    .footer__nav-column {
      width: auto;
      min-width: 250px;
    }

    .footer__info {
      text-align: center;
      align-items: center;
      max-width: 100%;
    }
  }

  @media screen and (max-width: 768px) {
    .footer__main {
      padding: 30px 20px;
      gap: 50px;
      width: 100%;
      max-width: 100%;
    }

    .footer__logo-watermark {
      display: none;
    }

    .footer__newsletter {
      padding: 30px 20px;
      gap: 30px;
      width: 100%;
    }

    .footer__newsletter-form{
      width: 100%;
    }

    .footer__newsletter-title {
      font-size: 20px;
    }

    .footer__nav-columns {
      flex-direction: column;
      gap: 0;
      width: 100%;
    }

    .footer__nav-column {
      width: 100%;
      text-align: center;
    }

    .footer__nav-column + .footer__nav-column {
      margin-top: 0;
    }

    .footer__nav-column ul {
      margin-bottom: 0;
    }

    .footer__social {
      flex-direction: column;
      justify-content: center;
      align-items: center;
      gap: 15px;
      margin-top: 20px;
      text-align: center;
    }
    
    .footer__social-label {
      display: block;
      margin-bottom: 10px;
    }

    .footer__social-title {
      margin-bottom: 0;
    }

    .footer__legal {
      flex-direction: column;
      gap: 15px;
      text-align: center;
      padding: 20px;
      width: 100%;
    }

    .footer__legal-separator {
      display: none;
    }
  }

  @media screen and (max-width: 480px) {
    .footer__newsletter-input-wrapper {
      flex-direction: row;
      gap: 10px;
      width: 100%;
    }

    .footer__newsletter-input-container {
      width: auto;
      flex: 1;
    }

    .footer__newsletter-input {
      width: 100%;
    }

    .footer__newsletter-underline {
      width: 100%;
    }

    .footer__main,
    .footer__newsletter,
    .footer__nav,
    .footer__info {
      width: 100%;
      max-width: 100%;
      box-sizing: border-box;
    }
  }
.form-section {
    overflow: hidden;
    grid-column: 1;
  }
  
  .form-section__container {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    padding: 20px;
    max-width: 1440px;
    margin: 0 auto;
    width: 100%;
  }

  .form-section__title {
    font-family: "The Seasons Light", serif;
    font-size: 36px;
    line-height: 1em;
    text-transform: uppercase;
    margin: 0;
    width: 35%;
    padding-right: 100px;
    flex-shrink: 0;
  }
  
  .form-section__content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 65%;
  }

  .form-section__column {
    display: flex;
    flex-direction: column;
    gap: 20px;
    width: 100%;
    max-width: 90%;
  }

  .form-section__column-title {
    font-family: "Avenir Next", sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.3660000562667847em;
    text-transform: uppercase;
    margin: 0;
  }

  .form-section__app-container {
    width: 100%;
  }

  @media screen and (max-width: 768px) {
    .form-section__container {
      flex-direction: column;
      padding: 20px;
    }

    .form-section__title {
      width: 100%;
      padding-right: 0;
      margin-bottom: 30px;
      font-size: 32px;
    }

    .form-section__content {
      width: 100%;
    }

    .form-section__column {
      width: 100%;
      max-width: none;
    }
  }
.header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 1000;
    background: transparent;
    transition: all 0.2s ease-out;

    .icon {
      width: 18px;
    }

    /* État de hover géré par JavaScript pour éviter les conflits */
    &.header-hovering {
      .header__main {
        background: rgba(255, 255, 255, 0.95);
        backdrop-filter: blur(10px);

        /* Sélecteurs spécifiques - excluent les méga menus */
        > .header__container > .header__top-row {
          color: black;

          .search-input,
          .announcement-bar__text,
          .logo-text,
          .header__icon-text,
          .header__icon-link {
            color: currentColor;
          }
        }

        > .header__container > .header__navigation > .nav-list {
          .nav-link {
            color: black !important;

            &:hover,
            &--active {
              color: rgb(181, 93, 49) !important;
            }

            &::after {
              content: '';
              position: absolute;
              bottom: 4px;
              left: 50%;
              transform: translateX(-50%);
              width: 0;
              height: 1px;
              background: rgb(181, 93, 49);
              transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1);
            }

            &:hover::after,
            &--active::after {
              width: calc(100% - 16px);
            }
          }
        }

        .search-input {
          border-bottom: 1px solid black;

          &::placeholder {
            color: rgba(0, 0, 0, 0.6);
          }
        }

        .logo-image {
          filter: brightness(0);
        }

        .header__icon-link:hover {
          background: rgba(181, 93, 49, 0.1);
          color: rgb(181, 93, 49) !important;

          .header__icon-text {
            color: rgb(181, 93, 49) !important;
          }
        }

        .cart-count {
          border-color: rgba(0, 0, 0, 0.1);
        }
      }
    }
    
    /* État scrolled */
    &.scrolled {
      .header__main {
        background: rgba(255, 255, 255, 0.98);
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
      }
      
      .logo-image--default {
        display: none !important;
      }
      
      .logo-image--scrolled {
        display: block !important;
      }
    }



    &.scrolled {
      .header__announcement {
        height: 0;
        overflow: hidden;
        opacity: 0;
      }

      .header__main {
        height: 80px;
      }

      .header__top-row {
        gap: 200px;
      }

      .header__search {
        width: 180px;
        margin-right: 120px;
      }

      .logo-image {
        max-height: 32px !important;
      }

      .header__navigation {
        display: none;
      }

      .header__main {
        background: rgba(255, 255, 255, 0.95);
        backdrop-filter: blur(10px);

        /* Sélecteurs spécifiques - excluent les méga menus */
        > .header__container > .header__top-row {
          .search-input,
          .announcement-bar__text,
          .logo-text,
          .header__icon-text,
          .header__icon-link {
            color: black !important;
          }
        }

        > .header__container > .header__navigation > .nav-list {
          .nav-link {
            color: black !important;

            &:hover,
            &--active {
              color: rgb(181, 93, 49) !important;
            }
          }
        }

        .search-input {
          border-bottom: 1px solid currentColor;

          &::placeholder {
            color: currentColor;
            opacity: 0.6;
          }
        }

        .search-submit {
          color: currentColor;
        }

        .logo-image {
          filter: brightness(0);
        }

        .header__icon-link:hover {
          background: rgba(181, 93, 49, 0.1);
          color: rgb(181, 93, 49) !important;

          .header__icon-text {
            color: rgb(181, 93, 49) !important;
          }
        }

        .cart-count {
          border-color: rgba(0, 0, 0, 0.1);
        }
      }
    }
  }

  /* Announcement Bar */
  .header__announcement {
    background: rgb(181, 93, 49);
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    width: 100%;
  }

  .announcement-bar {
    width: 100%;
    display: flex;
    justify-content: center;

    .announcement-bar__text {
      font-family: var(--font-navigation);
      color: white;
      font-size: 14px;
      text-transform: uppercase;
      font-weight: var(--font-weight-normal);
      margin: 0;
      text-align: center;
    }
  }

  /* Main Header */
  .header__main {
    height: 140px;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0) 100%);
    display: flex;
    align-items: center;
    width: 100%;
    transition: all 0.2s ease-out;
  }

  .header__container {
    width: 100%;
    margin: 0 auto;
    padding: 0 60px;
    display: flex;
    flex-direction: column;
    gap: 24px;
    transition: all 0.2s ease-out;
  }

  /* Top Row */
  .header__top-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0;
    height: 48px;
    width: 100%;
    color: white;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  }

  /* Search */
  .header__search {
    flex-shrink: 0;
    width: 300px;
    border-radius: 0;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  }

  .search-input-wrapper {
    position: relative;
    display: flex;
    align-items: center;
  }

  .search-input {
    width: 100%;
    background: transparent;
    border: none;
    border-bottom: 1px solid currentColor;
    border-radius: 0;
    color: currentColor;
    font-family: var(--font-navigation);
    font-size: 12px;
    font-weight: var(--font-weight-normal);
    padding: 12px 0;
    outline: none;
    transition: all 0.2s ease;

    &::placeholder {
      color: currentColor;
      opacity: 0.7;
      font-family: var(--font-navigation);
    }

    &:focus {
      border-bottom-color: rgb(181, 93, 49);
    }
  }

  .search-submit {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    border-bottom: 1px solid transparent;
    color: currentColor;
    cursor: pointer;
    padding: 12px 0 12px 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
    width: auto;
    height: auto;

    &:hover {
      color: rgb(181, 93, 49);
    }

    svg {
      width: 14px;
      height: 14px;
    }
  }

  /* États scrolled et hover pour la recherche */
  .header.scrolled,
  .header.header-hovering {
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.05);

    .search-input:focus {
      border-bottom-color: rgb(181, 93, 49);
    }

    .search-submit:hover {
      color: rgb(181, 93, 49);
      background: rgba(181, 93, 49, 0.1);
    }

    .nav-link {
      &::after {
        content: '';
        position: absolute;
        bottom: 2px;
        left: 50%;
        transform: translateX(-50%);
        width: 0;
        height: 1px;
        background: rgb(181, 93, 49);
        transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1);
      }

      &:hover::after,
      &--active::after {
        width: calc(100% - 16px);
      }
    }
  }

  /* Logo */
  .header__logo {
    flex-shrink: 0;
    display: flex;
    justify-content: center;
    width: 230px;
  }

  .logo-link {
    display: block;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  }

  .logo-image {
    display: block;
    max-width: 100%;
    height: auto;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  }

  .logo-image--default {
    display: block;
  }

  .logo-image--scrolled {
    display: none;
  }

  .header.scrolled .logo-image--default {
    display: none;
  }

  .header.scrolled .logo-image--scrolled {
    display: block;
  }

  .logo-text {
    font-family: var(--font-heading);
    color: currentColor;
    font-size: 24px;
    font-weight: var(--font-weight-bold);
    text-decoration: none;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  }

  .logo-demo {
    color: white;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  }

  /* Logo demo state spécifique pour le hover */
  .header.header-hovering .logo-demo,
  .header.scrolled .logo-demo {
    color: black !important;
  }

  /* Header Icons */
  .header__icons {
    display: flex;
    align-items: center;
    gap: 24px;
    flex-shrink: 0;
    width: 300px;
    justify-content: flex-end;
  }

  .header__icon-group {
    display: flex;
    align-items: center;
    gap: 6px;

    &:hover {
      .header__icon-link {
        color: rgb(181, 93, 49);
      }

      .header__icon-text {
        color: rgb(181, 93, 49);
      }
    }
  }

  .header__icon-link {
      color: currentColor;
      text-decoration: none;
      display: flex;
      align-items: center;
      gap: 8px;
      position: relative;
      padding: 5px;
      border-radius: 8px;
      transition: all 0.2s ease-out;
      background: transparent;
      border: none;
      cursor: pointer;

      &:hover {
        background: rgba(181, 93, 49, 0.1);
        color: rgb(181, 93, 49);
        transform: translateY(-1px);

        .header__icon-text {
          color: rgb(181, 93, 49);
        }
      }

      svg {
         width: 24px;
         height: 24px;
         transition: all 0.2s ease;
       }
     }
 
     .header__icon-link--shop svg {
       width: 24px;
       height: 24px;
     }

  .header__icon-text {
    font-family: var(--font-navigation);
    font-size: 11px;
    font-weight: var(--font-weight-normal);
    color: currentColor;
    white-space: nowrap;
    transition: color 0.2s ease;
  }

  .header__account-icons {
    display: flex;
    align-items: center;
    gap: 8px;
  }

  .header__cart-icon-wrapper {
    position: relative;
  }

  /* Cart Count */
  .cart-count {
    position: absolute;
    top: 2px;
    right: 2px;
    background: rgb(181, 93, 49);
    color: white;
    border-radius: 50%;
    width: 16px;
    height: 16px;
    font-size: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    border: 2px solid rgba(0, 0, 0, 0.8);
  }

  /* Navigation */
  .header__navigation {
    display: flex;
    justify-content: center;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
  }

  .header__mega-menus-container {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    pointer-events: none;
  }

  .header__mega-menus-container > * {
    pointer-events: auto;
  }

  .nav-list {
    display: flex;
    align-items: center;
    gap: 28px;
    list-style: none;
    margin: 0;
    padding: 0;
  }

  .nav-link {
    font-family: var(--font-navigation);
    color: white;
    text-decoration: none;
    font-size: 14px;
    font-weight: var(--font-weight-normal);
    position: relative;
    padding: 8px 12px;
    border-radius: 6px;
    transition: all 0.15s ease-out;
  }

  /* Styles pour les spans avec mega menu - garder l'effet visuel mais désactiver le clic */
  span.nav-link {
    cursor: pointer;
    pointer-events: auto;
  }

  span.nav-link:hover {
    color: rgb(181, 93, 49);
    transform: translateY(-1px);
  }

  span.nav-link::after {
    content: '';
    position: absolute;
    bottom: 4px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 1px;
    background: rgb(181, 93, 49);
    transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  }

  span.nav-link:hover::after {
    width: calc(100% - 16px);
  }

  /* Styles de survol universels pour tous les états */
  .nav-link:hover,
  .nav-link--active {
    /*color: rgb(181, 93, 49) !important;*/
    transform: translateY(-1px);
  }

  .nav-link::after {
    content: '';
    position: absolute;
    bottom: 4px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 1px;
    background: rgb(181, 93, 49);
    transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  }

  .nav-link:hover::after,
  .nav-link--active::after {
    width: calc(100% - 16px);
  }

  /* Force l'affichage de l'élément after dans tous les états */
  .header .nav-link::after {
    content: '' !important;
    position: absolute !important;
    bottom: 4px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 0 !important;
    height: 1px !important;
    background: rgb(181, 93, 49) !important;
    transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
  }

  .header .nav-link:hover::after,
  .header .nav-link--active::after {
    width: calc(100% - 16px) !important;
  }

  /* S'assurer que les liens de navigation utilisent bien les couleurs du header */
  .header:not(.header-hovering):not(.scrolled) .nav-link {
    color: white;

    &:hover,
    &--active {
      color: rgb(181, 93, 49);
    }

    &::after {
      content: '';
      position: absolute;
      bottom: 2px;
      left: 50%;
      transform: translateX(-50%);
      width: 0;
      height: 1px;
      background: rgb(181, 93, 49);
      transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    }

    &:hover::after,
    &--active::after {
      width: calc(100% - 16px);
    }
  }

  /* Mobile Header - Hidden by default on desktop */
  .header__mobile {
    display: none;
    position: fixed;
    top: 30px; /* Below announcement bar */
    left: 0;
    right: 0;
    width: 100%;
    z-index: 1000;
    background: white;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  }

  .mobile-header__container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 20px;
    height: 60px;
    min-height: 60px;
    flex-shrink: 0;
  }

  /* Mobile Menu Toggle - Hidden by default on desktop, no special positioning */
  .mobile-menu-toggle {
    display: none; /* Hidden by default on desktop */

    .menu-icon {
      display: block;
    }

    .close-icon {
      display: none;
    }

    &.active {
      .menu-icon {
        display: none;
      }

      .close-icon {
        display: block;
      }
    }
  }

  /* Mobile Logo - Left aligned */
  .mobile-header__logo {
    display: flex;
    align-items: center;
    flex-shrink: 0;
    margin-right: auto;

    .logo-link {
      display: block;
    }

    .mobile-logo-image {
      max-height: 28px;
      width: auto;
      filter: brightness(0);
    }
  }

  /* Mobile Header Icons - Right side */
  .mobile-header__icons {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
  }

  .mobile-header__icon {
    color: #333;
    text-decoration: none;
    padding: 12px;
    border-radius: 8px;
    transition: all 0.2s ease;
    position: relative;
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;

    &:hover {
      background: rgba(181, 93, 49, 0.1);
      color: rgb(181, 93, 49);
    }

    svg {
      width: 20px;
      height: 20px;
    }
  }

  /* Button specific resets for mobile menu toggle */
  button.mobile-header__icon {
    background: none !important;
    border: none !important;
    cursor: pointer;
    font: inherit;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    box-shadow: none !important;
  }
  
  /* Specific styles for mobile menu toggle buttons */
  .mobile-menu-toggle,
  .mobile-menu-close {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
  }

  .mobile-header__cart {
    position: relative;
  }

  .mobile-cart-count {
    position: absolute;
    top: 2px;
    right: 2px;
    background: rgb(181, 93, 49);
    color: white;
    border-radius: 50%;
    width: 16px;
    height: 16px;
    font-size: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    border: 2px solid white;
  }

  /* Mobile Menu Overlay - Does not cover header */
  .mobile-menu-overlay {
    position: fixed;
    top: 90px; /* Start below header */
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.6);
    z-index: 1002;
    opacity: 0;
    visibility: hidden;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    pointer-events: none;

    &.active {
      opacity: 1;
      visibility: visible;
      pointer-events: auto;
    }
  }

  /* Mobile Menu Container */

  /* Mobile Menu Amélioré avec animations */
/* Mobile Menu Amélioré avec animations */
.mobile-menu {
  position: fixed;
  top: 90px;
  left: 0;
  width: 100vw;
  height: calc(100vh - 90px);
  background: white;
  z-index: 1003;
  transform: translateX(-100%);
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  overflow: hidden;
  visibility: hidden;
}

.mobile-menu.active {
  transform: translateX(0);
  visibility: visible;
}

/* Header du menu mobile */
.mobile-menu__header {
  position: sticky;
  top: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 20px;
  min-height: 60px;
  background: white;
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
  z-index: 10;
}

/* Bouton retour stylisé */
.mobile-menu__back {
  background: none;
  border: none;
  color: #333;
  cursor: pointer;
  padding: 8px 12px;
  transition: all 0.2s ease;
  font-family: var(--font-navigation);
  font-size: 15px;
  font-weight: 400;
  display: flex;
  align-items: center;
  gap: 6px;
  border-radius: 8px;
}

.mobile-menu__back:hover {
  background: rgba(181, 93, 49, 0.08);
  color: rgb(181, 93, 49);
}

.mobile-menu__back svg {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}

/* Titre du menu */
.mobile-menu__title {
  font-family: var(--font-heading);
  margin: 0;
  font-size: 18px;
  font-weight: 600;
  color: #333;
  flex: 1;
  text-align: center;
}

/* Bouton fermer */
.mobile-menu__close {
  background: none;
  border: none;
  color: #333;
  cursor: pointer;
  padding: 8px;
  border-radius: 8px;
  transition: all 0.2s ease;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.mobile-menu__close:hover {
  background: rgba(181, 93, 49, 0.08);
  transform: rotate(90deg);
}

.mobile-menu__close svg {
  width: 20px;
  height: 20px;
}

/* Contenu du menu */
.mobile-menu__content {
  height: calc(100% - 60px);
  overflow-y: auto;
  overflow-x: hidden;
  position: relative;
  background: white;
}

/* Animation des panneaux */
.mobile-menu__panel {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  min-height: 100%;
  padding: 24px 20px 40px;
  background: white;
  transform: translateX(100%);
  transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);
  opacity: 0;
  visibility: hidden;
}

.mobile-menu__panel.active {
  transform: translateX(0);
  opacity: 1;
  visibility: visible;
}

.mobile-menu__panel.prev {
  transform: translateX(-30%);
  opacity: 0.3;
  visibility: visible;
}

/* Liste de navigation mobile */
.mobile-nav-list {
  list-style: none;
  margin: 0;
  padding: 0;
  animation: fadeInUp 0.5s ease;
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.mobile-nav-item {
  margin-bottom: 8px;
  animation: slideInRight 0.4s ease backwards;
}

.mobile-nav-item:nth-child(1) { animation-delay: 0.05s; }
.mobile-nav-item:nth-child(2) { animation-delay: 0.1s; }
.mobile-nav-item:nth-child(3) { animation-delay: 0.15s; }
.mobile-nav-item:nth-child(4) { animation-delay: 0.2s; }
.mobile-nav-item:nth-child(5) { animation-delay: 0.25s; }
.mobile-nav-item:nth-child(6) { animation-delay: 0.3s; }

@keyframes slideInRight {
  from {
    opacity: 0;
    transform: translateX(30px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

/* Liens de navigation mobile */
.mobile-nav-link {
  font-family: var(--font-navigation);
  color: #333;
  text-decoration: none;
  font-size: 16px;
  font-weight: 400;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px;
  margin: 0 -20px;
  border: none;
  background: transparent;
  cursor: pointer;
  width: calc(100% + 40px);
  text-align: left;
  transition: all 0.2s ease;
  position: relative;
}

.mobile-nav-link span {
  flex: 1;
}

.mobile-nav-link:hover {
  background: rgba(181, 93, 49, 0.08);
  color: rgb(181, 93, 49);
}

/* Lien "Voir tous" */
.mobile-nav-link--all {
  background: rgba(181, 93, 49, 0.08);
  color: rgb(181, 93, 49);
  font-weight: 500;
  margin-bottom: 20px;
  border-radius: 8px;
}

.mobile-nav-link--all:hover {
  background: rgba(181, 93, 49, 0.15);
}

/* Liens avec sous-menu */
.mobile-nav-link--with-submenu svg {
  width: 16px;
  height: 16px;
  transition: transform 0.2s ease;
  color: rgba(181, 93, 49, 0.7);
  flex-shrink: 0;
  margin-left: 8px;
}

.mobile-nav-link--with-submenu:hover svg {
  transform: translateX(4px);
  color: rgb(181, 93, 49);
}

/* Sous-catégories */
.mobile-nav-link--subcategory {
  font-size: 15px;
  color: #666;
  padding-left: 32px;
}

.mobile-nav-link--subcategory:hover {
  color: rgb(181, 93, 49);
  background: rgba(181, 93, 49, 0.05);
}

/* Collections avec images */
.mobile-collections-wrapper {
  padding: 0;
  animation: fadeIn 0.4s ease;
}

@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

.mobile-collections-grid {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 0 20px 40px;
  animation: fadeInUp 0.5s ease;
}

.mobile-collection-item {
  display: flex;
  align-items: center;
  text-decoration: none;
  color: #333;
  background: white;
  border-radius: 12px;
  overflow: hidden;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  animation: slideInUp 0.4s ease backwards;
}

.mobile-collection-item:nth-child(1) { animation-delay: 0.1s; }
.mobile-collection-item:nth-child(2) { animation-delay: 0.15s; }
.mobile-collection-item:nth-child(3) { animation-delay: 0.2s; }
.mobile-collection-item:nth-child(4) { animation-delay: 0.25s; }
.mobile-collection-item:nth-child(5) { animation-delay: 0.3s; }
.mobile-collection-item:nth-child(6) { animation-delay: 0.35s; }

@keyframes slideInUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.mobile-collection-item:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
}

.mobile-collection-image {
  width: 120px;
  height: 120px;
  max-height: 250px;
  background: #f5f5f5;
  flex-shrink: 0;
  overflow: hidden;
}

.mobile-collection-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}

.mobile-collection-item:hover .mobile-collection-image img {
  transform: scale(1.05);
}

.mobile-collection-image--placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, rgba(181, 93, 49, 0.1) 0%, rgba(181, 93, 49, 0.05) 100%);
  color: rgb(181, 93, 49);
  font-size: 36px;
  font-weight: 600;
}

.mobile-collection-title {
  flex: 1;
  padding: 20px;
  font-family: var(--font-navigation);
  font-size: 16px;
  font-weight: 500;
  color: #333;
  transition: color 0.2s ease;
}

.mobile-collection-item:hover .mobile-collection-title {
  color: rgb(181, 93, 49);
}

/* Animation du toggle hamburger */
.mobile-menu-toggle {
  transition: transform 0.3s ease;
}

.mobile-menu-toggle.active {
  transform: rotate(180deg);
}

.mobile-menu-toggle .menu-icon,
.mobile-menu-toggle .close-icon {
  transition: opacity 0.3s ease, transform 0.3s ease;
}

.mobile-menu-toggle .menu-icon {
  display: block;
}

.mobile-menu-toggle .close-icon {
  display: none;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.mobile-menu-toggle.active .menu-icon {
  display: none;
  opacity: 0;
  transform: rotate(-180deg);
}

.mobile-menu-toggle.active .close-icon {
  display: block;
  opacity: 1;
  transform: translate(-50%, -50%) rotate(0);
}

  /* Méga Menus */
  .header__mega-menus {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%) translateY(-10px);
    width: 1400px;
    background: white;
    border-radius: 4px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.15);
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 1000;
    max-width: calc(100vw - 40px);
  }

  /* Isolation des styles des méga menus */
  .mega-menu-bijoux,
  .mega-menu-collections,
  .mega-menu-cadeaux {
    /* Reset des propriétés qui pourraient être affectées par le header */
    * {
      color: inherit !important;
    }
    
    /* Préservation des couleurs spécifiques aux méga menus */
    .mega-menu-bijoux__category-title,
    .mega-menu-cadeaux__category-title,
    .mega-menu-collections__title,
    .mega-menu-bijoux__sublink,
    .mega-menu-cadeaux__main-title,
    .mega-menu-cadeaux__description {
      color: #000000 !important;
    }
    
    .mega-menu-bijoux__category-item--active .mega-menu-bijoux__category-title,
    .mega-menu-cadeaux__category-item--active .mega-menu-cadeaux__category-title {
      color: #B45C31 !important;
    }
    
    .mega-menu-collections__title {
      color: #FFFFFF !important;
    }
    
    .mega-menu-cadeaux__cta {
      color: #ffffff !important;
      background: #B45C31 !important;
    }
  }

  .nav-item:hover .header__mega-menus {
    opacity: 1;
    visibility: visible;
    transform: translateX(-50%) translateY(0);
  }

  .header__mega-menus__content {
    display: flex;
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    min-height: 400px;
    position: relative;
  }

  .header__mega-menus__content::before {
    content: '';
    position: absolute;
    left: -100vw;
    top: 0;
    bottom: 0;
    width: 100vw;
    background-color: #E8E8E8;
    z-index: -1;
  }

  /* Méga Menu Bijoux */
  .header__mega-menus__content--bijoux {
    .header__mega-menus__section {
      &:first-child {
        background: #E8E8E8;
        width: 300px;
        padding: 30px 60px 60px;
      }
      
      &:nth-child(2) {
        flex: 1;
        padding: 30px 30px 60px 60px;
      }
      
      &:last-child {
        width: 565px;
        padding: 30px 60px 60px;
        position: relative;
      }
    }
  }

  .header__mega-menus__categories {
    display: flex;
    flex-direction: column;
    gap: 14px;
  }

  .header__mega-menus__category-item {
    cursor: pointer;
    padding: 8px 0 9px;
    opacity: 0.5;
    transition: all 0.2s ease;

    &--active,
    &:hover {
      opacity: 1;
    }

    &--active .header__mega-menus__category-title {
      position: relative;
      
      &::after {
        content: '';
        position: absolute;
        bottom: -5px;
        left: -4px;
        right: -4px;
        height: 2px;
        background: #000;
      }
    }
  }

  .header__mega-menus__category-title {
    font-family: var(--font-navigation);
    font-size: 16px;
    font-weight: 600;
    color: black;
    line-height: 1.366;
  }

  /* Styles pour les blocks enfants */
  .bijoux-link,
  .cadeaux-link {
    display: block;
    cursor: pointer;
    transition: transform 0.3s ease;
  }

  .bijoux-link:hover,
  .cadeaux-link:hover,
  .mega-menu-bijoux__category-item:hover,
  .mega-menu-cadeaux__category-item:hover {
    transform: translateX(5px);
  }

  .bijoux-link__main,
  .cadeaux-link__main,
  .mega-menu-bijoux__category-title,
  .mega-menu-cadeaux__category-title {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-weight: 600;
    font-size: 16px;
    line-height: 1.366;
    color: #000000;
    text-decoration: none;
    padding: 8px 0 9px;
    display: block;
    position: relative;
    transition: color 0.3s ease;
    margin: 0;
  }

  .bijoux-link__main:hover,
  .cadeaux-link__main:hover,
  .mega-menu-bijoux__category-title:hover,
  .mega-menu-cadeaux__category-title:hover,
  .bijoux-link[data-active="true"] .bijoux-link__main,
  .cadeaux-link[data-active="true"] .cadeaux-link__main,
  .mega-menu-bijoux__category-item--active .mega-menu-bijoux__category-title,
  .mega-menu-cadeaux__category-item--active .mega-menu-cadeaux__category-title {
    color: #B45C31;
  }

  /* État actif avec soulignement */
  .bijoux-link[data-active="true"] .bijoux-link__main::after,
  .cadeaux-link[data-active="true"] .cadeaux-link__main::after,
  .mega-menu-bijoux__category-item--active .mega-menu-bijoux__category-title::after,
  .mega-menu-cadeaux__category-item--active .mega-menu-cadeaux__category-title::after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: -4px;
    right: auto;
    width: calc(100% + 8px);
    height: 1px;
    background-color: #000000;
  }

  /* Mobile Menu Toggle - Styles moved to mobile responsive section */

  /* Responsive */
  @media (max-width: 1200px) {
    .header__container {
      padding: 0 40px;
    }

    .header__top-row {
      gap: 200px;
    }

    .header__search {
      width: 200px;
    }

    .mega-menu__content {
      max-width: 1400px;
    }

    .mega-menu__collection-image {
      width: 280px;
      height: 350px;
    }
    
    .bijoux-link,
    .cadeaux-link {
      margin-bottom: 15px;
    }
  }

  @media (max-width: 1024px) {
    .header__container {
      padding: 0 30px;
    }

    .header__top-row {
      gap: 150px;
    }

    .header__search {
      width: 180px;
    }

    .header__icons {
      width: 250px;
    }

    .header__mega-menus {
      display: none;
    }
    
    .bijoux-link__main,
    .cadeaux-link__main {
      font-size: 18px;
    }
  }

  @media (max-width: 768px) {
    /* Hide desktop header on mobile */
    .header__main {
      display: none !important;
    }

    /* Show mobile header */
    .header__mobile {
      display: block !important;
      transition: top 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    }

    /* Show mobile menu toggle button - same as other icons */
    .mobile-menu-toggle {
      display: flex !important;
    }

    /* Mobile menu is now always rendered for animations */

    /* Adjust announcement bar for mobile */
    .header__announcement {
      padding: 0 20px;
      height: 30px;
      transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);

      .announcement-bar__text {
        font-size: 12px;
      }
    }

    /* Body padding for mobile header */
    body {
      padding-top: 90px; /* 30px announcement + 60px mobile header */
      transition: padding-top 0.3s cubic-bezier(0.4, 0, 0.2, 1);

      /* Prevent scrolling when mobile menu is open */
      &.mobile-menu-open {
        overflow: hidden;
        height: 100vh;
      }
    }

    /* Mobile menu position adjustment for header */
    .mobile-menu {
      top: 90px; /* Below announcement bar + mobile header */
      height: calc(100vh - 90px);
      transition: top 0.3s cubic-bezier(0.4, 0, 0.2, 1);

      &__header {
        min-height: 60px;
        padding: 16px 20px;
      }

      &__content {
        height: calc(100vh - 150px);
      }

      &__level {
        padding: 20px;
      }

      &__title {
        font-size: 18px;
      }
    }

    /* Mobile menu overlay positioning */
    .mobile-menu-overlay {
      top: 90px;

      &.active {
        display: block;
      }
    }

    /* Adjust mobile nav link sizes for better touch targets */
    .mobile-nav-link {
      padding: 18px 20px;
      font-size: 17px;
      min-height: 54px;

      &--main {
        font-size: 18px;
        margin-bottom: 20px;
        padding: 20px 24px;
      }

      &--subcategory {
        font-size: 16px;
        padding-left: 40px;
      }

      svg {
        width: 18px;
        height: 18px;
      }
    }

    /* Scrolled state adjustments for mobile */
    .header.scrolled {
      .header__announcement {
        height: 0;
        overflow: hidden;
        opacity: 0;
      }
    }

    /* When header is scrolled, adjust body padding and menu position */
    body.header-scrolled {
      padding-top: 60px;
    }

    .header.scrolled ~ .mobile-menu {
      top: 60px;
      height: calc(100vh - 60px);
    }

    .header.scrolled ~ .mobile-menu-overlay {
      top: 60px;
    }
  }

  @media (max-width: 480px) {
    /* Extra small screens adjustments */
    .header__announcement {
      height: 28px;
      padding: 0 16px;

      .announcement-bar__text {
        font-size: 11px;
      }
    }

    .header__mobile {
      top: 28px; /* Below smaller announcement bar */
    }

    .mobile-header__container {
      padding: 10px 16px;
      height: 56px;
      min-height: 56px;
    }

    .mobile-menu-toggle,
    .mobile-header__icon {
      width: 40px;
      height: 40px;
      padding: 10px;
    }

    /* Show mobile menu toggle on small screens */
    .mobile-menu-toggle {
      display: flex !important;
    }

    .mobile-header__logo {
      margin: 0 12px;

      .mobile-logo-image {
        max-height: 24px;
      }
    }

    body {
      padding-top: 84px; /* 28px announcement + 56px mobile header */

      &.header-scrolled {
        padding-top: 56px;
      }
    }

    .mobile-menu {
      top: 84px;
      height: calc(100vh - 84px);

      &__header {
        min-height: 54px;
        padding: 14px 16px;
      }

      &__content {
        height: calc(100vh - 138px);
      }

      &__level {
        padding: 16px;
      }

      &__title {
        font-size: 16px;
      }
    }

    .mobile-nav-link {
      padding: 16px 18px;
      font-size: 16px;
      min-height: 52px;

      &--main {
        font-size: 17px;
        padding: 18px 20px;
      }

      &--subcategory {
        font-size: 15px;
        padding-left: 36px;
      }
    }

    .header.scrolled {
      .header__mobile {
        top: 0;
      }
    }

    .header.scrolled ~ body {
      padding-top: 56px;
    }

    .header.scrolled ~ .mobile-menu {
      top: 56px;
      height: calc(100vh - 56px);
    }

    .header.scrolled ~ .mobile-menu-overlay {
      top: 56px;
    }

    .mobile-menu-overlay {
      top: 84px; /* 28px announcement + 56px mobile header */
    }
  }

  /* Ensure desktop styles are preserved */
  @media (min-width: 769px) {
    /* Force hide mobile menu elements on desktop */
    .mobile-menu-toggle {
      display: none !important;
    }

    .mobile-menu-overlay,
    .mobile-menu {
      display: none !important;
    }

    /* Ensure desktop header is visible */
    .header__main {
      display: flex !important;
    }

    body {
      padding-top: 0 !important;
    }

    /* Ensure all desktop mega menu functionality is preserved */
    .header__mega-menus {
      display: block;
    }

    .nav-item:hover .header__mega-menus {
      opacity: 1;
      visibility: visible;
      transform: translateX(-50%) translateY(0);
    }
  }
.welcome {
    display: grid;
    grid-template-columns: var(--content-grid);
    background-color: #f6f6f7;
    padding: 72px 0;
  }

  .welcome-content {
    grid-column: 2;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    width: 100%;
    padding: 0 24px;
  }

  .welcome-description {
    max-width: 80ch;
    line-height: 1.4;
    margin-top: 1.5rem;
  }

  .icon {
    width: 300px;
  }

  .highlights {
    display: grid;
    gap: 2rem;
    grid-template-columns: repeat(3, 1fr);
    margin-top: 50px;
  }

  @media (max-width: 1100px) {
    .highlights {
      grid-template-columns: 1fr;
    }
  }

  .highlight {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 24px;
    border-radius: 8px;
    background-color: #eef3ff;
    color: rgb(92, 95, 98);
    line-height: 1.4;
  }

  .highlight > * + * {
    margin-top: 1rem;
  }

  .highlight h3 {
    font-size: 1rem;
    color: rgb(32, 34, 35);
  }

  .highlight-description {
    flex: 1 1;
  }

  .highlight a {
    display: flex;
    width: fit-content;
    background-color: rgb(250, 251, 251);
    box-shadow: rgba(0, 0, 0, 0.2) 0px -3px 0px 0px inset, rgba(255, 255, 255, 0.9) 0px 2px 0px 0px inset;
    border: 1px solid rgb(140, 145, 150);
    border-radius: 4px;
    color: rgb(92, 95, 98);
    padding: 3px 10px 5px;
    text-decoration: none;
  }
.hero-accueil {
    position: relative;
    min-height: 760px;
    overflow: hidden;
    width: 100%;
    padding-top: var(--padding-top, 0);
    padding-bottom: var(--padding-bottom, 0);
  }
  
  /* Hauteurs */
  .hero-accueil--small {
    min-height: 500px;
  }
  
  .hero-accueil--medium {
    min-height: 760px;
  }
  
  .hero-accueil--large {
    min-height: 90vh;
  }
  
  .hero-accueil--full {
    min-height: 100vh;
  }
  
  /* Image de fond */
  .hero-accueil__background {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 0;
  }
  
  .hero-accueil__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
  
  .hero-accueil__image--mobile {
    display: none;
  }
  
  @media (max-width: 749px) {
    .hero-accueil__image--desktop {
      display: none !important;
    }
    .hero-accueil__image {
      display: none !important;
      visibility: visible !important;
      opacity: 1 !important;
    }
    
    .hero-accueil__image--mobile {
      display: block !important;
      visibility: visible !important;
      opacity: 1 !important;
    }
  }
  
  .hero-accueil__overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }
  
  /* Container */
  .hero-accueil__container {
    width: 100%;
    height: 100%;
    min-height: inherit;
    padding: 0 81px;
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
  }
  
  /* Contenu */
  .hero-accueil__content {
    max-width: 600px;
    color: white;
  }
  
  /* Alignements horizontaux */
  .hero-accueil--align-left .hero-accueil__container {
    justify-content: flex-start;
  }
  
  .hero-accueil--align-center .hero-accueil__container {
    justify-content: center;
  }
  
  .hero-accueil--align-right .hero-accueil__container {
    justify-content: flex-end;
  }
  
  .hero-accueil--align-left .hero-accueil__content {
    text-align: left;
  }
  
  .hero-accueil--align-center .hero-accueil__content {
    text-align: center;
  }
  
  .hero-accueil--align-right .hero-accueil__content {
    text-align: right;
  }
  
  /* Alignements verticaux */
  .hero-accueil--vertical-top .hero-accueil__container {
    align-items: flex-start;
    padding-top: 120px;
  }
  
  .hero-accueil--vertical-center .hero-accueil__container {
    align-items: center;
  }
  
  .hero-accueil--vertical-bottom .hero-accueil__container {
    align-items: flex-end;
    padding-bottom: 120px;
  }
  
  /* Typographie */
  .hero-accueil__subtitle {
    font-family: var(--font-hero-subtitle);
    font-size: var(--font-size-hero-subtitle);
    font-weight: var(--font-weight-normal);
    line-height: var(--line-height-normal);
    margin: 0 0 6px 0;
    color: white;
  }
  
  .hero-accueil__title {
    font-family: var(--font-hero-title);
    font-size: var(--font-size-hero-title-desktop);
    font-weight: var(--font-weight-light);
    line-height: var(--line-height-tight);
    margin: 0 0 24px 0;
    color: white;
    text-transform: uppercase;
  }
  
  .hero-accueil__description {
    font-family: var(--font-body);
    font-size: var(--font-size-body);
    line-height: var(--line-height-relaxed);
    margin: 0 0 24px 0;
    color: white;
    opacity: 0.9;
  }
  
  /* Actions */
  .hero-accueil__actions {
    margin-top: 24px;
    width: 100%;
  }
  
  .hero-accueil__actions .button {
    width: 100%;
  }
  
  .hero-accueil__actions .button__primary,
  .hero-accueil__actions .button__secondary {
    width: 100%;
  }
  
  /* Responsive Design */
  @media screen and (max-width: 1200px) {
    .hero-accueil__container {
      padding: 0 60px;
    }
    
    .hero-accueil__title {
      font-size: var(--font-size-hero-title-tablet);
    }
  }
  
  @media screen and (max-width: 768px) {
    .hero-accueil {
      min-height: 500px;
      width: 100vw;
      margin-left: calc(-50vw + 50%);
    }
    
    .hero-accueil--medium {
      min-height: 500px;
    }
    
    .hero-accueil__container {
      padding: 0 20px;
      width: 100%;
    }
    
    .hero-accueil__content {
      max-width: 100%;
      width: 100%;
    }
    
    .hero-accueil__title {
      font-size: var(--font-size-hero-title-mobile);
      margin-bottom: 16px;
    }
    
    .hero-accueil__subtitle {
      font-size: 10px;
      margin-bottom: 8px;
    }
    
    .hero-accueil__description {
      font-size: var(--font-size-body-small);
      margin-bottom: 20px;
    }
    
    .hero-accueil__actions {
      width: 100%;
    }
    
    .hero-accueil__actions .button {
      display: block;
    }
    
    .hero-accueil__image--mobile {
      display: block;
    }
    
    .hero-accueil__image:not(.hero-accueil__image--mobile) {
      display: none;
    }
    
    .hero-accueil__container {
      background: linear-gradient(to bottom, rgba(0,0,0,0.3), rgba(0,0,0,0.5));
    }
    
    .hero-accueil--vertical-top .hero-accueil__container,
    .hero-accueil--vertical-bottom .hero-accueil__container {
      padding-top: 60px;
      padding-bottom: 60px;
    }
  }
  
  @media screen and (max-width: 480px) {
    .hero-accueil__title {
      font-size: 32px;
    }
    
    .hero-accueil__container {
      padding: 0 16px;
    }
  }
  
  /* Support pour écrans larges */
  @media screen and (min-width: 1920px) {
    .hero-accueil__container {
      padding: 0 120px;
    }
  }
  
  @media screen and (min-width: 2540px) {
    .hero-accueil__container {
      padding: 0 160px;
    }
  }
.hero {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 400px;
    overflow: hidden;
    padding-top: var(--padding-top, 0);
    padding-bottom: var(--padding-bottom, 0);
  }
  
  /* Heights */
  .hero--small {
    min-height: 300px;
  }
  
  .hero--medium {
    min-height: 500px;
  }
  
  .hero--large {
    min-height: 70vh;
  }
  
  .hero--full {
    min-height: 100vh;
  }
  
  /* Background */
  .hero__background {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
  }
  
  .hero__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
  }
  
  .hero__image--mobile {
    display: none;
  }
  
  .hero__overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }
  
  /* Container */
  .hero__container {
    width: 100%;
    max-width: var(--page-width);
    margin: 0 auto;
    padding: 0 var(--page-margin);
    position: relative;
    z-index: 1;
  }
  
  /* Content */
  .hero__content {
    max-width: 600px;
    color: var(--color-hero-text, var(--color-background));
  }
  
  .hero--align-left .hero__content {
    margin-left: 0;
    text-align: left;
  }
  
  .hero--align-center .hero__content {
    margin: 0 auto;
    text-align: center;
  }
  
  .hero--align-right .hero__content {
    margin-right: 0;
    margin-left: auto;
    text-align: right;
  }
  
  .hero__subtitle {
    font-size: 1rem;
    font-weight: 500;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    margin: 0 0 1rem 0;
    opacity: 0.9;
  }
  
  .hero__title {
    font-size: clamp(2rem, 5vw, 4rem);
    font-weight: bold;
    line-height: 1.1;
    margin: 0 0 1.5rem 0;
  }
  
  .hero__description {
    font-size: 1.125rem;
    line-height: 1.6;
    margin: 0 0 2rem 0;
    opacity: 0.9;
  }
  
  .hero__description p {
    margin: 0 0 1rem 0;
  }
  
  .hero__description p:last-child {
    margin-bottom: 0;
  }
  
  /* Actions */
  .hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    justify-content: var(--actions-justify, flex-start);
  }
  
  .hero--align-center .hero__actions {
    --actions-justify: center;
  }
  
  .hero--align-right .hero__actions {
    --actions-justify: flex-end;
  }
  
  .hero__button {
    text-decoration: none;
    transition: all 0.3s ease;
  }
  
  /* Video */
  .hero__video {
    margin-top: 2rem;
  }
  
  .hero__video-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 80px;
    height: 80px;
    background: rgba(255, 255, 255, 0.9);
    border: none;
    border-radius: 50%;
    cursor: pointer;
    transition: all 0.3s ease;
    color: var(--color-foreground);
  }
  
  .hero__video-btn:hover {
    background: rgba(255, 255, 255, 1);
    transform: scale(1.1);
  }
  
  /* Scroll Indicator */
  .hero__scroll-indicator {
    position: absolute;
    bottom: 2rem;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2;
  }
  
  .scroll-indicator {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    animation: bounce 2s infinite;
    color: var(--color-hero-text, var(--color-background));
  }
  
  .scroll-indicator__text {
    font-size: 0.875rem;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.1em;
  }
  
  @keyframes bounce {
    0%, 20%, 50%, 80%, 100% {
      transform: translateY(0);
    }
    40% {
      transform: translateY(-10px);
    }
    60% {
      transform: translateY(-5px);
    }
  }
  
  /* Video Modal */
  .video-modal {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2rem;
  }
  
  .video-modal__backdrop {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.9);
    cursor: pointer;
  }
  
  .video-modal__content {
    position: relative;
    width: 100%;
    max-width: 800px;
    aspect-ratio: 16/9;
  }
  
  .video-modal__close {
    position: absolute;
    top: -3rem;
    right: 0;
    background: none;
    border: none;
    color: white;
    font-size: 1.5rem;
    cursor: pointer;
    z-index: 1;
  }
  
  .video-modal__wrapper {
    width: 100%;
    height: 100%;
    border-radius: 8px;
    overflow: hidden;
  }
  
  .video-modal__wrapper iframe {
    width: 100%;
    height: 100%;
  }
  
  /* Mobile Responsive */
  @media screen and (max-width: 767px) {
    .hero__image--mobile {
      display: block;
    }
    
    .hero__image:not(.hero__image--mobile) {
      display: none;
    }
    
    .hero {
      min-height: 300px;
    }
    
    .hero--large {
      min-height: 50vh;
    }
    
    .hero--full {
      min-height: 70vh;
    }
    
    .hero__content {
      max-width: 100%;
    }
    
    .hero__actions {
      flex-direction: column;
      align-items: stretch;
    }
    
    .hero__button {
      text-align: center;
    }
    
    .hero--align-center .hero__actions,
    .hero--align-right .hero__actions {
      align-items: center;
    }
  }
  
  @media screen and (min-width: 768px) {
    .hero__content {
      max-width: 700px;
    }
  }
.hero-story {
  --hero-story-section-height: 818px;
  --hero-story-padding-top: 100px;
  --hero-story-padding-right: 100px;
  --hero-story-padding-bottom: 100px;
  --hero-story-padding-left: 62px;
  --hero-story-content-gap: 28px;
  --hero-story-text-gap: 24px;
  --hero-story-content-max-width: 748px;
  --hero-story-text-max-width: 522px;
  --hero-story-text-color: #E8E8E8;
  --hero-story-button-color: #FFFFFF;
  --hero-story-button-bg: transparent;
  --hero-story-button-hover-bg: #FFFFFF;
  --hero-story-button-hover-color: #000000;
  
  position: relative;
  width: 100%;
  min-height: var(--hero-story-section-height);
  overflow: hidden;
}

.hero-story__background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 1;
}

.hero-story__container {
  position: relative;
  z-index: 2;
  height: 100%;
  min-height: var(--hero-story-section-height);
  display: flex;
  align-items: center;
  padding: var(--hero-story-padding-top) var(--hero-story-padding-right) var(--hero-story-padding-bottom) var(--hero-story-padding-left);
}

.hero-story__content-box {
  max-width: 1440px;
  margin: 0 auto;
  width: 100%;
  padding: 0 20px;
}

.hero-story__content {
  display: flex;
  flex-direction: column;
  gap: var(--hero-story-content-gap);
  max-width: var(--hero-story-content-max-width);
  width: 100%;
}

.hero-story__title {
    color: var(--hero-story-text-color);
    font-family: 'The Seasons Light', 'Playfair Display', 'Times New Roman', serif;
    font-weight: 300;
    font-size: 72px;
    line-height: 1.118421052631579em;
    text-transform: uppercase;
    letter-spacing: normal;
    margin: 0;
    width: 100%;
  }

.hero-story__text-content {
  display: flex;
  flex-direction: column;
  gap: var(--hero-story-text-gap);
}

.hero-story__subtitle,
.hero-story__description {
  color: var(--hero-story-text-color);
  font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.3660000562667847em;
  margin: 0;
  max-width: var(--hero-story-text-max-width);
}

.hero-story__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: var(--hero-story-button-bg);
  color: var(--hero-story-button-color);
  border: 1px solid var(--hero-story-button-color);
  border-radius: 4px;
  padding: 12px 30px;
  font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 1.366000039236886em;
  text-decoration: none;
  transition: all 0.3s ease;
  height: 36px;
  width: fit-content;
}

.hero-story__button:hover {
  background-color: var(--hero-story-button-hover-bg);
  color: var(--hero-story-button-hover-color);
}

/* Responsive Design */
@media screen and (max-width: 1024px) {
    .hero-story {
      --hero-story-padding-top: 80px;
      --hero-story-padding-right: 60px;
      --hero-story-padding-bottom: 80px;
      --hero-story-padding-left: 40px;
      --hero-story-content-max-width: 600px;
    }
    
    .hero-story__title {
      font-size: 24px !important;
    }
  }

@media screen and (max-width: 768px) {
    .hero-story {
      --hero-story-section-height: 600px;
      --hero-story-padding-top: 60px;
      --hero-story-padding-right: 30px;
      --hero-story-padding-bottom: 60px;
      --hero-story-padding-left: 30px;
      --hero-story-content-gap: 24px;
      --hero-story-content-max-width: 100%;
      --hero-story-text-max-width: 100%;
      width: 100%;
      margin-left: 0;
    }
    
    .hero-story__background {
      background-size: cover;
      background-position: center;
    }
    
    .hero-story__container {
      padding: var(--hero-story-padding-top) 0 var(--hero-story-padding-bottom) 0;
    }
    
    .hero-story__content-box {
      padding: 0 20px;
      max-width: none;
    }
    
    .hero-story__content {
      width: 100%;
      max-width: none;
    }
    
    .hero-story__title {
      font-size: 24px !important;
      width: 100%;
    }
  
  .hero-story__text-content {
    width: 100%;
  }
  
  .hero-story__subtitle,
  .hero-story__description {
    max-width: none;
    width: 100%;
  }
  
  .hero-story__button {
    width: 100%;
    margin-bottom: 200px;
  }
}

@media screen and (max-width: 480px) {
  .hero-story {
    --hero-story-section-height: 500px;
    --hero-story-padding-top: 40px;
    --hero-story-padding-right: 20px;
    --hero-story-padding-bottom: 40px;
    --hero-story-padding-left: 20px;
    --hero-story-content-gap: 20px;
    --hero-story-text-gap: 16px;
  }
  
  .hero-story__title {
    font-size: 28px !important;
  }
  
  .hero-story__subtitle,
  .hero-story__description {
    font-size: 14px;
  }
  
  .hero-story__content-box {
    padding: 0 16px;
  }

  .hero-story__button {
    margin-bottom: 0;
  }

   .hero-story__background {
      background-size: cover;
      background-position: top left;
    }
    
}
.incontournables {
    padding-top: var(--padding-top, 80px);
    padding-bottom: var(--padding-bottom, 80px);
    background: var(--color-background);
    grid-column: 1 / -1 !important;
    overflow: hidden;
  }
  
  .incontournables__container {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 20px;
    width: 100%;
    box-sizing: border-box;
  }
  
  /* Header */
  .incontournables__header {
    text-align: center;
    margin-bottom: 38px;
  }
  
  .incontournables__title {
    font-family: 'Avenir Next', var(--font-navigation, sans-serif);
    font-size: 32px;
    font-weight: 600;
    letter-spacing: 0.2em;
    margin: 0 0 3px 0;
    color: #0F0D22;
    line-height: 1.366;
    text-transform: uppercase;
    text-align: center;
  }
  
  .incontournables__subtitle {
    font-family: 'Avenir Next', var(--font-navigation, sans-serif);
    font-size: 16px;
    font-weight: 400;
    color: #0F0D22;
    margin: 0;
    line-height: 1.366;
    text-align: center;
  }
  
  /* Tabs */
  .incontournables__tabs {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    margin-bottom: 38px;
  }
  
  .incontournables__tab {
    font-family: 'Avenir Next', var(--font-navigation, sans-serif);
    font-size: 14px;
    font-weight: 400;
    line-height: 1.366;
    padding: 10px 30px;
    border: 1px solid #000000;
    border-radius: 4px;
    background: #FFFFFF;
    color: #000000;
    cursor: pointer;
    transition: all 0.3s ease;
    text-align: center;
    min-height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  
  .incontournables__tab:hover {
    background: #000000;
    color: #FFFFFF;
  }
  
  .incontournables__tab--active {
    background: #000000;
    color: #FFFFFF;
  }
  
  /* Content */
  .incontournables__content {
    position: relative;
    min-height: 515px;
  }
  
  .incontournables__collection {
    opacity: 0;
    visibility: hidden;
    transform: translateY(20px);
    transition: all 0.4s ease;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  }
  
  .incontournables__collection--active {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    position: relative;
  }
  
  /* Grid */
  .incontournables__grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 9px;
    padding-left: 0;
  }
  
  /* Product Cards */
  .incontournables__product-card {
    border-radius: 4px;
    overflow: hidden;
    height: 515px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
  
  .incontournables__image-wrapper {
    position: relative;
    overflow: hidden;
    height: 460px;
    border: solid 1px #F0F0F0;
  }
  
  .incontournables__image-link {
    display: block;
    height: 100%;
  }
  
  .incontournables__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
  }
  
  .incontournables__product-card:hover .incontournables__image {
    transform: scale(1.05);
  }
  
  /* Options couleurs */
  .incontournables__product-options {
    position: absolute;
    bottom: 0;
    left: 13.96px;
    right: 13.96px;
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(8px);
    border-radius: 2px;
    padding: 10px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
    opacity: 0;
    transform: translateY(10px);
    transition: all 0.3s ease;
  }
  
  .incontournables__product-card:hover .incontournables__product-options {
    opacity: 1;
    transform: translateY(0);
  }
  
  .options-text {
    font-family: 'Avenir Next', var(--font-navigation, sans-serif);
    font-size: 14px;
    font-weight: 400;
    color: #858585;
    line-height: 1.143;
    text-align: left;
  }
  
  .color-swatches {
    display: flex;
    align-items: center;
    gap: -7px;
  }
  
  .color-dot {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    border: 2px solid white;
    margin-left: -7px;
  }
  
  .color-dot:first-child {
    margin-left: 0;
    background: #F64319;
  }
  
  .color-dot:nth-child(2) {
    background: #86BBDA;
  }
  
  .color-dot:nth-child(3) {
    background: #D8A517;
  }
  
  .color-more {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    border: 1px solid white;
    background: white;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: -7px;
    font-family: 'Avenir Next', var(--font-navigation, sans-serif);
    font-size: 14px;
    font-weight: 500;
    color: #B3B3B3;
    letter-spacing: -0.02em;
  }

  .incontournables__wishlist {
    position: absolute;
    top: 10px;
    right: 9px;
    width: 20px;
    height: 20px;
    background: transparent;
    border: none;
    cursor: pointer;
    color: #505050;
    transition: all 0.3s ease;
    z-index: 3;
  }
  
  .incontournables__wishlist:hover {
    color: #ff6b6b;
    transform: scale(1.1);
  }
  
  .incontournables__info {
    padding: 15px 0 0 0;
    text-align: left;
    display: flex;
    flex-direction: column;
    gap: 0;
    height: 60px;
  }
  
  .incontournables__product-title {
    margin: 0;
    font-family: 'Avenir Next', var(--font-navigation, sans-serif);
    font-size: 16px;
    font-weight: 600;
    line-height: 1.366;
    text-align: left;
  }
  
  .incontournables__product-title a {
    color: #000000;
    text-decoration: none;
  }
  
  .incontournables__product-title a:hover {
    color: #ff6b6b;
  }
  
  .incontournables__price {
    display: flex;
    justify-content: left;
    gap: 8px;
  }
  
  .price-current {
    font-family: 'Avenir Next', var(--font-navigation, sans-serif);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.366;
    color: #000000;
  }
  
  .price-compare {
    font-family: 'Avenir Next', var(--font-navigation, sans-serif);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.366;
    color: #858585;
    text-decoration: line-through;
  }
  
  /* CTA Card */
  .incontournables__cta-card {
    background: var(--cta-bg-color);
    border-radius: 4px;
    height: calc(515px - 60px);
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 10px;
    transition: background-color 0.3s ease;
  }
  
  .incontournables__cta-card:hover {
    background: #000000;
  }
  
  .incontournables__cta-link {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 5px;
    text-decoration: none;
    color: #FFFFFF;
    padding: 6px 0 8px;
    position: relative;
    transition: color 0.3s ease;
  }
  
  .incontournables__cta-text {
    font-family: 'Avenir Next', var(--font-navigation, sans-serif);
    font-size: 14px;
    font-weight: 400;
    line-height: 1.366;
    color: #FFFFFF;
    text-align: center;
    position: relative;
    transition: color 0.3s ease;
  }
  
  .incontournables__cta-text::after {
    content: '';
    position: absolute;
    bottom: -6px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 2px;
    background: #FFFFFF;
    transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  }
  
  .incontournables__cta-card:hover .incontournables__cta-text::after {
    width: 100%;
  }
  
  /* Responsive Design */
  @media screen and (max-width: 1200px) {
    .incontournables__grid {
      grid-template-columns: repeat(2, 1fr);
      gap: 16px;
      padding-left: 0;
    }
    
    .incontournables__grid .incontournables__cta-card {
      grid-column: span 2;
      height: 200px;
    }
  }
  
  @media screen and (max-width: 767px) {
    .incontournables {
      width: 100%;
      margin-left: 0;
      overflow: hidden;
      padding-top: 0 !important;
      padding-bottom: 0 !important;
    }
    
    .incontournables__container {
      max-width: none;
      padding: 0 20px;
    }
    
    .incontournables__header {
      margin-bottom: 30px;
    }
    
    .incontournables__title {
      font-size: 24px;
      letter-spacing: 0.15em;
    }
    
    .incontournables__tabs {
      display: flex;
      flex-wrap: nowrap;
      gap: 12px;
      margin-bottom: 30px;
      overflow-x: auto;
      scroll-snap-type: x mandatory;
      -webkit-overflow-scrolling: touch;
      scrollbar-width: none;
      -ms-overflow-style: none;
      width: 100%;
      margin-left: 0;
      padding: 0;
      justify-content: flex-start;
    }
    
    .incontournables__tabs::-webkit-scrollbar {
      display: none;
    }
    
    .incontournables__tab {
      flex: 0 0 auto;
      padding: 10px 20px;
      font-size: 13px;
      white-space: nowrap;
      scroll-snap-align: start;
    }
    
    /*
    .incontournables__grid {
      display: flex;
      grid-template-columns: none;
      gap: 16px;
      overflow-x: auto;
      scroll-snap-type: x mandatory;
      -webkit-overflow-scrolling: touch;
      scrollbar-width: none;
      -ms-overflow-style: none;
      width: 100%;
      margin-left: 0;
      padding: 0;
      flex-direction: row;
      flex-wrap: nowrap;
    }
    
    .incontournables__grid::-webkit-scrollbar {
      display: none;
    }
    
    .incontournables__product-card {
      flex: 0 0 280px;
      height: 400px;
      scroll-snap-align: start;
    }
    
    .incontournables__cta-card {
      flex: 0 0 280px;
      height: 400px;
      scroll-snap-align: start;
      min-height: 400px;
    }
      */
    
    .incontournables__image-wrapper {
      height: 180px;
    }
    
    .incontournables__info {
      height: 80px;
    }

    .incontournables .collection-product-card__image-wrapper, 
    .incontournables .collection-product-card__image-link,
    .incontournables .collection-product-card__image,
    .incontournables .collection-product-card__img{
      height: 220px !important;
    }

    .incontournables__grid .incontournables__cta-card {
      grid-column: inherit;
      height: 220px;
    }
  }
  
  /* Empty State */
  .incontournables__empty {
    text-align: center;
    padding: 60px 20px;
    color: rgba(var(--color-foreground), 0.6);
  }
  
  .incontournables__empty p {
    margin: 0 0 16px 0;
    font-size: 1.125rem;
  }
.magazine-items {
    padding-top: var(--padding-top, 40px);
    padding-bottom: var(--padding-bottom, 40px);
  }
  
  .magazine-items__container {
    max-width: 1401px;
    margin: 0 auto;
    padding: 0 20px;
  }
  
  /* En-tête */
  .magazine-items__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 27px;
    gap: 24px;
  }
  
  .magazine-items__header-left {
    display: flex;
    align-items: flex-end;
    gap: 24px;
    max-width: 883.5px;
  }
  
  .magazine-items__title {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
    font-weight: 600;
    font-size: 32px;
    line-height: 1.366;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: #0F0D22;
    margin: 0;
  }
  
  .magazine-items__subtitle {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.366;
    color: #0F0D22;
    margin: 0;
  }
  
  .magazine-items__cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 30px;
    height: 36px;
    background-color: #000000;
    color: #FFFFFF;
    border: 1px solid #000000;
    border-radius: 4px;
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.366;
    text-decoration: none;
    transition: all 0.3s ease;
  }
  
  .magazine-items__cta:hover {
    background-color: #FFFFFF;
    color: #000000;
  }
  
  /* Articles */
  .magazine-items__articles {
    display: flex;
    gap: 10px;
  }
  
  .magazine-items__article {
    position: relative;
    width: 695px;
    height: 433px;
    border-radius: 4px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 30px 29px;
    box-sizing: border-box;
    transition: transform 0.3s ease;
  }
  
  .magazine-items__article:hover {
    transform: translateY(-2px);
  }
  
  .magazine-items__article-background {
    position: absolute;
    top: -16px;
    left: 0;
    width: 100%;
    height: 465px;
    z-index: 1;
  }
  
  .magazine-items__article-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  
  .magazine-items__article-placeholder {
    width: 100%;
    height: 100%;
    background-color: #f5f5f5;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  
  .magazine-items__article-gradient {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    /*background: linear-gradient(180deg, rgba(0, 0, 0, 0) 16.4%, rgba(0, 0, 0, 1) 75.75%); */
    background: linear-gradient(to top, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.2));
    z-index: 2;
  }

  .magazine-items__article-background img{
    object-fit: cover;
    height: 100%;
  }
  
  .magazine-items__article-content {
    position: relative;
    z-index: 3;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    height: 100%;
    max-width: 590px;
  }
  
  .magazine-items__article-info {
    display: flex;
    flex-direction: column;
    gap: 12px;
    transition: transform 0.3s ease;
    transform: translateY(40px);
  }
  
  .magazine-items__article:hover .magazine-items__article-info {
    transform: translateY(-10px);
  }
  
  .magazine-items__article-meta {
    display: flex;
    align-items: center;
    gap: 12px;
  }
  
  .magazine-items__article-tag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 6px 8px;
    background-color: #FFFFFF;
    border-radius: 2px;
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
    font-weight: 400;
    font-size: 11px;
    line-height: 1.366;
    color: #29235C;
    text-transform: uppercase;
  }
  
  .magazine-items__article-title {
    margin: 0;
  }
  
  .magazine-items__article-title a {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
    font-weight: 400;
    font-size: 24px;
    line-height: 1.366;
    color: #FFFFFF;
    text-decoration: none;
    transition: opacity 0.3s ease;
  }
  
  .magazine-items__article-title a:hover {
    opacity: 0.8;
  }
  
  .magazine-items__article-cta {
    opacity: 0;
    transform: translateY(20px);
    transition: all 0.3s ease;
    margin-top: 12px;
  }
  
  .magazine-items__article:hover .magazine-items__article-cta {
    opacity: 1;
    transform: translateY(0);
  }
  
  .magazine-items__read-more {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #FFFFFF;
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
    font-weight: 500;
    font-size: 12px;
    line-height: 1.366;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    transition: all 0.3s ease;
  }
  
  /* État vide */
  .magazine-items__empty {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 433px;
    background-color: #f5f5f5;
    border-radius: 4px;
    color: #666;
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
  }
  
  /* Responsive */
  @media screen and (max-width: 1440px) {
    .magazine-items__container {
      max-width: 100%;
      padding: 0 40px;
    }
    
    .magazine-items__articles {
      gap: 8px;
    }
    
    .magazine-items__article {
      width: calc(50% - 4px);
    }
    
    .magazine-items__article-background {
      width: 100%;
    }
    
    .magazine-items__article-gradient {
      width: 100%;
    }
  }
  
  @media screen and (max-width: 750px) {
    .magazine-items__container {
      padding: 0 20px;
    }
    
    .magazine-items__header {
      flex-direction: column;
      align-items: flex-start;
      gap: 16px;
    }
    
    .magazine-items__header-left {
      flex-direction: column;
      align-items: flex-start;
      gap: 8px;
      max-width: none;
    }
    
    .magazine-items__title {
      font-size: 24px;
    }
    
    .magazine-items__subtitle {
      font-size: 14px;
    }
    
    .magazine-items__articles {
      flex-direction: column;
      gap: 16px;
    }
    
    .magazine-items__article {
      width: 100%;
      height: 300px;
    }
    
    .magazine-items__article-background {
      top: 0;
      height: 100%;
    }
 
    
    .magazine-items__article-title a {
      font-size: 20px;
    }
    
    .magazine-items__article-info {
      transform: translateY(35px);
    }
    
    .magazine-items__article:hover .magazine-items__article-info {
      transform: translateY(-8px);
    }
    
    .magazine-items__read-more {
      font-size: 11px;
      padding: 6px 12px;
    }
  }
:root {
  --color-black: #000000;
  --color-white: #ffffff;
  --color-orange: #b45c31;
  --color-grey: #505050;
  --color-grey-light: rgba(0, 0, 0, 0.25);
  --font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
}

.blog-articles-musardise {
  font-family: var(--font-family);
  color: var(--color-black);
}

.blog-articles-musardise__title,
.blog-articles-musardise__article-title {
  font-family: var(--font-family);
  font-weight: 400;
}

.blog-articles-musardise__article-title {
  font-family: var(--font-family);
  font-weight: 400;
  line-height: 1.37;
  text-align: left;
}

.blog-articles-musardise__article-excerpt,
.blog-articles-musardise__reading-time,
.blog-articles-musardise__article-cta {
  font-family: var(--font-family);
}

.blog-articles-musardise__wrapper {
  max-width: 1165px;
  margin: 0 auto;
  padding: 0 20px;
  padding-top: 120px; 
}

.blog-articles-musardise__breadcrumb {
  text-align: left;
  margin: 32px 0 47px;
}
.blog-articles-musardise__breadcrumb ol {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.blog-articles-musardise__breadcrumb li {
  font-size: 12px;
  font-weight: 400;
  line-height: 1;
  color: var(--color-black);
}
.blog-articles-musardise__breadcrumb a {
  color: inherit;
  text-decoration: none;
}
.blog-articles-musardise__breadcrumb a:hover {
  text-decoration: underline;
}

.blog-articles-musardise__container {
  max-width: 689px;
  margin: 0 auto 40px;
  text-align: center;
}
.blog-articles-musardise__title {
  font-size: 32px;
  font-weight: 600;
  line-height: 1.37;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  margin: 0 0 40px;
}
.blog-articles-musardise__filters {
  display: flex;
  flex-direction: row;
  justify-content: center;
  gap: 10px;
  flex-wrap: wrap;
  margin-bottom: 0;
}
.blog-articles-musardise__filter-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 30px;
  height: 36px;
  font-size: 14px;
  font-weight: 400;
  line-height: 1;
  color: var(--color-black);
  background: var(--color-white);
  border: 1px solid var(--color-black);
  border-radius: 4px;
  text-decoration: none;
  transition: all 0.3s ease;
  cursor: pointer;
}
.blog-articles-musardise__filter-btn:hover,
.blog-articles-musardise__filter-btn--active {
  color: var(--color-white);
  background: var(--color-black);
}

.blog-articles-musardise__articles {
  display: flex;
  flex-direction: column;
  gap: 80px;
  margin-bottom: 40px;
}
.blog-articles-musardise__article {
  display: flex;
  flex-direction: row;
  gap: 20px;
  align-items: stretch;
  padding: 0 29px;
}
.blog-articles-musardise__article-image {
  flex-shrink: 0;
  width: 583px;
  aspect-ratio: 583/341;
  border-radius: 4px;
  overflow: hidden;
  background: #f5f5f5;
}
.blog-articles-musardise__article-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.blog-articles-musardise__article-placeholder {
  width: 100%;
  height: 100%;
  background: #f0f0f0;
}
.blog-articles-musardise__article-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  max-width: 534px;
}
.blog-articles-musardise__article-main {
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.blog-articles-musardise__article-tag-wrapper {
  display: flex;
  margin-bottom: -20px;
}
.blog-articles-musardise__article-tag {
  display: inline-block;
  padding: 6px 8px;
  font-size: 11px;
  font-weight: 400;
  line-height: 1;
  color: var(--color-white);
  background: #B45C31;
  border-radius: 2px;
}
.blog-articles-musardise__article-title {
  margin: 0;
  font-size: 24px;
  font-weight: 400;
  line-height: 1.37;
  text-align: left;
}
.blog-articles-musardise__article-title a {
  color: inherit;
  text-decoration: none;
}
.blog-articles-musardise__article-title a:hover {
  color: #B45C31;
}
.blog-articles-musardise__article-excerpt {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.37;
  text-align: left;
  color: var(--color-black);
}
.blog-articles-musardise__article-cta {
  display: inline-block;
  align-self: flex-start;
  font-size: 14px;
  font-weight: 400;
  line-height: 1;
  color: var(--color-black);
  text-decoration: underline;
  text-underline-offset: 2px;
  transition: opacity 0.3s ease;
}
.blog-articles-musardise__article-cta:hover {
  color: #B45C31;
}
.blog-articles-musardise__article-footer {
  padding-top: 10px;
}
.blog-articles-musardise__reading-time {
  margin: 0;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.37;
  color: var(--color-grey);
  text-align: left;
}
.blog-articles-musardise__pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-top: 40px;
}
.blog-articles-musardise__pagination-arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 13px;
  height: 15px;
  color: var(--color-black);
  opacity: 1;
  transition: opacity 0.3s ease;
}
.blog-articles-musardise__pagination-arrow:hover {
  opacity: 0.6;
}
.blog-articles-musardise__pagination-arrow--disabled {
  opacity: 0.25;
  cursor: default;
}
.blog-articles-musardise__pagination-number {
  padding: 0 8px;
  font-size: 16px;
  font-weight: 600;
  line-height: 1;
  color: var(--color-grey-light);
  text-decoration: none;
  transition: color 0.3s ease;
}
.blog-articles-musardise__pagination-number:hover {
  color: var(--color-black);
}
.blog-articles-musardise__pagination-number--active {
  color: var(--color-black);
}
.blog-articles-musardise__pagination-number--dots {
  color: var(--color-grey-light);
  pointer-events: none;
}
.blog-articles-musardise__empty {
  text-align: center;
  padding: 40px 0;
}
.blog-articles-musardise__empty p {
  margin: 0;
  font-size: 16px;
  color: var(--color-grey);
}
@media (max-width: 1200px) {
  .blog-articles-musardise__wrapper {
    max-width: 100%;
  }
  .blog-articles-musardise__article {
    padding: 0 10px;
  }
  .blog-articles-musardise__article-image {
    width: 350px;
    aspect-ratio: 350/210;
  }
}
@media (max-width: 900px) {
  .blog-articles-musardise__article {
    flex-direction: column;
    align-items: flex-start;
    padding: 0;
  }
  .blog-articles-musardise__article-image {
    width: 100%;
    aspect-ratio: 16/9;
  }
  .blog-articles-musardise__article-content {
    max-width: 100%;
    justify-content: flex-start;
    gap: 20px;
  }
  .blog-articles-musardise__article-main {
    gap: 20px;
  }
}
@media (max-width: 600px) {
  .blog-articles-musardise__breadcrumb {
    margin: 20px 0 30px;
    text-align: left;
  }
  .blog-articles-musardise__title {
    font-size: 24px;
    letter-spacing: 0.1em;
    margin-bottom: 30px;
  }
  .blog-articles-musardise__filters {
    flex-direction: column;
    width: 100%;
  }
  .blog-articles-musardise__filter-btn {
    width: 100%;
  }
  .blog-articles-musardise__articles {
    gap: 40px;
  }
  .blog-articles-musardise__article-image {
    aspect-ratio: 4/3;
  }
  .blog-articles-musardise__article-title {
    font-size: 20px;
  }
  .blog-articles-musardise__article-excerpt {
    font-size: 14px;
  }
  .blog-articles-musardise__pagination-number {
    font-size: 14px;
    padding: 0 4px;
  }
}
.rating-section {
    width: 100%;
    padding: 40px 20px;
    background-color: #fff;
    grid-column: 1;
    }

  .rating-container {
    max-width: 1440px;
    margin: 0 auto;
  }

  .rating-content {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 23px;
    flex-wrap: wrap;
  }

  .rating-text {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-weight: 600;
    font-size: 16px;
    line-height: 1.366;
    color: #000000;
  }

  .rating-info {
    display: flex;
    align-items: center;
    gap: 18px;
  }

  .rating-label {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-weight: 600;
    font-size: 24px;
    line-height: 1.366;
    color: #B45C31;
  }

  .rating-display {
    display: flex;
    align-items: flex-end;
    gap: 10px;
  }

  .rating-number {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-weight: 600;
    font-size: 24px;
    line-height: 1.366;
    color: #B45C31;
  }

  .rating-stars {
    display: flex;
    gap: 4px;
    align-items: center;
    position: relative;
    bottom: 6px;
  }

  .star-icon {
    width: 15px;
    height: 14px;
    flex-shrink: 0;
  }

  .star-icon.empty path {
    fill: #E5E5E5;
  }

  .star-partial {
    position: relative;
    width: 15px;
    height: 14px;
    display: inline-block;
  }

  .star-partial .star-background {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
  }

  .star-partial .star-fill {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    clip-path: inset(0 calc(100% - var(--partial-width)) 0 0);
  }

  .rating-cta {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 12px 16px 12px 9px;
    background-color: #000000;
    border-radius: 100px;
    text-decoration: none;
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.366;
    color: #FFFFFF;
    transition: background-color 0.3s ease;
  }

  .google-icon {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
  }

  .rating-cta:hover {
    background-color: #333333;
  }

  @media screen and (max-width: 768px) {
    .rating-content {
      flex-direction: column;
      gap: 16px;
      text-align: center;
    }
    
    .rating-info {
      flex-direction: column;
      gap: 12px;
    }
    
    .rating-label,
    .rating-number {
      font-size: 20px;
    }
    
    .rating-cta {
      font-size: 12px;
      padding: 10px 14px;
    }
  }

  @media screen and (max-width: 480px) {
    .rating-section {
      padding: 30px 20px;
    }
    
    .rating-text {
      font-size: 14px;
    }
    
    .rating-label,
    .rating-number {
      font-size: 18px;
    }
  }
/* Section principale */
.notre-selection {
  width: 100%;
  background: var(--color-background, #fff);
  grid-column: 1 / -1 !important;
  overflow: hidden;
}

.notre-selection__wrapper {
  display: flex;
  flex-direction: row;
  max-width: 100vw;
  height: 760px;
  margin: 0 auto;
  padding: 0;
  /*padding-right: 20px;*/
  width: 100%;
  box-sizing: border-box;
}

/* COLONNE GAUCHE - 566px - TOUJOURS A GAUCHE */
.notre-selection__left-column {
  position: relative;
  width: 40%;
  height: 760px;
  background: #D9D9D9;
  flex-shrink: 0;
}

.notre-selection__bg-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 1;
}

.notre-selection__text-overlay {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    color: white;
    z-index: 2;
    width: 100%;
    padding: 0 20px;
  }

.notre-selection__main-title {
  font-family: 'Avenir Next', var(--font-navigation, sans-serif);
  font-size: 32px;
  font-weight: 600;
  letter-spacing: 6.4px;
  line-height: 1.366;
  text-transform: uppercase;
  margin: 0 0 14px 0;
  color: white;
}

.notre-selection__subtitle {
  font-family: 'Avenir Next', var(--font-navigation, sans-serif);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.366;
  margin: 0;
  color: white;
}

/* COLONNE DROITE - 874px - TOUJOURS A DROITE */
.notre-selection__right-column {
  position: relative;
  width: 60%;
  height: 760px;
  padding: 0;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.notre-selection__products-container {
  position: relative;
  width: 100%;
  height: 515px;
  overflow: hidden;
  margin: 0 auto;
  padding-left: 2rem;
}

.notre-selection__products-track {
  display: flex;
  gap: 10px;
  transition: transform 0.6s ease;
  height: 515px;
  align-items: flex-start;
}

/* Produit individuel */
.notre-selection__product-item {
    width: 343px;
    height: 515px;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
    transition: opacity 0.3s ease;
  }

.notre-selection__product-item {
    opacity: 1;
  }

.notre-selection__product-image {
    position: relative;
    width: 343px;
    height: 460px;
    border-radius: 4px;
    overflow: hidden;
    background: #D9D9D9;
    border: solid 1px #F0F0F0;
  }

.notre-selection__product-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}

.notre-selection__product-item:hover .notre-selection__product-image img {
  transform: scale(1.02);
}

/* Options couleurs */
.notre-selection__product-options {
  position: absolute;
  bottom: 10px;
  left: 14px;
  right: 14px;
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(8px);
  border-radius: 2px;
  padding: 10px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  opacity: 0;
  transform: translateY(10px);
  transition: all 0.3s ease;
}

.notre-selection__product-item:hover .notre-selection__product-options {
  opacity: 1;
  transform: translateY(0);
}

.options-text {
  font-family: var(--font-navigation);
  font-size: 14px;
  color: #858585;
  line-height: 1.14;
}

.color-swatches {
  display: flex;
  align-items: center;
  gap: -7px;
}

.color-dot {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  border: 2px solid white;
  background: #F64319;
  margin-left: -7px;
}

.color-dot:first-child {
  margin-left: 0;
}

.color-dot:nth-child(2) {
  background: #86BBDA;
}

.color-dot:nth-child(3) {
  background: #D8A517;
}

.color-more {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  border: 1px solid white;
  background: white;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: -7px;
  font-family: var(--font-navigation);
  font-size: 14px;
  font-weight: 500;
  color: #B3B3B3;
  letter-spacing: -0.28px;
}

/* Badge nouveauté */
.notre-selection__badge {
  position: absolute;
  top: 10px;
  left: 10px;
  background: #ff6b6b;
  color: white;
  padding: 4px 8px;
  border-radius: 4px;
  font-family: var(--font-navigation);
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  z-index: 3;
}

.notre-selection__badge--sold-out {
  background: #B45C31;
}

/* Bouton favoris */
.notre-selection__wishlist-btn {
  position: absolute;
  top: 10px;
  right: 9px;
  width: 20px;
  height: 20px;
  background: transparent;
  border: none;
  cursor: pointer;
  color: #505050;
  transition: all 0.3s ease;
  z-index: 3;
}

.notre-selection__wishlist-btn:hover {
  color: #ff6b6b;
  transform: scale(1.1);
}

/* Infos produit */
.notre-selection__product-info {
  display: flex;
  flex-direction: column;
  gap: 12px;
  text-align: center;
}

.product-title {
  margin: 0;
  font-family: var(--font-navigation);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.366;
}

.product-title a {
  color: #000;
  text-decoration: none;
  transition: color 0.3s ease;
}

.product-title a:hover {
  color: #B45C31;
}

.product-price {
  display: flex;
  justify-content: center;
  gap: 8px;
}

.price-current {
  font-family: var(--font-navigation);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.366;
  color: #000;
}

.price-compare {
  font-family: var(--font-navigation);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.366;
  color: #858585;
  text-decoration: line-through;
}

/* Navigation - BIEN VISIBLE ET CENTRÉE */
.notre-selection__navigation {
  position: absolute;
  bottom: 20px;
  right: 0;
  width: 100%;
  max-width: calc(100% - 40px);
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  z-index: 10;
  padding: 10px 20px;
  border-radius: 8px;
  box-sizing: border-box;
}

.progress-bar-container {
  flex: 1;
  max-width: 70%;
  height: 1px;
  background: #B3B3B3;
  position: relative;
  margin-right: 30px;
}

.progress-bar {
  width: 100%;
  height: 100%;
}

.progress-fill {
  width: 25%;
  height: 3px;
  background: #421F07;
  position: absolute;
  top: -1px;
  left: 0;
  transition: width 0.6s ease;
}

.nav-arrows {
  display: flex;
  gap: 24px;
  z-index: 11;
}

.nav-arrow {
  width: 32px;
  height: 32px;
  background: transparent;
  border: none;
  cursor: pointer;
  color: #000000;
  transition: all 0.3s ease;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 15;
}

.nav-arrow:hover {
  color: #ff6b6b;
  transform: scale(1.1);
}

.nav-arrow:disabled {
  opacity: 0.3;
  cursor: not-allowed;
  color: #ccc;
}

.nav-arrow:disabled:hover {
  transform: none;
  color: #ccc;
}

.notre-selection__empty {
  text-align: center;
  padding: 60px 20px;
  color: #666;
}

/* Responsive SEULEMENT EN DESSOUS DE 1280PX */
@media screen and (max-width: 1280px) {
  .notre-selection__wrapper {
    width: 100%;
    height: auto;
    flex-direction: column;
    padding: 0 20px;
  }
  
  .notre-selection__left-column {
    width: 100%;
    height: 400px;
  }
  
  .notre-selection__right-column {
    width: 100%;
    padding: 40px 0;
  }
  
  .notre-selection__products-track {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    height: auto;
  }
  
  .notre-selection__product-item {
    width: 100%;
    max-width: 343px;
    justify-self: center;
  }
  
  .notre-selection__navigation {
    position: static;
    left: auto;
    bottom: auto;
    transform: none;
    width: 100%;
    max-width: 100%;
    justify-content: center;
    margin-top: 40px;
    padding: 10px;
  }
  
  .progress-bar-container {
    width: 300px;
  }
  
  .nav-arrows {
    margin-left: 0;
  }
  
  .progress-bar-container {
    margin-right: 20px;
  }
}

@media screen and (max-width: 767px) {
    .notre-selection {
      width: 100vw;
      margin-left: calc(-50vw + 50%);
    }
    
    .notre-selection__wrapper {
      padding: 0;
      max-width: none;
    }
    
    .notre-selection__left-column {
      width: 100%;
      height: 300px;
      position: relative;
    }
    
.notre-selection__left-column::before{
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.7), transparent);
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
} 

.notre-selection__text-overlay{
  top: 80%;
  z-index: 2;
}

.notre-selection__main-title{
  margin-bottom: 5px;
}

    .notre-selection__right-column {
      width: 100%;
      height: auto;
      padding: 10px 16px 40px 16px;
    }
  
  .notre-selection__products-container {
    height: auto;
    padding-top: 30px;
    overflow: visible;
    padding-left: 0;
  }
  
  .notre-selection__products-track {
    display: flex;
    grid-template-columns: none;
    gap: 20px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
    height: auto;
  }
  
  
  .notre-selection__products-track::-webkit-scrollbar {
    display: none;
  }
  
  .notre-selection__product-item {
    flex: 0 0 280px;
    width: 280px;
    max-width: none;
    scroll-snap-align: start;
    height: auto;
  }
  
  .notre-selection__product-image {
    width: 280px;
    height: 350px;
  }
  
  .notre-selection__navigation {
    display: none;
  }
  
  .notre-selection__main-title {
    font-size: 24px;
    letter-spacing: 4.8px;
  }
  
  .notre-selection__subtitle {
    font-size: 14px;
  }
}
.nouveautes {
    padding-top: var(--padding-top, 80px);
    padding-bottom: var(--padding-bottom, 80px);
    background: var(--color-background);
    grid-column: 1 / -1 !important;

    --product-card-image-height: 340px;
  }

  .nouveautes__container {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 20px;
    width: 100%;
  }
  
  /* Header */
  .nouveautes__header {
    text-align: center;
    margin-bottom: 60px;
  }
  
  .nouveautes__title {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-weight: 600;
    font-style: Demi Bold;
    font-size: 32px;
    line-height: 100%;
    letter-spacing: 20%;
    text-align: center;
    text-transform: uppercase;
    margin: 0 0 16px 0;
    color: var(--color-foreground);
  }
  
  .nouveautes__subtitle {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-weight: 400;
    font-style: Regular;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: 0%;
    text-align: center;
    color: rgba(var(--color-foreground), 0.7);
    margin: 0;
  }
  
  /* Carousel */
  .nouveautes__carousel {
    position: relative;
    overflow: hidden;
  }
  
  .nouveautes__track {
    display: flex;
    gap: 20px;
    transition: transform 0.6s ease;
  }
  
  .nouveautes__slide {
    flex: 0 0 calc((100% - 60px) / 4);
    min-width: 0;
    transition: opacity 0.3s ease;
  }
  
  .nouveautes__slide {
    opacity: 1;
  }
  
  @media screen and (max-width: 989px) {
    .nouveautes__slide {
      flex: 0 0 calc((100% - 40px) / 2);
    }
  }
  
  @media screen and (max-width: 749px) {
    .nouveautes__slide {
      flex: 0 0 calc(100% - 20px);
    }
  }
  
  .nouveautes__image-wrapper {
    border: solid 1px #F0F0F0;
  }
  
  .nouveautes__product-card {
    background: white;
    border-radius: 8px;
    overflow: hidden;
    height: 100%;
    display: flex;
    flex-direction: column;
  }
  
  .nouveautes__image-wrapper {
    position: relative;
    overflow: hidden;
    aspect-ratio: 3/4;
  }
  
  .nouveautes__image-link {
    display: block;
    height: 100%;
  }
  
  .nouveautes__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
  }
  
  .nouveautes__product-card:hover .nouveautes__image {
    transform: scale(1.05);
  }
  
  /* Options couleurs */
  .nouveautes__product-options {
    position: absolute;
    bottom: 10px;
    left: 14px;
    right: 14px;
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(8px);
    border-radius: 2px;
    padding: 10px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    opacity: 0;
    transform: translateY(10px);
    transition: all 0.3s ease;
  }
  
  .nouveautes__product-card:hover .nouveautes__product-options {
    opacity: 1;
    transform: translateY(0);
  }
  
  .options-text {
    font-family: var(--font-navigation);
    font-size: 14px;
    color: #858585;
    line-height: 1.14;
  }
  
  .color-swatches {
    display: flex;
    align-items: center;
    gap: -7px;
  }
  
  .color-dot {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    border: 2px solid white;
    background: #F64319;
    margin-left: -7px;
  }
  
  .color-dot:first-child {
    margin-left: 0;
  }
  
  .color-dot:nth-child(2) {
    background: #86BBDA;
  }
  
  .color-dot:nth-child(3) {
    background: #D8A517;
  }
  
  .color-more {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    border: 1px solid white;
    background: white;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: -7px;
    font-family: var(--font-navigation);
    font-size: 14px;
    font-weight: 500;
    color: #B3B3B3;
    letter-spacing: -0.28px;
  }

  /* Badge nouveauté */
  .nouveautes__badge {
    position: absolute;
    top: 10px;
    left: 10px;
    background: white;
    color: #000;
    padding: 4px 8px;
    border-radius: 4px;
    font-family: var(--font-navigation);
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    z-index: 3;
  }

  .nouveautes__badge--new {
    background: white;
    color: #000;
    animation: pulse 2s infinite;
  }

  .nouveautes__badge--sold-out {
    background: #B45C31;
    color: white;
  }

  /* Variation count */
  .nouveautes__variation-count {
    position: absolute;
    bottom: 10px;
    right: 10px;
    background: rgba(0, 0, 0, 0.8);
    color: white;
    padding: 6px 10px;
    border-radius: 20px;
    font-family: var(--font-navigation);
    font-size: 12px;
    font-weight: 500;
    z-index: 3;
    opacity: 0;
    transform: translateY(10px);
    transition: all 0.3s ease;
  }

  .nouveautes__product-card:hover .nouveautes__variation-count {
    opacity: 1;
    transform: translateY(0);
  }

  /* Enhanced hover effects */
  .nouveautes__product-card {
    transition: all 0.3s ease;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  }

  .nouveautes__product-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
  }

  @keyframes pulse {
    0% {
      opacity: 1;
    }
    50% {
      opacity: 0.7;
    }
    100% {
      opacity: 1;
    }
  }

  .nouveautes__wishlist {
    position: absolute;
    top: 10px;
    right: 9px;
    width: 20px;
    height: 20px;
    background: transparent;
    border: none;
    cursor: pointer;
    color: #505050;
    transition: all 0.3s ease;
    z-index: 3;
  }
  
  .nouveautes__wishlist:hover {
    color: #ff6b6b;
    transform: scale(1.1);
  }
  
  .nouveautes__info {
    padding: 20px 16px;
    text-align: left;
  }
  
  .nouveautes__product-title {
    margin: 0 0 12px 0;
    font-family: var(--font-navigation);
    font-size: 16px;
    font-weight: 600;
    line-height: 1.366;
  }
  
  .nouveautes__product-title a {
    color: #000;
    text-decoration: none;
    transition: color 0.3s ease;
  }
  
  .nouveautes__product-title a:hover {
    color: #B45C31;
  }
  
  .nouveautes__price {
    display: flex;
    justify-content: flex-start;
    gap: 8px;
  }
  
  .price-current {
    font-family: var(--font-navigation);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.366;
    color: #000;
  }
  
  .price-compare {
    font-family: var(--font-navigation);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.366;
    color: #858585;
    text-decoration: line-through;
  }
  
  /* Navigation */
  .nouveautes__navigation {
    margin-top: 40px;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  
  .nouveautes__progress-container {
    flex: 1;
    display: flex;
    justify-content: center;
  }
  
  .nouveautes__progress-bar {
    width: 700px;
    height: 1px;
    background: #B3B3B3;
    position: relative;
  }
  
  .nouveautes__progress-fill {
    height: 3px;
    background: #421F07;
    transition: width 0.6s ease;
    width: 25%;
    position: absolute;
    top: -1px;
  }
  
  .nouveautes__arrows {
    display: flex;
    gap: 24px;
    margin-left: 20px;
  }
  
  .nouveautes__arrow {
    width: 32px;
    height: 32px;
    background: transparent;
    border: none;
    cursor: pointer;
    color: #000000;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  
  .nouveautes__arrow:hover {
    color: #ff6b6b;
    transform: scale(1.1);
  }
  
  .nouveautes__arrow:disabled {
    opacity: 0.3;
    cursor: not-allowed;
    color: #ccc;
    pointer-events: none;
  }
  
  .nouveautes__arrow:disabled:hover {
    transform: none;
    color: #ccc;
  }

  /* Responsive Design */
  @media screen and (max-width: 767px) {
    .nouveautes {
      width: 100vw;
      margin-left: calc(-50vw + 50%);
      padding-top: 40px;
      padding-bottom: 40px;
    }
    
    .nouveautes__container {
      padding: 0 16px;
      max-width: none;
    }
    
    .nouveautes__header {
      margin-bottom: 40px;
    }
    
    .nouveautes__carousel {
      overflow: visible;
    }
    
    .nouveautes__track {
      overflow-x: auto;
      scroll-snap-type: x mandatory;
      -webkit-overflow-scrolling: touch;
      scrollbar-width: none;
      -ms-overflow-style: none;
    }
    
    .nouveautes__track::-webkit-scrollbar {
      display: none;
    }
    
    .nouveautes__slide {
      flex: 0 0 280px;
      scroll-snap-align: start;
    }
    
    .nouveautes__navigation {
      display: none;
    }
  }
  
  /* Empty State */
  .nouveautes__empty {
    text-align: center;
    padding: 60px 20px;
    color: rgba(var(--color-foreground), 0.6);
  }
  
  .nouveautes__empty p {
    margin: 0 0 16px 0;
    font-size: 1.125rem;
  }
/* Variantes de matériau */
  .product-material-variants {
    margin: 24px 0;
  }
  
  .product-material-variants__title {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.37;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    margin-bottom: 16px;
    color: var(--color-foreground);
  }
  
  .product-material-variants__grid {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
  }
  
  .material-variant {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  
  .material-variant__thumbnail {
    width: 60px;
    height: 60px;
    border-radius: 8px;
    overflow: hidden;
    border: 1px solid transparent;
    transition: all 0.3s ease;
    cursor: pointer;
  }
  
  .material-variant--current .material-variant__thumbnail {
    border-color: rgb(181, 93, 49);
    cursor: default;
  }
  
  .material-variant__link {
    text-decoration: none;
    color: inherit;
  }
  
  .material-variant__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
  }
  
  .material-variant__placeholder {
    width: 100%;
    height: 100%;
    background: #f5f5f5;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  
  .material-variant__tooltip {
    position: absolute;
    bottom: -35px;
    left: 50%;
    transform: translateX(-50%);
    background: rgba(0, 0, 0, 0.8);
    color: white;
    padding: 6px 12px;
    border-radius: 4px;
    font-size: 12px;
    white-space: nowrap;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
    z-index: 10;
  }
  
  .material-variant__tooltip::before {
    content: '';
    position: absolute;
    top: -4px;
    left: 50%;
    transform: translateX(-50%);
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-bottom: 4px solid rgba(0, 0, 0, 0.8);
  }
  
  .material-variant:hover .material-variant__tooltip {
    opacity: 1;
    visibility: visible;
  }
  
  .material-variant:not(.material-variant--current):hover .material-variant__thumbnail {
    transform: scale(1.05);
    border-color: #ddd;
  }
  
  .material-variant:not(.material-variant--current):hover .material-variant__image {
    transform: scale(1.1);
  }

  /* Layout principal selon maquette */
  .product-page {
    margin: 0 auto;
    padding: 0 1rem;
    margin-top: 180px;
    font-family: var(--font-family);
  }

  /* Fil d'Ariane selon maquette */
  .breadcrumb {
    margin-bottom: 2rem;
  }

  .breadcrumb__list {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 12px;
    line-height: 1.366;
    color: var(--color-text);
  }

  .breadcrumb__separator {
    color: var(--color-text);
  }

  .breadcrumb__current {
    font-weight: 600;
  }

  /* Layout principal */
  .product-main {
    display: grid;
    grid-template-columns: 655px 1fr;
    gap: 63px;
    align-items: start;
    max-width: 1245px;
    margin: 0 auto;
  }

  /* Galerie - Desktop: Vertical, Mobile: Horizontal */
  .product-gallery {
    position: sticky;
    top: 2rem;
    align-self: flex-start;
  }

  /* Mobile: désactiver le sticky pour permettre le scroll naturel */
  @media screen and (max-width: 768px) {
    .product-gallery {
      position: relative !important;
      top: auto;
    }
  }

  .product-gallery__container {
    display: flex;
    gap: 48px;
    align-items: flex-start;
    width: 100%;
    max-width: 655px;
    flex-direction: row; /* Miniatures à gauche, image principale à droite */
  }

  /* Slider vertical miniatures exactement selon maquette DESKTOP */
  .product-gallery__thumbnails-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 27px;
    width: 149px;
  }

  .product-gallery__nav {
    width: 13px;
    height: 13px;
    background: none;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-text);
    transition: opacity 0.2s;
    padding: 0;
  }

  .product-gallery__nav:hover {
    opacity: 0.7;
  }

  .product-gallery__nav:disabled {
    opacity: 0.3;
    cursor: not-allowed;
  }

  .product-gallery__nav svg {
    width: 13px;
    height: 7px;
  }

  /* Boutons navigation verticale desktop */
  .product-gallery__nav--up,
  .product-gallery__nav--down {
    display: flex;
  }

  /* Boutons navigation horizontale mobile - cachés par défaut */
  .product-gallery__nav--prev,
  .product-gallery__nav--next {
    display: none;
  }

  .product-gallery__thumbnails {
    overflow: hidden;
    height: 495px;
  }

  .product-gallery__thumbnails-track {
    display: flex;
    flex-direction: column;
    gap: 24px;
    transition: transform 0.3s ease;
    transform: translateY(0px);
  }

  .product-gallery__thumbnail {
    width: 149px;
    height: 149px;
    border: 2px solid transparent;
    border-radius: var(--border-radius);
    background: none;
    cursor: pointer;
    overflow: hidden;
    transition: border-color 0.2s;
    padding: 0;
  }

  .product-gallery__thumbnail:hover,
  .product-gallery__thumbnail--active {
    border-color: var(--color-primary);
  }

  .product-gallery__thumbnail-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  /* Image principale */
  .product-gallery__main {
    flex: 1;
    max-width: 458px;
  }

  .product-gallery__main-wrapper {
    position: relative;
    width: 100%;
    max-width: 458px;
    height: 638px;
    border-radius: 8px;
    overflow: hidden;
    border: solid 1px #F0F0F0;
  }

  .product-gallery__main-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  /* Badge Nouveauté */
  .product-badge {
    position: absolute;
    top: 10px;
    left: 10px;
    background-color: #FFFFFF;
    border-radius: 4px;
    padding: 6px 8px;
    white-space: nowrap;
    font-size: 12px;
    font-weight: 600;
    color: #000000;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    z-index: 2;
  }

  .product-badge__text {
    font-size: 12px;
    line-height: 1;
    color: #000000;
    font-weight: 600;
  }

  /* Informations produit selon maquette */
  .product-info {
    display: flex;
    flex-direction: column;
    gap: 20px;
    max-width: 480px;
    width: 100%;
  }

  /* En-tête avec titre et favoris */
  .product-info__title-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 2rem;
  }

  .product-info__title {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
    font-weight: 600;
    font-size: 32px;
    line-height: 1.37;
    letter-spacing: 0;
    text-transform: none;
    color: var(--color-text);
    margin: 0;
    flex: 1;
  }

  .product-info__favorite {
    width: 20px;
    height: 20px;
    background: none;
    border: none;
    cursor: pointer;
    flex-shrink: 0;
    margin-top: 0.25rem;
  }

  .product-info__price {
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 24px;
    line-height: 1.366;
    color: var(--color-text);
    margin-top: 1rem;
  }

  /* Description */
  .product-info__description {
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 16px;
    line-height: 1.366;
    color: var(--color-text);
    max-width: 409px;
  }

  /* Stock status selon maquette */
  .stock-status {
    display: flex;
    align-items: center;
    gap: 6px;
    max-width: 172px;
  }

  .stock-status__indicator {
    position: relative;
    width: 17px;
    height: 17px;
    border: 1px solid var(--color-success);
    border-radius: 50%;
  }

  .stock-status__dot {
    position: absolute;
    top: 2px;
    left: 2px;
    width: 11px;
    height: 11px;
    background: var(--color-success);
    border-radius: 50%;
  }

  .stock-status__text {
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 16px;
    line-height: 1.366;
    color: var(--color-success);
  }

  .stock-status--out .stock-status__indicator {
    border-color: #dc2626;
  }

  /* Styles pour restaurer l'apparence originale des dropdowns */
  .product-form__input--dropdown {
    margin-bottom: 2rem;

    &:last-of-type {
      margin-bottom: 0;
    }
  }

  .product-form__input--dropdown .form__label {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 1rem;
    display: block;
  }

  .product-form__input--dropdown .select {
    position: relative;
  }

  .product-form__input--dropdown .select__select {
    width: 100%;
    padding: 1rem 3rem 1rem 1rem;
    border: 1px solid #B3B3B3;
    border-radius: 3px;
    background: white;
    font-size: 16px;
    appearance: none;
    cursor: pointer;
    transition: border-color 0.2s;
  }

  .product-form__input--dropdown .select__select:hover {
    border-color: var(--color-primary);
  }

  .product-form__input--dropdown .select__select:focus {
    outline: none;
    border-color: var(--color-primary);
    box-shadow: 0 0 0 2px rgba(var(--color-primary-rgb), 0.1);
  }

  .product-form__input--dropdown .svg-wrapper {
    position: absolute;
    right: 1rem;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
    width: 20px;
    height: 20px;
  }

  .product-form__input--dropdown .svg-wrapper svg {
    width: 100%;
    height: 100%;
    fill: var(--color-text);
    transition: transform 0.3s ease;
  }

  .product-form__input--dropdown .select.open .svg-wrapper svg {
    transform: rotate(180deg);
  }

  .stock-status--out .stock-status__dot {
    background: #dc2626;
  }

  /* Styles pour les filtres textuels personnalisés */
  .custom-filters {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 20px;
  }

  .custom-filter {
    width: 100%;
    /*margin-bottom: 0;*/
  }
  
  .custom-filter .form__label {
    margin-bottom: 0.5rem;
  }

  .custom-filter__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.5rem;
  }

  .custom-filter__guide-btn {
    background: none;
    border: none;
    color: var(--color-primary, #000);
    font-size: 12px;
    text-decoration: underline;
    cursor: pointer;
    padding: 0;
    font-family: inherit;
  }

  .custom-filter__guide-btn:hover {
    opacity: 0.7;
  }

  /* Sidebar guide */
  .guide-sidebar {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9999;
    visibility: hidden;
    opacity: 0;
    transition: visibility 0.3s, opacity 0.3s;
  }

  /* Mobile: utiliser position relative pour le guide */
  @media screen and (max-width: 768px) {
    .guide-sidebar {
      position: relative;
      width: 100%;
      height: auto;
      top: auto;
      left: auto;
    }
  }

  .guide-sidebar.is-open {
    visibility: visible;
    opacity: 1;
  }

  .guide-sidebar__overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.4);
    cursor: pointer;
  }

  .guide-sidebar__content {
    position: absolute;
    top: 0;
    right: 0;
    width: 400px;
    max-width: 90vw;
    height: 100%;
    background: white;
    transform: translateX(100%);
    transition: transform 0.3s ease;
    display: flex;
    flex-direction: column;
    overflow: hidden;
  }

  .guide-sidebar.is-open .guide-sidebar__content {
    transform: translateX(0);
  }

  .guide-sidebar__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.5rem;
    border-bottom: 1px solid #e5e5e5;
    flex-shrink: 0;
  }

  .guide-sidebar__title {
    margin: 0;
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 1.37;
  }

  .guide-sidebar__close {
    background: none;
    border: none;
    cursor: pointer;
    padding: 0.5rem;
    margin: -0.5rem;
    color: #666;
  }

  .guide-sidebar__close:hover {
    color: #000;
  }

  .guide-sidebar__body {
    flex: 1;
    overflow-y: auto;
    padding: 30px;
  }

  /* Guide couleur */
  .color-guide__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
    margin-top: 1rem;
  }

  .color-guide__item {
    text-align: center;
  }

  .color-guide__swatch {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    margin: 0 auto 0.5rem;
    border: 2px solid #e5e5e5;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }

  .color-guide__name {
    font-size: 0.875rem;
    color: #333;
    font-weight: 500;
  }

  /* Guide des tailles - Structure principale */
  .size-guide {
    display: flex;
    flex-direction: column;
    gap: 36px;
    width: 100%;
  }

  /* Titre principal du guide */
  .size-guide__title {
    font-family: 'Avenir Next', sans-serif;
    font-weight: 600;
    font-size: 24px;
    line-height: 1.366;
    color: #000000;
    margin: 0;
  }

  /* Section accordéon */
  .size-guide__accordion {
    display: flex;
    flex-direction: column;
    gap: 24px;
    width: 100%;
  }

  /* Item d'accordéon individuel */
  .size-guide__accordion-item {
    display: flex;
    flex-direction: column;
    gap: 24px;
    width: 100%;
  }

  /* Premier item sans bordure supérieure */
  .size-guide__accordion-item:first-child {
    border-top: none;
    padding-top: 0;
  }

  /* Items suivants avec bordure supérieure */
  .size-guide__accordion-item:not(:first-child) {
    border-top: 1px solid #B3B3B3;
    padding-top: 20px;
  }

  /* Titre de section d'accordéon */
  .size-guide__accordion-title {
    font-family: 'Avenir Next', sans-serif;
    font-weight: 600;
    font-size: 16px;
    line-height: 1.366;
    color: #000000;
    margin: 0 0 24px 0;
  }

  /* Texte de contenu d'accordéon */
  .size-guide__accordion-text {
    font-family: 'Avenir Next', sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.366;
    color: #000000;
    margin: 0;
    white-space: pre-line;
  }

  /* Espacement sous les balises strong */
  .size-guide__accordion-text p:has(strong),
  .metafield-rich_text_field p:has(strong) {
    margin-bottom: 24px !important;
  }

  /* Listes à puces et numérotées alignées à gauche */
  .size-guide__accordion-text ul,
  .size-guide__accordion-text ol {
    margin: 0;
    padding-left: 10px;
    list-style-position: outside;
  }

  .size-guide__accordion-text li {
    margin: 0;
    padding: 0;
  }

  /* Tableau des tailles */
  .size-guide__table {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 20px 0;
    border-top: 1px solid #B3B3B3;
    border-bottom: 1px solid #B3B3B3;
    width: 100%;
  }

  /* En-tête du tableau */
  .size-guide__table-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 14px;
  }

  /* Titre de colonne */
  .size-guide__table-header-title {
    font-family: 'Avenir Next', sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.366;
    color: #000000;
    margin: 0;
  }

  /* Corps du tableau - chaque ligne sur une seule ligne */
  .size-guide__table-body {
    display: flex;
    flex-direction: column;
    gap: 24px;
    width: 100%;
  }

  /* Ligne de tableau */
  .size-guide__table-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 0;
    border-top: 1px solid #E8E8E8;
  }

  .size-guide__table-row:first-child {
    border-top: none;
    padding-top: 0;
  }

  /* Cellule de tableau */
  .size-guide__table-cell {
    font-family: 'Avenir Next', sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.366;
    color: #000000;
    margin: 0;
  }

  /* Cellule de longueur - alignée à gauche */
  .size-guide__table-cell--length {
    text-align: left;
  }

  /* Cellule de taille - alignée à droite */
  .size-guide__table-cell--size {
    text-align: right;
  }

  /* Responsive */
  @media screen and (max-width: 768px) {
    .size-guide {
      max-width: 100%;
      gap: 24px;
    }

    .size-guide__title {
      font-size: 20px;
    }

    .size-guide__accordion {
      gap: 20px;
    }

    .size-guide__accordion-item:not(:first-child) {
      padding-top: 16px;
    }

    .size-guide__table {
      padding: 16px 0;
    }

    .size-guide__table-header {
      gap: 24px;
    }

    .size-guide__table-body {
      gap: 16px;
    }

    .size-guide__table-cell {
      width: auto;
      font-size: 14px;
    }
  }

  @media (max-width: 768px) {
    .product-page {
      margin-top: 20px !important;
    }

    .guide-sidebar__content {
      width: 100%;
    }

    .color-guide__grid {
      grid-template-columns: repeat(2, 1fr);
    }

    .size-guide__list {
      grid-template-columns: repeat(2, 1fr);
    }
  }

  .stock-status--out .stock-status__text {
    color: #dc2626;
  }



  /* Quantité et bouton selon maquette exacte */
  .product-form__actions {
    display: flex;
    gap: 20px;
    align-items: center;
  }

  .quantity-selector {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border: 1px solid #B3B3B3;
    border-radius: 3px;
    background: var(--color-white);
    width: 105px;
    height: 52px;
    padding: 0 18px;
  }

  .quantity-selector__btn {
    border: none;
    background: transparent;
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 18px;
    line-height: 1;
    color: var(--color-text);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    width: 20px;
    height: 20px;
    margin: 0;
  }

  .quantity-selector__input {
    border: none;
    background: transparent;
    text-align: center;
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 16px;
    line-height: 1.366;
    color: var(--color-text);
    -moz-appearance: textfield;
    appearance: textfield;
    width: 20px;
    padding: 0;
    margin: 0;
    outline: none;
  }

  .quantity-selector__input::-webkit-inner-spin-button,
  .quantity-selector__input::-webkit-outer-spin-button {
    -webkit-appearance: none;
  }

  .btn-add-to-cart {
    flex: 1;
    height: 52px;
    background: var(--color-primary);
    border: none;
    border-radius: var(--border-radius);
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 14px;
    line-height: 1.366;
    color: var(--color-white);
    cursor: pointer;
    transition: opacity 0.2s;
    border-radius: 3px;
    padding: 0 30px;
    max-width: 402px;
  }

  .btn-add-to-cart:hover:not(:disabled) {
    opacity: 0.9;
  }

  .btn-add-to-cart:disabled {
    opacity: 0.5;
    cursor: not-allowed;
  }
  
  .btn-add-to-cart__loading {
    display: none;
    align-items: center;
    gap: 8px;
  }
  
  .btn-add-to-cart--loading .btn-add-to-cart__text {
    display: none;
  }
  
  .btn-add-to-cart--loading .btn-add-to-cart__loading {
    display: flex;
  }
  
  .spinner {
    animation: spin 1s linear infinite;
  }
  
  @keyframes spin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
  }

  /* Services selon maquette */
  .product-services {
    display: flex;
    justify-content: space-between;
    gap: 47px;
  }

  .service-item {
    display: flex;
    align-items: center;
    gap: 14px;
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 12px;
    line-height: 1.366;
    color: var(--color-text);
  }

  .service-item svg {
    width: 24px;
    height: 24px;
    flex-shrink: 0;
  }

  /* Accordéons selon maquette exacte */
  .product-accordions {
    display: flex;
    flex-direction: column;
    margin-top: 50px;
  }

  .accordion {
    border-top: 1px solid #B3B3B3;
    padding: 20px 0 0;
    padding-bottom: 20px;
  }

  .accordion__toggle {
    width: 100%;
    background: none;
    border: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
    cursor: pointer;
    padding: 0;
  }

  .accordion__title {
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 16px;
    line-height: 1.366;
    color: var(--color-text);
    text-align: left;
  }

  .accordion__icon {
    width: 20px;
    height: 20px;
    transition: transform 0.3s;
    padding: 0 5px;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .accordion__icon svg {
    width: 16px;
    height: 9px;
  }

  .accordion__toggle[aria-expanded="true"] .accordion__icon {
    transform: rotate(180deg);
  }

  .accordion__content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
  }

  .accordion__inner {
    padding: 20px 0 0;
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 16px;
    line-height: 1.366;
    color: var(--color-text);
  }

  /* Responsive */
  @media (max-width: 768px) {

    .breadcrumb-list{
      flex-wrap: wrap !important;
    }
    .product-page {
      padding-left: 0;
      padding-right: 0;
    }

    .breadcrumb {
      padding-left: 20px;
      padding-right: 20px;
    }

    .product-main {
      grid-template-columns: 1fr;
      gap: 1rem; /* Réduit l'espacement entre galerie et infos produit */
      margin-top: 15px !important;
      width: 100%;
      max-width: 100vw;
      overflow-x: visible;
      padding-left: 0;
      padding-right: 0;
    }

    .product-gallery__container {
      flex-direction: column-reverse;
      gap: 20px;
      width: 100%;
      max-width: 100%;
      overflow: visible;
    }

    .product-gallery__thumbnails-wrapper {
      display: contents; /* Élimine le niveau de conteneur superflu */
    }

    .product-gallery__nav {
      width: 30px;
      height: 30px;
      background: rgba(255, 255, 255, 0.9);
      border: 1px solid transparent;
      border-radius: 50%;
      flex-shrink: 0;
      z-index: 10;
    }

    /* Cacher les boutons verticaux sur mobile */
    .product-gallery__nav--up,
    .product-gallery__nav--down {
      display: none;
    }

    /* Cacher les boutons horizontaux sur mobile pour permettre scroll natif */
    .product-gallery__nav--prev,
    .product-gallery__nav--next {
      display: none !important; /* Toujours cachés sur mobile */
    }

    .product-gallery__nav--prev svg {
      transform: rotate(90deg);
    }

    .product-gallery__nav--next svg {
      transform: rotate(-90deg);
    }

    .product-gallery__thumbnails {
      width: 100vw !important;
      height: auto !important; /* Hauteur automatique sur mobile */
      margin: 0 calc(-1 * var(--page-margin)) !important;
      padding: 0 var(--page-margin) !important;
      overflow-x: auto !important;
      scroll-behavior: smooth;
      scroll-snap-type: x mandatory;
      -ms-overflow-style: none;
      scrollbar-width: none;
    }
    
    .product-gallery__thumbnails::-webkit-scrollbar {
      display: none;
    }
    
    .product-gallery__thumbnails-track {
      min-width: calc(100% + 40px) !important;
      padding: 2px 20px !important;
      scroll-snap-align: start;
    }

    .product-gallery__thumbnails::-webkit-scrollbar {
      display: none;
    }

    .product-gallery__thumbnails-track {
      display: flex;
      flex-direction: row;
      gap: 10px;
      padding: 2px 0;
      min-width: max-content;
      width: max-content;
      transform: none !important;
      min-width: 100%; /* Force full-width for scroll container */
    }

    .product-gallery__thumbnails {
      flex: none; /* Disable flex shrinking */
      width: 100vw; /* Full viewport width */
      margin-left: -20px; /* Compensate padding */
      margin-right: -20px;
      padding: 0 20px !important; /* Add touch padding */
    }

    .product-gallery__thumbnail {
      width: 80px;
      height: 80px;
      flex-shrink: 0;
    }

    .product-gallery__main-wrapper {
      width: calc(100vw);
      max-width: calc(100vw);
      height: auto;
      max-height: 400px;
      aspect-ratio: auto;
      border-radius: 0;
      margin-left: calc(-1 * var(--page-margin));
      margin-right: calc(-1 * var(--page-margin));
      position: relative !important; /* Force relative positioning on mobile */
    }

    .product-gallery__thumbnails {
      position: relative !important; /* Force relative positioning on mobile */
    }

    .product-gallery__main-image {
      border-radius: 0;
      max-height: 400px;
      object-fit: contain;
    }

    .product-info__favorite {
      position: absolute;
      top: 70px;
      right: 10px;
      z-index: 10;
      background: rgba(255, 255, 255, 0.9);
      border: none;
      border-radius: 50%;
      width: 40px;
      height: 40px;
      display: flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    }

    .product-info__favorite svg {
      width: 20px;
      height: 20px;
      fill: none;
      stroke: var(--color-primary);
      stroke-width: 2;
    }

    .product-info__favorite--active svg {
      fill: var(--color-primary);
    }

    .product-info {
      max-width: 100%;
      padding: 0 20px;
      width: 100%;
      box-sizing: border-box;
      margin-top: -10px; /* Réduit l'espacement au-dessus du titre/prix */
    }

    .product-info__title {
      width: 100%;
      font-size: 24px;
      margin-bottom: 2px;
      text-align: left;
      text-transform: none;
    }

    .product-info__price {
      font-size: 16px;
      text-align: left;
      margin-bottom: 12px;
    }

    .product-form__actions {
      flex-direction: row;
      gap: 10px;
      width: 100%;
      max-width: 100%;
      padding: 0 20px;
    }

    .quantity-selector {
      width: 105px;
      flex-shrink: 0;
    }

    .btn-add-to-cart {
      max-width: 100%;
      width: auto;
      flex: 1;
    }

    .product-services {
      flex-direction: column;
      gap: 1rem;
    }

    .product-form{
      position: fixed;
      bottom: 20px;
      z-index: 99;
      width: 100%;
      margin-left: -20px;
    }
  }
.reassurance-banner {
    background-color: {{ section.settings.background_color }};
    padding: var(--padding-top, 60px) 0 var(--padding-bottom, 60px);
  }
  
  .reassurance-banner__container {
    max-width: var(--page-width, 1200px);
    margin: 0 auto;
    padding: 0 var(--page-margin, 20px);
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 29px;
    align-items: start;
  }
  
  .reassurance-banner__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 24px;
  }
  
  .reassurance-banner__icon {
    width: 42px;
    height: 42px;
    flex-shrink: 0;
  }
  
  .reassurance-banner__icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    filter: {{ section.settings.icon_color_filter }};
  }
  
  .reassurance-banner__content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
  }
  
  .reassurance-banner__title {
    font-family: var(--font-navigation, 'Avenir Next', sans-serif);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.366;
    color: {{ section.settings.text_color }};
    margin: 0;
  }
  
  .reassurance-banner__text {
    font-family: var(--font-navigation, 'Avenir Next', sans-serif);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.366;
    color: {{ section.settings.text_color }};

    a {
      color: {{ section.settings.text_color }};
    }
  }
  
  .reassurance-banner__button {
    font-family: var(--font-navigation, 'Avenir Next', sans-serif);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.366;
    color: #000 !important;
    text-decoration: underline;
    text-underline-offset: 4px;
    transition: opacity 0.2s ease;
  }
  
  .reassurance-banner__button:hover {
    opacity: 0.7;
  }
  
  /* Responsive Design */
  @media screen and (max-width: 1024px) {
    .reassurance-banner__container {
      grid-template-columns: repeat(auto-fit, minmax(50%, 1fr));
      gap: 25px;
    }
  }
  
  @media screen and (max-width: 768px) {
    .reassurance-banner {
      padding: 30px 0 40px 0;
    }
    
    .reassurance-banner__container {
      grid-template-columns: repeat(2, 1fr);
      gap: 20px;
      padding: 0 16px;
      justify-content: center;
    }
    
    .reassurance-banner__item {
      gap: 16px;
    }
    
    .reassurance-banner__title,
    .reassurance-banner__text,
    .reassurance-banner__button {
      font-size: 14px;
    }
  }
  
  @media screen and (max-width: 480px) {
 
    
    .reassurance-banner__item {
      gap: 20px;
    }
  }
.collection-products-grid {
    padding-top: var(--section-padding-top, 60px);
    padding-bottom: var(--section-padding-bottom, 60px);
    background-color: var(--color-background, #FFFFFF);
    grid-column: 1 / -1 !important;
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    left: 0 !important;
    right: 0 !important;
    position: relative;
  }

  /* Override any parent grid positioning with higher specificity */
  .shopify-section > .collection-products-grid,
  .shopify-section > #main-collection-product-grid,
  [data-id*="template--"] > .collection-products-grid {
    grid-column: 1 / -1 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    justify-self: stretch !important;
  }

  /* Force reset for grid containers */
  .shopify-section:has(> .collection-products-grid) {
    display: block !important;
  }

  .shopify-section > *:where(.collection-products-grid) {
    grid-column: 1 / -1 !important;
  }

  /* Ultra-specific override for Shopify grid system */
  .shopify-section > #main-collection-product-grid,
  .shopify-section > [data-id*="template--"] > .collection-products-grid,
  .shopify-section > .collection-products-grid[data-search-grid],
  .shopify-section > * > .collection-products-grid,
  .shopify-section .collection-products-grid {
    grid-column: 1 / -1 !important;
    grid-column-start: 1 !important;
    grid-column-end: -1 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    left: 0 !important;
    right: 0 !important;
    justify-self: center !important;
    align-self: center !important;
  }

  /* Reset the entire grid system for collection pages */
  body:has(.collection-products-grid) .shopify-section > * {
    grid-column: 1 / -1 !important;
  }

  body:has(.collection-products-grid) .shopify-section {
    display: block !important;
  }

  .collection-products-grid__container {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 20px;
    width: 100%;
    box-sizing: border-box;
    position: relative;
    left: 0;
    right: 0;
  }

/* En-tête de recherche */
.search-header {
  text-align: center;
  margin-bottom: 48px;
}

.search-header__title {
  font-family: 'Avenir Next', sans-serif;
  font-size: 32px;
  font-weight: 600;
  color: var(--color-text, #000000);
  margin: 0 0 24px 0;
  line-height: 1.2;
}

/* Formulaire de recherche */
.search-form {
  max-width: 600px;
  margin: 0 auto;
}

.search-form__input-wrapper {
  position: relative;
  display: flex;
  align-items: center;
}

.search-form__input {
  font-family: 'Avenir Next', sans-serif;
  font-size: 16px;
  color: var(--color-text, #000000);
  background: #FFFFFF;
  border: 2px solid #E0E0E0;
  border-radius: 10px;
  padding: 16px 60px 16px 24px;
  width: 100%;
  box-sizing: border-box;
  transition: all 0.2s ease;
}

.search-form__input:focus {
  outline: none;
  border-color: var(--color-primary, #B45C31);
  box-shadow: 0 0 0 3px rgba(180, 92, 49, 0.1);
}

.search-form__input::placeholder {
  color: #AAAAAA;
}

.search-form__submit {
  position: absolute;
  right: 8px;
  background: transparent;
  border: none;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s ease;
  color: #FFFFFF;
  color: #000000;
}

/* Filtres par type */
.search-type-filters {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

.filters-toggle--active {
  background-color: var(--color-primary, #B45C31) !important;
  border-color: var(--color-primary, #B45C31) !important;
  color: #FFFFFF !important;
}

/* Debug Info */
.debug-info {
  background: #f0f0f0;
  padding: 20px;
  margin-bottom: 20px;
  border-radius: 8px;
  font-family: monospace;
  font-size: 12px;
}

/* Barre d'outils */
.collection-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 16px;
  padding: 16px 0;
  flex-wrap: wrap;
}

/* Bouton Filtres */
.collection-toolbar__filters-toggle {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: 'Avenir Next', sans-serif;
  font-size: 14px;
  font-weight: 500;
  color: var(--color-text, #000000);
  background: transparent;
  border: 1px solid #E0E0E0;
  border-radius: 6px;
  padding: 10px 16px;
  cursor: pointer;
  transition: all 0.2s ease;
}

.collection-toolbar__filters-toggle:hover {
  border-color: var(--color-text, #000000);
  background-color: #F9F9F9;
}

.filters-toggle__icon {
  width: 16px;
  height: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.filters-toggle__count {
  font-size: 12px;
  color: #858585;
}

/* Tri */
.collection-toolbar__sort {
  position: relative;
  display: flex;
  align-items: center;
  gap: 8px;
}

.sort-label {
  font-family: 'Avenir Next', sans-serif;
  font-size: 14px;
  font-weight: 700;
  color: var(--color-text, #000000);
  white-space: nowrap;
}

.sort-select {
  font-family: 'Avenir Next', sans-serif;
  font-size: 14px;
  color: var(--color-text, #000000);
  background: #FFFFFF;
  border: 1px solid #E0E0E0;
  border-radius: 6px;
  padding: 10px 32px 10px 16px;
  min-width: 180px;
  cursor: pointer;
  appearance: none;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
  background-position: right 12px center;
  background-repeat: no-repeat;
  background-size: 16px;
  text-align: right;
  direction: rtl;
}

.sort-select option {
  direction: ltr;
  text-align: left;
}

/* Conteneur tri et résultats */
.collection-toolbar__sort-and-results {
  display: flex;
  align-items: center;
  gap: 20px;
  margin-left: auto;
}

/* Informations résultats */
.collection-toolbar__results {
  white-space: nowrap;
}

.results-info {
  font-family: 'Avenir Next', sans-serif;
  font-size: 14px;
  color: #858585;
  text-align: right;
}

.sort-select:focus {
  outline: 2px solid var(--color-primary, #B45C31);
  outline-offset: 2px;
}

/* Grille de produits */
.products-grid {
    display: grid;
    grid-template-columns: repeat(var(--columns-mobile, 2), 1fr);
    gap: 20px;
    margin-bottom: 48px;
  }

/* Cartes de résultats de recherche */
.search-result-card {
  background: #FFFFFF;
  border-radius: 8px;
  overflow: hidden;
  transition: all 0.3s ease;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.search-result-card:hover {
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
  transform: translateY(-2px);
}

.search-result-card__image {
  position: relative;
  width: 100%;
  height: 200px;
  overflow: hidden;
}

.search-result-card__image-link {
  display: block;
  width: 100%;
  height: 100%;
}

.search-result-card__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}

.search-result-card:hover .search-result-card__img {
  transform: scale(1.05);
}

.search-result-card__content {
  padding: 20px;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}

.search-result-card__content--full {
  padding: 24px;
}

.search-result-card__type {
  font-family: 'Avenir Next', sans-serif;
  font-size: 12px;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--color-primary, #B45C31);
  margin-bottom: 8px;
}

.search-result-card__title {
  font-family: 'Avenir Next', sans-serif;
  font-size: 16px;
  font-weight: 600;
  color: var(--color-text, #000000);
  margin: 0 0 12px 0;
  line-height: 1.3;
}

.search-result-card__title a {
  color: inherit;
  text-decoration: none;
  transition: color 0.2s ease;
}

.search-result-card__title a:hover {
  color: var(--color-primary, #B45C31);
}

.search-result-card__excerpt {
  font-family: 'Avenir Next', sans-serif;
  font-size: 14px;
  color: #666666;
  line-height: 1.4;
  margin: 0 0 12px 0;
  flex-grow: 1;
}

.search-result-card__meta {
  font-family: 'Avenir Next', sans-serif;
  font-size: 12px;
  color: #999999;
  margin-top: auto;
}

/* Pagination */
.collection-pagination {
  margin-top: 48px;
}

.pagination-list {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  list-style: none;
  padding: 0;
  margin: 0;
  flex-wrap: wrap;
}

.pagination-item {
  display: flex;
}

.pagination-link {
  display: flex;
  align-items: center;
  gap: 4px;
  font-family: 'Avenir Next', sans-serif;
  font-size: 14px;
  font-weight: 500;
  color: var(--color-text, #000000);
  text-decoration: none;
  padding: 8px 12px;
  border-radius: 6px;
  transition: all 0.2s ease;
  min-width: 40px;
  justify-content: center;
}

.pagination-link:hover {
  background-color: #F5F5F5;
}

.pagination-link--current {
  background-color: var(--color-primary, #B45C31);
  color: #FFFFFF;
}

.pagination-link--current:hover {
  background-color: var(--color-primary, #B45C31);
}

.pagination-ellipsis {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8px 4px;
  color: #858585;
  font-size: 14px;
}

.pagination-arrow {
  font-size: 16px;
}

/* État vide */
.collection-empty {
  text-align: center;
  padding: 80px 20px;
}

.collection-empty__title {
  font-family: 'Avenir Next', sans-serif;
  font-size: 24px;
  font-weight: 600;
  color: var(--color-text, #000000);
  margin: 0 0 16px 0;
}

.collection-empty__description {
  font-family: 'Avenir Next', sans-serif;
  font-size: 16px;
  color: #858585;
  margin: 0 0 24px 0;
  max-width: 400px;
  margin-left: auto;
  margin-right: auto;
}

.collection-empty__button {
  font-family: 'Avenir Next', sans-serif;
  font-size: 14px;
  font-weight: 500;
  color: var(--color-primary, #B45C31);
  background: transparent;
  border: 1px solid var(--color-primary, #B45C31);
  border-radius: 6px;
  padding: 12px 24px;
  cursor: pointer;
  transition: all 0.2s ease;
}

.collection-empty__button:hover {
  background-color: var(--color-primary, #B45C31);
  color: #FFFFFF;
}

/* Responsive Design */
@media screen and (min-width: 768px) {
  .products-grid {
    grid-template-columns: repeat(var(--columns-tablet, 3), 1fr);
    gap: 24px;
  }
  
  .collection-toolbar {
    flex-wrap: nowrap;
  }
  
  .collection-toolbar__results {
    text-align: right;
  }
  
  .search-result-card__image {
    height: 250px;
  }
}

@media screen and (min-width: 1024px) {
  .products-grid {
    grid-template-columns: repeat(var(--columns-desktop, 4), 1fr);
    gap: 28px;
  }
  
  .search-result-card__image {
    height: 300px;
  }
}

@media screen and (max-width: 767px) {
  .collection-products-grid__container {
    padding: 0 16px;
  }
  
  .search-header {
    margin-bottom: 32px;
  }
  
  .search-header__title {
    font-size: 24px;
    margin-bottom: 16px;
  }
  
  .search-form__input {
    font-size: 14px;
    padding: 12px 50px 12px 16px;
  }
  
  .search-form__submit {
    width: 32px;
    height: 32px;
    right: 6px;
  }
  
  .collection-toolbar {
    gap: 12px;
    padding: 12px 0;
  }
  
  .collection-toolbar__filters-toggle {
    font-size: 13px;
    padding: 8px 12px;
  }
  
  .collection-toolbar__results {
    order: 3;
    width: 100%;
    text-align: center;
    margin-top: 8px;
  }
  
  .search-type-filters {
    order: 1;
    gap: 8px;
  }
  
  .products-grid {
    gap: 16px;
    margin-bottom: 32px;
  }
  
  .pagination-list {
    gap: 4px;
  }
  
  .pagination-link {
    padding: 6px 8px;
    font-size: 13px;
    min-width: 32px;
  }
  
  .pagination-text {
    display: none;
  }
  
  .search-result-card__image {
    height: 180px;
  }
  
  .search-result-card__content {
    padding: 16px;
  }
}

@media screen and (max-width: 480px) {
  .collection-empty {
    padding: 60px 16px;
  }
  
  .collection-empty__title {
    font-size: 20px;
  }
  
  .collection-empty__description {
    font-size: 14px;
  }
  
  .search-result-card__image {
    height: 160px;
  }
}
/* Reset et variables */
  .store-locator {
    position: relative;
    width: 100%;
    min-height: 600px;
  }
  
  .store-locator__wrapper {
    display: flex;
    position: relative;
    width: 100%;
    min-height: 760px;
    align-items: stretch;
    margin: 0;
    padding: 0;
  }
  
  /* ===== COLONNE DE GAUCHE : Liste des boutiques ===== */
  .store-locator__sidebar {
    width: 538px;
    background-color: var(--primary-color, #b45c31);
    position: relative;
    height: 760px;
    flex-shrink: 0;
  }
  
  .store-locator__sidebar-inner {
    padding: 0 70px 0 70px;
    height: 100%;
    display: flex;
    flex-direction: column;
  }
  
  .store-locator__spacer {
    height: 89px;
    flex-shrink: 0;
  }
  
  .store-locator__content {
    display: flex;
    flex-direction: column;
    gap: 20px;
    flex: 1;
    min-height: 0;
  }
  
  .store-locator__title {
    font-family: "The Seasons Light", serif;
    font-style: normal;
    font-weight: 300;
    font-size: 40px;
    line-height: 40px;
    color: var(--text-color, #ffffff);
    text-transform: uppercase;
    margin: 0;
    flex-shrink: 0;
  }
  
  .store-locator__stores-list {
    display: flex;
    flex-direction: column;
    gap: 20px;
    overflow-y: auto;
    overflow-x: hidden;
    height: 571px;
    padding-right: 10px;
    padding-bottom: 20px;
  }
  
  /* Scrollbar personnalisée */
  .store-locator__stores-list::-webkit-scrollbar {
    width: 6px;
  }
  
  .store-locator__stores-list::-webkit-scrollbar-track {
    background: rgba(255, 255, 255, 0.1);
    border-radius: 3px;
  }
  
  .store-locator__stores-list::-webkit-scrollbar-thumb {
    background: rgba(255, 255, 255, 0.3);
    border-radius: 3px;
  }
  
  .store-locator__stores-list::-webkit-scrollbar-thumb:hover {
    background: rgba(255, 255, 255, 0.5);
  }
  
  /* Cartes de boutique */
  .store-locator__store-card {
    background-color: var(--card-bg-color, #e8e8e8);
    border-radius: 4px;
    padding: 20px 20px 24px 20px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    cursor: pointer;
    transition: all 0.2s ease;
    flex-shrink: 0;
  }
  
  /* État par défaut : toutes les cartes sont visibles */
  .store-locator__store-card {
    display: flex;
    opacity: 1;
  }
  
  /* Quand une région est sélectionnée, masquer les autres cartes */
  .store-locator__store-card.is-filtered-out {
    display: none;
  }
  
  /* Carte active (cliquée) */
  .store-locator__store-card.is-active {
    background-color: var(--active-color, #91400a);
  }
  
  .store-locator__store-card.is-active .store-locator__store-name,
  .store-locator__store-card.is-active .store-locator__address,
  .store-locator__store-card.is-active .store-locator__schedule {
    color: #ffffff;
  }
  
  .store-locator__store-card.is-active .store-locator__icon svg {
    color: #ffffff;
  }
  
  .store-locator__store-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  
  .store-locator__store-name {
    font-family: "Avenir Next", sans-serif;
    font-weight: 600;
    font-size: 14px;
    line-height: 18px;
    color: #282828;
    margin: 0;
    /*text-transform: uppercase;*/
  }
  
  .store-locator__store-details {
    display: flex;
    flex-direction: column;
    gap: 8px;
  }
  
  .store-locator__store-row {
    display: flex;
    align-items: flex-start;
    gap: 8px;
  }
  
  .store-locator__icon {
    flex-shrink: 0;
    color: #282828;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 2px;
  }
  
  .store-locator__address {
    font-family: "Avenir Next", sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 16px;
    color: #505050;
    margin: 0;
    text-decoration: underline;
  }

  .store-locator__schedule {
    font-family: "Avenir Next", sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 16px;
    color: #000000;
    margin: 0;
  }
  
  /* ===== COLONNE DE DROITE : Carte ===== */
  .store-locator__map-container {
    flex: 1;
    position: relative;
    background-color: var(--map-bg-color, #c4a896);
    overflow: hidden;
    min-height: 760px;
  }
  
  .store-locator__map-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
  }
  
  .store-locator__map-svg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  
  .store-locator__map-svg svg {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }
  
  /* Pins sur la carte */
  .store-locator__pins {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
  }
  
  .store-locator__pin {
    position: absolute;
    transform: translate(-50%, -50%);
    cursor: pointer;
    pointer-events: all;
    transition: all 0.2s ease;
    opacity: 1;
  }
  
  /* Quand une région est sélectionnée, réduire l'opacité des autres pins */
  .store-locator__pin.is-dimmed {
    opacity: 0.4;
  }
  
  .store-locator__pin.is-active {
    opacity: 1;
    z-index: 10;
  }
  
  .store-locator__pin-icon {
    position: relative;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: var(--pin-bg-color, #ffffff);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
    border: 1px solid rgba(179, 179, 179, 0.3);
  }
  
  /* Bordure blanche sur le pin actif */
  .store-locator__pin.is-active .store-locator__pin-icon {
    border: 2px solid #ffffff;
    background-color: #b45c31;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    transition: all 0.2s ease;
  }
  
  .store-locator__pin-icon svg {
    width: 26px;
    height: 23px;
  }

  .store-locator__pin-icon svg path {
    transition: all 0.2s ease;
    stroke: #B45C31;
  }

  .store-locator__pin.is-active .store-locator__pin-icon svg path {
    stroke: #ffffff;
  }
  
  .store-locator__pin:hover .store-locator__pin-icon {
    transform: scale(1.1);
  }
  
  /* Badge avec le nombre de stores */
  .store-locator__pin-badge {
    position: absolute;
    bottom: -6px;
    right: -8px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background-color: #ffffff;
    border: 1.5px solid #b45c31;
    display: none;
    align-items: center;
    justify-content: center;
    font-family: "Avenir Next", sans-serif;
    font-weight: 600;
    font-size: 11px;
    line-height: 1;
    color: #282828;
    z-index: 2;
  }
  
  /* Badge visible uniquement sur le pin actif */
  .store-locator__pin.is-active .store-locator__pin-badge {
    display: flex;
    border-color: #ffffff;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
  }
  
  /* ===== RESPONSIVE MOBILE ===== */
  @media screen and (max-width: 768px) {
    .store-locator {
      min-height: auto;
    }
    
    .store-locator__wrapper {
      flex-direction: column;
      min-height: auto;
    }
    
    /* SIDEBAR EN HAUT */
    .store-locator__sidebar {
      width: 100%;
      height: auto;
      min-height: auto;
      order: 1;
    }
    
    .store-locator__sidebar-inner {
      padding: 30px 20px 30px 20px;
    }
    
    .store-locator__spacer {
      height: 0;
      display: none;
    }
    
    .store-locator__title {
      font-size: 28px;
      line-height: 32px;
      margin-bottom: 16px;
    }
    
    .store-locator__stores-list {
      height: auto;
      max-height: none;
      overflow-y: visible;
      padding-right: 0;
      padding-bottom: 0;
    }
    
    /* CARTE EN BAS - PLEINE LARGEUR */
    .store-locator__map-container {
      width: 100%;
      height: 400px;
      min-height: 400px;
      flex: none;
      order: 2;
      position: relative;
    }
    
    .store-locator__map-wrapper {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
    }
    
    .store-locator__map-svg {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      padding: 0;
      box-sizing: border-box;
      display: flex;
      align-items: center;
      justify-content: center;
    }
    
    .store-locator__map-svg svg {
      max-width: 100%;
      max-height: 100%;
      width: auto;
      height: auto;
      object-fit: contain;
    }
    
    /* PINS CONTAINER - Sera dimensionné et positionné par JavaScript */
    .store-locator__pins {
      position: absolute;
      padding: 0;
      box-sizing: border-box;
      /* Width, height, left et top seront définis par JavaScript */
    }
    
    .store-locator__pin {
      /* Les positions left/top en % sont relatives au container .store-locator__pins */
    }
    
    /* Taille réduite des pins */
    .store-locator__pin-icon {
      width: 34px;
      height: 34px;
    }
    
    .store-locator__pin-icon svg {
      width: 24px;
      height: 22px;
    }
    
    .store-locator__pin-badge {
      width: 18px;
      height: 18px;
      font-size: 10px;
      bottom: -1px;
      right: -1px;
    }
  }
  
  @media screen and (max-width: 480px) {
    .store-locator__sidebar-inner {
      padding: 24px 16px 24px 16px;
    }
    
    .store-locator__title {
      font-size: 24px;
      line-height: 28px;
    }
    
    .store-locator__map-container {
      height: 300px;
      min-height: 300px;
    }
    
    .store-locator__map-svg {
      padding: 0;
    }
    
    .store-locator__pins {
      padding: 0;
    }
    
    .store-locator__pin-icon {
      width: 30px;
      height: 30px;
    }
    
    .store-locator__pin-icon svg {
      width: 21px;
      height: 19px;
    }
    
    .store-locator__pin-badge {
      width: 16px;
      height: 16px;
      font-size: 9px;
    }
  }
.testimonials-section {
    width: 100%;
    margin: 0;
    padding: 100px 0 51px;
    background-color: #E8E8E8;
  }

  .testimonials-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 51px;
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
  }

  .testimonials-header {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 18px;
    width: 100%;
  }

  .testimonials-title {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-weight: 600;
    font-size: 32px;
    line-height: 1.366;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    text-align: center;
    color: #0F0D22;
    margin: 0;
  }

  .testimonials-subtitle {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.366;
    text-align: center;
    color: #0F0D22;
    margin: 0;
  }

  .testimonials-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    align-items: center;
    gap: 10px;
    width: auto;
  }

  .testimonial-card {
    display: flex;
    flex-direction: column;
    gap: 24px;
    padding: 20px;
    width: 460px;
    background-color: #FFFFFF;
    border-radius: 8px;
    box-sizing: border-box;
  }

  .testimonial-content {
    width: 100%;
  }

  .testimonial-text {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.366;
    text-align: left;
    color: #000000;
    margin: 0;
    height: 165px;
    overflow: hidden;
    display: -webkit-box;
    line-clamp: 7;
    -webkit-line-clamp: 7;
    -webkit-box-orient: vertical;
  }

  .testimonial-footer {
    width: 100%;
  }

  .testimonial-author {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 10px;
    width: 100%;
  }

  .author-info {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 10px;
  }

  .author-name {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-weight: 600;
    font-size: 16px;
    line-height: 1.366;
    text-align: left;
    color: #000000;
    margin: 0;
  }

  .author-rating {
    display: flex;
    gap: 4px;
  }

  .testimonial-date {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 6px;
  }

  .date-text {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.366;
    text-align: left;
    color: #858585;
  }

  .testimonials-footer {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 23px;
    width: 100%;
  }

  .overall-rating-text {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-weight: 600;
    font-size: 16px;
    line-height: 1.366;
    text-align: center;
    color: #000000;
  }

  .overall-rating-section {
    display: flex;
    align-items: center;
    gap: 18px;
  }

  .rating-label {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-weight: 600;
    font-size: 24px;
    line-height: 1.366;
    text-align: center;
    color: #B45C31;
  }

  .rating-display {
    display: flex;
    align-items: flex-end;
    gap: 10px;
  }

  .rating-number {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-weight: 600;
    font-size: 24px;
    line-height: 1.366;
    text-align: center;
    color: #B45C31;
  }

  .rating-stars {
    display: flex;
    gap: 4px;
    align-items: center;
    position: relative;
    bottom: 6px;
  }

  .star-icon {
    width: 15px;
    height: 14px;
    flex-shrink: 0;
  }

  .star-icon.empty path {
    fill: #E5E5E5;
  }

     .star-partial {
     position: relative;
     width: 15px;
     height: 14px;
     display: inline-block;
   }

   .star-partial .star-background {
     position: absolute;
     top: 0;
     left: 0;
     z-index: 1;
   }

   .star-partial .star-fill {
     position: absolute;
     top: 0;
     left: 0;
     z-index: 2;
     clip-path: inset(0 calc(100% - var(--partial-width)) 0 0);
   }

  .testimonials-cta {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 12px 16px 12px 9px;
    width: 169px;
    height: 38px;
    background-color: #000000;
    border-radius: 100px;
    text-decoration: none;
    box-sizing: border-box;
  }

  .google-icon {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
  }

  .testimonials-cta span,
  .testimonials-cta {
    font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.366;
    text-align: center;
    color: #FFFFFF;
  }

  .testimonials-cta:hover {
    background-color: #333333;
    transition: background-color 0.3s ease;
  }

  /* Responsive Design */
  @media screen and (max-width: 1440px) {
    .testimonials-section {
      padding: 80px 40px 40px;
    }
    
    .testimonials-grid {
      flex-wrap: wrap;
      justify-content: center;
      gap: 20px;
    }
    
    .testimonial-card {
      width: 100%;
      max-width: 460px;
    }
  }

  @media screen and (max-width: 1024px) {
    .testimonials-container {
      gap: 40px;
    }
    
    .testimonials-title {
      font-size: 28px;
    }
    
    .testimonials-subtitle {
      font-size: 14px;
    }
    
    .testimonials-footer {
      flex-direction: column;
      gap: 20px;
    }
  }

  @media screen and (max-width: 768px) {
    .testimonials-section {
      padding: 40px 0;
      width: 100%;
      margin-left: 0;
      overflow: hidden;
    }
    
    .testimonials-container {
      max-width: none;
      padding: 0;
      width: 100%;
    }
    
    .testimonials-grid {
      display: flex;
      flex-direction: row;
      flex-wrap: nowrap;
      overflow-x: auto;
      gap: 16px;
      padding: 0 20px 1rem 20px;
      width: 100%;
      -webkit-overflow-scrolling: touch;
      scrollbar-width: none;
      -ms-overflow-style: none;
      grid-template-columns: none !important;
      justify-content: flex-start;
    }
    
    .testimonials-grid::-webkit-scrollbar {
      display: none;
    }
    
    .testimonial-card {
      flex: 0 0 280px;
      width: 280px;
      padding: 16px;
      display: block;
    }
    
    .testimonial-text {
      height: auto;
      line-clamp: 6;
      -webkit-line-clamp: 6;
    }
    
    .testimonials-title {
      font-size: 24px;
      letter-spacing: 0.1em;
    }
    
    .testimonials-footer {
      flex-direction: column;
      gap: 16px;
      align-items: center;
      text-align: center;
    }
    
    .overall-rating-section {
      flex-direction: column;
      gap: 12px;
      align-items: center;
    }
    
    .rating-label,
    .rating-number {
      font-size: 20px;
    }
    
    .testimonials-cta {
      width: auto;
      padding: 10px 14px;
      font-size: 12px;
    }
  }

  @media screen and (max-width: 480px) {
    .testimonials-container {
      gap: 30px;
    }
    
    .testimonials-header {
      gap: 12px;
    }
    
    .testimonials-subtitle {
      font-size: 12px;
    }
    
    .testimonial-card {
      padding: 12px;
    }
    
    .testimonial-text {
      font-size: 14px;
      line-clamp: 5;
      -webkit-line-clamp: 5;
    }
    
    .author-name {
      font-size: 14px;
    }
    
    .date-text {
      font-size: 12px;
    }
    
    .overall-rating-text {
      font-size: 14px;
    }
    
    .rating-label,
    .rating-number {
      font-size: 18px;
    }
  }
.vous-aimerez-aussi {
    padding-top: var(--padding-top, 80px);
    padding-bottom: var(--padding-bottom, 80px);
    background: var(--color-background);
  }
  
  .vous-aimerez-aussi__container {
    max-width: var(--page-width, 1200px);
    margin: 0 auto;
    padding: 0 20px;
  }
  
  /* Header */
  .vous-aimerez-aussi__header {
    text-align: center;
    margin-bottom: 40px;
  }
  
  .vous-aimerez-aussi__title {
    font-size: 32px;
    font-weight: 600;
    letter-spacing: 20%;
    margin: 0;
    color: var(--color-foreground);
    line-height: 1.366;
    text-transform: uppercase;
    font-family: var(--font-navigation);
  }
  
  /* Grid */
  .vous-aimerez-aussi__grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 9px;
  }
  
  /* Responsive Design */
  @media screen and (max-width: 1199px) {
    .vous-aimerez-aussi__grid {
      gap: 15px;
    }
  }
  
  @media screen and (max-width: 768px) {
    .vous-aimerez-aussi__container {
      padding: 0 16px;
    }
    
    .vous-aimerez-aussi__header {
      margin-bottom: 30px;
    }
    
    .vous-aimerez-aussi__title {
      font-size: 24px;
    }
    
    .vous-aimerez-aussi__grid {
      grid-template-columns: repeat(2, 1fr);
      gap: 10px;
    }
  }
  
  @media screen and (max-width: 480px) {
    .vous-aimerez-aussi__grid {
      grid-template-columns: 1fr 1fr;
      gap: 20px;
    }.vous-aimerez-aussi{padding-top:30px !important; padding-bottom: 0px !important;}
    
    .vous-aimerez-aussi__product-card {
      max-width: 300px;
    }
  }
  
  /* Empty State */
  .vous-aimerez-aussi__empty {
    text-align: center;
    padding: 60px 20px;
    color: rgba(var(--color-foreground), 0.6);
  }
  
  .vous-aimerez-aussi__empty p {
    margin: 0;
    font-size: 1.125rem;
  }

/* CSS from block stylesheet tags */
/* Collection Link - Conforme Figma */
.mega-menu-collections__card {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 20px 0 0;
  text-decoration: none;
  transition: transform 0.3s ease;
  height: 100%;
  position: relative;
}

.mega-menu-collections__card:hover {
  transform: translateY(-5px);
}

.mega-menu-collections__image-container {
  position: relative;
  width: 315px;
  height: 100%;
  border-radius: 4px;
  overflow: hidden;
  flex-shrink: 0;
}

.mega-menu-collections__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.mega-menu-collections__image-placeholder {
  width: 315px;
  height: 100%;
  border-radius: 4px;
  overflow: hidden;
  position: relative;
  flex-shrink: 0;
}

.mega-menu-collections__placeholder-bg {
  width: 100%;
  height: 100%;
  background: #D9D9D9;
}

.mega-menu-collections__title {
  position: absolute;
  top: 20px;
  left: 50%;
  transform: translateX(-50%);
  font-family: 'The Seasons Light', Georgia, serif;
  font-weight: 300;
  font-size: 24px;
  line-height: 1em;
  text-transform: uppercase;
  text-align: center;
  color: #FFFFFF !important;
  margin: 0;
  max-width: 280px;
  z-index: 2;
}

/* Responsive */
@media (max-width: 1024px) {
  .mega-menu-collections__card {
    padding: 20px 0;
    max-width: 315px;
  }
  
  .mega-menu-collections__image-container {
    width: 280px;
    height: 240px;
  }
  
  .mega-menu-collections__title {
    font-size: 20px;
    top: 18px;
    max-width: 250px;
  }
}

@media (max-width: 768px) {
  .mega-menu-collections__card {
    flex: 0 0 calc(50% - 10px);
    min-width: 250px;
  }
  
  .mega-menu-collections__image-container {
    width: 250px;
    height: 200px;
  }
  
  .mega-menu-collections__title {
    font-size: 18px;
    max-width: 220px;
    top: 15px;
  }
}
.group {
    display: flex;
    flex-wrap: nowrap;
    overflow: hidden;
    width: 100%;
  }

  .group--horizontal {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 0 var(--padding);
  }

  .group--vertical {
    flex-direction: column;
    align-items: var(--alignment);
    padding: var(--padding) 0;
  }
/* Mega Menu Bijoux - Conforme Figma 2046:7713 */
.mega-menu-bijoux {
  position: absolute;
  top: 100%;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%) translateY(10px);
  background: #ffffff;
  box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.1);
  z-index: 1001;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Colonne 1 : Catégories principales */
.mega-menu-bijoux {
  position: absolute;
  top: 100%;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%) translateY(10px);
  background: #ffffff;
  box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.1);
  z-index: 1001;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.mega-menu-bijoux__categories {
  background: #E8E8E8;
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 30px 60px 60px;
  flex-shrink: 0;
  width: auto;
  position: relative;
}

.mega-menu-bijoux__container {
  max-width: 1440px;
  margin: 0 auto;
  display: flex;
  align-items: stretch;
  min-height: 400px;
  max-height: 400px;
  overflow-y: visible;
  position: relative;
}

.mega-menu-bijoux__container::before {
  content: '';
  position: absolute;
  top: 0;
  left: -50vw;
  width: 50vw;
  height: 100%;
  background: #E8E8E8;
}

.mega-menu-bijoux__category-item {
  opacity: 0.5;
  transition: all 0.3s ease;
  cursor: pointer;
}

.mega-menu-bijoux__category-item:hover,
.mega-menu-bijoux__category-item--active {
  opacity: 1;
  transform: translateX(5px);
}

.mega-menu-bijoux__category-title {
  font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  font-weight: 600;
  font-size: 16px;
  line-height: 1.366;
  color: #000000;
  margin: 0;
  padding: 8px 0 9px;
  text-decoration: none;
  display: block;
  position: relative;
  transition: color 0.3s ease;
}

.mega-menu-bijoux__category-item--active .mega-menu-bijoux__category-title {
  color: #B45C31;
}

.mega-menu-bijoux__category-item--active .mega-menu-bijoux__category-title::after {
  content: '';
  position: absolute;
  bottom: -1px;
  left: -4px;
  right: auto;
  width: calc(100% + 8px);
  height: 1px;
  background-color: #000000;
}

/* Colonne 2 : Sous-catégories */
.mega-menu-bijoux__subcategories {
  background: #ffffff;
  padding: 30px 30px 60px 60px;
  flex: 1;
  position: relative;
}

.mega-menu-bijoux__subcategories-content {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.mega-menu-bijoux__sublink {
  font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.2;
  color: #000000;
  text-decoration: none;
  padding: 4px 0 5px;
  display: block;
  position: relative;
  transition: color 0.3s ease;
  width: fit-content;
}

.mega-menu-bijoux__sublink::after {
  content: '';
  position: absolute;
  bottom: 2px;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 1px;
  background: #000;
  transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.mega-menu-bijoux__sublink:hover {
  color: #B45C31;
}

.mega-menu-bijoux__sublink:hover::after {
  width: 100%;
}

.mega-menu-bijoux__sublink--main {
  font-weight: 600;
  border-bottom: 1px solid #E8E8E8;
  margin-bottom: 8px;
  padding-bottom: 12px;
  display: block;
}

/* Colonne 3 : Réseaux sociaux */
.mega-menu-bijoux__social {
  position: absolute;
  bottom: 60px;
  left: 58px;
  display: flex;
  align-items: center;
  gap: 6px;
}

.mega-menu-bijoux__social-links {
  display: flex;
  align-items: center;
  gap: 6px;
}

.mega-menu-bijoux__social-link {
  width: 20px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.3s ease;
}

.mega-menu-bijoux__social-link:hover {
  transform: translateY(-2px);
}

.mega-menu-bijoux__social-link svg {
  width: 20px;
  height: 20px;
  fill: #B45C31;
}

/* Colonne 4 : Image dynamique */
.mega-menu-bijoux__image-container {
  flex: 1;
  padding: 30px 60px 60px;
  display: flex;
  justify-content: stretch;
  align-items: stretch;
  position: relative;
}

.mega-menu-bijoux__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 2px;
  display: block;
}

.mega-menu-bijoux__image-placeholder {
  width: 100%;
  height: 100%;
  background: #D9D9D9;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #666;
  font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  font-size: 16px;
  border-radius: 2px;
}

/* Responsive */
@media (max-width: 1024px) {
  .mega-menu-bijoux__container {
    flex-direction: column;
    padding: 20px;
  }
  
  .mega-menu-bijoux__categories {
    padding: 20px;
    margin-bottom: 20px;
  }
  
  .mega-menu-bijoux__subcategories {
    padding: 20px;
    margin-bottom: 20px;
  }
  
  .mega-menu-bijoux__social {
    position: static;
    margin-bottom: 20px;
  }
  
  .mega-menu-bijoux__image-container {
    padding: 20px;
    min-height: 200px;
  }
}
/* Mega Menu Cadeaux - Conforme Figma 2046:7713 */
.mega-menu-cadeaux {
  position: absolute;
  top: 100%;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%) translateY(10px);
  background: #ffffff;
  box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.1);
  z-index: 1001;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Colonne 1 : Catégories principales */
.mega-menu-cadeaux__categories {
  background: #E8E8E8;
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 30px 60px 60px;
  flex-shrink: 0;
  width: auto;
  position: relative;
}

.mega-menu-cadeaux__container {
  max-width: 1440px;
  margin: 0 auto;
  display: flex;
  align-items: stretch;
  min-height: 400px;
  max-height: 400px;
  overflow-y: visible;
  position: relative;
}

.mega-menu-cadeaux__container::before {
  content: '';
  position: absolute;
  top: 0;
  left: -50vw;
  width: 50vw;
  height: 100%;
  background: #E8E8E8;
}

.mega-menu-cadeaux__category-item {
  opacity: 0.5;
  transition: all 0.3s ease;
  cursor: pointer;
}

.mega-menu-cadeaux__category-item:hover,
.mega-menu-cadeaux__category-item--active {
  opacity: 1;
  transform: translateX(5px);
}

.mega-menu-cadeaux__category-title {
  font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  font-weight: 600;
  font-size: 16px;
  line-height: 1.366;
  color: #000000;
  margin: 0;
  padding: 8px 0 9px;
  text-decoration: none;
  display: block;
  position: relative;
  transition: color 0.3s ease;
}

.mega-menu-cadeaux__category-item--active .mega-menu-cadeaux__category-title {
  color: #B45C31;
}

.mega-menu-cadeaux__category-item--active .mega-menu-cadeaux__category-title::after {
  content: '';
  position: absolute;
  bottom: -1px;
  left: -4px;
  right: auto;
  width: calc(100% + 8px);
  height: 1px;
  background-color: #000000;
}

/* Colonne 2 : Contenu central */
.mega-menu-cadeaux__content {
  background: #ffffff;
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: 38px 30px 60px 60px;
  flex: 1;
}

.mega-menu-cadeaux__main-title {
  font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  font-weight: 600;
  font-size: 16px;
  line-height: 1.366;
  color: #000000;
  margin: 0;
}

.mega-menu-cadeaux__description {
  font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 1.366;
  color: #000000;
  margin: 0;
  width: 423px;
  max-width: 100%;
}

.mega-menu-cadeaux__cta {
  font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 1.366;
  text-align: center;
  color: #ffffff;
  background: #B45C31;
  border-radius: 4px;
  padding: 12px 30px;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 36px;
  box-sizing: border-box;
  transition: background-color 0.3s ease, transform 0.3s ease;
  align-self: flex-start;
  position: relative;
}

.mega-menu-cadeaux__cta::after {
  content: none;
}

.mega-menu-cadeaux__cta:hover::after {
  content: none;
}

.mega-menu-cadeaux__cta:hover {
  background: #9d4a2a;
  transform: translateY(-2px);
}

/* Colonne 3 : Réseaux sociaux */
.mega-menu-cadeaux__social {
  position: absolute;
  bottom: 60px;
  left: 58px;
  display: flex;
  align-items: center;
  gap: 6px;
}

.mega-menu-cadeaux__social-links {
  display: flex;
  align-items: center;
  gap: 6px;
}

.mega-menu-cadeaux__social-link {
  width: 20px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.3s ease;
}

.mega-menu-cadeaux__social-link:hover {
  transform: translateY(-2px);
}

.mega-menu-cadeaux__social-link svg {
  width: 20px;
  height: 20px;
  fill: #B45C31;
}

/* Colonne 4 : Image dynamique */
.mega-menu-cadeaux__image-container {
  flex: 1;
  padding: 30px 60px 60px;
  display: flex;
  justify-content: stretch;
  align-items: stretch;
  position: relative;
}

.mega-menu-cadeaux__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 2px;
  display: block;
}

.mega-menu-cadeaux__image-placeholder {
  width: 100%;
  height: 100%;
  background: #D9D9D9;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #666;
  font-family: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  font-size: 16px;
  border-radius: 2px;
}

/* Responsive */
@media (max-width: 1024px) {
  .mega-menu-cadeaux__container {
    flex-direction: column;
    padding: 20px;
  }
  
  .mega-menu-cadeaux__categories {
    padding: 20px;
    margin-bottom: 20px;
  }
  
  .mega-menu-cadeaux__content {
    padding: 20px;
    margin-bottom: 20px;
  }
  
  .mega-menu-cadeaux__description {
    width: 100%;
  }
  
  .mega-menu-cadeaux__social {
    position: static;
    margin-bottom: 20px;
  }
  
  .mega-menu-cadeaux__image-container {
    padding: 20px;
    min-height: 200px;
  }
}
/* Mega Menu Collections - Conforme Figma 2046:7713 */
.mega-menu-collections {
  position: absolute;
  top: 100%;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%) translateY(30px);
  background: #ffffff;
  box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.1);
  z-index: 10;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  overflow: hidden;
}



.mega-menu-collections__container {
  max-width: 1440px;
  margin: 0 auto;
  display: flex;
  justify-content: stretch;
  align-items: stretch;
  gap: 20px;
  padding: 28px 60px 60px;
  min-height: 480px;
  max-height: 480px;
  overflow: hidden;
}

/* Styles pour les placeholders uniquement */
.mega-menu-collections__card--placeholder {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0 0 20px;
  text-decoration: none;
  opacity: 0.3;
  pointer-events: none;
}

.mega-menu-collections__image-placeholder {
  width: 315px;
  height: 100%;
  border-radius: 4px;
  overflow: hidden;
  position: relative;
  flex-shrink: 0;
}

.mega-menu-collections__placeholder-bg {
  width: 100%;
  height: 100%;
  background: #D9D9D9;
}

.mega-menu-collections__title--placeholder {
  position: absolute;
  top: 20px;
  left: 50%;
  transform: translateX(-50%);
  font-family: 'The Seasons Light', Georgia, serif;
  font-weight: 300;
  font-size: 20px;
  line-height: 1em;
  text-transform: uppercase;
  text-align: center;
  color: #FFFFFF;
  margin: 0;
  max-width: 280px;
  z-index: 10;
}

/* Responsive */
@media (max-width: 1024px) {
  .mega-menu-collections__container {
    flex-direction: column;
    padding: 20px;
    gap: 15px;
    align-items: center;
  }
  
  .mega-menu-collections__card--placeholder {
    padding: 20px 0;
    max-width: 315px;
  }
  
  .mega-menu-collections__image-placeholder {
    width: 280px;
    height: 280px;
  }
  
  .mega-menu-collections__title--placeholder {
    font-size: 18px;
    top: 18px;
    max-width: 250px;
  }
}

@media (max-width: 768px) {
  .mega-menu-collections__container {
    flex-wrap: wrap;
    justify-content: center;
  }
  
  .mega-menu-collections__card--placeholder {
    flex: 0 0 calc(50% - 10px);
    min-width: 250px;
  }
  
  .mega-menu-collections__image-placeholder {
    width: 250px;
    height: 250px;
  }
  
  .mega-menu-collections__title--placeholder {
    font-size: 16px;
    top: 15px;
    max-width: 220px;
  }
}
.text {
    text-align: var(--text-align);
  }
  .text--title {
    font-size: 2rem;
    font-weight: 700;
  }
  .text--subtitle {
    font-size: 1.5rem;
  }

/* CSS from snippet stylesheet tags */
@media (max-width: 768px) {
    .breadcrumb__list{
      flex-wrap: wrap !important;
      gap: 5px;
    }
    .breadcrumb{
      margin-bottom: 0;
    }
  }
.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: all 0.3s ease;
    cursor: pointer;
    border: solid 1px transparent;
    font-family: var(--font-button);
    line-height: 1;
    position: relative;
    overflow: hidden;
  }

  /* Tailles */
  .btn--small {
    min-height: 32px;
    padding: 8px 16px;
    font-size: 12px;
  }

  .btn--medium {
    min-height: 36px;
    padding: 12px 24px;
    font-size: 14px;
  }

  .btn--large {
    min-height: 44px;
    padding: 16px 32px;
    font-size: 16px;
  }

  /* Styles */
  .btn--primary {
    background: #B35C31;
    color: white;
    border-radius: 4px;
  }

  .btn--primary:hover {
    background: #9A4D28;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(179, 92, 49, 0.3);
  }

  .btn--secondary {
    background: #F5F5F5;
    color: #333;
    border-radius: 4px;
  }

  .btn--secondary:hover {
    background: #E0E0E0;
    transform: translateY(-2px);
  }

  .btn--outline-white {
    background: transparent;
    color: white;
    border: 1px solid white;
    border-radius: 4px;
    flex-direction: column;
    min-width: 123px;
    gap: 2px;
  }

  .btn--outline-white:hover {
    background: white;
    color: black;
    transform: translateY(-2px);
  }

  .btn--outline-dark {
    background: transparent;
    color: #333;
    border: 1px solid #333;
    border-radius: 4px;
  }

  .btn--outline-dark:hover {
    background: #333;
    color: white;
    transform: translateY(-2px);
  }

  /* Textes du bouton */
  .btn__text {
    font-family: var(--font-button);
    font-weight: var(--font-weight-medium);
  }

  .btn__text-primary {
    font-family: var(--font-button);
    font-size: var(--font-size-button);
    font-weight: var(--font-weight-normal);
    line-height: var(--line-height-tight);
  }

  .btn__text-secondary {
    font-family: var(--font-button);
    font-size: var(--font-size-button);
    font-weight: var(--font-weight-normal);
    line-height: var(--line-height-tight);
  }

  /* États */
  .btn:disabled {
    opacity: 0.6;
    cursor: not-allowed;
    transform: none !important;
  }

  .btn:focus {
    outline: 2px solid #B35C31;
    outline-offset: 2px;
  }

  /* Responsive */
  @media screen and (max-width: 768px) {
    .btn--outline-white {
      min-width: 100px;
      font-size: 12px;
    }

    .btn__text-primary,
    .btn__text-secondary {
      font-size: 9px;
    }
  }
.collection-product-card {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  background: var(--color-background, #FFFFFF);
  border-radius: 8px;
  overflow: hidden;
  transition: all 0.3s ease;
}

/* Image Wrapper */
.collection-product-card__image-wrapper {
  position: relative;
  overflow: hidden;
  background: #f5f5f5;
  border-radius: 8px;
  height: var(--product-card-image-height, 460px);
  border: solid 1px #F0F0F0;
}

.collection-product-card__image-link {
  display: block;
  position: relative;
  height: var(--product-card-image-height, 460px);
  width: 100%;
}

.collection-product-card__image {
  position: relative;
  height: var(--product-card-image-height, 460px);
  width: 100%;
  overflow: hidden;
}

.collection-product-card__img {
  width: 100%;
  height: var(--product-card-image-height, 460px) !important;
  object-fit: cover;
  object-position: center;
  transition: opacity 0.3s ease, transform 0.3s ease;
}

.collection-product-card__img .image,
.collection-product-card__img .image-wrapper,
.collection-product-card__img img {
  height: 100% !important;
  width: 100% !important;
}

.collection-product-card__img img,
.collection-product-card__img .image > img {
  height: 100% !important;
  width: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
}

.collection-product-card__image--secondary {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 0;
  height: var(--product-card-image-height, 460px) !important;
}

.collection-product-card:hover .collection-product-card__image--secondary {
  opacity: 1;
}

.collection-product-card:hover .collection-product-card__img {
  transform: scale(1.05);
}

.collection-product-card__image--placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #f0f0f0;
  height: var(--product-card-image-height, 460px) !important;
}

.placeholder-svg {
  width: 60px;
  height: 60px;
  opacity: 0.3;
}

/* Badges */
.collection-product-card__badges {
  position: absolute;
  top: 12px;
  left: 12px;
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: center;
  z-index: 2;
}

.collection-product-card__badges .product-badge {
  position: relative;
  font-family: 'Avenir Next', sans-serif;
  font-size: 12px;
  font-weight: 600;
  padding: 4px 8px;
  border-radius: 4px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  white-space: nowrap;
  display: inline-block;
}

.product-badge--new {
  background-color: #FFFFFF;
  color: #000000;
}

.product-badge--sale {
  background-color: #EA4335;
  color: #FFFFFF;
}

.product-badge--sold-out {
  background-color: #B45C31;
  color: #FFFFFF;
  border-radius: 4px;
}

/* === ENCAPSULATION COULEURS - STRICTEMENT COMME NOUVEAUTES === */
.nouveautes__product-options {
  position: absolute;
  bottom: 10px;
  left: 14px;
  right: 14px;
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(8px);
  border-radius: 2px;
  padding: 10px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  opacity: 0;
  transform: translateY(10px);
  transition: all 0.3s ease;
  z-index: 10;
  pointer-events: none;
}
.collection-product-card:hover .nouveautes__product-options {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}
.options-text {
  font-family: 'Avenir Next', var(--font-navigation, sans-serif);
  font-size: 14px;
  color: #858585;
  line-height: 1.14;
}
.color-swatches {
  display: flex;
  align-items: center;
  gap: -7px;
}
.color-dot {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  border: 2px solid white;
  background: #F64319;
  margin-left: -7px;
}
.color-dot:first-child {
  margin-left: 0;
}
.color-dot:nth-child(2) {
  background: #86BBDA;
}
.color-dot:nth-child(3) {
  background: #D8A517;
}
.color-more {
  width: 32px;
  height: 18px;
  border-radius: 50%;
  border: 1px solid white;
  background: white;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: -7px;
  font-family: 'Avenir Next', var(--font-navigation, sans-serif);
  font-size: 14px;
  font-weight: 500;
  color: #B3B3B3;
  letter-spacing: -0.28px;
}
/* === FIN ENCAPSULATION COULEURS === */

/* Actions */
.collection-product-card__actions {
  position: absolute;
  top: 12px;
  right: 12px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  z-index: 2;
  opacity: 0;
  transform: translateY(-8px);
  transition: all 0.3s ease;
}

.collection-product-card:hover .collection-product-card__actions {
  opacity: 1;
  transform: translateY(0);
}

.product-action {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  background: rgba(255, 255, 255, 0.95);
  border: none;
  border-radius: 50%;
  color: var(--color-text, #000000);
  cursor: pointer;
  transition: all 0.2s ease;
  text-decoration: none;
  backdrop-filter: blur(4px);
}

.product-action:hover {
  background: #FFFFFF;
  color: var(--color-primary, #B45C31);
  transform: scale(1.1);
}

/* Product Info */
.collection-product-card__info {
  padding: 16px 0 0 0;
  display: flex;
  flex-direction: column;
  gap: 0;
  flex-grow: 1;
}

.collection-product-card__vendor {
  font-family: 'Avenir Next', sans-serif;
  font-size: 12px;
  font-weight: 400;
  color: #858585;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.collection-product-card__title {
  margin: 0;
  font-family: var(--font-navigation);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.366;
}

.collection-product-card__title a {
  color: #000;
  text-decoration: none;
}

.collection-product-card__title a:hover {
  color: #B45C31;
}

/* Price */
.collection-product-card__price {
  display: flex;
  align-items: center;
  gap: 2px;
  flex-wrap: wrap;
}

.price {
  font-family: 'Avenir Next', sans-serif;
  font-size: 16px;
  font-weight: 400 !important;
  color: var(--color-text, #000000);
}

.price--sale {
  color: #EA4335;
}

.price--compare {
  font-size: 14px;
  font-weight: 400;
  color: #858585;
  text-decoration: line-through;
}

/* Responsive Design */
@media screen and (max-width: 768px) {
  .collection-product-card__info {
    padding: 12px 0 0 0;
    gap: 6px;
  }
  
  .collection-product-card__title {
    font-size: 14px;
  }
  
  .price {
    font-size: 14px;
  }
  
  .price--compare {
    font-size: 12px;
  }
  
  .collection-product-card__actions {
    opacity: 1;
    transform: translateY(0);
  }
  
  .product-action {
    width: 32px;
    height: 32px;
  }
  
  .collection-product-card__badges {
    top: 8px;
    left: 8px;
  }
  
  .collection-product-card__actions {
    top: 8px;
    right: 8px;
  }
}

@media screen and (max-width: 480px) {
  .collection-product-card__title {
    font-size: 13px;
  }
  
  .price {
    font-size: 13px;
  }
  
  .color-swatch {
    width: 14px;
    height: 14px;
  }
}
.image {
    display: block;
    position: relative;
    overflow: hidden;
    width: 100%;
    height: auto;
  }

  .image > img {
    width: 100%;
    height: auto;
  }
.mini-cart-item {
    transition: height 0.3s ease, opacity 0.3s ease, margin 0.3s ease, padding 0.3s ease;
  }
  
  .mini-cart-item.removing {
    opacity: 0.5;
  }
  
  /* Indicateur de chargement pour le mini-panier */
  .cart-updating .mini-cart::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(255, 255, 255, 0.7);
    z-index: 10;
    pointer-events: all;
  }
  
  .cart-updating .mini-cart::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 30px;
    height: 30px;
    border-radius: 50%;
    border: 2px solid rgba(var(--color-primary-rgb, 181, 93, 49), 0.2);
    border-top-color: var(--color-primary);
    animation: mini-cart-spin 0.8s linear infinite;
    z-index: 11;
  }
  
  @keyframes mini-cart-spin {
    to { transform: translate(-50%, -50%) rotate(360deg); }
  }
  
  .mini-cart-item__remove {
    background: none;
    border: none;
    cursor: pointer;
    font-size: 12px;
    text-decoration: underline;
    color: #505050;
    padding: 0;
  }
  
  .mini-cart__header-buttons {
    display: flex;
    align-items: center;
  }
  
  .mini-cart-item__debug,
  .mini-cart__debug-cart {
    margin: 5px 0;
    padding: 5px;
    background-color: #f5f5f5;
    border: 1px solid #ddd;
    border-radius: 3px;
    font-size: 12px;
    font-family: monospace;
    white-space: pre-wrap;
    word-break: break-all;
    max-height: 300px;
    overflow-y: auto;
  }
  
  .mini-cart__debug-cart {
    margin: 10px;
    padding: 10px;
    background-color: #f0f8ff;
    border-color: #add8e6;
  }
  
  .mini-cart-item__variant-options--empty {
    font-style: italic;
    color: #999;
    font-size: 12px;
  }
.product-card {
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
    background: var(--color-background);
    border-radius: 8px;
    overflow: hidden;
    transition: all 0.3s ease;
  }
  
  .product-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
  }
  
  /* Image Wrapper */
  .product-card__image-wrapper {
    position: relative;
    overflow: hidden;
    background: #f5f5f5;
  }
  
  .product-card__image-link {
    display: block;
    position: relative;
  }
  
  .product-card__image {
    width: 100%;
    height: auto;
    object-fit: cover;
    transition: opacity 0.3s ease;
  }
  
  .product-card__image--primary {
    display: block;
  }
  
  .product-card__image--secondary {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
  }
  
  .product-card:hover .product-card__image--secondary {
    opacity: 1;
  }
  
  .product-card:hover .product-card__image--primary {
    opacity: 0;
  }
  
  .product-card__image--placeholder {
    width: 100%;
    height: 250px;
    background: #f0f0f0;
  }
  
  /* Image Ratios */
  .product-card__image-wrapper {
    aspect-ratio: 1 / 1; /* Default square */
  }
  
  /* Badges */
  .product-card__badges {
    position: absolute;
    top: 0.75rem;
    left: 0.75rem;
    z-index: 2;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
  }
  
  .product-card__badge {
    display: inline-block;
    padding: 0.25rem 0.5rem;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    border-radius: 4px;
    line-height: 1;
  }
  
  .product-card__badge--sale {
    background: #ff4444;
    color: white;
  }
  
  .product-card__badge--sold-out {
    background: #999;
    color: white;
  }
  
  /* Quick Actions */
  .product-card__actions {
    position: absolute;
    top: 0.75rem;
    right: 0.75rem;
    z-index: 2;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    opacity: 0;
    transform: translateY(-10px);
    transition: all 0.3s ease;
  }
  
  .product-card:hover .product-card__actions {
    opacity: 1;
    transform: translateY(0);
  }
  
  .product-card__quick-add,
  .product-card__wishlist {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    background: var(--color-background);
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-radius: 50%;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  }
  
  .product-card__quick-add:hover,
  .product-card__wishlist:hover {
    background: var(--color-accent, #000);
    color: var(--color-background);
    transform: scale(1.1);
  }
  
  .product-card__wishlist {
    background: transparent;
    border-color: rgba(255, 255, 255, 0.8);
    color: rgba(255, 255, 255, 0.9);
  }
  
  /* Product Info */
  .product-card__info {
    padding: 1rem;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
  }
  
  .product-card__vendor {
    font-size: 0.875rem;
    color: rgba(var(--color-foreground), 0.6);
    margin-bottom: 0.25rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
  }
  
  .product-card__title {
    margin: 0 0 0.5rem 0;
    flex-grow: 1;
  }
  
  .product-card__title a {
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.3;
    color: var(--color-foreground);
    text-decoration: none;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    transition: color 0.3s ease;
  }
  
  .product-card__title a:hover {
    color: var(--color-accent, #000);
  }
  
  /* Rating */
  .product-card__rating {
    margin-bottom: 0.5rem;
  }
  
  /* Price */
  .product-card__price {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
    margin-bottom: 0.75rem;
  }
  
  .price {
    font-weight: 600;
    color: var(--color-foreground);
  }
  
  .price--sale {
    color: #ff4444;
  }
  
  .price--compare {
    font-weight: 400;
    text-decoration: line-through;
    color: rgba(var(--color-foreground), 0.6);
    font-size: 0.875rem;
  }
  
  .price--unit {
    font-size: 0.75rem;
    color: #28a745;
    font-weight: 500;
  }
  
  /* Variant Colors */
  .product-card__variants {
    display: flex;
    gap: 0.25rem;
    margin-top: auto;
  }
  
  .product-card__variant-color {
    width: 16px;
    height: 16px;
    border-radius: 50%;
    border: 2px solid #fff;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1);
    cursor: pointer;
  }
  
  /* Mobile Optimizations */
  @media screen and (max-width: 767px) {
    :root {
      --product-card-image-height: 220px;
    }

    .product-card__actions {
      opacity: 1;
      transform: translateY(0);
    }
    
    .product-card__quick-add,
    .product-card__wishlist {
      width: 32px;
      height: 32px;
    }
    
    .product-card__info {
      padding: 0.75rem;
    }
  }
  
  /* Touch devices */
  @media (hover: none) {
    .product-card__actions {
      opacity: 1;
      transform: translateY(0);
    }
    
    .product-card:hover {
      transform: none;
      box-shadow: none;
    }
  }
/* Carousel */
  .{{ carousel_class }}__carousel {
    position: relative;
    overflow: hidden;
  }
  
  .{{ carousel_class }}__track {
    display: flex;
    gap: 20px;
    transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    will-change: transform;
  }
  
  .{{ carousel_class }}__slide {
    flex: 0 0 calc((100% - (var(--columns-mobile, 2) - 1) * 20px) / var(--columns-mobile, 2));
    min-width: 0;
  }
  
  /* Product Card */
  .{{ carousel_class }}__product-card {
    position: relative;
    background: var(--color-background);
    border-radius: 4px;
    overflow: hidden;
    height: 100%;
    display: flex;
    flex-direction: column;
  }
  
  /* Image Wrapper */
  .{{ carousel_class }}__image-wrapper {
    position: relative;
    overflow: hidden;
    background: #f8f8f8;
    aspect-ratio: 3/4;
  }
  
  .{{ carousel_class }}__image-link {
    display: block;
    position: relative;
    height: 100%;
  }
  
  .{{ carousel_class }}__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
  }
  
  .{{ carousel_class }}__image--primary {
    display: block;
  }
  
  .{{ carousel_class }}__image--secondary {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    transition: opacity 0.4s ease, transform 0.4s ease;
  }
  
  /* Animation des images au hover */
  .{{ carousel_class }}__product-card:hover .{{ carousel_class }}__image {
    transform: scale(1.05);
  }
  
  /* Image secondaire au hover */
  .{{ carousel_class }}__product-card:hover .{{ carousel_class }}__image--secondary {
    opacity: 1;
  }
  
  /* Classe ajoutée par JS pour les cartes avec image secondaire */
  .{{ carousel_class }}__product-card--has-secondary:hover .{{ carousel_class }}__image--primary {
    opacity: 0;
  }
  
  /* Badges */
  .{{ carousel_class }}__badges {
    position: absolute;
    top: 12px;
    left: 12px;
    z-index: 2;
  }
  
  .{{ carousel_class }}__badge {
    display: inline-block;
    padding: 6px 12px;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    border-radius: 20px;
    line-height: 1;
  }
  
  .{{ carousel_class }}__badge--new {
    background: var(--color-accent, #ff6b6b);
    color: white;
  }
  
  .{{ carousel_class }}__badge--sale {
    background: var(--color-success, #51cf66);
    color: white;
  }
  
  /* Wishlist */
  .{{ carousel_class }}__wishlist {
    position: absolute;
    top: 12px;
    right: 12px;
    width: 36px;
    height: 36px;
    background: rgba(255, 255, 255, 0.9);
    border: none;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    z-index: 2;
    backdrop-filter: blur(4px);
  }
  
  .{{ carousel_class }}__wishlist:hover {
    background: var(--color-accent, #ff6b6b);
    color: white;
    transform: scale(1.1);
  }
  
  .{{ carousel_class }}__wishlist svg {
    width: 16px;
    height: 16px;
  }
  
  /* Product Info */
  .{{ carousel_class }}__info {
    padding: 20px 16px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    gap: 12px;
  }
  
  .{{ carousel_class }}__product-title {
    margin: 0;
    font-size: 1rem;
    line-height: 1.4;
    font-weight: 600;
    text-align: center;
  }
  
  .{{ carousel_class }}__product-title a {
    color: var(--color-foreground);
    text-decoration: none;
    transition: color 0.3s ease;
  }
  
  .{{ carousel_class }}__product-title a:hover {
    color: var(--color-accent, #ff6b6b);
  }
  
  /* Price */
  .{{ carousel_class }}__price {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-weight: 400;
  }
  
  .price {
    font-size: 1rem;
  }
  
  .price--sale {
    color: var(--color-success, #51cf66);
  }
  
  .price--compare {
    font-size: 1rem;
    color: rgba(var(--color-foreground), 0.5);
    text-decoration: line-through;
    font-weight: 400;
  }
  
  /* Color Overlay */
  .{{ carousel_class }}__color-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(8px);
    padding: 12px;
    display: flex;
    align-items: center;
    gap: 8px;
    opacity: 0;
    transform: translateY(100%);
    transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    z-index: 2;
    border-radius: 8px;
    width: 90%;
    margin: auto;
  }
  
  .{{ carousel_class }}__product-card:hover .{{ carousel_class }}__color-overlay {
    opacity: 1;
    transform: translateY(-20px);
  }
  
  .{{ carousel_class }}__color-text {
    font-size: 0.875rem;
    color: #858585;
    margin-right: auto;
    font-weight: 400;
  }
  
  .{{ carousel_class }}__color-swatches {
    display: flex;
    gap: 6px;
  }
  
  .{{ carousel_class }}__color-swatch {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    border: 2px solid rgba(255, 255, 255, 1);
    cursor: pointer;
    transition: all 0.3s ease;
    position: relative;
  }
  
  .{{ carousel_class }}__color-swatch:hover {
    transform: scale(1.2);
    border-color: var(--color-accent, #ff6b6b);
  }
  
  .{{ carousel_class }}__color-more {
    font-size: 0.875rem;
    color: #B3B3B3;
    font-weight: 500;
    margin-left: 4px;
  }
  
  /* Navigation Container */
  .{{ carousel_class }}__navigation {
    margin-top: 40px;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  
  /* Progress Bar */
  .{{ carousel_class }}__progress-container {
    flex: 1;
    display: flex;
    justify-content: center;
  }
  
  .{{ carousel_class }}__progress-bar {
    width: 700px;
    height: 1px;
    background: #B3B3B3;
    border-radius: 0;
    overflow: visible;
  }
  
  .{{ carousel_class }}__progress-fill {
    height: 3.43px;
    position: relative;
    top: -1.21px;
    background: #421F07;
    border-radius: 0;
    transition: width 0.6s ease;
    width: 25%;
  }
  
  /* Navigation Arrows */
  .{{ carousel_class }}__arrows {
    display: flex;
    gap: 24px;
    margin-left: 20px;
  }
  
  .{{ carousel_class }}__arrow {
    width: 13px;
    height: 14.86px;
    background: transparent;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    font-size: 16px;
    font-weight: bold;
    color: #000;
    border-radius: 0;
    padding: 0;
  }
  
  .{{ carousel_class }}__arrow:hover {
    opacity: 0.7;
  }
  
  .{{ carousel_class }}__arrow:disabled {
    opacity: 0.3;
    cursor: not-allowed;
  }
  
  .{{ carousel_class }}__arrow:disabled:hover {
    opacity: 0.3;
  }
  
  /* Responsive Design */
  @media screen and (min-width: 768px) {
    .{{ carousel_class }}__slide {
      flex: 0 0 calc((100% - (var(--columns-desktop, 4) - 1) * 20px) / var(--columns-desktop, 4));
    }
  }
  
  @media screen and (max-width: 767px) {
    .{{ carousel_class }}__track {
      gap: 16px;
    }
    
    .{{ carousel_class }}__navigation {
      flex-direction: column;
      gap: 20px;
    }
    
    .{{ carousel_class }}__arrows {
      margin-left: 0;
      justify-content: center;
    }
    
    .{{ carousel_class }}__info {
      padding: 16px 12px;
    }
  }
  
  /* Empty State */
  .{{ carousel_class }}__empty {
    text-align: center;
    padding: 60px 20px;
    color: rgba(var(--color-foreground), 0.6);
  }
  
  .{{ carousel_class }}__empty p {
    margin: 0 0 16px 0;
    font-size: 1.125rem;
  }