.elementor-104 .elementor-element.elementor-element-173ddbf{--display:flex;}.elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .woocommerce-loop-product__title{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .woocommerce-loop-category__title{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .woocommerce-loop-product__title, .elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .woocommerce-loop-category__title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .price{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .price ins{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .price ins .amount{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-products{--products-title-color:var( --e-global-color-primary );}.elementor-widget-woocommerce-products.products-heading-show .related-products > h2, .elementor-widget-woocommerce-products.products-heading-show .upsells > h2, .elementor-widget-woocommerce-products.products-heading-show .cross-sells > h2{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .price del{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .price del .amount{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .price del {font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-woocommerce-products.elementor-wc-products .added_to_cart{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-104 .elementor-element.elementor-element-1fcedaf.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}.elementor-104 .elementor-element.elementor-element-1fcedaf.elementor-wc-products ul.products li.product .woocommerce-loop-product__title{color:#292406;}.elementor-104 .elementor-element.elementor-element-1fcedaf.elementor-wc-products ul.products li.product .woocommerce-loop-category__title{color:#292406;}.elementor-104 .elementor-element.elementor-element-1fcedaf.elementor-wc-products ul.products li.product span.onsale{display:block;}@media(max-width:1024px){.elementor-104 .elementor-element.elementor-element-1fcedaf.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}}@media(max-width:767px){.elementor-104 .elementor-element.elementor-element-1fcedaf.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}}/* Start custom CSS for woocommerce-products, class: .elementor-element-1fcedaf *//* Robert Meade WooCommerce / Elementor styling
   Add through Elementor > Site Settings > Custom CSS, or Appearance > Customize > Additional CSS.
   Works with Elementor WooCommerce Products / Archive Products / Single Product widgets. */

:root {
  --rm-ink: #3b281f;
  --rm-brown: #73503d;
  --rm-rose: #bd7057;
  --rm-gold: #e0ad42;
  --rm-cream: #fff8ee;
  --rm-blush: #f8e8dd;
  --rm-line: #efdfd0;
  --rm-green: #73976b;
}

/* Shop / archive canvas */
.woocommerce,
.woocommerce-page,
.elementor-widget-woocommerce-products,
.elementor-widget-wc-archive-products {
  color: var(--rm-ink);
}
.woocommerce ul.products,
.woocommerce-page ul.products {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px !important;
  margin: 0 !important;
}
.woocommerce ul.products::before,
.woocommerce ul.products::after { display: none !important; }
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
  width: auto !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 0 22px !important;
  overflow: hidden;
  position: relative;
  background: #fff;
  border: 1px solid var(--rm-line);
  border-radius: 22px;
  box-shadow: 0 9px 28px rgba(74, 45, 28, .07);
  transition: transform .38s cubic-bezier(.2,.75,.25,1), box-shadow .38s;
  animation: rmCardIn .7s both;
}
.woocommerce ul.products li.product:nth-child(2n) { animation-delay: .09s; }
.woocommerce ul.products li.product:nth-child(3n) { animation-delay: .17s; }
.woocommerce ul.products li.product:hover {
  transform: translateY(-9px) rotate(-.25deg);
  box-shadow: 0 22px 46px rgba(74, 45, 28, .16);
}
.woocommerce ul.products li.product a img {
  width: 100% !important;
  height: 290px;
  object-fit: contain;
  padding: 24px;
  margin: 0 0 17px !important;
  background:
    radial-gradient(circle at 82% 16%, rgba(224,173,66,.18), transparent 24%),
    linear-gradient(145deg, var(--rm-cream), var(--rm-blush));
  transition: transform .5s ease;
}
.woocommerce ul.products li.product:hover a img {
  transform: translateY(-6px) scale(1.035) rotate(1deg);
}
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  color: var(--rm-ink);
  font-size: 20px !important;
  font-weight: 800 !important;
  line-height: 1.3;
  padding: 0 22px !important;
  margin: 0 0 9px !important;
  transition: color .25s;
}
.woocommerce ul.products li.product:hover .woocommerce-loop-product__title { color: var(--rm-rose); }
.woocommerce ul.products li.product .price {
  padding: 0 22px;
  color: var(--rm-rose) !important;
  font-size: 23px !important;
  font-weight: 900 !important;
  margin: 8px 0 17px !important;
}
.woocommerce ul.products li.product .price del { opacity: .55; font-size: .72em; }
.woocommerce ul.products li.product .price ins { text-decoration: none; }
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.added_to_cart {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin: 0 0 0 22px !important;
  padding: 13px 18px !important;
  border: 0 !important;
  border-radius: 13px !important;
  color: #fff !important;
  background: var(--rm-rose) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  transition: transform .25s, background .25s, box-shadow .25s;
}
.woocommerce ul.products li.product .button:hover {
  background: var(--rm-brown) !important;
  transform: translateY(-3px);
  box-shadow: 0 8px 18px rgba(115,80,61,.2);
}
.woocommerce span.onsale {
  min-height: 0 !important;
  min-width: 0 !important;
  line-height: 1 !important;
  padding: 9px 13px !important;
  border-radius: 999px !important;
  top: 15px !important;
  left: 15px !important;
  right: auto !important;
  background: var(--rm-green) !important;
  color: white !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  text-transform: uppercase;
}

/* Product grid for Elementor Products widget */
.elementor-widget-woocommerce-products .products,
.elementor-widget-wc-archive-products .products {
  align-items: stretch;
}

/* Product detail */
.single-product div.product {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, .95fr);
  gap: clamp(28px, 5vw, 76px);
  align-items: start;
}
.single-product div.product div.images,
.single-product div.product div.summary {
  float: none !important;
  width: auto !important;
  margin: 0 !important;
}
.single-product div.product div.images {
  padding: 20px;
  border-radius: 26px;
  background:
    radial-gradient(circle at 85% 10%, rgba(224,173,66,.2), transparent 25%),
    linear-gradient(145deg, var(--rm-cream), var(--rm-blush));
  overflow: hidden;
}
.single-product div.product div.images img {
  border-radius: 14px;
  transition: transform .55s ease;
}
.single-product div.product div.images:hover img { transform: scale(1.025); }
.single-product div.product .product_title {
  color: var(--rm-ink);
  font-size: clamp(30px, 4vw, 48px);
  font-weight: 900;
  line-height: 1.08;
  margin: 0 0 14px;
}
.single-product div.product p.price,
.single-product div.product span.price {
  color: var(--rm-rose) !important;
  font-size: 30px !important;
  font-weight: 900 !important;
  margin: 20px 0;
}
.single-product div.product .woocommerce-product-details__short-description {
  color: #80695d;
  font-size: 16px;
  line-height: 1.85;
}
.single-product div.product form.cart {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  margin: 24px 0;
}
.woocommerce .quantity .qty {
  min-height: 49px;
  width: 76px !important;
  border: 1px solid #e6d4c4 !important;
  border-radius: 12px !important;
  background: white;
  color: var(--rm-ink);
}
.single-product div.product .single_add_to_cart_button,
.woocommerce button.button.alt,
.woocommerce a.button.alt {
  min-height: 49px;
  border: 0 !important;
  border-radius: 13px !important;
  padding: 14px 23px !important;
  background: var(--rm-rose) !important;
  color: white !important;
  font-weight: 800 !important;
  transition: transform .25s, background .25s, box-shadow .25s;
}
.single-product div.product .single_add_to_cart_button:hover,
.woocommerce button.button.alt:hover {
  background: var(--rm-brown) !important;
  transform: translateY(-3px);
  box-shadow: 0 9px 20px rgba(115,80,61,.2);
}
.woocommerce div.product .product_meta {
  border-top: 1px solid var(--rm-line);
  padding-top: 17px;
  color: #92796b;
  font-size: 12px;
}
.woocommerce div.product .woocommerce-tabs {
  margin-top: 65px;
  padding: 24px;
  border: 1px solid var(--rm-line);
  border-radius: 22px;
  background: white;
}
.woocommerce div.product .woocommerce-tabs ul.tabs {
  padding: 0 !important;
  margin: 0 0 24px !important;
  border: 0 !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li {
  border: 0 !important;
  border-radius: 10px !important;
  background: #fff4e8 !important;
  margin: 0 7px 7px 0 !important;
  padding: 0 !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
  padding: 13px 17px !important;
  color: #866956 !important;
  font-weight: 800 !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active { background: #f0dfcf !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: var(--rm-ink) !important; }
.woocommerce div.product .woocommerce-tabs .panel { color: #80695d; line-height: 1.8; }

/* WooCommerce notices, cart and checkout */
.woocommerce-message,
.woocommerce-info { border-top-color: var(--rm-green) !important; border-radius: 12px; }
.woocommerce-message::before,
.woocommerce-info::before { color: var(--rm-green) !important; }
.woocommerce-cart table.cart,
.woocommerce-checkout #payment,
.woocommerce-checkout .woocommerce-checkout-review-order {
  border-color: var(--rm-line);
  border-radius: 16px;
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
  background: var(--rm-rose) !important;
  border-radius: 13px !important;
}

/* Elementor Menu Cart / cart icon */
.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle .elementor-button,
.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle_button {
  border-radius: 999px;
  transition: transform .25s, background .25s;
}
.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle:hover { transform: translateY(-2px); }
.elementor-menu-cart__main {
  border-radius: 18px !important;
  border-color: var(--rm-line) !important;
}

/* Float / reveal effects */
@keyframes rmCardIn {
  from { opacity: 0; transform: translateY(25px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes rmSoftFloat {
  0%,100% { transform: translateY(0); }
  50% { transform: translateY(-8px); }
}
.rm-float { animation: rmSoftFloat 4.8s ease-in-out infinite; }
.rm-float-slow { animation: rmSoftFloat 6.5s ease-in-out infinite; }
.rm-wiggle:hover { animation: rmWiggle .55s ease; }
@keyframes rmWiggle {
  0%,100% { transform: rotate(0); }
  25% { transform: rotate(-2deg); }
  75% { transform: rotate(2deg); }
}

/* Responsive */
@media (max-width: 1024px) {
  .woocommerce ul.products, .woocommerce-page ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px !important;
  }
  .single-product div.product { gap: 30px; }
}
@media (max-width: 767px) {
  .woocommerce ul.products, .woocommerce-page ul.products {
    grid-template-columns: 1fr;
    gap: 20px !important;
  }
  .woocommerce ul.products li.product a img { height: 260px; }
  .single-product div.product { grid-template-columns: 1fr; }
  .single-product div.product div.images { padding: 13px; }
  .single-product div.product .product_title { font-size: 32px; }
  .woocommerce div.product .woocommerce-tabs { margin-top: 38px; padding: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  .woocommerce ul.products li.product,
  .woocommerce ul.products li.product a img,
  .rm-float, .rm-float-slow, .rm-wiggle:hover { animation: none !important; transition: none !important; }
}/* End custom CSS */