.elementor-widget-woocommerce-product-title .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.woocommerce .elementor-widget-woocommerce-product-price .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-product-add-to-cart .added_to_cart{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-97 .elementor-element.elementor-element-0272684 .cart button, .elementor-97 .elementor-element.elementor-element-0272684 .cart .button{transition:all 0.2s;}.elementor-97 .elementor-element.elementor-element-0272684 .quantity .qty{transition:all 0.2s;}.elementor-97 .elementor-element.elementor-element-fe31a5a{--display:flex;}.elementor-widget-woocommerce-product-related.elementor-wc-products ul.products li.product .woocommerce-loop-product__title{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-product-related.elementor-wc-products ul.products li.product .woocommerce-loop-category__title{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-product-related.elementor-wc-products ul.products li.product .woocommerce-loop-product__title, .elementor-widget-woocommerce-product-related.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 );}.woocommerce .elementor-widget-woocommerce-product-related.elementor-wc-products .products > h2{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-product-related.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-product-related.elementor-wc-products ul.products li.product .price ins{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-product-related.elementor-wc-products ul.products li.product .price ins .amount{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-product-related.elementor-wc-products ul.products li.product .price del{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-product-related.elementor-wc-products ul.products li.product .price del .amount{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-product-related.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-product-related.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-product-related.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-97 .elementor-element.elementor-element-b49844b.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}.elementor-97 .elementor-element.elementor-element-b49844b.elementor-wc-products ul.products li.product span.onsale{display:block;}@media(max-width:1024px){.elementor-97 .elementor-element.elementor-element-b49844b.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}}@media(max-width:767px){.elementor-97 .elementor-element.elementor-element-b49844b.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}}/* Start custom CSS *//* ================================================================
 EMERALD GARDENS — SINGLE PRODUCT PAGE (self-contained)
 Works whether or not the eg-store body class is present.
 Paste into: Single Product template → Page Settings (gear, bottom-left)
 → Advanced → Custom CSS.  (Or drop it into eg-store.css.)

 SETUP for padding/alignment:
 - Put all the product widgets inside ONE outer container.
 - Set that outer container: Layout → Content Width → BOXED (max 1440).
 - Give it the CSS class:  eg-product-page
 - Inside it, the 2-column container = class  eg-product
     · left column container  = class  eg-product__gallery
     · right column container = class  eg-product__summary
 - Related Products widget: leave as-is (styled below).
================================================================ */

/* --- Section padding (top clears the header, bottom breathes) --- */
.single-product .eg-product-page { padding-block: clamp(32px, 4vw, 64px) clamp(56px, 8vw, 104px); }

/* --- Two-column layout + sticky info panel --- */
.single-product .eg-product {
  display: grid !important;
  grid-template-columns: minmax(0, 440px) minmax(0, 500px) !important;
  gap: clamp(28px, 4vw, 64px) !important;
  align-items: start !important; justify-content: center !important;
  width: 100% !important; max-width: 1000px !important;
  margin-left: auto !important; margin-right: auto !important;   /* centered card */
  float: none !important;
}
/* stop Elementor's flex sizing on the two child columns from breaking the grid */
.single-product .eg-product > * { flex: 0 1 auto !important; width: auto !important; max-width: none !important; min-width: 0 !important; }

/* ---- RELIABLE CENTER: caps & centers whatever container holds both the
   gallery and the info, even if it has no eg-product class ---- */
.single-product *:has(> .eg-product__gallery):has(> .eg-product__summary) {
  max-width: 1040px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
/* keep the main gallery image a reasonable size so the thumbnails show */
.single-product .eg-product__gallery { max-width: 440px; }
.single-product .woocommerce-product-gallery img { max-height: 620px; object-fit: cover; }

/* Cookies-style: image sticky on the left, tall content column on the right */
.single-product .eg-product__gallery { position: sticky; top: 110px; align-self: start; }
.single-product .eg-product__summary { position: static !important; }

/* Accordion for the right column (Elementor "Accordion" widget → CSS class: eg-accordion) */
.eg-accordion .elementor-accordion-item { border: 0 !important; margin-bottom: 8px; }
.eg-accordion .elementor-tab-title {
  background: var(--eg-primary) !important; color: #fff !important; border: 0 !important;
  border-radius: var(--eg-radius); padding: .9em 1.1em !important;
  font-family: var(--eg-font-body); font-weight: 700; text-transform: uppercase; letter-spacing: .04em; font-size: .85rem;
}
.eg-accordion .elementor-tab-title.elementor-active { border-radius: var(--eg-radius) var(--eg-radius) 0 0; }
.eg-accordion .elementor-tab-title .elementor-accordion-icon i,
.eg-accordion .elementor-tab-title .elementor-accordion-icon svg { color: #fff !important; fill: #fff !important; }
.eg-accordion .elementor-tab-content {
  padding: 1em 1.1em 1.4em !important; color: var(--eg-text-muted);
  border: 1px solid var(--eg-border); border-top: 0; border-radius: 0 0 var(--eg-radius) var(--eg-radius);
}
.eg-accordion .elementor-tab-content p { color: var(--eg-text-muted); }
.single-product .eg-product__summary { position: sticky; top: 110px; align-self: start; }

/* --- Gallery --- */
.single-product .woocommerce-product-gallery img { border-radius: 2px; }

/* --- FORCE brand colors on title + price (kills the blue) --- */
.single-product .product_title,
.single-product .elementor-widget-woocommerce-product-title h1,
.single-product .elementor-widget-woocommerce-product-title a {
  color: var(--eg-ink) !important;
  font-family: var(--eg-font-display); font-weight: 900; text-transform: uppercase; line-height: 1.05;
}
.single-product .summary .price,
.single-product .price,
.single-product .price .woocommerce-Price-amount,
.single-product .price .amount,
.single-product .price bdi {
  color: var(--eg-ink) !important; font-family: var(--eg-font-body); font-weight: 600;
}
.single-product .woocommerce-product-details__short-description { color: var(--eg-text-muted); }

/* --- Variations (Size) + quantity + add to cart --- */
.single-product .variations select {
  width: 100%; min-height: 50px; padding: .8em 1em; border-radius: 2px;
  border: 1px solid var(--eg-border); background: var(--eg-surface); color: var(--eg-ink);
}

/* --- Size buttons (Variation Swatches → Type: Button) — compact, no clipping --- */
.single-product .variable-items-wrapper {
  display: flex !important; flex-wrap: wrap; gap: 8px; margin: 0 0 1em; padding: 0; list-style: none;
}
.single-product .woo-variation-swatches li.variable-item.button-variable-item,
.single-product li.variable-item.button-variable-item {
  width: auto !important; max-width: none !important; min-width: 36px; height: auto !important; min-height: 36px;
  overflow: visible !important; padding: 7px 13px !important; margin: 0 !important;
  display: inline-flex !important; align-items: center; justify-content: center;
  border: 1.5px solid var(--eg-border) !important; border-radius: 999px !important;
  background: var(--eg-surface) !important; box-shadow: none !important; cursor: pointer;
  font-family: var(--eg-font-body) !important; font-size: .7rem !important; font-weight: 600 !important;
  letter-spacing: .02em !important; text-transform: uppercase !important; color: var(--eg-ink) !important;
  white-space: nowrap !important; line-height: 1 !important;
  transition: border-color .2s, background .2s, color .2s;
}
.single-product li.variable-item.button-variable-item .variable-item-span {
  width: auto !important; max-width: none !important; min-width: 0 !important; height: auto !important;
  overflow: visible !important; text-indent: 0 !important; padding: 0 !important; margin: 0 !important;
  line-height: 1 !important; white-space: nowrap !important;
}
.single-product li.variable-item.button-variable-item:hover { border-color: var(--eg-ink) !important; }
.single-product li.variable-item.button-variable-item.selected {
  background: var(--eg-primary) !important; border-color: var(--eg-primary) !important; color: #fff !important;
}
.single-product li.variable-item.button-variable-item.selected .variable-item-span { color: #fff !important; }
.single-product li.variable-item.button-variable-item.radio-disabled,
.single-product li.variable-item.button-variable-item.disabled {
  opacity: .4; text-decoration: line-through; cursor: not-allowed;
}
/* strip the grey box / default skin around the variation area */
.single-product table.variations,
.single-product table.variations td,
.single-product table.variations th,
.single-product .woo-variation-swatches,
.single-product form.variations_form,
.single-product .single_variation_wrap { background: transparent !important; border: 0 !important; }
.single-product .reset_variations { opacity: .7; }
.single-product .quantity input.qty {
  width: 76px; min-height: 52px; text-align: center; border-radius: 2px;
  border: 1px solid var(--eg-border); background: var(--eg-surface);
}
.single-product .single_add_to_cart_button {
  background: var(--eg-primary) !important; border: 1.5px solid var(--eg-primary) !important; color: #fff !important;
  text-transform: uppercase; letter-spacing: .02em; font-weight: 600; min-height: 52px; border-radius: 2px;
}
.single-product .single_add_to_cart_button:hover {
  background: var(--eg-primary-deep) !important; border-color: var(--eg-primary-deep) !important;
}

/* --- Related products: heading, colors, card layout --- */
.single-product .related, .single-product .up-sells {
  max-width: var(--eg-container); margin: clamp(48px, 7vw, 96px) auto 0;
  padding-inline: var(--eg-page-padding);
}
.single-product .related > h2,
.single-product .elementor-widget-woocommerce-product-related h2 {
  color: var(--eg-ink) !important; font-family: var(--eg-font-display); font-weight: 900;
  text-transform: uppercase; font-size: clamp(1.5rem, 1.2rem + 1.4vw, 2.4rem); margin: 0 0 1em;
}
.single-product .related ul.products li.product img,
.single-product .up-sells ul.products li.product img {
  aspect-ratio: 4 / 5 !important; object-fit: cover; border-radius: 2px; background: var(--eg-surface-alt);
}
.single-product .related a,
.single-product .related .woocommerce-loop-product__title,
.single-product .up-sells .woocommerce-loop-product__title {
  color: var(--eg-ink) !important; font-family: var(--eg-font-body) !important;
  font-size: .9rem !important; font-weight: 600 !important; text-transform: none !important;
}
.single-product .related .price,
.single-product .related .price .amount,
.single-product .related .price bdi,
.single-product .up-sells .price { color: var(--eg-ink) !important; font-weight: 600 !important; }
.single-product .related a.button,
.single-product .up-sells a.button {
  color: #fff !important; background: var(--eg-ink); border: 1.5px solid var(--eg-ink);
  text-transform: uppercase; font-size: .75rem; font-weight: 600; letter-spacing: .02em;
  padding: .7em 1.2em; border-radius: 2px; margin-top: .7em; display: inline-flex;
}
.single-product .related a.button:hover { background: var(--eg-primary); border-color: var(--eg-primary); }

/* --- Mobile: stack + un-stick --- */
@media (max-width: 900px) {
  .single-product .eg-product { grid-template-columns: 1fr; }
  .single-product .eg-product__summary { position: static; }
}/* End custom CSS */