/*
Theme Name: EUCOZY Elite
Theme URI: https://eucozy.com
Description: Ultra-fast, high-converting WooCommerce theme. Mobile-first. Clean. Elite.
Author: EUCOZY
Version: 2.0.0
Requires at least: 6.0
Tested up to: 6.9
Requires PHP: 8.0
Text Domain: eucozy
License: GPL-2.0-or-later
*/

/* ============================================
   EUCOZY ELITE - 2026 EDITION
   Mobile-First | High-Converting | Ultra-Clean
   ============================================ */

/* CSS RESET */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

/* VARIABLES */
:root{
  /* Colors - Fresh Modern with Warm Accent */
  --color-bg:#FFFFFF;
  --color-bg-alt:#F8F9FA;
  --color-text:#1A1A1A;
  --color-text-light:#6C757D;
  --color-accent:#C4956A;
  --color-accent-dark:#A67B50;
  --color-success:#28A745;
  --color-error:#DC3545;
  --color-border:#E9ECEF;
  
  /* Typography */
  --font-main:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;
  --font-display:'Inter',var(--font-main);
  
  /* Spacing */
  --space-xs:0.25rem;
  --space-sm:0.5rem;
  --space-md:1rem;
  --space-lg:1.5rem;
  --space-xl:2rem;
  --space-2xl:3rem;
  --space-3xl:4rem;
  
  /* Sizing */
  --max-width:1200px;
  --radius-sm:4px;
  --radius-md:8px;
  --radius-lg:12px;
  --radius-full:9999px;
  
  /* Shadows */
  --shadow-sm:0 1px 2px rgba(0,0,0,0.04);
  --shadow-md:0 4px 12px rgba(0,0,0,0.08);
  --shadow-lg:0 12px 32px rgba(0,0,0,0.12);
  
  /* Transitions */
  --transition:0.2s ease;
}

/* BASE */
html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--font-main);background:var(--color-bg);color:var(--color-text);line-height:1.6;-webkit-font-smoothing:antialiased}

/* TYPOGRAPHY */
h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:600;line-height:1.2;color:var(--color-text)}
h1{font-size:clamp(1.75rem,4vw,2.5rem)}
h2{font-size:clamp(1.5rem,3vw,2rem)}
h3{font-size:clamp(1.25rem,2.5vw,1.5rem)}
p{margin-bottom:var(--space-md)}

/* LINKS */
a{color:var(--color-text);text-decoration:none;transition:color var(--transition)}
a:hover{color:var(--color-accent)}

/* BUTTONS */
.btn,button,input[type="submit"],.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.wp-block-button__link,.wp-element-button,.add_to_cart_button,.single_add_to_cart_button{
  display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);
  padding:0.875rem 1.75rem;
  font-family:var(--font-main);font-size:0.875rem;font-weight:600;
  text-transform:uppercase;letter-spacing:0.5px;
  background:var(--color-accent);color:#fff;
  border:none;border-radius:var(--radius-sm);
  cursor:pointer;transition:all var(--transition);
}
.btn:hover,button:hover,.woocommerce a.button:hover,.wp-block-button__link:hover,.add_to_cart_button:hover{
  background:var(--color-accent-dark);color:#fff;transform:translateY(-1px);box-shadow:var(--shadow-md);
}
.btn-outline{background:transparent;color:var(--color-text);border:2px solid var(--color-border)}
.btn-outline:hover{background:var(--color-text);color:#fff;border-color:var(--color-text)}

/* CONTAINER */
.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 var(--space-lg)}

/* ============================================
   HEADER - Sticky, Clean, Mobile-First
   ============================================ */
.site-header{
  position:sticky;top:0;z-index:1000;
  background:var(--color-bg);
  border-bottom:1px solid var(--color-border);
}
.header-inner{
  display:flex;align-items:center;justify-content:space-between;
  padding:var(--space-md) var(--space-lg);
  max-width:var(--max-width);margin:0 auto;
}
.site-logo{
  font-size:1.75rem;font-weight:800;letter-spacing:-1px;
  color:var(--color-text);text-transform:uppercase;
}
.site-logo span{
  color:var(--color-accent);
  background:linear-gradient(135deg,var(--color-accent),var(--color-accent-dark));
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  background-clip:text;
}

/* Main Nav */
.main-nav{display:none}
@media(min-width:768px){
  .main-nav{display:flex;gap:var(--space-xl)}
  .main-nav a{font-size:0.875rem;font-weight:500;color:var(--color-text-light);transition:color var(--transition)}
  .main-nav a:hover{color:var(--color-accent)}
}

/* Header Actions */
.header-actions{display:flex;align-items:center;gap:var(--space-md)}
.header-icon{position:relative;padding:var(--space-sm);color:var(--color-text)}
.header-icon svg{width:22px;height:22px}
.cart-count{
  position:absolute;top:-2px;right:-2px;
  min-width:18px;height:18px;
  background:var(--color-accent);color:#fff;
  font-size:0.625rem;font-weight:700;
  border-radius:var(--radius-full);
  display:flex;align-items:center;justify-content:center;
}

/* Mobile Menu Toggle */
.menu-toggle{display:flex;flex-direction:column;gap:4px;padding:var(--space-sm);background:none;border:none}
.menu-toggle span{width:20px;height:2px;background:var(--color-text);transition:var(--transition)}
@media(min-width:768px){.menu-toggle{display:none}}

/* Announcement Bar */
.announcement-bar{
  background:var(--color-text);color:#fff;
  text-align:center;padding:var(--space-sm) var(--space-md);
  font-size:0.75rem;font-weight:500;letter-spacing:0.5px;
}
.announcement-bar a{color:#fff;text-decoration:underline}

/* ============================================
   HERO - Clean, Impactful
   ============================================ */
.hero{
  display:grid;place-items:center;
  min-height:60vh;padding:var(--space-3xl) var(--space-lg);
  background:var(--color-bg-alt);text-align:center;
}
.hero-content{max-width:600px}
.hero-tag{
  display:inline-block;
  padding:var(--space-xs) var(--space-md);margin-bottom:var(--space-md);
  background:var(--color-accent);color:#fff;
  font-size:0.75rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;
  border-radius:var(--radius-full);
}
.hero h1{margin-bottom:var(--space-md)}
.hero p{color:var(--color-text-light);font-size:1.125rem;margin-bottom:var(--space-xl)}
.hero-cta{display:flex;flex-wrap:wrap;gap:var(--space-md);justify-content:center}

/* ============================================
   TRUST BAR
   ============================================ */
.trust-bar{
  display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-md);
  padding:var(--space-xl) var(--space-lg);
  border-bottom:1px solid var(--color-border);
}
@media(min-width:768px){.trust-bar{grid-template-columns:repeat(4,1fr)}}
.trust-item{display:flex;align-items:center;gap:var(--space-sm);font-size:0.8125rem}
.trust-item svg{width:20px;height:20px;color:var(--color-accent);flex-shrink:0}
.trust-item strong{display:block;color:var(--color-text)}
.trust-item span{color:var(--color-text-light);font-size:0.75rem}

/* ============================================
   PRODUCT GRID
   ============================================ */
.products-section{padding:var(--space-3xl) var(--space-lg)}
.section-header{text-align:center;margin-bottom:var(--space-2xl)}
.section-header p{color:var(--color-text-light);margin-top:var(--space-sm)}

.woocommerce ul.products,.products-grid{
  display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-lg);
  list-style:none;padding:0;margin:0;
}
@media(min-width:640px){.woocommerce ul.products,.products-grid{grid-template-columns:repeat(3,1fr)}}
@media(min-width:1024px){.woocommerce ul.products,.products-grid{grid-template-columns:repeat(4,1fr)}}

/* PRODUCT CARD */
.woocommerce ul.products li.product,.product-card{
  position:relative;background:var(--color-bg);
  border-radius:var(--radius-lg);overflow:hidden;
  transition:all var(--transition);
}
.woocommerce ul.products li.product:hover,.product-card:hover{
  box-shadow:var(--shadow-lg);transform:translateY(-4px);
}

/* Product Image */
.woocommerce ul.products li.product a img,.product-card img{
  width:100%;aspect-ratio:1;object-fit:cover;
  transition:transform 0.4s ease;
}
.product-card:hover img{transform:scale(1.05)}

/* Product Info */
.woocommerce ul.products li.product .woocommerce-loop-product__title,.product-card-title{
  font-size:0.9375rem;font-weight:500;
  padding:var(--space-md) var(--space-md) var(--space-xs);
  margin:0;color:var(--color-text);
}
.woocommerce ul.products li.product .price,.product-card-price{
  display:block;padding:0 var(--space-md);
  font-size:1rem;font-weight:600;color:var(--color-accent);
}
.woocommerce ul.products li.product .price del{
  color:var(--color-text-light);font-weight:400;font-size:0.875rem;
}
.woocommerce ul.products li.product .price ins{
  text-decoration:none;color:var(--color-accent);
}

/* Add to Cart */
.woocommerce ul.products li.product .button,.product-card .btn{
  width:calc(100% - var(--space-lg)*2);margin:var(--space-md);
  padding:var(--space-sm) var(--space-md);font-size:0.8125rem;
}

/* Sale Badge */
.woocommerce span.onsale,.sale-badge{
  position:absolute;top:var(--space-md);left:var(--space-md);
  padding:var(--space-xs) var(--space-sm);
  background:var(--color-error);color:#fff;
  font-size:0.6875rem;font-weight:700;text-transform:uppercase;
  border-radius:var(--radius-sm);z-index:10;
}

/* ============================================
   SINGLE PRODUCT
   ============================================ */
.single-product .product{
  display:grid;grid-template-columns:1fr;gap:var(--space-xl);
  max-width:var(--max-width);margin:0 auto;
  padding:var(--space-xl) var(--space-lg);
}
@media(min-width:768px){
  .single-product .product{grid-template-columns:1fr 1fr}
}
.single-product .woocommerce-product-gallery{position:sticky;top:100px}
.single-product .woocommerce-product-gallery img{border-radius:var(--radius-lg)}
.single-product .product_title{font-size:1.75rem;margin-bottom:var(--space-sm)}
.single-product .price{font-size:1.5rem;color:var(--color-accent);margin-bottom:var(--space-md)}
.single-product .woocommerce-product-details__short-description{
  color:var(--color-text-light);margin-bottom:var(--space-lg);
}

/* Sticky Add to Cart (Mobile) */
.sticky-atc{
  position:fixed;bottom:0;left:0;right:0;z-index:100;
  display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);
  padding:var(--space-md) var(--space-lg);
  background:var(--color-bg);border-top:1px solid var(--color-border);
  box-shadow:0 -4px 12px rgba(0,0,0,0.08);
}
@media(min-width:768px){.sticky-atc{display:none}}

/* ============================================
   CART & CHECKOUT
   ============================================ */
.woocommerce-cart .woocommerce,.woocommerce-checkout .woocommerce{
  max-width:var(--max-width);margin:0 auto;padding:var(--space-xl) var(--space-lg);
}
.woocommerce table.cart{width:100%;border-collapse:collapse}
.woocommerce table.cart th{
  background:var(--color-bg-alt);padding:var(--space-md);
  font-size:0.75rem;font-weight:600;text-transform:uppercase;letter-spacing:0.5px;
}
.woocommerce table.cart td{padding:var(--space-md);border-bottom:1px solid var(--color-border)}
.woocommerce table.cart img{width:60px;border-radius:var(--radius-sm)}

/* Checkout */
.woocommerce form.checkout{
  display:grid;grid-template-columns:1fr;gap:var(--space-xl);
}
@media(min-width:768px){
  .woocommerce form.checkout{grid-template-columns:1.2fr 1fr}
}
.woocommerce form .form-row input,.woocommerce form .form-row select{
  width:100%;padding:var(--space-md);
  border:1px solid var(--color-border);border-radius:var(--radius-sm);
  font-size:1rem;transition:border-color var(--transition);
}
.woocommerce form .form-row input:focus,.woocommerce form .form-row select:focus{
  border-color:var(--color-accent);outline:none;
}

/* ============================================
   FOOTER
   ============================================ */
.site-footer{
  background:var(--color-text);color:#fff;
  padding:var(--space-3xl) var(--space-lg) var(--space-xl);
}
.footer-inner{
  display:grid;grid-template-columns:1fr;gap:var(--space-xl);
  max-width:var(--max-width);margin:0 auto;
}
@media(min-width:768px){.footer-inner{grid-template-columns:2fr 1fr 1fr 1fr}}
.footer-brand{max-width:280px}
.footer-brand p{color:rgba(255,255,255,0.6);font-size:0.875rem;margin-top:var(--space-md)}
.footer-col h4{font-size:0.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;margin-bottom:var(--space-md)}
.footer-col ul{list-style:none}
.footer-col li{margin-bottom:var(--space-sm)}
.footer-col a{color:rgba(255,255,255,0.6);font-size:0.875rem;transition:color var(--transition)}
.footer-col a:hover{color:#fff}
.footer-bottom{
  border-top:1px solid rgba(255,255,255,0.1);
  margin-top:var(--space-2xl);padding-top:var(--space-lg);
  text-align:center;font-size:0.75rem;color:rgba(255,255,255,0.4);
}

/* ============================================
   WOOCOMMERCE BLOCKS OVERRIDES
   ============================================ */
.wc-block-components-button,.wc-block-components-checkout-place-order-button{
  background:var(--color-accent)!important;color:#fff!important;
  border:none!important;border-radius:var(--radius-sm)!important;
}
.wc-block-components-button:hover{background:var(--color-accent-dark)!important}
.wc-block-grid__product-title a{color:var(--color-text)!important}
.wc-block-grid__product-price{color:var(--color-accent)!important}
.wc-block-components-product-price{color:var(--color-accent)!important}

/* ============================================
   UTILITIES
   ============================================ */
.text-center{text-align:center}
.mt-1{margin-top:var(--space-md)}
.mt-2{margin-top:var(--space-lg)}
.mt-3{margin-top:var(--space-xl)}
.mb-1{margin-bottom:var(--space-md)}
.mb-2{margin-bottom:var(--space-lg)}
.mb-3{margin-bottom:var(--space-xl)}

/* ============================================
   ANIMATIONS
   ============================================ */
@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
.fade-in{animation:fadeIn 0.5s ease forwards}

/* ============================================
   MOBILE MENU
   ============================================ */
.mobile-menu{
  position:fixed;top:0;left:0;right:0;bottom:0;z-index:2000;
  background:var(--color-bg);
  transform:translateX(100%);transition:transform 0.3s ease;
}
.mobile-menu.active{transform:translateX(0)}
.mobile-menu-header{
  display:flex;align-items:center;justify-content:space-between;
  padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--color-border);
}
.mobile-menu nav{padding:var(--space-lg)}
.mobile-menu nav a{
  display:block;padding:var(--space-md) 0;
  font-size:1.125rem;font-weight:500;
  border-bottom:1px solid var(--color-border);
}

/* ============================================
   FEATURES GRID
   ============================================ */
.features-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-xl);
}
.feature-card{
  text-align:center;padding:var(--space-xl);
  background:var(--color-bg);border-radius:var(--radius-lg);
}
.feature-icon{
  display:inline-flex;align-items:center;justify-content:center;
  width:64px;height:64px;margin-bottom:var(--space-md);
  background:var(--color-bg-alt);border-radius:var(--radius-full);
  color:var(--color-accent);
}
.feature-card h3{font-size:1.125rem;margin-bottom:var(--space-sm)}
.feature-card p{color:var(--color-text-light);font-size:0.9375rem;margin:0}

/* Newsletter */
.newsletter-form{
  display:flex;gap:var(--space-sm);flex-wrap:wrap;justify-content:center;
}
.newsletter-form input{
  flex:1;min-width:200px;padding:0.875rem 1rem;
  border:1px solid var(--color-border);border-radius:var(--radius-sm);
  font-size:1rem;
}
.newsletter-form input:focus{
  border-color:var(--color-accent);outline:none;
}

/* ============================================
   SINGLE PRODUCT PAGE - CLEAN LAYOUT
   ============================================ */
.single-product .site-main{padding:0;background:var(--color-bg)}

/* Product Badge */
.product-badge{
  display:inline-block;padding:0.25rem 0.75rem;
  font-size:0.75rem;font-weight:600;text-transform:uppercase;
  letter-spacing:0.5px;border-radius:var(--radius-sm);margin-bottom:var(--space-sm);
}
.sale-badge{background:var(--color-accent);color:#fff}

/* Product Trust Signals */
.product-trust-signals{
  display:flex;flex-wrap:wrap;gap:var(--space-md);
  padding:var(--space-md) 0;margin:var(--space-md) 0;
  border-top:1px solid var(--color-border);
  border-bottom:1px solid var(--color-border);
}
.trust-signal{
  display:flex;align-items:center;gap:var(--space-xs);
  font-size:0.8125rem;color:var(--color-text-light);
}
.trust-signal svg{color:var(--color-accent);flex-shrink:0}

/* Product Gallery Wrap */
.product-gallery-wrap{
  position:relative;
}

.single-product .product{
  display:grid;grid-template-columns:1fr;gap:var(--space-xl);
  max-width:var(--max-width);margin:0 auto;
  padding:var(--space-xl) var(--space-lg);
}
@media(min-width:768px){
  .single-product .product{grid-template-columns:1fr 1fr;gap:var(--space-2xl)}
}

/* Product Gallery */
.single-product .woocommerce-product-gallery{
  position:sticky;top:100px;
}
.single-product .woocommerce-product-gallery__wrapper{
  display:flex;flex-direction:column;gap:var(--space-sm);
}
.single-product .woocommerce-product-gallery__image img,
.single-product .woocommerce-product-gallery img{
  width:100%;border-radius:var(--radius-lg);
  background:var(--color-bg-alt);
}
/* Gallery Thumbnails - Clean, No Numbers */
.single-product .flex-control-thumbs,
.single-product .woocommerce-product-gallery__trigger + .flex-control-thumbs,
.single-product ol.flex-control-nav{
  display:flex;gap:var(--space-sm);margin-top:var(--space-md);
  list-style:none !important;padding:0;
  counter-reset:none !important;
}
.single-product .flex-control-thumbs li,
.single-product ol.flex-control-nav li{
  width:70px;height:70px;
  list-style:none !important;
  counter-increment:none !important;
}
.single-product .flex-control-thumbs li::before,
.single-product ol.flex-control-nav li::before,
.single-product .flex-control-thumbs li::marker,
.single-product ol.flex-control-nav li::marker{
  display:none !important;content:none !important;
}
.single-product .flex-control-thumbs img,
.single-product ol.flex-control-nav img{
  width:100%;height:100%;object-fit:cover;
  border-radius:var(--radius-md);cursor:pointer;
  opacity:0.5;transition:all var(--transition);
  border:2px solid transparent;
}
.single-product .flex-control-thumbs img:hover,
.single-product .flex-control-thumbs .flex-active,
.single-product ol.flex-control-nav img:hover{
  opacity:1;border-color:var(--color-accent);
}

/* Product Summary */
.single-product .summary{
  display:flex;flex-direction:column;gap:var(--space-md);
}
.single-product .product_title{
  font-size:1.75rem;font-weight:600;margin:0;
  line-height:1.3;
}
.single-product .price{
  font-size:1.5rem;font-weight:600;
  color:var(--color-accent);
}
.single-product .price del{
  color:var(--color-text-light);font-size:1.125rem;
  font-weight:400;margin-right:var(--space-sm);
}
.single-product .price ins{text-decoration:none}

/* Product Description - Clean Typography */
.single-product .woocommerce-product-details__short-description{
  color:var(--color-text);line-height:1.8;
  font-size:0.9375rem;
}
.single-product .woocommerce-product-details__short-description p{
  margin:0 0 var(--space-sm);
}
.single-product .woocommerce-product-details__short-description ul,
.single-product .woocommerce-product-details__short-description ol{
  margin:var(--space-sm) 0;padding-left:var(--space-lg);
}
.single-product .woocommerce-product-details__short-description li{
  margin-bottom:var(--space-xs);color:var(--color-text);
}
.single-product .woocommerce-product-details__short-description strong{
  color:var(--color-text);font-weight:600;
}

/* Product Tabs Description */
.single-product .woocommerce-Tabs-panel--description{
  color:var(--color-text);line-height:1.8;font-size:0.9375rem;
}
.single-product .woocommerce-Tabs-panel--description p{
  margin-bottom:var(--space-md);
}
.single-product .woocommerce-Tabs-panel--description ul,
.single-product .woocommerce-Tabs-panel--description ol{
  margin:var(--space-md) 0;padding-left:var(--space-xl);
}
.single-product .woocommerce-Tabs-panel--description li{
  margin-bottom:var(--space-sm);
}

/* Quantity & Add to Cart */
.single-product form.cart{
  display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-md);
  padding:var(--space-lg) 0;border-top:1px solid var(--color-border);
  border-bottom:1px solid var(--color-border);
  margin:var(--space-md) 0;
}
.single-product .quantity{
  display:flex;align-items:center;
  border:1px solid var(--color-border);border-radius:var(--radius-sm);
  overflow:hidden;
}
.single-product .quantity input{
  width:60px;text-align:center;border:none;
  padding:var(--space-sm);font-size:1rem;
  -moz-appearance:textfield;
}
.single-product .quantity input::-webkit-outer-spin-button,
.single-product .quantity input::-webkit-inner-spin-button{
  -webkit-appearance:none;margin:0;
}
.single-product .single_add_to_cart_button{
  flex:1;min-width:200px;
}

/* Product Meta */
.single-product .product_meta{
  font-size:0.875rem;color:var(--color-text-light);
}
.single-product .product_meta > span{display:block;margin-bottom:var(--space-xs)}
.single-product .product_meta a{color:var(--color-text)}

/* Product Tabs */
.single-product .woocommerce-tabs{
  grid-column:1/-1;margin-top:var(--space-xl);
  border-top:1px solid var(--color-border);
  padding-top:var(--space-xl);
}
.single-product .woocommerce-tabs ul.tabs{
  display:flex;gap:var(--space-lg);
  list-style:none;padding:0;margin:0 0 var(--space-lg);
  border-bottom:1px solid var(--color-border);
}
.single-product .woocommerce-tabs ul.tabs li{margin:0}
.single-product .woocommerce-tabs ul.tabs li a{
  display:block;padding:var(--space-md) 0;
  font-weight:500;color:var(--color-text-light);
  border-bottom:2px solid transparent;
  margin-bottom:-1px;
}
.single-product .woocommerce-tabs ul.tabs li.active a{
  color:var(--color-text);border-bottom-color:var(--color-accent);
}
.single-product .woocommerce-tabs .panel{
  max-width:800px;
}
.single-product .woocommerce-tabs .panel h2{
  font-size:1.25rem;margin-bottom:var(--space-md);
}

/* Related Products - Clean Grid */
.single-product .related.products{
  grid-column:1/-1;margin-top:var(--space-2xl);
  padding:var(--space-xl) 0;border-top:1px solid var(--color-border);
  clear:both;
}
.single-product .related.products > h2{
  font-size:1.5rem;margin-bottom:var(--space-xl);text-align:center;
}
.single-product .related.products ul.products{
  display:grid !important;
  grid-template-columns:repeat(2,1fr);
  gap:var(--space-lg);
  list-style:none;padding:0;margin:0;
}
@media(min-width:640px){
  .single-product .related.products ul.products{grid-template-columns:repeat(3,1fr)}
}
@media(min-width:900px){
  .single-product .related.products ul.products{grid-template-columns:repeat(4,1fr)}
}
.single-product .related.products ul.products li.product{
  background:var(--color-bg);border-radius:var(--radius-lg);
  overflow:hidden;transition:all var(--transition);
  border:1px solid var(--color-border);
}
.single-product .related.products ul.products li.product:hover{
  box-shadow:var(--shadow-md);transform:translateY(-2px);
  border-color:transparent;
}
.single-product .related.products ul.products li.product a img{
  width:100%;aspect-ratio:1;object-fit:cover;
}
.single-product .related.products ul.products li.product .woocommerce-loop-product__title{
  font-size:0.875rem;font-weight:500;
  padding:var(--space-md) var(--space-md) var(--space-xs);
  margin:0;line-height:1.4;
}
.single-product .related.products ul.products li.product .price{
  padding:0 var(--space-md);font-size:0.9375rem;
}
.single-product .related.products ul.products li.product .button{
  width:calc(100% - var(--space-md)*2);
  margin:var(--space-md);padding:var(--space-sm);
  font-size:0.75rem;
}

/* ============================================
   SHOP/ARCHIVE PAGE IMPROVEMENTS
   ============================================ */
.woocommerce-result-count{
  color:var(--color-text-light);font-size:0.875rem;
  margin-bottom:var(--space-lg);
}
.woocommerce-ordering{margin-bottom:var(--space-lg)}
.woocommerce-ordering select{
  padding:var(--space-sm) var(--space-md);
  border:1px solid var(--color-border);border-radius:var(--radius-sm);
  background:var(--color-bg);font-size:0.875rem;
}

/* Pagination */
.woocommerce-pagination{
  margin-top:var(--space-2xl);text-align:center;
}
.woocommerce-pagination ul{
  display:inline-flex;gap:var(--space-xs);
  list-style:none;padding:0;
}
.woocommerce-pagination ul li a,
.woocommerce-pagination ul li span{
  display:flex;align-items:center;justify-content:center;
  min-width:40px;height:40px;padding:0 var(--space-sm);
  border:1px solid var(--color-border);border-radius:var(--radius-sm);
  font-size:0.875rem;color:var(--color-text);
}
.woocommerce-pagination ul li a:hover{
  border-color:var(--color-accent);color:var(--color-accent);
}
.woocommerce-pagination ul li span.current{
  background:var(--color-accent);border-color:var(--color-accent);color:#fff;
}

/* ============================================
   CART PAGE
   ============================================ */
.woocommerce-cart .woocommerce{
  max-width:var(--max-width);margin:0 auto;
  padding:var(--space-xl) var(--space-lg);
}
.woocommerce-cart-form{margin-bottom:var(--space-xl)}
.woocommerce-cart-form table{width:100%;border-collapse:collapse}
.woocommerce-cart-form th{
  text-align:left;padding:var(--space-md);
  font-size:0.75rem;font-weight:600;text-transform:uppercase;
  letter-spacing:0.5px;background:var(--color-bg-alt);
}
.woocommerce-cart-form td{
  padding:var(--space-md);border-bottom:1px solid var(--color-border);
  vertical-align:middle;
}
.woocommerce-cart-form .product-thumbnail img{
  width:80px;height:80px;object-fit:cover;border-radius:var(--radius-sm);
}
.woocommerce-cart-form .product-name a{
  font-weight:500;color:var(--color-text);
}
.woocommerce-cart-form .product-remove a{
  color:var(--color-text-light);font-size:1.25rem;
}

.cart_totals{
  max-width:400px;margin-left:auto;
  background:var(--color-bg-alt);padding:var(--space-lg);
  border-radius:var(--radius-lg);
}
.cart_totals h2{font-size:1.25rem;margin-bottom:var(--space-md)}
.cart_totals table{width:100%}
.cart_totals th,.cart_totals td{
  padding:var(--space-sm) 0;
  border-bottom:1px solid var(--color-border);
}
.cart_totals .order-total th,.cart_totals .order-total td{
  font-size:1.125rem;font-weight:600;border:none;
  padding-top:var(--space-md);
}
.cart_totals .checkout-button{width:100%;margin-top:var(--space-md)}

/* ============================================
   CHECKOUT PAGE
   ============================================ */
.woocommerce-checkout .woocommerce{
  max-width:var(--max-width);margin:0 auto;
  padding:var(--space-xl) var(--space-lg);
}
.woocommerce-checkout form.checkout{
  display:grid;grid-template-columns:1fr;gap:var(--space-xl);
}
@media(min-width:768px){
  .woocommerce-checkout form.checkout{grid-template-columns:1.2fr 1fr}
}

.woocommerce-billing-fields,
.woocommerce-shipping-fields,
.woocommerce-additional-fields{
  background:var(--color-bg);padding:var(--space-lg);
  border:1px solid var(--color-border);border-radius:var(--radius-lg);
}
.woocommerce-billing-fields h3,
.woocommerce-shipping-fields h3{
  font-size:1.125rem;margin-bottom:var(--space-lg);
}

.woocommerce-checkout .form-row{margin-bottom:var(--space-md)}
.woocommerce-checkout .form-row label{
  display:block;font-size:0.875rem;font-weight:500;
  margin-bottom:var(--space-xs);
}
.woocommerce-checkout .form-row input,
.woocommerce-checkout .form-row select,
.woocommerce-checkout .form-row textarea{
  width:100%;padding:var(--space-md);
  border:1px solid var(--color-border);border-radius:var(--radius-sm);
  font-size:1rem;
}

.woocommerce-checkout-review-order{
  background:var(--color-bg-alt);padding:var(--space-lg);
  border-radius:var(--radius-lg);position:sticky;top:100px;
}
.woocommerce-checkout-review-order-table{width:100%;margin-bottom:var(--space-lg)}
.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td{
  padding:var(--space-sm) 0;text-align:left;
}
#place_order{width:100%;padding:var(--space-md)}

/* ============================================
   RESPONSIVE FIXES
   ============================================ */
@media(max-width:767px){
  .woocommerce-cart-form table,
  .woocommerce-cart-form thead,
  .woocommerce-cart-form tbody,
  .woocommerce-cart-form th,
  .woocommerce-cart-form td,
  .woocommerce-cart-form tr{display:block}
  
  .woocommerce-cart-form thead{display:none}
  .woocommerce-cart-form tr{
    margin-bottom:var(--space-md);padding:var(--space-md);
    border:1px solid var(--color-border);border-radius:var(--radius-md);
  }
  .woocommerce-cart-form td{
    display:flex;justify-content:space-between;align-items:center;
    border:none;padding:var(--space-sm) 0;
  }
  .woocommerce-cart-form td::before{
    content:attr(data-title);font-weight:500;
  }
}
