/* WooCommerce Styles */
.woocommerce ul.products li.product a img {
    width: 100%;
    height: auto;
}

.woocommerce ul.products li.product .woocommerce-loop-category__title,
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-size: 1.2em;
	font-weight: bold;
	color: var(--text);
	font-family: 'Duravit-Font', 'Helvetica Neue', Arial, sans-serif;
}



/* Product dimensions styling */
.product-dimensions {
    font-size: 14px;
    font-style: normal;
    font-weight: 300;
    height: 19px;
    line-height: 19px;
    margin-bottom: 8px;
    color: var(--text);
    display: block;
    font-family: 'Duravit-Font', 'Helvetica Neue', Arial, sans-serif;
}

/* Adjust product info container */
.product-info {
    position: relative;
    padding-top: 10px;
}

/* Price positioning */
.price {
    margin-top: 5px;
}

/* WooCommerce Pagination Styles */
.woocommerce-pagination {
    display: flex;
    justify-content: center;
    margin-top: 20px;
    flex-wrap: wrap;
}

.woocommerce-pagination ul.page-numbers {
    display: flex;
    list-style: none;
    padding: 0;
    margin: 0;
}

.woocommerce-pagination ul.page-numbers li {
    margin: 0 5px;
}



.woocommerce-pagination ul.page-numbers a.page-numbers,
.woocommerce-pagination ul.page-numbers span.page-numbers {
    display: block;
    padding: 5px 12px;
    border: 1px solid var(--light);
    border-radius: 5px;
    color: #444;
    text-decoration: none;
    background-color: #fff;
}

.woocommerce-pagination ul.page-numbers a.page-numbers:hover {
    background-color: #686868;
    color: #fff;
}

.woocommerce-pagination ul.page-numbers span.page-numbers.current {
    background-color: #686868;
    color: #fff;
}



@media (max-width: 768px) {
    /* Hide all pagination items by default */
    .woocommerce-pagination ul.page-numbers li {
        display: none;
        margin: 0;
    }

    /* Show only current page and arrow controls */
    .woocommerce-pagination ul.page-numbers li .current,
    .woocommerce-pagination ul.page-numbers li .prev,
    .woocommerce-pagination ul.page-numbers li .next {
        display: flex;
    }

    /* Show the LI elements containing visible controls */
    .woocommerce-pagination ul.page-numbers li:has(.current),
    .woocommerce-pagination ul.page-numbers li:has(.prev),
    .woocommerce-pagination ul.page-numbers li:has(.next) {
        display: flex;
        margin: 0 5px;
    }

    /* Ensure proper spacing and alignment */
    .woocommerce-pagination ul.page-numbers {
        justify-content: center;
        gap: 10px;
    }

    /* Style adjustments for mobile */
    .woocommerce-pagination ul.page-numbers li a,
    .woocommerce-pagination ul.page-numbers li span {
        padding: 5px 10px;
    }
}






/* WooCommerce Product Badge Styles */
.is_in_stock,
.onsale {
    background-color: var(--accent);
    border-color: var(--accent);
    border-radius: 4px;
    color: #fff;
    display: inline-block;
    font-size: 14.4px;
    font-weight: 700;
    height: auto;
    line-height: normal;
    position: absolute;
    top: 0;
    right: 0;
    width: auto;
    padding: 5px;
    z-index: 10; /* Ensure badge stays above hover images */
}

.woocommerce-breadcrumb {
    color: var(--text);
    margin-top: 20px;
    text-decoration: none;
    text-transform: uppercase;
    font-size: 20px;
    line-height: 28px;
    color: var(--accent);
    margin-top: 30px;
    padding-bottom: 12px;
    border-bottom: 3px solid #ccc;
}

.woocommerce-breadcrumb a {
    color: var(--text);
    text-decoration: none;
}

.woocommerce-breadcrumb a:hover {
    color: var(--accent);
}

.breadcrumb-delimiter {
    color: #c9c8c8;
    font-size: 30px;
    position: relative;
    bottom: -3px;
}


/* Catalogue Sidebar Styles */

/* Catalogue Layout Styles */
.catalogue-content-wrapper {
    display: flex;
    width: 100%;
    /* max-width: 1200px; */
    margin: 0 auto;
    padding: 20px 0;

    background-color: var(--light);
    color: var(--text);
    line-height: 1.6;


}

.catalogue-sidebar {
    width: 250px;
    padding-right: 20px;
}


.catalogue-sidebar .category-accordion-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: #fff; /* Rounded blocks of content bg color */
  padding: 20px 0;
  border-radius: 0px;
  margin-bottom: 5px;
  cursor: pointer;
}

.catalogue-main {
    flex-grow: 1; /* Allow main content to take remaining space */
}

.catalogue-main .product-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
}

.catalogue-main .product-card {
  /* background-color: #f9f9f9; */
  /* border: 1px solid #ddd; */
  /* border-radius: 4px; */
  overflow: hidden;
  transition: transform 0.3s ease;
}

.catalogue-main .product-card a {
  text-decoration: none;
}


.catalogue-main .product-card {
    position: relative;
    padding: 15px;
    background: white;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: var(--shadow);
    transition: var(--transition);
}


.catalogue-main .product-card:hover {
    /* transform: none;  */
    /* transform: translateY(-10px); */
    box-shadow: var(--shadow-hover);
}

.catalogue-main .product-image {
    transition: opacity 0.3s ease;
}

.catalogue-main .product-image-container {
  height: 250px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  position: relative;
}

.catalogue-main .product-image-container .product-image {
  width: 100%;
  height: 100%;
  object-fit: contain;
  position: absolute;
  top: 0;
  left: 0;
  transition: opacity 0.3s ease;
}

.catalogue-main .product-image-container .hover-image {
    opacity: 0;
}

.catalogue-main .product-card:hover .product-image-container .hover-image {
    opacity: 1;
}

.catalogue-main .product-card:hover .product-image-container .main-image {
    opacity: 0;
}

/* Container needs relative positioning for absolute hover image */
/* Fixed height container for consistent product card heights */
.catalogue-main .product-card {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.catalogue-main .product-card a {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.catalogue-main .product-image-container {
  height: 250px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  position: relative;
}

.catalogue-main .product-info {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.product {
    position: relative;
    display: inline-block;
}

.catalogue-main .product-info {
  /* padding: 15px; */
}


.catalogue-main .product-title, .catalogue-main .product-title a {
  font-size: 18px;
  font-weight: 300;
  line-height: 22px;
  text-decoration: none;
  margin-top: 10px;
  margin-bottom: 2px;
  color: var(--e-global-color-text);
}

.catalogue-main .product-description {
  font-size: 0.9rem;
  color: #777;
  margin-top: 5px;
}

.catalogue-main .product-info, span.price {
  font-size: 22px;
  font-weight: 400;
  line-height: 21px;
  text-decoration: none;
  margin-top: 5px;
  color: var(--e-global-color-text);
}

.catalogue-main .pagination {
  display: flex;
  justify-content: center;
  margin-top: 20px;
}

.catalogue-main .pagination button {
  background-color: #f9f9f9;
  border: 1px solid #ddd;
  border-radius: 4px;
  padding: 8px 16px;
  font-size: 0.9rem;
  color: #333;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

.catalogue-main .pagination button:hover {
  background-color: #eaeaea;
}

.catalogue-main .pagination button.active {
  background-color: #333;
  color: #fff;
}


.catalogue-main .category-accordion {
  margin-top: 20px;
  border-bottom: 1px solid #ddd;
}

.catalogue-main .category-accordion button {
  color: var(--e-global-color-text);
}



/* Responsive Design */
@media (max-width: 1000px) {
  .catalogue-main .product-grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

@media (max-width: 768px) {
  .catalogue-content-wrapper {
    flex-direction: column;
  }

  .catalogue-sidebar {
    width: 100%;
    padding-right: 0;
    margin-bottom: 20px;
  }

  .catalogue-main {
    width: 100%;
  }

  .catalogue-main .product-grid {
    grid-template-columns: repeat(2, 1fr) !important; /* Two columns for tablets */
  }
}

@media (max-width: 480px) {
  .catalogue-main .product-grid {
    grid-template-columns: 1fr !important; /* Single column for mobile */
  }
}


.catalogue-sidebar .category-accordion-container {
  margin-top: 20px;
  padding-right: 20px;
  font-size: 18px;
  font-weight: 100;
}

.catalogue-sidebar .category-accordion {
  padding: 0;
  margin: 0;
  line-height: 10px;
}

.catalogue-sidebar .category-accordion-header:hover {
  background-color: #ffffff;
}

.catalogue-sidebar .category-accordion-header span {
  color: var(--e-global-color-text);
  font-weight: 300;
}

.catalogue-sidebar .category-accordion-header i {
  font-size: 0.8rem;
  color: #777;
  transform: rotate(0deg);
  transition: transform 0.3s ease;
}

.catalogue-sidebar .category-accordion-header.active i {
  transform: rotate(180deg);
}

.catalogue-sidebar .category-accordion-content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease;
}

.catalogue-sidebar .category-accordion-content ul {
  list-style: none;
  padding-left: 20px;
}

.catalogue-sidebar .category-accordion-content li {
  margin-bottom: 5px;
}

.catalogue-sidebar .category-accordion-content label {
  cursor: pointer;
}

.catalogue-sidebar .category-accordion-content input[type="checkbox"] {
  margin-right: 5px;
}

.category-description {
  margin-top: 25px;
}

.category-description h2 {
  font-size: 22px;
  margin: 10px 0;
}

.category-description h3 {
  font-size: 20px;
  margin: 10px 0;
}


/* Catalogue Top Section Styles */
.category-cover-image {
  width: 100%;
  height: 300px;
  overflow: hidden;
  margin-bottom: 20px;
}

.category-cover-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.child-categories-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 20px;
  width: 100%;
  margin: 30px 0;
}

.child-category-item {
  text-align: center;
}

.child-category-image {
  width: 100%;
  height: 150px;
  overflow: hidden;
  margin-bottom: 10px;
}

.child-category-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.child-category-title {
  font-size: 1.2rem;
  font-weight: bold;
  color: var(--text);
  margin: 0;
}

.child-category-item-link {
  text-decoration: none;
  color: inherit;
}

.child-category-item-link:hover {
  opacity: 0.8;
}

@media (max-width: 1000px) {
  .child-categories-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 768px) {
  .child-categories-grid {
    grid-template-columns: 1fr;
  }

  .child-category-image {
    height: 150px;
  }
}

.breadcrumbs {
  font-size: 0.9rem;
  color: #777;
}

.breadcrumbs a {
  color: #777;
  text-decoration: none;
}

.breadcrumbs a:hover {
  text-decoration: underline;
}

.catalogue-top h1 {
  font-size: 2.5rem;
  margin-bottom: 20px;
  color: var(--e-global-color-text);
}

.category-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 20px;
}

.category-buttons button,
a.wpc-filters-open-widget
{
  background-color: #F4F3F1; /* Rounded blocks of content bg color */
  border: 1px solid #ddd;
  border-radius: 4px;
  padding: 8px 16px;
  font-size: 0.9rem;
  color: var(--e-global-color-text);
  cursor: pointer;
  transition: background-color 0.3s ease;
}

.category-buttons button a {
  color: var(--e-global-color-text);
  text-decoration: none;
}

a.wpc-filters-apply-button {
    background-color: var(--e-global-color-text) !important;
    border: none !important;
}

.category-buttons button:hover {
  background-color: #eaeaea;
}

@media (max-width: 768px) {
  .catalogue-top h1 {
    font-size: 2rem;
  }

  .category-buttons button {
    font-size: 0.8rem;
  }
}


/* -------------------SINGLE PRODUCT PAGE-------------------------- */


.product_container {
    background-color: #fff;
    -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.5);
    -moz-box-shadow: 0 1px 4px rgba(0,0,0,0.5);
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.5);
    min-height: 300px;
    padding: 40px;
    margin-top: 20px;
}


h1.product-title {
margin: 15px 0 3px 0;
line-height: 42px;
}

.product-title {
    font-size: 18px;
    line-height: 25px;
    font-weight: normal;
    text-transform: none;
    color: var(--text);
    padding-bottom: 10px;
    border-bottom: 1px dotted;
}

.product-title .design-by {
    font-size: 12px;
    line-height: 18px;
    font-weight: bold;
    display: inline;
    margin-left: 10px;
}

.product-title-attributes {
    color: var(--text);
    display: inline;
    font-size: 14px;
    font-weight: 700;
    line-height: 42px;
}

.grey-box {
    background-color: #ededed;
    padding: 20px;
    margin-top: 5px;
    margin-bottom: 20px;
}

.grey-box p {
    font-size: 14px;
    line-height: 18px;
}


.product-main-columns-container {
    margin-bottom: 20px;
    display: flex;
    align-items: flex-start; /* Changed from center to flex-start for better alignment */
    justify-content: center;
    gap: 40px; /* Increased gap for better spacing */
}

.product-main-columns-container .product-image-gallery {
    width: 30%;
}

.product-main-columns-container .summary {
    width: 70%;
}


.product-production-container {
    font-size: 18px;
    font-weight:300;
    line-height:19px;
}

    .product-production {
        margin-bottom: 10px;
    }


.product-price-container p span bdi {
font-size: 42px;
font-weight: 600;
line-height: 42px;
}

.product-add-to-cart-container {
    margin-top: 20px;
    line-height: 42px;
}

/* Product Gallery Adjustments */
.woocommerce-product-gallery {
    width: 100%; /* Ensure it takes full width of its 50% column */
}

.woocommerce-product-gallery .flex-viewport {
    height: auto !important; /* Override inline style */
    max-height: 600px; /* Set a reasonable max height for desktop */
    overflow: hidden;
}

.woocommerce-product-gallery__image,
.woocommerce-product-gallery__image img {
    /* width: 100%; */
    /* height: auto; */
    /* display: block; */
    opacity: 1; /* Ensure visibility */
    visibility: visible; /* Ensure visibility */
  /* object-fit: contain; */
}


/* Responsive gallery container with controlled image sizing */
.woocommerce-product-gallery__wrapper {
    position: relative;
    width: 100%;
    max-height: 600px; /* Reasonable max height */
}

.woocommerce-product-gallery__image img {
    width: 100%;
    height: auto;
    max-height: 600px;
    object-fit: contain;
    display: block;
    margin: 0 auto;
}

/* Override Flexslider's fixed height */
.woocommerce-product-gallery .flex-viewport {
    height: auto !important;
}

/* Ensure the zoom image is hidden by default */
.woocommerce-product-gallery__image .zoomImg {
    display: none !important;
    opacity: 0 !important;
}



/* Thumbnail gallery adjustments */
.flex-control-nav.flex-control-thumbs {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start; /* Align thumbnails to the start */
    margin: 10px 0 0; /* Add some top margin */
    padding: 0;
    list-style: none;
}

.flex-control-nav.flex-control-thumbs li {
    margin: 0 5px 5px 0; /* Spacing between thumbnails */
    width: 80px; /* Fixed width for thumbnails */
    height: auto; /* Flexible height */
    min-height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #eee;
    cursor: pointer;
    background: #fff;
}

.flex-control-nav.flex-control-thumbs li img {
    width: 100%;
    height: auto;
    max-height: 80px;
    object-fit: contain; /* Show full image without cropping */
    opacity: 0.7;
    transition: opacity 0.3s ease;
}

.flex-control-nav.flex-control-thumbs li img.flex-active,
.flex-control-nav.flex-control-thumbs li img:hover {
    opacity: 1; /* Active/hover state opacity */
}

/* Fix for tabs container horizontal scroll */
.product-tabs-container {
    width: 100%;
    box-sizing: border-box;
    padding: 0 15px;
    margin-top: 55px;
}

/* Product Tabs Accordion Styles */
.product-tab-accordion-container {
    width: 100%;
    border-top: 1px solid #aaa;
    margin-bottom: 20px;
}

.product-tab-accordion-item {
    /* position: relative; */
    padding: 15px 0;
    background-color: #fff;
    border: none;
    border-radius: 0;
    border-bottom: 1px solid #aaa;
    /* transition: background-color 0.3s ease; */
}

.product-tab-accordion-item h2 {
    /* margin: 0; */
    font-size: 35px;
    line-height: 33px;
    font-weight: 600;
}

.product-tab-accordion-item:hover h2 {
    color: #bba68b !important;
}

.product-tab-accordion-item.active {
    background-color: #fff;
}

.tab-content {
    padding: 20px 0;
    margin-bottom: 20px;
}

.tab-content .woocommerce-product-attributes td, .tab-content .woocommerce-product-attributes td p {
    font-size: 18px;
    font-weight: 400;
    height: 27px;
    line-height: 27px;
}

.tab-content .woocommerce-product-attributes th, .tab-content .woocommerce-product-attributes th p {
    font-size: 18px;
    font-weight: 700;
    height: 27px;
    line-height: 27px;
    color: #888;
}

.tab-content h2 {
    margin-bottom: 10px;
    display: none;
}

.tab-content p {
    margin-bottom: 15px;
}

.tab-content table {
    text-align: left;
}

/* Product Additional Info Table Styles */
.product-additional-info-table .shop_attributes {
    width: 100%;
    border-collapse: collapse;
    margin: 20px 0;
    text-align: left;
    font-size: 14px;
    font-weight: 400;
    line-height: 18px;
}

.product-additional-info-table .shop_attributes th,
.product-additional-info-table .shop_attributes td {
    padding: 5px 8px;
    border: 1px solid #eee;
    vertical-align: top;
}

.product-additional-info-table .shop_attributes th {
    font-weight: 400;
    color: var(--text);
    width: 20%;
    background-color: transparent;
    text-transform: uppercase;
    border: none;
}

.product-additional-info-table .shop_attributes th h4 {
    margin: 0;
    font-size: 14px;
    font-weight: 600;
    color: var(--text);
    text-transform: uppercase;
}

.product-additional-info-table .shop_attributes td {
    font-weight: 400;
    background-color: #ffffff;
}

.product-additional-info-table .shop_attributes tr:nth-child(even) {
    background-color: transparent;
}

.product-additional-info-table .shop_attributes tr:hover {
    background-color: transparent;
}


.tab-content ul {
    list-style: none;
    padding-left: 0;
}

.tab-content li {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
}

.tab-content li span {
    font-weight: bold;
}

@media (max-width: 768px) {
    .tab-content {
        padding: 10px 0;
    }
    .tab-content p,
    .tab-content li span {
        font-size: 16px;
        line-height: 1.4;
    }
    .tab-content .woocommerce-product-attributes td,
    .tab-content .woocommerce-product-attributes th {
        padding: 12px 5px;
    }

    .category-accordion h3 {
        font-size: 1.5rem;
        line-height: 1.5rem;
        margin: 5px 0;
    }
}

@media (max-width: 999px) {
    .product-main-columns-container {
        flex-direction: column; /* Stack columns vertically */
        gap: 20px; /* Adjust gap for stacked layout */
    }

    .product-main-columns-container .product-image-gallery,
    .product-main-columns-container .summary {
        width: 100%; /* Full width for both on smaller screens */
    }

    .woocommerce-product-gallery .flex-viewport {
        /* Removed max-height to allow proportional scaling */
        /* Removed overflow: hidden to prevent cutoff */
    }

    .flex-control-nav.flex-control-thumbs li {
        width: 60px; /* Smaller thumbnails for mobile */
        height: 60px;
    }

    /* Ensure main image is visible and zoom image is hidden on small screens */
    .woocommerce-product-gallery__image img:not(.zoomImg) {
        display: block !important;
        opacity: 1 !important;
    }

    .woocommerce-product-gallery__image .zoomImg {
        display: none !important;
        opacity: 0 !important;
    }
}


/* Add to Cart Block Styles */
.product-add-to-cart-container form.cart {
    display: flex;
    align-items: center;
    justify-content: center;
}

.product-add-to-cart-container .quantity {
    display: inline-block;
    margin-right: 10px;
    vertical-align: middle;
    width: 30%;
    height: 42px;
    padding: 0 20px;
    border: 1px solid #000;
    border-radius: 5px;
    text-align: center;
    font-size: 16px;
}

.product-add-to-cart-container .quantity input.qty {
    height: 40px;
    width: 100%;
    border: none;
    background: transparent;
    text-align: center;
    font-size: 18px;
}

.product-add-to-cart-container .single_add_to_cart_button {
    width: 70%;
    height: 42px;
    background-color: var(--accent);
    color: #fff;
    border: none;
    border-radius: 5px;
    font-size: 14px;
    font-weight: 400;
    line-height: 18px;
    padding: 9px 15px;
    cursor: pointer;
    transition: background-color 0.3s;
}

/* Hide variation selection elements */
.variations_form .variations,
.variations_form .reset_variations,
.variations_form .reset_variations_alert,
.variations_form .woocommerce-variation-description,
.variations_form .woocommerce-variation-price,
.variations_form .woocommerce-variation-availability {
    display: none !important;
}

/* Make variable product form match simple product styling */

.variations_form.cart  {
    justify-content: flex-start !important;
}

.single_variation_wrap {
    width: 100%;
}

/* .variations_form.cart, */
.variations_form.cart .woocommerce-variation-add-to-cart {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
}

.variations_form.cart .quantity {
    width: 30%;
    margin-right: 10px;
}

.variations_form.cart .single_add_to_cart_button {
    width: 70%;
}

.product-add-to-cart-container .single_add_to_cart_button:hover {
    background-color: #333;
}

.product-after-cart-container .product-ask-button {
    width: 100%;
    height: 42px;
    margin-top: 10px;
    border: 1px solid var(--dark);
    border-radius: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 400;
    cursor: pointer;
    transition: background-color 0.3s;
}

.product-after-cart-container .product-ask-button:hover {
    background-color: #f4f4f4;
}

.woocommerce-message, .woocommerce-info {
    background-color: #b7f3d7;
    padding: 10px;
    clear: both;
    margin-top: 10px;
}


/* Cart Page Styles */
/* ============================== */

.woocommerce-cart-form {
    margin-bottom: 40px;
}

.woocommerce-cart-form .shop_table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 20px;
}

.woocommerce-cart-form .shop_table th {
    font-weight: 400;
    text-align: left;
    padding: 15px 0;
    border-bottom: 1px solid #ddd;
}

.woocommerce-cart-form .shop_table td {
    padding: 20px 0;
    border-bottom: 1px solid #ddd;
    vertical-align: middle;
}

.woocommerce-cart-form .product-remove a {
    color: var(--accent);
    font-size: 22px;
    text-decoration: none;
    margin: 0 10px;
}

.woocommerce-cart-form .product-thumbnail img {
    width: 80px;
    height: auto;
}

.woocommerce-cart-form .product-name a {
    color: #000;
    text-decoration: none;
    font-size: 18px;
}

.woocommerce-cart-form .product-price,
.woocommerce-cart-form .product-subtotal {
    font-size: 18px;
}

.woocommerce-cart-form td.product-subtotal {
    font-size: 18px;
    font-weight: 600;
}

.woocommerce-cart-form .coupon {
    display: flex;
    gap: 10px;
    margin-bottom: 20px;
}

.woocommerce-cart-form .coupon input[type="text"] {
    padding: 10px;
    border: 1px solid #ddd;
    border-radius: 5px;
    font-size: 14px;
}

.woocommerce-cart-form .quantity input[type="number"] {
    width: 50px;
    padding: 3px;
    color: #000;
}



.woocommerce-cart-form .coupon button {
    background: var(--dark);
    color: #fff;
    border: none;
    padding: 10px 15px;
    border-radius: 5px;
    cursor: pointer;
}

.woocommerce-cart-form .actions button[name="update_cart"] {
    background: var(--accent);
    color: #fff;
    border: none;
    padding: 10px 15px;
    border-radius: 5px;
    cursor: pointer;
}

.cart-collaterals {
    background: #F4F3F1;
    padding: 20px;
    border-radius: 5px;
}

.wc-proceed-to-checkout a.checkout-button {
    display: block;
    width: 200px;
    background: var(--accent);
    color: #fff;
    border: none;
    padding: 15px 20px;
    border-radius: 5px;
    cursor: pointer;
    font-size: 18px;
    font-weight: 400;
    text-align: center;
    text-decoration: none;
    margin-top: 20px;
    transition: background-color 0.3s;
}

.wc-proceed-to-checkout a.checkout-button:hover {
    background: #000;
}

/* Shipping Methods Styling */
.woocommerce-shipping-methods {
    list-style: none;
    padding: 0;
    margin: 5px 0;
}

.woocommerce-shipping-methods li {
    margin-bottom: 8px;
    padding: 5px 2px;
    background: #F4F3F1;
    border-radius: 5px;
    display: flex;
    align-items: center;
}

.woocommerce-shipping-methods li label {
    margin-left: 10px;
    font-size: 16px;
    cursor: pointer;
    flex-grow: 1;
}

.woocommerce-shipping-methods input[type="radio"] {
    width: 18px;
    height: 18px;
    accent-color: var(--accent);
}

.woocommerce-shipping-methods li:hover {
    background: #e8e6e2;
}

/* Checkout Page Styles */
form.woocommerce-checkout {
    max-width: 1200px;
    margin: 0 auto;
    /* padding: 20px; */
}

.woocommerce-checkout .col2-set {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}

.woocommerce-checkout .col-1,
.woocommerce-checkout .col-2 {
    flex: 1;
    min-width: 300px;
}

.woocommerce-checkout h3 {
    font-size: 24px;
    margin-bottom: 20px;
    color: #000;
}

.woocommerce-checkout .woocommerce-billing-fields,
.woocommerce-checkout .woocommerce-shipping-fields,
.woocommerce-checkout .woocommerce-additional-fields {
    margin-bottom: 30px;
}

.woocommerce-checkout .form-row {
    margin-bottom: 15px;
}

.woocommerce-checkout input,
.woocommerce-checkout textarea,
.woocommerce-checkout select {
    width: 100%;
    padding: 3px;
    border: 1px solid #ccc;
    border-radius: 3px;
    color: #666;
    font-size: 1rem;
}

.woocommerce-checkout input:focus,
.woocommerce-checkout textarea:focus,
.woocommerce-checkout select:focus {
    color: #111;
}

.woocommerce-checkout .woocommerce-checkout-review-order {
    background: #F4F3F1;
    padding: 20px;
    border-radius: 5px;
}

.woocommerce-checkout .shop_table {
    width: 100%;
    border-collapse: collapse;
}

.woocommerce-checkout .shop_table th,
.woocommerce-checkout .shop_table td {
    padding: 15px 0;
    border-bottom: 1px solid #ddd;
    text-align: left;
}

.woocommerce-checkout .payment_methods {
    list-style: none;
    padding: 0;
}

.woocommerce-checkout .payment_methods li {
    margin-bottom: 15px;
    padding: 15px;
    background: #fff;
    border-radius: 5px;
}

.woocommerce-checkout .place-order {
    margin-top: 20px;
}

.woocommerce-checkout #place_order {
    width: 100%;
    background: var(--accent);
    color: #fff;
    border: none;
    padding: 15px;
    border-radius: 5px;
    font-size: 18px;
    cursor: pointer;
    transition: background-color 0.3s;
}

.woocommerce-checkout #place_order:hover {
    background: #000;
}


/* Payment Methods Styles */
#payment.woocommerce-checkout-payment {
    background-color: #F4F3F1;
    border-radius: 5px;
    padding: 10px;
    margin-top: 20px;
}

#payment .wc_payment_methods {
    list-style: none;
    padding: 0;
    margin: 0;
}

#payment li.wc_payment_method {
    padding: 15px;
    border-bottom: 1px solid #ddd;
}

#payment .wc_payment_method:last-child {
    border-bottom: none;
}

#payment .wc_payment_method label {
    font-size: 19px;
    color: #000;
    cursor: pointer;
}

#payment .wc_payment_method input[type="radio"] {
    width: 18px;
    height: 18px;
    margin-right: 10px;
    accent-color: var(--accent);
}

#payment .wc_payment_method:hover label {
    color: #BBA68B;
}

.woocommerce-terms-and-conditions-wrapper input {
    width: 20px;
}






@media (max-width: 1000px) {
    .product-main-columns-container {
        flex-direction: column;
        gap: 30px;
    }

    .product-main-columns-container .product-image-gallery,
    .product-main-columns-container .summary {
        width: 100%;
    }

    .product-production-container, .product-price-container {
        padding: 0 15px;
    }

    .product-add-to-cart-container {
        font-size: 150%;
    }

    .product-add-to-cart-container form.cart {
        padding: 0 15px;
    }

    .product-price-container p span bdi {
        font-size: 36px;
    }

    .product-after-cart-container {
        padding: 0 15px;
    }



    /* Improved WooCommerce product gallery for mobile */
    .woocommerce-product-gallery {
        position: relative;
        margin-bottom: 20px;
    }

    .woocommerce-product-gallery__wrapper {
        width: 100%;
        overflow: hidden;
    }

    .woocommerce-product-gallery__image {
        width: 100%;
        padding: 0;
        margin: 0;
    }

    .woocommerce-product-gallery__image {
        position: relative;
        overflow: hidden;
    }

    .woocommerce-product-gallery__image img {
        width: 100%;
        height: auto;
        display: block;
        transition: opacity 0.3s ease;
        object-fit: contain;
    }

    .woocommerce-product-gallery__image img:not(.flex-active-slide) {
        display: none; /* Hide non-active slides completely */
    }

    .woocommerce-product-gallery__image img.flex-active-slide {
        opacity: 1;
    }

    .product-tabs-container,
    .product-after-cart-container,
    .single_variation_wrap
    {
        width: 90%;
    }


    @media (max-width: 768px) {
        .woocommerce-product-gallery__image {
            min-height: 250px; /* Adjust mobile height */
        }
    }

    .flex-control-thumbs {
        display: flex;
        flex-wrap: wrap;
        margin: 10px -5px 0;
        padding: 0;
        list-style: none;
    }

    .flex-control-thumbs li {
        flex: 0 0 20%;
        padding: 0 5px;
        margin-bottom: 10px;
        box-sizing: border-box;
    }

    .flex-control-thumbs li img {
        width: 100%;
        height: auto;
        opacity: 0.5;
        transition: opacity 0.3s;
        cursor: pointer;
    }

    .flex-control-thumbs li img.flex-active {
        opacity: 1;
    }

    @media (max-width: 768px) {
        .flex-control-thumbs li {
            flex: 0 0 25%;
        }

        .woocommerce-product-gallery .flex-control-nav {
            margin-top: 10px;
        }
    }
}


/* SwiperJS Product Slider Styles */
.swiper-container-swiperNew {
/* max-width: 1200px; */
margin: 0 auto;
padding: 20px 0;
}

.swiper-slide {
width: 300px !important;
height: auto;
margin-right: 20px;
}

.swiper-slide--placeholder {
width: 20px !important;
}

.swiper-scrollbar {
height: 4px;
background: rgba(0,0,0,0.1);
margin-top: 20px;
}

.swiper-scrollbar-drag {
background: #BBA68B;
}

.product-card-slider {
    border-radius: 5px;
    height: 100%;
    overflow: hidden;
}

.product-card-slider a {
    text-decoration: none;
    color: #000;
}

.product-card-slider .product-image {
    width: 100%;
    max-height: 300px;
    height: auto;
    object-fit: contain;
    /* background: #F4F3F1; */
    background: #fff;
    padding: 5px;
    margin: 0 auto;
    display: block;
}

.product-card-slider .product-info {
    padding: 15px;
    background: #fff;
}

.product-card-slider .product-title {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 10px;
    margin-top: 5px;
}

.product-card-slider .price {
    font-weight: 500;
}

.swipers-separator {
height: 1px;
background: #ddd;
margin: 30px 0;
}






/* Slider Collection Heading Styles */
.slider-collection-heading {
font-size: 32px;
font-weight: 400;
color: #000;
margin-top: 100px;
margin-bottom: 20px;
}

.slider-collection-heading .text-link {
color: #000;
text-decoration: underline;
text-decoration-color: #BBA68B;
position: relative;
padding-right: 24px;
}

.slider-collection-heading .text-link::after {
content: '';
display: inline-block;
width: 24px;
height: 23px;
background-image: url("data:image/svg+xml,%3Csvg width='24' height='23' viewBox='0 0 24 23' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M23.0265 1.72793C23.0265 0.8995 22.355 0.227927 21.5265 0.227928L8.02653 0.227928C7.1981 0.227927 6.52653 0.899501 6.52653 1.72793C6.52653 2.55635 7.1981 3.22793 8.02653 3.22793H20.0265V15.2279C20.0265 16.0564 20.6981 16.7279 21.5265 16.7279C22.355 16.7279 23.0265 16.0564 23.0265 15.2279L23.0265 1.72793ZM2.7882 22.5876L22.5872 2.78859L20.4659 0.667267L0.666879 20.4663L2.7882 22.5876Z' fill='%23BBA68B'/%3E%3C/svg%3E");
background-repeat: no-repeat;
background-position: center;
margin-left: 7px;
vertical-align: middle;
position: absolute;
right: 0;
top: 50%;
transform: translateY(-50%);
}




/* Tile Grid Styles */
.tiles-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 30px;
}

.tile {
    background: white;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: var(--shadow);
    transition: var(--transition);
}

.tile:hover {
    transform: translateY(-10px);
    box-shadow: var(--shadow-hover);
}

.tile-img {
    height: 200px;
    background-size: cover;
    background-position: center;
}

.tile-content {
    padding: 25px;
}

.tile h3 {
    font-size: 20px;
    margin-bottom: 15px;
    color: var(--primary);
}

.tile .product-excerpt {
    margin-top: 15px;
    padding: 10px 20px;
    font-size: 14px;
}

/* Private Product Notice Badge */
.product-private-notice {
    position: absolute;
    top: 0px;
    left: 0px;
    background-color: var(--light);
    color: var(--text);
    font-size: 12px;
    padding: 2px 4px;
    border-radius: 4px;
    z-index: 10;
    display: flex;
    align-items: center;
    gap: 4px;
}

.product-private-notice .private-label {
    display: flex;
    align-items: center;
    gap: 4px;
}

.product-private-notice svg {
    width: 14px;
    height: 14px;
}


        /* Downloads Section */

        .downloads-container {
            background: transparent;
            padding: 0px;
            /* border-radius: 8px; */
            font-size: 13px;
        }

        .downloads-filters {
            display: flex;
            gap: 20px;
            margin-bottom: 30px;
            flex-wrap: wrap;
        }

        .filter-btn {
            padding: 10px 20px;
            background: white;
            border: 1px solid var(--gray);
            border-radius: 4px;
            cursor: pointer;
            transition: var(--transition);
        }

        .filter-btn:hover, .filter-btn.active {
            background: var(--primary);
            color: white;
            border-color: var(--primary);
        }

        .downloads-table {
            width: 100%;
            border-collapse: collapse;
        }

        .downloads-table th, .downloads-table td {
            padding: 15px;
            text-align: left;
            border-bottom: 1px solid var(--gray);
        }

        .downloads-table th {
            background: var(--primary);
            color: white;
            font-weight: 600;
        }

        .downloads-table tr:hover {
            background: rgba(201, 168, 124, 0.1);
        }

        .download-link {
            color: var(--primary);
            text-decoration: none;
            font-weight: 600;
            display: flex;
            align-items: center;
            gap: 10px;
        }

        .download-link:hover {
            color: var(--secondary);
        }

        /* Product Downloads Cards */
        .prod-downloads {
            display: flex;
            flex-wrap: wrap;
            gap: 15px;
            margin: 20px 0;
        }

        .prod-downloads {

        }

        .prod-downloads .item {
            display: block;
            border: 1px solid #dedede;
            margin: 0;
            min-height: 80px;
            -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
            -moz-box-shadow: 0 1px 3px rgba(0,0,0,0.08);
            box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
            -webkit-transition: all .2s ease-in-out;
            -moz-transition: all .2s ease-in-out;
            -o-transition: all .2s ease-in-out;
            transition: all .2s ease-in-out;
            background-color: #f3f3f3;
            background-image: -moz-linear-gradient(top,#f6f6f6,#eee);
            background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#f6f6f6), to(#eee));
            background-image: -webkit-linear-gradient(top, #f6f6f6, #eee);
            background-image: -o-linear-gradient(top,#f6f6f6,#eee);
            background-image: linear-gradient(to bottom, #f6f6f6, #eee);
            background-repeat: repeat-x;
            filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff6f6f6',endColorstr='#ffeeeeee',GradientType=0);
            padding: 8px;
            border-radius: 4px;
            width: calc(25% - 12px);
            box-sizing: border-box;
        }

        .prod-downloads .item h4 {
            margin: 0 0 5px 0;
            font-size: 13px;
            font-weight: bold;
            color: #333;
        }

        .prod-downloads .item p {
            margin: 0 0 8px 0;
            font-size: 11px;
            color: #666;
        }

        .prod-downloads .item .download-link {
            display: inline-block;
            background-color: #666;
            color: white;
            padding: 4px 8px;
            border-radius: 4px;
            text-decoration: none;
            font-weight: normal;
            font-size: 11px;
            box-shadow: 0 2px 4px rgba(0,0,0,0.2);
            transition: all 0.2s ease;
        }

        .prod-downloads .item .download-link:hover {
            background-color: #333;
            transform: translateY(-2px);
            box-shadow: 0 4px 8px rgba(0,0,0,0.3);
        }

        @media (max-width: 1000px) {
            .prod-downloads .item {
                width: calc(33.333% - 10px);
            }
        }

        @media (max-width: 768px) {
            .prod-downloads .item {
                width: calc(50% - 8px);
            }
        }

        @media (max-width: 480px) {
            .prod-downloads .item {
                width: 100%;
            }
        }

        /* Section title styling to match product title */
        .section-downloads, .section-related {
            padding: 30px 0;
        }

        .section-downloads .section-title h2 {
            font-size: 18px;
            line-height: 25px;
            font-weight: normal;
            text-transform: none;
            color: var(--text);
            padding-bottom: 10px;
            border-bottom: 1px dotted;
            margin: 0 0 15px 0;
        }

        /* Related Products Section */
        .section-related {
            /* margin: 30px 0; */
        }

        .related-products-grid {
            display: flex;
            flex-wrap: wrap;
            gap: 15px;
            margin: 20px 0;
        }

        .related-product-item {
            display: flex;
            flex-direction: column;
            border: 1px solid #dedede;
            margin: 0;
            padding: 5px;
            border-radius: 4px;
            width: calc(25% - 12px);
            box-sizing: border-box;
            text-decoration: none;
            height: 200px;
            overflow: hidden;
        }

        .related-product-item a {
            text-decoration: none;
            color: inherit;
            display: flex;
            flex-direction: column;
            height: 100%;
        }

        .related-product-image {
            height: 150px;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 5px;
        }

        .related-product-item img {
            max-width: 100%;
            max-height: 100%;
            width: auto;
            height: auto;
            object-fit: contain;
        }

        .related-product-info {
            text-align: center;
            padding: 10px;
            flex-grow: 1;
            display: flex;
            flex-direction: column;
            justify-content: flex-end;
        }

        .related-product-title {
            margin: 0 0 5px 0;
            font-size: 13px;
            font-weight: bold;
            color: #333;
        }

        .related-product-sku {
            margin: 0 0 5px 0;
            font-size: 11px;
            color: #666;
        }

        .related-product-size {
            font-size: 11px;
            color: #666;
        }

        @media (max-width: 1000px) {
            .related-product-item {
                width: calc(33.333% - 10px);
            }
        }

        @media (max-width: 768px) {
            .related-product-item {
                width: calc(50% - 8px);
            }

            .product_container {
                padding: 20px;
            }
        }

        @media (max-width: 480px) {
            .related-product-item {
                width: 100%;
            }
        }