:root {
  --vwu: 1vw;
  --orange: #e94e1b;
  --orange-dark: #d24316;
  --shadow: 0 18px 50px rgba(17, 17, 17, 0.08);
  --black: #111111;
  --text: #1a1a1a;
  --muted: #6d6d6d;
  --line: #ececec;
  --bg: #f6f6f6;
  --white: #fff;
  --radius: 16px;
  --radius-sm: 10px;
  --shadow: 0 10px 40px rgba(17, 17, 17, 0.06);
  --container: 1700px;
  --header-h: 80px;
  --nav-h: 80px;
  --font: "Manrope", system-ui, sans-serif;
}

*,
*::before,
*::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  overflow-x: hidden;
  font-family: var(--font);
  font-size: 16px;
  line-height: 1.5;
  color: var(--text);
  background: var(--white);
  -webkit-font-smoothing: antialiased;
}
body.drawer-open,
body.modal-open { overflow: hidden; }
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
button, input, textarea { font: inherit; }
button { cursor: pointer; border: 0; background: none; }

:focus { outline: none; }
:focus-visible {
  outline: 2px solid var(--orange);
  outline-offset: 2px;
}
.btn:focus-visible,
.pill:focus-visible,
.burger:focus-visible,
.search-btn:focus-visible,
.soc:focus-visible,
.nav-link:focus-visible {
  outline: 2px solid var(--orange);
  outline-offset: 3px;
}

.container {
  width: min(100% - 32px, var(--container));
  margin-inline: auto;
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
}

/* Buttons */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 44px;
  padding: 0 20px;
  border-radius: 999px;
  font-weight: 700;
  white-space: nowrap;
  transition: 0.15s ease;
}
.btn-orange { background: var(--orange); color: #fff; }
.btn-orange:hover { background: var(--orange-dark); }
.btn-ghost {
  background: #fff;
  color: var(--black);
  border: 1px solid #ddd;
}
.btn-ghost:hover { border-color: var(--black); }
.btn-dark { background: var(--black); color: #fff; }
.btn-white { background: #fff; color: var(--orange); }
.btn-block { width: 100%; }

.pill {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  padding: 0 14px;
  border-radius: 999px;
  background: var(--bg);
  color: var(--text);
  font-weight: 600;
  font-size: 14px;
  border: 1px solid transparent;
}
.pill.is-active { background: var(--black); color: #fff; }
.tag {
  display: inline-flex;
  padding: 7px 16px;
  border-radius: 999px;
  background: var(--bg);
  font-size: 14px;
  font-weight: 600;
}

.label-orange {
  margin: 8px 0 14px;
  color: var(--orange);
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.h1, h1 { font-size: clamp(32px, calc(4 * var(--vwu)), 52px); line-height: 1.12; margin: 0 0 16px; font-weight: 800; }
.h2, h2 { font-size: clamp(26px, calc(3 * var(--vwu)), 40px); line-height: 1.15; margin: 0 0 12px; font-weight: 800; letter-spacing: -0.02em; }
.lead { color: var(--muted); font-size: 16px; margin: 0 0 20px; max-width: 52ch; }
.price { color: var(--orange); font-weight: 800; }
.accent { color: var(--orange); }

/* Header */
.header {
  position: sticky;
  top: 0;
  z-index: 100;
  background: #fff;
  border-bottom: 1px solid var(--line);
}
.header-main {
  display: flex;
  align-items: center;
  gap: 20px;
  min-height: var(--header-h);
}
.burger {
  display: flex;
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 5px;
}
.burger span {
  display: block;
  width: 18px;
  height: 2px;
  background: var(--black);
}
.logo { display: grid; line-height: 1.05; }
.logo-name { font-weight: 800; font-size: 22px; letter-spacing: 0.04em; }
.logo-tag { font-size: 11px; color: var(--muted); font-weight: 600; }
.menu-top {
  display: flex;
  gap: 22px;
  margin-left: 12px;
  font-weight: 600;
}
.menu-top a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 0 2px;
}
.menu-top a:hover,
.menu-top a.is-active { color: var(--orange); }
.header-right {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 12px;
}
.person {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  object-fit: cover;
  background: #ffd8cc;
}
.geo-phone { font-size: 13px; font-weight: 700; line-height: 1.2; }
.geo-phone small { display: block; color: var(--muted); font-weight: 600; }
.soc {
  width: 32px;
  height: 32px;
  padding: 6px;
  margin: -6px;
  box-sizing: content-box;
  border-radius: 50%;
  display: grid;
  place-items: center;
  color: #fff;
  font-size: 11px;
  font-weight: 800;
}
.soc svg { display: block; }
.soc-wa { background: #25d366; }
.soc-tg { background: #2aabee; }
.soc-dz { background: var(--black); border-radius: 999px; padding: 0 10px; width: auto; height: 32px; margin: 0; }

.nav-services {
  display: flex;
  align-items: center;
  gap: 4px;
  min-height: var(--nav-h);
  border-top: 1px solid var(--line);
}
.nav-item { position: static; }
.nav-more { position: relative; }
.nav-link {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 14px 12px;
  font-weight: 700;
  font-size: 15px;
  position: relative;
}
.nav-link::after { content: "▾"; font-size: 9px; color: #bbb; }
.nav-item:hover > .nav-link,
.nav-item:focus-within > .nav-link { color: var(--orange); }
.nav-item:hover > .nav-link::after,
.nav-item:focus-within > .nav-link::after { content: "▴"; color: var(--orange); }
.nav-item:hover > .nav-link::before,
.nav-item:focus-within > .nav-link::before {
  content: "";
  position: absolute;
  left: 12px;
  right: 12px;
  bottom: 6px;
  height: 2px;
  background: var(--orange);
}
.nav-dots::after { content: none !important; }
.nav-dots::before { content: none !important; }
.mega {
  display: none;
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  padding: 32px 0 40px;
  background: #fff;
  box-shadow: 0 28px 60px rgba(17, 17, 17, 0.12);
  z-index: 110;
  border-top: 1px solid var(--line);
}
.nav-item:hover > .mega,
.nav-item:focus-within > .mega,
.nav-item.is-open > .mega { display: block; }
.mega-grid {
  width: min(100% - 32px, var(--container));
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-template-rows: repeat(3, auto);
  grid-auto-flow: column;
  align-content: start;
  gap: 28px 40px;
}
.mega-col {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}
.mega-title { font-weight: 800; color: var(--black) !important; font-size: 15px; margin-bottom: 4px; }
.mega a { font-size: 14px; color: #6a6a6a; }
.mega a:hover { color: var(--orange); }
.mega-more { color: var(--orange) !important; font-weight: 700; margin-top: 6px; }
.mega-compact {
  left: auto;
  right: 0;
  width: 300px;
  padding: 12px 16px 16px;
  border-radius: 16px;
  box-shadow: var(--shadow);
  top: calc(100% + 4px);
}
.mega-compact a { display: block; padding: 8px 0; font-weight: 700; color: var(--black); }
.search-btn {
  margin-left: auto;
  width: 44px;
  height: 44px;
  border: 1px solid var(--line);
  border-radius: 50%;
  display: grid;
  place-items: center;
  color: var(--black);
}
.search-btn:hover { border-color: var(--black); }

.search-bar {
  display: none;
  border-top: 1px solid var(--line);
  background: #fff;
}
.search-bar.is-open { display: block; }
.header.is-search .nav-services { display: none; }
.search-form {
  display: flex;
  align-items: center;
  gap: 14px;
  min-height: 72px;
}
.search-ico {
  flex: none;
  width: 22px;
  height: 22px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='11' cy='11' r='7' fill='none' stroke='%23111111' stroke-width='2'/%3E%3Cpath d='M20 20l-3.2-3.2' stroke='%23111111' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") center / 22px 22px no-repeat;
}
.search-bar input {
  flex: 1;
  height: 48px;
  border: 0;
  background: transparent;
  padding: 0;
  font: inherit;
  font-size: 18px;
  color: var(--black);
  caret-color: var(--orange);
}
.search-bar input::placeholder { color: #b8b8b8; }
.search-close {
  flex: none;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #f2f2f2;
  font-size: 26px;
  line-height: 1;
  color: #444;
}
.nav-item:not(.nav-more) .mega-compact {
  left: 0;
  right: auto;
  width: 280px;
  padding: 18px 22px 20px;
  border-radius: 12px;
  box-shadow: 0 18px 44px rgba(17, 17, 17, 0.12);
}

/* Mobile drawer */
.drawer {
  display: none;
  position: fixed;
  inset: 0;
  background: #fff;
  z-index: 120;
  padding: 20px;
  overflow: auto;
}
.drawer.is-open { display: block; }
.drawer-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px; }
.drawer a { display: block; padding: 10px 0; font-weight: 700; }
.drawer details { border-bottom: 1px solid var(--line); }
.drawer summary { padding: 12px 0; font-weight: 800; cursor: pointer; }

.sticky-cta {
  display: none;
  position: fixed;
  left: 12px;
  right: 12px;
  bottom: 12px;
  z-index: 90;
  gap: 8px;
}

/* Hero */
.hero {
  padding: 60px 0 4px;
  background:
    radial-gradient(ellipse 22% 26% at 50% 88%, rgba(255, 205, 145, 0.55) 0%, rgba(255, 205, 145, 0) 70%),
    #f6f6f6;
  position: relative;
  z-index: 0;
  overflow: hidden;
}
.hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 695px) minmax(0, 1fr) minmax(430px, 545px);
  gap: 0;
  align-items: start;
}
.hero h1 { font-size: clamp(32px, calc(2.45 * var(--vwu)), 46px); line-height: 1.3; margin-bottom: 22px; }
.checks { list-style: none; padding: 0; margin: 0 0 20px; }
.checks li {
  display: flex;
  gap: 12px;
  margin-bottom: 12px;
  font-weight: 600;
}
.checks li::before {
  content: "";
  width: 22px;
  height: 22px;
  flex: 0 0 22px;
  border-radius: 50%;
  background: var(--orange) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='white' d='M6.2 11.2 2.8 7.8l1.4-1.4 2 2 5.6-5.6 1.4 1.4z'/%3E%3C/svg%3E") center / 12px no-repeat;
}
.guarantee {
  display: flex;
  gap: 16px;
  align-items: center;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--black);
  max-width: 52ch;
  margin-top: 40px;
}
.guarantee span, .guarantee small { color: var(--black); font-size: inherit; }
.guarantee img { width: 72px; height: 72px; object-fit: contain; flex: 0 0 72px; }
.hero-calc { min-height: 48px; margin-top: 28px; padding: 0 28px; border-radius: 26px; }
.hero-sub { font-weight: 700; font-size: 17px; margin: 0 0 16px; line-height: 1.6; }
.label-arrow {
  display: inline-block;
  width: 34px;
  height: 12px;
  margin-left: 6px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 14'%3E%3Cpath d='M1 1c10 9 22 11 37 11' fill='none' stroke='%23ff5722' stroke-width='1.6'/%3E%3Cpath d='M31 8l7 4-8 2' fill='none' stroke='%23ff5722' stroke-width='1.6'/%3E%3C/svg%3E") no-repeat center / contain;
}
.star { color: #ffb400; }
.shield {
  width: 28px;
  height: 32px;
  background: var(--black);
  clip-path: polygon(50% 0, 100% 18%, 86% 100%, 14% 100%, 0 18%);
  position: relative;
}
.shield::after {
  content: "";
  position: absolute;
  inset: 8px 7px 6px;
  background: var(--orange);
  clip-path: polygon(20% 45%, 40% 65%, 80% 25%, 90% 35%, 40% 85%, 10% 55%);
}

.hero-art {
  position: relative;
  min-height: clamp(420px, calc(41.7 * var(--vwu)), 800px);
  z-index: 0;
}
.hero-art img {
  position: absolute;
  left: clamp(-195px, calc(-10.2 * var(--vwu)), -60px);
  bottom: -41px;
  width: clamp(360px, calc(39 * var(--vwu)), 748px);
  max-width: none;
  height: auto;
  object-fit: contain;
}

.quiz {
  position: relative;
  z-index: 2;
  background: #fff;
  border-radius: 20px;
  box-shadow: 0 24px 60px rgba(17, 17, 17, 0.1);
  padding: 24px;
  border: 0;
}
.quiz { padding: 46px 47px 40px; border-radius: 16px; }
.quiz h2 { font-size: 26px; line-height: 1.25; margin: 0 0 32px; }
.quiz-q { font-weight: 700; margin: 16px 0 8px; font-size: 14px; }
.quiz .quiz-q { font-weight: 400; color: var(--muted); font-size: 15px; margin: 0 0 18px; }
.pills { display: flex; flex-wrap: wrap; gap: 8px; }
.quiz .pills { gap: 14px; margin-bottom: 32px; }
.quiz .pill { min-height: 47px; padding: 0 24px; font-size: 15px; background: #f2f2f2; }
.quiz .pill.is-active { background: var(--black); color: #fff; }
.quiz .field {
  border-top: 1px solid var(--line);
  padding-top: 45px;
  margin: 0 0 24px;
  gap: 14px;
}
.quiz .field input {
  height: 48px;
  border-radius: 999px;
  background: #f4f4f4
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23111'%3E%3Cpath d='M6.6 10.8a15 15 0 0 0 6.6 6.6l2.2-2.2c.3-.3.7-.4 1-.2 1.2.4 2.4.6 3.6.6.6 0 1 .4 1 1V20c0 .6-.4 1-1 1A17 17 0 0 1 3 4c0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.3.2 2.5.6 3.6.1.4 0 .8-.2 1l-2.3 2.2z'/%3E%3C/svg%3E")
    no-repeat 20px center / 16px;
  padding-left: 46px;
}
.quiz .field .btn { min-height: 48px; padding-inline: 30px; font-size: 15px; }
.quiz .consent { font-size: 13px; line-height: 1.6; padding-left: 38px; }
.quiz .consent input[type="checkbox"] { width: 22px; height: 22px; top: 0; border-radius: 6px; }
.field {
  display: flex;
  gap: 8px;
  margin: 16px 0 10px;
}
.quiz .field {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: stretch;
}
.quiz .field .btn { padding-inline: 16px; }
.kp-phone {
  align-self: end;
  margin-bottom: -1px;
}
.kp-phone img {
  width: 100%;
  height: auto;
  object-fit: contain;
}
.kp-note {
  display: flex;
  gap: 12px;
  align-items: center;
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid var(--line);
  color: var(--muted);
  font-size: 13px;
}
.kp-note img { width: 44px; height: 44px; object-fit: contain; flex: 0 0 44px; }
.text-reviews {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0;
  border: 1px solid var(--line);
  border-radius: 20px;
  overflow: hidden;
}
.text-review {
  background: #fff;
  padding: 34px 30px;
  min-height: 432px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  border-right: 1px solid var(--line);
}
.text-review:last-child { border-right: 0; }
.text-review p { margin: 0; font-size: 14px; color: #333; }
.stars { color: #ff9d00; letter-spacing: 2px; font-size: 15px; }
.text-review .who { display: flex; gap: 10px; align-items: center; font-weight: 700; font-size: 14px; }
.text-review .who img { width: 36px; height: 36px; border-radius: 50%; object-fit: cover; }
.text-review .who small { display: block; color: var(--muted); font-weight: 600; font-size: 12px; }
.review-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  align-self: flex-start;
  margin-top: auto;
  padding: 10px 16px;
  border-radius: 999px;
  background: var(--bg);
  font-weight: 700;
  font-size: 13px;
}
.review-link::before { content: "📍"; }
.review-link::after { content: "›"; color: var(--muted); }
.reviews-head { position: relative; }
.ya-card {
  position: absolute;
  right: 0;
  top: -120px;
  width: 150px;
  padding: 16px 12px 22px;
  text-align: center;
  /* the ribbon shape lives on ::before so the filter is not clipped away by it */
  filter: drop-shadow(0 6px 13px rgba(17,17,17,.10));
}
.ya-card::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  background: #fff;
  clip-path: polygon(0 0, 100% 0, 100% 100%, 50% 88%, 0 100%);
}
.ya-card b { display: block; font-size: 13px; margin: 6px 0 2px; }
.ya-card span { font-size: 22px; font-weight: 800; }
.ya-pin {
  width: 26px;
  height: 26px;
  margin: 0 auto;
  border-radius: 50% 50% 50% 0;
  transform: rotate(-45deg);
  background: #f5342b;
}
.carousel { position: relative; }
.carousel-arrow {
  position: absolute;
  top: 50%;
  width: 44px;
  height: 44px;
  margin-top: -22px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 8px 24px rgba(17,17,17,.12);
  display: grid;
  place-items: center;
  color: var(--muted);
  font-size: 18px;
  z-index: 2;
}
.carousel-arrow.prev { left: -22px; }
.carousel-arrow.next { right: -22px; }
.faq details summary {
  min-height: 112px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  list-style: none;
  font-weight: 700;
  font-size: 17px;
  cursor: pointer;
  padding: 0;
}
.faq details summary::-webkit-details-marker { display: none; }
.faq details summary::after {
  content: "+";
  flex: 0 0 40px;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: var(--bg);
  color: var(--black);
  font-size: 22px;
  font-weight: 400;
  line-height: 38px;
  text-align: center;
}
.faq details[open] summary { color: var(--orange); }
.faq details[open] summary::after { content: "–"; background: var(--black); color: #fff; }
.service-card .svc-line { border: 0; border-top: 1px solid #e2e2e2; margin: 14px 0 16px; }
.service-card .svc-price { margin-top: auto; font-size: 14px; color: var(--muted); }
.service-card .svc-price b { display: block; color: var(--orange); font-size: 17px; }
.field input, .field-input {
  flex: 1;
  min-width: 0;
  height: 48px;
  border: 0;
  background: var(--bg);
  border-radius: 12px;
  padding: 0 14px;
}
.consent {
  display: block;
  position: relative;
  padding-left: 28px;
  font-size: 12px;
  line-height: 1.4;
  color: var(--muted);
}
.consent input[type="checkbox"] {
  position: absolute;
  left: 0;
  top: 1px;
  width: 18px;
  height: 18px;
  margin: 0;
  accent-color: var(--orange);
  cursor: pointer;
}
.consent a { text-decoration: underline; }

/* Sections */
.section { padding: clamp(56px, calc(7.3 * var(--vwu)), 140px) 0; }
/* sections whose cards overhang keep the negative margin inside the band */
.section:has(> .container > .stats) { display: flow-root; }
#uslugi { padding-top: clamp(120px, calc(16.9 * var(--vwu)), 325px); }
.section-muted { background: var(--bg); }
.section-head { margin-bottom: 28px; }

.cases {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 56px 32px;
  margin-top: 55px;
}
.case-card { background: transparent; }
.case-visual {
  overflow: hidden;
  background: #f4f4f4;
  border-radius: 6px;
  position: relative;
}
.case-visual .case-tags {
  position: absolute;
  top: 21px;
  left: 24px;
  right: 24px;
  margin: 0;
  gap: 10px;
  z-index: 1;
}
.case-visual .tag {
  background: #fff;
  min-height: 50px;
  align-items: center;
  padding: 0 20px;
  font-size: 15px;
}
.case-visual .tag-ok { background: var(--orange); color: #fff; }
.case-visual img {
  display: block;
  width: 100%;
  height: auto;
}
.case-body { padding: 21px 0 0; background: transparent; }
.case-body p { margin: 0; font-weight: 600; font-size: clamp(16px, calc(1.05 * var(--vwu)), 20px); line-height: 1.3; }
.case-tags {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 18px;
}
.tag-ok {
  background: var(--orange);
  color: #fff;
}
.center { text-align: center; margin-top: 57px; }
.center .btn { min-height: 48px; padding: 0 26px; }
.center-head { text-align: center; margin-bottom: 32px; }
.chev { color: var(--muted); font-size: 18px; line-height: 1; }
.services-sub { color: var(--muted); font-size: 14px; margin: 0 0 28px; }
.messengers-label { color: var(--muted); font-size: 13px; margin: 26px 0 10px; }

.cta-7 {
  position: relative;
  /* the art is taken out of the flow, so the block reserves its height */
  min-height: 509px;
}
.cta-7 > div { max-width: 800px; }
/* the phone art overlaps the stat cards below it, exactly as in the mockup */
.cta-7 img,
.cta-7 .cta-visual img {
  position: absolute;
  left: 760px;
  top: -32px;
  width: 1050px;
  max-width: none;
  height: auto;
  pointer-events: none;
}
/* the art already reserves the gap above the cards */
.cta-7 + .stats { margin-top: 0; }
/* stat cards hang past the muted band, so it gets no bottom padding */
.section:has(> .container > .cta-7) { padding-top: 108px; padding-bottom: 0; }
.messengers { display: flex; gap: 12px; margin-top: 12px; align-items: center; flex-wrap: wrap; }
.messengers .pill {
  gap: 10px;
  min-height: 44px;
  padding: 0 20px;
  background: #fff;
  border: 1px solid #e6e6e6;
  font-size: 15px;
}
.messengers .pill::before {
  content: "";
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
  background: no-repeat center / contain;
}
.messengers .pill[href*="t.me"]::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='12' fill='%232aabee'/%3E%3Cpath fill='%23fff' d='M18.4 7.2 16.5 17c-.1.5-.5.7-.9.4l-2.6-1.9-1.3 1.2c-.1.1-.3.2-.5.2l.2-2.7 4.9-4.4c.2-.2-.1-.3-.3-.1l-6 3.8-2.6-.8c-.6-.2-.6-.6.1-.8l10-3.9c.5-.2.9.1.9.2z'/%3E%3C/svg%3E");
}
.messengers .pill[href*="wa.me"]::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='12' fill='%2325d366'/%3E%3Cpath fill='%23fff' d='M12 5.6a6.3 6.3 0 0 0-5.4 9.6L5.8 18.4l3.3-.8A6.3 6.3 0 1 0 12 5.6zm3.6 8.9c-.2.4-.9.8-1.2.8-.3.1-.7.1-1.2 0-.3-.1-.6-.2-1-.4a7.7 7.7 0 0 1-3.2-2.8c-.1-.1-.7-1-.7-1.9s.5-1.3.6-1.5c.2-.2.4-.2.5-.2h.4c.1 0 .3 0 .4.3l.6 1.4c0 .1.1.2 0 .3l-.2.3-.3.3c-.1.1-.2.2-.1.4.1.2.5.8 1.1 1.3.7.6 1.3.8 1.5.9.2.1.3.1.4 0l.6-.7c.1-.2.3-.2.4-.1l1.3.6c.2.1.3.2.3.2.1.1.1.4 0 .7z'/%3E%3C/svg%3E");
}

.stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 34px;
  margin-top: 60px;
  /* the cards hang below the muted band, as in the mockup */
  margin-bottom: max(-260px, calc(-13.5 * var(--vwu)));
  position: relative;
  z-index: 1;
}
.stat {
  background: #fff;
  border-radius: 4px;
  padding: 48px 42px;
  box-shadow: var(--shadow);
  min-height: 370px;
  display: flex;
  flex-direction: column;
}
.stat b { display: block; font-size: clamp(32px, calc(2.85 * var(--vwu)), 55px); line-height: 1.1; margin-bottom: 44px; }
.stat p { margin: 0; color: var(--muted); font-size: 15px; line-height: 1.6; }

.services-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
}
.service-card, .calc-card {
  background: #f6f6f6;
  border-radius: 16px;
  min-height: 576px;
  padding: 34px 32px 30px;
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  color: inherit;
}
.service-card h3 { margin: 0 60px 0 0; font-size: 24px; }
.service-card p { color: var(--muted); font-size: 15px; line-height: 1.55; margin: 0 0 12px; max-width: 34ch; }
.icon-round {
  position: absolute;
  top: 26px;
  right: 26px;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: #fff;
  color: var(--orange);
  display: grid;
  place-items: center;
  font-weight: 700;
  font-size: 15px;
}
.service-ico {
  position: absolute;
  right: 10px;
  bottom: 12px;
  width: 230px;
  height: auto;
  object-fit: contain;
  pointer-events: none;
}
.calc-card { background: #1a1a1a; color: #fff; }
.calc-card h3 { font-size: 22px; margin: 0 0 10px; }
.calc-card .consent { color: #8d8d8d; margin-top: 12px; }
.calc-card .consent a { color: #bbb; }
.cta-visual { align-self: end; }
.cta-visual img { width: 100%; height: auto; }
.calc-card .lead { color: #bbb; }
.calc-card .field-input { background: #2a2a2a; color: #fff; width: 100%; margin-bottom: 8px; }

.trust {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
  align-items: center;
}
.trust-list { list-style: none; padding: 0; margin: 24px 0 0; }
.trust-list li { display: flex; gap: 12px; margin-bottom: 20px; }
.trust-list strong { display: block; font-size: clamp(16px, calc(1.1 * var(--vwu)), 21px); line-height: 1.4; }
.trust-list small { display: block; color: var(--muted); font-size: clamp(14px, calc(0.85 * var(--vwu)), 16px); margin-top: 6px; line-height: 1.5; }
.trust-visual { position: relative; }
.trust-visual .kpi-dash { width: 100%; height: auto; }
.num {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--orange);
  color: #fff;
  display: grid;
  place-items: center;
  font-weight: 800;
  flex: 0 0 28px;
}
.badge-kpi {
  display: inline-block;
  background: var(--orange);
  color: #fff;
  font-weight: 800;
  padding: 18px;
  border-radius: 50%;
  width: 140px;
  height: 140px;
  text-align: center;
  line-height: 1.2;
}

.reviews { display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; }
.review {
  min-height: 432px;
  border-radius: 20px;
  color: #fff;
  padding: 20px;
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background: #1a1a1a center / cover no-repeat;
}
.review::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,.45), rgba(0,0,0,.15) 40%, rgba(0,0,0,.5));
}
.review > * { position: relative; z-index: 1; }
.review small { opacity: 0.9; display: block; }
.play {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: var(--orange);
  display: grid;
  place-items: center;
}
.play::after {
  content: "";
  border-style: solid;
  border-width: 8px 0 8px 14px;
  border-color: transparent transparent transparent #fff;
  margin-left: 4px;
}

.kp-split {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  border-radius: 24px;
  overflow: hidden;
  min-height: 660px;
}
.kp-left {
  background: linear-gradient(115deg, #e94d1b 0%, #ef6a22 45%, #ff9b3d 100%);
  color: #fff;
  padding: 56px 48px;
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.kp-hand {
  position: absolute;
  right: 0;
  bottom: -2px;
  width: 48%;
  max-width: 430px;
  height: auto;
}
.kp-left h2, .kp-left .checks, .kp-meta { max-width: 62%; }
.kp-left h2 { color: #fff; font-size: 34px; line-height: 1.25; }
.kp-left .checks li::before { background-color: #fff; }
.kp-left .checks li::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23ff5722' d='M6.2 11.2 2.8 7.8l1.4-1.4 2 2 5.6-5.6 1.4 1.4z'/%3E%3C/svg%3E"); }
.kp-meta {
  background: #1a1a1a;
  border-radius: 16px;
  padding: 20px 22px;
  margin-top: auto;
  max-width: 380px;
}
.kp-meta .who { display: flex; gap: 10px; align-items: center; margin-top: 12px; padding-top: 12px; border-top: 1px solid #333; }
.kp-meta img { width: 44px; height: 44px; border-radius: 50%; object-fit: cover; }
.kp-right {
  background: #fff;
  padding: 56px 48px;
  border: 1px solid var(--line);
  border-left: 0;
  display: flex;
  flex-direction: column;
}
.kp-form { background: #fff; }

.billion {
  background-color: #191617;
  color: #fff;
  padding: clamp(70px, calc(7.8 * var(--vwu)), 150px) 0 0;
  position: relative;
  /* keeps the cards' negative margin inside the block so they overhang it */
  display: flow-root;
}
/* art keeps its aspect ratio pinned to the bottom of the section; its flat top
   edge matches the section colour, so the seam stays invisible at any width */
.billion::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url("/assets/img/billion-art.png?v=7fef4a1b") center bottom / 100% auto no-repeat;
}
@media (max-width: 699px) {
  /* stacked layout makes the section much taller than the art, so keep the art
     at its own ratio along the bottom instead of stretching it */
  .billion::before {
    top: auto;
    aspect-ratio: 1920 / 850;
    background-size: 100% auto;
    background-position: center bottom;
  }
}
.billion > .container { position: relative; z-index: 1; }
/* the feature cards hang below the dark block, so the next section starts lower */
.billion + .section { margin-top: clamp(170px, calc(20.8 * var(--vwu)), 400px); }
.billion-note { font-size: clamp(17px, calc(1.31 * var(--vwu)), 25px); line-height: 1.33; }
.billion-note strong { font-weight: 800; }
.billion-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 541px;
  gap: 32px;
  align-items: start;
}
.billion h2 { color: #fff; font-size: clamp(34px, calc(3.15 * var(--vwu)), 60px); line-height: 1.12; }
.method-box {
  display: flex;
  gap: 16px;
  align-items: center;
  background: linear-gradient(90deg, #ff8a3d, #e8431a);
  border-radius: 6px;
  padding: 22px 26px;
  margin-top: 48px;
  max-width: 541px;
  font-size: clamp(15px, calc(1 * var(--vwu)), 19px);
  font-weight: 700;
  line-height: 1.4;
}
.method-box img { width: 100px; height: 100px; object-fit: contain; flex: 0 0 100px; }
.features {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 32px;
  margin-top: clamp(110px, calc(20.3 * var(--vwu)), 390px);
  margin-bottom: max(-227px, calc(-11.8 * var(--vwu)));
  position: relative;
  z-index: 1;
}
.feature-card {
  background: #fff;
  border-radius: 4px;
  padding: 34px 38px 24px;
  color: var(--text);
  min-height: 337px;
  display: flex;
  flex-direction: column;
}
.feature-card img { width: 92px; height: 92px; object-fit: contain; margin-bottom: 18px; }
.feature-card p { margin: auto 0 0; font-size: clamp(16px, calc(1.05 * var(--vwu)), 20px); line-height: 1.3; }

.adv-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 24px;
}
.adv-card {
  background: #f6f6f6;
  border-radius: 12px;
  padding: 30px 18px 0;
  min-height: 300px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  font-weight: 700;
  font-size: 14px;
}
.adv-card img {
  margin-top: auto;
  width: auto;
  height: 190px;
  object-fit: contain;
}

.advantages {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  margin-bottom: 28px;
}
.adv { text-align: center; width: 120px; font-weight: 700; font-size: 13px; }

.price-row {
  display: grid;
  grid-template-columns: 64px 400px minmax(0, 1fr) 200px;
  gap: 24px;
  align-items: center;
  background: #fff;
  border-radius: 10px;
  min-height: 120px;
  padding: 24px 30px;
  margin-bottom: 8px;
}
.price-row strong { font-size: 18px; }
.price-row p { margin: 0; color: var(--muted); font-size: 14px; line-height: 1.6; }
.price-row .service-ico {
  position: static;
  margin: 0;
  width: 52px;
  height: 52px;
  object-fit: contain;
}
.price-row .svc-price { font-size: 13px; color: var(--muted); white-space: nowrap; text-align: right; }
.price-row .svc-price b { display: block; color: var(--orange); font-size: 15px; }

.yandex-badge {
  float: right;
  background: #fff;
  border-radius: 12px;
  padding: 10px 12px;
  box-shadow: var(--shadow);
  font-weight: 800;
}

.faq details { border-bottom: 1px solid var(--line); }
.faq p { color: var(--muted); font-size: 16px; margin: 0 0 28px; max-width: 110ch; }

.feat-4 {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  margin: 28px 0 8px;
}
.feat-4 article {
  background: #fff;
  border-radius: var(--radius);
  padding: 20px 18px;
}
.feat-4 h3 { margin: 0 0 8px; font-size: 18px; }
.feat-4 p { margin: 0; color: var(--muted); font-size: 14px; }
.process-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin: 20px 0;
}
.process-grid article {
  background: #fff;
  border-radius: var(--radius);
  padding: 18px;
}
.process-grid b { color: var(--orange); }
.price-rows { margin: 20px 0 8px; }
.tariff-row {
  display: grid;
  grid-template-columns: 1.4fr 2fr auto;
  gap: 16px;
  align-items: start;
  background: #fff;
  border-radius: var(--radius);
  padding: 18px 20px;
  margin-bottom: 12px;
}
.tariff-row strong { font-size: 18px; }
.tariff-row .sum { font-weight: 800; white-space: nowrap; }
.niche-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin: 16px 0 8px;
}
.niche-grid span {
  background: #fff;
  border-radius: 999px;
  padding: 10px 14px;
  font-weight: 600;
  font-size: 14px;
  text-align: center;
}
.pain-list { list-style: none; padding: 0; }
.pain-list li {
  padding: 8px 0 8px 28px;
  position: relative;
}
.pain-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 12px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  border: 2px solid var(--orange);
}

.articles {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 32px;
}
.article-card { }
.article-img {
  display: block;
  height: 262px;
  border-radius: 10px;
  background: #cfe6ff url("/assets/img/blog-thumb.jpg?v=ccf3818b") center / cover no-repeat;
  margin-bottom: 14px;
}
.article-card .label-orange { text-transform: none; letter-spacing: 0; font-size: 14px; }
.article-card h3 { font-size: 19px; line-height: 1.4; margin: 10px 0 12px; }
.article-card time { color: var(--muted); font-size: 14px; }

/* Footer */
.footer { background: #f6f6f6; padding: clamp(56px, calc(5.73 * var(--vwu)), 110px) 0 0; }
.footer-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 56px;
}
.footer .logo { gap: 6px; margin: 4px 0 43px; }
.footer .logo-name { font-size: 32px; letter-spacing: 0.02em; }
.footer .logo-tag { font-size: 12px; letter-spacing: 0.02em; color: #111; }
.footer .soc {
  width: 44px;
  height: 44px;
  background: #fff;
  border: 1px solid #e6e6e6;
}
.footer .soc svg { width: 20px; height: 20px; }
.footer .soc-wa svg path,
.footer .soc-tg svg path { fill: #5f6368; }
.footer .soc-dz {
  height: 44px;
  padding: 0 22px;
  font-size: 16px;
  background: var(--black);
  border: 0;
  margin-left: 16px;
  position: relative;
}
.footer .soc-dz::before {
  content: "";
  position: absolute;
  left: -16px;
  top: 4px;
  bottom: 4px;
  width: 1px;
  background: #ddd;
}
.footer-title { font-size: 14px; letter-spacing: 0.06em; text-transform: uppercase; margin: 0 0 19px; font-weight: 800; color: var(--muted); }
.footer-grid ul a.is-active { color: var(--orange); }
.cookie {
  position: fixed;
  left: 16px;
  right: 16px;
  bottom: 16px;
  z-index: 140;
  background: #111;
  color: #fff;
  border-radius: 16px;
  padding: 16px 18px;
  display: none;
  gap: 12px;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  max-width: 720px;
  margin-inline: auto;
}
.cookie.is-open { display: flex; }
.cookie p { margin: 0; font-size: 13px; max-width: 48ch; }
.cookie a { text-decoration: underline; }
.footer ul { list-style: none; padding: 0; margin: 0; }
.footer li { margin-bottom: 18px; font-size: 16px; }
.footer a:hover { color: var(--orange); }
.contact-line { display: flex; gap: 13px; margin-bottom: 30px; font-size: 16px; line-height: 1.45; }
.legal-mini { font-size: 13px; color: var(--muted); margin-top: 22px; line-height: 1.5; }
.footer-soc { display: flex; align-items: center; gap: 14px; margin: 28px 0 0; }
.footer-cta {
  background: #e94e1b url("/assets/img/footer-cta.jpg?v=76e0db1f") center / cover no-repeat;
  color: #fff;
  border-radius: 4px;
  padding: 34px 33px 32px;
  align-self: start;
  min-height: 504px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  position: relative;
}
.footer-cta p { font-weight: 800; font-size: 20px; line-height: 32px; margin: 0; }
.footer-cta .btn { width: 100%; min-height: 48px; margin-top: auto; }
.footer-bottom {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
  padding: 51px 0;
  margin-top: 48px;
  border-top: 1px solid var(--line);
  font-size: 13px;
  color: var(--muted);
}
.footer-bottom nav { display: flex; gap: 14px; flex-wrap: wrap; }
.footer-bottom nav a { text-decoration: underline; }

/* Modal */
.modal {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(17, 17, 17, 0.55);
  z-index: 130;
  place-items: center;
  padding: 20px;
}
.modal.is-open { display: grid; }
.modal-box {
  background: #fff;
  width: min(480px, 100%);
  border-radius: 20px;
  padding: 28px;
  position: relative;
}
.modal-x {
  position: absolute;
  right: 18px;
  top: 16px;
  z-index: 2;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #f2f2f2;
  font-size: 22px;
  line-height: 1;
  color: #444;
}
.modal-x-out {
  position: absolute;
  right: max(24px, calc(50% - 560px));
  top: 28px;
  background: #fff;
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.12);
}
.modal-box-kp {
  width: min(1120px, 100%);
  padding: 0;
  overflow: hidden;
}
.kp-head {
  padding: 36px 48px 22px;
  border-bottom: 1px solid var(--line);
}
.kp-head h2 { margin: 0; font-size: 28px; line-height: 36px; }
.kp-head p { margin: 10px 0 0; color: var(--muted); font-size: 15px; }
.kp-body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 390px;
  min-height: 520px;
}
.kp-form { padding: 32px 48px 40px; }
.kp-form-h { margin: 0 0 22px; font-size: 16px; font-weight: 700; }
.kp-pills { display: flex; flex-wrap: wrap; gap: 10px; margin: 12px 0 22px; }
.kp-pills .pill {
  min-height: 44px;
  padding: 0 18px 0 14px;
  gap: 10px;
  background: #f4f4f4;
  font-weight: 600;
}
.kp-pills .pill.is-active { background: var(--black); color: #fff; }
.kp-pills .pill[data-ch="WhatsApp"]::before,
.kp-pills .pill:first-child::before {
  content: "";
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #25d366 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3a9 9 0 0 0-7.7 13.6L3 21l4.6-1.2A9 9 0 1 0 12 3Zm5 12.4c-.2.6-1.2 1.2-1.7 1.2-.4 0-1 .1-3-.8-2.5-1-4.1-3.6-4.2-3.8-.1-.2-1-1.3-1-2.5s.6-1.8.9-2c.2-.3.5-.3.6-.3h.5c.2 0 .4 0 .6.5l.8 2c.1.1.1.3 0 .5l-.3.4-.3.3c-.1.1-.3.3-.1.6.1.3.6 1.1 1.3 1.7.9.8 1.6 1 1.9 1.2.2.1.4.1.5-.1l.7-.9c.2-.2.3-.2.6-.1l1.9.9c.3.1.4.2.5.3v1.2Z' fill='%23fff'/%3E%3C/svg%3E") center / 14px no-repeat;
}
.kp-pills .pill[data-ch="Telegram"]::before,
.kp-pills .pill:nth-child(2)::before {
  content: "";
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #2aabee url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M18.9 6.2 16.6 17c-.2.8-.6 1-1.3.6l-3.5-2.6-1.7 1.6c-.2.2-.4.4-.7.4l.3-3.6 6.5-5.9c.3-.2-.1-.4-.4-.2l-8 5-3.5-1.1c-.7-.2-.8-.7.2-1.1L17.9 5c.6-.2 1.2.2 1 1.2Z' fill='%23fff'/%3E%3C/svg%3E") center / 14px no-repeat;
}
.kp-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  margin: 0 0 16px;
}
.modal-box-kp .field-tel,
.modal-box-kp .field-mail,
.modal-box-call .field-tel,
.qz .field-tel {
  display: block;
  width: 100%;
  min-height: 52px;
  margin: 0;
  padding: 0 18px 0 44px;
  border: 0;
  border-radius: 12px;
  background: #f4f4f4 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23b0b0b0' d='M4.3 1.5 6 4.6 4.6 6.3c.7 1.6 2 2.9 3.6 3.6l1.7-1.4 3.1 1.7-.6 2.6c-.2.7-.9 1.1-1.6 1C5.9 13 2.4 9.5 1.6 4.6c-.1-.7.3-1.4 1-1.6z'/%3E%3C/svg%3E") 16px center / 16px no-repeat;
  font: inherit;
}
.modal-box-kp .field-mail {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 12'%3E%3Cpath fill='%23b0b0b0' d='M1 0h14a1 1 0 0 1 1 1L8 6.6 0 1a1 1 0 0 1 1-1zm15 2.6V11a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V2.6l8 5.6z'/%3E%3C/svg%3E");
  background-size: 16px 12px;
}
.modal-box-kp .field-tel[hidden],
.modal-box-kp .field-mail[hidden] { display: none; }
.kp-row .btn { min-height: 52px; padding: 0 26px; border-radius: 26px; white-space: nowrap; }
.kp-nospam {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 18px 0 0;
  font-size: 13px;
  line-height: 18px;
  color: #9a9a9a;
}
.kp-nospam img { width: 40px; height: 40px; object-fit: contain; }
.modal-box-call .field-input:not(.field-tel) {
  display: block;
  width: 100%;
  min-height: 52px;
  margin: 0 0 12px;
  padding: 0 18px;
  border: 0;
  border-radius: 12px;
  background: #f4f4f4;
  font: inherit;
}
.kp-art {
  background: #f6f6f6;
  display: grid;
  align-items: end;
  justify-items: center;
  overflow: hidden;
}
.kp-art img { display: block; width: 78%; height: auto; margin-bottom: -8px; }
.modal-box-call { width: min(460px, 100%); padding: 36px 36px 32px; }
.modal-box-call h2 { margin: 0 0 8px; font-size: 26px; }
.modal-quiz { padding: 40px 20px; }
.modal-box-quiz {
  width: min(1080px, 100%);
  padding: 0 0 28px;
  overflow: hidden;
}
.quiz-bar {
  height: 28px;
  background: #f0f0f0;
}
.quiz-bar-fill {
  display: grid;
  place-items: center;
  height: 100%;
  width: 15%;
  background: var(--orange);
  color: #fff;
  font-size: 12px;
  font-weight: 800;
  transition: width 0.25s ease;
}
.qz { padding: 28px 40px 0; }
.qz-step { display: none; grid-template-columns: minmax(0, 1fr) 280px; gap: 36px; align-items: start; }
.qz-step.is-on { display: grid; }
.qz-step h2 { margin: 0; font-size: 24px; line-height: 32px; }
.qz-sub { margin: 12px 0 22px; color: var(--muted); font-size: 15px; }
.qz-opts { display: grid; gap: 10px; }
.qz-opt {
  display: flex;
  align-items: center;
  gap: 14px;
  min-height: 48px;
  padding: 0 16px;
  border-radius: 10px;
  background: #f6f6f6;
  font: inherit;
  font-weight: 600;
  text-align: left;
}
.qz-opt::before {
  content: "";
  flex: none;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: #fff;
  box-shadow: inset 0 0 0 1px #ddd;
}
.qz-opt.is-on { background: #fff; box-shadow: 0 0 0 1px var(--orange); }
.qz-opt.is-on::before {
  background: var(--orange) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='white' d='M6.2 11.2 2.8 7.8l1.4-1.4 2 2 5.6-5.6 1.4 1.4z'/%3E%3C/svg%3E") center / 12px no-repeat;
  box-shadow: none;
}
.qz-card {
  padding: 22px 20px;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 16px 40px rgba(17, 17, 17, 0.08);
  font-size: 14px;
  line-height: 20px;
}
.qz-who { display: flex; align-items: center; gap: 12px; margin: 0 0 12px; }
.qz-who img { width: 52px; height: 52px; border-radius: 50%; object-fit: cover; }
.qz-who b { display: block; font-size: 15px; }
.qz-who small { display: block; color: #2aa36b; font-size: 12px; }
.qz-nav {
  display: flex;
  justify-content: flex-end;
  gap: 12px;
  margin-top: 28px;
}
.qz-nav .qz-back { margin-right: auto; background: #f2f2f2; }
.qz-nav .btn { min-height: 48px; padding: 0 28px; border-radius: 24px; }
.qz-nav .btn[hidden] { display: none !important; }
.kp-pills .pill[data-ch="Email"]::before,
.kp-pills .pill:nth-child(3)::before {
  content: "";
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #111 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 12'%3E%3Cpath fill='%23fff' d='M1 0h14a1 1 0 0 1 1 1L8 6.6 0 1a1 1 0 0 1 1-1zm15 2.6V11a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V2.6l8 5.6z'/%3E%3C/svg%3E") center / 11px 8px no-repeat;
}
.kp-pills .pill[data-ch="Телефон"]::before,
.kp-pills .pill:nth-child(4)::before {
  content: "";
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #111 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23fff' d='M4.3 1.5 6 4.6 4.6 6.3c.7 1.6 2 2.9 3.6 3.6l1.7-1.4 3.1 1.7-.6 2.6c-.2.7-.9 1.1-1.6 1C5.9 13 2.4 9.5 1.6 4.6c-.1-.7.3-1.4 1-1.6z'/%3E%3C/svg%3E") center / 11px no-repeat;
}

/* Interior pages — geometry taken from the 1920 exports (container 1700,
   sidebar 298, gutter 48, content column 1354). */
.page-top { padding-top: 42px; }
.page-top h1 {
  margin: 0 0 24px;
  font-size: 40px;
  line-height: 1.15;
  letter-spacing: -0.01em;
}
.page-top .crumbs { margin: 0; }
.page-layout {
  display: grid;
  grid-template-columns: 298px minmax(0, 1fr);
  gap: 48px;
  padding: 40px 0 150px;
  align-items: start;
}
.page-plain { padding: 40px 0 150px; }
.page-main > :first-child,
.page-plain > :first-child { margin-top: 0; }
.sidebar { position: sticky; top: 96px; }
.side-nav { border: 1px solid #eaeaea; background: #fff; }
.side-nav > details,
.side-nav > .side-link,
.side-nav-flat > a { display: block; border-bottom: 1px solid #eaeaea; }
.side-nav > :last-child { border-bottom: 0; }
.side-nav summary,
.side-nav-flat a,
.side-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 56px;
  padding: 16px 28px 16px 24px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.35;
  cursor: pointer;
  list-style: none;
}
.side-nav summary::-webkit-details-marker { display: none; }
.side-nav summary::after,
.side-nav-flat a::after {
  content: "";
  width: 12px;
  height: 7px;
  flex: 0 0 12px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 8'%3E%3Cpath d='M1 1l6 6 6-6' fill='none' stroke='%23191617' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
  transition: transform 0.2s ease;
}
.side-nav details[open] summary::after { transform: rotate(180deg); }
.side-nav details[open] > summary,
.side-nav .side-link.is-active,
.side-nav-flat a.is-active { position: relative; }
.side-nav details[open] > summary::before,
.side-nav .side-link.is-active::before,
.side-nav-flat a.is-active::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 4px;
  height: 24px;
  transform: translateY(-50%);
  background: var(--orange);
}
.side-nav details a {
  display: block;
  padding: 0 24px 14px;
  font-weight: 600;
  color: var(--muted);
  font-size: 14px;
}
.side-nav details a:hover,
.side-nav summary:hover { color: var(--orange); }
.side-nav details > a:first-of-type { padding-top: 2px; }
.side-nav a.is-active,
.side-link.is-active { color: var(--orange); }
.side-promo {
  display: block;
  margin-top: 24px;
  overflow: hidden;
  position: relative;
}
.side-promo img { width: 100%; height: auto; }
.side-promo::after {
  content: "";
  position: absolute;
  inset: 40% 0 0;
  background: linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(20, 10, 4, 0.42) 100%);
}
.side-promo span {
  position: absolute;
  z-index: 1;
  left: 24px;
  right: 24px;
  bottom: 24px;
  color: #fff;
  font-size: 19px;
  font-weight: 800;
  line-height: 1.35;
}
.benefit-row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 32px;
  margin: 0 0 48px;
}
.benefit-3 { grid-template-columns: repeat(3, 1fr); }
.benefit-card {
  background: #fff;
  border: 1px solid #eaeaea;
  border-radius: 4px;
  min-height: 214px;
  padding: 42px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 20px;
}
.benefit-card p { margin: 0; font-size: 20px; font-weight: 800; line-height: 1.2; }
.benefit-card b { display: block; color: var(--orange); font-weight: 800; }
.benefit-3 .benefit-card p { font-size: 17px; font-weight: 700; line-height: 1.5; }
.check-o {
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  border-radius: 50%;
  background: var(--orange) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='white' d='M6.2 11.2 2.8 7.8l1.4-1.4 2 2 5.6-5.6 1.4 1.4z'/%3E%3C/svg%3E") center / 15px no-repeat;
}
.filter-row { margin: 0 0 48px; }
.filter-label {
  display: block;
  margin: 0 0 32px;
  font-size: 32px;
  font-weight: 800;
  line-height: 1.2;
}
.filter-row .pills { display: flex; flex-wrap: wrap; gap: 12px; }
.filter-row .pill {
  min-height: 46px;
  padding: 0 22px;
  font-size: 16px;
  font-weight: 600;
  background: #f6f6f6;
}
.filter-row .pill.is-active { background: var(--black); color: #fff; }
.page-head { padding: 0 0 8px; }
.content { max-width: none; }
.breadcrumbs { color: var(--muted); font-size: 14px; margin-bottom: 8px; }
.breadcrumbs a:hover { color: var(--orange); }

.content { padding-bottom: 64px; max-width: 760px; }
.content h2 { margin-top: 28px; }
.content p { color: #333; }
.content ul, .content ol { padding-left: 22px; color: #333; }
.content li { margin: 6px 0; }
.crumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  list-style: none;
  padding: 0;
  margin: 0 0 12px;
  font-size: 14px;
  color: var(--muted);
}
.crumbs li:not(:last-child)::after { content: "·"; margin-left: 14px; }
.page-top .crumbs { gap: 14px; }
.map-frame {
  width: 100%;
  height: 360px;
  border: 0;
  border-radius: 16px;
  margin: 16px 0 40px;
  background: var(--bg);
}
.page-links { display: grid; gap: 12px; margin: 24px 0 40px; }
.legal-note { font-size: 14px; color: var(--muted); }

.ico-pin, .ico-phone, .ico-mail {
  width: 22px;
  height: 22px;
  flex: 0 0 22px;
  margin-top: 2px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.ico-pin {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23111'%3E%3Cpath d='M12 2a7 7 0 0 0-7 7c0 5 7 13 7 13s7-8 7-13a7 7 0 0 0-7-7zm0 9.4A2.4 2.4 0 1 1 12 6.6a2.4 2.4 0 0 1 0 4.8z'/%3E%3C/svg%3E");
}
.ico-phone {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23111'%3E%3Cpath d='M6.6 10.8c1.4 2.8 3.8 5.1 6.6 6.6l2.2-2.2c.3-.3.7-.4 1.1-.2 1.2.4 2.5.6 3.8.6.6 0 1 .4 1 1V20c0 .6-.4 1-1 1C10.7 21 3 13.3 3 4c0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.3.2 2.6.6 3.8.1.4 0 .8-.3 1.1L6.6 10.8z'/%3E%3C/svg%3E");
}
.ico-mail {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23111'%3E%3Cpath d='M3 5.5h18c.6 0 1 .4 1 1v11c0 .6-.4 1-1 1H3c-.6 0-1-.4-1-1v-11c0-.6.4-1 1-1zm9 8.1 8-5.6V7L12 12.4 4 7v1z'/%3E%3C/svg%3E");
}
.contact-line { align-items: flex-start; }
.header-right .btn-ghost svg { flex: 0 0 16px; }

.page-intro {
  max-width: none;
  margin: 0 0 48px;
  font-size: 30px;
  font-weight: 800;
  color: var(--black);
  line-height: 1.25;
}
.page-intro .accent { color: var(--orange); }
.hub-intro { margin-bottom: 20px; letter-spacing: -0.01em; }
.hub-intro-sub {
  max-width: none;
  margin: 0 0 48px;
  color: var(--muted);
  font-size: 16px;
  line-height: 1.7;
}

/* Catalog cards inside the content column: 430x514 at the 1920 export. */
.services-grid.inner-cards {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 48px 32px;
  margin-top: 48px;
  padding-top: 48px;
  border-top: 1px solid #eaeaea;
}
.services-grid.inner-cards.is-ruled {
  padding-bottom: 48px;
  border-bottom: 1px solid #eaeaea;
}
.inner-cards .service-card {
  min-height: 514px;
  padding: 48px;
  border-radius: 4px;
  gap: 0;
}
.inner-cards .svc-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding-bottom: 32px;
  border-bottom: 1px solid #e1e1e1;
}
.inner-cards .service-card h3 {
  margin: 0;
  font-size: 20px;
  line-height: 1.3;
  font-weight: 800;
}
.inner-cards .icon-round {
  position: static;
  flex: 0 0 48px;
  width: 48px;
  height: 48px;
  font-size: 0;
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 14'%3E%3Cpath d='M1 7h17m-6.5-6L18 7l-6.5 6' fill='none' stroke='%23e94e1b' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 20px 14px no-repeat;
}
.inner-cards .svc-desc {
  margin: 32px 0 0;
  max-width: none;
  color: var(--muted);
  font-size: 16px;
  line-height: 1.5;
}
.inner-cards .svc-price {
  margin: auto 0 0;
  position: relative;
  z-index: 1;
  color: var(--muted);
  font-size: 18px;
  line-height: 1.5;
}
.inner-cards .svc-price b {
  display: block;
  color: var(--orange);
  font-size: 20px;
  line-height: 1.45;
  font-weight: 800;
}
.inner-cards .service-ico {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 230px;
  height: auto;
}

/* Dark estimate band. Lives inside the content column on interior pages. */
.calc-band {
  position: relative;
  overflow: hidden;
  border-radius: 4px;
  margin-top: 48px;
  padding: 48px;
  background: #191617;
  color: #fff;
}
.calc-band::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(30% 76% at 8% 0%, rgba(251, 169, 52, 0.55) 0%, rgba(251, 169, 52, 0) 100%);
  pointer-events: none;
}
.calc-band > * { position: relative; }
.calc-band h2 {
  margin: 0;
  font-size: 24px;
  line-height: 1.33;
  font-weight: 800;
}
.calc-band .accent { color: var(--orange); }
.calc-band p { margin: 16px 0 0; color: #cfc9c6; font-size: 16px; max-width: none; }
.calc-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px 12px;
  align-items: center;
  margin-top: 24px;
}
.calc-row .field-input {
  width: 100%;
  min-height: 48px;
  padding: 0 22px;
  border: 0;
  border-radius: 999px;
  background: #2f2d2e;
  color: #fff;
  font-size: 15px;
}
.calc-row .field-input::placeholder { color: #a9a4a5; }
.calc-row .field-mail,
.calc-row .field-tel { padding-left: 52px; background-repeat: no-repeat; background-position: 22px center; background-size: 18px; }
.calc-row .field-mail { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23c9c4c5'%3E%3Cpath d='M3 5.5h18c.6 0 1 .4 1 1v11c0 .6-.4 1-1 1H3c-.6 0-1-.4-1-1v-11c0-.6.4-1 1-1zm9 8.1 8-5.6V7L12 12.4 4 7v1z'/%3E%3C/svg%3E"); }
.calc-row .field-tel { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23c9c4c5'%3E%3Cpath d='M6.6 10.8c1.4 2.8 3.8 5.1 6.6 6.6l2.2-2.2c.3-.3.7-.4 1.1-.2 1.2.4 2.5.6 3.8.6.6 0 1 .4 1 1V20c0 .6-.4 1-1 1C10.7 21 3 13.3 3 4c0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.3.2 2.6.6 3.8.1.4 0 .8-.3 1.1L6.6 10.8z'/%3E%3C/svg%3E"); }
.calc-row .btn {
  grid-row: 2;
  grid-column: 3;
  min-height: 48px;
  width: 100%;
  font-size: 15px;
}
.calc-row .consent {
  grid-row: 2;
  grid-column: 1 / 3;
  align-self: center;
  margin: 0;
  padding-left: 42px;
  color: #adadad;
  font-size: 14px;
  line-height: 1.5;
}
.calc-row .consent a { color: inherit; text-decoration: none; }
.calc-row .consent input {
  appearance: none;
  top: 50%;
  width: 24px;
  height: 24px;
  transform: translateY(-50%);
  border-radius: 5px;
  background: #2f2c2d;
}
.calc-row .consent input:checked {
  background: var(--orange) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='white' d='M6.2 11.2 2.8 7.8l1.4-1.4 2 2 5.6-5.6 1.4 1.4z'/%3E%3C/svg%3E") center / 14px no-repeat;
}
.landing-hero {
  padding: 12px 0 48px;
  background: radial-gradient(ellipse 50% 60% at 70% 40%, #ffe8dc 0%, #fff 58%);
}
.landing-hero-grid {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: 32px;
  align-items: start;
}
a.case-card { color: inherit; }
.page-main .articles { grid-template-columns: repeat(3, minmax(0, 1fr)); }

@media (max-width: 699px) {
  .header-main { gap: 12px; }
  .header-right { gap: 8px; }
  .menu-top { gap: 14px; margin-left: 4px; }
  .nav-link { padding: 14px 8px; font-size: 14px; }
  .search-form { min-height: 60px; }
  .search-bar input { font-size: 16px; }
  .modal-box-kp, .modal-box-quiz { width: 100%; }
  .kp-head { padding: 28px 20px 16px; }
  .kp-head h2 { font-size: 22px; line-height: 28px; }
  .kp-body { grid-template-columns: 1fr; }
  .kp-form { padding: 20px; }
  .kp-art { display: none; }
  .modal-x-out { right: 12px; top: 12px; }
  .qz { padding: 20px 16px 0; }
  .qz-step, .qz-step.is-on { grid-template-columns: 1fr; }
  .qz-card { display: none; }
  .qz-step h2 { font-size: 20px; line-height: 26px; }
  .qz-nav { flex-wrap: wrap; }
}
@media (max-width: 699px) {
  .header-right .btn-ghost { display: none; }
}
@media (max-width: 699px) {
  .geo-phone, .person { display: none; }
}
@media (max-width: 699px) {
  .mega-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-template-rows: repeat(4, auto);
  }
  .adv-grid, .features { grid-template-columns: repeat(2, 1fr); }
  .page-layout { grid-template-columns: 1fr; }
  .sidebar { position: static; }
}
@media (max-width: 699px) {
  .burger { display: flex; }
  .hero-grid { grid-template-columns: 1fr 340px; }
  .hero-art { order: 0; min-height: 0 !important; height: auto; }
  .hero-art img {
    position: static;
    left: auto;
    bottom: auto;
    width: min(100%, 260px);
    margin: 12px auto 0;
  }
  .menu-top, .nav-services, .header-right .btn-ghost { display: none; }
  .header-right .geo-phone {
    display: grid;
    width: 40px;
    height: 40px;
    place-items: center;
    padding: 0;
    font-size: 0;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23111' d='M6.6 10.8c1.4 2.8 3.8 5.1 6.6 6.6l2.2-2.2c.3-.3.7-.4 1.1-.2 1.2.4 2.5.6 3.8.6.6 0 1 .4 1 1V20c0 .6-.4 1-1 1C10.7 21 3 13.3 3 4c0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.3.2 2.6.6 3.8.1.4 0 .8-.3 1.1L6.6 10.8z'/%3E%3C/svg%3E") center / 18px no-repeat;
  }
  .header-right .geo-phone small { display: none; }
  .stats, .services-grid, .reviews, .articles, .benefit-row, .benefit-3,
  .feat-4, .process-grid, .niche-grid, .text-reviews { grid-template-columns: 1fr 1fr; }
  .tariff-row { grid-template-columns: 1fr; }
  .footer-grid, .trust, .cta-7, .kp-split, .cases, .billion-grid, .landing-hero-grid { grid-template-columns: 1fr; }
  .ya-card { position: static; margin: 0 0 16px auto; }
  .carousel-arrow { display: none; }
  .sticky-cta { display: flex; }
  .cookie { bottom: 80px; }
  .quiz .field { grid-template-columns: 1fr; }
  .calc-row { grid-template-columns: 1fr; }
}
@media (max-width: 699px) {
  .hero-grid { grid-template-columns: 1fr; }
  .hero-art { display: block; }
  .stats, .services-grid, .reviews, .articles, .price-row, .adv-grid, .features, .benefit-row, .text-reviews { grid-template-columns: 1fr; }
  .text-review { border-right: 0; border-bottom: 1px solid var(--line); }
  .header-right .btn-orange {
    display: inline-flex;
    min-height: 40px;
    padding: 0 14px;
    font-size: 13px;
  }
  .header-right .soc,
  .header-right .person { display: none; }
  .hero-calc { display: none; }
  .checks li::before { background-color: #2b2b2b; }
  .hero { padding: 24px 0 0; }
  .hero-art img { width: min(100%, 300px); }
  .quiz { padding: 28px 20px 24px; }
  .quiz h2 { font-size: 22px; margin-bottom: 18px; }
  .quiz .pills { margin-bottom: 16px; gap: 8px; }
  .quiz .field { padding-top: 20px; margin-bottom: 16px; grid-template-columns: 1fr; }
  .header-right .geo-phone {
    background-color: #f2f2f2;
    border-radius: 50%;
  }
  .kp-row { grid-template-columns: 1fr; }
  .stat,
  .service-card,
  .calc-card,
  .feature-card,
  .case-visual,
  .review,
  .text-review,
  .adv-card,
  .kp-split,
  .footer-cta,
  .cta-7 { min-height: 0; }
  .service-card { padding: 28px 24px 170px; }
  .service-ico { width: 160px; }
  .billion + .section { margin-top: 32px; }
  .billion { padding-top: 48px; }
  .billion h2 { font-size: 30px; }
  .features { margin-top: 28px; margin-bottom: 0; }
  .section { padding: 40px 0; }
  .section:has(> .container > .cta-7) { padding-top: 40px; padding-bottom: 0; }
  #uslugi { padding-top: 40px; }
  .field { flex-direction: column; }
  .cta-7 > div { max-width: none; }
  .cta-7 img,
  .cta-7 .cta-visual img { position: static; width: min(100%, 280px); left: auto; top: auto; margin: 20px auto 0; }
  .stats { margin-top: 20px; gap: 12px; }
  .stat { padding: 28px 24px; }
  .stat b { margin-bottom: 16px; font-size: 32px; }
  .cases { gap: 28px; margin-top: 28px; }
  .case-visual .tag { min-height: 32px; padding: 0 12px; font-size: 12px; }
  .reviews,
  .text-reviews,
  .articles {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    gap: 12px;
    -webkit-overflow-scrolling: touch;
    grid-template-columns: none;
  }
  .review,
  .text-review,
  .article-card {
    flex: 0 0 82%;
    min-width: 82%;
    scroll-snap-align: start;
  }
  .review { aspect-ratio: 4 / 5; }
  .text-review { min-height: 0; padding: 24px 20px; }
  .article-img { height: 180px; }
  .kp-hand { position: static; width: 72%; max-width: 260px; margin: 16px auto 0; }
  .kp-left h2,
  .kp-left .checks,
  .kp-meta { max-width: none; }
  .kp-left { padding: 32px 24px 20px; }
  .kp-right { padding: 28px 20px; }
  .price-row {
    grid-template-columns: 56px minmax(0, 1fr);
    gap: 14px 16px;
    min-height: 0;
    padding: 18px 18px;
  }
  .price-row p { display: none; }
  .price-row .svc-price { grid-column: 2; text-align: left; white-space: normal; }
  .faq details summary { min-height: 64px; font-size: 15px; }
  .footer { padding-top: 40px; }
  .footer-grid { gap: 32px; }
  .footer-cta { padding: 24px 20px; }
}

@media (max-width: 699px) {
  .page-top { padding-top: 24px; }
  .page-top h1 { font-size: 30px; margin-bottom: 16px; }
  .page-layout, .page-plain { padding: 24px 0 56px; gap: 28px; }
  .benefit-row { gap: 12px; }
  .benefit-card { min-height: 0; padding: 24px; gap: 14px; }
  .benefit-card p { font-size: 18px; }
  .page-intro, .filter-label { font-size: 24px; margin-bottom: 24px; }
  .filter-row { margin-bottom: 28px; }
  .services-grid.inner-cards { grid-template-columns: 1fr; gap: 20px; margin-top: 28px; padding: 28px 0; }
  .inner-cards .service-card { min-height: 0; padding: 28px 24px 200px; }
  .inner-cards .service-ico { width: 180px; }
  .calc-band { padding: 28px 24px; margin-top: 28px; }
  .calc-band h2 { font-size: 20px; }
  .calc-row { grid-template-columns: 1fr; gap: 12px; }
  .calc-row .btn, .calc-row .consent { grid-row: auto; grid-column: auto; }
  .side-promo { max-width: 340px; }
}

/* The mockup is a fixed 1920 design. Between 700px and 1919px the page keeps
   that exact layout and is scaled down as a whole, so nothing reflows; --vwu
   pins vw-based sizes to the 1920 design width while the scale is active. */
@media (min-width: 700px) and (max-width: 1919px) {
  html {
    zoom: calc(100vw / 1920px);
  }
  :root {
    --vwu: 19.2px;
  }
}

/* ---- Landing hero (SEO export: 864px band, art bled right) ---- */
.hero-lp {
  position: relative;
  background: #f6f6f6;
  overflow: hidden;
}
.hero-lp::before {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  width: 1220px;
  height: 864px;
  background: url("/assets/img/seo-hero-art.jpg?v=ee69afc0") right bottom / 1220px 864px no-repeat;
}
.hero-lp-in {
  position: relative;
  min-height: 864px;
  padding: 40px 0 0;
}
.hero-lp .crumbs { gap: 14px; margin: 0; }
.hero-lp-badge {
  position: absolute;
  top: 80px;
  right: 0;
  width: 611px;
  height: 115px;
  margin: 0;
  background: url("/assets/img/seo-hero-badge.jpg?v=4f51ec9d") 0 0 / 611px 115px no-repeat;
}
.hero-lp-badge span {
  position: absolute;
  left: 120px;
  top: 50%;
  transform: translateY(-50%);
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
}
.hero-lp h1 {
  margin: 27px 0 0;
  font-size: 48px;
  line-height: 52px;
  font-weight: 800;
  letter-spacing: -0.02em;
}
.hero-lp h1 .accent { color: var(--orange); }
.hero-lp-sub {
  margin: 33px 0 0;
  max-width: none;
  font-size: 20px;
  font-weight: 700;
  line-height: 26px;
  color: var(--black);
}
.hero-lp-sub b { color: var(--orange); font-weight: 700; }
.hero-lp-checks {
  margin: 23px 0 0;
  padding: 0 0 0 17px;
  list-style: none;
}
.hero-lp-checks li {
  position: relative;
  min-height: 22px;
  margin: 0 0 14px;
  padding-left: 36px;
  font-size: 17px;
  font-weight: 500;
  line-height: 22px;
  color: var(--black);
}
.hero-lp-checks li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: var(--orange) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 11'%3E%3Cpath d='M1 5.5 5 9.5 13 1.5' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 12px 9px no-repeat;
}
.hero-lp-card {
  width: 571px;
  margin-top: 48px;
  padding: 34px 32px 32px;
  background: #fff;
  border-radius: 4px;
}
.hero-lp-card-h {
  margin: 0;
  max-width: none;
  font-size: 20px;
  font-weight: 800;
  line-height: 26px;
}
.hero-lp-arrows {
  margin: 25px 0 0;
  padding: 0 0 0 6px;
  list-style: none;
}
.hero-lp-arrows li {
  position: relative;
  margin: 0 0 16px;
  padding-left: 28px;
  font-size: 16px;
  font-weight: 500;
  line-height: 20px;
  color: var(--black);
}
.hero-lp-arrows li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 4px;
  width: 12px;
  height: 11px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 11'%3E%3Cpath d='M1 5.5h9m-3.5-4 4 4-4 4' fill='none' stroke='%23e94e1b' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 12px 11px no-repeat;
}
.hero-lp-card .btn {
  min-height: 48px;
  margin-top: 9px;
  padding: 0 22px;
  font-size: 16px;
  font-weight: 700;
}

/* ---- Landing hero (context export: same band, denser copy) ---- */
.hero-ctx::before {
  width: 1270px;
  height: 668px;
  background: url("/assets/img/ctx-hero-art.jpg?v=8d4bc8e4") right bottom / 1270px 668px no-repeat;
}
.hero-ctx .hero-lp-badge {
  top: 80px;
  right: -2px;
  width: 652px;
  height: 116px;
  background-image: url("/assets/img/ctx-hero-badge.jpg?v=5f60a90b");
  background-size: 652px 116px;
}
.hero-ctx .hero-lp-badge span { left: 160px; font-size: 20px; line-height: 29px; }
.ctx-label {
  margin: 27px 0 0;
  max-width: none;
  color: var(--orange);
  font-size: 16px;
  font-weight: 800;
  line-height: 20px;
  text-transform: uppercase;
}
.hero-ctx h1 {
  margin: 11px 0 0;
  font-size: 32px;
  line-height: 40px;
}
.ctx-metrics-h {
  margin: 31px 0 0;
  max-width: none;
  font-size: 20px;
  font-weight: 800;
  line-height: 26px;
  letter-spacing: -0.02em;
}
.ctx-pills {
  display: flex;
  gap: 11px;
  margin: 9px 0 0;
  padding: 0;
  list-style: none;
}
.ctx-pills li {
  display: flex;
  align-items: center;
  gap: 9px;
  height: 32px;
  padding: 0 12px;
  border-radius: 999px;
  background: #fff;
  font-size: 16px;
  font-weight: 500;
}
.ctx-pills i {
  flex: 0 0 24px;
  height: 24px;
  background: url("/assets/img/ctx-pills.png?v=c04d873e") no-repeat;
  background-position: calc(var(--i) * -24px) 0;
}
.hero-ctx .hero-lp-checks { margin: 25px 0 0; }
.hero-ctx .hero-lp-checks li { margin-bottom: 14px; font-size: 16px; }
.hero-leaf .ctx-label {
  text-transform: none;
  max-width: 54ch;
}
.ctx-cta-h {
  margin: 36px 0 0;
  max-width: none;
  font-size: 20px;
  font-weight: 800;
  line-height: 26px;
  letter-spacing: -0.02em;
}
.btn.ctx-cta {
  width: 331px;
  min-height: 48px;
  margin-top: 23px;
  font-size: 15px;
  font-weight: 700;
}
.ctx-hero-card {
  position: absolute;
  right: 0;
  top: 397px;
  width: 571px;
  min-height: 268px;
  margin: 0;
  padding: 36px 0 0 38px;
  list-style: none;
  background: #fff;
}
.ctx-hero-card li {
  position: relative;
  margin: 0 0 20px;
  padding-left: 21px;
  font-size: 16px;
  font-weight: 500;
  line-height: 16px;
}
.ctx-hero-card li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 3px;
  width: 12px;
  height: 11px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 11'%3E%3Cpath d='M1 5.5h9m-3.5-4 4 4-4 4' fill='none' stroke='%23e94e1b' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 12px 11px no-repeat;
}

/* ---- Context landing: method cards, calculator, dark band, promo ---- */
.section.lp-cta7:has(> .container > .cta-7) { padding-top: 152px; }
.lp-cta7 .cta-7 { min-height: 465px; }
.lp-cta7 .cta-7 img { left: 770px; top: -156px; }
.lp-cta7 .cta-7 .lead { margin: 16px 0 22px; font-size: 16.5px; }
.lp-cta7 .cta-7 .btn { gap: 11px; min-height: 48px; padding: 0 24px; }
.lp-cta7 .cta-7 .btn::before {
  content: "";
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M5.4 2.2 6.9 5.4 5.4 6.9c.8 1.8 2 3 3.7 3.7l1.5-1.5 3.2 1.5v2.7c0 .5-.4 1-1 .9C6.7 13.5 2.4 9.2 1.9 3.2c0-.5.4-1 .9-1z' fill='%23fff'/%3E%3C/svg%3E") center / contain no-repeat;
}
.lp-cta7 .messengers-label { margin: 40px 0 0; font-size: 16.5px; }
.lp-cta7 .messengers { gap: 10px; margin-top: 20px; }
.lp-cta7 .messengers .pill { min-width: 163px; min-height: 48px; }

.lp-cta7 .stats { margin-bottom: -168px; }
.lp-cta7 .stat { min-height: 278px; padding: 44px 42px 41px; }
.lp-cta7 .stat b { margin-bottom: 65px; }
.lp-cta7 .stat p { line-height: 1.5; }

.ctx-method { padding: 320px 0 150px; }
.ctx-method h2 { font-size: 39.4px; }
.ctx-method-sub {
  margin: 24px 0 0;
  max-width: none;
  color: var(--black);
  font-size: 19.6px;
  font-weight: 700;
  line-height: 27px;
}
.ctx-cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 33px 32px;
  margin-top: 54px;
}
.ctx-card {
  min-height: 294px;
  padding: 51px 41px 40px;
  background: #f6f6f6;
  border-radius: 4px;
}
.ctx-card i {
  display: block;
  width: 96px;
  height: 96px;
  background: url("/assets/img/ctx-cards.png?v=52adeb51") no-repeat;
  background-position: calc(var(--i) * -96px) 0;
}
.ctx-card h3 {
  margin: 16px 0 0;
  font-size: 20px;
  font-weight: 800;
  line-height: 29px;
  letter-spacing: -0.02em;
}
.ctx-card p {
  margin: 14px 0 0;
  max-width: none;
  color: var(--muted);
  font-size: 16px;
  line-height: 24px;
}

.ctx-calc { background: #f6f6f6; overflow: hidden; }
.ctx-calc-in { position: relative; min-height: 896px; padding: 150px 0 0; }
.ctx-calc-in h2 {
  margin: 0;
  color: var(--orange);
  font-size: 39px;
  font-weight: 800;
  line-height: 48px;
  letter-spacing: -0.02em;
}
.ctx-calc-list {
  position: relative;
  z-index: 1;
  width: 645px;
  margin: 54px 0 0;
  padding: 0;
  list-style: none;
}
.ctx-calc-list li {
  position: relative;
  padding: 0 0 24px 64px;
  border-bottom: 1px solid #cfcfcf;
  font-size: 31px;
  font-weight: 800;
  line-height: 40px;
}
.ctx-calc-list li + li { padding-top: 24px; }
.ctx-calc-list li:last-child { border-bottom: 0; }
.ctx-calc-list li::before {
  content: "";
  position: absolute;
  left: 6px;
  top: 9px;
  width: 28px;
  height: 24px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 24'%3E%3Cpath d='M1 12h23m-9-10 10 10-10 10' fill='none' stroke='%23e94e1b' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 28px 24px no-repeat;
}
.ctx-calc-list li + li::before { top: 33px; }
.ctx-calc-art { position: absolute; left: 680px; top: 183px; display: block; }

.ctx-form {
  position: absolute;
  right: 0;
  top: 150px;
  z-index: 1;
  width: 545px;
  padding: 48px;
  background: #fff;
  border-radius: 4px;
}
.ctx-form-h {
  margin: 0;
  max-width: none;
  font-size: 24px;
  font-weight: 800;
  line-height: 32px;
}
.ctx-form-h .accent { color: var(--orange); }
.ctx-form-sub {
  margin: 14px 0 0;
  max-width: none;
  color: var(--muted);
  font-size: 16.4px;
  line-height: 27px;
}
.ctx-form .field-input {
  width: 100%;
  height: 48px;
  margin-top: 17px;
  padding: 0 22px 0 52px;
  border: 0;
  border-radius: 999px;
  background: #f6f6f6 no-repeat 22px center;
  background-size: 18px;
  font-size: 16.3px;
}
.ctx-form .field-site {
  margin-top: 17px;
  padding-left: 22px;
  background-image: none;
}
.ctx-form .field-mail {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 14'%3E%3Crect x='.6' y='.6' width='16.8' height='12.8' rx='2' fill='none' stroke='%239a9a9a'/%3E%3Cpath d='m1.5 2 7.5 5.5L16.5 2' fill='none' stroke='%239a9a9a'/%3E%3C/svg%3E");
}
.ctx-form .field-tel {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M6.2 2.5 7.8 6 6.2 7.6c.9 2 2.2 3.3 4.2 4.2L12 10.2l3.5 1.6v3c0 .6-.5 1.1-1.1 1C7.6 15.2 2.8 10.4 2.3 3.6c0-.6.4-1.1 1-1.1z' fill='none' stroke='%239a9a9a' stroke-width='1.3' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.ctx-form .btn { width: 100%; min-height: 48px; margin-top: 17px; font-size: 15px; }
.ctx-form .consent {
  position: relative;
  display: block;
  margin: 23px 0 0;
  padding-left: 40px;
  color: var(--muted);
  font-size: 14.2px;
  line-height: 20px;
}
.ctx-form .consent input {
  appearance: none;
  position: absolute;
  left: 0;
  top: 0;
  width: 20px;
  height: 20px;
  border-radius: 4px;
  background: #eaeaea;
}
.ctx-form .consent a { color: inherit; text-decoration: none; }

.ctx-why {
  background: #191617 url("/assets/img/ctx-dark.jpg?v=37c97c37") center bottom / 1920px 952px no-repeat;
  overflow: hidden;
}
.ctx-why-in { position: relative; min-height: 952px; padding: 150px 0 0; }
.ctx-why .label-orange { margin: 0 0 9px; font-size: 14.4px; }
.ctx-why-in h2 {
  margin: 0;
  width: 700px;
  color: #fff;
  font-size: 40px;
  font-weight: 800;
  line-height: 48px;
  letter-spacing: -0.02em;
}
.ctx-why-h {
  width: 664px;
  margin: 45px 0 0;
  padding-top: 49px;
  border-top: 1px solid rgba(255, 255, 255, 0.25);
  color: #fff;
  font-size: 19.6px;
  font-weight: 800;
  line-height: 26px;
}
.ctx-why-list {
  margin: 30px 0 0;
  padding: 0;
  list-style: none;
  counter-reset: why;
}
.ctx-why-list li {
  position: relative;
  width: 700px;
  margin: 0 0 10px;
  padding-left: 42px;
  color: #fff;
  font-size: 16px;
  font-weight: 500;
  line-height: 26px;
  counter-increment: why;
}
.ctx-why-list li::before {
  content: counter(why);
  position: absolute;
  left: 8px;
  top: 3px;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: var(--orange);
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  line-height: 22px;
  text-align: center;
}
.ctx-why-note {
  position: absolute;
  left: 1069px;
  top: 152px;
  margin: 0;
  max-width: none;
  color: #fff;
  font-size: 20px;
  font-weight: 700;
  line-height: 26px;
}
.ctx-why-note .accent { color: var(--orange); }
.btn.ctx-why-btn {
  position: absolute;
  right: 0;
  top: 150px;
  width: 190px;
  min-height: 48px;
  gap: 10px;
  font-size: 15px;
}

.ctx-promo-sec { padding: 150px 0 0; }
.ctx-promo-in { position: relative; min-height: 519px; }
.ctx-promo {
  width: 1155px;
  min-height: 519px;
  padding: 56px 59px 0 57px;
  border-radius: 4px;
  background: url("/assets/img/ctx-promo.jpg?v=b7d76236") center / cover no-repeat;
}
.ctx-promo h2 {
  margin: 0;
  color: #fff;
  font-size: 40px;
  font-weight: 800;
  line-height: 50px;
  letter-spacing: -0.02em;
}
.ctx-promo-checks {
  margin: 30px 0 0;
  padding: 0;
  list-style: none;
}
.ctx-promo-checks li {
  position: relative;
  margin: 0 0 16px;
  padding-left: 51px;
  max-width: 490px;
  color: #fff;
  font-size: 16px;
  font-weight: 500;
  line-height: 24px;
}
.ctx-promo-checks li::before {
  content: "";
  position: absolute;
  left: 16px;
  top: 1px;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 11'%3E%3Cpath d='M1 5.5 5 9.5 13 1.5' fill='none' stroke='%23e94e1b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 11px 8px no-repeat;
}
.ctx-promo-label {
  margin: 31px 0 0;
  color: #fff;
  font-size: 19.4px;
  font-weight: 800;
}
.ctx-promo .messengers { gap: 24px; margin: 18px 0 0; }
.ctx-promo .messengers .pill { min-width: 148px; min-height: 48px; }
.ctx-promo-in .ctx-form {
  top: 0;
  border: 1px solid #eaeaea;
}

/* ---- Landing sections (SEO export) ---- */
.lp-section { padding: 150px 0 0; }
.lp-h2 {
  margin: 0;
  max-width: none;
  font-size: 40px;
  font-weight: 800;
  line-height: 48px;
  letter-spacing: -0.02em;
}
.lp-cards {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 32px;
  margin-top: 55px;
}
.lp-card {
  min-height: 320px;
  padding: 40px 40px 36px;
  border: 1px solid #eaeaea;
  border-radius: 4px;
  background: #fff;
}
.lp-card img { display: block; width: 100px; height: 96px; }
.lp-card h3 {
  margin: 29px 0 0;
  font-size: 20px;
  font-weight: 800;
  line-height: 26px;
}
.lp-card p {
  margin: 15px 0 0;
  max-width: none;
  color: var(--muted);
  font-size: 16px;
  line-height: 24px;
}

/* ---- Audit band (SEO export, 825px) ---- */
.audit-band { background: #f6f6f6; }
.audit-in {
  position: relative;
  min-height: 825px;
  padding: 150px 0 0;
}
.audit-copy { position: relative; z-index: 1; width: 780px; }
.audit-band h2 {
  margin: 0;
  font-size: 40px;
  line-height: 48px;
  font-weight: 800;
  letter-spacing: -0.02em;
}
.audit-band h2 .accent { color: var(--orange); }
.audit-sub {
  margin: 33px 0 0;
  max-width: none;
  font-size: 20px;
  font-weight: 700;
  line-height: 26px;
  color: var(--black);
}
.audit-lead {
  margin: 33px 0 0;
  font-size: 20px;
  font-weight: 800;
  line-height: 26px;
}
.lp-checks { margin: 23px 0 0; padding: 0 0 0 17px; list-style: none; }
.lp-checks li {
  position: relative;
  min-height: 22px;
  margin: 0 0 14px;
  padding-left: 36px;
  font-size: 16px;
  font-weight: 500;
  line-height: 22px;
}
.lp-checks li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: var(--orange) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 11'%3E%3Cpath d='M1 5.5 5 9.5 13 1.5' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 12px 9px no-repeat;
}
.audit-badges { margin: 49px 0 0; padding: 0; list-style: none; }
.audit-badges li {
  display: flex;
  align-items: center;
  gap: 17px;
  margin: 0 0 16px;
  font-size: 17px;
  font-weight: 700;
}
.audit-badges img { flex: 0 0 51px; }
.audit-art {
  position: absolute;
  left: 790px;
  top: 103px;
  display: block;
}
.audit-form {
  position: absolute;
  right: 0;
  top: 150px;
  z-index: 1;
  width: 545px;
  padding: 48px;
  background: #fff;
  border-radius: 4px;
}
.audit-form-h {
  margin: 0;
  max-width: none;
  font-size: 24px;
  font-weight: 800;
  line-height: 32px;
}
.audit-form-h .accent { color: var(--orange); }
.audit-form .field-input {
  width: 100%;
  height: 48px;
  margin-top: 16px;
  padding: 0 22px 0 52px;
  border: 1px solid #eaeaea;
  border-radius: 999px;
  background: #fff no-repeat 22px center;
  background-size: 18px;
  font-size: 15px;
}
.audit-form .field-site { margin-top: 24px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Ccircle cx='9' cy='9' r='8' fill='none' stroke='%239a9a9a'/%3E%3Cpath d='M1 9h16M9 1c4 4.5 4 11.5 0 16-4-4.5-4-11.5 0-16' fill='none' stroke='%239a9a9a'/%3E%3C/svg%3E");
}
.audit-form .field-tel {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M6.2 2.5 7.8 6 6.2 7.6c.9 2 2.2 3.3 4.2 4.2L12 10.2l3.5 1.6v3c0 .6-.5 1.1-1.1 1C7.6 15.2 2.8 10.4 2.3 3.6c0-.6.4-1.1 1-1.1z' fill='none' stroke='%239a9a9a' stroke-width='1.3' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.audit-form .btn {
  width: 100%;
  min-height: 48px;
  margin-top: 17px;
  font-size: 15px;
}
.audit-form .consent {
  max-width: 355px;
  margin: 28px 0 0;
  padding-left: 32px;
  color: var(--muted);
  font-size: 13px;
  line-height: 20px;
}
.audit-form .consent input {
  appearance: none;
  position: absolute;
  left: 0;
  top: 0;
  width: 20px;
  height: 20px;
  border-radius: 4px;
  background: #f1f1f1;
}
.audit-form .consent a { color: inherit; text-decoration: none; }
.lp-cards--muted .lp-card {
  display: flex;
  flex-direction: column;
  min-height: 300px;
  padding: 32px 32px 0;
  border: 0;
  background: #f6f6f6;
  overflow: hidden;
}
.lp-cards--muted .lp-card p {
  margin: 0;
  max-width: none;
  color: var(--black);
  font-size: 20px;
  font-weight: 700;
  line-height: 26px;
  letter-spacing: -0.015em;
}
.lp-cards--muted .lp-card img {
  width: calc(100% + 64px);
  height: auto;
  margin: auto -32px 0;
}

/* ---- Full immersion band (SEO export, 855px) ---- */
.imm-band { margin-top: 146px; background: #f6f6f6; overflow: hidden; }
.imm-in {
  position: relative;
  min-height: 855px;
  padding: 230px 0 0;
}
.imm-in h2 { margin: 0; font-size: 40px; line-height: 48px; }
.imm-list {
  position: relative;
  z-index: 1;
  margin: 53px 0 0;
  padding: 0;
  list-style: none;
  counter-reset: imm;
}
.imm-list li {
  position: relative;
  margin: 0 0 26px;
  padding-left: 45px;
  color: var(--black);
  font-size: 20px;
  font-weight: 700;
  line-height: 26px;
  counter-increment: imm;
}
.imm-list li::before {
  content: counter(imm);
  position: absolute;
  left: 0;
  top: 0;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--orange);
  color: #fff;
  font-size: 15px;
  font-weight: 700;
  line-height: 32px;
  text-align: center;
}
.imm-art { position: absolute; left: 804px; top: 157px; display: block; }

/* ---- Personal manager band (SEO export, 844px) ---- */
.mgr-band {
  background: #191617 url("/assets/img/seo-mgr-bg.jpg?v=0a13d6e9") center bottom / 1920px 844px no-repeat;
  overflow: hidden;
}
.mgr-in { position: relative; min-height: 844px; padding: 192px 0 0; }
.mgr-head { display: flex; align-items: center; gap: 35px; }
.mgr-ava { position: relative; flex: 0 0 72px; }
.mgr-ava img { display: block; }
.mgr-ava::after {
  content: "";
  position: absolute;
  right: 2px;
  bottom: 4px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #35c759;
}
.mgr-in h2 {
  margin: 0;
  color: #fff;
  font-size: 40px;
  line-height: 56px;
}
.mgr-in h2 .accent { color: var(--orange); }
.mgr-checks {
  position: relative;
  margin: 33px 0 0;
  padding: 49px 0 0;
  list-style: none;
  border-top: 1px solid rgba(255, 255, 255, 0.18);
  width: 664px;
}
.mgr-checks li {
  position: relative;
  margin: 0 0 14px;
  padding-left: 37px;
  min-height: 22px;
  color: #fff;
  font-size: 16px;
  font-weight: 500;
  line-height: 22px;
}
.mgr-checks li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 11'%3E%3Cpath d='M1 5.5 5 9.5 13 1.5' fill='none' stroke='%23191617' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 12px 9px no-repeat;
}
.mgr-actions { display: flex; margin-top: 50px; }
.mgr-actions .btn { min-height: 48px; font-size: 17px; }
.mgr-call { width: 213px; padding: 0; gap: 12px; }
.mgr-call::before {
  content: "";
  width: 18px;
  height: 18px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M6.2 2.5 7.8 6 6.2 7.6c.9 2 2.2 3.3 4.2 4.2L12 10.2l3.5 1.6v3c0 .6-.5 1.1-1.1 1C7.6 15.2 2.8 10.4 2.3 3.6c0-.6.4-1.1 1-1.1z' fill='%23fff'/%3E%3C/svg%3E") center / 18px no-repeat;
}
.btn-msg {
  width: 164px;
  padding: 0;
  gap: 10px;
  background: #fff;
  color: var(--black);
  font-weight: 700;
}
.btn-msg::before { content: ""; width: 24px; height: 24px; background: center / 24px no-repeat; }
.mgr-tg { position: relative; margin-left: 49px; }
.mgr-tg::after {
  content: "";
  position: absolute;
  left: -25px;
  top: 8px;
  width: 1px;
  height: 32px;
  background: #484444;
}
.mgr-tg::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='12' fill='%2329a9eb'/%3E%3Cpath d='M5.5 12.2 17 7.4c.6-.2 1.1.2 .9.9l-2 9.3c-.1.6-.5.7-1 .4l-2.8-2-1.4 1.3c-.2.2-.4.3-.7.3l.3-3 5.2-4.7c.2-.2 0-.3-.3-.2l-6.4 4-2.8-.9c-.6-.2-.6-.6.1-.9z' fill='%23fff'/%3E%3C/svg%3E"); }
.mgr-wa { margin-left: 8px; }
.mgr-wa::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='12' fill='%2325d366'/%3E%3Cpath d='M12 5.6a6.3 6.3 0 0 0-5.4 9.6l-.9 3.2 3.3-.9A6.3 6.3 0 1 0 12 5.6zm3.6 8.8c-.2.4-.9.8-1.2.8-.3 0-.7.1-1.2-.1a9 9 0 0 1-3.6-3.2c-.3-.4-.7-1.1-.7-2s.5-1.3.7-1.5c.2-.2.4-.2.5-.2h.4c.1 0 .3 0 .4.4l.6 1.4c0 .1.1.2 0 .4l-.3.4-.2.2c-.1.1-.2.2 0 .4a6 6 0 0 0 2.6 2.2c.2.1.3.1.4 0l.6-.7c.1-.2.2-.1.4 0l1.3.6c.2.1.3.2.4.2v.9z' fill='%23fff'/%3E%3C/svg%3E"); }
.mgr-phones { position: absolute; left: 847px; top: 148px; display: block; }

/* ---- «Ограниченное количество проектов» cards ---- */
.limits { padding: 150px 0 0; }
.limits-in { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; }
.limit-card {
  position: relative;
  min-height: 324px;
  padding: 47px 48px 0;
  background: #f6f6f6;
  border-radius: 4px;
  overflow: hidden;
}
.limit-card h3 {
  position: relative;
  z-index: 1;
  margin: 0;
  font-size: 24px;
  font-weight: 800;
  line-height: 32px;
  letter-spacing: -0.02em;
}
.limit-card h3 .accent { color: var(--orange); }
.arrow-list {
  position: relative;
  z-index: 1;
  margin: 37px 0 0;
  padding: 0 0 0 6px;
  list-style: none;
}
.arrow-list li {
  position: relative;
  margin: 0 0 20px;
  padding-left: 23px;
  font-size: 16px;
  font-weight: 500;
  line-height: 16px;
}
.arrow-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 3px;
  width: 12px;
  height: 11px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 11'%3E%3Cpath d='M1 5.5h9m-3.5-4 4 4-4 4' fill='none' stroke='%23e94e1b' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 12px 11px no-repeat;
}
.limit-ball { position: absolute; right: 0; top: 68px; display: block; }

/* ---- Niches ---- */
.niches { padding: 151px 0 147px; }
.niches-in { display: flex; justify-content: space-between; margin-top: 58px; }
.niche-h { margin: 0; font-size: 24px; font-weight: 800; line-height: 26px; letter-spacing: -0.02em; }
.niche-h2 { margin-top: 36px; }
.niche-grid {
  display: grid;
  grid-template-columns: repeat(4, 291px);
  gap: 12px;
  margin: 27px 0 0;
  padding: 0;
  list-style: none;
}
.niche-grid li {
  display: flex;
  align-items: center;
  gap: 14px;
  min-height: 56px;
  padding: 0 17px;
  border-radius: 999px;
  background: #f6f6f6;
  font-size: 15px;
  font-weight: 500;
  letter-spacing: -0.02em;
}
.niche-grid i {
  flex: 0 0 38px;
  height: 38px;
  background: url("/assets/img/seo-niches.png?v=bb85bec6") no-repeat;
  background-position: calc(var(--i) * -38px) 0;
}
.niche-promo {
  position: relative;
  flex: 0 0 430px;
  height: 528px;
  border-radius: 4px;
  background: url("/assets/img/seo-promo.jpg?v=17fe0ac8") center / cover no-repeat;
  overflow: hidden;
}
.niche-promo-h {
  margin: 0;
  padding: 34px 0 0 33px;
  color: #fff;
  font-size: 20px;
  font-weight: 800;
  line-height: 32px;
}
.niche-promo-btn {
  position: absolute;
  left: 32px;
  top: 448px;
  width: 366px;
  min-height: 48px;
  background: #fff;
  color: var(--orange);
  font-size: 15px;
}

/* ---- «Усиливаем SEO-продвижение» band (884px) ---- */
.boost { background: #f6f6f6; overflow: hidden; }
.boost-in { position: relative; min-height: 884px; padding: 150px 0 0; }
.boost-in h2 {
  margin: 0;
  font-size: 40px;
  line-height: 48px;
  text-align: center;
}
.boost-in h2 .accent { color: var(--orange); }
.boost-list {
  position: relative;
  z-index: 1;
  margin: 0;
  padding: 0;
  list-style: none;
  counter-reset: boost;
}
.boost-list li {
  display: flex;
  align-items: center;
  gap: 25px;
  min-height: 88px;
  margin-bottom: 12px;
  padding: 26px 24px;
  background: #fff;
  border-radius: 4px;
  font-size: 20px;
  font-weight: 700;
  line-height: 24px;
  counter-increment: boost;
}
.boost-list li::before {
  content: counter(boost);
  flex: 0 0 40px;
  height: 40px;
  border-radius: 50%;
  background: var(--orange);
  color: #fff;
  font-size: 17px;
  font-weight: 700;
  line-height: 40px;
  text-align: center;
}
.boost-left { position: absolute; left: 0; top: 346px; width: 500px; }
.boost-right { position: absolute; right: 0; top: 346px; width: 680px; counter-reset: boost 4; }
.boost-art { position: absolute; left: 510px; top: 262px; display: block; }

/* ---- Shared tail of the landing exports (advantages … articles) ---- */
.lp-adv { padding: 152px 0 150px; }
.lp-adv .center-head { margin-bottom: 56px; }
.lp-adv .adv-grid { gap: 33px; }
.lp-adv .adv-card { min-height: 300px; padding: 30px 18px 0; border-radius: 4px; }
.lp-adv .adv-card img { height: 162px; }
.lp-prices { padding: 150px 0 150px; }
.lp-prices h2 { margin-bottom: 56px; }
.lp-reviews { padding: 141px 0 0; }
.lp-reviews h2 { margin-bottom: 57px; }
.lp-faq { padding: 150px 0 0; }
.lp-faq h2 { margin-bottom: 26px; }
.lp-faq .label-orange { margin-bottom: 9px; }
.lp-faq details:last-of-type { border-bottom: 0; }
.lp-faq details summary::after { flex-basis: 48px; width: 48px; height: 48px; line-height: 46px; }
.lp-articles { padding: 112px 0 150px; }
body:has(.hero-ob) .lp-articles { padding-bottom: 41px; }
body:has(.about-intro) .page-layout { padding-bottom: 324px; }
.lp-articles h2 { margin-bottom: 59px; }
.lp-reviews .text-reviews {
  gap: 32px;
  border: 0;
  border-radius: 0;
  overflow: visible;
}
.lp-reviews .text-review {
  gap: 0;
  min-height: 432px;
  padding: 50px 48px 48px;
  border: 1px solid var(--line);
  border-radius: 4px;
}
.lp-reviews .text-review .who { gap: 20px; font-size: 20px; }
.lp-reviews .text-review .who img { width: 60px; height: 60px; }
.lp-reviews .text-review .who small { font-size: 14px; font-weight: 500; }
.lp-reviews .text-review p.stars { margin: 15px 0 0; font-size: 20.5px; line-height: 1; letter-spacing: 4px; color: #e59d24; }
.lp-reviews .text-review p { margin: 14px 0 0; font-size: 16px; line-height: 24px; color: var(--black); }
.lp-reviews .review-link {
  margin-top: auto;
  min-height: 48px;
  padding: 0 24px;
  font-size: 16px;
}
.lp-reviews .ya-card {
  top: -159px;
  right: 201px;
  width: 159px;
  padding: 22px 12px 44px;
}
.lp-reviews .ya-card b { margin: 6px 0 6px; font-size: 16px; }
.lp-reviews .ya-pin { display: block; width: 24px; height: 36px; margin: 0 auto; }
.lp-reviews .ya-card span { font-size: 33px; }

/* ================= Franchise landing (franchises-1920) ================= */
.hero-fr::before {
  width: 1750px;
  height: 599px;
  background: url("/assets/img/fr-hero-art.jpg?v=da60ee43") right bottom / 1750px 599px no-repeat;
}
.hero-fr .hero-lp-badge {
  top: 55px;
  right: 0;
  width: 630px;
  height: 115px;
  background-image: url("/assets/img/fr-hero-badge.jpg?v=6b70beba");
  background-size: 630px 115px;
}
.hero-fr .hero-lp-badge span { left: 140px; font-size: 17px; line-height: 24px; }
.hero-fr h1 { margin-top: 32px; font-size: 44px; line-height: 52px; }
.hero-fr .hero-lp-checks { margin: 27px 0 0; }
.hero-fr .hero-lp-checks li { margin-bottom: 14px; font-size: 16px; }
.fr-hero-h {
  margin: 39px 0 0;
  font-size: 17px;
  font-weight: 800;
  line-height: 22px;
  color: var(--black);
}
.fr-hero-note { margin: 18px 0 0; font-size: 15px; line-height: 20px; color: #8a8a8a; }
.fr-hero-cta { min-height: 48px; margin-top: 27px; padding: 0 24px; font-size: 15px; }

.fr-cases { padding: 148px 0 0; }
.fr-cases .label-orange { margin: 0 0 10px; }
.fr-case-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 31px;
  margin-top: 57px;
}
.fr-case img { display: block; width: 100%; height: auto; border-radius: 2px; }
.fr-case dl {
  display: grid;
  grid-template-columns: 146px minmax(0, 1fr);
  margin: 18px 0 0;
}
.fr-case dt {
  margin: 0 0 7px;
  font-size: 14px;
  line-height: 25px;
  color: #9a9a9a;
}
.fr-case dd {
  margin: 0 0 7px;
  font-size: 14px;
  line-height: 25px;
  color: var(--black);
}
.fr-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  width: 842px;
  min-height: 97px;
  margin: 46px auto 0;
  padding: 0 22px 0 37px;
  border-radius: 49px;
  background: linear-gradient(90deg, #f6801f 0%, #ea4e1b 52%, #f4685a 100%);
}
.fr-bar p {
  flex: none;
  margin: 0;
  color: #fff;
  font-size: 17px;
  font-weight: 800;
  line-height: 24px;
}
.fr-bar-links { display: flex; gap: 14px; }
.fr-bar .pill,
.ob-guarantee-links .pill {
  min-height: 53px;
  padding: 0 32px 0 26px;
  gap: 12px;
  background: #fff;
  color: var(--black);
  font-size: 17px;
  font-weight: 600;
}
.fr-bar .pill::before,
.ob-guarantee-links .pill::before {
  content: "";
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: #2aabee url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M18.9 6.2 16.6 17c-.2.8-.6 1-1.3.6l-3.5-2.6-1.7 1.6c-.2.2-.4.4-.7.4l.3-3.6 6.5-5.9c.3-.2-.1-.4-.4-.2l-8 5-3.5-1.1c-.7-.2-.8-.7.2-1.1L17.9 5c.6-.2 1.2.2 1 1.2Z' fill='%23fff'/%3E%3C/svg%3E") center / 20px 20px no-repeat;
}
.fr-bar .pill[href*="wa.me"]::before,
.ob-guarantee-links .pill[href*="wa.me"]::before {
  background-color: #25d366;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3a9 9 0 0 0-7.7 13.6L3 21l4.6-1.2A9 9 0 1 0 12 3Zm5 12.4c-.2.6-1.2 1.2-1.7 1.2-.4 0-1 .1-3-.8-2.5-1-4.1-3.6-4.2-3.8-.1-.2-1-1.3-1-2.5s.6-1.8.9-2c.2-.3.5-.3.6-.3h.5c.2 0 .4 0 .6.5l.8 2c.1.1.1.3 0 .5l-.3.4-.3.3c-.1.1-.3.3-.1.6.1.3.6 1.1 1.3 1.7.9.8 1.6 1 1.9 1.2.2.1.4.1.5-.1l.7-.9c.2-.2.3-.2.6-.1l1.9.9c.3.1.4.2.5.3v1.2Z' fill='%23fff'/%3E%3C/svg%3E");
}

.fr-niche { padding: 281px 0 109px; }
.fr-niche-in {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 825px;
  align-items: start;
  gap: 40px;
}
.fr-niche .label-orange { margin: 0 0 22px; }
.fr-niche-sub { margin: 40px 0 0; font-size: 17px; font-weight: 700; line-height: 22px; color: var(--black); }
.fr-niche-cta { min-height: 49px; margin-top: 42px; padding: 0 26px; font-size: 15px; }
.fr-niche-art { display: block; width: 825px; height: auto; margin: -97px -5px 0 0; }

.fr-quiz {
  position: relative;
  padding: 159px 0 162px;
  background: #f6f6f6;
}
.fr-quiz::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 700px;
  background: url("/assets/img/fr-quiz-bg.jpg?v=8b73c599") center bottom / 1920px 700px no-repeat;
}
.fr-quiz-in { position: relative; }
.fr-quiz h2 {
  margin: 0;
  max-width: none;
  font-size: 40px;
  font-weight: 800;
  line-height: 48px;
  letter-spacing: -0.02em;
  text-align: center;
}
.fr-quiz-card {
  width: 834px;
  margin: 47px auto 0;
  padding: 54px 48px 36px;
  background: #fff;
  border-radius: 2px;
}
.fr-quiz-h { margin: 0; font-size: 22px; font-weight: 800; line-height: 28px; text-align: center; }
.fr-quiz-sub { margin: 12px 0 0; font-size: 15px; line-height: 20px; color: #9a9a9a; text-align: center; }
.fr-quiz-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-auto-rows: 47px;
  align-items: center;
  gap: 13px 42px;
  margin: 41px 0 0;
}
.fr-radio { display: flex; align-items: center; gap: 16px; cursor: pointer; }
.fr-radio input {
  appearance: none;
  flex: none;
  width: 25px;
  height: 25px;
  border: 1px solid #dcdcdc;
  border-radius: 5px;
  background: #f6f6f6;
}
.fr-radio input:checked {
  border-color: var(--orange);
  background: var(--orange) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 11'%3E%3Cpath d='M1 5.5 5 9.5 13 1.5' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 13px 10px no-repeat;
}
.fr-radio span { font-size: 16px; line-height: 22px; color: var(--black); }
.fr-quiz-other { grid-column: 2; }
.fr-quiz-other .field-input {
  width: 100%;
  height: 47px;
  padding: 0 18px;
  border: 0;
  border-radius: 4px;
  background: #f6f6f6;
  font-size: 15px;
}
.fr-quiz-card > .btn {
  display: flex;
  min-height: 49px;
  margin: 32px auto 0;
  padding: 0 26px;
  font-size: 15px;
}

.fr-pack { padding: 161px 0 150px; }
.fr-pack-sub { margin: 31px 0 0; font-size: 17px; font-weight: 700; line-height: 22px; color: var(--black); }
.fr-pack-sub b { color: var(--orange); }
.fr-pack-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 33px;
  margin-top: 42px;
}
.fr-pack-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 449px;
  padding: 51px 32px 0;
  border: 1px solid #eaeaea;
  border-radius: 2px;
  background: #fff;
  overflow: hidden;
}
.fr-pack-card i {
  position: absolute;
  top: 19px;
  left: 30px;
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: var(--orange);
  color: #fff;
  font-size: 14px;
  font-style: normal;
  font-weight: 700;
}
.fr-pack-card h3 { margin: 0; font-size: 18px; font-weight: 800; line-height: 24px; }
.fr-pack-card p { margin: 17px 0 0; font-size: 14px; line-height: 20px; color: #8a8a8a; }
.fr-pack-card img {
  display: block;
  width: auto;
  height: 210px;
  margin: auto auto 0;
}

.fr-proof { position: relative; padding: 202px 0 192px; overflow: hidden; }
.fr-proof-in { position: relative; }
.fr-proof::after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  width: 1020px;
  height: 1081px;
  background: url("/assets/img/fr-proof-art.jpg?v=7df72672") right top / 1020px 1081px no-repeat;
}
.fr-proof .lp-h2 { position: relative; z-index: 1; }
.fr-proof-panel {
  position: relative;
  z-index: 1;
  width: 686px;
  margin-top: 46px;
  padding: 33px 34px 0;
  background: #fff;
  border-radius: 4px;
  overflow: hidden;
  height: 449px;
}
.fr-proof-panel .label-orange { margin: 0; font-size: 13px; }
.fr-proof-h { margin: 17px 0 0; font-size: 20px; font-weight: 800; line-height: 26px; }
.fr-proof-pills { display: flex; align-items: center; gap: 14px; margin: 25px 0 0; }
.fr-proof-pills span {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 0 22px;
  border-radius: 999px;
  background: #f4f4f4;
  font-size: 15px;
  font-weight: 600;
}
.fr-proof-pills i { color: var(--orange); font-style: normal; font-weight: 700; }
.fr-proof-panel img { display: block; width: 554px; height: auto; margin: 27px 0 0 24px; }

.fr-audit { padding: 150px 0 149px; }
.fr-audit-card {
  display: grid;
  grid-template-columns: 1156px minmax(0, 1fr);
  height: 681px;
  border-radius: 2px;
  overflow: hidden;
  background: #fff;
}
.fr-audit-copy {
  position: relative;
  padding: 55px 0 0 56px;
  background: var(--orange) url("/assets/img/fr-audit-art.jpg?v=b6e5f9d2") right top / 506px 681px no-repeat;
  color: #fff;
}
.fr-audit-copy h2 { margin: 0; max-width: none; font-size: 30px; font-weight: 800; line-height: 40px; }
.fr-audit-sub { margin: 32px 0 0; font-size: 17px; font-weight: 700; line-height: 24px; }
.fr-audit-checks { margin: 30px 0 0; padding: 0; list-style: none; }
.fr-audit-checks li {
  position: relative;
  margin: 0 0 18px;
  padding-left: 34px;
  font-size: 15px;
  line-height: 20px;
}
.fr-audit-checks li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: 1.5px solid #fff;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 11'%3E%3Cpath d='M1 5.5 5 9.5 13 1.5' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 11px 8px no-repeat;
}
.fr-audit-who {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 24px 0 0;
  font-size: 16px;
  font-weight: 700;
  line-height: 22px;
}
.fr-audit-who img { width: 38px; height: 38px; border-radius: 50%; object-fit: cover; }
.fr-audit-note { margin: 22px 0 0; font-size: 14px; line-height: 20px; color: rgba(255, 255, 255, 0.75); }
.fr-audit-form { padding: 50px 48px 0 47px; }
.fr-audit-form-h { margin: 0; font-size: 22.5px; font-weight: 800; line-height: 30px; }
.fr-audit-form-label { margin: 28px 0 6px; font-size: 14px; color: #8a8a8a; }
.fr-audit-form .field-input {
  display: block;
  width: 100%;
  min-height: 48px;
  margin-top: 25px;
  padding: 0 18px;
  border: 0;
  border-radius: 4px;
  background: #f6f6f6;
  font-size: 15px;
  color: var(--black);
}
.fr-audit-form .field-input::placeholder { color: #a5a5a5; }
.fr-audit-form textarea.field-input { margin-top: 0; padding: 14px 18px; min-height: 187px; resize: vertical; line-height: 22px; }
.fr-audit-form .field-select { color: #a5a5a5; }
.fr-audit-form .btn { width: 100%; min-height: 50px; margin-top: 24px; font-size: 15px; }
.fr-audit-form .consent {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-top: 18px;
  font-size: 12px;
  line-height: 17px;
  color: #9a9a9a;
}

.fr-results { padding: 153px 0 149px; }
.fr-results .label-orange { margin: 0 0 23px; }
.fr-result {
  display: grid;
  grid-template-columns: 870px minmax(0, 1fr);
  gap: 10px;
  padding: 73px 0 67px;
  border-bottom: 1px solid #e2e2e2;
}
.fr-result:first-of-type { padding-top: 55px; }
.fr-result:last-of-type { padding-bottom: 0; border-bottom: 0; }
.fr-result img { display: block; width: 870px; height: auto; }
.fr-result h3 { margin: 0; font-size: 22px; font-weight: 800; line-height: 28px; }
.fr-result-k { margin: 26px 0 0; font-size: 14px; line-height: 20px; color: #9a9a9a; }
.fr-result-v { margin: 8px 0 0; font-size: 15px; line-height: 22px; color: var(--black); }
.fr-result-sum { margin: 8px 0 0; font-size: 19px; font-weight: 800; color: var(--orange); }
.fr-result ul { margin: 8px 0 0; padding-left: 20px; }
.fr-result li { font-size: 15px; line-height: 22px; color: var(--black); }

.fr-contract { padding: 241px 0 0; }
.fr-contract-in {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 1020px;
  align-items: start;
  gap: 0;
}
.fr-contract-sub { margin: 39px 0 0; font-size: 17px; font-weight: 700; line-height: 22px; color: var(--black); }
.fr-contract-checks { margin: 25px 0 0; padding: 0 0 0 17px; list-style: none; }
.fr-contract-checks li {
  position: relative;
  min-height: 22px;
  margin: 0 0 14px;
  padding-left: 36px;
  font-size: 16px;
  line-height: 22px;
  color: var(--black);
}
.fr-contract-checks li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: var(--orange) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 11'%3E%3Cpath d='M1 5.5 5 9.5 13 1.5' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 12px 9px no-repeat;
}
.fr-contract-art { display: block; width: 1020px; height: auto; margin: -83px -110px 0 0; }

.fr-manager {
  position: relative;
  padding: 190px 0 0;
  min-height: 843px;
  background: #1a1717;
  color: #fff;
  overflow: hidden;
}
.fr-manager::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 234px;
  background: url("/assets/img/fr-glow.jpg?v=f08349ac") center bottom / 1920px 234px no-repeat;
}
.fr-manager::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 130px;
  width: 890px;
  height: 570px;
  margin-left: -30px;
  background: url("/assets/img/fr-chats.jpg?v=8d36bdde") 0 0 / 890px 570px no-repeat;
}
.fr-manager-in { position: relative; z-index: 1; }
.fr-manager-h {
  display: flex;
  align-items: center;
  gap: 18px;
  margin: 0;
  font-size: 40px;
  font-weight: 800;
  line-height: 50px;
}
.fr-manager-h b { font-weight: 800; }
.fr-manager-h img { flex: none; width: 56px; height: 56px; border-radius: 50%; object-fit: cover; }
.fr-manager-checks {
  margin: 43px 0 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid rgba(255, 255, 255, 0.16);
  padding-top: 32px;
  max-width: 664px;
}
.fr-manager-checks li {
  position: relative;
  margin: 0 0 12px;
  padding-left: 36px;
  font-size: 15px;
  line-height: 22px;
  color: #fff;
}
.fr-manager-checks li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 1px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: 1.5px solid #fff;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 11'%3E%3Cpath d='M1 5.5 5 9.5 13 1.5' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 11px 8px no-repeat;
}
.fr-manager-cta { display: flex; align-items: center; gap: 22px; margin: 76px 0 0; }
.fr-manager-cta .btn { min-height: 49px; padding: 0 26px; font-size: 15px; }
.fr-manager-cta .pill {
  min-height: 49px;
  gap: 12px;
  padding: 0 30px 0 26px;
  background: #fff;
  color: var(--black);
  font-size: 16px;
  font-weight: 600;
}
.fr-manager-cta .pill::before {
  content: "";
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #2aabee url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M18.9 6.2 16.6 17c-.2.8-.6 1-1.3.6l-3.5-2.6-1.7 1.6c-.2.2-.4.4-.7.4l.3-3.6 6.5-5.9c.3-.2-.1-.4-.4-.2l-8 5-3.5-1.1c-.7-.2-.8-.7.2-1.1L17.9 5c.6-.2 1.2.2 1 1.2Z' fill='%23fff'/%3E%3C/svg%3E") center / 18px 18px no-repeat;
}
.fr-manager-cta .pill[href*="wa.me"]::before {
  background-color: #25d366;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3a9 9 0 0 0-7.7 13.6L3 21l4.6-1.2A9 9 0 1 0 12 3Zm5 12.4c-.2.6-1.2 1.2-1.7 1.2-.4 0-1 .1-3-.8-2.5-1-4.1-3.6-4.2-3.8-.1-.2-1-1.3-1-2.5s.6-1.8.9-2c.2-.3.5-.3.6-.3h.5c.2 0 .4 0 .6.5l.8 2c.1.1.1.3 0 .5l-.3.4-.3.3c-.1.1-.3.3-.1.6.1.3.6 1.1 1.3 1.7.9.8 1.6 1 1.9 1.2.2.1.4.1.5-.1l.7-.9c.2-.2.3-.2.6-.1l1.9.9c.3.1.4.2.5.3v1.2Z' fill='%23fff'/%3E%3C/svg%3E");
}

.fr-slots { position: relative; height: 743px; padding: 209px 0 0; overflow: hidden; }
.fr-slots-in { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) 480px; }
.fr-slots::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 66px;
  width: 655px;
  height: 677px;
  margin-left: -305px;
  background: url("/assets/img/fr-slot.jpg?v=d83ff2c0") 0 0 / 655px 677px no-repeat;
}
.fr-slots-copy { position: relative; z-index: 1; }
.fr-slots-sub { margin: 39px 0 0; font-size: 17px; font-weight: 700; line-height: 22px; color: var(--black); }
.fr-slots-sub b { color: var(--orange); }
.fr-slots-checks { margin: 34px 0 0; padding: 0 0 0 17px; list-style: none; }
.fr-slots-checks li {
  position: relative;
  margin: 0 0 16px;
  padding-left: 36px;
  font-size: 15px;
  line-height: 20px;
  color: var(--black);
}
.fr-slots-checks li small { display: block; margin-top: 2px; font-size: 15px; color: #8a8a8a; }
.fr-slots-checks li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: var(--orange) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 11'%3E%3Cpath d='M1 5.5 5 9.5 13 1.5' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 12px 9px no-repeat;
}
.fr-slots-form {
  position: relative;
  z-index: 1;
  align-self: start;
  padding: 38px 40px 40px;
  background: #fff;
  border-radius: 2px;
}
.fr-slots-form-h { margin: 0; font-size: 22px; font-weight: 800; line-height: 30px; }
.fr-slots-form-sub { margin: 20px 0 0; font-size: 15px; line-height: 22px; color: #8a8a8a; }
.fr-slots-form .field-input {
  display: block;
  width: 100%;
  min-height: 48px;
  margin-top: 26px;
  padding: 0 18px;
  border: 0;
  border-radius: 4px;
  background: #f6f6f6;
  font-size: 15px;
}
.fr-slots-form .btn { width: 100%; min-height: 50px; margin-top: 16px; font-size: 15px; }
.fr-slots-form .consent {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-top: 18px;
  font-size: 12px;
  line-height: 17px;
  color: #9a9a9a;
}
.fr-audit-form .consent input,
.fr-slots-form .consent input { flex: none; width: 20px; height: 20px; margin: 1px 0 0; }

@media (max-width: 699px) {
  .hero-fr h1 { font-size: 28px; line-height: 34px; }
  .fr-hero-h { margin-top: 26px; font-size: 16px; }
  .fr-hero-cta { width: 100%; margin-top: 20px; }
  .fr-cases { padding: 48px 0 0; }
  .fr-case-grid { grid-template-columns: 1fr; gap: 36px; margin-top: 28px; }
  .fr-case dl { grid-template-columns: 118px minmax(0, 1fr); }
  .fr-bar {
    flex-direction: column;
    align-items: stretch;
    width: auto;
    margin-top: 36px;
    padding: 24px 20px;
    border-radius: 20px;
  }
  .fr-bar p { font-size: 16px; }
  .fr-bar-links { justify-content: center; }
  .fr-niche { padding: 56px 0 40px; }
  .fr-niche-in { grid-template-columns: 1fr; gap: 24px; }
  .fr-niche-art { width: 100%; margin: 0; }
  .fr-niche-cta { width: 100%; }
  .fr-quiz { padding: 56px 0 56px; }
  .fr-quiz::before { height: 320px; background-size: cover; }
  .fr-quiz h2 { font-size: 24px; line-height: 30px; text-align: left; }
  .fr-quiz-card { width: auto; margin-top: 28px; padding: 24px 20px 28px; }
  .fr-quiz-h, .fr-quiz-sub { text-align: left; }
  .fr-quiz-grid { grid-template-columns: 1fr; grid-auto-rows: auto; gap: 16px; margin-top: 24px; }
  .fr-quiz-other { grid-column: 1; }
  .fr-quiz-card > .btn { width: 100%; }
  .fr-pack { padding: 56px 0 48px; }
  .fr-pack-grid { grid-template-columns: 1fr; gap: 20px; margin-top: 28px; }
  .fr-pack-card { min-height: 0; padding: 46px 20px 0; }
  .fr-pack-card img { height: 160px; margin-top: 20px; }
  .fr-proof { padding: 56px 0 48px; }
  .fr-proof::after { display: none; }
  .fr-proof-panel { width: auto; height: auto; margin-top: 24px; padding: 24px 20px 24px; }
  .fr-proof-pills { flex-wrap: wrap; gap: 10px; }
  .fr-proof-panel img { width: 100%; margin: 20px 0 0; }
  .fr-audit { padding: 56px 0 48px; }
  .fr-audit-card { grid-template-columns: 1fr; height: auto; }
  .fr-audit-copy { padding: 28px 20px 260px; background-position: center bottom; background-size: 300px 404px; }
  .fr-audit-copy h2 { font-size: 24px; line-height: 32px; }
  .fr-audit-form { padding: 28px 20px 28px; }
  .fr-audit-form textarea.field-input { min-height: 120px; }
  .fr-results { padding: 56px 0 48px; }
  .fr-result, .fr-result:first-of-type { grid-template-columns: 1fr; gap: 20px; padding: 28px 0; }
  .fr-result img { width: 100%; }
  .fr-contract { padding: 56px 0 0; }
  .fr-contract-in { grid-template-columns: 1fr; }
  .fr-contract-art { width: 100%; margin: 20px 0 0; }
  .fr-manager { min-height: 0; padding: 48px 0 300px; }
  .fr-manager::after { top: auto; bottom: 40px; left: 16px; margin: 0; width: 320px; height: 205px; background-size: 320px 205px; }
  .fr-manager-h { font-size: 26px; line-height: 34px; }
  .fr-manager-checks { margin-top: 28px; padding-top: 24px; }
  .fr-manager-cta { flex-wrap: wrap; gap: 12px; margin-top: 28px; }
  .fr-slots { height: auto; padding: 56px 0 48px; }
  .fr-slots-in { grid-template-columns: 1fr; gap: 24px; }
  .fr-slots::after { display: none; }
  .fr-slots-form { padding: 24px 20px 28px; }
}

/* ================= Sales-training landing (obuchenie-prodajam-1920) ======== */
.hero-ob::before {
  left: auto;
  right: 0;
  width: 1160px;
  height: 864px;
  background: url("/assets/img/ob-hero.jpg?v=d023851d") right top / 1160px 864px no-repeat;
}
.hero-ob .hero-lp-in { min-height: 864px; padding: 46px 0 0; }
.ob-hero-kicker {
  margin: 33px 0 0;
  font-size: 18px;
  font-weight: 800;
  line-height: 22px;
  color: var(--black);
}
.hero-ob h1 {
  max-width: 780px;
  margin: 23px 0 0;
  font-size: 44px;
  font-weight: 800;
  line-height: 53px;
}
.ob-hero-sub { margin: 37px 0 0; font-size: 15px; line-height: 24px; color: #5c5c5c; }
.ob-hero-strong { margin: 41px 0 0; font-size: 17px; font-weight: 700; line-height: 26px; color: var(--black); }
.ob-hero-note { margin: 19px 0 0; font-size: 15px; line-height: 24px; color: #5c5c5c; }
.ob-hero-cta { min-height: 48px; margin-top: 27px; padding: 0 30px; border-radius: 26px; font-size: 15px; }
.ob-hero-badge {
  position: absolute;
  top: 88px;
  right: 0;
  display: grid;
  grid-template-columns: 90px minmax(0, 1fr);
  align-items: center;
  gap: 18px;
  width: 571px;
  min-height: 132px;
  padding: 0 28px 0 22px;
  border-radius: 18px;
  background: linear-gradient(90deg, #f6801f 0%, #ea4e1b 55%, #f4685a 100%);
  color: #fff;
}
.ob-hero-badge img { width: 90px; height: 90px; object-fit: contain; }
.ob-hero-badge b { display: block; font-size: 17px; font-weight: 800; line-height: 24px; }
.ob-hero-badge p { margin: 5px 0 0; font-size: 14px; line-height: 20px; }
.ob-hero-badge .accent { color: #fff2d8; }
.ob-hero-badge small { display: block; margin-top: 8px; font-size: 10px; line-height: 14px; color: rgba(255, 255, 255, 0.72); }
.ob-hero-card {
  position: absolute;
  top: 509px;
  right: 0;
  width: 571px;
  min-height: 245px;
  padding: 34px 32px 0;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 18px 44px rgba(24, 22, 23, 0.08);
}
.ob-hero-card-h { margin: 0; font-size: 17px; font-weight: 800; line-height: 26px; color: var(--black); }
.ob-hero-card ul { margin: 24px 0 0; padding: 0; list-style: none; }
.ob-hero-card li {
  position: relative;
  margin-top: 18px;
  padding-left: 36px;
  font-size: 13px;
  line-height: 19px;
  color: #4a4a4a;
}
.ob-hero-card li:first-child { margin-top: 0; }
.ob-hero-card li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: var(--orange) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='white' d='M6.2 11.2 2.8 7.8l1.4-1.4 2 2 5.6-5.6 1.4 1.4z'/%3E%3C/svg%3E") center / 11px 8px no-repeat;
}

/* -- cases ---------------------------------------------------------------- */
.ob-cases { padding: 151px 0 178px; }
.ob-cases .label-orange { margin: 0 0 10px; }
.ob-cases h2 { margin: 0; font-size: 40px; font-weight: 800; line-height: 54px; }
.ob-case-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 31px; margin-top: 57px; }
.ob-case img { display: block; width: 100%; height: auto; border-radius: 6px; }
.ob-case-h { margin: 27px 0 0; font-size: 15px; font-weight: 800; line-height: 20px; color: var(--black); }
.ob-case ul { margin: 20px 0 0; padding: 0; list-style: none; }
.ob-case li {
  position: relative;
  margin-top: 12px;
  padding-left: 26px;
  font-size: 13px;
  line-height: 18px;
  color: #4a4a4a;
}
.ob-case li:first-child { margin-top: 0; }
.ob-case li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 1px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: var(--orange) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='white' d='M6.2 11.2 2.8 7.8l1.4-1.4 2 2 5.6-5.6 1.4 1.4z'/%3E%3C/svg%3E") center / 8px 6px no-repeat;
}

/* -- pain + form ---------------------------------------------------------- */
.ob-pain { padding: 84px 0 75px; background: var(--bg); }
.ob-pain-in { display: grid; grid-template-columns: 600px 490px minmax(0, 1fr); align-items: start; gap: 0; }
.ob-pain-copy h2 { margin: 0; font-size: 32px; font-weight: 800; line-height: 42px; }
.ob-pain-sub { margin: 18px 0 0; font-size: 14px; line-height: 20px; color: #7a7a7a; }
.ob-pain-list { margin: 34px 0 0; padding: 0; list-style: none; }
.ob-pain-list li {
  position: relative;
  padding: 0 0 20px 32px;
  margin-top: 20px;
  font-size: 16px;
  font-weight: 700;
  line-height: 22px;
  color: var(--black);
  border-bottom: 1px solid #e2e2e2;
}
.ob-pain-list li:first-child { margin-top: 0; }
.ob-pain-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 3px;
  width: 18px;
  height: 16px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 16'%3E%3Cpath fill='%23e94e1b' d='M11.3 1.2 10 2.5l4.6 4.6H1v1.8h13.6L10 13.5l1.3 1.3L18.4 8z'/%3E%3C/svg%3E") center / contain no-repeat;
}
.ob-pain-art { display: block; width: 490px; height: auto; margin: -34px 0 0; }
.ob-pain-form {
  justify-self: end;
  width: 480px;
  padding: 38px 40px 40px;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 18px 44px rgba(24, 22, 23, 0.07);
}
.ob-pain-form-h { margin: 0; font-size: 22px; font-weight: 800; line-height: 30px; }
.ob-pain-form-sub { margin: 10px 0 0; font-size: 13px; line-height: 19px; color: #7a7a7a; }
.ob-pain-form .field-input {
  display: block;
  width: 100%;
  min-height: 48px;
  margin-top: 14px;
  padding: 0 18px;
  border: 0;
  border-radius: 10px;
  background: var(--bg);
  font: inherit;
  font-size: 14px;
  color: var(--black);
}
.ob-pain-form .field-tel { padding-left: 44px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23b0b0b0' d='M4.3 1.5 6 4.6 4.6 6.3c.7 1.6 2 2.9 3.6 3.6l1.7-1.4 3.1 1.7-.6 2.6c-.2.7-.9 1.1-1.6 1C5.9 13 2.4 9.5 1.6 4.6c-.1-.7.3-1.4 1-1.6z'/%3E%3C/svg%3E"), linear-gradient(var(--bg), var(--bg)); background-repeat: no-repeat; background-position: 18px center, 0 0; background-size: 15px 15px, 100% 100%; }
.ob-pain-form .field-mail { padding-left: 44px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 12'%3E%3Cpath fill='%23e94e1b' d='M1 0h14a1 1 0 0 1 1 1L8 6.6.0 1a1 1 0 0 1 1-1zm15 2.6V11a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V2.6l8 5.6z'/%3E%3C/svg%3E"), linear-gradient(var(--bg), var(--bg)); background-repeat: no-repeat; background-position: 18px center, 0 0; background-size: 16px 12px, 100% 100%; }
.ob-pain-form .btn { width: 100%; min-height: 49px; margin-top: 18px; border-radius: 25px; }
.ob-pain-form .consent {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-top: 18px;
  font-size: 11px;
  line-height: 16px;
  color: #9a9a9a;
}
.ob-pain-form .consent input { flex: none; width: 18px; height: 18px; margin: 1px 0 0; }

/* -- expert --------------------------------------------------------------- */
.ob-expert { padding: 153px 0 37px; background: #1a1717; color: #fff; text-align: center; }
.ob-expert h2 { margin: 22px 0 0; font-size: 34px; font-weight: 800; line-height: 42px; color: #fff; }
.ob-expert-sub { margin: 17px 0 0; font-size: 14px; line-height: 20px; color: rgba(255, 255, 255, 0.6); }
.ob-expert-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 490px minmax(0, 1fr);
  align-items: start;
  gap: 12px;
  margin-top: 40px;
  text-align: left;
}
.ob-expert-grid img { display: block; width: 490px; height: auto; }
.ob-expert-col { margin: 0; padding: 0; list-style: none; display: grid; align-content: space-between; gap: 18px; }
.ob-expert-col li {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  min-height: 84px;
  padding: 20px 24px;
  border-radius: 14px;
  background: #221f1f;
}
.ob-expert-col li::before {
  content: "";
  flex: none;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--orange) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='white' d='M6.2 11.2 2.8 7.8l1.4-1.4 2 2 5.6-5.6 1.4 1.4z'/%3E%3C/svg%3E") center / 16px 12px no-repeat;
}
.ob-expert-col b { display: block; font-size: 15px; font-weight: 800; line-height: 21px; color: #fff; }
.ob-expert-col span { display: block; margin-top: 4px; font-size: 12px; line-height: 17px; color: rgba(255, 255, 255, 0.62); }
.ob-quote {
  max-width: 900px;
  margin: 22px auto 0;
  font-size: 16px;
  font-weight: 700;
  line-height: 26px;
  color: #fff;
}
.ob-quote::before, .ob-quote::after { content: "\201C"; color: var(--orange); }
.ob-quote::after { content: "\201D"; }

/* -- why + course card ---------------------------------------------------- */
.ob-why { padding: 149px 0 150px; }
.ob-why-in { display: grid; grid-template-columns: minmax(0, 1fr) 980px; align-items: start; gap: 60px; }
.ob-why-copy h2 { margin: 12px 0 0; font-size: 34px; font-weight: 800; line-height: 44px; }
.ob-why-copy .checks { margin: 30px 0 0; }
.ob-why-copy .checks li { font-size: 15px; line-height: 22px; }
.ob-why-author { display: flex; align-items: center; gap: 14px; margin: 44px 0 0; font-size: 13px; line-height: 18px; color: #6d6d6d; }
.ob-why-author img { width: 44px; height: 44px; border-radius: 50%; object-fit: cover; }
.ob-course {
  position: relative;
  min-height: 506px;
  padding: 44px 420px 44px 48px;
  border-radius: 16px;
  background: linear-gradient(120deg, #ea4e1b 0%, #f4681f 55%, #f89a3a 100%);
  color: #fff;
  overflow: hidden;
}
.ob-course::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  width: 380px;
  height: 490px;
  background: url("/assets/img/ob-course-art.jpg?v=f488ea24") right bottom / 380px 490px no-repeat;
}
.ob-course-h { margin: 0; font-size: 26px; font-weight: 800; line-height: 34px; }
.ob-course ol { counter-reset: obc; margin: 26px 0 0; padding: 0; list-style: none; }
.ob-course li {
  counter-increment: obc;
  position: relative;
  margin-top: 18px;
  padding-left: 40px;
  font-size: 14px;
  line-height: 20px;
}
.ob-course li:first-child { margin-top: 0; }
.ob-course li::before {
  content: counter(obc);
  position: absolute;
  left: 0;
  top: -1px;
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.22);
  font-size: 12px;
  font-weight: 800;
}
.ob-course-link { margin: 24px 0 0; font-size: 13px; }
.ob-course-link a { color: #fff; text-decoration: underline; }
.ob-course-cta { min-height: 46px; margin-top: 26px; padding: 0 26px; border-radius: 24px; background: #fff; color: var(--orange); font-size: 14px; font-weight: 700; }
.ob-course small { display: block; margin-top: 14px; font-size: 11px; color: rgba(255, 255, 255, 0.72); }

/* -- situations ----------------------------------------------------------- */
.ob-sits { padding: 159px 0 154px; background: var(--bg); }
.ob-sits h2 { margin: 0; font-size: 30px; font-weight: 800; line-height: 40px; text-align: center; }
.ob-sit-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 31px; margin-top: 53px; }
.ob-sit { min-height: 387px; padding: 30px 32px 0; border-radius: 14px; background: #fff; }
.ob-sit .num,
.ob-fun .num {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #fdece5;
  color: var(--orange);
  font-size: 13px;
  font-weight: 800;
}
.ob-sit h3, .ob-fun h3 { margin: 22px 0 0; font-size: 16px; font-weight: 800; line-height: 22px; }
.ob-sit .checks, .ob-fun .checks { margin: 20px 0 0; }
.ob-sit .checks li, .ob-fun .checks li { margin-top: 12px; padding-left: 26px; font-size: 13px; line-height: 18px; }
.ob-sit .checks li::before, .ob-fun .checks li::before { width: 16px; height: 16px; top: 1px; background-size: 8px 6px; }
.ob-bar { margin-top: 57px; }
.ob-bar p { font-size: 15px; line-height: 21px; }
.ob-bar-one p { font-size: 17px; }

/* -- model ---------------------------------------------------------------- */
.ob-model { padding: 161px 0 160px; }
.ob-model h2 { margin: 0; font-size: 30px; font-weight: 800; line-height: 42px; text-align: center; }
.ob-model-sub { margin: 21px 0 0; font-size: 14px; line-height: 20px; color: #7a7a7a; text-align: center; }
.ob-model-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 33px; margin-top: 57px; }
.ob-model-card { min-height: 319px; padding: 40px 26px 0; border-radius: 14px; background: var(--bg); }
.ob-model-card img { display: block; width: 110px; height: 110px; object-fit: contain; }
.ob-model-card h3 { margin: 26px 0 0; font-size: 15px; font-weight: 800; line-height: 21px; }
.ob-model-card p { margin: 12px 0 0; font-size: 12px; line-height: 17px; color: #7a7a7a; }

/* -- turnkey -------------------------------------------------------------- */
.ob-turnkey { position: relative; padding: 164px 0 145px; background: var(--bg); }
.ob-turnkey::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 287px;
  background: url("/assets/img/ob-band.jpg?v=16195c05") center top / 1920px 287px no-repeat;
}
.ob-turnkey .container { position: relative; }
.ob-turnkey h2 { margin: 0; font-size: 30px; font-weight: 800; line-height: 42px; text-align: center; }
.ob-turn-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 35px; margin-top: 26px; }
.ob-turn {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 262px;
  align-items: start;
  gap: 20px;
  min-height: 330px;
  padding: 34px 0 30px 32px;
  border-radius: 14px;
  background: #fff;
  overflow: hidden;
}
.ob-turn img { display: block; width: 262px; height: 262px; margin: 0; border-radius: 50%; object-fit: cover; align-self: center; }
.ob-turn h3 { margin: 0; font-size: 16px; font-weight: 800; line-height: 22px; }
.ob-turn .checks { margin: 18px 0 0; }
.ob-turn .checks li { margin-top: 10px; padding-left: 26px; font-size: 13px; line-height: 18px; }
.ob-turn .checks li::before { width: 16px; height: 16px; top: 1px; background-size: 8px 6px; }
.ob-turn .checks li.plain { padding-left: 26px; }
.ob-turn .checks li.plain::before { display: none; }
.ob-turn .dots { margin: 0; padding-left: 16px; list-style: disc; }
.ob-turn .dots li { margin-top: 4px; padding-left: 0; font-size: 13px; line-height: 18px; }
.ob-turn .dots li::before { display: none; }

/* -- funnel --------------------------------------------------------------- */
.ob-funnel { padding: 160px 0 150px; }
.ob-funnel h2 { margin: 0; font-size: 30px; font-weight: 800; line-height: 42px; text-align: center; }
.ob-fun-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 31px; margin-top: 57px; }
.ob-fun { min-height: 449px; padding: 30px 28px 0; border-radius: 14px; background: #fff; border: 1px solid #ececec; }
.ob-fun p { margin: 16px 0 0; font-size: 13px; line-height: 18px; color: #7a7a7a; }

/* -- guarantee ------------------------------------------------------------ */
.ob-guarantee {
  position: relative;
  padding: 148px 0 0;
  min-height: 829px;
  background: #f4f4f4;
  overflow: hidden;
}
.ob-guarantee::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  margin-left: -10px;
  width: 650px;
  height: 830px;
  background: url("/assets/img/ob-guarantee.jpg?v=a48e62ac") left top / 650px 830px no-repeat;
}
.ob-guarantee .container { position: relative; z-index: 1; }
.ob-guarantee h2 { margin: 0; font-size: 34px; font-weight: 800; line-height: 44px; }
.ob-guarantee-sub { margin: 24px 0 0; font-size: 14px; line-height: 21px; color: #6d6d6d; }
.ob-guarantee-cta { min-height: 46px; margin-top: 28px; padding: 0 26px; border-radius: 24px; font-size: 14px; }
.ob-guarantee-note { margin: 42px 0 0; font-size: 13px; color: #6d6d6d; }
.ob-guarantee-links { margin-top: 14px; }
.ob-guarantee-links .pill { min-height: 44px; padding: 0 26px 0 20px; font-size: 15px; box-shadow: 0 8px 22px rgba(24, 22, 23, 0.08); }

.ob-guarantee + .stats { margin: -108px 0 0; padding-bottom: 25px; }
.ob-guarantee + .stats .stat { box-sizing: border-box; min-height: 252px; height: 252px; padding: 34px 42px; }
.ob-guarantee + .stats .stat b { margin-bottom: 30px; }
.ob-guarantee + .stats .stat p { font-size: 13px; line-height: 19px; }

/* -- reload --------------------------------------------------------------- */
.ob-reload {
  position: relative;
  padding: 159px 0 0;
  min-height: 1131px;
  background: #181617;
  color: #fff;
  overflow: hidden;
}
.ob-reload::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  margin-left: -395px;
  width: 730px;
  height: 745px;
  background: url("/assets/img/ob-chart.jpg?v=cf9b2c17") center bottom / 730px 745px no-repeat;
}
.ob-reload .container { position: relative; z-index: 1; }
.ob-reload h2 { margin: 0; font-size: 30px; font-weight: 800; line-height: 44px; text-align: center; color: #fff; }
.ob-reload-sub { margin: 39px 0 0; font-size: 14px; font-weight: 700; line-height: 22px; text-align: center; color: rgba(255, 255, 255, 0.86); }
.ob-reload-grid { display: grid; grid-template-columns: 700px minmax(0, 1fr); gap: 40px; margin-top: 86px; }
.ob-chips { margin: 0; padding: 0; list-style: none; display: grid; gap: 22px; }
.ob-chips-a { grid-template-columns: 334px 334px; grid-auto-rows: 86px; align-content: start; gap: 58px 34px; }
.ob-chips-b { justify-items: end; align-content: start; grid-auto-rows: 86px; gap: 49px; }
.ob-chips li {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  align-items: center;
  gap: 14px;
  width: 334px;
  min-height: 86px;
  padding: 10px 18px 10px 12px;
  border-radius: 12px;
  background: #262324;
  font-size: 12px;
  line-height: 17px;
}
.ob-chips li::before {
  content: "";
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--orange) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='white' d='M6.2 11.2 2.8 7.8l1.4-1.4 2 2 5.6-5.6 1.4 1.4z'/%3E%3C/svg%3E") center / 16px 12px no-repeat;
}

/* -- free audit ----------------------------------------------------------- */
.ob-audit { padding: 129px 0 10px; }
.ob-audit-in { display: grid; grid-template-columns: minmax(0, 1fr) 470px 545px; align-items: start; gap: 0; }
.ob-audit-copy { padding-top: 46px; }
.ob-audit-copy h2 { margin: 0; font-size: 26px; font-weight: 800; line-height: 36px; }
.ob-audit-h { margin: 30px 0 0; font-size: 17px; font-weight: 800; line-height: 24px; }
.ob-audit-copy .checks { margin: 22px 0 0; }
.ob-audit-copy .checks li { margin-top: 12px; padding-left: 28px; font-size: 13px; line-height: 19px; }
.ob-audit-copy .checks li::before { width: 18px; height: 18px; top: 1px; background-size: 9px 7px; }
.ob-audit-note { display: flex; align-items: flex-start; gap: 14px; margin: 34px 0 0; font-size: 13px; line-height: 19px; }
.ob-audit-note img { width: 38px; height: 38px; object-fit: contain; }
.ob-audit-art { display: block; width: 470px; height: auto; }
.ob-audit-card {
  justify-self: end;
  width: 545px;
  padding: 36px 40px 40px;
  border-radius: 14px;
  background: var(--bg);
}
.ob-audit-card-h { margin: 0; font-size: 20px; font-weight: 800; line-height: 28px; }
.ob-audit-card-sub { margin: 20px 0 0; font-size: 13px; color: #7a7a7a; }
.ob-audit-card dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin: 16px 0 0; }
.ob-audit-card dl div { display: grid; grid-template-columns: 52px minmax(0, 1fr); grid-template-rows: auto auto; align-items: center; column-gap: 12px; }
.ob-audit-card dl img { grid-row: span 2; width: 52px; height: 52px; object-fit: contain; }
.ob-audit-card dt { font-size: 12px; color: #7a7a7a; }
.ob-audit-card dd { margin: 0; font-size: 14px; font-weight: 700; color: var(--black); }
.ob-audit-card-note { margin: 24px 0 0; padding-left: 26px; font-size: 12px; line-height: 18px; color: #6d6d6d; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23e94e1b' d='M6.2 11.2 2.8 7.8l1.4-1.4 2 2 5.6-5.6 1.4 1.4z'/%3E%3C/svg%3E") left 3px / 16px 12px no-repeat; }
.ob-audit-card .btn { width: 100%; min-height: 48px; margin-top: 24px; border-radius: 25px; font-size: 14px; }

@media (max-width: 699px) {
  .hero-ob::before { display: none; }
  .hero-ob .hero-lp-in { min-height: 0; padding: 20px 0 40px; }
  .hero-ob h1 { font-size: 28px; line-height: 34px; }
  .ob-hero-cta { width: 100%; }
  .ob-hero-badge, .ob-hero-card { position: static; width: auto; margin-top: 24px; }
  .ob-cases { padding: 48px 0 40px; }
  .ob-cases h2, .ob-pain-copy h2, .ob-expert h2, .ob-why-copy h2, .ob-sits h2,
  .ob-model h2, .ob-turnkey h2, .ob-funnel h2, .ob-guarantee h2, .ob-reload h2,
  .ob-audit-copy h2 { font-size: 24px; line-height: 32px; }
  .ob-case-grid, .ob-sit-grid, .ob-model-grid, .ob-turn-grid, .ob-fun-grid { grid-template-columns: 1fr; gap: 20px; }
  .ob-pain, .ob-why, .ob-sits, .ob-model, .ob-turnkey, .ob-funnel, .ob-audit { padding: 48px 0 40px; }
  .ob-pain-in, .ob-why-in, .ob-audit-in { grid-template-columns: 1fr; gap: 24px; }
  .ob-pain-art, .ob-audit-art { width: 100%; margin: 0; }
  .ob-pain-form, .ob-audit-card { width: auto; padding: 24px 20px 28px; }
  .ob-expert { padding: 48px 0 40px; }
  .ob-expert-grid { grid-template-columns: 1fr; gap: 16px; }
  .ob-expert-grid img { width: 100%; }
  .ob-course { min-height: 0; padding: 28px 20px 300px; }
  .ob-course::after { width: 260px; height: 290px; background-size: 260px 290px; }
  .ob-turnkey::before { height: 160px; background-size: cover; }
  .ob-turn { grid-template-columns: 1fr; padding: 24px 20px 0; }
  .ob-turn img { width: 220px; height: 220px; margin: 20px auto 0; }
  .ob-guarantee { min-height: 0; padding: 48px 0 320px; }
  .ob-guarantee::after { left: 50%; top: auto; bottom: 0; margin-left: -160px; width: 320px; height: 410px; background-size: 320px 410px; }
  .ob-reload { min-height: 0; padding: 48px 0 320px; }
  .ob-reload::after { margin-left: -175px; width: 350px; height: 357px; background-size: 350px 357px; }
  .ob-reload-grid { grid-template-columns: 1fr; gap: 16px; margin-top: 32px; }
  .ob-chips-a { grid-template-columns: 1fr; }
  .ob-chips li, .ob-chips-b { width: auto; justify-items: stretch; }
}

/* ---- Landing pages on phones: the 1920 geometry unwinds into one column ---- */
@media (max-width: 699px) {
  .hero-lp::before { display: none; }
  .hero-lp-in { min-height: 0; padding: 20px 0 44px; }
  .hero-lp-badge {
    position: static;
    width: 100%;
    height: auto;
    min-height: 84px;
    margin: 20px 0 0;
    background-size: cover;
    border-radius: 4px;
  }
  .hero-lp-badge span {
    position: static;
    display: block;
    transform: none;
    padding: 18px 20px 18px 78px;
    font-size: 15px;
  }
  .hero-lp h1 { margin-top: 22px; font-size: 30px; line-height: 36px; }
  .hero-lp-sub { margin-top: 20px; font-size: 17px; line-height: 24px; }
  .hero-lp-checks { margin-top: 18px; padding-left: 0; }
  .hero-lp-checks li { font-size: 15px; }
  .hero-lp-card { width: auto; margin-top: 28px; padding: 24px 20px; }
  .hero-lp-card-h { font-size: 18px; line-height: 24px; }
  .hero-lp-card .btn { width: 100%; }

  .lp-section { padding: 56px 0 0; }
  .lp-h2, .audit-band h2, .imm-in h2, .mgr-in h2, .boost-in h2 {
    font-size: 26px;
    line-height: 32px;
  }
  .lp-cards { grid-template-columns: 1fr; gap: 16px; margin-top: 28px; }
  .lp-card { min-height: 0; padding: 28px 24px; }
  .lp-cards--muted .lp-card { min-height: 0; padding: 24px 24px 0; }
  .lp-cards--muted .lp-card p { font-size: 18px; line-height: 24px; }
  .lp-cards--muted .lp-card img { width: calc(100% + 48px); margin: 20px -24px 0; }

  .audit-in { min-height: 0; padding: 56px 0; }
  .audit-copy { width: auto; }
  .audit-art, .imm-art, .mgr-phones, .boost-art { display: none; }
  .audit-sub, .audit-lead { margin-top: 20px; font-size: 17px; line-height: 24px; }
  .audit-badges { margin-top: 28px; }
  .audit-form {
    position: static;
    width: auto;
    margin-top: 28px;
    padding: 24px 20px;
  }
  .audit-form-h { font-size: 20px; line-height: 26px; }
  .audit-form .consent { max-width: none; }

  .imm-band { margin-top: 56px; }
  .imm-in { min-height: 0; padding: 56px 0; }
  .imm-list { margin-top: 28px; }
  .imm-list li { margin-bottom: 18px; font-size: 17px; line-height: 24px; }

  .mgr-band { background-size: cover; }
  .mgr-in { min-height: 0; padding: 56px 0; }
  .mgr-head { gap: 18px; }
  .mgr-in h2 { line-height: 34px; }
  .mgr-checks { margin-top: 24px; }
  .mgr-checks li { font-size: 15px; }
  .mgr-actions { flex-wrap: wrap; gap: 10px; margin-top: 28px; }
  .mgr-call { width: 100%; }
  .mgr-tg, .mgr-wa { margin-left: 0; }
  .mgr-tg::after { display: none; }

  .limits { padding: 56px 0 0; }
  .limits-in { grid-template-columns: 1fr; gap: 16px; }
  .limit-card { min-height: 0; padding: 28px 24px 24px; }
  .limit-card h3 { font-size: 20px; line-height: 26px; }
  .limit-ball { width: 96px; height: auto; top: 16px; }
  .arrow-list { margin-top: 24px; }

  .niches { padding: 56px 0; }
  .niches-in { display: block; margin-top: 28px; }
  .niche-grid { grid-template-columns: 1fr; gap: 8px; margin-top: 18px; }
  .niche-h2 { margin-top: 28px; }
  .niche-promo {
    width: auto;
    height: 420px;
    margin-top: 28px;
  }
  .niche-promo-btn { left: 24px; right: 24px; top: auto; bottom: 28px; width: auto; }

  .boost-in { min-height: 0; padding: 56px 0; }
  .boost-left, .boost-right {
    position: static;
    width: auto;
    margin-top: 24px;
  }
  .boost-right { margin-top: 12px; }
  .boost-list li { min-height: 0; padding: 18px 20px; font-size: 17px; line-height: 22px; }

  .lp-adv { padding: 56px 0; }
  .lp-adv .center-head { margin-bottom: 28px; }
  .lp-prices, .lp-articles { padding: 56px 0; }
  .lp-reviews, .lp-faq { padding: 56px 0 0; }
  .lp-prices h2, .lp-reviews h2, .lp-articles h2 { margin-bottom: 28px; }
  .lp-reviews .text-reviews { gap: 16px; }
  .lp-reviews .text-review { min-height: 0; padding: 28px 24px; }
  .lp-reviews .ya-card { padding: 18px 12px 30px; }
}

/* --- О компании (about-company export) --- */
.side-nav-flat a::after { display: none; }

.about-intro h2 {
  margin: 2px 0 0;
  font-size: 30.5px;
  line-height: 38px;
  letter-spacing: 0;
}
.about-note {
  margin: 26px 0 0;
  color: var(--muted);
  font-size: 16px;
  line-height: 23px;
}
.about-stats {
  gap: 33px;
  margin: 46px 0 0;
}
.about-stats .stat {
  min-height: 280px;
  padding: 42px 42px 29px;
  border: 1px solid #eaeaea;
  box-shadow: none;
}
.about-stats .stat b { font-size: 54.5px; line-height: 1.1; margin-bottom: 66px; }
.about-stats .stat p { font-size: 16px; line-height: 27px; }
.about-stats .star { color: #f5a623; }

.about-kim { margin-top: 101px; }
.about-kim h2 {
  margin: 0;
  font-size: 30.5px;
  line-height: 38px;
  letter-spacing: 0;
}
.kim-cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 33px;
  margin-top: 48px;
}
.kim-card {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 116px;
  padding: 24px 190px 24px 42px;
  background: #f6f6f6;
  border-radius: 4px;
}
.kim-card p {
  margin: 0;
  font-weight: 800;
  font-size: 19px;
  line-height: 26px;
}
.kim-card img {
  position: absolute;
  right: 0;
  bottom: 0;
  width: auto;
  height: 132px;
}
.kim-card:last-child img { right: 12px; }

.about-sec { margin-top: 100px; }
.about-system { margin-top: 96px; }
.about-reviews { margin-top: 98px; }
.about-clients { margin-top: 99px; }
.about-partners { margin-top: 101px; }
.about-career { margin-top: 99px; }
.about-sec > .label-orange { margin: 0 0 10px; }
.about-sec > h2 {
  margin: 0;
  font-size: 30.5px;
  line-height: 38px;
  letter-spacing: 0;
}
.about-cases .cases { margin-top: 57px; gap: 57px 33px; }
.about-cases .center { margin-top: 58px; }

.sys-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 33px;
  margin-top: 57px;
}
.sys-card { grid-column: span 2; }
.sys-card {
  background: #f6f6f6;
  border-radius: 4px;
  padding: 32px 33px 32px;
}
.sys-card:nth-child(n + 4) { grid-column: span 3; }
.sys-card img { width: 99px; height: 99px; object-fit: contain; }
.sys-card h3 {
  margin: 25px 0 0;
  color: var(--orange);
  font-size: 19.5px;
  line-height: 26px;
  font-weight: 800;
}
.sys-card p {
  margin: 12px 0 0;
  color: var(--muted);
  font-size: 16px;
  line-height: 24px;
}
.about-system .center { margin-top: 55px; }

.about-reviews.lp-reviews { padding: 0; }
.about-reviews .carousel { margin-top: 57px; }
.about-reviews .text-reviews { gap: 33px; }

.about-clients > h2 { max-width: none; }
.client-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 33px;
  margin-top: 56px;
}
.client-card {
  border: 1px solid #eaeaea;
  border-radius: 4px;
  min-height: 322px;
  display: flex;
  flex-direction: column;
}
.client-logo {
  display: grid;
  place-items: center;
  height: 174px;
  padding: 20px 28px;
  border-bottom: 1px solid #eaeaea;
}
.client-logo img { width: auto; max-width: 100%; max-height: 100%; object-fit: contain; }
.client-card h3 {
  margin: 0;
  padding: 33px 32px 0;
  font-size: 19.5px;
  line-height: 26px;
  font-weight: 800;
}
.client-card p {
  margin: 8px 0 0;
  padding: 0 32px 31px;
  color: var(--muted);
  font-size: 16px;
  line-height: 24px;
}

.partner-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  margin-top: 55px;
  border-top: 1px solid #eaeaea;
  border-left: 1px solid #eaeaea;
}
.partner-cell {
  display: grid;
  place-items: center;
  height: 200px;
  padding: 24px 32px;
  border-right: 1px solid #eaeaea;
  border-bottom: 1px solid #eaeaea;
}
.partner-cell img { width: auto; max-width: 100%; max-height: 100%; object-fit: contain; }

.about-career {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 545px;
  gap: 55px;
  align-items: start;
}
.career-copy { padding-top: 45px; }
.career-copy h2 {
  margin: 0;
  font-size: 30.5px;
  line-height: 38px;
  letter-spacing: 0;
}
.career-lead {
  display: flex;
  align-items: flex-start;
  gap: 27px;
  margin: 30px 0 0;
  font-weight: 800;
  font-size: 19px;
  line-height: 24px;
}
.career-lead img { flex: 0 0 63px; width: 63px; height: 63px; object-fit: contain; }
.career-h {
  margin: 56px 0 0;
  color: var(--orange);
  font-weight: 800;
  font-size: 17px;
}
.career-list {
  margin: 26px 0 0;
  padding: 0 0 0 17px;
  list-style: none;
}
.career-list li {
  position: relative;
  padding: 0 0 0 36px;
  font-size: 16px;
  line-height: 36px;
}
.career-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 7px;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: var(--orange) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 11'%3E%3Cpath d='M1 5.4 5 9.4 13 1.4' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 12px 9px no-repeat;
}

.career-form {
  background: #f6f6f6;
  border-radius: 4px;
  padding: 48px;
}
.career-form h2 {
  margin: 0 0 26px;
  font-size: 20px;
  line-height: 1.3;
  letter-spacing: 0;
}
.career-form .field-input {
  width: 100%;
  min-height: 49px;
  margin: 0 0 16px;
  padding: 0 22px;
  border: 0;
  border-radius: 999px;
  background: #fff;
  color: var(--text);
  font-size: 16px;
}
.career-form .field-input::placeholder { color: #8a8a8a; }
.career-form .field-select {
  appearance: none;
  color: #8a8a8a;
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 8'%3E%3Cpath d='M1 1l6 6 6-6' fill='none' stroke='%23191617' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") right 26px center / 13px 8px no-repeat;
}
.career-form .field-site,
.career-form .field-tel { padding-left: 52px; }
.career-form .field-site {
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='9' fill='none' stroke='%238a8a8a' stroke-width='1.6'/%3E%3Cellipse cx='12' cy='12' rx='4' ry='9' fill='none' stroke='%238a8a8a' stroke-width='1.6'/%3E%3Cpath d='M3.5 9h17M3.5 15h17' stroke='%238a8a8a' stroke-width='1.6'/%3E%3C/svg%3E") 22px center / 17px 17px no-repeat;
}
.career-form .field-tel {
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%238a8a8a' d='M6.6 10.8c1.4 2.8 3.8 5.1 6.6 6.6l2.2-2.2c.3-.3.7-.4 1.1-.2 1.2.4 2.5.6 3.8.6.6 0 1 .4 1 1V20c0 .6-.4 1-1 1C10.7 21 3 13.3 3 4c0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.3.2 2.6.6 3.8.1.4 0 .8-.3 1.1L6.6 10.8z'/%3E%3C/svg%3E") 22px center / 17px 17px no-repeat;
}
.career-form .btn { min-height: 49px; margin-top: 0; }
.career-form .consent {
  margin: 29px 0 0;
  padding-left: 40px;
  font-size: 14px;
  line-height: 18px;
}

@media (max-width: 699px) {
  .about-intro h2 { font-size: 24px; line-height: 31px; }
  .about-note { margin-top: 16px; }
  .about-stats { margin-top: 28px; }
  .about-stats .stat { min-height: 0; padding: 28px 24px; }
  .about-stats .stat b { font-size: 36px; margin-bottom: 20px; }
  .about-kim { margin-top: 48px; }
  .about-kim h2,
  .about-sec > h2,
  .career-copy h2 { font-size: 24px; line-height: 31px; }
  .kim-cards { grid-template-columns: 1fr; gap: 16px; margin-top: 24px; }
  .kim-card { padding: 22px 120px 22px 24px; }
  .kim-card img { height: 96px; }
  .about-sec,
  .about-system,
  .about-reviews,
  .about-clients,
  .about-partners,
  .about-career { margin-top: 56px; }
  .about-cases .cases { margin-top: 28px; gap: 28px; }
  .sys-grid { grid-template-columns: 1fr; gap: 16px; margin-top: 28px; }
  .sys-card,
  .sys-card:nth-child(n + 4) { grid-column: auto; }
  .about-system .center,
  .about-cases .center { margin-top: 28px; }
  .about-reviews .carousel { margin-top: 28px; }
  .client-grid { grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 28px; }
  .client-card { min-height: 0; }
  .client-logo { height: 120px; padding: 16px; }
  .client-card h3 { padding: 20px 20px 0; font-size: 16px; line-height: 22px; }
  .client-card p { padding: 0 20px 20px; font-size: 14px; line-height: 20px; }
  .partner-grid { grid-template-columns: 1fr 1fr; margin-top: 28px; }
  .partner-cell { height: 120px; padding: 16px; }
  .about-career { grid-template-columns: 1fr; gap: 28px; }
  .career-copy { padding-top: 0; }
  .career-lead { gap: 16px; font-size: 16px; line-height: 22px; }
  .career-lead br { display: none; }
  .career-h { margin-top: 28px; }
  .career-list { margin-top: 16px; padding-left: 0; }
  .career-list li { padding-left: 32px; font-size: 15px; line-height: 22px; margin-bottom: 12px; }
  .career-list li::before { top: 1px; }
  .career-form { padding: 28px 20px; }
}

/* --- Лента статей и новостей (news export) --- */
.filter-years { margin: 2px 0 0; }
.filter-years .pill { min-height: 48px; }
.filter-topics {
  margin: 48px 0 0;
  padding-top: 49px;
  border-top: 1px solid #eaeaea;
}
.filter-row .pills { gap: 9px; }
.filter-row .pill { padding: 0 25px; font-size: 15.5px; }
.articles-3 {
  grid-template-columns: repeat(3, 1fr);
  gap: 46px 33px;
  margin-top: 49px;
}
.articles-3 .article-card { display: block; }
.articles-3 .article-img {
  height: 286px;
  border-radius: 4px;
  margin: 0;
}
.article-topic {
  display: block;
  margin: 28px 0 0;
  color: var(--orange);
  font-size: 15.5px;
  font-weight: 600;
  line-height: 21px;
}
.articles-3 h3 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin: 15px 0 0;
  font-size: 19.5px;
  font-weight: 800;
  line-height: 24px;
}
.article-sub {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin: 14px 0 0;
  color: var(--muted);
  font-size: 16.5px;
  line-height: 21px;
}
.articles-3 time {
  display: block;
  margin: 25px 0 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 1;
}
.articles-3 .article-card:hover h3 { color: var(--orange); }

.pager {
  display: flex;
  justify-content: center;
  gap: 11px;
  margin: 46px 0 0;
}
.pager a,
.pager span {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: #f6f6f6;
  font-size: 16px;
  font-weight: 600;
}
.pager .is-active { background: var(--black); color: #fff; }

@media (max-width: 699px) {
  .filter-topics { margin-top: 24px; padding-top: 24px; }
  .filter-row .pill { min-height: 40px; padding: 0 18px; font-size: 14px; }
  .filter-years .pill { min-height: 40px; }
  .articles-3 { grid-template-columns: 1fr; gap: 28px; margin-top: 28px; }
  .articles-3 .article-img { height: 200px; }
  .article-topic { margin-top: 16px; font-size: 14px; }
  .articles-3 h3 { margin-top: 10px; font-size: 18px; line-height: 24px; }
  .article-sub { margin-top: 10px; font-size: 15px; line-height: 21px; }
  .pager { margin-top: 28px; gap: 8px; }
  .pager a, .pager span { width: 40px; height: 40px; }
}

/* Company inner pages reuse the about / news / services decks */
.article-meta {
  display: flex;
  align-items: center;
  gap: 16px;
  margin: 0 0 20px;
}
.article-meta .article-topic { margin: 0; }
.article-meta time { color: var(--muted); font-size: 14px; }
.price-board { margin: 0 0 40px; }
.price-board > h2 { margin: 0 0 24px; }
.price-board .price-row { margin-bottom: 12px; }
.page-faq { margin: 0 0 40px; }
.page-faq h2 { margin: 0 0 12px; }
.contact-board { margin: 0 0 40px; }
.contact-card {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 22px 0;
  border-bottom: 1px solid var(--line);
}
.contact-card strong { display: block; font-size: 18px; }
.contact-card small { display: block; color: var(--muted); margin-top: 6px; }
.contact-board .messengers { margin: 24px 0 8px; }
.contact-board .center { margin-top: 28px; text-align: left; }
.promo-board {
  margin: 0 0 40px;
  padding: 40px 42px;
  background: var(--bg);
  border-radius: 4px;
}
.promo-board h2 { margin: 8px 0 16px; }
.promo-board > p { color: var(--muted); max-width: 52ch; }
.promo-price { margin: 8px 0 24px; font-size: 18px; font-weight: 700; color: var(--text); }
.promo-price b { color: var(--orange); }
.related-articles { margin-top: 48px; }
.page-main .about-career { margin-top: 8px; }
.page-main .about-cases { margin-top: 8px; }
.plain-cta {
  margin: 40px 0 0;
  padding: 24px 28px;
  background: #fff;
  border: 1px solid #eaeaea;
}
.plain-cta p { margin: 0; max-width: none; }

@media (max-width: 699px) {
  .promo-board { padding: 28px 20px; }
  .price-board .price-row { grid-template-columns: 56px minmax(0, 1fr); }
  .related-articles .articles-3 { grid-template-columns: 1fr; }
}
