/** Shopify CDN: Minification failed

Line 12:0 Unexpected "<"
Line 180:0 Unexpected "<"
Line 359:0 Unexpected "<"
Line 570:2 Unexpected "<"

**/


/* CSS from section stylesheet tags */
<style>
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600&family=Noto+Serif+Display:wght@400&display=swap');

/* SECTION */
.section-categories-vertical{
  padding:80px 0 100px;
  overflow-x:hidden;
  opacity:0;
  transform:translateY(40px);
  transition:opacity .7s ease-out, transform .7s ease-out;
}
@media screen and (min-width:769px){
  .section-categories-vertical{
    padding-bottom:130px;
    margin-bottom:0px;
    margin-top:50px;
  }
}
.section-categories-vertical.fade-in-up{opacity:1;transform:translateY(0);}

/* SUBHEADING */
.section-categories-vertical p.subheading{
  font-family:'Montserrat',sans-seri !important;
  font-style:italic;
  font-weight:200;
  color:#AF9D94;
  text-align:center;
  font-size:16px;
  line-height:1.5;
  margin:0 auto 14px auto;
  max-width:640px;
  padding:0 8px;
}
@media screen and (max-width:768px){
  .section-categories-vertical p.subheading{
    font-size:15px !important;
    padding:0 16px;
    margin-bottom:10px;
  }
}

/* HEADING */
.section-categories-vertical h2{
  font-family:'Noto Serif Display',serif;
  font-weight:400;
  color:#AF9D94;
  text-align:center;
  font-size:36px;
  line-height:1.2;
  margin:0 auto 28px auto;
  max-width:640px;
  letter-spacing:.005em;
  padding:0 8px; 
}
@media screen and (max-width:768px){
  .section-categories-vertical h2{
    font-size:24px;
    padding:0 22px;
    margin-bottom:16px;
    max-width:520px;
  }
}

/* GRID */
.categories-grid{
  display:flex;
  flex-wrap:nowrap;
  justify-content:flex-start;
  gap:0;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
  -ms-overflow-style:none;
  padding:0;
  margin:0;
}
.categories-grid::-webkit-scrollbar{display:none;}

.category-card{
  flex:0 0 auto;
  width:320px;
  position:relative;
  scroll-snap-align:start;
  overflow:hidden;
  margin:0;
  border:0;
}
.category-card img{
  width:100%;
  height:460px;
  object-fit:cover;
  display:block;
  line-height:0;
}
.category-label{
  position:absolute;
  bottom:20px;
  left:20px;
  right:20px;
  font-family:'Montserrat',sans-serif;
  font-style:italic;
  font-weight:400;
  color:#FFFFFF;
  text-transform:uppercase;
  letter-spacing:.01em;
  font-size:16px;
}
@media screen and (min-width:769px){
  .categories-grid{
    justify-content:center;
    flex-wrap:wrap;
    overflow-x:visible;
    scroll-snap-type:none;
  }
  .category-card{ width:33.3333%; max-width:33.3333%; }
  .category-card img{ height:520px; }
  .category-label{ font-size:22px; letter-spacing:.008em; }
}

/* PETIT TEXTE BAS */
.section-categories-vertical p.small-text{
  font-family:'Montserrat',sans-serif;
  font-style:italic;
  font-weight:500;
  letter-spacing:-0.052em;
  color:#AF9D94;
  text-align:center;
  font-size:13px;
  line-height:1.55;
  max-width:370px;
  margin:40px auto 25px auto;
  padding:0 16px;
}
@media screen and (max-width:768px){
  .section-categories-vertical p.small-text{
    font-size:14px;
    letter-spacing:-0.052em;
    margin:30px auto 20px auto;
    max-width:290px;
  }
}

/* BOUTON — version identique au Carousel Lovera */
.cta-wrap{
  text-align:center;
  margin-top:28px;
}

.btn-shop-all{
  display:inline-block;
  padding:12px 22px;
  border:1px solid #AF9D94;
  border-radius:0;
  text-transform:uppercase;
  text-decoration:none !important;
  font-family:'Montserrat',sans-serif !important;
  font-size:13px;
  letter-spacing:.06em;
  line-height:1;
  background:transparent;
  color:#AF9D94 !important;
  transition:background .2s ease,color .2s ease;
}
.btn-shop-all:hover{
  background:#AF9D94;
  color:#fff !important;
}
</style>
.collection-luxe-wrapper {
  width: 100%;
  padding: 0;
  margin: 0;
  font-family: 'Playfair Display', serif !important;
  color: #af9d94 !important;
}

.collection-luxe-wrapper,
.collection-luxe-wrapper *:where(:not(svg, svg *)) {
  color: #af9d94 !important;
}

.collection-luxe-breadcrumbs {
  font-family: 'Playfair Display', serif !important;
  font-size: 12px;
  text-align: center;
  margin-top: 48px;
  margin-bottom: 26px;
}

.collection-luxe-breadcrumbs a,
.collection-luxe-breadcrumbs a:visited,
.collection-luxe-breadcrumbs a:active,
.collection-luxe-breadcrumbs a:hover {
  color: #af9d94 !important;
  text-decoration: none;
}

.collection-luxe-title {
  font-family: 'Playfair Display', serif !important;
  font-size: 25px;
  text-align: center;
  margin-top: 10px !important;
  margin-bottom: 6px;
  text-transform: none !important;
  font-style: italic !important;
  padding: 0 20px;
}

.collection-luxe-subtitle {
  font-family: 'Playfair Display', serif !important;
  text-align: center;
  font-size: 12px;
  margin-top: 6px;
  margin-bottom: 16px;
  padding: 0 16px;
}

.collection-luxe-divider {
  width: 100px;
  height: 1px;
  background-color: #000;
  margin: 0 auto 40px auto;
  opacity: 0.6;
}

/* Grid compact layout with breathing space around */
.collection-luxe-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
  width: 100%;
  background: #f6f5f3;
  padding: 20px 10px 24px;
  box-sizing: border-box;
}

@media screen and (min-width: 768px) {
  .collection-luxe-grid {
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 16px;
    padding: 32px 2vw 32px;
  }
}

@media screen and (min-width: 1200px) {
  .collection-luxe-grid {
    grid-template-columns: repeat(auto-fit, minmax(340px, 1fr));
    gap: 20px;
    padding: 40px 4vw 40px;
  }
}

.collection-luxe-card {
  position: relative;
  padding: 0;
  text-align: left;
  display: flex;
  flex-direction: column;
  font-family: 'Playfair Display', serif !important;
  background: #fff;
  margin: 4px;
  box-sizing: border-box;
}

.collection-luxe-img-wrapper {
  position: relative;
  width: 100%;
  padding-bottom: 120%;
  overflow: hidden;
  margin-bottom: 0;
}

.collection-luxe-img-wrapper img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: contain;
  top: 0;
  left: 0;
}

/* Mobile adjustments – make cards wider in two columns */
@media screen and (max-width: 767px) {
  .collection-luxe-grid {
    gap: 6px;
    padding: 16px 6px;
  }
  .collection-luxe-card {
    margin: 2px;
  }
  .collection-luxe-img-wrapper {
    padding-bottom: 115%;
  }
  .collection-luxe-img-wrapper img {
    object-fit: cover;
  }
}

.label-offert {
  position: absolute;
  top: 12px;
  left: 12px;
  font-family: 'Playfair Display', serif !important;
  font-size: 11px;
  background: linear-gradient(90deg, #fff, #F2E8E6);
  padding: 4px 10px;
  border-radius: 4px;
  z-index: 2;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

/* Text wrapper inside card */
.collection-luxe-card-info {
  background: #fff;
  padding: 8px 10px;
  margin-top: 4px;
}

@media screen and (min-width: 1024px) {
  .collection-luxe-card-info {
    margin-top: -50px; /* remontée de la zone info sur desktop */
    padding: 6px 10px;
  }
}

.collection-luxe-product-title {
  font-family: 'Playfair Display', serif !important;
  font-size: 18px;
  margin-top: 2px;
  margin-bottom: 2px;
}

.collection-luxe-product-desc {
  font-family: 'Playfair Display', serif !important;
  font-size: 13px;
  line-height: 1.3;
  margin-bottom: 2px;
}

.collection-luxe-product-price {
  font-family: 'Playfair Display', serif !important;
  font-style: italic !important;
  font-size: 14px;
  margin-top: 2px;
}
<style>
    /* --- Base typographique --- */
    .icon-section {
      text-align: center;
      padding: 40px 20px;
      font-family: 'Montserrat', sans-serif;
    }
    .icon-section .icon-item {
      text-align: center;
      animation: fadeInUp 0.8s ease forwards;
    }
    .icon-section .icon-item img {
      max-width: 50px;
      margin: 0 auto 15px;
    }
    .icon-section .icon-item h3 {
      font-family: 'Montserrat', sans-serif;
      font-size: 16px;
      margin-bottom: 8px;
    }
    .icon-section .icon-item p {
      font-family: 'Montserrat', sans-serif !important;
      font-size: 14px;
      color: #af9d94;
      line-height: 1.3;
      margin: 0;
    }

    /* --- Pagination mobile (Swiper) --- */
    @media (max-width: 767px) {
      .swiper-pagination {
        display: flex;
        justify-content: center;
        background: white;
        margin-top: 15px;
      }
      .swiper-pagination-bullet {
        background: #000 !important;
        opacity: 1 !important;
        width: 8px;
        height: 8px;
        margin: 0 4px !important;
        border-radius: 50%;
      }
      .swiper-pagination-bullet-active {
        background: #555 !important;
      }
    }

    /* --- Section image + texte --- */
    .image-text-section {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 80px;
      color: #af9d94;
      font-family: 'Montserrat', sans-serif !important;
      background: #f6f5f3;
      padding: 0px 0px;
      animation: fadeInUp 0.8s ease forwards;
      max-width: 1400px;
      margin: 0 auto;
    }

    /* Wrapper média dédié */
    .image-text-section .media {
      flex: 1 1 auto;
      max-width: 600px;
      height: 600px;
      overflow: hidden;
    }

    /* Média (img + video) — desktop */
    .image-text-section .media > img,
    .image-text-section .media > video {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
    }

    .image-text-section .content {
      flex: 1;
      max-width: 600px;
      text-align: left;
      color: #af9d94;
    }

    .image-text-section h3 {
      font-family: 'Playfair Display', serif;
      font-size: 24px;
      margin-bottom: 16px;
      color: #af9d94;
    }

    .image-text-section .richtext {
      font-family: 'Montserrat', sans-serif !important;
      font-size: 16px;
      line-height: 1.5;
      color: #af9d94;
      margin-bottom: 24px;
    }

    .image-text-section a.btn {
      font-family: 'Montserrat', sans-serif;
      font-size: 14px;
      text-decoration: underline;
      color: #af9d94;
      display: inline-block;
    }

    /* Reset bords arrondis (thème) */
    .image-text-section .media,
    .image-text-section .media > img,
    .image-text-section .media > video,
    .image-text-section img,
    .image-text-section video {
      border-radius: 0 !important;
    }

    /* --- Desktop --- */
    @media (min-width: 768px) {
      .image-text-section {
        padding-left: 0;
      }
      .image-text-section .media {
        margin-left: 0;
      }
    }

    /* --- Mobile --- */
    @media (max-width: 767px) {
      .image-text-section {
        flex-direction: column;
        gap: 0;
        background: white;
        padding: 0;
      }

      /* Vidéo full-bleed */
      .image-text-section .media {
        width: 100vw;
        height: 480px;
        max-height: none;
        overflow: hidden;
        background: white;
        margin-left: calc(50% - 50vw);
        margin-right: calc(50% - 50vw);
        margin-top: 40px;
        margin-bottom: 0;
      }

      .image-text-section .media > video,
      .image-text-section .media > img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        background: white;
        object-position: center;
      }

      /* Zone texte visible sous la vidéo */
      .image-text-section .content {
        display: block !important;
        width: 100%;
        background: #f6f5f3;
        text-align: left;
        padding: 40px 24px;
        box-sizing: border-box;
        color: #af9d94;
      }

      .image-text-section .content h3 {
        font-size: 17px;
        margin-bottom: 12px;
        color: #af9d94;
      }

      .image-text-section .content .richtext {
        font-size: 12px;
        line-height: 1.6;
        margin-bottom: 20px;
      }

      .image-text-section .content a.btn {
        font-size: 13px;
        text-decoration: italic;
      }
    }

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

    @media (max-width: 767px) {
  .image-text-section .media {
    width: 100vw;
    height: 400px; /* ↓ au lieu de 480px : effet de phasing up plus fluide */
    max-height: none;
    overflow: hidden;
    background: white;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    margin-top: 40px;
    margin-bottom: 0;
  }
}

  </style>