/*
 Theme Name:   Astra Child — Vintage Top Shelf
 Theme URI:    https://vintagetopshelf.co.uk
 Description:  Child theme for Vintage Top Shelf
 Author:        Vintage Top Shelf
 Template:      astra
 Version:       1.0.0
 Text Domain:   astra-child
*/
/* =========================================================
   VINTAGE TOP SHELF - CLEANED MASTER CSS
   ========================================================= */


/* =========================================================
   1. SIDEBAR / CATEGORY WIDGETS
   ========================================================= */

.widget_nav_menu ul li a,
.widget_product_categories ul li a {
  display: block;
  padding: 3px 0 !important;
  line-height: 1 !important;
  font-size: 15px !important;
}

.widget_nav_menu ul li ul li a,
.widget_product_categories ul li ul li a {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  line-height: 1 !important;
}


/* =========================================================
   2. ARCHIVE / PAGE TITLES / CATEGORY DESCRIPTIONS
   ========================================================= */

.archive.tax-product_cat .woocommerce-products-header__title,
.post-type-archive-product .woocommerce-products-header__title {
  text-align: left !important;
  font-size: 28px !important;
  line-height: 1.2 !important;
  margin: 0 0 12px 0 !important;
  color: #111 !important;
}

.woocommerce-products-header__title,
.ast-archive-description .woocommerce-products-header__title,
.page .entry-title {
  font-weight: 700 !important;
}

.ast-woo-shop-archive .site-content .ast-container {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

.ast-woo-shop-archive header.woocommerce-products-header {
  margin-bottom: 0 !important;
  padding-bottom: 10px !important;
}

.ast-woo-shop-archive #content .ast-container {
  padding-top: 10px !important;
}

.tax-product_cat .woocommerce-products-header,
.post-type-archive-product .woocommerce-products-header {
  margin-bottom: 18px !important;
}

.tax-product_cat .woocommerce-products-header,
.tax-product_cat .ast-woo-shop-product-description,
.tax-product_cat .ast-archive-description,
.tax-product_cat .term-description,
.tax-product_cat .woocommerce-products-header__title,
.post-type-archive-product .ast-woo-shop-product-description,
.post-type-archive-product .ast-archive-description,
.post-type-archive-product .term-description {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.tax-product_cat .term-description,
.tax-product_cat .archive-description,
.tax-product_cat .ast-archive-description,
.tax-product_cat .ast-woo-shop-product-description,
.post-type-archive-product .term-description,
.post-type-archive-product .archive-description,
.post-type-archive-product .ast-archive-description,
.post-type-archive-product .ast-woo-shop-product-description {
  margin: 0 0 20px 0 !important;
  padding: 0 0 10px 0 !important;
  text-align: left !important;
  font-size: 16px !important;
  line-height: 1.6 !important;
  color: #111 !important;
}


/* =========================================================
   3. HOME HERO SPACING
   ========================================================= */

body.home .home-hero {
  margin-bottom: 1px !important;
  padding-bottom: 0 !important;
}

body.home .home-next {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

body.home .home-hero > *:last-child,
body.home .home-hero *:last-child {
  margin-bottom: 0 !important;
}


/* =========================================================
   4. PRODUCT GALLERY
   ========================================================= */

.woocommerce-product-gallery .flex-viewport,
.woocommerce-product-gallery__image img,
.woocommerce-product-gallery__wrapper .zoomImg,
.flex-control-thumbs img {
  object-fit: contain !important;
  height: auto !important;
}


/* =========================================================
   5. WOOCOMMERCE PRODUCT GRID
   ========================================================= */

.woocommerce ul.products {
  margin-left: -6px !important;
  margin-right: -6px !important;
}

.woocommerce ul.products li.product {
  margin-bottom: 18px !important;
  padding-left: 6px !important;
  padding-right: 6px !important;
  text-align: left !important;
}

.woocommerce ul.products li.product .astra-shop-summary-wrap {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  text-align: left;
  padding: 2px 0 0 0 !important;
  height: 100%;
}

.woocommerce ul.products li.product a img {
  margin-bottom: 0 !important;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
  width: 100%;
  max-width: 100%;
  margin: 0 0 2px 0 !important;
  white-space: normal;
  text-align: left !important;
  line-height: 1.1 !important;
  font-size: 16px !important;
  order: 10;
}

.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .price * {
  margin: 0 0 2px 0 !important;
  text-align: left !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  color: #111 !important;
  order: 20;
}

.woocommerce ul.products li.product .wlr_product_message,
.woocommerce ul.products li.product .wlr-product-message,
.woocommerce ul.products li.product .wlr-earned-points-message,
.woocommerce ul.products li.product .vts-home-earn-points {
  display: block !important;
  width: 100% !important;
  margin: 0 0 4px 0 !important;
  font-size: 14px !important;
  line-height: 1.15 !important;
  text-align: left !important;
  order: 30;
}

.woocommerce ul.products li.product .wlr_product_message *,
.woocommerce ul.products li.product .wlr-product-message *,
.woocommerce ul.products li.product .wlr-earned-points-message * {
  font-size: inherit !important;
  line-height: inherit !important;
  text-align: inherit !important;
}

.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .added_to_cart {
  display: block !important;
  width: 100% !important;
  margin: auto 0 0 0 !important;
  padding: 8px 10px !important;
  text-align: center !important;
  line-height: 1.2 !important;
  border-radius: 999px;
  order: 40;
}


/* =========================================================
   6. MOBILE SHOP GRID POLISH
   ========================================================= */

@media (max-width: 768px) {
  .woocommerce-page .site-content .ast-container,
  .woocommerce .site-content .ast-container {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  .woocommerce ul.products {
    margin-left: -4px !important;
    margin-right: -4px !important;
  }

  .woocommerce ul.products li.product {
    margin-bottom: 14px !important;
    padding-left: 4px !important;
    padding-right: 4px !important;
  }

  .woocommerce ul.products li.product a img {
    margin-bottom: 1px !important;
  }

  .woocommerce ul.products li.product .astra-shop-summary-wrap {
    min-height: 150px !important;
    padding-top: 0 !important;
  }

  .woocommerce ul.products li.product .woocommerce-loop-product__title {
    font-size: 15px !important;
    line-height: 1.12 !important;
    margin: 0 0 2px 0 !important;
    min-height: 3.35em !important;
  }

  .woocommerce ul.products li.product .price,
  .woocommerce ul.products li.product .price * {
    font-size: 16px !important;
    line-height: 1.1 !important;
  }

  .woocommerce ul.products li.product .wlr_product_message,
  .woocommerce ul.products li.product .wlr-product-message,
  .woocommerce ul.products li.product .wlr-earned-points-message,
  .woocommerce ul.products li.product .vts-home-earn-points,
  .woocommerce ul.products li.product .wlr_product_message *,
  .woocommerce ul.products li.product .wlr-product-message *,
  .woocommerce ul.products li.product .wlr-earned-points-message * {
    font-size: 14px !important;
    line-height: 1.1 !important;
  }

  .woocommerce ul.products li.product .button,
  .woocommerce ul.products li.product .added_to_cart {
    margin-top: auto !important;
    padding: 6px 8px !important;
    font-size: 14px !important;
  }

  .woocommerce .woocommerce-ordering {
    margin-top: 0 !important;
    margin-bottom: 8px !important;
  }

  .woocommerce .woocommerce-ordering select,
  .woocommerce .woocommerce-ordering .orderby {
    padding-top: 6px !important;
    padding-bottom: 6px !important;
  }
}


/* =========================================================
   7. HEADER + TOP BAR
   ========================================================= */

@media (min-width: 769px) {
  .site-logo-img img,
  .custom-logo-link img,
  .ast-site-identity img {
    display: block !important;
    width: 1100px !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 auto !important;
  }

  .ast-desktop .site-branding,
  .ast-desktop .ast-site-identity,
  .ast-desktop .site-header-focus-item,
  .ast-desktop .ast-builder-grid-row,
  .ast-desktop .ast-builder-grid-row-container,
  .ast-desktop .main-header-bar,
  .ast-desktop .ast-primary-header-bar {
    margin: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .ast-desktop .main-navigation {
    margin-top: 0 !important;
  }
}

@media (max-width: 768px) {
  .ast-mobile-header-wrap,
  .ast-mobile-header-wrap .main-header-bar-wrap,
  .ast-mobile-header-wrap .ast-builder-grid-row-container,
  .ast-mobile-header-wrap .ast-builder-grid-row,
  .ast-mobile-header-wrap .site-header-section,
  .ast-mobile-header-wrap .site-header-focus-item {
    margin: 0 !important;
    padding: 0 !important;
  }

  .ast-mobile-header-wrap .ast-primary-header-bar,
  .ast-mobile-header-wrap .main-header-bar {
    min-height: 40px !important;
    padding: 0 !important;
  }

  .ast-mobile-header-wrap .site-branding,
  .ast-mobile-header-wrap .ast-site-identity,
  .ast-header-break-point .site-branding,
  .ast-header-break-point .ast-site-identity {
    display: flex !important;
    width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
    justify-content: center !important;
    align-items: center !important;
    text-align: center !important;
  }

  .ast-mobile-header-wrap .custom-logo-link,
  .ast-header-break-point .custom-logo-link {
    display: flex !important;
    width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
    justify-content: center !important;
    align-items: center !important;
  }

  .ast-mobile-header-wrap .site-branding img,
  .ast-mobile-header-wrap .custom-logo-link img,
  .ast-header-break-point .site-branding img,
  .ast-header-break-point .custom-logo-link img {
    display: block !important;
    width: 340px !important;
    max-width: 94vw !important;
    height: auto !important;
    margin: 0 auto !important;
  }
}

.ast-header-html-1,
.ast-header-html-2,
.ast-header-html-3,
.ast-builder-layout-element[data-section*="html"] {
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
}

.vts-topbar {
  position: relative;
  left: 50%;
  width: 100vw;
  margin-left: -50vw;
  box-sizing: border-box;
  background: #000;
  color: #fff;
  text-align: center;
  padding: 8px 12px !important;
  font-size: 13px !important;
  line-height: 1.3 !important;
  font-weight: 500;
}

.vts-topbar strong {
  font-weight: 700;
}

.vts-topbar__item,
.vts-topbar__sep {
  display: inline;
}

.vts-topbar__sep {
  margin: 0 8px;
  opacity: 0.8;
}

@media (max-width: 768px) {
  .vts-topbar {
    padding: 5px 10px !important;
    font-size: 12px !important;
    line-height: 1.25 !important;
  }

  .vts-topbar__item,
  .vts-topbar__sep {
    display: block;
    margin: 0;
  }

  .vts-topbar__sep {
    line-height: 0.8;
  }
}


/* =========================================================
   8. HOMEPAGE LAYOUT / HEADER ICONS / CTA / MOBILE
   ========================================================= */

body.home .site-content > .ast-container,
body.home .site-content .ast-container {
  max-width: 1400px !important;
  margin: 0 auto !important;
  padding-left: 40px !important;
  padding-right: 40px !important;
  display: flex !important;
  align-items: flex-start !important;
  gap: 36px !important;
  box-sizing: border-box !important;
}

body.home .site-content .widget-area {
  width: 280px !important;
  max-width: 280px !important;
  flex: 0 0 280px !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.home .site-content .content-area {
  flex: 1 1 auto !important;
  width: auto !important;
  min-width: 0 !important;
}

body.home .site-content .widget-area .widget,
body.home .site-content .widget-area aside,
body.home .site-content .widget-area .wp-block-group {
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

@media (min-width: 769px) {
  body.home .site-content .ast-container,
  body.home .site-content .widget-area,
  body.home .site-content .content-area,
  body.home .site-content aside,
  body.home .site-content .widget,
  body.home .site-content .wp-block-group {
    border-left: 0 !important;
    border-right: 0 !important;
    box-shadow: none !important;
  }

  body.home .ast-header-html-2,
  body.home .ast-builder-layout-element[data-section="section-hb-html-2"] {
    position: relative !important;
    transform: translateX(244px) !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
  }

  body.home .ast-header-social-wrap,
  body.home .ast-builder-social-element,
  body.home .ast-builder-layout-element[data-section*="social"] {
    position: relative !important;
    transform: translateX(96px) !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
  }

  body.home .ast-header-social-wrap .ast-builder-social-icons-wrap,
  body.home .ast-builder-social-element .ast-builder-social-icons-wrap {
    justify-content: flex-start !important;
  }

  body.home .ast-header-html-2 .vts-contact-icon,
  body.home .ast-builder-layout-element[data-section="section-hb-html-2"] .vts-contact-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.home .ast-builder-layout-element[data-section="section-hb-widget-1"],
  body.home .ast-header-widget-area,
  body.home .header-widget-area {
    position: relative !important;
    transform: translateX(-70px) !important;
  }

  body.home .ast-builder-layout-element[data-section="section-hb-button-2"] .ast-custom-button,
  body.home .ast-builder-layout-element[data-section="section-hb-button-2"] .button,
  body.home .ast-builder-layout-element[data-section="section-hb-button-2"] a {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    min-height: 0 !important;
    line-height: 1.2 !important;
    border-radius: 999px !important;
  }
}

body.home .wp-block-button,
body.home .wp-block-buttons,
body.home .uagb-buttons__outer-wrap {
  width: 100% !important;
  text-align: center !important;
  justify-content: center !important;
}

body.home .wp-block-button__link,
body.home .uagb-buttons-repeater a,
body.home .uagb-buttons__outer-wrap a {
  display: inline-block !important;
  width: min(460px, 100%) !important;
  padding: 16px 28px !important;
  box-sizing: border-box !important;
  text-align: center !important;
}

body.home .woocommerce ul.products {
  gap: 28px !important;
}

body.home .woocommerce ul.products li.product {
  padding-left: 10px !important;
  padding-right: 10px !important;
}

body.home .vts-home-earn-points {
  margin: 2px 0 6px 0;
  text-align: center;
  font-size: 14px;
  line-height: 1.15;
}

@media (max-width: 768px) {
  body.home .site-content > .ast-container,
  body.home .site-content .ast-container {
    display: block !important;
    max-width: 100% !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
    gap: 0 !important;
  }

  body.home .site-content .widget-area {
    display: none !important;
  }

  body.home .site-content .content-area {
    width: 100% !important;
    max-width: 100% !important;
    flex: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.home .entry-content,
  body.home .entry-content p,
  body.home .entry-content .wp-block-group,
  body.home .entry-content .wp-block-columns,
  body.home .entry-content .wp-block-column {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.home .entry-content p {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  body.home .woocommerce ul.products,
  body.home ul.products {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  body.home .woocommerce ul.products li.product,
  body.home ul.products li.product {
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.home .woocommerce ul.products li.product a img,
  body.home ul.products li.product a img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    margin-bottom: 8px !important;
  }

  body.home .woocommerce ul.products li.product .woocommerce-loop-product__title {
    font-size: 15px !important;
    line-height: 1.12 !important;
    margin-bottom: 4px !important;
  }

  body.home .woocommerce ul.products li.product .price,
  body.home .woocommerce ul.products li.product .price * {
    font-size: 15px !important;
    line-height: 1.1 !important;
  }

  body.home .woocommerce ul.products li.product .button,
  body.home .woocommerce ul.products li.product .added_to_cart {
    width: 100% !important;
    padding: 10px 8px !important;
    font-size: 14px !important;
  }

  body.home .wp-block-button__link,
  body.home .uagb-buttons-repeater a,
  body.home .uagb-buttons__outer-wrap a {
    width: 100% !important;
    max-width: 100% !important;
    padding: 14px 18px !important;
  }

  body.home .vts-home-earn-points {
    margin: 2px 0 5px 0;
    font-size: 13px;
    text-align: center !important;
  }
}


/* =========================================================
   9. SPECIAL PAGE / FEATURED GRID
   ========================================================= */

.page-id-6046 .entry-header {
  display: none;
}

.featured-products-grid ul.products {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 20px;
}

.featured-products-grid ul.products li.product {
  width: auto !important;
  margin: 0 !important;
}

@media (max-width: 768px) {
  .featured-products-grid ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}


/* =========================================================
   10. CONTACT ICON
   ========================================================= */

a.vts-contact-icon {
  display: inline-flex;
  align-items: center;
  line-height: 1;
}

a.vts-contact-icon img {
  display: inline-block !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: 30px;
  height: 30px;
}


/* =========================================================
   11. COMPLIANZ COOKIE BANNER
   Visual styling only
   ========================================================= */

.cmplz-cookiebanner {
  background: #ffffff !important;
  color: #111111 !important;
  border: 2px solid #111111 !important;
  border-radius: 18px !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.18) !important;
}

.cmplz-cookiebanner .cmplz-title {
  color: #111111 !important;
  font-weight: 700 !important;
}

.cmplz-cookiebanner .cmplz-message,
.cmplz-cookiebanner .cmplz-description {
  color: #222222 !important;
  line-height: 1.45 !important;
}

.cmplz-cookiebanner a {
  color: #8f1d1d !important;
  text-decoration: underline !important;
}

.cmplz-cookiebanner a:hover {
  color: #111111 !important;
}

.cmplz-cookiebanner .cmplz-btn {
  min-height: 52px !important;
  border: 2px solid transparent !important;
  border-radius: 12px !important;
  box-shadow: none !important;
  font-weight: 700 !important;
  transition: all 0.2s ease-in-out !important;
}

.cmplz-cookiebanner .cmplz-btn.cmplz-accept {
  background: #d92c2c !important;
  color: #ffffff !important;
  border-color: #d92c2c !important;
}

.cmplz-cookiebanner .cmplz-btn.cmplz-accept:hover {
  background: #111111 !important;
  color: #ffffff !important;
  border-color: #111111 !important;
}

.cmplz-cookiebanner .cmplz-btn.cmplz-deny,
.cmplz-cookiebanner .cmplz-btn.cmplz-view-preferences,
.cmplz-cookiebanner .cmplz-btn.cmplz-save-preferences,
.cmplz-cookiebanner .cmplz-btn.cmplz-manage-options {
  background: #f3efef !important;
  color: #111111 !important;
  border-color: #d9d1d1 !important;
}

.cmplz-cookiebanner .cmplz-btn.cmplz-deny:hover,
.cmplz-cookiebanner .cmplz-btn.cmplz-view-preferences:hover,
.cmplz-cookiebanner .cmplz-btn.cmplz-save-preferences:hover,
.cmplz-cookiebanner .cmplz-btn.cmplz-manage-options:hover {
  background: #111111 !important;
  color: #ffffff !important;
  border-color: #111111 !important;
}

.cmplz-cookiebanner .cmplz-buttons {
  gap: 12px !important;
}

.cmplz-cookiebanner .cmplz-close,
.cmplz-cookiebanner .cmplz-close svg {
  fill: #111111 !important;
  color: #111111 !important;
}

.cmplz-cookiebanner .cmplz-logo img {
  max-height: 42px !important;
  width: auto !important;
}

.cmplz-contact-telephone {
  display: none !important;
}

@media (max-width: 768px) {
  .cmplz-cookiebanner {
    border-radius: 14px !important;
  }

  .cmplz-cookiebanner .cmplz-btn {
    min-height: 48px !important;
    font-size: 15px !important;
  }
}


/* =========================================================
   12. FOOTER
   ========================================================= */

.site-footer .ast-header-html-1,
.site-footer .ast-builder-layout-element[data-section="section-fb-html-1"],
.site-footer .ast-builder-layout-element[data-section*="html-1"] {
  position: relative !important;
  left: 50% !important;
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: -50vw !important;
  margin-right: 0 !important;
  padding: 10px 20px !important;
  box-sizing: border-box !important;
  background: #000 !important;
  color: #fff !important;
  text-align: center !important;
}

.site-footer .ast-header-html-1 *,
.site-footer .ast-builder-layout-element[data-section="section-fb-html-1"] *,
.site-footer .ast-builder-layout-element[data-section*="html-1"] * {
  color: #fff !important;
  text-align: center !important;
  margin: 0 !important;
}

.site-footer .ast-builder-grid-row {
  display: grid !important;
  grid-template-columns: 1fr !important;
  justify-items: center !important;
  text-align: center !important;
}

.site-footer .ast-builder-footer-grid-columns {
  width: 100% !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  text-align: center !important;
}

.site-footer .ast-footer-navigation,
.site-footer nav.ast-footer-navigation,
.site-footer .footer-adv .menu-menu-container,
.site-footer .footer-adv .menu {
  text-align: center !important;
}

.site-footer .ast-footer-navigation .menu,
.site-footer .footer-adv .menu {
  display: flex !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 8px 18px !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

.site-footer .ast-footer-navigation .menu li,
.site-footer .footer-adv .menu li {
  display: inline-block !important;
  float: none !important;
}

.site-footer .ast-footer-navigation .menu a {
  text-align: center !important;
}

.site-footer .site-below-footer-wrap,
.site-footer .site-below-footer-wrap .ast-builder-grid-row,
.site-footer .site-below-footer-wrap .ast-builder-footer-grid-columns,
.site-footer .site-below-footer-wrap .site-footer-section,
.site-footer .ast-footer-copyright,
.site-footer .ast-footer-copyright * {
  text-align: center !important;
  justify-content: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.site-footer p {
  margin-bottom: 4px !important;
  line-height: 1.3 !important;
}

@media (min-width: 769px) {
  .site-footer .ast-builder-layout-element[data-section="section-fb-html-2"],
  .site-footer .ast-footer-html-2 {
    position: relative !important;
    left: 50% !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: -50vw !important;
    margin-right: 0 !important;
    background: #000 !important;
    padding: 10px 20px !important;
    box-sizing: border-box !important;
    text-align: center !important;
  }

  .site-footer .ast-builder-layout-element[data-section="section-fb-html-2"] p,
  .site-footer .ast-footer-html-2 p,
  .site-footer .ast-builder-layout-element[data-section="section-fb-html-2"] span,
  .site-footer .ast-footer-html-2 span {
    background: transparent !important;
    color: #fff !important;
    margin: 0 !important;
    text-align: center !important;
  }
}

@media (max-width: 768px) {
  .site-footer .ast-header-html-1,
  .site-footer .ast-builder-layout-element[data-section="section-fb-html-1"],
  .site-footer .ast-builder-layout-element[data-section*="html-1"] {
    padding: 10px 14px !important;
  }

  .site-footer .ast-builder-layout-element[data-section="section-fb-html-1"],
  .site-footer .ast-footer-html-1 {
    position: relative !important;
    left: 50% !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: -50vw !important;
    margin-right: 0 !important;
    background: #000 !important;
    padding: 10px 14px !important;
    box-sizing: border-box !important;
    text-align: center !important;
  }

  .site-footer .ast-builder-layout-element[data-section="section-fb-html-1"] p,
  .site-footer .ast-footer-html-1 p,
  .site-footer .ast-builder-layout-element[data-section="section-fb-html-1"] span,
  .site-footer .ast-footer-html-1 span {
    background: transparent !important;
    color: #fff !important;
    margin: 0 !important;
    text-align: center !important;
  }
}


/* =========================================================
   13. MY ACCOUNT PAGE
   ========================================================= */

.woocommerce-account .site-content .ast-container {
  max-width: 1320px !important;
  margin: 0 auto !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}

@media (min-width: 769px) {
  .woocommerce-account .entry-content,
  .woocommerce-account .woocommerce {
    max-width: 1200px !important;
    margin: 0 auto !important;
  }

  .woocommerce-account .woocommerce {
    display: grid !important;
    grid-template-columns: 320px minmax(0, 1fr) !important;
    gap: 36px !important;
    align-items: start !important;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation {
    grid-column: 1 !important;
    align-self: start !important;
    width: 320px !important;
    max-width: 320px !important;
    margin: 0 !important;
  }

  .woocommerce-account .woocommerce-MyAccount-content {
    grid-column: 2 !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding-left: 0 !important;
  }

  .woocommerce-account form.woocommerce-EditAccountForm,
  .woocommerce-account .woocommerce-EditAccountForm,
  .woocommerce-account .woocommerce-form-row,
  .woocommerce-account .woocommerce-address-fields,
  .woocommerce-account .edit-account {
    width: 100% !important;
    max-width: 100% !important;
  }

  .woocommerce-account .woocommerce-EditAccountForm .woocommerce-form-row {
    float: none !important;
    clear: none !important;
    display: block !important;
    width: 100% !important;
    margin-bottom: 16px !important;
  }

  .woocommerce-account .woocommerce-EditAccountForm input,
  .woocommerce-account .woocommerce-EditAccountForm select,
  .woocommerce-account .woocommerce-EditAccountForm textarea {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  .woocommerce-account .woocommerce-form-row label {
    display: block !important;
    width: auto !important;
    white-space: normal !important;
    line-height: 1.35 !important;
    margin-bottom: 6px !important;
  }

  .woocommerce-account .entry-content > .wp-block-image,
  .woocommerce-account .entry-content > figure.wp-block-image {
    max-width: 900px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  border: 1px solid #e7e7e7;
  background: #fff;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li {
  margin: 0 !important;
  border-bottom: 1px solid #ececec;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li:last-child {
  border-bottom: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
  display: block !important;
  padding: 20px 20px !important;
  font-size: 17px !important;
  line-height: 1.35 !important;
  text-decoration: none !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a {
  font-weight: 700 !important;
}

.woocommerce-account .woocommerce-MyAccount-content h1,
.woocommerce-account .woocommerce-MyAccount-content h2,
.woocommerce-account .woocommerce-MyAccount-content h3 {
  line-height: 1.2 !important;
}

.woocommerce-account .entry-title,
.woocommerce-account h1.entry-title {
  margin-bottom: 24px !important;
}

.woocommerce-account .entry-content .wp-block-image,
.woocommerce-account .entry-content figure.wp-block-image {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: 24px !important;
}

.woocommerce-account .entry-content .wp-block-image img,
.woocommerce-account .entry-content figure.wp-block-image img,
.woocommerce-account .entry-content .wp-block-image a,
.woocommerce-account .entry-content figure.wp-block-image a,
.woocommerce-account .entry-content .wp-block-image[style],
.woocommerce-account .entry-content figure.wp-block-image[style] {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  margin: 0 auto !important;
}

.woocommerce-account .wlr-wrap,
.woocommerce-account .wlr-my-account-wrapper,
.woocommerce-account .wlr-page-content {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

.woocommerce-account .wlr-my-points-wrapper,
.woocommerce-account .wlr-summary-wrapper {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(200px, 1fr)) !important;
  gap: 18px !important;
  width: 100% !important;
  align-items: stretch !important;
}

.woocommerce-account .wlr-my-points-wrapper > div,
.woocommerce-account .wlr-summary-wrapper > div {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  min-height: 170px !important;
  padding: 22px 18px !important;
  border-radius: 10px !important;
  box-sizing: border-box !important;
}

.woocommerce-account .wlr-my-points-wrapper p,
.woocommerce-account .wlr-summary-wrapper p {
  margin: 0 0 10px 0 !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
}

.woocommerce-account .wlr-my-points-wrapper strong,
.woocommerce-account .wlr-summary-wrapper strong,
.woocommerce-account .wlr-my-points-wrapper b,
.woocommerce-account .wlr-summary-wrapper b {
  display: block !important;
  margin-top: 4px !important;
  font-size: 24px !important;
  line-height: 1.1 !important;
}

.woocommerce-account .wlr-section-title,
.woocommerce-account .wlr-heading,
.woocommerce-account .wlr-title {
  margin: 0 0 16px 0 !important;
  font-size: 18px !important;
  line-height: 1.3 !important;
}

.woocommerce-account .wlr-tabs,
.woocommerce-account .wlr-reward-tabs {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 14px !important;
  margin-bottom: 22px !important;
}

.woocommerce-account .wlr-tabs a,
.woocommerce-account .wlr-reward-tabs a,
.woocommerce-account .wlr-tabs button,
.woocommerce-account .wlr-reward-tabs button {
  white-space: normal !important;
  line-height: 1.25 !important;
  text-align: center !important;
}

.woocommerce-account .wlr-reward-card,
.woocommerce-account .wlr-rewards-card,
.woocommerce-account .wlr-single-reward {
  width: 100% !important;
  max-width: 320px !important;
  border-radius: 10px !important;
  box-sizing: border-box !important;
}

.woocommerce-account .wlr-reward-card p,
.woocommerce-account .wlr-rewards-card p,
.woocommerce-account .wlr-single-reward p {
  line-height: 1.45 !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
}

.woocommerce-account .wlr-reward-card button,
.woocommerce-account .wlr-rewards-card button,
.woocommerce-account .wlr-single-reward button,
.woocommerce-account .wlr-reward-card .button,
.woocommerce-account .wlr-rewards-card .button,
.woocommerce-account .wlr-single-reward .button {
  width: calc(100% - 24px) !important;
  margin: 14px 12px 0 !important;
  padding: 12px 16px !important;
  border-radius: 8px !important;
  font-weight: 600 !important;
}

.woocommerce-account .wlr-activity-table,
.woocommerce-account table.wlr-table,
.woocommerce-account .wlr-table-wrapper,
.woocommerce-account .wlr-table-wrapper table {
  width: 100% !important;
  max-width: 100% !important;
  table-layout: auto !important;
  border-collapse: collapse !important;
}

.woocommerce-account .wlr-activity-table th,
.woocommerce-account .wlr-activity-table td,
.woocommerce-account table.wlr-table th,
.woocommerce-account table.wlr-table td,
.woocommerce-account .wlr-table-wrapper table th,
.woocommerce-account .wlr-table-wrapper table td {
  padding: 12px 10px !important;
  vertical-align: top !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
}

@media (max-width: 1100px) {
  .woocommerce-account .woocommerce {
    display: block !important;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation {
    width: 280px !important;
    max-width: 280px !important;
    margin-bottom: 24px !important;
  }

  .woocommerce-account .wlr-my-points-wrapper,
  .woocommerce-account .wlr-summary-wrapper {
    grid-template-columns: repeat(2, minmax(180px, 1fr)) !important;
  }
}

@media (max-width: 768px) {
  .woocommerce-account .site-content .ast-container {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .woocommerce-account .woocommerce,
  .woocommerce-account .woocommerce-MyAccount-navigation,
  .woocommerce-account .woocommerce-MyAccount-content {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    flex: none !important;
    float: none !important;
    margin: 0 !important;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation {
    margin-bottom: 24px !important;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation ul {
    display: block !important;
    border: 1px solid #e7e7e7 !important;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation ul li {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    border-right: 0 !important;
    border-bottom: 1px solid #ececec !important;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation ul li:last-child {
    border-bottom: 0 !important;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation ul li a {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    width: 100% !important;
    padding: 16px 18px !important;
    font-size: 16px !important;
    line-height: 1.3 !important;
    box-sizing: border-box !important;
    white-space: normal !important;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation ul li a i,
  .woocommerce-account .woocommerce-MyAccount-navigation ul li a svg,
  .woocommerce-account .woocommerce-MyAccount-navigation ul li a::before {
    flex: 0 0 auto !important;
  }

  .woocommerce-account .wlr-my-points-wrapper,
  .woocommerce-account .wlr-summary-wrapper {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  .woocommerce-account .wlr-my-points-wrapper > div,
  .woocommerce-account .wlr-summary-wrapper > div {
    min-height: 0 !important;
    padding: 18px 16px !important;
  }

  .woocommerce-account .wlr-tabs,
  .woocommerce-account .wlr-reward-tabs {
    flex-direction: column !important;
    gap: 10px !important;
  }

  .woocommerce-account .wlr-tabs a,
  .woocommerce-account .wlr-reward-tabs a,
  .woocommerce-account .wlr-tabs button,
  .woocommerce-account .wlr-reward-tabs button {
    width: 100% !important;
    justify-content: flex-start !important;
    text-align: left !important;
  }

  .woocommerce-account .wlr-reward-card,
  .woocommerce-account .wlr-rewards-card,
  .woocommerce-account .wlr-single-reward {
    max-width: 100% !important;
    width: 100% !important;
  }

  .woocommerce-account .wlr-table-wrapper,
  .woocommerce-account .wlr-activity-table,
  .woocommerce-account table.wlr-table {
    display: block !important;
    overflow-x: auto !important;
    width: 100% !important;
  }
}


/* =========================================================
   14. REWARDS CLUB PAGE
   PAGE ID: 6046
   ========================================================= */

.page-id-6046 .entry-content .wp-block-columns {
  align-items: flex-start;
  gap: 36px;
}

.page-id-6046 .entry-content .wp-block-column {
  min-width: 0;
}

.page-id-6046 .wlr-wrap,
.page-id-6046 .wlr-my-account-wrapper,
.page-id-6046 .wlr-page-content {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

.page-id-6046 .wlr-my-points-wrapper,
.page-id-6046 .wlr-summary-wrapper {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(180px, 1fr)) !important;
  gap: 18px !important;
  width: 100% !important;
  align-items: stretch !important;
}

.page-id-6046 .wlr-my-points-wrapper > div,
.page-id-6046 .wlr-summary-wrapper > div {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  min-height: 150px !important;
  padding: 20px 18px !important;
  border-radius: 10px !important;
  box-sizing: border-box !important;
}

.page-id-6046 .wlr-my-points-wrapper p,
.page-id-6046 .wlr-summary-wrapper p {
  margin: 0 0 10px 0 !important;
  line-height: 1.4 !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  font-size: 15px !important;
}

.page-id-6046 .wlr-my-points-wrapper strong,
.page-id-6046 .wlr-summary-wrapper strong,
.page-id-6046 .wlr-my-points-wrapper b,
.page-id-6046 .wlr-summary-wrapper b {
  display: block !important;
  margin-top: 4px !important;
  font-size: 30px !important;
  line-height: 1.05 !important;
}

.page-id-6046 .wlr-section-title,
.page-id-6046 .wlr-heading,
.page-id-6046 .wlr-title {
  margin: 0 0 14px 0 !important;
  font-size: 18px !important;
  line-height: 1.3 !important;
}

.page-id-6046 .wlr-tabs,
.page-id-6046 .wlr-reward-tabs {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 10px !important;
  align-items: stretch !important;
  margin-bottom: 20px !important;
}

.page-id-6046 .wlr-tabs a,
.page-id-6046 .wlr-reward-tabs a,
.page-id-6046 .wlr-tabs button,
.page-id-6046 .wlr-reward-tabs button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 54px !important;
  padding: 10px 12px !important;
  white-space: normal !important;
  line-height: 1.2 !important;
  text-align: center !important;
}

.page-id-6046 .wlr-reward-card,
.page-id-6046 .wlr-rewards-card,
.page-id-6046 .wlr-single-reward {
  width: 100% !important;
  max-width: none !important;
  border-radius: 10px !important;
  box-sizing: border-box !important;
}

.page-id-6046 .wlr-reward-card p,
.page-id-6046 .wlr-rewards-card p,
.page-id-6046 .wlr-single-reward p {
  line-height: 1.45 !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
}

.page-id-6046 .wlr-reward-card button,
.page-id-6046 .wlr-rewards-card button,
.page-id-6046 .wlr-single-reward button,
.page-id-6046 .wlr-reward-card .button,
.page-id-6046 .wlr-rewards-card .button,
.page-id-6046 .wlr-single-reward .button {
  width: 100% !important;
  margin: 14px 0 0 0 !important;
  padding: 12px 16px !important;
  border-radius: 8px !important;
  font-weight: 600 !important;
}

.page-id-6046 .wlr-activity-table,
.page-id-6046 table.wlr-table,
.page-id-6046 .wlr-table-wrapper,
.page-id-6046 .wlr-table-wrapper table {
  width: 100% !important;
  max-width: 100% !important;
  table-layout: auto !important;
  border-collapse: collapse !important;
}

.page-id-6046 .wlr-activity-table th,
.page-id-6046 .wlr-activity-table td,
.page-id-6046 table.wlr-table th,
.page-id-6046 table.wlr-table td,
.page-id-6046 .wlr-table-wrapper table th,
.page-id-6046 .wlr-table-wrapper table td {
  padding: 14px 12px !important;
  vertical-align: top !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
}

.page-id-6046 .wlr-campaign-list,
.page-id-6046 .wlr-earn-cards,
.page-id-6046 .wlr-campaign-wrapper {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(220px, 1fr)) !important;
  gap: 22px !important;
}

.page-id-6046 .wlr-campaign-card,
.page-id-6046 .wlr-earn-card,
.page-id-6046 .wlr-campaign-item {
  min-height: 230px !important;
  padding: 20px !important;
  border-radius: 10px !important;
  box-sizing: border-box !important;
}

.page-id-6046 .wp-block-buttons .wp-block-button__link,
.page-id-6046 .uagb-buttons-repeater a {
  padding: 14px 24px !important;
  border-radius: 999px !important;
  font-weight: 600 !important;
}

@media (max-width: 1180px) {
  .page-id-6046 .wlr-my-points-wrapper,
  .page-id-6046 .wlr-summary-wrapper,
  .page-id-6046 .wlr-campaign-list,
  .page-id-6046 .wlr-earn-cards,
  .page-id-6046 .wlr-campaign-wrapper,
  .page-id-6046 .wlr-tabs,
  .page-id-6046 .wlr-reward-tabs {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 768px) {
  .page-id-6046 .wlr-table-wrapper,
  .page-id-6046 .wlr-activity-table,
  .page-id-6046 table.wlr-table {
    display: block !important;
    overflow-x: auto !important;
  }
}

@media (min-width: 1181px) {
  .page-id-6046 .wlr-my-points-wrapper > div:nth-child(3),
  .page-id-6046 .wlr-summary-wrapper > div:nth-child(3) {
    grid-column: 1 / -1;
  }
}


/* =========================================================
   15. CATEGORY PAGE DESKTOP TWEAKS
   ========================================================= */

@media (min-width: 769px) {
  .archive.tax-product_cat .widget_block,
  .archive.post-type-archive-product .widget_block,
  .archive.tax-product_cat .widget,
  .archive.post-type-archive-product .widget {
    margin-top: 0 !important;
  }

  .archive.tax-product_cat .widget_product_categories,
  .archive.post-type-archive-product .widget_product_categories,
  .archive.tax-product_cat .widget_nav_menu,
  .archive.post-type-archive-product .widget_nav_menu {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  .archive.tax-product_cat .site-main > .woocommerce,
  .archive.post-type-archive-product .site-main > .woocommerce {
    margin-top: 0 !important;
  }

  .ast-header-break-point .ast-builder-button-wrap .ast-custom-button,
  .ast-desktop .ast-builder-button-wrap .ast-custom-button,
  .ast-builder-button-1 .ast-custom-button {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
    line-height: 1.1 !important;
  }

  .ast-header-html-1,
  .ast-header-html-2,
  .ast-header-html-3,
  .ast-builder-layout-element.ast-header-search {
    margin-left: -20px !important;
  }

  .woocommerce ul.products {
    margin-left: -12px !important;
    margin-right: -12px !important;
  }

  .woocommerce ul.products li.product {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
}

.woocommerce .woocommerce-ordering {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.woocommerce .woocommerce-ordering select,
.woocommerce .woocommerce-ordering .orderby {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  min-height: auto !important;
}


/* =========================================================
   16. SINGLE PRODUCT PAGES
   ========================================================= */

.single-product .ast-above-header-bar {
  display: none;
}

.single-product .site-content {
  padding-top: 40px !important;
}

.single-product .site-content .ast-container {
  max-width: 1450px;
  width: 100%;
  align-items: flex-start;
}

.single-product .ast-right-sidebar #primary {
  width: 70% !important;
}

.single-product .ast-right-sidebar #secondary {
  width: 26% !important;
}

.single-product #secondary {
  padding-right: 18px;
}

.single-product #secondary ul li {
  margin-bottom: 6px;
  line-height: 1.25;
}

.single-product .summary.entry-summary {
  margin-top: 20px;
  padding-right: 20px;
}

.single-product .product_title {
  margin-bottom: 10px;
  line-height: 1.2;
}

.single-product .summary .price {
  margin-top: 0;
  margin-bottom: 12px;
  font-size: 22px;
  font-weight: 600;
}

.single-product .summary p {
  margin-bottom: 14px;
  line-height: 1.5;
}

.single-product .stock {
  margin-top: 12px;
  margin-bottom: 12px;
}

.single-product .wlr_points_message,
.single-product .summary .points {
  display: block;
  margin-bottom: 10px;
  font-size: 15px;
  font-weight: 500;
  color: #444;
}

.single-product .single_add_to_cart_button {
  margin-bottom: 14px;
  padding: 10px 18px;
  font-size: 15px;
  line-height: 1.2;
  border-radius: 22px;
  transition: all 0.2s ease;
}

.single-product .single_add_to_cart_button:hover {
  transform: translateY(-1px);
}

.single-product div.product .woocommerce-product-gallery {
  padding-right: 24px;
}

.vts-shipping-info {
  background: #f7f7f7;
  padding: 14px 16px;
  border-radius: 8px;
  margin-top: 8px;
  border: 1px solid #ececec;
  font-size: 14px;
  line-height: 1.45;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
}

.vts-shipping-info strong {
  display: block;
  margin-bottom: 8px;
  font-size: 14px;
}

@media (max-width: 921px) {
  .single-product .site-content {
    padding-top: 12px !important;
  }

  .single-product .site-content .ast-container {
    display: block;
    max-width: 100%;
    padding-left: 14px;
    padding-right: 14px;
  }

  .single-product #primary,
  .single-product #secondary {
    width: 100% !important;
    float: none !important;
  }

  .single-product #secondary {
    margin-top: 30px;
    padding-right: 0;
    border-top: 1px solid #eaeaea;
    padding-top: 18px;
  }

  .single-product div.product .woocommerce-product-gallery {
    padding-right: 0;
    margin-bottom: 16px;
  }

  .single-product .summary.entry-summary {
    margin-top: 0;
    padding-right: 0;
    position: relative;
  }

  .single-product .product_title {
    font-size: 26px;
    line-height: 1.15;
    margin-bottom: 10px;
    padding-right: 92px;
  }

  .single-product .summary .price {
    font-size: 22px;
    margin-bottom: 12px;
  }

  .single-product .summary p {
    font-size: 15px;
    line-height: 1.5;
    margin-bottom: 12px;
  }

  .single-product .stock {
    margin-top: 12px;
    margin-bottom: 10px;
    font-size: 15px;
  }

  .single-product .wlr_points_message,
  .single-product .summary .points {
    font-size: 15px;
    margin-bottom: 10px;
    line-height: 1.4;
  }

  .single-product .single_add_to_cart_button {
    width: 100%;
    text-align: center;
    padding: 13px 18px;
    font-size: 16px;
    border-radius: 24px;
    margin-bottom: 12px;
  }

  .vts-shipping-info {
    margin-top: 8px;
    padding: 12px 14px;
    font-size: 14px;
    line-height: 1.4;
  }

  .vts-shipping-info strong {
    margin-bottom: 8px;
    font-size: 14px;
  }

  .vts-shipping-info br {
    line-height: 1.8;
  }

  .single-product #secondary ul li {
    margin-bottom: 8px;
    line-height: 1.35;
    font-size: 15px;
  }

  .single-product .related.products {
    margin-top: 36px;
    padding-top: 6px;
  }

  .single-product .related.products h2 {
    margin-bottom: 14px;
    font-size: 24px;
    line-height: 1.2;
  }
}

/* =========================================================
   VTS PATCH LAYER
   Add at very end of Astra Additional CSS
   ========================================================= */


/* =========================================================
   1. HOME + CATEGORY PRODUCT CARDS
   Centre title / price / points, keep button full width
   ========================================================= */

body.home .woocommerce ul.products li.product .astra-shop-summary-wrap,
.archive .woocommerce ul.products li.product .astra-shop-summary-wrap,
.post-type-archive-product .woocommerce ul.products li.product .astra-shop-summary-wrap,
.tax-product_cat .woocommerce ul.products li.product .astra-shop-summary-wrap {
  align-items: center !important;
  text-align: center !important;
}

body.home .woocommerce ul.products li.product .woocommerce-loop-product__title,
.archive .woocommerce ul.products li.product .woocommerce-loop-product__title,
.post-type-archive-product .woocommerce ul.products li.product .woocommerce-loop-product__title,
.tax-product_cat .woocommerce ul.products li.product .woocommerce-loop-product__title {
  text-align: center !important;
}

body.home .woocommerce ul.products li.product .price,
body.home .woocommerce ul.products li.product .price *,
.archive .woocommerce ul.products li.product .price,
.archive .woocommerce ul.products li.product .price *,
.post-type-archive-product .woocommerce ul.products li.product .price,
.post-type-archive-product .woocommerce ul.products li.product .price *,
.tax-product_cat .woocommerce ul.products li.product .price,
.tax-product_cat .woocommerce ul.products li.product .price * {
  text-align: center !important;
}

body.home .woocommerce ul.products li.product .wlr_product_message,
body.home .woocommerce ul.products li.product .wlr-product-message,
body.home .woocommerce ul.products li.product .wlr-earned-points-message,
body.home .woocommerce ul.products li.product .vts-home-earn-points,
.archive .woocommerce ul.products li.product .wlr_product_message,
.archive .woocommerce ul.products li.product .wlr-product-message,
.archive .woocommerce ul.products li.product .wlr-earned-points-message,
.archive .woocommerce ul.products li.product .vts-home-earn-points,
.post-type-archive-product .woocommerce ul.products li.product .wlr_product_message,
.post-type-archive-product .woocommerce ul.products li.product .wlr-product-message,
.post-type-archive-product .woocommerce ul.products li.product .wlr-earned-points-message,
.post-type-archive-product .woocommerce ul.products li.product .vts-home-earn-points,
.tax-product_cat .woocommerce ul.products li.product .wlr_product_message,
.tax-product_cat .woocommerce ul.products li.product .wlr-product-message,
.tax-product_cat .woocommerce ul.products li.product .wlr-earned-points-message,
.tax-product_cat .woocommerce ul.products li.product .vts-home-earn-points {
  text-align: center !important;
}


/* =========================================================
   2. DESKTOP MY ACCOUNT LOGIN PAGE
   Narrower, neater login form when logged out
   ========================================================= */

@media (min-width: 769px) {
  body.woocommerce-account:not(.logged-in) .woocommerce {
    max-width: 760px !important;
    margin: 0 auto !important;
    display: block !important;
  }

  body.woocommerce-account:not(.logged-in) .woocommerce-form-login,
  body.woocommerce-account:not(.logged-in) .woocommerce-form-login.login {
    max-width: 420px !important;
    margin: 0 auto !important;
  }

  body.woocommerce-account:not(.logged-in) .woocommerce-form-login .form-row,
  body.woocommerce-account:not(.logged-in) .woocommerce-form-login .woocommerce-form-row {
    width: 100% !important;
  }

  body.woocommerce-account:not(.logged-in) .woocommerce-form-login input[type="text"],
  body.woocommerce-account:not(.logged-in) .woocommerce-form-login input[type="email"],
  body.woocommerce-account:not(.logged-in) .woocommerce-form-login input[type="password"] {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-account:not(.logged-in) .woocommerce-form-login .button,
  body.woocommerce-account:not(.logged-in) .woocommerce-form-login button.button {
    width: 100% !important;
  }
}


/* =========================================================
   3. DESKTOP REWARDS PAGE
   Bring left sidebar closer in on full-width layout
   ========================================================= */

@media (min-width: 769px) {
  .page-id-6046 .site-content .ast-container {
    max-width: 1400px !important;
    margin: 0 auto !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
    gap: 26px !important;
  }

  .page-id-6046 .widget-area {
    width: 250px !important;
    max-width: 250px !important;
    flex: 0 0 250px !important;
    margin: 0 !important;
  }

  .page-id-6046 .content-area {
    min-width: 0 !important;
  }
}


/* =========================================================
   4. MOBILE COMPLIANZ MAIN BANNER
   Stop logo spilling off left side
   ========================================================= */

@media (max-width: 768px) {
  .cmplz-cookiebanner .cmplz-logo,
  .cmplz-cookiebanner .cmplz-header,
  .cmplz-cookiebanner .cmplz-header .cmplz-logo {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    text-align: center !important;
    width: 100% !important;
    margin: 0 auto 10px auto !important;
    overflow: hidden !important;
  }

  .cmplz-cookiebanner .cmplz-logo img {
    display: block !important;
    max-width: 220px !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 auto !important;
  }
}


/* =========================================================
   5. MOBILE COOKIE BUTTON
   Lighter / softer appearance only
   ========================================================= */

@media (max-width: 768px) {
  #cmplz-manage-consent .cmplz-manage-consent {
    background: rgba(120, 120, 120, 0.45) !important;
    color: #ffffff !important;
    opacity: 1 !important;
    backdrop-filter: blur(4px) !important;
  }

  #cmplz-manage-consent .cmplz-manage-consent:hover {
    background: rgba(120, 120, 120, 0.7) !important;
    color: #ffffff !important;
  }
}

/* =========================================================
   VTS FINAL MINI PATCH
   ========================================================= */

/* 1. CATEGORY PAGES
   Force title / price / points to centre on desktop + mobile */
.archive.woocommerce ul.products li.product .astra-shop-summary-wrap,
.post-type-archive-product ul.products li.product .astra-shop-summary-wrap,
.tax-product_cat ul.products li.product .astra-shop-summary-wrap {
  align-items: center !important;
  text-align: center !important;
}

.archive.woocommerce ul.products li.product .woocommerce-loop-product__title,
.post-type-archive-product ul.products li.product .woocommerce-loop-product__title,
.tax-product_cat ul.products li.product .woocommerce-loop-product__title {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.archive.woocommerce ul.products li.product .price,
.archive.woocommerce ul.products li.product .price *,
.post-type-archive-product ul.products li.product .price,
.post-type-archive-product ul.products li.product .price *,
.tax-product_cat ul.products li.product .price,
.tax-product_cat ul.products li.product .price * {
  text-align: center !important;
  justify-content: center !important;
}

.archive.woocommerce ul.products li.product .wlr_product_message,
.archive.woocommerce ul.products li.product .wlr-product-message,
.archive.woocommerce ul.products li.product .wlr-earned-points-message,
.archive.woocommerce ul.products li.product .vts-home-earn-points,
.post-type-archive-product ul.products li.product .wlr_product_message,
.post-type-archive-product ul.products li.product .wlr-product-message,
.post-type-archive-product ul.products li.product .wlr-earned-points-message,
.post-type-archive-product ul.products li.product .vts-home-earn-points,
.tax-product_cat ul.products li.product .wlr_product_message,
.tax-product_cat ul.products li.product .wlr-product-message,
.tax-product_cat ul.products li.product .wlr-earned-points-message,
.tax-product_cat ul.products li.product .vts-home-earn-points {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* 2. DESKTOP MY ACCOUNT LOGIN
   Add breathing room above footer bar */
@media (min-width: 769px) {
  body.woocommerce-account:not(.logged-in) .site-content {
    padding-bottom: 60px !important;
  }
}

