
/* Техно-Д — палитра: глубокий сине-графит, тёплый коралл (акцент), бирюза (вторичный) */
:root{
  --bg:#070b12;
  --bg-elevated:#0e1522;
  --surface:#121c2c;
  --surface2:#1a2738;
  --surface-highlight:#223045;
  --text:#f1f5fd;
  --muted:#94a8c9;
  --line:rgba(255,255,255,.1);
  /* Акцент: тёплый коралл — кнопки, важные ссылки */
  --acc:#e85a3c;
  --acc-hover:#ff6f4f;
  /* Второй акцент: бирюза — eyebrow, подсветка бренда */
  --acc2:#2ec4a8;
  --acc2-muted:rgba(46,196,168,.35);
  --shadow-soft:0 18px 48px rgba(0,0,0,.35);
}
html[data-theme='light']{
  --bg:#e8eef7;
  --bg-elevated:#f0f4fb;
  --surface:#fff;
  --surface2:#f4f7fc;
  --surface-highlight:#eef2f9;
  --text:#0f172a;
  --muted:#475569;
  --line:rgba(15,23,42,.1);
  --acc:#c94a32;
  --acc-hover:#d45840;
  --acc2:#0d9488;
  --acc2-muted:rgba(13,148,136,.2);
  --shadow-soft:0 12px 36px rgba(15,23,42,.08);
}
*{box-sizing:border-box}
body{
  margin:0;
  font-family:Manrope,system-ui,sans-serif;
  background:
    radial-gradient(900px 520px at 88% -5%,color-mix(in srgb,var(--acc) 22%,transparent),transparent),
    radial-gradient(780px 480px at -8% 25%,var(--acc2-muted),transparent),
    var(--bg);
  color:var(--text);
  line-height:1.55;
}
.container{max-width:1120px;margin:0 auto;padding:0 20px}
.section{padding:clamp(2rem,5vw,3.25rem) 0}
.section--alt{background:linear-gradient(180deg,color-mix(in srgb,var(--bg-elevated) 92%,transparent),color-mix(in srgb,var(--surface) 55%,var(--bg)));border-block:1px solid var(--line)}
.section__head{max-width:640px;margin-bottom:1.5rem}
.section__head h2{font-size:clamp(1.35rem,2.5vw,1.75rem);margin:0 0 .5rem;line-height:1.2}
.section__head p{margin:0;color:var(--muted);font-size:.98rem}
.section__head--inline{
  max-width:none;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:12px;
}
.section__head--inline h2{margin:0}
.faq-head__btn{white-space:nowrap}
.faq-head__btn--compact{
  min-height:34px;
  padding:0 12px;
  font-size:.78rem;
  border-radius:9px;
}
@media (max-width:760px){
  .section__head--inline{flex-wrap:wrap;align-items:flex-start}
}

/* Header bar */
.topbar{position:sticky;top:0;z-index:30;border-bottom:1px solid var(--line);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);background:color-mix(in srgb,var(--bg) 82%,transparent)}
.top-inner{display:flex;align-items:center;min-height:48px;gap:0;padding:3px 0}

/* Logo + «Главная» слева */
.top-brand{display:flex;align-items:center;gap:6px;flex-shrink:0;margin-right:6px}
.nav-home{color:var(--muted);text-decoration:none;font-size:.8rem;font-weight:700;padding:4px 8px;border-radius:8px;transition:background .15s,color .15s;white-space:nowrap;line-height:1.2}
.nav-home:hover{background:var(--surface2);color:var(--text)}
.nav-home[aria-current="page"]{background:var(--surface2);color:var(--text)}

/* Logo block */
.logo{text-decoration:none;color:var(--text);display:flex;align-items:center;gap:6px;flex-shrink:0}
.logo img{width:27px;height:27px;aspect-ratio:1/1;border-radius:50%;object-fit:contain;object-position:center;flex-shrink:0;background:var(--surface2);display:block}
.logo-text{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;line-height:1.05;gap:0;transform:translateY(-1px)}
.logo-title{font-weight:900;letter-spacing:.04em;font-size:1.05rem}
.logo-city{color:var(--acc2);font-weight:600;font-size:.65rem;letter-spacing:.02em}

/* Шапка страницы товара: блок бренда на ~20% компактнее */
.top-inner--brand-sm .logo{gap:5px}
.top-inner--brand-sm .logo img{width:22px;height:22px}
.top-inner--brand-sm .logo-title{font-size:.84rem}
.top-inner--brand-sm .logo-city{font-size:.52rem}
.top-inner--brand-sm .top-brand{gap:5px;margin-right:4px}
.top-inner--brand-sm .nav-home{font-size:.64rem;padding:3px 6px;border-radius:6px}

/* Nav links — centered */
.nav-links{display:flex;align-items:center;gap:6px;margin:0 auto;flex-wrap:nowrap}
.nav-links a{color:var(--muted);text-decoration:none;font-size:.8rem;font-weight:600;padding:5px 10px;border-radius:8px;transition:background .15s,color .15s;white-space:nowrap}
.nav-links a:hover{background:var(--surface2);color:var(--text)}
.nav-links a[aria-current="page"]{background:var(--surface2);color:var(--text)}
.nav-links .nav-current{display:inline-flex;align-items:center;font-size:.88rem;font-weight:600;padding:7px 13px;border-radius:10px;background:var(--surface);color:var(--text);box-shadow:0 1px 4px rgba(0,0,0,.15);cursor:default;white-space:nowrap}
html[data-theme='light'] .nav-links .nav-current{box-shadow:0 1px 4px rgba(15,23,42,.08)}

/* Right CTA group */
.top-cta{display:flex;flex-direction:row-reverse;gap:8px;align-items:center;flex-shrink:0;margin-left:0}
.phone{
  background:rgba(7,50,45,.62);
  color:#27e5c8;
  border:1px solid rgba(22,214,200,.62);
  border-radius:999px;
  padding:7px 16px;
  text-decoration:none;
  font-weight:800;
  font-size:.82rem;
  cursor:pointer;
  transition:background .15s,border-color .15s,color .15s,transform .1s;
  box-shadow:none;
}
.phone:hover{
  background:rgba(10,64,57,.9);
  border-color:rgba(57,235,218,.88);
  color:#b6fff2;
  transform:translateY(-1px);
}
html[data-theme='light'] .phone{
  background:linear-gradient(180deg,#f2f6fb,#e9f0f8);
  border-color:#b8e1da;
  color:#10a893;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.88);
}
html[data-theme='light'] .phone:hover{
  background:linear-gradient(180deg,#edf3fb,#e4ecf7);
  border-color:#a7d6ce;
  color:#0f9684;
}
.phone--nav{display:none}
.nav-links .phone--nav{color:inherit}
.nav-links .phone--nav:hover{transform:translateY(-1px)}
/* Theme toggle — small pill with sliding dot */
.theme-toggle{position:relative;width:44px;height:24px;border-radius:999px;border:1px solid color-mix(in srgb,var(--line) 60%,#020617 40%);background:var(--surface);cursor:pointer;padding:0;overflow:hidden;transition:background .25s,border-color .25s;flex-shrink:0}
.theme-toggle:hover{border-color:color-mix(in srgb,var(--line) 35%,#020617 65%)}
.theme-toggle .knob{position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;font-size:11px;line-height:1;transition:transform .3s cubic-bezier(.4,.2,.2,1);box-shadow:0 1px 4px rgba(0,0,0,.25);pointer-events:none}
.theme-toggle .knob.knob--moon{color:#0b1220;font-size:13px}
.theme-toggle .knob.knob--sun{color:#b45309;font-size:12px}
html[data-theme='light'] .theme-toggle .knob{transform:translateX(20px)}
html[data-theme='light'] .theme-toggle{background:var(--surface2)}
.theme-mode-label{display:none}

/* Mobile burger */
.burger{display:none;background:none;border:1px solid var(--line);border-radius:10px;padding:8px 12px;cursor:pointer;color:var(--text);font-size:1.5rem;line-height:1}
.hero{padding:clamp(2rem,6vw,3.5rem) 0 2rem}
.hero--centered {
  position: relative;
  min-height: clamp(400px, 70vh, 650px);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  overflow: hidden;
  color: #fff;
  background-size: cover;
  background-position: center;
  background-attachment: fixed;
  margin-bottom: 2rem;
}
.hero--centered::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(7, 11, 18, 1) 0%, rgba(7, 11, 18, 0.7) 40%, rgba(7, 11, 18, 0.8) 100%);
  z-index: 1;
}
.hero--centered .container {
  position: relative;
  z-index: 2;
  max-width: 880px;
}
.hero--centered .eyebrow { color: var(--acc2); }
.hero--centered .breadcrumb { color: rgba(255,255,255,0.7); margin-left: auto; margin-right: auto; }
.hero--centered .breadcrumb a { color: #fff; }
.hero--centered .hero-chip { color: #fff; border-color: rgba(255,255,255,0.3); }
.hero--centered h1 { color: #fff; margin-bottom: 1.5rem; }
.hero--centered .lead { color: rgba(255,255,255,0.9); margin-left: auto; margin-right: auto; }
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(1rem,3vw,2rem);align-items:center}
.hero-img{width:100%;border-radius:18px;border:1px solid var(--line);box-shadow:var(--shadow-soft)}
.hero-img-placeholder{aspect-ratio:4/3;background:var(--surface2);display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:.9rem;border-radius:18px;border:1px solid var(--line);box-shadow:var(--shadow-soft)}
.eyebrow{color:var(--acc2);text-transform:uppercase;letter-spacing:.1em;font-size:.72rem;font-weight:700;margin:0 0 .5rem}
.hero-topline{display:flex;align-items:center;gap:8px;margin-bottom:.48rem;position:relative}
.hero-topline::after{content:"";flex:1 1 120px;height:1px;background:linear-gradient(90deg,color-mix(in srgb,var(--acc2) 65%,transparent),transparent)}
.eyebrow--hero{margin:0}
.hero-chip-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:680px;gap:10px;margin-bottom:.7rem}
.hero-chip{display:inline-flex;align-items:center;justify-content:center;width:100%;padding:4px 10px;border-radius:999px;border:1px solid color-mix(in srgb,var(--acc2) 42%,var(--line));background:transparent;color:var(--text);font-size:.7rem;font-weight:700;letter-spacing:.02em;white-space:nowrap}
.lead{color:var(--muted);font-size:1.05rem;max-width:34em}
h1{font-size:clamp(1.65rem,4.2vw,2.65rem);line-height:1.12;margin:.2rem 0 1rem;font-weight:800}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:1.25rem}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:0 20px;border-radius:13px;border:1px solid transparent;text-decoration:none;font-weight:800;font-size:.95rem;transition:transform .12s,background .15s,box-shadow .15s}
.btn__icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;line-height:0;margin-right:0}
.btn__icon-img{display:block;width:16px;height:16px;object-fit:contain;border-radius:4px}
.btn-primary{background:rgba(46,24,30,.62);border:1px solid rgba(248,95,95,.72);color:#ff9f98;box-shadow:none}
.btn-primary:hover{background:rgba(56,30,38,.9);border-color:rgba(255,120,120,.9);color:#ffd0cc;transform:translateY(-1px)}
.btn-blue{background:rgba(10,28,52,.75);border:1px solid rgba(63,140,255,.62);color:#79beff;box-shadow:none}
.btn-blue:hover{background:rgba(14,38,68,.92);border-color:rgba(92,164,255,.85);color:#bfe2ff;transform:translateY(-1px)}
.btn-success{background:rgba(7,50,45,.62);border:1px solid rgba(22,214,200,.62);color:#27e5c8;box-shadow:none}
.btn-success:hover{background:rgba(10,64,57,.9);border-color:rgba(57,235,218,.88);color:#b6fff2;transform:translateY(-1px)}
.btn-violet{background:rgba(46,16,60,.62);border:1px solid rgba(220,95,248,.72);color:#eb98ff;box-shadow:none}
.btn-violet:hover{background:rgba(56,20,70,.9);border-color:rgba(230,120,255,.9);color:#f4ccff;transform:translateY(-1px)}
.btn-ghost{border:1px solid var(--line);color:var(--text);background:var(--surface)}
.btn-ghost:hover{background:var(--surface2)}
html[data-theme='light'] .btn{
  background:linear-gradient(180deg,#f2f6fb,#e9f0f8);
  border-color:#cfd8e5;
  color:#334155;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.88);
}
html[data-theme='light'] .btn:hover{
  background:linear-gradient(180deg,#edf3fb,#e4ecf7);
  border-color:#c2cfdf;
  color:#0f172a;
}
html[data-theme='light'] .btn-blue{
  border-color:#bdd3f4;
  color:#2a78e8;
}
html[data-theme='light'] .btn-blue:hover{
  border-color:#a9c4eb;
  color:#2168cc;
}
html[data-theme='light'] .btn-primary{
  border-color:#e6bfc7;
  color:#d16b73;
}
html[data-theme='light'] .btn-primary:hover{
  border-color:#ddb0ba;
  color:#c55a64;
}
html[data-theme='light'] .btn-success{
  border-color:#b8e1da;
  color:#10a893;
}
html[data-theme='light'] .btn-success:hover{
  border-color:#a7d6ce;
  color:#0f9684;
}
html[data-theme='light'] .btn-violet{
  border-color:#dcbce6;
  color:#a856c2;
}
html[data-theme='light'] .btn-violet:hover{
  border-color:#d4aedf;
  color:#9b49b5;
}
html[data-theme='light'] .btn-ghost{
  border-color:#bdd3f4;
  color:#2a78e8;
}
html[data-theme='light'] .btn-ghost:hover{
  border-color:#a9c4eb;
  color:#2168cc;
}
.actions--hero{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-width:680px;gap:10px}
.actions--hero .btn{width:100%;min-width:0;min-height:46px;padding:0 14px;font-size:.9rem;box-shadow:none}
.actions--hero .btn:nth-child(1){background:rgba(10,28,52,.75);border:1px solid rgba(63,140,255,.62);color:#79beff}
.actions--hero .btn:nth-child(1):hover{background:rgba(14,38,68,.92);border-color:rgba(92,164,255,.85);color:#bfe2ff}
.actions--hero .btn:nth-child(2){background:rgba(10,28,52,.75);border:1px solid rgba(63,140,255,.62);color:#79beff}
.actions--hero .btn:nth-child(2):hover{background:rgba(14,38,68,.92);border-color:rgba(92,164,255,.85);color:#bfe2ff}
.actions--hero .btn:nth-child(3){background:rgba(7,50,45,.62);border:1px solid rgba(22,214,200,.62);color:#27e5c8}
.actions--hero .btn:nth-child(3):hover{background:rgba(10,64,57,.9);border-color:rgba(57,235,218,.88);color:#b6fff2}
html[data-theme='light'] .actions--hero .btn:nth-child(1){
  background:linear-gradient(180deg,#f2f6fb,#e9f0f8);
  border-color:#bdd3f4;
  color:#2a78e8;
}
html[data-theme='light'] .actions--hero .btn:nth-child(1):hover{
  background:linear-gradient(180deg,#edf3fb,#e4ecf7);
  border-color:#a9c4eb;
  color:#2168cc;
}
html[data-theme='light'] .actions--hero .btn:nth-child(2){
  background:linear-gradient(180deg,#f2f6fb,#e9f0f8);
  border-color:#bdd3f4;
  color:#2a78e8;
}
html[data-theme='light'] .actions--hero .btn:nth-child(2):hover{
  background:linear-gradient(180deg,#edf3fb,#e4ecf7);
  border-color:#a9c4eb;
  color:#2168cc;
}
html[data-theme='light'] .actions--hero .btn:nth-child(3){
  background:linear-gradient(180deg,#f2f6fb,#e9f0f8);
  border-color:#b8e1da;
  color:#10a893;
}
html[data-theme='light'] .actions--hero .btn:nth-child(3):hover{
  background:linear-gradient(180deg,#edf3fb,#e4ecf7);
  border-color:#a7d6ce;
  color:#0f9684;
}

/* Hero strip — spans both hero-grid columns */
.hero-strip{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:.5rem}
.hero-strip__item{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:.7rem .8rem;text-align:center;transition:transform .2s,border-color .2s,box-shadow .2s}
.hero-strip__item:hover{border-color:color-mix(in srgb,var(--acc2) 40%,var(--line));transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,.15)}
.hero-strip__val{font-weight:800;font-size:1.1rem;color:var(--text);line-height:1.2}
.hero-strip__val span{color:var(--acc2)}
.hero-strip__label{font-size:.72rem;color:var(--muted);margin-top:.2rem;letter-spacing:.02em}
.hero-strip--stats .hero-strip__item{padding:1rem .9rem;border-radius:14px}
.hero-strip--stats .hero-strip__val{font-size:clamp(1.6rem,3vw,2.05rem);line-height:1.1;letter-spacing:.01em}
.hero-strip--stats .hero-strip__label{font-size:.88rem;margin-top:.45rem;line-height:1.35}
@media (max-width:900px){.hero-strip{grid-template-columns:repeat(4,1fr)}}
@media (max-width:600px){.hero-strip{grid-template-columns:repeat(2,1fr)}}
@media (max-width:760px){
  .hero-topline{gap:6px}
  .hero-topline::after{display:none}
  .hero-chip-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
  .hero-chip{font-size:.67rem;padding:4px 8px}
  .actions--hero{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:520px){
  .hero-chip-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding-bottom:0}
  .hero-chip{width:100%;min-width:0;padding:5px 6px;font-size:.64rem}
  .actions--hero{grid-template-columns:1fr}
}

/* Scroll-in animation */
.anim-up{opacity:0;transform:translateY(24px);transition:opacity .5s ease-out,transform .5s ease-out}
.anim-up.visible{opacity:1;transform:translateY(0)}
.anim-up:nth-child(2){transition-delay:.08s}
.anim-up:nth-child(3){transition-delay:.16s}
.anim-up:nth-child(4){transition-delay:.24s}

/* Generic strip (other pages) */
.strip{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:0}
@media (max-width:900px){.strip{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.strip{grid-template-columns:1fr}}
.strip__item{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:1rem 1.1rem;text-align:center}
.strip__val{font-weight:800;font-size:1.35rem;color:var(--text);line-height:1.2}
.strip__val span{color:var(--acc2)}
.strip__label{font-size:.82rem;color:var(--muted);margin-top:.35rem}

/* Promo ribbon for catalog pages */
.promo-ribbon{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 1.2rem}
.promo-ribbon__item{border:1px solid var(--line);border-radius:16px;padding:1.15rem 1.2rem;background:linear-gradient(165deg,var(--surface),var(--surface-highlight));display:grid;gap:8px;text-decoration:none;color:var(--text);transition:transform .15s,box-shadow .15s}
a.promo-ribbon__item:hover{transform:translateY(-2px);box-shadow:var(--shadow-soft)}
.promo-ribbon__item strong{font-size:1rem;line-height:1.25}
.promo-ribbon__item span{font-size:.84rem;color:var(--muted);line-height:1.45}
.promo-ribbon__item--split{border-color:color-mix(in srgb,#1db7ff 42%,var(--line));background:linear-gradient(165deg,color-mix(in srgb,#1db7ff 14%,var(--surface)),var(--surface-highlight))}
.promo-ribbon__item--cash{border-color:color-mix(in srgb,#ff7a59 42%,var(--line));background:linear-gradient(165deg,color-mix(in srgb,#ff7a59 14%,var(--surface)),var(--surface-highlight))}
.promo-ribbon__item--delivery{border-color:color-mix(in srgb,#18c979 42%,var(--line));background:linear-gradient(165deg,color-mix(in srgb,#18c979 14%,var(--surface)),var(--surface-highlight))}
.promo-ribbon--stack{grid-template-columns:1fr;max-width:620px}
@media (max-width:820px){.promo-ribbon{grid-template-columns:1fr}}

/* Buy-washer page top split: text + promo ribbon */
.catalog-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,380px);gap:34px;align-items:stretch;margin-bottom:44px}
.catalog-top__head{max-width:none;margin-bottom:0}
.catalog-top .promo-ribbon{margin:0}
.catalog-top .promo-ribbon--stack{height:100%;display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:10px;max-width:none;width:100%;justify-self:stretch;align-self:stretch}
.catalog-top .promo-ribbon--stack .promo-ribbon__item{display:flex;flex-direction:column;justify-content:center;padding:.88rem 1rem;gap:4px}
.catalog-top .promo-ribbon--stack .promo-ribbon__item strong{font-size:.96rem;line-height:1.2}
.catalog-top .promo-ribbon--stack .promo-ribbon__item span{font-size:.81rem;line-height:1.35}
@media (max-width:980px){
  .catalog-top{grid-template-columns:1fr}
  .catalog-top .promo-ribbon{margin:0 0 1.2rem}
  .catalog-top .promo-ribbon--stack{height:auto;display:grid;grid-template-rows:none;max-width:none;width:100%;justify-self:stretch}
  .catalog-top .promo-ribbon--stack .promo-ribbon__item{display:grid;width:100%}
}

.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.cards.two{grid-template-columns:repeat(2,1fr)}
.cards.three{grid-template-columns:repeat(3,1fr)}
.cards--featured{
  grid-template-columns:repeat(6,1fr);
  gap:16px;
}
.cards--featured .card{
  grid-column:span 2;
}
.cards--featured .card:nth-child(1),
.cards--featured .card:nth-child(2){
  grid-column:span 3;
  padding:1.4rem 1.5rem;
  background:linear-gradient(165deg,color-mix(in srgb,var(--surface) 95%,var(--acc2)),var(--surface-highlight));
}

@media (max-width:980px){
  .cards--featured{grid-template-columns:repeat(2,1fr)}
  .cards--featured .card:nth-child(1),
  .cards--featured .card:nth-child(2),
  .cards--featured .card{grid-column:span 1}
}

.feature-row {
  display: flex;
  align-items: center;
  gap: 3rem;
  margin-bottom: 3rem;
}
.feature-row:last-child {
  margin-bottom: 0;
}
.feature-row--reverse {
  flex-direction: row-reverse;
}
.feature-row__content {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.feature-row__image {
  flex: 1;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: var(--shadow-soft);
}
.feature-row__image img {
  width: 100%;
  height: auto;
  max-height: 550px;
  object-fit: contain;
  display: block;
  background-color: var(--bg-surface);
}

@media (max-width: 980px) {
  .feature-row, .feature-row--reverse {
    flex-direction: column;
    gap: 1.5rem;
  }
}
@media (max-width:640px){
  .cards--featured{grid-template-columns:1fr}
}

.card{
  background:linear-gradient(165deg,var(--surface),var(--surface-highlight));
  border:1px solid var(--line);
  border-radius:18px;
  padding:1.15rem 1.25rem;
  text-decoration:none;
  color:var(--text);
  transition:all .25s cubic-bezier(.4,.2,.2,1);
  display:flex;
  flex-direction:column;
  position:relative;
  overflow:hidden;
}
.card::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  padding:1px;
  background:linear-gradient(135deg,var(--line),transparent);
  -webkit-mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  pointer-events:none;
}
.card:hover{
  border-color:color-mix(in srgb,var(--acc2) 45%,var(--line));
  transform:translateY(-4px);
  box-shadow:0 12px 30px rgba(0,0,0,.3), 0 0 15px color-mix(in srgb,var(--acc2) 15%,transparent);
}
.card:hover::after{
  background:linear-gradient(135deg,var(--acc2),transparent);
}
.card h3{margin:0;font-size:1.15rem;font-weight:900;letter-spacing:-.01em}
.card p{margin:.5rem 0 0;color:var(--muted);font-size:.92rem;line-height:1.45}

.services-card__icon{
  width:40px;
  height:40px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:var(--surface2);
  border:1px solid var(--line);
  border-radius:10px;
  color:var(--acc2);
  margin-bottom:12px;
  transition:transform .3s, color .3s;
}
.card:hover .services-card__icon{
  transform:scale(1.1) rotate(5deg);
  color:var(--acc);
  border-color:color-mix(in srgb,var(--acc) 30%,var(--line));
}
.services-cards .card{
  display:flex;
  flex-direction:column;
  gap:8px;
}
.services-card__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.services-card__head h3{margin:0}
.services-cards .card p{margin:.2rem 0 0}
.services-card__btn{
  margin-top:auto;
  align-self:stretch;
  pointer-events:none;
  flex-shrink:0;
  width:100%;
}

/* Promos block */
.promos-section{background:linear-gradient(180deg,color-mix(in srgb,var(--bg-elevated) 88%,transparent),color-mix(in srgb,var(--bg) 92%,transparent))}
.promos-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.promo-card{position:relative;padding:1.25rem 1.3rem 1.2rem;min-height:174px}
.promo-card::before{content:"";position:absolute;left:0;top:0;right:0;height:4px;border-radius:16px 16px 0 0}
.promo-card h3{font-size:1.22rem}
.promo-card strong{color:var(--text)}
.promo-card--cash{border-color:color-mix(in srgb,#ff7a59 45%,var(--line));background:linear-gradient(165deg,color-mix(in srgb,#ff7a59 17%,var(--surface)),var(--surface-highlight))}
.promo-card--cash::before{background:linear-gradient(90deg,#ff7a59,#ff5f4a)}
.promo-card--delivery{border-color:color-mix(in srgb,#1db7ff 45%,var(--line));background:linear-gradient(165deg,color-mix(in srgb,#1db7ff 16%,var(--surface)),var(--surface-highlight))}
.promo-card--delivery::before{background:linear-gradient(90deg,#1db7ff,#3a86ff)}
.promo-card--lifting{border-color:color-mix(in srgb,#18c979 45%,var(--line));background:linear-gradient(165deg,color-mix(in srgb,#18c979 16%,var(--surface)),var(--surface-highlight))}
.promo-card--lifting::before{background:linear-gradient(90deg,#18c979,#00d084)}

.bullets{display:grid;gap:12px;max-width:720px}
.bullets li{margin:0;padding-left:1.35rem;position:relative;color:var(--muted);list-style:none}
.bullets li::before{content:"";position:absolute;left:0;top:.55em;width:8px;height:8px;border-radius:50%;background:var(--acc2);opacity:.9}

/* Product cards grid */
.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.product-grid--home{grid-template-columns:repeat(3,minmax(0,1fr))}
.product-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:hidden;text-decoration:none;color:var(--text);transition:transform .2s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .2s ease, border-color .2s ease;display:flex;flex-direction:column}
.product-card:hover{transform:translateY(-6px);box-shadow:0 12px 24px rgba(0,0,0,0.12), 0 0 0 1px color-mix(in srgb, var(--acc2) 20%, transparent);border-color:color-mix(in srgb,var(--acc2) 40%,var(--line))}
.product-card{position:relative}
.product-card img{width:100%;aspect-ratio:4/3;object-fit:cover;border-bottom:1px solid var(--line)}

/* Badges */
.badge-row{position:absolute;top:10px;left:10px;display:flex;flex-wrap:wrap;gap:6px;z-index:2;pointer-events:none}
.badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:8px;font-size:.72rem;font-weight:800;letter-spacing:.02em;line-height:1.3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 2px 8px rgba(0,0,0,.25)}
.badge--new{background:rgba(46,196,168,.88);color:#042f27}
.badge--bu{background:rgba(59,130,246,.8);color:#fff}
.badge--discount{background:rgba(232,90,60,.9);color:#fff}
.badge__icon{font-size:.82rem;line-height:1}
.product-card__body{padding:.85rem 1rem 1rem;display:flex;flex-direction:column;flex:1 1 auto}
.product-card__name{font-weight:800;font-size:.95rem;line-height:1.25;margin-bottom:.25rem}
.product-card__cat{font-size:.78rem;color:var(--muted);margin-bottom:.4rem;min-height:1.2em}
.product-card__price{font-weight:800;font-size:1.1rem;color:var(--acc)}
.product-card__head-row{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:1.25em}
.product-card__head-row .product-card__name{
  margin-bottom:0;
  flex:1 1 auto;
  min-width:0;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.product-card__price--inline{font-size:1rem;line-height:1.25;white-space:nowrap;text-align:right;flex:0 0 auto}
.product__old{font-size:.82rem;color:var(--muted);text-decoration:line-through;font-weight:400;margin-left:.5rem}
.product-card__more{margin-top:auto;padding-top:.5rem;text-align:center;width:100%}
@media(max-width:980px){.product-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.product-grid{grid-template-columns:repeat(2,1fr);gap:8px}}
@media(max-width:980px){.product-grid--home{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.product-grid--home{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}}
@media(max-width:520px){
  .product-card{border-radius:12px;padding:.85rem .9rem}
  .product-card__body{padding:.6rem .6rem .75rem}
  .product-card__name{font-size:.85rem}
  .product-card__price{font-size:1rem}
  .product-card__price--inline{font-size:.9rem}
  .product__old{font-size:.78rem}
  .product-card__actions{grid-template-columns:1fr;gap:6px;padding-top:.4rem}
  .product-card__actions .btn{min-height:36px;font-size:.78rem;padding:0 8px}
  .spec-tag{font-size:.65rem;padding:3px 6px}
}

/* CSS for Expandable Cards (hybrid card-accordion) */
.card-expandable {
  padding: 0 !important;
  display: flex !important;
  flex-direction: column;
}
.card-expandable summary {
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  height: 100%;
  cursor: pointer;
  outline: none;
  list-style: none;
  box-sizing: border-box;
}
.card-expandable summary::-webkit-details-marker {
  display: none;
}
.card-expandable .service-card__content {
  padding: 0 1.5rem 1.5rem 1.5rem;
  animation: fadeIn 0.3s ease;
  border-top: 1px solid var(--line);
  margin-top: 1rem;
  padding-top: 1.5rem;
}
.card-expandable[open] summary {
  height: auto;
}
.card-expandable[open] .services-card__btn {
  display: none;
}



.related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.related-card{display:flex;flex-direction:column}
@media(max-width:980px){.related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.related-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}

/* Steps */
/* Steps and Cards Signature Animation */
.card, .step {
  transition: transform .25s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .25s ease, border-color .2s ease !important;
}
.card:hover, .step:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 20px rgba(0,0,0,0.08), 0 0 0 1px color-mix(in srgb, var(--acc2) 25%, transparent);
  border-color: color-mix(in srgb, var(--acc2) 50%, var(--line));
}

.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.step{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:1rem 1.05rem;display:flex;flex-direction:column;min-height:236px}
.step__head{display:flex;align-items:center;gap:10px;margin-bottom:.55rem}
.step__num{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;background:color-mix(in srgb,var(--acc2) 20%,var(--surface));color:var(--acc2);font-weight:800;font-size:1rem;flex-shrink:0}
.step h3{margin:0;font-size:1rem;font-weight:800}
.step p{margin:.5rem 0 auto;color:var(--muted);font-size:.88rem;line-height:1.4}
.step__actions{margin-top:0;padding-top:.6rem;min-height:76px;display:flex;flex-direction:column;justify-content:flex-end;gap:8px}
.step__actions .btn{
  text-decoration:none;
  flex:1 1 100%;
  width:100%;
  min-height:40px;
  border-radius:13px;
  box-shadow:none;
  letter-spacing:.01em;
}
@media(max-width:980px){.steps{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.steps{grid-template-columns:1fr}}

/* Catalog toolbar */
.catalog-toolbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:1.1rem;padding:.65rem .9rem;background:var(--surface);border:1px solid var(--line);border-radius:12px}
.catalog-count{font-weight:800;font-size:.95rem}
.catalog-sort{display:flex;align-items:center;gap:6px;font-size:.88rem}
.catalog-sort select{background:var(--surface2);color:var(--text);border:1px solid var(--line);border-radius:8px;padding:6px 10px;font-size:.88rem;cursor:pointer}
.catalog-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:1rem 0 .7rem}
.catalog-tab{appearance:none;border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:999px;padding:.52rem .9rem;font-size:.86rem;font-weight:700;cursor:pointer;transition:all .15s}
.catalog-tab:hover{border-color:color-mix(in srgb,var(--acc2) 38%,var(--line));transform:translateY(-1px)}
.catalog-tab.is-active{background:linear-gradient(135deg,var(--acc),var(--acc2));color:#041221;border-color:transparent;box-shadow:0 8px 20px color-mix(in srgb,var(--acc) 35%,transparent)}

/* Filters */
.catalog-filters{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:1.5rem}
.filter-group{position:relative}
.filter-group label{display:block;font-size:.7rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:3px;padding-left:2px}
.filter-group select{appearance:none;-webkit-appearance:none;background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%2394a8c9'/%3E%3C/svg%3E") no-repeat right 12px center;color:var(--text);border:1px solid var(--line);border-radius:10px;padding:10px 34px 10px 13px;font-size:.88rem;font-weight:600;cursor:pointer;transition:border-color .15s,box-shadow .15s;min-width:0}
.filter-group select:hover{border-color:color-mix(in srgb,var(--acc2) 50%,var(--line))}
.filter-group select:focus{outline:none;border-color:var(--acc2);box-shadow:0 0 0 3px var(--acc2-muted)}
.filter-reset{
  display:inline-flex;
  align-items:center;
  gap:8px;
  background:none;
  border:1px solid var(--line);
  color:var(--muted);
  border-radius:10px;
  padding:10px 16px;
  font-size:.84rem;
  font-weight:700;
  cursor:pointer;
  transition:color .15s,border-color .15s,background .15s;
}
.filter-reset::before{
  content:'↺';
  width:18px;
  height:18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  border:1px solid color-mix(in srgb,var(--acc2) 42%,var(--line));
  color:var(--acc2);
  font-size:.78rem;
  line-height:1;
  transition:transform .2s,border-color .15s,color .15s;
}
.filter-reset:hover{
  color:var(--acc);
  border-color:var(--acc);
  background:color-mix(in srgb,var(--acc2-muted) 30%,transparent);
}
.filter-reset:hover::before{
  transform:rotate(-20deg);
  border-color:var(--acc2);
  color:var(--acc2);
}
.filter-reset--icon{
  width:42px;
  height:42px;
  padding:0;
  gap:0;
  justify-content:center;
}
.filter-reset__text{
  display:none;
}
.filter-reset--icon::before{
  width:20px;
  height:20px;
  font-size:.9rem;
  border-color:color-mix(in srgb,var(--text) 34%,var(--line));
  color:var(--text);
}
.filter-reset--icon:hover{
  color:var(--text);
  border-color:color-mix(in srgb,var(--text) 22%,var(--line));
  background:color-mix(in srgb,var(--text) 6%,transparent);
}
.filter-reset--icon:hover::before{
  border-color:color-mix(in srgb,var(--text) 52%,var(--line));
  color:var(--text);
}
html[data-theme='light'] .filter-reset{
  background:linear-gradient(180deg,#f2f6fb,#e9f0f8);
  border-color:#cfd8e5;
  color:#334155;
}
html[data-theme='light'] .filter-reset::before{
  border-color:#c2cfdf;
  color:#334155;
}
html[data-theme='light'] .filter-reset:hover{
  background:linear-gradient(180deg,#edf3fb,#e4ecf7);
  border-color:#c2cfdf;
  color:#0f172a;
}
html[data-theme='light'] .filter-reset:hover::before{
  border-color:#aebfd4;
  color:#0f172a;
}
.catalog-toolbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:1.1rem;padding:.65rem .9rem;background:var(--surface);border:1px solid var(--line);border-radius:12px}
.catalog-count--inline{margin-left:auto;align-self:flex-end;min-height:44px;display:flex;align-items:center;padding:0 1.1rem;background:var(--surface);border:1px solid var(--line);border-radius:10px;white-space:nowrap}
.catalog-count--left{margin-left:0;order:-1;min-height:42px;padding:10px 13px;font-size:.88rem;line-height:1}
@media (max-width:980px){.catalog-count--inline{margin-left:0;flex:1 1 100%;justify-content:center}}
@media (max-width:760px){
  .catalog-filters{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    align-items:end;
  }
  .catalog-count--left{
    grid-column:1/-1;
    width:100%;
    min-width:0;
    justify-content:center;
  }
  .filter-group{
    min-width:0;
  }
  .filter-group select{
    width:100%;
    min-width:0;
  }
  .filter-reset{
    min-width:0;
  }
  .filter-reset--icon{
    width:auto;
    min-width:42px;
    padding:0 12px;
    gap:8px;
    justify-self:end;
  }
  .filter-reset__text{
    display:inline;
    font-size:.82rem;
    font-weight:700;
    line-height:1;
  }
}

/* Product spec tags on cards */
.product-card__specs{display:flex;flex-wrap:wrap;gap:7px;margin-top:6px;margin-bottom:4px;min-height:30px;align-content:flex-start}
.spec-tag{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:8px;font-size:.72rem;font-weight:700;background:var(--surface2);border:1px solid var(--line);color:var(--muted)}
.spec-tag--state-new{
  background:rgba(5,40,54,.6);
  border-color:rgba(22,214,200,.58);
  color:#1ce7d5;
}
.spec-tag--state-bu{
  background:rgba(10,34,64,.58);
  border-color:rgba(78,149,255,.58);
  color:#7eb6ff;
}
.spec-tag--discount{
  background:rgba(46,24,30,.55);
  border-color:rgba(248,95,95,.62);
  color:#ff8a86;
}
.spec-tag--dry{
  background:rgba(6,43,66,.58);
  border-color:rgba(70,190,255,.58);
  color:#84ceff;
}
.spec-tag--type-vertical{
  background:rgba(7,50,45,.62);
  border-color:rgba(22,214,200,.62);
  color:#27e5c8;
}
.spec-tag--dims{
  background:rgba(10,28,52,.75);
  border-color:rgba(63,140,255,.62);
  color:#79beff;
}
.spec-tag--warranty{
  background:rgba(8,46,39,.62);
  border-color:rgba(24,196,133,.62);
  color:#29d8a7;
}
.spec-tag--post{
  background:rgba(46,24,30,.55);
  border-color:rgba(248,95,95,.62);
  color:#ff8a86;
}
.spec-tag--kg,
.spec-tag--rpm{
  background:rgba(18,32,49,.9);
  border-color:rgba(118,141,170,.34);
  font-weight:800;
  letter-spacing:.01em;
  white-space:nowrap;
  box-shadow:none;
}
.spec-tag--kg{color:#19d9c4}
.spec-tag--rpm{color:#a998ff}
html[data-theme='light'] .spec-tag--state-new{
  background:linear-gradient(180deg,#f2f6fb,#e9f0f8);
  border-color:#b8e1da;
  color:#0fb9ab;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85);
}
html[data-theme='light'] .spec-tag--state-bu{
  background:linear-gradient(180deg,#f2f6fb,#e9f0f8);
  border-color:#bdd3f4;
  color:#2a78e8;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85);
}
html[data-theme='light'] .spec-tag--discount{
  background:linear-gradient(180deg,#f2f6fb,#e9f0f8);
  border-color:#e6bfc7;
  color:#d16b73;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85);
}
html[data-theme='light'] .spec-tag--dry{
  background:linear-gradient(180deg,#f2f6fb,#e9f0f8);
  border-color:#bdd3f4;
  color:#2a78e8;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85);
}
html[data-theme='light'] .spec-tag--type-vertical,
html[data-theme='light'] .spec-tag--warranty,
html[data-theme='light'] .spec-tag--dims,
html[data-theme='light'] .spec-tag--post{
  background:linear-gradient(180deg,#f2f6fb,#e9f0f8);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85);
}
html[data-theme='light'] .spec-tag--type-vertical{
  border-color:#b8e1da;
  color:#0fb9ab;
}
html[data-theme='light'] .spec-tag--warranty{
  border-color:#b8e1da;
  color:#0fa694;
}
html[data-theme='light'] .spec-tag--dims{
  border-color:#bdd3f4;
  color:#2a78e8;
}
html[data-theme='light'] .spec-tag--post{
  border-color:#e6bfc7;
  color:#d16b73;
}
html[data-theme='light'] .spec-tag--kg,
html[data-theme='light'] .spec-tag--rpm{
  background:linear-gradient(180deg,#f2f6fb,#e9f0f8);
  border-color:#cfd8e5;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85);
}
html[data-theme='light'] .spec-tag--kg{color:#0fb9ab}
html[data-theme='light'] .spec-tag--rpm{color:#8f7cf4}

/* Full catalog grid */
.product-grid--full{grid-template-columns:repeat(3,1fr)}
@media(max-width:980px){.product-grid--full{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.product-grid--full{grid-template-columns:repeat(2,1fr);gap:8px}}

.product-card--catalog .product-card__body{display:flex;flex-direction:column;gap:.35rem;flex:1}
.product-card__desc{font-size:.82rem;color:var(--muted);line-height:1.4;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.product-card__actions{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin-top:auto;
  padding-top:.5rem;
  width:100%;
}
.product-card__actions .btn{
  min-height:40px;
  border-radius:13px;
  font-weight:800;
  letter-spacing:.01em;
  padding:0 12px;
  width:100%;
}
@media(max-width:620px){
  .product-card__head-row{flex-wrap:nowrap;gap:8px}
  .product-card__price--inline{text-align:left}
  .product-card__actions{grid-template-columns:1fr;gap:6px;}
}

/* Breadcrumbs + product detail */
.breadcrumb{font-size:.85rem;color:var(--muted);margin:0 0 1rem;line-height:1.5}
.breadcrumb a{color:var(--acc2);text-decoration:none}
.breadcrumb a:hover{text-decoration:underline}
.product-page__head{margin-bottom:1rem}
.product-page__split{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,380px);gap:clamp(1rem,2.4vw,1.6rem);align-items:start;margin-top:1.25rem;margin-bottom:1.6rem}
.product-page__title{font-size:clamp(1.35rem,3vw,1.85rem);margin:0 0 .35rem;line-height:1.15}
.product-page__cat{color:var(--muted);font-size:.9rem;margin:0 0 .5rem}
.product-page__pricecard{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:1.1rem 1.15rem 1.15rem;box-shadow:var(--shadow-soft);max-width:380px;width:100%}
.product-page__price-lg{font-size:clamp(1.65rem,4vw,2.1rem);font-weight:800;color:var(--acc);line-height:1.1;margin:0}
.product-page__price-lg .product__old{font-size:1rem;font-weight:600;margin-left:.35rem;vertical-align:middle}
.product-page__price-note{font-size:.78rem;color:var(--muted);margin:.4rem 0 0;line-height:1.35}
.product-page__cta{display:flex;flex-direction:column;gap:10px;margin-top:1rem}
.product-page__cta-row{display:flex;flex-wrap:wrap;gap:8px}
.product-page__cta-row .btn{flex:1;min-width:0;text-decoration:none;justify-content:center}
.product-page__messengers{display:flex;flex-wrap:wrap;gap:8px;margin-top:2px}
.product-page__messengers .btn{flex:1;min-width:0;padding:0 10px;min-height:40px;font-size:.75rem;white-space:nowrap;letter-spacing:.01em}
.product-page__messengers .btn .btn__icon{width:14px;height:14px}
.product-page__price{font-size:1.35rem;color:var(--acc);margin:0}
.product-page__price strong{font-weight:800}
.product-page__gallery{margin:1rem 0 1.25rem}
.product-page__gallery--in-body{width:100%;max-width:100%;margin:0 0 1rem}

/* Product page gallery + lightbox */
.product-gallery{max-width:100%;margin:0;width:100%}
.product-gallery__stage{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:stretch}
.product-gallery__frames-wrap{min-width:0}
.product-gallery__frames{display:grid;grid-template-columns:1fr;gap:8px;min-width:0;width:100%}
.product-gallery--pair .product-gallery__frames{grid-template-columns:1fr 1fr}
.product-gallery__frames--tail{grid-template-columns:1fr}
.product-gallery__btn{width:44px;min-height:120px;border-radius:12px;border:1px solid var(--line);background:var(--surface);color:var(--text);cursor:pointer;font-size:1.15rem;display:flex;align-items:center;justify-content:center;transition:background .15s,border-color .15s;flex-shrink:0}
.product-gallery__btn:hover:not(:disabled){background:var(--surface2);border-color:color-mix(in srgb,var(--acc2) 35%,var(--line))}
.product-gallery__btn:disabled{opacity:.32;cursor:not-allowed}
.product-gallery__frame{border-radius:16px;border:1px solid var(--line);overflow:hidden;background:var(--surface2);cursor:zoom-in;min-height:120px;display:flex;align-items:center;justify-content:center;outline:none;width:100%}
.product-gallery--vertical .product-gallery__frame{aspect-ratio:auto;min-height:160px;max-height:min(70vh,640px)}
.product-gallery:not(.product-gallery--vertical) .product-gallery__frame{aspect-ratio:4/3;max-height:min(58vh,540px)}
.product-gallery__frame:focus-visible{box-shadow:0 0 0 2px color-mix(in srgb,var(--acc2) 50%,transparent)}
.product-gallery__img{width:100%;height:100%;max-height:min(70vh,640px);max-width:100%;object-fit:contain;display:block;vertical-align:middle}
.product-gallery:not(.product-gallery--vertical) .product-gallery__img{max-height:min(58vh,540px)}
@media(max-width:800px){
  .product-gallery--pair .product-gallery__frames{grid-template-columns:1fr}
}
.product-gallery__counter{text-align:center;font-size:.88rem;color:var(--muted);margin:.5rem 0 0}
.product-gallery__hint{text-align:center;font-size:.78rem;color:var(--muted);margin:.35rem 0 0;opacity:.9}

.photo-lightbox{position:fixed;inset:0;z-index:100;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}
.photo-lightbox[hidden]{display:none!important}
.photo-lightbox__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.9);border:none;padding:0;margin:0;cursor:pointer}
.photo-lightbox__close{position:absolute;top:max(10px,env(safe-area-inset-top));right:max(10px,env(safe-area-inset-right));z-index:3;width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:var(--surface);color:var(--text);font-size:1.5rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}
.photo-lightbox__toolbar{position:absolute;bottom:max(20px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);z-index:3;display:flex;gap:14px;pointer-events:none}
.photo-lightbox__toolbar .photo-lightbox__btn{pointer-events:auto}
.photo-lightbox__btn{width:48px;height:48px;border-radius:50%;border:1px solid var(--line);background:var(--surface);color:var(--text);cursor:pointer;font-size:1.1rem;display:flex;align-items:center;justify-content:center}
.photo-lightbox__btn:hover:not(:disabled){background:var(--surface2)}
.photo-lightbox__btn:disabled{opacity:.35;cursor:not-allowed}
.photo-lightbox__imgwrap{position:relative;z-index:2;flex:1;display:flex;align-items:center;justify-content:center;width:100%;min-height:0;padding:48px 12px 72px}
.photo-lightbox__img{max-width:100%;max-height:calc(100vh - 140px);width:auto;height:auto;object-fit:contain;cursor:zoom-in;transition:transform .22s ease;transform-origin:center center}
.photo-lightbox__img--zoom{cursor:zoom-out;transform:scale(1.75)}
.photo-lightbox__hint{position:relative;z-index:3;color:var(--muted);font-size:.76rem;margin:0;text-align:center;max-width:22rem;padding:0 12px;pointer-events:none}
@media(max-width:520px){
  .product-gallery__btn{min-height:60px;height:60px;width:32px;font-size:.9rem;border-radius:10px}
  .photo-lightbox__img--zoom{transform:scale(1.35)}
}
.product-page__specs{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;margin-bottom:1rem;font-size:.9rem;color:var(--muted)}
.product-page__meta span{color:var(--text);font-weight:600}
.product-page__body{margin-top:0}
.product-page__section-title{font-size:1.02rem;font-weight:800;margin:0 0 .6rem;color:var(--text)}
.product-page__chars{margin-top:.25rem}
.product-page__dl{margin:0 0 1.25rem;padding:0;font-size:.92rem}
.product-page__dl-row{display:grid;grid-template-columns:minmax(100px,140px) 1fr;gap:.5rem 1rem;align-items:baseline;padding:.55rem 0;border-bottom:1px solid var(--line)}
.product-page__dl-row:last-child{border-bottom:none}
.product-page__dl dt{margin:0;font-weight:700;color:var(--muted);font-size:.82rem}
.product-page__dl dd{margin:0;color:var(--text);line-height:1.45}
.product-page__desc{color:var(--text);font-size:.95rem;line-height:1.55;word-break:break-word}
.product-page__descblocks{display:flex;flex-direction:column;gap:.65rem}
.product-page__desc-lead{margin:0;color:var(--text);font-size:1rem;line-height:1.45;font-weight:700}
.product-page__desc-sub{margin:0;color:var(--text);font-size:.95rem;line-height:1.45}
.product-page__specchips{display:flex;flex-wrap:wrap;gap:8px;margin-top:2px}
.product-page__details{margin-top:4px}
.product-page__details-summary{
  list-style:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:38px;
  padding:0 14px;
  border-radius:10px;
  border:1px solid rgba(63,140,255,.62);
  background:rgba(10,28,52,.75);
  color:#79beff;
  font-size:.82rem;
  font-weight:800;
  cursor:pointer;
  user-select:none;
}
.product-page__details-summary::-webkit-details-marker{display:none}
.product-page__details-summary::after{
  content:"▾";
  font-size:.85em;
  line-height:1;
  opacity:.9;
  transform:translateY(1px);
  transition:transform .18s ease;
}
.product-page__details-summary:focus{outline:none}
.product-page__details-summary:focus-visible{
  outline:2px solid rgba(92,164,255,.75);
  outline-offset:2px;
}
.product-page__details[open] .product-page__details-summary{
  background:rgba(14,38,68,.92);
  border-color:rgba(92,164,255,.85);
  color:#bfe2ff;
}
.product-page__details[open] .product-page__details-summary::after{
  transform:rotate(180deg) translateY(0);
}
.product-page__details-list{
  margin:10px 0 0;
  padding:0 0 0 18px;
  display:grid;
  gap:6px;
  color:var(--muted);
  font-size:.9rem;
  line-height:1.45;
}
.product-page__desc-line{margin:0;color:var(--text);font-size:.92rem;line-height:1.55;padding-left:.65rem;border-left:3px solid color-mix(in srgb,var(--acc2) 45%,transparent)}
.product-page__actions{margin-top:1.25rem}
html[data-theme='light'] .product-page__details-summary{
  border-color:#bdd3f4;
  background:linear-gradient(180deg,#f2f6fb,#e9f0f8);
  color:#2a78e8;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.88);
}
html[data-theme='light'] .product-page__details[open] .product-page__details-summary{
  border-color:#a9c4eb;
  background:linear-gradient(180deg,#edf3fb,#e4ecf7);
  color:#2168cc;
}
html[data-theme='light'] .product-page__details-summary:focus-visible{
  outline:2px solid rgba(42,120,232,.45);
}
@media(max-width:1080px){
  .product-page__split{grid-template-columns:1fr}
}
@media(max-width:760px){
  .breadcrumb{font-size:.8rem;white-space:nowrap;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:2px}
  .breadcrumb::-webkit-scrollbar{display:none}
  .product-page__gallery{margin:.7rem 0 1rem}
  .product-gallery__stage{gap:6px;align-items:center}
  .product-gallery__btn{min-height:72px;height:72px;width:34px;font-size:.95rem;border-radius:10px}
  .product-page__descblocks{max-width:560px;margin:0 auto;align-items:center}
  .product-page__desc-lead,.product-page__desc-sub{text-align:center;max-width:50ch}
  .product-page__specchips{justify-content:center}
  .product-page__desc-line{text-align:center;max-width:48ch;padding-left:0;border-left:none}
  .product-page__details-list{text-align:left}
  .product-page__pricecard{margin:0 auto}
}
.btn--sm{min-height:38px;padding:0 14px;font-size:.82rem;border-radius:10px}

/* Brands marquee */
.marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.marquee__track{display:flex;gap:10px;width:max-content;animation:marquee-scroll 28s linear infinite}
.marquee:hover .marquee__track{animation-play-state:paused}
@keyframes marquee-scroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
.brand-chip{display:inline-flex;align-items:center;padding:8px 20px;border-radius:10px;font-size:.88rem;font-weight:700;background:var(--surface);border:1px solid var(--line);color:var(--muted);transition:border-color .2s,color .2s,transform .2s,box-shadow .2s;white-space:nowrap;cursor:default;flex-shrink:0}
.brand-chip:hover{border-color:var(--acc2);color:var(--text);transform:translateY(-2px);box-shadow:0 4px 16px rgba(46,196,168,.15)}

/* Stats grid */
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.stat-card{background:linear-gradient(165deg,var(--surface),var(--surface-highlight));border:1px solid var(--line);border-radius:16px;padding:1.4rem 1.3rem;text-align:center;transition:transform .15s,box-shadow .15s}
.stat-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-soft)}
.stat-card__val{font-size:clamp(1.6rem,3vw,2.2rem);font-weight:900;color:var(--text);line-height:1.1}
.stat-card__val span{color:var(--acc2);font-size:.65em}
.stat-card__label{font-size:.82rem;color:var(--muted);margin-top:.5rem;line-height:1.35}
.trust-explain{
  margin-top:1rem;
  padding:12px 14px;
  border:1px solid var(--line);
  border-radius:14px;
  background:linear-gradient(165deg,var(--surface),var(--surface-highlight));
  display:grid;
  gap:8px;
}
.trust-explain p{
  margin:0;
  font-size:.9rem;
  line-height:1.45;
  color:var(--muted);
}
.trust-explain strong{color:var(--text)}
@media(max-width:760px){.stats-grid{grid-template-columns:repeat(2,1fr)}}

/* Reviews */
.reviews-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:24px}
.reviews-stats__item{background:linear-gradient(165deg,var(--surface),var(--surface-highlight));border:1px solid color-mix(in srgb,var(--acc2) 26%,var(--line));border-radius:14px;padding:1.05rem 1.1rem;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex;flex-direction:column;gap:.4rem;min-height:132px}
.reviews-stats__item:hover{transform:translateY(-2px);box-shadow:var(--shadow-soft);border-color:color-mix(in srgb,var(--acc2) 35%,var(--line))}
.reviews-stats__item--link{text-decoration:none;color:inherit;display:block}
.reviews-stats__platform{font-size:.86rem;font-weight:800;color:var(--text)}
.reviews-stats__value{font-size:1.15rem;font-weight:900;color:var(--text);line-height:1.2}
.reviews-stats__label{font-size:.8rem;color:var(--muted);line-height:1.3}
.reviews-stats__foot{margin-top:auto;display:flex;align-items:flex-end;justify-content:space-between;gap:10px}
html[data-theme='light'] .reviews-stats__item{
  background:linear-gradient(180deg,#f7faff,#eef3fb);
  border-color:#c8d5e6;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
}
html[data-theme='light'] .reviews-stats__item:hover{
  border-color:#a9c4eb;
  box-shadow:0 12px 26px rgba(42,120,232,.12),inset 0 1px 0 rgba(255,255,255,.9);
}
.reviews-stats__btn{
  margin-top:0;
  align-self:auto;
  white-space:nowrap;
  min-height:38px;
  border-radius:11px;
  background:rgba(10,28,52,.75);
  border:1px solid rgba(63,140,255,.62);
  color:#79beff;
  box-shadow:none;
}
.reviews-stats__btn:hover{
  background:rgba(14,38,68,.92);
  border-color:rgba(92,164,255,.85);
  color:#bfe2ff;
}
html[data-theme='light'] .reviews-stats__btn{
  background:linear-gradient(180deg,#f2f6fb,#e9f0f8);
  border-color:#bdd3f4;
  color:#2a78e8;
}
html[data-theme='light'] .reviews-stats__btn:hover{
  background:linear-gradient(180deg,#edf3fb,#e4ecf7);
  border-color:#a9c4eb;
  color:#2168cc;
}
.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.review-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:1.3rem;display:flex;flex-direction:column;gap:.5rem;transition:transform .15s,box-shadow .15s}
.review-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-soft)}
.review-card__head{display:flex;align-items:center;justify-content:space-between;gap:8px}
.review-card__head strong{font-size:.95rem}
.review-card__stars{color:#f59e0b;font-size:.85rem;letter-spacing:1px}
.review-card p{margin:0;font-size:.9rem;color:var(--muted);line-height:1.5;flex:1}
html[data-theme='light'] .review-card{
  background:linear-gradient(180deg,#fafcff,#f1f5fb);
  border-color:#d2dbe8;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.92);
}
html[data-theme='light'] .review-card:hover{
  border-color:#b7c7da;
  box-shadow:0 12px 24px rgba(15,23,42,.08),inset 0 1px 0 rgba(255,255,255,.92);
}
.review-card__src{
  font-size:.72rem;
  font-weight:700;
  color:#27e5c8;
  text-transform:uppercase;
  letter-spacing:.08em;
  align-self:flex-start;
  padding:4px 10px;
  background:rgba(7,50,45,.62);
  border:1px solid rgba(22,214,200,.62);
  border-radius:8px;
}
/* Compact links block (washers page) */
.quick-links-block{
  margin-top:1.35rem;
  padding-top:.15rem;
}
.quick-links-block__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:.65rem;
}
.quick-links-block__head h3{
  margin:0;
  font-size:1.08rem;
  font-weight:800;
  color:var(--text);
}
.quick-links-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.quick-links-grid .btn{
  width:100%;
  justify-content:center;
  min-width:0;
}
@media(max-width:1080px){
  .quick-links-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .quick-links-block__head{flex-wrap:wrap;align-items:flex-start}
  .quick-links-grid{grid-template-columns:1fr}
}
html[data-theme='light'] .review-card__src{
  background:linear-gradient(180deg,#f2f6fb,#e9f0f8);
  border-color:#b8e1da;
  color:#0fa694;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.88);
}
@media(max-width:980px){.reviews-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){
  .reviews-stats{grid-template-columns:1fr;gap:8px}
  .reviews-stats__item{flex-direction:row;align-items:center;justify-content:space-between;min-height:auto;padding:0.75rem 1rem;gap:12px}
  .reviews-stats__value{font-size:1.05rem;white-space:nowrap}
  .reviews-stats__foot{margin-top:0;align-items:center;justify-content:flex-end;gap:8px;flex:1 1 auto}
  .reviews-stats__label{margin-right:auto;white-space:nowrap}
  .reviews-stats__btn{min-height:30px;padding:0 12px;font-size:0.75rem;border-radius:8px}
}
@media(max-width:760px){.reviews-grid{grid-template-columns:1fr}}

/* CTA banner */
.cta-banner h2{font-size:clamp(1.4rem,3vw,2rem);margin:0 0 .5rem}
.lead-form{margin:1rem auto 0;max-width:560px;display:grid;gap:10px;text-align:left}
.lead-form__channels{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:10px;
  margin:2px 0 10px;
}
.lead-form__channel{
  width:100%;
  min-height:38px;
  padding:0 12px;
  font-size:.82rem;
  font-weight:800;
  justify-content:center;
}
.lead-form__channel--wa{
  border-color:rgba(25,211,114,.65);
  color:#7df0bd;
  background:rgba(7,52,33,.58);
}
.lead-form__channel--wa:hover{
  border-color:rgba(37,228,131,.85);
  color:#bfffe2;
  background:rgba(8,70,43,.82);
}
.lead-form__channel--tg{
  border-color:rgba(35,165,255,.68);
  color:#86d4ff;
  background:rgba(8,34,64,.58);
}
.lead-form__channel--tg:hover{
  border-color:rgba(67,182,255,.9);
  color:#c8edff;
  background:rgba(11,46,84,.84);
}
.lead-form__channel--max{
  border-color:rgba(126,111,255,.68);
  color:#c4bcff;
  background:rgba(28,22,68,.58);
}
.lead-form__channel--max:hover{
  border-color:rgba(146,130,255,.9);
  color:#e3deff;
  background:rgba(38,31,87,.84);
}
.lead-form__channel--vk{
  border-color:rgba(97,168,255,.68);
  color:#acd8ff;
  background:rgba(20,45,76,.58);
}
.lead-form__channel--vk:hover{
  border-color:rgba(126,186,255,.9);
  color:#dcefff;
  background:rgba(29,61,98,.84);
}
html[data-theme='light'] .lead-form__channel--wa{
  border-color:#88dcb3;
  color:#0f8f56;
  background:linear-gradient(180deg,#f3fcf7,#e9f9f0);
}
html[data-theme='light'] .lead-form__channel--tg{
  border-color:#9fd2ff;
  color:#1d7ad8;
  background:linear-gradient(180deg,#f2f8ff,#e9f2ff);
}
html[data-theme='light'] .lead-form__channel--max{
  border-color:#c4b8ff;
  color:#5b51ba;
  background:linear-gradient(180deg,#f6f4ff,#efecff);
}
html[data-theme='light'] .lead-form__channel--vk{
  border-color:#abd0ff;
  color:#3b6fb7;
  background:linear-gradient(180deg,#f2f7ff,#e9f1ff);
}
.lead-form__grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:22px}
.lead-form__field{display:grid;gap:4px}
.lead-form__field span{font-size:.75rem;color:var(--muted);font-weight:700;letter-spacing:.02em}
.lead-form__field input,.lead-form__field textarea{width:100%;border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:10px;padding:10px 12px;font-size:.92rem;font-family:inherit}
.lead-form__field input:focus,.lead-form__field textarea:focus{outline:none;border-color:color-mix(in srgb,var(--acc2) 48%,var(--line));box-shadow:0 0 0 2px color-mix(in srgb,var(--acc2) 24%,transparent)}
.lead-form__phone-hint{font-size:.74rem;color:var(--muted);line-height:1.3}
.lead-form__field--phone{position:relative}
.lead-form__field--phone .lead-form__phone-hint{position:absolute;left:0;top:100%;margin-top:4px;white-space:nowrap}
.lead-form__consent{display:flex;gap:8px;align-items:flex-start;font-size:.82rem;color:var(--muted);line-height:1.35}
.lead-form__consent input{margin-top:2px}
.lead-form__consent a{color:var(--acc2);text-decoration:none}
.lead-form__consent a:hover{text-decoration:underline}
.lead-form .btn{justify-self:start}
.lead-form__note{margin:0;color:var(--muted);font-size:.78rem;line-height:1.35}
@media(max-width:640px){.lead-form__grid{grid-template-columns:1fr;margin-bottom:10px}.lead-form__field--phone{margin-bottom:22px}.lead-form .btn{width:100%;justify-self:stretch}}
@media(max-width:640px){
  .lead-form__channels{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .lead-form__channels .lead-form__channel:first-child{
    grid-column:1/-1;
  }
  .lead-form__channels .btn{
    width:100%;
    justify-self:auto;
  }
}

/* Hero img wrap */
.hero-img-wrap{position:relative;border-radius:18px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow-soft);width:80%;margin-left:auto}
.hero-img-wrap img{width:100%;display:block;aspect-ratio:5/3;object-fit:cover}

.block{padding:0}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px;border:1px solid var(--line)}
.facts-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px}
.facts-grid>div{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px}
.list{display:grid;gap:8px;color:var(--muted)}
.faq-block details{border:1px solid var(--line);border-radius:12px;padding:10px 12px;margin-bottom:8px;background:var(--surface)}
.faq-block summary{cursor:pointer;font-weight:700}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px}
.contact-grid a{color:var(--acc2);text-decoration:none;font-weight:700}
.contact-grid a:hover{text-decoration:underline}
.map-wrap{margin-top:14px;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.map-wrap iframe{width:100%;height:360px;border:0}
.map-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}

/* Услуги: калькулятор доставки */
.delivery-calc{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:1.1rem 1.2rem 1.2rem;max-width:520px}
.delivery-calc h2{margin:0 0 .35rem;font-size:1.15rem}
.delivery-calc .lead{margin:0 0 1rem;font-size:.9rem;color:var(--muted)}
.delivery-calc label{display:block;font-size:.82rem;font-weight:700;color:var(--muted);margin-bottom:.35rem}
.delivery-calc select,.delivery-calc input[type="number"]{width:100%;max-width:320px;padding:10px 12px;border-radius:10px;border:1px solid var(--line);background:var(--bg-elevated);color:var(--text);font-size:.9rem;margin-bottom:1rem}
.delivery-calc__row{margin-bottom:.25rem}
.delivery-calc__out{margin-top:1rem;padding:12px 14px;border-radius:12px;background:var(--surface2);border:1px solid var(--line);font-size:.95rem}
.delivery-calc__out strong{color:var(--acc);font-size:1.1rem}
.delivery-calc__note{font-size:.78rem;color:var(--muted);margin-top:.5rem;line-height:1.45}
#kalkulyator,#podklyuchenie,#garantiya,#rassrochka{scroll-margin-top:64px}

/* Floating contact panel (FAB) */
.fab-panel{position:fixed;right:18px;bottom:24px;z-index:50;display:flex;flex-direction:column-reverse;align-items:center;gap:10px}
.fab-toggle{
  width:52px;
  height:52px;
  border-radius:50%;
  border:1px solid rgba(63,140,255,.62);
  background:rgba(10,28,52,.86);
  color:#79beff;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 0 18px rgba(37,121,255,.28);
  transition:transform .2s,background .15s,border-color .15s,color .15s;
}
.fab-toggle:hover{
  background:rgba(14,38,68,.95);
  border-color:rgba(92,164,255,.85);
  color:#bfe2ff;
  transform:scale(1.06);
}
html[data-theme='light'] .fab-toggle{
  border-color:#bdd3f4;
  background:linear-gradient(180deg,#f2f6fb,#e9f0f8);
  color:#2a78e8;
  box-shadow:0 8px 24px rgba(42,120,232,.22),inset 0 1px 0 rgba(255,255,255,.88);
}
html[data-theme='light'] .fab-toggle:hover{
  border-color:#a9c4eb;
  background:linear-gradient(180deg,#edf3fb,#e4ecf7);
  color:#2168cc;
}
.fab-toggle .fab-icon-open{display:block}
.fab-toggle .fab-icon-close{display:none}
.fab-panel.open .fab-toggle .fab-icon-open{display:none}
.fab-panel.open .fab-toggle .fab-icon-close{display:block}
.fab-items{display:flex;flex-direction:column-reverse;gap:10px;opacity:0;pointer-events:none;transform:translateY(10px) scale(.9);transition:opacity .25s,transform .25s}
.fab-panel.open .fab-items{opacity:1;pointer-events:auto;transform:translateY(0) scale(1)}
.fab-item{width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;text-decoration:none;box-shadow:0 3px 14px rgba(0,0,0,.25);transition:transform .15s}
.fab-item:hover{transform:scale(1.12)}
.fab-item--phone{background:#e85a3c}
.fab-item--wa{background:#25d366}
.fab-item--tg{background:#229ed9}
.fab-item--vk{background:#4680c2;font-family:system-ui,-apple-system,sans-serif;font-weight:900;font-size:18px;letter-spacing:-0.5px;line-height:1}
.fab-item--max{background:linear-gradient(145deg,#5b4dff,#00c6ff);padding:2px}
.fab-item--max img{width:30px;height:30px;border-radius:50%;object-fit:cover;display:block}
@media(max-width:480px){.fab-panel{right:12px;bottom:16px}.fab-toggle{width:48px;height:48px}.fab-item{width:42px;height:42px}.fab-item--max img{width:26px;height:26px}}

.footer{border-top:1px solid var(--line);margin-top:0;padding:30px 0 16px;background:color-mix(in srgb,var(--bg) 88%,transparent)}
.foot-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;align-items:start}
.foot-col{min-width:0}
.foot-col p{margin:.45rem 0}
.foot-title{font-size:1.04rem;font-weight:900;color:var(--text);margin:0 0 .75rem}
.footer a{color:var(--muted);text-decoration:none}
.footer a:hover{color:var(--acc2)}
.foot-col--contact{display:grid;gap:.6rem}
.foot-contact{display:flex;align-items:flex-start;gap:10px;color:var(--muted);text-decoration:none}
.foot-contact__icon{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:color-mix(in srgb,var(--acc2) 18%,transparent);color:var(--acc2);flex:0 0 22px;margin-top:1px}
.foot-contact__text{display:grid;gap:2px;line-height:1.35}
.foot-contact__text strong{color:var(--text);font-size:.95rem}
.foot-contact__value{font-size:.95rem;color:var(--muted)}
.foot-messengers{display:flex;gap:10px;flex-wrap:wrap;margin-top:.15rem}
.footer .foot-messenger{width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;transition:transform .15s,filter .15s}
.footer .foot-messenger:hover{color:#fff}
.foot-messenger:hover{transform:translateY(-1px) scale(1.05);filter:brightness(1.05)}
.foot-messenger--phone{background:#e85a3c}
.foot-messenger--tg{background:#229ed9}
.foot-messenger--wa{background:#25d366}
.foot-messenger--vk{background:#4680c2}
.foot-messenger--max{background:linear-gradient(145deg,#5b4dff,#00c6ff);padding:2px}
.foot-messenger--max img{width:30px;height:30px;border-radius:50%;display:block;object-fit:cover}
.foot-bottom{margin-top:16px;padding-top:12px;border-top:1px solid var(--line);color:var(--muted);font-size:.86rem}

@media (max-width:980px){.hero-grid,.cards,.cards.three{grid-template-columns:1fr 1fr}.promos-grid{grid-template-columns:1fr 1fr}.hero-img-wrap{width:90%}.hero-img-wrap img{aspect-ratio:4/3}}
@media (max-width:1080px){
  .burger{display:block;flex-shrink:0}
  .phone--header{display:none!important}
  .phone--nav{
    display:flex!important;
    align-items:center;
    justify-content:center;
    width:100%;
    box-sizing:border-box;
    margin-top:12px;
    padding:12px 16px;
    border-radius:13px;
    border:1px solid rgba(22,214,200,.62);
    font-size:.95rem;
    font-weight:800;
    letter-spacing:.01em;
    background:rgba(7,50,45,.62)!important;
    color:#27e5c8!important;
    box-shadow:none;
  }
  html[data-theme='light'] .phone--nav{
    background:linear-gradient(180deg,#f2f6fb,#e9f0f8)!important;
    border-color:#b8e1da!important;
    color:#10a893!important;
  }
  .nav-links{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;background:var(--bg-elevated);border-bottom:1px solid var(--line);padding:10px 20px 16px;gap:2px;box-shadow:0 16px 40px rgba(0,0,0,.35)}
  .nav-links.open{display:flex}
  .nav-links a:not(.phone--nav){padding:12px 14px;border-radius:12px;font-size:.95rem}
  .top-inner{flex-wrap:wrap;gap:8px;padding:6px 16px;position:relative}
  .top-brand{order:1}
  .top-cta{order:2;margin-left:auto}
  .burger{order:3}
  .top-brand .nav-home{display:none !important;}
  .top-inner--brand-sm .top-brand .nav-home{display:none !important;}
  .theme-mode-label{display:none !important;}
}
@media (max-width:760px){
  .hero-grid,.cards,.cards.two,.cards.three,.gallery,.contact-grid,.facts-grid{grid-template-columns:1fr}
  .promos-grid{grid-template-columns:1fr}
  .hero-img-wrap{width:100%;margin-left:0}
  .foot-grid{grid-template-columns:1fr;gap:16px}
  .foot-col--contact{grid-column:auto}
}
@media (max-width:480px){
  .actions{flex-direction:column}
  .btn{width:100%}
}



.product-card__specs { display: flex; flex-wrap: wrap; gap: 4px; margin-bottom: 8px; margin-top: 4px; }

.spec-tag--height{color:#f87171}
.spec-tag--vol{color:#60a5fa}
.spec-tag--nofrost{color:#c084fc}
.spec-tag--inverter{color:#fbbf24}
.spec-tag--dim{color:#a3e635}
.spec-tag--power{color:#f472b6}
.spec-tag--sets{color:#fb923c}
.spec-tag--inst{color:#a78bfa}
.spec-tag--feat{color:#2dd4bf}
.spec-tag--fat{color:#e879f9}
.spec-tag--energy{color:#ffd859}
html[data-theme='light'] .spec-tag--height{color:#ef4444}
html[data-theme='light'] .spec-tag--vol{color:#3b82f6}
html[data-theme='light'] .spec-tag--nofrost{color:#9333ea}
html[data-theme='light'] .spec-tag--inverter{color:#d97706}
html[data-theme='light'] .spec-tag--dim{color:#65a30d}
html[data-theme='light'] .spec-tag--power{color:#db2777}
html[data-theme='light'] .spec-tag--sets{color:#ea580c}
html[data-theme='light'] .spec-tag--inst{color:#7c3aed}
html[data-theme='light'] .spec-tag--feat{color:#0d9488}
html[data-theme='light'] .spec-tag--fat{color:#d946ef}
html[data-theme='light'] .spec-tag--energy{color:#78350f}
.rating-badge{display:inline-flex;align-items:center;gap:6px;background:color-mix(in srgb,var(--acc2) 15%,transparent);color:var(--acc2);padding:4px 12px;border-radius:99px;font-size:.9rem;font-weight:700;margin-left:12px;vertical-align:middle;border:1px solid color-mix(in srgb,var(--acc2) 30%,transparent);box-shadow:0 2px 8px rgba(46,196,168,.1)}
.rating-badge::before{content:"★";color:var(--acc2);font-size:.85rem}
@media (max-width:640px){.rating-badge{margin-left:0;margin-top:8px;display:flex;width:fit-content}}

.anim-up {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity .8s cubic-bezier(.16,1,.3,1), transform .8s cubic-bezier(.16,1,.3,1);
  will-change: opacity, transform;
}
.anim-up.visible {
  opacity: 1;
  transform: translateY(0);
}

/* TEAM GRID */
.team-grid {
  display: grid;
  gap: 2rem;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  margin-top: 2rem;
}
.team-card {
  background: var(--surface);
  border-radius: var(--radius-lg);
  padding: 2rem;
  text-align: center;
  border: 1px solid var(--line);
  transition: transform .3s ease, box-shadow .3s ease;
}
.team-card:hover {
  transform: translateY(-5px);
  box-shadow: var(--shadow-hover);
}
.team-card__img {
  width: 160px;
  height: 160px;
  object-fit: cover;
  border-radius: 50%;
  margin: 0 auto 1.5rem auto;
  display: block;
  border: 4px solid var(--blue);
  box-shadow: var(--shadow-sm);
}
.team-card__name {
  font-size: 1.25rem;
  font-weight: 700;
  margin-bottom: 0.25rem;
  color: var(--text);
}
.team-card__role {
  font-size: 0.95rem;
  color: var(--acc2);
  margin-bottom: 1rem;
  font-weight: 500;
}
.team-card__desc {
  font-size: 0.95rem;
  color: var(--text-muted);
  line-height: 1.5;
}

/* SEO Audit Fixes */
.geo-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-bottom: 24px; }
.geo-item { padding: 12px; border: 1px solid var(--line); border-radius: 12px; text-align: center; color: var(--text-muted); font-size: 0.9rem; background: var(--surface); }
.price-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
.price-item { background: var(--surface2); padding: 15px 10px; border-radius: 12px; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; height: 100%; box-sizing: border-box; }
.price-item strong { display: block; margin-bottom: 4px; font-size: 0.95rem; line-height: 1.2; }
.price-item span { color: var(--text-muted); font-size: 0.9rem; white-space: nowrap; }
@media (max-width: 760px) {
  .geo-grid { grid-template-columns: repeat(2, 1fr); }
  .price-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 980px) {
  .row--steps { grid-template-columns: 1fr !important; gap: 2rem !important; }
  .image-side { justify-content: center !important; order: -1; }
  .image-side figure { max-width: 100% !important; }
  .steps-side h2 { text-align: center; }
  .steps-side .actions { justify-content: center !important; }
}

/* Cookie Banner */
#cookie-banner {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 9999;
  background: var(--surface);
  border-top: 1px solid var(--line);
  box-shadow: var(--shadow-sm);
  padding: 16px;
  display: flex;
  justify-content: center;
}
.cookie-banner-content {
  max-width: 1200px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.cookie-banner-content p {
  margin: 0;
  font-size: 0.85rem;
  color: var(--text-muted);
  line-height: 1.4;
}
.cookie-btn {
  min-height: 38px;
  padding: 0 16px;
  white-space: nowrap;
  font-size: 0.85rem;
  border-radius: 8px;
}
@media (max-width: 760px) {
  .cookie-banner-content {
    flex-direction: column;
    text-align: center;
  }
  .cookie-btn {
    width: 100%;
  }
}

/* ========================================= */
/* Cart & Yandex Split Styles                */
/* ========================================= */

.cart-toggle-btn {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 50%;
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--text-main);
  cursor: pointer;
  position: relative;
  transition: all 0.2s;
  margin-right: 0.5rem;
}
.cart-toggle-btn:hover {
  background: var(--surface-hover);
  transform: translateY(-1px);
}
.cart-badge {
  position: absolute;
  top: -4px;
  right: -6px;
  background: var(--acc);
  color: #fff;
  font-size: 0.75rem;
  font-weight: 700;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 4px rgba(0,0,0,0.2);
  transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
.cart-badge.pop {
  transform: scale(1.3);
}

.cart-overlay {
  position: fixed;
  top: 0; left: 0; right: 0; bottom: 0;
  background: rgba(0,0,0,0.4);
  backdrop-filter: blur(4px);
  z-index: 1000;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s;
}
.cart-overlay.open {
  opacity: 1;
  pointer-events: auto;
}

.cart-drawer {
  position: fixed;
  top: 0; right: -400px;
  width: 100%;
  max-width: 400px;
  height: 100%;
  background: var(--bg);
  box-shadow: -4px 0 24px rgba(0,0,0,0.1);
  z-index: 1001;
  display: flex;
  flex-direction: column;
  transition: right 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}
.cart-drawer.open {
  right: 0;
}

.cart-header {
  padding: 1.5rem;
  border-bottom: 1px solid var(--border);
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.cart-header h2 {
  margin: 0;
  font-size: 1.5rem;
}
.cart-close {
  background: none;
  border: none;
  font-size: 2rem;
  line-height: 1;
  color: var(--text-muted);
  cursor: pointer;
}
.cart-close:hover {
  color: var(--text-main);
}

.cart-body {
  flex: 1;
  overflow-y: auto;
  padding: 1.5rem;
}
.cart-empty {
  text-align: center;
  color: var(--text-muted);
  margin-top: 3rem;
  line-height: 1.6;
}

.cart-item {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding-bottom: 1rem;
  margin-bottom: 1rem;
  border-bottom: 1px solid var(--border);
  position: relative;
}
.cart-item-img {
  width: 70px;
  height: 70px;
  object-fit: cover;
  border-radius: 8px;
  background: var(--surface);
}
.cart-item-info {
  flex: 1;
}
.cart-item-title {
  font-weight: 600;
  font-size: 0.95rem;
  margin-bottom: 0.25rem;
  line-height: 1.3;
}
.cart-item-price {
  color: var(--acc);
  font-weight: 700;
  margin-bottom: 0.5rem;
}
.cart-item-qty {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 6px;
  width: fit-content;
  padding: 0.25rem 0.5rem;
}
.cart-item-qty button {
  background: none; border: none; color: var(--text-main);
  cursor: pointer; font-size: 1.25rem; line-height: 1;
  padding: 0 0.25rem;
}
.cart-item-qty span {
  font-weight: 600; font-size: 0.95rem; min-width: 1rem; text-align: center;
}
.cart-item-remove {
  position: absolute;
  top: 0; right: 0;
  background: none; border: none;
  color: var(--text-muted);
  font-size: 1.5rem;
  cursor: pointer;
}
.cart-item-remove:hover {
  color: #ff3b30;
}

.cart-footer {
  padding: 1.5rem;
  border-top: 1px solid var(--border);
  background: var(--surface);
}
.cart-total {
  font-size: 1.25rem;
  font-weight: 700;
  margin-bottom: 1rem;
  display: flex;
  justify-content: space-between;
}
.cart-checkout-btn {
  width: 100%;
  text-align: center;
}

/* Yandex Split Badge Container */
.split-badge-container {
  margin-top: 0.5rem;
  min-height: 28px;
  border-radius: 8px;
  overflow: hidden;
}

