:root{
  --ls-bg:#0f1113;
  --ls-bg-2:#15181c;
  --ls-card:#15181b;
  --ls-card-2:#111317;
  --ls-text:#e9edf3;
  --ls-muted:#a7b0bd;
  --ls-border:#2a2f36;
  --ls-accent:#f6b60a;
  --ls-accent-2:#ffcf3a;
  --ls-danger:#ff5a5a;
  --ls-radius:14px;
  --ls-radius-sm:10px;
  --ls-shadow:0 10px 35px rgba(0,0,0,.35);
  --ls-shadow-sm:0 8px 24px rgba(0,0,0,.28);
  --ls-font:-apple-system,BlinkMacSystemFont,"Inter","Segoe UI",Roboto,Arial,sans-serif;
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:var(--ls-font);
  color:var(--ls-text);
  background:
    radial-gradient(900px 500px at 10% -10%, rgba(246,182,10,.18), transparent 60%),
    radial-gradient(700px 400px at 90% 0%, rgba(255,255,255,.06), transparent 55%),
    radial-gradient(900px 600px at 60% 110%, rgba(246,182,10,.08), transparent 60%),
    linear-gradient(180deg, #0f1113 0%, #0b0d10 100%);
  overflow-x:hidden;
}

a{color:inherit;text-decoration:none}
a:hover{opacity:.92}
img{max-width:100%;height:auto}
.ls-container{max-width:1240px;margin:0 auto;padding-left:max(18px, env(safe-area-inset-left));padding-right:max(18px, env(safe-area-inset-right))}
.ls-main{padding:26px 0 60px}
.ls-center{text-align:center;margin-top:24px}
.ls-muted{color:var(--ls-muted);line-height:1.55}
.ls-h1{font-size:34px;letter-spacing:.2px;margin:0 0 10px}
.ls-h2{font-size:26px;letter-spacing:.2px;margin:0 0 10px}
@media (max-width: 768px){
  .ls-h1{font-size:28px}
  .ls-h2{font-size:22px}
}

/* Buttons */
.ls-btn{
  display:inline-flex;
  gap:10px;
  align-items:center;
  justify-content:center;
  padding:12px 16px;
  border-radius:999px;
  border:1px solid var(--ls-border);
  background:rgba(255,255,255,.04);
  color:var(--ls-text);
  cursor:pointer;
  transition:transform .15s ease, box-shadow .15s ease, background .15s ease, border-color .15s ease;
  font-weight:600;
  letter-spacing:.2px;
}
.ls-btn:hover{transform:translateY(-1px);box-shadow:var(--ls-shadow-sm);border-color:rgba(246,182,10,.35)}
.ls-btn:active{transform:translateY(0)}
.ls-btn--accent{
  background:linear-gradient(180deg, var(--ls-accent) 0%, #eaa300 100%);
  border-color:rgba(0,0,0,.0);
  color:#121212;
}
.ls-btn--accent:hover{border-color:rgba(0,0,0,.0);box-shadow:0 10px 30px rgba(246,182,10,.25)}
.ls-btn--ghost{
  background:rgba(255,255,255,.02);
  border-color:rgba(255,255,255,.14);
}
.ls-btn--catalog{
  border-radius:12px;
  padding:12px 14px;
  background:rgba(255,255,255,.03);
}
.ls-btn--sm{padding:9px 12px;font-size:13px}

/* Header */
.ls-header-wrap{position:sticky;top:0;z-index:50;backdrop-filter: blur(10px);}
.ls-topbar{
  background:rgba(10,12,14,.75);
  border-bottom:1px solid rgba(255,255,255,.06);
}
.ls-topbar__inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 18px;
}
.ls-topbar__left{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.ls-topbar__right{display:flex;align-items:center;gap:10px}
.ls-topmenu{display:flex;gap:12px;list-style:none;margin:0;padding:0}
.ls-topmenu a{color:var(--ls-muted);font-size:14px}
.ls-topmenu a:hover{color:var(--ls-text)}
.ls-city{display:flex;align-items:center;gap:8px}
.ls-city__label{color:var(--ls-muted);font-size:13px}
.ls-city__select{
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.1);
  color:var(--ls-text);
  border-radius:10px;
  padding:7px 10px;
}
.ls-contacts-inline{display:flex;align-items:center;gap:12px}
.ls-contacts-inline__item{color:var(--ls-text);font-size:14px;opacity:.95}
.ls-contacts-inline__item:hover{opacity:1}

.ls-header{
  background:rgba(15,17,19,.78);
  border-bottom:1px solid rgba(255,255,255,.06);
}
.ls-header__inner{display:grid;grid-template-columns:240px minmax(0,1fr) auto;gap:16px;align-items:center;padding:14px 18px}
.ls-logo{display:flex;align-items:center;gap:12px}
.ls-logo__mark{
  width:44px;height:44px;border-radius:12px;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,.02));
  border:1px solid rgba(255,255,255,.10);
  box-shadow:var(--ls-shadow-sm);
  font-weight:900;letter-spacing:1px;
}
.ls-logo__text{display:flex;flex-direction:column;line-height:1.1}
.ls-logo__name{font-weight:800;font-size:16px}
.ls-logo__tagline{font-size:12px;color:var(--ls-muted);margin-top:3px}
.ls-logo--img .ls-logo__mark{display:none}
.ls-logo__img{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;overflow:hidden;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.10)}
.ls-logo__img-el{max-width:100%;max-height:100%;width:auto;height:auto;display:block}
.ls-header__search{min-width:0}
.ls-header__search form{
  display:flex;align-items:center;gap:10px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.09);
  border-radius:14px;
  padding:8px 10px;
}
.ls-header__search input[type="search"]{
  width:100%;
  background:transparent;
  border:0;
  outline:none;
  color:var(--ls-text);
  font-size:15px;
}
.ls-header__search button{
  border:0;
  border-radius:12px;
  padding:10px 14px;
  cursor:pointer;
  background:rgba(246,182,10,.12);
  color:var(--ls-accent);
}

.ls-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;min-width:0;flex-wrap:nowrap}
.ls-action{
  display:flex;align-items:center;gap:10px;
  padding:10px 12px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.03);
}
.ls-action__icon{font-size:16px}
.ls-action__label{font-size:13px;color:var(--ls-muted)}
.ls-action__badge{
  min-width:22px;height:22px;border-radius:999px;
  display:inline-flex;align-items:center;justify-content:center;
  font-size:12px;font-weight:700;
  background:rgba(246,182,10,.16);
  border:1px solid rgba(246,182,10,.25);
  color:var(--ls-accent);
}
.ls-action__total{font-size:13px;color:var(--ls-text);opacity:.9}

/* Burger / mobile nav */
.ls-burger{
  display:none;
  width:42px;height:42px;border-radius:12px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.1);
  cursor:pointer;
  padding:10px;
}
.ls-burger span{display:block;height:2px;background:var(--ls-text);margin:5px 0;border-radius:2px;opacity:.9}

/* Mobile cart icon (topbar) */
.ls-mcart{
  display:none;
  position:relative;
  width:42px;
  height:42px;
  border-radius:12px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.10);
  color:var(--ls-text);
  align-items:center;
  justify-content:center;
  text-decoration:none;
}
.ls-mcart:hover{border-color: rgba(246,182,10,.30);}
.ls-mcart__icon{font-size:16px;line-height:1}
.ls-mcart__badge{
  position:absolute;
  top:-6px;
  right:-6px;
  min-width:20px;
  height:20px;
  border-radius:999px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:12px;
  font-weight:800;
  background:rgba(246,182,10,.95);
  color:#121212;
  border:1px solid rgba(0,0,0,.15);
}
.ls-mobile-nav{
  position:fixed;
  inset:0 0 0 auto;
  width:min(360px, 92vw);
  background:rgba(10,12,14,.98);
  border-left:1px solid rgba(255,255,255,.08);
  transform:translateX(110%);
  transition:transform .2s ease;
  z-index:80;
}
.ls-mobile-nav.is-open{transform:translateX(0)}
.ls-mobile-nav__inner{padding:16px 18px;display:flex;flex-direction:column;gap:18px}
.ls-mobile-menu{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.ls-mobile-menu a{padding:10px 10px;border-radius:10px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06)}
.ls-mobile-nav__contacts{display:flex;flex-direction:column;gap:10px}
.ls-mobile-nav__actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ls-mobile-nav__actions .ls-btn{width:100%}
.ls-mobile-action--tg{border-color:rgba(246,182,10,.22)}
.ls-mobile-action--tg:hover{border-color:rgba(246,182,10,.35)}
.ls-ico{display:block;width:18px;height:18px}

.ls-mobile-nav__addr{color:var(--ls-muted);line-height:1.4}
.ls-backdrop{
  position:fixed;inset:0;background:rgba(0,0,0,.45);
  z-index:70;
}

@media (max-width: 1180px){
  .ls-header__inner{grid-template-columns:1fr auto;grid-template-areas:"logo actions" "search search";row-gap:12px}
  .ls-header__logo{grid-area:logo}
  .ls-header__search{grid-area:search}
  .ls-header-actions{grid-area:actions;justify-content:flex-end;flex-wrap:wrap}
  .ls-action__label{display:none}
  .ls-action__total{display:none}
}
@media (max-width: 900px){
  .ls-topmenu{display:none}
  /* Make the header compact on mobile: hide contacts + branding */
  .ls-contacts-inline{display:none !important}
  .ls-header__logo{display:none !important}
  .ls-city__label{display:none !important}

  /* Give more horizontal space: the container already has side paddings */
  .ls-topbar__inner{ padding:8px 0; }

  /* Compact call button in the topbar (prevents overflow on narrow phones) */
  .ls-btn--call{
    width:42px;
    height:42px;
    padding:0;
    border-radius:12px;
    gap:0;
    background:rgba(255,255,255,.03);
    border-color:rgba(255,255,255,.10);
  }
  .ls-btn--call .ls-btn__text{ display:none; }

  .ls-header__inner{
    grid-template-columns:1fr;
    grid-template-areas:"search" "actions";
    row-gap:10px;
  }
  .ls-header__search{grid-area:search}
  .ls-header-actions{
    grid-area:actions;
    justify-content:flex-start;
    flex-wrap:wrap;
    gap:10px;
  }

  .ls-burger{display:inline-block}
  .ls-mcart{display:inline-flex}
  .ls-topbar__right{gap:8px}
  .ls-topbar{padding:6px 0}
}

@media (max-width: 420px){
  .ls-topbar__right{ gap:6px; }
  .ls-city__select{ max-width: 128px; }
  .ls-burger,
  .ls-mcart,
  .ls-btn--call{ width:40px; height:40px; }
}


/* Hero */
.ls-hero{
  position:relative;
  border-bottom:1px solid rgba(255,255,255,.06);
  background:
    radial-gradient(600px 350px at 15% 20%, rgba(246,182,10,.22), transparent 60%),
    radial-gradient(700px 450px at 80% 0%, rgba(255,255,255,.06), transparent 55%),
    linear-gradient(135deg, rgba(255,255,255,.06), rgba(255,255,255,.01));
  overflow:hidden;
}
.ls-hero__inner{display:grid;grid-template-columns: 1.15fr .85fr;gap:26px;align-items:center;padding:46px 0}
.ls-hero__title{font-size:44px;line-height:1.05;margin:0 0 14px}
.ls-hero__text{max-width:58ch}
.ls-hero__actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.ls-hero__badges{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
.ls-badge{
  padding:8px 12px;border-radius:999px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.09);
  color:var(--ls-muted);
  font-size:13px;
}
.ls-hero__visual{position:relative;min-height:240px;border-radius:var(--ls-radius);overflow:hidden}
.ls-hero__img{
  width:100%;
  height:100%;
  min-height:240px;
  object-fit:cover;
  border-radius:var(--ls-radius);
  border:1px solid rgba(255,255,255,.10);
  box-shadow:var(--ls-shadow);
  transform:none;
  filter:brightness(.72) contrast(1.05) saturate(.95);
}
.ls-hero__plate{
  position:absolute;inset:0 0 0 auto;
  width:100%;
  border-radius:var(--ls-radius);
  background:
    linear-gradient(135deg, rgba(255,255,255,.13), rgba(255,255,255,.02)),
    repeating-linear-gradient(90deg, rgba(255,255,255,.05), rgba(255,255,255,.05) 2px, transparent 2px, transparent 12px);
  border:1px solid rgba(255,255,255,.10);
  box-shadow:var(--ls-shadow);
  transform:skewX(-6deg) rotate(-1.5deg);
}
.ls-hero__grid{
  position:absolute;inset:18px 18px 18px 18px;
  border-radius:var(--ls-radius);
  border:1px dashed rgba(255,255,255,.14);
  opacity:.6;
  transform:skewX(-4deg) rotate(-1deg);
}

/* Hero: classic look — no distortion, just a subtle dark overlay */
.ls-hero__visual:after{content:"";position:absolute;inset:0;background:radial-gradient(60% 80% at 20% 20%, rgba(0,0,0,.10), rgba(0,0,0,0) 60%), linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.40));pointer-events:none}
.ls-hero__plate,.ls-hero__grid{display:none !important}

@media (max-width: 900px){
  .ls-hero__inner{grid-template-columns:1fr;padding:34px 0}
  .ls-hero__title{font-size:34px}
  .ls-hero__visual{display:none}
}

/* Sections */
.ls-section{padding:44px 0}
.ls-section--dark{
  background:
    radial-gradient(800px 500px at 90% 50%, rgba(246,182,10,.12), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0));
  border-top:1px solid rgba(255,255,255,.06);
  border-bottom:1px solid rgba(255,255,255,.06);
}
.ls-section__header{margin-bottom:20px}

/* Categories grid */
.ls-cats{display:grid;grid-template-columns: repeat(4, minmax(0,1fr));gap:14px}
.ls-cat{
  padding:16px 14px;
  border-radius:var(--ls-radius);
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  display:flex;flex-direction:column;gap:10px;
  min-height:120px;
}
.ls-cat__icon{width:42px;height:42px;border-radius:12px;background:rgba(246,182,10,.14);border:1px solid rgba(246,182,10,.22);display:flex;align-items:center;justify-content:center;color:var(--ls-accent);font-weight:900}
.ls-cat__name{font-weight:800}
.ls-cat__meta{font-size:13px;color:var(--ls-muted)}
.ls-cat--featured{grid-column: span 2; min-height: 150px; padding:18px 18px}
.ls-cat--featured .ls-cat__name{font-size:18px}
.ls-cat--featured .ls-cat__icon{width:48px;height:48px;border-radius:14px}
@media (max-width: 900px){.ls-cat--featured{grid-column: span 2;}}
@media (max-width: 520px){.ls-cat--featured{grid-column: auto;}}

@media (max-width: 900px){.ls-cats{grid-template-columns: repeat(2, minmax(0,1fr));}}
@media (max-width: 520px){.ls-cats{grid-template-columns: 1fr;}}

/* WooCommerce general */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce a.added_to_cart{
  border-radius:12px !important;
  background:rgba(255,255,255,.04) !important;
  border:1px solid rgba(255,255,255,.1) !important;
  color:var(--ls-text) !important;
  font-weight:700 !important;
  padding:12px 14px !important;
  transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease !important;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover{
  transform:translateY(-1px);
  box-shadow:var(--ls-shadow-sm);
  border-color:rgba(246,182,10,.35) !important;
}
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt{
  background:linear-gradient(180deg, var(--ls-accent) 0%, #eaa300 100%) !important;
  border-color:transparent !important;
  color:#121212 !important;
}

/* Buttons outside WooCommerce pages (e.g. главная: “Популярные товары”) */
.ls-product-card a.button,
.ls-product-card button.button,
.ls-carousel a.button,
.ls-carousel button.button{
  border-radius:12px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.1);
  color:var(--ls-text);
  font-weight:700;
  padding:12px 14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.ls-product-card a.button:hover,
.ls-product-card button.button:hover,
.ls-carousel a.button:hover,
.ls-carousel button.button:hover{
  transform:translateY(-1px);
  box-shadow:var(--ls-shadow-sm);
  border-color:rgba(246,182,10,.35);
}
.ls-product-card a.button.alt,
.ls-product-card button.button.alt,
.ls-carousel a.button.alt,
.ls-carousel button.button.alt{
  background:linear-gradient(180deg, var(--ls-accent) 0%, #eaa300 100%);
  border-color:transparent;
  color:#121212;
}
.woocommerce span.onsale{
  border-radius:12px;
  background:rgba(246,182,10,.18);
  border:1px solid rgba(246,182,10,.25);
  color:var(--ls-accent);
}

/* Sale badge — compact black/gold ("Скидка") */
/*
  IMPORTANT:
  WooCommerce core styles can override .onsale on catalog pages.
  Use a more specific selector so the badge looks identical on:
  - Главная (витрина товаров)
  - Каталог / категории
  - Карточка товара
*/
.woocommerce ul.products li.product .onsale,
.ls-product-card .onsale,
.woocommerce div.product span.onsale{
  position:absolute;
  top:12px !important;
  left:12px !important;
  right:auto !important;
  z-index:10;
  min-height:auto;
  line-height:1;
  padding:7px 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
  background:linear-gradient(180deg, rgba(246,182,10,.95) 0%, rgba(210,145,0,.95) 100%);
  color:#141414;
  border:1px solid rgba(246,182,10,.55);
  box-shadow:0 10px 24px rgba(0,0,0,.45), 0 0 0 4px rgba(246,182,10,.10);
}

/* Keep the default WC flash style as a fallback on other layouts */
.woocommerce span.onsale{
  display:inline-flex;
  align-items:center;
  justify-content:center;
}


/* Catalog header */
.ls-wc-header{margin:10px 0 14px}

/* Catalog navigation (dropdown tree) — v14 */
.ls-catnav2{margin:14px 0 20px}
.ls-catnav2__details{
  border-radius:var(--ls-radius);
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:var(--ls-shadow-sm);
  overflow:hidden;
}
.ls-catnav2__summary{
  list-style:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:14px 16px;
  user-select:none;
}
.ls-catnav2__summary::-webkit-details-marker{display:none}
.ls-catnav2__summary-left{display:flex;align-items:center;gap:10px;min-width:0}
.ls-catnav2__icon{
  width:34px;height:34px;
  border-radius:12px;
  display:flex;align-items:center;justify-content:center;
  background:rgba(246,182,10,.10);
  border:1px solid rgba(246,182,10,.22);
  color:var(--ls-accent);
  flex:0 0 auto;
}
.ls-catnav2__title{
  font-size:12px;
  font-weight:800;
  letter-spacing:.02em;
  text-transform:uppercase;
  color:var(--ls-muted);
  white-space:nowrap;
}
.ls-catnav2__current{
  font-weight:800;
  color:var(--ls-text);
  opacity:.92;
  text-align:right;
  max-width:55%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.ls-catnav2__details[open] .ls-catnav2__summary{
  border-bottom:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.02);
}
.ls-catnav2__panel{padding:14px 16px 16px}
.ls-catnav2__all{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 12px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.03);
  color:var(--ls-muted);
  font-weight:800;
  font-size:13px;
  margin-bottom:12px;
}
.ls-catnav2__all:hover{border-color:rgba(246,182,10,.25);color:var(--ls-text)}
.ls-catnav2__all.is-current{
  background:linear-gradient(180deg, var(--ls-accent) 0%, #eaa300 100%);
  border-color:transparent;
  color:#121212;
}
.ls-catnav2__grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(230px, 1fr));
  gap:12px;
  max-height:340px;
  overflow:auto;
  padding-right:6px;
}
.ls-catnav2__grid::-webkit-scrollbar{width:8px}
.ls-catnav2__grid::-webkit-scrollbar-thumb{background:rgba(255,255,255,.10);border-radius:999px}
.ls-catnav2__group{
  background:rgba(0,0,0,.18);
  border:1px solid rgba(255,255,255,.08);
  border-radius:14px;
  padding:12px;
}
.ls-catnav2__group.is-active{border-color:rgba(246,182,10,.22)}
.ls-catnav2__parent{
  display:block;
  font-weight:900;
  margin-bottom:8px;
  letter-spacing:.2px;
}
.ls-catnav2__parent:hover{color:var(--ls-text)}
.ls-catnav2__parent.is-active{color:var(--ls-accent)}
.ls-catnav2__parent.is-current{
  color:#121212;
  background:linear-gradient(180deg, var(--ls-accent) 0%, #eaa300 100%);
  border-radius:12px;
  padding:8px 10px;
  margin:-2px -2px 8px;
}
.ls-catnav2__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}
.ls-catnav2__list--lvl3{margin-top:6px;padding-left:12px;border-left:1px dashed rgba(255,255,255,.10)}
.ls-catnav2__link,
.ls-catnav2__sublink{
  color:var(--ls-muted);
  font-weight:700;
  font-size:13px;
}
.ls-catnav2__sublink{font-size:12px}
.ls-catnav2__link:hover,
.ls-catnav2__sublink:hover{color:var(--ls-text)}
.ls-catnav2__link.is-active,
.ls-catnav2__sublink.is-active{color:var(--ls-accent)}
.ls-catnav2__link.is-current,
.ls-catnav2__sublink.is-current{color:var(--ls-accent-2)}

@media (max-width: 768px){
  .ls-catnav2__current{max-width:45%}
  .ls-catnav2__grid{grid-template-columns:1fr;max-height:420px}
}

.ls-cat-nav{margin:14px 0 20px;display:flex;flex-direction:column;gap:10px}
.ls-cat-nav__group{display:flex;flex-direction:column;gap:8px}
.ls-cat-nav__label{
  font-size:12px;
  font-weight:800;
  letter-spacing:.02em;
  text-transform:uppercase;
  color:var(--ls-muted);
}

.ls-cat-chips{display:flex;flex-wrap:wrap;gap:10px;margin:0}
.ls-chip{
  padding:9px 12px;border-radius:999px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  color:var(--ls-muted);
  font-weight:600;
  font-size:13px;
}
.ls-chip:hover{color:var(--ls-text);border-color:rgba(246,182,10,.25)}
.ls-chip.is-active{
  background:linear-gradient(180deg, var(--ls-accent) 0%, #eaa300 100%);
  color:#121212;
  border-color:transparent;
}
.ls-chip.is-active:hover{color:#121212}

/* Mobile: chips become horizontally scrollable (doesn't take a lot of vertical space). */
@media (max-width: 768px){
  .ls-cat-chips{
    flex-wrap:nowrap;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    padding-bottom:6px;
  }
  .ls-cat-chips::-webkit-scrollbar{height:6px}
  .ls-cat-chips::-webkit-scrollbar-thumb{background:rgba(255,255,255,.10);border-radius:999px}
}

/* Pagination (shop/category) */
.woocommerce nav.woocommerce-pagination{margin-top:16px}
.woocommerce nav.woocommerce-pagination ul{
  border:0 !important;
  display:flex !important;
  gap:8px !important;
  justify-content:center;
}
.woocommerce nav.woocommerce-pagination ul li{border:0 !important;overflow:visible}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
  min-width:40px;
  height:40px;
  padding:0 12px !important;
  border-radius:12px !important;
  display:flex !important;
  align-items:center;
  justify-content:center;
  background:rgba(255,255,255,.04) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  color:var(--ls-text) !important;
  font-weight:800;
}
.woocommerce nav.woocommerce-pagination ul li span.current{
  background:linear-gradient(180deg, var(--ls-accent) 0%, #eaa300 100%) !important;
  color:#121212 !important;
  border-color:transparent !important;
}
.woocommerce nav.woocommerce-pagination ul li a:hover{
  border-color:rgba(246,182,10,.35) !important;
  box-shadow:var(--ls-shadow-sm);
}


/* Home / sections product grid (outside .woocommerce) */
.ls-products-grid{
  margin:0;
  padding:0;
  list-style:none;
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:14px;
}
@media (max-width: 768px){.ls-products-grid{grid-template-columns:repeat(2, minmax(0,1fr));}}
@media (max-width: 420px){.ls-products-grid{grid-template-columns:1fr;}}
/* Product grid override */
.woocommerce ul.products{
  margin:0 !important;
  display:grid !important;
  /* auto-fill fixes “узкие карточки” (WooCommerce default width%) */
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)) !important;
  gap:14px !important;
}
.woocommerce ul.products::before,
.woocommerce ul.products::after{display:none !important;}

/* IMPORTANT: WooCommerce ставит li.product width:22% — из-за этого карточки становятся “тонкими”. */
.woocommerce ul.products li.product{
  width:auto !important;
  margin:0 !important;
  float:none !important;
  clear:none !important;
}

@media (max-width: 768px){.woocommerce ul.products{grid-template-columns: repeat(2, minmax(0, 1fr)) !important;}}
@media (max-width: 420px){.woocommerce ul.products{grid-template-columns: 1fr !important;}}

.ls-product-card{
  list-style:none;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  border-radius:var(--ls-radius);
  overflow:hidden;
  box-shadow:none;
  position:relative;
  display:flex;
  flex-direction:column;
  height:100%;
}
.ls-product-card__thumb{
  display:block;
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,0));
  border-bottom:1px solid rgba(255,255,255,.06);
}
.ls-product-card__thumb img{width:100%;height:220px;object-fit:contain;display:block;padding:10px;background:rgba(0,0,0,.08)}
@media (max-width:520px){.ls-product-card__thumb img{height:240px}}
.ls-product-card__body{padding:14px 14px 16px;display:flex;flex-direction:column;gap:10px;flex:1}
.ls-product-card__title{
  font-weight:800;
  line-height:1.25;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
  min-height:2.6em;
}
.ls-product-card__meta{display:flex;align-items:center;justify-content:space-between;gap:10px}
.ls-product-card__meta .price{font-variant-numeric:tabular-nums;}
.woocommerce ul.products li.product .price{color:var(--ls-text) !important;font-weight:800 !important}
.woocommerce ul.products li.product .price del{color:var(--ls-muted) !important;font-weight:600 !important}
.woocommerce ul.products li.product .price ins{text-decoration:none !important}
.ls-product-card__actions{display:flex;align-items:center;gap:10px;margin-top:auto}
.ls-product-card .button{width:100%}

/* Category cards (used when WooCommerce shows categories on Shop/Category pages) */
.ls-cat-card{
  list-style:none;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  border-radius:var(--ls-radius);
  overflow:hidden;
  position:relative;
}
.ls-cat-card__thumb{
  display:block;
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,0));
  border-bottom:1px solid rgba(255,255,255,.06);
}
.ls-cat-card__thumb img{width:100%;height:190px;object-fit:cover;display:block}
.ls-cat-card__body{padding:14px 14px 16px;display:flex;flex-direction:column;gap:8px}
.ls-cat-card__title{font-weight:900;line-height:1.2}
.ls-cat-card__count{color:var(--ls-muted);font-size:13px}

/* Wishlist */
.ls-wish{
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.02);
  color:var(--ls-muted);
  border-radius:12px;
  padding:10px 12px;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  gap:8px;
}
.ls-wish:hover{border-color:rgba(246,182,10,.3);color:var(--ls-text)}
.ls-wish.is-active{border-color:rgba(246,182,10,.35);color:var(--ls-accent)}
.ls-wish__icon{font-size:14px}
.ls-wish--single{margin-top:12px}

/* Breadcrumbs */
.ls-breadcrumbs{margin:10px 0 14px}
.woocommerce-breadcrumb{color:var(--ls-muted) !important;font-size:13px}
.woocommerce-breadcrumb a{color:var(--ls-muted) !important}
.woocommerce-breadcrumb a:hover{color:var(--ls-text) !important}

/* Single product */
.ls-product__top{
  display:grid;
  grid-template-columns: 1.05fr .95fr;
  gap:18px;
  align-items:start;
  padding:14px 0 6px;
}
@media (max-width: 900px){
  .ls-product__top{grid-template-columns:1fr}
}
.ls-product__gallery,
.ls-product__summary{
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  border-radius:var(--ls-radius);
  padding:16px;
}
.woocommerce div.product div.images .woocommerce-product-gallery__image--placeholder{
  border-radius:12px;
}
.woocommerce div.product div.images img{border-radius:12px}
.woocommerce div.product .product_title{font-size:28px;margin:0 0 10px}
@media (max-width: 768px){.woocommerce div.product .product_title{font-size:24px}}
.woocommerce div.product p.price,
.woocommerce div.product span.price{color:var(--ls-text) !important;font-weight:900 !important;font-size:26px}
.woocommerce div.product .woocommerce-product-details__short-description{color:var(--ls-muted);line-height:1.55}
.woocommerce div.product form.cart{margin-top:14px !important}
.woocommerce .quantity .qty{border-radius:12px !important;border:1px solid rgba(255,255,255,.12) !important;background:rgba(0,0,0,.25) !important;color:var(--ls-text) !important;padding:10px !important}

.ls-spec-mini{
  margin-top:14px;
  padding:12px 12px;
  border-radius:12px;
  background:rgba(0,0,0,.18);
  border:1px solid rgba(255,255,255,.08);
}
.ls-desc-mini{
  margin-top:12px;
  padding:12px 12px;
  border-radius:12px;
  background:rgba(0,0,0,.18);
  border:1px solid rgba(255,255,255,.08);
}
.ls-desc-mini__title{font-weight:900;margin-bottom:6px}
.ls-desc-mini__text{color:var(--ls-muted);line-height:1.55}
.ls-desc-mini__text p{margin:0 0 8px}
.ls-desc-mini__text p:last-child{margin-bottom:0}
.ls-spec-mini__title{font-weight:800;margin-bottom:8px}
.ls-spec-mini__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns: repeat(3, minmax(0,1fr));gap:10px}
.ls-spec-mini__list li{display:flex;flex-direction:column;gap:3px;color:var(--ls-muted);font-size:13px}
.ls-spec-mini__list strong{color:var(--ls-text);font-size:15px}
@media (max-width: 520px){.ls-spec-mini__list{grid-template-columns:1fr}}

/* Tabs */
.ls-product__tabs{margin-top:16px}
.woocommerce div.product .woocommerce-tabs ul.tabs{
  padding:0 !important;
  margin:0 0 14px !important;
  overflow:visible;
}
.woocommerce div.product .woocommerce-tabs ul.tabs:before,
.woocommerce div.product .woocommerce-tabs ul.tabs li:before,
.woocommerce div.product .woocommerce-tabs ul.tabs li:after{
  display:none !important;
  content:none !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li{
  border:0 !important;
  background:transparent !important;
  margin:0 10px 10px 0 !important;
  border-radius:999px !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{
  display:inline-flex;
  padding:10px 14px !important;
  border-radius:999px !important;
  border:1px solid rgba(255,255,255,.12) !important;
  background:rgba(255,255,255,.03) !important;
  color:var(--ls-muted) !important;
  font-weight:800 !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{
  color:#121212 !important;
  border-color:transparent !important;
  background:linear-gradient(180deg, var(--ls-accent) 0%, #eaa300 100%) !important;
}
.woocommerce div.product .woocommerce-tabs .panel{
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  border-radius:var(--ls-radius);
  padding:16px;
}
.ls-spec-table{width:100%;border-collapse:collapse}
.ls-spec-table th,
.ls-spec-table td{padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.06);text-align:left}
.ls-spec-table th{color:var(--ls-muted);font-weight:700;width:45%}
.ls-spec-table tr:last-child th,
.ls-spec-table tr:last-child td{border-bottom:0}

/* Related */
.ls-product__related{margin-top:18px}
.woocommerce section.related > h2{font-size:22px;margin:0 0 12px}

/* Product page: lead form block spacing */
.ls-product__consult{margin-top:30px}

/* Forms box */
.ls-section--form{border-top:1px solid rgba(255,255,255,.06)}
.ls-formbox{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:16px;
  align-items:start;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  border-radius:var(--ls-radius);
  padding:18px;
}
.ls-formbox--small{grid-template-columns:1fr 1fr}
@media (max-width: 900px){.ls-formbox{grid-template-columns:1fr}.ls-formbox--small{grid-template-columns:1fr}}
.ls-formbox__form input,
.ls-formbox__form textarea{
  width:100%;
  background:rgba(0,0,0,.25);
  border:1px solid rgba(255,255,255,.12);
  color:var(--ls-text);
  padding:12px 12px;
  border-radius:12px;
  outline:none;
}
.ls-formbox__form textarea{min-height:110px;resize:vertical}
.ls-formbox__form .ls-field{display:flex;flex-direction:column;gap:8px;margin-bottom:10px}
.ls-formbox__form .ls-field label{font-size:13px;color:var(--ls-muted)}
.ls-formbox__form .ls-form-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:8px}
.ls-formbox__form .ls-policy{font-size:12px;color:var(--ls-muted);line-height:1.4}
.ls-formbox__form .ls-msg{margin-top:10px;font-size:13px;color:var(--ls-muted)}

/* Footer */
.ls-footer{
  border-top:1px solid rgba(255,255,255,.06);
  background:rgba(10,12,14,.65);
}
.ls-footer__inner{display:grid;grid-template-columns: 1.2fr 1fr 1fr;gap:16px;padding:34px 0}
.ls-footer__title{font-weight:900;margin-bottom:10px}
.ls-footer__menu{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.ls-footer__menu a{color:var(--ls-muted)}
.ls-footer__menu a:hover{color:var(--ls-text)}
.ls-footer__contacts{display:flex;flex-direction:column;gap:10px}
.ls-footer__contact{color:var(--ls-muted)}
.ls-footer__contact:hover{color:var(--ls-text)}
.ls-footer__bottom{border-top:1px solid rgba(255,255,255,.06)}
.ls-footer__bottom-inner{display:flex;justify-content:space-between;gap:10px;padding:16px 0;color:var(--ls-muted);font-size:13px}
@media (max-width: 900px){.ls-footer__inner{grid-template-columns:1fr}.ls-footer__bottom-inner{flex-direction:column}}

/* Modal (plugin) */
.ls-modal{
  position:fixed;inset:0;
  display:flex;align-items:center;justify-content:center;
  padding:18px;
  z-index:120;
}
.ls-modal[hidden]{display:none}
.ls-modal__overlay{position:absolute;inset:0;background:rgba(0,0,0,.55)}
.ls-modal__card{
  position:relative;
  width:min(560px, 92vw);
  background:rgba(15,17,19,.98);
  border:1px solid rgba(255,255,255,.10);
  border-radius:var(--ls-radius);
  box-shadow:var(--ls-shadow);
  padding:16px;
}
.ls-modal__head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.ls-modal__title{font-weight:900;font-size:20px}
.ls-modal__close{
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.10);
  border-radius:12px;
  width:42px;height:42px;
  cursor:pointer;
  color:var(--ls-text);
}
.ls-modal__body{margin-top:12px}

/* Lead forms (plugin) */
.ls-lead-form .ls-field{display:flex;flex-direction:column;gap:8px;margin-bottom:10px}
.ls-lead-form .ls-field label{font-size:13px;color:var(--ls-muted)}
.ls-lead-form input[type="text"],
.ls-lead-form input[type="tel"],
.ls-lead-form input[type="email"],
.ls-lead-form textarea{
  width:100%;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.10);
  border-radius:12px;
  padding:10px 12px;
  color:var(--ls-text);
  outline:none;
}
.ls-lead-form textarea{min-height:96px;resize:vertical}
.ls-lead-form input:focus, .ls-lead-form textarea:focus{border-color:rgba(246,182,10,.35);box-shadow:0 0 0 3px rgba(246,182,10,.10)}
.ls-lead-form .ls-form-actions{display:flex;flex-direction:column;gap:10px;align-items:flex-start;margin-top:8px}
.ls-lead-form .ls-policy{font-size:12px;color:var(--ls-muted);line-height:1.4}
.ls-lead-form .ls-msg{margin-top:10px;font-size:13px;color:var(--ls-accent)}

/* Floating callback button */
.ls-float{
  position:fixed;
  right:16px;
  bottom:16px;
  z-index:110;
  display:flex;
  flex-direction:column;
  gap:10px;
  align-items:flex-end;
}
.ls-float__btn{
  width:54px;height:54px;border-radius:999px;
  border:1px solid rgba(246,182,10,.35);
  background:linear-gradient(180deg, rgba(246,182,10,.95), rgba(234,163,0,.95));
  color:#121212;
  box-shadow:0 14px 35px rgba(246,182,10,.2);
  cursor:pointer;
  font-size:20px;
}
.ls-float__hint{
  background:rgba(0,0,0,.25);
  border:1px solid rgba(255,255,255,.10);
  color:var(--ls-muted);
  border-radius:999px;
  padding:8px 12px;
  font-size:12px;
}

/* Wishlist page */
.ls-wishlist-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
@media (max-width: 1024px){.ls-wishlist-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width: 768px){.ls-wishlist-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width: 520px){.ls-wishlist-grid{grid-template-columns:1fr}}

/* Woo tables */
.woocommerce table.shop_table{
  border-radius:var(--ls-radius);
  overflow:hidden;
  background:rgba(255,255,255,.02);
  border:1px solid rgba(255,255,255,.08);
}
.woocommerce table.shop_table th{background:rgba(255,255,255,.04);color:var(--ls-muted)}
.woocommerce table.shop_table td, .woocommerce table.shop_table th{border-color:rgba(255,255,255,.06) !important}
.woocommerce .cart-collaterals .cart_totals,
.woocommerce .woocommerce-checkout .woocommerce-checkout-review-order{
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  border-radius:var(--ls-radius);
  padding:16px;
}

/* Notices */
.woocommerce-message, .woocommerce-info, .woocommerce-error{
  border-radius:var(--ls-radius);
  background:rgba(255,255,255,.03);
  border-color:rgba(255,255,255,.10);
  color:var(--ls-text);
}

/* Quick order button style (plugin adds) */
.ls-quickorder-btn{
  width:100%;
  margin-top:10px;
  border-radius:12px;
  padding:12px 14px;
  border:1px solid rgba(246,182,10,.35);
  background:rgba(246,182,10,.10);
  color:var(--ls-accent);
  font-weight:800;
  cursor:pointer;
}
.ls-quickorder-btn:hover{background:rgba(246,182,10,.14)}

.ls-price-request{color:var(--ls-accent);font-weight:900}


/* === v1.0.3 Desktop fixes === */


/* Ensure sale badge is positioned within the gallery */
.ls-product__gallery .woocommerce-product-gallery{position:relative;}
/* Prevent Woo default floats/narrow columns inside our single-product layout */
.ls-product__gallery .woocommerce-product-gallery,
.ls-product__gallery .woocommerce-product-gallery.images,
.ls-product__gallery .woocommerce-product-gallery__wrapper,
.ls-product__gallery .woocommerce-product-gallery__image{
  width:100% !important;
  float:none !important;
  margin:0 !important;
}
.ls-product__summary.summary{
  width:100% !important;
  float:none !important;
  margin:0 !important;
}

/* Make gallery image more "full" on desktop */
.ls-product__gallery img{
  width:100% !important;
  height:420px;
  object-fit:contain;
  background:rgba(0,0,0,.06);
}
@media (max-width: 900px){
  .ls-product__gallery img{height:320px;}
}

/* Features ("Почему выбирают нас") */
.ls-features{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:14px;
}
@media (max-width: 1100px){.ls-features{grid-template-columns:repeat(2, minmax(0,1fr));}}
@media (max-width: 600px){.ls-features{grid-template-columns:1fr;}}
.ls-feature{
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  border-radius:var(--ls-radius);
  padding:16px;
  box-shadow:var(--ls-shadow-sm);
  display:flex;
  flex-direction:column;
  gap:8px;
}
.ls-feature__icon{
  width:44px;height:44px;border-radius:12px;
  display:flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.10);
  font-size:20px;
}
.ls-feature__title{font-weight:900;letter-spacing:.2px}
.ls-feature__text{color:var(--ls-muted);line-height:1.55}

/* Custom logo: show uploaded logo normally (not squeezed into 44x44) */
.ls-logo--img{gap:10px}
.ls-logo--img .ls-logo__img{
  width:auto;height:56px;
  border:0;background:transparent;
  overflow:visible;border-radius:0;
}
.ls-logo--img .ls-logo__img-el{height:56px;max-height:56px;width:auto;max-width:240px}
.ls-logo--img .ls-logo__text{display:none}
@media (max-width: 520px){
  .ls-logo--img .ls-logo__img{height:44px}
  .ls-logo--img .ls-logo__img-el{height:44px;max-height:44px;max-width:190px}
}

/* Related products carousel */
.ls-carousel{position:relative}
.ls-carousel__viewport{overflow:hidden}
.ls-carousel__track{
  margin:0;
  padding:0;
  list-style:none;
  display:flex !important;
  grid-template-columns:none !important;
  gap:14px;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  padding:2px 2px 14px;
}
.ls-carousel__track::-webkit-scrollbar{height:8px}
.ls-carousel__track::-webkit-scrollbar-thumb{background:rgba(255,255,255,.12);border-radius:999px}
.ls-carousel__track>li{flex:0 0 280px;scroll-snap-align:start}
@media (max-width: 1200px){.ls-carousel__track>li{flex-basis:260px}}
@media (max-width: 900px){.ls-carousel__track>li{flex-basis:240px}}
@media (max-width: 520px){.ls-carousel__track>li{flex-basis:78%}}
.ls-carousel__btn{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:42px;height:42px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(0,0,0,.35);
  color:var(--ls-text);
  display:flex;align-items:center;justify-content:center;
  box-shadow:var(--ls-shadow-sm);
  cursor:pointer;
  z-index:5;
}
.ls-carousel__btn span{font-size:26px;line-height:1}
.ls-carousel__btn--prev{left:-10px}
.ls-carousel__btn--next{right:-10px}
@media (max-width: 900px){.ls-carousel__btn{display:none}}

/* Make titles stable (avoid "jumping") */
.ls-product-card__title{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

/* Cart: prominent checkout button */
.woocommerce .wc-proceed-to-checkout{padding:0 !important}
.woocommerce .wc-proceed-to-checkout a.checkout-button{
  display:flex !important;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:14px 18px !important;
  border-radius:999px !important;
  border:0 !important;
  background:linear-gradient(180deg, var(--ls-accent) 0%, #eaa300 100%) !important;
  color:#121212 !important;
  font-weight:900 !important;
  box-shadow:var(--ls-shadow-sm) !important;
}
.woocommerce .wc-proceed-to-checkout a.checkout-button:hover{transform:translateY(-1px)}
@media (max-width: 768px){
  .woocommerce .wc-proceed-to-checkout a.checkout-button{width:100%}
}

/* Checkout: dark inputs + hide default billing headings */
.woocommerce-checkout .woocommerce-billing-fields > h3,
.woocommerce-checkout .woocommerce-additional-fields > h3{display:none}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select{
  background:rgba(0,0,0,.25) !important;
  border:1px solid rgba(255,255,255,.14) !important;
  color:var(--ls-text) !important;
  border-radius:12px !important;
  padding:12px 12px !important;
  box-shadow:none !important;
}
.woocommerce form .form-row label{color:var(--ls-muted) !important;font-weight:800}
.woocommerce-checkout .select2-container--default .select2-selection--single{
  background:rgba(0,0,0,.25) !important;
  border:1px solid rgba(255,255,255,.14) !important;
  border-radius:12px !important;
  height:44px;
}
.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered{
  color:var(--ls-text) !important;
  line-height:44px !important;
}
.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow{height:44px}


/* ================================
   v105 UI/UX fixes (mobile + desktop)
   ================================ */

/* Prevent horizontal scrolling that reveals the off-canvas menu */
html, body{
  /* Use clip when available to fully prevent “peek” on swipe */
  overflow-x:hidden !important;
  width:100%;
  overscroll-behavior-x:none;
}
@supports (overflow: clip){
  html, body{ overflow-x: clip !important; }
}
body{
  touch-action: pan-y;
}
.ls-main{overflow-x:hidden}

/* Lock body scroll when modal/menu is open */
html.ls-lock, html.ls-lock body{
  overflow:hidden !important;
}

/* Mobile nav: keep fully hidden when closed (prevents peeking on swipe) */
.ls-mobile-nav{
  visibility:hidden;
  opacity:0;
  pointer-events:none;
  transform:translate3d(120%,0,0);
  transition:transform .22s ease, opacity .22s ease, visibility .22s ease;
  will-change:transform;
}
.ls-mobile-nav.is-open{
  visibility:visible;
  opacity:1;
  pointer-events:auto;
  transform:translate3d(0,0,0);
}

/* Modal: stable on mobile keyboard, centered on desktop */
@media (max-width: 900px){
  .ls-modal{
    align-items:flex-start;
    justify-content:center;
    overflow:auto;
    padding: max(16px, env(safe-area-inset-top)) 16px 16px;
  }
  .ls-modal__card{
    width:min(560px, 94vw);
    max-height: calc(100dvh - 32px);
    overflow:auto;
    -webkit-overflow-scrolling:touch;
    margin:0 auto;
  }
  @supports not (height: 100dvh){
    .ls-modal__card{max-height: calc(100vh - 32px);}
  }
}
@media (min-width: 901px){
  .ls-modal{align-items:center;padding:32px 16px;}
  .ls-modal__card{max-height: calc(100vh - 64px);}
}

/* Hide any extra “one-click / quick request” buttons injected by other plugins */
.single-product form.cart button:not(.single_add_to_cart_button):not(.ls-quickorder-btn),
.single-product form.cart a.button:not(.single_add_to_cart_button):not(.ls-quickorder-btn){
  display:none !important;
}

/* Buttons in product cards (home + shop + wishlist) */
.ls-product-card a.button,
.ls-product-card a.add_to_cart_button,
.ls-product-card a.ajax_add_to_cart,
.ls-product-card a.product_type_simple,
.ls-product-card button.button,
.ls-products-grid a.button,
.ls-products-grid a.add_to_cart_button,
.ls-products-grid a.ajax_add_to_cart,
.ls-wishlist-grid a.button,
.ls-wishlist-grid a.add_to_cart_button,
.woocommerce ul.products li.product a.button,
.woocommerce-page ul.products li.product a.button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100%;
  padding:12px 14px !important;
  border-radius:14px !important;
  border:1px solid rgba(255,255,255,.12) !important;
  background:rgba(255,255,255,.05) !important;
  color:var(--ls-text) !important;
  font-weight:800 !important;
  text-decoration:none !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.04);
}
.ls-product-card a.button:hover,
.woocommerce ul.products li.product a.button:hover{
  border-color:rgba(246,182,10,.32) !important;
  background:rgba(246,182,10,.12) !important;
  color:var(--ls-text) !important;
}
.ls-product-card a.added_to_cart{display:none !important;}

/* Checkout marketing opt-in checkbox alignment */
.woocommerce-checkout .woocommerce-form__label-for-checkbox,
.woocommerce-checkout .woocommerce-form__label.woocommerce-form__label-for-checkbox{
  display:flex !important;
  align-items:flex-start !important;
  gap:10px !important;
  line-height:1.35 !important;
}
.woocommerce-checkout .woocommerce-form__label-for-checkbox input[type="checkbox"]{
  margin-top:3px !important;
  flex:0 0 auto;
}

/* Cart: make “Proceed to checkout” look like the theme */
a.checkout-button,
.woocommerce .wc-proceed-to-checkout a.checkout-button,
.woocommerce-page .wc-proceed-to-checkout a.checkout-button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  padding:14px 16px !important;
  border-radius:16px !important;
  background:var(--ls-accent) !important;
  color:#161616 !important;
  font-weight:900 !important;
  border:1px solid rgba(246,182,10,.55) !important;
  box-shadow:0 10px 28px rgba(246,182,10,.18) !important;
}
a.checkout-button:hover{filter:brightness(1.02)}

/* Checkout classic fields (dark, not white) */
.woocommerce-checkout form .form-row input.input-text,
.woocommerce-checkout form .form-row textarea,
.woocommerce-checkout form .form-row select,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select{
  background:rgba(255,255,255,.04) !important;
  color:var(--ls-text) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  border-radius:14px !important;
  min-height:44px;
}
.woocommerce-checkout form .form-row input.input-text:focus,
.woocommerce-checkout form .form-row textarea:focus,
.woocommerce-checkout form .form-row select:focus{
  border-color:rgba(246,182,10,.35) !important;
  box-shadow:0 0 0 3px rgba(246,182,10,.10) !important;
  outline:none !important;
}

/* Pagination: accent active state (mobile + desktop) */
.woocommerce nav.woocommerce-pagination ul li span.current,
.page-numbers.current{
  background:linear-gradient(180deg, rgba(246,182,10,.95), rgba(246,182,10,.78)) !important;
  color:#161616 !important;
  border-color:rgba(246,182,10,.55) !important;
}
.woocommerce nav.woocommerce-pagination ul li a:hover,
.page-numbers:hover{
  border-color:rgba(246,182,10,.35) !important;
}

/* Product meta (SKU / category) — a bit lower for better rhythm */
.single-product .product_meta{
  margin-top:14px;
}

/* Product page spacing: avoid overlap with the consult block */
.ls-product__related{margin-bottom:26px}
.ls-product__consult{margin-top:56px}

/* City selector: readable on desktop dropdown */
.ls-topbar select{
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.10);
  color:var(--ls-text);
}
.ls-topbar select option{
  background:#0f1113;
  color:#e9edf3;
}
.ls-topbar select option:checked{
  background:rgba(246,182,10,.85);
  color:#161616;
}


/* === v1.0.7 hotfixes === */

/* City switcher (make text readable) */
.ls-topbar select,
.ls-topbar .js-ls-city{
  color: var(--ls-text) !important;
  background: rgba(0,0,0,.35) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
}
.ls-topbar select option{
  background:#0b0d10;
  color:#fff;
}

/* Prevent horizontal “peek” that reveals offcanvas menu on swipe */
html, body{
  overflow-x: hidden !important;
  width: 100%;
  overscroll-behavior-x: none;
}
body{ touch-action: pan-y; }
.ls-carousel, .ls-carousel__track{ touch-action: pan-x; }

/* Offcanvas: keep fully outside viewport while closed */
.ls-mobile-nav{
  inset:0 auto 0 auto !important;
  left:100%;
  right:auto;
  transform:none !important;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  will-change:auto;
}
.ls-mobile-nav.is-open{
  left:auto;
  right:0;
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}

/* Popular products: keep “В корзину” in the same style as catalog */
.ls-products-grid a.button,
.ls-products-grid button.button{
  width:100%;
  justify-content:center;
  padding:11px 14px !important;
  border-radius:12px !important;
  background:rgba(255,255,255,.03) !important;
  border:1px solid rgba(255,255,255,.12) !important;
  color:var(--ls-text) !important;
  font-weight:700 !important;
}
.ls-products-grid a.button:hover,
.ls-products-grid button.button:hover{
  border-color:rgba(246,182,10,.55) !important;
  box-shadow:0 0 0 3px rgba(246,182,10,.12) !important;
}

/* Pagination: match theme */
 use accent instead of white */
.woocommerce nav.woocommerce-pagination ul,
.woocommerce nav.woocommerce-pagination ul li{
  border-color: rgba(255,255,255,.14) !important;
}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
  background: transparent !important;
  color: var(--ls-text) !important;
}
.woocommerce nav.woocommerce-pagination ul li span.current{
  background: var(--ls-accent) !important;
  color: #0b0d10 !important;
  font-weight:900 !important;
}

/* Checkout checkbox alignment */
.woocommerce form .woocommerce-form__label-for-checkbox,
.woocommerce form .woocommerce-form__label-for-checkbox span{
  display:inline-flex !important;
  align-items:flex-start;
  gap:10px;
  line-height:1.35;
}
.woocommerce form .woocommerce-form__label-for-checkbox input[type="checkbox"]{
  margin-top:3px !important;
}

/* Product meta (Артикул) spacing */
.ls-meta-mini{ margin-top:14px !important; }

/* Product description: do not clamp/truncate */
.ls-desc-mini__text{
  display:block !important;
  -webkit-line-clamp:unset !important;
  overflow:visible !important;
  max-height:none !important;
}

/* Custom product gallery */
.ls-pg{display:flex; flex-direction:column; gap:12px}
.ls-pg__main{
  position:relative;
  border-radius:14px;
  background: rgba(0,0,0,.18);
  border:1px solid rgba(255,255,255,.08);
  overflow:hidden;
  min-height: 280px;
}
.ls-pg__open{
  appearance:none; border:0; padding:0; margin:0;
  background:transparent; width:100%; height:100%;
  cursor: zoom-in;
}
.ls-pg__img{
  width:100%;
  height:auto;
  display:block;
}
.ls-pg__nav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:42px; height:42px;
  border-radius:14px;
  background: rgba(0,0,0,.45);
  border:1px solid rgba(255,255,255,.16);
  color:#fff;
  font-size:22px;
  display:flex;
  align-items:center;
  justify-content:center;
  z-index:2;
}
.ls-pg__prev{left:10px}
.ls-pg__next{right:10px}
.ls-pg__thumbs{
  display:flex;
  gap:10px;
  overflow:auto;
  padding-bottom:4px;
  scroll-snap-type:x mandatory;
}
.ls-pg__thumb{
  flex:0 0 auto;
  width:84px;
  height:62px;
  border-radius:12px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.03);
  padding:0;
  scroll-snap-align:start;
}
.ls-pg__thumb img{width:100%; height:100%; object-fit:cover; display:block; opacity:.82}
.ls-pg__thumb.is-active{border-color: rgba(255,193,7,.6); box-shadow: 0 0 0 2px rgba(255,193,7,.12) inset}
.ls-pg__thumb.is-active img{opacity:1}

/* Popup image viewer */
.ls-imgpop{
  position:fixed;
  inset:0;
  z-index:200;
  display:flex;
  align-items:center;
  justify-content:center;
}
.ls-imgpop[hidden]{display:none !important}
.ls-imgpop__backdrop{
  position:absolute; inset:0;
  background: rgba(0,0,0,.72);
}
.ls-imgpop__dialog{
  position:relative;
  width:min(96vw, 980px);
  max-height: 92vh;
  background: rgba(10,12,14,.96);
  border:1px solid rgba(255,255,255,.10);
  border-radius: 18px;
  overflow:hidden;
  padding: 10px;
  z-index:1;
}
.ls-imgpop__img{
  width:100%;
  max-height: calc(92vh - 40px);
  object-fit: contain;
  display:block;
}
.ls-imgpop__close{
  position:absolute;
  top:10px; right:10px;
  width:44px; height:44px;
  border-radius:14px;
  background: rgba(0,0,0,.45);
  border:1px solid rgba(255,255,255,.14);
  color:#fff;
  font-size:22px;
  z-index:2;
}
.ls-imgpop__prev, .ls-imgpop__next{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:46px; height:46px;
  border-radius:16px;
  background: rgba(0,0,0,.45);
  border:1px solid rgba(255,255,255,.14);
  color:#fff;
  font-size:24px;
  z-index:2;
}
.ls-imgpop__prev{left:10px}
.ls-imgpop__next{right:10px}

@media (max-width: 540px){
  .ls-pg__main{min-height:220px}
  .ls-imgpop__dialog{width:96vw; padding:8px}
  .ls-imgpop__prev, .ls-imgpop__next{width:42px;height:42px}
}

/* ===== v109.1 layout & mobile compact hotfix ===== */
html, body { overflow-x: hidden; width: 100%; }

/* Prevent horizontal peeking/scroll on mobile (menu swipe issue) */
.ls-main, .ls-hero, .ls-section, .ls-header, .ls-topbar { overflow-x: hidden; }

/* Safer container padding on devices that report desktop viewport */
.ls-container{ padding-left: 18px; padding-right: 18px; }
@supports (padding: max(0px)){
  .ls-container{ padding-left: calc(18px + env(safe-area-inset-left)); padding-right: calc(18px + env(safe-area-inset-right)); }
}

/* Hero image: remove inner padding/"distortion" feel, darken via overlay */
.ls-hero__visual{
  padding: 0;
  background: transparent;
  border: 1px solid rgba(255,255,255,.08);
  overflow: hidden;
}
.ls-hero__img{
  display:block;
  width:100%;
  height:auto;
  max-height: 360px;
  object-fit: cover;
  filter: none;
}
.ls-hero__visual:after{
  background: linear-gradient(180deg, rgba(0,0,0,.20), rgba(0,0,0,.60));
}

/* Mobile header: make it shorter (hide logo/title + contacts) */
@media (max-width: 900px), (hover: none) and (pointer: coarse){
  .ls-header__logo{ display:none !important; }
  .ls-topbar__left > .ls-contact{ display:none !important; } /* phone */
  .ls-contacts-inline{ display:none !important; } /* email (if present) */

  .ls-topbar{ padding: 6px 0; }
  .ls-header__inner{ padding-top: 10px; padding-bottom: 10px; }
}

/* Offcanvas: keep completely off-screen when closed */
.ls-mobile-nav{ transform: translate3d(100%,0,0); }
.ls-mobile-nav.is-open{ transform: translate3d(0,0,0); }

/* Desktop callback modal: add clear top offset */
@media (min-width: 901px){
  .ls-modal{ align-items: flex-start; padding-top: 80px; }
}


/* ===== v110 tweaks ===== */

/* Show "Главная" button only on mobile header */
.ls-btn--home{ display:none; gap:8px; padding:10px 14px; border-radius:14px; background:transparent; border:1px solid rgba(255,255,255,.14); color:#e9e9e9; }
.ls-btn--home:hover{ border-color: rgba(245, 171, 0, .45); }
@media (max-width: 900px){
  .ls-btn--home{ display:inline-flex; align-items:center; }
}

/* Ensure no horizontal "swipe-reveal" of offcanvas elements */
html, body{ overflow-x:hidden; }

/* Make mobile header shorter regardless of wp_is_mobile() detection */
@media (max-width: 900px){
  .ls-contacts-inline{ display:none !important; }
  .ls-topmenu{ display:none !important; }
  .ls-topbar{ padding:10px 0 !important; }
  .ls-header__logo{ display:none !important; }
}

/* Hero image: "v7-like" card with full-bleed image (no stretching) */
.ls-hero__visual{
  padding:0;
  height:360px;
  border-radius:26px;
  overflow:hidden;
  background: radial-gradient(60% 60% at 40% 40%, rgba(255,255,255,.06), rgba(0,0,0,0)) , rgba(0,0,0,.35);
  border:1px solid rgba(255,255,255,.10);
}
.ls-hero__img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  filter: brightness(.68) contrast(1.08) saturate(1.02);
}
.ls-hero__visual:after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background: linear-gradient(180deg, rgba(0,0,0,.10), rgba(0,0,0,.38));
}
@media (max-width: 900px){
  .ls-hero__visual{ height:auto; padding:18px; }
  .ls-hero__img{ height:auto; filter: brightness(.78) contrast(1.06); }
}

/* Cookie consent */
.ls-cookie{
  position:fixed;
  left:16px; right:16px; bottom:16px;
  max-width:1100px;
  margin:0 auto;
  z-index:99999;
  display:none;
}
.ls-cookie.is-open{ display:block; }
.ls-cookie__inner{
  background: rgba(18,18,18,.92);
  border:1px solid rgba(255,255,255,.12);
  box-shadow: 0 18px 45px rgba(0,0,0,.45);
  border-radius:18px;
  padding:16px 16px;
  display:flex;
  gap:14px;
  align-items:center;
  justify-content:space-between;
  backdrop-filter: blur(10px);
}
.ls-cookie__text{ color:#eaeaea; font-size:14px; line-height:1.3; }
.ls-cookie__actions{ display:flex; gap:10px; flex-wrap:wrap; align-items:center; }
@media (max-width: 520px){
  .ls-cookie__inner{ flex-direction:column; align-items:flex-start; }
}


/* === v111 tweaks === */
/* Prevent horizontal drag revealing off-canvas elements */
html{overflow-x:hidden; overscroll-behavior-x:none;}
body{touch-action:pan-y;}

/* Cookie consent as modal */
.ls-cookie{
  position:fixed;
  inset:0;
  display:none;
  align-items:center;
  justify-content:center;
  padding:18px;
  background:rgba(0,0,0,.72);
  z-index:99999;
}
.ls-cookie.is-open{display:flex;}
.ls-cookie__inner{
  width:min(560px, 100%);
  background:rgba(18,20,22,.98);
  border:1px solid rgba(255,255,255,.12);
  border-radius:18px;
  box-shadow:0 22px 70px rgba(0,0,0,.65);
  padding:22px;
}
.ls-cookie__inner h3{margin:0 0 10px 0; font-size:22px;}
.ls-cookie__inner p{margin:0 0 16px 0; color:rgba(255,255,255,.78);}
.ls-cookie__actions{display:flex; gap:12px; justify-content:flex-end; flex-wrap:wrap;}
.ls-cookie__btn{
  appearance:none;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.06);
  color:#fff;
  border-radius:999px;
  padding:12px 16px;
  font-weight:800;
  cursor:pointer;
}
.ls-cookie__btn--ok{
  background:var(--ls-accent);
  border-color:rgba(0,0,0,.15);
  color:#111;
}
body.ls-cookie-open{overflow:hidden;}

/* Hero image like v6: no distortion, just darken */
.ls-hero__visual{
  background:rgba(0,0,0,.24);
  border:1px solid rgba(255,255,255,.10);
  border-radius:18px;
}
.ls-hero__img{
  object-fit:contain;
  background:rgba(0,0,0,.22);
  filter:brightness(.72) contrast(1.04) saturate(.96);
}
.ls-hero__visual::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, rgba(0,0,0,.22) 0%, rgba(0,0,0,.08) 40%, rgba(0,0,0,.22) 100%);
  pointer-events:none;
}

/* Callback modal spacing on desktop (admin bar safe) */
@media (min-width: 901px){
  .ls-modal{align-items:flex-start; padding-top:120px;}
}

/* Mobile header: make it compact */
@media (max-width: 900px){
  .ls-topbar__center,
  .ls-contacts-inline,
  .ls-header__logo{display:none !important;}

  .ls-topbar{padding:10px 0;}
  .ls-header{padding-top:14px;}
  .ls-header__grid{gap:10px;}
}

/* Mobile home button: icon only, left of catalog */
.ls-btn--home{display:none;}
@media (max-width: 900px){
  .ls-btn--home{
    display:inline-flex;
    width:44px;
    padding:0;
    justify-content:center;
  }
  .ls-btn--home .ls-btn__text{display:none;}
}
/* === end v111 tweaks === */

/* v111 cookie text */
.ls-cookie__text{margin:0 0 16px 0; color:rgba(255,255,255,.78); line-height:1.45; font-size:16px;}


/* ================================
   Mobile header + burger menu (v12)
   ================================ */

/* SVG marks use currentColor */
.ls-logo__mark{ color: var(--ls-accent); }
.ls-btn__icon{ display:inline-flex; align-items:center; justify-content:center; }

/* Brand mark in the topbar (mobile only) */
.ls-topbar-brand{ display:none; }
.ls-topbar-brand__mark{ display:flex; align-items:center; justify-content:center; color:var(--ls-accent); }
.ls-topbar-brand__svg{ display:block; }

@media (max-width: 900px){
  /* Make header compact: keep only topbar + burger */
  .ls-header{ display:none !important; }

  .ls-topbar-brand{
    display:inline-flex;
    width:42px;
    height:42px;
    border-radius:12px;
    align-items:center;
    justify-content:center;
    background:rgba(255,255,255,.03);
    border:1px solid rgba(255,255,255,.10);
    box-shadow:var(--ls-shadow-sm);
  }

  .ls-topbar__left{ gap:10px; flex-wrap:nowrap; }
  .ls-city__select{ max-width: 150px; }
}

/* Offcanvas header */
.ls-mobile-nav__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding-bottom:12px;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.ls-mobile-nav__logo .ls-logo__tagline{ display:none; }
.ls-mobile-nav__close{
  width:42px;
  height:42px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.03);
  color:var(--ls-text);
  cursor:pointer;
  font-size:28px;
  line-height:1;
}
.ls-mobile-nav__close:hover{ border-color: rgba(246,182,10,.30); }

/* Search inside burger */
.ls-mobile-nav__search form{
  display:flex;
  align-items:center;
  gap:10px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.09);
  border-radius:14px;
  padding:8px 10px;
}
.ls-mobile-nav__search input[type="search"]{
  width:100%;
  background:transparent;
  border:0;
  outline:none;
  color:var(--ls-text);
  font-size:15px;
}
.ls-mobile-nav__search button{
  border:0;
  border-radius:12px;
  padding:10px 14px;
  cursor:pointer;
  background:rgba(246,182,10,.12);
  color:var(--ls-accent);
}

/* Quick actions (Каталог / Избранное) inside burger */
.ls-mobile-nav__quick .ls-header-actions,
.ls-mobile-nav__quick .ls-mobile-quick{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  justify-content:flex-start;
  gap:10px;
}
.ls-mobile-nav__quick .ls-btn,
.ls-mobile-nav__quick .ls-action{
  width:100%;
  justify-content:flex-start;
}

/* Show labels in burger even if header hides them on small screens */
.ls-mobile-nav__quick .ls-action__label{ display:inline !important; }
.ls-mobile-nav__quick .ls-action__total{ display:inline !important; opacity:.9; }

/* Move badges to the right */
.ls-mobile-nav__quick .ls-action__badge{ margin-left:auto; }

/* Home button text inside burger */
.ls-mobile-nav__quick .ls-btn--home{ display:inline-flex !important; }
.ls-mobile-nav__quick .ls-btn--home .ls-btn__text{ display:inline !important; }

/* Make the same home button look nice if it is ever shown outside burger */
.ls-btn--home{
  gap:10px;
  padding:12px 14px;
  border-radius:12px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.10);
}

/* Burger to close animation */
.ls-burger span{ transition: transform .18s ease, opacity .18s ease; }
.ls-burger.is-active span{ transition: transform .18s ease, opacity .18s ease; }
.ls-burger.is-active span:nth-child(1){ transform: translateY(7px) rotate(45deg); }
.ls-burger.is-active span:nth-child(2){ opacity: 0; }
.ls-burger.is-active span:nth-child(3){ transform: translateY(-7px) rotate(-45deg); }


/* ================================
   v12 mobile menu presentation fix
   (prevents transparent/off-style menu on mobile)
   ================================ */

/* Off-canvas panel (final override, because the file has older hotfixes above) */
.ls-mobile-nav{
  position:fixed !important;
  top:0 !important;
  right:0 !important;
  bottom:0 !important;
  left:auto !important;

  width:min(360px, 92vw) !important;
  max-width:92vw !important;

  background:rgba(10,12,14,.98) !important;
  border-left:1px solid rgba(255,255,255,.10) !important;
  box-shadow:-18px 0 60px rgba(0,0,0,.55) !important;

  z-index:1000 !important;

  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}
@supports (height: 100dvh){
  .ls-mobile-nav{ height:100dvh; }
}
@supports not (height: 100dvh){
  .ls-mobile-nav{ height:100vh; }
}

.ls-mobile-nav__inner{
  height:100%;
  overflow:auto;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
}

.ls-backdrop{ z-index:999 !important; }

.ls-mobile-nav:not(.is-open){
  transform:translate3d(110%,0,0) !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
}
.ls-mobile-nav.is-open{
  transform:translate3d(0,0,0) !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}

/* Menu list styles (wp_nav_menu + wp_page_menu fallback) */
.ls-mobile-nav .ls-mobile-menu,
.ls-mobile-nav .ls-mobile-menu ul,
.ls-mobile-nav .menu,
.ls-mobile-nav .menu ul,
.ls-mobile-nav .children,
.ls-mobile-nav .sub-menu{
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
}

.ls-mobile-nav .ls-mobile-menu,
.ls-mobile-nav .menu > ul{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.ls-mobile-nav .ls-mobile-menu a,
.ls-mobile-nav .menu a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:12px 12px;
  border-radius:14px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  color:var(--ls-text);
  text-decoration:none;
}

.ls-mobile-nav .ls-mobile-menu a:hover,
.ls-mobile-nav .menu a:hover{
  border-color:rgba(246,182,10,.40);
  box-shadow:0 0 0 3px rgba(246,182,10,.10);
}

.ls-mobile-nav .ls-mobile-menu .sub-menu,
.ls-mobile-nav .menu .children{
  margin-top:10px !important;
  padding-left:12px !important;
  border-left:1px solid rgba(255,255,255,.08);
  display:flex;
  flex-direction:column;
  gap:10px;
}

.ls-mobile-nav .ls-mobile-menu .sub-menu a,
.ls-mobile-nav .menu .children a{
  background:rgba(255,255,255,.02);
}

.ls-mobile-nav .ls-mobile-menu .current-menu-item > a,
.ls-mobile-nav .ls-mobile-menu .current_page_item > a,
.ls-mobile-nav .menu .current_page_item > a{
  border-color:rgba(246,182,10,.55);
}

/* =================================
   Cookie popup (capsule v5 style)
   ================================= */
.cookie-popup{
  position:fixed;
  left:18px;
  bottom:18px;
  z-index:120;
  max-width:360px;
  padding:14px 14px 12px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(7,11,20,.92);
  box-shadow:var(--ls-shadow);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}
.cookie-popup__close{
  position:absolute;
  top:10px;
  right:10px;
  width:30px;
  height:30px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.06);
  color:rgba(234,240,255,.9);
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  line-height:1;
}
.cookie-popup__close:hover{
  border-color: rgba(246,182,10,.38);
  background: rgba(246,182,10,.10);
}
.cookie-popup__title{
  font-weight:1000;
  margin-bottom:6px;
}
.cookie-popup__text{
  color:rgba(234,240,255,.70);
  line-height:1.45;
  font-size:13px;
  padding-right:26px;
}
.cookie-popup__text a{
  color:var(--ls-accent);
  text-decoration:underline;
  text-underline-offset:3px;
}
.cookie-popup__actions{
  display:flex;
  gap:10px;
  margin-top:10px;
  flex-wrap:wrap;
}

@media (max-width:520px){
  .cookie-popup{
    left:12px;
    right:12px;
    max-width:none;
  }
}

/* Disable legacy cookie banners (if any old markup is still present) */
.ls-cookie{ display:none !important; }
body.ls-cookie-open{ overflow:auto !important; }

/* ===== v12.2 small UI tweaks ===== */

/* Hero image: a bit brighter (top block) */
.ls-hero__visual{ background: transparent; }
.ls-hero__img{ filter: brightness(.98) contrast(1.04) saturate(1.02); background: rgba(0,0,0,.06); }
.ls-hero__visual::after{
  background:
    radial-gradient(60% 80% at 20% 20%, rgba(0,0,0,.07), rgba(0,0,0,0) 60%),
    linear-gradient(180deg, rgba(0,0,0,.04), rgba(0,0,0,.22));
}

/* Footer: privacy policy link */
.ls-footer__bottom-inner a{ color: var(--ls-muted); text-decoration: none; }
.ls-footer__bottom-inner a:hover{ color: var(--ls-text); text-decoration: underline; text-underline-offset: 3px; }

/* ===== v12.4 mobile safe-area + UX ===== */

/* Prevent any "white" flashes/stripes during mobile overscroll. */
html{ background-color:#0b0d10; }

/* iOS gesture bar (home indicator) can't be removed.
   We offset fixed UI and give extra safe-area padding so it doesn't overlap content. */
@supports (padding: max(0px)){
  .ls-float{ bottom: calc(16px + env(safe-area-inset-bottom)); }
  .cookie-popup{ bottom: calc(18px + env(safe-area-inset-bottom)); }
}

@media (max-width: 768px){
  /* Add a little air under the product gallery so the system bar doesn't sit on the photo */
  .ls-product__gallery{ padding-bottom: max(12px, env(safe-area-inset-bottom)); }
}

/* ===== v13 About / Delivery pages ===== */
.ls-info{
  display:flex;
  flex-direction:column;
  gap:16px;
}
.ls-info-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:14px;
}
.ls-info-grid--2{ grid-template-columns:repeat(2, minmax(0,1fr)); }
@media (max-width: 1100px){
  .ls-info-grid{ grid-template-columns:repeat(2, minmax(0,1fr)); }
}
@media (max-width: 600px){
  .ls-info-grid,
  .ls-info-grid--2{ grid-template-columns:1fr; }
}

.ls-info-card{
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  border-radius:var(--ls-radius);
  padding:16px;
  box-shadow:var(--ls-shadow-sm);
}
.ls-info-card__title{ font-weight:1000; margin-bottom:6px; }
.ls-info-card__text{ color:var(--ls-muted); line-height:1.55; }
.ls-info-card__text ul{ margin:8px 0 0 18px; padding:0; }
.ls-info-card__text li{ margin:6px 0; }

.ls-steps{
  margin:0;
  padding-left:18px;
  color:var(--ls-muted);
  line-height:1.65;
}
.ls-steps li{ margin:8px 0; }
.ls-steps strong{ color:var(--ls-text); }

.ls-info-cta{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:4px;
}

.ls-contacts-box{
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  border-radius:var(--ls-radius);
  padding:16px;
  color:var(--ls-muted);
  line-height:1.65;
}
.ls-contacts-box a{ color:var(--ls-text); text-decoration:none; }
.ls-contacts-box a:hover{ text-decoration:underline; text-underline-offset:3px; }

/* ===== v13.2 Product category description spoiler ===== */
.ls-tax-desc{ margin-top:26px; }

.ls-spoiler--tax{
  border:0;
  background:transparent;
  box-shadow:none;
  overflow:visible;
}

.ls-spoiler--tax .ls-spoiler__summary{
  list-style:none;
  cursor:pointer;
  padding:14px 16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.03);
  border-radius:14px;
  font-weight:1000;
}
.ls-spoiler--tax .ls-spoiler__summary::-webkit-details-marker{ display:none; }
.ls-spoiler--tax .ls-spoiler__summary::marker{ content:""; }
.ls-spoiler--tax .ls-spoiler__summary:hover{
  background:rgba(255,255,255,.04);
  border-color:rgba(246,182,10,.30);
}

.ls-spoiler--tax .ls-spoiler__text{ display:flex; flex-direction:column; gap:2px; }
.ls-spoiler--tax .ls-spoiler__kicker{
  font-size:12px;
  color:var(--ls-muted);
  letter-spacing:.08em;
  text-transform:uppercase;
  font-weight:800;
}
.ls-spoiler--tax .ls-spoiler__title{
  font-size:16px;
  color:var(--ls-text);
  font-weight:1000;
}

.ls-spoiler--tax .ls-spoiler__summary::after{
  content:"▾";
  width:34px;
  height:34px;
  border-radius:999px;
  background:rgba(0,0,0,.22);
  border:1px solid rgba(255,255,255,.10);
  display:flex;
  align-items:center;
  justify-content:center;
  opacity:.9;
  transition:transform .18s ease, border-color .18s ease, background .18s ease;
}
.ls-spoiler--tax[open] .ls-spoiler__summary::after{ transform:rotate(180deg); }

.ls-spoiler--tax .ls-spoiler__content{ padding:12px 0 0; }

.ls-desc-mini--tax{ margin-top:0; }
.ls-desc-mini--tax .ls-desc-mini__text{ line-height:1.65; }
.ls-desc-mini--tax .ls-desc-mini__text p{ margin:0 0 10px; }
.ls-desc-mini--tax .ls-desc-mini__text p:last-child{ margin-bottom:0; }
.ls-desc-mini--tax .ls-desc-mini__text ul,
.ls-desc-mini--tax .ls-desc-mini__text ol{ margin:8px 0 12px 18px; padding:0; }
.ls-desc-mini--tax .ls-desc-mini__text li{ margin:6px 0; }
.ls-desc-mini--tax .ls-desc-mini__text h2,
.ls-desc-mini--tax .ls-desc-mini__text h3,
.ls-desc-mini--tax .ls-desc-mini__text h4{ color:var(--ls-text); margin:14px 0 8px; }
.ls-desc-mini--tax .ls-desc-mini__text a{ color:var(--ls-accent); text-decoration:none; }
.ls-desc-mini--tax .ls-desc-mini__text a:hover{ text-decoration:underline; text-underline-offset:3px; }


/* ===== v14.2 Catalog layout: compact toolbar + off-canvas filters ===== */
.ls-shop-toolbar{
  display:flex;
  align-items:center;
  gap:12px;
  margin: 8px 0 16px;
}

.ls-filter-toggle{
  display:inline-flex;
  align-items:center;
  gap:10px;
  border-radius:14px;
  padding:10px 12px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.10);
  color:var(--ls-text);
  cursor:pointer;
  font-weight:900;
}

.ls-filter-toggle:hover{
  border-color:rgba(246,182,10,.28);
  background:rgba(255,255,255,.05);
}

.ls-filter-toggle__icon{ font-size:16px; line-height:1; opacity:.9; }
.ls-filter-toggle__badge{
  width:10px; height:10px;
  border-radius:999px;
  background:rgba(246,182,10,.90);
  box-shadow: 0 0 0 3px rgba(246,182,10,.18);
}

.ls-filter-reset-inline{
  text-decoration:none;
  color:var(--ls-muted);
  border:1px solid rgba(255,255,255,.10);
  background:rgba(0,0,0,.18);
  padding:10px 12px;
  border-radius:14px;
  font-weight:800;
}
.ls-filter-reset-inline:hover{ color:var(--ls-text); border-color:rgba(246,182,10,.28); }

.ls-shop-layout--compact{ display:block; }

/* Drawer */
.ls-drawer{ position:fixed; inset:0; z-index:9999; pointer-events:none; }
.ls-drawer__backdrop{ position:absolute; inset:0; background:rgba(0,0,0,.55); opacity:0; transition:opacity .18s ease; }
.ls-drawer__panel{
  position:absolute; top:0; left:0; bottom:0;
  width:min(380px, 92vw);
  background:rgba(10,12,16,.98);
  border-right:1px solid rgba(255,255,255,.10);
  transform:translateX(-102%);
  transition:transform .18s ease;
  padding:12px;
  overflow:auto;
  -webkit-overflow-scrolling: touch;
}

.ls-drawer.is-open{ pointer-events:auto; }
.ls-drawer.is-open .ls-drawer__backdrop{ opacity:1; }
.ls-drawer.is-open .ls-drawer__panel{ transform:translateX(0); }

.ls-drawer__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:6px 4px 10px;
  border-bottom:1px solid rgba(255,255,255,.08);
  margin:0 0 10px;
}

.ls-drawer__title{ font-weight:1000; font-size:16px; }
.ls-drawer__close{
  width:40px; height:40px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.04);
  color:var(--ls-text);
  cursor:pointer;
  font-size:22px;
  line-height:1;
}
.ls-drawer__close:hover{ border-color:rgba(246,182,10,.28); background:rgba(255,255,255,.06); }

.ls-filter-card{
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  padding:14px;
}

.ls-filter-card--drawer{ border-radius:18px; padding:12px; }

.ls-filter-card__title{
  font-weight:1000;
  font-size:16px;
  margin:0 0 10px;
  display:flex;
  align-items:center;
  justify-content:space-between;
}

.ls-filter-section__title{
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--ls-muted);
  font-weight:900;
  margin:0 0 10px;
}

.ls-filter-link{
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px 12px;
  border-radius:12px;
  text-decoration:none;
  color:var(--ls-text);
  border:1px solid rgba(255,255,255,.08);
  background:rgba(0,0,0,.18);
  transition:background .15s ease, border-color .15s ease, transform .15s ease;
}

.ls-filter-link:hover{
  background:rgba(255,255,255,.05);
  border-color:rgba(246,182,10,.28);
}

.ls-filter-link.is-current{
  border-color:rgba(246,182,10,.50);
  background:rgba(246,182,10,.10);
}

.ls-filter-link.is-active{
  border-color:rgba(246,182,10,.26);
}

.ls-filter-link--all{ margin-bottom:10px; }
.ls-filter-link--parent{ margin:8px 0 10px; font-weight:900; }

.ls-filter-cat{
  margin:10px 0;
  border-radius:14px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.02);
}

.ls-filter-cat__summary{
  list-style:none;
  cursor:pointer;
  padding:12px 12px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  font-weight:1000;
}
.ls-filter-cat__summary::-webkit-details-marker{ display:none; }
.ls-filter-cat__summary::marker{ content:""; }

.ls-filter-cat__summary::after{
  content:"▾";
  width:28px;
  height:28px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(0,0,0,.22);
  display:flex;
  align-items:center;
  justify-content:center;
  opacity:.9;
  transition:transform .18s ease;
  flex:0 0 auto;
}
.ls-filter-cat[open] .ls-filter-cat__summary::after{ transform:rotate(180deg); }

.ls-filter-cat__body{ padding:0 12px 12px; }

.ls-filter-list{
  margin:0;
  padding:0;
  list-style:none;
  display:flex;
  flex-direction:column;
  gap:8px;
}

.ls-filter-list--lvl2 .ls-filter-link{
  padding:10px 12px;
}

.ls-filter-list--lvl3{
  margin-top:8px;
  margin-left:12px;
  padding-left:12px;
  border-left:1px solid rgba(255,255,255,.10);
}

.ls-filter-link--lvl3{
  font-size:14px;
  padding:9px 12px;
}

/* Real WooCommerce filter widgets (price + attributes) */
.ls-filter-reset{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  margin:2px 0 10px;
  padding:10px 12px;
  border-radius:12px;
  text-decoration:none;
  color:var(--ls-text);
  border:1px solid rgba(246,182,10,.28);
  background:rgba(246,182,10,.08);
  font-weight:900;
}
.ls-filter-reset:hover{ background:rgba(246,182,10,.12); }

.ls-filter-widgets{ display:flex; flex-direction:column; gap:12px; }

.ls-wc-widget{
  border:1px solid rgba(255,255,255,.08);
  background:rgba(0,0,0,.18);
  border-radius:14px;
  padding:12px;
}

.ls-wc-widget__title{
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--ls-muted);
  font-weight:900;
  margin:0 0 10px;
}

.ls-wc-widget ul{
  margin:0;
  padding:0;
  list-style:none;
  display:flex;
  flex-direction:column;
  gap:8px;
}

.ls-wc-widget a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:10px 12px;
  border-radius:12px;
  text-decoration:none;
  color:var(--ls-text);
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.02);
}

.ls-wc-widget a:hover{
  background:rgba(255,255,255,.05);
  border-color:rgba(246,182,10,.28);
}

.ls-wc-widget .count,
.ls-wc-widget .woocommerce-widget-layered-nav-list__item span{
  color:var(--ls-muted);
  font-weight:900;
  margin-left:8px;
}

/* Price filter slider */
.widget_price_filter .price_slider_wrapper{ margin-top:6px; }
.widget_price_filter .price_slider{ margin:10px 6px 14px; }
.widget_price_filter .ui-slider{
  position:relative;
  height:4px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
}
.widget_price_filter .ui-slider-range{
  position:absolute;
  height:100%;
  border-radius:999px;
  background:rgba(246,182,10,.45);
}
.widget_price_filter .ui-slider-handle{
  position:absolute;
  top:50%;
  width:16px;
  height:16px;
  border-radius:999px;
  transform:translate(-50%, -50%);
  background:rgba(0,0,0,.65);
  border:1px solid rgba(246,182,10,.55);
}
.widget_price_filter .price_slider_amount{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  font-size:14px;
}
.widget_price_filter .price_slider_amount .button{
  padding:10px 12px;
  border-radius:12px;
  border:1px solid rgba(246,182,10,.35);
  background:rgba(246,182,10,.12);
  color:var(--ls-text);
  font-weight:900;
}
.widget_price_filter .price_slider_amount .button:hover{ background:rgba(246,182,10,.18); }



/* ===== v6.14: Pretty filter drawer (compact, premium look) ===== */

/* Softer backdrop + slight blur */
.ls-drawer__backdrop{
  background: rgba(0,0,0,.58);
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
}

/* Panel becomes a real "sheet" with shadow + rounded edge */
.ls-drawer__panel{
  padding:0;
  width:min(420px, 92vw);
  background: linear-gradient(180deg, rgba(18,22,30,.98) 0%, rgba(10,12,16,.98) 100%);
  border-right:1px solid rgba(255,255,255,.10);
  border-radius:0 22px 22px 0;
  box-shadow: 0 30px 90px rgba(0,0,0,.55);
  overflow:hidden;
  display:flex;
  flex-direction:column;
}

.ls-drawer__head{
  margin:0;
  padding:14px 14px 12px;
  border-bottom:1px solid rgba(255,255,255,.08);
  background: rgba(10,12,16,.70);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

.ls-drawer__title{
  display:flex;
  align-items:center;
  gap:10px;
  font-weight:1000;
}

.ls-drawer__title-icon{
  width:34px;
  height:34px;
  border-radius:12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.04);
  opacity:.95;
}

.ls-drawer__body{
  flex:1 1 auto;
  overflow:auto;
  -webkit-overflow-scrolling: touch;
  padding:12px 14px 14px;
}

.ls-drawer__foot{
  display:flex;
  gap:10px;
  padding:12px 14px calc(12px + env(safe-area-inset-bottom));
  border-top:1px solid rgba(255,255,255,.08);
  background: rgba(10,12,16,.76);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

.ls-drawer__foot .ls-btn{
  flex: 1 1 auto;
  border-radius:14px;
}

.ls-drawer__reset{ min-width: 120px; }
.ls-drawer__done{ min-width: 140px; }

/* Drawer content: remove extra "card inside card" heaviness */
.ls-filter-card--drawer{
  background: transparent;
  border:0;
  padding:0;
  border-radius:0;
}

/* Accordion sections */
.ls-filter-acc{
  margin:0 0 12px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.18);
  overflow:hidden;
}

.ls-filter-acc__summary{
  list-style:none;
  cursor:pointer;
  padding:12px 12px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  font-weight:1000;
}
.ls-filter-acc__summary::-webkit-details-marker{ display:none; }
.ls-filter-acc__summary::marker{ content:""; }

.ls-filter-acc__title{ font-weight:1000; }
.ls-filter-acc__meta{
  font-size:12px;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--ls-muted);
  font-weight:900;
  margin-left:auto;
  opacity:.92;
}

.ls-filter-acc__summary::after{
  content:"▾";
  width:30px;
  height:30px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.22);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  opacity:.92;
  transition: transform .18s ease;
  flex: 0 0 auto;
}
.ls-filter-acc[open] .ls-filter-acc__summary::after{ transform: rotate(180deg); }

.ls-filter-acc__body{ padding:0 12px 12px; }

/* Make links slightly tighter inside the drawer */
.ls-filter-acc .ls-filter-link,
.ls-filter-acc .ls-wc-widget a{
  padding:9px 12px;
  border-radius:12px;
}

/* Parent-category cards: lighter look inside accordion */
.ls-filter-acc--cats .ls-filter-cat{
  margin:8px 0;
  border-radius:14px;
  background: rgba(255,255,255,.02);
}

/* "Chosen filters" widget as compact chips */
.ls-wc-widget--chips{
  border:1px solid rgba(246,182,10,.22);
  background: rgba(246,182,10,.06);
}
.ls-wc-widget--chips ul{
  flex-direction:row;
  flex-wrap:wrap;
  gap:8px;
}
.ls-wc-widget--chips a{
  justify-content:flex-start;
  padding:9px 12px;
  border-radius:999px;
  border:1px solid rgba(246,182,10,.20);
  background: rgba(0,0,0,.18);
}
.ls-wc-widget--chips a:hover{
  border-color: rgba(246,182,10,.38);
  background: rgba(0,0,0,.24);
}
.ls-wc-widget--chips a::after{
  content:"×";
  margin-left:10px;
  font-size:18px;
  line-height:1;
  opacity:.75;
}

/* Woo chosen items (layered nav) */
.ls-wc-widget .woocommerce-widget-layered-nav-list__item--chosen a,
.ls-wc-widget .chosen a{
  border-color: rgba(246,182,10,.45);
  background: rgba(246,182,10,.10);
}

/* Reduce motion */
@media (prefers-reduced-motion: reduce){
  .ls-drawer__backdrop,
  .ls-drawer__panel,
  .ls-filter-acc__summary::after{
    transition:none !important;
  }
}


/* ===== v6.15: Shop filters (Restoinox-like) ===== */

/* Grid layout for shop pages */
.ls-shop-grid{ display:block; }

/* Off-canvas filters for mobile (used when html.ls-filters-open is set by JS) */
.ls-shop-filters{ position:fixed; inset:0; z-index:9999; pointer-events:none; }
.ls-shop-filters__panel{
  position:absolute;
  top:0; left:0; bottom:0;
  width:min(380px, 92vw);
  background: rgba(14,16,20,.98);
  border-right: 1px solid rgba(255,255,255,.12);
  transform: translateX(-102%);
  transition: transform .20s ease;
  display:flex;
  flex-direction:column;
  overflow:hidden;
}
html.ls-filters-open .ls-shop-filters{ pointer-events:auto; }
html.ls-filters-open .ls-shop-filters__panel{ transform: translateX(0); }

.ls-shop-filters__backdrop{
  position:fixed;
  inset:0;
  z-index:9998;
  background: rgba(0,0,0,.58);
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
  opacity:0;
  transition: opacity .20s ease;
}
html.ls-filters-open .ls-shop-filters__backdrop{ opacity:1; }

.ls-shop-filters__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px 14px;
  border-bottom: 1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.18);
}

.ls-shop-filters__head-title{
  display:flex;
  align-items:center;
  gap:10px;
  font-weight:1000;
  letter-spacing:.06em;
  text-transform:uppercase;
  font-size:12px;
  color: var(--ls-muted);
}

.ls-shop-filters__head-icon{
  width:30px;
  height:30px;
  border-radius:12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.04);
  color: var(--ls-text);
  font-size:15px;
}

.ls-shop-filters__close{
  width:40px;
  height:40px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.04);
  color: var(--ls-text);
  cursor:pointer;
  font-size:22px;
  line-height:1;
}

.ls-shop-filters__close:hover{ border-color: rgba(246,182,10,.28); background: rgba(255,255,255,.06); }

.ls-shop-filters__body{
  flex:1 1 auto;
  overflow:auto;
  -webkit-overflow-scrolling: touch;
}

/* Desktop: sidebar (not bulky, toggled) */
@media (min-width: 992px){
  .ls-shop-grid{
    display:grid;
    grid-template-columns: 1fr;
    gap:18px;
    align-items:start;
  }
  html.ls-filters-open .ls-shop-grid{ grid-template-columns: 300px 1fr; }

  /* Sidebar only exists when opened */
  .ls-shop-filters{ position:relative; inset:auto; z-index:auto; pointer-events:auto; display:none; }
  html.ls-filters-open .ls-shop-filters{ display:block; }

  .ls-shop-filters__panel{
    position:sticky;
    top:110px;
    width:auto;
    transform:none;
    transition:none;
    border-radius:16px;
    border:1px solid rgba(255,255,255,.10);
    box-shadow: 0 18px 50px rgba(0,0,0,.35);
    max-height: calc(100vh - 130px);
  }

  .ls-shop-filters__backdrop{ display:none !important; }
}

/* Compact accordion blocks inside the filter panel */
.ls-shop-filters .ls-filter-acc,
.ls-shop-filters .ls-filter-sec{
  margin:0;
  border:0;
  border-bottom: 1px solid rgba(255,255,255,.08);
  border-radius:0;
  background: transparent;
}
.ls-shop-filters .ls-filter-acc:last-child,
.ls-shop-filters .ls-filter-sec:last-child{ border-bottom:0; }

.ls-filter-acc__summary,
.ls-filter-sec__summary{
  list-style:none;
  cursor:pointer;
  padding:12px 14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  font-weight:1000;
}
.ls-filter-acc__summary::-webkit-details-marker,
.ls-filter-sec__summary::-webkit-details-marker{ display:none; }
.ls-filter-acc__summary::marker,
.ls-filter-sec__summary::marker{ content:""; }

.ls-filter-acc__title,
.ls-filter-sec__title{ font-weight:1000; }

.ls-filter-acc__summary::after{
  content:"▾";
  width:28px;
  height:28px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.18);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  opacity:.92;
  transition: transform .18s ease;
  flex: 0 0 auto;
}

/* Chev for widget accordions */
.ls-filter-sec__chev{
  width:28px;
  height:28px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.18);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  opacity:.92;
  flex: 0 0 auto;
}
.ls-filter-sec__chev::before{
  content:"▾";
  display:block;
  transition: transform .18s ease;
}

.ls-filter-acc[open] .ls-filter-acc__summary::after{ transform: rotate(180deg); }
.ls-filter-sec[open] .ls-filter-sec__chev::before{ transform: rotate(180deg); }

.ls-filter-acc__body,
.ls-filter-sec__body{
  padding:12px 14px 14px;
  background: rgba(0,0,0,.12);
}

/* Category tree: make links lighter & more list-like */
.ls-shop-filters .ls-filter-link{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:10px 10px;
  border-radius:12px;
  text-decoration:none;
  color: var(--ls-text);
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.02);
}
.ls-shop-filters .ls-filter-link:hover{ background: rgba(255,255,255,.05); border-color: rgba(246,182,10,.28); }
.ls-shop-filters .ls-filter-link.is-current{ border-color: rgba(246,182,10,.55); background: rgba(246,182,10,.10); }

.ls-shop-filters .ls-filter-link--parent{ font-weight:1000; margin:8px 0 10px; }
.ls-shop-filters .ls-filter-link--all{ margin-bottom:10px; }

.ls-shop-filters .ls-filter-cat{
  margin:10px 0;
  border-radius:14px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.02);
}

.ls-shop-filters .ls-filter-cat__summary{ padding:12px 12px; }
.ls-shop-filters .ls-filter-cat__body{ padding:0 12px 12px; }

/* WooCommerce widget lists (attributes) */
.ls-shop-filters .ls-filter-sec__body ul{
  margin:0;
  padding:0;
  list-style:none;
  display:flex;
  flex-direction:column;
  gap:8px;
}

.ls-shop-filters .ls-filter-sec__body a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:10px 10px;
  border-radius:12px;
  text-decoration:none;
  color: var(--ls-text);
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.02);
}
.ls-shop-filters .ls-filter-sec__body a:hover{ background: rgba(255,255,255,.05); border-color: rgba(246,182,10,.28); }

.ls-shop-filters .woocommerce-widget-layered-nav-list__item--chosen a,
.ls-shop-filters .chosen a{
  border-color: rgba(246,182,10,.55);
  background: rgba(246,182,10,.10);
}

.ls-shop-filters .count,
.ls-shop-filters .woocommerce-widget-layered-nav-list__item span{
  color: var(--ls-muted);
  font-weight:900;
  margin-left:8px;
}

/* Price filter: show min/max inputs like in the reference */
.ls-shop-filters .widget_price_filter label{ display:none; }
.ls-shop-filters .widget_price_filter .price_slider_wrapper{ margin-top:6px; }
.ls-shop-filters .widget_price_filter .price_slider{ margin:12px 6px 14px; }

.ls-shop-filters .widget_price_filter .price_slider_amount{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
}

.ls-shop-filters .widget_price_filter .price_slider_amount input[type="text"]{
  width: calc(50% - 5px);
  padding:10px 12px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.03);
  color: var(--ls-text);
  font-weight:900;
}

.ls-shop-filters .widget_price_filter .price_slider_amount .button{
  width:100%;
  padding:10px 12px;
  border-radius:12px;
  border:1px solid rgba(246,182,10,.35);
  background: rgba(246,182,10,.12);
  color: var(--ls-text);
  font-weight:1000;
}
.ls-shop-filters .widget_price_filter .price_slider_amount .button:hover{ background: rgba(246,182,10,.18); }

.ls-shop-filters .widget_price_filter .price_label{ display:none; }

/* Chips widget (active filters): compact look */
.ls-filter-sec--chips .ls-filter-sec__body ul{
  flex-direction:row;
  flex-wrap:wrap;
  gap:8px;
}
.ls-filter-sec--chips .ls-filter-sec__body a{
  justify-content:flex-start;
  border-radius:999px;
  padding:9px 12px;
  border-color: rgba(246,182,10,.24);
  background: rgba(0,0,0,.18);
}
.ls-filter-sec--chips .ls-filter-sec__body a::after{
  content:"×";
  margin-left:10px;
  font-size:18px;
  line-height:1;
  opacity:.75;
}

/* Reduce motion */
@media (prefers-reduced-motion: reduce){
  .ls-shop-filters__panel,
  .ls-shop-filters__backdrop{
    transition:none !important;
  }
}

/* ===== v6.16: More compact expanded filter panel ===== */

/* Make the opened panel less bulky (spacing + sizes) */
.ls-shop-filters__head{ padding:10px 12px; }
.ls-shop-filters__head-title{ gap:8px; font-size:11px; }
.ls-shop-filters__head-icon{ width:26px; height:26px; border-radius:10px; font-size:14px; }
.ls-shop-filters__close{ width:34px; height:34px; border-radius:12px; font-size:20px; }

/* Default (mobile) panel width a bit narrower */
.ls-shop-filters__panel{ width:min(340px, 92vw); }

/* Desktop: keep full auto width (grid column controls it) */
@media (min-width: 992px){
  .ls-shop-filters__panel{ width:auto; }
  html.ls-filters-open .ls-shop-grid{ grid-template-columns: 280px 1fr; }
}

.ls-filter-acc__summary,
.ls-filter-sec__summary{
  padding:10px 12px;
  font-size:14px;
}

.ls-filter-acc__summary::after,
.ls-filter-sec__chev{
  width:24px;
  height:24px;
}

.ls-filter-acc__body,
.ls-filter-sec__body{
  padding:10px 12px 12px;
}

/* Category tree: smaller paddings */
.ls-shop-filters .ls-filter-link{
  padding:8px 10px;
  border-radius:10px;
  gap:8px;
  font-size:14px;
}

.ls-shop-filters .ls-filter-link--parent{ margin:6px 0 8px; }
.ls-shop-filters .ls-filter-link--all{ margin-bottom:8px; }

.ls-shop-filters .ls-filter-cat{
  margin:8px 0;
  border-radius:12px;
}
.ls-shop-filters .ls-filter-cat__summary{ padding:10px 10px; }
.ls-shop-filters .ls-filter-cat__body{ padding:0 10px 10px; }

/* Widgets: denser lists */
.ls-shop-filters .ls-filter-sec__body ul{ gap:6px; }
.ls-shop-filters .ls-filter-sec__body a{
  padding:8px 10px;
  border-radius:10px;
  gap:8px;
  font-size:14px;
}

/* Price filter: smaller inputs/buttons */
.ls-shop-filters .widget_price_filter .price_slider{ margin:10px 4px 12px; }
.ls-shop-filters .widget_price_filter .price_slider_amount{ gap:8px; }
.ls-shop-filters .widget_price_filter .price_slider_amount input[type="text"]{
  padding:8px 10px;
  border-radius:10px;
  font-size:13px;
}
.ls-shop-filters .widget_price_filter .price_slider_amount .button{
  padding:9px 10px;
  border-radius:10px;
  font-size:13px;
}

/* Chips: tighter */
.ls-filter-sec--chips .ls-filter-sec__body ul{ gap:6px; }
.ls-filter-sec--chips .ls-filter-sec__body a{ padding:7px 10px; }

/* Desktop: show attribute terms in 2 columns to save height */
@media (min-width: 992px){
  .ls-shop-filters .widget_layered_nav .ls-filter-sec__body ul{
    display:grid;
    grid-template-columns: 1fr 1fr;
    gap:6px;
  }
  .ls-shop-filters .widget_layered_nav .ls-filter-sec__body a{
    width:100%;
  }
}


/* ===== v6.17: Standard-looking filters (clean, compact, familiar) ===== */

/* Make filter sections look like common e-commerce cards */
.ls-shop-filters .ls-filter-acc,
.ls-shop-filters .ls-filter-sec{
  margin:10px 10px 0;
  border:1px solid rgba(255,255,255,.10);
  border-radius:14px;
  overflow:hidden;
  background: rgba(255,255,255,.02);
}

.ls-shop-filters .ls-filter-acc:last-child,
.ls-shop-filters .ls-filter-sec:last-child{
  margin-bottom:12px;
}

.ls-filter-acc__summary,
.ls-filter-sec__summary{
  padding:11px 12px;
  background: rgba(0,0,0,.18);
  font-size:13px;
}

/* Replace round chevrons with simple +/- (more “standard”) */
.ls-filter-acc__summary::after{
  content:"+";
  width:auto;
  height:auto;
  border:0;
  background:transparent;
  border-radius:0;
  font-size:18px;
  font-weight:900;
  opacity:.70;
  transform:none;
}
.ls-filter-acc[open] .ls-filter-acc__summary::after{ content:"–"; }

.ls-filter-sec__chev{
  width:auto;
  height:auto;
  border:0;
  background:transparent;
  border-radius:0;
  opacity:.70;
}
.ls-filter-sec__chev::before{
  content:"+";
  font-size:18px;
  font-weight:900;
  transform:none;
}
.ls-filter-sec[open] .ls-filter-sec__chev::before{ content:"–"; }

/* Body: remove heavy inner blocks, keep clean spacing */
.ls-filter-acc__body,
.ls-filter-sec__body{
  padding:8px 10px 10px;
  background: transparent;
}

/* Category links: make them look like standard navigation list (not pills) */
.ls-shop-filters .ls-filter-link{
  border:0;
  background: transparent;
  border-radius:10px;
  padding:7px 8px;
}
.ls-shop-filters .ls-filter-link:hover{
  background: rgba(255,255,255,.05);
  border-color: transparent;
}
.ls-shop-filters .ls-filter-link.is-current{
  background: rgba(246,182,10,.12);
}

/* Parent category “folder” header */
.ls-shop-filters .ls-filter-cat{
  border:0;
  background:transparent;
  margin:8px 0;
  border-radius:12px;
}
.ls-shop-filters .ls-filter-cat__summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:9px 10px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.02);
}
.ls-shop-filters .ls-filter-cat__summary::after{
  content:"▸";
  opacity:.70;
  font-size:14px;
  transition: transform .16s ease;
}
.ls-shop-filters .ls-filter-cat[open] .ls-filter-cat__summary::after{ transform: rotate(90deg); }

.ls-shop-filters .ls-filter-cat__body{
  padding:8px 0 0 10px;
}

.ls-shop-filters .ls-filter-list--lvl2{ margin-top:6px; }
.ls-shop-filters .ls-filter-list--lvl2,
.ls-shop-filters .ls-filter-list--lvl3{
  display:flex;
  flex-direction:column;
  gap:2px;
}
.ls-shop-filters .ls-filter-link--lvl3{ opacity:.92; padding-left:16px; font-size:13px; }

/* Woo widgets: standard checkbox list rows */
.ls-shop-filters .ls-filter-sec--wc .ls-filter-sec__body ul{ gap:0; }
.ls-shop-filters .ls-filter-sec--wc .ls-filter-sec__body li{
  border-bottom:1px solid rgba(255,255,255,.06);
}
.ls-shop-filters .ls-filter-sec--wc .ls-filter-sec__body li:last-child{ border-bottom:0; }

.ls-shop-filters .ls-filter-sec--wc .ls-filter-sec__body a{
  position:relative;
  border:0;
  background:transparent;
  border-radius:10px;
  padding:8px 8px 8px 34px;
}
.ls-shop-filters .ls-filter-sec--wc .ls-filter-sec__body a:hover{
  background: rgba(255,255,255,.05);
  border-color: transparent;
}

/* “Checkbox” square */
.ls-shop-filters .ls-filter-sec--wc .ls-filter-sec__body a::before{
  content:"";
  position:absolute;
  left:10px;
  top:50%;
  transform: translateY(-50%);
  width:16px;
  height:16px;
  border-radius:5px;
  border:1px solid rgba(255,255,255,.18);
  background: rgba(0,0,0,.20);
}

/* Checked state (chosen) */
.ls-shop-filters .ls-filter-sec--wc .woocommerce-widget-layered-nav-list__item--chosen a::before,
.ls-shop-filters .ls-filter-sec--wc .chosen a::before{
  border-color: rgba(246,182,10,.70);
  background: rgba(246,182,10,.22);
}
.ls-shop-filters .ls-filter-sec--wc .woocommerce-widget-layered-nav-list__item--chosen a::after,
.ls-shop-filters .ls-filter-sec--wc .chosen a::after{
  content:"✓";
  position:absolute;
  left:13px;
  top:50%;
  transform: translateY(-50%);
  font-size:12px;
  font-weight:1000;
  opacity:.95;
}

/* Make counts smaller and aligned */
.ls-shop-filters .ls-filter-sec--wc .count,
.ls-shop-filters .ls-filter-sec--wc .woocommerce-widget-layered-nav-list__item span{
  font-size:12px;
  opacity:.85;
}

/* Long lists: keep panel compact */
.ls-shop-filters .widget_layered_nav .ls-filter-sec__body{
  max-height: 280px;
  overflow:auto;
}

/* Desktop: switch back to a single column for “standard” feel */
@media (min-width: 992px){
  .ls-shop-filters .widget_layered_nav .ls-filter-sec__body ul{
    display:flex;
    flex-direction:column;
    gap:0;
  }
}



/* ===== v14.3 Smart catalog (marketplace UX) ===== */

/* Header search suggestions */
.ls-search--suggest{ position:relative; }
.ls-search-suggest{
  position:absolute;
  left:0; right:0;
  top:calc(100% + 8px);
  z-index:60;
  background: rgba(14,16,20,.98);
  border:1px solid rgba(255,255,255,.12);
  border-radius:16px;
  box-shadow: 0 18px 50px rgba(0,0,0,.45);
  overflow:hidden;
}
.ls-suggest-sec{
  padding:10px 10px 8px;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.ls-suggest-sec:last-child{ border-bottom:0; }
.ls-suggest-sec__title{
  font-size:11px;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--ls-muted);
  font-weight:900;
  margin:4px 4px 8px;
}
.ls-suggest-item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 12px;
  border-radius:12px;
  text-decoration:none;
  color:var(--ls-text);
  border:1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.02);
  margin:0 0 8px;
}
.ls-suggest-item:last-child{ margin-bottom:0; }
.ls-suggest-item:hover{
  background: rgba(255,255,255,.05);
  border-color: rgba(246,182,10,.28);
}
.ls-suggest-item__name{ font-weight:900; }
.ls-suggest-item__meta{ color:var(--ls-muted); font-size:12px; text-align:right; }

.ls-suggest-all{
  display:block;
  padding:12px 12px;
  text-decoration:none;
  color:var(--ls-accent);
  font-weight:1000;
  background: rgba(0,0,0,.18);
}
.ls-suggest-all:hover{ background: rgba(246,182,10,.08); }

@media (max-width: 991px){
  .ls-search-suggest{ border-radius:18px; }
}

/* Catalog drawer (mega menu) */
.ls-drawer--catalog .ls-drawer__panel{ width:min(520px, 92vw); }

.ls-catalog-drawer{
  display:flex;
  flex-direction:column;
  gap:12px;
  padding:4px 2px 18px;
}

.ls-catalog-drawer__all{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:10px 12px;
  border-radius:14px;
  text-decoration:none;
  font-weight:1000;
  color:var(--ls-text);
  border:1px solid rgba(246,182,10,.30);
  background: rgba(246,182,10,.10);
}
.ls-catalog-drawer__all:hover{ background: rgba(246,182,10,.14); border-color: rgba(246,182,10,.55); }

.ls-catalog-drawer__grid{
  display:grid;
  grid-template-columns: 1fr;
  gap:12px;
}

@media (min-width: 768px){
  .ls-catalog-drawer__grid{ grid-template-columns: 1fr 1fr; }
}

.ls-catalog-drawer__group{
  border:1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.02);
  border-radius:16px;
  padding:12px;
}

.ls-catalog-drawer__parent{
  display:block;
  text-decoration:none;
  font-weight:1000;
  color:var(--ls-text);
  margin:0 0 10px;
}
.ls-catalog-drawer__parent:hover{ color:var(--ls-accent); }

.ls-catalog-drawer__children{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.ls-catalog-drawer__child{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:10px 10px;
  border-radius:12px;
  text-decoration:none;
  color:var(--ls-text);
  border:1px solid rgba(255,255,255,.08);
  background: rgba(0,0,0,.18);
}
.ls-catalog-drawer__child:hover{ background: rgba(255,255,255,.05); border-color: rgba(246,182,10,.25); }

/* Mobile filters: tabs + bottom actions (Категории / Фильтры) */
.ls-shop-filters__tabs{
  display:flex;
  gap:8px;
  padding:10px 12px;
  border-bottom:1px solid rgba(255,255,255,.08);
  background: rgba(0,0,0,.14);
}

.ls-shop-filters__tab{
  flex:1 1 0;
  padding:9px 10px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
  color: var(--ls-muted);
  font-weight:1000;
  cursor:pointer;
}

.ls-shop-filters__tab.is-active{
  color: var(--ls-text);
  border-color: rgba(246,182,10,.35);
  background: rgba(246,182,10,.10);
}

.ls-shop-filters__pane{ display:none; }
.ls-shop-filters__pane.is-active{ display:block; }

.ls-shop-filters__foot{
  display:flex;
  gap:10px;
  padding:12px 14px;
  border-top:1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.18);
}

.ls-shop-filters__reset{
  flex:0 0 auto;
  padding:9px 10px;
  border-radius:12px;
  text-decoration:none;
  color: var(--ls-text);
  border:1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.03);
  font-weight:900;
}
.ls-shop-filters__reset:hover{ border-color: rgba(246,182,10,.25); background: rgba(255,255,255,.05); }

.ls-shop-filters__apply{
  flex:1 1 auto;
  padding:9px 10px;
  border-radius:12px;
  border:1px solid rgba(246,182,10,.30);
  background: rgba(246,182,10,.12);
  color: var(--ls-text);
  font-weight:1000;
  cursor:pointer;
}
.ls-shop-filters__apply:hover{ background: rgba(246,182,10,.16); border-color: rgba(246,182,10,.55); }

@media (max-width: 991px){
  /* Full-width sheet on mobile */
  .ls-shop-filters__panel{ width:100vw; }
}

@media (min-width: 992px){
  /* Tabs and mobile actions are hidden on desktop */
  .ls-shop-filters__tabs{ display:none; }
  .ls-shop-filters__pane{ display:block !important; }
  .ls-shop-filters__foot{ display:none; }
}


/* ==========================================================
   v6.19 Marketplace-like catalog filters (RestoShop style)
   ========================================================== */

/* Layout: desktop = 2 columns (filters + products). Mobile keeps off-canvas. */
@media (min-width: 992px){
  .ls-shop-grid--market{
    display:grid;
    grid-template-columns: 320px minmax(0, 1fr);
    gap:18px;
    align-items:start;
  }
  .ls-shop-grid--market .ls-shop-filters{
    position:relative;
    inset:auto;
    display:block;
    pointer-events:auto;
  }
  .ls-shop-grid--market .ls-shop-filters__panel{
    transform:none !important;
    width:auto;
    max-width:none;
    border-radius:18px;
    height:auto;
    max-height:none;
    background: rgba(255,255,255,.02);
    border:1px solid rgba(255,255,255,.10);
  }
  .ls-shop-grid--market .ls-shop-filters__head{
    position:sticky;
    top:14px;
    border-top-left-radius:18px;
    border-top-right-radius:18px;
    background: rgba(0,0,0,.22);
    backdrop-filter: blur(10px);
    z-index:2;
  }
  .ls-shop-grid--market .ls-shop-filters__body{
    padding-bottom:14px;
  }
  .ls-shop-grid--market .ls-shop-filters__close{ display:none; }
  .ls-shop-grid--market .ls-shop-filters__backdrop{ display:none !important; }
  .ls-shop-grid--market .ls-shop-filters__foot{ display:none !important; }
  .ls-shop-toolbar--mobile{ display:none; }
}

@media (max-width: 991px){
  .ls-shop-toolbar--mobile{ display:flex; }
}

/* Main content wrapper */
.ls-shop-main{ min-width:0; }

/* Active filters bar (like "Активные фильтры" box) */
.ls-afilters-bar{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  padding:14px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.02);
  margin: 0 0 16px;
}

.ls-afilters-bar__title{
  font-weight:1000;
  letter-spacing:.02em;
  text-transform:uppercase;
  font-size:12px;
  color: rgba(255,255,255,.80);
  margin-bottom:8px;
}

.ls-afilters{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.ls-afilters--empty{
  color: rgba(255,255,255,.55);
  font-size:13px;
}

.ls-afilter{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:7px 10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.14);
  background: rgba(0,0,0,.18);
  text-decoration:none;
  color: var(--ls-text);
  font-size:13px;
  line-height:1;
}
.ls-afilter:hover{ border-color: rgba(246,182,10,.35); background: rgba(246,182,10,.06); }

.ls-afilter__x{
  display:inline-flex;
  width:18px;
  height:18px;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  font-weight:900;
}

.ls-afilters-count{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.18);
  color: rgba(255,255,255,.85);
  font-weight:900;
  font-size:12px;
  white-space:nowrap;
}

/* Marketplace filter card */
.ls-mp-filters{ display:block; }

.ls-mp-filters__form{ display:grid; gap:12px; }

.ls-mp-field{ display:grid; gap:8px; }

.ls-mp-label{
  font-size:11px;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
  color: rgba(255,255,255,.75);
}
.ls-mp-label--mt{ margin-top:2px; }

.ls-mp-input,
.ls-mp-select{
  width:100%;
  padding:9px 10px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(0,0,0,.20);
  color: var(--ls-text);
  outline:none;
  font-size:13px;
}

/*
  Category dropdown: custom <details>/<summary> instead of native <select>.
  This keeps the black/gold theme consistent across browsers and ensures
  category navigation always leads to real category pages.
*/
.ls-mp-dd{ display:block; }

.ls-mp-dd__summary{
  width:100%;
  padding:9px 10px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(0,0,0,.20);
  color: var(--ls-text);
  outline:none;
  font-size:13px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  cursor:pointer;
  user-select:none;
}
.ls-mp-dd__summary::-webkit-details-marker{ display:none; }

.ls-mp-dd__value{ font-weight:900; color: rgba(255,255,255,.92); }
.ls-mp-dd__arrow{ color: rgba(255,255,255,.55); transition: transform .18s ease; }

.ls-mp-dd[open] .ls-mp-dd__summary{
  border-color: rgba(246,182,10,.45);
  box-shadow: 0 0 0 3px rgba(246,182,10,.10);
}
.ls-mp-dd[open] .ls-mp-dd__arrow{ transform: rotate(180deg); }

.ls-mp-dd__menu{
  margin-top:8px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(10,12,15,.96);
  padding:6px;
  max-height: 260px;
  overflow:auto;
}

.ls-mp-dd__item{
  display:flex;
  align-items:center;
  padding:10px 10px;
  border-radius:10px;
  text-decoration:none;
  color: rgba(255,255,255,.88);
  font-weight:900;
}
.ls-mp-dd__item--child{
  padding-left:18px;
  font-weight:800;
  color: rgba(255,255,255,.82);
}

.ls-mp-dd__item:hover{ background: rgba(246,182,10,.08); }
.ls-mp-dd__item.is-active{
  background: rgba(246,182,10,.14);
  box-shadow: inset 0 0 0 1px rgba(246,182,10,.35);
}

/*
  IMPORTANT: Native <select> dropdowns on some browsers inherit the text color
  (white) but keep a light dropdown background, making options unreadable.
  Use a dark color-scheme when supported and provide safe option styles.
*/
.ls-mp-select{ color-scheme: dark; }
.ls-mp-select option,
.ls-mp-select optgroup{
  background: #0f1318;
  color: rgba(255,255,255,.92);
}
@supports (color-scheme: dark){
  .ls-mp-select option,
  .ls-mp-select optgroup{
    background: #0f1318;
    color: rgba(255,255,255,.92);
  }
}

.ls-mp-input::placeholder{ color: rgba(255,255,255,.42); }

.ls-mp-input:focus,
.ls-mp-select:focus{
  border-color: rgba(246,182,10,.45);
  box-shadow: 0 0 0 3px rgba(246,182,10,.10);
}

.ls-mp-price{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:10px;
}

.ls-mp-hint{
  margin-top:6px;
  color: rgba(255,255,255,.52);
  font-size:12px;
  line-height:1.4;
}

/* Switch */
.ls-mp-switch{
  display:flex;
  align-items:center;
  gap:10px;
  padding:9px 10px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.02);
  cursor:pointer;
  user-select:none;
}

.ls-mp-switch__input{ position:absolute; opacity:0; pointer-events:none; }

.ls-mp-switch__ui{
  width:42px;
  height:24px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(0,0,0,.28);
  position:relative;
  flex:0 0 auto;
}

.ls-mp-switch__ui::after{
  content:"";
  position:absolute;
  top:2px;
  left:2px;
  width:18px;
  height:18px;
  border-radius:999px;
  background: rgba(255,255,255,.80);
  transition: transform .18s ease, background .18s ease;
}

.ls-mp-switch__input:checked + .ls-mp-switch__ui{
  border-color: rgba(246,182,10,.40);
  background: rgba(246,182,10,.14);
}
.ls-mp-switch__input:checked + .ls-mp-switch__ui::after{
  transform: translateX(18px);
  background: rgba(246,182,10,.95);
}

.ls-mp-switch__text{
  font-weight:900;
  color: rgba(255,255,255,.85);
}

/* Tag grid (pill checkboxes) */
.ls-mp-tags__grid{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.ls-ftag{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:6px 9px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(0,0,0,.18);
  text-decoration:none;
  color: rgba(255,255,255,.88);
  font-size:12.5px;
  line-height:1;
}

.ls-ftag::before{
  content:"";
  width:14px;
  height:14px;
  border-radius:4px;
  border:1px solid rgba(255,255,255,.20);
  background: rgba(255,255,255,.04);
  flex:0 0 auto;
}

.ls-ftag.is-on{
  border-color: rgba(246,182,10,.45);
  background: rgba(246,182,10,.10);
}
.ls-ftag.is-on::before{
  border-color: rgba(246,182,10,.55);
  background: rgba(246,182,10,.22);
  box-shadow: inset 0 0 0 3px rgba(0,0,0,.25);
}

.ls-ftag:hover{ border-color: rgba(246,182,10,.30); background: rgba(246,182,10,.06); }

/* More filters (details) */
.ls-mp-more{
  border-radius:16px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.02);
  overflow:hidden;
}

.ls-mp-more__summary{
  list-style:none;
  padding:10px 10px;
  cursor:pointer;
  font-weight:1000;
  color: rgba(255,255,255,.85);
}

.ls-mp-more__summary::-webkit-details-marker{ display:none; }

.ls-mp-more__summary::after{
  content:"▾";
  float:right;
  color: rgba(255,255,255,.50);
}

.ls-mp-more[open] .ls-mp-more__summary::after{ content:"▴"; }

.ls-mp-more__body{ padding: 10px 12px 12px; }

/* Keep Woo widgets inside "Ещё фильтры" compact */
.ls-mp-more .widget{ margin:0 0 12px; padding:0; border:none; background:transparent; }
.ls-mp-more .widget:last-child{ margin-bottom:0; }

/* Hide duplicate widgets inside panel (we have our own UI) */
.ls-shop-filters .widget_price_filter{ display:none; }
.ls-shop-filters .widget_layered_nav_filters{ display:none; }
.ls-shop-filters .widget_product_categories{ display:none; }

/* Reset link */
.ls-mp-actions{ margin-top:2px; }
.ls-mp-reset{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:8px 10px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(0,0,0,.18);
  color: rgba(255,255,255,.86);
  text-decoration:none;
  font-weight:1000;
}
.ls-mp-reset:hover{ border-color: rgba(246,182,10,.35); background: rgba(246,182,10,.06); }



/* Nerjavey 3.1.1: home info sections */
.ls-nerjavey-info{ padding-top: 26px; }
.ls-info-grid{ display:grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap:24px; }
.ls-info-card{ border:1px solid rgba(255,255,255,.10); border-radius:28px; background:linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,.015)); padding:28px; box-shadow:0 16px 40px rgba(0,0,0,.22); }
.ls-section__header--tight{ margin-bottom:16px; }
.ls-check-list{ list-style:none; margin:0; padding:0; display:grid; gap:12px; }
.ls-check-list li{ position:relative; padding-left:28px; color:rgba(255,255,255,.88); line-height:1.55; }
.ls-check-list li::before{ content:""; position:absolute; left:0; top:.48em; width:12px; height:12px; border-radius:999px; background:linear-gradient(180deg,#f6b60a,#d79600); box-shadow:0 0 0 4px rgba(246,182,10,.12); }
.ls-faq-list{ display:grid; gap:12px; }
.ls-faq-item{ border:1px solid rgba(255,255,255,.10); border-radius:18px; background:rgba(255,255,255,.03); overflow:hidden; }
.ls-faq-item summary{ list-style:none; cursor:pointer; padding:16px 18px; font-weight:800; color:#fff; position:relative; }
.ls-faq-item summary::-webkit-details-marker{ display:none; }
.ls-faq-item summary::after{ content:"+"; position:absolute; right:18px; top:50%; transform:translateY(-50%); color:rgba(246,182,10,.95); font-size:22px; line-height:1; }
.ls-faq-item[open] summary::after{ content:"−"; }
.ls-faq-item > div{ padding:0 18px 18px; color:rgba(255,255,255,.72); line-height:1.65; }
@media (max-width: 980px){ .ls-info-grid{ grid-template-columns:1fr; } .ls-info-card{ padding:22px; border-radius:24px; } }


/* Nerjavey 3.1.2 visual categories */
.ls-section--cats-visual{padding-top:6px}
.ls-section__header--cats-visual{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}
.ls-cats-visual{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.ls-cat-visual,
.ls-cat-card--visual .ls-cat-card__link{display:flex;flex-direction:column;overflow:hidden;position:relative;border-radius:24px;border:1px solid rgba(255,255,255,.10);background:#0d1119;box-shadow:0 20px 60px rgba(0,0,0,.28);transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease}
.ls-cat-visual:hover,.ls-cat-card--visual .ls-cat-card__link:hover{transform:translateY(-4px);border-color:rgba(246,182,10,.38);box-shadow:0 28px 70px rgba(0,0,0,.34),0 0 0 1px rgba(246,182,10,.08) inset}
.ls-cat-visual__media,.ls-cat-card--visual .ls-cat-card__thumb{position:relative;display:block;height:238px;overflow:hidden;background:#0b0e14}
.ls-cat-visual__media img,.ls-cat-card--visual .ls-cat-card__thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}
.ls-cat-visual:hover .ls-cat-visual__media img,.ls-cat-card--visual .ls-cat-card__link:hover .ls-cat-card__thumb img{transform:scale(1.05)}
.ls-cat-visual__overlay,.ls-cat-card__overlay{position:absolute;inset:0;background:linear-gradient(180deg, rgba(5,8,12,.1) 0%, rgba(7,10,16,.3) 45%, rgba(7,10,16,.92) 100%)}
.ls-cat-visual__badge,.ls-cat-card__badge{position:absolute;left:14px;top:14px;z-index:2;display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:6px 12px;border-radius:999px;border:1px solid rgba(246,182,10,.28);background:rgba(19,25,34,.88);color:var(--ls-accent);font-size:12px;font-weight:900;letter-spacing:.04em}
.ls-cat-visual__body,.ls-cat-card--visual .ls-cat-card__body{display:flex;flex-direction:column;gap:12px;padding:18px 18px 20px}
.ls-cat-visual__topline,.ls-cat-card__topline{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.ls-cat-visual__title,.ls-cat-card--visual .ls-cat-card__title{font-size:24px;line-height:1.1;font-weight:900;color:var(--ls-text)}
.ls-cat-visual__count,.ls-cat-card--visual .ls-cat-card__count{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.05);color:rgba(255,255,255,.68);font-size:12px;font-weight:700}
.ls-cat-visual__desc,.ls-cat-card--visual .ls-cat-card__desc{color:rgba(255,255,255,.70);font-size:14px;line-height:1.6}
.ls-cat-visual__cta,.ls-cat-card--visual .ls-cat-card__cta{margin-top:auto;color:var(--ls-accent);font-weight:800;font-size:14px}
.ls-cats-specials{display:grid;grid-template-columns:1.2fr .8fr;gap:16px;margin-top:18px}
.ls-cats-special{border-radius:28px;border:1px solid rgba(255,255,255,.10);background:linear-gradient(135deg, rgba(255,255,255,.045), rgba(255,255,255,.01));padding:26px;box-shadow:0 20px 60px rgba(0,0,0,.18)}
.ls-cats-special--accent{border-color:rgba(246,182,10,.30);background:linear-gradient(135deg, rgba(246,182,10,.16), rgba(18,15,8,.9) 35%, rgba(13,17,25,.96) 100%)}
.ls-cats-special__title{margin:0;font-size:34px;line-height:1.08;font-weight:900}
.ls-cats-special__desc{margin:12px 0 0;color:rgba(255,255,255,.75);max-width:760px;line-height:1.7}
.ls-cats-special__actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:20px}
.ls-cat-card--visual{list-style:none}
.ls-cat-card--visual .ls-cat-card__link{height:100%}
.ls-cat-card--visual .ls-cat-card__thumb{height:220px;border-radius:0}
.ls-cat-card--visual .ls-cat-card__body{padding:16px 16px 18px}
.ls-cat-card--visual .ls-cat-card__title{font-size:22px}
.ls-cat-card--visual .ls-cat-card__desc{display:block}
.ls-cat-card--visual .ls-cat-card__cta{display:inline-flex;align-items:center;gap:6px}
@media (max-width: 1180px){.ls-cats-visual{grid-template-columns:repeat(2,minmax(0,1fr))}.ls-cats-specials{grid-template-columns:1fr}}
@media (max-width: 860px){.ls-section__header--cats-visual{flex-direction:column;align-items:flex-start}.ls-cat-visual__title,.ls-cat-card--visual .ls-cat-card__title{font-size:21px}.ls-cats-special__title{font-size:28px}}
@media (max-width: 640px){.ls-cats-visual{grid-template-columns:1fr}.ls-cat-visual__media,.ls-cat-card--visual .ls-cat-card__thumb{height:220px}.ls-cat-visual__topline,.ls-cat-card__topline{flex-direction:column;align-items:flex-start}.ls-cat-visual__count,.ls-cat-card--visual .ls-cat-card__count{padding:6px 9px}.ls-cats-special{padding:22px 18px}.ls-cats-special__title{font-size:24px}}

/* ===== Nerjavey 3.1.3 fixes ===== */
/* Desktop top menu stability */
.ls-topbar__right{min-width:0;flex-wrap:nowrap}
.ls-topmenu{flex-wrap:nowrap;min-width:0}
.ls-topmenu li{min-width:0}
.ls-topmenu a{white-space:nowrap;display:block}
@media (max-width: 1320px){
  .ls-topbar__inner{gap:10px}
  .ls-topbar__left{gap:12px}
  .ls-topbar__right{gap:8px}
  .ls-topmenu{gap:10px}
  .ls-topmenu a{font-size:13px}
  .ls-btn--sm{padding:8px 10px}
}
@media (max-width: 1200px){
  .ls-btn--call .ls-btn__text{display:none}
  .ls-btn--call{width:42px;height:42px;padding:0;gap:0;border-radius:12px}
}
@media (max-width: 1080px){
  .ls-topbar__left{gap:10px}
  .ls-city__select{max-width:132px}
  .ls-contacts-inline{gap:10px}
  .ls-contacts-inline__item{font-size:13px}
  .ls-topmenu{gap:8px}
}

/* Category card hover seam / white flicker fix */
.ls-cat-visual,
.ls-cat-card--visual .ls-cat-card__link{background:#0d1119}
.ls-cat-visual__media,
.ls-cat-card--visual .ls-cat-card__thumb{isolation:isolate;transform:translateZ(0)}
.ls-cat-visual__media::after,
.ls-cat-card--visual .ls-cat-card__thumb::after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:-2px;
  height:6px;
  background:#0d1119;
  z-index:2;
  pointer-events:none;
}
.ls-cat-visual__media img,
.ls-cat-card--visual .ls-cat-card__thumb img{
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
  transform:translateZ(0) scale(1.01);
  transform-origin:center center;
  will-change:transform;
}
.ls-cat-visual:hover .ls-cat-visual__media img,
.ls-cat-card--visual .ls-cat-card__link:hover .ls-cat-card__thumb img{transform:translateZ(0) scale(1.06)}
.ls-cat-visual__body,
.ls-cat-card--visual .ls-cat-card__body{position:relative;z-index:3;background:#0d1119;margin-top:-1px}

/* Keep final info block right above contacts/footer */
.ls-nerjavey-info{padding-top:20px}


/* ===== Nerjavey 3.1.4 fixes ===== */
/* Keep desktop menu visible even if topbar becomes tight */
.ls-topbar__right{flex:1 1 auto;justify-content:flex-end;overflow:visible}
.ls-topmenu{flex:1 1 auto;justify-content:center;overflow-x:auto;scrollbar-width:none}
.ls-topmenu::-webkit-scrollbar{display:none}
.ls-topmenu li{flex:0 0 auto}

/* New trust block should sit after products and before contacts/form footer area */
.ls-nerjavey-info{padding-top:34px;padding-bottom:10px}

/* Extra seam fix for category media hover */
.ls-cat-visual{overflow:hidden}
.ls-cat-visual__media{background:#0d1119}
.ls-cat-visual__media img{vertical-align:top}


/* ===== Nerjavey 3.1.5 menu fallback fix ===== */
.ls-topmenu--fallback{max-width:100%;}
.ls-topmenu--fallback a{padding:6px 0;}
@media (max-width: 1360px){.ls-topbar__right{gap:10px}.ls-topmenu{justify-content:flex-start}}
