/* ==========================================================================
   WASSER.RO — Main Stylesheet
   German B2B industrial aesthetic — light, clean, precise
   ========================================================================== */

/* --- CSS Reset --- */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:16px;-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{font-family:'Inter',system-ui,-apple-system,sans-serif;font-weight:400;line-height:1.5;color:#1a2332;background:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none;transition:color .15s ease}
ul,ol{list-style:none}
button{cursor:pointer;font-family:inherit;border:none;background:none}
input{font-family:inherit}

/* --- CSS Variables --- */
:root{
  --c-primary:#0066a1;
  --c-primary-dark:#004d7a;
  --c-primary-light:#e6f0f7;
  --c-accent:#00a8a8;
  --c-accent-dark:#008080;
  --c-text:#1a2332;
  --c-text-light:#5a6a7a;
  --c-text-muted:#8899aa;
  --c-border:#dde4ea;
  --c-border-light:#eef2f6;
  --c-bg:#f7f9fb;
  --c-bg-alt:#f0f4f8;
  --c-white:#fff;
  --c-success:#2a9d3f;
  --c-warning:#e8a020;
  --c-error:#d63638;
  --radius:4px;
  --radius-lg:8px;
  --shadow-sm:0 1px 3px rgba(0,0,0,.06);
  --shadow:0 2px 8px rgba(0,0,0,.08);
  --shadow-lg:0 8px 24px rgba(0,0,0,.12);
  --container:1280px;
  --header-h:72px;
  --transition:.2s ease;
}

/* --- Layout --- */
.container{max-width:var(--container);margin:0 auto;padding:0 24px}
.site-content{min-height:50vh}

/* --- Typography --- */
h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2;color:var(--c-text)}
h1{font-size:2rem}
h2{font-size:1.5rem}
h3{font-size:1.25rem}
h4{font-size:1.1rem}
p{margin-bottom:1em}

/* --- Buttons --- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 28px;font-size:.95rem;font-weight:600;border-radius:var(--radius);transition:all var(--transition);cursor:pointer;white-space:nowrap;line-height:1}
.btn-primary{background:var(--c-primary);color:#fff}
.btn-primary:hover{background:var(--c-primary-dark);transform:translateY(-1px);box-shadow:var(--shadow)}
.btn-outline{background:transparent;color:var(--c-primary);border:2px solid var(--c-primary)}
.btn-outline:hover{background:var(--c-primary);color:#fff}
.btn-outline-light{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.6)}
.btn-outline-light:hover{background:rgba(255,255,255,.15);border-color:#fff}
.btn-light{background:#fff;color:var(--c-primary)}
.btn-light:hover{background:var(--c-primary-light)}

/* --- Skip Link --- */
.skip-link{position:absolute;top:-100px;left:0;background:var(--c-primary);color:#fff;padding:8px 16px;z-index:9999}
.skip-link:focus{top:0}

/* --- Top Bar --- */
.top-bar{background:var(--c-text);color:#aabbcc;font-size:.8rem;padding:6px 0}
.top-bar-inner{display:flex;justify-content:space-between;align-items:center}
.top-bar-nav ul{display:flex;gap:20px}
.top-bar-nav a{color:#aabbcc;transition:color .15s}
.top-bar-nav a:hover{color:#fff}
.top-bar-info{white-space:nowrap}

/* --- Header --- */
.site-header{background:#fff;border-bottom:1px solid var(--c-border);position:sticky;top:0;z-index:100;box-shadow:var(--shadow-sm)}
.header-inner{display:flex;align-items:center;justify-content:space-between;height:var(--header-h);gap:24px}

/* Logo */
.site-logo{flex-shrink:0}
.logo-text{font-size:1.6rem;font-weight:700;color:var(--c-primary);letter-spacing:-.5px}
.logo-wasser{color:var(--c-primary)}
.logo-dot{color:var(--c-accent)}
.custom-logo-link img{max-height:56px;width:auto}

/* Header Search */
.header-search{flex:1;max-width:520px}
.search-form{display:flex;align-items:center;border:2px solid var(--c-border);border-radius:var(--radius);overflow:hidden;transition:border-color var(--transition)}
.search-form:focus-within{border-color:var(--c-primary)}
.search-field{flex:1;padding:10px 16px;font-size:.9rem;border:none;outline:none;background:transparent}
.search-submit{padding:10px 12px;background:var(--c-primary);color:#fff;display:flex;align-items:center;justify-content:center;border:none}
.search-submit:hover{background:var(--c-primary-dark)}

/* Header Actions */
.header-actions{display:flex;align-items:center;gap:20px}
.cart-link{position:relative;display:flex;align-items:center;color:var(--c-text);transition:color .15s}
.cart-link:hover{color:var(--c-primary)}
.cart-count{position:absolute;top:-6px;right:-8px;background:var(--c-primary);color:#fff;font-size:.7rem;font-weight:600;min-width:18px;height:18px;border-radius:9px;display:flex;align-items:center;justify-content:center;padding:0 5px}

/* Menu Toggle (Mobile) */
.menu-toggle{display:none;flex-direction:column;gap:5px;padding:8px}
.menu-toggle span{display:block;width:24px;height:2px;background:var(--c-text);transition:all var(--transition);border-radius:2px}
.menu-toggle.active span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-toggle.active span:nth-child(2){opacity:0}
.menu-toggle.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* Primary Nav */
.primary-nav{border-top:1px solid var(--c-border-light);background:#fff}
.primary-menu{display:flex;justify-content:center;gap:0;list-style:none}
.primary-menu>li{position:relative}
.primary-menu>li>a{display:block;padding:14px 20px;font-size:.9rem;font-weight:500;color:var(--c-text);transition:all .15s;border-bottom:2px solid transparent}
.primary-menu>li>a:hover{color:var(--c-primary);border-bottom-color:var(--c-primary)}
.primary-menu .current-menu-item>a{color:var(--c-primary);border-bottom-color:var(--c-primary)}
.primary-menu .sub-menu{position:absolute;top:100%;left:0;background:#fff;box-shadow:var(--shadow-lg);border-radius:0 0 var(--radius) var(--radius);min-width:220px;opacity:0;visibility:hidden;transform:translateY(8px);transition:all var(--transition)}
.primary-menu li:hover>.sub-menu{opacity:1;visibility:visible;transform:translateY(0)}
.primary-menu .sub-menu a{padding:12px 20px;font-size:.85rem;color:var(--c-text);display:block;border-bottom:1px solid var(--c-border-light)}
.primary-menu .sub-menu a:hover{background:var(--c-primary-light);color:var(--c-primary)}

/* --- Mobile Menu --- */
.mobile-menu{display:none;position:fixed;top:0;right:-100%;width:320px;max-width:85vw;height:100vh;background:#fff;box-shadow:var(--shadow-lg);z-index:200;transition:right .3s ease;overflow-y:auto}
.mobile-menu.active{right:0}
.mobile-menu-inner{padding:80px 24px 24px}
.mobile-nav{list-style:none}
.mobile-nav>li{border-bottom:1px solid var(--c-border-light)}
.mobile-nav a{display:block;padding:14px 0;font-size:1rem;font-weight:500;color:var(--c-text)}
.mobile-nav a:hover{color:var(--c-primary)}
.mobile-search{margin-top:24px}
.mobile-search .search-form{border:2px solid var(--c-border)}

/* Overlay */
.menu-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:150}
.menu-overlay.active{display:block}

/* --- Hero --- */
.hero{position:relative;min-height:520px;display:flex;align-items:center;background:linear-gradient(135deg,#0066a1 0%,#004d7a 50%,#003a5f 100%);overflow:hidden}
.hero-bg{position:absolute;inset:0;background-image:linear-gradient(135deg,rgba(0,40,80,.85) 0%,rgba(0,80,130,.7) 100%),url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1920 800"><defs><pattern id="grid" width="40" height="40" patternUnits="userSpaceOnUse"><path d="M40 0H0V40" fill="none" stroke="rgba(255,255,255,0.05)" stroke-width="1"/></pattern></defs><rect width="1920" height="800" fill="url(%23grid)"/></svg>');background-size:cover;background-position:center}
.hero-overlay{position:absolute;inset:0;background:radial-gradient(ellipse at 70% 50%,rgba(0,168,168,.15) 0%,transparent 60%)}
.hero-content{position:relative;z-index:2;padding:80px 0}
.hero-text{max-width:640px}
.hero-eyebrow{display:inline-block;font-size:.8rem;font-weight:600;letter-spacing:2px;color:var(--c-accent);margin-bottom:16px;padding:6px 14px;background:rgba(0,168,168,.15);border-radius:var(--radius)}
.hero-title{font-size:2.6rem;font-weight:700;color:#fff;line-height:1.15;margin-bottom:20px}
.hero-subtitle{font-size:1.15rem;color:rgba(255,255,255,.85);margin-bottom:32px;line-height:1.6}
.hero-actions{display:flex;gap:16px;flex-wrap:wrap}

/* --- USP Bar --- */
.usp-bar{background:#fff;border-bottom:1px solid var(--c-border)}
.usp-inner{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding:40px 0}
.usp-item{display:flex;align-items:center;gap:16px}
.usp-item svg{color:var(--c-primary);flex-shrink:0}
.usp-item h4{font-size:.95rem;margin-bottom:2px}
.usp-item p{font-size:.82rem;color:var(--c-text-light);margin:0}

/* --- Section Head --- */
.section-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:40px;gap:16px}
.section-title{font-size:1.75rem;font-weight:600}
.section-subtitle{font-size:1rem;color:var(--c-text-light);margin-top:4px}
.section-link{font-size:.9rem;font-weight:600;color:var(--c-primary);white-space:nowrap}
.section-link:hover{color:var(--c-primary-dark)}
.section-eyebrow{display:block;font-size:.8rem;font-weight:600;letter-spacing:2px;color:var(--c-primary);margin-bottom:12px}

/* --- Categories Grid --- */
.home-categories{padding:64px 0;background:var(--c-bg)}
.categories-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.category-card{border-radius:var(--radius-lg);overflow:hidden;background:#fff;box-shadow:var(--shadow-sm);transition:all var(--transition)}
.category-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}
.category-img{aspect-ratio:4/3;overflow:hidden;background:var(--c-bg-alt)}
.category-img img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.category-card:hover .category-img img{transform:scale(1.05)}
.category-placeholder{width:100%;height:100%;background:linear-gradient(135deg,var(--c-primary-light),var(--c-bg-alt))}
.category-info{padding:20px}
.category-info h3{font-size:1.1rem;margin-bottom:4px}
.category-count{font-size:.82rem;color:var(--c-text-light)}

/* --- Products Grid --- */
.home-featured{padding:64px 0}
.products-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}

/* Product Card */
.product-card{background:#fff;border:1px solid var(--c-border);border-radius:var(--radius-lg);overflow:hidden;transition:all var(--transition);display:flex;flex-direction:column;height:100%}
.product-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px);border-color:var(--c-primary)}
.product-card .woocommerce-LoopProduct-link{display:block}
.product-card .product-img-wrap{aspect-ratio:1;overflow:hidden;background:var(--c-bg);position:relative}
.product-card .product-img-wrap img{width:100%;height:100%;object-fit:contain;padding:20px;transition:transform .3s ease}
.product-card:hover .product-img-wrap img{transform:scale(1.05)}
.product-card .sale-badge{position:absolute;top:12px;left:12px;background:var(--c-error);color:#fff;font-size:.75rem;font-weight:600;padding:4px 10px;border-radius:var(--radius)}
.product-card .product-info{padding:16px 20px;flex:1;display:flex;flex-direction:column}
.product-card .woocommerce-loop-product__title{font-size:.95rem;font-weight:500;color:var(--c-text);margin-bottom:4px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.product-card .woocommerce-loop-product__title:hover{color:var(--c-primary)}
.product-sku{font-size:.78rem;color:var(--c-text-muted);margin-bottom:4px}
.product-stock{font-size:.78rem;font-weight:500;margin-bottom:8px}
.product-stock.in-stock{color:var(--c-success)}
.product-stock.out-of-stock{color:var(--c-warning)}
.product-card .price{font-size:1.1rem;font-weight:600;color:var(--c-primary);margin-bottom:12px}
.product-card .price del{color:var(--c-text-muted);font-weight:400;font-size:.9rem}
.product-card .price ins{text-decoration:none}
.product-details-btn{display:block;text-align:center;padding:10px;font-size:.85rem;font-weight:600;border:2px solid var(--c-primary);color:var(--c-primary);border-radius:var(--radius);transition:all var(--transition);margin-top:auto}
.product-details-btn:hover{background:var(--c-primary);color:#fff}

/* --- About Section --- */
.home-about{padding:64px 0;background:var(--c-bg)}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.about-content h2{font-size:1.75rem;margin-bottom:16px}
.about-content p{color:var(--c-text-light);font-size:1.05rem;line-height:1.7;margin-bottom:24px}
.about-features{margin-bottom:32px}
.about-features li{padding:8px 0 8px 28px;position:relative;color:var(--c-text)}
.about-features li::before{content:'';position:absolute;left:0;top:12px;width:18px;height:18px;background:var(--c-primary);border-radius:50%;display:flex;align-items:center;justify-content:center}
.about-features li::after{content:'\\2713';position:absolute;left:4px;top:9px;color:#fff;font-size:.7rem;font-weight:700}
.about-image-box{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:48px;background:linear-gradient(135deg,var(--c-primary),var(--c-primary-dark));border-radius:var(--radius-lg)}
.about-stat{text-align:center;color:#fff;padding:16px}
.stat-number{display:block;font-size:2.5rem;font-weight:700;line-height:1}
.stat-label{display:block;font-size:.85rem;color:rgba(255,255,255,.8);margin-top:4px}

/* --- Trust Section --- */
.home-trust{padding:48px 0;background:#fff;border-top:1px solid var(--c-border);border-bottom:1px solid var(--c-border)}
.trust-inner{text-align:center}
.trust-inner h3{font-size:1.3rem;margin-bottom:24px;color:var(--c-text-light)}
.trust-logos{display:flex;justify-content:center;gap:48px;flex-wrap:wrap}
.trust-logo{font-size:1.1rem;font-weight:700;color:var(--c-text-muted);letter-spacing:1px}

/* --- CTA Bar --- */
.cta-bar{background:var(--c-primary);color:#fff;padding:40px 0}
.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:24px}
.cta-text h3{color:#fff;font-size:1.3rem;margin-bottom:4px}
.cta-text p{color:rgba(255,255,255,.85);margin:0}

/* --- Footer --- */
.site-footer{background:var(--c-text);color:#aabbcc;padding:48px 0 0}
.footer-main{display:grid;grid-template-columns:1.5fr 2fr;gap:48px;padding-bottom:40px}
.footer-brand .logo-text{color:#fff}
.footer-brand .logo-wasser{color:#fff}
.footer-brand .logo-dot{color:var(--c-accent)}
.footer-desc{margin-top:16px;font-size:.88rem;line-height:1.6;color:#8899aa;max-width:320px}
.footer-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.footer-widget-title{color:#fff;font-size:.9rem;font-weight:600;margin-bottom:16px;letter-spacing:.5px}
.footer-links li{margin-bottom:8px}
.footer-links a{font-size:.85rem;color:#8899aa;transition:color .15s}
.footer-links a:hover{color:#fff}
.footer-contact li{font-size:.85rem;color:#8899aa;line-height:1.8}
.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:20px 0}
.footer-bottom-inner{display:flex;justify-content:space-between;align-items:center;font-size:.82rem}
.footer-payments{display:flex;gap:12px}
.payment-badge{padding:4px 10px;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius);font-size:.75rem;color:#8899aa}

/* --- Page Template --- */
.page-container{padding:48px 0;max-width:900px}
.page-title{margin-bottom:24px}
.page-featured-image{margin-bottom:32px;border-radius:var(--radius-lg);overflow:hidden}
.page-text{line-height:1.7;color:var(--c-text)}
.page-text h2{margin:1.5em 0 .5em}
.page-text p{margin-bottom:1em}
.page-text ul{margin:1em 0;padding-left:20px}
.page-text ul li{list-style:disc;margin-bottom:.5em}

/* --- WooCommerce Archive --- */
.woo-header{padding:32px 0 16px}
.shop-title,.woocommerce-products-header__title{font-size:1.75rem;font-weight:600}
.woo-container{display:grid;grid-template-columns:1fr 280px;gap:32px;padding-bottom:48px}
.woo-main{min-width:0}
.shop-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px;flex-wrap:wrap}
.woocommerce-result-count{font-size:.85rem;color:var(--c-text-light);margin:0}
.woocommerce-ordering select{padding:8px 12px;border:1px solid var(--c-border);border-radius:var(--radius);font-size:.85rem;background:#fff}

/* Breadcrumb */
.breadcrumb{padding:16px 0;font-size:.82rem;color:var(--c-text-light)}
.breadcrumb a{color:var(--c-primary)}
.breadcrumb a:hover{text-decoration:underline}
.breadcrumb-sep{color:var(--c-text-muted);margin:0 4px}

/* WooCommerce products list */
ul.products{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;list-style:none;margin:0;padding:0}
ul.products li.product{margin:0}

/* Pagination */
.woocommerce-pagination,.pagination{text-align:center;margin-top:32px}
.woocommerce-pagination ul,.pagination ul{display:flex;justify-content:center;gap:4px;list-style:none}
.woocommerce-pagination ul li a,.pagination ul li a,
.woocommerce-pagination ul li span{display:flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 8px;border:1px solid var(--c-border);border-radius:var(--radius);font-size:.9rem;color:var(--c-text)}
.woocommerce-pagination ul li a:hover,.pagination ul li a:hover{border-color:var(--c-primary);color:var(--c-primary)}
.woocommerce-pagination ul li .current,.pagination ul li .current{background:var(--c-primary);color:#fff;border-color:var(--c-primary)}

/* --- Single Product --- */
.single-product-wrap{padding:32px 0}
.single-product{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.single-product .woocommerce-product-gallery{position:relative}
.single-product .woocommerce-product-gallery__image img{border-radius:var(--radius-lg);border:1px solid var(--c-border)}
.single-product .flex-control-thumbs{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}
.single-product .flex-control-thumbs li{width:80px;height:80px;border-radius:var(--radius);overflow:hidden;border:2px solid transparent;cursor:pointer}
.single-product .flex-control-thumbs li img{width:100%;height:100%;object-fit:contain;padding:4px}
.single-product .flex-control-thumbs li.flex-active{border-color:var(--c-primary)}

.single-product .product_title{font-size:1.8rem;font-weight:600;margin-bottom:8px}
.single-product .price{font-size:1.8rem;font-weight:700;color:var(--c-primary);margin-bottom:16px;display:block}
.single-product .price del{color:var(--c-text-muted);font-weight:400;font-size:1.2rem}
.single-product .woocommerce-product-details__short-description{color:var(--c-text-light);line-height:1.7;margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid var(--c-border)}

.product-meta-box{background:var(--c-bg);border-radius:var(--radius);padding:16px 20px;margin-bottom:20px}
.meta-row{display:flex;gap:8px;font-size:.88rem;padding:4px 0}
.meta-label{font-weight:600;color:var(--c-text);min-width:120px}
.meta-value{color:var(--c-text-light)}

.single-product .cart{display:flex;gap:12px;align-items:center;margin-bottom:24px}
.single-product .quantity{display:flex;align-items:center}
.single-product .qty{width:60px;padding:10px;text-align:center;border:2px solid var(--c-border);border-radius:var(--radius);font-size:1rem}
.single-product .single_add_to_cart_button{flex:1;padding:14px 32px;font-size:1rem;font-weight:600;background:var(--c-primary);color:#fff;border-radius:var(--radius);transition:all var(--transition)}
.single-product .single_add_to_cart_button:hover{background:var(--c-primary-dark)}
.single-product .single_add_to_cart_button.loading{opacity:.6}

.trust-badges{display:flex;flex-direction:column;gap:8px;margin-top:24px;padding-top:24px;border-top:1px solid var(--c-border)}
.trust-badge{display:flex;align-items:center;gap:10px;font-size:.88rem;color:var(--c-text-light)}
.trust-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;background:var(--c-success);color:#fff;border-radius:50%;font-size:.7rem;flex-shrink:0}

/* Product Tabs */
.woocommerce-tabs{margin-top:48px;padding-top:32px;border-top:1px solid var(--c-border)}
.woocommerce-tabs ul.tabs{display:flex;gap:0;list-style:none;margin-bottom:24px;border-bottom:1px solid var(--c-border)}
.woocommerce-tabs ul.tabs li{padding:12px 24px;font-size:.9rem;font-weight:500}
.woocommerce-tabs ul.tabs li.active{border-bottom:2px solid var(--c-primary);color:var(--c-primary)}
.woocommerce-tabs ul.tabs li a{color:inherit}
.woocommerce-tabs .panel{padding:0 0 24px;line-height:1.7;color:var(--c-text-light)}
.woocommerce-tabs .panel h2{font-size:1.2rem;color:var(--c-text);margin-bottom:12px}

/* Related Products */
.related.products{margin-top:48px;padding-top:32px;border-top:1px solid var(--c-border)}
.related.products>h2{font-size:1.3rem;margin-bottom:24px}

/* --- Shop Sidebar --- */
.shop-sidebar{padding:0}
.widget{margin-bottom:32px}
.widget-title{font-size:.95rem;font-weight:600;margin-bottom:16px;padding-bottom:8px;border-bottom:2px solid var(--c-primary)}
.widget ul{list-style:none}
.widget ul li{padding:8px 0;border-bottom:1px solid var(--c-border-light);font-size:.88rem}
.widget ul li a{color:var(--c-text-light)}
.widget ul li a:hover{color:var(--c-primary)}
.widget ul li.current-cat>a{color:var(--c-primary);font-weight:600}
.widget .count{float:right;color:var(--c-text-muted);font-size:.82rem}

/* Price filter widget */
.widget_price_filter .price_slider{margin-bottom:16px}
.widget_price_filter .ui-slider{background:var(--c-border);height:4px;border-radius:2px;position:relative;margin-bottom:16px}
.widget_price_filter .ui-slider-range{background:var(--c-primary);height:4px;border-radius:2px}
.widget_price_filter .ui-slider-handle{width:16px;height:16px;background:#fff;border:2px solid var(--c-primary);border-radius:50%;position:absolute;top:-6px;cursor:pointer}
.widget_price_filter .button{padding:8px 16px;font-size:.85rem;background:var(--c-primary);color:#fff;border-radius:var(--radius)}

/* --- Cart Page --- */
.woocommerce-cart-form table{width:100%;border-collapse:collapse}
.woocommerce-cart-form table th{text-align:left;padding:12px 8px;font-size:.85rem;font-weight:600;color:var(--c-text-light);border-bottom:2px solid var(--c-border)}
.woocommerce-cart-form table td{padding:16px 8px;border-bottom:1px solid var(--c-border-light);vertical-align:middle}
.woocommerce-cart-form table img{width:80px;border-radius:var(--radius)}
.woocommerce-cart-form .product-name a{color:var(--c-text);font-weight:500}
.woocommerce-cart-form .product-name a:hover{color:var(--c-primary)}
.woocommerce-cart-form .qty{width:56px;padding:8px;text-align:center;border:1px solid var(--c-border);border-radius:var(--radius)}
.cart_totals{background:var(--c-bg);border-radius:var(--radius-lg);padding:24px}
.cart_totals h2{font-size:1.1rem;margin-bottom:16px}
.cart_totals table{width:100%;border-collapse:collapse}
.cart_totals table th{text-align:left;padding:10px 0;font-size:.88rem;color:var(--c-text-light)}
.cart_totals table td{text-align:right;padding:10px 0;font-size:.88rem}
.cart_totals .order-total th,.cart_totals .order-total td{font-size:1.1rem;font-weight:600;border-top:2px solid var(--c-border);padding-top:16px}
.cart_totals .checkout-button{display:block;text-align:center;padding:14px;font-size:1rem;font-weight:600;background:var(--c-primary);color:#fff;border-radius:var(--radius);margin-top:16px}
.cart_totals .checkout-button:hover{background:var(--c-primary-dark)}

/* --- Checkout --- */
.woocommerce-checkout .col2-set{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-bottom:32px}
.woocommerce-checkout .form-row{margin-bottom:16px}
.woocommerce-checkout label{display:block;font-size:.88rem;font-weight:500;margin-bottom:6px}
.woocommerce-checkout input[type=text],.woocommerce-checkout input[type=email],.woocommerce-checkout input[type=tel],.woocommerce-checkout input[type=password],.woocommerce-checkout textarea,.woocommerce-checkout select{width:100%;padding:10px 14px;border:1px solid var(--c-border);border-radius:var(--radius);font-size:.9rem}
.woocommerce-checkout input:focus,.woocommerce-checkout textarea:focus,.woocommerce-checkout select:focus{border-color:var(--c-primary);outline:none}
.woocommerce-checkout h3{font-size:1.2rem;margin-bottom:16px}
.woocommerce-checkout-review-order{background:var(--c-bg);border-radius:var(--radius-lg);padding:24px}
.woocommerce-checkout-review-order table{width:100%;border-collapse:collapse}
.woocommerce-checkout-review-order th{text-align:left;padding:10px 0;font-size:.88rem}
.woocommerce-checkout-review-order td{text-align:right;padding:10px 0;font-size:.88rem}
#place_order{display:block;width:100%;padding:16px;font-size:1rem;font-weight:600;background:var(--c-primary);color:#fff;border-radius:var(--radius);cursor:pointer}
#place_order:hover{background:var(--c-primary-dark)}

/* --- Messages --- */
.woocommerce-message,.woocommerce-info,.woocommerce-error{padding:16px 20px;border-radius:var(--radius);margin-bottom:24px;font-size:.9rem}
.woocommerce-message{background:var(--c-primary-light);color:var(--c-primary-dark);border-left:4px solid var(--c-primary)}
.woocommerce-info{background:#fff8e8;color:#8a6d10;border-left:4px solid var(--c-warning)}
.woocommerce-error{background:#fdeaea;color:var(--c-error);border-left:4px solid var(--c-error)}
.woocommerce-message a,.woocommerce-info a{font-weight:600;text-decoration:underline}

/* --- No Products --- */
.woocommerce-info.woocommerce-noproducts{padding:48px;text-align:center;font-size:1.1rem}
.no-products{text-align:center;padding:48px;color:var(--c-text-light)}

/* --- Empty Cart --- */
.cart-empty{text-align:center;padding:48px 0;font-size:1.2rem;color:var(--c-text-light)}
.return-to-shop{text-align:center;margin-bottom:48px}

/* --- Responsive --- */
@media (max-width:1024px){
  .woo-container{grid-template-columns:1fr}
  .shop-sidebar{order:-1;margin-bottom:24px}
  .usp-inner{grid-template-columns:repeat(2,1fr)}
  .about-grid{grid-template-columns:1fr;gap:32px}
  .footer-main{grid-template-columns:1fr;gap:32px}
}

@media (max-width:768px){
  .container{padding:0 16px}
  .primary-nav{display:none}
  .menu-toggle{display:flex}
  .mobile-menu{display:block}
  .header-search{display:none}
  .hero{min-height:400px}
  .hero-content{padding:48px 0}
  .hero-title{font-size:1.8rem}
  .hero-subtitle{font-size:1rem}
  .hero-actions .btn{width:100%}
  .usp-inner{grid-template-columns:1fr;gap:16px}
  .usp-item{justify-content:center;text-align:center;flex-direction:column;gap:8px}
  .categories-grid{grid-template-columns:repeat(2,1fr)}
  .products-grid{grid-template-columns:repeat(2,1fr)}
  ul.products{grid-template-columns:repeat(2,1fr)}
  .section-head{flex-direction:column;align-items:flex-start}
  .section-title{font-size:1.4rem}
  .single-product{grid-template-columns:1fr;gap:24px}
  .about-image-box{grid-template-columns:1fr 1fr;padding:32px}
  .stat-number{font-size:2rem}
  .cta-inner{flex-direction:column;text-align:center}
  .footer-cols{grid-template-columns:1fr;gap:24px}
  .footer-bottom-inner{flex-direction:column;gap:8px;text-align:center}
  .woocommerce-checkout .col2-set{grid-template-columns:1fr}
  .trust-logos{gap:24px}
}

@media (max-width:480px){
  .categories-grid{grid-template-columns:1fr}
  .products-grid{grid-template-columns:1fr}
  ul.products{grid-template-columns:1fr}
  .hero-title{font-size:1.5rem}
  .top-bar-inner{flex-direction:column;gap:4px}
  .top-bar-nav ul{gap:12px}
  .about-image-box{grid-template-columns:1fr}
}

/* --- Print --- */
@media print{
  .top-bar,.primary-nav,.header-actions,.cta-bar,.site-footer,.usp-bar,.hero-actions{display:none}
}

/* --- WooCommerce specific fixes --- */
.woocommerce form .form-row{padding:3px;margin-bottom:12px}
.woocommerce form .form-row label{font-size:.88rem;font-weight:500;display:block;margin-bottom:4px}
.woocommerce form .form-row input[type=text],
.woocommerce form .form-row input[type=email],
.woocommerce form .form-row input[type=tel],
.woocommerce form .form-row input[type=password],
.woocommerce form .form-row textarea,
.woocommerce form .form-row select{width:100%;padding:10px 14px;border:1px solid var(--c-border);border-radius:var(--radius);font-size:.9rem}
.woocommerce form .form-row input:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus{border-color:var(--c-primary);outline:none}
.woocommerce .button{padding:12px 28px;font-size:.95rem;font-weight:600;border-radius:var(--radius);background:var(--c-primary);color:#fff;transition:all var(--transition)}
.woocommerce .button:hover{background:var(--c-primary-dark)}
.woocommerce .button.alt{background:var(--c-primary)}
.woocommerce .star-rating{color:var(--c-warning)}
.woocommerce .onsale{position:absolute;top:12px;left:12px;background:var(--c-error);color:#fff;font-size:.75rem;font-weight:600;padding:4px 10px;border-radius:var(--radius);z-index:2}
.woocommerce-message .button,.woocommerce-info .button{float:right;font-weight:600;font-size:.85rem}
