/* Axalia single product gallery adjustments */

/* Hide injected mobile-only title by default (desktop/tablet) */
.ax-mobile-title { display: none; }

/* Ensure the main image is large and centered */
.single-product div.product .woocommerce-product-gallery {
  max-width: 760px;
  margin: 0 auto 24px auto;
}

/* Fix: My Account content hidden under fixed header */
html body.woocommerce-account { padding-top: 100px !important; }
@media (max-width: 768px) {
  html body.woocommerce-account { padding-top: 84px !important; }
}

.single-product div.product .woocommerce-product-gallery__wrapper {
  display: block;
}

.single-product div.product .woocommerce-product-gallery__image img {
  width: 100%;
  height: auto;
  object-fit: contain;
}

/* Round previous/next controls similar to screenshot */
.woocommerce div.product .flex-control-nav + .flex-direction-nav a,
.woocommerce div.product .woocommerce-product-gallery .flex-direction-nav a {
  width: 56px;
  height: 56px;
  line-height: 56px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 6px 20px rgba(0,0,0,0.08);
  text-shadow: none;
  color: #111;
  opacity: 1 !important;
}

.woocommerce div.product .woocommerce-product-gallery .flex-direction-nav .flex-prev {
  left: -72px; /* pull slightly outside image */
}
.woocommerce div.product .woocommerce-product-gallery .flex-direction-nav .flex-next {
  right: -72px;
}

/* Thumbnails row below main image */
.woocommerce div.product .flex-control-nav.flex-control-thumbs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 56px; /* big gaps like screenshot */
  justify-content: center;
  max-width: 940px;
  margin: 24px auto 0 auto;
}

.woocommerce div.product .flex-control-nav.flex-control-thumbs li {
  width: auto !important;
  margin: 0 !important;
}

.woocommerce div.product .flex-control-nav.flex-control-thumbs img {
  border-radius: 8px;
  outline: 2px solid transparent;
}

.woocommerce div.product .flex-control-nav.flex-control-thumbs img.flex-active {
  outline: 2px solid #ff5a3c; /* orange highlight similar to screenshot */
  box-shadow: 0 0 0 6px rgba(255,90,60,0.15);
}

/* Mobile layout: title above image and unified left alignment */
@media (max-width: 889px) {
  /* Show injected mobile title and hide default in-summary title to avoid duplication */
  .single-product .ax-mobile-title { display: block; font-size: 22px; line-height: 1.3; font-weight: 700; margin: 12px 16px; }
  .single-product .product .summary .product_title { display: none !important; }

  /* Place title above the gallery */
  .single-product .ax-mobile-title + .ax-product-gallery,
  .single-product .ax-mobile-title + .woocommerce-product-gallery {
    margin-top: 8px;
  }

  /* Ensure all key elements share the same left start (16px) */
  .single-product .product .summary,
  .single-product .ax-mobile-title,
  .single-product div.product .woocommerce-product-gallery,
  .single-product .ax-product-gallery.images,
  .single-product .product .summary > * {
    margin-left: 16px !important;
    margin-right: 16px !important;
  }

  /* Fine-tune spacing for price, installment, variations, description */
  .single-product .product .summary .price { margin-top: 8px; display: block; }
  .single-product .product .summary .variations_form { margin-top: 8px; }
  .single-product .product .summary .woocommerce-product-details__short-description { margin-top: 8px; }
}

/* Responsive tweaks */
@media (max-width: 992px) {
  .woocommerce div.product .woocommerce-product-gallery .flex-direction-nav .flex-prev { left: 8px; }
  .woocommerce div.product .woocommerce-product-gallery .flex-direction-nav .flex-next { right: 8px; }
  .single-product div.product .woocommerce-product-gallery { max-width: 100%; }
  .woocommerce div.product .flex-control-nav.flex-control-thumbs { gap: 16px; }
} 

@media (min-width: 992px) {
  /* Desktop header chips */
  .fs-header .fs-actions-section .fs-action-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    border-radius: 14px;
    background: #fff;
    border: 1px solid rgba(0,0,0,0.06);
    box-shadow: 0 6px 20px rgba(0,0,0,0.08);
    color: #111;
    line-height: 1;
    white-space: nowrap;
  }
  /* Cart: add label */
  .fs-header .fs-actions-section .fs-cart-wrapper > .fs-action-btn::after {
    content: ' კალათა';
    font-size: 14px;
    font-weight: 700;
    color: #111;
  }
  /* Account/Login: add label */
  .fs-header .fs-actions-section > .fs-action-btn[aria-label="Account"]::after {
    content: "შესვლა";
    font-weight: 600;
    font-size: 14px;
  }
  /* Keep icons sized nicely */
  .fs-header .fs-actions-section .fs-action-btn .fs-action-icon {
    width: 18px;
    height: 18px;
    display: inline-block;
  }
  .fs-header .fs-actions-section .fs-cart-wrapper > .fs-action-btn::after,
  .fs-header .fs-actions-section > .fs-action-btn[aria-label="Account"]::after {
    display: inline-block;
    margin-left: 10px;
  }
} 

/* Show search icon on mobile and tablet; hide on desktop */
@media (max-width: 991.98px) {
  .fs-action-btn.fs-mobile-only#fsMobileSearchBtn { display: inline-flex !important; }
}
@media (min-width: 992px) {
  .fs-action-btn.fs-mobile-only#fsMobileSearchBtn { display: none !important; }
}

@media (min-width: 992px) {
  /* Match sale button background + compact spacing for cart/login chips */
  .fs-header .fs-actions-section .fs-cart-wrapper > .fs-action-btn,
  .fs-header .fs-actions-section > .fs-action-btn[aria-label="Account"] {
    padding: 8px 12px !important;
    border-radius: 8px !important;
    background: rgba(255,255,255,0.12) !important;
    border: 1px solid rgba(255,255,255,0.35) !important;
    color: #fff !important;
    box-shadow: none !important;
  }
  .fs-header .fs-actions-section .fs-cart-wrapper > .fs-action-btn::after,
  .fs-header .fs-actions-section > .fs-action-btn[aria-label="Account"]::after {
    margin-left: 6px !important;
    color: #fff !important;
    font-weight: 600;
    font-size: 14px;
  }
  .fs-header .fs-actions-section .fs-action-btn .fs-action-icon {
    width: 18px; height: 18px; color: #fff !important;
  }
} 

@media (min-width: 992px) {
  /* Place cart badge inline next to the cart icon (right side of icon) */
  .fs-header .fs-actions-section .fs-cart-wrapper > .fs-action-btn {
    display: inline-flex;
    align-items: center;
  }
  .fs-header .fs-actions-section .fs-cart-wrapper > .fs-action-btn #fsCartBadge,
  .fs-header .fs-actions-section .fs-cart-wrapper > .fs-action-btn .fs-cart-badge {
    position: static !important;
    top: auto !important;
    right: auto !important;
    transform: none !important;
    display: inline-block !important;
    margin-left: 6px !important;   /* space after icon */
    margin-right: 6px !important;  /* space before "კალათა" label */
    background: #fbbf24 !important; /* keep yellow */
    color: #1f2937 !important;      /* dark text */
    font-size: 11px !important;
    font-weight: 600 !important;
    padding: 2px 6px !important;
    border-radius: 10px !important;
    min-width: 18px;
    text-align: center;
    line-height: 1;
    align-self: center;
  }
} 

@media (min-width: 769px) {
  /* Desktop: hide mobile-only My Account back button completely */
  .woocommerce-account .ax-account-back-bar,
  .woocommerce-account .ax-account-back-inline {
    display: none !important;
  }
}

@media (min-width: 992px) {
  /* Place the cart badge above-right of the cart icon (overlay) */
  .fs-header .fs-actions-section .fs-cart-wrapper > .fs-action-btn { position: relative; }
  .fs-header .fs-actions-section .fs-cart-wrapper > .fs-action-btn #fsCartBadge,
  .fs-header .fs-actions-section .fs-cart-wrapper > .fs-action-btn .fs-cart-badge {
    position: absolute !important;
    display: inline-block !important;
    /* tune to the top-right corner of the 18px icon inside 12px left padding */
    top: 2px !important;
    left: 28px !important;
    transform: none !important;
    margin: 0 !important;
    background: #fbbf24 !important;
    color: #1f2937 !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    padding: 2px 6px !important;
    border-radius: 10px !important;
    min-width: 18px;
    text-align: center;
    line-height: 1;
  }
  /* Bring the "კალათა" label closer to the icon */
  .fs-header .fs-actions-section .fs-cart-wrapper > .fs-action-btn::after { margin-left: 4px !important; }
} 

/* Axalia Global Color Overrides */
:root {
  --bricks-text-danger: #f6623c !important; /* use requested orange for any danger text/buttons that use this var */
  --bricks-bg-danger: #f5f7fa !important;  /* replace red-ish backgrounds with light gray-blue */
}

/* Buttons: WooCommerce & general */
.woocommerce .button,
button,
input[type="button"],
input[type="submit"],
.wp-block-button__link,
.bricks-button,
.brxe-button .bricks-button,
.fs-header .fs-actions-section .bricks-button,
a.button,
button.button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
  background-color: #f6623c !important;
  border-color: #f6623c !important;
  color: #fff !important;
}

/* Hover/focus state to a bit darker shade for accessibility */
.woocommerce .button:hover,
button:hover,
input[type="button"]:hover,
input[type="submit"]:hover,
.wp-block-button__link:hover,
.bricks-button:hover,
.brxe-button .bricks-button:hover,
.fs-header .fs-actions-section .bricks-button:hover,
a.button:hover,
button.button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover {
  background-color: #e85734 !important;
  border-color: #e85734 !important;
}

/* Remove any red backgrounds on alerts/notices and use light neutral instead */
.woocommerce-error,
:where(.brxe-alert).danger,
:where(.brxe-form) .form-group-error-message,
:where(.brxe-form) .message.error,
:where(.brxe-form) .file-result.show.danger,
.woocommerce-notices-wrapper .woocommerce-error,
.woocommerce-account form .woocommerce-password-strength.short,
.woocommerce-account form .woocommerce-password-strength.bad {
  background-color: #f5f7fa !important;
  color: #111 !important;
}

/* Error action buttons inside notices */
.woocommerce-error .button,
.woocommerce-notices-wrapper .woocommerce-error .button,
:where(.brxe-alert).danger .bricks-button {
  background-color: #f6623c !important;
  border-color: #f6623c !important;
  color: #fff !important;
}

/* Also update outlines/borders that used red */
.woocommerce .woocommerce-invalid input,
.woocommerce .woocommerce-invalid select,
.woocommerce .woocommerce-invalid textarea,
.woocommerce .woocommerce-invalid .select2-selection,
:where(.brxe-form) .form-group.invalid input,
:where(.brxe-form) .form-group.invalid select,
:where(.brxe-form) .form-group.invalid textarea {
  border-color: #f6623c !important;
}

/* Any residual red-ish chips/badges from theme */
.badge.onsale,
.woocommerce .products .badge.onsale,
.woocommerce.products .badge.onsale {
  color: #f6623c !important;
} 

/* Axalia: Header background light gray; keep buttons carrot; dark gray texts */
.fs-header,
.fs-header-wrapper .fs-header,
header.fs-header {
  background: #f5f7fa !important;
  background-color: #f5f7fa !important;
  border-bottom-color: rgba(0,0,0,0.06) !important;
}

/* Header general text color */
.fs-header, .fs-header * {
  color: #1f2937 !important; /* dark gray toward black */
}

/* Keep action chips & buttons carrot */
.fs-header .fs-actions-section .fs-cart-wrapper > .fs-action-btn,
.fs-header .fs-actions-section > .fs-action-btn[aria-label="Account"],
.fs-header .fs-actions-section .bricks-button,
.fs-header .fs-actions-section a.button,
.fs-header .fs-actions-section button,
.fs-header .fs-actions-section .button {
  background-color: #f6623c !important;
  border-color: #f6623c !important;
  color: #fff !important;
}
.fs-header .fs-actions-section .fs-action-btn .fs-action-icon { color: #fff !important; }

/* Navigation button text/icon color dark gray; keep carrot for explicit buttons if any */
.fs-navigation-btn {
  background: transparent !important;
  border: 1px solid rgba(0,0,0,0.08) !important;
  color: #1f2937 !important;
}
.fs-navigation-btn .fs-nav-icon,
.fs-navigation-btn .fs-nav-arrow {
  color: #1f2937 !important;
  stroke: #1f2937 !important;
}

/* Search input adjustments for contrast on light header */
.fs-search-input {
  background: #ffffff !important;
  color: #1f2937 !important;
}

/* Replace header reds used on hovers within header */
.fs-nav-dropdown-item:hover .fs-nav-item-icon,
.fs-nav-item:hover::before,
.fs-dropdown-categories li a:hover,
.fs-mobile-search-overlay .fs-dropdown-categories li a:hover,
.fs-mobile-search-overlay .fs-dropdown-categories li a:active {
  background-color: #f6623c !important;
} 

/* Axalia Header Navigation Button/Icon to match cart/login chips */
.fs-navigation-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 8px 12px !important;
  border-radius: 8px !important;
  background: rgba(255,255,255,0.12) !important; /* same as chips */
  border: 1px solid rgba(255,255,255,0.35) !important; /* stroke */
  color: #fff !important;
  box-shadow: none !important;
}
.fs-navigation-btn .fs-nav-icon,
.fs-navigation-btn .fs-nav-arrow {
  width: 18px !important;
  height: 18px !important;
  color: #fff !important;
  stroke: #fff !important;
  stroke-width: 2px !important;
}
.fs-navigation-btn:hover,
.fs-navigation-btn.active {
  background: rgba(255,255,255,0.18) !important;
  border-color: rgba(255,255,255,0.55) !important;
} 

/* Axalia: Dropdown search categories hover to darker gray */
.fs-dropdown-categories li a:hover,
.fs-mobile-search-overlay .fs-dropdown-categories li a:hover,
.fs-mobile-search-overlay .fs-dropdown-categories li a:active {
  background-color: #e5e7eb !important; /* slightly darker gray than #f5f5f5 */
  color: #333 !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.12) !important; /* neutral shadow */
  border-color: transparent !important;
} 

/* Axalia: Navigation button carrot with white content */
.fs-navigation-btn {
  background: #f6623c !important;
  border: 1px solid #f6623c !important;
  color: #fff !important;
}
.fs-navigation-btn .fs-nav-icon,
.fs-navigation-btn .fs-nav-arrow {
  color: #fff !important;
  stroke: #fff !important;
}
.fs-navigation-btn:hover,
.fs-navigation-btn.active {
  background: #e85734 !important;
  border-color: #e85734 !important;
  color: #fff !important;
} 

/* Axalia: Header cart/login buttons white with shadow & black content */
.fs-header .fs-actions-section .fs-cart-wrapper > .fs-action-btn,
.fs-header .fs-actions-section > .fs-action-btn[aria-label="Account"] {
  background: #ffffff !important;
  border: 1px solid rgba(0,0,0,0.08) !important;
  color: #111111 !important;
  box-shadow: 0 6px 20px rgba(0,0,0,0.08) !important;
}
.fs-header .fs-actions-section .fs-cart-wrapper > .fs-action-btn .fs-action-icon,
.fs-header .fs-actions-section > .fs-action-btn[aria-label="Account"] .fs-action-icon,
.fs-header .fs-actions-section .fs-cart-wrapper > .fs-action-btn::after,
.fs-header .fs-actions-section > .fs-action-btn[aria-label="Account"]::after {
  color: #111111 !important;
}
/* Ensure cart badge styling remains readable */
.fs-header .fs-actions-section .fs-cart-wrapper > .fs-action-btn #fsCartBadge,
.fs-header .fs-actions-section .fs-cart-wrapper > .fs-action-btn .fs-cart-badge {
  background: #fbbf24 !important;
  color: #1f2937 !important;
} 

/* Axalia: Stronger selectors for search input carrot border and icon */
.fs-header .fs-search-container .fs-search-input,
.fs-header .fs-search-input,
.fs-mobile-search-overlay .fs-search-input {
  border: 1px solid #f6623c !important;
  box-shadow: none !important;
}
.fs-header .fs-search-container .fs-search-input:focus,
.fs-header .fs-search-container .fs-search-input:hover,
.fs-header .fs-search-input:focus,
.fs-header .fs-search-input:hover,
.fs-mobile-search-overlay .fs-search-input:focus,
.fs-mobile-search-overlay .fs-search-input:hover {
  border-color: #f6623c !important;
  box-shadow: 0 0 0 2px rgba(246,98,60,0.08) !important;
}
.fs-header .fs-search-container .fs-search-icon,
.fs-header .fs-search-icon,
.fs-mobile-search-overlay .fs-search-icon {
  color: #f6623c !important;
} 

/* Axalia: Header sale (%) button carrot + white icon; nav label white */
.fs-sale-nav-btn {
  background: #f6623c !important;
  border: 1px solid #f6623c !important;
  color: #ffffff !important;
}
.fs-sale-nav-btn .fs-nav-icon,
.fs-sale-nav-btn svg,
.fs-sale-nav-btn i {
  color: #ffffff !important;
  stroke: #ffffff !important;
}
.fs-navigation-btn .fs-nav-text { color: #ffffff !important; } 

/* Single product: make "სრულად" toggle text orange, remove background */
.single-product .ax-extra-description .ax-extra-toggle {
  background: transparent !important;
  color: #ff5a3c !important;
  border: 0;
  padding: 0;
}

/* Ensure chevron inherits text color */
.single-product .ax-extra-description .ax-extra-toggle .chevron {
  color: inherit;
} 

/* Single product: description divider in carrot orange */
.single-product .ax-extra-description .ax-extra-divider {
  background: #ff5a3c !important;
}

/* Single product: installment button text carrot + keep neutral hover border */
.single-product .single-installment-button,
.single-product .single-installment-button .installment-text,
.single-product .single-installment-button .installment-amount,
.single-product .single-installment-button .installment-suffix {
  color: #ff5a3c !important;
}
.single-product .single-installment-button:hover {
  border-color: #e5e5e5 !important; /* remove red hover border */
} 

/* Single product: only installment amount orange; rest black */
.single-product .single-installment-button { color: #000 !important; }
.single-product .single-installment-button .installment-text,
.single-product .single-installment-button .installment-suffix { color: #000 !important; }
.single-product .single-installment-button .installment-amount { color: #ff5a3c !important; } 

/* Single product: product category links in carrot */
.single-product .product_meta a {
  color: #ff5a3c !important;
}
.single-product .product_meta a:hover {
  color: #ff5a3c !important; /* keep color on hover */
} 

/* Single product: thumbnails — no default border; show carrot border on hover only */
.single-product .ax-product-gallery__thumbs .ax-thumb {
  outline: none !important;
  box-shadow: none !important;
  background: transparent !important;
}
.single-product .ax-product-gallery__thumbs .ax-thumb:hover {
  outline: 2px solid #ff5a3c !important;
  box-shadow: none !important;
}
.single-product .ax-product-gallery__thumbs .ax-thumb.is-active {
  outline: none !important;
  box-shadow: none !important;
}

/* Ensure active thumbnail also shows carrot border on hover */
.single-product .ax-product-gallery__thumbs .ax-thumb.is-active:hover {
  outline: 2px solid #ff5a3c !important;
}
/* Fallback for Woo images */
.single-product .flex-control-nav.flex-control-thumbs img.flex-active:hover {
  outline: 2px solid #ff5a3c !important;
}

/* Fallback for Woo default thumbs */
.single-product .flex-control-nav.flex-control-thumbs img {
  outline: none !important;
  box-shadow: none !important;
}
.single-product .flex-control-nav.flex-control-thumbs img:hover {
  outline: 2px solid #ff5a3c !important;
}
.single-product .flex-control-nav.flex-control-thumbs img.flex-active {
  outline: none !important;
  box-shadow: none !important;
} 

/* Footer contact: mobile formatting for phone/address */
@media (max-width: 768px) {
  .footer-menu-section .contact-info .phone-text {
    white-space: nowrap !important;
  }
  .footer-menu-section .contact-info .address-text {
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
  }
} 

/* Footer layout & text rendering fixes on mobile */
@media (max-width: 768px) {
  .footer-menu-section { 
    -webkit-font-smoothing: antialiased; 
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
    transform: none !important;
    margin-left: 0 !important;
    left: 0 !important;
  }
  .footer-menu-section .footer-container { 
    padding: 0 24px 0 48px !important; 
  }
  .footer-menu-section .footer-menu-grid {
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 auto !important;
    grid-template-columns: 1fr 1fr !important;
    column-gap: 48px !important;
    row-gap: 32px !important;
    justify-content: space-between !important;
    justify-items: stretch !important;
    align-content: start !important;
    align-items: start !important;
    box-sizing: border-box !important;
  }
  .footer-menu-section .footer-menu-column { 
    width: 100% !important; 
    max-width: 100% !important;
    justify-self: stretch !important;
    text-align: left !important;
  }
  /* Nudge first and third columns left on phones */
  .footer-menu-section .footer-menu-grid .footer-menu-column:nth-child(1),
  .footer-menu-section .footer-menu-grid .footer-menu-column:nth-child(3) {
    margin-left: -20px !important;
  }
}

/* Override: show full address text (no clamp) on mobile */
@media (max-width: 768px) {
  .footer-menu-section .contact-info .address-text {
    display: block !important;
    -webkit-line-clamp: unset !important;
    -webkit-box-orient: unset !important;
    overflow: visible !important;
    white-space: normal !important;
    word-break: break-word !important;
  }
} 

/* Shop filter page (mobile): match add-to-cart button to carousel size */
@media (max-width: 768px) {
  /* Force the same sizing as carousel and neutralize pseudo text tricks */
  html body.woocommerce ul.products li.product .carousel-add-to-cart-btn,
  html body.woocommerce-page ul.products li.product .carousel-add-to-cart-btn {
    background: #f6623c !important;
    color: #ffffff !important;
    padding: 12px 20px !important;
    border-radius: 6px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    font-family: 'FiraGO-SemiBold', sans-serif !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: none !important;
    cursor: pointer !important;
    min-height: 40px !important;
    width: auto !important;
    text-indent: 0 !important;
  }

  /* Hover color in carrot shade */
  html body.woocommerce ul.products li.product .carousel-add-to-cart-btn:hover,
  html body.woocommerce-page ul.products li.product .carousel-add-to-cart-btn:hover {
    background: #e85734 !important;
  }

  /* Remove any ::before label injected elsewhere */
  html body.woocommerce ul.products li.product .carousel-add-to-cart-btn::before,
  html body.woocommerce-page ul.products li.product .carousel-add-to-cart-btn::before {
    content: none !important;
  }

  /* Nudge the first product down so it isn't overlapped by the mobile filter/header */
  .shop-layout .woocommerce ul.products li.product:first-child,
  .shop-layout .products-grid .product-card:first-child {
    margin-top: 18px !important;
  }
} 

/* Mobile: keep product card top border visible by disabling hover lift */
@media (max-width: 889px) {
  .shop-layout .woocommerce ul.products li.product:hover,
  .woocommerce ul.products li.product:hover,
  .products-grid .product-card:hover {
    transform: none !important;
  }
}

/* Touch devices: also neutralize hover lift when there is no real hover */
@media (hover: none) and (pointer: coarse) {
  .shop-layout .woocommerce ul.products li.product:hover,
  .woocommerce ul.products li.product:hover,
  .products-grid .product-card:hover {
    transform: none !important;
  }
} 

/* Stronger mobile override: out-specify theme hover to keep cards fixed */
@media (max-width: 889px) {
  .shop-layout .woocommerce ul.products li.product.product:hover,
  .woocommerce ul.products li.product.product:hover,
  .products-grid .product-card.product-card:hover {
    transform: none !important;
  }
}

@media (hover: none) and (pointer: coarse) {
  .shop-layout .woocommerce ul.products li.product.product:hover,
  .woocommerce ul.products li.product.product:hover,
  .products-grid .product-card.product-card:hover {
    transform: none !important;
  }
} 

/* Mobile: disable hover lift for related/product rp cards */
@media (max-width: 889px) {
  ul.products li.rp-shop-card .rp-card:hover { transform: none !important; }
}
@media (hover: none) and (pointer: coarse) {
  ul.products li.rp-shop-card .rp-card:hover { transform: none !important; }
} 

/* Mobile: avoid clipping of top border for first product card */
@media (max-width: 889px) {
  .shop-container { overflow: visible !important; }
  .woocommerce .products,
  .shop-layout .woocommerce ul.products,
  .products-grid { padding-top: 6px !important; overflow: visible !important; }
} 

/* Mobile filter drawer: make "გასუფთავება" neutral (no orange bg) */
@media (max-width: 768px) {
  .mobile-filter-header .clear-filter {
    background: transparent !important;
    color: #444 !important;
    border: none !important;
    box-shadow: none !important;
  }
  .mobile-filter-header .clear-filter svg,
  .mobile-filter-header .clear-filter svg path {
    color: #444 !important;
    stroke: #444 !important;
  }
  .mobile-filter-header .clear-filter:hover {
    background: #f6f6f6 !important;
    border: none !important;
    color: #333 !important;
  }
  /* Align filter title with X button center */
  .mobile-filter-header {
    align-items: center !important;
  }
  .mobile-filter-header .filter-title {
    line-height: 32px !important; /* match close button size */
    display: inline-block;
  }
} 

/* Mobile filter header refinements: remove hover effect, perfect align title */
@media (max-width: 768px) {
  .mobile-filter-header .clear-filter {
    transition: none !important;
  }
  .mobile-filter-header .clear-filter:hover,
  .mobile-filter-header .clear-filter:focus,
  .mobile-filter-header .clear-filter:active {
    background: transparent !important;
    color: #444 !important;
    border: none !important;
    box-shadow: none !important;
    transform: none !important;
  }
  .mobile-filter-header .filter-title {
    height: 32px !important;           /* match close icon size */
    line-height: 32px !important;
    display: inline-flex !important;
    align-items: center !important;    /* center text within the 32px box */
  }
} 

/* Final tweak: slight optical nudge for title alignment with X */
@media (max-width: 768px) {
  .mobile-filter-header .filter-title {
    margin: 0 !important;
    transform: translateY(2px) !important;
  }
} 

/* Category hover: label text orange */
.filter-checkbox:hover .checkbox-label { color: #f6623c !important; } 

/* Price slider labels: triangle pointer should match orange */
.price-label::after { border-top-color: #f6623c !important; } 

/* Order Details page – force full-width layout */
.page-template-template-order-details,
.page-template-template-order-details #brx-content,
.page-template-template-order-details .brxe-container,
.page-template-template-order-details .brxe-section,
.page-template-template-order-details .brxe-block {
  max-width: none !important;
  width: 100% !important;
}

/* Expand the custom wrapper used on the page */
.page-template-template-order-details .zstep {
  max-width: 1380px !important;
  width: 100% !important;
  padding-left: 16px !important;
  padding-right: 16px !important;
}

/* Give more space to main column by narrowing aside slightly */
.page-template-template-order-details .zstep-layout {
  grid-template-columns: 1fr 300px !important;
}
@media (max-width: 992px) {
  .page-template-template-order-details .zstep-layout {
    grid-template-columns: 1fr !important;
  }
}

/* Ensure inner cards stretch edge-to-edge within the grid */
.page-template-template-order-details .zcard,
.page-template-template-order-details .zsummary {
  width: 100% !important;
} 

/* Cart page – hide the site footer */
.page-template-template-cart .site-footer {
  display: none !important;
} 

/* Order Details page – hide the site footer */
.page-template-template-order-details .site-footer {
  display: none !important;
} 

/* Checkout page – hide the site footer */
.page-template-template-checkout .site-footer {
  display: none !important;
} 

/* Account edit custom design */
.ax-account-edit { max-width: 980px; width: 100%; margin: 0 auto; }
.ax-account-edit .ax-field-card,
.ax-account-edit .ax-toggle-card { background:#f3f4f6; border-radius:14px; padding:20px 22px; margin:16px 0; position:relative; }
.ax-account-edit .ax-field-label { display:block; font-weight:700; color:#111; margin-bottom:10px; font-size:15px; }
.ax-account-edit .ax-input { width:100%; background:#fff; border:1px solid #e5e7eb; border-radius:12px; font-size:17px; line-height:1.4; outline:none; padding:16px 48px 16px 16px; margin:0; }
.ax-account-edit .ax-input:focus { border-color:#cbd5e1; box-shadow:0 0 0 3px rgba(0,0,0,0.04) inset; }
.ax-account-edit .ax-has-icon .ax-edit-icon { position:absolute; right:26px; top:50%; transform:translateY(-50%); opacity:.6; pointer-events:none; }
.ax-account-edit .ax-toggle-card { display:flex; align-items:center; justify-content:space-between; }
.ax-account-edit .ax-toggle-label { font-weight:700; }
.ax-account-edit .ax-actions { margin-top:22px; }
.ax-account-edit .woocommerce-Button.button { width:100%; padding:16px; background:#e05a1f; color:#fff; border:none; border-radius:14px; font-weight:800; }
/* switch */
.ax-switch { position:relative; display:inline-block; width:60px; height:32px; }
.ax-switch input{ display:none; }
.ax-slider{ position:absolute; cursor:pointer; inset:0; background:#d1d5db; border-radius:999px; transition:.2s; }
.ax-slider:before{ content:""; position:absolute; height:24px; width:24px; left:4px; top:4px; background:#fff; border-radius:999px; transition:.2s; }
.ax-switch input:checked + .ax-slider{ background:#e05a1f; }
.ax-switch input:checked + .ax-slider:before{ transform:translateX(28px); } 

/* My Account: address card on edit-address (uses same zcard visual language) */
.woocommerce-account .ax-address-card {
  margin-bottom: 24px !important;
}

.woocommerce-account .ax-address-card-body {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
}

@media (min-width: 768px) {
  .woocommerce-account .ax-address-card-body {
    flex-direction: row !important;
    align-items: stretch !important;
  }
}

.woocommerce-account .ax-address-card-text {
  flex: 1 1 0 !important;
}

.woocommerce-account .ax-address-card-label {
  font-size: 12px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  color: #9ca3af !important;
  margin-bottom: 4px !important;
}

.woocommerce-account .ax-address-card-value {
  font-size: 15px !important;
  color: #111827 !important;
}

.woocommerce-account .ax-address-card-map {
  flex: 1 1 0 !important;
  min-height: 220px !important;
  border-radius: 12px !important;
  overflow: hidden !important;
}

.woocommerce-account .ax-address-card-map iframe {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
}

/* Hide native WooCommerce billing/shipping cards on edit-address; use custom zcard instead */
.woocommerce-account.woocommerce-edit-address .woocommerce-Addresses {
  display: none !important;
}

/* My Account address modal (inline version for edit-address) */
.ax-account-addr-modal {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.45);
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 2147483000;
}

.ax-account-addr-modal.active {
  display: flex;
}

.ax-account-addr-modal-inner {
  background: #ffffff;
  border-radius: 14px;
  width: 100%;
  max-width: 900px; /* match order-details .ax-modal-dialog */
  padding: 18px 18px 20px;
  position: relative;
  box-shadow: 0 20px 60px rgba(0,0,0,0.25);
}

.ax-account-addr-close {
  position: absolute;
  right: 10px;
  top: 10px;
  width: 36px;
  height: 36px;
  border-radius: 10px;
  border: 1px solid #e5e7eb;
  background: #fff;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  line-height: 1;
}

.ax-account-addr-title {
  margin: 0 0 12px;
  font-size: 20px;
  font-weight: 800;
}

.ax-account-addr-field label {
  display: block;
  margin-bottom: 6px;
  font-weight: 600;
}

.ax-account-addr-field input {
  width: 100%;
  padding: 12px 14px;
  border-radius: 10px;
  border: 1px solid #e5e7eb;
}

.ax-account-addr-hint {
  margin-top: 6px;
  font-size: 13px;
  color: #b91c1c;
}

.ax-account-addr-actions {
  margin-top: 16px;
  display: flex;
  justify-content: flex-end;
}

.ax-account-addr-modal-map {
  margin-top: 16px;
  border-radius: 12px;
  overflow: hidden;
  /* Match order-details .ax-map height so controls სრულად ჩანდეს */
  height: 420px;
}

.ax-account-addr-modal-map iframe {
  width: 100%;
  height: 100%;
  display: block;
}

/* Center X icon inside order-details address modal close button */
.ax-modal-close {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 18px !important;
  line-height: 1 !important;
}

/* Order details: make Google Maps control icons white inside orange buttons */
.page-template-template-order-details .ax-modal .gm-style button.gm-control-active img,
.page-template-template-order-details .ax-modal .gm-style button.gm-control-active.gm-fullscreen-control img {
  filter: brightness(0) invert(1);
}

/* Make My Account address buttons match global z-btn primary style */
.woocommerce-account .ax-address-card-actions .z-btn,
.woocommerce-account .ax-account-addr-actions .z-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: none !important;
  border-radius: 12px !important;
  cursor: pointer !important;
  text-decoration: none !important;
  font-weight: 700 !important;
  height: 48px !important;
  min-height: 48px !important;
  padding: 0 24px !important;
  font-size: 16px !important;
  background: #f6623c !important;
  color: #ffffff !important;
}

.woocommerce-account .ax-address-card-actions .z-btn:hover,
.woocommerce-account .ax-account-addr-actions .z-btn:hover {
  background: #e85732 !important;
}

/* Logged-in label for Account button */
@media (min-width: 992px) {
  body.logged-in .fs-header .fs-actions-section > .fs-action-btn[aria-label="Account"]::after {
    content: "პროფილი" !important;
  }
} 
/* Modern WooCommerce Account Navigation Sidebar */
/* Modernize account page greeting text and navigation */
.woocommerce-account .woocommerce-MyAccount-navigation {
  background: #ffffff !important;
  border: 1px solid rgba(0,0,0,0.08) !important;
  border-radius: 16px !important;
  box-shadow: 0 4px 20px rgba(0,0,0,0.08) !important;
  padding: 24px 0 !important;
  margin-top: 5px !important;
  margin-bottom: 32px !important;
  overflow: hidden !important;
}

/* Modern navigation items */
.woocommerce-account .woocommerce-MyAccount-navigation ul {
  margin: 0 !important;
  padding: 0 !important;
  gap: 4px !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation li {
  margin: 0 !important;
  padding: 0 16px !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation a {
  display: block !important;
  padding: 14px 20px !important;
  border-radius: 12px !important;
  color: #4b5563 !important;
  text-decoration: none !important;
  font-weight: 500 !important;
  font-size: 15px !important;
  line-height: 1.4 !important;
  transition: all 0.2s ease !important;
  background: transparent !important;
  border: none !important;
  margin: 0 !important;
}

/* Hover effects */
.woocommerce-account .woocommerce-MyAccount-navigation a:hover {
  background: #f8fafc !important;
  color: #f6623c !important;
  transform: translateX(4px) !important;
}

/* Active state */
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a {
  background: #fef2f0 !important;
  color: #f6623c !important;
  font-weight: 600 !important;
  border-left: 3px solid #f6623c !important;
  margin-left: -3px !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation .is-active a:hover {
  background: #fef2f0 !important;
  transform: none !important;
}

/* Smaller greeting text */
.woocommerce-account .woocommerce-MyAccount-content p:first-child {
  font-size: 18px !important;
  font-weight: 500 !important;
  color: #6b7280 !important;
  margin-bottom: 24px !important;
}

/* My Account main heading size */
.woocommerce-account h1 {
  font-size: 24px !important;
  line-height: 1.3 !important;
}

/* Greeting heading with profile icon (desktop + mobile) */
.woocommerce-account h1.ax-account-greeting-heading {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
}
.woocommerce-account .ax-account-heading-icon {
  width: 32px;
  height: 32px;
  border-radius: 999px;
  background: #fef2f0;
  color: #f6623c;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
}
.woocommerce-account .ax-account-heading-text {
  font-weight: 700;
}

/* My Account > Addresses: make address card titles smaller */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h2 {
  font-size: 20px !important;
  line-height: 1.3 !important;
}

/* My Account inner pages: modern card-like content (desktop + mobile, no layout changes) */
.woocommerce-account .woocommerce-MyAccount-content {
  font-size: 15px !important;
  color: #111827 !important;
}

/* Orders list */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table {
  border-collapse: separate !important;
  border-spacing: 0 10px !important; /* vertical breathing space between rows */
  background: transparent !important;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table thead th {
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #6b7280 !important;
  border-bottom: 1px solid #e5e7eb !important;
  background: #f9fafb !important;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table tbody tr {
  background: #ffffff !important;
  border-radius: 14px !important;
  box-shadow: 0 6px 18px rgba(15, 23, 42, 0.06) !important;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table tbody tr td {
  border-top: none !important;
  padding: 12px 16px !important;
  vertical-align: middle !important;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table tbody tr:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.09) !important;
}

/* Mobile: make orders table vertical card layout so info fits nicely */
@media (max-width: 768px) {
  .woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table {
    width: 100% !important;
    border-spacing: 0 !important;
  }

  /* Hide table header – labels მოვიტანოთ თითოეულ ველში */
  .woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table thead {
    display: none !important;
  }

  .woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table tbody,
  .woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table tr,
  .woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table td {
    display: block !important;
    width: 100% !important;
  }

  .woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table tbody tr {
    margin-bottom: 14px !important;
    padding: 12px 14px !important;
  }

  .woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table tbody tr td {
    padding: 6px 0 !important;
    font-size: 13px !important;
    border: 0 !important;
  }

  /* Label on top of each line: გამოიყენებს WooCommerce-ის data-title ატრიბუტს */
  .woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table tbody tr td::before {
    content: attr(data-title);
    display: block !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.03em !important;
    color: #9ca3af !important;
    margin-bottom: 2px !important;
  }

  /* Make main status/total row stand out ოდნავ */
  .woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table tbody tr td.order-total,
  .woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table tbody tr td.order-status {
    font-weight: 600 !important;
    color: #111827 !important;
  }
}

/* Address blocks */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address {
  background: #ffffff !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 16px !important;
  padding: 20px 24px !important;
  box-shadow: 0 6px 18px rgba(15, 23, 42, 0.04) !important;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses address {
  margin: 10px 0 0 0 !important;
  font-style: normal !important;
  line-height: 1.5 !important;
  color: #4b5563 !important;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .edit {
  margin-top: 16px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  font-weight: 500 !important;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .edit::before {
  content: "✏️" !important;
  font-size: 14px !important;
}

/* Account page layout improvements */
.woocommerce-account .woocommerce {
  gap: 32px !important;
}

.woocommerce-account .woocommerce-MyAccount-content {
  background: #ffffff !important;
  border: 1px solid rgba(0,0,0,0.08) !important;
  border-radius: 16px !important;
  box-shadow: 0 4px 20px rgba(0,0,0,0.08) !important;
  padding: 32px !important;
}

/* Mobile responsive */
@media (max-width: 768px) {
  .woocommerce-account .woocommerce {
    flex-direction: column !important;
  }
  
  /* Dashboard view: show nav only (centered), hide content */
  /* Use same styling when დაბრუნება ხდება detail-დან (ax-account-anim-exit), რომ ვიზუალი არ შეიცვალოს */
  body.woocommerce-account.ax-account-dashboard-view .woocommerce-MyAccount-navigation,
  body.ax-account-detail-view.ax-account-anim-exit .woocommerce-MyAccount-navigation {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 0 24px 0 !important;
    padding: 16px 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }
  body.woocommerce-account.ax-account-dashboard-view .woocommerce-MyAccount-content {
    display: none !important;
  }

  /* Mobile: remove card background from My Account content */
  .woocommerce-account .woocommerce-MyAccount-content {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation ul {
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    gap: 4px !important;
  }
  
  .woocommerce-account .woocommerce-MyAccount-navigation li {
    flex: 0 0 auto !important;
    min-width: 100% !important;
    padding: 0 16px !important;
  }
  
  .woocommerce-account .woocommerce-MyAccount-navigation a {
    position: relative;
    padding: 16px 40px 16px 4px !important;
    font-size: 18px !important;
    text-align: left !important;
    border-bottom: 1px solid #f1f1f1 !important;
  }

  /* Right arrow on mobile nav items */
  .woocommerce-account .woocommerce-MyAccount-navigation a::after {
    content: '›';
    position: absolute;
    right: 18px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 18px;
    color: #9ca3af;
    transition: transform 0.2s ease, color 0.2s ease;
  }
  .woocommerce-account .woocommerce-MyAccount-navigation .is-active a::after,
  .woocommerce-account .woocommerce-MyAccount-navigation a:active::after {
    transform: translateY(-50%) translateX(2px);
    color: #f6623c;
  }

  /* Mobile greeting heading: make larger and nudge right to align with menu */
  .woocommerce-account h1.ax-account-greeting-heading {
    margin-left: 24px !important;
    font-size: 22px !important;
  }

  /* Detail view: slide-in animation for account content */
  body.ax-account-detail-view .woocommerce-MyAccount-content {
    transform: translateX(100%);
    opacity: 0;
    will-change: transform, opacity;
  }
  body.ax-account-detail-view.ax-account-anim-ready .woocommerce-MyAccount-content {
    transform: translateX(0);
    opacity: 1;
    transition: transform 0.35s cubic-bezier(0.22, 0.61, 0.36, 1), opacity 0.3s ease-out;
  }
  /* Detail view: slide-out animation when leaving via back button */
  body.ax-account-detail-view.ax-account-anim-ready.ax-account-anim-exit .woocommerce-MyAccount-content {
    transform: translateX(100%);
    opacity: 0;
  }

  /* Container row for back button + title */
  .ax-account-back-bar {
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
    margin-bottom: 16px !important;
    margin-left: 16px !important;
  }

  /* Inline back button next to section title on detail views */
  .ax-account-back-inline {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 28px !important;
    height: 28px !important;
    margin-right: 4px !important;
    border-radius: 999px !important;
    border: 1px solid #e5e7eb !important;
    background: #ffffff !important;
    color: #111111 !important;
    font-size: 20px !important;
    line-height: 1 !important;
    cursor: pointer !important;
  }

  .ax-account-back-inline:focus {
    outline: none !important;
    box-shadow: 0 0 0 2px rgba(246,98,60,0.2) !important;
  }

  /* Ensure title itself არ იწევს ცალკე; გადაადგილებულია მთლიან ბართან ერთად */
  .ax-account-back-bar h1,
  .ax-account-back-bar h2 {
    margin-left: 0 !important;
  }
}

/* Icons for navigation items (optional enhancement) */
.woocommerce-account .woocommerce-MyAccount-navigation li[class*="woocommerce-MyAccount-navigation-link--dashboard"] a::before {
  content: "🏠" !important;
  margin-right: 8px !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation li[class*="woocommerce-MyAccount-navigation-link--orders"] a::before {
  content: "📦" !important;
  margin-right: 8px !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation li[class*="woocommerce-MyAccount-navigation-link--edit-address"] a::before {
  content: "📍" !important;
  margin-right: 8px !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation li[class*="woocommerce-MyAccount-navigation-link--edit-account"] a::before {
  content: "👤" !important;
  margin-right: 8px !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation li[class*="woocommerce-MyAccount-navigation-link--customer-logout"] a::before {
  content: "🚪" !important;
  margin-right: 8px !important;
}

/* Improve form styling on account edit page */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-EditAccountForm .form-row {
  margin-bottom: 20px !important;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-EditAccountForm input[type="text"],
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-EditAccountForm input[type="email"],
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-EditAccountForm input[type="password"] {
  background: #f9fafb !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 12px !important;
  padding: 12px 16px !important;
  font-size: 15px !important;
  transition: border-color 0.2s ease !important;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-EditAccountForm input:focus {
  border-color: #f6623c !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(246, 98, 60, 0.1) !important;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-EditAccountForm .woocommerce-Button {
  background: #f6623c !important;
  border: none !important;
  border-radius: 12px !important;
  padding: 14px 28px !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  transition: background-color 0.2s ease !important;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-EditAccountForm .woocommerce-Button:hover {
  background: #e85734 !important;
}

/* Logged-out My Account: modern login layout */
body.ax-account-logged-out .woocommerce-account .u-columns {
  display: flex !important;
  gap: 48px !important;
  align-items: center !important;
  justify-content: center !important;
}

body.ax-account-logged-out .woocommerce-account .u-column1 {
  flex: 0 0 420px !important;
  max-width: 420px !important;
}

body.ax-account-logged-out .woocommerce-account .woocommerce-form-login {
  background: #ffffff !important;
  border-radius: 18px !important;
  border: 1px solid #e5e7eb !important;
  box-shadow: 0 18px 45px rgba(15,23,42,0.12) !important;
  padding: 30px 28px !important;
}

/* Hide registration form entirely in logged-out layout */
body.ax-account-logged-out .woocommerce-account .woocommerce-form-register {
  display: none !important;
}

body.ax-account-logged-out .woocommerce-account .ax-login-logo-column {
  flex: 1 1 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

body.ax-account-logged-out .woocommerce-account .ax-login-logo {
  width: 100% !important;
  max-width: 360px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

body.ax-account-logged-out .woocommerce-account .ax-login-logo img,
body.ax-account-logged-out .woocommerce-account .ax-login-logo .fs-logo {
  max-width: 100% !important;
  height: auto !important;
}

/* Mobile: show only login form, hide logo column */
@media (max-width: 768px) {
  body.ax-account-logged-out .woocommerce-account .u-columns {
    display: block !important;
  }

  body.ax-account-logged-out .woocommerce-account .u-column1 {
    max-width: 100% !important;
  }

  body.ax-account-logged-out .woocommerce-account .ax-login-logo-column {
    display: none !important;
  }

  body.ax-account-logged-out .woocommerce-account .woocommerce-form-login {
    box-shadow: 0 10px 30px rgba(15,23,42,0.18) !important;
    border-radius: 18px !important;
    border-width: 0 !important;
  }
}

/* Login form: auth tabs on My Account (match popup style) */
body.ax-account-logged-out .woocommerce-account .woocommerce-form-login .ax-auth-tabs-inline {
  margin-bottom: 18px !important;
}

/* Registration modal */
.ax-login-register-modal {
  position: fixed;
  inset: 0;
  background: rgba(15,23,42,0.45);
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 9999;
}

.ax-login-register-modal-inner {
  background: #ffffff;
  border-radius: 18px;
  max-width: 480px;
  width: 92%;
  max-height: 90vh;
  overflow-y: auto;
  padding: 24px 22px 26px;
  box-shadow: 0 24px 60px rgba(15,23,42,0.35);
  position: relative;
}

.ax-login-register-close {
  position: absolute;
  top: 10px;
  right: 14px;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  border: none;
  background: #f3f4f6;
  cursor: pointer;
  font-size: 18px;
  line-height: 1;
}

body.ax-register-open .ax-login-register-modal {
  display: flex;
}

/* Hide native headings inside modal if duplicated */
.ax-login-register-modal .u-column2 h2 {
  display: none;
}

/* Remove emoji icons from navigation */
.woocommerce-account .woocommerce-MyAccount-navigation li[class*="woocommerce-MyAccount-navigation-link--dashboard"] a::before,
.woocommerce-account .woocommerce-MyAccount-navigation li[class*="woocommerce-MyAccount-navigation-link--orders"] a::before,
.woocommerce-account .woocommerce-MyAccount-navigation li[class*="woocommerce-MyAccount-navigation-link--edit-address"] a::before,
.woocommerce-account .woocommerce-MyAccount-navigation li[class*="woocommerce-MyAccount-navigation-link--edit-account"] a::before,
.woocommerce-account .woocommerce-MyAccount-navigation li[class*="woocommerce-MyAccount-navigation-link--customer-logout"] a::before {
  content: none !important;
  margin-right: 0 !important;
}

/* Make navigation and content sections equal width */
.woocommerce-account .woocommerce {
  display: flex !important;
  gap: 24px !important;
  align-items: flex-start !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation {
  flex: 1 !important;
  max-width: 300px !important;
  min-width: 250px !important;
}

.woocommerce-account .woocommerce-MyAccount-content {
  flex: 1 !important;
  min-width: 0 !important;
}

/* Mobile responsive - stack vertically */
@media (max-width: 768px) {
  .woocommerce-account .woocommerce {
    flex-direction: column !important;
  }
  
  .woocommerce-account .woocommerce-MyAccount-navigation {
    max-width: none !important;
    min-width: auto !important;
    width: 100% !important;
  }
  
  .woocommerce-account .woocommerce-MyAccount-content {
    width: 100% !important;
  }
}

/* Ensure both navigation and content sections have equal height */
.woocommerce-account .woocommerce {
  display: flex !important;
  gap: 24px !important;
  align-items: stretch !important; /* This makes both sections stretch to same height */
}

.woocommerce-account .woocommerce-MyAccount-navigation {
  flex: 1 !important;
  max-width: 300px !important;
  min-width: 250px !important;
  display: flex !important;
  flex-direction: column !important;
}

.woocommerce-account .woocommerce-MyAccount-content {
  flex: 1 !important;
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
}

/* Ensure the navigation content fills the available height */
.woocommerce-account .woocommerce-MyAccount-navigation ul {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
}

/* Mobile responsive - stack vertically but maintain equal heights */
@media (max-width: 768px) {
  .woocommerce-account .woocommerce {
    flex-direction: column !important;
    align-items: stretch !important;
  }
  
  /* Detail views: hide sidebar nav, show content full width */
  body.ax-account-detail-view .woocommerce-MyAccount-navigation {
    display: none !important;
  }
  /* Back animation: show nav again underneath sliding content to avoid white gap */
  body.ax-account-detail-view.ax-account-anim-exit .woocommerce-MyAccount-navigation {
    display: block !important;
  }
  body.ax-account-detail-view .woocommerce-MyAccount-content {
    display: block !important;
    width: 100% !important;
    max-width: 360px !important;
    margin: 40px auto 0 auto !important; /* increased gap under title on mobile detail views */
    padding: 0 16px !important;
  }
}

/* Fix navigation section height to match content section exactly */
.woocommerce-account .woocommerce-MyAccount-navigation {
  flex: 1 !important;
  max-width: 300px !important;
  min-width: 250px !important;
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important; /* Ensure full height */
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  height: 100% !important; /* Fill available height */
  padding: 24px 0 !important; /* Add padding to match content section */
}

/* Ensure content section also uses full height */
.woocommerce-account .woocommerce-MyAccount-content {
  flex: 1 !important;
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important; /* Ensure full height */
}

/* Make sure both sections have identical height by using min-height */
.woocommerce-account .woocommerce {
  display: flex !important;
  gap: 24px !important;
  align-items: stretch !important;
  min-height: 500px !important; /* Set minimum height to ensure both sections are tall enough */
}

@media (max-width: 1024px) {
  /* Subtle left nudge to visually center the card */
  .shop-content .products-grid > li,
  .products-grid > li,
  .woocommerce ul.products li.product,
  .woocommerce-page ul.products li.product,
  #products-container > li.product {
    transform: translateX(-10px) !important;
  }
}
/* Cancel the nudge on tablet widths and center properly */
@media (min-width: 760px) and (max-width: 900px) {
  .shop-content .products-grid,
  .products-grid,
  .woocommerce ul.products,
  .woocommerce-page ul.products,
  #products-container {
    display: grid !important;
    grid-template-columns: 1fr !important;
    justify-content: center !important;
    gap: 20px !important;
  }
  .shop-content .products-grid > li,
  .products-grid > li,
  .woocommerce ul.products li.product,
  .woocommerce-page ul.products li.product,
  #products-container > li.product {
    transform: none !important;
    margin: 0 auto !important;
    width: 100% !important;
  }
}

/* Show footer on shop archive & product category pages (override mobile hide) */
body.post-type-archive-product #footer,
body.tax-product_cat #footer,
body.post-type-archive-product footer,
body.tax-product_cat footer {
  display: block !important;
  visibility: visible !important;
  height: auto !important;
}
/* Ensure content leaves space above footer on mobile */
@media (max-width: 768px) {
  body.post-type-archive-product .shop-content,
  body.tax-product_cat .shop-content {
    padding-bottom: 120px !important;
  }
} 

/* Ensure footer is the last element and sits at the bottom on shop pages */
body.post-type-archive-product #brx-content,
body.tax-product_cat #brx-content {
  display: flex !important;
  flex-direction: column !important;
  min-height: 100vh !important;
}
body.post-type-archive-product .shop-container,
body.tax-product_cat .shop-container {
  flex: 1 0 auto !important;
}
body.post-type-archive-product footer,
body.tax-product_cat footer,
body.post-type-archive-product #footer,
body.tax-product_cat #footer {
  margin-top: auto !important;
  position: relative !important;
  z-index: 1 !important;
} 

/* Tablet layout: stack filter above products to prevent clipping (~769-992px) */
@media (min-width: 769px) and (max-width: 992px) {
  .shop-layout { flex-direction: column !important; }
  .shop-filter { position: static !important; width: 100% !important; max-width: none !important; height: auto !important; }
  .shop-content { max-width: 100% !important; width: 100% !important; overflow: visible !important; }
  .shop-layout .products-grid,
  .shop-layout .woocommerce ul.products { grid-template-columns: 1fr !important; justify-content: center !important; gap: 20px !important; }
} 

/* Hide the standalone mobile search icon button across all widths */
.fs-action-btn.fs-mobile-only#fsMobileSearchBtn { display: none !important; } 

/* Tablet off-canvas filter: behave like mobile between 769–992px */
@media (min-width: 769px) and (max-width: 992px) {
  .mobile-shop-header { display: flex !important; }
  .desktop-only { display: none !important; }

  .shop-filter {
    position: fixed !important;
    top: 0 !important;
    right: -320px !important;
    width: 320px !important;
    height: 100vh !important;
    background: #fff !important;
    z-index: 999999 !important;
    transition: right 0.3s ease !important;
    overflow-y: auto !important;
    box-shadow: -4px 0 20px rgba(0,0,0,0.08) !important;
  }
  .shop-filter.active { right: 0 !important; }

  .filter-overlay {
    display: none !important;
    position: fixed !important;
    top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(0,0,0,0.5) !important;
    z-index: 999998 !important;
  }
  .filter-overlay.active { display: block !important; }

  body.filter-open { overflow: hidden !important; }
} 

/* Tablet (769–992px): make filter UI identical to mobile */
@media (min-width: 769px) and (max-width: 992px) {
  /* Hide desktop sidebar filter */
  .sidebar { display: none !important; }

  /* Show mobile header (same as phone) */
  .mobile-filter-header { display: flex !important; align-items: center !important; justify-content: space-between !important; padding: 16px !important; border-bottom: 1px solid #eee !important; background: #fff !important; }
  .mobile-filter-header .filter-title { font-size: 15px !important; font-weight: 500 !important; }
  .mobile-filter-header .close-filter { width: 32px !important; height: 32px !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; border: none !important; background: none !important; }
  .mobile-filter-header .clear-filter { display: inline-flex !important; align-items: center !important; gap: 6px !important; background: transparent !important; color: #666 !important; border: none !important; padding: 8px 12px !important; }

  /* Off‑canvas panel same size as phone */
  .shop-filter { position: fixed !important; top: 0 !important; right: -320px !important; width: 320px !important; height: 100vh !important; background: #fff !important; z-index: 999999 !important; transition: right .3s ease !important; overflow-y: auto !important; box-shadow: -4px 0 20px rgba(0,0,0,.08) !important; padding: 16px !important; }
  .shop-filter.active { right: 0 !important; }
  .filter-overlay { display: none !important; position: fixed !important; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0,0,0,.5) !important; z-index: 999998 !important; }
  .filter-overlay.active { display: block !important; }
  body.filter-open { overflow: hidden !important; }

  /* Inner padding like mobile */
  .filter-content { padding: 16px !important; }

  /* Price inputs: ensure both min/max fields fit */
  .price-inputs { gap: 12px !important; }
  .price-input-group label { min-width: 40px !important; }
  .price-input-group input { width: 100px !important; padding: 6px 8px !important; }
} 

/* Tablet (769–990px): match mobile filter button size and fix grid offset */
@media (min-width: 769px) and (max-width: 990px) {
  /* Make the filter button same size as mobile */
  .mobile-shop-header { display: flex !important; padding: 16px 12px !important; gap: 10px !important; justify-content: space-between !important; flex-direction: row-reverse !important; }
  .mobile-filter-button { min-width: 160px !important; padding: 8px 16px !important; flex: 0 0 auto !important; width: auto !important; }
  .sorting-button { min-width: 160px !important; flex: 0 0 auto !important; width: auto !important; }

  /* Lower the first row so its top isn't clipped */
  body.post-type-archive-product .shop-layout .products-grid,
  body.post-type-archive-product .shop-layout .woocommerce ul.products,
  body.tax-product_cat .shop-layout .products-grid,
  body.tax-product_cat .shop-layout .woocommerce ul.products {
    padding-top: 30px !important;
  }

  /* Ensure off-canvas filter panel matches mobile size */
  .shop-filter { width: 320px !important; right: -320px !important; }
  .shop-filter.active { right: 0 !important; }
} 

@media (min-width: 769px) and (max-width: 992px) {
  /* Header: title + clear on the same line; X as orange circle */
  .mobile-filter-header { display: flex !important; align-items: center !important; justify-content: space-between !important; gap: 10px !important; }
  .mobile-filter-header .filter-title { display: inline-block !important; margin: 0 !important; font-weight: 700 !important; }
  .mobile-filter-header .clear-filter { margin-left: auto !important; display: inline-flex !important; align-items: center !important; gap: 6px !important; }
  .mobile-filter-header .close-filter { width: 36px !important; height: 36px !important; border-radius: 9999px !important; background: #f6623c !important; color: #fff !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; box-shadow: 0 4px 12px rgba(0,0,0,0.12) !important; }
  .mobile-filter-header .close-filter svg, .mobile-filter-header .close-filter svg path { color: #fff !important; stroke: #fff !important; }

  /* Price section: first price row on line 1 (min), second on line 2 (max) */
  .price-inputs { display: grid !important; grid-template-columns: 1fr !important; gap: 12px !important; }
  .price-input-group { display: grid !important; grid-template-columns: 38px 1fr !important; align-items: center !important; gap: 8px !important; }
  .price-input-group input { width: 100% !important; }
} 

/* Tablet (769–992px): use ONLY the mobile header/buttons (hide desktop row) */
@media (min-width: 769px) and (max-width: 992px) {
  .shop-header { display: none !important; }
  .desktop-only { display: none !important; }
  .mobile-shop-header { display: flex !important; }
  .mobile-filter-button { display: inline-flex !important; }
} 

/* Tablet (769–992px): refine filter to exactly mirror mobile layout */
@media (min-width: 769px) and (max-width: 992px) {
  /* Header controls must always be visible */
  .mobile-filter-header { padding: 12px 16px !important; position: sticky !important; top: 0 !important; z-index: 1 !important; background: #fff !important; }
  .mobile-filter-header .close-filter { display: inline-flex !important; width: 32px !important; height: 32px !important; align-items: center !important; justify-content: center !important; }
  .mobile-filter-header .clear-filter { display: inline-flex !important; align-items: center !important; gap: 6px !important; }

  /* Price inputs behave like mobile: two columns, labels + full-width inputs */
  .price-inputs { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 12px !important; align-items: center !important; width: 100% !important; }
  .price-input-group { display: grid !important; grid-template-columns: 38px 1fr !important; align-items: center !important; gap: 8px !important; width: 100% !important; }
  .price-input-group label { min-width: 38px !important; text-align: left !important; }
  .price-input-group input { width: 100% !important; box-sizing: border-box !important; }
} 

@media (min-width: 769px) and (max-width: 992px) {
  /* Enforce exactly two rows: "დან [ფასი] ₾" and "მდე [ფასი] ₾" */
  .price-inputs { display: grid !important; grid-template-columns: 1fr !important; row-gap: 12px !important; margin: 0 auto !important; max-width: 320px !important; }
  /* Hide any separator/dash or stray node between the two groups */
  .price-inputs > :not(.price-input-group) { display: none !important; }
  /* Each row layout */
  .price-input-group { display: grid !important; grid-template-columns: 38px 1fr auto !important; align-items: center !important; column-gap: 8px !important; }
  .price-input-group label { grid-column: 1 !important; min-width: 38px !important; text-align: left !important; margin: 0 !important; }
  .price-input-group input { grid-column: 2 !important; width: 100% !important; box-sizing: border-box !important; }
  .price-input-group .gel,
  .price-input-group .currency,
  .price-input-group .lari,
  .price-input-group .price-currency,
  .price-input-group > :last-child { grid-column: 3 !important; white-space: nowrap !important; padding-left: 6px !important; }
} 

/* 992–1200px: add 20px space above product cards to avoid overlap */
@media (min-width: 992px) and (max-width: 1200px) {
  body.post-type-archive-product .shop-layout .products-grid,
  body.post-type-archive-product .shop-layout .woocommerce ul.products,
  body.tax-product_cat .shop-layout .products-grid,
  body.tax-product_cat .shop-layout .woocommerce ul.products {
    padding-top: 50px !important;
  }
} 

/* Mobile: show one blog post per row */
@media (max-width: 768px) {
  .blog-grid { grid-template-columns: 1fr !important; }
} 

/* Mobile & tablet: hide inline search bar, show icon that opens overlay */
@media (max-width: 991.98px) {
  .fs-search-section { display: none !important; }
  .fs-action-btn.fs-mobile-only#fsMobileSearchBtn { display: inline-flex !important; }
}
/* Desktop: show inline search, hide mobile overlay trigger */
@media (min-width: 992px) {
  .fs-search-section { display: block !important; }
  .fs-action-btn.fs-mobile-only#fsMobileSearchBtn { display: none !important; }
} 

@media (max-width: 991.98px) {
  /* Clean search icon styling on mobile/tablet */
  .fs-action-btn.fs-mobile-only#fsMobileSearchBtn {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    color: inherit !important;
  }
  .fs-action-btn.fs-mobile-only#fsMobileSearchBtn .fs-action-icon {
    color: #1f2937 !important; /* dark gray */
    stroke: #1f2937 !important;
  }
} 

@media (max-width: 991.98px) {
  /* Ensure actions (search, cart, account) are visible and aligned */
  .fs-header .fs-header-container { padding-right: 12px !important; }
  .fs-actions-section { 
    display: flex !important; 
    align-items: center !important; 
    gap: 10px !important; 
    margin-left: auto !important; 
    flex-shrink: 0 !important;
  }
  .fs-actions-section .fs-action-btn { padding: 8px !important; }
  .fs-cart-wrapper { display: inline-flex !important; align-items: center !important; }
} 

@media (max-width: 576px) {
  .footer-menu-section .footer-menu-grid .footer-menu-column:nth-child(1),
  .footer-menu-section .footer-menu-grid .footer-menu-column:nth-child(3) {
    margin-left: -20px !important;
  }
} 

@media (max-width: 768px) {
  .footer-menu-section .contact-info li a { 
    min-width: 0 !important; /* allow flex child to shrink */
  }
  .footer-menu-section .contact-info li a .address-text {
    display: inline-block !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
} 

@media (max-width: 768px) {
  .footer-menu-section .contact-info .address-text .mobile-break { display: block !important; height: 0; }
}
@media (min-width: 769px) {
  .footer-menu-section .contact-info .address-text .mobile-break { display: inline !important; }
} 

.footer-menu-section .contact-info .showrooms-title {
  margin: 16px 0 8px 0;
  font-weight: 700;
  padding-bottom: 12px;
  border-bottom: 2px solid rgba(255,255,255,0.2);
} 

@media (max-width: 768px) {
  .footer-menu-section { padding-top: 10px !important; }
} 

@media (max-width: 768px) {
  .footer-menu-section .social-icons { justify-content: flex-start !important; }
}
@media (max-width: 576px) {
  .footer-menu-section .social-icons { justify-content: flex-start !important; }
} 

/* Global: raise footer columns by 40px */
.footer-menu-section { padding-top: 10px !important; } 

@media (min-width: 993px) {
  .mobile-filter-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 16px !important;
    border-bottom: 1px solid #eee !important;
    background: #fff !important;
  }
  .mobile-filter-header .close-filter { display: none !important; }

  .mobile-filter-header .clear-filter {
    margin-left: auto !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 8px 12px !important;
    background: transparent !important;
    color: #444 !important;
    border: none !important;
    box-shadow: none !important;
    transition: none !important;
  }
  .mobile-filter-header .clear-filter svg,
  .mobile-filter-header .clear-filter svg path {
    color: #444 !important;
    stroke: #444 !important;
  }
  .mobile-filter-header .clear-filter:hover,
  .mobile-filter-header .clear-filter:focus,
  .mobile-filter-header .clear-filter:active {
    background: transparent !important;
    color: #444 !important;
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
  }

  .mobile-filter-header .filter-title {
    height: 32px !important;
    line-height: 32px !important;
    display: inline-flex !important;
    align-items: center !important;
    margin: 0 !important;
    transform: translateY(2px) !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    color: #333 !important;
  }
} 

/* Center single product layout like other sections */
body.single-product .container,
body.single-product .site-content,
body.single-product .content-area,
body.single-product .site-main,
body.single-product .main-container,
body.single-product .content-container,
body.single-product .woocommerce,
body.single-product .woocommerce .container,
body.single-product #primary,
body.single-product #content,
body.single-product #main,
body.single-product .wrap,
body.single-product .container-fluid,
body.single-product .bricks-container {
  max-width: 1200px !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
}

/* Product wrapper itself should also be centered */
body.single-product .woocommerce div.product {
  max-width: 1200px !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
} 

/* High-specificity duplicate to ensure centering wins */
html body.single-product .container,
html body.single-product .site-content,
html body.single-product .content-area,
html body.single-product .site-main,
html body.single-product .main-container,
html body.single-product .content-container,
html body.single-product .woocommerce,
html body.single-product .woocommerce .container,
html body.single-product #primary,
html body.single-product #content,
html body.single-product #main,
html body.single-product .wrap,
html body.single-product .container-fluid,
html body.single-product .bricks-container {
  max-width: 1200px !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

html body.single-product .woocommerce div.product {
  max-width: 1200px !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
} 

/* Desktop: make single product body full-width with 40px left gap */
@media (min-width: 1200px) {
  html body.single-product .site,
  html body.single-product .site-container,
  html body.single-product .wrap,
  html body.single-product .container-fluid,
  html body.single-product .bricks-container,
  html body.single-product .container,
  html body.single-product .content-container,
  html body.single-product .site-content,
  html body.single-product .content-area,
  html body.single-product main.site-main,
  html body.single-product #primary,
  html body.single-product #content,
  html body.single-product #main,
  html body.single-product .woocommerce,
  html body.single-product .woocommerce .container,
  html body.single-product .woocommerce div.product {
    max-width: none !important;
    width: calc(100vw - 40px) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 40px !important;
    padding-right: 0 !important;
  }

  html body.single-product nav.woocommerce-breadcrumb {
    margin-left: 0 !important;
    padding-left: 40px !important;
  }
} 

/* Desktop: center single product body at a fixed max width */
@media (min-width: 1200px) {
  html body.single-product .site,
  html body.single-product .site-container,
  html body.single-product .wrap,
  html body.single-product .container-fluid,
  html body.single-product .bricks-container,
  html body.single-product .container,
  html body.single-product .content-container,
  html body.single-product .site-content,
  html body.single-product .content-area,
  html body.single-product main.site-main,
  html body.single-product #primary,
  html body.single-product #content,
  html body.single-product #main,
  html body.single-product .woocommerce,
  html body.single-product .woocommerce .container,
  html body.single-product .woocommerce div.product {
    max-width: 1280px !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  /* Center breadcrumb to same container */
  html body.single-product nav.woocommerce-breadcrumb {
    max-width: 1280px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
} 

/* Desktop: slightly wider centered container (1360px) */
@media (min-width: 1200px) {
  html body.single-product .site,
  html body.single-product .site-container,
  html body.single-product .wrap,
  html body.single-product .container-fluid,
  html body.single-product .bricks-container,
  html body.single-product .container,
  html body.single-product .content-container,
  html body.single-product .site-content,
  html body.single-product .content-area,
  html body.single-product main.site-main,
  html body.single-product #primary,
  html body.single-product #content,
  html body.single-product #main,
  html body.single-product .woocommerce,
  html body.single-product .woocommerce .container,
  html body.single-product .woocommerce div.product {
    max-width: 1360px !important;
  }
  html body.single-product nav.woocommerce-breadcrumb {
    max-width: 1360px !important;
  }
} 

/* Desktop: wider centered container (1440px) */
@media (min-width: 1200px) {
  html body.single-product .site,
  html body.single-product .site-container,
  html body.single-product .wrap,
  html body.single-product .container-fluid,
  html body.single-product .bricks-container,
  html body.single-product .container,
  html body.single-product .content-container,
  html body.single-product .site-content,
  html body.single-product .content-area,
  html body.single-product main.site-main,
  html body.single-product #primary,
  html body.single-product #content,
  html body.single-product #main,
  html body.single-product .woocommerce,
  html body.single-product .woocommerce .container,
  html body.single-product .woocommerce div.product {
    max-width: 1440px !important;
  }
  html body.single-product nav.woocommerce-breadcrumb {
    max-width: 1440px !important;
  }
} 

/* Desktop: widen right summary column */
@media (min-width: 1200px) {
  .single-product .content-area .product { column-gap: 40px; }
  .single-product .woocommerce div.product div.images { width: 40% !important; max-width: 40% !important; flex: 0 0 40% !important; }
  .single-product .woocommerce div.product .summary.entry-summary { width: 60% !important; max-width: 60% !important; flex: 0 0 60% !important; }
}

/* Single product: raise related products section by 40px */
html body.single-product #related-products-carousel-4315-section {
  margin-top: -40px !important;
}

/* Single product: raise gallery thumbs by 10px */
.single-product .ax-product-gallery__thumbs,
.single-product .flex-control-nav.flex-control-thumbs {
  margin-top: -10px !important;
}

/* Single product: always 20px gap before related products */
.single-product .woocommerce div.product .summary.entry-summary {
  margin-bottom: 0 !important;
}
.single-product #related-products-carousel-4315-section,
.single-product .related.products,
.single-product [id^="related-products-carousel"],
.single-product .related-products-carousel-4315-section {
  margin-top: 20px !important;
  padding-top: 0 !important;
}

/* Header breakpoint correction: desktop >=769px, mobile <=768px */
@media (min-width: 769px) {
  /* Force desktop header */
  .fs-search-section { display: block !important; }
  .fs-action-btn.fs-mobile-only#fsMobileSearchBtn { display: none !important; }
}

@media (max-width: 768px) {
  /* Force mobile header */
  .fs-search-section { display: none !important; }
  .fs-action-btn.fs-mobile-only#fsMobileSearchBtn { display: inline-flex !important; }
  .fs-header .fs-header-container { padding-right: 12px !important; }
  .fs-actions-section { 
    display: flex !important; 
    align-items: center !important; 
    gap: 10px !important; 
    margin-left: auto !important; 
    flex-shrink: 0 !important;
  }
  .fs-actions-section .fs-action-btn { padding: 8px !important; }
  .fs-cart-wrapper { display: inline-flex !important; align-items: center !important; }
  .fs-action-btn.fs-mobile-only#fsMobileSearchBtn {
    background: transparent !important; border: none !important; box-shadow: none !important; color: inherit !important;
  }
  .fs-action-btn.fs-mobile-only#fsMobileSearchBtn .fs-action-icon { color: #1f2937 !important; stroke: #1f2937 !important; }
}

/* Header fix: keep desktop layout and prevent overflow between 769–1127px */
@media (min-width: 769px) and (max-width: 1127px) {
  .fs-header .fs-header-container {
    padding-left: 8px !important;
    padding-right: 8px !important;
    column-gap: 8px !important;
    justify-content: space-between !important;
  }
  .fs-header .fs-actions-section { gap: 6px !important; }
  .fs-header .fs-actions-section .fs-action-btn { margin: 0 !important; }
}

/* Header: hide only the Account button between 991px and 769px */
@media (min-width: 769px) and (max-width: 991.98px) {
  .fs-header .fs-actions-section > .fs-action-btn[aria-label="Account"] { display: none !important; }
}

/* Header: cart button - remove white background between 991px and 768px */
@media (min-width: 768px) and (max-width: 991.98px) {
  .fs-header .fs-actions-section .fs-cart-wrapper > .fs-action-btn {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
  }
}

/* Mobile home: lower new-popular-carousel by 5px */
@media (max-width: 768px) {
  .home .new-popular-carousel,
  .front-page .new-popular-carousel,
  .homepage-container .new-popular-carousel {
    margin-top: 90px !important;
  }
}

/* Mobile home: enforce 15px vertical spacing between sections */
@media (max-width: 768px) {
  .home main.site-main > * + *,
  .front-page main.site-main > * + *,
  .home .homepage-container > * + *,
  .front-page .homepage-container > * + * {
    margin-top: 15px !important;
  }
  /* Normalize specific carousels to 15px top margin */
  .home .new-popular-carousel,
  .front-page .new-popular-carousel,
  .homepage-container .new-popular-carousel {
    margin-top: 15px !important;
  }
}

/* Mobile home: set new-popular-carousel 40px below main slider */
@media (max-width: 768px) {
  .home .new-popular-carousel,
  .front-page .new-popular-carousel,
  .homepage-container .new-popular-carousel {
    margin-top: 120px !important;
  }
}

/* Mobile home: 15px only between banner and the next carousel */
@media (max-width: 768px) {
  .home [class*="banner"] + [class*="carousel"],
  .front-page [class*="banner"] + [class*="carousel"],
  .homepage-container [class*="banner"] + [class*="carousel"] {
    margin-top: 15px !important;
  }
}

/* Single product: responsive centering and consistent gaps (<=1199px) */
@media (max-width: 1199px) {
  /* Stack and center image & summary */
  .single-product .content-area .product { column-gap: 0 !important; row-gap: 20px !important; }
  .single-product .woocommerce div.product div.images,
  .single-product .woocommerce div.product .summary.entry-summary {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  /* Remove any positional offsets that push summary left */
  .single-product .woocommerce div.product .summary.entry-summary {
    position: static !important;
    top: auto !important; left: auto !important; right: auto !important;
    margin-left: 0 !important; margin-right: 0 !important;
  }
  /* Normalize wide lines within summary */
  .single-product .summary .ax-price-with-installment,
  .single-product .summary .product-dimensions-container {
    width: 100% !important;
    margin-left: 0 !important; margin-right: 0 !important;
    padding-left: 0 !important; padding-right: 0 !important;
  }
  /* Vertical rhythm inside summary */
  .single-product .summary.entry-summary > * + * { margin-top: 12px !important; }
}

/* Single product: use mobile full-width layout between 1030px and 768px */
@media (min-width: 768px) and (max-width: 1030px) {
  /* Full-width outer wrappers with mobile paddings */
  body.single-product .container,
  body.single-product .site-content,
  body.single-product .content-area,
  body.single-product .site-main,
  body.single-product .main-container,
  body.single-product .content-container,
  body.single-product .woocommerce,
  body.single-product .bricks-container,
  body.single-product #primary,
  body.single-product #content,
  body.single-product #main {
    max-width: none !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  /* Product wrapper and columns */
  .single-product .content-area .product { column-gap: 0 !important; row-gap: 20px !important; }
  .woocommerce div.product { width: 100% !important; margin: 0 !important; padding-left: 0 !important; padding-right: 0 !important; }
  .woocommerce div.product div.images,
  .woocommerce div.product .summary.entry-summary { width: 100% !important; max-width: 100% !important; flex: 0 0 100% !important; }

  /* Reset any offsets on summary */
  .woocommerce div.product .summary.entry-summary { top: 0 !important; left: auto !important; right: auto !important; margin-left: 0 !important; margin-right: 0 !important; }

  /* Normalize wide rows inside summary */
  .single-product .summary .ax-price-with-installment,
  .single-product .summary .product-dimensions-container { width: 100% !important; margin-left: 0 !important; margin-right: 0 !important; padding-left: 0 !important; padding-right: 0 !important; }
}

/* Single product: force centered full-width between 1030px and 768px (high specificity) */
@media (min-width: 768px) and (max-width: 1030px) {
  html body.single-product #primary,
  html body.single-product #content,
  html body.single-product #main,
  html body.single-product main.site-main,
  html body.single-product .site-content,
  html body.single-product .content-area,
  html body.single-product .woocommerce,
  html body.single-product .bricks-container,
  html body.single-product .container,
  html body.single-product .main-container,
  html body.single-product .content-container {
    max-width: none !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  /* Reset breadcrumb left shift */
  html body.single-product nav.woocommerce-breadcrumb { margin-left: 0 !important; padding-left: 0 !important; }
  /* Stack columns */
  .single-product .content-area .product { column-gap: 0 !important; row-gap: 20px !important; }
  html body.single-product .woocommerce div.product { width: 100% !important; margin: 0 !important; padding-left: 0 !important; padding-right: 0 !important; }
  html body.single-product .woocommerce div.product div.images,
  html body.single-product .woocommerce div.product .summary.entry-summary { width: 100% !important; max-width: 100% !important; flex: 0 0 100% !important; }
  html body.single-product .woocommerce div.product .summary.entry-summary { position: static !important; top: auto !important; left: auto !important; right: auto !important; margin-left: 0 !important; margin-right: 0 !important; }
  html body.single-product .summary .ax-price-with-installment,
  html body.single-product .summary .product-dimensions-container { width: 100% !important; margin-left: 0 !important; margin-right: 0 !important; padding-left: 0 !important; padding-right: 0 !important; }
}

/* Single product: always 15px gap before related-products-carousel-4315-section (all widths) */
html body.single-product #related-products-carousel-4315-section,
html body.single-product .related-products-carousel-4315-section {
  margin-top: 15px !important;
  padding-top: 0 !important;
}

/* Fix dimension icons: use Unicode escapes to avoid encoding issues */
.single-product .summary .dimension-icon.width::before { content: "\2194"; }
.single-product .summary .dimension-icon.length::before { content: "\2197"; }
.single-product .summary .dimension-icon.height::before { content: "\2195"; }

/* Single product: exactly 15px gap between summary and related products */
.single-product .woocommerce div.product .summary.entry-summary {
  margin-bottom: 15px !important;
}
.single-product #related-products-carousel-4315-section,
.single-product .related-products-carousel-4315-section {
  margin-top: 0 !important;
}
/* Prevent collapsed margins from inner elements adding extra space */
.single-product .woocommerce div.product .summary.entry-summary > *:last-child {
  margin-bottom: 0 !important;
}

/* Single product: 15px gap before footer under related products */
html body.single-product #related-products-carousel-4315-section,
html body.single-product .related-products-carousel-4315-section {
  margin-bottom: 0 !important;
}
html body.single-product #related-products-carousel-4315-section + footer.site-footer,
html body.single-product .related-products-carousel-4315-section + footer.site-footer {
  margin-top: 15px !important;
}

@media (max-width: 768px) {
  .address-text .ax-br-mobile { display: block; }
}
