/* Elementor supplies layout controls; scope store defaults to store widgets. */
.jdr-elementor-page .jdr-content{width:100%;padding:0}
.elementor-widget[class*="elementor-widget-jdr-"]{min-width:0;width:100%;margin-bottom:0}
.elementor-widget[class*="elementor-widget-jdr-"] > .elementor-widget-container{min-width:0}
.storefront-shell .elementor-widget-heading .elementor-heading-title{color:inherit}
.jdr-elementor-product .jdr-product-columns{align-items:flex-start}
.jdr-woocommerce-main div.product.jdr-elementor-product{display:flex;gap:24px}
.jdr-elementor-product .jdr-product-gallery-column{position:sticky;top:24px;min-width:0}
.jdr-elementor-product .jdr-product-summary{min-width:0;gap:18px}
.jdr-woocommerce-main .jdr-elementor-product .woocommerce-product-gallery{width:100%!important;float:none!important;margin:0!important}
.jdr-elementor-product .woocommerce-product-gallery img{width:100%;height:auto;object-fit:contain;background:#f6f6f4}
.jdr-elementor-product .product_title{margin:0;font:500 clamp(32px,4vw,56px)/1.08 Georgia,serif;letter-spacing:-.035em;text-wrap:balance}
.jdr-elementor-product p.price{margin:0;color:var(--red,#e10600);font-size:26px;font-weight:750}
.jdr-elementor-product .woocommerce-product-details__short-description{color:#555;line-height:1.75}
.jdr-elementor-product .woocommerce-product-details__short-description p{margin:0}
.jdr-elementor-product .product_meta{display:flex;flex-wrap:wrap;gap:12px;color:#777;font-size:12px}
.jdr-elementor-product .variations{width:100%;margin-bottom:20px}
.jdr-elementor-product .variations th{text-align:left;font-size:13px;padding:0 12px 12px 0;vertical-align:top}
.jdr-elementor-product .variations td{padding-bottom:12px}
.woocommerce .jdr-elementor-product form.cart .variations,.woocommerce .jdr-elementor-product form.cart .variations tbody,.woocommerce .jdr-elementor-product form.cart .variations tr,.woocommerce .jdr-elementor-product form.cart .variations th,.woocommerce .jdr-elementor-product form.cart .variations td{display:block;width:100%}
.jdr-elementor-product .jdr-variation-chips{grid-template-columns:repeat(4,minmax(0,1fr))}
.jdr-elementor-product .variations select{width:100%;min-height:48px}
.jdr-elementor-product .reset_variations{display:inline-block;padding-top:10px;font-size:12px}
.jdr-elementor-product .single_variation_wrap .woocommerce-variation-add-to-cart,.jdr-elementor-product form.cart:not(.variations_form){display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.jdr-elementor-product .quantity .qty{width:70px;min-height:52px;border:1px solid #bbb;border-radius:12px;font-size:16px}
.woocommerce .jdr-elementor-product form.cart .single_add_to_cart_button{flex:1;min-height:52px;padding:14px 24px;border:0;border-radius:999px;background:var(--red,#e10600);color:#fff;font-weight:750;font-size:15px;cursor:pointer}
.woocommerce .jdr-elementor-product form.cart .single_add_to_cart_button:hover{background:#b50716}
.woocommerce .jdr-elementor-product form.cart .single_add_to_cart_button:disabled{background:var(--red,#e10600);opacity:.45}
.jdr-elementor-product .single_add_to_cart_button.disabled{opacity:.45}
.jdr-elementor-product .woocommerce-variation{width:100%}
.jdr-elementor-product .woocommerce-tabs{width:100%;margin-top:32px}
.jdr-elementor-product .related ul.products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.jdr-elementor-product .related ul.products::before,.jdr-elementor-product .related ul.products::after{display:none}
.jdr-elementor-product .related ul.products li.product{width:auto!important;float:none!important;margin:0!important;display:block}
.jdr-elementor-product .related ul.products li.product img{aspect-ratio:1;object-fit:contain}
.jdr-elementor-product .woocommerce-product-gallery .flex-control-thumbs{display:flex;gap:10px;margin-top:12px!important}
.jdr-elementor-product .woocommerce-product-gallery .flex-control-thumbs li{width:22%!important}
/* Reserve the image and thumbnail space before the WooCommerce slider starts. */
.jdr-gallery-frame{width:100%;min-width:0}
.jdr-elementor-product .jdr-gallery-frame .woocommerce-product-gallery{position:relative;opacity:1!important;transition:none!important;padding-bottom:calc(((100% - 30px)/4 + 10px)*var(--jdr-thumb-rows,0))}
.jdr-gallery-frame .woocommerce-product-gallery>.woocommerce-product-gallery__wrapper,
.jdr-gallery-frame .woocommerce-product-gallery .flex-viewport{aspect-ratio:var(--jdr-gallery-ratio,1/1);height:auto!important;overflow:hidden}
.jdr-gallery-frame .woocommerce-product-gallery>.woocommerce-product-gallery__wrapper>.woocommerce-product-gallery__image:not(:first-child){display:none}
.jdr-elementor-product .jdr-gallery-frame .woocommerce-product-gallery__image img{aspect-ratio:var(--jdr-gallery-ratio,1/1);object-fit:contain}
.jdr-elementor-product .jdr-gallery-frame .woocommerce-product-gallery .flex-control-thumbs{position:absolute;bottom:0;left:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;width:100%;margin:0!important}
.jdr-elementor-product .jdr-gallery-frame .woocommerce-product-gallery .flex-control-thumbs li{width:100%!important;float:none}
.jdr-elementor-product .jdr-gallery-frame .woocommerce-product-gallery .flex-control-thumbs img{aspect-ratio:1;object-fit:contain}
.jdr-template-preview{margin:0}
.jdr-policy-content .e-con-inner{gap:24px}
.jdr-policy-content .elementor-widget-text-editor h2{font:500 30px/1.2 Georgia,serif}
.jdr-policy-content .elementor-widget-text-editor{font-size:15px;line-height:1.8;color:#444}
.jdr-elementor-product .woocommerce-notices-wrapper:empty{display:none}
@media(max-width:767px){
  .jdr-elementor-product .jdr-product-columns{flex-direction:column;gap:24px}
  .jdr-elementor-product .jdr-product-gallery-column,.jdr-elementor-product .jdr-product-summary{width:100%!important;position:static}
  .jdr-elementor-product .product_title{font-size:34px}
  .jdr-elementor-product .related ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 12px}
  .jdr-elementor-product .jdr-variation-chips{grid-template-columns:repeat(4,minmax(0,1fr))}
}

/* Native shop and related-product cards use the same name/plus alignment. */
.storefront-shell .jdr-woocommerce-main ul.products li.product{display:grid!important;grid-template-columns:minmax(0,1fr) 44px;grid-auto-rows:min-content;column-gap:8px;row-gap:8px;align-content:start}
.storefront-shell .jdr-woocommerce-main ul.products li.product>a.woocommerce-LoopProduct-link,
.storefront-shell .jdr-woocommerce-main .jdr-loop-actions{display:contents}
.storefront-shell .jdr-woocommerce-main ul.products li.product>a.woocommerce-LoopProduct-link>img{grid-column:1/-1;grid-row:1;width:100%;margin:0}
.storefront-shell .jdr-woocommerce-main ul.products li.product .woocommerce-loop-product__title{grid-column:1;grid-row:2;min-width:0;margin:0;padding:0;align-self:start}
.storefront-shell .jdr-woocommerce-main ul.products li.product .price{grid-column:1/-1;grid-row:3;margin:0}
.storefront-shell .jdr-woocommerce-main ul.products li.product .star-rating{grid-column:1/-1;grid-row:4}
.storefront-shell .jdr-woocommerce-main ul.products li.product .jdr-loop-action{position:static;grid-column:2;grid-row:2;align-self:start;justify-self:end;width:44px;min-width:44px;height:44px;margin:0;padding:0}
.storefront-shell .jdr-woocommerce-main ul.products li.product .jdr-loop-quick{grid-column:1/-1;grid-row:5;width:100%;margin:0}
