/*
Theme Name: Royalfinity\'s Clothing

WooCommerce styles override
*/

/**
 * Shop tables
 */
 
   /* Product Page */


 
  
        
  
          /* Header */
          .page-header {
              text-align: center;
              margin-bottom: 3rem;
              padding: 2rem 0;
              background: linear-gradient(135deg, #f8f4e6 0%, #faf7ed 50%, #f5f0e0 100%);
              border-radius: 20px;
              border: 1px solid rgba(183, 143, 61, 0.1);
          }
  
          .page-title {
              font-size: 3.5rem;
              font-weight: 700;
              background: linear-gradient(45deg, #b78f3d, #d4af37, #f4e99b);
              -webkit-background-clip: text;
              -webkit-text-fill-color: transparent;
              background-clip: text;
              margin-bottom: 1rem;
              letter-spacing: 3px;
              text-transform: uppercase;
          }
  
          .page-subtitle {
              color: #8b7355;
              font-size: 1.3rem;
              font-weight: 300;
              font-style: italic;
          }
  
          /* Main Layout */
          .main-layout {
              display: flex;
              gap: 2rem;
              margin-top: 2rem;
          }
  
          /* Sidebar Filters */
          .sidebar {
              width: 280px;
              flex-shrink: 0;
          }
  
          .filters-container {
              background: linear-gradient(135deg, #f8f4e6 0%, #faf7ed 50%, #f5f0e0 100%);
              border-radius: 20px;
              padding: 2rem;
              box-shadow: 0 10px 30px rgba(183, 143, 61, 0.1);
              border: 1px solid rgba(183, 143, 61, 0.2);
              position: sticky;
              top: 2rem;
          }
  
          .filters-title {
              font-size: 1.5rem;
              font-weight: 700;
              color: #b78f3d;
              margin-bottom: 2rem;
              text-align: center;
              text-transform: uppercase;
              letter-spacing: 1px;
          }
  
          .filter-group {
              margin-bottom: 2rem;
              padding-bottom: 1.5rem;
              border-bottom: 1px solid rgba(183, 143, 61, 0.2);
          }
  
          .filter-group:last-child {
              border-bottom: none;
              margin-bottom: 0;
          }
  
          .filter-title {
              font-size: 1.1rem;
              font-weight: 600;
              color: #b78f3d;
              margin-bottom: 1rem;
              text-transform: uppercase;
              letter-spacing: 1px;
          }
  
          .filter-options {
              display: flex;
              flex-wrap: wrap;
              gap: 0.5rem;
          }
  
          .filter-option {
              padding: 8px 16px;
              background: white;
              border: 1px solid rgba(183, 143, 61, 0.3);
              border-radius: 25px;
              cursor: pointer;
              transition: all 0.3s ease;
              font-size: 0.9rem;
              color: #8b7355;
              font-weight: 500;
          }
  
          .filter-option:hover,
          .filter-option.active {
              background: linear-gradient(45deg, #b78f3d, #d4af37);
              color: white;
              transform: scale(1.05);
              box-shadow: 0 4px 15px rgba(183, 143, 61, 0.3);
          }
  
          .price-range {
              width: 100%;
              margin: 1rem 0;
          }
  
          .price-range input {
              width: 100%;
              height: 8px;
              border-radius: 5px;
              background: rgba(183, 143, 61, 0.2);
              outline: none;
              -webkit-appearance: none;
          }
  
          .price-range input::-webkit-slider-thumb {
              -webkit-appearance: none;
              appearance: none;
              width: 20px;
              height: 20px;
              border-radius: 50%;
              background: linear-gradient(45deg, #b78f3d, #d4af37);
              cursor: pointer;
              box-shadow: 0 2px 10px rgba(183, 143, 61, 0.3);
          }
  
          .price-display {
              display: flex;
              justify-content: space-between;
              font-size: 0.9rem;
              color: #8b7355;
              margin-top: 0.5rem;
              font-weight: 500;
          }
  
          /* Main Content */
          .content {
              flex: 1;
          }
  
          /* Categories */
          .categories-section {
            margin-bottom: 2rem;
            padding: 0 15px;
        }

        .category-tabs {
            display: flex;
            gap: 15px;
            overflow-x: auto;
            overflow-y: hidden;
            padding: 10px 0;
            scroll-behavior: smooth;
            -webkit-overflow-scrolling: touch;
        }

        /* Hide scrollbar for cleaner look */
        .category-tabs::-webkit-scrollbar {
            height: 3px;
        }

        .category-tabs::-webkit-scrollbar-track {
            background: #f1f1f1;
            border-radius: 10px;
        }

        .category-tabs::-webkit-scrollbar-thumb {
            background: #b78f3d;
            border-radius: 10px;
        }

        .category-tabs::-webkit-scrollbar-thumb:hover {
            background: #a67c35;
        }

        .category-tab {
            padding: 12px 24px;
            border: 2px solid #b78f3d;
            background: white;
            color: #b78f3d;
            border-radius: 50px;
            cursor: pointer;
            transition: all 0.3s ease;
            font-weight: 600;
            letter-spacing: 1px;
            text-transform: uppercase;
            position: relative;
            overflow: hidden;
            font-size: 0.85rem;
            white-space: nowrap;
            flex-shrink: 0; /* Prevents tabs from shrinking */
            min-width: fit-content;
        }

        .category-tab::before {
            content: '';
            position: absolute;
            top: 0;
            left: -100%;
            width: 100%;
            height: 100%;
            background: linear-gradient(45deg, #b78f3d, #d4af37);
            transition: left 0.3s ease;
            z-index: -1;
        }

        .category-tab:hover::before,
        .category-tab.active::before {
            left: 0;
        }

        .category-tab:hover,
        .category-tab.active {
            color: white;
            transform: translateY(-2px);
            box-shadow: 0 8px 25px rgba(183, 143, 61, 0.3);
        }
         
          /* Sort Controls */
          .sort-controls {
              display: flex;
              justify-content: space-between;
              align-items: center;
              margin-bottom: 2rem;
              padding: 1rem;
              background: linear-gradient(135deg, #f8f4e6 0%, #faf7ed 50%, #f5f0e0 100%);
              border-radius: 15px;
              border: 1px solid rgba(183, 143, 61, 0.1);
          }
  
          .results-count {
              color: #8b7355;
              font-weight: 600;
              font-size: 1rem;
          }
  
          .sort-select {
              padding: 12px 24px;
              border: 2px solid #b78f3d;
              border-radius: 25px;
              background: white;
              color: #b78f3d;
              font-weight: 600;
              cursor: pointer;
              outline: none;
              transition: all 0.3s ease;
          }
  
          .sort-select:hover {
              background: #b78f3d;
              color: white;
          }
  
          /* Products Grid */
          .products-grid {
              display: grid;
              grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
              gap: 2rem;
          }
  
          .product-item {
              transition: all 0.3s ease;
          }
  
          .product-item:hover {
              transform: translateY(-5px);
          }
  
          /* Product Image Card */
          .product-image-card {
              background: white;
              border-radius: 20px;
              overflow: hidden;
              box-shadow: 0 10px 30px rgba(183, 143, 61, 0.1);
              border: 1px solid rgba(183, 143, 61, 0.1);
              position: relative;
              margin-bottom: 1rem;
              transition: all 0.3s ease;
          }
  
          .product-image-card:hover {
              box-shadow: 0 20px 50px rgba(183, 143, 61, 0.2);
              transform: scale(1.02);
          }
  
          .product-image {
              width: 100%;
              height: 280px;
              position: relative;
              overflow: hidden;
              background: linear-gradient(135deg, #f8f4e6, #faf7ed);
          }
  
          .product-image img {
              width: 100%;
              height: 100%;
              object-fit: cover;
              transition: transform 0.4s ease;
          }
  
          .product-image-card:hover .product-image img {
              transform: scale(1.1);
          }
  
          .product-badge {
              position: absolute;
              top: 15px;
              right: 15px;
              background: linear-gradient(45deg, #b78f3d, #d4af37);
              color: white;
              padding: 6px 14px;
              border-radius: 20px;
              font-size: 0.8rem;
              font-weight: 600;
              box-shadow: 0 4px 15px rgba(183, 143, 61, 0.3);
              text-transform: uppercase;
              letter-spacing: 1px;
          }
  
          .product-actions {
              position: absolute;
              bottom: 15px;
              left: 15px;
              right: 15px;
              display: flex;
              gap: 1rem;
              opacity: 0;
              transform: translateY(20px);
              transition: all 0.3s ease;
          }
  
          .product-image-card:hover .product-actions {
              opacity: 1;
              transform: translateY(0);
          }
  
          .btn-primary {
              flex: 1;
              padding: 12px 20px;
              background: linear-gradient(45deg, #b78f3d, #d4af37);
              color: white;
              border: none;
              border-radius: 25px;
              cursor: pointer;
              font-weight: 600;
              transition: all 0.3s ease;
              text-transform: uppercase;
              letter-spacing: 1px;
              font-size: 0.9rem;
          }
  
          .btn-primary:hover {
              transform: translateY(-2px);
              box-shadow: 0 8px 25px rgba(183, 143, 61, 0.4);
          }
  
          .btn-secondary {
              padding: 12px 15px;
              background: white;
              color: #b78f3d;
              border: 2px solid #b78f3d;
              border-radius: 25px;
              cursor: pointer;
              transition: all 0.3s ease;
              min-width: 50px;
              font-size: 1.2rem;
          }
  
          .btn-secondary:hover {
              background: #b78f3d;
              color: white;
              transform: scale(1.1);
          }
  
          /* Product Details (Outside Card) */
          .product-details {
              padding: 0.5rem 0;
          }
  
          .product-category {
              font-size: 0.85rem;
              color: #b78f3d;
              font-weight: 600;
              text-transform: uppercase;
              letter-spacing: 1px;
              margin-bottom: 0.5rem;
          }
  
          .product-name {
              font-size: 1.2rem;
              font-weight: 700;
              color: #333;
              margin-bottom: 0.5rem;
              line-height: 1.3;
          }
  
          .product-price {
              display: flex;
              align-items: center;
              gap: 1rem;
              margin-bottom: 0.5rem;
          }
  
          .current-price {
              font-size: 1.4rem;
              font-weight: 700;
              background: linear-gradient(45deg, #b78f3d, #d4af37);
              -webkit-background-clip: text;
              -webkit-text-fill-color: transparent;
              background-clip: text;
          }
  
          .original-price {
              font-size: 1rem;
              color: #999;
              text-decoration: line-through;
              font-weight: 500;
          }
  
          .product-rating {
              display: flex;
              align-items: center;
              gap: 0.5rem;
          }
  
          .stars {
              color: #f4e99b;
              font-size: 1rem;
          }
  
          .rating-text {
              font-size: 0.85rem;
              color: #8b7355;
              font-weight: 500;
          }
  
          /* Loading */
          .loading-placeholder {
              display: none;
              text-align: center;
              padding: 3rem;
              color: #8b7355;
          }
  
          .spinner {
              width: 40px;
              height: 40px;
              border: 4px solid rgba(183, 143, 61, 0.3);
              border-top: 4px solid #b78f3d;
              border-radius: 50%;
              animation: spin 1s linear infinite;
              margin: 0 auto 1rem;
          }
  
          @keyframes spin {
              0% { transform: rotate(0deg); }
              100% { transform: rotate(360deg); }
          }
  
          /* Responsive Design */
          @media (max-width: 1024px) {
              .main-layout {
                  flex-direction: column;
              }
              
              .sidebar {
                  width: 100%;
              }
              
              .filters-container {
                  position: static;
              }
              
              .page-title {
                  font-size: 2.5rem;
              }
          }
  
          @media (max-width: 768px) {
              .container {
                  padding: 1rem;
              }
              
              .category-tab {
                  padding: 12px 20px;
                  font-size: 0.8rem;
              }
              
              .products-grid {
                  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
                  gap: 1.5rem;
              }
              
              .page-title {
                  font-size: 2rem;
                  letter-spacing: 2px;
              }
              
              .filters-container {
                  padding: 1.5rem;
              }
  
              .sort-controls {
                  flex-direction: column;
                  gap: 1rem;
                  text-align: center;
              }
          }
  
          @media (max-width: 480px) {
              .products-grid {
                  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
                  gap: 1rem;
              }
              
              .product-image {
                  height: 240px;
              }
              
              .page-title {
                  font-size: 1.8rem;
                  letter-spacing: 1px;
              }
              
              .category-tab {
                  padding: 10px 16px;
                  font-size: 0.75rem;
              }
  
              .main-layout {
                  gap: 1rem;
              }

              .btn-primary{
                font-size: 0.8rem;
              }
              
              .btn-secondary{
                font-size: 0.8rem;
              }
          }
  


          .mobile-controls {
            display: none;
            position: fixed;
            bottom: 20px;
            left: 50%;
            transform: translateX(-50%);
            background: white;
            border-radius: 25px;
            box-shadow: 0 10px 30px rgba(0,0,0,0.2);
            padding: 8px;
            z-index: 1000;
            border: 1px solid rgba(183, 143, 61, 0.2);
        }
        
        .mobile-btn {
            background: linear-gradient(45deg, #b78f3d, #d4af37);
            color: white;
            border: none;
            padding: 12px 20px;
            margin: 0 4px;
            border-radius: 20px;
            font-weight: 600;
            font-size: 0.9rem;
            cursor: pointer;
            transition: all 0.3s ease;
            display: flex;
            align-items: center;
            gap: 8px;
            min-width: 90px;
            justify-content: center;
        }
        
        .mobile-btn:hover {
            transform: translateY(-2px);
            box-shadow: 0 5px 15px rgba(183, 143, 61, 0.4);
        }
        
        .mobile-btn-icon {
            font-size: 1.1rem;
        }
        
        .mobile-btn-text {
            letter-spacing: 1px;
        }
        
        /* Mobile Overlay */
        .mobile-overlay {
            display: none;
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: rgba(0,0,0,0.5);
            z-index: 2000;
        }
        
        .mobile-overlay.active {
            display: flex;
            align-items: flex-end;
        }
        
        .mobile-overlay-content {
            background: white;
            width: 100%;
            max-height: 80vh;
            border-radius: 20px 20px 0 0;
            overflow: hidden;
            animation: slideUp 0.3s ease;
        }
        
        @keyframes slideUp {
            from {
                transform: translateY(100%);
            }
            to {
                transform: translateY(0);
            }
        }
        
        .mobile-overlay-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 20px;
            border-bottom: 1px solid rgba(183, 143, 61, 0.2);
            background: linear-gradient(135deg, #f8f4e6 0%, #faf7ed 50%, #f5f0e0 100%);
        }
        
        .mobile-overlay-header h3 {
            color: #b78f3d;
            font-size: 1.2rem;
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: 1px;
        }
        
        .close-btn {
            background: none;
            border: none;
            font-size: 1.5rem;
            color: #b78f3d;
            cursor: pointer;
            padding: 5px;
            width: 30px;
            height: 30px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: all 0.3s ease;
        }
        
        .close-btn:hover {
            background: rgba(183, 143, 61, 0.1);
        }
        
        .mobile-filter-content {
            padding: 20px;
            max-height: 60vh;
            overflow-y: auto;
        }
        
        .mobile-sort-content {
            padding: 20px;
        }
        
        .sort-option {
            padding: 15px 20px;
            border-bottom: 1px solid rgba(183, 143, 61, 0.1);
            cursor: pointer;
            transition: all 0.3s ease;
            font-weight: 500;
            color: #333;
        }
        
        .sort-option:hover {
            background: linear-gradient(135deg, #f8f4e6 0%, #faf7ed 50%, #f5f0e0 100%);
            color: #b78f3d;
        }
        
        .sort-option:last-child {
            border-bottom: none;
        }
        
        .mobile-overlay-footer {
            padding: 20px;
            background: linear-gradient(135deg, #f8f4e6 0%, #faf7ed 50%, #f5f0e0 100%);
            border-top: 1px solid rgba(183, 143, 61, 0.2);
        }
        
        .apply-filters-btn {
            width: 100%;
            padding: 15px;
            background: linear-gradient(45deg, #b78f3d, #d4af37);
            color: white;
            border: none;
            border-radius: 25px;
            font-weight: 600;
            font-size: 1rem;
            cursor: pointer;
            text-transform: uppercase;
            letter-spacing: 1px;
            transition: all 0.3s ease;
        }
        
        .apply-filters-btn:hover {
            transform: translateY(-2px);
            box-shadow: 0 5px 15px rgba(183, 143, 61, 0.4);
        }
        
        /* Mobile Responsive */
        @media (max-width: 768px) {
            .mobile-controls {
                display: flex;
            }
            
            .sidebar {
                display: none;
            }
            
            .sort-controls {
                display: none;
            }
        }
       



 
 
 
 
table.shop_table_responsive thead {
	display: none;
}

table.shop_table_responsive tbody th {
	display: none;
}

table.shop_table_responsive tr td {
	display: block;
	text-align: right;
	clear: both;
}

table.shop_table_responsive tr td::before {
	content: attr(data-title) ": ";
	float: left;
}

table.shop_table_responsive tr td.product-remove a {
	text-align: left;
}

table.shop_table_responsive tr td.product-remove::before {
	display: none;
}

table.shop_table_responsive tr td.actions::before,
table.shop_table_responsive tr td.download-actions::before {
	display: none;
}

table.shop_table_responsive tr td.download-actions .button {
	display: block;
	text-align: center;
}

@media screen and (min-width: 48em) {

	table.shop_table_responsive thead {
		display: table-header-group;
	}

	table.shop_table_responsive tbody th {
		display: table-cell;
	}

	table.shop_table_responsive tr th,
	table.shop_table_responsive tr td {
		text-align: left;
	}

	table.shop_table_responsive tr td {
		display: table-cell;
	}

	table.shop_table_responsive tr td::before {
		display: none;
	}
}

/**
 * Products
 */
ul.products {
	margin: 0;
	padding: 0;
}

ul.products li.product {
	list-style: none;
	position: relative;
	margin-bottom: 2em;
}

ul.products li.product img {
	display: block;
}

ul.products li.product .button {
	display: block;
}

@media screen and (min-width: 48em) {

	ul.products li.product {
		width: 30.79667%;
		float: left;
		margin-right: 3.8%;
	}

	ul.products li.product.first {
		clear: both;
	}

	ul.products li.product.last {
		margin-right: 0;
	}

	ul.products.columns-1 li.product {
		float: none;
		width: 100%;
	}

	ul.products.columns-2 li.product {
		width: 48.1%;
	}

	ul.products.columns-3 li.product {
		width: 30.79667%;
	}

	ul.products.columns-4 li.product {
		width: 22.15%;
	}

	ul.products.columns-5 li.product {
		width: 16.96%;
	}

	ul.products.columns-6 li.product {
		width: 13.49333%;
	}
}

/**
 * Single product
 */
.single-product div.product {
	position: relative;
}

.single-product div.product .woocommerce-product-gallery {
	position: relative;
	float: left;
}

.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__trigger {
	position: absolute;
	top: 2em;
	right: 1em;
	display: block;
	z-index: 99;
}

.single-product div.product .woocommerce-product-gallery .flex-viewport {
	margin-bottom: 1em;
}

.single-product div.product .woocommerce-product-gallery .flex-control-thumbs {
	margin: 0;
	padding: 0;
}

.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li {
	list-style: none;
	cursor: pointer;
	float: left;
}

.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li img {
	opacity: 0.5;
}

.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li img.flex-active {
	opacity: 1;
}

.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li:hover img {
	opacity: 1;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-2 .flex-control-thumbs li {
	width: 48.1%;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-2 .flex-control-thumbs li:nth-child(2n) {
	margin-right: 0;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-2 .flex-control-thumbs li:nth-child(2n+1) {
	clear: both;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-3 .flex-control-thumbs li {
	width: 30.79667%;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-3 .flex-control-thumbs li:nth-child(3n) {
	margin-right: 0;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-3 .flex-control-thumbs li:nth-child(3n+1) {
	clear: both;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-4 .flex-control-thumbs li {
	width: 22.15%;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-4 .flex-control-thumbs li:nth-child(4n) {
	margin-right: 0;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-4 .flex-control-thumbs li:nth-child(4n+1) {
	clear: both;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-5 .flex-control-thumbs li {
	width: 16.96%;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-5 .flex-control-thumbs li:nth-child(5n) {
	margin-right: 0;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-5 .flex-control-thumbs li:nth-child(5n+1) {
	clear: both;
}

.stock:empty::before {
	display: none;
}

.stock.in-stock {
	color: #0f834d;
}

.stock.out-of-stock {
	color: #e2401c;
}

/**
 * Checkout
 */
@media screen and (min-width: 768px) {

	.col2-set .form-row-first {
		float: left;
		margin-right: 3.8%;
	}

	.col2-set .form-row-last {
		float: right;
		margin-right: 0;
	}

	.col2-set .form-row-first,
	.col2-set .form-row-last {
		width: 48.1%;
	}
}

/**
 * General WooCommerce components
 */

/**
 * Header cart
 */
.site-header-cart {
	position: relative;
	margin: 0;
	padding: 0;
}

.site-header-cart .cart-contents {
	text-decoration: none;
}

.site-header-cart .widget_shopping_cart {
	display: none;
}

.site-header-cart .product_list_widget {
	margin: 0;
	padding: 0;
}

/**
 * Star rating
 */
.star-rating {
	overflow: hidden;
	position: relative;
	height: 1.618em;
	line-height: 1.618;
	width: 5.3em;
	font-family: star;
	font-weight: 400;
}

.star-rating::before {
	content: "\53\53\53\53\53";
	opacity: 0.25;
	float: left;
	top: 0;
	left: 0;
	position: absolute;
}

.star-rating span {
	overflow: hidden;
	float: left;
	top: 0;
	left: 0;
	position: absolute;
	padding-top: 1.5em;
}

.star-rating span::before {
	content: "\53\53\53\53\53";
	top: 0;
	position: absolute;
	left: 0;
	color: #4169e1;
}

p.stars a {
	position: relative;
	height: 1em;
	width: 1em;
	text-indent: -999em;
	display: inline-block;
	text-decoration: none;
	margin-right: 1px;
	font-weight: 400;
}

p.stars a::before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 1em;
	height: 1em;
	line-height: 1;
	font-family: star;
	content: "\53";
	color: #404040;
	text-indent: 0;
	opacity: 0.25;
}

p.stars a:hover ~ a::before {
	content: "\53";
	color: #404040;
	opacity: 0.25;
}

p.stars:hover a::before {
	content: "\53";
	color: #4169e1;
	opacity: 1;
}

p.stars.selected a.active::before {
	content: "\53";
	color: #4169e1;
	opacity: 1;
}

p.stars.selected a.active ~ a::before {
	content: "\53";
	color: #404040;
	opacity: 0.25;
}

p.stars.selected a:not(.active)::before {
	content: "\53";
	color: #4169e1;
	opacity: 1;
}

/**
 * Tabs
 */
.woocommerce-tabs ul.tabs {
	list-style: none;
	margin: 0;
	padding: 0;
	text-align: left;
}

.woocommerce-tabs ul.tabs li {
	display: block;
	margin: 0;
	position: relative;
}

.woocommerce-tabs ul.tabs li a {
	padding: 1em 0;
	display: block;
}

.woocommerce-tabs .panel h2:first-of-type {
	margin-bottom: 1em;
}

/**
 * Password strength meter
 */
.woocommerce-password-strength {
	text-align: right;
}

.woocommerce-password-strength.strong {
	color: #0f834d;
}

.woocommerce-password-strength.short {
	color: #e2401c;
}

.woocommerce-password-strength.bad {
	color: #e2401c;
}

.woocommerce-password-strength.good {
	color: #3d9cd2;
}

/**
 * Forms
 */
.form-row.woocommerce-validated input.input-text {
	box-shadow: inset 2px 0 0 #0f834d;
}

.form-row.woocommerce-invalid input.input-text {
	box-shadow: inset 2px 0 0 #e2401c;
}

.required {
	color: #f00;
}

/**
 * Notices
 */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.woocommerce-noreviews,
p.no-comments {
	background-color: #0f834d;
	clear: both;
}

.woocommerce-info,
.woocommerce-noreviews,
p.no-comments {
	background-color: #3d9cd2;
}

.woocommerce-error {
	background-color: #e2401c;
}

.demo_store {
	position: fixed;
	left: 0;
	bottom: 0;
	right: 0;
	margin: 0;
	padding: 1em;
	background-color: #3d9cd2;
	z-index: 9999;
}

@media screen and (min-width: 48em) {

	/**
	 * Header cart
	 */
	.site-header-cart .widget_shopping_cart {
		position: absolute;
		top: 100%;
		width: 100%;
		z-index: 999999;
		left: -999em;
		display: block;
		box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	}

	.site-header-cart:hover .widget_shopping_cart,
	.site-header-cart.focus .widget_shopping_cart {
		left: 0;
		display: block;
	}
}

/**
 * WooCommerce widgets
 */

/**
 * WooCommerce Price Filter
 */
.widget_price_filter .price_slider {
	margin-bottom: 1.5em;
}

.widget_price_filter .price_slider_amount {
	text-align: right;
	line-height: 2.4;
}

.widget_price_filter .price_slider_amount .button {
	float: left;
}

.widget_price_filter .ui-slider {
	position: relative;
	text-align: left;
}

.widget_price_filter .ui-slider .ui-slider-handle {
	position: absolute;
	z-index: 2;
	width: 1em;
	height: 1em;
	cursor: ew-resize;
	outline: none;
	background: #4169e1;
	box-sizing: border-box;
	margin-top: -0.25em;
	opacity: 1;
}

.widget_price_filter .ui-slider .ui-slider-handle:last-child {
	margin-left: -1em;
}

.widget_price_filter .ui-slider .ui-slider-handle:hover,
.widget_price_filter .ui-slider .ui-slider-handle.ui-state-active {
	box-shadow: 0 0 0 0.25em rgba(0, 0, 0, 0.1);
}

.widget_price_filter .ui-slider .ui-slider-range {
	position: absolute;
	z-index: 1;
	display: block;
	border: 0;
	background: #4169e1;
}

.widget_price_filter .price_slider_wrapper .ui-widget-content {
	background: rgba(0, 0, 0, 0.1);
}

.widget_price_filter .ui-slider-horizontal {
	height: 0.5em;
}

.widget_price_filter .ui-slider-horizontal .ui-slider-range {
	height: 100%;
}

.products-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 3fr))!important;
    gap: 2rem;
    align-content: stretch;
    align-items: stretch;
    flex-direction: column;
}


.single-product-page {
  max-width: 1200px;
  margin: auto;
  padding: 20px;
  font-family: 'Poppins', sans-serif;
  background: #f9f6f1;
  color: #222;
}

.product-container {
  display: flex;
  gap: 40px;
  margin-bottom: 30px;
}

.product-gallery .main-image {
  width: 500px;
  object-fit: cover;
  border: 1px solid #e5dac3;
  border-radius: 8px;
  background: #fff;
}

.thumbnail-row {
  display: flex;
  gap: 10px;
  margin-top: 10px;
}

.thumbnail-row .thumb {
  width: 80px;
  cursor: pointer;
  border: 1px solid #e5dac3;
  border-radius: 4px;
  background: #fff;
  transition: all 0.3s;
}

.thumbnail-row .thumb:hover {
  border-color: #b9975b;
}

.product-details {
  flex: 1;
}

.product-title {
  font-size: 28px;
  font-weight: 600;
  color: #222;
  margin-bottom: 10px;
}

.price-section {
  margin-bottom: 15px;
}

.current-price {
  font-size: 22px;
  font-weight: bold;
  color: #b9975b;
  margin-right: 10px;
}

.original-price {
  text-decoration: line-through;
  color: #888;
}

.product-excerpt {
  font-size: 15px;
  line-height: 1.6;
  margin-bottom: 20px;
  color: #444;
}

.add-to-cart input[type="number"] {
  width: 60px;
  padding: 6px;
  margin-right: 10px;
  border: 1px solid #e5dac3;
  border-radius: 4px;
}

.add-to-cart-btn {
  background: #b9975b;
  color: #fff;
  padding: 10px 25px;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  transition: 0.3s;
}

.add-to-cart-btn:hover {
  background: #a57d3e;
}

.product-meta {
  margin-top: 20px;
  font-size: 14px;
  color: #555;
}

.product-meta span {
  display: block;
  margin-bottom: 6px;
}

.social-share {
  margin-top: 15px;
  font-size: 14px;
}

.social-share a {
  color: #b9975b;
  text-decoration: none;
  margin: 0 5px;
  transition: 0.3s;
}

.social-share a:hover {
  color: #a57d3e;
}

.product-tabs {
  margin-top: 50px;
}

.product-tabs .tab {
  padding: 12px 25px;
  cursor: pointer;
  background: #f5f1e9;
  border: 1px solid #e5dac3;
  border-bottom: none;
  margin-right: 5px;
  border-radius: 6px 6px 0 0;
  font-weight: 500;
}

.product-tabs .tab.active {
  background: #fff;
  color: #b9975b;
  border-bottom: 1px solid #fff;
}

.tab-content {
  border: 1px solid #e5dac3;
  background: #fff;
  padding: 25px;
  display: none;
  border-radius: 0 6px 6px 6px;
}

.tab-content.active {
  display: block;
}

/* Product Image Card */
          .product-item {
              background: white;
              border-radius: 20px;
              overflow: hidden;
              box-shadow: 0 10px 30px rgba(183, 143, 61, 0.1);
              border: 1px solid rgba(183, 143, 61, 0.1);
              position: relative;
              margin-bottom: 1rem;
              transition: all 0.3s ease;
          }
  
          .product-item:hover {
              box-shadow: 0 20px 50px rgba(183, 143, 61, 0.2);
              transform: scale(1.02);
          }
  
          .product-image {
              width: 100%;
              height: 280px;
              position: relative;
              overflow: hidden;
              background: linear-gradient(135deg, #f8f4e6, #faf7ed);
          }
  
          .product-image img {
              width: 100%;
              height: 100%;
              object-fit: cover;
              transition: transform 0.4s ease;
          }
  
          .product-image-card:hover .product-image img {
              transform: scale(1.1);
          }
  
          .product-badge {
              position: absolute;
              top: 15px;
              right: 15px;
              background: linear-gradient(45deg, #b78f3d, #d4af37);
              color: white;
              padding: 6px 14px;
              border-radius: 20px;
              font-size: 0.8rem;
              font-weight: 600;
              box-shadow: 0 4px 15px rgba(183, 143, 61, 0.3);
              text-transform: uppercase;
              letter-spacing: 1px;
          }
  
          .product-actions {
              position: absolute;
              bottom: 15px;
              left: 15px;
              right: 15px;
              display: flex;
              gap: 1rem;
              opacity: 0;
              transform: translateY(20px);
              transition: all 0.3s ease;
          }
  
          .product-image-card:hover .product-actions {
              opacity: 1;
              transform: translateY(0);
          }
  
          .btn-primary {
              flex: 1;
              padding: 12px 20px;
              background: linear-gradient(45deg, #b78f3d, #d4af37);
              color: white;
              border: none;
              border-radius: 25px;
              cursor: pointer;
              font-weight: 600;
              transition: all 0.3s ease;
              text-transform: uppercase;
              letter-spacing: 1px;
              font-size: 0.9rem;
          }
  
          .btn-primary:hover {
              transform: translateY(-2px);
              box-shadow: 0 8px 25px rgba(183, 143, 61, 0.4);
          }
  
          .btn-secondary {
              padding: 12px 15px;
              background: white;
              color: #b78f3d;
              border: 2px solid #b78f3d;
              border-radius: 25px;
              cursor: pointer;
              transition: all 0.3s ease;
              min-width: 50px;
              font-size: 1.2rem;
          }
  
          .btn-secondary:hover {
              background: #b78f3d;
              color: white;
              transform: scale(1.1);
          }
  
