/* Critical storefront geometry, loaded after builder styling. */
body #ww-cart-dialog{position:fixed!important;inset:0!important;margin:auto!important;box-sizing:border-box!important;width:460px!important;max-width:calc(100vw - 32px)!important;height:fit-content!important;max-height:calc(100dvh - 32px)!important;padding:28px!important;border:1px solid #ddd!important;background:#fff!important;color:#171717!important;overflow:auto!important;font:16px/1.5 Arial,Helvetica,sans-serif!important}
body #ww-cart-dialog:not([open]){display:none!important}
body #ww-cart-dialog[open]{display:block!important}
body #ww-cart-dialog .ww-modal-image{width:112px!important;height:112px!important;margin:0 0 16px!important;overflow:hidden!important}
body #ww-cart-dialog .ww-modal-image img{display:block!important;width:112px!important;height:112px!important;max-width:112px!important;max-height:112px!important;object-fit:contain!important;margin:0!important;position:static!important}
body #ww-cart-dialog h2{font-size:22px!important;line-height:1.3!important;margin:0 32px 20px 0!important}
body #ww-cart-dialog h3{font-size:17px!important;line-height:1.5!important;overflow-wrap:anywhere}
body #ww-cart-dialog .ww-modal-close{position:absolute!important;top:4px!important;right:4px!important;width:44px!important;height:44px!important;padding:0!important;border:0!important;background:transparent!important;color:#111!important;font-size:28px!important}
body #ww-cart-dialog .ww-modal-actions{display:flex!important;flex-wrap:wrap!important;gap:12px!important}
body #ww-cart-dialog .ww-modal-actions a,body #ww-cart-dialog .ww-modal-actions button{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:44px!important;padding:12px 18px!important;border:1px solid #171717!important;border-radius:0!important;font-size:14px!important;text-decoration:none!important}
body #ww-cart-dialog .ww-modal-actions a{background:#171717!important;color:#fff!important}
body #ww-cart-dialog .ww-modal-actions button{background:white!important;color:#171717!important}
body #ww-cart-dialog::backdrop{background:rgba(0,0,0,.45)}
body .elementor .ww-reference-hero,body .elementor .ww-reference-hero>.elementor-container{width:100%!important;max-width:none!important}
body .elementor .ww-reference-hero .ww-hero-media,body .elementor .ww-reference-hero .ww-hero-media .elementor-widget-wrap,body .elementor .ww-reference-hero .ww-hero-media .elementor-widget-image,body .elementor .ww-reference-hero .ww-hero-media .elementor-widget-container{width:100%!important;max-width:none!important}
body .elementor .ww-reference-hero .ww-hero-media img{width:100%!important;max-width:100%!important;height:auto!important;display:block!important}
body .elementor .ww-reference-categories>.elementor-container{width:100%!important;max-width:1280px!important;gap:24px!important}
body .elementor .ww-reference-categories .elementor-widget-image img{width:100%!important;max-width:100%!important;height:auto!important;aspect-ratio:4/5!important;object-fit:cover!important;object-position:50% 55%!important}
body .elementor .ww-reference-categories .elementor-button{font-size:15px!important;min-height:44px!important;padding:12px 24px!important}
body .elementor .ww-reference-story>.elementor-container{width:100%!important;max-width:1240px!important}
body .elementor .ww-reference-story .elementor-widget-image,body .elementor .ww-reference-story .elementor-widget-image .elementor-widget-container{width:100%!important;max-width:none!important}
body .elementor .ww-reference-story .elementor-widget-image img{display:block!important;width:100%!important;max-width:100%!important;height:auto!important;aspect-ratio:1240/450!important;object-fit:cover!important;object-position:center 60%!important}
@media(max-width:767px){body .elementor .ww-reference-story .elementor-widget-image img{aspect-ratio:16/9!important}body #ww-cart-dialog{padding:24px!important}}

body .ww-payment-banner{clear:both;width:100%;margin:16px 0 20px;text-align:center}
body .ww-payment-banner p{font-size:13px;line-height:1.5;font-weight:400;margin:0 0 8px;color:#444}
body .ww-payment-banner img{display:block!important;width:100%!important;max-width:480px!important;height:auto!important;margin:0 auto!important;object-fit:contain!important;border:0!important}

/* Product image sizing: preserve WooCommerce's native two-column layout.
   Do not set grid/float/width on div.product, .images or .summary. */
body.single-product .woocommerce div.product div.images .woocommerce-product-gallery__wrapper,
body.single-product .woocommerce div.product div.images .woocommerce-product-gallery__image,
body.single-product .woocommerce div.product div.images .woocommerce-product-gallery__image > a {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
}
body.single-product .woocommerce div.product div.images .woocommerce-product-gallery__image img,
body.single-product .woocommerce div.product div.images img.wp-post-image {
  display: block;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  object-fit: contain;
  object-position: center;
}
/* The photo remains visible while WooCommerce gallery scripts initialize. */
body.single-product .woocommerce div.product div.images.woocommerce-product-gallery {
  opacity: 1 !important;
  visibility: visible !important;
}
