/* Align the purchase column with the adjacent information cards. */
#myFormFa.product-details-responsive .product-grid.myBody {
 align-items: flex-start !important; justify-content: flex-start !important;
 width: 100% !important; min-width: 0 !important; max-width: 100% !important;
 min-height: 0 !important; max-height: none !important; overflow: visible !important;
}
#myFormFa.product-details-responsive .product-grid > .product-grid-col {
 height: auto !important; padding-inline: 0 !important; min-width: 0;
}
#myFormFa.product-details-responsive .product-grid > .product-grid-col:first-child > [class*="col-"],
#myFormFa.product-details-responsive .product-grid > .product-grid-col:first-child > [class*="col-"] > .col-md-12 {
 padding: 0 !important; margin-bottom: 0 !important; height: auto !important;
}
@media (min-width: 992px) {
 #myFormFa.product-details-responsive .product-grid > .product-grid-col:first-child {
  display: flex !important; flex-direction: column !important; gap: 4px;
 }
 #myFormFa.product-details-responsive .product-grid .product-sub-section {
  margin: 2px !important;
 }
 #myFormFa.product-details-responsive .product-grid .product-pic__container,
 #myFormFa.product-details-responsive .product-grid .cart__container {
  width: calc(100% - 4px) !important;
 }
}
/* Keep purchase information in normal flow, clear of its thumbnail. */
#myFormFa.product-details-responsive .cart__container .product-cart > .d-flex,
#myFormFa.product-details-responsive .cart__container .oil-cart > .d-flex {
 display: grid !important; grid-template-columns: minmax(0, 1fr) 48px;
 align-items: start !important; gap: 10px !important; width: 100% !important;
}
#myFormFa.product-details-responsive .cart__container [style*="width: 85%"] {
 width: 100% !important; min-width: 0;
}
#myFormFa.product-details-responsive .cart__container .purchase-thumbnail {
 position: static !important; inset: auto !important;
 width: 48px !important; height: 48px !important;
 grid-column: 2; grid-row: 1; align-self: start; margin: 0; order: 0;
}
#myFormFa.product-details-responsive .cart__container .counter {
 display: flex !important; flex-direction: row !important; align-items: center;
 justify-content: center; gap: 0; min-width: 132px;
}
#myFormFa.product-details-responsive .cart__container .counter .counter-value {
 display: inline-flex !important; visibility: visible !important;
 flex: 0 0 36px; width: 36px !important; opacity: 1;
}
#myFormFa.product-details-responsive .cart__container .counter .counter-value input {
 display: block !important; width: 36px !important; min-width: 0;
 color: #173b36 !important; opacity: 1 !important; -webkit-text-fill-color: #173b36;
}
@media (max-width: 991px) {
 /* Use one history instance at every mobile/tablet width. */
 #myFormFa.product-details-responsive .history__container-md { display: none !important; }
 #myFormFa.product-details-responsive .history__container-lg {
  display: block !important; height: auto !important; max-height: none !important;
  overflow: visible !important; margin: 0 0 12px !important;
 }
 #myFormFa.product-details-responsive .history__container-lg .info-section,
 #myFormFa.product-details-responsive .history__container-lg p {
  height: auto !important; max-height: none !important; overflow: visible !important;
 }
 #myFormFa.product-details-responsive .product-grid .product-grid-col {
  width: 100% !important; max-width: 100% !important; min-width: 0;
  display: flex !important; flex-direction: column !important;
 }
 #myFormFa.product-details-responsive #carouselMapControls { width: 100% !important; }
 #myFormFa.product-details-responsive .product-col3-sec1 { width: 100% !important; }
 #myFormFa.product-details-responsive .product-grid-col > [class*="col-"] {
  width: 100% !important; max-width: 100% !important; padding: 0 !important;
 }
 #myFormFa.product-details-responsive .product-sub-section { margin-inline: 0 !important; }
 #myFormFa.product-details-responsive .teaCover {
  height: auto !important; max-height: none !important; overflow: hidden !important;
 }
 #myFormFa.product-details-responsive .teaCover > .info-section {
  height: auto !important; min-height: 0 !important;
 }
 #myFormFa.product-details-responsive .teaCover img.c-pointer {
  display: block; width: 100% !important; height: auto !important;
  max-height: 280px !important; object-fit: contain; margin-inline: auto;
 }
 #myFormFa.product-details-responsive .product-pic__container {
  height: auto !important; min-height: 0 !important;
 }
 #myFormFa.product-details-responsive .picture-big {
  display: block; width: 100% !important; height: auto !important;
  max-height: 380px !important; object-fit: contain !important;
 }
}
@media (max-width: 575px) {
 #myFormFa.product-details-responsive .cart__container [id$="counter-basket"],
 #myFormFa.product-details-responsive .cart__container [id$="counter-basket-26"] {
  display: flex !important; flex-direction: row !important; align-items: center !important;
  gap: 12px !important;
 }
 #myFormFa.product-details-responsive .cart__container .counter {
  flex: 0 0 132px !important; align-self: center;
 }
 #myFormFa.product-details-responsive .cart__container .product-btn-wrapper {
  flex: 1 1 140px !important; width: auto !important;
 }
}
/* Remove fixed purchase heights at every viewport size. */
#myFormFa.product-details-responsive .cart__container,
#myFormFa.product-details-responsive .cart__container .product-cart,
#myFormFa.product-details-responsive .cart__container .oil-cart {
 height: auto !important; min-height: 0 !important; max-height: none !important;
}
#myFormFa.product-details-responsive .cart__container > .d-flex.w-100,
#myFormFa.product-details-responsive .cart__container .product-logo-section {
 position: static !important; inset: auto !important; transform: none !important;
 height: auto !important; width: 100% !important; flex-wrap: wrap; gap: 8px;
}
#myFormFa.product-details-responsive .cart__container .product-logo-section img.icon {
 width: 40px !important; height: 40px !important; object-fit: contain;
}
#myFormFa.product-details-responsive .cart__container [id$="counter-basket"],
#myFormFa.product-details-responsive .cart__container [id$="counter-basket-26"] {
 flex-wrap: wrap !important; height: auto !important; min-height: 48px;
}
#myFormFa.product-details-responsive .cart__container .product-cart > .d-flex > .d-flex > div:not([id]) {
 padding: 0 !important; min-height: 0 !important;
}
/* Product details: mobile layout shared by both JSF versions. */
@media (max-width: 991px) {
 #myFormFa.product-details-responsive { width: 100%; max-width: 100%; min-width: 0; padding: 12px !important; box-sizing: border-box; }
 #myFormFa.product-details-responsive *, #myFormFa.product-details-responsive *::before, #myFormFa.product-details-responsive *::after { box-sizing: border-box; }
 #myFormFa.product-details-responsive .product-grid { display: flex !important; flex-direction: column; gap: 12px; width: 100%; margin-inline: 0 !important; }
 #myFormFa.product-details-responsive .product-grid > .product-grid-col { width: 100% !important; max-width: 100% !important; min-width: 0; padding: 0 !important; flex: 0 0 auto; }
 #myFormFa.product-details-responsive .product-sub-section { max-width: 100%; min-width: 0; overflow-wrap: anywhere; }
 #myFormFa.product-details-responsive .picture-big { max-width: 100% !important; object-fit: contain; }
 #myFormFa.product-details-responsive .swiper, #myFormFa.product-details-responsive .swiper-width { width: 100%; max-width: 100%; min-width: 0; }
 #myFormFa.product-details-responsive .cart__container { width: 100%; max-width: 100%; height: auto !important; }
 #myFormFa.product-details-responsive .cart__container .product-cart,
 #myFormFa.product-details-responsive .cart__container .oil-cart { width: 100%; height: auto !important; min-height: 0; padding: 14px !important; }
 #myFormFa.product-details-responsive .cart__container .product-cart > .d-flex,
 #myFormFa.product-details-responsive .cart__container .oil-cart > .d-flex { width: 100%; flex-wrap: wrap; gap: 12px; }
 #myFormFa.product-details-responsive .cart__container [style*="width: 85%"] { width: 100% !important; gap: 12px; align-items: center; }
 #myFormFa.product-details-responsive .cart__container .counter { display: flex; align-items: center; justify-content: center; flex: 0 0 132px; width: 132px !important; max-width: 100%; min-height: 44px; margin: 0 !important; }
 #myFormFa.product-details-responsive .counter-link { display: inline-flex; align-items: center; justify-content: center; width: 44px; min-height: 44px; cursor: pointer; }
 #myFormFa.product-details-responsive .counter-value { min-width: 0; }
 #myFormFa.product-details-responsive .cart__container .product-btn-wrapper { flex: 1 1 180px; width: auto !important; min-width: 0; }
 #myFormFa.product-details-responsive .cart__container .add-to-cart-btn { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 46px; white-space: normal; text-align: center; padding: 10px 12px; }
 #myFormFa.product-details-responsive .cart__container ul { width: 100%; max-width: 100%; padding: 0; }
 #myFormFa.product-details-responsive .cart__container ul li { flex-wrap: wrap; gap: 4px; line-height: 1.8; }
 #myFormFa.product-details-responsive .cart__container .value { white-space: normal; overflow-wrap: anywhere; }
 #myFormFa.product-details-responsive video { width: 100% !important; max-width: 100%; height: auto; }
 #myFormFa.product-details-responsive .info-section, #myFormFa.product-details-responsive .info-section p { max-width: 100%; overflow-wrap: anywhere; }
}
@media (max-width: 575px) {
 #myFormFa.product-details-responsive > .theme-icon { display: flex !important; flex-direction: column; align-items: stretch; gap: 8px; width: 100%; }
 #myFormFa.product-details-responsive > .theme-icon .title { min-width: 0; flex-wrap: wrap; gap: 8px; }
 #myFormFa.product-details-responsive > .theme-icon h3 { font-size: 17px !important; line-height: 1.8; overflow-wrap: anywhere; }
 #myFormFa.product-details-responsive .product-grid > .product-grid-col { display: flex !important; flex-direction: column !important; }
 #myFormFa.product-details-responsive .product-grid-col > [class*="col-"] { width: 100% !important; max-width: 100%; padding: 0 !important; }
 #myFormFa.product-details-responsive .product-pic__container { width: 100%; height: auto !important; min-height: 0; }
 #myFormFa.product-details-responsive .picture-big { width: 100% !important; height: auto !important; max-height: 320px !important; }
 #myFormFa.product-details-responsive .product-category-icon { max-width: 100%; height: auto; }
 #myFormFa.product-details-responsive .plant-name { max-width: 110px; font-size: 16px !important; bottom: 56px; }
 #myFormFa.product-details-responsive .plant-name-en { font-size: 13px !important; }
 #myFormFa.product-details-responsive .info-header { padding: 10px !important; font-size: 14px; }
 #myFormFa.product-details-responsive .product-logo-section { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; max-width: 100%; }
 #myFormFa.product-details-responsive .xzoom-preview, #myFormFa.product-details-responsive .xzoom-lens { display: none !important; }
}
/* Compact purchase card: no reserved thumbnail row or oversized flex items. */
#myFormFa.product-details-responsive .cart__container .product-cart,
#myFormFa.product-details-responsive .cart__container .oil-cart {
 padding: 6px 10px !important;
}
#myFormFa.product-details-responsive .cart__container .product-cart > .d-flex > .d-flex,
#myFormFa.product-details-responsive .cart__container .oil-cart > .d-flex > .d-flex {
 grid-column: 1; grid-row: 1; gap: 4px !important;
}
#myFormFa.product-details-responsive .cart__container ul {
 margin-block: 0 !important; gap: 0 !important;
}
#myFormFa.product-details-responsive .cart__container [id$="counter-basket"],
#myFormFa.product-details-responsive .cart__container [id$="counter-basket-26"] {
 flex-direction: row !important; flex-wrap: wrap !important;
 align-items: center !important; gap: 8px !important;
}
#myFormFa.product-details-responsive .cart__container .counter {
 flex: 0 0 132px !important;
}
#myFormFa.product-details-responsive .cart__container .product-btn-wrapper {
 flex: 1 1 140px !important; width: auto !important;
}
#myFormFa.product-details-responsive .cart__container > .d-flex.w-100 {
 padding: 2px 10px !important;
}
#myFormFa.product-details-responsive .cart__container > .d-flex.w-100 > .w-100 > .d-flex {
 align-items: center !important; gap: 8px;
}
#myFormFa.product-details-responsive .cart__container .product-logo-section {
 width: auto !important; flex: 1 1 auto; margin: 0 !important; gap: 6px !important;
}
#myFormFa.product-details-responsive .cart__container .product-logo-section img.icon,
#myFormFa.product-details-responsive .cart__container .pe-2 > img {
 width: 36px !important; height: 36px !important; object-fit: contain;
}
#myFormFa.product-details-responsive .cart__container .product-logo-section img[data-toggle="modal"] {
 width: 44px !important; height: 44px !important;
}
#myFormFa.product-details-responsive .cart__container .pe-2 {
 flex: 0 0 auto; padding: 0 !important; gap: 4px;
 align-items: center !important;
}
#myFormFa.product-details-responsive .cart__container ul li {
 font-size: 12px !important; line-height: 1.5 !important;
 gap: 2px 4px !important;
}
#myFormFa.product-details-responsive .cart__container ul li p {
 font-size: 12px !important; line-height: 1.5 !important;
 min-width: 0; max-width: 100%;
}
#myFormFa.product-details-responsive .cart__container ul li .value {
 font-size: 14px !important; line-height: 1.4;
 white-space: nowrap !important; overflow-wrap: normal;
}
#myFormFa.product-details-responsive .cart__container ul li .value .currency {
 font-size: 12px !important; margin-inline-start: 2px;
}
#myFormFa.product-details-responsive .cart__container .small-ul li .text-success,
#myFormFa.product-details-responsive .cart__container .small-ul li .text-danger {
 padding: 0 !important;
}
/* Fixed purchase-card height; scroll only if unusually long content exceeds it. */
/* Consistent RTL label/value rows, including JSF's optional span wrappers. */
#myFormFa.product-details-responsive .cart__container ul li:has(> .value),
#myFormFa.product-details-responsive .cart__container ul li:has(> span > .value) {
 display: grid !important; grid-template-columns: minmax(0, 1fr) max-content;
 align-items: baseline !important; column-gap: 8px !important;
 width: 100%; text-align: right;
}
#myFormFa.product-details-responsive .cart__container ul li > span:has(> .value) {
 display: contents;
}
#myFormFa.product-details-responsive .cart__container ul li p {
 text-align: right !important;
}
#myFormFa.product-details-responsive .cart__container ul li .value {
 text-align: left; justify-self: end; font-variant-numeric: tabular-nums;
}
#myFormFa.product-details-responsive .cart__container .small-ul {
 margin-top: 4px !important;
}
#myFormFa.product-details-responsive .cart__container [id$="counter-basket"],
#myFormFa.product-details-responsive .cart__container [id$="counter-basket-26"] {
 padding-top: 6px; border-top: 1px solid var(--pd-line, #e3e9e6);
}
#myFormFa.product-details-responsive .cart__container .counter {
 border-radius: 10px !important; overflow: hidden;
}
#myFormFa.product-details-responsive .cart__container .add-to-cart-btn {
 border-radius: 10px !important;
}
#myFormFa.product-details-responsive .cart__container > .d-flex.w-100 {
 margin-top: auto; border-top: 1px solid var(--pd-line, #e3e9e6);
}
#myFormFa.product-details-responsive .product-grid .cart__container {
 height: 200px !important;
 min-height: 200px !important;
 max-height: 200px !important;
 overflow-x: hidden !important;
 overflow-y: auto !important;
}
@media (max-width: 768px) {
 #myFormFa.product-details-responsive .product-grid .cart__container {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
 }
}
#myFormFa.product-details-responsive .cart__container > .product-cart,
#myFormFa.product-details-responsive .cart__container > .oil-cart,
#myFormFa.product-details-responsive .cart__container > .d-flex.w-100 {
 flex-shrink: 0 !important;
}
@media (max-width: 768px) {
 #myFormFa.product-details-responsive .cart__container .product-cart,
 #myFormFa.product-details-responsive .cart__container .oil-cart {
  padding: 12px !important;
 }
 #myFormFa.product-details-responsive .cart__container .product-cart > .d-flex,
 #myFormFa.product-details-responsive .cart__container .oil-cart > .d-flex {
  grid-template-columns: minmax(0, 1fr) 48px; gap: 10px !important;
 }
 #myFormFa.product-details-responsive .cart__container .product-cart > .d-flex > .d-flex,
 #myFormFa.product-details-responsive .cart__container .oil-cart > .d-flex > .d-flex {
  display: contents !important;
 }
 #myFormFa.product-details-responsive .cart__container .product-cart > .d-flex > .d-flex > div:not([id]),
 #myFormFa.product-details-responsive .cart__container .oil-cart > .d-flex > .d-flex > div:not([id]) {
  grid-column: 1; grid-row: 1; min-width: 0; width: 100% !important;
 }
 #myFormFa.product-details-responsive .cart__container [id$="counter-basket"],
 #myFormFa.product-details-responsive .cart__container [id$="counter-basket-26"] {
  grid-column: 1 / -1; grid-row: 2; width: 100% !important;
  min-width: 0; padding-top: 10px; gap: 8px !important;
 }
 #myFormFa.product-details-responsive .cart__container .counter {
  flex: 0 0 132px !important; width: 132px !important;
 }
 #myFormFa.product-details-responsive .cart__container .counter-link {
  width: 44px !important; min-height: 44px !important;
 }
 #myFormFa.product-details-responsive .cart__container .product-btn-wrapper {
  flex: 1 1 140px !important; min-width: 0; width: auto !important;
 }
 #myFormFa.product-details-responsive .cart__container .add-to-cart-btn {
  min-height: 44px !important; width: 100% !important;
  white-space: normal !important; line-height: 1.5 !important;
 }
 #myFormFa.product-details-responsive .cart__container > .d-flex.w-100 {
  padding: 8px 12px !important; margin-top: 0;
 }
 #myFormFa.product-details-responsive .cart__container > .d-flex.w-100 > .w-100 > .d-flex {
  flex-wrap: wrap; gap: 8px;
 }
 #myFormFa.product-details-responsive .cart__container .product-logo-section {
  justify-content: flex-start !important; min-width: 0;
 }
}
@media (max-width: 360px) {
 #myFormFa.product-details-responsive .cart__container ul li:has(> .value),
 #myFormFa.product-details-responsive .cart__container ul li:has(> span > .value) {
  grid-template-columns: minmax(0, 1fr);
 }
 #myFormFa.product-details-responsive .cart__container ul li .value {
  justify-self: start; text-align: right;
 }
 #myFormFa.product-details-responsive .cart__container .product-btn-wrapper {
  flex-basis: 100% !important;
 }
}
