/* ==========================================================================
   TEVORA.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:#0050a0;
  --c-primary-dark:#003670;
  --c-primary-light:#dce8f5;
  --c-accent:#0070b8;
  --c-accent-dark:#004d80;
  --c-text:#0a1f3c;
  --c-text-light:#4a6080;
  --c-text-muted:#7a90aa;
  --c-border:#cdd8e6;
  --c-border-light:#e8eef5;
  --c-bg:#f4f8fc;
  --c-bg-alt:#e8f0f8;
  --c-white:#fff;
  --c-success:#2a9d3f;
  --c-warning:#e8a020;
  --c-error:#d63638;
  --radius:4px;
  --radius-lg:8px;
  --shadow-sm:0 1px 3px rgba(0,40,80,.08);
  --shadow:0 2px 8px rgba(0,40,80,.1);
  --shadow-lg:0 8px 24px rgba(0,40,80,.14);
  --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:#001530;color:#aaccdd;font-size:.8rem;padding:6px 0}
.top-bar-inner{display:flex;justify-content:space-between;align-items:center;gap:16px}
.top-bar-left,.top-bar-right{flex:0 0 auto}
.top-bar-info{white-space:nowrap}.top-bar-info a{color:inherit;text-decoration:none}.top-bar-info a:hover{color:#fff}
.top-bar-message{display:flex;align-items:center;justify-content:center;gap:10px;min-width:0;flex:1;color:#fff;font-size:.72rem;line-height:1.1;white-space:nowrap}
.top-bar-message-text{color:#aabbcc}
.top-bar-message-warning{color:#ffcf75;font-weight:700}
.origin-badge{display:inline-flex;align-items:center;gap:5px;color:#fff;font-size:.58rem;font-weight:700;letter-spacing:.35px;line-height:1.05;text-decoration:none;transition:color var(--transition)}
a.origin-badge:hover{color:#fff}
.origin-flag{position:relative;display:inline-block;width:24px;height:16px;flex:0 0 24px;overflow:hidden;border-radius:1px;box-shadow:0 0 0 1px rgba(255,255,255,.35)}
.origin-badge-germany .origin-flag{background:linear-gradient(to bottom,#111 0 33.33%,#dd1f35 33.33% 66.66%,#f5c400 66.66%)}
.origin-badge-korea .origin-flag{background:#fff}
.origin-badge-korea .origin-flag:before{content:"";position:absolute;left:8px;top:4px;width:8px;height:8px;border-radius:50%;background:linear-gradient(to bottom,#c8102e 0 50%,#003478 50%)}
.origin-badge-korea .origin-flag:after{content:"☰  ☰";position:absolute;inset:1px 0 0;color:#111;font-size:5px;letter-spacing:7px;line-height:14px;transform:rotate(-28deg)}
.origin-badge-korea .origin-flag i{display:none}
.origin-badge-swiss .origin-flag{background:#d82332}
.origin-badge-swiss .origin-flag:before{content:"";position:absolute;left:10px;top:3px;width:4px;height:10px;background:#fff}
.origin-badge-swiss .origin-flag:after{content:"";position:absolute;left:7px;top:6px;width:10px;height:4px;background:#fff}
.origin-badge-swiss .origin-flag i{display:none}
.origin-badge-germany .origin-flag i{display:none}
.top-bar-consult-btn{display:inline-flex;align-items:center;padding:5px 16px;background:var(--c-accent);color:#fff;font-size:.8rem;font-weight:600;border-radius:var(--radius);transition:all var(--transition);white-space:nowrap}
.top-bar-consult-btn:hover{background:var(--c-accent-dark);color:#fff}

/* --- 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-tevora{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;position:relative}
.search-form{display:flex;align-items:center;border:2px solid var(--c-border);border-radius:var(--radius);overflow:hidden;transition:border-color var(--transition)}
.mobile-search{position:relative}
.tevora-search-suggestions{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:180;background:#fff;border:1px solid var(--c-border);border-radius:var(--radius);box-shadow:0 12px 28px rgba(0,35,65,.16);overflow:hidden}
.tevora-search-suggestion{display:flex;align-items:center;gap:12px;padding:10px 12px;color:var(--c-text);text-decoration:none;border-bottom:1px solid #eef2f6;transition:background var(--transition)}
.tevora-search-suggestion:last-child{border-bottom:0}
.tevora-search-suggestion:hover,.tevora-search-suggestion:focus-visible{background:var(--c-bg-alt);outline:none}
.tevora-search-suggestion img{width:44px;height:44px;object-fit:contain;background:#f8fafc;border-radius:4px;flex:0 0 44px}
.tevora-search-suggestion-details{min-width:0;display:flex;flex-direction:column;gap:3px}
.tevora-search-suggestion-details strong{font-size:.82rem;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tevora-search-suggestion-meta{font-size:.75rem;color:var(--c-text-light)}
.tevora-search-empty{padding:14px;color:var(--c-text-light);font-size:.82rem;background:#fff}
.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)}

/* Barcode scan button */
.barcode-scan-btn{display:flex;align-items:center;justify-content:center;padding:10px 12px;background:var(--c-bg-alt);color:var(--c-primary);border:none;cursor:pointer;transition:all var(--transition);flex-shrink:0}
.barcode-scan-btn:hover{background:var(--c-primary);color:#fff}
.barcode-scan-btn svg{display:block}
.search-form{position:relative}
.barcode-scan-btn.scanning{background:var(--c-accent);color:#fff;animation:barcode-pulse 1s ease-in-out infinite}
@keyframes barcode-pulse{0%,100%{opacity:1}50%{opacity:.6}}

/* 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)}

/* Menu Brand Logos */
.primary-menu .menu-item-brand{display:flex;align-items:center;padding:0 10px}
.primary-menu .menu-item-brand>a{padding:4px 8px;border-bottom:none}
.primary-menu .menu-brand-img{display:block;width:auto;height:auto;max-width:150px;max-height:42px;object-fit:contain;transition:opacity var(--transition)}
.primary-menu .menu-item-brand>a:hover .menu-brand-img{opacity:.8}
.primary-menu .menu-item-brand>a:hover{border-bottom-color:transparent}

/* --- 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>li{border-bottom:1px solid var(--c-border-light)}
.mobile-nav>li>a{display:flex;align-items:center;padding:16px 0;font-size:1rem;font-weight:600;color:var(--c-text);transition:color var(--transition)}
.mobile-nav>li>a:hover{color:var(--c-primary)}
.mobile-nav .sub-menu{display:none;padding-left:20px;border-top:1px solid var(--c-border-light);margin-top:0;background:var(--c-bg)}
.mobile-nav .sub-menu>li{border-bottom:1px solid var(--c-border-light)}
.mobile-nav .sub-menu>li:last-child{border-bottom:none}
.mobile-nav .sub-menu a{display:flex;align-items:center;padding:14px 0 14px 8px;font-size:.9rem;font-weight:400;color:var(--c-text-light);position:relative}
.mobile-nav .sub-menu a::before{content:'\203A';position:absolute;left:-12px;color:var(--c-text-muted);font-size:1.1rem}
.mobile-nav .sub-menu a:hover{color:var(--c-primary)}
.mobile-nav .menu-item-brand{padding:12px 0}
.mobile-nav .menu-brand-img{max-height:48px;width:auto}
.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,#0050a0 0%,#003670 50%,#001a45 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:1;overflow:hidden;background:#fff;border-bottom:1px solid var(--c-border);display:flex;align-items:center;justify-content:center}
.category-img img{width:100%;height:100%;object-fit:contain;padding:16px;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:#fff;border-bottom:1px solid var(--c-border);position:relative;display:flex;align-items:center;justify-content:center}
.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-rating{display:flex;align-items:center;gap:8px;margin:4px 0 10px}
.product-rating .star-rating{margin:0;color:var(--c-warning);font-size:.9rem}
.product-rating-summary{font-size:.78rem;color:var(--c-text-light);white-space:nowrap}
.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.btn-primary{background:var(--c-primary);color:#fff}
.product-details-btn.btn-primary:hover{background:var(--c-primary-dark);border-color:var(--c-primary-dark);color:#fff}
.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-tevora{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}

/* --- Single Post --- */
.post-container{padding:48px 0;max-width:900px}
.single-post-article{background:#fff;border-radius:var(--radius-lg);padding:40px}
.post-title{font-size:2rem;font-weight:700;color:var(--c-text);line-height:1.2;margin-bottom:12px}
.post-meta-top{display:flex;align-items:center;gap:8px;font-size:.85rem;color:var(--c-text-light);margin-bottom:24px}
.post-meta-author{color:var(--c-text-light);transition:color var(--transition)}
.post-meta-author:hover{color:var(--c-primary)}
.post-meta-sep{color:var(--c-text-muted)}
.post-thumbnail{margin-bottom:32px;border-radius:var(--radius-lg);overflow:hidden}
.post-thumbnail img{width:100%;height:auto;display:block}
.post-content{line-height:1.8;color:var(--c-text)}
.post-content h2{margin:1.5em 0 .5em;font-size:1.5rem}
.post-content h3{margin:1.2em 0 .4em;font-size:1.2rem}
.post-content p{margin-bottom:1em}
.post-content ul{margin:1em 0;padding-left:20px}
.post-content ul li{list-style:disc;margin-bottom:.5em}
.post-content img{max-width:100%;height:auto;border-radius:var(--radius)}
.post-content a{color:var(--c-primary)}
.post-content a:hover{text-decoration:underline}
.post-content blockquote{border-left:4px solid var(--c-primary);padding:16px 24px;margin:1.5em 0;background:var(--c-bg);border-radius:0 var(--radius) var(--radius) 0;color:var(--c-text-light)}

.post-taxonomies{margin-top:32px;padding-top:24px;border-top:1px solid var(--c-border-light);display:flex;flex-direction:column;gap:10px}
.post-tax-group{font-size:.85rem;color:var(--c-text-light)}
.post-tax-label{font-weight:600;color:var(--c-text);margin-right:4px}
.post-tax-group a{color:var(--c-primary);transition:color var(--transition)}
.post-tax-group a:hover{text-decoration:underline}

.post-author-box{display:flex;gap:16px;align-items:flex-start;margin-top:24px;padding:20px;background:var(--c-bg);border-radius:var(--radius);border:1px solid var(--c-border-light)}
.post-author-avatar{border-radius:50%;flex-shrink:0}
.post-author-info{flex:1}
.post-author-name{font-size:.9rem;font-weight:600;color:var(--c-text)}
.post-author-name a{color:var(--c-primary)}
.post-author-bio{font-size:.85rem;color:var(--c-text-light);line-height:1.6;margin-top:6px;margin-bottom:0}

.post-related-products{margin-top:48px}
.post-related-title{font-size:1.4rem;font-weight:600;margin-bottom:24px;color:var(--c-text)}
.post-related-products ul.products{grid-template-columns:repeat(4,1fr);gap:20px}

.post-navigation{display:flex;justify-content:space-between;gap:24px;margin-top:48px;padding-top:24px;border-top:1px solid var(--c-border)}
.post-nav-prev,.post-nav-next{flex:1}
.post-nav-next{text-align:right}
.post-nav-label{display:block;font-size:.78rem;font-weight:600;color:var(--c-text-muted);margin-bottom:4px}
.post-navigation a{font-size:.9rem;color:var(--c-text);font-weight:500;transition:color var(--transition)}
.post-navigation a:hover{color:var(--c-primary)}

/* --- Blog Listing --- */
.blog-listing{padding:48px 0;max-width:var(--container)}
.blog-listing-header{margin-bottom:40px;text-align:center}
.blog-listing-title{font-size:2rem;font-weight:700;color:var(--c-text)}
.blog-listing-desc{margin-top:12px;color:var(--c-text-light);font-size:1rem}
.blog-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:32px}
.blog-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}
.blog-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px);border-color:var(--c-primary)}
.blog-card-link{display:block}
.blog-card-img{aspect-ratio:16/9;overflow:hidden;background:var(--c-bg);display:flex;align-items:center;justify-content:center}
.blog-card-img img{display:block;width:100%;height:100%;object-fit:cover;padding:0;transition:transform .3s ease}
.blog-card:hover .blog-card-img img{transform:scale(1.03)}
.blog-card-img-placeholder{background:linear-gradient(135deg,var(--c-primary-light),var(--c-bg-alt));display:flex;align-items:center;justify-content:center}
.blog-card-img-placeholder span{font-size:1.2rem;font-weight:700;color:var(--c-text-muted);letter-spacing:1px}
.blog-card-body{padding:24px;flex:1;display:flex;flex-direction:column}
.blog-card-date{font-size:.78rem;font-weight:600;color:var(--c-text-muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:10px}
.blog-card-title{font-size:1.25rem;font-weight:600;line-height:1.3;margin-bottom:10px}
.blog-card-title a{color:var(--c-text);transition:color var(--transition)}
.blog-card-title a:hover{color:var(--c-primary)}
.blog-card-excerpt{font-size:.88rem;color:var(--c-text-light);line-height:1.6;margin-bottom:18px;flex:1}
.blog-card-btn{align-self:flex-start;padding:9px 22px;font-size:.85rem}
.blog-pagination{margin-top:48px;text-align:center}
.blog-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 10px;margin:0 2px;border:1px solid var(--c-border);border-radius:var(--radius);font-size:.9rem;color:var(--c-text);transition:all var(--transition)}
.blog-pagination .page-numbers:hover{border-color:var(--c-primary);color:var(--c-primary)}
.blog-pagination .page-numbers.current{background:var(--c-primary);color:#fff;border-color:var(--c-primary)}

/* --- 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:280px 1fr;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 (Full-Width, timmer.de-style) --- */
.product-breadcrumb-bar{background:var(--c-bg);border-bottom:1px solid var(--c-border);padding:12px 0}
.product-breadcrumb-bar .breadcrumb{padding:0;font-size:.82rem;color:var(--c-text-light)}
.product-breadcrumb-bar .breadcrumb a{color:var(--c-primary)}
.product-breadcrumb-bar .breadcrumb a:hover{text-decoration:underline}
.product-breadcrumb-bar .breadcrumb-sep{color:var(--c-text-muted);margin:0 4px}

.product-main-section{padding:48px 0;background:#fff}
.product-main-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:64px;align-items:start}

/* Gallery column */
.product-gallery-col .woocommerce-product-gallery{position:relative;width:100%}
.product-gallery-col .woocommerce-product-gallery__wrapper{border-radius:var(--radius-lg);overflow:hidden}
.product-gallery-col .woocommerce-product-gallery__image{background:var(--c-bg);border:1px solid var(--c-border);border-radius:var(--radius-lg);overflow:hidden;margin-bottom:12px;aspect-ratio:1;display:flex;align-items:center;justify-content:center}
.product-gallery-col .woocommerce-product-gallery__image img{width:100%;height:100%;object-fit:contain;padding:32px}
.product-gallery-col .flex-control-thumbs{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap;padding:0;list-style:none}
.product-gallery-col .flex-control-thumbs li{width:90px;height:90px;border-radius:var(--radius);overflow:hidden;border:2px solid transparent;cursor:pointer;list-style:none}
.product-gallery-col .flex-control-thumbs li img{width:100%;height:100%;object-fit:contain;padding:6px;background:var(--c-bg)}
.product-gallery-col .flex-control-thumbs li.flex-active{border-color:var(--c-primary)}
.product-gallery-col .onsale{position:absolute;top:16px;left:16px;background:var(--c-error);color:#fff;font-size:.75rem;font-weight:600;padding:4px 12px;border-radius:var(--radius);z-index:2}

/* Info column */
.product-info-col{padding-top:8px}
.single-product-page .product_title{font-size:2rem;font-weight:700;color:var(--c-text);margin-bottom:6px;line-height:1.2}
.single-product-page .product-article-number{font-size:.95rem;color:var(--c-text-light);margin-bottom:20px}
.single-product-page .product-article-number strong{color:var(--c-text)}

.single-product-page .price{font-size:2.2rem;font-weight:700;color:var(--c-primary);margin-bottom:4px;display:block;line-height:1.2}
.single-product-page .price del{color:var(--c-text-muted);font-weight:400;font-size:1.3rem;margin-right:8px}
.single-product-page .price ins{text-decoration:none}
.single-product-page .product-price-note{font-size:.78rem;color:var(--c-text-muted);margin-bottom:16px}

.single-product-page .product-availability{font-size:.9rem;font-weight:500;padding:8px 0;margin-bottom:24px}
.single-product-page .product-availability.in-stock{color:var(--c-success)}
.single-product-page .product-availability.out-of-stock{color:var(--c-warning)}
.single-product-page .product-rating{margin:0 0 20px}
.single-product-page .product-rating .star-rating{font-size:1rem}
.single-product-page .product-rating-summary{font-size:.9rem}

.single-product-page .woocommerce-product-details__short-description{color:var(--c-text-light);line-height:1.7;margin-bottom:28px;padding:20px;background:var(--c-bg);border-radius:var(--radius);border-left:4px solid var(--c-primary)}
.single-product-page .woocommerce-product-details__short-description p:last-child{margin-bottom:0}

/* Add to cart */
.single-product-page .cart{display:flex;gap:12px;align-items:center;margin-bottom:28px}
.single-product-page .quantity{display:flex;align-items:center}
.single-product-page .qty{width:64px;padding:12px;text-align:center;border:2px solid var(--c-border);border-radius:var(--radius);font-size:1rem}
.single-product-page .single_add_to_cart_button{flex:1;padding:16px 36px;font-size:1rem;font-weight:600;background:var(--c-primary);color:#fff;border-radius:var(--radius);transition:all var(--transition);border:none;cursor:pointer}
.single-product-page .single_add_to_cart_button:hover{background:var(--c-primary-dark);transform:translateY(-1px);box-shadow:var(--shadow)}
.single-product-page .single_add_to_cart_button.loading{opacity:.6}
.product-inquiry-form{margin:24px 0 28px;padding:24px;background:#fff;border:1px solid var(--c-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}
.product-inquiry-form h3{font-size:1.15rem;color:var(--c-text);margin-bottom:16px}

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

/* Trust badges */
.single-product-page .trust-badges{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px;margin-top:20px;padding:20px;background:var(--c-bg);border-radius:var(--radius)}
.single-product-page .trust-badge{display:flex;align-items:center;gap:10px;font-size:.85rem;color:var(--c-text)}
.single-product-page .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 Details Section (tabs) */
.product-details-section{padding:48px 0;background:var(--c-bg);border-top:1px solid var(--c-border)}
.product-details-section .woocommerce-tabs{margin-top:0}
.woocommerce-tabs ul.tabs{display:flex;gap:0;list-style:none;margin-bottom:32px;border-bottom:2px solid var(--c-border);padding:0}
.woocommerce-tabs ul.tabs li{padding:14px 28px;font-size:.95rem;font-weight:500;color:var(--c-text-light);border-bottom:3px solid transparent;margin-bottom:-2px;transition:all var(--transition)}
.woocommerce-tabs ul.tabs li.active{border-bottom-color:var(--c-primary);color:var(--c-primary)}
.woocommerce-tabs ul.tabs li a{color:inherit}
.woocommerce-tabs .panel{background:#fff;border:1px solid var(--c-border);border-radius:var(--radius-lg);padding:32px;line-height:1.8;color:var(--c-text)}
.woocommerce-tabs .panel h2{font-size:1.3rem;color:var(--c-text);margin-bottom:16px}
.woocommerce-tabs .panel p{margin-bottom:1em}
.woocommerce-tabs .panel table{width:100%;border-collapse:collapse;margin:16px 0}
.woocommerce-tabs .panel table th,.woocommerce-tabs .panel table td{padding:12px 16px;border:1px solid var(--c-border);font-size:.9rem;text-align:left}
.woocommerce-tabs .panel table th{background:var(--c-bg);font-weight:600;color:var(--c-text)}
.woocommerce-tabs .panel table td{color:var(--c-text-light)}
.woocommerce-tabs .panel .woocommerce-product-attributes{margin:0}
.woocommerce-tabs .panel .woocommerce-product-attributes-item{padding:12px 0;border-bottom:1px solid var(--c-border-light);display:flex;gap:16px}
.woocommerce-tabs .panel .woocommerce-product-attributes-item__label{font-weight:600;min-width:200px;color:var(--c-text)}
.woocommerce-tabs .panel .woocommerce-product-attributes-item__value{color:var(--c-text-light)}

/* Related Products */
.related.products,.upsells.products{margin:0 auto;max-width:var(--container);padding:48px 24px;border-top:1px solid var(--c-border)}
.related.products>h2,.upsells.products>h2{font-size:1.4rem;margin-bottom:28px;font-weight:600}
.related ul.products,.upsells ul.products{grid-template-columns:repeat(3,1fr)}

/* --- 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)}
.tevora-free-shipping-row td{padding:0!important;border:0!important}
.tevora-free-shipping-block{margin-bottom:16px}
.tevora-free-shipping-progress{margin:8px 0 16px;padding:16px;background:#eaf6ff;border:2px solid #0077b6;border-radius:var(--radius-lg);text-align:left;box-shadow:0 4px 14px rgba(0,102,161,.12)}
.tevora-free-shipping-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:10px;color:#003b5c;font-size:.95rem}
.tevora-free-shipping-heading span{font-size:.82rem;font-weight:700;color:#005b8f}
.tevora-free-shipping-bar{height:12px;background:#c5e5f7;border-radius:8px;overflow:hidden}
.tevora-free-shipping-bar span{display:block;height:100%;background:linear-gradient(90deg,#005b96,#17a9e0,#005b96);background-size:200% 100%;border-radius:8px;animation:tevora-shipping-loading 1.8s linear infinite;transition:width .35s ease}
@keyframes tevora-shipping-loading{from{background-position:200% 0}to{background-position:0 0}}
@media (prefers-reduced-motion:reduce){.tevora-free-shipping-bar span{animation:none}}
.tevora-free-shipping-progress.is-complete{background:#effaf2;border-color:rgba(35,142,68,.2)}
.tevora-free-shipping-progress.is-complete .tevora-free-shipping-heading{color:var(--c-success)}
.tevora-free-shipping-progress.is-complete .tevora-free-shipping-bar span{background:var(--c-success)}
.tevora-free-shipping-progress p{margin:10px 0 0;color:var(--c-text-light);font-size:.82rem;line-height:1.5}
.tevora-free-shipping-progress p strong{color:var(--c-primary-dark);font-weight:700}
.tevora-free-shipping-progress p a{color:var(--c-primary);font-weight:600;white-space:nowrap}
.tevora-free-shipping-progress p a:hover{text-decoration:underline}

/* --- 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 .woocommerce-form__label-for-checkbox,.woocommerce-checkout #ship-to-different-address label,.woocommerce-checkout .woocommerce-account-fields label{display:flex!important;align-items:center;gap:8px;cursor:pointer}
.woocommerce-checkout .woocommerce-form__label-for-checkbox input[type=checkbox],.woocommerce-checkout #ship-to-different-address input[type=checkbox],.woocommerce-checkout .woocommerce-account-fields input[type=checkbox]{position:static!important;width:18px!important;height:18px!important;flex:0 0 18px;margin:0!important;accent-color:var(--c-primary)}
.tevora-checkout-email-notice{margin:8px 0 16px!important;padding:12px 14px!important;font-size:.88rem;line-height:1.5}
.tevora-checkout-email-notice a{font-weight:600;text-decoration:underline}
.tevora-checkout-existing-customer{background:#e8f6ee!important;border-color:#48a868!important;color:#176b37!important}
.tevora-checkout-login{margin:0 0 16px;padding:16px;background:var(--c-bg);border:1px solid var(--c-border);border-radius:var(--radius)}
.tevora-checkout-login label{margin-bottom:8px!important}
.tevora-checkout-login-row{display:flex;gap:8px;align-items:stretch}
.tevora-checkout-login-row input{flex:1}
.tevora-checkout-login-button{white-space:nowrap}
.tevora-checkout-login>a{display:inline-block;margin-top:8px;font-size:.85rem;text-decoration:underline}
.tevora-checkout-login-error{color:#b42318;font-size:.85rem;margin-top:8px;min-height:1.2em}
.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}
  .top-bar-inner{flex-wrap:wrap;justify-content:center;gap:6px}
  .top-bar-message{flex-basis:100%;flex-wrap:wrap;white-space:normal;gap:6px}
  .top-bar-message-text,.top-bar-message-warning{flex-basis:100%;text-align:center}
  .blog-grid{grid-template-columns:1fr}
  .blog-listing-title{font-size:1.5rem}
  .single-post-article{padding:24px}
  .post-title{font-size:1.5rem}
  .post-related-products ul.products{grid-template-columns:repeat(2,1fr)}
  .post-navigation{flex-direction:column;gap:16px}
  .post-nav-next{text-align:left}
  .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}
  .product-main-grid{grid-template-columns:1fr;gap:32px}
  .product-gallery-col .woocommerce-product-gallery__image{aspect-ratio:1}
  .single-product-page .trust-badges{grid-template-columns:1fr}
  .woocommerce-tabs .panel{padding:20px}
  .related ul.products,.upsells ul.products{grid-template-columns:repeat(2,1fr) !important}
  .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){
  .top-bar-inner{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:6px}
  .top-bar-message{flex-basis:100%;flex-wrap:wrap;white-space:normal;gap:6px;font-size:.68rem}
  .top-bar-message-text{flex-basis:100%;text-align:center}
  .top-bar-message-warning{flex-basis:100%;text-align:center}
  .top-bar-right{order:2}
  .top-bar-left{order:1}
  .top-bar-message{order:3}
  .hp-slide-caption .container{padding-left:56px;padding-right:56px}
  .hp-slider-arrow{width:34px;height:34px;font-size:1.25rem}
  .hp-slider-prev{left:8px}
  .hp-slider-next{right:8px}
  .categories-grid{grid-template-columns:1fr}
  .products-grid{grid-template-columns:1fr}
  ul.products{grid-template-columns:1fr}
  .blog-grid{grid-template-columns:1fr}
  .post-related-products 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}
  .product-main-grid{gap:24px}
  .single-product-page .product_title{font-size:1.5rem}
  .single-product-page .price{font-size:1.6rem}
  .single-product-page .cart{flex-direction:column;align-items:stretch}
  .single-product-page .qty{width:100%}
  .woocommerce-tabs ul.tabs{flex-direction:column;gap:0;border-bottom:none}
  .woocommerce-tabs ul.tabs li{border-bottom:1px solid var(--c-border);margin-bottom:0}
  .related ul.products,.upsells ul.products{grid-template-columns:1fr !important}
  .woocommerce-tabs .panel .woocommerce-product-attributes-item{flex-direction:column;gap:4px}
  .woocommerce-tabs .panel .woocommerce-product-attributes-item__label{min-width:auto}
}

/* --- 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}

/* ==========================================================================
   HOMEPAGE: Slider, Filter, Subcategories, Testimonials, Certifications, Utile
   ========================================================================== */

/* --- Homepage Slider --- */
.hp-slider{position:relative;width:100%;overflow:hidden;background:var(--c-bg-alt)}
.hp-slider-track{display:flex;transition:transform .5s ease}
.hp-slide{position:relative;min-width:100%;height:320px;background-size:cover;background-position:center;display:flex;align-items:flex-end}
.hp-slide-link{position:absolute;inset:0;display:block;z-index:1}
.hp-slide-caption{position:relative;z-index:2;padding:24px 0;background:linear-gradient(transparent,rgba(0,0,0,.6));width:100%}
.hp-slide-caption .container{padding-left:72px;padding-right:72px}
.hp-slide-caption h2{color:#fff;font-size:1.5rem;font-weight:600;text-shadow:0 2px 8px rgba(0,0,0,.5)}
.hp-slider-arrow{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.9);border:none;width:40px;height:40px;border-radius:50%;font-size:1.5rem;color:var(--c-text);cursor:pointer;z-index:5;transition:all var(--transition);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow)}
.hp-slider-arrow:hover{background:#fff;box-shadow:var(--shadow-lg)}
.hp-slider-prev{left:16px}
.hp-slider-next{right:16px}
.hp-slider-dots{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);display:flex;gap:8px;z-index:5}
.hp-slider-dots button{width:10px;height:10px;border-radius:50%;border:none;background:rgba(255,255,255,.5);cursor:pointer;transition:all var(--transition)}
.hp-slider-dots button.active{background:#fff;width:28px;border-radius:5px}

/* --- Product Filter --- */
.hp-filter{background:#fff;border-bottom:1px solid var(--c-border);padding:24px 0}
.hp-filter-grid{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:16px;align-items:end}
.hp-filter-item label{display:block;font-size:.82rem;font-weight:600;color:var(--c-text);margin-bottom:6px}
.hp-filter-item input,.hp-filter-item select{width:100%;padding:11px 14px;border:2px solid var(--c-border);border-radius:var(--radius);font-size:.9rem;font-family:inherit;background:#fff;transition:border-color var(--transition)}
.hp-filter-item input:focus,.hp-filter-item select:focus{border-color:var(--c-primary);outline:none}
.hp-filter-btn{padding:12px 28px;white-space:nowrap}
.hp-filter-action{display:flex;align-items:flex-end}

/* --- Level-2 Subcategories --- */
.hp-subcats{padding:56px 0;background:var(--c-bg)}
.hp-subcats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.hp-subcat-card{background:#fff;border:1px solid var(--c-border);border-radius:var(--radius-lg);overflow:hidden;transition:all var(--transition);display:block}
.hp-subcat-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px);border-color:var(--c-primary)}
.hp-subcat-img{aspect-ratio:1;overflow:hidden;background:#fff;border-bottom:1px solid var(--c-border);display:flex;align-items:center;justify-content:center}
.hp-subcat-img img{width:100%;height:100%;object-fit:contain;padding:16px;transition:transform .3s ease}
.hp-subcat-card:hover .hp-subcat-img img{transform:scale(1.05)}
.hp-subcat-info{padding:16px}
.hp-subcat-info h3{font-size:1rem;margin-bottom:2px}
.hp-subcat-count{font-size:.82rem;color:var(--c-text-light)}

/* --- Products per Subcategory --- */
.hp-cat-products{padding:32px 0;background:#fff}
.hp-cat-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px}
.hp-cat-title{font-size:1.3rem;font-weight:600}
.hp-cat-count{font-size:.95rem;color:var(--c-text-light);font-weight:400}
.hp-cat-all{font-size:.9rem;font-weight:600;color:var(--c-primary);white-space:nowrap}
.hp-cat-all:hover{color:var(--c-primary-dark)}
.hp-cat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}

/* --- Testimonials --- */
.hp-testimonials{padding:56px 0;background:var(--c-bg);overflow:hidden}
.hp-testimonials-track{display:flex;gap:20px;padding:0 24px;overflow-x:auto;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:var(--c-border) transparent}
.hp-testimonials-track::-webkit-scrollbar{height:6px}
.hp-testimonials-track::-webkit-scrollbar-thumb{background:var(--c-border);border-radius:3px}
.hp-testimonial-card{min-width:340px;max-width:380px;background:#fff;border-radius:var(--radius-lg);padding:28px;box-shadow:var(--shadow-sm);flex-shrink:0;position:relative}
.hp-testimonial-quote{font-size:3rem;color:var(--c-primary);line-height:1;font-family:Georgia,serif;margin-bottom:-12px;opacity:.3}
.hp-testimonial-text{font-size:.92rem;line-height:1.7;color:var(--c-text);margin-bottom:20px}
.hp-testimonial-author{display:flex;align-items:center;gap:12px}
.hp-testimonial-avatar{width:44px;height:44px;border-radius:50%;object-fit:cover}
.hp-testimonial-avatar-placeholder{width:44px;height:44px;border-radius:50%;background:var(--c-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.1rem}
.hp-testimonial-meta{display:flex;flex-direction:column;gap:1px}
.hp-testimonial-meta strong{font-size:.9rem;color:var(--c-text)}
.hp-testimonial-meta span{font-size:.8rem;color:var(--c-text-light)}
.hp-testimonial-company{color:var(--c-primary)!important;font-weight:500}

/* --- Certifications --- */
.hp-certifications{padding:48px 0;background:#fff;overflow:hidden}
.hp-certs-track{display:flex;gap:20px;padding:0 24px;overflow-x:auto;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:var(--c-border) transparent;align-items:stretch}
.hp-certs-track::-webkit-scrollbar{height:6px}
.hp-certs-track::-webkit-scrollbar-thumb{background:var(--c-border);border-radius:3px}
.hp-cert-card{position:relative;display:block;min-width:220px;height:320px;background:var(--c-bg);border:1px solid var(--c-border);border-radius:var(--radius-lg);overflow:hidden;flex-shrink:0;transition:all var(--transition)}
.hp-cert-card:hover,.hp-cert-card:focus-visible{box-shadow:var(--shadow-lg);border-color:var(--c-primary);transform:translateY(-3px)}
.hp-cert-card img{display:block;width:100%;height:100%;object-fit:contain;background:#f8fafc;padding:20px}
.hp-cert-overlay{position:absolute;inset:auto 0 0;padding:48px 18px 18px;background:linear-gradient(transparent,rgba(0,35,65,.92));opacity:0;transition:opacity var(--transition)}
.hp-cert-card:hover .hp-cert-overlay,.hp-cert-card:focus-visible .hp-cert-overlay{opacity:1}
.hp-cert-name{display:block;font-size:.92rem;font-weight:600;line-height:1.35;color:#fff}

/* --- Contact Form 7 --- */
.wpcf7{color:var(--c-text)}
.wpcf7 form p{margin:0 0 16px}
.wpcf7 form label{display:block;font-size:.88rem;font-weight:600;color:var(--c-text);margin-bottom:6px}
.wpcf7-form-control-wrap{display:block;margin-top:6px}
.wpcf7 input[type=text],.wpcf7 input[type=email],.wpcf7 input[type=tel],.wpcf7 input[type=url],.wpcf7 textarea,.wpcf7 select{width:100%;padding:12px 14px;border:1px solid var(--c-border);border-radius:var(--radius);background:#fff;color:var(--c-text);font:inherit;line-height:1.5;transition:border-color var(--transition),box-shadow var(--transition)}
.wpcf7 textarea{min-height:140px;resize:vertical}
.wpcf7 input:focus,.wpcf7 textarea:focus,.wpcf7 select:focus{border-color:var(--c-primary);outline:none;box-shadow:0 0 0 3px rgba(0,102,161,.12)}
.wpcf7 input[type=submit]{display:inline-flex;align-items:center;justify-content:center;padding:12px 28px;border:0;border-radius:var(--radius);background:var(--c-primary);color:#fff;font:600 .95rem inherit;cursor:pointer;transition:background var(--transition),transform var(--transition),box-shadow var(--transition)}
.wpcf7 input[type=submit]:hover{background:var(--c-primary-dark);transform:translateY(-1px);box-shadow:var(--shadow)}
.wpcf7-not-valid{border-color:var(--c-error)!important}
.wpcf7-not-valid-tip{display:block;margin-top:5px;color:var(--c-error);font-size:.78rem}
.wpcf7 form .wpcf7-response-output{margin:16px 0 0;padding:12px 14px;border:1px solid var(--c-border);border-radius:var(--radius);font-size:.88rem}
.wpcf7 form.sent .wpcf7-response-output{border-color:var(--c-success);color:var(--c-success);background:#effaf2}
.wpcf7 form.invalid .wpcf7-response-output,.wpcf7 form.failed .wpcf7-response-output{border-color:var(--c-error);color:var(--c-error);background:#fff1f1}

/* --- Utile Articles --- */
.hp-utile{padding:56px 0;background:var(--c-bg)}
.hp-utile-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.hp-utile-card{background:#fff;border:1px solid var(--c-border);border-radius:var(--radius-lg);overflow:hidden;transition:all var(--transition);display:block}
.hp-utile-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px);border-color:var(--c-primary)}
.hp-utile-img{aspect-ratio:16/9;overflow:hidden;background:var(--c-bg-alt)}
.hp-utile-img img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.hp-utile-card:hover .hp-utile-img img{transform:scale(1.05)}
.hp-utile-info{padding:20px}
.hp-utile-date{display:block;font-size:.78rem;color:var(--c-text-muted);margin-bottom:6px}
.hp-utile-info h3{font-size:1.05rem;margin-bottom:8px;line-height:1.3}
.hp-utile-info p{font-size:.88rem;color:var(--c-text-light);line-height:1.6;margin:0}

/* --- Footer widget styling (match theme fallback look) --- */
.footer-widget{font-size:.85rem;color:#8899aa}
.footer-widget .footer-widget-title{color:#fff;font-size:.9rem;font-weight:600;margin-bottom:16px;letter-spacing:.5px}
.footer-widget ul{list-style:none;margin:0;padding:0}
.footer-widget ul li{margin-bottom:8px;font-size:.85rem;color:#8899aa}
.footer-widget ul li a{font-size:.85rem;color:#8899aa;transition:color .15s}
.footer-widget ul li a:hover{color:#fff}
.footer-widget ul ul{margin-top:8px;padding-left:12px}
.footer-widget p{font-size:.85rem;color:#8899aa;line-height:1.8;margin-bottom:8px}
.footer-widget select,.footer-widget input[type=text]{max-width:100%}
.footer-widget img{max-width:100%;height:auto;border-radius:var(--radius)}

/* --- Product Origin Badge + Brochure (single product page) --- */
.product-badges-row{display:flex;align-items:flex-start;gap:16px;margin-bottom:20px;flex-wrap:wrap}
.product-origin-badge{margin-bottom:0}
.product-origin-badge img{max-height:50px;width:auto;border-radius:var(--radius)}
.product-brochure-link{display:inline-flex;align-items:center}
.product-brochure-link img{max-height:50px;width:auto;border-radius:var(--radius);transition:opacity var(--transition)}
.product-brochure-link:hover img{opacity:.8}

/* --- Homepage Responsive --- */
@media (max-width:1024px){
  .hp-subcats-grid{grid-template-columns:repeat(3,1fr)}
  .hp-cat-grid{grid-template-columns:repeat(3,1fr)}
  .hp-utile-grid{grid-template-columns:repeat(2,1fr)}
  .hp-filter-grid{grid-template-columns:1fr 1fr;gap:12px}
  .hp-filter-action{grid-column:1/-1}
  .hp-filter-btn{width:100%}
}
@media (max-width:768px){
  .hp-slide{height:220px}
  .hp-subcats-grid{grid-template-columns:repeat(2,1fr)}
  .hp-cat-grid{grid-template-columns:repeat(2,1fr)}
  .hp-utile-grid{grid-template-columns:1fr}
  .hp-testimonial-card{min-width:280px}
  .hp-cert-card{min-width:190px;height:280px}
  .hp-cat-head{flex-direction:column;align-items:flex-start}
}
@media (max-width:480px){
  .hp-subcats-grid{grid-template-columns:1fr}
  .hp-cat-grid{grid-template-columns:1fr}
  .hp-filter-grid{grid-template-columns:1fr}
  .hp-slide{height:180px}
  .hp-slide-caption h2{font-size:1.1rem}
}

/* --- Slider subtitle + CTA --- */
.hp-slide-subtitle{color:#fff;font-size:.95rem;text-shadow:0 1px 4px rgba(0,0,0,.6);margin:4px 0 12px}
.hp-slide-cta{font-size:.9rem;padding:10px 24px}

/* --- Testimonial stars --- */
.hp-testimonial-stars{display:flex;gap:2px;margin-bottom:8px}
.hp-testimonial-stars .hp-star{font-size:1.1rem;color:#ccc;line-height:1}
.hp-testimonial-stars .hp-star.filled{color:#f5a623}

/* --- Homepage filter: thin single row --- */
.hp-filter{padding:12px 0;background:var(--c-bg);border-bottom:1px solid var(--c-border)}
.hp-filter-row{display:flex;flex-wrap:nowrap;gap:8px;align-items:center}
.hp-filter-cell{flex:1;min-width:0}
.hp-filter-cell-search{flex:2}
.hp-filter-search-inner{display:flex;align-items:center;gap:0}
.hp-filter-search-inner input{flex:1;border-top-right-radius:0;border-bottom-right-radius:0}
.barcode-scan-btn-filter{padding:8px 10px;border:1px solid var(--c-border);border-left:none;border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius);background:#fff;color:var(--c-primary);height:38px;flex-shrink:0}
.barcode-scan-btn-filter:hover{background:var(--c-primary);color:#fff}
.hp-filter-cell-btn{flex:0 0 auto}
.hp-filter-row input[type="text"]{width:100%;padding:8px 12px;border:1px solid var(--c-border);border-radius:var(--radius);font-size:.85rem;background:#fff;height:38px}
.hp-filter-row input[type="text"]:focus{border-color:var(--c-primary);outline:none}
.hp-filter-select{width:100%;padding:7px 10px;border:1px solid var(--c-border);border-radius:var(--radius);font-size:.85rem;background:#fff;height:38px;max-width:100%}
.hp-filter-btn{padding:8px 14px;height:38px;display:flex;align-items:center;justify-content:center;white-space:nowrap}

/* --- Advanced filter accordion (homepage) --- */
.hp-advfilter{margin-top:10px}
.hp-advfilter-toggle{width:100%;background:none;border:1px solid var(--c-border);border-radius:var(--radius);padding:8px 16px;font-size:.82rem;font-weight:600;color:var(--c-text);cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:all var(--transition)}
.hp-advfilter-toggle:hover{border-color:var(--c-primary);color:var(--c-primary)}
.hp-advfilter-toggle .toggle-icon{font-size:1.1rem;transition:transform var(--transition)}
.hp-advfilter-toggle.open .toggle-icon{transform:rotate(45deg)}
.hp-advfilter-accordion{padding-top:12px}
.hp-advfilter-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;padding:16px;background:#fff;border:1px solid var(--c-border);border-radius:var(--radius)}
.hp-advfilter-submit{margin-top:12px}

/* --- Sidebar filter --- */
.sf-advfilter{margin-top:0}
.sf-advfilter-form{display:flex;flex-direction:column;gap:0}
.sf-filter-group{border-bottom:1px solid var(--c-border-light);padding:12px 0}
.sf-filter-group:first-child{padding-top:4px}
.sf-filter-group-title{font-size:.85rem;font-weight:600;color:var(--c-text);margin-bottom:8px}
.sf-filter-options{display:flex;flex-direction:column;gap:5px;max-height:180px;overflow-y:auto;scrollbar-width:thin}
.sf-filter-options::-webkit-scrollbar{width:4px}
.sf-filter-options::-webkit-scrollbar-thumb{background:var(--c-border);border-radius:2px}
.sf-filter-checkbox{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.82rem;color:var(--c-text);padding:2px 0;transition:color var(--transition)}
.sf-filter-checkbox:hover{color:var(--c-primary)}
.sf-filter-checkbox input{position:absolute;opacity:0;cursor:pointer;width:0;height:0}
.sf-filter-checkmark{width:15px;height:15px;border:2px solid var(--c-border);border-radius:3px;flex-shrink:0;position:relative;transition:all var(--transition)}
.sf-filter-checkbox input:checked ~ .sf-filter-checkmark{background:var(--c-primary);border-color:var(--c-primary)}
.sf-filter-checkbox input:checked ~ .sf-filter-checkmark::after{content:'';position:absolute;left:3px;top:0;width:4px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.sf-filter-label{flex:1}
.sf-filter-count{color:var(--c-text-muted);font-size:.76rem}

.sf-advfilter-more{padding:12px 0}
.sf-advfilter-toggle{width:100%;background:none;border:1px solid var(--c-border);border-radius:var(--radius);padding:8px 14px;font-size:.82rem;font-weight:600;color:var(--c-text);cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:all var(--transition)}
.sf-advfilter-toggle:hover{border-color:var(--c-primary);color:var(--c-primary)}
.sf-advfilter-toggle .toggle-icon{font-size:1.1rem;transition:transform var(--transition)}
.sf-advfilter-toggle.open .toggle-icon{transform:rotate(45deg)}
.sf-advfilter-accordion{padding-top:8px}
.sf-advfilter-submit{margin-top:14px;width:100%}

/* Homepage advanced filter checkbox groups reuse sidebar styles */
.hp-filter-group{border-bottom:1px solid var(--c-border-light);padding:0}
.hp-filter-group-title{font-size:.85rem;font-weight:600;color:var(--c-text);margin-bottom:8px}
.hp-filter-options{display:flex;flex-direction:column;gap:5px;max-height:180px;overflow-y:auto;scrollbar-width:thin}
.hp-filter-options::-webkit-scrollbar{width:4px}
.hp-filter-options::-webkit-scrollbar-thumb{background:var(--c-border);border-radius:2px}
.hp-filter-checkbox{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.82rem;color:var(--c-text);padding:2px 0;transition:color var(--transition)}
.hp-filter-checkbox:hover{color:var(--c-primary)}
.hp-filter-checkbox input{position:absolute;opacity:0;cursor:pointer;width:0;height:0}
.hp-filter-checkmark{width:15px;height:15px;border:2px solid var(--c-border);border-radius:3px;flex-shrink:0;position:relative;transition:all var(--transition)}
.hp-filter-checkbox input:checked ~ .hp-filter-checkmark{background:var(--c-primary);border-color:var(--c-primary)}
.hp-filter-checkbox input:checked ~ .hp-filter-checkmark::after{content:'';position:absolute;left:3px;top:0;width:4px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.hp-filter-label{flex:1}
.hp-filter-count{color:var(--c-text-muted);font-size:.76rem}

/* Sidebar filter widget */
.sf-filter-widget{margin-bottom:24px;background:#fff;border:1px solid var(--c-border);border-radius:var(--radius-lg);padding:20px}
.sf-filter-widget .widget-title{margin-bottom:12px;font-size:1rem}

/* --- Shop layout with sidebar (sidebar left) --- */
.shop-layout{display:grid;grid-template-columns:280px 1fr;gap:32px;padding-bottom:48px}
.shop-main{min-width:0}
.shop-sidebar-wrap{min-width:0}

/* --- Active filter chips --- */
.active-chips-bar{margin-bottom:16px;padding:12px 0}
.active-chips-list{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.active-chips-label{font-size:.85rem;font-weight:600;color:var(--c-text);margin-right:4px}
.active-chip{display:inline-flex;align-items:center;gap:6px;background:var(--c-bg);border:1px solid var(--c-border);border-radius:20px;padding:6px 12px;font-size:.82rem;color:var(--c-text);transition:all var(--transition)}
.active-chip:hover{border-color:var(--c-primary)}
.active-chip-remove{color:var(--c-text-muted);text-decoration:none;font-size:1rem;line-height:1;cursor:pointer}
.active-chip-remove:hover{color:var(--c-error)}
.active-chips-clear{font-size:.82rem;font-weight:600;color:var(--c-error);text-decoration:none;margin-left:8px}
.active-chips-clear:hover{text-decoration:underline}

/* --- Responsive --- */
@media (max-width:1024px){
  .shop-layout{grid-template-columns:1fr}
  .shop-sidebar-wrap{order:-1;margin-bottom:24px}
  .woo-container{grid-template-columns:1fr}
  .hp-filter-row{flex-wrap:wrap}
  .hp-filter-cell{flex:1 1 45%}
  .hp-filter-cell-search{flex:1 1 100%}
  .hp-advfilter-grid{grid-template-columns:1fr}
}
@media (max-width:768px){
  .hp-filter-row{flex-direction:column}
  .hp-filter-cell{width:100%;flex:1 1 100%}
  .hp-filter-select,.hp-filter-row input[type="text"]{width:100%}
  .hp-filter-btn{width:100%}
  .hp-filter-options,.sf-filter-options{max-height:140px}
}



/* --- Distributor landing page --- */
.distributors-page{background:#fff;overflow:hidden;color:var(--c-text)}
.distributors-hero{position:relative;isolation:isolate;min-height:720px;display:flex;align-items:center;background:#001530;color:#fff}
.distributors-hero-backdrop{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(0,21,48,.96) 0%,rgba(0,30,70,.84) 42%,rgba(0,40,90,.38) 100%)}
.distributors-hero::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(135deg,rgba(0,168,168,.15),transparent 42%);pointer-events:none}
.distributors-hero-grid{width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,500px);gap:72px;align-items:center;padding-top:72px;padding-bottom:72px}
.distributors-hero-copy{max-width:680px}
.distributors-eyebrow{display:inline-block;color:var(--c-accent);font-size:.72rem;font-weight:700;letter-spacing:2px;line-height:1.2;margin-bottom:16px}
.distributors-hero h1{font-size:clamp(2.4rem,5vw,4.5rem);line-height:1.06;letter-spacing:-1.8px;color:#fff;font-weight:500;margin-bottom:24px}
.distributors-hero h1 strong{color:#9be7e1;font-weight:700}
.distributors-lead{max-width:580px;color:rgba(255,255,255,.88);font-size:1.2rem;line-height:1.6;margin-bottom:30px}
.distributors-hero-points{display:flex;flex-direction:column;gap:12px;color:#fff;font-size:.92rem;font-weight:500}
.distributors-hero-points span{display:flex;align-items:center;gap:10px}
.distributors-hero-points i{display:inline-flex;width:22px;height:22px;align-items:center;justify-content:center;border-radius:50%;background:var(--c-accent);color:#063c60;font-size:.8rem;font-style:normal;font-weight:800}
.distributors-form-card{background:#fff;color:var(--c-text);border-radius:12px;padding:32px;box-shadow:0 24px 70px rgba(0,20,40,.28);animation:distributors-card-in .7s ease both}
.distributors-form-heading{display:flex;gap:14px;align-items:flex-start;margin-bottom:10px}
.distributors-form-icon{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:var(--c-primary-light);color:var(--c-primary);font-size:1.4rem;font-weight:700}
.distributors-form-kicker{display:block;font-size:.66rem;font-weight:700;letter-spacing:1.5px;color:var(--c-primary);margin:2px 0 5px}
.distributors-form-card h2{font-size:1.55rem;margin:0}
.distributors-form-card>p{font-size:.9rem;line-height:1.55;color:var(--c-text-light);margin-bottom:22px}
.distributors-form-card .wpcf7 form p{margin-bottom:12px}
.distributors-form-card .wpcf7 input[type=submit]{width:100%;padding:14px 18px;background:var(--c-accent-dark)}
.distributors-form-card .wpcf7 input[type=submit]:hover{background:#006b6b}
.distributors-scroll-cue{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);color:rgba(255,255,255,.75);font-size:.72rem;letter-spacing:1px;text-transform:uppercase;display:flex;flex-direction:column;gap:5px;align-items:center;transition:color var(--transition)}
.distributors-scroll-cue span{font-size:1.4rem;line-height:.8;animation:distributors-bounce 1.8s ease-in-out infinite}
.distributors-scroll-cue:hover{color:#fff}
.distributors-audience{padding:104px 0 112px;background:#fff}
.distributors-section-intro{max-width:720px;margin-bottom:44px}
.distributors-section-intro h2,.distributors-section-heading h2,.distributors-origin h2,.distributors-projects h2{font-size:clamp(2rem,3.5vw,3rem);line-height:1.12;letter-spacing:-1px;margin-bottom:16px}
.distributors-section-intro p{max-width:650px;color:var(--c-text-light);font-size:1.02rem;line-height:1.75;margin:0}
.distributors-audience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.distributors-audience-card{min-height:300px;padding:32px;border:1px solid var(--c-border);border-radius:10px;background:#fff;transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition)}
.distributors-audience-card:hover{transform:translateY(-5px);border-color:#b8d5e5;box-shadow:var(--shadow-lg)}
.distributors-audience-card-featured{background:var(--c-primary);border-color:var(--c-primary);color:#fff}
.distributors-line-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;margin-bottom:30px;border:1px solid currentColor;border-radius:50%;font-size:1.45rem;color:var(--c-primary)}
.distributors-audience-card-featured .distributors-line-icon{color:#9be7e1}
.distributors-card-label{display:block;color:var(--c-primary);font-size:.68rem;font-weight:700;letter-spacing:1.4px;margin-bottom:12px}
.distributors-audience-card-featured .distributors-card-label{color:#9be7e1}
.distributors-audience-card h3{font-size:1.3rem;line-height:1.25;margin-bottom:12px}
.distributors-audience-card p{color:var(--c-text-light);font-size:.92rem;line-height:1.65;margin:0 0 24px}
.distributors-audience-card-featured p{color:rgba(255,255,255,.8)}
.distributors-audience-card a{display:inline-flex;gap:10px;align-items:center;color:#fff;font-size:.85rem;font-weight:700}
.distributors-audience-card a span{font-size:1.1rem;transition:transform var(--transition)}
.distributors-audience-card a:hover span{transform:translateX(4px)}
.distributors-benefits{padding:104px 0;background:#001530;color:#fff;position:relative}
.distributors-benefits::before{content:'TEVORA';position:absolute;right:-20px;top:20px;color:rgba(255,255,255,.03);font-size:15vw;font-weight:800;letter-spacing:-.08em;line-height:1}
.distributors-section-heading{position:relative;z-index:1;display:grid;grid-template-columns:1.1fr 1fr;gap:80px;align-items:end;margin-bottom:48px}
.distributors-section-heading-light h2{color:#fff}
.distributors-section-heading>p{color:rgba(255,255,255,.68);line-height:1.75;font-size:1rem;margin:0 0 4px}
.distributors-benefits-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.16)}
.distributors-benefit-card{min-height:220px;padding:30px;background:#001a35;transition:background var(--transition)}
.distributors-benefit-card:hover{background:#003060}
.distributors-benefit-card>span{display:block;color:#77d7d1;font-size:.78rem;font-weight:700;letter-spacing:1px;margin-bottom:38px}
.distributors-benefit-card h3{color:#fff;font-size:1.15rem;margin-bottom:9px}
.distributors-benefit-card p{color:rgba(255,255,255,.65);font-size:.88rem;line-height:1.65;margin:0}
.distributors-compliance{padding:72px 0;background:#edf7f7;border-top:1px solid #d8eeee;border-bottom:1px solid #d8eeee}
.distributors-compliance-grid{display:grid;grid-template-columns:150px 1fr;gap:42px;align-items:center;max-width:1000px}
.distributors-compliance-mark{width:120px;height:120px;border:2px solid var(--c-accent-dark);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--c-accent-dark);transform:rotate(-8deg)}
.distributors-compliance-mark span{font-size:2rem;font-weight:800;line-height:1}
.distributors-compliance-mark small{font-size:.63rem;font-weight:700;letter-spacing:1px;margin-top:5px}
.distributors-compliance h2{font-size:clamp(1.6rem,3vw,2.35rem);line-height:1.15;margin-bottom:12px}
.distributors-compliance p{max-width:780px;color:var(--c-text-light);line-height:1.7;margin:0 0 18px}
.distributors-inline-link{display:inline-flex;align-items:center;gap:10px;color:var(--c-primary);font-size:.9rem;font-weight:700;border-bottom:1px solid rgba(0,102,161,.3);padding-bottom:3px;transition:color var(--transition),border-color var(--transition)}
.distributors-inline-link:hover{color:var(--c-primary-dark);border-color:var(--c-primary-dark)}
.distributors-inline-link span{font-size:1.1rem;transition:transform var(--transition)}
.distributors-inline-link:hover span{transform:translateX(4px)}
.distributors-origin{padding:104px 0;background:#f7f9fb}
.distributors-origin-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.distributors-origin h2{margin-bottom:16px}
.distributors-origin p{max-width:520px;color:var(--c-text-light);line-height:1.75;margin-bottom:30px}
.distributors-origin-badges{display:flex;gap:12px;flex-wrap:wrap}
.distributors-origin-badge{min-width:126px;min-height:98px;padding:14px 12px;display:flex;flex-direction:column;justify-content:space-between;border:1px solid var(--c-border);border-radius:7px;background:#fff;box-shadow:var(--shadow-sm)}
.distributors-origin-badge strong{font-size:.68rem;letter-spacing:.8px;line-height:1.25;color:var(--c-text)}
.origin-flag{display:block;width:34px;height:22px;border:1px solid rgba(0,0,0,.1);border-radius:2px}
.origin-flag-de{background:linear-gradient(#171717 0 33%,#dd1e34 33% 66%,#ffce00 66%)}
.origin-flag-kr{background:#fff;position:relative;overflow:hidden}
.origin-flag-kr::after{content:'';position:absolute;left:8px;top:2px;width:16px;height:16px;border-radius:50%;background:conic-gradient(#c60c30 0 50%,#003478 50% 100%);transform:rotate(-18deg)}
.origin-flag-ch{background:#e21e2b;position:relative}
.origin-flag-ch::after,.origin-flag-ch::before{content:'';position:absolute;background:#fff}
.origin-flag-ch::after{left:8px;top:8px;width:18px;height:6px}
.origin-flag-ch::before{left:14px;top:2px;width:6px;height:18px}
.distributors-origin-visual{position:relative;border-radius:12px;overflow:hidden;box-shadow:var(--shadow-lg);min-height:430px;background:#dfeaf0}
.distributors-origin-visual img{width:100%;height:100%;min-height:430px;object-fit:cover}
.distributors-origin-caption{position:absolute;bottom:20px;left:20px;right:20px;display:flex;gap:14px;align-items:center;padding:15px 18px;border-radius:7px;background:rgba(3,42,67,.9);color:#fff}
.distributors-origin-caption strong{font-size:2rem;line-height:1;color:#9be7e1}.distributors-origin-caption span{font-size:.8rem;line-height:1.35;color:rgba(255,255,255,.84)}
.distributors-certifications{padding:104px 0;background:#fff}
.distributors-section-intro-centered{text-align:center;margin-left:auto;margin-right:auto}.distributors-section-intro-centered p{margin-left:auto;margin-right:auto}
.distributors-cert-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.distributors-cert-card{min-height:320px;padding:28px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;text-decoration:none;color:inherit;border:1px solid var(--c-border);border-radius:9px;background:#fff;transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition)}
.distributors-cert-card:hover{transform:translateY(-4px);border-color:#a9cadc;box-shadow:var(--shadow)}
.distributors-cert-card img{width:100%;height:190px;object-fit:contain;margin-bottom:20px}.distributors-cert-card h3{font-size:1rem;line-height:1.35;margin-bottom:7px}.distributors-cert-card span{font-size:.8rem;color:var(--c-text-muted)}
.distributors-cert-card span span{color:var(--c-primary);font-weight:700;margin-left:5px}
.distributors-cert-card-text strong{font-size:2rem;color:var(--c-primary);letter-spacing:1px;margin-bottom:20px}
.distributors-projects{padding:104px 0;background:#f7f9fb}
.distributors-projects-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.distributors-projects-image{min-height:470px;border-radius:12px;overflow:hidden;background:#dae8ef;box-shadow:var(--shadow-lg)}
.distributors-projects-image img{width:100%;height:100%;min-height:470px;object-fit:cover}
.distributors-projects-copy p{color:var(--c-text-light);font-size:1rem;line-height:1.75;margin-bottom:24px}
.distributors-check-list{display:flex;flex-direction:column;gap:12px;margin:0 0 32px}.distributors-check-list li{position:relative;padding-left:28px;color:var(--c-text);font-weight:500}.distributors-check-list li::before{content:'✓';position:absolute;left:0;top:0;color:var(--c-accent-dark);font-weight:800}
.distributors-projects-copy .btn,.distributors-final-cta .btn{gap:14px}.distributors-projects-copy .btn span,.distributors-final-cta .btn span{font-size:1.1rem;transition:transform var(--transition)}.distributors-projects-copy .btn:hover span,.distributors-final-cta .btn:hover span{transform:translateX(4px)}
.distributors-final-cta{padding:96px 0;text-align:center;background:var(--c-primary);color:#fff}.distributors-final-cta .distributors-eyebrow{color:#9be7e1}.distributors-final-cta h2{max-width:760px;margin:0 auto 14px;color:#fff;font-size:clamp(2rem,4vw,3.5rem);line-height:1.1}.distributors-final-cta p{max-width:560px;margin:0 auto 28px;color:rgba(255,255,255,.78);line-height:1.65}.distributors-final-cta .btn-light{padding:14px 25px}
@keyframes distributors-card-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@keyframes distributors-bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}

/* --- Barcode Scanner Modal --- */
.tevora-scanner-modal{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;padding:20px}
.tevora-scanner-modal.active{display:flex}
.tevora-scanner-backdrop{position:absolute;inset:0;background:rgba(0,15,30,.85)}
.tevora-scanner-dialog{position:relative;width:100%;max-width:520px;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 24px 80px rgba(0,0,0,.4);animation:scanner-in .3s ease}
@keyframes scanner-in{from{opacity:0;transform:translateY(20px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
.tevora-scanner-header{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;background:var(--c-primary);color:#fff}
.tevora-scanner-header h3{color:#fff;font-size:1.1rem;margin:0}
.tevora-scanner-close{background:none;border:none;color:#fff;font-size:1.8rem;line-height:1;cursor:pointer;padding:0;opacity:.8;transition:opacity var(--transition)}
.tevora-scanner-close:hover{opacity:1}
.tevora-scanner-body{padding:24px}
.tevora-scanner-video-wrap{position:relative;width:100%;aspect-ratio:4/3;background:#0a1a2a;border-radius:8px;overflow:hidden;margin-bottom:16px}
.tevora-scanner-video-wrap video{width:100%;height:100%;object-fit:cover;display:block}
.tevora-scanner-overlay{position:absolute;inset:0;pointer-events:none}
.tevora-scanner-overlay::before{content:'';position:absolute;left:10%;right:10%;top:20%;bottom:20%;border:2px solid rgba(0,168,168,.6);border-radius:8px}
.tevora-scanner-laser{position:absolute;left:10%;right:10%;top:50%;height:2px;background:linear-gradient(90deg,transparent,#00f5d0,transparent);box-shadow:0 0 12px rgba(0,245,208,.8);animation:scanner-laser 1.8s ease-in-out infinite}
@keyframes scanner-laser{0%,100%{top:20%}50%{top:80%}}
.tevora-scanner-status{display:flex;align-items:center;gap:8px;padding:10px 14px;background:var(--c-bg);border-radius:6px;font-size:.85rem;color:var(--c-text-light);margin-bottom:12px}
.tevora-scanner-status-icon{font-size:1.1rem;color:var(--c-primary);animation:scanner-spin 2s linear infinite}
@keyframes scanner-spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}
.tevora-scanner-error{padding:12px 14px;background:#fff1f1;border:1px solid var(--c-error);border-radius:6px;font-size:.85rem;color:var(--c-error);margin-bottom:12px}
.tevora-scanner-success{text-align:center;padding:20px;background:#effaf2;border:1px solid var(--c-success);border-radius:8px;margin-bottom:12px}
.tevora-scanner-success-icon{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;background:var(--c-success);color:#fff;font-size:1.8rem;font-weight:700;margin-bottom:12px;animation:scanner-check-pop .4s ease}
@keyframes scanner-check-pop{from{transform:scale(0)}to{transform:scale(1)}}
.tevora-scanner-success-text{display:block;font-size:.95rem;font-weight:600;color:var(--c-text);margin-bottom:14px;word-break:break-word}
.tevora-scanner-success-link{display:inline-flex;gap:8px;align-items:center}
.tevora-scanner-manual{display:flex;gap:10px;align-items:center}
.tevora-scanner-manual input{flex:1;padding:10px 14px;border:1px solid var(--c-border);border-radius:var(--radius);font:inherit;font-size:.9rem}
.tevora-scanner-manual input:focus{border-color:var(--c-primary);outline:none;box-shadow:0 0 0 3px rgba(0,102,161,.12)}
.tevora-scanner-manual .btn{white-space:nowrap;flex-shrink:0}
.tevora-scanner-flash .tevora-scanner-dialog{animation:scanner-flash .6s ease}
@keyframes scanner-flash{0%{box-shadow:0 24px 80px rgba(0,0,0,.4)}30%{box-shadow:0 0 0 4px var(--c-success),0 24px 80px rgba(42,157,63,.4)}100%{box-shadow:0 24px 80px rgba(0,0,0,.4)}}
@media(max-width:600px){.tevora-scanner-dialog{max-width:100%}.tevora-scanner-body{padding:16px}.tevora-scanner-header h3{font-size:1rem}.tevora-scanner-manual{flex-direction:column}.tevora-scanner-manual input{width:100%}.tevora-scanner-manual .btn{width:100%}}
@media (max-width:900px){.distributors-hero-grid{grid-template-columns:1fr;gap:42px;padding-top:64px}.distributors-hero{min-height:0}.distributors-hero-copy{max-width:700px}.distributors-form-card{max-width:560px}.distributors-audience-grid,.distributors-benefits-grid{grid-template-columns:repeat(2,1fr)}.distributors-section-heading{grid-template-columns:1fr;gap:20px}.distributors-origin-grid,.distributors-projects-grid{grid-template-columns:1fr;gap:48px}.distributors-origin-visual,.distributors-projects-image{max-width:680px}.distributors-projects-copy{max-width:680px}}
@media (max-width:600px){.distributors-hero-grid{padding-top:48px;padding-bottom:64px}.distributors-hero h1{font-size:2.45rem;letter-spacing:-1px}.distributors-lead{font-size:1.05rem}.distributors-form-card{padding:24px 20px}.distributors-audience,.distributors-benefits,.distributors-origin,.distributors-certifications,.distributors-projects{padding:72px 0}.distributors-audience-grid,.distributors-benefits-grid,.distributors-cert-grid{grid-template-columns:1fr}.distributors-audience-card{min-height:0}.distributors-benefit-card{min-height:0;padding:25px}.distributors-benefit-card>span{margin-bottom:22px}.distributors-compliance{padding:56px 0}.distributors-compliance-grid{grid-template-columns:1fr;gap:24px}.distributors-compliance-mark{width:92px;height:92px}.distributors-compliance-mark span{font-size:1.5rem}.distributors-origin-badge{min-width:calc(33.333% - 8px);padding:11px 9px}.distributors-origin-badge strong{font-size:.58rem}.distributors-origin-visual,.distributors-origin-visual img,.distributors-projects-image,.distributors-projects-image img{min-height:300px}.distributors-final-cta{padding:72px 20px}.distributors-final-cta h2{font-size:2.2rem}.distributors-scroll-cue{display:none}}
