:root {
  --bg: #05070b;
  --bg-soft: #090d14;
  --panel: #0c111b;
  --panel-2: #101827;
  --line: rgba(137, 170, 218, 0.18);
  --line-strong: rgba(76, 145, 255, 0.38);
  --text: #f4f7fb;
  --muted: #9ba8ba;
  --blue: #1877ff;
  --blue-light: #55a3ff;
  --blue-deep: #0c4ed4;
  --radius: 22px;
  --shadow: 0 30px 80px rgba(0, 0, 0, 0.42);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--text);
  background: var(--bg);
  font-family: Inter, Arial, sans-serif;
  line-height: 1.55;
  overflow-x: hidden;
}
button, input { font: inherit; }
a { color: inherit; text-decoration: none; }
button { color: inherit; }
.container { width: min(1180px, calc(100% - 40px)); margin: 0 auto; }
.noise {
  position: fixed; inset: 0; pointer-events: none; z-index: 100;
  opacity: .025;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.6'/%3E%3C/svg%3E");
}

.site-header {
  position: sticky; top: 0; z-index: 80;
  background: rgba(4, 6, 10, .82);
  border-bottom: 1px solid rgba(255,255,255,.07);
  backdrop-filter: blur(18px);
}
.header-inner { height: 82px; display: flex; align-items: center; gap: 26px; }
.brand-group { display: flex; align-items: center; gap: 18px; min-width: 335px; }
.brand { display: flex; align-items: center; gap: 11px; }
.brand-copy, .brand-ctmk { display: flex; flex-direction: column; }
.brand strong { font-family: Manrope, sans-serif; font-size: 20px; line-height: 1.1; }
.brand small { margin-top: 4px; color: #758196; text-transform: uppercase; font-size: 9px; letter-spacing: .08em; }
.brand-divider { width: 1px; height: 34px; background: rgba(255,255,255,.18); }
.desktop-nav { margin-left: auto; display: flex; align-items: center; gap: 29px; }
.desktop-nav a { color: #b8c1cf; font-size: 14px; transition: .2s; }
.desktop-nav a:hover { color: white; }
.header-cta { margin-left: 10px; }
.menu-toggle { display: none; width: 42px; height: 42px; border: 1px solid var(--line); background: var(--panel); border-radius: 12px; }
.menu-toggle span { display: block; width: 20px; height: 2px; background: white; margin: 4px auto; }
.mobile-panel { display: none; }

.button {
  display: inline-flex; align-items: center; justify-content: center; gap: 9px;
  min-height: 48px; padding: 0 22px; border: 1px solid transparent; border-radius: 12px;
  font-weight: 700; font-size: 14px; cursor: pointer; transition: transform .2s, border-color .2s, background .2s, box-shadow .2s;
}
.button:hover { transform: translateY(-2px); }
.button-primary { background: linear-gradient(135deg, #1783ff, #0759df); box-shadow: 0 14px 32px rgba(17,102,236,.25); }
.button-primary:hover { box-shadow: 0 16px 42px rgba(17,102,236,.4); }
.button-ghost { border-color: #34445d; background: rgba(7,12,20,.62); }
.button-ghost:hover { border-color: #5e7aa4; }
.button-large { min-height: 56px; padding: 0 28px; }


.hero {
  position: relative;
  min-height: 790px;
  overflow: hidden;
  isolation: isolate;
  border-bottom: 1px solid rgba(255,255,255,.07);
  background: #03050a;
}
.section-dark { background: #03050a; }
.hero-media {
  position: absolute;
  inset: 0;
  z-index: -4;
  background-image: url("img/hero-bg.webp");
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  transform: scale(1.012);
  filter: saturate(.92) contrast(1.04) brightness(.88);
}
.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -3;
  pointer-events: none;
  background:
    linear-gradient(90deg,
      rgba(2,4,8,.99) 0%,
      rgba(2,4,8,.96) 22%,
      rgba(2,4,8,.80) 39%,
      rgba(2,4,8,.28) 60%,
      rgba(2,4,8,.08) 78%,
      rgba(2,4,8,.18) 100%),
    linear-gradient(180deg,
      rgba(2,4,8,.18) 0%,
      rgba(2,4,8,0) 48%,
      rgba(2,4,8,.62) 100%);
}
.hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
  pointer-events: none;
  box-shadow: inset 0 -110px 120px rgba(0,0,0,.32);
}
.hero-grid {
  position: absolute;
  inset: 0 48% 0 0;
  z-index: -1;
  opacity: .35;
  background-image:
    linear-gradient(rgba(67,118,189,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(67,118,189,.08) 1px, transparent 1px);
  background-size: 72px 72px;
  mask-image: linear-gradient(90deg, #000, transparent 95%);
}
.hero-depth {
  position: absolute;
  right: 7%;
  top: 10%;
  width: 36%;
  height: 48%;
  z-index: -1;
  pointer-events: none;
  background: radial-gradient(circle, rgba(22,119,255,.22), transparent 67%);
  filter: blur(72px);
}
.hero-layout {
  position: relative;
  min-height: 790px;
  display: grid;
  grid-template-columns: minmax(0, 760px) 1fr;
  grid-template-rows: 1fr auto;
  align-items: center;
  z-index: 2;
}
.hero-copy {
  grid-column: 1;
  padding: 72px 0 145px;
  position: relative;
  z-index: 3;
}
.eyebrow { margin: 0 0 20px; color: var(--blue-light); text-transform: uppercase; letter-spacing: .14em; font-weight: 800; font-size: 13px; }
h1,h2,h3 { margin: 0; font-family: Manrope, sans-serif; line-height: 1.08; }
h1 {
  max-width: 760px;
  font-size: clamp(58px, 5.2vw, 86px);
  letter-spacing: -.058em;
  text-wrap: balance;
  text-shadow: 0 18px 48px rgba(0,0,0,.28);
}
h2 { font-size: clamp(35px, 4vw, 56px); letter-spacing: -.04em; }
h3 { font-size: 20px; letter-spacing: -.02em; }
.hero-lead {
  max-width: 690px;
  margin: 30px 0 34px;
  color: #b6c0ce;
  font-size: 20px;
  line-height: 1.55;
  text-shadow: 0 4px 20px rgba(0,0,0,.75);
}
.hero-actions { display: flex; gap: 14px; flex-wrap: wrap; }
.hero-trust {
  position: absolute;
  right: 0;

  bottom: 145px;

  width: min(720px, 56%);
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));

  overflow: hidden;
  border: 1px solid rgba(133, 170, 221, .26);
  border-radius: 18px;

  background:
    linear-gradient(
      180deg,
      rgba(5, 10, 18, .76),
      rgba(4, 8, 14, .64)
    );

  box-shadow:
    0 22px 70px rgba(0, 0, 0, .42),
    inset 0 1px 0 rgba(255, 255, 255, .045);

  backdrop-filter: blur(16px) saturate(1.15);
}
.hero-trust-item {
  min-width: 0;
  min-height: 116px;
  padding: 22px 22px;

  display: grid;
  grid-template-columns: 46px minmax(0, 1fr);
  align-items: center;
  column-gap: 16px;
}
.hero-trust-item + .hero-trust-item { border-left: 1px solid rgba(137,170,218,.22); }
.hero-trust-icon {
  width: 46px;
  height: 46px;

  display: grid;
  place-items: center;
  align-self: center;

  border: 0;
  border-radius: 0;

  color: #2886ff;
  background: transparent;
  box-shadow: none;
}

.hero-trust-icon svg {
  width: 34px;
  height: 34px;

  display: block;

  fill: none;
  stroke: currentColor;
  stroke-width: 1.45;
  stroke-linecap: round;
  stroke-linejoin: round;

  filter: drop-shadow(0 0 9px rgba(24, 119, 255, .25));
}
.hero-trust-item > div {
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.hero-trust strong {
  display: block;

  font-family: Manrope, sans-serif;
  font-size: 20px;
  line-height: 1.12;
  letter-spacing: -.025em;

  white-space: nowrap;
}

.hero-trust span:not(.hero-trust-icon) {
  display: block;

  margin-top: 7px;

  color: var(--muted);
  font-size: 13px;
  line-height: 1.4;
}

.section { padding: 110px 0; position: relative; }
.section-deep { background: linear-gradient(180deg, #070b12, #05070b); border-block: 1px solid rgba(255,255,255,.05); }
.section-heading { max-width: 820px; margin-bottom: 50px; }
.section-heading.centered { text-align: center; margin-left: auto; margin-right: auto; }
.section-heading p:last-child { color: var(--muted); font-size: 18px; }
.offer-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.feature-card { min-height:315px; padding:34px; border:1px solid var(--line); border-radius:var(--radius); background:linear-gradient(145deg,rgba(14,20,31,.95),rgba(7,11,18,.95)); box-shadow:inset 0 1px 0 rgba(255,255,255,.03); transition:.25s; }
.feature-card:hover { transform: translateY(-6px); border-color: var(--line-strong); box-shadow: 0 25px 60px rgba(0,0,0,.32); }
.feature-card h3 { margin: 24px 0 16px; font-size:22px; }
.feature-card p { color:var(--muted); margin:0; }
.icon-box { width:54px;height:54px;display:grid;place-items:center;border:1px solid rgba(51,126,255,.35);border-radius:15px;background:linear-gradient(145deg,rgba(25,111,255,.24),rgba(11,32,67,.5));box-shadow:0 0 28px rgba(24,119,255,.15)}
.icon-box svg { width:27px; fill:none; stroke:#61a7ff; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.usp-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden; }
.usp-card { padding:42px;background:#080c13;min-height:250px; }
.usp-number { color:#2b79e8;font-family:Manrope;font-size:14px;font-weight:800;letter-spacing:.15em; }
.usp-card h3 { margin:28px 0 15px;font-size:24px; }
.usp-card p { color:var(--muted);margin:0; }
.benefit-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:16px; }
.benefit-item { display:flex;align-items:center;gap:18px;min-height:105px;padding:20px 22px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(145deg,#0d1420,#090d14); }
.benefit-item span { width:42px;height:42px;flex:0 0 auto;display:grid;place-items:center;border-radius:13px;color:#7eb5ff;background:#0d2c5f;border:1px solid #2258a7;font-weight:800;font-size:13px; }
.benefit-item p { margin:0;color:#d5dbe5;font-size:15px; }
.section-russia { padding-top:40px; }
.russia-card { display:grid;grid-template-columns:.8fr 1.2fr;min-height:520px;border:1px solid var(--line-strong);border-radius:28px;overflow:hidden;background:radial-gradient(circle at 5% 80%,rgba(50,104,212,.28),transparent 38%),linear-gradient(135deg,#0d1624,#080c13);box-shadow:var(--shadow); }
.russia-visual { position:relative;overflow:hidden;min-height:420px;background:radial-gradient(circle at 35% 60%,rgba(21,113,255,.33),transparent 50%); }
.russia-visual::after { content:"RU";position:absolute;left:54px;top:70px;color:rgba(255,255,255,.035);font-size:230px;font-family:Manrope;font-weight:800; }
.flag-wave { position:absolute;left:-16%;width:130%;height:120px;border-radius:50%;transform:rotate(-13deg) skewX(-18deg);box-shadow:0 15px 45px rgba(0,0,0,.3); }
.flag-white{bottom:212px;background:linear-gradient(180deg,#fff,#aeb9c8)}.flag-blue{bottom:132px;background:linear-gradient(180deg,#2a70ef,#0734a0)}.flag-red{bottom:52px;background:linear-gradient(180deg,#ec3e54,#901326)}
.russia-copy { padding:58px 62px 50px 28px; }
.russia-copy > p:not(.eyebrow) { color:var(--muted);font-size:18px; }
.check-list { list-style:none;padding:0;margin:28px 0 0;display:grid;gap:14px; }
.check-list li { position:relative;padding-left:30px;color:#d4dbe6; }
.check-list li::before { content:"✓";position:absolute;left:0;top:0;color:#61a5ff;font-weight:800;text-shadow:0 0 14px #2c7fff; }
.product-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:18px; }
.product-card { overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#0b1018;transition:.25s; }
.product-card:hover { transform:translateY(-6px);border-color:var(--line-strong);box-shadow:0 24px 60px rgba(0,0,0,.34); }
.product-visual { height:210px;position:relative;overflow:hidden;background:radial-gradient(circle at 50% 25%,#183a66,#0a1019 65%); }
.product-image { background: #eaf4ff; }
.product-image img { display:block; width:100%; height:100%; object-fit:cover; object-position:center 42%; }
.product-body { padding:24px; }
.product-body p { min-height:48px;color:var(--muted);font-size:14px; }
.text-link { padding:0;border:0;background:none;color:#4f98ff;font-weight:700;cursor:pointer; }
.text-link:hover { color:#8fc1ff; }
.ui-window { position:absolute;inset:32px 42px 26px;border:3px solid #547ba9;border-radius:8px;background:#0c1622;box-shadow:0 20px 45px rgba(0,0,0,.5),0 0 35px rgba(28,113,255,.18);padding:18px; }
.ui-window > span { display:inline-block;width:7px;height:7px;border-radius:50%;background:#3978bf;margin-right:5px; }
.ui-window div { height:14px;margin-top:13px;border-radius:3px;background:linear-gradient(90deg,#2367bd 0 22%,#203249 22% 100%); }
.stock-map { position:absolute;inset:34px;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;transform:perspective(400px) rotateX(10deg); }
.stock-map i { border:1px solid #4775ab;background:linear-gradient(145deg,#1c3859,#0b1624);box-shadow:inset 0 0 0 5px rgba(14,28,44,.7); }
.tool { position:absolute;bottom:24px;width:26px;border-radius:12px 12px 3px 3px;background:linear-gradient(90deg,#9ca9b7,#e7eef6 42%,#778795);box-shadow:0 15px 28px rgba(0,0,0,.45); }
.tool::before { content:"";position:absolute;left:4px;right:4px;top:-45px;height:55px;background:repeating-linear-gradient(135deg,#c7d4df 0 7px,#617180 7px 12px);clip-path:polygon(50% 0,100% 20%,88% 100%,12% 100%,0 20%); }
.t1{left:20%;height:110px}.t2{left:40%;height:135px}.t3{left:60%;height:120px}.t4{left:78%;height:145px}
.mini-cabinet { position:absolute;left:35px;bottom:25px;width:105px;height:150px;border:2px solid #6381a4;background:linear-gradient(90deg,#18304b,#284d6e,#142538); }
.mini-cabinet::after { content:"";position:absolute;inset:20px;border:1px solid #6482a0;box-shadow:0 28px 0 #243f58,0 56px 0 #243f58,0 84px 0 #243f58; }
.mini-drawers { position:absolute;right:30px;bottom:25px;width:140px;height:100px;border:2px solid #6381a4;background:repeating-linear-gradient(#1b344c 0 16px,#5a7895 17px,#14263a 19px); }
.product-before-after { display:grid;grid-template-columns:1fr 1fr; }
.product-before-after>div:first-child{background:repeating-linear-gradient(135deg,#312d2a 0 10px,#181614 10px 20px)}
.product-before-after>div:last-child{background:linear-gradient(135deg,#112842,#1a4d78)}
.product-before-after>div { position:relative; }
.product-before-after span { position:absolute;left:16px;bottom:15px;padding:6px 10px;border-radius:8px;background:rgba(0,0,0,.55);font-weight:700;font-size:13px; }
.product-data { display:flex;align-items:center;justify-content:center;gap:13px; }
.data-cloud { width:58px;height:58px;display:grid;place-items:center;border-radius:14px;border:1px solid #3c6ca4;background:#102640;color:#82b8ff;font-weight:800; }
.merge-arrow { font-size:30px;color:#4d9bff; }
.terminals-grid { display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center; }
.terminal-visual { min-height:520px;position:relative;display:grid;place-items:center; }
.scanner-glow { position:absolute;width:360px;height:360px;border-radius:50%;background:#0b6cff;filter:blur(85px);opacity:.24; }
.scanner { position:relative;z-index:2;width:240px;height:430px;padding:25px 21px;border:4px solid #536a84;border-radius:28px 28px 34px 34px;background:linear-gradient(145deg,#20334a,#0b1119 55%,#263a51);box-shadow:0 50px 80px rgba(0,0,0,.6);transform:rotate(-8deg); }
.scanner::after { content:"";position:absolute;left:50%;bottom:-73px;width:104px;height:110px;transform:translateX(-50%) skewX(-7deg);border-radius:0 0 30px 30px;background:linear-gradient(90deg,#18293c,#0c121a,#273b52);border:3px solid #536a84;border-top:0; }
.scanner-screen { height:210px;padding:18px;border-radius:10px;border:3px solid #24384f;background:linear-gradient(#0d6ce5,#063c8e 55%,#071421);box-shadow:inset 0 0 20px rgba(0,0,0,.4),0 0 22px rgba(27,123,255,.3); }
.screen-logo { font-weight:800;text-align:center;margin:8px 0 28px; }
.screen-line { height:10px;border-radius:5px;background:rgba(255,255,255,.65);margin:14px 0; }.screen-line.short{width:65%}.screen-button{height:38px;margin-top:28px;border-radius:7px;background:white;}
.scanner-keys { display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:22px; }
.scanner-keys span { height:28px;border-radius:5px;background:linear-gradient(#708094,#263545);border:1px solid #8291a3; }
.terminal-copy p:not(.eyebrow) { color:var(--muted);font-size:18px; }
.check-list.compact { gap:12px; }
.carousel { position:relative;padding:0 54px; }
.carousel-viewport { overflow:hidden;border-radius:20px; }
.carousel-track { display:flex;gap:18px;transition:transform .48s cubic-bezier(.22,.61,.36,1);will-change:transform; }
.carousel-track.is-dragging { cursor:grabbing; transition:none; }
.case-slide { min-width:calc((100% - 36px)/3);border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 12px 30px rgba(36,67,101,.08);display:flex;flex-direction:column; }
.case-gallery { height:260px;display:grid;gap:6px;padding:8px;background:linear-gradient(145deg,#edf4f8,#dce9f2); }
.case-gallery-three { grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr)); }
.case-gallery-three .case-media:last-child { grid-column:1 / -1; }
.case-gallery-four { grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr)); }
.case-gallery-single { grid-template-columns:minmax(0,1fr); }
.case-media { position:relative;min-width:0;min-height:0;margin:0;overflow:hidden;border-radius:10px;background:#fff; }
.case-media img { display:block;width:100%;height:100%;object-fit:contain; }
.case-media-wide img { object-fit:cover; }
.case-media figcaption { position:absolute;left:8px;bottom:8px;padding:4px 7px;border-radius:6px;background:rgba(7,20,35,.78);color:#fff;font-size:10px;line-height:1.1; }
.case-caption { min-height:124px;padding:20px;display:flex;flex-direction:column;gap:8px;background:#fff; }
.case-caption strong { color:#172638;font-family:Manrope;font-size:18px;line-height:1.2; }.case-caption span{color:#607187;font-size:13px;line-height:1.45;}
.carousel-arrow {
  position: absolute;
  top: 115px;
  z-index: 5;

  width: 46px;
  height: 46px;

  display: grid;
  place-items: center;

  padding: 0;

  border: 1px solid rgba(83, 128, 188, .68);
  border-radius: 50%;

  color: #f4f8ff;
  background: rgba(7, 12, 20, .88);

  box-shadow:
    0 14px 34px rgba(0, 0, 0, .34),
    inset 0 1px 0 rgba(255, 255, 255, .045);

  backdrop-filter: blur(10px);

  cursor: pointer;

  transition:
    color .2s,
    background .2s,
    border-color .2s,
    transform .2s,
    box-shadow .2s;
}
.carousel-arrow svg {
  width: 22px;
  height: 22px;

  display: block;

  fill: none;
  stroke: #f4f8ff;
  stroke-width: 2.25;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.carousel-arrow:disabled {
  opacity: .38;
  cursor: default;
  pointer-events: none;
}

.carousel-arrow:disabled svg {
  stroke: #8fa3bd;
}
.carousel-arrow:hover { background:#1267e8;border-color:#4d96ff; }.carousel-prev{left:0}.carousel-next{right:0}
.carousel-dots { display:flex;justify-content:center;gap:8px;margin-top:26px; }
.carousel-dots button { width:8px;height:8px;border:0;border-radius:50%;padding:0;background:#26334a;cursor:pointer;transition:.2s; }.carousel-dots button.active{width:26px;border-radius:5px;background:#1478ff;}
.carousel-status { margin:12px 0 0; color:#607187; font-size:13px; line-height:1.4; text-align:center; }
.carousel-viewport { touch-action:pan-y; }
.section-request { padding-top:60px; }
.request-card { display:grid;grid-template-columns:1fr 1.15fr;gap:60px;align-items:center;padding:48px 52px;border:1px solid var(--line-strong);border-radius:24px;background:radial-gradient(circle at 5% 20%,rgba(31,109,229,.2),transparent 40%),#0a0f17; }
.request-copy p:last-child { color:var(--muted);font-size:18px; }
.request-form { display:grid;grid-template-columns:1fr 1fr;gap:14px; }
.request-form label { display:flex;flex-direction:column;gap:7px; }.request-form label span{font-size:12px;color:#8794a8;}
.request-form input { width:100%;height:50px;padding:0 15px;color:white;border:1px solid #263751;border-radius:10px;background:#0c1320;outline:none; }.request-form input:focus{border-color:#277ef7;box-shadow:0 0 0 3px rgba(24,119,255,.13)}
.form-honeypot { position:absolute !important;left:-10000px !important;width:1px !important;height:1px !important;overflow:hidden !important; }
.request-form button:disabled { cursor:wait;opacity:.65;transform:none; }
.form-submit { grid-column:1/-1; }.form-note{grid-column:1/-1;margin:0;color:#68758a;font-size:11px;text-align:center;}
.site-footer { padding:36px 0;border-top:1px solid rgba(255,255,255,.07);background:#030509; }
.footer-grid { display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:34px; }.footer-brand{min-width:0}.footer-note{color:#717d90;font-size:13px;text-align:center}.footer-links{display:flex;gap:18px;font-size:13px;color:#97a5b7}.footer-links a:hover{color:white}
.modal { position:fixed;inset:0;z-index:120;display:none;place-items:center;padding:20px; }.modal.open{display:grid}.modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.76);backdrop-filter:blur(8px)}.modal-dialog{position:relative;z-index:2;width:min(980px,100%);max-height:calc(100vh - 40px);overflow:auto;padding:44px;border:1px solid var(--line-strong);border-radius:24px;background:#0b111a;box-shadow:0 40px 100px rgba(0,0,0,.7)}.modal-dialog p:not(.eyebrow){color:var(--muted);font-size:17px;margin:20px 0 30px}.modal-image{display:block;width:100%;height:auto;max-height:56vh;object-fit:contain;object-position:center;border-radius:16px;margin:22px 0 26px;background:#eaf4ff}.modal-image[hidden]{display:none}.modal-close{position:absolute;right:16px;top:16px;width:40px;height:40px;display:grid;place-items:center;padding:0;line-height:1;border-radius:50%;border:1px solid var(--line);background:#111927;font-size:26px;cursor:pointer}.toast{position:fixed;right:24px;bottom:24px;z-index:140;padding:16px 20px;border-radius:12px;background:#0d6be5;color:white;font-weight:700;box-shadow:0 18px 50px rgba(0,0,0,.5);transform:translateY(30px);opacity:0;pointer-events:none;transition:.25s}.toast.show{transform:none;opacity:1}
.reveal { opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease; }.reveal.visible{opacity:1;transform:none}

@media (max-width: 1100px) {
  .desktop-nav { display:none; }.header-cta{margin-left:auto}.menu-toggle{display:block}.brand-group{min-width:0}
  .mobile-panel { position:absolute;left:20px;right:20px;top:74px;padding:18px;flex-direction:column;gap:8px;border:1px solid var(--line);border-radius:16px;background:#0a1019;box-shadow:var(--shadow); }.mobile-panel.open{display:flex}.mobile-panel a:not(.button){padding:12px 8px;color:#c4ccd8}.mobile-panel[aria-hidden="false"]{display:flex}
  .hero{min-height:760px}.hero-media{background-position:60% center}.hero-layout{min-height:760px;grid-template-columns:1fr}.hero-copy{padding:78px 0 180px;max-width:690px}.hero-trust{left:0;right:0;width:auto;bottom:24px}
  .offer-grid,.product-grid{grid-template-columns:repeat(2,1fr)}.usp-grid{grid-template-columns:1fr}.benefit-grid{grid-template-columns:repeat(2,1fr)}
  .russia-card{grid-template-columns:1fr}.russia-visual{min-height:330px}.russia-copy{padding:42px}.terminals-grid{gap:30px}.case-slide{min-width:calc((100% - 18px)/2)}
  .request-card{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr;text-align:center}.footer-brand{justify-content:center}.footer-links{justify-content:center}
}
@media (max-width: 720px) {
  .container{width:min(100% - 24px,1180px)}.header-inner{height:70px}.brand-ctmk small,.brand-toolinform small{display:none}.brand strong{font-size:16px}.brand-divider{height:28px}.header-cta{display:none}
  .hero{min-height:820px}.hero-media{background-position:66% center;filter:saturate(.9) contrast(1.02) brightness(.68)}.hero::before{background:linear-gradient(180deg,rgba(2,4,8,.68) 0%,rgba(2,4,8,.86) 46%,rgba(2,4,8,.98) 78%,#03050a 100%),linear-gradient(90deg,rgba(2,4,8,.92),rgba(2,4,8,.22))}.hero-layout{min-height:820px;display:block}.hero-copy{padding:66px 0 300px;max-width:none}h1{font-size:clamp(42px,12vw,60px)}.hero-lead{font-size:17px;max-width:620px}.hero-actions{flex-direction:column}.button-large{width:100%}.hero-trust{left:0;right:0;bottom:24px;width:auto;grid-template-columns:1fr}.hero-trust-item{min-height:auto;padding:16px 18px}.hero-trust-item + .hero-trust-item{border-left:0;border-top:1px solid rgba(137,170,218,.22)}.hero-trust-icon{width:39px;height:39px;font-size:19px}.hero-trust strong{font-size:18px}.hero-trust span:not(.hero-trust-icon){margin-top:3px}.section{padding:78px 0}.section-heading{margin-bottom:34px}.section-heading p:last-child{font-size:16px}
  .offer-grid,.product-grid,.benefit-grid{grid-template-columns:1fr}.feature-card{min-height:0}.usp-card{padding:30px}.russia-copy{padding:34px 24px}.russia-visual{min-height:250px}.flag-wave{height:80px}.flag-white{bottom:145px}.flag-blue{bottom:90px}.flag-red{bottom:35px}
  .terminals-grid{grid-template-columns:1fr}.terminal-visual{min-height:420px}.scanner{transform:scale(.82) rotate(-7deg)}.carousel{padding:0 38px}.case-slide{min-width:100%}.carousel-arrow{top:110px;width:34px;height:34px}.request-card{padding:30px 22px;gap:30px}.request-form{grid-template-columns:1fr}.form-submit,.form-note{grid-column:auto}.footer-links{flex-direction:column}.modal-dialog{padding:34px 24px}.modal-image{max-height:42vh;margin:18px 0 22px}
}

/* Light theme */
:root {
  --bg: #f4f7fb;
  --bg-soft: #eaf0f6;
  --panel: #ffffff;
  --panel-2: #f7faff;
  --line: rgba(31, 67, 105, .15);
  --line-strong: rgba(24, 102, 207, .35);
  --text: #172638;
  --muted: #607187;
  --blue: #126ce7;
  --blue-light: #176bd4;
  --blue-deep: #084eb8;
  --shadow: 0 24px 65px rgba(36, 67, 101, .14);
}

body { color: var(--text); background: var(--bg); }
.site-header { background: rgba(255, 255, 255, .9); border-bottom-color: rgba(31, 67, 105, .12); }
.brand small { color: #6b7b8f; }
.brand-divider { background: rgba(31, 67, 105, .2); }
.desktop-nav a { color: #52647a; }
.desktop-nav a:hover { color: #126ce7; }
.menu-toggle { background: #fff; border-color: var(--line); }
.menu-toggle span { background: #1b3858; }
.mobile-panel { background: #fff; }
.mobile-panel a:not(.button) { color: #52647a; }
.button-ghost { color: #1a4e8c; border-color: #9bb5d3; background: rgba(255,255,255,.72); }
.button-ghost:hover { border-color: #4d8ddd; background: #fff; }

.hero { background: #eaf1f7; border-bottom-color: rgba(31,67,105,.12); }
.section-dark { background: #eaf1f7; }
.hero-media { opacity: .28; filter: saturate(.7) contrast(.95) brightness(1.22); }
.hero::before { background: linear-gradient(90deg, rgba(234,241,247,.98) 0%, rgba(234,241,247,.94) 35%, rgba(234,241,247,.58) 62%, rgba(234,241,247,.16) 100%), linear-gradient(180deg, rgba(255,255,255,.12), rgba(234,241,247,.8)); }
.hero::after { box-shadow: inset 0 -110px 120px rgba(91,123,156,.1); }
.hero-grid { opacity: .5; background-image: linear-gradient(rgba(52,111,179,.12) 1px, transparent 1px), linear-gradient(90deg, rgba(52,111,179,.12) 1px, transparent 1px); }
.hero-depth { background: radial-gradient(circle, rgba(67,143,244,.18), transparent 67%); }
h1 { color: #15263a; text-shadow: none; }
.eyebrow { color: #176bd4; }
.hero-subtitle { color: #284a6c; }
.hero-lead { color: #52667d; text-shadow: none; }
.hero-trust { border-color: rgba(44,101,163,.22); background: rgba(255,255,255,.82); box-shadow: 0 22px 60px rgba(36,67,101,.16), inset 0 1px 0 rgba(255,255,255,.8); }
.hero-trust-item + .hero-trust-item { border-left-color: rgba(44,101,163,.15); }
.hero-trust-icon { color: #176bd4; }
.hero-trust span:not(.hero-trust-icon) { color: #607187; }

.section-deep { background: linear-gradient(180deg, #edf3f8, #f7faff); border-block-color: rgba(31,67,105,.1); }
.section-heading p:last-child { color: #607187; }
.feature-card, .usp-card, .benefit-item, .product-card, .method-step { border-color: var(--line); background: #fff; box-shadow: 0 12px 32px rgba(36,67,101,.07); }
.feature-card:hover, .product-card:hover { border-color: var(--line-strong); box-shadow: 0 20px 48px rgba(36,67,101,.14); }
.feature-card p, .usp-card p, .method-step p { color: #607187; }
.usp-grid { background: var(--line); border-color: var(--line); }
.usp-card h3, .method-step h3, .product-body h3 { color: #172638; }
.usp-number, .method-step > span { color: #176bd4; }
.benefit-item p, .department-list li { color: #3e536a; }
.benefit-item span { color: #176bd4; background: #e5f0ff; border-color: #a8c9f5; }
.benefit-item-priority { border-color: rgba(24,102,207,.42); background: #edf5ff; }
.benefit-item-priority p { color: #183d69; }

.russia-card { border-color: rgba(24,102,207,.25); background: radial-gradient(circle at 5% 80%, rgba(50,104,212,.13), transparent 38%), #fff; box-shadow: var(--shadow); }
.russia-visual { background: radial-gradient(circle at 35% 60%, rgba(21,113,255,.18), transparent 50%); }
.russia-visual::after { color: rgba(24,102,207,.06); }
.russia-copy > p:not(.eyebrow) { color: #607187; }
.check-list li { color: #3e536a; }
.product-body p, .case-caption span { color: #607187; }
.product-visual { background: radial-gradient(circle at 50% 25%, #d6e8fb, #eff5fa 65%); }
.product-before-after > div:first-child { background: repeating-linear-gradient(135deg,#d9dfe4 0 10px,#bec8d2 10px 20px); }
.product-before-after > div:last-child { background: linear-gradient(135deg,#d7ebff,#8dc0ef); }
.product-before-after span { background: rgba(24,45,69,.72); }
.product-data { background: linear-gradient(145deg,#eaf4ff,#dcebf9); }
.terminals { background: linear-gradient(180deg, #edf3f8, #f7faff); }
.terminal-copy p:not(.eyebrow) { color: #607187; }
.terminal-visual { min-height: 520px; overflow: hidden; border: 1px solid rgba(31,67,105,.12); border-radius: 24px; background: #eaf4ff; box-shadow: 0 18px 40px rgba(36,67,101,.1); }
.tsd-image { display: block; width: 100%; height: 100%; min-height: 520px; object-fit: cover; object-position: 78% center; }
@media (max-width: 720px) {
  .terminal-visual { min-height: 420px; }
  .tsd-image { min-height: 420px; object-position: 76% center; }
}
.case-slide { border-color: var(--line); background: #fff; box-shadow: 0 12px 32px rgba(36,67,101,.07); }
.carousel-arrow { color: #1a4e8c; border-color: #9bb5d3; background: rgba(255,255,255,.94); box-shadow: 0 14px 34px rgba(36,67,101,.14); }
.carousel-arrow svg { stroke: #1a4e8c; }
.carousel-arrow:hover { color: #fff; background: #1267e8; border-color: #4d96ff; }
.carousel-arrow:hover svg { stroke: #fff; }
.carousel-dots button { background: #b9cbe0; }
.request-card { border-color: rgba(24,102,207,.28); background: radial-gradient(circle at 5% 20%, rgba(31,109,229,.1), transparent 40%), #fff; box-shadow: var(--shadow); }
.request-copy p:last-child { color: #607187; }
.request-form label span { color: #607187; }
.request-form input { color: #172638; border-color: #b7c8da; background: #f8fbfe; }
.request-form input:focus { border-color: #277ef7; background: #fff; }
.form-note { color: #718196; }
.site-footer { background: #fff; border-top-color: rgba(31,67,105,.12); }
.footer-note { color: #607187; }
.footer-links { color: #52647a; }
.footer-links a:hover { color: #126ce7; }
.modal-backdrop { background: rgba(23,38,56,.48); }
.modal-dialog { border-color: rgba(24,102,207,.28); background: #fff; box-shadow: 0 40px 100px rgba(36,67,101,.3); }
.modal-dialog p:not(.eyebrow) { color: #607187; }
.modal-close { color: #294764; border-color: #b7c8da; background: #f1f6fb; }
.toast { background: #126ce7; box-shadow: 0 18px 50px rgba(36,67,101,.25); }
.department-panel { border-color: rgba(24,102,207,.28); background: radial-gradient(circle at 0 0, rgba(31,109,229,.1), transparent 42%), #fff; box-shadow: 0 12px 32px rgba(36,67,101,.07); }
.department-tab { color: #52647a; border-color: var(--line); background: #fff; }
.department-tab:hover, .department-tab.active { color: #124e95; border-color: var(--line-strong); background: linear-gradient(135deg, #e8f2ff, #f8fbff); }
.benefit-item-priority { color: #183d69; border-color: rgba(24,102,207,.42); background: #edf5ff; }
.benefit-item-priority p { color: #183d69; font-weight: 700; }
.benefit-item-priority { color: var(--text); border-color: rgba(24,102,207,.42); background: #edf5ff; }
.benefit-item-priority p { color: #183d69; }

/* More restrained CTA treatment for a senior industrial audience. */
.button-primary { color: #fff; background: linear-gradient(135deg, #1d67b7, #104b91); border-color: #104b91; box-shadow: 0 9px 22px rgba(20,78,145,.2); }
.button-primary:hover { background: linear-gradient(135deg, #245f9f, #0c3e7b); box-shadow: 0 12px 28px rgba(20,78,145,.28); }
.header-cta { min-width: 126px; white-space: nowrap; padding-inline: 16px; }
.hero-actions .button-large { min-width: 232px; }
.catalogs-note { color: #718196; }

/* Final light-theme readability fixes after the legacy content rules. */
.hero-subtitle { color: #284a6c; }
@media (max-width: 720px) {
  h1 { font-size: clamp(36px, 10.5vw, 48px); overflow-wrap: anywhere; }
}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.carousel-track{transition:none}.button{transition:none}}

/* Content additions: keep the established dark/blue visual language. */
.hero-subtitle { max-width: 760px; margin: 0 0 18px; color: #e6edf8; font-size: clamp(18px, 2vw, 23px); font-weight: 700; line-height: 1.4; }
.benefit-item-priority { border-color: rgba(76,145,255,.55); background: linear-gradient(145deg, #10284b, #0a1322); }
.benefit-item-priority p { color: #f4f7fb; font-weight: 700; }
.method-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; }
.method-step { min-height: 230px; padding: 26px 22px; border: 1px solid var(--line); border-radius: 18px; background: linear-gradient(145deg, #0d1624, #080c13); }
.method-step > span { color: var(--blue-light); font: 800 13px Manrope, sans-serif; letter-spacing: .12em; }
.method-step h3 { margin: 24px 0 12px; font-size: 18px; }
.method-step p { margin: 0; color: var(--muted); font-size: 14px; }
.department-tabs { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin-bottom: 18px; }
.department-tab { min-height: 58px; padding: 12px 14px; color: #aebbd0; text-align: left; border: 1px solid var(--line); border-radius: 12px; background: #0b111b; cursor: pointer; transition: .2s; }
.department-tab:hover, .department-tab.active { color: white; border-color: var(--line-strong); background: linear-gradient(135deg, #12366c, #0b1729); }
.department-tab-priority { border-color: rgba(76,145,255,.48); }
.department-panel { min-height: 238px; padding: 34px 38px; border: 1px solid var(--line-strong); border-radius: 20px; background: radial-gradient(circle at 0 0, rgba(31,109,229,.18), transparent 42%), #0a1019; }
.department-panel h3 { margin-bottom: 24px; font-size: 25px; }
.department-list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px 34px; list-style: none; margin: 0; padding: 0; }
.department-list li { position: relative; padding-left: 26px; color: #d4dbe6; }
.department-list li::before { content: "✓"; position: absolute; left: 0; color: var(--blue-light); font-weight: 800; }
.form-error { grid-column: 1 / -1; min-height: 18px; margin: -2px 0 0; color: #ff9da9; font-size: 12px; }
.catalogs-note { color: #66758c; font-size: 12px; }
.footer-note a { color: #b7c8e1; }

@media (max-width: 1100px) {
  .method-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 720px) {
  .hero-subtitle { font-size: 17px; }
  .method-grid, .department-tabs { grid-template-columns: 1fr; }
  .method-step { min-height: 0; }
  .department-panel { padding: 26px 22px; }
  .department-list { grid-template-columns: 1fr; gap: 12px; }
  .form-error { grid-column: auto; }
  .catalogs-note { display: block; }
}

/* Keep these last so legacy dark-theme rules cannot reduce contrast on mobile. */
.hero-subtitle { color: #284a6c; }
@media (max-width: 720px) {
  .container { width: calc(100% - 24px); max-width: none; }
  .section-heading { width: 100%; max-width: 100%; }
  .feature-card, .usp-card, .benefit-item, .product-card, .method-step, .department-panel, .case-slide { min-width: 0; }
  .hero { min-height: 1080px; }
  .hero-layout { min-height: 1080px; }
  .hero-copy { width: calc(100vw - 24px); min-width: 0; }
  .hero-copy { padding-bottom: 430px; }
  h1 { width: 100%; max-width: 100%; font-size: clamp(28px, 8.5vw, 40px); text-wrap: wrap; overflow-wrap: normal; word-break: normal; }
  .hero-subtitle, .hero-lead { width: min(335px, 100%); max-width: 100%; overflow-wrap: anywhere !important; word-break: break-word; }
  .hero-subtitle { font-size: 14px; letter-spacing: -.015em; }
  .hero-lead { font-size: 16px; }
}

/* Final light surfaces for methodology and department controls. */
.method-step { color: var(--text); border-color: var(--line); background: #fff; box-shadow: 0 12px 32px rgba(36,67,101,.07); }
.method-step h3 { color: #172638; }
.method-step p { color: #607187; }
.method-step > span { color: #176bd4; }
.department-panel { color: var(--text); border-color: rgba(24,102,207,.28); background: radial-gradient(circle at 0 0, rgba(31,109,229,.1), transparent 42%), #fff; }
.department-panel h3 { color: #172638; }
.department-tab { color: #52647a; border-color: var(--line); background: #fff; }
.department-tab:hover, .department-tab.active { color: #124e95; border-color: var(--line-strong); background: linear-gradient(135deg, #e8f2ff, #f8fbff); }
.benefit-item-priority { color: #183d69 !important; border-color: rgba(24,102,207,.42) !important; background: #edf5ff !important; }
.benefit-item-priority p { color: #183d69 !important; font-weight: 700; }

/* Refined hero trust cards: lighter, clearer and less capsule-like. */
.hero-trust { gap: 12px; overflow: visible; border: 0; background: transparent; box-shadow: none; backdrop-filter: none; }
.hero-trust-item { min-height: 112px; border: 1px solid rgba(44,101,163,.2); border-radius: 16px; background: rgba(255,255,255,.92); box-shadow: 0 12px 28px rgba(36,67,101,.11); }
.hero-trust-item + .hero-trust-item { border-left: 1px solid rgba(44,101,163,.2); }
.hero-trust-icon { width: 42px; height: 42px; border-radius: 12px; background: #e7f1ff; }

/* Department tabs must remain readable on every state. */
.department-tab { color: #193b5f !important; border-color: #b5cbe2 !important; background: #edf5fd !important; font-weight: 600; }
.department-tab:hover { color: #124e95 !important; background: #e1efff !important; }
.department-tab.active { color: #fff !important; border-color: #164f91 !important; background: linear-gradient(135deg, #1c67b5, #104b91) !important; box-shadow: 0 8px 18px rgba(20,78,145,.16); }
@media (max-width: 720px) {
  .hero-trust { gap: 8px; bottom: 18px; }
  .hero-trust-item + .hero-trust-item { border-left: 1px solid rgba(44,101,163,.2); border-top: 1px solid rgba(44,101,163,.2); }
}

/* Industrial B2B visual system: light information areas, dark technology bands. */
.hero-media { opacity: .58; filter: saturate(.82) contrast(1.04) brightness(.98); }
.hero::before { background: linear-gradient(90deg, rgba(234,241,247,.97) 0%, rgba(234,241,247,.88) 38%, rgba(234,241,247,.38) 67%, rgba(234,241,247,.08) 100%), linear-gradient(180deg, rgba(255,255,255,.08), rgba(234,241,247,.48)); }

#about, #products, #methodology { color: #eef5ff; background: linear-gradient(135deg, #081a30 0%, #0c2745 58%, #081a30 100%); border-block-color: rgba(150,190,235,.15); }
#about .section-heading p:last-child, #products .section-heading p:last-child, #methodology .section-heading p:last-child { color: #b8cbe0; }
#about .eyebrow, #products .eyebrow, #methodology .eyebrow { color: #77b9ff; }
#about h2, #products h2, #methodology h2 { color: #f5f9ff; }
#about .usp-grid { grid-template-columns: repeat(3, 1fr); gap: 0; background: transparent; border: 0; overflow: visible; }
#about .usp-card { min-height: 290px; padding: 34px 36px 34px 0; background: transparent; border: 0; border-right: 1px solid rgba(147,190,233,.22); border-radius: 0; box-shadow: none; }
#about .usp-card + .usp-card { padding-left: 36px; }
#about .usp-card:last-child { border-right: 0; }
#about .usp-card h3 { color: #f5f9ff; }
#about .usp-card p { color: #b8cbe0; }
#about .usp-number { color: #63aaff; }

#solutions .feature-card { min-height: 300px; padding: 32px 30px 34px; border: 0; border-top: 3px solid #b7d5f2; border-radius: 0 0 14px 14px; background: #fff; box-shadow: 0 13px 28px rgba(36,67,101,.08); }
#solutions .feature-card:hover { transform: translateY(-4px); border-top-color: #176bd4; }
#solutions .feature-card h3 { color: #173556; }

#benefits .benefit-grid { grid-template-columns: repeat(4, 1fr); gap: 12px; }
#benefits .benefit-item { min-height: 112px; padding: 18px; border-radius: 12px; box-shadow: none; background: rgba(255,255,255,.8); }
#benefits .benefit-item-priority { grid-column: span 2; min-height: 132px; align-items: center; background: #e6f1ff !important; border: 1px solid #8fb9e8 !important; }
#benefits .benefit-item-priority p { font-size: 17px; }

#products .product-grid { gap: 14px; }
#products .product-card { border-color: rgba(155,197,238,.24); background: #102d4e; box-shadow: 0 18px 40px rgba(0,0,0,.18); }
#products .product-card:hover { border-color: #65abf6; }
#products .product-body { background: #102d4e; }
#products .product-body h3 { color: #f5f9ff; }
#products .product-body p { color: #b8cbe0; }
#products .text-link { color: #75b7ff; }

#methodology .method-grid { grid-template-columns: repeat(5, 1fr); gap: 0; }
#methodology .method-step { min-height: 260px; padding: 22px 24px 22px 0; background: transparent; border: 0; border-top: 1px solid rgba(147,190,233,.4); border-radius: 0; box-shadow: none; position: relative; }
#methodology .method-step + .method-step { padding-left: 24px; border-left: 1px solid rgba(147,190,233,.25); }
#methodology .method-step > span { display: block; color: #69b0ff; font-size: 34px; line-height: 1; }
#methodology .method-step h3 { color: #f5f9ff; margin-top: 28px; }
#methodology .method-step p { color: #b8cbe0; }

@media (max-width: 1100px) {
  #benefits .benefit-grid { grid-template-columns: repeat(2, 1fr); }
  #benefits .benefit-item-priority { grid-column: span 1; }
}
@media (max-width: 720px) {
  #about .usp-grid, #methodology .method-grid { grid-template-columns: 1fr; gap: 0; }
  #about .usp-card, #about .usp-card + .usp-card { min-height: 0; padding: 28px 0; border-right: 0; border-bottom: 1px solid rgba(147,190,233,.22); }
  #about .usp-card:last-child { border-bottom: 0; }
  #benefits .benefit-grid { grid-template-columns: 1fr; gap: 10px; }
  #benefits .benefit-item-priority { grid-column: auto; min-height: 112px; }
  #benefits .benefit-item-priority p { font-size: 15px; }
  #methodology .method-step, #methodology .method-step + .method-step { min-height: 0; padding: 24px 0 28px 38px; border-left: 1px solid rgba(147,190,233,.38); border-top: 0; }
  #methodology .method-step::before { content: ''; position: absolute; left: -5px; top: 28px; width: 9px; height: 9px; border-radius: 50%; background: #69b0ff; box-shadow: 0 0 0 5px #0c2745; }
  #methodology .method-step h3 { margin-top: 16px; }
}

/* Approved light corporate presentation: final overrides for the audited blocks. */
.hero h1 { max-width: 660px; font-size: clamp(46px, 4.15vw, 68px); line-height: 1.04; }
.hero-media { opacity: .74; filter: saturate(.86) contrast(1.08) brightness(.95); }
.hero::before { background: linear-gradient(90deg, rgba(234,241,247,.96) 0%, rgba(234,241,247,.82) 36%, rgba(234,241,247,.3) 65%, rgba(234,241,247,.04) 100%), linear-gradient(180deg, rgba(255,255,255,.03), rgba(234,241,247,.22)); }
.hero-grid { opacity: .14; background-size: 112px 112px; }
.hero-copy::before { inset: 45px auto 105px -34px; width: 72%; background: radial-gradient(ellipse at 35% 45%, rgba(255,255,255,.58), rgba(234,241,247,.14) 64%, transparent 78%); filter: blur(16px); }
.hero-trust { width: min(660px, 55%); bottom: 112px; gap: 14px; }
.hero-trust-item { min-height: 108px; padding: 18px; }

#solutions .feature-card { min-height: 320px; padding: 32px; border: 1px solid var(--line); border-radius: 18px; background: #fff; box-shadow: 0 12px 30px rgba(36,67,101,.08); }
#solutions .feature-card:hover { border-color: var(--line-strong); transform: translateY(-4px); }
#solutions .feature-card h3 { margin-top: 24px; }
#solutions .icon-box { width: 56px; height: 56px; border: 1px solid #cfe2f7; border-radius: 16px; background: #edf5ff; box-shadow: none; }
#solutions .icon-box svg { width: 32px; height: 32px; stroke: #176bd4; stroke-width: 1.55; }

#about { color: var(--text); background: #edf3f8; border-block-color: rgba(31,67,105,.1); }
#about .section-heading p:last-child { color: #607187; }
#about .eyebrow { color: #176bd4; }
#about h2 { color: #172638; }
#about .usp-grid { grid-template-columns: repeat(3, 1fr); gap: 18px; background: transparent; border: 0; overflow: visible; }
#about .usp-card, #about .usp-card + .usp-card { min-height: 305px; padding: 32px; border: 1px solid var(--line); border-radius: 18px; background: #fff; box-shadow: 0 12px 30px rgba(36,67,101,.08); }
#about .usp-card:last-child { border-right: 1px solid var(--line); }
#about .usp-card h3 { color: #172638; }
#about .usp-card p { color: #607187; }
#about .usp-number { color: #176bd4; }

#benefits .benefit-grid { grid-template-columns: repeat(4, 1fr); gap: 14px; }
#benefits .benefit-item, #benefits .benefit-item:not(.benefit-item-priority) { min-height: 112px; padding: 18px; border: 1px solid var(--line); border-radius: 14px; background: #fff; box-shadow: 0 8px 22px rgba(36,67,101,.06); }
#benefits .benefit-item-priority { grid-column: auto; min-height: 112px; padding: 18px; background: #edf5ff !important; border: 1px solid #8fb9e8 !important; }
#benefits .benefit-item p, #benefits .benefit-item:not(.benefit-item-priority) p { font-size: 15px; line-height: 1.42; }
#benefits .benefit-item-priority p { font-size: 16px; }

.russia-visual { background: linear-gradient(145deg, #e8f2ff, #f8fbfe); }
.russia-visual::after { content: none; }
.russia-visual::before { content: none; }
.flag-wave { display: block; }

#products { color: var(--text); background: #f4f7fb; border-block-color: rgba(31,67,105,.1); }
#products .section-heading p:last-child { color: #607187; }
#products .eyebrow { color: #176bd4; }
#products h2 { color: #172638; }
#products .product-card { border: 1px solid var(--line); border-radius: 18px; background: #fff; box-shadow: 0 12px 30px rgba(36,67,101,.08); }
#products .product-body { background: #fff; }
#products .product-body h3 { color: #172638; }
#products .product-body p { color: #607187; }
#products .text-link { color: #176bd4; }
#products .product-card:hover { border-color: var(--line-strong); box-shadow: 0 18px 38px rgba(36,67,101,.12); }

#methodology { color: var(--text); background: #edf3f8; border-block-color: rgba(31,67,105,.1); }
#methodology .section-heading p:last-child { color: #607187; }
#methodology .eyebrow { color: #176bd4; }
#methodology h2 { color: #172638; }
#methodology .method-grid { grid-template-columns: repeat(5, 1fr); }
#methodology .method-grid::before { background: #b4cbe1; }
#methodology .method-step, #methodology .method-step + .method-step { min-height: 276px; padding: 48px 24px 22px 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
#methodology .method-step + .method-step { padding-left: 24px; border-left: 1px solid #c7d7e7; }
#methodology .method-step::before, #methodology .method-step + .method-step::before { background: #176bd4; box-shadow: 0 0 0 5px #edf3f8; }
#methodology .method-step > span { color: #176bd4; }
#methodology .method-step h3 { color: #172638; }
#methodology .method-step p { color: #607187; }

#departments .department-panel { color: var(--text); background: #fff; border: 1px solid #b7cde3; border-top: 3px solid #2a73c3; box-shadow: 0 12px 30px rgba(36,67,101,.08); }
#departments .department-panel h3 { color: #172638; }
#departments .department-list li { color: #3e536a; }
#departments .department-list li::before { color: #176bd4; }

.site-footer { background: #f8fbfe; border-top-color: #d5e1ec; }
.footer-note, .footer-links { color: #52647a; }

@media (max-width: 1100px) {
  #benefits .benefit-grid { grid-template-columns: repeat(2, 1fr); }
  #benefits .benefit-item-priority { grid-column: auto; }
}
@media (max-width: 720px) {
  .hero { min-height: 940px; }
  .hero-layout { min-height: 940px; }
  .hero h1 { font-size: clamp(28px, 8.5vw, 40px); }
  .hero-copy { padding-bottom: 300px; }
  .hero-trust { width: auto; bottom: 18px; }
  .hero-trust-item { min-height: 76px; padding: 12px 14px; }
  #about .usp-grid, #methodology .method-grid { grid-template-columns: 1fr; }
  #about .usp-card, #about .usp-card + .usp-card { min-height: 0; padding: 28px; }
  #benefits .benefit-grid { grid-template-columns: 1fr; }
  #benefits .benefit-item, #benefits .benefit-item:not(.benefit-item-priority), #benefits .benefit-item-priority { min-height: 94px; }
  #methodology .method-step, #methodology .method-step + .method-step { min-height: 0; padding: 24px 0 28px 38px; border-left: 1px solid #b4cbe1; }
  #methodology .method-step::before, #methodology .method-step + .method-step::before { left: -5px; top: 28px; box-shadow: 0 0 0 5px #edf3f8; }
  #methodology .method-grid::before { display: none; }
}

/* Final visual polish: restrained industrial B2B rhythm and senior-reader comfort. */
.hero h1 { max-width: 700px; font-size: clamp(52px, 4.7vw, 76px); }
.hero-media { opacity: .68; filter: saturate(.88) contrast(1.06) brightness(.96); }
.hero::before { background: linear-gradient(90deg, rgba(234,241,247,.97) 0%, rgba(234,241,247,.88) 34%, rgba(234,241,247,.42) 63%, rgba(234,241,247,.08) 100%), linear-gradient(180deg, rgba(255,255,255,.04), rgba(234,241,247,.3)); }
.hero-grid { opacity: .22; background-size: 96px 96px; }
.hero-copy::before { content: ''; position: absolute; z-index: -1; inset: 56px auto 92px -42px; width: 78%; border-radius: 40px; background: radial-gradient(ellipse at 35% 45%, rgba(255,255,255,.62), rgba(234,241,247,.2) 64%, transparent 78%); filter: blur(18px); pointer-events: none; }

#benefits .benefit-item:not(.benefit-item-priority) { min-height: 86px; padding: 15px 14px; border: 0; border-bottom: 1px solid rgba(31,67,105,.15); border-radius: 0; background: transparent; box-shadow: none; }
#benefits .benefit-item:not(.benefit-item-priority) p { font-size: 14px; line-height: 1.4; }
#benefits .benefit-item-priority { min-height: 132px; padding: 22px; border-radius: 14px; }
#benefits .benefit-item-priority p { font-size: 18px; line-height: 1.35; }

#methodology .method-grid { position: relative; }
#methodology .method-grid::before { content: ''; position: absolute; z-index: 0; left: 0; right: 0; top: 16px; height: 1px; background: rgba(147,190,233,.48); }
#methodology .method-step { z-index: 1; min-height: 286px; padding-top: 48px; border-top: 0; }
#methodology .method-step::before { content: ''; position: absolute; z-index: 2; left: 0; top: 12px; width: 9px; height: 9px; border-radius: 50%; background: #69b0ff; box-shadow: 0 0 0 5px #0c2745; }
#methodology .method-step + .method-step::before { left: 19px; }
#methodology .method-step h3 { margin-top: 34px; }

.department-tabs { gap: 12px; }
.department-tab { min-height: 62px; line-height: 1.35; }
.department-tab.active { transform: translateY(-2px); box-shadow: 0 10px 22px rgba(20,78,145,.22); }
.department-panel { border-top: 3px solid #2a73c3; }
.department-tab-priority { border-width: 2px !important; }
.department-list li { font-size: 16px; line-height: 1.45; }

#products .product-body p { font-size: 15px; line-height: 1.5; }
.footer-note { font-size: 14px; line-height: 1.55; }
.footer-links { line-height: 1.5; }

@media (max-width: 1400px) and (min-width: 1101px) {
  .header-inner { gap: 18px; }
  .brand-group { min-width: 300px; gap: 14px; }
  .desktop-nav { gap: 19px; }
  .desktop-nav a { font-size: 13px; }
}
@media (max-width: 720px) {
  .hero { min-height: 900px; }
  .hero-layout { min-height: 900px; }
  .hero-copy { padding-bottom: 260px; }
  .hero h1 { font-size: clamp(28px, 8.5vw, 40px); }
  .hero-copy::before { inset: 34px -12px 120px -24px; width: 100%; }
  .hero-trust { bottom: 18px; }
  .hero-trust-item { min-height: 76px; padding: 12px 14px; }
  .hero-trust-icon { width: 36px; height: 36px; }
  .hero-trust strong { font-size: 17px; }
  .hero-trust span:not(.hero-trust-icon) { font-size: 13px; }
  #benefits .benefit-item:not(.benefit-item-priority) { min-height: 76px; padding: 13px 10px; }
  #benefits .benefit-item:not(.benefit-item-priority) p { font-size: 14px; }
  #benefits .benefit-item-priority { min-height: 100px; padding: 18px; }
  #benefits .benefit-item-priority p { font-size: 16px; }
  #methodology .method-grid::before { display: none; }
  #methodology .method-step, #methodology .method-step + .method-step { min-height: 0; padding-top: 24px; }
  #methodology .method-step::before, #methodology .method-step + .method-step::before { left: -5px; top: 28px; }
  .department-list li { font-size: 15px; }
}

/* Acceptance correction: keep audited blocks light, coherent and grid-based. */
#benefits .benefit-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
#benefits .benefit-item,
#benefits .benefit-item:not(.benefit-item-priority),
#benefits .benefit-item-priority {
  min-height: 116px;
  padding: 18px;
  display: flex;
  align-items: center;
  gap: 16px;
  border: 1px solid var(--line) !important;
  border-radius: 14px;
  background: #fff !important;
  box-shadow: 0 8px 22px rgba(36,67,101,.06);
}
#benefits .benefit-item:not(.benefit-item-priority) p { font-size: 15px; line-height: 1.42; }
#benefits .benefit-item-priority { border-color: #8fb9e8 !important; background: #edf5ff !important; }
#benefits .benefit-item-priority p { font-size: 16px; line-height: 1.4; }
#methodology .method-grid::before { background: #b4cbe1; }
#methodology .method-step::before,
#methodology .method-step + .method-step::before { background: #176bd4; box-shadow: 0 0 0 5px #edf3f8; }
.hero-media { transform: none; }
@media (max-width: 1100px) {
  #benefits .benefit-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
  .hero-actions .button-large { width: 100%; min-width: 0; max-width: 100%; }
  .hero-copy { width: 100%; }
  #benefits .benefit-grid { grid-template-columns: 1fr; gap: 10px; }
  #benefits .benefit-item,
  #benefits .benefit-item:not(.benefit-item-priority),
  #benefits .benefit-item-priority { min-height: 94px; padding: 16px; }
  #benefits .benefit-item-priority p { font-size: 15px; }
}

/* Mobile carousel: one clear hero image per card, with supporting thumbnails. */
@media (max-width: 720px) {
  .carousel { padding: 0 34px; }
  .carousel-viewport { border-radius: 16px; }
  .carousel-track { gap: 12px; }
  .case-slide { min-width: 100%; border-radius: 16px; }
  .case-gallery { height: 292px; gap: 8px; padding: 8px; }
  .case-gallery-three { grid-template-rows: 1.35fr .75fr; }
  .case-gallery-three .case-media:first-child { grid-column: 1 / -1; }
  .case-gallery-three .case-media:last-child { grid-column: auto; }
  .case-gallery-four { grid-template-rows: 1.35fr .75fr .75fr; }
  .case-gallery-four .case-media:first-child { grid-column: 1 / -1; }
  .case-media figcaption { left: 7px; bottom: 7px; font-size: 10px; }
  .case-caption { min-height: 132px; padding: 18px 16px 20px; }
  .case-caption strong { font-size: 17px; }
  .case-caption span { font-size: 14px; line-height: 1.4; }
  .carousel-arrow { width: 34px; height: 34px; top: 128px; }
  .carousel-arrow svg { width: 18px; height: 18px; }
  .carousel-status { margin-top: 10px; font-size: 12px; }
}
