/* Арсенал-БЛК — общие стили для всех страниц */
html { scroll-behavior:smooth; }
body { background:#ffffff; color:#23262A; font-family:'PT Sans',sans-serif; }
.head { font-family:'Oswald',sans-serif; text-transform:uppercase; letter-spacing:.02em; }
.head-skew { transform:skewX(-7deg); transform-origin:left; }
.slash { display:inline-flex; align-items:center; gap:5px; }
.slash i { display:block; width:12px; height:34px; transform:skewX(-22deg); border-radius:2px; }
.slash i.w { background:#26282B; } .slash i.o { background:#F07C1A; width:16px; }
.slash-deco { position:absolute; top:0; right:0; height:100%; width:180px; pointer-events:none; overflow:hidden; }
.slash-deco span { position:absolute; top:-20%; height:140%; transform:skewX(-22deg); border-radius:4px; }
.slash-deco .s1 { right:70px; width:26px; background:#26282B; opacity:.06; }
.slash-deco .s2 { right:30px; width:40px; background:#F07C1A; opacity:.9; }
.slash-deco .s3 { right:6px; width:14px; background:#26282B; opacity:.35; }
.logo-tag { writing-mode:vertical-rl; transform:rotate(180deg); background:#F07C1A; color:#fff; font-family:'Oswald'; font-weight:700; letter-spacing:.08em; padding:6px 3px; font-size:11px; border-radius:2px; }
.btn-orange { background:#F07C1A; color:#fff; font-family:'Oswald'; text-transform:uppercase; letter-spacing:.03em; font-weight:600; border-radius:5px; transition:.15s; }
.btn-orange:hover { background:#FF8A2A; } .btn-orange:active { background:#D96A0E; }
.btn-ghost { border:1px solid #D2D6DA; color:#26282B; font-family:'Oswald'; text-transform:uppercase; letter-spacing:.03em; font-weight:600; border-radius:5px; transition:.15s; }
.btn-ghost:hover { border-color:#F07C1A; color:#F07C1A; }
.card { background:#ffffff; border:1px solid #E4E6E9; border-radius:8px; transition:.18s; box-shadow:0 1px 2px rgba(20,22,25,.04), 0 4px 14px rgba(20,22,25,.05); }
.card:hover { border-color:#F07C1A; transform:translateY(-3px); box-shadow:0 8px 24px rgba(20,22,25,.10); }
.eyebrow { color:#F07C1A; font-family:'Oswald'; text-transform:uppercase; letter-spacing:.14em; font-weight:600; font-size:13px; }
input, textarea { font-family:'PT Sans'; }
.field { background:#ffffff; border:1px solid #D2D6DA; color:#23262A; border-radius:5px; }
.field:focus { outline:none; border-color:#F07C1A; box-shadow:0 0 0 3px rgba(240,124,26,.12); }
.field::placeholder { color:#9AA0A6; }
.reveal { opacity:0; transform:translateY(18px); transition:opacity .5s ease, transform .5s ease; }
.reveal.in { opacity:1; transform:none; }
@media (prefers-reduced-motion: reduce) { html{scroll-behavior:auto;} .reveal{opacity:1;transform:none;transition:none;} }
.float-btn { box-shadow:0 6px 20px rgba(0,0,0,.4); }

/* SVG-иконки (line, наследуют размер от text-* и цвет от currentColor) */
.ico { width:1em; height:1em; display:inline-block; stroke:currentColor; fill:none;
  stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; vertical-align:middle; }

/* Галерея «Наш магазин» */
.photo-tile { position:relative; overflow:hidden; border-radius:8px; border:1px solid #E4E6E9;
  background:#F4F5F6; aspect-ratio:4/3; }
.photo-tile img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .3s; }
.photo-tile:hover img { transform:scale(1.04); }
.photo-fallback { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center;
  justify-content:center; gap:6px; color:#9AA0A6; font-size:13px; text-align:center; padding:12px; }

/* Стена логотипов брендов — единые белые плитки, прозрачные PNG */
.brand-tile { display:flex; align-items:center; justify-content:center; height:80px; padding:14px 18px;
  background:#fff; border:1px solid #E4E6E9; border-radius:8px; transition:.18s;
  box-shadow:0 1px 2px rgba(20,22,25,.04); }
.brand-tile:hover { transform:translateY(-3px); border-color:#F07C1A;
  box-shadow:0 8px 20px rgba(20,22,25,.10); }
.brand-tile img { max-height:44px; max-width:100%; width:auto; height:auto; object-fit:contain;
  display:block; filter:none; }
.brand-fallback { display:none; align-items:center; justify-content:center; height:100%;
  font-family:'Oswald',sans-serif; text-transform:uppercase; font-weight:700; color:#26282B; font-size:15px; }

/* Карта в контактах */
.map-embed { position:relative; overflow:hidden; width:100%; height:360px; background:#F4F5F6; }
.map-embed iframe { position:relative; width:100%; height:100%; border:0; display:block; }
.map-embed .map-credit { color:#eee; font-size:12px; position:absolute; left:0; z-index:1; }
@media (max-width:640px) { .map-embed { height:300px; } }

/* Бейдж разработчика в футере — заметный, но тихий */
.footer-badge {
  display:inline-block;
  max-width:100%;
  padding:6px 10px;
  background:#fff;
  border:1px solid #E4E6E9;
  border-left:3px solid #F07C1A;
  border-radius:5px;
  box-shadow:0 1px 2px rgba(20,22,25,.04);
  line-height:0;
  transition:border-color .15s, box-shadow .15s;
}
.footer-badge:hover {
  border-color:#F07C1A;
  box-shadow:0 2px 10px rgba(20,22,25,.07);
}
.footer-badge iframe {
  display:block;
  width:280px;
  max-width:100%;
  height:40px;
  border:0;
  overflow:hidden;
  background:transparent;
}
@media (max-width:420px) {
  .footer-badge { display:block; width:100%; }
  .footer-badge iframe { width:100%; }
}

/* Политика / юридический текст */
.legal-doc h2 { color:#26282B; }
.legal-doc a { word-break:break-word; }
.legal-table { border-collapse:collapse; border:1px solid #E4E6E9; border-radius:8px; }
.legal-table th,
.legal-table td { border:1px solid #E4E6E9; padding:10px 12px; text-align:left; vertical-align:top; }
.legal-table th { background:#F4F5F6; font-family:'Oswald',sans-serif; text-transform:uppercase; font-size:12px; letter-spacing:.04em; font-weight:600; }
.legal-table code { font-size:12px; background:#F4F5F6; padding:1px 5px; border-radius:3px; }

/* Cookie-баннер */
.cookie-banner {
  position:fixed; left:0; right:0; bottom:0; z-index:60;
  background:#26282B; color:#fff;
  border-top:3px solid #F07C1A;
  box-shadow:0 -8px 28px rgba(20,22,25,.18);
  padding:14px 16px;
  transform:translateY(110%);
  transition:transform .28s ease;
}
.cookie-banner.is-visible { transform:none; }
.cookie-banner__inner {
  max-width:72rem; margin:0 auto;
  display:flex; flex-wrap:wrap; align-items:center; gap:12px 16px;
}
.cookie-banner__text {
  flex:1 1 240px; font-size:14px; line-height:1.45; color:#E8EAED;
}
.cookie-banner__text a { color:#FF8A2A; text-decoration:underline; text-underline-offset:2px; }
.cookie-banner__text a:hover { color:#fff; }
.cookie-banner__actions { display:flex; flex-wrap:wrap; gap:8px; flex-shrink:0; }
.cookie-banner__btn {
  font-family:'Oswald',sans-serif; text-transform:uppercase; letter-spacing:.03em;
  font-weight:600; font-size:13px; border-radius:5px; padding:10px 18px;
  transition:background .15s, border-color .15s, color .15s; cursor:pointer; border:1px solid transparent;
}
.cookie-banner__btn--accept { background:#F07C1A; color:#fff; border-color:#F07C1A; }
.cookie-banner__btn--accept:hover { background:#FF8A2A; }
.cookie-banner__btn--reject { background:transparent; color:#fff; border-color:#6B7075; }
.cookie-banner__btn--reject:hover { border-color:#F07C1A; color:#FF8A2A; }
body.cookie-banner-open .float-stack { bottom:6.5rem; }
@media (max-width:640px) {
  body.cookie-banner-open .float-stack { bottom:9.5rem; }
  .cookie-banner__btn { flex:1 1 auto; text-align:center; }
}
@media (prefers-reduced-motion: reduce) {
  .cookie-banner { transition:none; }
}
