.elementor-3523 .elementor-element.elementor-element-ef46123{--display:flex;}.elementor-3523 .elementor-element.elementor-element-fc81ef1 .woocommerce .wc-proceed-to-checkout .checkout-button{background-color:#5CB8D1;}.elementor-3523 .elementor-element.elementor-element-fc81ef1 > .elementor-widget-container{margin:15px 0px 0px 0px;padding:0px 100px 0px 100px;}.elementor-3523 .elementor-element.elementor-element-fc81ef1{--sections-title-color:#222222;--links-normal-color:#222222;--forms-buttons-border-color:#056BD9;}.elementor-3523 .elementor-element.elementor-element-fc81ef1 {--sections-descriptions-color:#222222;}.elementor-3523 .elementor-element.elementor-element-fc81ef1 .shop_table .button{font-size:14px;}.elementor-3523 .elementor-element.elementor-element-fc81ef1 .checkout-button{text-transform:uppercase;border-style:solid;border-color:#CB912D;}.elementor-3523 .elementor-element.elementor-element-341d747{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}@media(max-width:767px){.elementor-3523 .elementor-element.elementor-element-fc81ef1 > .elementor-widget-container{padding:0px 0px 0px 0px;}}/* Start custom CSS *//* Cart product thumbnails: reserve space */
.woocommerce-cart .shop_table .product-thumbnail img {
  width: 90px;
  height: 90px;
  object-fit: cover;
  aspect-ratio: 1/1;
  display: block;
}

/* Header/logo: reserve fixed box so it can't push content later */
.site-header .site-logo img {
  width: 180px;   /* replace with your actual logo width */
  height: 48px;   /* replace with your actual logo height */
  object-fit: contain;
  display: block;
}

/* Reserve fixed space so JS-inserted notices don’t push layout */
.woocommerce-notices-wrapper { min-height: 48px; }

/* Coupon row sometimes slides in after paint → pin its height */
.woocommerce-cart .coupon { min-height: 46px; }

/* Totals & shipping often re-render after rates/taxes calc → pin boxes */
.woocommerce-cart .cart_totals { min-height: 320px; }      /* tune if your totals block is taller */
.woocommerce-cart .woocommerce-shipping-totals,
.woocommerce-cart .woocommerce-additional-fields { min-height: 120px; }

/* Prevent “smooth” layout animations that count toward CLS */
.woocommerce-cart .cart_totals,
.woocommerce-cart .shop_table,
.woocommerce-message,
.woocommerce-error { transition: none !important; }
/* If you use a free-shipping progress bar, reserve its height */
.alg-wc-alfs-progress,
.alg-wc-alfs-progress-wrapper { min-height: 28px; }

/* Woo success/error banners can pop in after paint */
.woocommerce-message,
.woocommerce-error { min-height: 48px; }

/* Keep the processing overlay from affecting layout while updating */
.blockUI.blockOverlay { position: fixed !important; }

/* (Optional) Stabilize column widths to reduce micro reflows on recalc */
.woocommerce-cart .shop_table .product-name { width: 44%; }
.woocommerce-cart .shop_table .product-price,
.woocommerce-cart .shop_table .product-quantity,
.woocommerce-cart .shop_table .product-subtotal { width: 18%; }
@media (max-width: 768px){
  /* Skip strict widths on mobile to avoid wrap issues */
  .woocommerce-cart .shop_table .product-name,
  .woocommerce-cart .shop_table .product-price,
  .woocommerce-cart .shop_table .product-quantity,
  .woocommerce-cart .shop_table .product-subtotal { width: auto; }
}/* End custom CSS */