/** Shopify CDN: Minification failed

Line 298:19 Unexpected ";"

**/
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;overflow-x:hidden;}
body{font-family:'Jost',sans-serif;color:#1a0a12;background:#fff;overflow-x:hidden;-webkit-font-smoothing:antialiased;}
.shopify-section{margin:0;padding:0;}
a{text-decoration:none;color:inherit;}
img{display:block;max-width:100%;}
button{font-family:'Jost',sans-serif;cursor:pointer;border:none;background:none;}
:root{
  --pink:#FF93CD;--peach:#FFB793;--deep:#BD106D;
  --dark:#1a0a12;--cream:#FFF5F0;--light:#FFE7EE;--gray:#7a6070;
}

/* ─── ANNOUNCEMENT BAR — style Rizos Curls + defilement ─── */
.announce{
  background:#F261A2;
  height:30px;overflow:hidden;
  display:flex;align-items:center;
}
.announce-track{
  display:flex;gap:0;
  animation:ticker 12s linear infinite;
  white-space:nowrap;
}
.announce-track:hover{animation-play-state:paused;}
.announce-item{
  font-family:'Jost',sans-serif;
  font-size:11px;font-weight:300;
  color:#ffffff;
  letter-spacing:.03em;
  padding:0 40px;
  display:flex;align-items:center;gap:10px;
}
.announce-item::after{content:'\2022';color:#ffffff;opacity:.4;margin-left:40px;}
@keyframes ticker{
  0%{transform:translateX(0);}
  100%{transform:translateX(-50%);}
}

/* ─── HEADER — logo centré, burger gauche, icônes droite ─── */
.site-header{
  position:sticky;top:0;z-index:500;
  background:#fff;border-bottom:1px solid #f0dde8;
}
.header-inner{
  max-width:1440px;margin:0 auto;
  padding:0 20px;height:64px;
  display:grid;
  grid-template-columns:60px 1fr 70px;
  align-items:center;
}
.header-left{display:flex;align-items:center;gap:14px;}
/* Burger hamburger — 3 traits */
.burger{
  display:flex;flex-direction:column;justify-content:center;
  gap:5px;width:24px;height:24px;cursor:pointer;
  background:none;border:none;padding:0;flex-shrink:0;
}
.burger span{
  display:block;width:100%;height:2px;background:var(--dark);
  border-radius:2px;transition:all .3s;
}
.header-logo{
  grid-column:2;justify-self:center;
  display:flex;align-items:center;
}
.header-logo img{filter:brightness(0) saturate(100%) invert(52%) sepia(60%) saturate(2000%) hue-rotate(305deg) brightness(95%) contrast(95%);}
.header-right{
  display:flex;align-items:center;justify-content:flex-end;
  gap:10px;
}
/* Icon buttons — pictogrammes */
.icon-btn{
  background:none;border:none;cursor:pointer;
  padding:4px;color:var(--dark);
  display:flex;align-items:center;justify-content:center;
  position:relative;transition:color .2s;
}
.icon-btn:hover{color:var(--deep);}
.icon-btn svg{width:15px;height:15px;stroke:#1a0a12;fill:none;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;}
.cart-count{
  position:absolute;top:-4px;right:-5px;
  background:var(--deep);color:#fff;
  font-size:9px;font-weight:800;
  min-width:16px;height:16px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  line-height:1;
}

/* ─── SLIDE-IN MENU (drawer gauche) ─── */
.menu-overlay{
  position:fixed;inset:0;background:rgba(0,0,0,.4);
  z-index:800;opacity:0;pointer-events:none;
  transition:opacity .3s;
}
.menu-overlay.open{opacity:1;pointer-events:all;}
.menu-drawer{
  position:fixed;top:0;left:0;bottom:0;
  width:min(340px,85vw);background:#fff;
  z-index:900;
  transform:translateX(-100%);
  transition:transform .35s cubic-bezier(.4,0,.2,1);
  display:flex;flex-direction:column;
  overflow-y:auto;
}
.menu-drawer.open{transform:translateX(0);}
.menu-drawer-head{
  padding:20px 24px;
  display:flex;align-items:center;justify-content:space-between;
  border-bottom:1px solid #f0dde8;
}
.menu-drawer-logo{
  font-family:'Kiona',sans-serif;
  font-size:22px;font-weight:700;color:var(--deep);
}
.menu-close{font-size:22px;background:none;border:none;cursor:pointer;color:var(--dark);line-height:1;}
.menu-links{padding:16px 0;flex:1;}
.menu-links a{
  display:block;padding:14px 28px;
  font-size:13px;font-weight:600;letter-spacing:.1em;
  text-transform:uppercase;color:var(--dark);
  border-bottom:1px solid #f9f0f5;
  transition:color .2s,padding-left .2s;
}
.menu-links a:hover{color:var(--deep);padding-left:36px;}
.menu-divider{height:1px;background:#f0dde8;margin:8px 0;}
.menu-lang{padding:20px 28px;}
.menu-lang label{font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gray);display:block;margin-bottom:10px;}
.lang-options{display:flex;gap:8px;flex-wrap:wrap;}
.lang-btn{
  padding:7px 14px;font-size:12px;font-weight:600;
  border:1.5px solid #e8d0dc;border-radius:2px;
  cursor:pointer;transition:all .2s;background:#fff;color:var(--dark);
  font-family:'Jost',sans-serif;
}
.lang-btn.active,.lang-btn:hover{background:var(--deep);color:#fff;border-color:var(--deep);}

/* ─── CART DRAWER (droite) ─── */
.cart-overlay{
  position:fixed;inset:0;background:rgba(0,0,0,.4);
  z-index:800;opacity:0;pointer-events:none;
  transition:opacity .3s;
}
.cart-overlay.open{opacity:1;pointer-events:all;}
.cart-drawer{
  position:fixed;top:0;right:0;bottom:0;
  width:min(400px,92vw);background:#fff;
  z-index:900;
  transform:translateX(100%);
  transition:transform .35s cubic-bezier(.4,0,.2,1);
  display:flex;flex-direction:column;
}
.cart-drawer.open{transform:translateX(0);}
.cart-drawer-head{
  padding:20px 24px;
  display:flex;align-items:center;justify-content:space-between;
  border-bottom:1px solid #f0dde8;
}
.cart-drawer-title{font-size:14px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;}
.cart-close{font-size:22px;background:none;border:none;cursor:pointer;color:var(--dark);}
.cart-body{flex:1;overflow-y:auto;padding:20px 24px;}
.cart-empty{text-align:center;padding:48px 20px;color:var(--gray);font-size:14px;}
.cart-empty svg{width:48px;height:48px;stroke:var(--pink);fill:none;stroke-width:1.2;margin:0 auto 16px;}
.cart-item{
  display:grid;grid-template-columns:72px 1fr auto;
  gap:14px;align-items:start;
  padding:16px 0;border-bottom:1px solid #f9f0f5;
}
.cart-item-img{
  width:72px;height:72px;background:var(--light);
  border-radius:3px;display:flex;align-items:center;justify-content:center;
  font-size:32px;flex-shrink:0;
}
.cart-item-name{font-size:13px;font-weight:600;margin-bottom:4px;line-height:1.3;}
.cart-item-price{font-size:13px;color:var(--deep);font-weight:700;}
.cart-item-qty{
  display:flex;align-items:center;gap:8px;margin-top:8px;
}
.qty-btn{
  width:24px;height:24px;border:1px solid #e8d0dc;border-radius:2px;
  display:flex;align-items:center;justify-content:center;
  font-size:14px;cursor:pointer;color:var(--dark);background:#fff;
  transition:all .2s;
}
.qty-btn:hover{background:var(--deep);color:#fff;border-color:var(--deep);}
.qty-num{font-size:13px;font-weight:600;min-width:20px;text-align:center;}
.cart-remove{font-size:18px;color:#ccc;cursor:pointer;transition:color .2s;background:none;border:none;padding:0;line-height:1;}
.cart-remove:hover{color:var(--deep);}
.cart-footer{
  padding:20px 24px;
  border-top:1px solid #f0dde8;
  background:#fff;
}
.cart-subtotal{
  display:flex;justify-content:space-between;
  font-size:13px;font-weight:700;margin-bottom:16px;
  padding-bottom:14px;border-bottom:1px solid #f9f0f5;
}
.cart-subtotal span:last-child{color:var(--deep);}
.btn-checkout{
  display:block;width:100%;
  background:#1a0a12;color:#fff;
  text-align:center;padding:15px;
  font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;
  border-radius:50px;border:none;cursor:pointer;
  font-family:'Jost',sans-serif;transition:background .2s;
}
.btn-checkout:hover{background:#000;}
.cart-shipping-note{font-size:11px;color:var(--gray);text-align:center;margin-top:10px;}

/* ─── SEARCH OVERLAY ─── */
.search-overlay{
  position:fixed;inset:0;background:rgba(255,255,255,.97);
  z-index:700;opacity:0;pointer-events:none;
  transition:opacity .25s;
  display:flex;flex-direction:column;align-items:center;
  justify-content:flex-start;padding-top:15vh;
}
.search-overlay.open{opacity:1;pointer-events:all;}
.search-close-btn{
  position:absolute;top:20px;right:24px;
  font-size:24px;background:none;border:none;cursor:pointer;color:var(--dark);
}
.search-input-wrap{width:min(580px,90vw);position:relative;}
.search-input{
  width:100%;padding:16px 52px 16px 0;
  font-family:'Montserrat',sans-serif;
  font-size:32px;
  border:none;border-bottom:2px solid var(--dark);
  outline:none;color:var(--dark);background:transparent;
}
.search-input::placeholder{color:#ccc;}
.search-icon-inline{
  position:absolute;right:0;top:50%;transform:translateY(-50%);
  color:var(--deep);
}
.search-icon-inline svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.5;}

/* ─── HERO SLIDER ─── */
.hero{position:relative;overflow:hidden;background:#000;}
.hero-track{display:flex;transition:transform .75s cubic-bezier(.77,0,.175,1);}
.hero-slide{flex:0 0 100%;position:relative;}
.hero-slide-bg{width:100%;height:55vh;min-height:350px;max-height:500px;position:relative;overflow:hidden;}
@media(max-width:768px){.hero-slide-bg{height:50vh;min-height:300px;}}
.hero-fill{position:absolute;inset:0;}
.bg1{background-size:cover;background-position:center 25%;}
.bg2{background:linear-gradient(120deg,#BD106D 0%,#c94091 35%,#FF93CD 70%,#FFB793 100%);}
.bg3{background:linear-gradient(120deg,#FF93CD 0%,#FFB793 45%,#BD106D 100%);}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(26,10,18,.1) 0%,transparent 65%);}
.hero-blob{
  position:absolute;right:5%;top:50%;transform:translateY(-50%);
  width:min(40%,460px);aspect-ratio:1;border-radius:50%;
  background:rgba(255,255,255,.1);
  display:flex;align-items:center;justify-content:center;
  font-size:min(16vw,160px);
}
@media(max-width:600px){.hero-blob{display:none;}}
.hero-content{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:center;padding:0 min(7%,80px) 12px;}
.hero-text{max-width:520px;text-align:center;width:100%;}
.hero-tag{
  display:inline-flex;align-items:center;gap:6px;
  background:rgba(255,255,255,.2);backdrop-filter:blur(8px);
  border:1px solid rgba(255,255,255,.3);color:#fff;
  font-size:9px;font-weight:400;letter-spacing:.15em;text-transform:uppercase;
  padding:5px 13px;border-radius:2px;margin-bottom:16px;
}
.hero-h1{
  font-family:'Montserrat',sans-serif;
  font-size:clamp(20px,3.5vw,42px);
  font-weight:700;color:#fff;line-height:1.1;
  margin-bottom:14px;
}
.hero-p{
  color:#ffffff;font-size:clamp(11px,1.1vw,13px);
  font-weight:400;line-height:1.65;max-width:400px;margin-bottom:26px;
}
.hero-btns{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;width:100%;}
.btn-hero-solid{
  background:#F261A2;color:#fff;
  font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;
  padding:12px 28px;border-radius:50px;border:none;
  transition:all .2s;display:inline-block;
  font-family:'Jost',sans-serif;
}
.btn-hero-solid:hover{background:#d94e8a;color:#fff;}
.btn-hero-outline{
  background:transparent;color:#fff;
  font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;
  padding:10px 22px;border-radius:2px;border:1.5px solid rgba(255,255,255,.6);
  transition:all .2s;display:inline-block;
}
.btn-hero-outline:hover{background:rgba(255,255,255,.15);}
.hero-prev,.hero-next{display:none;}
  position:absolute;top:50%;transform:translateY(-50%);
  background:rgba(255,255,255,.85);color:var(--dark);
  width:38px;height:38px;border-radius:50%;
  font-size:18px;display:flex;align-items:center;justify-content:center;
  cursor:pointer;z-index:10;
  box-shadow:0 2px 12px rgba(0,0,0,.12);
  transition:all .2s;
}
.hero-prev{left:14px;}.hero-next{right:14px;}
.hero-prev:hover,.hero-next:hover{background:var(--deep);color:#fff;}
.hero-dots{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);display:flex;gap:7px;z-index:10;}
.hero-dot{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.4);border:none;cursor:pointer;transition:all .3s;padding:0;}
.hero-dot.on{background:#fff;width:20px;border-radius:4px;}

/* ─── SECTION HEADERS ─── */
.sec-head{text-align:center;padding:32px 20px 8px;}
.sec-eyebrow{display:block;font-family:'Kiona',sans-serif;font-size:10px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--deep);margin-bottom:10px;}
.sec-title{font-family:'Montserrat',sans-serif;font-size:clamp(22px,3vw,52px);font-weight:700;color:var(--dark);line-height:1.1;margin-bottom:8px;font-style:normal;}
.sec-sub{font-size:13px;color:var(--gray);max-width:460px;margin:0 auto;line-height:1.7;}

/* ─── PRODUCT PAGE — fiche produit style Vinci ─── */
.product-page{
  max-width:900px;margin:0 auto;padding:8px 28px 36px;
  display:grid;grid-template-columns:1fr;gap:24px;align-items:start;
  overflow:hidden;
}
.product-gallery{position:relative;min-width:0;}
.product-main-wrap{
  position:relative;overflow:hidden;border-radius:3px;
  background:#fff;aspect-ratio:1/1;
}
.gallery-main{position:relative;width:100%;height:100%;}
.gallery-slide{
  position:absolute;inset:0;
  display:flex;align-items:center;justify-content:center;
  background:#fff;
  opacity:0;transition:opacity .4s ease;pointer-events:none;
}
.gallery-slide.active{opacity:1;pointer-events:auto;}
.gallery-slide img{width:100%;height:100%;object-fit:contain;padding:16px;}
.gallery-arrow{
  position:absolute;top:50%;transform:translateY(-50%);
  width:30px;height:30px;
  background:rgba(255,255,255,.9);color:#1a0a12;
  border:1px solid #e0e0e0;border-radius:50%;
  font-size:18px;display:flex;align-items:center;justify-content:center;
  cursor:pointer;z-index:5;transition:all .2s;line-height:1;
}
.gallery-arrow:hover{background:#1a0a12;color:#fff;border-color:#1a0a12;}
.gallery-prev{left:10px;}
.gallery-next{right:10px;}
.product-thumbs{
  display:flex;gap:8px;margin-top:10px;
  overflow-x:auto;padding-bottom:4px;
}
.product-thumbs::-webkit-scrollbar{height:0;}
.thumb{
  flex:0 0 68px;height:68px;
  background:#fff;border-radius:3px;
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;border:2px solid transparent;
  transition:border-color .2s;overflow:hidden;padding:0;
}
.thumb img{width:100%;height:100%;object-fit:contain;padding:4px;}
.thumb.active{border-color:#1a0a12;}
.thumb:hover{border-color:#1a0a12;}
/* Promo Banner */
.promo-banner{
  background:#fff;color:#000;
  text-align:center;padding:10px 16px;
  margin:0 auto 8px;max-width:900px;
  font-family:'Jost',sans-serif;font-size:13px;font-weight:400;
  letter-spacing:.02em;line-height:1.4;
}
.promo-banner strong{font-weight:600;}
/* Product Info */
.product-info{padding-top:0;min-width:0;}
.product-eyebrow{
  display:inline-block;
  font-family:'Kiona',sans-serif;font-size:10px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;
  color:var(--deep);margin-bottom:10px;
}
.product-title{
  font-family:'Montserrat',sans-serif;
  font-size:clamp(18px,2.5vw,30px);font-weight:700;
  color:var(--dark);line-height:1.2;margin-bottom:4px;
}
.product-subtitle{
  font-size:12px;color:var(--gray);margin-bottom:14px;line-height:1.5;
}
.product-price-block{
  display:flex;align-items:baseline;gap:12px;margin-bottom:6px;
}
.product-price-current{
  font-size:24px;font-weight:300;color:#000;
}
.product-price-old{
  font-size:18px;color:#000;text-decoration:line-through;font-weight:300;
}
.product-promo-note{
  font-size:11px;color:var(--deep);margin-bottom:16px;
  background:var(--light);padding:8px 12px;border-radius:4px;
  line-height:1.5;
}
.product-benefits{
  margin-bottom:18px;
  border:1px solid #f0e0e8;border-radius:6px;padding:12px 16px;
}
.benefit-row{
  display:flex;align-items:center;gap:10px;
  font-size:12px;color:var(--dark);padding:5px 0;
}
.benefit-check{
  color:var(--dark);font-weight:700;font-size:14px;flex-shrink:0;
}
.btn-add-cart{
  display:block;width:100%;
  background:#1a0a12;color:#fff;
  text-align:center;padding:14px;
  font-size:13px;font-weight:600;letter-spacing:.03em;
  border-radius:50px;border:none;cursor:pointer;
  font-family:'Jost',sans-serif;transition:background .2s;
  margin-bottom:10px;
}
.btn-add-cart:hover{background:#000;}
.product-ship-note{
  font-size:12px;color:var(--deep);font-weight:500;
  text-align:center;margin-bottom:18px;
}
/* Accordions */
.product-accordions{border-top:1px solid #e8e0e4;}
.accordion-item{border-bottom:1px solid #e8e0e4;}
.accordion-toggle{
  width:100%;display:flex;justify-content:space-between;align-items:center;
  padding:12px 0;background:none;border:none;cursor:pointer;
  font-family:'Jost',sans-serif;font-size:10px;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;color:var(--dark);
  transition:color .2s;
}
.accordion-toggle:hover{color:var(--deep);}
.accordion-icon{font-size:16px;font-weight:300;transition:transform .3s;}
.accordion-item.open .accordion-icon{transform:rotate(45deg);}
.accordion-content{
  display:none;padding:0 0 14px;
  font-size:10px;color:var(--gray);line-height:1.8;
}
.accordion-content ul{list-style:none;padding:0;}
.accordion-content li{padding:4px 0;padding-left:16px;position:relative;}
.accordion-content li::before{content:'\2022';position:absolute;left:0;color:var(--deep);}
.accordion-content p{margin-bottom:8px;}
.accordion-item.open .accordion-content{display:block;}

/* ─── FEATURE BANNER ─── */
.feat-banner{position:relative;width:100%;overflow:hidden;}
.feat-line{width:100%;height:3px;background:#F261A2;}
.feat-banner-bg{width:100%;padding:48px 0;background:#fff;position:relative;}
.feat-banner-content{
  display:flex;align-items:center;
  padding:0 min(7%,80px);gap:5%;
  max-width:1440px;margin:0 auto;width:100%;
}
.feat-icon{font-size:clamp(48px,7vw,110px);opacity:.9;flex-shrink:0;}
@media(max-width:600px){.feat-icon{display:none;}}
.feat-text{color:var(--dark);}
.feat-eyebrow{font-size:10px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:#F261A2;margin-bottom:10px;}
.feat-h2{font-family:'Montserrat',sans-serif;font-size:clamp(16px,2.5vw,28px);font-weight:700;line-height:1.2;margin-bottom:6px;color:var(--dark);}
.feat-sub{font-family:'Jost',sans-serif;font-size:clamp(11px,1.2vw,14px);color:var(--gray);line-height:1.5;margin-bottom:14px;}
.feat-p{font-size:clamp(11px,1.2vw,14px);color:var(--dark);max-width:460px;line-height:1.65;margin-bottom:20px;}

/* ─── COLLECTION À VENIR ─── */
.coming-section{max-width:1440px;margin:0 auto;padding:0 28px 36px;}
.coming-scroll-wrap{position:relative;}
.coming-arrow{position:absolute;top:50%;transform:translateY(-50%);width:36px;height:36px;background:rgba(255,255,255,.9);color:var(--dark);border:1px solid #e0e0e0;border-radius:50%;font-size:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:5;transition:all .2s;line-height:1;}
.coming-arrow:hover{background:var(--dark);color:#fff;border-color:var(--dark);}
.coming-prev{left:-10px;}
.coming-next{right:-10px;}
.coming-grid{
  display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch;padding-bottom:8px;
}
.coming-grid::-webkit-scrollbar{display:none;}
.coming-grid{-ms-overflow-style:none;scrollbar-width:none;}
.coming-card{width:calc(25% - 12px);min-width:calc(25% - 12px);max-width:calc(25% - 12px);flex-shrink:0;scroll-snap-align:start;}
/* Minimaliste — badge discret, produit visible */
.coming-card{
  position:relative;overflow:hidden;
  border:1px solid #f5ecf0;border-radius:3px;
  transition:box-shadow .3s;
}
.coming-card:hover{box-shadow:0 6px 24px rgba(189,16,109,.08);}
.coming-card-img{
  background:#fff;
  aspect-ratio:5/6;
  display:flex;align-items:center;justify-content:center;
  overflow:hidden;
  filter:grayscale(.15);
  transition:filter .3s;
}
.coming-card-img img{
  width:85%;height:85%;object-fit:contain;
}
.coming-card:hover .coming-card-img{filter:grayscale(0);}
/* Badge "À venir" — petit, coin haut droite */
.coming-label{
  position:absolute;top:8px;right:8px;
  font-size:9px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;
  color:var(--gray);background:rgba(255,255,255,.85);
  padding:3px 8px;border-radius:2px;
  backdrop-filter:blur(4px);
}
.coming-card-info{padding:8px 10px;}
.coming-card-name{
  font-family:'Montserrat',sans-serif;
  font-size:11px;font-weight:700;color:var(--dark);
  text-transform:capitalize;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  margin-bottom:2px;
}
.coming-card-sub{font-family:'Jost',sans-serif;font-size:9px;color:var(--gray);white-space:nowrap;}
/* Modal produit coming-soon */
.coming-modal{
  position:fixed;top:0;left:0;width:100%;height:100%;
  background:rgba(0,0,0,.55);z-index:9999;
  display:flex;align-items:center;justify-content:center;
  opacity:0;pointer-events:none;transition:opacity .3s;
}
.coming-modal.active{opacity:1;pointer-events:auto;}
.coming-modal-close{
  position:absolute;top:20px;right:24px;
  background:none;border:none;color:#fff;font-size:36px;
  cursor:pointer;z-index:10000;line-height:1;
}
.coming-modal-content{
  background:#fff;border-radius:6px;overflow:hidden;
  max-width:420px;width:90%;text-align:center;
  transform:scale(.9);transition:transform .3s;
}
.coming-modal.active .coming-modal-content{transform:scale(1);}
.coming-modal-content img{
  width:100%;height:auto;display:block;
  background:var(--light);padding:20px;
}
.coming-modal-info{padding:18px 20px;}
.coming-modal-name{
  font-family:'Montserrat',sans-serif;font-size:14px;font-weight:700;
  text-transform:capitalize;color:var(--dark);margin-bottom:4px;
}
.coming-modal-sub{font-family:'Jost',sans-serif;font-size:12px;color:var(--gray);margin-bottom:10px;}
.coming-modal-badge{
  display:inline-block;font-family:'Kiona',sans-serif;
  font-size:9px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;
  color:var(--deep);background:var(--light);
  padding:5px 14px;border-radius:20px;
}

/* ─── AVANT / APRÈS ─── */
.ba-section{background:#fff;padding:36px 28px;}
.ba-inner{max-width:1440px;margin:0 auto;}
.ba-grid{display:flex;flex-wrap:nowrap;gap:14px;margin-top:20px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:4px;}
.ba-grid::-webkit-scrollbar{display:none;}
.ba-card{width:calc(25% - 11px);min-width:calc(25% - 11px);max-width:calc(25% - 11px);flex-shrink:0;scroll-snap-align:start;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 14px rgba(0,0,0,.05);transition:box-shadow .3s,transform .3s;cursor:pointer;}
.ba-card:hover{box-shadow:0 8px 28px rgba(189,16,109,.09);transform:translateY(-3px);}
.ba-img-wrap{aspect-ratio:3/4;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#faf6f8;}
.ba-img-wrap img{width:100%;height:100%;object-fit:cover;filter:grayscale(.1);transition:filter .4s;}
.ba-card:hover .ba-img-wrap img{filter:grayscale(0);}

/* ─── NOTRE HISTOIRE ─── */
.story-section{
  max-width:1440px;margin:0 auto;
  padding:40px 28px;
  display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;
}
.story-visual{
  background:linear-gradient(135deg,var(--peach),var(--pink));
  border-radius:3px;aspect-ratio:4/5;
  display:flex;align-items:center;justify-content:center;
  font-size:90px;position:relative;overflow:hidden;
}
.story-visual::after{
  content:'@rosemuse_fr';position:absolute;bottom:18px;left:20px;
  color:rgba(255,255,255,.55);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
}
.story-text .sec-eyebrow{text-align:left;}
.story-h2{font-family:'Montserrat',sans-serif;font-size:clamp(24px,3vw,42px);font-weight:700;color:var(--dark);line-height:1.15;margin-bottom:20px;}
.story-p{font-size:13.5px;color:var(--gray);line-height:1.8;margin-bottom:14px;}
.story-quote{border-left:2px solid var(--pink);padding:10px 0 10px 20px;font-style:italic;font-size:15px;color:var(--deep);margin:22px 0;font-family:'Montserrat',sans-serif;line-height:1.5;}
.btn-story{display:inline-block;background:#1a0a12;color:#fff;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:13px 30px;border-radius:50px;transition:background .2s;margin-top:8px;}
.btn-story:hover{background:#000;}

/* ─── NEWSLETTER ─── */
.nl-section{background:var(--light);border-top:1px solid #f0e0e8;padding:32px 28px;text-align:center;}
.nl-form{display:flex;gap:10px;max-width:440px;margin:22px auto 0;flex-wrap:wrap;justify-content:center;}
.nl-input{flex:1;min-width:200px;padding:12px 16px;border:1.5px solid #e8d0dc;border-radius:2px;font-family:'Jost',sans-serif;font-size:13px;outline:none;color:var(--dark);}
.nl-input:focus{border-color:var(--deep);}
.nl-btn{background:#1a0a12;color:#fff;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:12px 26px;border-radius:50px;border:none;cursor:pointer;transition:background .2s;font-family:'Jost',sans-serif;}
.nl-btn:hover{background:#000;}

/* ─── FOOTER ─── */
.site-footer{background:#fff;color:#888;padding:36px 28px 22px;border-top:1px solid #eee;}
.footer-grid{max-width:1440px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:44px;padding-bottom:44px;border-bottom:1px solid #e0e0e0;margin-bottom:24px;}
.footer-logo{font-family:'Kiona',sans-serif;font-size:24px;font-weight:700;color:var(--deep);display:block;margin-bottom:12px;}
.footer-desc{font-size:12.5px;line-height:1.75;max-width:210px;margin-bottom:20px;}
.footer-socials{display:flex;gap:8px;}
.footer-soc{width:34px;height:34px;background:#e0e0e0;border-radius:3px;display:flex;align-items:center;justify-content:center;font-size:14px;transition:background .2s;text-decoration:none;}
.footer-soc:hover{background:var(--deep);color:#fff;}
.footer-col-title{color:var(--dark);font-size:10px;font-weight:800;letter-spacing:.22em;text-transform:uppercase;margin-bottom:16px;}
.footer-col ul{list-style:none;}
.footer-col li{margin-bottom:9px;}
.footer-col a{font-size:12.5px;color:#888;transition:color .2s;}
.footer-col a:hover{color:var(--deep);}
.footer-bottom{max-width:1440px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;font-size:11.5px;}

/* ─── POPUP ─── */
.popup-wrap{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:9000;display:flex;align-items:center;justify-content:center;padding:20px;}
.popup-box{background:#fff;max-width:480px;width:100%;border-radius:3px;overflow:hidden;animation:popIn .38s cubic-bezier(.34,1.56,.64,1);position:relative;}
@keyframes popIn{from{opacity:0;transform:scale(.82);}to{opacity:1;transform:scale(1);}}
.popup-top{background:linear-gradient(135deg,var(--peach),var(--pink),var(--deep));height:180px;display:flex;align-items:center;justify-content:center;font-size:64px;}
.popup-discount{background:var(--deep);color:#fff;text-align:center;padding:7px;font-size:10px;font-weight:800;letter-spacing:.22em;text-transform:uppercase;}
.popup-body{padding:26px 30px 30px;}
.popup-h3{font-family:'Montserrat',sans-serif;font-size:21px;font-weight:700;margin-bottom:7px;color:var(--dark);}
.popup-p{font-size:12.5px;color:var(--gray);line-height:1.6;margin-bottom:18px;}
.popup-form{display:flex;gap:8px;}
.popup-input{flex:1;padding:11px 14px;border:1.5px solid #e8d0dc;border-radius:2px;font-family:'Jost',sans-serif;font-size:12.5px;outline:none;}
.popup-input:focus{border-color:var(--deep);}
.popup-submit{background:var(--deep);color:#fff;border:none;padding:11px 18px;font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;border-radius:2px;cursor:pointer;font-family:'Jost',sans-serif;white-space:nowrap;transition:background .2s;}
.popup-submit:hover{background:var(--dark);}
.popup-legal{font-size:9.5px;color:#ccc;margin-top:9px;}
.popup-close{position:absolute;top:11px;right:13px;background:rgba(255,255,255,.25);border:none;color:#fff;width:28px;height:28px;border-radius:50%;font-size:15px;display:flex;align-items:center;justify-content:center;cursor:pointer;}

/* ─── SCROLL REVEAL — fade-in dégradé ─── */
.rev{opacity:0;transform:translateY(50px);transition:opacity 1s cubic-bezier(.25,.46,.45,.94),transform 1s cubic-bezier(.25,.46,.45,.94);}
.rev.in{opacity:1;transform:translateY(0);}
/* Staggered delays for children inside grids */
.rev:nth-child(2){transition-delay:.12s;}
.rev:nth-child(3){transition-delay:.24s;}
.rev:nth-child(4){transition-delay:.36s;}
.rev:nth-child(5){transition-delay:.48s;}
.rev:nth-child(6){transition-delay:.60s;}

/* ─── RESPONSIVE ─── */
@media(max-width:1100px){
  .story-section{gap:40px;}
  .footer-grid{grid-template-columns:1fr 1fr;}
}
@media(max-width:820px){
  .ba-grid{grid-template-columns:1fr 1fr;}
  .product-page{gap:16px;padding-top:6px;}
  .story-section{grid-template-columns:1fr;padding:28px 20px;gap:20px;}
  .story-visual{aspect-ratio:3/2;font-size:72px;}
  .feat-banner-content{flex-direction:column;justify-content:center;text-align:center;padding:16px 20px;}
  .feat-banner-bg{padding:32px 0;}
  .footer-grid{grid-template-columns:1fr 1fr;gap:24px;}
}
@media(max-width:600px){
  .product-page,.coming-section{padding-left:16px;padding-right:16px;}
  .coming-card{width:calc(50% - 8px);min-width:calc(50% - 8px);max-width:calc(50% - 8px);}
  .ba-card{width:calc(50% - 8px);min-width:calc(50% - 8px);max-width:calc(50% - 8px);}
  .ba-section,.nl-section{padding:28px 16px;}
  .site-footer{padding:40px 16px 22px;}
  .footer-grid{grid-template-columns:1fr;}
  .header-logo img{height:36px!important;}
  .sec-head{padding:22px 16px 4px;}
  .sec-title{font-size:18px!important;}
  .sec-sub{font-size:11px;margin-bottom:2px;}
  .promo-banner{font-size:13px;padding:10px 14px;border-radius:6px;margin-bottom:4px;}
  .product-page{padding-top:0;gap:8px;}
  .product-title{font-size:16px!important;}
  .product-subtitle{font-size:11px;margin-bottom:10px;}
  .product-price-current{font-size:20px;}
  .product-price-old{font-size:14px;}
  .product-promo-note{font-size:10px;padding:6px 10px;margin-bottom:10px;}
  .product-benefits{padding:10px 14px;margin-bottom:12px;}
  .benefit-row{font-size:11px;padding:3px 0;gap:8px;}
  .benefit-check{font-size:12px;}
  .btn-add-cart{padding:12px;font-size:12px;}
  .product-main-wrap{aspect-ratio:4/3;}
  .bg1{background-position:center 20%;}
}

/* ─── PAGES INTERNES ─── */
.page-wrap{max-width:800px;margin:0 auto;padding:48px 28px 60px;}
.page-wrap-wide{max-width:1100px;margin:0 auto;padding:48px 28px 60px;}
.page-hero{text-align:center;margin-bottom:40px;}
.page-hero .sec-eyebrow{margin-bottom:8px;}
.page-hero h1{font-family:'Montserrat',sans-serif;font-size:clamp(28px,4vw,48px);font-weight:700;color:var(--dark);line-height:1.15;margin-bottom:12px;}
.page-hero p{font-size:14px;color:var(--gray);max-width:500px;margin:0 auto;line-height:1.7;}

/* Page Notre Histoire */
.histoire-page{background:var(--light);min-height:100vh;}
.histoire-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;}
@media(max-width:820px){.histoire-grid{grid-template-columns:1fr;gap:24px;}}
.histoire-visual{background:linear-gradient(135deg,var(--peach),var(--pink));border-radius:6px;aspect-ratio:4/5;display:flex;align-items:center;justify-content:center;font-size:90px;}
.histoire-text .story-h2{margin-top:0;}

/* Page FAQ */
.faq-page{background:#fff;min-height:100vh;}
.faq-list{display:flex;flex-direction:column;gap:0;}
.faq-item{border-bottom:1px solid #f0e0e8;}
.faq-q{width:100%;display:flex;justify-content:space-between;align-items:center;padding:20px 0;background:none;border:none;cursor:pointer;font-family:'Jost',sans-serif;font-size:14px;font-weight:600;color:var(--dark);text-align:left;transition:color .2s;}
.faq-q:hover{color:var(--deep);}
.faq-q .accordion-icon{font-size:18px;font-weight:300;flex-shrink:0;margin-left:16px;}
.faq-a{display:none;padding:0 0 20px;font-size:13px;color:var(--gray);line-height:1.8;}
.faq-item.open .faq-a{display:block;}
.faq-item.open .accordion-icon{transform:rotate(45deg);}
.faq-card{background:var(--light);border-radius:8px;padding:32px;margin-top:32px;text-align:center;}
.faq-card p{font-size:13px;color:var(--gray);margin-bottom:12px;}

/* Page Mentions Légales */
.legal-page{background:#fff;min-height:100vh;}
.legal-section{margin-bottom:32px;}
.legal-section h2{font-family:'Montserrat',sans-serif;font-size:18px;font-weight:700;color:var(--deep);letter-spacing:.05em;text-transform:uppercase;margin-bottom:12px;padding-bottom:8px;border-bottom:2px solid var(--light);}
.legal-section h3{font-size:14px;font-weight:700;color:var(--dark);margin:16px 0 8px;}
.legal-section p,.legal-section li{font-size:13px;color:var(--gray);line-height:1.8;margin-bottom:8px;}
.legal-section ul{list-style:none;padding-left:16px;}
.legal-section li::before{content:'\2022';color:var(--deep);position:absolute;margin-left:-16px;}
.legal-section li{position:relative;}

/* Page Tous les Produits */
.allproducts-page{background:#fff;min-height:100vh;}
.allproducts-breadcrumb{font-size:12px;color:var(--gray);text-align:center;margin-bottom:16px;}
.allproducts-breadcrumb a{color:var(--gray);text-decoration:underline;}
.allproducts-breadcrumb a:hover{color:var(--deep);}
.allproducts-title{font-family:'Montserrat',sans-serif;font-size:clamp(28px,5vw,48px);font-weight:800;color:var(--dark);text-align:center;margin-bottom:24px;}
.allproducts-sort{margin-bottom:16px;}
.allproducts-select{padding:10px 16px;border:1.5px solid #e0d0d8;border-radius:4px;font-family:'Jost',sans-serif;font-size:13px;color:var(--dark);background:#fff;cursor:pointer;min-width:160px;}
.allproducts-divider{height:2px;background:linear-gradient(90deg,var(--pink),var(--peach));margin-bottom:32px;}
.allproducts-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;}
.ap-card{background:#fff;border-radius:4px;overflow:hidden;transition:box-shadow .3s;}
.ap-card:hover{box-shadow:0 4px 20px rgba(0,0,0,.08);}
.ap-card-img{position:relative;aspect-ratio:1/1;background:#fafafa;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.ap-card-img img{width:100%;height:100%;object-fit:contain;padding:12px;}
.ap-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#fff,var(--light));}
.ap-badge{position:absolute;top:10px;right:10px;background:var(--dark);color:#fff;font-size:9px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;padding:5px 10px;border-radius:2px;}
.ap-badge-soon{position:absolute;top:10px;right:10px;background:var(--deep);color:#fff;font-size:9px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;padding:5px 10px;border-radius:2px;}
.ap-card-info{padding:14px 12px 18px;text-align:center;}
.ap-card-name{font-family:'Montserrat',sans-serif;font-size:13px;font-weight:700;color:var(--dark);margin-bottom:6px;line-height:1.3;}
.ap-card-price{font-size:14px;font-weight:600;color:var(--dark);margin-bottom:8px;}
.ap-btn{display:block;width:100%;padding:12px;background:var(--dark);color:#fff;font-family:'Jost',sans-serif;font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;text-align:center;border:none;border-radius:2px;cursor:pointer;transition:background .2s;text-decoration:none;}
.ap-btn:hover{background:var(--deep);}
.ap-btn-soon{background:#aaa;cursor:not-allowed;}
.ap-btn-soon:hover{background:#aaa;}
.ap-featured{display:flex;gap:32px;align-items:center;background:#FFF0F7;border-radius:8px;padding:32px;margin-bottom:32px;}
.ap-featured-img{flex:1;min-width:0;}
.ap-featured-img img{width:100%;border-radius:6px;display:block;}
.ap-featured-info{flex:1;min-width:0;}
.ap-featured-name{font-family:'Montserrat',sans-serif;font-size:clamp(20px,2.5vw,28px);font-weight:800;color:var(--deep);margin:8px 0 6px;}
.ap-featured-sub{font-family:'Jost',sans-serif;font-size:14px;color:var(--gray);margin-bottom:12px;}
.ap-featured-price{font-family:'Montserrat',sans-serif;font-size:22px;font-weight:700;color:var(--deep);margin-bottom:16px;}
.ap-featured-old{font-size:16px;color:#aaa;text-decoration:line-through;margin-left:8px;font-weight:400;}
.allproducts-subtitle{font-family:'Montserrat',sans-serif;font-size:18px;font-weight:700;color:var(--deep);margin:24px 0 16px;text-align:center;}
.ap-card-sub{font-family:'Jost',sans-serif;font-size:12px;color:var(--gray);margin-bottom:8px;}
@media(max-width:768px){
.ap-featured{flex-direction:column;padding:20px;}
.ap-featured-img{width:100%;}
.ap-featured-info{width:100%;text-align:center;}
}