.elementor-178 .elementor-element.elementor-element-4373b546{--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;}.elementor-178 .elementor-element.elementor-element-13b27914{--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;}.elementor-178 .elementor-element.elementor-element-6cec55c4{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-178 .elementor-element.elementor-element-42e08f44{--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;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-178 .elementor-element.elementor-element-673bb1a3{--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;}.elementor-178 .elementor-element.elementor-element-258446a5 .woocommerce-breadcrumb{text-align:start;}.elementor-widget-woocommerce-product-title .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-178 .elementor-element.elementor-element-dcd099f{text-align:start;}.woocommerce .elementor-widget-woocommerce-product-price .price{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-178 .elementor-element.elementor-element-6a54c45{text-align:start;}.elementor-178 .elementor-element.elementor-element-779cdd41{text-align:start;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-178 .elementor-element.elementor-element-4fc32cd5{text-align:start;}.elementor-widget-woocommerce-product-add-to-cart .added_to_cart{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-178 .elementor-element.elementor-element-7c2ae905 .cart button, .elementor-178 .elementor-element.elementor-element-7c2ae905 .cart .button{transition:all 0.2s;}.elementor-178 .elementor-element.elementor-element-7c2ae905 .quantity .qty{transition:all 0.2s;}.elementor-178 .elementor-element.elementor-element-296abc50{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-widget-woocommerce-product-meta .product_meta .detail-container:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-178 .elementor-element.elementor-element-3ce0266e:not(.elementor-woo-meta--view-inline) .product_meta .detail-container:not(:last-child){padding-bottom:calc(10px/2);}.elementor-178 .elementor-element.elementor-element-3ce0266e:not(.elementor-woo-meta--view-inline) .product_meta .detail-container:not(:first-child){margin-top:calc(10px/2);}.elementor-178 .elementor-element.elementor-element-3ce0266e.elementor-woo-meta--view-inline .product_meta .detail-container{margin-right:calc(10px/2);margin-left:calc(10px/2);}.elementor-178 .elementor-element.elementor-element-3ce0266e.elementor-woo-meta--view-inline .product_meta{margin-right:calc(-10px/2);margin-left:calc(-10px/2);}body:not(.rtl) .elementor-178 .elementor-element.elementor-element-3ce0266e.elementor-woo-meta--view-inline .detail-container:after{right:calc( (-10px/2) + (-1px/2) );}body:not.rtl .elementor-178 .elementor-element.elementor-element-3ce0266e.elementor-woo-meta--view-inline .detail-container:after{left:calc( (-10px/2) - (1px/2) );}.elementor-178 .elementor-element.elementor-element-3ce0266e .product_meta .detail-container:not(:last-child):after{content:"";border-color:#ddd;}.elementor-178 .elementor-element.elementor-element-3ce0266e:not(.elementor-woo-meta--view-inline) .product_meta .detail-container:not(:last-child):after{border-top-style:solid;border-top-width:1px;margin-bottom:calc(-1px/2);}.elementor-178 .elementor-element.elementor-element-3ce0266e.elementor-woo-meta--view-inline .product_meta .detail-container:not(:last-child):after{border-left-style:solid;border-left-width:1px;}.elementor-178 .elementor-element.elementor-element-598a52fd{--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;}.elementor-178 .elementor-element.elementor-element-596448f0{--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;}.elementor-widget-loop-grid .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-loop-grid .elementor-pagination{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-loop-grid .e-load-more-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-178 .elementor-element.elementor-element-7a22fbb8{--grid-columns:4;}.elementor-178 .elementor-element.elementor-element-7a22fbb8 .elementor-loop-container{grid-auto-rows:1fr;}.elementor-178 .elementor-element.elementor-element-7a22fbb8 .e-loop-item > .elementor-section, .elementor-178 .elementor-element.elementor-element-7a22fbb8 .e-loop-item > .elementor-section > .elementor-container, .elementor-178 .elementor-element.elementor-element-7a22fbb8 .e-loop-item > .e-con, .elementor-178 .elementor-element.elementor-element-7a22fbb8 .e-loop-item .elementor-section-wrap  > .e-con{height:100%;}@media(max-width:1024px){.elementor-178 .elementor-element.elementor-element-7a22fbb8{--grid-columns:2;}}@media(max-width:767px){.elementor-178 .elementor-element.elementor-element-7a22fbb8{--grid-columns:1;}}/* Start custom CSS for container, class: .elementor-element-4373b546 *//* =========================================================
   Asili Furniture - Single Product
   File: asili-single-product.css
   Depends on: asili-base.css, asili-product-card.css, Asili Site Functions
   ========================================================= */

.af-single-product-page,
.af-single-product-page *,
.af-related-products-section,
.af-related-products-section * {
  box-sizing: border-box;
}

.af-single-product-page {
  width: 100%;
  padding: 32px 0 76px;
  background: #ffffff;
  color: var(--af-text);
}

/* Woo notices */
.af-single-product-page .af-woo-notices,
body.single-product .woocommerce-notices-wrapper {
  width: min(100% - 32px, var(--af-container, 1240px));
  margin: 0 auto 22px;
}

.af-single-product-page .woocommerce-message,
.af-single-product-page .woocommerce-info,
.af-single-product-page .woocommerce-error,
body.single-product .woocommerce-message,
body.single-product .woocommerce-info,
body.single-product .woocommerce-error {
  position: relative !important;
  min-height: 58px !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 0 0 14px !important;
  padding: 15px 170px 15px 52px !important;
  border: 1px solid var(--af-border) !important;
  border-left: 4px solid var(--af-primary) !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  color: var(--af-text) !important;
  box-shadow: var(--af-shadow-sm);
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.45 !important;
}

.af-single-product-page .woocommerce-message::before,
.af-single-product-page .woocommerce-info::before,
.af-single-product-page .woocommerce-error::before,
body.single-product .woocommerce-message::before,
body.single-product .woocommerce-info::before,
body.single-product .woocommerce-error::before {
  position: absolute !important;
  left: 18px !important;
  top: 50% !important;
  width: 22px !important;
  height: 22px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  border-radius: 999px !important;
  background: var(--af-primary) !important;
  color: #ffffff !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  transform: translateY(-50%) !important;
}

.af-single-product-page .woocommerce-message::before,
body.single-product .woocommerce-message::before {
  content: "✓" !important;
}

.af-single-product-page .woocommerce-info::before,
body.single-product .woocommerce-info::before {
  content: "i" !important;
  background: var(--af-accent, #00a6a6) !important;
}

.af-single-product-page .woocommerce-error::before,
body.single-product .woocommerce-error::before {
  content: "!" !important;
  background: #dc2626 !important;
}

.af-single-product-page .woocommerce-message .button,
.af-single-product-page .woocommerce-info .button,
.af-single-product-page .woocommerce-error .button,
body.single-product .woocommerce-message .button,
body.single-product .woocommerce-info .button,
body.single-product .woocommerce-error .button {
  position: absolute !important;
  top: 50% !important;
  right: 14px !important;
  min-height: 38px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 18px !important;
  border: 1px solid var(--af-primary) !important;
  border-radius: 999px !important;
  background: var(--af-primary) !important;
  color: #ffffff !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  transform: translateY(-50%) !important;
}

/* Main shell */
.af-single-product-shell {
  width: min(100% - 32px, var(--af-container, 1240px));
  margin: 0 auto 34px;
  padding: 28px;
  border: 1px solid var(--af-border);
  border-radius: 26px;
  background: var(--af-bg-soft);
}

.af-single-product-main {
  width: 100%;
  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(390px, 0.95fr);
  gap: 24px;
  align-items: start;
}

.af-single-product-media,
.af-single-product-summary {
  width: 100%;
  min-width: 0;
  border: 1px solid var(--af-border);
  border-radius: 22px;
  background: #ffffff;
  box-shadow: var(--af-shadow-sm);
}

.af-single-product-media {
  position: relative;
  padding: 18px;
  overflow: visible;
}

.af-single-product-summary {
  padding: 34px;
}

/* Sale badge */
.af-single-sale-badge,
.af-single-product-media .af-single-sale-badge.elementor-widget {
  position: absolute !important;
  top: -13px !important;
  left: 50% !important;
  z-index: 20 !important;
  width: auto !important;
  max-width: calc(100% - 28px) !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: translateX(-50%) !important;
  pointer-events: none !important;
}

.af-single-sale-badge > .elementor-widget-container {
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  justify-content: center !important;
}

.af-single-sale-badge .elementor-heading-title {
  min-height: 34px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 8px 16px !important;
  border-radius: 999px !important;
  background: var(--af-primary) !important;
  color: #ffffff !important;
  font-size: 0 !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  box-shadow: 0 10px 22px rgba(21, 94, 239, 0.24) !important;
}

.af-single-sale-badge .elementor-heading-title::before {
  content: "On Sale";
  color: #ffffff;
  font-size: 13px;
  font-weight: 900;
}

/* Gallery */
.af-single-product-media .woocommerce-product-gallery {
  width: 100% !important;
  margin: 0 !important;
}

.af-single-product-media .woocommerce-product-gallery__wrapper {
  margin: 0 !important;
}

.af-single-product-media .woocommerce-product-gallery__image,
.af-single-product-media .woocommerce-product-gallery__image a {
  display: block;
  width: 100%;
  overflow: hidden;
  border-radius: 18px;
  background: var(--af-bg-soft);
}

.af-single-product-media .woocommerce-product-gallery__image img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-height: 560px;
  object-fit: contain;
  object-position: center;
  border-radius: 18px !important;
}

.af-single-product-media .woocommerce-product-gallery__trigger {
  top: 18px !important;
  right: 18px !important;
  width: 42px !important;
  height: 42px !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  box-shadow: var(--af-shadow-sm) !important;
}

.af-single-product-media .flex-control-thumbs {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(78px, 1fr));
  gap: 10px;
  margin: 12px 0 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.af-single-product-media .flex-control-thumbs li {
  width: 100% !important;
  margin: 0 !important;
  border: 1px solid var(--af-border);
  border-radius: 14px;
  background: var(--af-bg-soft);
  overflow: hidden;
}

.af-single-product-media .flex-control-thumbs img {
  display: block !important;
  width: 100% !important;
  height: 78px !important;
  object-fit: cover;
  opacity: 0.58;
  cursor: pointer;
  transition: opacity 180ms ease, transform 180ms ease;
}

.af-single-product-media .flex-control-thumbs img.flex-active,
.af-single-product-media .flex-control-thumbs img:hover {
  opacity: 1;
  transform: scale(1.03);
}

/* Summary */
.af-single-breadcrumb,
.af-single-breadcrumb .woocommerce-breadcrumb {
  margin: 0 0 12px !important;
  color: var(--af-muted) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.45 !important;
}

.af-single-breadcrumb a,
.af-single-breadcrumb .woocommerce-breadcrumb a {
  color: var(--af-primary) !important;
  text-decoration: none !important;
}

.af-single-title .elementor-heading-title,
.af-single-product-summary .product_title {
  margin: 0 !important;
  color: var(--af-primary-dark) !important;
  font-size: clamp(30px, 3vw, 44px) !important;
  font-weight: 900 !important;
  line-height: 1.06 !important;
  letter-spacing: -0.04em !important;
}

.af-single-rating {
  margin: 8px 0 0 !important;
}

.af-single-rating .star-rating,
.af-single-rating .star-rating::before {
  color: var(--af-accent, #00a6a6) !important;
}

.af-single-price {
  margin: 12px 0 0 !important;
}

.af-single-price .price {
  display: flex !important;
  align-items: baseline;
  gap: 10px;
  flex-wrap: wrap;
  margin: 0 !important;
  color: var(--af-primary) !important;
  font-weight: 900 !important;
}

.af-single-price .woocommerce-Price-amount {
  color: var(--af-primary) !important;
  font-weight: 900 !important;
}

.af-single-price .price del {
  color: rgba(31, 41, 55, 0.42) !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  text-decoration-thickness: 1.5px;
}

.af-single-price .price ins {
  color: var(--af-primary) !important;
  font-size: 22px !important;
  font-weight: 900 !important;
  text-decoration: none !important;
}

.af-single-short-description {
  margin-top: 12px !important;
}

.af-single-short-description,
.af-single-short-description p {
  color: var(--af-text) !important;
  font-size: 15.5px !important;
  font-weight: 500 !important;
  line-height: 1.7 !important;
}

.af-single-short-description p {
  margin: 0 0 12px !important;
}

.af-single-order-note {
  width: 100%;
  margin: 14px 0 0 !important;
  padding: 15px 17px !important;
  border-left: 4px solid var(--af-accent, #00a6a6) !important;
  border-radius: 14px !important;
  background: var(--af-primary-soft) !important;
}

.af-single-order-note,
.af-single-order-note p {
  color: var(--af-primary-dark) !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  line-height: 1.55 !important;
}

.af-single-order-note p {
  margin: 0 !important;
}

/* Add to cart */
.af-single-add-cart {
  margin-top: 16px !important;
}

.af-single-add-cart form.cart {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
  margin: 0 !important;
}

.af-single-add-cart .quantity {
  margin: 0 !important;
}

.af-single-add-cart .quantity .qty {
  width: 66px !important;
  height: 48px !important;
  min-height: 48px !important;
  border: 1px solid var(--af-border) !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  color: var(--af-primary-dark) !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  text-align: center !important;
  box-shadow: none !important;
}

.af-single-add-cart .single_add_to_cart_button,
.af-single-add-cart button.button {
  min-height: 48px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 28px !important;
  border: 1px solid var(--af-primary) !important;
  border-radius: 999px !important;
  background: var(--af-primary) !important;
  color: #ffffff !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  box-shadow: 0 10px 24px rgba(21, 94, 239, 0.22) !important;
}

.af-single-add-cart .single_add_to_cart_button:hover,
.af-single-add-cart button.button:hover {
  border-color: var(--af-primary-dark) !important;
  background: var(--af-primary-dark) !important;
}

/* Shortcode product actions */
.af-single-product-page .af-product-actions {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  width: 100%;
  margin-top: 18px;
  padding-top: 20px;
  border-top: 1px solid var(--af-border);
}

.af-single-product-page .af-product-btn {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  padding: 0 24px;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 900;
  line-height: 1;
  text-decoration: none !important;
  white-space: nowrap;
  transition: transform 180ms ease, background-color 180ms ease, box-shadow 180ms ease;
}

.af-single-product-page .af-product-btn:hover {
  transform: translateY(-1px);
}

.af-single-product-page .af-product-btn__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.af-single-product-page .af-product-btn__icon svg {
  display: block;
}

.af-single-product-page .af-product-btn--whatsapp {
  background: var(--af-whatsapp) !important;
  color: #ffffff !important;
  box-shadow: 0 9px 20px rgba(37, 211, 102, 0.22);
}

.af-single-product-page .af-product-btn--call {
  background: var(--af-primary-soft) !important;
  color: var(--af-primary) !important;
  border: 1px solid rgba(21, 94, 239, 0.24);
}

/* Payment methods */
.af-payment-methods {
  width: 100%;
  margin-top: 18px;
  padding: 18px;
  border: 1px solid var(--af-border);
  border-radius: 16px;
  background: #ffffff;
}

.af-payment-methods-head {
  display: grid;
  gap: 4px;
  margin-bottom: 14px;
}

.af-payment-methods-kicker {
  color: var(--af-accent, #00a6a6);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.08em;
  line-height: 1.1;
  text-transform: uppercase;
}

.af-payment-methods-head strong {
  color: var(--af-primary-dark);
  font-size: 17px;
  font-weight: 900;
  line-height: 1.2;
}

.af-payment-methods-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
}

.af-payment-method {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 9px 12px;
  border: 1px solid var(--af-border);
  border-radius: 999px;
  background: var(--af-bg-soft);
  color: var(--af-primary-dark);
  font-size: 13.5px;
  font-weight: 800;
  line-height: 1.2;
}

.af-payment-methods-note {
  margin: 14px 0 0 !important;
  padding-top: 13px;
  border-top: 1px solid var(--af-border);
  color: var(--af-muted) !important;
  font-size: 13px !important;
  font-weight: 650 !important;
  line-height: 1.55 !important;
}

/* Meta */
.af-single-meta {
  margin-top: 18px !important;
  padding-top: 16px !important;
  border-top: 1px solid var(--af-border) !important;
}

.af-single-meta,
.af-single-meta .product_meta {
  color: var(--af-muted) !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  line-height: 1.55 !important;
}

.af-single-meta a {
  color: var(--af-primary) !important;
  text-decoration: none !important;
}

/* Tabs */
.af-single-product-details {
  width: min(100% - 32px, var(--af-container, 1240px));
  margin: 0 auto;
  padding: 28px 30px;
  border: 1px solid var(--af-border);
  border-radius: 22px;
  background: #ffffff;
  box-shadow: var(--af-shadow-sm);
}

.af-single-tabs .woocommerce-tabs {
  width: 100%;
}

.af-single-tabs .woocommerce-tabs ul.tabs {
  display: flex !important;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  margin: 0 0 22px !important;
  padding: 0 !important;
  border-bottom: 1px solid var(--af-border) !important;
}

.af-single-tabs .woocommerce-tabs ul.tabs::before,
.af-single-tabs .woocommerce-tabs ul.tabs::after {
  display: none !important;
}

.af-single-tabs .woocommerce-tabs ul.tabs li {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: transparent !important;
}

.af-single-tabs .woocommerce-tabs ul.tabs li a {
  min-height: 42px;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  padding: 0 18px !important;
  border: 1px solid var(--af-border);
  border-radius: 999px;
  background: var(--af-bg-soft);
  color: var(--af-primary-dark) !important;
  font-size: 14px;
  font-weight: 900;
  line-height: 1;
  text-decoration: none !important;
}

.af-single-tabs .woocommerce-tabs ul.tabs li.active a,
.af-single-tabs .woocommerce-tabs ul.tabs li a:hover {
  border-color: var(--af-primary);
  background: var(--af-primary);
  color: #ffffff !important;
}

.af-single-tabs .woocommerce-Tabs-panel {
  margin: 0 !important;
  padding: 0 !important;
  color: var(--af-text);
}

.af-single-tabs .woocommerce-Tabs-panel h2,
.af-single-tabs .woocommerce-Tabs-panel h3 {
  margin: 0 0 14px !important;
  color: var(--af-primary-dark) !important;
  font-size: 24px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
}

.af-single-tabs .woocommerce-Tabs-panel p,
.af-single-tabs .woocommerce-Tabs-panel li {
  color: var(--af-text) !important;
  font-size: 15.5px !important;
  line-height: 1.75 !important;
}

/* Related products */
.af-related-products-section {
  width: min(100% - 32px, var(--af-container, 1240px));
  margin: 46px auto 0;
  padding: 0;
  background: transparent;
}

.af-related-title .elementor-heading-title,
.af-related-products-section .af-related-title {
  margin: 0 0 22px !important;
  color: var(--af-primary-dark) !important;
  font-size: clamp(28px, 2.5vw, 40px) !important;
  font-weight: 900 !important;
  line-height: 1.08 !important;
  letter-spacing: -0.03em !important;
}

.af-related-products-section ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
  margin: 0 !important;
  padding: 0 !important;
}

.af-related-products-section ul.products::before,
.af-related-products-section ul.products::after {
  display: none !important;
}

.af-related-products-section ul.products li.product {
  width: 100% !important;
  margin: 0 !important;
}

/* Tablet */
@media (max-width: 1024px) {
  .af-single-product-page {
    padding-top: 22px;
  }

  .af-single-product-shell {
    width: calc(100% - 28px);
    padding: 22px;
    border-radius: 22px;
  }

  .af-single-product-main {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .af-single-product-summary {
    padding: 28px;
  }

  .af-single-product-details,
  .af-related-products-section {
    width: calc(100% - 28px);
  }

  .af-related-products-section ul.products {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

/* Mobile */
@media (max-width: 767px) {
  .af-single-product-page {
    padding: 14px 0 48px;
  }

  .af-single-product-shell {
    width: calc(100% - 18px);
    margin-bottom: 22px;
    padding: 10px;
    border-radius: 18px;
  }

  .af-single-product-main {
    gap: 12px;
  }

  .af-single-product-media {
    padding: 10px;
    border-radius: 16px;
  }

  .af-single-product-summary {
    padding: 20px;
    border-radius: 16px;
  }

  .af-single-title .elementor-heading-title,
  .af-single-product-summary .product_title {
    font-size: 29px !important;
    line-height: 1.08 !important;
  }

  .af-single-add-cart form.cart {
    display: grid !important;
    grid-template-columns: 70px minmax(0, 1fr);
    gap: 10px !important;
  }

  .af-single-add-cart .single_add_to_cart_button,
  .af-single-add-cart button.button {
    width: 100% !important;
    padding-inline: 16px !important;
  }

  .af-single-product-page .af-product-actions {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .af-single-product-page .af-product-btn {
    width: 100%;
  }

  .af-payment-methods-grid {
    grid-template-columns: 1fr;
  }

  .af-single-product-details {
    width: calc(100% - 18px);
    padding: 20px;
    border-radius: 16px;
  }

  .af-single-tabs .woocommerce-tabs ul.tabs {
    display: grid !important;
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .af-single-tabs .woocommerce-tabs ul.tabs li a {
    width: 100%;
  }

  .af-related-products-section {
    width: calc(100% - 18px);
    margin-top: 34px;
  }

  .af-related-products-section ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }

  .af-single-product-page .woocommerce-message,
  .af-single-product-page .woocommerce-info,
  .af-single-product-page .woocommerce-error,
  body.single-product .woocommerce-message,
  body.single-product .woocommerce-info,
  body.single-product .woocommerce-error {
    display: block !important;
    padding: 16px 16px 16px 50px !important;
    border-radius: 14px !important;
  }

  .af-single-product-page .woocommerce-message .button,
  .af-single-product-page .woocommerce-info .button,
  .af-single-product-page .woocommerce-error .button,
  body.single-product .woocommerce-message .button,
  body.single-product .woocommerce-info .button,
  body.single-product .woocommerce-error .button {
    position: static !important;
    width: 100% !important;
    min-height: 42px !important;
    margin-top: 12px !important;
    transform: none !important;
  }
}

@media (max-width: 380px) {
  .af-single-product-summary {
    padding: 16px;
  }

  .af-single-title .elementor-heading-title,
  .af-single-product-summary .product_title {
    font-size: 26px !important;
  }

  .af-related-products-section ul.products {
    grid-template-columns: 1fr;
  }
}


/* =========================================================
   Asili Single Product - Related Products Loop Grid
   Uses the custom Product Card loop item for consistency.
   ========================================================= */

.af-related-products-section .af-related-grid,
.af-related-products-section .af-related-products-loop {
  width: 100%;
}

.af-related-products-section .elementor-loop-container {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 18px !important;
  align-items: stretch !important;
}

.af-related-products-section .e-loop-item,
.af-related-products-section .af-product-card {
  height: 100%;
}

.af-related-products-section .af-product-card {
  box-shadow: var(--af-shadow-sm);
}

@media (max-width: 1024px) {
  .af-related-products-section .elementor-loop-container {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 767px) {
  .af-related-products-section .elementor-loop-container {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }
}

@media (max-width: 380px) {
  .af-related-products-section .elementor-loop-container {
    grid-template-columns: 1fr !important;
  }
}/* End custom CSS */