/* EC PREMIUM PRODUCTS V1 */
:is(body.archive.woocommerce,body.post-type-archive-product) {
  --ec-ink:#272220;
  --ec-muted:#827a75;
  --ec-paper:#fbfaf8;
  --ec-line:#e9e2dc;
  --ec-accent:#c10066;
  --ec-shadow:0 16px 44px rgba(54,40,33,.08);
}

:is(body.archive.woocommerce,body.post-type-archive-product) .wd-content-layout {
  column-gap:34px;
}

:is(body.archive.woocommerce,body.post-type-archive-product) .shop-loop-head {
  margin-bottom:24px;
  padding:14px 18px;
  border:1px solid var(--ec-line);
  border-radius:16px;
  background:rgba(255,255,255,.9);
  box-shadow:0 8px 30px rgba(54,40,33,.045);
}

:is(body.archive.woocommerce,body.post-type-archive-product) .wd-products {
  gap:22px !important;
  border:0 !important;
  background:transparent !important;
}

:is(body.archive.woocommerce,body.post-type-archive-product) .wd-product {
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  content-visibility:auto;
  contain-intrinsic-size:430px;
}

:is(body.archive.woocommerce,body.post-type-archive-product) .wd-product .product-wrapper {
  height:100%;
  padding:12px 12px 18px;
  overflow:hidden;
  border:1px solid var(--ec-line);
  border-radius:20px;
  background:linear-gradient(155deg,#fff 0%,var(--ec-paper) 100%);
  box-shadow:0 7px 26px rgba(54,40,33,.055);
  transition:transform .42s cubic-bezier(.2,.7,.2,1),box-shadow .42s ease,border-color .42s ease;
}

@media (hover:hover) {
  :is(body.archive.woocommerce,body.post-type-archive-product) .wd-product:hover .product-wrapper {
    z-index:2;
    transform:translateY(-7px);
    border-color:#d9cfc7;
    box-shadow:var(--ec-shadow);
  }
}

:is(body.archive.woocommerce,body.post-type-archive-product) .product-element-top {
  aspect-ratio:1/1;
  overflow:hidden;
  border-radius:15px;
  background:linear-gradient(145deg,#f7f4f1,#fff);
}

:is(body.archive.woocommerce,body.post-type-archive-product) .product-image-link,
:is(body.archive.woocommerce,body.post-type-archive-product) .product-image-link img {
  width:100%;
  height:100%;
}

:is(body.archive.woocommerce,body.post-type-archive-product) .product-image-link img {
  object-fit:contain;
  transform:scale(.96);
  transition:transform .55s cubic-bezier(.2,.7,.2,1);
}

@media (hover:hover) {
  :is(body.archive.woocommerce,body.post-type-archive-product) .wd-product:hover .product-image-link img {
    transform:scale(1.025);
  }
}

:is(body.archive.woocommerce,body.post-type-archive-product) .wd-product .wrapp-buttons {
  right:12px;
  bottom:12px;
  padding:5px;
  border:1px solid rgba(224,215,208,.9);
  border-radius:999px;
  background:rgba(255,255,255,.94);
  box-shadow:0 8px 24px rgba(40,30,26,.12);
  backdrop-filter:blur(10px);
}

:is(body.archive.woocommerce,body.post-type-archive-product) .wd-product .wd-entities-title {
  min-height:2.8em;
  margin:17px 5px 7px;
  overflow:hidden;
  color:var(--ec-ink);
  font-family:Georgia,"Times New Roman",serif;
  font-size:17px;
  font-weight:500;
  line-height:1.38;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
}

:is(body.archive.woocommerce,body.post-type-archive-product) .wd-product .wd-product-cats {
  margin:0 5px 8px;
  color:var(--ec-muted);
  font-size:10px;
  font-weight:600;
  letter-spacing:.11em;
  text-transform:uppercase;
}

:is(body.archive.woocommerce,body.post-type-archive-product) .wd-product .price {
  margin:0 5px;
  color:var(--ec-accent);
  font-size:18px;
  font-weight:700;
  letter-spacing:-.02em;
}

:is(body.archive.woocommerce,body.post-type-archive-product) .wd-product .onsale,
:is(body.archive.woocommerce,body.post-type-archive-product) .wd-product .out-of-stock {
  top:14px;
  left:14px;
  min-height:auto;
  padding:7px 11px;
  border-radius:999px;
  background:#fff;
  color:var(--ec-ink);
  box-shadow:0 6px 20px rgba(40,30,26,.12);
  font-size:10px;
  font-weight:700;
  letter-spacing:.08em;
}

:is(body.archive.woocommerce,body.post-type-archive-product) .area-sidebar-shop .widget {
  margin-bottom:18px;
  padding:22px;
  border:1px solid var(--ec-line);
  border-radius:18px;
  background:#fff;
  box-shadow:0 8px 28px rgba(54,40,33,.045);
}

:is(body.archive.woocommerce,body.post-type-archive-product) .area-sidebar-shop .widget-title {
  margin-bottom:18px;
  color:var(--ec-ink);
  font-size:12px;
  letter-spacing:.12em;
}

:is(body.archive.woocommerce,body.post-type-archive-product) .woocommerce-ordering select {
  min-height:44px;
  border:1px solid var(--ec-line);
  border-radius:12px;
  background-color:#fff;
}

:is(body.archive.woocommerce,body.post-type-archive-product) .wd-pagination a,
:is(body.archive.woocommerce,body.post-type-archive-product) .wd-pagination .current {
  border-radius:999px;
}

@media (max-width:1024px) {
  :is(body.archive.woocommerce,body.post-type-archive-product) .wd-products {
    gap:16px !important;
  }
}

@media (max-width:767px) {
  :is(body.archive.woocommerce,body.post-type-archive-product) .shop-loop-head {
    margin-bottom:16px;
    padding:10px 12px;
    border-radius:13px;
  }
  :is(body.archive.woocommerce,body.post-type-archive-product) .wd-products {
    gap:10px !important;
  }
  :is(body.archive.woocommerce,body.post-type-archive-product) .wd-product .product-wrapper {
    padding:7px 7px 13px;
    border-radius:14px;
  }
  :is(body.archive.woocommerce,body.post-type-archive-product) .product-element-top {
    border-radius:10px;
  }
  :is(body.archive.woocommerce,body.post-type-archive-product) .wd-product .wd-entities-title {
    min-height:2.65em;
    margin:12px 4px 6px;
    font-size:14px;
    line-height:1.32;
  }
  :is(body.archive.woocommerce,body.post-type-archive-product) .wd-product .wd-product-cats {
    margin:0 4px 6px;
    font-size:8px;
  }
  :is(body.archive.woocommerce,body.post-type-archive-product) .wd-product .price {
    margin:0 4px;
    font-size:15px;
  }
  :is(body.archive.woocommerce,body.post-type-archive-product) .wd-product .wrapp-buttons {
    right:8px;
    bottom:8px;
    transform:scale(.9);
    transform-origin:100% 100%;
  }
}

@media (prefers-reduced-motion:reduce) {
  :is(body.archive.woocommerce,body.post-type-archive-product) .wd-product .product-wrapper,
  :is(body.archive.woocommerce,body.post-type-archive-product) .wd-product .product-image-link img {
    transition:none !important;
  }
}

/* EC HOME HERO LAYOUT RESTORE */
@media (min-width:601px) {
  body.home .ec-hero {
    display:flex !important;
    flex-flow:row nowrap !important;
    align-items:stretch;
  }
  body.home .ec-hero > .ec-copy,
  body.home .ec-hero > .ec-visual {
    flex:1 1 50% !important;
    width:50%;
    min-width:0;
  }
}

@media (max-width:600px) {
  body.home .ec-hero {
    display:block !important;
  }
  body.home .ec-hero > .ec-copy,
  body.home .ec-hero > .ec-visual {
    width:100%;
  }
}

/* EC SITE-WIDE PREMIUM SYSTEM V2 */
:root {
  --ec2-ink:#282321;
  --ec2-muted:#756e69;
  --ec2-paper:#f7f2ec;
  --ec2-surface:#ffffff;
  --ec2-line:#e8e0d9;
  --ec2-accent:#c00065;
  --ec2-deep:#6f003d;
  --ec2-radius:18px;
  --ec2-soft-shadow:0 12px 38px rgba(54,38,31,.065);
  --ec2-strong-shadow:0 22px 60px rgba(54,38,31,.11);
}

body {
  color:var(--ec2-ink);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

::selection {
  background:rgba(192,0,101,.16);
  color:var(--ec2-ink);
}

.whb-header {
  border-bottom:1px solid rgba(232,224,217,.8);
  box-shadow:0 5px 26px rgba(45,34,29,.035);
}

.whb-header .whb-general-header {
  background:rgba(255,255,255,.96);
}

.main-nav .item-level-0 > a {
  letter-spacing:.025em;
  transition:color .25s ease,opacity .25s ease;
}

.page-title {
  border-bottom:1px solid var(--ec2-line);
  background:linear-gradient(135deg,#f7f1ea 0%,#fbf8f4 55%,#f3ebe4 100%);
}

.page-title .entry-title {
  color:var(--ec2-ink);
  font-family:Georgia,"Times New Roman",serif;
  font-weight:400;
  letter-spacing:-.025em;
}

.breadcrumbs,
.woocommerce-breadcrumb {
  color:var(--ec2-muted);
}

.btn,
.button,
button,
input[type="submit"] {
  border-radius:10px;
  letter-spacing:.015em;
  transition:transform .25s ease,box-shadow .25s ease,background-color .25s ease,color .25s ease;
}

@media (hover:hover) {
  .btn:hover,
  .button:hover,
  button:hover,
  input[type="submit"]:hover {
    transform:translateY(-2px);
    box-shadow:0 10px 25px rgba(93,40,68,.14);
  }
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="password"],
input[type="search"],
input[type="number"],
select,
textarea {
  border:1px solid var(--ec2-line);
  border-radius:12px;
  background:#fff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7);
  transition:border-color .25s ease,box-shadow .25s ease,background-color .25s ease;
}

input:focus,
select:focus,
textarea:focus {
  border-color:rgba(192,0,101,.46) !important;
  outline:0;
  box-shadow:0 0 0 4px rgba(192,0,101,.075) !important;
}

.single-product .product-image-summary-inner {
  align-items:stretch;
  column-gap:28px;
}

.single-product .product-image-summary .woocommerce-product-gallery,
.single-product .product-image-summary .summary-inner {
  border:1px solid var(--ec2-line);
  border-radius:var(--ec2-radius);
  background:#fff;
  box-shadow:var(--ec2-soft-shadow);
}

.single-product .product-image-summary .woocommerce-product-gallery {
  overflow:hidden;
  padding:14px;
}

.single-product .product-image-summary .summary-inner {
  height:100%;
  padding:34px;
}

.single-product .product_title {
  color:var(--ec2-ink);
  font-family:Georgia,"Times New Roman",serif;
  font-weight:400;
  letter-spacing:-.025em;
  line-height:1.12;
}

.single-product .summary-inner .price {
  color:var(--ec2-accent);
  font-size:27px;
  font-weight:700;
}

.single-product .woocommerce-product-details__short-description {
  color:var(--ec2-muted);
  font-size:15px;
  line-height:1.85;
}

.single-product .cart .quantity {
  overflow:hidden;
  border:1px solid var(--ec2-line);
  border-radius:12px;
}

.single-product .single_add_to_cart_button,
.single-product .wd-buy-now-btn {
  min-height:52px;
  padding-right:24px;
  padding-left:24px;
  border-radius:12px;
  box-shadow:0 9px 24px rgba(192,0,101,.14);
}

.single-product .woocommerce-tabs,
.single-product .wd-accordion-item {
  border-color:var(--ec2-line);
}

.woocommerce-MyAccount-navigation,
.woocommerce-MyAccount-content,
.woocommerce-cart-form,
.cart-collaterals,
.woocommerce-checkout-review-order,
.woocommerce-checkout .customer-details,
.wd-empty-page {
  border:1px solid var(--ec2-line);
  border-radius:var(--ec2-radius);
  background:#fff;
  box-shadow:var(--ec2-soft-shadow);
}

.woocommerce-MyAccount-navigation,
.woocommerce-MyAccount-content,
.woocommerce-cart-form,
.cart-collaterals,
.woocommerce-checkout-review-order,
.woocommerce-checkout .customer-details {
  padding:24px;
}

.page-id-5288 .main-page-wrapper {
  background:linear-gradient(180deg,#fff 0%,#fbf8f5 100%);
}

.page-id-5288 .vc_custom_1496926452255 {
  max-width:1240px;
  margin:44px auto 64px !important;
  padding-right:18px;
  padding-left:18px;
}

.page-id-5288 .vc_custom_1496926452255 > .wpb_column > .vc_column-inner {
  height:100%;
  margin:8px;
  padding:38px !important;
  border:1px solid var(--ec2-line);
  border-radius:var(--ec2-radius);
  background:#fff;
  box-shadow:var(--ec2-soft-shadow);
}

.page-id-5288 .wpcf7 label {
  color:var(--ec2-ink);
  font-size:13px;
  font-weight:600;
}

.page-id-5288 .wpcf7 input,
.page-id-5288 .wpcf7 textarea {
  margin-top:7px;
  background:#fbfaf8;
}

.page-id-5288 .wpcf7-submit {
  min-height:48px;
  padding:0 28px;
  background:var(--ec2-accent);
  color:#fff;
}

.footer-container {
  border-top:1px solid var(--ec2-line);
  background:linear-gradient(180deg,#f8f3ee 0%,#f3ece6 100%);
}

.footer-container .widget-title {
  color:var(--ec2-ink);
  font-size:12px;
  letter-spacing:.13em;
}

.footer-container a {
  transition:color .22s ease,transform .22s ease;
}

@media (hover:hover) {
  .footer-container a:hover {
    color:var(--ec2-accent);
  }
}

.wd-prefooter,
.footer-container + .copyrights-wrapper {
  border-color:var(--ec2-line);
}

.wd-sticky-btn,
.wd-toolbar,
.wd-toolbar-shop {
  border-top:1px solid rgba(226,216,208,.9);
  background:rgba(255,255,255,.94);
  box-shadow:0 -8px 28px rgba(44,33,28,.08);
  backdrop-filter:blur(14px);
}

.cookies-info {
  border:1px solid var(--ec2-line);
  border-radius:16px;
  box-shadow:var(--ec2-strong-shadow);
}

@media (max-width:1024px) {
  .single-product .product-image-summary .summary-inner {
    padding:26px;
  }
}

@media (max-width:767px) {
  .page-title {
    min-height:118px;
  }
  .page-title .entry-title {
    font-size:34px;
  }
  .single-product .product-image-summary .woocommerce-product-gallery,
  .single-product .product-image-summary .summary-inner {
    border-radius:15px;
  }
  .single-product .product-image-summary .summary-inner {
    padding:22px 18px;
  }
  .single-product .product_title {
    font-size:34px;
  }
  .page-id-5288 .vc_custom_1496926452255 {
    margin-top:24px !important;
    padding-right:10px;
    padding-left:10px;
  }
  .page-id-5288 .vc_custom_1496926452255 > .wpb_column > .vc_column-inner {
    margin:6px 0;
    padding:24px !important;
  }
  .woocommerce-MyAccount-navigation,
  .woocommerce-MyAccount-content,
  .woocommerce-cart-form,
  .cart-collaterals,
  .woocommerce-checkout-review-order,
  .woocommerce-checkout .customer-details {
    padding:16px;
    border-radius:14px;
  }
}

@media (prefers-reduced-motion:reduce) {
  .btn,
  .button,
  button,
  input,
  select,
  textarea,
  .footer-container a {
    transition:none !important;
  }
}

/* EC PREMIUM PRIORITY PATCH V2.1 */
.whb-header,
.whb-main-header {
  border-bottom:1px solid rgba(226,216,208,.85) !important;
  box-shadow:0 7px 28px rgba(44,33,28,.06) !important;
}
.single-product .product-image-summary .woocommerce-product-gallery,
.single-product .product-image-summary .summary-inner {
  border:1px solid #e6ddd6 !important;
  border-radius:18px !important;
  background:#fff !important;
  box-shadow:0 12px 40px rgba(54,40,33,.08) !important;
}
.single-product .product-image-summary .summary-inner {
  padding:34px !important;
}
.single-product .single_add_to_cart_button,
.single-product .wd-buy-now-btn {
  min-height:52px !important;
  border-radius:12px !important;
}
.page-id-5288 .vc_custom_1496926452255 > div.wpb_column > div.vc_column-inner {
  height:100% !important;
  margin:8px !important;
  padding:38px !important;
  border:1px solid #e6ddd6 !important;
  border-radius:18px !important;
  background:#fff !important;
  box-shadow:0 12px 40px rgba(54,40,33,.08) !important;
}
.page-id-5288 .wpcf7 input:not([type="submit"]),
.page-id-5288 .wpcf7 textarea {
  border:1px solid #e1d7cf !important;
  border-radius:12px !important;
  background:#fbfaf8 !important;
}
@media (max-width:767px) {
  .single-product .product-image-summary .summary-inner {
    padding:22px 18px !important;
    border-radius:15px !important;
  }
  .page-id-5288 .vc_custom_1496926452255 > div.wpb_column > div.vc_column-inner {
    margin:6px 0 !important;
    padding:24px !important;
    border-radius:15px !important;
  }
}

/* EC PRODUCT SURFACE FLAT FIX V2.2 */
.products .product-wrapper,
.wd-products .product-wrapper {
  background:#ffffff !important;
  background-image:none !important;
  border-color:#ece5df !important;
  box-shadow:0 8px 24px rgba(54,40,33,.045) !important;
}
.products .product-element-top,
.wd-products .product-element-top,
.products .product-image-link,
.wd-products .product-image-link {
  background:#ffffff !important;
  background-image:none !important;
}
.products .product-element-top:before,
.products .product-element-top:after,
.wd-products .product-element-top:before,
.wd-products .product-element-top:after {
  background-image:none !important;
}
.products .wd-buttons,
.wd-products .wd-buttons {
  background:rgba(255,255,255,.94) !important;
  background-image:none !important;
  box-shadow:0 8px 22px rgba(45,35,30,.10) !important;
}

/* EC SHOP FLAT SURFACES V2.3 */
.shop-loop-head,
.products .product-wrapper,
.wd-products .product-wrapper,
.products .wd-buttons,
.wd-products .wd-buttons,
.products .product-label,
.wd-products .product-label {
  box-shadow:none !important;
}
.shop-loop-head {
  background:#ffffff !important;
  background-image:none !important;
  border-color:#ece8e4 !important;
}
.products .product-wrapper,
.wd-products .product-wrapper {
  border-color:#eeeae6 !important;
}
.products .product-label,
.wd-products .product-label {
  background:#ffffff !important;
}

/* EC HEADER DROPDOWN LAYER FIX V2.4 */
.whb-header,
.whb-main-header,
.whb-header-bottom,
.wd-header-nav {
  overflow:visible !important;
}
.whb-header {
  position:relative !important;
  z-index:10000 !important;
}
.whb-main-header {
  z-index:10001 !important;
}
.wd-nav-main .wd-dropdown,
.wd-nav-main .wd-dropdown-menu {
  z-index:10050 !important;
}
.main-page-wrapper {
  position:relative;
  z-index:1;
}
/* EC MOBILE SHOPPING V26 */
.footer-container a[href*="/categorie-produit/promotions"]{min-width:0!important;height:44px!important;padding:10px 14px!important;border-radius:24px!important;background:#a60060!important;box-shadow:0 4px 14px #45002918!important;font-size:11px!important;letter-spacing:.4px!important}
.footer-container a[href*="/categorie-produit/promotions"]:before{width:24px!important;height:24px!important;border-radius:50%!important;transform:none!important}
.single-product .summary-inner form.cart{gap:10px}
.single-product .summary-inner .single_add_to_cart_button{min-height:48px;box-shadow:none!important}
.single-product .summary-inner .wd-buy-now-btn{min-height:48px;background:#262323!important;color:#fff!important;box-shadow:none!important}
@media(max-width:767px){
.single-product .product-image-summary .woocommerce-product-gallery{padding:8px!important;border-radius:14px!important;margin-bottom:12px!important}
.single-product .wd-gallery-images .woocommerce-product-gallery__image>a{display:block;height:clamp(210px,55vw,300px)!important}
.single-product .wd-gallery-images .woocommerce-product-gallery__image>a>img{height:100%!important;width:100%!important;object-fit:contain!important}
.single-product .wd-gallery-thumb img{max-height:48px!important;width:auto!important;object-fit:contain!important}
.single-product .product-image-summary .summary-inner{padding:16px!important;border-radius:14px!important}
.single-product .summary-inner .product_title{font-size:27px!important;line-height:1.2!important;margin-bottom:12px!important}
.single-product .summary-inner>.price{font-size:25px!important;margin-bottom:14px!important}
.single-product .summary-inner form.cart{margin-bottom:16px!important}
.single-product .summary-inner .wd-buy-now-btn{flex:1 1 100%!important;width:100%!important;margin:0!important}
.single-product .wd-sticky-btn{bottom:55px!important;padding:8px 12px!important;background:#fff!important;border-top:1px solid #eee8e4!important;box-shadow:0 -4px 18px #30272008!important}
.single-product .wd-sticky-btn .wd-sticky-btn-cart{display:flex!important;align-items:center!important;gap:12px!important;width:100%!important}
.single-product .wd-sticky-btn .price{display:block!important;font-size:17px!important;white-space:nowrap!important;margin:0!important}
.single-product .wd-sticky-btn form.cart{flex:1!important;margin:0!important}
.single-product .wd-sticky-btn .single_add_to_cart_button{min-height:44px!important;font-size:11px!important}
.footer-container a[href*="/categorie-produit/promotions"]{right:10px!important;bottom:68px!important;height:38px!important;padding:7px 11px!important;font-size:10px!important}
.single-product .footer-container a[href*="/categorie-produit/promotions"]{top:calc(116px + env(safe-area-inset-top))!important;bottom:auto!important;right:10px!important;opacity:.95}
.woocommerce-checkout input.input-text,.woocommerce-checkout select,.woocommerce-checkout textarea{font-size:16px!important;min-height:46px}
.woocommerce-checkout #place_order{min-height:52px!important;width:100%!important}
}