/* C2 responsive: scoped corrections, no Elementor data changes. */
/* Break the percentage-height cycle between the flex widget and its grid. */
.elementor-location-archive .elementor-widget-loop-grid,
.elementor-location-archive .elementor-widget-loop-grid > .elementor-widget-container {
  height: auto !important; min-height: 0; flex-shrink: 0;
}
/* The offer shortcode is a sibling of quantity/CTA for simple products. */
.woocommerce div.product .elementor-widget-woocommerce-product-add-to-cart form.cart:not(.variations_form):has(> .elementor-widget .rpb-offers) {
  display: flex !important; flex-direction: column !important; align-items: stretch !important; gap: 12px;
}
.woocommerce div.product form.cart:not(.variations_form):has(> .elementor-widget .rpb-offers) > .elementor-widget {
  width: 100% !important; min-width: 0; flex: none !important;
}
.woocommerce div.product form.cart:not(.variations_form):has(> .elementor-widget .rpb-offers) > .single_add_to_cart_button {
  width: 100% !important; height: auto !important; min-height: 48px; margin: 0 !important; flex: none !important; white-space: normal;
}
.rpb-offers { container-type: inline-size; }
@container (max-width: 480px) {
  .rpb-offers .rpb-offer { grid-template-columns: 24px minmax(0, 1fr) !important; gap: 8px 12px; }
  .rpb-offers .rpb-offer__copy { grid-column: 2; }
  .rpb-offers .rpb-offer__pricing { grid-column: 2; justify-items: start; min-width: 0; }
  .rpb-offers .rpb-offer__pricing em { white-space: normal; overflow-wrap: anywhere; }
}
body.single-product .rcpdp-purchase-confidence,
body.single-product .rcpdp-payment-trust { flex-wrap: wrap !important; }
@media (max-width: 1024px) {
  .rose-filter-sidebar-wrapper.c2-footer-visible:not(.open) .rose-toggle-filters-btn { visibility: hidden; pointer-events: none; }
  .rose-filter-sidebar { max-width: 100vw; }
}
/* Keep the original chart raster and offer explicit full-size scrolling. */
#md-size-chart-modal .chart-content-image.c2-chart-scroll { overflow: auto; max-width: 100%; }
#md-size-chart-modal .chart-content-image.c2-chart-scroll.c2-chart-expanded img {
  width: var(--c2-chart-width, 1024px) !important; min-width: var(--c2-chart-width, 1024px) !important;
  max-width: none !important; height: auto !important; float: none !important;
}
#md-size-chart-modal .c2-chart-zoom { display: block; margin: 12px 0; padding: 12px; min-height: 44px; background: #bc0000; color: white; white-space: normal; }
#md-size-chart-modal .c2-chart-hint { font-size: 14px; line-height: 1.5; }

body.page-id-3 main a { overflow-wrap: anywhere; }

.elementor-location-archive .e-con:has(> .elementor-widget-loop-grid) { display: block !important; }
