:root{
  /* базовая палитра */
  --text:#393D46;
  --bg:#f4f4f4;
  --white:#fff;
  --radius:15px;
  --shadow:0 1px 4px rgba(0,0,0,.06);
  --border:#dee2e6;

  /* семантика */
  --muted:#6b7280;
  --danger:#dc3545;
  --link:#0d6efd;
  --ok:#16a34a;
  --warn:#f59e0b;
  --info:#0ea5e9;

  /* палитра, которую использовали в cart/style.css */
  --r:14px;
  --rs:10px;
  --w:#fff;
  --ws:#f7f8fa;
  --t:#0f1115;
  --m:#6b7280;
  --bd:#e7e9ee;
  --a:#111827;
  --ac:#fff;
  --dn:#e03131;
  --sh:0 8px 24px rgba(15,17,21,.06);
  --ss:0 2px 10px rgba(15,17,21,.05);
  --sb:360px;
  --gg:12px;

  /* faq */
  --card-bg:#fff;
  --shadow-sm:0 2px 8px rgba(0,0,0,.05);
  --muted-2:#666;

  /* home */
  --container-max:1200px;
  --gap:12px;
  --brand-chip-bg:rgba(159,190,241,1);

  /* detail */
  --bg-white:#fff;
  --brand:rgba(159,190,241,1);
  --btn-height:44px;
}

.grecaptcha-badge{visibility:hidden;}

body{
  min-height:100vh; display:flex; flex-direction:column; margin:0;
  background:var(--bg); color:var(--text);
  font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
}

.layout{display:flex; flex-direction:column; min-height:100vh; overflow:visible;}
.page-wrapper{flex:1 0 auto;}

.hover-shadow{box-shadow:var(--shadow);}
.container{
  width:100%;
  max-width:1200px;
  margin:0 auto;
  padding:0 12px;
}

@media (max-width:1024px){
  .container{max-width:100%;}
}

/* ===== Header ===== */
.header{position:sticky; top:0; z-index:100; background:var(--white);}
.header__bar{border-bottom:1px solid var(--border); background:var(--white); height:64px}
.header__inner{
  max-width:1200px; margin:0 auto; padding:0 16px; height:100%;
  display:flex; align-items:center; gap:5px; justify-content:space-between;
}
@media (min-width:400px){.header__inner{gap:16px;}}
@media (min-width:630px){.header__inner{gap:40px;}}
.logo{color:#000; text-decoration:none; font-weight:600; font:700 24px/1.2 'Comfortaa',system-ui,sans-serif;}
.logo:hover{opacity:.7;}

.header__search{flex:1 1 0; min-width:0;}
.search{display:flex; align-items:center; min-width:0;}
.search__input{
  flex:1 1 auto; width:100%; min-width:0; background:#f5f5f6; border:none; border-radius:10px 0 0 10px;
  padding:10px 12px; font-size:16px; outline:none; line-height:20px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}
.search__btn{
  flex:0 0 44px; width:44px; height:40px; border:none; border-radius:0 10px 10px 0;
  background:#e9ecef; display:grid; place-items:center; cursor:pointer; padding:0; overflow:hidden;
}
.search__btn:hover{background:#dde1e5;}

.header__menu{display:none; gap:40px; align-items:center;}
.menuitem{display:flex; flex-direction:column; align-items:center; gap:4px; text-decoration:none; color:#000; font-size:12px;}
.menuitem:hover{opacity:.8;}
.menuitem__icon{position:relative; display:inline-block;}

.cart-count{
  position:absolute; top:-6px; right:-8px;
  background:#ff3b30; color:#fff; border-radius:999px; padding:0 6px;
  font-size:11px; line-height:18px; min-width:18px; text-align:center;
}

/* Категории под шапкой */
.header__nav{
  display:none; gap:50px; justify-content:center; align-items:center;
  height:34px; background:var(--white);
  border-bottom:1px solid var(--border);
  font:700 22px/1.2 'Comfortaa',system-ui,sans-serif;
}
.navlink{font-size:15px; text-decoration:none; color:#000; font-weight:600;}
.navlink:hover{opacity:.7;}

@media (min-width:630px){
  .header__menu{display:flex;}
  .header__nav{display:flex;}
}



/* ===== Общая стилизация ===== */
.footer{margin-top:2rem;border-top:1px solid var(--border)}
.footer__grid{max-width:var(--container-max,1200px);margin:40px auto;padding:0 16px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.footer__col{display:flex;flex-direction:column;gap:8px}
.footer__title{font-weight:600;margin:0 0 6px;color:var(--text)}
.footer__link{color:var(--muted);text-decoration:none;font-size:14px}
.footer__link:hover{color:var(--a)}
.footer__text{color:var(--muted);margin:0;font-size:14px}
.footer__bottom{grid-column:1/-1;border-top:1px solid var(--border);padding-top:12px;text-align:center}
.footer__copy{margin:0;color:var(--muted);font-size:14px}
.footer__brand{font-weight:600;text-decoration:none;color:inherit}
.footer__brand:hover{color:var(--a)}

/* ===== Мобильный футер с аккордеонами ===== */
.footer__mobile{display:none}
.f-acc{background:var(--w);border:1px solid var(--bd);border-radius:var(--radius,15px);box-shadow:var(--shadow,0 1px 4px rgba(0,0,0,.06));overflow:hidden}
.f-acc + .f-acc{margin-top:12px}
.f-acc__summary{list-style:none;display:grid;grid-template-columns:1fr auto;align-items:center;gap:6px;padding:14px 16px;cursor:pointer}
.f-acc__summary::-webkit-details-marker{display:none}
.f-acc__summary span{font-weight:600;color:var(--a)}
.f-acc[open] .f-acc__summary i{transform:rotate(180deg)}
.f-acc__summary i{transition:transform .25s ease}

.f-acc__list{display:grid;gap:8px;padding:0 12px 12px}
.f-link{display:flex;align-items:center;gap:10px;padding:12px 12px;border:1px solid var(--bd);border-radius:12px;background:linear-gradient(180deg,var(--ws),#fff);text-decoration:none;color:var(--a);box-shadow:var(--ss,0 2px 10px rgba(15,17,21,.05));transition:transform .12s ease,box-shadow .12s ease,border-color .2s}
.f-link:active{transform:translateY(1px)}
.f-link:hover{box-shadow:var(--sh,0 8px 24px rgba(15,17,21,.06));border-color:color-mix(in srgb,var(--bd),var(--a) 18%)}
.f-link:focus-visible{outline:2px solid var(--link);outline-offset:2px}
.f-link__icon,.f-link__arrow{width:18px;height:18px}
.f-link__text{font-size:14px;line-height:1.2;flex:1}
.f-empty{display:block;color:var(--muted);padding:0 16px 12px}

.f-copy{margin-top:14px;text-align:center;color:var(--muted)}

/* ===== Нижняя панель (моб) ===== */
.footerbar{position:fixed;left:0;right:0;bottom:0;height:64px;background:#fff;border-top:1px solid var(--border);display:grid;grid-auto-flow:column;grid-auto-columns:1fr;align-items:center;z-index:9999;}
.footerbar__btn{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;text-decoration:none;color:var(--a);font-size:11px;font-weight:500}
.footerbar__btn i{width:20px;height:20px}
.footerbar__btn:active{transform:translateY(1px)}
.footerbar__btn:focus-visible{outline:2px solid var(--link);outline-offset:-2px}
.footerbar__btn.is-active{color:var(--link)}
.footerbar__icon{position:relative;display:inline-block}
.cart-count{position:absolute;right:-8px;top:-6px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:var(--danger);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:11px;box-shadow:0 2px 8px rgba(0,0,0,.15)}
.cart-count-text{transform:translateY(0.5px)}

/* ===== Адаптив ===== */
@media (max-width:600px){
  .footer__grid{display:none}
  .footer__mobile{display:block;max-width:720px;margin:16px auto 88px;padding:0 16px}
}
@media (min-width:601px){
  .footerbar{display:none}
}

.breadcrumbs{margin:12px auto; font-size:18px; font-weight:500; color:#555;}
.breadcrumbs__list{list-style:none; padding:0; margin:0; display:flex; flex-wrap:wrap; align-items:center;}
.breadcrumbs__item{display:flex; align-items:center;}
.breadcrumbs__item + .breadcrumbs__item::before{content:"›"; margin:0 8px; color:#aaa; font-size:18px;}
.breadcrumbs__link{text-decoration:none; color:#393D46; transition:color .2s;}
.breadcrumbs__link:hover{color:#393D46;}
.breadcrumbs__current{color:#222; font-weight:600;}

.section__header{margin-bottom:12px;}
.section__title{
  display:inline-flex; align-items:center; gap:8px;
  font:700 24px/1.2 'Comfortaa',system-ui,sans-serif; color:var(--text,#000); margin:0;
}
.section__title .icon-link{width:1em; height:1em; opacity:.7;}

.variantsSwiperRec,.variantsSwiperNew{overflow:hidden; padding-bottom:12px;}
.variantsSwiperRec__slide,.variantsSwiperNew__slide{width:auto; box-sizing:border-box;}
.variantsSwiperRec__slide .product-card,.variantsSwiperNew__slide .product-card{width:160px; height:100%;}
@media (min-width:768px){.variantsSwiperRec__slide .product-card,.variantsSwiperNew__slide .product-card{width:180px;}}
@media (min-width:1200px){.variantsSwiperRec__slide .product-card,.variantsSwiperNew__slide .product-card{width:200px;}}

.btn{
  width:100%; display:flex; align-items:center; justify-content:center; gap:8px;
  padding:0 14px; height:44px; border-radius:1rem; text-decoration:none; cursor:pointer;
  border:1px solid #111; background:whitesmoke; color:#111;
  transition:background .15s,color .15s,border-color .15s,opacity .15s,transform .05s;
  user-select:none;
}
.btn:hover{background:#111; color:#fff;}
.btn:active{transform:translateY(1px);}
.btn--disabled,.btn--disabled:hover,.btn--disabled:active{
  cursor:not-allowed; background:#ffffff; color:#9aa0a6; border-color:#e5e7eb; transform:none; box-shadow:none;
}
.btn--danger{border-color:var(--danger); color:var(--danger);}
.btn--danger:hover{background:var(--danger); color:#fff;}

@media (max-width:600px){.block-404{flex-wrap:wrap;}}



/* Cookie banner */
.cc{
  position:fixed; left:16px; right:16px; bottom:16px;
  z-index:2147483647; isolation:isolate;
  max-width:720px; margin:0 auto;
  background:var(--w); color:var(--t);
  border:1px solid var(--bd); border-radius:var(--r); box-shadow:var(--sh);
  padding:14px; display:flex; gap:12px; align-items:flex-start;
  pointer-events:auto;
}
.cc__text{font-size:14px; line-height:1.45}
.cc__link{color:var(--link); text-decoration:none}
.cc__link:hover{text-decoration:underline}
.cc__actions{display:flex; gap:8px; margin-left:auto; flex-shrink:0}
.cc__btn{border:0; border-radius:10px; padding:10px 14px; font-weight:600; cursor:pointer}
.cc__btn--primary{background:var(--a); color:var(--ac)}
.cc__btn--ghost{background:#eef2f7; color:#0b0f1a}
@media (max-width:560px){
  .cc{flex-direction:column}
  .cc__actions{width:100%}
  .cc__btn{width:100%}
}


/* легал ссылки */
.legal{
  line-height:2;
  color:var(--text);
}
.legal p{
  margin:0 0 1em 0;
  text-align:justify;
}
.legal a{
  color:var(--link);
  text-decoration:underline;
  text-underline-offset:2px;
}