/* =========================================================
   ТЕРМО-РЕШЕНИЯ — дизайн-система прототипа
   ========================================================= */

:root {
  --ink: #172431;
  --ink-soft: #3E4E5E;
  --muted: #6B7A8B;
  --muted-2: #93A1AF;
  --line: #E3E8EE;
  --line-soft: #EEF1F5;
  --surface: #FFFFFF;
  --surface-alt: #F5F7FA;
  --surface-dark: #101A24;
  --surface-dark-2: #16232F;

  --blue: #0A6EAF;
  --blue-dark: #084F81;
  --blue-tint: #EAF4FB;
  --blue-tint-2: #DCEEFA;

  --red: #D71B24;
  --red-dark: #AC141C;
  --red-tint: #FDEDEE;

  --radius-lg: 18px;
  --radius: 12px;
  --radius-sm: 8px;

  --shadow-sm: 0 1px 2px rgba(15, 26, 38, .06), 0 1px 1px rgba(15, 26, 38, .04);
  --shadow-md: 0 10px 25px -8px rgba(15, 26, 38, .18);
  --shadow-lg: 0 24px 48px -12px rgba(15, 26, 38, .28);

  --container: 1240px;
  --container-header: 1520px;
  --font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; overflow-anchor: none; }
body {
  margin: 0;
  font-family: var(--font);
  color: var(--ink);
  background: var(--surface);
  font-size: 16px;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
ul { margin: 0; padding: 0; list-style: none; }
h1, h2, h3, h4, p { margin: 0; }
button { font-family: inherit; cursor: pointer; }
table { border-collapse: collapse; width: 100%; }

.container {
  max-width: var(--container);
  margin: 0 auto;
  padding: 0 24px;
}

section { position: relative; }

.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--blue);
}
.eyebrow::before {
  content: "";
  width: 22px;
  height: 2px;
  background: var(--red);
  display: inline-block;
}

.section-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 36px;
}
.section-head h2 {
  font-size: clamp(24px, 3vw, 34px);
  font-weight: 800;
  letter-spacing: -.01em;
  margin-top: 10px;
  color: var(--ink);
}
.section-head p {
  color: var(--muted);
  max-width: 560px;
  margin-top: 10px;
}
.section-head__link {
  white-space: nowrap;
  font-weight: 700;
  color: var(--blue);
  border-bottom: 2px solid var(--blue-tint-2);
  padding-bottom: 3px;
  transition: border-color .15s ease;
}
.section-head__link:hover { border-color: var(--blue); }

.section-pad { padding: 88px 0; }
.section-pad--sm { padding: 56px 0; }
.bg-alt { background: var(--surface-alt); }

/* ---------- Buttons ---------- */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-weight: 700;
  font-size: 15px;
  padding: 14px 26px;
  border-radius: 999px;
  border: 1.5px solid transparent;
  transition: all .15s ease;
  white-space: nowrap;
}
.btn--primary { background: var(--blue); color: #fff; }
.btn--primary:hover { background: var(--blue-dark); }
.btn--red { background: var(--red); color: #fff; }
.btn--red:hover { background: var(--red-dark); }
.btn--outline { border-color: var(--line); color: var(--ink); background: #fff; }
.btn--outline:hover { border-color: var(--blue); color: var(--blue); }
.btn--ghost-light { border-color: rgba(255,255,255,.35); color: #fff; }
.btn--ghost-light:hover { border-color: #fff; background: rgba(255,255,255,.08); }
.btn--sm { padding: 10px 18px; font-size: 14px; }
.btn--block { width: 100%; }
.btn svg { width: 18px; height: 18px; flex: none; }

.link-arrow {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-weight: 700;
  color: var(--blue);
}
.link-arrow svg { width: 16px; height: 16px; transition: transform .15s ease; }
.link-arrow:hover svg { transform: translateX(3px); }

/* ---------- Topbar / Header ---------- */
.topbar {
  background: var(--surface-dark);
  color: #C7D2DC;
  font-size: 13.5px;
  max-height: 40px;
  overflow: hidden;
  transition: max-height .3s ease, opacity .25s ease;
}
.topbar__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 40px;
}
.topbar__contacts { display: flex; align-items: center; gap: 22px; }
.topbar__contacts a { display: inline-flex; align-items: center; gap: 6px; color: #fff; font-weight: 600; }
.topbar__contacts a:hover { color: var(--blue-tint-2); }
.topbar__contacts svg { width: 14px; height: 14px; opacity: .8; }
.topbar__meta { display: flex; align-items: center; gap: 18px; color: #92A2B2; }
.topbar__meta-item { display: inline-flex; align-items: center; gap: 6px; }
.topbar__meta-item svg { width: 13px; height: 13px; opacity: .8; flex: none; }
.topbar__meta .dot { width: 3px; height: 3px; border-radius: 50%; background: #4C5C6C; display: inline-block; }
.topbar__divider { width: 1px; height: 15px; background: rgba(255,255,255,.16); display: inline-block; }
.topbar__social { display: flex; align-items: center; gap: 12px; }
.topbar__social a { display: flex; color: #92A2B2; transition: color .15s ease; }
.topbar__social a:hover { color: #fff; }
.topbar__social svg { width: 15px; height: 15px; }
.icon-vk {
  display: inline-block;
  background-color: currentColor;
  -webkit-mask-image: url(data:image/png;base64,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);
  mask-image: url(data:image/png;base64,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);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
}
.topbar__social .icon-vk { width: 20px; height: 15px; }

.site-header { position: sticky; top: 0; z-index: 60; background: #fff; }
.mainbar { border-bottom: 1px solid var(--line); background: #fff; transition: box-shadow .3s ease; }
.mainbar__inner {
  display: flex;
  align-items: center;
  gap: 28px;
  height: 104px;
  transition: height .3s ease;
  max-width: var(--container-header);
}
.brand { display: flex; align-items: center; gap: 12px; flex: none; min-width: 0; }
.brand__logo-img { height: 72px; width: auto; display: block; transition: height .3s ease; }

.site-header.is-scrolled .topbar { max-height: 0; opacity: 0; }
.site-header.is-scrolled .mainbar__inner { height: 72px; }
.site-header.is-scrolled .brand__logo-img { height: 50px; }
.site-header.is-scrolled .mainbar { box-shadow: var(--shadow-md); }

.nav { display: flex; align-items: center; gap: 4px; flex: 1; }
.nav a {
  padding: 10px 16px;
  font-weight: 700;
  font-size: 15px;
  color: var(--ink-soft);
  border-radius: 999px;
  transition: all .15s ease;
  white-space: nowrap;
}
.nav a:hover { background: var(--surface-alt); color: var(--ink); }
.nav a.is-active { background: var(--blue-tint); color: var(--blue-dark); }

.nav-item { position: relative; }
.nav-item::after {
  content: "";
  position: absolute;
  left: 0; right: 0; top: 100%;
  height: 12px;
}
.nav-item > a { display: inline-flex; align-items: center; gap: 5px; }
.nav-item > a .caret { width: 13px; height: 13px; transition: transform .15s ease; flex: none; }
.nav-item:hover > a .caret, .nav-item:focus-within > a .caret, .nav-item.is-open > a .caret { transform: rotate(180deg); }

.mega-menu {
  position: absolute; top: 100%; left: 0; margin-top: 10px;
  background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg);
  box-shadow: var(--shadow-lg); padding: 16px; display: none; gap: 4px;
  min-width: 340px; z-index: 70;
}
.mega-menu--sm { min-width: 360px; }
.nav-item:hover .mega-menu, .nav-item:focus-within .mega-menu, .nav-item.is-open .mega-menu { display: flex; }
.mega-menu__col { display: flex; flex-direction: column; flex: 1; min-width: 0; }
.nav .mega-menu__link, .nav .mega-menu__sublink {
  padding: 10px 12px; border-radius: var(--radius-sm); font-size: 14px; font-weight: 600;
  color: var(--ink-soft); white-space: nowrap;
}
.nav .mega-menu__link:hover, .nav .mega-menu__sublink:hover { background: var(--surface-alt); color: var(--blue); }
.nav .mega-menu__link.is-active-cat, .nav .mega-menu__sublink.is-active-cat { background: var(--blue-tint); color: var(--blue-dark); font-weight: 800; }
.mega-menu__subtitle {
  padding: 10px 12px 6px; font-size: 11.5px; font-weight: 800; text-transform: uppercase;
  letter-spacing: .05em; color: var(--muted-2);
}

/* per-category flyout submenu */
.mega-menu__item { position: relative; }
.mega-menu__item::after {
  content: "";
  position: absolute;
  top: 0; bottom: 0; left: 100%; width: 14px;
}
.mega-menu__link { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.mega-menu__arrow { width: 14px; height: 14px; flex: none; color: var(--muted-2); transform: rotate(-90deg); }
.mega-menu__flyout {
  position: absolute; top: -10px; left: 100%; margin-left: 8px;
  background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg);
  box-shadow: var(--shadow-lg); padding: 10px; min-width: 270px;
  display: none; flex-direction: column; gap: 2px; z-index: 80;
}
.mega-menu__item:hover .mega-menu__flyout, .mega-menu__item:focus-within .mega-menu__flyout { display: flex; }

.mainbar__side { display: flex; align-items: center; gap: 14px; margin-left: auto; flex: none; }
.mainbar__phone { display: flex; flex-direction: column; align-items: flex-end; line-height: 1.25; }
.mainbar__phone a { display: inline-flex; align-items: center; gap: 8px; font-size: 18px; font-weight: 800; color: var(--ink); white-space: nowrap; transition: color .15s ease; }
.mainbar__phone a::before {
  content: ""; width: 20px; height: 20px; flex: none; background-color: var(--blue);
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.127.96.361 1.903.7 2.81a2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45c.907.339 1.85.573 2.81.7A2 2 0 0 1 22 16.92z'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.127.96.361 1.903.7 2.81a2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45c.907.339 1.85.573 2.81.7A2 2 0 0 1 22 16.92z'/%3E%3C/svg%3E") center / contain no-repeat;
  transition: background-color .15s ease;
}
.mainbar__phone a:hover, .mainbar__phone a:focus-visible { color: var(--blue); }
.mainbar__phone a:hover::before, .mainbar__phone a:focus-visible::before { background-color: var(--red); animation: phone-ring .6s ease; }
@keyframes phone-ring {
  0%, 100% { transform: rotate(0); } 20% { transform: rotate(-16deg); } 40% { transform: rotate(14deg); }
  60% { transform: rotate(-10deg); } 80% { transform: rotate(6deg); }
}
.mainbar__phone-label { font-size: 12.5px; color: var(--muted); white-space: nowrap; }

.nav-toggle {
  display: none;
  width: 40px; height: 40px;
  border-radius: var(--radius-sm);
  border: 1px solid var(--line);
  background: #fff;
  align-items: center;
  justify-content: center;
}
.nav-toggle svg { width: 20px; height: 20px; }

/* ---------- Breadcrumbs ---------- */
.crumbs { padding: 18px 0; border-bottom: 1px solid var(--line-soft); background: var(--surface-alt); }
.crumbs__inner { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; font-size: 13.5px; color: var(--muted); }
.crumbs__inner a:hover { color: var(--blue); }
.crumbs__inner .sep { color: var(--muted-2); }
.crumbs__inner .current { color: var(--ink); font-weight: 600; }

/* ---------- Hero (home) ---------- */
.hero {
  --hero-bg: #0B1621;
  --hero-te: calc(max(24px, 50% - var(--container-header) / 2 + 24px) + 640px);
  position: relative; overflow: hidden; isolation: isolate;
  display: flex; align-items: center;
  min-height: max(560px, calc(100vh - var(--header-h, 125px)));
  min-height: max(560px, calc(100svh - var(--header-h, 125px)));
  padding: 56px 0;
  background: var(--hero-bg); color: #fff;
}
.hero__bg { position: absolute; inset: 0; z-index: -1; pointer-events: none; }
.hero__bg::before {
  content: ""; position: absolute; inset: 0; z-index: 0;
  background:
    radial-gradient(900px 560px at 70% 50%, rgba(10,110,175,.42), transparent 62%),
    radial-gradient(520px 380px at 98% 100%, rgba(215,27,36,.22), transparent 65%),
    radial-gradient(640px 460px at 0% 0%, rgba(10,110,175,.16), transparent 60%);
}
.hero__bg::after {
  content: ""; position: absolute; inset: 0; z-index: 1;
  background-image:
    linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);
  background-size: 56px 56px;
  -webkit-mask-image: radial-gradient(ellipse 60% 70% at 72% 45%, #000 20%, transparent 72%);
  mask-image: radial-gradient(ellipse 60% 70% at 72% 45%, #000 20%, transparent 72%);
}
.hero__equip {
  position: absolute; z-index: 2; left: calc(var(--hero-te) - 124px); top: 50%; transform: translateY(-52%);
  width: min(62vw, 1120px);
}
.hero__equip img { display: block; width: 100%; height: auto; filter: drop-shadow(0 30px 40px rgba(0,0,0,.55)); }
.hero__equip::after {
  content: ""; position: absolute; z-index: -1; left: 6%; right: 2%; bottom: -7%; height: 18%;
  border-radius: 50%; filter: blur(8px);
  background: radial-gradient(ellipse at center, rgba(70,160,225,.38), transparent 70%);
}
.hero__shade {
  position: absolute; inset: 0; z-index: 3;
  background: linear-gradient(90deg, var(--hero-bg) 0, rgba(11,22,33,.97) calc(var(--hero-te) - 184px), rgba(11,22,33,.88) calc(var(--hero-te) + 6px), rgba(11,22,33,.3) calc(var(--hero-te) + 216px), transparent calc(var(--hero-te) + 376px));
}
.hero__inner { position: relative; width: 100%; max-width: var(--container-header); }
.hero__content { max-width: 640px; }
.hero .eyebrow { color: #7CC3F0; }
.hero h1 {
  font-size: clamp(30px, 2.95vw, 44px); font-weight: 800; line-height: 1.1;
  letter-spacing: -.015em; margin: 16px 0 0; color: #fff;
}
.hero h1 em {
  display: block; margin-top: 14px; font-style: normal; font-family: var(--font);
  font-size: clamp(15px, 1.1vw, 16.5px); font-weight: 600; line-height: 1.5; letter-spacing: 0;
  color: #A9D3EE;
}
.hero__lead { margin: 20px 0 26px; padding-left: 16px; border-left: 2px solid rgba(124,195,240,.35); }
.hero p.lead { font-size: 14px; line-height: 1.55; color: rgba(255,255,255,.72); margin: 0 0 6px; }
.hero p.lead:last-child { margin-bottom: 0; }
.hero__cta { display: flex; gap: 12px; flex-wrap: wrap; }
.hero__stats { position: absolute; right: 24px; bottom: -8px; z-index: 4; display: flex; gap: 12px; flex-wrap: wrap; justify-content: flex-end; }
.hero__stat {
  display: flex; align-items: center; gap: 10px; min-width: 0;
  padding: 10px 16px 10px 10px; border-radius: 14px;
  background: rgba(13,30,45,.55); border: 1px solid rgba(255,255,255,.14);
  box-shadow: 0 16px 32px -12px rgba(0,0,0,.6);
  -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px);
}
.hero__stat-ic { width: 36px; height: 36px; border-radius: 10px; background: rgba(10,110,175,.4); color: #A9D3EE; display: flex; align-items: center; justify-content: center; flex: none; }
.hero__stat-ic svg { width: 18px; height: 18px; }
.hero__stat-text { display: flex; flex-direction: column; min-width: 0; }
.hero__stat-text b { font-size: 18px; font-weight: 800; color: #fff; line-height: 1.15; white-space: nowrap; }
.hero__stat-text span { font-size: 12px; color: rgba(255,255,255,.6); white-space: nowrap; }

.hero__inner { pointer-events: none; }
.hero__content, .hero__stats { pointer-events: auto; }
.hero__equip { pointer-events: auto; }
.hero__equip img { transition: transform .6s cubic-bezier(.2,.7,.2,1), filter .6s ease; transform-origin: 50% 85%; }
.hero__equip::after { transition: opacity .6s ease, transform .6s ease; }
.hero__stat { transition: transform .25s ease, background-color .25s ease, border-color .25s ease, box-shadow .25s ease; }
.hero__stat-ic { transition: background-color .25s ease, color .25s ease, transform .25s ease; }
@media (hover: hover) {
  .hero__equip:hover img { transform: scale(1.035) translateY(-6px); filter: brightness(1.08) drop-shadow(0 40px 50px rgba(0,0,0,.6)); }
  .hero__equip:hover::after { transform: scaleX(1.06); background: radial-gradient(ellipse at center, rgba(70,160,225,.6), transparent 70%); }
  .hero__stat:hover { transform: translateY(-4px); background-color: rgba(10,110,175,.3); border-color: rgba(124,195,240,.55); box-shadow: 0 18px 36px -12px rgba(10,110,175,.6); }
  .hero__stat:hover .hero__stat-ic { background-color: var(--blue); color: #fff; transform: scale(1.08); }
}

/* ---------- Advantage cards ---------- */
.adv-grid { display: flex; flex-wrap: wrap; gap: 22px; }
.adv-card {
  display: block; background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg);
  padding: 28px 26px; transition: box-shadow .15s ease, transform .15s ease;
  flex: 1 1 calc(33.333% - 14.667px);
}
.adv-card:hover { box-shadow: var(--shadow-md); transform: translateY(-2px); }
.adv-card .ic {
  width: 48px; height: 48px; border-radius: 12px;
  background: var(--blue-tint); color: var(--blue);
  display: flex; align-items: center; justify-content: center; margin-bottom: 18px;
}
.adv-card:nth-child(3n-1) .ic, .adv-card:nth-child(3n-1) .ic { }
.adv-card .ic svg { width: 24px; height: 24px; }
.adv-card .ic img { width: 28px; height: 28px; object-fit: contain; }
.adv-card .ic.ic--lg { width: 68px; height: 68px; border-radius: 14px; }
.adv-card .ic.ic--lg img { width: 50px; height: 50px; }
.adv-card h3 { font-size: 17.5px; font-weight: 800; margin-bottom: 8px; }
.adv-card p { color: var(--muted); font-size: 14.5px; }

/* ---------- Category grid ---------- */
.section-head__side { display: flex; flex-direction: column; align-items: flex-end; gap: 16px; }
.section-head__side p { margin-top: 0; text-align: right; }

.slider-nav { display: flex; gap: 10px; flex: none; }
.slider-nav__btn {
  width: 44px; height: 44px; border-radius: 50%; border: 1.5px solid var(--line); background: #fff;
  color: var(--ink-soft); display: flex; align-items: center; justify-content: center; cursor: pointer;
  transition: border-color .15s ease, color .15s ease, background .15s ease;
}
.slider-nav__btn svg { width: 20px; height: 20px; }
.slider-nav__btn:hover { border-color: var(--blue); color: var(--blue); background: var(--blue-tint); }
.slider-nav__btn:disabled { opacity: .35; cursor: default; }
.slider-nav__btn:disabled:hover { border-color: var(--line); color: var(--ink-soft); background: #fff; }

.cat-slider { position: relative; }
.cat-track {
  display: flex; gap: 24px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-behavior: smooth;
  padding: 2px 2px 10px; margin: -2px -2px 0; scrollbar-width: none; -ms-overflow-style: none;
}
.cat-track::-webkit-scrollbar { display: none; }
.cat-track .cat-card { flex: 0 0 calc((100% - 48px) / 3); scroll-snap-align: start; }

.cat-card--lg .cat-card__img { height: 230px; }
.cat-card--lg .cat-card__img img { max-height: 180px; }
.cat-card--lg .cat-card__body { padding: 22px 24px 26px; }
.cat-card--lg h3 { font-size: 17.5px; }
.cat-card--lg p { font-size: 13.5px; }

.cat-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.cat-card {
  position: relative; border-radius: var(--radius-lg); overflow: hidden;
  background: var(--surface-alt); border: 1px solid var(--line);
  display: flex; flex-direction: column; transition: box-shadow .15s ease, transform .15s ease;
}
.cat-card:hover { box-shadow: var(--shadow-md); transform: translateY(-3px); }
.cat-card__img { height: 168px; display: flex; align-items: center; justify-content: center; background: #fff; border-bottom: 1px solid var(--line); overflow: hidden; }
.cat-card__img img { max-height: 130px; width: auto; margin: 0 auto; object-fit: contain; }
.cat-card__body { padding: 18px 20px 22px; flex: 1; display: flex; flex-direction: column; }
.cat-card__body h3 { font-size: 15.5px; font-weight: 800; line-height: 1.3; margin-bottom: 8px; }
.cat-card__body p { font-size: 13px; color: var(--muted); margin-bottom: 14px; flex: 1; }
.cat-card__foot { display: flex; align-items: center; justify-content: space-between; font-size: 13px; font-weight: 700; color: var(--blue); }

.cat-more {
  display: flex; align-items: center; justify-content: center; text-align: center;
  border-radius: var(--radius-lg); border: 1.5px dashed var(--line);
  padding: 20px; min-height: 100%; color: var(--ink-soft); font-weight: 700; font-size: 14.5px;
  flex-direction: column; gap: 10px; transition: border-color .15s ease, color .15s ease;
}
.cat-more:hover { border-color: var(--blue); color: var(--blue); }
.cat-more svg { width: 26px; height: 26px; }

/* ---------- Product grid ---------- */
.prod-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; }
.prod-card {
  background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg);
  overflow: hidden; display: flex; flex-direction: column; transition: box-shadow .15s ease, transform .15s ease;
}
.prod-card:hover { box-shadow: var(--shadow-md); transform: translateY(-3px); }
.prod-card__img { height: 190px; display: flex; align-items: center; justify-content: center; background: var(--surface-alt); position: relative; }
.prod-card__img img { max-height: 155px; object-fit: contain; }
.prod-card__badge {
  position: absolute; top: 12px; left: 12px; background: var(--red); color: #fff;
  font-size: 11px; font-weight: 800; letter-spacing: .03em; text-transform: uppercase;
  padding: 5px 10px; border-radius: 999px;
}
.prod-card__body { padding: 18px 20px 20px; display: flex; flex-direction: column; gap: 10px; flex: 1; }
.prod-card__cat { font-size: 12px; font-weight: 700; color: var(--blue); text-transform: uppercase; letter-spacing: .04em; }
.prod-card__body h3 { font-size: 15.5px; font-weight: 800; line-height: 1.3; }
.prod-card__body p { font-size: 13.5px; color: var(--muted); flex: 1; }
.prod-card__foot { display: flex; align-items: center; justify-content: flex-end; padding-top: 8px; border-top: 1px solid var(--line-soft); }
.prod-card__price { font-size: 13.5px; font-weight: 700; color: var(--ink-soft); }
.prod-card__more { font-size: 13px; font-weight: 800; color: var(--blue); display: inline-flex; align-items: center; gap: 4px; }

/* ---------- Services ---------- */
.svc-grid { display: grid; grid-template-columns: 1fr; gap: 24px; }
.svc-card {
  border-radius: var(--radius-lg); overflow: hidden; border: 1px solid var(--line);
  background: #fff; display: flex; flex-direction: row; align-items: stretch; position: relative;
}
.svc-card__img {
  width: 300px; flex: none; overflow: hidden; background: var(--surface-alt);
  display: flex; align-items: center; justify-content: center; padding: 16px;
}
.svc-card__img img { width: 100%; height: 100%; object-fit: contain; }
.svc-card__body { padding: 26px 28px 30px; flex: 1; min-width: 0; }
.svc-card__body h3 { font-size: 21px; font-weight: 800; margin-bottom: 10px; }
.svc-card__body p { color: var(--muted); font-size: 14.5px; margin-bottom: 18px; }
.svc-card__tags { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 18px; }
.svc-tag { background: var(--surface-alt); border: 1px solid var(--line); font-size: 12.5px; font-weight: 700; color: var(--ink-soft); padding: 6px 12px; border-radius: 999px; }

/* ---------- Partners ---------- */
.partners-strip { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 28px 40px; }
.partner-badge {
  font-weight: 800; font-size: 20px; letter-spacing: .01em; color: var(--muted-2);
  transition: color .15s ease; white-space: nowrap;
}
.partner-badge span { color: var(--red); }
.partner-badge:hover { color: var(--ink); }

/* ---------- News ---------- */
.news-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.news-card { display: flex; flex-direction: column; border: 1px solid var(--line); border-radius: var(--radius-lg); overflow: hidden; background: #fff; transition: box-shadow .15s ease, transform .15s ease; }
.news-card:hover { box-shadow: var(--shadow-md); transform: translateY(-3px); }
.news-card__img { height: 190px; background: var(--surface-alt); display: flex; align-items: center; justify-content: center; overflow: hidden; }
.news-card__img img { max-width: 100%; max-height: 100%; width: auto; height: auto; object-fit: contain; }
.news-card__body { padding: 20px 22px 24px; }
.news-card__date { font-size: 12.5px; font-weight: 700; color: var(--red); letter-spacing: .03em; text-transform: uppercase; margin-bottom: 10px; display: block; }
.news-card__body h3 { font-size: 16px; font-weight: 800; line-height: 1.35; margin-bottom: 10px; }
.news-card__body p { font-size: 13.5px; color: var(--muted); }

/* ---------- Spec list (список без сетки/превью, напр. «Спецпредложения») ---------- */
.spec-list { border-top: 1px solid var(--line); }
.spec-list__row { display: flex; align-items: center; gap: 24px; padding: 22px 4px; border-bottom: 1px solid var(--line); transition: background .15s ease; }
.spec-list__row:hover { background: var(--surface-alt); }
.spec-list__date { flex: none; width: 100px; font-size: 12.5px; font-weight: 700; color: var(--red); letter-spacing: .03em; text-transform: uppercase; }
.spec-list__title { flex: 1; font-size: 16.5px; font-weight: 700; color: var(--ink); }
.spec-list__row:hover .spec-list__title { color: var(--blue); }
.spec-list__row .link-arrow { flex: none; }

/* ---------- About split ---------- */
.about-grid { display: grid; grid-template-columns: 0.85fr 1.15fr; gap: 56px; align-items: center; }
.about-photo { position: relative; border-radius: var(--radius-lg); overflow: hidden; box-shadow: var(--shadow-lg); }
.about-photo img { width: 100%; height: 480px; object-fit: cover; }
.about-photo__stat {
  position: absolute; left: 20px; bottom: 20px; right: 20px;
  background: rgba(16,26,36,.82); backdrop-filter: blur(6px);
  border-radius: var(--radius); padding: 16px 20px; color: #fff;
  display: flex; align-items: center; gap: 18px;
}
.about-photo__stat b { font-size: 24px; font-weight: 800; display: block; white-space: nowrap; }
.about-photo__stat span { font-size: 15px; line-height: 1.4; color: #C7D2DC; }
.about-list { display: grid; grid-template-columns: 1fr 1fr; gap: 16px 24px; margin: 26px 0 30px; }
.about-list li { display: flex; gap: 12px; font-size: 14.5px; color: var(--ink-soft); align-items: flex-start; }
.about-list svg { width: 20px; height: 20px; color: var(--blue); flex: none; margin-top: 1px; }

/* ---------- CTA band ---------- */
.cta-band {
  background: linear-gradient(120deg, var(--surface-dark) 0%, var(--surface-dark-2) 60%, #142230 100%);
  color: #fff; border-radius: var(--radius-lg); padding: 46px 50px;
  display: flex; align-items: center; justify-content: space-between; gap: 30px; flex-wrap: wrap;
  position: relative; overflow: hidden;
}
.cta-band::after {
  content: ""; position: absolute; width: 320px; height: 320px; border-radius: 50%;
  background: radial-gradient(circle, rgba(10,110,175,.35), transparent 70%);
  right: -80px; top: -120px;
}
.cta-band h3 { font-size: 25px; font-weight: 800; margin-bottom: 8px; max-width: 480px; }
.cta-band p { color: #AEBBC8; max-width: 480px; }
.cta-band__actions { display: flex; gap: 14px; flex-wrap: wrap; position: relative; z-index: 1; }

/* ---------- Contact section ---------- */
.contact-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; }
.contact-info { display: flex; flex-direction: column; justify-content: center; gap: 22px; }
.contact-row { display: flex; gap: 16px; align-items: flex-start; }
.contact-row .ic { width: 46px; height: 46px; border-radius: 12px; background: var(--blue-tint); color: var(--blue); display: flex; align-items: center; justify-content: center; flex: none; }
.contact-row .ic svg { width: 22px; height: 22px; }
.contact-row h4 { font-size: 13px; text-transform: uppercase; letter-spacing: .06em; color: var(--muted); margin-bottom: 4px; }
.contact-row p, .contact-row a { font-size: 16px; font-weight: 700; color: var(--ink); }

.form-card { background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 30px; box-shadow: var(--shadow-md); }
.form-card h3 { font-size: 19px; font-weight: 800; margin-bottom: 6px; }
.form-card > p { color: var(--muted); font-size: 14px; margin-bottom: 20px; }
.field { margin-bottom: 14px; }
.field label { display: block; font-size: 13px; font-weight: 700; color: var(--ink-soft); margin-bottom: 6px; }
.field input, .field textarea {
  width: 100%; border: 1.5px solid var(--line); border-radius: var(--radius-sm);
  padding: 12px 14px; font-family: inherit; font-size: 14.5px; color: var(--ink); background: var(--surface-alt);
}
.field input:focus, .field textarea:focus { outline: none; border-color: var(--blue); background: #fff; }
.field-consent { display: flex; align-items: flex-start; gap: 10px; margin: 14px 0 22px; cursor: pointer; }
.field-consent input[type="checkbox"] { flex: none; width: 18px; height: 18px; margin-top: 1px; accent-color: var(--blue); cursor: pointer; }
.field-consent span { font-size: 12.5px; line-height: 1.45; color: var(--muted); }
.field-consent a { color: var(--blue); text-decoration: underline; }
.field-consent a:hover { color: var(--red); }
.form-status { margin-top: 14px; font-size: 13.5px; font-weight: 600; line-height: 1.5; }
.form-status.is-success { color: #178A3C; }
.form-status.is-error { color: var(--red); }
.btn:disabled { opacity: .6; cursor: not-allowed; }

/* ---------- Footer ---------- */
.site-footer { background: var(--surface-dark); color: #B7C3CF; padding: 64px 0 0; }
.footer-grid { display: grid; grid-template-columns: 1.3fr 1fr 1fr 1.1fr; gap: 40px; padding-bottom: 46px; border-bottom: 1px solid rgba(255,255,255,.08); }
.footer-brand { display: flex; align-items: center; margin-bottom: 16px; }
.footer-brand__logo { height: 64px; width: auto; display: block; }
.site-footer p.desc { font-size: 14px; color: #92A2B2; max-width: 280px; margin-bottom: 20px; }
.footer-social { display: flex; gap: 10px; }
.footer-social a { width: 36px; height: 36px; border-radius: 50%; background: rgba(255,255,255,.06); display: flex; align-items: center; justify-content: center; }
.footer-social a:hover { background: var(--blue); }
.footer-social svg { width: 16px; height: 16px; color: #fff; }
.footer-social .icon-vk { width: 21px; height: 16px; }
.footer-col h4 { color: #fff; font-size: 14.5px; font-weight: 800; margin-bottom: 18px; }
.footer-col ul li { margin-bottom: 11px; }
.footer-col a { font-size: 14px; color: #92A2B2; }
.footer-col a:hover { color: #fff; }
.footer-contacts li { margin-bottom: 14px; }
.footer-contacts a { display: flex; align-items: flex-start; gap: 10px; }
.footer-contacts svg { width: 16px; height: 16px; flex: none; margin-top: 1px; color: #5E7080; transition: color .15s ease; }
.footer-contacts a:hover svg { color: var(--blue-tint-2); }
.footer-bottom { display: flex; align-items: center; justify-content: space-between; padding: 22px 0; font-size: 13px; color: #6E7E8D; flex-wrap: wrap; gap: 14px; }
.footer-bottom a { color: #92A2B2; }
.footer-bottom a:hover { color: #fff; }
.footer-credit { display: inline-flex; align-items: center; gap: 8px; color: #92A2B2; }
.footer-credit img { height: 15px; width: auto; opacity: .92; }
.footer-credit:hover { color: #fff; }
.footer-credit:hover img { opacity: 1; }

/* ---------- Page hero (inner pages) ---------- */
.page-hero { padding: 42px 0 40px; background: var(--surface-alt); border-bottom: 1px solid var(--line); }
.page-hero h1 { font-size: clamp(24px, 3vw, 32px); font-weight: 800; letter-spacing: -.01em; }
.page-hero p { color: var(--muted); margin-top: 10px; max-width: 640px; }
.page-hero__meta { display: flex; gap: 20px; margin-top: 18px; flex-wrap: wrap; }
.page-hero__meta span { font-size: 13.5px; font-weight: 700; color: var(--ink-soft); background: #fff; border: 1px solid var(--line); padding: 7px 14px; border-radius: 999px; }

/* ---------- Sidebar layout (category / subcategory / product) ---------- */
.layout { display: grid; grid-template-columns: 270px 1fr; gap: 36px; align-items: start; }
.layout > aside { position: sticky; top: 96px; }
.side-card { background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 22px; margin-bottom: 20px; }
.side-card h4 { font-size: 14px; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; color: var(--ink-soft); margin-bottom: 14px; }
.side-list li { border-bottom: 1px solid var(--line-soft); }
.side-list li:last-child { border-bottom: none; }
.side-list a { display: flex; align-items: center; justify-content: space-between; padding: 11px 2px; font-size: 14.5px; font-weight: 600; color: var(--ink-soft); }
.side-list a:hover { color: var(--blue); }
.side-list a.is-active { color: var(--blue); font-weight: 800; }
.side-list .count { font-size: 12px; color: var(--muted-2); font-weight: 600; }
.side-card--dark { background: var(--surface-dark); color: #fff; text-align: center; }
.side-card--dark h4 { color: #fff; }
.side-card--dark p { font-size: 13.5px; color: #AEBBC8; margin-bottom: 16px; }
.side-card--dark p a { color: #fff; font-weight: 700; text-decoration: underline; text-underline-offset: 2px; }
.side-card--dark .ic { width: 48px; height: 48px; border-radius: 12px; background: rgba(255,255,255,.08); display: flex; align-items: center; justify-content: center; margin: 0 auto 14px; }
.side-card--dark svg { width: 24px; height: 24px; color: var(--blue-tint-2); }

/* ---------- Subcategory chips (category page) ---------- */
.subcat-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.subcat-card {
  background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg);
  padding: 26px 24px; display: flex; flex-direction: column; align-items: center; text-align: center; gap: 14px;
  transition: box-shadow .15s ease, transform .15s ease, border-color .15s ease;
}
.subcat-card:hover { box-shadow: var(--shadow-md); transform: translateY(-3px); border-color: var(--blue-tint-2); }
.subcat-card__img { width: 100%; height: 170px; display: flex; align-items: center; justify-content: center; background: var(--surface-alt); border-radius: var(--radius); overflow: hidden; }
.subcat-card__img img { max-height: 140px; object-fit: contain; }
.subcat-card h3 { font-size: 16px; font-weight: 800; line-height: 1.35; }
.subcat-card .count { font-size: 13px; color: var(--muted); }

/* ---------- Product listing (subcategory page) ---------- */
.toolbar { display: flex; align-items: center; justify-content: space-between; margin-bottom: 22px; flex-wrap: wrap; gap: 14px; }
.toolbar .result-count { font-size: 14px; color: var(--muted); }
.sort-select { display: flex; align-items: center; gap: 8px; font-size: 13.5px; color: var(--ink-soft); font-weight: 600; }
.sort-select select { border: 1.5px solid var(--line); border-radius: var(--radius-sm); padding: 8px 12px; font-family: inherit; color: var(--ink); background: #fff; }

.pagination { display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 40px; }
.pagination a, .pagination span {
  min-width: 38px; height: 38px; display: flex; align-items: center; justify-content: center;
  border-radius: var(--radius-sm); font-weight: 700; font-size: 14px; border: 1.5px solid var(--line); color: var(--ink-soft);
}
.pagination a:hover { border-color: var(--blue); color: var(--blue); }
.pagination .is-active { background: var(--blue); color: #fff; border-color: var(--blue); }
.pagination .arrow { border: none; color: var(--muted); }

/* ---------- Product page ---------- */
.product-top { display: grid; grid-template-columns: 0.9fr 1.1fr; gap: 46px; }
.product-gallery { background: var(--surface-alt); border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 30px; display: flex; align-items: center; justify-content: center; height: 420px; }
.product-gallery img { max-height: 350px; object-fit: contain; }
.product-info__cat { font-size: 13px; font-weight: 700; color: var(--blue); text-transform: uppercase; letter-spacing: .04em; margin-bottom: 10px; }
.product-info h1 { font-size: clamp(24px, 3vw, 30px); font-weight: 800; margin-bottom: 14px; letter-spacing: -.01em; }
.product-info .sku { font-size: 13.5px; color: var(--muted); margin-bottom: 20px; }
.product-info .sku b { color: var(--ink-soft); }
.product-info p.desc { color: var(--ink-soft); font-size: 15px; margin-bottom: 22px; }
.feature-list { display: flex; flex-direction: column; gap: 12px; margin-bottom: 28px; }
.feature-list li { display: flex; gap: 12px; align-items: flex-start; font-size: 14.5px; color: var(--ink-soft); }
.feature-list svg { width: 20px; height: 20px; color: var(--red); flex: none; margin-top: 1px; }
.product-info__actions { display: flex; gap: 14px; flex-wrap: wrap; padding-top: 6px; border-top: 1px solid var(--line); padding-top: 22px; }
.product-info__note { display: flex; gap: 10px; align-items: center; margin-top: 18px; font-size: 13px; color: var(--muted); }
.product-info__note svg { width: 18px; height: 18px; color: var(--blue); }

.tabs-head { display: flex; gap: 6px; border-bottom: 1.5px solid var(--line); margin-bottom: 30px; }
.tabs-head button {
  background: none; border: none; padding: 14px 6px; margin-right: 26px; font-weight: 700; font-size: 15px;
  color: var(--muted); border-bottom: 2.5px solid transparent; margin-bottom: -1.5px;
}
.tabs-head button.is-active { color: var(--ink); border-color: var(--red); }

.related-strip { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }

/* ---------- Spec table ---------- */
.spec-table { border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; }
.spec-table tr:nth-child(odd) { background: var(--surface-alt); }
.spec-table td { padding: 12px 18px; font-size: 14.5px; border-bottom: 1px solid var(--line-soft); }
.spec-table td:first-child { color: var(--muted); width: 55%; }
.spec-table td:last-child { font-weight: 700; color: var(--ink); }
.spec-table tr:last-child td { border-bottom: none; }

/* ---------- Content prose (service page) ---------- */
.prose { display: flow-root; }
.prose h2 { font-size: 22px; font-weight: 800; margin: 40px 0 16px; letter-spacing: -.005em; }
.prose h2:first-child { margin-top: 0; }
.prose h3 { font-size: 17px; font-weight: 800; margin: 28px 0 12px; letter-spacing: -.005em; color: var(--ink); }
.prose h3:first-child { margin-top: 0; }
.prose p { color: var(--ink-soft); font-size: 15.5px; margin-bottom: 14px; }
.prose ul { margin: 16px 0; display: flex; flex-direction: column; gap: 10px; }
.prose ul li { display: flex; gap: 10px; font-size: 15px; color: var(--ink-soft); }
.prose ul li::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--red); flex: none; margin-top: 9px; }
.prose b { color: var(--ink); }

.equip-block { display: grid; grid-template-columns: 210px 1fr; gap: 26px; padding: 26px 0; border-top: 1px solid var(--line-soft); align-items: start; }
.equip-block:first-of-type { border-top: none; }
.equip-block__img { background: var(--surface-alt); border-radius: var(--radius); border: 1px solid var(--line); display: flex; align-items: center; justify-content: center; padding: 10px; height: 160px; }
.equip-block__img img { max-height: 130px; object-fit: contain; }
.equip-block h4 { font-size: 16px; font-weight: 800; margin-bottom: 12px; }

.shot-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin: 18px 0 6px; }
.shot-grid a { border-radius: var(--radius); overflow: hidden; border: 1px solid var(--line); aspect-ratio: 4/3; display: block; }
.shot-grid img { width: 100%; height: 100%; object-fit: cover; transition: transform .2s ease; }
.shot-grid a:hover img { transform: scale(1.06); }

.pack-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; margin: 18px 0 6px; }
.pack-grid figure {
  margin: 0; border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden;
  background: var(--surface-alt); transition: box-shadow .2s ease, transform .2s ease, border-color .2s ease;
}
.pack-grid figure:hover { box-shadow: var(--shadow-md); transform: translateY(-4px); border-color: var(--blue-tint-2); }
.pack-grid img { width: 100%; height: auto; display: block; transition: transform .35s ease; }
.pack-grid figure:hover img { transform: scale(1.05); }
.pack-grid figcaption { padding: 10px 14px; font-size: 13px; color: var(--muted); text-align: center; border-top: 1px solid var(--line); }

.prose-figure--float { float: left; width: 320px; margin: 2px 24px 16px 0; }
.prose-figure--float img {
  width: 100%; aspect-ratio: 4 / 3; object-fit: cover; display: block;
  border-radius: var(--radius-lg); box-shadow: var(--shadow-md);
}
.prose-figure--offer img { aspect-ratio: 1024 / 687; object-fit: contain; background: var(--surface-alt); }

.reviews-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 32px; }
@media (max-width: 560px) { .reviews-grid { grid-template-columns: 1fr; gap: 22px; } }

.reviews-carousel { display: flex; align-items: center; gap: 28px; max-width: 460px; margin: 0 auto; }
.reviews-carousel__viewport { flex: 1; min-width: 0; overflow: hidden; }
.reviews-carousel__track { display: flex; transition: transform .35s ease; }
.reviews-carousel__slide { flex: 0 0 100%; min-width: 0; }
.reviews-carousel__btn { flex: none; }
.reviews-carousel__counter { text-align: center; margin-top: 22px; font-size: 13.5px; font-weight: 700; color: var(--muted); }
@media (max-width: 560px) { .reviews-carousel { gap: 14px; } }
.review-card {
  position: relative; margin: 0; border: 1px solid var(--line); border-radius: var(--radius-lg); overflow: hidden;
  background: #fff; box-shadow: var(--shadow-sm);
  transition: box-shadow .25s ease, transform .25s ease, border-color .25s ease;
}
.review-card::before {
  content: ""; position: absolute; top: 0; left: 0; right: 0; height: 4px; z-index: 1;
  background: linear-gradient(90deg, var(--blue), var(--red));
}
.review-card:hover { box-shadow: var(--shadow-lg); transform: translateY(-6px); border-color: var(--blue-tint-2); }
.review-card__placeholder {
  aspect-ratio: 3 / 4; background: var(--surface-alt); border-bottom: 1px solid var(--line);
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px;
  padding: 24px; text-align: center;
  background-image: repeating-linear-gradient(45deg, var(--line-soft) 0 2px, transparent 2px 14px);
}
.review-card__placeholder svg { width: 42px; height: 42px; color: var(--muted-2); flex: none; }
.review-card__placeholder span { font-size: 12.5px; color: var(--muted); line-height: 1.4; max-width: 150px; }
.review-card figcaption { padding: 20px 16px 16px; font-size: 14.5px; font-weight: 700; color: var(--ink); text-align: center; }
.review-card figcaption::before {
  content: "\201C"; display: block; font-family: Georgia, "Times New Roman", serif;
  font-size: 36px; line-height: .6; color: var(--blue); opacity: .32; margin-bottom: 8px;
}
.review-card__link { display: block; color: inherit; text-decoration: none; }
.review-card__img { position: relative; aspect-ratio: 3 / 4; background: var(--surface-alt); border-bottom: 1px solid var(--line); overflow: hidden; cursor: zoom-in; }
.review-card__img img { width: 100%; height: 100%; object-fit: cover; object-position: top; transition: transform .25s ease; }
.review-card:hover .review-card__img img { transform: scale(1.04); }
.review-card__img::after {
  content: ""; position: absolute; right: 14px; bottom: 14px; width: 40px; height: 40px; border-radius: 50%;
  background-color: rgba(255, 255, 255, .92);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230A6EAF' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: center; background-size: 20px 20px;
  box-shadow: var(--shadow-sm); opacity: 0; transform: scale(.75); pointer-events: none;
  transition: opacity .2s ease, transform .2s ease;
}
.review-card:hover .review-card__img::after { opacity: 1; transform: scale(1); }

.callout {
  display: flex; align-items: center; gap: 16px; background: var(--blue-tint);
  border: 1px solid var(--blue-tint-2); border-left: 4px solid var(--blue);
  border-radius: var(--radius); padding: 18px 22px; margin: 20px 0;
}
.callout .ic { width: 42px; height: 42px; border-radius: 10px; background: #fff; color: var(--blue); display: flex; align-items: center; justify-content: center; flex: none; }
.callout .ic svg { width: 22px; height: 22px; }
.callout p { margin: 0; font-size: 15px; color: var(--ink-soft); }
.callout a { font-weight: 700; color: var(--blue-dark); }

/* ---------- Photo/drawing collage ---------- */
.collage { position: relative; height: 480px; margin: 6px 0 44px; }
.collage__item {
  position: absolute; background: #fff; border: 1px solid var(--line); border-radius: var(--radius-sm);
  box-shadow: var(--shadow-lg); padding: 8px; box-sizing: border-box;
  transition: transform .25s ease, box-shadow .25s ease;
}
.collage__item img { width: 100%; height: 100%; object-fit: contain; display: block; }
.collage__c1 { left: 41%;  top: 5%;  width: 20%; height: 24%; z-index: 4; transform: rotate(-4deg); }
.collage__c2 { left: 11%;  top: -2%; width: 34%; height: 38%; z-index: 3; transform: rotate(3deg); }
.collage__c3 { left: 58%;  top: 2%;  width: 34%; height: 38%; z-index: 2; transform: rotate(-3deg); }
.collage__c4 { left: 28%;  top: 26%; width: 44%; height: 56%; z-index: 5; transform: rotate(0deg); }
.collage__c5 { left: 0%;   top: 46%; width: 26%; height: 42%; z-index: 2; transform: rotate(5deg); }
.collage__c6 { left: 78%;  top: 44%; width: 22%; height: 40%; z-index: 2; transform: rotate(-5deg); }
.collage__item.is-clickable { cursor: zoom-in; }
.collage__item:hover {
  transform: scale(1.15) rotate(0deg);
  z-index: 20;
  box-shadow: 0 30px 60px -12px rgba(15, 26, 38, .38);
}

/* ---------- Team / certificate collage ---------- */
.team-grid { display: grid; grid-template-columns: 1.15fr 0.85fr; gap: 40px; align-items: center; }
.cert-block { display: flex; flex-direction: column; align-items: center; }
.cert-collage { position: relative; width: 100%; height: 390px; }
.cert-card {
  position: absolute; display: block; background: #fff; border: 1px solid var(--line);
  border-radius: 10px; padding: 6px; box-shadow: var(--shadow-md); cursor: zoom-in;
  transition: transform .25s ease, box-shadow .25s ease;
}
.cert-card img { display: block; width: 100%; height: auto; border-radius: 5px; }
.cert-card--portrait { width: 30%; }
.cert-card--landscape { width: 42%; }
.cert-card:hover { transform: translateY(-6px) rotate(0deg) scale(1.06) !important; box-shadow: var(--shadow-lg); z-index: 9 !important; }
.cert-card--1 { left: 0;   top: 4%;  z-index: 2; transform: rotate(-6deg); }
.cert-card--2 { left: 27%; top: 0;   z-index: 4; transform: rotate(3deg); }
.cert-card--3 { right: 0;  top: 6%;  z-index: 1; transform: rotate(-3deg); }
.cert-card--4 { left: 10%; top: 44%; z-index: 3; transform: rotate(6deg); }
.cert-card--5 { right: 8%; top: 42%; z-index: 5; transform: rotate(-7deg); }
.cert-block__all {
  margin-top: 18px; padding: 0; background: none; border: 0; font: inherit;
  font-size: 14.5px; font-weight: 700; color: var(--blue); cursor: pointer;
}
.cert-block__all:hover { color: var(--blue-dark); text-decoration: underline; }

/* ---------- Lightbox ---------- */
.lightbox-overlay {
  position: fixed; inset: 0; background: rgba(10, 16, 24, .92); z-index: 200;
  display: flex; align-items: center; justify-content: center; padding: 40px;
  opacity: 0; visibility: hidden; transition: opacity .2s ease;
}
.lightbox-overlay.is-open { opacity: 1; visibility: visible; }
.lightbox-overlay img { max-width: 100%; max-height: 100%; border-radius: var(--radius); box-shadow: var(--shadow-lg); cursor: zoom-out; }
.lightbox-close {
  position: absolute; top: 24px; right: 28px; width: 44px; height: 44px; border-radius: 50%;
  background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.25); color: #fff;
  font-size: 26px; line-height: 1; cursor: pointer;
}
.lightbox-close:hover { background: rgba(255,255,255,.22); }

.lightbox-nav {
  position: absolute; top: 50%; transform: translateY(-50%); width: 52px; height: 52px; border-radius: 50%;
  background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.25); color: #fff; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
}
.lightbox-nav svg { width: 24px; height: 24px; }
.lightbox-nav:hover { background: rgba(255,255,255,.22); }
.lightbox-nav--prev { left: 24px; }
.lightbox-nav--next { right: 24px; }
.lightbox-caption {
  position: absolute; left: 50%; bottom: 20px; transform: translateX(-50%);
  max-width: calc(100% - 48px); overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
  padding: 8px 16px; border-radius: 999px; background: rgba(0,0,0,.4);
  color: rgba(255,255,255,.9); font-size: 14px; font-weight: 600;
}
.lightbox-nav[hidden], .lightbox-caption[hidden] { display: none; }
.lightbox-overlay.is-gallery { padding: 40px 96px 72px; }
@media (max-width: 600px) {
  .lightbox-overlay.is-gallery { padding: 56px 12px 84px; }
  .lightbox-nav { top: auto; bottom: 16px; transform: none; width: 44px; height: 44px; }
  .lightbox-nav--prev { left: 12px; }
  .lightbox-nav--next { right: 12px; }
  .lightbox-caption { bottom: 22px; max-width: calc(100% - 132px); font-size: 12.5px; padding: 7px 12px; }
}

/* ---------- Модальные окна (согласие / политика) ---------- */
.modal-overlay {
  position: fixed; inset: 0; z-index: 200;
  display: flex; align-items: center; justify-content: center; padding: 24px;
  background: rgba(10, 20, 30, .6);
  opacity: 0; visibility: hidden; transition: opacity .2s ease, visibility .2s ease;
}
.modal-overlay.is-open { opacity: 1; visibility: visible; }
.modal-box {
  position: relative; width: 100%; max-width: 640px; max-height: 80vh; overflow-y: auto;
  background: #fff; border-radius: var(--radius-lg); box-shadow: var(--shadow-lg);
  padding: 32px; transform: translateY(12px); transition: transform .2s ease;
}
.modal-overlay.is-open .modal-box { transform: translateY(0); }
.modal-box h3 { font-size: 19px; font-weight: 800; margin-bottom: 16px; padding-right: 28px; }
.modal-box__body { font-size: 14px; line-height: 1.6; color: var(--ink-soft); }
.modal-box__body p + p, .modal-box__body ul + p, .modal-box__body ol + p, .modal-box__body p + ul, .modal-box__body p + ol, .modal-box__body h4 + ul, .modal-box__body h4 + ol { margin-top: 12px; }
.modal-box__body h4 { font-size: 15px; font-weight: 800; color: var(--ink); margin: 20px 0 4px; }
.modal-box__body h4:first-child { margin-top: 0; }
.modal-box__body ul { padding-left: 20px; list-style: disc; }
.modal-box__body ol { padding-left: 20px; list-style: decimal; }
.modal-box__body li + li { margin-top: 6px; }
.modal-box__body a { color: var(--blue); }
.modal-close {
  position: absolute; top: 16px; right: 16px; width: 32px; height: 32px; border-radius: 50%;
  border: none; background: var(--surface-alt); color: var(--ink); font-size: 20px; line-height: 1; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
}
.modal-close:hover { background: var(--line); }
@media (max-width: 560px) { .modal-box { padding: 24px; } }

/* ---------- Cookie-баннер ---------- */
.cookie-banner {
  position: fixed; left: 24px; bottom: 24px; z-index: 190;
  max-width: 560px; width: calc(100% - 48px);
  opacity: 0; visibility: hidden; transform: translateY(16px);
  transition: opacity .25s ease, transform .25s ease, visibility .25s ease;
}
.cookie-banner.is-visible { opacity: 1; visibility: visible; transform: translateY(0); }
.cookie-banner__box {
  display: flex; align-items: center; gap: 24px;
  background: #fff; border-radius: var(--radius-lg); box-shadow: var(--shadow-lg);
  padding: 24px 28px;
}
.cookie-banner__text h4 { font-size: 16px; font-weight: 800; margin-bottom: 8px; }
.cookie-banner__text p { font-size: 13.5px; line-height: 1.5; color: var(--muted); }
.cookie-banner__text p + p { margin-top: 8px; }
.cookie-banner__text a { color: var(--blue); text-decoration: underline; }
.cookie-banner__text a:hover { color: var(--red); }
.cookie-banner__toggle {
  margin-top: 8px; background: none; border: none; padding: 0; cursor: pointer;
  font-size: 13.5px; font-weight: 700; color: var(--ink); text-decoration: underline;
}
.cookie-banner__toggle:hover { color: var(--blue); }
.cookie-banner__accept {
  flex: none; border: none; cursor: pointer; border-radius: 999px;
  background: #1FA24A; color: #fff; font-size: 15px; font-weight: 700;
  padding: 14px 30px; transition: background .2s ease;
}
.cookie-banner__accept:hover { background: #178A3C; }
@media (max-width: 640px) {
  .cookie-banner { left: 12px; right: 12px; bottom: 12px; width: auto; max-width: none; }
  .cookie-banner__box { flex-direction: column; align-items: stretch; gap: 16px; padding: 20px; }
  .cookie-banner__accept { width: 100%; }
}

.stat-strip { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; margin: 30px 0 6px; }
.stat-strip div { background: var(--surface-alt); border: 1px solid var(--line); border-radius: var(--radius); padding: 18px 20px; }
.stat-strip b { font-size: 22px; font-weight: 800; display: block; }
.stat-strip span { font-size: 13px; color: var(--muted); }

.side-cta-card { background: linear-gradient(155deg, var(--blue-tint), #fff); border: 1px solid var(--blue-tint-2); }

/* ---------- Utility ---------- */
.mt-0 { margin-top: 0 !important; }
.text-center { text-align: center; }

/* =========================================================
   Responsive
   ========================================================= */
@media (max-width: 1080px) {
  .hero { display: block; min-height: 0; padding: calc(50vw + 40px) 0 56px; }
  .hero__equip { top: 32px; right: auto; left: 50%; transform: translateX(-50%); width: 100vw; }
  .hero__shade { background: linear-gradient(180deg, transparent 0, transparent 38vw, rgba(11,22,33,.7) 50vw, var(--hero-bg) 58vw); }
  .hero__bg::after { -webkit-mask-image: radial-gradient(ellipse 80% 40% at 50% 20%, #000 20%, transparent 72%); mask-image: radial-gradient(ellipse 80% 40% at 50% 20%, #000 20%, transparent 72%); }
  .hero__content { max-width: 680px; }
  .hero__stats { position: static; justify-content: flex-start; margin-top: 28px; }
  .adv-card { flex-basis: calc(50% - 11px); }
  .cat-grid { grid-template-columns: repeat(3, 1fr); }
  .prod-grid { grid-template-columns: repeat(3, 1fr); }
  .about-grid { grid-template-columns: 1fr; }
  .about-photo img { height: 340px; }
  .team-grid { grid-template-columns: 1fr; }
  .cert-block { align-items: flex-start; margin-top: 28px; }
  .cert-collage { height: auto; display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; align-items: start; max-width: 680px; }
  .cert-card { position: static; width: auto !important; transform: none !important; }
  .cert-card:hover { transform: none !important; }
  .svc-grid { grid-template-columns: 1fr; }
  .svc-card { flex-direction: column; }
  .svc-card__img { width: 100%; height: 220px; }
  .layout { grid-template-columns: 1fr; }
  .layout > aside { position: static; }
  .product-top { grid-template-columns: 1fr; }
  .related-strip { grid-template-columns: repeat(3, 1fr); }
  .equip-block { grid-template-columns: 160px 1fr; }
}

@media (max-width: 1470px) {
  .nav { position: fixed; inset: 124px 0 0 0; background: #fff; flex-direction: column; align-items: stretch;
    padding: 18px; gap: 6px; overflow-y: auto; transform: translateX(100%); transition: transform .2s ease; z-index: 50; }
  .nav.is-open { transform: translateX(0); }
  .nav a { padding: 14px 16px; border-radius: var(--radius-sm); }
  .nav-toggle { display: flex; }
  .mainbar__phone a { font-size: 16px; }
  .mainbar__inner { height: 84px; }
  .mainbar__cta { display: none; }
  .brand__logo-img { height: 46px; }
  .nav-item > a .caret { display: none; }
  .mega-menu {
    position: static; display: flex !important; flex-direction: column; box-shadow: none; border: none;
    padding: 4px 0 10px 14px; margin-top: 0; min-width: 0; gap: 0;
  }
  .mega-menu--sm { min-width: 0; }
  .nav .mega-menu__link, .nav .mega-menu__sublink { padding: 11px 12px; white-space: normal; }
  .mega-menu__flyout {
    position: static; display: flex !important; box-shadow: none; border: none;
    border-left: 1px solid var(--line-soft); border-radius: 0; margin: 0 0 4px 12px; padding: 2px 0 2px 14px; min-width: 0;
  }
  .mega-menu__arrow { display: none; }
}

@media (max-width: 860px) {
  .topbar__meta { display: none; }
  .cat-grid { grid-template-columns: repeat(2, 1fr); }
  .prod-grid { grid-template-columns: repeat(2, 1fr); }
  .news-grid { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .contact-grid { grid-template-columns: 1fr; }
  .subcat-grid { grid-template-columns: 1fr; }
  .stat-strip { grid-template-columns: repeat(2, 1fr); }
  .partners-strip { justify-content: center; }
  .related-strip { grid-template-columns: repeat(2, 1fr); }
  .section-head { flex-direction: column; align-items: flex-start; }
  .section-head__side { align-items: flex-start; width: 100%; }
  .section-head__side p { text-align: left; }
  .cat-track .cat-card { flex: 0 0 calc((100% - 24px) / 2); }
}

@media (max-width: 600px) {
  .prose-figure--float { float: none; width: 100%; margin: 16px 0; }
  .hero { padding: calc(56vw + 24px) 0 44px; }
  .hero__equip { top: 20px; width: 112vw; }
  .hero h1 { font-size: 28px; }
  .hero h1 em { font-size: 14.5px; margin-top: 12px; }
  .hero__cta .btn { flex: 1 1 auto; }
  .hero__stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
  .hero__stat { flex-direction: column; align-items: flex-start; gap: 8px; padding: 12px; }
  .hero__stat-text span { white-space: normal; line-height: 1.3; }
  .mainbar__phone-label { display: none; }
  .mainbar__phone a { font-size: 15px; gap: 6px; }
  .mainbar__phone a::before { width: 16px; height: 16px; }
  .mainbar__inner { gap: 12px; }
  .mainbar__side { gap: 10px; }
  .section-pad { padding: 56px 0; }
  .adv-card { flex-basis: 100%; }
  .cat-grid { grid-template-columns: 1fr; }
  .prod-grid { grid-template-columns: 1fr; }
  .cta-band { padding: 32px 26px; flex-direction: column; align-items: flex-start; }
  .footer-grid { grid-template-columns: 1fr; }
  .spec-list__row { flex-wrap: wrap; gap: 6px 24px; }
  .spec-list__date { width: auto; order: 2; }
  .spec-list__title { order: 1; flex: 0 0 100%; }
  .spec-list__row .link-arrow { order: 3; }
  .equip-block { grid-template-columns: 1fr; }
  .shot-grid { grid-template-columns: repeat(2, 1fr); }
  .pack-grid { grid-template-columns: 1fr; }
  .collage { height: auto; display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
  .collage__item { position: static; width: auto; height: 140px; transform: none; z-index: auto; }
  .collage__item:hover { transform: none; }
  .team-grid { grid-template-columns: 1fr; }
  .cert-collage { grid-template-columns: repeat(3, 1fr); }
  .cert-card { position: static; width: auto !important; transform: none !important; }
  .cert-card:hover { transform: none !important; }
  .related-strip { grid-template-columns: 1fr 1fr; }
  .stat-strip { grid-template-columns: 1fr; }
  .cat-track { gap: 14px; }
  .cat-track .cat-card { flex: 0 0 86%; }
}
