/*
Theme Name: Woodmart Child
Theme URI: https://hybridenergy.lt
Description: Child theme of Woodmart for the hybridenergy.lt WooCommerce store. All custom brand styles/overrides live here; parent theme is never edited directly.
Author: Garrige
Template: woodmart
Version: 2.1.4
Text Domain: woodmart-child
*/
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap');

/* ============ Typography — Barlow Condensed (headings) + Barlow (body) — from Claude Design "Industry" ============ */
body,.wd-header,button,input,textarea,select,.woocommerce,.he-hero-txt p,.he-tcell,.he-wcell p,.he-hs-name,.woocommerce-loop-product__title,.product-title{font-family:'Roboto',-apple-system,'Segoe UI',Roboto,Arial,sans-serif}
h1,h2,h3,h4,h5,h6,.he-hero-txt h1,.he-shead h2,.he-dospel-txt h2,.wd-entities-title,.entry-title,.he-eyebrow{font-family:'Roboto',-apple-system,'Segoe UI',sans-serif;letter-spacing:0}
.he-hero-txt h1,.he-shead h2{font-weight:700}

/* ============ Hybrid Energy brand ============ */
:root{
  --he-blue:#056be0;
  --he-blue-dark:#0457b8;
  --he-green:#4a9c2d;
  --he-green-dark:#3c7f24;
  --he-orange:#056be0;
  --he-orange-dark:#0356b4;
  --he-ink:#1e1e1e;
}

/* Brand palette override — remaps Woodmart's demo (Alternative Energy) light-blue
   primary to the Hybrid Energy brand blue, without recompiling theme options.
   Woodmart 8.x drives accents from --wd-primary-color, so overriding it cascades. */
:root,
.wd-e-loaded,
html body {
  --wd-primary-color: #056be0 !important;
  --wd-primary-color-rgb: 5, 107, 224 !important;
  --btns-accented-bg: #056be0 !important;
  --btns-accented-bg-hover: #0457b8 !important;
  --wd-link-color-hover: #056be0 !important;
}

/* CTA / add-to-cart accent = brand orange */
.single_add_to_cart_button,
.wd-buy-now-btn,
.add_to_cart_button.wd-add-btn > span,
.woocommerce .button.alt {
  background-color: #056be0 !important;
  border-color: #056be0 !important;
}
.single_add_to_cart_button:hover,
.woocommerce .button.alt:hover {
  background-color: #0356b4 !important;
  border-color: #0356b4 !important;
}

/* Prices in brand green */
.woocommerce-Price-amount,
.price ins .woocommerce-Price-amount {
  color: #3c7f24;
}

/* ============ Homepage sections (built via tools/build_homepage.php) ============ */
.he-wrap{max-width:1230px;margin:0 auto;padding:0 24px}
.home .page-title,.home .wd-page-title{display:none!important}
.he-eyebrow{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--he-blue);margin-bottom:8px}
.he-eyebrow-light{color:#7fd0ff}

/* hero */
.he-hero{background:radial-gradient(1000px 460px at 84% -20%,rgba(5,107,224,.18),transparent 60%),linear-gradient(180deg,#f6f9fd,#eef3f8)}
.he-hero-in{display:grid;grid-template-columns:248px 1fr .82fr;gap:26px;align-items:center;padding:40px 24px 46px}
/* hero category sidebar (compu-station style) */
.he-cats-side{background:#fff;border:1px solid #e3ebf3;border-radius:14px;overflow:hidden;align-self:start;box-shadow:var(--shadow,0 8px 24px rgba(10,28,51,.06))}
.he-cats-head{display:flex;align-items:center;gap:9px;background:#0a1c33;color:#fff;font-family:'Roboto',sans-serif;font-weight:700;font-size:17px;letter-spacing:.03em;text-transform:uppercase;padding:13px 16px}
.he-cats-list{list-style:none;margin:0;padding:4px 0}
.he-cats-list li a{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:9px 16px;font-size:14px;color:#1d2a3a;border-bottom:1px solid #f1f5f9;transition:.12s}
.he-cats-list li:last-child a{border-bottom:0}
.he-cats-list li a:hover{background:#f4f7fb;color:var(--he-blue);padding-left:19px}
.he-cats-list li a span{font-size:12.5px;color:#9fb0c2;font-variant-numeric:tabular-nums}
/* hero stock badge */
.he-badge{display:inline-flex;align-items:center;gap:9px;background:#fff;border:1px solid #e3ebf3;border-radius:12px;padding:10px 16px;margin-top:18px;font-size:13.5px;color:#51637a;box-shadow:0 8px 20px rgba(10,28,51,.07)}
.he-badge b{color:#0f2033;font-size:17px;font-weight:800;margin-right:1px;font-family:'Roboto',sans-serif}
.he-badge-ic{display:flex}
.he-hero-txt h1{font-size:clamp(30px,4.2vw,50px);font-weight:800;line-height:1.1;letter-spacing:-.01em;margin:6px 0 16px;color:#0f2033}
.he-hero-txt p{font-size:17px;line-height:1.6;color:#51637a;max-width:48ch;margin-bottom:26px}
.he-cta{display:flex;gap:14px;flex-wrap:wrap}
.he-btn{display:inline-flex;align-items:center;font-weight:700;font-size:15px;padding:14px 26px;border-radius:12px;border:1.5px solid transparent;transition:.15s}
.he-btn-primary{background:var(--he-orange);color:#fff;box-shadow:0 8px 20px rgba(255,152,0,.3)}
.he-btn-primary:hover{background:var(--he-orange-dark);color:#fff}
.he-btn-ghost{border-color:#cdd9e6;color:#0f2033}
.he-btn-ghost:hover{border-color:var(--he-blue);color:var(--he-blue)}
.he-hero-vis{position:relative;min-height:330px;border-radius:20px;background:linear-gradient(160deg,#12386f,#0a1c33);overflow:hidden;box-shadow:0 20px 50px rgba(10,28,51,.25)}
.he-hero-vis::before{content:"";position:absolute;inset:0;background:
  radial-gradient(60% 45% at 72% 22%,rgba(255,196,84,.5),transparent 60%),
  repeating-linear-gradient(115deg,rgba(255,255,255,.06) 0 14px,transparent 14px 30px)}
.he-hero-vis::after{content:"";position:absolute;left:8%;right:8%;bottom:0;height:46%;
  background:linear-gradient(135deg,#0b3a7a,#1f6fd6);opacity:.9;transform:perspective(700px) rotateX(48deg);transform-origin:bottom;
  background-image:repeating-linear-gradient(90deg,rgba(255,255,255,.12) 0 2px,transparent 2px 22px),repeating-linear-gradient(0deg,rgba(255,255,255,.12) 0 2px,transparent 2px 22px)}

/* Hero product slideshow (replaces the abstract visual) */
.he-hero-slider{position:relative;min-height:390px;border-radius:20px;overflow:hidden;background:#fff;border:1px solid #e3ebf3;box-shadow:0 20px 50px rgba(10,28,51,.15)}
.he-hs-slide{position:absolute;inset:0;display:flex;flex-direction:column;text-decoration:none;opacity:0;visibility:hidden;transition:opacity .45s ease}
.he-hs-slide.is-active{opacity:1;visibility:visible}
.he-hs-img{flex:1;display:flex;align-items:center;justify-content:center;padding:26px;min-height:0;background:radial-gradient(120% 90% at 50% 18%,#fff,#f2f6fb)}
/* flex would shrink the photo to zero width inside the slide (computed 0x0 on phones),
   so the image is told not to shrink and to take its height from the box. */
.he-hs-img img{flex:0 0 auto;width:auto;height:100%;max-height:100%;max-width:100%;object-fit:contain}
.he-hs-info{padding:15px 22px 18px;border-top:1px solid #eef3f8;background:#fff;display:flex;flex-direction:column;gap:3px}
.he-hs-name{font-weight:700;font-size:14.5px;color:#0f2033;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.he-hs-price,.he-hs-price .amount,.he-hs-price bdi{font-weight:800;font-size:19px;color:var(--he-blue)!important}
.he-hs-cta{font-size:13px;font-weight:700;color:var(--he-orange);margin-top:1px}
.he-hs-dots{position:absolute;top:14px;right:16px;display:flex;gap:7px;z-index:3}
/* Woodmart styles every <button> (40x42, square, filled), so the slider controls have to say
   what they are louder than the theme does — hence the scoping and the !important. */
.he-hero-slider .he-hs-dot{width:9px!important;height:9px!important;min-width:0!important;min-height:0!important;
 padding:0!important;border:0!important;border-radius:50%!important;background:#c3d1e0!important;
 box-shadow:none!important;cursor:pointer;transition:background .2s,transform .2s;line-height:0}
.he-hero-slider .he-hs-dot:hover{background:#8fa8c2!important}
.he-hero-slider .he-hs-dot.is-active{background:var(--he-blue)!important;transform:scale(1.25)}

/* Arrows: the dots alone gave no way back to a product that had already rotated past. */
.he-hero-slider .he-hs-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:4;
 width:38px!important;height:38px!important;min-width:0!important;min-height:0!important;padding:0!important;
 display:flex;align-items:center;justify-content:center;
 border:1px solid #e3ebf3!important;border-radius:50%!important;
 background:rgba(255,255,255,.94)!important;color:#0a1c33!important;cursor:pointer;
 box-shadow:0 2px 10px rgba(10,28,51,.12)!important;transition:background .2s,color .2s,box-shadow .2s}
.he-hero-slider .he-hs-arrow:hover{background:var(--he-blue)!important;color:#fff!important;box-shadow:0 4px 16px rgba(5,107,224,.35)!important}
.he-hero-slider .he-hs-arrow:focus-visible{outline:2px solid var(--he-blue);outline-offset:2px}
.he-hero-slider .he-hs-prev{left:10px}
.he-hero-slider .he-hs-next{right:10px}
@media(max-width:560px){.he-hero-slider .he-hs-arrow{width:32px!important;height:32px!important}
 .he-hero-slider .he-hs-prev{left:6px}.he-hero-slider .he-hs-next{right:6px}}

/* Floating WhatsApp / Telegram contact buttons (mu-plugin he-chat-fab) */
.he-chat-fab{position:fixed;left:18px;bottom:18px;z-index:9990;display:flex;flex-direction:column;gap:11px}
.he-fab{width:54px;height:54px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 22px rgba(0,0,0,.28);transition:transform .15s}
.he-fab:hover{transform:scale(1.08)}
.he-fab svg{width:30px;height:30px;fill:#fff}
.he-fab-wa{background:#25D366}.he-fab-tg{background:#229ED9}

/* trust bar */
.he-trust{background:#fff;border-top:1px solid #e3ebf3;border-bottom:1px solid #e3ebf3}
.he-trust-in{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:6px 24px}
.he-tcell{padding:20px 10px;border-left:1px solid #eef3f8}
.he-tcell:first-child{border-left:0}
.he-tcell b{display:block;font-size:14.5px;color:#0f2033}
.he-tcell span{font-size:12.5px;color:#6a7b8d}

/* sections */
.he-sec{padding:56px 0}
.he-sec-alt{background:#f4f7fb}
.he-shead{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:26px}
.he-shead h2{font-size:clamp(22px,2.7vw,30px);font-weight:800;color:#0f2033;letter-spacing:-.01em}
.he-more{font-size:14px;font-weight:700;color:var(--he-blue);white-space:nowrap}

/* why us */
.he-why{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.he-wcell{background:#fff;border:1px solid #e3ebf3;border-radius:14px;padding:26px}
.he-wcell b{display:block;font-size:17px;font-weight:800;color:#0f2033;margin-bottom:8px}
.he-wcell p{font-size:14px;color:#51637a;line-height:1.6}

/* brands */
.he-brands{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;align-items:stretch}
.he-brands span{text-align:center;padding:26px;background:#fff;border:1px solid #e3ebf3;border-radius:14px;font-weight:800;font-size:20px;letter-spacing:.03em;color:#8496a8}
.he-brands-logos .he-brand-logo{display:flex;align-items:center;justify-content:center;padding:22px;background:#fff;border:1px solid #e3ebf3;border-radius:14px;min-height:96px}
.he-brands-logos img{max-height:48px;max-width:160px;object-fit:contain;filter:grayscale(1);opacity:.6;transition:.2s}
.he-brands-logos .he-brand-logo:hover img{filter:none;opacity:1}

/* dospel banner */
.he-dospel-sec{padding-top:0}
.he-dospel{display:grid;grid-template-columns:1.1fr .9fr;border-radius:20px;overflow:hidden;background:linear-gradient(120deg,#0a1c33,#123a6b);box-shadow:0 16px 40px rgba(10,28,51,.2)}
.he-dospel-txt{padding:44px}
.he-dospel-txt h2{color:#fff;font-size:28px;font-weight:800;margin:10px 0 12px}
.he-dospel-txt p{color:#bcd2e8;max-width:44ch;margin-bottom:22px;line-height:1.6}
.he-dospel-vis{position:relative;min-height:220px;overflow:hidden;background:radial-gradient(70% 90% at 70% 30%,rgba(46,158,79,.35),transparent 60%),repeating-linear-gradient(135deg,rgba(255,255,255,.05) 0 12px,transparent 12px 26px)}
.he-dospel-vis iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.he-dospel-vis:has(iframe){background:#06121f}

/* Neutralize Woodmart deferred/lazy-load placeholder — it reserves ~4000px of
   empty space per product element on this static shortcode homepage. */
.home .wd-sticky-loader,
.home .wd-content-loader,
.home .wd-loader-overlay,
.home .wd-products-holder + .wd-sticky-loader{display:none!important}
.home .wd-products.wd-deferred,
.home .wd-products-element,
.home .woocommerce.columns-4{min-height:0!important}
.home .wd-products.wd-deferred{opacity:1!important;visibility:visible!important}

/* Category tiles (Woodmart div.products .product-category) — compu-station look */
.home .he-sec .product-category .category-image img,
.home .he-sec .product-category img{height:150px;object-fit:contain}
.home .he-sec .product-category .wd-entities-title,
.home .he-sec .product-category h2{font-size:15px!important;font-weight:700}

/* Homepage: solid readable header. Woodmart's "over-content" transparent header
   rendered the white menu invisible on the light hero — force a solid white bar. */
.home .whb-header.whb-overcontent,
.home .whb-main-header{position:relative!important;background-color:#fff!important}
.home .whb-header.whb-overcontent{box-shadow:0 1px 0 #e6edf5}
.home .whb-header .wd-nav > li > a,
.home .whb-header .item-level-0 > a,
.home .whb-header .wd-tools-element,
.home .whb-header .wd-tools-element > a,
.home .whb-header .wd-tools-icon{color:#0f2033!important}
.home .whb-header .wd-tools-icon:before{color:#0f2033!important}
.home .wd-content-area{margin-top:0!important}

@media(max-width:900px){
  .he-hero-in{grid-template-columns:1fr}.he-hero-vis{min-height:220px}
  .he-trust-in,.he-why,.he-brands,.he-dospel,.he-sec .products.columns-4{grid-template-columns:repeat(2,1fr)!important}
  .he-tcell{border-left:0}
}

/* ---- v0.3.0 navy top-bar (custom, above header) ---- */
.whb-top-bar{display:none!important}
.he-topbar{background:#0a1c33;color:#c7d8ee;font-family:'Roboto',sans-serif;font-size:13px;line-height:1;border-bottom:1px solid rgba(255,255,255,.06)}
.he-topbar-in{max-width:1222px;margin:0 auto;padding:9px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.he-tb-left{display:inline-flex;align-items:center;gap:8px;letter-spacing:.2px}
.he-tb-left svg{flex:0 0 auto;opacity:.9}
.he-tb-right{display:inline-flex;align-items:center;gap:10px;font-weight:600}
.he-tb-right a{color:#eaf2fb;text-decoration:none;white-space:nowrap}
.he-tb-right a:hover{color:#056be0}
.he-tb-sep{opacity:.4}
.he-tb-hours{color:#8aa6c8;font-weight:500;padding-left:10px;margin-left:4px;border-left:1px solid rgba(255,255,255,.14)}
@media(max-width:600px){.he-tb-hours{display:none}.he-topbar-in{font-size:12px;padding:7px 14px;gap:8px}.he-tb-left svg{display:none}}

/* ---- v0.4.0 header search strip ---- */
.he-search-strip{background:#fff;border-bottom:1px solid #e3ebf3;padding:14px 20px}
.he-search-form{max-width:1222px;margin:0 auto;display:flex;align-items:stretch;border:2px solid #056be0;border-radius:9px;background:#fff;overflow:hidden;height:50px}
.he-search-cat{position:relative;display:flex;align-items:center;background:#f4f7fb;border-right:1px solid #e3ebf3}
.he-search-cat select{appearance:none;-webkit-appearance:none;border:0;background:transparent;font-family:'Roboto',sans-serif;font-size:14px;color:#0a1c33;padding:0 32px 0 16px;height:100%;cursor:pointer;max-width:240px}
.he-search-cat-ic{position:absolute;right:12px;pointer-events:none}
.he-search-form input[type=search]{flex:1;min-width:0;border:0;outline:0;background:#fff;font-family:'Roboto',sans-serif;font-size:15px;color:#0a1c33;padding:0 18px}
.he-search-form input[type=search]::placeholder{color:#8aa0b8}
.he-search-btn{display:inline-flex;align-items:center;gap:8px;border:0;background:#056be0;color:#fff;font-family:'Roboto',sans-serif;font-weight:700;font-size:15px;padding:0 26px;cursor:pointer;transition:background .15s;white-space:nowrap}
.he-search-btn:hover{background:#0356b4}
@media(max-width:600px){.he-search-cat{display:none}.he-search-btn span{display:none}.he-search-btn{padding:0 18px}.he-search-strip{padding:10px 14px}}

/* ---- v0.4.1 search button override (theme button styles were winning) ---- */
.he-search-strip .he-search-form button.he-search-btn{background:#056be0!important;color:#fff!important;border:0!important;box-shadow:none!important;border-radius:0!important;margin:0!important;font-family:'Roboto',sans-serif!important}
.he-search-strip .he-search-form button.he-search-btn:hover{background:#0356b4!important;color:#fff!important}
.he-search-strip .he-search-form button.he-search-btn svg *{stroke:#fff!important}
.he-search-strip .he-search-form input[type=search]{box-shadow:none!important;margin:0!important;border-radius:0!important}

/* ---- v0.5.0 solid header sitewide — kill wd-header-overlap collision with search strip ---- */
body.wd-header-overlap .whb-main-header,
.whb-main-header{position:relative!important;top:auto!important;background:#fff!important;box-shadow:0 1px 0 rgba(10,28,51,.06)}
.whb-main-header .whb-column>*,
.whb-main-header .wd-nav>li>a,
.whb-main-header a:not(.btn):not(.button){color:#0a1c33!important}
.whb-main-header .wd-tools-icon:before,
.whb-main-header .wd-tools-element:before{color:#0a1c33!important}
/* page-title image drops below header+search instead of under an overlaid header */
body.wd-header-overlap .wd-page-title{margin-top:0!important}
body.wd-header-overlap .wd-page-title .whb-general-header{display:none}

/* ---- v0.6.0 language switcher in the top bar ---- */
.he-langs{display:inline-flex;align-items:center;gap:2px;margin-left:12px;padding-left:12px;border-left:1px solid rgba(255,255,255,.14)}
.he-lang{color:#8aa6c8!important;font-weight:600;font-size:12px;letter-spacing:.4px;padding:2px 6px;border-radius:4px;text-decoration:none}
.he-lang:hover{color:#fff!important;background:rgba(255,255,255,.08)}
.he-lang-cur{color:#fff!important;background:rgba(255,255,255,.14)}

/* ---- v0.7.0 single-accent palette + sharper lines (1a.lv-style discipline) ---- */
/* sidebar grid icon: white on navy instead of a second accent colour */
.he-cats-head svg rect{fill:#ffffff!important}
.he-tb-right a:hover{color:#ffffff!important}
/* crisper geometry: less rounding, hairline borders, no soft shadows */
.he-search-form{border-radius:4px;border-width:1px}
.he-search-strip .he-search-form button.he-search-btn{border-radius:0!important}
.he-hero-in .he-cta,.he-hero-in a.he-cta,.he-hero-in .button{border-radius:4px!important}
.he-cats-side,.he-badge,.he-sec .product-grid-item,.he-tcell{border-radius:4px}
.he-cats-side{border:1px solid #e3ebf3;box-shadow:none}
.he-badge{box-shadow:none;border:1px solid #e3ebf3}

/* ---- v0.8.0 bigger WhatsApp (primary contact) ---- */
.he-fab-wa{width:70px;height:70px;box-shadow:0 10px 26px rgba(37,211,102,.42)}
.he-fab-wa svg{width:40px;height:40px}
.he-fab-wa::after{content:'';position:absolute;width:70px;height:70px;border-radius:50%;border:2px solid #25D366;animation:heWaPulse 2.4s ease-out infinite;pointer-events:none}
@keyframes heWaPulse{0%{transform:scale(1);opacity:.7}70%{transform:scale(1.35);opacity:0}100%{opacity:0}}
.he-fab-wa{position:relative}
.he-fab-tg{width:52px;height:52px}
@media(max-width:600px){.he-fab-wa{width:60px;height:60px}.he-fab-wa svg{width:34px;height:34px}.he-fab-wa::after{width:60px;height:60px}}

/* ---- v0.9.0 email-capture discount popup ---- */
.he-pop{position:fixed;inset:0;z-index:99999;background:rgba(10,28,51,.55);display:flex;align-items:center;justify-content:center;padding:20px}
.he-pop[hidden]{display:none}
.he-pop-box{position:relative;background:#fff;max-width:420px;width:100%;padding:34px 30px 28px;border-radius:6px;box-shadow:0 24px 60px rgba(10,28,51,.3);font-family:'Roboto',sans-serif;text-align:center}
.he-pop-x{position:absolute;top:10px;right:14px;background:none;border:0;font-size:26px;line-height:1;color:#8aa0b8;cursor:pointer}
.he-pop-badge{display:inline-block;background:#056be0;color:#fff;font-family:'Roboto',sans-serif;font-weight:700;font-size:22px;letter-spacing:.5px;padding:4px 14px;border-radius:4px;margin-bottom:14px}
.he-pop-box h3{font-family:'Roboto',sans-serif;font-size:27px;color:#0a1c33;margin:0 0 8px;text-transform:uppercase}
.he-pop-box p{font-size:15px;color:#51637a;margin:0 0 18px;line-height:1.5}
.he-pop-form input[type=email]{width:100%;height:46px;border:1px solid #cfdbe8;border-radius:4px;padding:0 14px;font-size:15px;font-family:inherit;margin-bottom:12px}
.he-pop-form input[type=email]:focus{outline:0;border-color:#056be0}
.he-pop-consent{display:flex;gap:8px;align-items:flex-start;text-align:left;font-size:12.5px;color:#6b7d94;margin-bottom:14px;line-height:1.4;cursor:pointer}
.he-pop-consent input{margin-top:2px;flex:0 0 auto}
.he-pop-form button{width:100%;height:46px;background:#056be0;color:#fff;border:0;border-radius:4px;font-family:inherit;font-weight:700;font-size:15px;cursor:pointer}
.he-pop-form button:hover{background:#0356b4}
.he-pop-msg{margin-top:14px;font-size:15px;line-height:1.5}
.he-pop-msg.ok{color:#0a1c33}.he-pop-msg.ok span{font-size:13px;color:#6b7d94}
.he-pop-msg.err{color:#c0392b;font-size:13.5px}

/* ---- v1.0.0 cookie consent bar ---- */
.he-cc{position:fixed;left:0;right:0;bottom:0;z-index:99998;background:#0a1c33;color:#c7d8ee;box-shadow:0 -6px 24px rgba(10,28,51,.25)}
.he-cc[hidden]{display:none}
.he-cc-in{max-width:1222px;margin:0 auto;padding:16px 20px;display:flex;align-items:center;gap:20px;flex-wrap:wrap;font-family:'Roboto',sans-serif}
.he-cc-in p{margin:0;flex:1;min-width:260px;font-size:13.5px;line-height:1.5}
.he-cc-in a{color:#7fb0ea;text-decoration:underline}
.he-cc-btns{display:flex;gap:10px;flex-shrink:0}
.he-cc-btns button{height:40px;padding:0 20px;border-radius:4px;font-family:inherit;font-weight:700;font-size:14px;cursor:pointer;border:1px solid rgba(255,255,255,.25)}
.he-cc-nec{background:transparent;color:#c7d8ee}
.he-cc-nec:hover{background:rgba(255,255,255,.08)}
.he-cc-all{background:#056be0;color:#fff;border-color:#056be0}
.he-cc-all:hover{background:#0356b4}
@media(max-width:600px){.he-cc-in{padding:14px}.he-cc-btns{width:100%}.he-cc-btns button{flex:1}}

/* ---- v1.0.1 popup close button (theme button styles were winning) ---- */
.he-pop .he-pop-box button.he-pop-x{position:absolute!important;top:8px!important;right:10px!important;left:auto!important;width:34px!important;height:34px!important;min-width:0!important;padding:0!important;margin:0!important;background:transparent!important;border:0!important;box-shadow:none!important;border-radius:50%!important;color:#8aa0b8!important;font-size:28px!important;line-height:1!important;cursor:pointer;z-index:2}
.he-pop .he-pop-box button.he-pop-x:hover{background:#f0f4f9!important;color:#0a1c33!important}
.he-pop .he-pop-form button.he-pop-done{margin-top:16px}

/* ---- v1.1.0 keep floating buttons clear of the cookie bar (they collide on mobile) ---- */
body.he-cc-open .he-chat-fab{bottom:calc(18px + var(--he-cc-h, 0px))}
body.he-cc-open .kodee-fab{bottom:calc(162px + var(--he-cc-h, 0px))!important}
@media(max-width:600px){
  body.he-cc-open .kodee-fab{bottom:calc(146px + var(--he-cc-h, 0px))!important}
}

/* ---- v1.1.1 floating buttons clear BOTH the Woodmart mobile toolbar and the cookie bar ---- */
:root{--he-tb-h:0px}
@media(max-width:768px){:root{--he-tb-h:62px}}   /* wd-toolbar is ~55px tall on mobile */
.he-chat-fab{bottom:calc(18px + var(--he-tb-h) + var(--he-cc-h, 0px))!important}
.kodee-fab{bottom:calc(162px + var(--he-tb-h) + var(--he-cc-h, 0px))!important}
@media(max-width:600px){
  .kodee-fab{bottom:calc(146px + var(--he-tb-h) + var(--he-cc-h, 0px))!important}
}

/* ---- v1.2.0 typography reset: neutral workhorse type like real Baltic shops (1a.lv uses Roboto) ---- */
body,button,input,textarea,select{font-family:'Roboto',-apple-system,'Segoe UI',Arial,sans-serif}
h1,h2,h3,h4,h5,h6,.he-hero-txt h1,.he-shead h2,.he-dospel-txt h2,.wd-entities-title,.entry-title{
  font-family:'Roboto',-apple-system,'Segoe UI',Arial,sans-serif;letter-spacing:normal;text-transform:none}
/* headings: solid but not shouting */
.he-hero-txt h1{font-size:38px;line-height:1.18;font-weight:700;letter-spacing:-.01em}
.he-shead h2,.he-dospel-txt h2{font-weight:700;letter-spacing:-.005em}
.he-eyebrow{font-weight:500;letter-spacing:.08em;font-size:11.5px}
.he-cats-head{font-weight:500;letter-spacing:.02em;font-size:15px}
.he-pop-box h3{text-transform:none;font-weight:700;font-size:24px}
.he-badge b{font-weight:700}
/* product cards read like a catalogue, not a poster */
.woocommerce-loop-product__title,.product-title,.wd-entities-title{font-weight:400;letter-spacing:normal}
@media(max-width:900px){.he-hero-txt h1{font-size:30px}}

/* ---- v1.2.1 the theme injects its own font (Ubuntu) after this file — override it explicitly.
       Icon fonts are untouched: only text elements are listed. ---- */
body,p,li,td,th,dd,dt,label,legend,blockquote,figcaption,
input,select,textarea,button,a,span:not([class*=wd-icon]):not([class*=fa-]),
h1,h2,h3,h4,h5,h6,
.woocommerce,.wd-entities-title,.product-title,.price,.amount,.widget,.wd-nav a,
.woocommerce-loop-product__title,.wd-product-cats,.button,.btn{
  font-family:'Roboto',-apple-system,'Segoe UI',Arial,sans-serif!important}

/* ---- v1.3.0 dropdown indicators: the theme renders none, so nothing hints at submenus ---- */
.whb-header li.menu-item-has-children > a::after,
.wd-nav li.menu-item-has-children > a::after{
  content:'';display:inline-block;width:9px;height:9px;margin-left:6px;flex:0 0 auto;
  vertical-align:middle;background-color:currentColor;opacity:.65;
  transition:transform .18s ease,opacity .18s ease;
  -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M6 9l6 6 6-6' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/></svg>") center/contain no-repeat;
  mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M6 9l6 6 6-6' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/></svg>") center/contain no-repeat}
.whb-header li.menu-item-has-children:hover > a::after,
.wd-nav li.menu-item-has-children:hover > a::after{transform:rotate(180deg);opacity:1}
/* never on the mobile menu, it has its own toggles */
.mobile-nav li.menu-item-has-children > a::after,.wd-sidebar li.menu-item-has-children > a::after{content:none}

/* the header account link is a theme tool element, not a menu item — it needs its own indicator */
.wd-header-my-account .wd-tools-text::after{
  content:'';display:inline-block;width:9px;height:9px;margin-left:6px;vertical-align:middle;
  background-color:currentColor;opacity:.65;transition:transform .18s ease,opacity .18s ease;
  -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M6 9l6 6 6-6' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/></svg>") center/contain no-repeat;
  mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M6 9l6 6 6-6' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/></svg>") center/contain no-repeat}
.wd-header-my-account:hover .wd-tools-text::after{transform:rotate(180deg);opacity:1}

/* ---- v1.4.0 category spec table (LLM/AI engines extract tables far better than prose) ---- */
.he-spec{width:100%;max-width:620px;border-collapse:collapse;margin:14px 0 4px;font-size:14.5px}
.he-spec td{border:1px solid #e3ebf3;padding:9px 13px;vertical-align:top}
.he-spec tr td:first-child{background:#f7fafd;color:#51637a;width:44%;font-weight:500}
.he-spec tr td:last-child{color:#0a1c33}
.term-description h3,.woocommerce-product-details__short-description h3{font-size:18px;margin:18px 0 6px}

/* ---- v1.5.0 source quotes (GEO: quotations are the strongest cited-by-AI lever) ---- */
blockquote{border-left:3px solid #056be0;background:#f7fafd;margin:16px 0;padding:14px 18px;border-radius:0 4px 4px 0}
blockquote p{margin:0 0 8px;font-size:15px;color:#0a1c33}
blockquote p:last-of-type{margin-bottom:10px}
blockquote footer{font-size:13px;color:#6b7d94}
blockquote footer a{color:#056be0}

/* ---- v1.6.0 best-price block: red price = the only warm colour on the site, so it reads as a deal ---- */
.he-deals{background:linear-gradient(180deg,#f7fafd 0%,#fff 100%);padding:46px 0 40px;border-top:1px solid #e3ebf3}
.he-deals-head{text-align:center;margin-bottom:26px}
.he-deals-head h2{margin:4px 0 0;font-size:30px;font-weight:700;color:#0a1c33}
.he-deals-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.he-deal{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid #e3ebf3;border-radius:6px;
  padding:18px 16px 16px;text-decoration:none;transition:box-shadow .18s ease,transform .18s ease}
.he-deal:hover{box-shadow:0 10px 28px rgba(10,28,51,.12);transform:translateY(-3px)}
.he-deal-badge{position:absolute;top:12px;left:12px;background:#d9232e;color:#fff;font-weight:700;font-size:13px;
  padding:4px 9px;border-radius:4px;letter-spacing:.02em;z-index:2}
.he-deal-img{display:flex;align-items:center;justify-content:center;height:150px;margin-bottom:12px}
.he-deal-img img{max-height:150px;width:auto;display:inline-block}
.he-deal-name{display:block;color:#0a1c33;font-size:14px;line-height:1.35;min-height:57px;margin-bottom:10px}
.he-deal-prices{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.he-deal-now{color:#d9232e;font-size:23px;font-weight:800;line-height:1}
.he-deal-now .woocommerce-Price-amount{color:#d9232e}
.he-deal-ref{display:flex;flex-direction:column;line-height:1.15}
.he-deal-ref s{color:#8aa0b8;font-size:14px}
.he-deal-ref em{font-style:normal;font-size:11px;color:#8aa0b8}
.he-deal-cta{margin-top:auto;color:#056be0;font-size:13px;font-weight:600}
.he-deals-note{margin:18px 0 0;font-size:12px;color:#8aa0b8;text-align:center}
@media(max-width:1000px){.he-deals-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.he-deals-grid{grid-template-columns:1fr}}

/* Offers block sitting under a category listing — same card, a touch tighter */
.woocommerce .he-deals{margin-top:34px;border-radius:8px}

/* Page-title banners are 5:1 and the product sits on the right; a phone crops the middle out,
   so pull the crop towards the product and darken it — the title is white and sits on top. */
@media(max-width:768px){
 .wd-page-title-bg img{object-position:88% center}
 .wd-page-title-bg{position:relative}
 .wd-page-title-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,20,38,.5),rgba(6,20,38,.72))}
}

/* Running promo ribbon between the header and the page-title banner. Duplicated track, so the
   loop closes seamlessly; paused on hover and switched off for reduced-motion visitors. */
.he-marquee{overflow:hidden;background:linear-gradient(90deg,#04407f 0%,#056be0 55%,#0a86ff 100%);
 border-top:1px solid rgba(255,255,255,.12);white-space:nowrap}
.he-marquee-track{display:inline-flex;align-items:center;animation:he-mq 46s linear infinite;will-change:transform}
.he-marquee:hover .he-marquee-track{animation-play-state:paused}
.he-mq-item{display:inline-flex;align-items:center;color:#fff;font-size:13px;font-weight:600;letter-spacing:.2px;
 padding:11px 0;margin:0 26px}
.he-mq-item::before{content:"";width:7px;height:7px;border-radius:50%;background:#43c463;margin-right:14px;flex:none}
@keyframes he-mq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.he-marquee-track{animation:none}}
@media(max-width:768px){.he-mq-item{font-size:12px;margin:0 18px;padding:9px 0}}

/* One line under the page title, so the banner carries a message and not just a photo. */
.wd-title-wrapp:has(.he-title-sub){flex-wrap:wrap;justify-content:center}
.he-title-sub{display:block;width:100%;flex:0 0 100%;margin:12px auto 0;max-width:640px;
 color:rgba(255,255,255,.86);font-size:15px;line-height:1.5;text-align:center}
@media(max-width:768px){.he-title-sub{font-size:13px;max-width:92%}}

/* Woodmart parks its "skip to navigation" links off-screen from a deferred stylesheet. When that
   CSS is late or the cache optimiser strips the rule, the two buttons drop into the flow and open
   a ~90px white gap above the header. Pin them ourselves; keyboard focus still brings them back. */
.wd-skip-links{position:fixed!important;top:10px!important;left:-15000px!important}
.wd-skip-links:focus-within{left:10px!important;z-index:1000000}

/* Mobile hero order. Like 1a.lv and rdveikals, the phone should open on the goods, not on a
   512px-tall list of categories: the visitor scrolled past the whole catalogue menu before
   seeing a single product. Headline first (it is the H1), then the product, then categories —
   which also become a compact two-column list instead of one long stack. */
@media(max-width:1024px){
 .he-hero-in{display:flex!important;flex-direction:column}
 .he-hero-txt{order:1}
 /* every slide is absolutely positioned, so the box has no in-flow content and collapses to
    zero width once it is a flex child instead of a grid cell — pin it to full width. */
 .he-hero-slider{order:2;min-height:320px;width:100%;align-self:stretch}
 .he-cats-side{order:3}
 .he-cats-side ul{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}
 .he-cats-side li{border-bottom:1px solid #eef3f8}
 .he-cats-side li a{padding:11px 4px;font-size:14px}
}
/* The headline block was 530px tall on a phone — half a screen of text before the first
   product. Tightened so the goods appear within the first scroll, as on 1a.lv. */
@media(max-width:1024px){
 .he-hero-txt h1{font-size:26px;line-height:1.2;margin:6px 0 8px}
 .he-hero-txt p{font-size:14px;line-height:1.45;margin:0 0 12px;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
 .he-hero-txt .he-cta{display:flex;gap:8px;flex-wrap:nowrap}
 .he-hero-txt .he-btn{flex:1 1 0;padding:11px 8px;font-size:14px;text-align:center}
 .he-hero-txt .he-badge{margin-top:10px;font-size:13px}
}

/* Блок гидов на главной — см. mu-plugins/he-guides.php */
.he-guides{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.he-guide{display:flex;flex-direction:column;background:#fff;border:1px solid #e6edf6;border-radius:10px;overflow:hidden;
 text-decoration:none;color:inherit;transition:box-shadow .18s,transform .18s}
.he-guide:hover{box-shadow:0 8px 24px rgba(5,107,224,.13);transform:translateY(-2px);color:inherit}
.he-guide-img{display:block;aspect-ratio:16/10;overflow:hidden;background:#f4f7fb}
.he-guide-img img{width:100%;height:100%;object-fit:cover;display:block}
.he-guide-txt{padding:14px 16px 16px;display:flex;flex-direction:column;gap:7px}
.he-guide-title{font-weight:700;font-size:15.5px;line-height:1.32;color:#16233a}
.he-guide:hover .he-guide-title{color:var(--he-blue)}
.he-guide-ex{font-size:13.5px;line-height:1.45;color:#5c6b80}
@media(max-width:1024px){.he-guides{grid-template-columns:repeat(2,1fr);gap:14px}}
@media(max-width:560px){.he-guides{grid-template-columns:1fr}.he-guide-img{aspect-ratio:16/9}}

/* Trust badges next to the product buy button — see mu-plugins/he-trust-badges.php. */
.he-trust-badges{list-style:none;margin:16px 0 0;padding:12px 14px;display:flex;flex-direction:column;gap:8px;
 background:#f4f7fb;border:1px solid #e3ebf5;border-radius:8px}
.he-trust-badges li{position:relative;padding-left:22px;font-size:13.5px;line-height:1.4;color:#334}
.he-trust-badges li::before{content:"";position:absolute;left:0;top:3px;width:14px;height:14px;border-radius:50%;
 background:var(--he-blue);
 -webkit-mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9 16.2l-3.5-3.5L4 14.2 9 19.2 20 8.2l-1.5-1.5z"/></svg>') center/10px no-repeat;
 mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9 16.2l-3.5-3.5L4 14.2 9 19.2 20 8.2l-1.5-1.5z"/></svg>') center/10px no-repeat}
@media(max-width:600px){.he-trust-badges{padding:10px 12px}.he-trust-badges li{font-size:13px}}
