
body.single-product article.spa-product-page{
  --spa-gold:#d4af37;--spa-gold2:#e7bd62;--spa-ink:#030303;--spa-line:rgba(212,175,55,.18);
  max-width:1420px;margin:0 auto;padding:24px 38px 76px;background:#030303;color:#f4eee7;
}
.spa-product-breadcrumb{display:flex;gap:7px;align-items:center;font-size:10px;color:#716a64;margin:0 0 18px}
.spa-product-breadcrumb a{color:#a79d94;text-decoration:none}.spa-product-breadcrumb span:last-child{color:#8a8179}

.spa-product-layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);gap:48px;align-items:start}
.spa-product-gallery{display:grid;grid-template-columns:78px minmax(0,1fr);gap:14px;min-width:0}
.spa-product-gallery:not(:has(.spa-product-thumbs)){grid-template-columns:1fr}
.spa-product-thumbs{display:flex;flex-direction:column;gap:9px}
.spa-product-thumbs button{padding:0;border:1px solid rgba(212,175,55,.16);background:#070605;aspect-ratio:3/4;overflow:hidden;cursor:pointer}
.spa-product-thumbs button.is-active{border-color:#d4af37}.spa-product-thumbs img{width:100%;height:100%;object-fit:cover;display:block}
.spa-product-main-image{position:relative;height:620px;overflow:hidden;background:#070605;border:1px solid rgba(212,175,55,.12)}
.spa-product-main-image>img{width:100%;height:100%;object-fit:cover;object-position:center 32%;display:block}
.spa-product-zoom{position:absolute;right:17px;bottom:17px;width:44px;height:44px;border:1px solid #d4af37;border-radius:50%;background:rgba(3,3,3,.78);color:#d4af37;display:grid;place-items:center;cursor:pointer}
.spa-product-zoom svg{width:18px!important;height:18px!important;max-width:18px!important;max-height:18px!important}

.spa-product-summary{padding:8px 0 0;min-width:0}
.spa-product-kicker{color:#d4af37;font-size:10px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:13px}
.spa-product-summary h1{font-family:Georgia,serif!important;font-size:40px!important;line-height:1.08!important;font-weight:400!important;margin:0 0 13px!important;color:#f5eee7!important;text-transform:uppercase;letter-spacing:.01em}
.spa-product-meta-line{display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid var(--spa-line);padding-bottom:17px}
.spa-product-price-main{font-family:Georgia,serif;color:#e1b457;font-size:28px;white-space:nowrap}
.spa-product-rating{display:flex;align-items:center;gap:7px;color:#9f958c;font-size:10px}.spa-product-rating .star-rating{color:#d4af37}
.spa-product-short{font-size:12px;line-height:1.8;color:#b9aea4;padding:17px 0 14px}.spa-product-short p{margin:0}
.spa-product-benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;border-top:1px solid var(--spa-line);border-bottom:1px solid var(--spa-line);padding:14px 0;margin-bottom:18px}
.spa-product-benefits span{display:flex;flex-direction:column;align-items:center;text-align:center;gap:7px;color:#cfc4bb}
.spa-product-benefits svg{width:22px!important;height:22px!important;max-width:22px!important;max-height:22px!important;color:#d4af37}
.spa-product-benefits b{font-size:8px;font-weight:400;letter-spacing:.03em}

.spa-product-page form.cart{margin:0!important}.spa-product-page .quantity{display:none!important}
.spa-product-page .single_add_to_cart_button{width:100%!important;min-height:54px!important;border:0!important;border-radius:0!important;background:linear-gradient(90deg,#d5a64d,#efc870)!important;color:#050505!important;text-transform:uppercase!important;letter-spacing:.09em!important;font-family:Georgia,serif!important;font-size:12px!important;font-weight:400!important}
.spa-product-page .single_add_to_cart_button:hover{filter:brightness(1.05)}
.spa-product-under-options{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:10px 0 12px}
.spa-size-guide-link{display:flex;align-items:center;gap:6px;color:#c8bfb6!important;text-decoration:none!important;font-size:9px}.spa-size-guide-link svg{width:15px!important;height:15px!important;color:#d4af37}
.spa-stock-line{display:flex;align-items:center;gap:7px;color:#a89d93;font-size:9px}.spa-stock-line i{width:7px;height:7px;background:#d4af37;border-radius:50%;box-shadow:0 0 12px rgba(212,175,55,.32)}
.spa-product-action-row{display:grid;grid-template-columns:1fr 58px;gap:10px}
.spa-buy-now{height:50px;border:1px solid rgba(212,175,55,.55);background:transparent;color:#d7ab51;font-family:Georgia,serif;font-size:11px;letter-spacing:.08em;cursor:pointer}
.spa-product-wish-button{border:1px solid rgba(212,175,55,.45);display:grid;place-items:center}.spa-product-wish-button .sp-wish-btn{width:100%;height:100%}.spa-product-wish-button .sp-wish-btn svg{width:20px!important;height:20px!important;max-width:20px!important;max-height:20px!important;color:#d4af37}

.spa-product-reassurance{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;border-top:1px solid var(--spa-line);border-bottom:1px solid var(--spa-line);margin-top:20px;padding:16px 0}
.spa-product-reassurance span{display:flex;align-items:center;gap:8px}.spa-product-reassurance svg{width:19px!important;height:19px!important;max-width:19px!important;max-height:19px!important;color:#d4af37;flex:0 0 19px}
.spa-product-reassurance b{font-size:8px;font-weight:400;line-height:1.25}.spa-product-reassurance small{display:block;color:#91867c;font-size:7px;margin-top:3px}

.spa-product-page .variations{margin:0 0 15px!important;border:0!important}.spa-product-page .variations tr{display:block;margin-bottom:15px}
.spa-product-page .variations th,.spa-product-page .variations td{display:block!important;padding:0!important;text-align:left!important;border:0!important}
.spa-product-page .variations label{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#d8cec4}
.spa-product-page .variations select{position:absolute!important;opacity:0!important;pointer-events:none!important;width:1px!important;height:1px!important}
.spa-swatch-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:9px}.spa-swatch{min-width:48px;height:36px;padding:0 12px;border:1px solid rgba(212,175,55,.24);background:#050505;color:#eee7df;cursor:pointer;font-size:10px;border-radius:0}
.spa-swatch.is-active{border-color:#d4af37;color:#d4af37}.spa-swatch.is-color{width:30px;min-width:30px;height:30px;border-radius:50%;padding:0;background:var(--swatch);box-shadow:inset 0 0 0 3px #050505}
.spa-swatch.is-color.is-active{outline:1px solid #d4af37;outline-offset:2px}.spa-product-page .reset_variations{color:#d4af37!important;font-size:9px!important}

.spa-product-information{display:grid;grid-template-columns:1.15fr .85fr 1.25fr;border-top:1px solid var(--spa-line);border-bottom:1px solid var(--spa-line);margin-top:42px}
.spa-product-information>article{position:relative;padding:28px 30px 30px;min-width:0;border-right:1px solid var(--spa-line)}.spa-product-information>article:first-child{padding-left:0}.spa-product-information>article:last-child{border-right:0;padding-right:0}
.spa-info-number{display:block;color:#6e5a30;font-size:9px;letter-spacing:.12em;margin-bottom:8px}.spa-product-information h2{font-family:Georgia,serif!important;font-weight:400!important;font-size:18px!important;color:#efe8df!important;margin:0 0 15px!important;letter-spacing:.05em}
.spa-info-copy{font-size:10px;line-height:1.75;color:#a99e94}.spa-info-copy p:first-child{margin-top:0}
.spa-detail-list{list-style:none;padding:0;margin:0}.spa-detail-list li{display:flex;justify-content:space-between;gap:18px;padding:8px 0;border-bottom:1px solid rgba(212,175,55,.09);font-size:9px}.spa-detail-list span{color:#857b72}.spa-detail-list strong{font-weight:400;color:#cfc4ba;text-align:right}
.spa-size-table-wrap{overflow-x:auto}.spa-product-information table{width:100%;border-collapse:collapse}.spa-product-information th,.spa-product-information td{font-size:8px;padding:8px 6px;text-align:center;border-bottom:1px solid rgba(212,175,55,.1);color:#aaa097;white-space:nowrap}.spa-product-information th{font-weight:400;color:#e8dfd6}

.spa-product-testimonials{margin-top:34px;border-bottom:1px solid var(--spa-line);padding:0 0 28px}.spa-product-testimonials>header{display:flex;align-items:center;gap:14px;justify-content:center}.spa-product-testimonials>header span{width:90px;height:1px;background:rgba(212,175,55,.35)}
.spa-product-testimonials h2{font-family:Georgia,serif!important;font-size:18px!important;font-weight:400!important;color:#d7ab51!important;margin:0!important;letter-spacing:.08em}.spa-product-testimonials>div{display:grid;grid-template-columns:repeat(3,1fr);margin-top:16px}
.spa-product-testimonials article{padding:12px 24px;border-right:1px solid rgba(212,175,55,.14)}.spa-product-testimonials article:last-child{border-right:0}.spa-product-testimonials article b{color:#d4af37;letter-spacing:.08em}.spa-product-testimonials article p{font-size:10px;line-height:1.65;color:#c6bbb0}.spa-product-testimonials article strong{font-size:9px;color:#d7ab51}

.spa-product-related{margin-top:34px}.spa-related-heading{text-align:center;margin-bottom:18px}.spa-related-heading span{display:block;color:#8a7150;font-size:9px;letter-spacing:.16em;margin-bottom:8px}.spa-related-heading h2{font-family:Georgia,serif!important;font-weight:400!important;color:#efe8e0!important;font-size:22px!important;letter-spacing:.05em;margin:0!important}
.spa-product-related .products{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:12px!important}.spa-product-related .products li.product{width:auto!important;margin:0!important}.spa-product-related .products img{aspect-ratio:3/4!important;object-fit:cover!important}

@media(max-width:1100px){
  .spa-product-layout{grid-template-columns:1fr;gap:28px}.spa-product-gallery,.spa-product-summary{max-width:820px;width:100%;margin:0 auto}
  .spa-product-main-image{height:650px}.spa-product-information{grid-template-columns:1fr 1fr}.spa-product-information>article:nth-child(2){border-right:0}.spa-product-information>article:last-child{grid-column:1/-1;border-top:1px solid var(--spa-line);padding-left:0}
  .spa-product-related .products{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}
@media(max-width:650px){
  body.single-product article.spa-product-page{padding:14px 12px 46px}.spa-product-breadcrumb{font-size:9px;margin-bottom:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .spa-product-gallery{grid-template-columns:1fr;gap:9px}.spa-product-thumbs{order:2;flex-direction:row;overflow-x:auto;padding-bottom:2px}.spa-product-thumbs button{min-width:62px;width:62px;aspect-ratio:3/4}
  .spa-product-main-image{height:52vh;min-height:350px;max-height:500px}.spa-product-main-image>img{object-position:center 30%}.spa-product-zoom{width:38px;height:38px;right:12px;bottom:12px}
  .spa-product-summary{padding-top:2px}.spa-product-kicker{font-size:8px;margin-bottom:9px}.spa-product-summary h1{font-size:28px!important;margin-bottom:10px!important}.spa-product-meta-line{align-items:flex-start;flex-direction:column;gap:7px;padding-bottom:13px}
  .spa-product-price-main{font-size:24px}.spa-product-short{padding:13px 0}.spa-product-benefits{grid-template-columns:repeat(4,1fr);gap:4px;padding:12px 0}.spa-product-benefits svg{width:19px!important;height:19px!important;max-width:19px!important;max-height:19px!important}.spa-product-benefits b{font-size:7px}
  .spa-product-under-options{align-items:flex-start;flex-direction:column}.spa-product-action-row{grid-template-columns:1fr 52px}.spa-product-reassurance{grid-template-columns:1fr;gap:10px}.spa-product-reassurance b{font-size:8px}.spa-product-reassurance small{font-size:7px}
  .spa-product-information{grid-template-columns:1fr;margin-top:30px}.spa-product-information>article,.spa-product-information>article:first-child,.spa-product-information>article:last-child{padding:22px 0;border-right:0;border-bottom:1px solid var(--spa-line);grid-column:auto}.spa-product-information>article:last-child{border-bottom:0;border-top:0}
  .spa-product-testimonials>header span{display:none}.spa-product-testimonials h2{font-size:15px!important;text-align:center}.spa-product-testimonials>div{grid-template-columns:1fr}.spa-product-testimonials article{border-right:0;border-bottom:1px solid rgba(212,175,55,.14);padding:12px 4px}
  .spa-product-related .products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
}


/* v4.1.6 — contain the custom product template and neutralise old theme product geometry. */
body.single-product{overflow-x:hidden!important;background:#030303!important}
body.single-product article.spa-product-page,
body.single-product article.spa-product-page *{box-sizing:border-box}
body.single-product article.spa-product-page{display:block!important;float:none!important;width:min(100%,1420px)!important;max-width:1420px!important;min-width:0!important;margin:0 auto!important;overflow:clip!important}
body.single-product article.spa-product-page .spa-product-layout{width:100%!important;max-width:100%!important;min-width:0!important;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)!important}
body.single-product article.spa-product-page .spa-product-gallery,
body.single-product article.spa-product-page .spa-product-summary,
body.single-product article.spa-product-page .spa-product-information,
body.single-product article.spa-product-page .spa-product-testimonials,
body.single-product article.spa-product-page .spa-product-related{min-width:0!important;max-width:100%!important}
body.single-product article.spa-product-page img{max-width:100%}
body.single-product article.spa-product-page .spa-product-main-image{max-width:100%!important}
@media(max-width:1100px){
 body.single-product article.spa-product-page .spa-product-layout{grid-template-columns:1fr!important}
}

/* Keep the validated six-card editorial row on desktop. */
body.single-product .spa-product-related ul.products.spa-product-grid{
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  justify-content:stretch!important;
  gap:12px!important;
}
body.single-product .spa-product-related ul.products.spa-product-grid>li.product.spa-product-card-v3{max-width:none!important}
@media(max-width:1100px){body.single-product .spa-product-related ul.products.spa-product-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
@media(max-width:650px){body.single-product .spa-product-related ul.products.spa-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}}

/* 4.2.3 editorial product */
.spa-product-benefits svg,.spa-product-reassurance svg,.spa-size-guide-link svg,.spa-product-zoom svg{display:none!important}
.spa-product-benefits span i,.spa-product-reassurance span i{display:block;font-family:Georgia,serif;font-style:normal;color:#8d6a31;font-size:8px;letter-spacing:.12em;margin-bottom:5px}
.spa-product-zoom{width:auto!important;height:auto!important;border:0!important;border-radius:0!important;padding:8px 10px!important;background:rgba(3,3,3,.72)!important;color:#d4af37!important;font-size:8px!important;letter-spacing:.09em!important}
.spa-product-benefits span{gap:4px}.spa-product-reassurance span{align-items:flex-start}

.spa-product-wish-button .sp-wish-btn{font-size:8px!important;letter-spacing:.08em!important;color:#d4af37!important;padding:0 8px!important}


/* 4.2.4 — exception fonctionnelle : le cœur wishlist reste */
.sp-wish-btn .sp-heart-svg{
  display:block!important;
  width:20px!important;
  height:20px!important;
  max-width:20px!important;
  max-height:20px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.45!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.sp-wish-btn.is-active .sp-heart-svg{fill:currentColor!important}
.sp-wish-btn .sp-wish-label{font-size:8px;letter-spacing:.08em}
.spa-card-v3-heart{
  width:38px!important;height:38px!important;min-width:38px!important;
  padding:0!important;border-radius:50%!important;
  background:rgba(2,2,2,.48)!important;
}
.spa-card-v3-heart .screen-reader-text{
  position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;
  overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;
}
.spa-card-v3-wish-action{gap:7px!important}
.spa-product-wish-button .sp-wish-btn{display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important}
@media(max-width:640px){
  .spa-card-v3-heart{width:34px!important;height:34px!important;min-width:34px!important;right:9px!important;top:9px!important}
  .spa-card-v3-heart .sp-heart-svg{width:18px!important;height:18px!important;max-width:18px!important;max-height:18px!important}
}


/* 4.2.5 — wishlist heart refined: thin, editorial, no circle */
.sp-wish-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;color:#d4af37!important;background:transparent!important;box-shadow:none!important}
.sp-wish-btn .sp-heart-svg{display:block!important;width:18px!important;height:18px!important;max-width:18px!important;max-height:18px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.28!important;stroke-linecap:round!important;stroke-linejoin:round!important;flex:0 0 auto}
.sp-wish-btn.is-active .sp-heart-svg{fill:currentColor!important;stroke:currentColor!important}
.sp-wish-btn .sp-wish-label{font-size:8px;letter-spacing:.10em}
.spa-card-v3-heart{position:absolute!important;top:12px!important;right:12px!important;width:auto!important;height:auto!important;min-width:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;line-height:1!important;color:#d8b15a!important}
.spa-card-v3-heart:hover,.spa-card-v3-heart:focus{transform:none!important;background:transparent!important;border-color:transparent!important}
.spa-card-v3-heart .sp-heart-svg{width:19px!important;height:19px!important;max-width:19px!important;max-height:19px!important}
.spa-card-v3-heart .screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.spa-card-v3-wish-action{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important}
.spa-card-v3-wish-action .sp-heart-svg{width:17px!important;height:17px!important;max-width:17px!important;max-height:17px!important}
.spa-product-wish-button .sp-wish-btn{display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;min-height:42px!important;padding:0 14px!important;border:1px solid rgba(212,175,55,.42)!important;background:transparent!important}
.spa-product-wish-button .sp-heart-svg{width:18px!important;height:18px!important}
@media(max-width:640px){
  .spa-card-v3-heart{top:10px!important;right:10px!important}
  .spa-card-v3-heart .sp-heart-svg{width:18px!important;height:18px!important;max-width:18px!important;max-height:18px!important}
}


/* 4.2.6 — mobile wishlist cleanup */
.spa-product-action-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:stretch}
.spa-product-wish-button{min-width:92px}
.spa-product-wish-button .sp-wish-btn{width:100%!important;min-width:92px!important;justify-content:center!important;white-space:nowrap!important;overflow:hidden!important}
.spa-product-wish-button .sp-heart-svg{flex:0 0 auto}
@media(max-width:640px){
  .spa-product-action-row{grid-template-columns:minmax(0,1fr) 64px!important;gap:10px!important}
  .spa-product-wish-button{min-width:64px!important}
  .spa-product-wish-button .sp-wish-btn{min-width:64px!important;padding:0!important}
  .spa-product-wish-button .sp-wish-label{display:none!important}
}


/* =========================================================
   SPIRALÉE 4.3.24 — FICHE PRODUIT / FORMAT PLUS LARGE
   Validé sur la maquette : moins "affiche portrait",
   produit entier plus lisible, galerie éditoriale plus large.
   ========================================================= */

@media(min-width:1101px){
  body.single-product article.spa-product-page{
    max-width:1540px!important;
    width:min(100%,1540px)!important;
    padding-left:34px!important;
    padding-right:34px!important;
  }

  body.single-product article.spa-product-page .spa-product-layout{
    grid-template-columns:minmax(0,1.18fr) minmax(430px,.82fr)!important;
    gap:42px!important;
    align-items:start!important;
  }

  body.single-product article.spa-product-page .spa-product-gallery{
    grid-template-columns:72px minmax(0,1fr)!important;
    gap:13px!important;
  }

  body.single-product article.spa-product-page .spa-product-gallery:not(:has(.spa-product-thumbs)){
    grid-template-columns:1fr!important;
  }

  .spa-product-thumbs button{
    aspect-ratio:4/5!important;
  }

  .spa-product-main-image{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    aspect-ratio:5/4!important;
    position:relative!important;
    isolation:isolate!important;
    display:grid!important;
    place-items:center!important;
    background:#050403!important;
  }

  /* Soft fill from the same product image:
     avoids ugly empty side bars while keeping the whole dress visible. */
  .spa-product-main-image::before{
    content:""!important;
    position:absolute!important;
    inset:-24px!important;
    z-index:0!important;
    background-image:var(--spa-main-image)!important;
    background-size:cover!important;
    background-position:center 34%!important;
    filter:blur(22px) brightness(.28) saturate(.78)!important;
    transform:scale(1.08)!important;
    opacity:.78!important;
    pointer-events:none!important;
  }

  .spa-product-main-image::after{
    content:""!important;
    position:absolute!important;
    inset:0!important;
    z-index:0!important;
    background:
      linear-gradient(90deg,rgba(3,3,3,.44),rgba(3,3,3,.06) 24%,rgba(3,3,3,.06) 76%,rgba(3,3,3,.44))!important;
    pointer-events:none!important;
  }

  .spa-product-main-image>img{
    position:relative!important;
    z-index:1!important;
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    object-position:center!important;
    display:block!important;
  }

  .spa-product-zoom{
    z-index:3!important;
  }
}

/* Tablet: retain the wide fashion feel without creating an enormous image. */
@media(min-width:651px) and (max-width:1100px){
  body.single-product article.spa-product-page .spa-product-gallery{
    max-width:900px!important;
  }
  .spa-product-main-image{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    aspect-ratio:5/4!important;
    position:relative!important;
    isolation:isolate!important;
    display:grid!important;
    place-items:center!important;
  }
  .spa-product-main-image::before{
    content:""!important;
    position:absolute!important;
    inset:-20px!important;
    z-index:0!important;
    background-image:var(--spa-main-image)!important;
    background-size:cover!important;
    background-position:center 34%!important;
    filter:blur(20px) brightness(.29)!important;
    transform:scale(1.08)!important;
    opacity:.72!important;
  }
  .spa-product-main-image>img{
    position:relative!important;
    z-index:1!important;
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    object-position:center!important;
  }
  .spa-product-zoom{z-index:3!important}
}

/* Mobile: more vertical than desktop so the full silhouette stays large. */
@media(max-width:650px){
  .spa-product-main-image{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    aspect-ratio:3/4!important;
    position:relative!important;
    isolation:isolate!important;
    display:grid!important;
    place-items:center!important;
    background:#050403!important;
  }

  .spa-product-main-image::before{
    content:""!important;
    position:absolute!important;
    inset:-14px!important;
    z-index:0!important;
    background-image:var(--spa-main-image)!important;
    background-size:cover!important;
    background-position:center 30%!important;
    filter:blur(16px) brightness(.27)!important;
    transform:scale(1.06)!important;
    opacity:.68!important;
  }

  .spa-product-main-image>img{
    position:relative!important;
    z-index:1!important;
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    object-position:center!important;
  }

  .spa-product-zoom{z-index:3!important}

  .spa-product-thumbs button{
    aspect-ratio:4/5!important;
  }
}


/* =========================================================
   SPIRALÉE 4.3.25 — FICHE PRODUIT / PORTRAIT PREMIUM
   Plus haute que large pour voir la robe entière.
   ========================================================= */

/* Desktop */
@media(min-width:1101px){
  body.single-product article.spa-product-page{
    max-width:1500px!important;
  }

  body.single-product article.spa-product-page .spa-product-layout{
    grid-template-columns:minmax(0,.95fr) minmax(430px,1.05fr)!important;
    gap:44px!important;
    align-items:start!important;
  }

  body.single-product article.spa-product-page .spa-product-gallery{
    grid-template-columns:70px minmax(0,1fr)!important;
    gap:13px!important;
  }

  .spa-product-main-image{
    aspect-ratio:4/5!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    display:grid!important;
    place-items:center!important;
    overflow:hidden!important;
    background:#050403!important;
  }

  .spa-product-main-image::before{
    inset:-14px!important;
    filter:blur(20px) brightness(.23) saturate(.75)!important;
    opacity:.56!important;
    transform:scale(1.04)!important;
  }

  .spa-product-main-image::after{
    background:linear-gradient(
      90deg,
      rgba(3,3,3,.32),
      rgba(3,3,3,.02) 20%,
      rgba(3,3,3,.02) 80%,
      rgba(3,3,3,.32)
    )!important;
  }

  .spa-product-main-image>img{
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    object-position:center!important;
  }

  .spa-product-thumbs button{
    aspect-ratio:4/5!important;
  }
}

/* Tablet */
@media(min-width:651px) and (max-width:1100px){
  .spa-product-main-image{
    aspect-ratio:4/5!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
  }

  .spa-product-main-image>img{
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    object-position:center!important;
  }

  .spa-product-main-image::before{
    inset:-12px!important;
    filter:blur(18px) brightness(.24)!important;
    opacity:.52!important;
  }
}

/* Mobile */
@media(max-width:650px){
  .spa-product-main-image{
    aspect-ratio:3/4!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
  }

  .spa-product-main-image>img{
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    object-position:center!important;
  }

  .spa-product-main-image::before{
    inset:-10px!important;
    filter:blur(14px) brightness(.22)!important;
    opacity:.48!important;
  }
}


/* =========================================================
   SPIRALÉE 4.3.26 — TARIF PRODUIT PREMIUM
   59,99 €
   69,99 €  |  ÉCONOMISEZ 10,00 €
   ========================================================= */

.spa-product-meta-line{
  align-items:flex-end!important;
}

.spa-product-price-main{
  min-width:0!important;
  white-space:normal!important;
}

.spa-price-sale{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:6px!important;
}

.spa-price-current{
  display:block!important;
  color:#e2b657!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:31px!important;
  font-weight:400!important;
  line-height:1!important;
  letter-spacing:.01em!important;
  white-space:nowrap!important;
}

.spa-price-secondary{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:0!important;
  min-height:22px!important;
}

.spa-price-old{
  position:relative!important;
  display:inline-block!important;
  margin:0!important;
  padding-right:18px!important;
  color:#8e8983!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:18px!important;
  font-weight:400!important;
  line-height:1.2!important;
  text-decoration-color:#8e8983!important;
  text-decoration-thickness:1px!important;
  white-space:nowrap!important;
  opacity:.9!important;
}

.spa-price-old::after{
  content:""!important;
  position:absolute!important;
  right:0!important;
  top:50%!important;
  width:1px!important;
  height:19px!important;
  background:rgba(212,175,55,.38)!important;
  transform:translateY(-50%)!important;
}

.spa-price-saving{
  display:inline-block!important;
  padding-left:18px!important;
  color:#d9ab50!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:12px!important;
  font-weight:600!important;
  line-height:1.25!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}

/* Standard price: same premium main-price treatment. */
.spa-price-standard,
.spa-price-standard .woocommerce-Price-amount{
  color:#e2b657!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:31px!important;
  font-weight:400!important;
  line-height:1!important;
  text-decoration:none!important;
}

.spa-price-standard del{
  color:#8e8983!important;
  opacity:.82!important;
  font-size:18px!important;
}

.spa-price-standard ins{
  color:#e2b657!important;
  background:transparent!important;
  text-decoration:none!important;
}

/* Never let generic Woo sale styling add a loud badge/background here. */
.spa-product-summary .price,
.spa-product-summary ins,
.spa-product-summary del{
  background:transparent!important;
  box-shadow:none!important;
}

/* Mobile: maintain the hierarchy without making the price dominate. */
@media(max-width:650px){
  .spa-product-meta-line{
    align-items:flex-start!important;
  }

  .spa-price-current,
  .spa-price-standard,
  .spa-price-standard .woocommerce-Price-amount{
    font-size:29px!important;
  }

  .spa-price-old{
    font-size:16px!important;
    padding-right:13px!important;
  }

  .spa-price-old::after{
    height:16px!important;
  }

  .spa-price-saving{
    padding-left:13px!important;
    font-size:10px!important;
    letter-spacing:.045em!important;
  }
}


/* =========================================================
   4.4.4 — PRODUITS SIMILAIRES : GRID FIX
   Prevent Woo/legacy flex rules from crushing product cards.
   ========================================================= */

.spa-product-page .related.products,
.single-product .related.products{
  width:100%!important;
  max-width:none!important;
  overflow:visible!important;
  margin-top:72px!important;
  padding-top:34px!important;
  border-top:1px solid rgba(201,158,61,.24)!important;
}

.spa-product-page .related.products > h2,
.single-product .related.products > h2{
  margin:0 0 26px!important;
  color:#f3eee7!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:clamp(30px,3vw,46px)!important;
  font-weight:400!important;
  line-height:1!important;
  letter-spacing:.01em!important;
  text-transform:uppercase!important;
}

.spa-product-page .related.products ul.products,
.single-product .related.products ul.products{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:20px!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  list-style:none!important;
  overflow:visible!important;
}

.spa-product-page .related.products ul.products::before,
.spa-product-page .related.products ul.products::after,
.single-product .related.products ul.products::before,
.single-product .related.products ul.products::after{
  display:none!important;
  content:none!important;
}

.spa-product-page .related.products ul.products li.product,
.single-product .related.products ul.products li.product{
  float:none!important;
  clear:none!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}

.spa-product-page .related.products .spa-product-card-v3,
.single-product .related.products .spa-product-card-v3{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  height:100%!important;
}

.spa-product-page .related.products .spa-product-card-v3 .spa-product-media,
.single-product .related.products .spa-product-card-v3 .spa-product-media{
  width:100%!important;
  aspect-ratio:3/4!important;
  overflow:hidden!important;
}

.spa-product-page .related.products .spa-product-card-v3 .spa-product-media img,
.single-product .related.products .spa-product-card-v3 .spa-product-media img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

@media(max-width:1100px){
  .spa-product-page .related.products ul.products,
  .single-product .related.products ul.products{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}

@media(max-width:800px){
  .spa-product-page .related.products,
  .single-product .related.products{
    margin-top:54px!important;
    padding-top:28px!important;
  }

  .spa-product-page .related.products ul.products,
  .single-product .related.products ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:14px!important;
  }

  .spa-product-page .related.products > h2,
  .single-product .related.products > h2{
    font-size:30px!important;
    margin-bottom:20px!important;
  }
}

@media(max-width:480px){
  .spa-product-page .related.products ul.products,
  .single-product .related.products ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }

  .spa-product-page .related.products .spa-product-card-v3 h2,
  .single-product .related.products .spa-product-card-v3 h2{
    font-size:16px!important;
    line-height:1.12!important;
  }
}
\n\n/* =========================================================\n   4.4.5 — RELATED PRODUCTS / STRUCTURAL FIX\n   Woo nested related wrapper removed: this is the only grid.\n   ========================================================= */\nbody.single-product article.spa-product-page .spa-product-related{\n  display:block!important;\n  width:100%!important;\n  max-width:100%!important;\n  min-width:0!important;\n  overflow:visible!important;\n  margin:72px 0 0!important;\n  padding:34px 0 0!important;\n  border-top:1px solid rgba(201,158,61,.24)!important;\n}\nbody.single-product article.spa-product-page .spa-product-related .spa-related-heading{\n  display:block!important;\n  width:100%!important;\n  margin:0 0 26px!important;\n  text-align:left!important;\n}\nbody.single-product article.spa-product-page .spa-product-related .spa-related-heading h2{\n  margin:0!important;\n  color:#f3eee7!important;\n  font-family:Georgia,"Times New Roman",serif!important;\n  font-size:clamp(30px,3vw,44px)!important;\n  line-height:1!important;\n  font-weight:400!important;\n  letter-spacing:.02em!important;\n}\nbody.single-product article.spa-product-page ul.products.spa-related-grid{\n  display:grid!important;\n  grid-template-columns:repeat(4,minmax(0,1fr))!important;\n  gap:18px!important;\n  width:100%!important;\n  max-width:100%!important;\n  min-width:0!important;\n  margin:0!important;\n  padding:0!important;\n  list-style:none!important;\n  justify-content:stretch!important;\n  align-items:stretch!important;\n  overflow:visible!important;\n}\nbody.single-product article.spa-product-page ul.products.spa-related-grid::before,\nbody.single-product article.spa-product-page ul.products.spa-related-grid::after{\n  display:none!important;\n  content:none!important;\n}\nbody.single-product article.spa-product-page ul.products.spa-related-grid>li.product.spa-product-card-v3{\n  display:block!important;\n  width:100%!important;\n  min-width:0!important;\n  max-width:none!important;\n  margin:0!important;\n  padding:0!important;\n  float:none!important;\n  clear:none!important;\n  justify-self:stretch!important;\n}\nbody.single-product article.spa-product-page ul.products.spa-related-grid .spa-card-v3-media{\n  display:block!important;\n  width:100%!important;\n  min-width:0!important;\n  aspect-ratio:3/4!important;\n}\n@media(max-width:1050px){\n  body.single-product article.spa-product-page ul.products.spa-related-grid{\n    grid-template-columns:repeat(3,minmax(0,1fr))!important;\n  }\n}\n@media(max-width:760px){\n  body.single-product article.spa-product-page .spa-product-related{\n    margin-top:52px!important;\n    padding-top:26px!important;\n  }\n  body.single-product article.spa-product-page ul.products.spa-related-grid{\n    grid-template-columns:repeat(2,minmax(0,1fr))!important;\n    gap:10px!important;\n  }\n}\n
/* =========================================================
   4.9.5 — SIZE SELECTOR / PRODUCT PAGE
   ========================================================= */
body.single-product article.spa-product-page .spa-size-choice{
  margin:0 0 16px!important;
  padding:0 0 16px!important;
  border-bottom:1px solid rgba(212,175,55,.18)!important;
}
body.single-product article.spa-product-page .spa-size-choice-head,
body.single-product article.spa-product-page .spa-size-variation-row>th.label{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  width:100%!important;
  margin:0 0 10px!important;
}
body.single-product article.spa-product-page .spa-size-choice-head>span,
body.single-product article.spa-product-page .spa-size-variation-row>th.label>label{
  margin:0!important;
  color:#eee5dc!important;
  font-size:10px!important;
  font-weight:400!important;
  line-height:1.2!important;
  letter-spacing:.13em!important;
  text-transform:uppercase!important;
}
body.single-product article.spa-product-page .spa-size-choice-head>a,
body.single-product article.spa-product-page .spa-inline-size-guide{
  color:#a99a89!important;
  font-size:9px!important;
  line-height:1.2!important;
  letter-spacing:.02em!important;
  text-decoration:underline!important;
  text-underline-offset:3px!important;
  white-space:nowrap!important;
}
body.single-product article.spa-product-page .spa-size-buttons{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin:0!important;
}
body.single-product article.spa-product-page .spa-size-button,
body.single-product article.spa-product-page .spa-size-variation-row .spa-swatch:not(.is-color){
  min-width:54px!important;
  height:40px!important;
  padding:0 14px!important;
  border:1px solid rgba(212,175,55,.38)!important;
  border-radius:0!important;
  background:#050505!important;
  color:#e9e1d8!important;
  font-family:Arial,sans-serif!important;
  font-size:10px!important;
  font-weight:500!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  cursor:pointer!important;
  transition:background .18s ease,color .18s ease,border-color .18s ease,opacity .18s ease!important;
}
body.single-product article.spa-product-page .spa-size-button:hover,
body.single-product article.spa-product-page .spa-size-variation-row .spa-swatch:not(.is-color):hover{
  border-color:#d4af37!important;
  color:#d4af37!important;
}
body.single-product article.spa-product-page .spa-size-button.is-active,
body.single-product article.spa-product-page .spa-size-variation-row .spa-swatch:not(.is-color).is-active{
  border-color:#d4af37!important;
  background:#d4af37!important;
  color:#050505!important;
}
body.single-product article.spa-product-page .spa-size-button:disabled,
body.single-product article.spa-product-page .spa-size-variation-row .spa-swatch.is-unavailable{
  opacity:.28!important;
  cursor:not-allowed!important;
  text-decoration:line-through!important;
}
body.single-product article.spa-product-page .spa-size-choice.has-error .spa-size-buttons{
  outline:1px solid #d4af37!important;
  outline-offset:5px!important;
}
body.single-product article.spa-product-page .spa-size-error{
  margin:10px 0 0!important;
  color:#d4af37!important;
  font-size:9px!important;
  line-height:1.4!important;
}
body.single-product article.spa-product-page .spa-product-under-options.has-size-selector{
  justify-content:flex-end!important;
}
body.single-product article.spa-product-page .spa-size-variation-row{
  margin-bottom:16px!important;
  padding-bottom:16px!important;
  border-bottom:1px solid rgba(212,175,55,.18)!important;
}
body.single-product article.spa-product-page .spa-size-variation-row>td.value{
  display:block!important;
}
body.single-product article.spa-product-page .spa-size-variation-row .reset_variations{
  display:inline-block!important;
  margin-top:9px!important;
}
@media(max-width:700px){
  body.single-product article.spa-product-page .spa-size-choice-head,
  body.single-product article.spa-product-page .spa-size-variation-row>th.label{
    gap:10px!important;
  }
  body.single-product article.spa-product-page .spa-size-button,
  body.single-product article.spa-product-page .spa-size-variation-row .spa-swatch:not(.is-color){
    min-width:50px!important;
    height:38px!important;
    padding:0 12px!important;
  }
}


/* =========================================================
   4.9.7 — SIZE SELECTOR / CTA BREATHING SPACE
   Prevent size buttons from visually touching "Ajouter au panier".
   ========================================================= */
body.single-product article.spa-product-page .spa-simple-size-choice{
  margin-bottom:20px!important;
  padding-bottom:0!important;
  border-bottom:0!important;
}
body.single-product article.spa-product-page .spa-size-variation-row{
  margin-bottom:20px!important;
  padding-bottom:0!important;
  border-bottom:0!important;
}
body.single-product article.spa-product-page form.cart:has(.spa-simple-size-choice) .single_add_to_cart_button,
body.single-product article.spa-product-page form.variations_form:has(.spa-size-variation-row) .single_add_to_cart_button{
  margin-top:0!important;
}
@media(max-width:700px){
  body.single-product article.spa-product-page .spa-simple-size-choice,
  body.single-product article.spa-product-page .spa-size-variation-row{
    margin-bottom:16px!important;
  }
}

/* 4.10.3 — Related products use the same complete 2:3 silhouette framing. */
body.single-product article.spa-product-page .spa-product-related .spa-card-v3-media,
body.single-product article.spa-product-page ul.products.spa-related-grid .spa-card-v3-media{
  aspect-ratio:2/3!important;
  background:#030303!important;
}
body.single-product article.spa-product-page .spa-product-related .spa-card-v3-media img,
body.single-product article.spa-product-page ul.products.spa-related-grid .spa-card-v3-media img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform:none!important;
}
