/* Small destination-owned layer; the downloaded source CSS supplies the main
   visual system and responsive layout. */
:root { --caudalie-purple: #28113f; --caudalie-pink: #e2006a; }
html { scroll-behavior: smooth; }
body.caudalie-replica { margin: 0; background: #fff; color: #28113f; }
.caudalie-replica #product { color: #000; letter-spacing: normal; }
body.caudalie-replica > #wpadminbar { display: none; }
.caudalie-replica-note { position: fixed; right: 10px; bottom: 10px; z-index: 9999; display: none; }
/* Keep the source app visible when WordPress themes add generic wrappers. */
.caudalie-replica #__nuxt { min-height: 100vh; }
.caudalie-replica a { cursor: pointer; }
.caudalie-replica [data-testid="wishlist-button"].is-wishlisted { color: #e2006a; }
.caudalie-replica [data-testid="wishlist-button"][aria-pressed="true"] { background-color: rgba(226, 0, 106, 0.08); border-radius: 9999px; }
.caudalie-replica button[aria-label="Rechercher par commande vocale"] { color: var(--caudalie-purple); flex: 0 0 40px; }
.caudalie-replica .bg-th-primary-var.rounded-md > div.overflow-hidden { transition: height linear 200ms; }
.caudalie-replica ul.slider[aria-label="Images du produit"] { display: flex !important; flex-direction: row !important; flex-wrap: nowrap !important; width: 100%; max-height: min(100vw, 600px); overflow-x: auto !important; overflow-y: hidden !important; scroll-snap-type: x mandatory; scrollbar-width: none; }
.caudalie-replica ul.slider[aria-label="Images du produit"]::-webkit-scrollbar { display: none; }
.caudalie-replica ul.slider[aria-label="Images du produit"] > li { display: block !important; flex: 0 0 100% !important; width: 100% !important; min-width: 100% !important; scroll-snap-align: start; }
.caudalie-commerce { max-width: 1280px; margin: 0 auto; padding: 40px 24px 64px; min-height: 50vh; }
.caudalie-commerce h1 { font-size: 30px; line-height: 1.25; text-align: center; margin-bottom: 32px; }
.caudalie-commerce .woocommerce { font-size: 16px; }
.caudalie-commerce .woocommerce ul.products li.product { text-align: center; }
.caudalie-commerce .woocommerce ul.products li.product img { width: 100%; aspect-ratio: 1; object-fit: contain; background: #f4f3f1; }
.caudalie-commerce .woocommerce ul.products li.product h2 { min-height: 52px; font-size: 16px; line-height: 1.5; color: #2d1946; }
.caudalie-commerce .woocommerce .price { color: #2d1946 !important; font-weight: 600; }
.caudalie-commerce .woocommerce a.button,
.caudalie-commerce .woocommerce button.button,
.caudalie-commerce .woocommerce input.button { background: #2d1946; color: #fff; border-radius: 5px; padding: 14px 20px; font-weight: 500; }
.caudalie-commerce .woocommerce input.input-text,
.caudalie-commerce .woocommerce textarea,
.caudalie-commerce .woocommerce select { border: 1px solid #b8b1bd; border-radius: 4px; padding: 10px; }
.caudalie-commerce .woocommerce table.shop_table { border-color: #e0dce4; }
.caudalie-commerce .woocommerce .cart-empty { background: #f4f0f7; border-top-color: #2d1946; }
.caudalie-commerce .woocommerce .woocommerce-message { border-top-color: #2d1946; background: #f5f2f7; }
.caudalie-commerce .woocommerce .woocommerce-message::before { color: #2d1946; }
.caudalie-commerce .woocommerce table.shop_table { border-radius: 0; }
.caudalie-commerce .woocommerce table.shop_table th { font-family: font-family-bold, Arial, sans-serif; }
.caudalie-commerce .woocommerce .product-thumbnail { width: 110px; }
.caudalie-commerce .woocommerce .product-thumbnail img { width: 88px; max-width: none; height: 100px; object-fit: contain; }
.caudalie-commerce .woocommerce .product-name { line-height: 1.5; }
.caudalie-commerce .woocommerce .product-price,
.caudalie-commerce .woocommerce .product-subtotal { white-space: nowrap; }
.caudalie-commerce .woocommerce .quantity .qty { width: 72px; min-height: 44px; }
.caudalie-commerce .woocommerce .coupon { display: flex; flex-wrap: wrap; gap: 8px; }
.caudalie-commerce .woocommerce .coupon #coupon_code { width: 150px; margin: 0; min-height: 44px; }
.caudalie-commerce .woocommerce button.button:disabled { color: #fff; opacity: .55; }
.caudalie-commerce .woocommerce .cart_totals h2,
.caudalie-commerce .woocommerce #order_review_heading,
.caudalie-commerce .woocommerce .woocommerce-billing-fields h3 { font-size: 24px; margin-bottom: 20px; }
.caudalie-commerce .woocommerce .cart_totals { background: #f6f4f7; padding: 24px; }
.caudalie-commerce .woocommerce .cart_totals table { border: 0; }
.caudalie-commerce .woocommerce .cart_totals .order-total { font-size: 20px; }
.caudalie-commerce .woocommerce .wc-proceed-to-checkout { padding-bottom: 0; }
.caudalie-commerce .woocommerce .wc-proceed-to-checkout a { margin-bottom: 0; }
.caudalie-commerce .woocommerce form.checkout .form-row { margin-bottom: 16px; }
.caudalie-commerce .woocommerce form.checkout label { margin-bottom: 6px; }
.caudalie-commerce .woocommerce form.checkout .input-text { width: 100%; min-height: 44px; }
.caudalie-commerce .woocommerce #payment { background: #f6f4f7; }
@media (min-width: 1024px) {
  .caudalie-commerce .woocommerce:has(> .woocommerce-cart-form) { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 28px; align-items: start; }
  .caudalie-commerce .woocommerce:has(> .woocommerce-cart-form) > .woocommerce-notices-wrapper { grid-column: 1 / -1; }
  .caudalie-commerce .woocommerce .cart-collaterals .cart_totals { float: none; width: 100%; }
  .caudalie-commerce .woocommerce .cart-collaterals .cart_totals th { width: 40%; }
}
@media (max-width: 1023px) {
  .caudalie-mobile-open > [role="menu"] { flex-direction: column; align-items: stretch; white-space: normal; }
  .caudalie-mobile-open > [role="menu"] > [role="menuitem"] > a { justify-content: flex-start; padding: 0 24px; border-bottom: 1px solid #f0edf2; }
  .caudalie-mobile-open > [role="menu"] > [role="menuitem"] > div[role="menu"] { display: none !important; }
}
@media (max-width: 767px) {
  .caudalie-replica #__nuxt { overflow-x: hidden; }
  .caudalie-commerce { padding: 28px 16px 40px; }
  .caudalie-commerce h1 { font-size: 24px; }
  .caudalie-commerce .woocommerce ul.products li.product h2 { min-height: 72px; font-size: 14px; }
  .caudalie-commerce .woocommerce .cart_totals { padding: 20px 16px; }
  .caudalie-commerce .woocommerce table.cart .product-thumbnail { display: block; width: 100%; text-align: center !important; }
  .caudalie-commerce .woocommerce table.cart .product-thumbnail::before { display: none; }
  .caudalie-commerce .woocommerce table.cart .product-thumbnail img { margin: 0 auto; width: 110px; height: 125px; }
  .caudalie-commerce .woocommerce table.cart td.product-name { text-align: left !important; padding: 16px; }
  .caudalie-commerce .woocommerce table.cart td.product-name::before { display: none; }
  .caudalie-commerce .woocommerce table.cart td.actions .coupon { display: grid; grid-template-columns: 1fr; float: none; }
  .caudalie-commerce .woocommerce table.cart td.actions .coupon #coupon_code,
  .caudalie-commerce .woocommerce table.cart td.actions .coupon button { width: 100%; }
  .caudalie-commerce .woocommerce table.cart td.actions > button { margin-top: 12px; }
  .caudalie-commerce .woocommerce .woocommerce-message { padding: 16px 16px 16px 44px; }
  .caudalie-commerce .woocommerce .woocommerce-message .button { float: none; display: block; margin-bottom: 12px; text-align: center; }
}
