.mobile-shortcuts{display:none}
section.purchase-confidence{padding:2rem 5vw;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;background:var(--cream);border-bottom:1px solid #e5d9cf}
.purchase-confidence a{display:grid;grid-template-columns:28px 1fr;gap:.35rem .7rem;align-content:start;padding:.7rem;border-radius:4px}
.purchase-confidence a:hover{background:#fff9ef}.purchase-confidence a>span{grid-row:1/3;color:var(--wine);font-weight:700;font-size:.75rem;padding-top:.15rem}
.purchase-confidence strong{font-size:.9rem;line-height:1.45}.purchase-confidence small{font-size:.78rem;line-height:1.6;color:#625751}
section.product-family{padding:0;scroll-margin-top:100px}
section.shop-assistance{padding:4rem 5vw;background:#f5eddf;display:grid;grid-template-columns:1fr 1fr;gap:6vw}
.shop-assistance h2{font-family:'Syne',sans-serif;font-size:clamp(2rem,3vw,3.2rem);letter-spacing:-.045em;line-height:1.05;margin:1rem 0 1.5rem}
.shop-assistance p{line-height:1.7;font-size:.95rem;max-width:38rem}.assistance-contact{display:flex;justify-content:space-between;gap:1rem;background:var(--wine);color:white;padding:1rem 1.2rem;font-weight:700;max-width:28rem;border-radius:3px;overflow-wrap:anywhere}
.seller-details{display:inline-block;padding:1rem 0;text-decoration:underline;text-underline-offset:4px;font-size:.85rem}
.shop-answers h3{font-family:'Syne',sans-serif;font-size:1.4rem;margin:0 0 1rem}.shop-answers details{border-top:1px solid #cbbcaf;padding:.2rem 0}.shop-answers details:last-child{border-bottom:1px solid #cbbcaf}
.shop-answers summary{cursor:pointer;min-height:56px;padding:1rem 0;font-weight:700;line-height:1.5}.shop-answers p{margin:0 0 1.2rem}.shop-answers p a{text-decoration:underline;text-underline-offset:3px;color:#254eb8}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.add,.cart-button,.filters button{min-height:44px}.product-description summary{min-height:44px;display:block;padding:.7rem 0}.product-page-link{padding:.65rem 0;min-height:44px}
.product-photo:not(:has(.photo-alt)):hover .photo-main{opacity:1}
.cart{height:100dvh;max-height:100dvh}.cart-head{flex-shrink:0;padding:1rem 1.25rem}.close-cart{width:44px;height:44px;display:grid;place-items:center;line-height:1}
.cart-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-bottom:env(safe-area-inset-bottom)}
.cart-items{overflow:visible;flex:none;padding:0 1.25rem}.cart-items .empty{margin:3rem 0;line-height:1.7}.cart-foot{padding:1.25rem}.cart-row{grid-template-columns:minmax(0,1fr) auto 44px;gap:.5rem}.cart-row span{overflow-wrap:anywhere;font-size:.9rem;line-height:1.5}.cart-row button{min-height:44px;min-width:44px}
.cart-foot>.delivery-progress{display:block;background:var(--cream);padding:.8rem;margin:.9rem 0 1rem;border-radius:4px;font-size:.85rem}.delivery-progress p{margin:0 0 .65rem;line-height:1.5;font-weight:600}.delivery-progress-track{height:5px;background:#e6d8c3;overflow:hidden;border-radius:99px}.delivery-progress-track>span{display:block;height:100%;width:0;background:var(--wine);transition:width .2s}.delivery-progress.is-free{color:#17633a;background:#edf6ec}.is-free .delivery-progress-track>span{background:#17633a}
.shipping-options label{min-height:52px;line-height:1.45}.shipping-options input{width:18px;height:18px;margin:0}.cart-foot>.cart-help{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:0 1rem;margin-top:.75rem;font-size:.78rem}.cart-help a{min-height:44px;display:inline-flex;align-items:center;text-decoration:underline;text-underline-offset:3px}.cart-foot small{display:block;line-height:1.6}.cart-foot>button{min-height:52px;cursor:pointer}.cart-foot[hidden]{display:none}
body:has(.cart.open){overflow:hidden}body:has(.cart.open) #dp-cookie-settings{visibility:hidden}
#arrivage,#concept,#prochain{scroll-margin-top:100px}
@media(max-width:1000px){section.purchase-confidence{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.mobile-shortcuts{display:flex;gap:0;justify-content:space-around;border-bottom:1px solid #e5d9cf;background:var(--white);padding:0 4vw;font-size:.82rem}.mobile-shortcuts a{min-height:44px;display:flex;align-items:center;justify-content:center;padding:.5rem}.shop-assistance{gap:3rem!important}}
@media(max-width:560px){header{padding:0 4vw;gap:.5rem}.logo{font-size:1.2rem}.cart-button{padding:.65rem .8rem;font-size:.85rem}.hero{min-height:530px}.hero-copy{padding-top:3rem;padding-bottom:6rem}.hero-badge{width:96px;height:96px;bottom:18px;right:5vw}.hero-badge strong{font-size:1.4rem}.hero-badge b,.hero-badge span{font-size:.6rem}section.purchase-confidence{padding:1.1rem 4vw;gap:.25rem}.purchase-confidence a{grid-template-columns:1fr;padding:.65rem;gap:.3rem}.purchase-confidence a>span{display:none}.purchase-confidence strong{font-size:.82rem}.purchase-confidence small{font-size:.74rem}section.shop-assistance{grid-template-columns:1fr;padding:3rem 5vw}.family-heading{gap:.75rem}.family-heading span{white-space:nowrap;font-size:.75rem}.product-info{padding:1rem}.cart-head h2{font-size:1.3rem}.cart-foot{padding:1rem 1.25rem}.cart-grand-total span{font-size:1rem}footer a{display:inline-flex;align-items:center;min-height:44px}}
@media(hover:none){.product-photo:hover .photo-main{opacity:1}.product-photo:hover .photo-alt{opacity:0}.photo-hint{display:none}.product:hover{transform:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ticker div{animation:none}.cart,.overlay,.delivery-progress-track>span{transition:none}}

/* Promotion entry and final review use server-calculated totals. */
.cart-foot>.cart-promotion{display:block;font-size:.85rem;border:1px solid #e4d8cf;border-radius:4px;padding:.85rem;margin:1rem 0}.cart-promotion form label,#reviewPromoForm label{display:block;font-size:.88rem;font-weight:700;margin-bottom:.65rem}.promo-input-row{display:flex;gap:.5rem!important}.promo-input-row input{min-width:0;flex:1;width:100%;border:1px solid #c9bfb5;padding:.7rem;font:inherit;font-size:16px;border-radius:3px}.promo-input-row button{border:0;border-radius:3px;background:var(--ink);color:white;padding:.7rem .85rem;min-height:44px;cursor:pointer;font-weight:700}.cart-promotion p,#reviewPromoStatus{font-size:.8rem;line-height:1.5;margin:.65rem 0;color:#17633a}.cart-promotion .promo-error,#reviewPromoStatus.promo-error{color:#a21e39}.cart-promotion ul,#reviewPromoCodes{list-style:none;padding:0;margin:.5rem 0}.cart-promotion li,#reviewPromoCodes li{display:flex;align-items:center;justify-content:space-between;gap:.75rem;background:#f4eddf;padding:.25rem .7rem;border-radius:3px;margin:.35rem 0;font-size:.85rem}.cart-promotion li button,#reviewPromoCodes li button{border:0;background:transparent;text-decoration:underline;min-height:44px;cursor:pointer;color:#791b2e}.cart-promotion>div:not([hidden]){display:flex;justify-content:space-between;gap:.5rem;line-height:1.6;color:#17633a}.cart-promotion [hidden]{display:none!important}#checkoutReview{width:min(580px,calc(100% - 24px));max-height:90dvh;overflow-y:auto;border:1px solid #ded3c7;border-radius:12px;padding:1.5rem;background:#fffdf8;color:#1b1718;box-shadow:0 20px 100px #1b171840}#checkoutReview::backdrop{background:#160b0a99}.review-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem}.review-head p{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;margin:0;color:#791b2e}.review-head h2{font:700 1.65rem 'Syne',sans-serif;margin:.4rem 0}.review-head button{font-size:1.8rem;border:0;background:none;min-width:44px;min-height:44px;cursor:pointer}.review-line{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid #e4d8cf;padding:.85rem 0;font-size:.9rem}.review-line>div{max-width:75%}.review-line small{display:block;color:#6d6563;font-size:.78rem;line-height:1.5}#reviewTotals>div{display:flex;justify-content:space-between;gap:1rem;margin:.7rem 0;font-size:.9rem}.review-discount{color:#17633a}#reviewTotals>.review-total{border-top:1px solid #c9bfb5;padding-top:1rem;font-size:1.2rem}.review-assurance{font-size:.76rem;color:#6d6563;line-height:1.6}#reviewCheckoutError{font-size:.85rem;color:#a21e39;line-height:1.5}#confirmCheckout{width:100%;min-height:52px;padding:.85rem;border:0;border-radius:4px;background:var(--blue);color:#fff;font-weight:700;cursor:pointer}#backToCart{display:block;width:100%;min-height:44px;margin-top:.5rem;border:0;background:transparent;text-decoration:underline;cursor:pointer}#checkoutReview button:disabled,.cart-promotion button:disabled{opacity:.6;cursor:wait}@media(max-width:560px){#checkoutReview{padding:1.1rem}.review-head h2{font-size:1.4rem}}

/* A shorter mobile introduction and one native control for all categories. */
.hero-delivery{display:block;width:fit-content;margin-top:1rem;font-size:.85rem;font-weight:600;text-decoration:underline;text-underline-offset:4px;line-height:1.5}
.mobile-category-picker{display:none}
@media(max-width:900px){
  .hero{min-height:540px}
  .hero-copy{padding-top:3.5rem;padding-bottom:3.5rem}
  .hero-copy>p:not(.eyebrow){max-width:30rem}
  .hero-delivery{max-width:75%}
}
@media(max-width:560px){
  .hero{min-height:420px}
  .hero-copy{padding:2.25rem 5vw 5rem}
  .hero h1{font-size:clamp(2.65rem,11.5vw,4rem);line-height:.98;margin:.85rem 0 1rem}
  .hero-copy>p:not(.eyebrow){max-width:95%;font-size:.95rem;line-height:1.55}
  .hero .primary{min-height:50px;margin-top:.5rem;padding:.85rem 1rem;gap:1.5rem}
  .hero-delivery{font-size:.76rem;max-width:65%;margin-top:.85rem}
  .hero-badge{width:82px;height:82px;bottom:15px;right:4vw}
  .hero-badge strong{font-size:1.25rem}
  .hero-badge b,.hero-badge span{font-size:.51rem}
  section.purchase-confidence{padding:.85rem 4vw;gap:.25rem .5rem}
  .purchase-confidence a{padding:.5rem .25rem}
  .purchase-confidence small{font-size:.72rem;line-height:1.45;overflow-wrap:anywhere}
  section.arrival{padding:2.5rem 5vw}
  .section-head{margin-bottom:1.5rem}
  .section-head h2{font-size:clamp(2rem,8.5vw,3rem);line-height:1.05}
  .mobile-category-picker:not([hidden]){display:grid;gap:.6rem;margin-bottom:1.5rem}
  .mobile-category-picker label{font-size:.85rem;font-weight:700}
  .mobile-category-picker select{width:100%;min-width:0;min-height:50px;border:1px solid #b9a99d;border-radius:4px;background:var(--white);color:var(--ink);padding:.75rem;font:inherit;font-size:16px}
  .filters.has-category-picker{display:none}
  .family-heading{flex-wrap:wrap}
  .family-heading h3{overflow-wrap:anywhere}
  .family-heading span{white-space:normal}
}
select:focus-visible{outline:3px solid var(--blue);outline-offset:3px}

/* A compact product selection, before the complete catalogue. */
section.beauty-selection{padding:3.5rem 5vw;background:#f6f0e6;scroll-margin-top:90px}
.selection-heading{display:flex;justify-content:space-between;align-items:end;gap:1.5rem;margin-bottom:1.75rem}
.selection-heading h2{font-family:'Syne',sans-serif;font-size:clamp(2rem,4vw,3.8rem);letter-spacing:-.055em;line-height:1.05;margin:.65rem 0 0}
.selection-heading>a{display:inline-flex;gap:1rem;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:4px;font-size:.9rem;white-space:nowrap}
.selection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}
.selection-card{min-width:0;background:#fff;border:1px solid #e5d9cf;display:flex;flex-direction:column}
.selection-photo{display:block;aspect-ratio:1;overflow:hidden;background:white}
.selection-photo img{display:block;width:100%;height:100%;object-fit:contain}
.selection-copy{padding:1.3rem;display:flex;flex-direction:column;flex:1}
.selection-brand{font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;color:#6d6563;line-height:1.5;margin:0}
.selection-copy h3{font-family:'Syne',sans-serif;font-size:clamp(1.05rem,1.8vw,1.4rem);line-height:1.3;margin:.65rem 0}
.selection-copy>p:not(.selection-brand){font-size:.85rem;line-height:1.5;margin:0 0 1rem;color:#625751}
.selection-price{display:block;font-family:'Syne',sans-serif;color:var(--wine);font-size:1.5rem;margin:auto 0 .75rem}
.selection-copy .add{min-height:48px;margin:0}
.selection-detail{display:flex;align-items:center;justify-content:center;min-height:44px;margin-top:.4rem;font-size:.8rem;text-decoration:underline;text-underline-offset:3px;text-align:center}
.selection-note{font-size:.78rem;line-height:1.6;color:#625751;margin:1.2rem 0 0}.selection-note a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:700px){section.beauty-selection{padding:2.5rem 5vw}.selection-heading{align-items:start;flex-direction:column;gap:.5rem}.selection-heading h2{font-size:2rem}.selection-grid{grid-template-columns:1fr;gap:1.25rem}.selection-copy{padding:1.2rem}.selection-copy h3{font-size:1.25rem}.selection-photo{max-height:340px;aspect-ratio:1}.selection-price{margin-top:.25rem}}

/* Consistent catalogue framing, with full products and white backdrops. */
.products .product .product-visual{height:auto;aspect-ratio:1;background:#fff}
.products .product .product-photo img{padding:1rem;object-fit:contain}
.products .product .product-photo:hover .photo-main{transform:none}
.products .product .pack-visual{display:flex;gap:.4rem;padding:2.8rem .75rem 1rem;background:#fff}
.products .product .pack-visual img{margin:0;min-width:0;width:calc(50% - .2rem);height:100%;object-fit:contain;padding:0}
.products .product .pack-visual.pack-photo{display:block;padding:0;aspect-ratio:1;height:auto}
.products .product .pack-visual.pack-photo img{display:block;width:100%;height:100%;margin:0;object-fit:contain}
.products .product .trio-visual img{width:calc(33.333% - .3rem)}
.unicorn-thumbnails button{min-height:44px}
.selection-card[id]{scroll-margin-top:110px}
.catalog-navigation{display:flex;align-items:center;justify-content:center;gap:.5rem 1.6rem;flex-wrap:wrap;padding:.35rem 5vw;border-bottom:1px solid #e5dacf;background:#fffdf8}.catalog-navigation a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;font-size:.85rem;text-decoration:none;font-weight:600;color:#211b1c}.catalog-navigation a:hover{text-decoration:underline;text-underline-offset:4px}.catalog-navigation a:focus-visible{outline:3px solid #2f68ff;outline-offset:3px}@media(max-width:560px){.catalog-navigation{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;gap:1.2rem;padding:.2rem 5vw}.catalog-navigation a{font-size:.78rem;white-space:nowrap;flex-shrink:0}}
