/*
Theme Name: Astra Child
Theme URI: https://wpastra.com/
Description: Astra Child Theme
Author: Brainstorm Force
Author URI: https://wpastra.com/about/
Template: astra
Version: 1.0.0
Text Domain: astra-child
*/

/* Add your custom CSS below this line */
/* ================= ROOT VARIABLES ================= */
:root {
  --color-red: #d90205;
  --color-red-dark: #aa050b;

  --color-yellow: #fedf26;
  --color-yellow-dark: #ffcc00;
  --color-yellow-soft: #ecd430;

  --color-black: #000000;
  --color-dark: #0c0c0c;
  --color-gray: #333;
  --color-light-gray: #ccc;

  --color-white: #ffffff;
  --color-white-soft: #fffde8c2;

  --color-overlay-dark: rgba(0, 0, 0, 0.7);
  --color-overlay-light: rgba(0, 0, 0, 0.5);

  --color-green: #4caf50;
  --color-green-dark: #2e7d32;
  --color-orange: #f39c12;
  --sidebar-bg-color: #ffc32569;
  /* FONT SIZES (13px → 80px scale) */
  /* 13px */
  --font-size-13: 0.8125rem;
  /* 14px */
  --font-size-14: 0.875rem;
  /* 15px */
  --font-size-15: 0.9375rem;
  /* 16px */
  --font-size-16: 1rem;
  /* 18px */
  --font-size-18: 1.125rem;
  /* 20px */
  --font-size-20: 1.25rem;
  /* 22px */
  --font-size-22: 1.375rem;
  /* 24px */
  --font-size-24: 1.5rem;
  /* 26px */
  --font-size-26: 1.625rem;
  /* 28px */
  --font-size-28: 1.75rem;
  /* 30px */
  --font-size-30: 1.875rem;
  /* 32px */
  --font-size-32: 2rem;
  /* 34px */
  --font-size-34: 2.125rem;
  /* 36px */
  --font-size-36: 2.25rem;
  /* 38px */
  --font-size-38: 2.375rem;
  /* 40px */
  --font-size-40: 2.5rem;
  /* 44px */
  --font-size-44: 2.75rem;
  /* 48px */
  --font-size-48: 3rem;
  /* 52px */
  --font-size-52: 3.25rem;
  /* 56px */
  --font-size-56: 3.5rem;
  /* 60px */
  --font-size-60: 3.75rem;
  /* 64px */
  --font-size-64: 4rem;
  /* 68px */
  --font-size-68: 4.25rem;
  /* 72px */
  --font-size-72: 4.5rem;
  /* 76px */
  --font-size-76: 4.75rem;
  /* 80px */
  --font-size-80: 5rem;
}
@media (max-width: 991px) {
  :root {
    --font-size-13: 0.78rem; /* 12.48px */
    --font-size-14: 0.84rem; /* 13.44px */
    --font-size-15: 0.9rem; /* 14.4px */
    --font-size-16: 0.95rem; /* 15.2px */
    --font-size-18: 1.05rem; /* 16.8px */
    --font-size-20: 1.15rem; /* 18.4px */
    --font-size-22: 1.25rem; /* 20px */
    --font-size-24: 1.35rem; /* 21.6px */
    --font-size-26: 1.45rem; /* 23.2px */
    --font-size-28: 1.55rem; /* 24.8px */
    --font-size-30: 1.65rem; /* 26.4px */
    --font-size-32: 1.75rem; /* 28px */
    --font-size-34: 1.85rem; /* 29.6px */
    --font-size-36: 1.95rem; /* 31.2px */
    --font-size-38: 2.05rem; /* 32.8px */
    --font-size-40: 2.2rem; /* 35.2px */
    --font-size-44: 2.4rem; /* 38.4px */
    --font-size-48: 2.6rem; /* 41.6px */
    --font-size-52: 2.8rem; /* 44.8px */
    --font-size-56: 3rem; /* 48px */
    --font-size-60: 3.2rem; /* 51.2px */
    --font-size-64: 3.4rem; /* 54.4px */
    --font-size-68: 3.6rem; /* 57.6px */
    --font-size-72: 3.8rem; /* 60.8px */
    --font-size-76: 4rem; /* 64px */
    --font-size-80: 4.2rem; /* 67.2px */
  }
}
@media (max-width: 600px) {
  :root {
    --font-size-13: 0.75rem;
    --font-size-14: 0.8rem;
    --font-size-15: 0.85rem;
    --font-size-16: 0.9rem;
    --font-size-18: 1rem;
    --font-size-20: 1.1rem;
    --font-size-22: 1.2rem;
    --font-size-24: 1.3rem;
    --font-size-26: 1.4rem;
    --font-size-28: 1.5rem;
    --font-size-30: 1.6rem;
    --font-size-32: 1.7rem;
    --font-size-34: 1.8rem;
    --font-size-36: 1.9rem;
    --font-size-38: 2rem;
    --font-size-40: 2.1rem;
    --font-size-44: 2.1rem;
    --font-size-48: 2.3rem;
    --font-size-52: 2.5rem;
    --font-size-56: 2.7rem;
    --font-size-60: 2.9rem;
    --font-size-64: 3.1rem;
    --font-size-68: 3.3rem;
    --font-size-72: 3.5rem;
    --font-size-76: 3.7rem;
    --font-size-80: 3.9rem;
  }
}
/* @media (max-width: 480px) {
  :root {
    --font-size-13: calc(0.6em + 0.67vw);
    --font-size-14: calc(0.6em + 0.72vw);
    --font-size-15: calc(0.6em + 0.78vw);
    --font-size-16: calc(0.6em + 0.85vw);
    --font-size-18: calc(0.6em + 0.95vw);
    --font-size-20: calc(0.6em + 1.05vw);
    --font-size-22: calc(0.6em + 1.15vw);
    --font-size-24: calc(0.6em + 1.25vw);
    --font-size-44: calc(1rem + 2.5vw);
    --font-size-48: calc(1rem + 3vw);
    --font-size-52: calc(1rem + 3.5vw);
    --font-size-56: calc(1rem + 4vw);
    --font-size-60: calc(1rem + 4.5vw);
  }
} */
body {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  color: var(--color-dark);
  font-size: var(--font-size-16);
}
body p {
  color: var(--color-dark);
  font-size: var(--font-size-16);
}
.site-header {
  box-shadow: 5px 4px 15px #c5c5c5;
  padding-bottom: 10px;
}
.ast-footer-copyright p {
  color: #fff;
  padding-top: 15px !important;
  font-size: var(--font-size-15);
}
body h1,
body h2,
body h3,
body h4,
body h5,
body h6 {
  font-family: "Parkinsans", sans-serif;
  font-optical-sizing: auto;
  /* font-weight: 500;
  font-style: normal; */
  /* font-size: var(--font-size-15); */
}
.ast-site-identity {
  padding: 0.3rem 0 !important;
}
@media (min-width: 1023px) {
  body.home .site-content .custom-container {
    max-width: 90%;
    width: 1140px;
    height: auto;
    margin: 0 auto;
    position: relative;
  }
  .site-content .ast-container {
    padding: 3rem 0;
  }
}
body.home .site-content .ast-container {
  width: 100%;
  max-width: 100%;
  min-width: 100%;
  padding: 0;
}
/* main slider css */
.slider {
  position: relative;
  width: 100%;
  height: 90vh;
  overflow: hidden;
}

.slides {
  display: flex;
  height: 100%;
  transition: transform 0.6s ease-in-out;
}

.slide {
  min-width: 100%;
  position: relative;
  height: auto;
}
.slide img {
  width: 100%;
  object-fit: cover;
  height: auto;
  min-height: auto;
}
@media (min-width: 1025px) {
  .slide {
    min-width: 100%;
    position: relative;
    height: 90vh;
  }
}
.top_tag_line {
  background-color: var(--color-red);
  color: var(--color-white);
  font-size: var(--font-size-22);
  padding: 1rem 2.5rem;
  width: fit-content;
}
/* Overlay */
.content {
  position: absolute;
  top: 50%;
  left: 10%;
  transform: translateY(-50%);
  color: var(--color-white);
}
@media (max-width: 921px) {
  .slider {
    height: auto;
    overflow: hidden;
  }
  .content {
    top: 40%;
    left: 10%;
  }
}
@media (max-width: 768px) {
  .content {
    top: 40%;
    left: 10%;
  }

  .content p {
    margin: 10px 0 !important;
    font-size: var(--font-size-18) !important;
  }
  .content a {
    padding: 10px 55px 10px 30px !important;
    font-size: var(--font-size-18) !important;
    position: relative;
  }
  .dots {
    display: none;
  }
}

@media (max-width: 768px) {
  .content {
    top: 50%;
    left: 7%;
  }
}
.content h1 {
  font-size: var(--font-size-80);
  color: var(--color-white);
  line-height: normal;
  font-weight: 600;
  margin-bottom: 2rem;
}

.content p {
  margin: 10px 0;
  font-size: var(--font-size-32) !important;
  font-weight: 600;
  color: var(--color-yellow);
  margin: 2rem 0 1rem 0;
}

.content a {
  display: inline-block;
  /* padding: 12px 30px; */
  background: var(--color-red);
  color: var(--color-white);
  text-decoration: none;
  border-radius: 25px;
  font-weight: 600;
  font-size: var(--font-size-22);
}

/* Nav */
.nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  font-size: var(--font-size-30);
  color: var(--color-white);
  cursor: pointer;
  padding: 10px;
  /* background: rgba(0,0,0,0.4); */
}
.prev {
  left: 10px;
}
.next {
  right: 10px;
}

/* Dots */
.dots {
  position: absolute;
  bottom: 20px;
  width: 100%;
  text-align: center;
}

.dots span {
  height: 12px;
  width: 12px;
  margin: 5px;
  display: inline-block;
  background: var(--color-white);
  border-radius: 50%;
  opacity: 0.5;
  cursor: pointer;
}

.dots .active {
  opacity: 1;
}

/* Responsive */
@media (max-width: 768px) {
  .content h1 {
    font-size: var(--font-size-40);
  }
  /* .category-section-wrap .nav {
    display: none !important;
  } */
  .category-section-wrap .carousel-nav {
    position: initial;
  }
  .category-section-wrap .custom-container {
    position: relative;
  }
  .category-section-wrap .carousel {
    width: 83%;
    margin: 0 auto;
  }
  .category-section-wrap .nav {
    padding: 5px 10px;
  }
  .category-section-wrap .carousel-nav .prev {
    left: -10px;
  }
  .category-section-wrap .carousel-nav .next {
    right: -10px;
  }
  .content p {
    font-size: var(--font-size-16) !important;
  }
  #menu-footer-menu-2 li a,
  #astra-footer-menu li a,
  #astra-footer-menu .menu-item > a {
    font-size: var(--font-size-14) !important;
  }
  .site-primary-footer-wrap .ast-builder-html-element p,
  #nav_menu-3 h2 {
    font-size: var(--font-size-22) !important;
  }
}
@media (max-width: 480px) {
  .site-primary-footer-wrap .ast-builder-html-element p,
  #nav_menu-3 h2,
  .site-footer-primary-section-4 .ast-builder-html-element p {
    font-size: var(--font-size-22) !important;
    font-weight: 600 !important;
  }
  .content h1 {
    font-size: var(--font-size-32);
    margin-bottom: 1rem;
  }
  .top_tag_line {
    font-size: var(--font-size-18);
    padding: 0.2rem 1rem;
  }
  .content a:after {
    right: 12px !important;
    top: 4px !important;
  }
  .content a {
    position: relative;
    padding: 4px 31px 4px 15px !important;
    border: 2px solid #aa050b;
  }
}
.site-footer-primary-section-4 i {
  color: var(--color-orange) !important;
}
/* carausel section css */

.category-section-wrap {
  padding: 60px 20px;
  text-align: center;
  background: #f8f8f8;
}

.category-section-wrap h2 {
  font-size: var(--font-size-32);
  margin-bottom: 10px;
  position: relative;
  display: inline-block;
}

/* .category-section-wrap h2::before,
.category-section-wrap h2::after {
  content: "-";              
  display: inline-block;
  margin: 0 15px;             
  color: #000;                
  font-size: 2.5rem;          
  font-weight: normal;
} */
.category-section-wrap p {
  font-size: var(--font-size-20) !important;
  font-weight: 500;
  color: var(--color-red);
}
.category-section-wrap .card p {
  font-size: var(--font-size-15) !important;
  font-weight: 500;
  margin-bottom: 5px;
  color: var(--color-white);
}

.carousel {
  position: relative;
  overflow: hidden;
  margin-top: 30px;
  /* padding:0 20px; */
}

.carousel-track {
  display: flex;
  transition: transform 0.5s ease;
}

.carousel-slide {
  min-width: 100%;
  padding: 10px;
}

/* SLIDE WRAPPER */
.carousel-slide {
  min-width: 100%;
  padding: 10px;
}
.carousel-nav {
  display: flex;
  justify-content: space-between;
  margin-bottom: 15px; /* spacing above carousel */
}

.carousel-nav .nav {
  cursor: pointer;
  font-size: var(--font-size-24);
  color: var(--color-white);
  user-select: none;
}
/* FLEX GRID */
.grid {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
}
/* CARD */
.card {
  position: relative;
  border-radius: 12px;
  overflow: hidden;
  flex: 0 0 calc(33.333% - 10px); /* 3 columns */
}
.card img {
  width: 100%;
  min-height: 220px;
  object-fit: cover;
  height: 300px;
}
/* TABLET */
@media (max-width: 992px) {
  .card {
    flex: 0 0 calc(50% - 10px); /* 2 columns */
  }
}

/* MOBILE */
@media (max-width: 600px) {
  .card {
    flex: 0 0 100%; /* 1 column */
  }

  .card img {
    height: 220px;
  }
}
.card:hover img {
  transform: scale(1.05);
  transition: 0.4s;
}
/* Overlay */
.overlay {
  position: absolute;
  bottom: 0;
  width: 100%;
  padding: 15px;
  color: white;
  background: linear-gradient(to top, var(--color-overlay-dark), transparent);
}

.overlay h3 {
  margin: 0;
  font-size: var(--font-size-26);
  color: var(--color-white);
}

.overlay p {
  font-size: var(--font-size-13);
}
body.home ul.products li.product .onsale {
  display: none !important;
}
/* NAV */
.nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: var(--color-overlay-dark);
  color: var(--color-white);
  border: none;
  font-size: var(--font-size-22);
  padding: 4px 9px;
  cursor: pointer;
  border-radius: 50%;
  z-index: 999;
}
.prev {
  left: -50px;
}
.next {
  right: -50px;
}
/* DOTS */
.dots {
  margin-top: 15px;
}
.dots span {
  display: inline-block;
  width: 10px;
  height: 10px;
  background: var(--color-light-gray);
  margin: 5px;
  border-radius: 50%;
  cursor: pointer;
}
.dots .active {
  background: var(--color-gray);
}
/* RESPONSIVE */
@media (min-width: 992px) {
  #slides .prev {
    left: -50px;
  }
  #slides .next {
    right: -50px;
  }
}
@media (max-width: 992px) {
  .grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 600px) {
  .grid {
    grid-template-columns: 1fr;
  }
}
/* features block */
.features {
  background: var(--color-white);
  padding: 40px 20px;
}
.features h2 {
  text-align: center;
  font-size: var(--font-size-30);
}
.feature-box {
  max-width: 1100px;
  margin: auto;
  display: flex;
  justify-content: space-between;
  text-align: center;
  flex-wrap: wrap;
}
/* Each Item */
.feature {
  flex: 1;
  min-width: 200px;
  padding: 20px;
}

/* Icon Circle */
.icon {
  width: 60px;
  height: 60px;
  margin: auto;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-white);
  font-size: var(--font-size-22);
  margin-bottom: 10px;
}
/* Colors */
.green {
  background: var(--color-green);
}
.red {
  background: var(--color-red);
}
.orange {
  background: var(--color-orange);
}
.green-dark {
  background: var(--color-green-dark);
}
/* Text */
.feature h4 {
  margin: 20px 0 5px;
  font-size: var(--font-size-20);
  font-weight: 600;
  color: var(--color-red-dark);
}
.feature p {
  font-size: var(--font-size-18) !important;
  color: #050505b0;
  font-weight: 600;
}
.woocommerce-js div.product p.price,
.woocommerce-js div.product span.price {
  margin-bottom: 0.8em !important;
}
/* Responsive */
@media (max-width: 768px) {
  .feature-box {
    flex-direction: column;
    align-items: center;
  }

  .feature {
    margin-bottom: 20px;
  }
}
/* Smooth transition */
.feature {
  transition: transform 0.3s ease;
}
.icon {
  transition: all 0.3s ease;
}
/* Hover effect */
.feature:hover {
  transform: translateY(-5px);
}
.feature:hover .icon {
  transform: scale(1.15);
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
}
/* Optional: icon rotate */
.feature:hover .icon i {
  transform: rotate(10deg);
  transition: transform 0.3s ease;
}

/*------ weekly products ------ */
.weekly-product-specials {
  background: #fae8a863;
}
.weekly-product-specials .popular-products-slider h2 {
  color: var(--color-dark);
}
.weekly-product-specials .popular-products p {
  font-size: var(--font-size-20) !important;
  font-weight: 500;
  color: var(--color-red);
}
.weekly-product-specials ul.products li.product .ast-woo-product-category {
  color: var(--color-gray);
}
.weekly-product-specials ul.products li.product.desktop-align-left {
  box-shadow: 0px 2px 7px #727171fc !important;
}
.weekly-product-specials .astra-shop-summary-wrap .ast-woo-product-category {
  color: var(--color-gray) !important;
}
.weekly-product-specials ul.products li.product.desktop-align-left .button,
.popular-products-slider ul.products li.product.desktop-align-left .button {
  font-size: var(--font-size-16) !important;
}
.weekly-product-specials
  .astra-shop-summary-wrap
  .woocommerce-loop-product__title:hover {
  color: var(--color-red-dark);
  text-shadow: 0 0 2px var(--color-red);
}
/*----------- popular products---------- */
.popular-products h2 {
  font-size: var(--font-size-32);
  padding: 50px 10px 5px 10px;
  text-align: center;
  margin-bottom: 0;
}
.popular-products p {
  font-size: var(--font-size-20) !important;
  font-weight: 500;
  color: var(--color-yellow-soft);
  text-align: center;
  padding: 10px 25px;
  line-height: normal;
}
@media (max-width: 768px) {
  .popular-products-slider {
    width: 85%;
    margin: 0 auto;
    text-align: center;
  }
}
.popular-products .slick-slider .slick-prev:before,
.popular-products .slick-slider .slick-next:before {
  font-size: var(--font-size-30);
}
.popular-products .slick-slider .slick-prev,
.popular-products .slick-slider .slick-next {
  top: 35% !important;
}
.popular-products-section {
  /* background-color: #000;  */
  background-image: url("../astra-child/images/hkfoods-popular-banner.png");
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
.popular-products-slider ul.products {
  display: block !important;
  margin-bottom: 0px !important;
}
.page-section.weekly-product-specials .slick-prev:before,
.page-section.weekly-product-specials .slick-next:before {
  color: var(--color-overlay-dark) !important;
}
.popular-products-slider li.product {
  margin: 0 10px;
}
.popular-products .woocommerce ul.products li.product.desktop-align-left {
  box-shadow: 0px 2px 7px #fdfafafc;
  border-radius: 15px;
}
.popular-products
  .woocommerce
  ul.products
  li.product.desktop-align-left
  .astra-shop-summary-wrap {
  padding: 10px 15px !important;
}
.popular-products-slider h2 {
  color: var(--color-white);
}
.astra-shop-summary-wrap {
  text-align: left;
}
.astra-shop-summary-wrap .price {
  display: none !important;
}
.astra-shop-summary-wrap .add_to_cart_button,
.astra-shop-summary-wrap .button.product_type_variable {
  font-size: var(--font-size-18);
  text-transform: capitalize;
  font-weight: 600;
}

.astra-shop-summary-wrap .ast-woo-product-category {
  font-size: var(--font-size-15) !important;
  font-weight: 500;
  color: var(--color-white);
  opacity: 0.8 !important;
}
.astra-shop-summary-wrap .woocommerce-loop-product__title {
  font-size: var(--font-size-18) !important;
  font-weight: 500;
  text-align: left;
  color: var(--color-white);
}
.astra-shop-summary-wrap .woocommerce-loop-product__title:hover {
  color: var(--color-yellow-dark);
  text-shadow: 0 0 6px rgba(255, 204, 0, 0.6);
}
.popular-products-slider .astra-shop-thumbnail-wrap img {
  border-top-left-radius: 15px;
  border-top-left-radius: 15px;
  transition: transform 0.3s ease;
}
.popular-products-slider .astra-shop-thumbnail-wrap {
  overflow: hidden; /* keeps zoom inside the div */
  border-radius: 15px;
}
.popular-products-slider .astra-shop-thumbnail-wrap img:hover {
  transform: scale(1.05);
  transition: 0.4s;
}
.astra-shop-thumbnail-wrap .ast-icon.icon-cart svg:not([fill]) {
  fill: rgb(255 0 0) !important;
  width: 17px !important;
  height: 17px !important;
}
.astra-shop-thumbnail-wrap .ast-on-card-button .ahfb-svg-iconset {
  box-shadow: 0 0px 3px rgb(240 0 0) !important;
}
.site-footer-section a {
  text-decoration: none;
}
.site-footer-primary-section-1 p {
  color: var(--color-white);
  font-size: var(--font-size-22) !important;
  text-align: left;
  font-weight: bold;
}
.site-footer-primary-section-2 h2,
.site-footer-primary-section-4 h2 {
  color: var(--color-white);
  font-size: var(--font-size-22) !important;
  text-align: left;
  font-weight: 600 !important;
}

.site-footer-primary-section-2 .ast-header-html p {
  color: var(--color-white);
  font-size: var(--font-size-22) !important;
  text-align: left;
  font-weight: 600 !important;
}
.site-footer-primary-section-3 h2 {
  color: var(--color-white) !important;
  font-size: var(--font-size-22) !important;
  text-align: left;
  font-weight: 600;
}
.site-footer-primary-section-4 .ast-builder-html-element p {
  color: var(--color-white);
  font-size: var(--font-size-22) !important;
  text-align: left;
  font-weight: bold;
}
#menu-footer-menu-2 {
  text-align: left;
  margin: 0;
  padding: 0;
}
#menu-footer-menu-2 a {
  color: var(--color-white-soft);
  font-size: var(--font-size-18);
  text-decoration: none;
}
#menu-footer-menu-2 li {
  list-style: none;
  margin-bottom: 10px;
}
#astra-footer-menu .menu-item > a {
  padding-top: 10px !important;
}
#menu-footer-menu-2 li a,
#astra-footer-menu li a,
#astra-footer-menu .menu-item > a {
  color: var(--color-white-soft) !important;
  font-size: var(--font-size-18) !important;
  text-decoration: none;
}
.ast-builder-footer-grid-columns {
  align-items: self-start !important;
}
#astra-footer-menu .menu-item > a {
  padding-left: 0px !important;
}
.site-footer-section-1 img {
  margin-bottom: 20px;
}
.ast-footer-social-1-wrap {
  margin-top: 10px;
  text-align: left;
  display: flex;
}
.footer-widget-area[data-section="section-footer-menu"]
  .astra-footer-tablet-vertical-menu {
  justify-content: left !important;
}
@media (max-width: 768px) {
  .site-footer-primary-section-1 .footer-widget-area .widget_media_image {
    text-align: left;
  }
  .srfm-btn-frontend.srfm-button.srfm-submit-button {
    width: unset !important;
  }
  .banner-title {
    font-size: 34px !important;
  }
}

@media (max-width: 480px) {
  .banner-title {
    font-size: 26px !important;
  }
}
.site-footer-primary-section-2 .textwidget,
.site-footer-primary-section-2 .textwidget p,
.site-footer-primary-section-3 .textwidget,
.site-footer-primary-section-3 .textwidget p,
.site-footer-primary-section-4 .textwidget,
.site-footer-primary-section-4 .textwidget p {
  color: var(--color-white-soft);
  text-align: left;
  font-size: var(--font-size-18) !important;
  line-height: normal;
  padding-bottom: 0;
  margin-bottom: revert-layer;
}
.site-footer-primary-section-3 .textwidget p {
  margin-bottom: 1rem !important;
}

#astra-footer-menu > .menu-item > .menu-link:hover,
#menu-footer-menu-2 li a:hover {
  color: var(--color-white) !important;
  text-shadow: 0 0 6px rgba(254, 223, 38, 0.6);
  font-size: var(--font-size-18) !important;
}
/* single product page css */

/* Product title */
body.single-product h1,
.product_title,
.woocommerce-loop-product__title,
.product-name {
  font-size: var(--font-size-40);
  font-weight: 600;
  color: var(--color-red-dark);
  margin-bottom: 1rem;
  letter-spacing: 0.5px;
}

/* Price styling */
body.single-product .price {
  font-size: var(--font-size-22) !important;
  font-weight: 600 !important;
  color: var(--color-green-dark) !important;
  margin-bottom: 1rem;
}
.main-header-menu > .menu-item > .menu-link,
.wc-block-cart__main .wc-block-cart-items th {
  font-size: var(--font-size-18) !important;
}

.wp-block-woocommerce-cart
  .wc-block-components-address-form
  .wc-block-components-address-form__address_2-toggle,
.wp-block-woocommerce-cart
  .wc-block-components-order-summary
  .wc-block-components-panel__button,
.wp-block-woocommerce-cart
  .wc-block-components-totals-coupon
  .wc-block-components-panel__button,
.wp-block-woocommerce-checkout
  .wc-block-components-address-form
  .wc-block-components-address-form__address_2-toggle,
.wp-block-woocommerce-checkout
  .wc-block-components-order-summary
  .wc-block-components-panel__button,
.wp-block-woocommerce-checkout
  .wc-block-components-totals-coupon
  .wc-block-components-panel__button,
.wp-block-woocommerce-checkout-order-summary-block {
  font-size: var(--font-size-18) !important;
}
.wc-block-components-product-details.wc-block-components-product-details {
  font-size: 16px !important;
}
.wc-block-components-product-badge {
  background: color-mix(in srgb, rgb(235 0 0) 10%, #ff000038) !important;
  display: inline-block;
  font-size: var(--font-size-14) !important;
  line-height: var(--font-size-18) !important;
  padding: 4px 9px !important;
  white-space: nowrap;
}
/* Dropdown & stock info */
body.single-product select,
body.single-product .stock {
  font-size: var(--font-size-15);
  padding: 0.5rem 0.75rem;
  /* border: 1px solid var(--color-dark); */
  border-radius: 6px;
  background: #fafafa;
  margin-bottom: 1rem;
  color: var(--color-black);
}
.woocommerce-js div.product form.cart .single_variation_wrap {
  line-height: 50px;
}
.woocommerce .select2-container .select2-selection--single,
.woocommerce select,
.woocommerce-page .select2-container .select2-selection--single,
.woocommerce-page select {
  border: 1px solid var(--color-dark) !important;
}
body.single-product .single-product-category a {
  font-size: var(--font-size-18) !important;
  font-weight: 500;
  color: var(--color-dark) !important;
}
body.single-product .stock {
  font-weight: bold !important;
  color: var(--color-red) !important;
  font-size: var(--font-size-18);
}
/* Add to cart button */
body.single-product .add-to-cart {
  display: inline-block;
  padding: 0.75rem 1.5rem;
  font-size: var(--font-size-16);
  font-weight: 600;
  color: #fff;
  background: linear-gradient(135deg, #2a7a2a, #3fa63f);
  border: none;
  border-radius: 8px;
  cursor: pointer;
  transition: all 0.3s ease;
}

body.single-product .add-to-cart:hover {
  background: linear-gradient(135deg, #3fa63f, #2a7a2a);
  transform: translateY(-2px);
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
}

/* Tabs section */
body.single-product .tabs {
  margin-top: 2rem;
  border-top: 1px solid #eee;
}

body.single-product .tabs ul {
  display: flex;
  gap: 1.5rem;
  padding: 1rem 0;
  list-style: none;
}

body.single-product .tabs ul li {
  font-size: var(--font-size-16);
  font-weight: 500;
  color: #555;
  cursor: pointer;
  transition: color 0.3s ease;
}

body.single-product .tabs ul li.active,
body.single-product .tabs ul li:hover {
  color: var(--color-green-dark);
  border-bottom: 2px solid var(--color-green-dark);
}

/* Description text */
body.single-product .description {
  font-size: var(--font-size-15);
  line-height: 1.7;
  color: var(--color-gray-dark);
  margin-top: 1rem;
}
/* Product titles everywhere */
.product_title,
.woocommerce-loop-product__title,
.product-name {
  font-size: var(--font-size-18);
}
.single-product-category {
  color: var(--color-dark);
  font-size: var(--font-size-18);
}
/* Prices everywhere */
.price {
  color: var(--color-dark);
  font-size: var(--font-size-20);
}
.ast-on-card-button.ast-onsale-card {
  background: var(--color-red-dark);
  color: var(--color-white);
  font-size: var(--font-size-14);
}
.pswp__caption__center {
  font-size: var(--font-size-18);
  color: var(--color-white);
}
.woocommerce form .form-row textarea,
.woocommerce input[type="email"],
.woocommerce input[type="number"],
.woocommerce input[type="password"],
.woocommerce input[type="reset"],
.woocommerce input[type="search"],
.woocommerce input[type="tel"],
.woocommerce input[type="text"],
.woocommerce input[type="url"],
.woocommerce textarea,
.woocommerce-page form .form-row textarea,
.woocommerce-page input[type="email"],
.woocommerce-page input[type="number"],
.woocommerce-page input[type="password"],
.woocommerce-page input[type="reset"],
.woocommerce-page input[type="search"],
.woocommerce-page input[type="tel"],
.woocommerce-page input[type="text"],
.woocommerce-page input[type="url"],
.woocommerce-page textarea {
  border-color: var(--color-dark);
}
.variations td.value {
  width: max-content;
  margin-right: 10px;
  display: flex !important;
  align-items: baseline;
  gap: 15px;
}
.variations .reset_variations {
  color: var(--color-red) !important;
  margin-left: 10px !important;
  opacity: 1 !important;
  font-size: 14px !important;
}
@media (max-width: 991px) {
  .woocommerce-product-gallery__wrapper .wp-post-image {
    max-height: 400px;
  }
}
@media (min-width: 992px) {
  .woocommerce-product-gallery__wrapper .wp-post-image {
    max-height: 600px;
  }
}
.wc-block-cart__main .wc-block-cart-items {
  border-bottom: 1px solid var(--color-red) !important;
}
.wc-block-cart__main .wc-block-cart-items td,
.wc-block-components-order-summary-item__quantity,
.woocommerce-js .widge_shopping_cart .total,
.woocommerce-js a.remove:before,
.woocommerce-js a.remove:hover:before,
.woocommerce-js.widget_shopping_cart .total {
  border-color: var(--color-red) !important;
}
.woocommerce .widget_shopping_cart .cart_list li a.remove,
.woocommerce-js
  .astra-cart-drawer
  .astra-cart-drawer-content
  .woocommerce-mini-cart__total
  .amount,
.wc-block-components-order-summary
  .wc-block-components-order-summary-item__quantity,
.woocommerce.widget_shopping_cart .cart_list li a.remove,
.woocommerce-js ul.cart_list li > a,
.woocommerce-js ul.product_list_widget li > a,
.wc-block-components-title.wc-block-components-checkout-step__title {
  color: var(--color-red) !important;
}
.wc-block-components-quantity-selector
  input.wc-block-components-quantity-selector__input {
  font-size: var(--font-size-18) !important;
}
.wc-block-components-title.wc-block-components-title {
  font-size: var(--font-size-22) !important;
}
.woocommerce-message:focus-visible,
.woocommerce-info:focus-visible,
.wp-element-button {
  outline: none; /* removes the default black border */
}
.wc-block-components-order-summary
  .wc-block-components-order-summary-item__quantity {
  border: 1px solid var(--color-red) !important;
  font-size: var(--font-size-16) !important;
}
.wc-block-components-order-summary-item__individual-price,
.wc-block-components-order-summary
  .wc-block-components-order-summary-item__individual-prices
  del {
  font-size: var(--font-size-16) !important;
}

.editor-styles-wrapper
  table.wc-block-cart-items
  .wc-block-cart-items__row
  .wc-block-cart-item__quantity
  .wc-block-cart-item__remove-link
  svg,
table.wc-block-cart-items
  .wc-block-cart-items__row
  .wc-block-cart-item__quantity
  .wc-block-cart-item__remove-link
  svg {
  fill: var(--color-red) !important;
}
.widget_shopping_cart_content .woocommerce-mini-cart__buttons.buttons {
  display: flex;
}
.widget_shopping_cart_content .button.wc-forward {
  margin-bottom: 0 !important;
}
.widget_shopping_cart_content .button.checkout.wc-forward {
  margin-top: 0 !important;
}
.ast-desktop .astra-cart-drawer {
  width: 35% !important;
}
.woocommerce-error,
.woocommerce-info,
.woocommerce-message {
  color: var(--color-black) !important;
  background-color: rgb(249 211 34 / 41%) !important;
}
.woocommerce-cart.woocommerce-page .entry-header,
.woocommerce-checkout.woocommerce-page .entry-header {
  display: none;
}
.wp-block-woocommerce-cart-order-summary-block,
.wp-block-woocommerce-checkout-order-summary-block {
  background: var(--sidebar-bg-color);
  color: #000;
  padding: 20px;
  border-radius: 20px;
}
.wc-block-components-order-summary-item {
  border-bottom: 1px solid #00000054;
  margin-bottom: 20px;
}
.wc-block-cart__totals-title {
  font-size: var(--font-size-18) !important;
}
.editor-styles-wrapper
  table.wc-block-cart-items
  .wc-block-cart-items__row
  .wc-block-components-product-name,
table.wc-block-cart-items
  .wc-block-cart-items__row
  .wc-block-components-product-name {
  font-size: var(--font-size-20) !important;
  font-weight: 500;
}
.site-footer-section a {
  color: var(--color-white) !important;
}
.site-footer-section a:hover {
  color: var(--color-yellow) !important;
}
.wc-block-checkout__terms,
.wc-block-components-checkbox__label {
  font-size: var(--font-size-16) !important;
}
.wc-block-components-checkout-return-to-cart-button {
  color: var(--color-red-dark) !important;
  font-size: var(--font-size-18) !important;
}

.woocommerce-page.woocommerce-edit-account .entry-content .woocommerce,
.woocommerce-page .entry-content .woocommerce {
  margin-left: 0;
  margin-right: 0;
}
/* category and shop page product loop css */
.archive .woocommerce ul.products li.product.desktop-align-left,
.archive .woocommerce-page ul.products li.product.desktop-align-left,
.related.products ul.products li.product.desktop-align-left {
  padding: 10px 10px;
  border-radius: 10px;
  box-shadow: 0px 0px 7px #c4b9ba;
  position: relative;
}

.archive .woocommerce-page ul.products li.product.desktop-align-left .button,
.related.products ul.products li.product.desktop-align-left .button {
  font-size: 15px;
  width: max-content;
}
.archive
  .woocommerce-js
  ul.products
  li.product
  .astra-shop-summary-wrap
  .button,
.related.products ul.products li.product .astra-shop-summary-wrap .button {
  position: relative;
  bottom: 0px;
}
@media (min-width: 993px) {
  .ast-left-sidebar #secondary {
    margin-top: 0px;
    padding-right: 0;
  }
  .ast-left-sidebar #primary {
    margin-top: 0px;
  }
}
.archive .woof_autohide_wrapper {
  display: none;
}

.archive .astra-shop-summary-wrap .woocommerce-loop-product__title,
.related.products .woocommerce-loop-product__title,
.site-main.weekly-product-specials ul.products li .woocommerce-loop-product__title{
  color: var(--color-red-dark);
}
.archive .woocommerce-products-header__title.page-title {
  display: none;
}
.ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title,
.related.products .woocommerce-loop-product__title {
  display: -webkit-box;
  -webkit-line-clamp: 1; /* number of lines */
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  min-height: 20px;
}
.woocommerce ul.products li.product {
  display: flex;
  flex-direction: column;
}

.woocommerce ul.products li.product .product-inner,
.woocommerce ul.products li.product .mf-product-content {
  display: flex;
  flex-direction: column;
  flex: 1;
}

.woocommerce ul.products li.product .button {
  margin-top: auto;
}
.archive img.attachment-woocommerce_thumbnail.size-woocommerce_thumbnail,
.related.products
  img.attachment-woocommerce_thumbnail.size-woocommerce_thumbnail {
  border-radius: 10px;
}
.archive img.attachment-woocommerce_thumbnail.size-woocommerce_thumbnail:hover,
.related.products
  img.attachment-woocommerce_thumbnail.size-woocommerce_thumbnail:hover {
  transform: scale(1.05);
  transition: 0.4s;
}

/* css for load effect */
.archive .ast-woocommerce-container .woocommerce-breadcrumb {
  display: none;
}
.woof_products_top_panel .woof_reset_button_2 {
  padding: 7px 15px;
  font-size: 14px;
}
.woocommerce-js div.product form.cart .button.single_add_to_cart_button {
  padding: 10px 20px;
  font-size: 16px;
}
.single_variation_wrap .quantity .screen-reader-text {
  display: none !important;
}
.woocommerce-js .quantity .qty {
  max-height: 25px;
}
.woocommerce .woocommerce-message a.button {
  font-size: var(--font-size-15);
}
.woocommerce-js
  .astra-cart-drawer
  .astra-cart-drawer-content
  .woocommerce-mini-cart__buttons
  .button:not(.checkout):not(.ast-continue-shopping),
.woocommerce-js
  .astra-cart-drawer
  .astra-cart-drawer-content
  .woocommerce-mini-cart__buttons
  a.checkout {
  font-size: var(--font-size-15);
  line-height: normal;
}
.widget-area.secondary {
  background: #ffffff;
  padding-left: 30px;
  border: 1px solid #ccc;
  padding: 0;
}
.post-type-archive .ast-header-breadcrumb {
  display: none !important;
}
.sidebar-main {
  /* padding: 10px;
  background: var(--sidebar-bg-color); */
  margin: 5px;
}
.woocommerce-js .widget_price_filter .price_slider_wrapper .ui-widget-content {
  width: -webkit-fill-available !important;
}
.woof_redraw_zone .icheckbox_square-red {
  border: 1px solid var(--color-dark) !important;
}
.woocommerce.widget_price_filter h4 {
  border-bottom: 0px !important;
}
.woof_redraw_zone .woof_container {
  margin-bottom: 20px !important;
}
#secondary,
#secondary button,
#secondary input,
#secondary select,
#secondary textarea {
  font-size: var(--font-size-15) !important;
}
.woof_container_inner h4 {
  font-size: var(--font-size-18) !important;
  border-bottom: 1px solid #c3c3c3;
  padding-bottom: 10px;
}
/* animation ---- */
/* Base animation */
@keyframes slowUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Apply to product items */
ul.products li.product {
  opacity: 0; /* start hidden */
  animation: slowUp 0.8s ease forwards;
}

/* Staggered delays for sequential reveal */
ul.products li.product:nth-child(1) {
  animation-delay: 0.2s;
}
ul.products li.product:nth-child(2) {
  animation-delay: 0.4s;
}
ul.products li.product:nth-child(3) {
  animation-delay: 0.6s;
}
ul.products li.product:nth-child(4) {
  animation-delay: 0.8s;
}
ul.products li.product:nth-child(5) {
  animation-delay: 1s;
}
/* Continue pattern as needed */
/* my-account */

/* ===== My Account Page Enhancement ===== */

.woocommerce-account .woocommerce {
  /* display: flex;
  gap: 40px;
  align-items: flex-start; */
  padding: 20px 0px;
}

/* Sidebar Navigation */
.woocommerce-MyAccount-navigation {
  width: 280px;
  background: #fff;
  border-radius: 16px;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
  overflow: hidden;
}

/* Navigation List */
.woocommerce-MyAccount-navigation ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.woocommerce-MyAccount-navigation ul li {
  border-bottom: 1px solid #00000034;
}

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

.woocommerce-MyAccount-navigation ul li a {
  display: block;
  padding: 18px 24px;
  color: var(--color-gray);
  text-decoration: none;
  font-size: 16px;
  font-weight: 500;
  transition: all 0.3s ease;
  position: relative;
}

/* Hover Effect */
.woocommerce-MyAccount-navigation ul li a:hover {
  background-image: linear-gradient(
    135deg,
    rgb(217, 2, 5) 0%,
    rgb(217, 2, 5) 11%,
    rgb(74, 135, 9) 100%
  );
  color: #fff;
  padding-left: 32px;
}

/* Active Menu */
.woocommerce-MyAccount-navigation-link.is-active a {
  background-image: linear-gradient(
    135deg,
    rgb(217, 2, 5) 0%,
    rgb(217, 2, 5) 11%,
    rgb(74, 135, 9) 100%
  );
  color: #fff;
  font-weight: 600;
}
.woocommerce-account .woocommerce::before,
.woocommerce-account .woocommerce::after {
  display: none;
}
/* Content Area */
.woocommerce-MyAccount-content {
  flex: 1;
  background: #fff;
  padding: 35px;
  border-radius: 16px;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
}

/* Heading */
.woocommerce-MyAccount-content h2,
.woocommerce-MyAccount-content h3 {
  font-size: var(--font-size-28);
  margin-bottom: 20px;
  color: var(--color-dark);
  font-weight: 500;
}

/* Paragraph Text */
.woocommerce-MyAccount-content p {
  font-size: var(--font-size-16);
  line-height: 1.8;
  color: var(--color-gray);
}

/* Highlight Links */
.woocommerce-MyAccount-content a {
  color: var(--color-red-dark);
  font-weight: 600;
  text-decoration: none;
}

.woocommerce-MyAccount-content a:hover {
  color: var(--color-red);
}

/* Responsive */
@media (max-width: 768px) {
  .woocommerce-account .woocommerce {
    flex-direction: column;
    padding: 20px;
  }

  .woocommerce-MyAccount-navigation {
    width: 100%;
  }

  .woocommerce-MyAccount-content {
    width: 100%;
  }
  .archive .woocommerce-page ul.products li.product.desktop-align-left .button,
  .related.products ul.products li.product.desktop-align-left .button {
    font-size: 13px;
    width: -webkit-fill-available;
  }
}
.woocommerce-MyAccount-content header {
  background: var(--sidebar-bg-color) !important;
}
/* .woocommerce-account .woocommerce {
  display: flex;
} */
.woocommerce-account .woocommerce h2 {
  font-size: var(--font-size-22);
}
.woocommerce-account .woocommerce form {
  padding: 35px;
  border-radius: 16px !important;
  border: none !important;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.3);
}
/* sort select css */

.woocommerce-result-count {
  font-family: "Poppins", sans-serif;
  font-size: 15px;
  font-weight: 500;
  color: var(--color-dark);
  letter-spacing: 0.5px;
}

.woocommerce-ordering {
  position: relative;
}

.woocommerce-ordering select {
  padding: 8px 12px !important;
  border: 1px solid #ddd !important;
  border-radius: 6px !important;
  background-color: #fff !important;
  font-size: var(--font-size-14);
  color: var(--color-dark);
  transition: all 0.3s ease;
}

.woocommerce-ordering select:hover {
  border-color: var(--color-gray);
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.6);
}

.woocommerce-products-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
  padding: 10px 0;
  /* border-bottom: 1px solid #eee; */
}
/*----------------- contact form ---------------- */

.srfm-form-container .srfm-form,
.srfm-form-container .srfm-password-protected-form {
  gap: 10px !important;
}
.srfm-success-box-description h2 {
  color: var(--color-green-dark) !important;
}
.srfm-btn-frontend.srfm-button.srfm-submit-button {
  padding: 10px 55px 10px 30px !important;
  font-size: 16px !important;
  color: #ffffff;
  border-color: #62ab45 !important;
  background-color: #62ab45 !important;
  border-radius: 25px !important;
  position: relative;
}
.srfm-btn-frontend.srfm-button.srfm-submit-button:hover {
  border-color: #62ab45 !important;
  background-color: #fff !important;
  color: #62ab45 !important;
  border: 2px solid #62ab45 !important;
}
.srfm-btn-frontend.srfm-button.srfm-submit-button::after {
  content: "\f061"; /* Font Awesome map-marker unicode */
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-left: 10px;
  position: absolute;
  right: 30px;
  top: 12px;
  color: #fff;
}
.srfm-btn-frontend.srfm-button.srfm-submit-button:hover::after {
  color: #62ab45 !important;
}
.page-id-1633 .ast-breadcrumbs-wrapper {
  display: none !important;
}
.page-id-1633 .main-header-bar.ast-header-breadcrumb {
  padding: 0px !important;
}
.page-id-1633 .ast-container {
  padding-top: 0px !important;
  padding-bottom: 0px !important;
}
.page-id-1633 .form-block {
  box-shadow: 0px 0px 10px #fff;
  border-radius: 20px;
}

.srfm-form input,
.srfm-form textarea {
  width: 100%;
  padding: 7px 18px !important;
  border: 1px solid #4caf50 !important;
  border-radius: 25px !important;
  background: var(--color-white) !important;
  font-size: var(--font-size-15) !important;
  color: var(--color-dark) !important;
  transition: all 0.3s ease;
  outline: none;
  box-sizing: border-box;
}

/* PLACEHOLDER */
.srfm-form input::placeholder,
.srfm-form textarea::placeholder {
  color: var(--color-dark) !important;
  font-weight: 400 !important;
}

/* HOVER EFFECT */
.srfm-form input:hover,
.srfm-form textarea:hover {
  border-color: #8bc34a !important;
}

/* FOCUS EFFECT */
.srfm-form input:focus,
.srfm-form textarea:focus {
  border-color: #5fae3e !important;
  box-shadow: 0 0 0 4px rgba(95, 174, 62, 0.15) !important;
  transform: translateY(-2px);
}

/* TEXTAREA */
.srfm-form textarea {
  min-height: 160px;
  resize: vertical;
}

/* RESPONSIVE */
@media (max-width: 768px) {
  .srfm-form input,
  .srfm-form textarea {
    font-size: 15px;
    padding: 14px;
  }
  .srfm-form button {
    width: 100%;
  }
  .contact-columns p.has-text-align-left {
    text-align: center !important;
  }
}

.page-id-1633 .spectra-google-map {
  width: 100% !important;
}
.contact-columns {
  gap: 25px !important;
  align-items: stretch !important; /* Makes all blocks equal height */
}
.contact-columns .wp-block-spectra-container .wp-block-columns {
  gap: 10px !important;
  width: 100% !important;
  align-items: center !important;
}
/* about us page */
.page-id-1631 .ast-breadcrumbs-wrapper {
  display: none !important;
}
.page-id-1631 .main-header-bar.ast-header-breadcrumb {
  padding: 0px !important;
}
.page-id-1631 .ast-container {
  padding-top: 0px !important;
  padding-bottom: 0px !important;
}
.about-banner-section .wp-block-image {
  box-shadow: 0px 1px 15px 0px #ffffff;
  border-radius: 20px;
}
.hk-food-white-logo {
  box-shadow: none !important;
}
.about-banner-btns {
  width: 100% !important;
}
.about-banner-btns .explore-btn,
.about-banner-btns .contact-btn {
  position: relative;
}
.about-banner-btns .explore-btn::after,
.page-id-2786 .about-banner-btns .contact-btn::after,
.content a:after {
  content: "\f061"; /* Font Awesome map-marker unicode */
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-left: 10px;
  position: absolute;
  right: 30px;
  top: 15px;
  color: #fff;
}
.content a:after {
  right: 25px;
  top: 12px;
}
.content a:hover {
  background: transparent;
  color: #fff !important;
  border: 2px solid #aa050b !important;
}
.about-banner-btns .explore-btn a {
  padding: 0 55px 0 30px !important;
}
.about-banner-btns .contact-btn::after {
  content: "\f095"; /* Font Awesome map-marker unicode */
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-left: 10px;
  position: absolute;
  right: 30px;
  top: 14px;
  color: #fff;
}
.contact-columns .wp-block-spectra-container {
  transition: all 0.35s ease;
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.25);
  cursor: pointer;
}
.contact-columns .wp-block-spectra-container:hover {
  transform: translateY(-10px) scale(1.03);
  box-shadow: 0 18px 30px rgba(255, 94, 94, 0.35) !important;
  background: #ffffff;
}
.title-seperator {
  margin-left: 0px !important;
}

.contact-btn,
.about-banner-btns .explore-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 52px;
  border-radius: 10px;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  text-decoration: none;
  gap: 12px;
  box-sizing: border-box;
}
.contact-btn a,
.about-banner-btns .explore-btn a {
  padding: 0 55px 0 30px !important;
}
.content a {
  position: relative;
  padding: 10px 60px 10px 30px;
  border: 2px solid #aa050b;
}
.contact-btn i,
.about-banner-btns .explore-btn i,
.content a i,
.contact-btn svg,
.about-banner-btns .explore-btn svg,
.content a svg {
  width: 20px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin: 0;
  padding: 0;
  line-height: 1;
}

/* .about-banner-btns .explore-btn::after:hover {
      color: #5fae3e !important;
          fill: #3a9d23;  

}   */
.contact-btn:hover::after,
.about-banner-btns .explore-btn:hover::after,
.contact-btn:hover::after,
.about-banner-btns .explore-btn:hover::after {
  color: #3a9d23 !important;
  transform: scale(1.1);
  fill: #3a9d23 !important; /* green */
}

/*------------------- order checkout css --------------------*/

/* Main Wrapper */
.woocommerce-order {
  padding: 40px;
  background: #fcb90029;
  border-radius: 24px;
  box-shadow: 0 10px 35px rgba(0, 0, 0, 0.08);
  font-family: "Poppins", sans-serif;
}

/* Success Message */
.woocommerce-notice {
  background: #f3fff1;
  color: #2e7d32;
  padding: 18px 24px;
  border-left: 5px solid #2e7d32;
  border-radius: 12px;
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 35px;
}

/* Order Overview */
.woocommerce-order-overview {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 0px;
  padding: 0;
  margin-bottom: 40px;
  list-style: none;
}

.woocommerce-order-overview li {
  background:  var(--color-white);
  padding: 20px;
  border-radius: 16px;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.06);
  font-size: 13px !important;
  color:  var(--color-dark);
  font-weight: 600;
}

.woocommerce-order-overview strong {
  display: block;
  margin-top: 8px;
  color:  var(--color-red-dark);
  font-size: 20px;
  font-weight: 700;
}

/* Section Boxes */
.woocommerce-order-details,
.woocommerce-customer-details {
  background:  var(--color-white);
  border-radius: 20px;
  padding: 30px;
  margin-top: 35px;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.06);
  border: none;
}

/* Section Headings */
.woocommerce-order-details h2,
.woocommerce-customer-details h2 {
  font-size: 28px;
  font-weight: 700;
  margin-bottom: 25px;
  color: #2e7d32;
  position: relative;
  border-color: var(--color-gray) !important;
}

.woocommerce-order-details h2::after,
.woocommerce-customer-details h2::after {
  content: "";
  width: 70px;
  height: 4px;
  background:  var(--color-red-dark);
  display: block;
  margin-top: 10px;
  border-radius: 20px;
}
.woocommerce-MyAccount-orders.shop_table thead th span{
   color: var(--color-dark) !important;
}

/* Table Design */
.shop_table {
  border-collapse: collapse !important;
  overflow: hidden;
  border-radius: 16px;
}

.shop_table thead {
  background: var(--color-green-dark);
  color: var(--color-white);
}

.shop_table th,
.shop_table td {
  padding: 18px 20px;
  border: 1px solid var(--color-gray) !important;
  font-size: 16px;
  font-weight: 600 !important;
}

.shop_table tbody tr:nth-child(even) {
  background: #fffaf5;
}

.shop_table tbody tr:hover {
  background: #fff1df;
  transition: 0.3s ease;
}

/* Product Names */
.shop_table a {
  color: var(--color-red-dark);
  font-weight: 600;
  text-decoration: none;
}

/* Totals */
.shop_table tfoot th,
.shop_table tfoot td {
  font-weight: 700;
  color: var(--color-green-dark);
  background: #fffdf9;
}

/* Billing Address */
address {
  font-style: normal;
  line-height: 1.9;
  font-size: 16px;
  color: var(--color-dark);
  border: 1px solid var(--color-gray) !important;
}
.woocommerce .woocommerce-Addresses .woocommerce-Address-title,
.woocommerce .woocommerce-Addresses .woocommerce-column__title,
.woocommerce .woocommerce-MyAccount-content .woocommerce-Address-title,
.woocommerce .woocommerce-MyAccount-content .woocommerce-column__title,
.woocommerce .woocommerce-customer-details .woocommerce-Address-title,
.woocommerce .woocommerce-customer-details .woocommerce-column__title,
.woocommerce-account .woocommerce-Addresses .woocommerce-Address-title,
.woocommerce-account .woocommerce-Addresses .woocommerce-column__title,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-column__title,
.woocommerce-account .woocommerce-customer-details .woocommerce-Address-title,
.woocommerce-account .woocommerce-customer-details .woocommerce-column__title {
  border-color: var(--color-gray) !important;
}
/* Phone & Email */
address a {
  color: var(--color-green-dark);
  text-decoration: none;
  font-weight: 600;
}
.woocommerce-js ul.order_details li {
  padding-left: 2em;
  margin-right: 1em;
}
/* Mobile Responsive */
@media (max-width: 768px) {
  .woocommerce-order-overview {
    gap: 20px;
  }

  .woocommerce-order {
    padding: 20px;
  }

  .woocommerce-order-details,
  .woocommerce-customer-details {
    padding: 20px;
  }

  .shop_table th,
  .shop_table td {
    padding: 14px;
    font-size: 14px;
  }

  .woocommerce-order-details h2,
  .woocommerce-customer-details h2 {
    font-size: 22px;
  }
}
.woocommerce-checkout address {
  border: none !important;
}
/* ----------------- checkout input -----------------*/
/* Input wrapper */
.woocommerce-checkout .form-row {
  position: relative;
  margin-bottom: 25px;
}
.wp-block-woocommerce-cart .wc-block-components-text-input.is-active label,
.wp-block-woocommerce-checkout .wc-block-components-text-input.is-active label {
  top: -10px !important;
  background:  var(--color-white);;
  display: block;
  margin: 0 0px;
  padding: 0 11px;
  color: var(--color-red);
  font-size: 16px !important;
}
.wc-blocks-components-select .wc-blocks-components-select__label {
  top: -10px !important;
  background: var(--color-white);
  display: block;
  margin: 0 0px;
  padding: 0 11px;
  color: var(--color-red);
  font-size: 13px !important;
}
.wc-block-components-form
  .wc-block-components-text-input
  input:-webkit-autofill,
.wc-block-components-form
  .wc-block-components-text-input.is-active
  input[type="email"],
.wc-block-components-form
  .wc-block-components-text-input.is-active
  input[type="number"],
.wc-block-components-form
  .wc-block-components-text-input.is-active
  input[type="password"],
.wc-block-components-form
  .wc-block-components-text-input.is-active
  input[type="tel"],
.wc-block-components-form
  .wc-block-components-text-input.is-active
  input[type="text"],
.wc-block-components-form
  .wc-block-components-text-input.is-active
  input[type="url"],
.wc-block-components-text-input input:-webkit-autofill,
.wc-block-components-text-input.is-active input[type="email"],
.wc-block-components-text-input.is-active input[type="number"],
.wc-block-components-text-input.is-active input[type="password"],
.wc-block-components-text-input.is-active input[type="tel"],
.wc-block-components-text-input.is-active input[type="text"],
.wc-block-components-text-input.is-active input[type="url"],
.wc-blocks-components-select .wc-blocks-components-select__select {
  padding-top: 5px !important;
}
.wc-block-components-sidebar .wc-block-components-totals-item {
  color: var(--color-red-dark) !important;
}

/*------------inner pages ----------*/

/* terms page, privacy page */
.page-id-2691 .ast-breadcrumbs-wrapper,
.page-id-2691 .entry-header,
.page-id-2691 .ast-breadcrumbs-wrapper,
.page-id-3 .ast-breadcrumbs-wrapper,
.page-id-3 .entry-header,
.page-id-3 .ast-breadcrumbs-wrapper,
.page-id-11 .ast-breadcrumbs-wrapper,
.page-id-11 .entry-header,
.page-id-11 .ast-breadcrumbs-wrapper,
.page-id-2786 .ast-breadcrumbs-wrapper,
.page-id-2786 .entry-header {
  display: none !important;
}
.page-id-2691 .main-header-bar.ast-header-breadcrumb,
.page-id-3 .main-header-bar.ast-header-breadcrumb,
.page-id-11 .main-header-bar.ast-header-breadcrumb {
  padding: 0px !important;
}
.page-id-2691 .site-content .ast-container,
.page-id-3 .site-content .ast-container,
.page-id-11 .site-content .ast-container {
  width: 100%;
  max-width: 100%;
  min-width: 100%;
  padding: 0;
}
.page-id-2691 .ast-container,
.page-id-3 .ast-container,
.page-id-11 .ast-container {
  padding-top: 0px !important;
  padding-bottom: 0px !important;
}
.page-id-2691 .ast-article-single,
.page-id-3 .ast-article-single,
.page-id-11 .ast-article-single {
  margin: 0;
  padding: 0;
}
.page-id-2691 #primary,
.page-id-3 #primary,
.page-id-11 #primary {
  margin-top: 0px !important;
}
/* filters responsive css */

/* MOBILE FILTER DRAWER */
@media (max-width: 768px) {
  /* Top Toolbar */
  .woocommerce-ordering {
    float: right;
    margin-bottom: 15px !important;
  }

  /* Filter Button */
  .mobile-filter-btn {
    display: inherit;
    align-items: center;
    margin-left: auto;
    justify-content: center;
    background:var(--color-green-dark);
    color: var(--color-white);
    border: none;
    border-radius: 6px;
    padding: 10px 14px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    margin-bottom: 15px;
    margin-right: 0;
    line-height: 1;
  }

  /* Sidebar Drawer */
  .ast-woo-sidebar-widget {
    position: fixed !important;
    top: 0;
    left: -100%;
    width: 290px;
    height: 100vh;
    background: var(--color-white);
    z-index: 999999;
    overflow-y: auto;
    padding: 20px 15px;
    transition: 0.35s ease;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
  }

  /* Active Drawer */
  .ast-woo-sidebar-widget.active {
    left: 0;
  }

  /* Overlay */
  .filter-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: 99999;
    opacity: 0;
    visibility: hidden;
    transition: 0.3s ease;
  }

  .filter-overlay.active {
    opacity: 1;
    visibility: visible;
  }

  /* Close Button */
  .close-filter {
    background: var(--color-red-dark);
    color: var(--color-white);
    border: none;
    border-radius: 4px;
    padding: 10px 14px;
    margin-bottom: 20px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    width: 100%;
  }

  /* Prevent Body Scroll */
  body.filter-open {
    overflow: hidden;
  }
}
.ast-archive-entry-banner[data-post-type="product"] .ast-container {
  width: fit-content !important;
  background: #00000066;
  border-radius: 20px;
  padding: 10px 70px 20px 70px;
}
/* product sidebar css */

/* =========================
   SHOP FILTER SIDEBAR
========================= */

.ast-woo-sidebar-widget {
  background: #fce3a3;
  border-radius: 16px;
  padding: 22px 18px;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.08);
  border: 1px solid #f1e2b8;
}

/* Widget Titles */
.ast-woo-sidebar-widget h2,
.ast-woo-sidebar-widget h3,
.ast-woo-sidebar-widget .widget-title {
  font-size: 22px;
  font-weight: 700;
  color: #1d1d1d;
  margin-bottom: 18px;
  position: relative;
  padding-bottom: 10px;
}

/* Underline */
.ast-woo-sidebar-widget .widget-title::after,
.ast-woo-sidebar-widget h2::after,
.ast-woo-sidebar-widget h3::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 55px;
  height: 3px;
  background: var(--color-green-dark);
  border-radius: 10px;
}

/* Filter Sections */
.ast-woo-sidebar-widget .wc-block-components-filter-reset-button,
.ast-woo-sidebar-widget .wc-block-product-categories,
.ast-woo-sidebar-widget .wc-block-attribute-filter,
.ast-woo-sidebar-widget .wc-block-stock-filter {
  margin-bottom: 28px;
}

/* Category / Checkbox Items */
.ast-woo-sidebar-widget li {
  list-style: none;
  margin-bottom: 12px;
}

/* Checkbox Layout */
.ast-woo-sidebar-widget label {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 15px;
  color: var(--color-gray);
  cursor: pointer;
  transition: 0.2s ease;
}

/* Hover Effect */
.ast-woo-sidebar-widget label:hover {
  color: var(--color-green-dark);
  transform: translateX(3px);
}

/* Modern Checkboxes */
.ast-woo-sidebar-widget input[type="checkbox"] {
  width: 18px;
  height: 18px;
  accent-color: var(--color-green-dark);
  cursor: pointer;
  border-radius: 4px;
}

/* Price Filter */
.wc-block-components-price-slider__range-input-progress {
  --range-color: var(--color-green-dark) !important;
}

.wc-block-components-price-slider__range-text {
  font-weight: 600;
  color: var(--color-red-dark);
}

/* Sidebar Scroll */
.ast-woo-sidebar-widget::-webkit-scrollbar {
  width: 6px;
}

.ast-woo-sidebar-widget::-webkit-scrollbar-thumb {
  background: var(--color-green-dark);
  border-radius: 20px;
}

/* Count Numbers */
.wc-block-product-categories-list-item-count,
.wc-block-checkbox-list-count {
  color: var(--color-red-dark);
  font-weight: 600;
}

/* Divider */
.ast-woo-sidebar-widget hr {
  border: none;
  height: 1px;
  background: #e7d6aa;
  margin: 18px 0;
}

/* Mobile Drawer Improvements */
@media (max-width: 768px) {
  .ast-woo-sidebar-widget {
    border-radius: 0;
    padding-top: 40px;
  }

  .close-filter {
    position: absolute;
    top: 12px;
    right: 10px;
    z-index: 99;
    background: var(--color-red-dark);
    color: var(--color-white);
    border: none;
    padding: 9px;
    width: fit-content;
    border-radius: 8px;
    font-size: 15px;
    font-weight: 600;
    margin-bottom: 20px;
  }
}
.archive.tax-product_cat .ast-header-breadcrumb {
  display: none !important;
}
@media (max-width: 544px) {
  .footer-widget-area[data-section="section-footer-menu"]
    .astra-footer-mobile-vertical-menu
    .menu-item {
    align-items: flex-start !important;
  }
  .site-primary-footer-inner-wrap .site-footer-section {
    margin-bottom: 30px !important;
    border-bottom: 1px solid #ffffffb0;
    padding-bottom: 30px;
  }
  .site-primary-footer-inner-wrap .site-footer-section:last-child {
    border-bottom: 0px !important;
  }
  .ast-archive-entry-banner[data-post-type="product"] .ast-container h1 {
    font-size: 1.7rem !important;
  }
}
.woocommerce-account.woocommerce-page .ast-breadcrumbs-wrapper {
   display: none!important;
}
/* ------ css for shop page filters scroll --------- */

.archive.post-type-archive .widget-area.secondary{
   height: fit-content !important;
}

/* Product Categories Scroll */
.woof_container_product_cat .woof_block_html_items{
    max-height:220px;
}

/* Product Flavour Scroll */
.woof_container_inner_productcategories .woof_block_html_items,
.woof_container_pa_product-flavour .woof_block_html_items,
.woof_container_pa_flavour .woof_block_html_items,
.woof_container_inner_productweight .woof_block_html_items {
    max-height:200px;
}

/* All Checkbox Filters Scroll */
.woof_block_html_items{
    overflow-y:auto;
    overflow-x:hidden;
    padding-right:8px;

    /* Firefox */
    scrollbar-width:none;
}

/* Show scrollbar on hover (Firefox) */
.woof_block_html_items:hover{
    scrollbar-width:thin;
    scrollbar-color:#2e7d32 #ffffff22;
}

/* Chrome, Edge, Safari */
.woof_block_html_items::-webkit-scrollbar{
    width:0;
    transition:width .3s ease;
}

/* Show scrollbar on hover */
.woof_block_html_items:hover::-webkit-scrollbar{
    width:4px;
}

.woof_block_html_items::-webkit-scrollbar-thumb{
    background:#2e7d32;
    border-radius:20px !important;
}

.woof_block_html_items::-webkit-scrollbar-track{
    background:#f5f5f545;
    border-radius:20px !important;
}
.woof_block_html_items::-webkit-scrollbar{
    width:0;
}

.woof_block_html_items:hover::-webkit-scrollbar{
    width:3px;
}

.woof_block_html_items::-webkit-scrollbar-track{
    background:transparent;
}

 /* weekly products page */
.site-main.weekly-product-specials ul.products li{
       padding: 10px 10px;
    border-radius: 10px;
    box-shadow: 0px 0px 7px #c4b9ba;
    position: relative;
}
.site-main.weekly-product-specials ul.products li .astra-shop-summary-wrap {
    text-align: left;
}
/* shop page loader */
#woof_html_buffer{
    position: fixed !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    width: 80px !important;
    height: 30px !important;
    background: transparent !important;
    font-size: 0 !important;
    color: transparent !important;
    box-shadow: none !important;
}

#woof_html_buffer::before{
    content: "";
    display: block;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: #2e7d32;
    animation: dots 1.2s infinite ease-in-out;
    box-shadow:
        24px 0 0 #2e7d32,
        48px 0 0 #2e7d32;
}

@keyframes dots{
    0%,80%,100%{
        transform: scale(0.5);
        opacity:.5;
    }
    40%{
        transform: scale(1);
        opacity:1;
    }
}
.contact-page-info .wp-block-column a:hover {
  color: var(--color-red-dark) !important;
  font-weight: 500!important;
}