@font-face { font-family: 'Montserrat'; font-style: normal; font-weight: 600; font-display: swap; src: url(fonts/montserrat-cyrillic.woff2) format('woff2'); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: 'Montserrat'; font-style: normal; font-weight: 600; font-display: swap; src: url(fonts/montserrat-latin.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Montserrat'; font-style: normal; font-weight: 700; font-display: swap; src: url(fonts/montserrat-cyrillic.woff2) format('woff2'); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: 'Montserrat'; font-style: normal; font-weight: 700; font-display: swap; src: url(fonts/montserrat-latin.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Montserrat'; font-style: normal; font-weight: 800; font-display: swap; src: url(fonts/montserrat-cyrillic.woff2) format('woff2'); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: 'Montserrat'; font-style: normal; font-weight: 800; font-display: swap; src: url(fonts/montserrat-latin.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Onest'; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/onest-cyrillic.woff2) format('woff2'); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: 'Onest'; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/onest-latin.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Onest'; font-style: normal; font-weight: 500; font-display: swap; src: url(fonts/onest-cyrillic.woff2) format('woff2'); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: 'Onest'; font-style: normal; font-weight: 500; font-display: swap; src: url(fonts/onest-latin.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

/* Ваш Капитал, лендинг «Банк отказал, займ под залог ПТС». Стиль Avant (avant.com) в цветах ВК. */
:root {
  --blue: #155ffc;        /* заливка первого экрана и акцентных блоков, совпадает с фоном img/hero_B.webp */
  --blue-dk: #1748d6;     /* нажатие */
  --indigo: #1b16bc;      /* индиго бренда */
  --ink: #0e1230;         /* чернила */
  --pale: #e8efff;        /* светло-голубой */
  --pale-line: #c3d3ff;
  --coral: #ff4b3a;       /* тёплый акцент: маркеры, цифры шагов, одна фраза */
  --grey-bg: #f2f3f6;     /* серый фон для чередования секций */
  --stripe: #d5d9e2;      /* серые полосы */
  --white: #fff;
  --grey: #555d7a;        /* подписи */
  --line: #d5d9e2;
  --err: #c62828;
  --r: 0;
  --head: 'Montserrat', 'Onest', system-ui, -apple-system, 'Segoe UI', Arial, sans-serif;
  --font: 'Onest', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; scroll-padding-top: 76px; }
body {
  margin: 0; font-family: var(--font); font-size: 17px; line-height: 1.5; font-weight: 400;
  color: var(--ink); background: var(--white); font-variant-numeric: tabular-nums;
  overflow-x: hidden;
}
body.has-bar { padding-bottom: 84px; }
img { max-width: 100%; display: block; }
[hidden] { display: none !important; }
h1, h2, h3 { font-family: var(--head); margin: 0; line-height: 1.08; text-transform: uppercase; }
h2 { font-weight: 700; letter-spacing: 0.005em; color: var(--ink); overflow-wrap: break-word; }
b, strong { font-weight: 500; }
p { margin: 0 0 12px; }
a { color: var(--blue); }
button, input, select { font-family: inherit; font-size: inherit; color: inherit; border-radius: 0; }
.sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.wrap { width: 100%; max-width: 1240px; margin: 0 auto; padding: 0 20px; }
.narrow { max-width: 1240px; }
.narrow > :not(h2) { max-width: 760px; }

:focus-visible { outline: 3px solid var(--ink); outline-offset: 3px; }
.on-blue :focus-visible { outline-color: #fff; }


/* Кнопки: прямоугольные, капсом, с шевроном */
.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 56px; padding: 0 30px;
  border: 2px solid var(--blue); border-radius: var(--r); background: var(--blue); color: #fff;
  font-family: var(--head); font-weight: 700; font-size: 1rem; letter-spacing: 0.02em; text-transform: uppercase;
  text-decoration: none; cursor: pointer; transition: background 0.15s, color 0.15s, border-color 0.15s;
}
.btn::before {
  content: ''; width: 8px; height: 8px; flex: none; border: solid currentColor; border-width: 3px 3px 0 0;
  transform: rotate(45deg) scale(0.9); margin-right: 2px;
}
.btn.no-chev::before { display: none; }
.btn:hover { background: var(--blue-dk); border-color: var(--blue-dk); }
.btn.block { width: 100%; }
.btn.white { background: #fff; border-color: #fff; color: var(--blue); }
.btn.white:hover { background: var(--pale); border-color: var(--pale); }
.btn.outline-white { background: transparent; border-color: #fff; color: #fff; }
.btn.outline-white:hover { background: rgba(255, 255, 255, 0.16); }
.btn.ghost { background: transparent; color: var(--blue); }
.btn.ghost:hover { background: var(--pale); }
.btn.ghost-light { background: transparent; border-color: #fff; color: #fff; }
.btn.ghost-light:hover { background: rgba(255, 255, 255, 0.16); }
.btn:disabled { opacity: 0.6; cursor: default; }
.btn svg { width: 20px; height: 20px; flex: none; }

/* Шапка: серая служебная полоса и белая навигация */
.header { background: #fff; position: relative; z-index: 10; }
.strip { background: #e6e7ea; display: none; }
.strip-in { max-width: 1240px; margin: 0 auto; padding: 0 40px; min-height: 32px; display: flex; justify-content: flex-end; align-items: center; gap: 28px; font-size: 0.82rem; }
.strip-city { color: var(--grey); }
.strip-phone { color: var(--blue); text-decoration: none; font-family: var(--head); font-weight: 700; text-transform: uppercase; letter-spacing: 0.01em; }
.nav-in { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 64px; padding: 0 20px; max-width: 1240px; margin: 0 auto; }
.logo img { width: 150px; height: auto; }
.menu { display: none; }
.nav-call { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; color: var(--blue); border: 2px solid var(--blue); }
.nav-call svg { width: 20px; height: 20px; }
.header { border-bottom: 3px solid var(--stripe); }

/* Первый экран */
.hero { position: relative; display: flex; flex-direction: column; background: var(--blue); color: #fff; }
.hero-text { position: relative; z-index: 2; padding: 32px 20px 28px; }
.eyebrow { font-family: var(--head); font-weight: 700; text-transform: uppercase; font-size: 1.02rem; line-height: 1.25; letter-spacing: 0.01em; margin: 0 0 12px; color: #fff; }
.hero h1 { font-weight: 800; letter-spacing: 0.01em; font-size: clamp(42px, 12.2vw, 52px); color: #fff; line-height: 1.02; }
.hero h1 .eyebrow { display: block; font-family: var(--head); font-weight: 700; text-transform: uppercase; font-size: 1.02rem; line-height: 1.25; letter-spacing: 0.01em; margin: 0 0 12px; color: #fff; }
.hero h1 .h1-main { display: block; }
.hero-sub { font-size: 1.1rem; max-width: 30em; margin: 18px 0 20px; color: #fff; }
.hero-row { display: flex; flex-direction: column; gap: 12px; }
.hero-field input {
  width: 100%; height: 58px; padding: 0 18px; border: 2px solid #fff; border-radius: 0;
  background: transparent; color: #fff; font-size: 1.2rem; font-weight: 500;
}
.hero-field input::placeholder { color: rgba(255, 255, 255, 0.75); font-weight: 400; }
.hero-field input:focus { background: rgba(255, 255, 255, 0.12); }
.hero-row .btn { min-height: 58px; }
.hero-form.is-collapsed .pf-label, .hero-form.is-collapsed .hero-field { display: none; }
.hero-err { color: var(--indigo); background: #fff; padding: 6px 12px; margin: 10px 0 0; font-size: 0.95rem; display: inline-block; }
/* Телефон и планшет: фото после формы, квадрат по пояс, человек по центру; на компьютере переопределено в @media (min-width: 1000px) */
.hero-photo { position: relative; z-index: 1; aspect-ratio: 1 / 1; max-height: 560px; overflow: hidden; }
.hero-photo img { width: 100%; height: 100%; object-fit: cover; object-position: center 10%; }
/* Узор Avant: угловатые толстые чёрные и индиго полосы. Включается классом .pattern на .hero */
.hero.pattern::before {
  content: ''; position: absolute; z-index: 0; right: 0; top: 0; bottom: 0; width: 100%;
  background-color: var(--blue);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='140' viewBox='0 0 160 140' fill='none' stroke-linejoin='miter' stroke-miterlimit='10'%3E%3Cpath d='M-10 20 L40 20 L40 70 L90 70 L90 20 L140 20 L170 20' stroke='%237fa6ff' stroke-width='22'/%3E%3Cpath d='M-10 70 L10 70 L10 120 L60 120 L60 95 L120 95 L120 120 L170 120' stroke='%231b16bc' stroke-width='22'/%3E%3Cpath d='M30 -10 L70 45 L110 -10 M110 140 L130 95 L160 140' stroke='%237fa6ff' stroke-width='22'/%3E%3C/svg%3E");
  background-size: 160px 140px;
}
.hero.pattern .hero-photo { background: none; }

/* Преимущества */
.perks { background: var(--pale); padding: 52px 0 40px; }
.perks-in { list-style: none; margin: 0 auto; padding: 0 20px; max-width: 1240px; display: grid; grid-template-columns: 1fr 1fr; gap: 28px 16px; }
.perks-in li { border-top: 4px solid var(--blue); padding: 14px 0 2px; display: flex; flex-direction: column; }
.perks-in svg { width: 44px; height: 44px; color: var(--blue); margin-bottom: 12px; }
.perks-in p { font-family: var(--head); font-weight: 700; font-size: 0.98rem; line-height: 1.3; margin: 0 0 10px; }
.perks-in a, .back, .calc .back { text-decoration: none; }
.perks-in a { margin-top: auto; font-family: var(--head); font-weight: 700; font-size: 0.8rem; text-transform: uppercase; letter-spacing: 0.02em; display: inline-flex; align-items: center; gap: 8px; }
.perks-in a::before { content: ''; width: 6px; height: 6px; border: solid currentColor; border-width: 2px 2px 0 0; transform: rotate(45deg); }
.perks-in a:hover { text-decoration: underline; }

/* Секции */
.section { padding: 56px 0; }
.section h2 { font-size: clamp(26px, 7.4vw, 56px); margin-bottom: 28px; }
.section.tint { background: var(--pale); }
.lead { font-size: 1.2rem; line-height: 1.5; max-width: 38em; }
.caption { color: var(--grey); font-size: 0.98rem; margin-top: 22px; }
.risk { font-weight: 500; margin-top: 22px; }

/* Калькулятор */
.calc { background: var(--pale); border-radius: 0; padding: 22px 18px 26px; border: 2px solid var(--blue); }
.section.tint .calc { background: #fff; }
.steps-ind { display: flex; align-items: center; justify-content: space-between; margin-bottom: 20px; font-size: 0.9rem; color: var(--grey); font-family: var(--head); font-weight: 600; text-transform: uppercase; letter-spacing: 0.02em; }
.bars { display: flex; gap: 6px; }
.bars i { display: block; width: 36px; height: 6px; background: var(--pale-line); }
.bars i.on { background: var(--blue); }
.calc-grid { display: grid; gap: 24px; }
.slider-row + .slider-row { margin-top: 26px; }
.slider-head { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 8px; }
.slider-head label { color: var(--grey); }
.slider-head output { font-family: var(--head); font-size: 1.6rem; font-weight: 700; }
input[type=range] { -webkit-appearance: none; appearance: none; width: 100%; height: 34px; background: transparent; margin: 0; cursor: pointer; --p: 50%; }
input[type=range]::-webkit-slider-runnable-track { height: 8px; background: linear-gradient(to right, var(--blue) var(--p), var(--pale-line) var(--p)); }
input[type=range]::-webkit-slider-thumb { -webkit-appearance: none; width: 26px; height: 32px; margin-top: -12px; background: var(--indigo); border: 0; }
input[type=range]::-moz-range-track { height: 8px; background: var(--pale-line); }
input[type=range]::-moz-range-progress { height: 8px; background: var(--blue); }
input[type=range]::-moz-range-thumb { width: 26px; height: 32px; border-radius: 0; background: var(--indigo); border: 0; }
.slider-scale { display: flex; justify-content: space-between; font-size: 0.88rem; color: var(--grey); margin-top: 2px; }
.pay-label { color: var(--grey); margin: 0; }
.pay-sum { margin: 0 0 14px; font-family: var(--head); font-weight: 700; line-height: 1; }
#pay-num { font-size: clamp(44px, 13vw, 68px); color: var(--blue); }
.pay-cur { font-size: 1.1rem; color: var(--ink); text-transform: uppercase; }
.mode { display: flex; border: 2px solid var(--blue); overflow: hidden; background: #fff; margin-bottom: 12px; }
.mode button { flex: 1; min-height: 46px; padding: 0 8px; border: 0; background: transparent; color: var(--blue); cursor: pointer; font-family: var(--head); font-weight: 700; font-size: 0.8rem; text-transform: uppercase; letter-spacing: 0.02em; }
.mode button.on { background: var(--blue); color: #fff; }
.send-err { color: #c4261a; font-weight: 500; margin: 0 0 12px; }
.pay-small { color: var(--grey); font-size: 0.8rem; margin: 8px 0 14px; }
.pay-note { color: var(--grey); font-size: 0.95rem; margin-bottom: 18px; }
.q { font-family: var(--head); text-transform: uppercase; font-size: 1.3rem; font-weight: 700; margin-bottom: 16px; }
.back { margin-top: 18px; border: 0; background: none; color: var(--blue); cursor: pointer; padding: 6px 0; font-family: var(--head); font-weight: 700; font-size: 0.85rem; text-transform: uppercase; }
.back::before { content: '\2039\00a0'; }
.form-grid { display: grid; gap: 14px; }
.field label { display: block; color: var(--grey); font-size: 0.95rem; margin-bottom: 6px; }
.field input, .field select {
  width: 100%; height: 54px; padding: 0 14px; border: 2px solid var(--pale-line); border-radius: 0; background: #fff; color: var(--ink);
}
.field input:focus, .field select:focus { border-color: var(--blue); outline: 2px solid var(--blue); outline-offset: 0; }
.err-text { display: none; color: var(--err); font-size: 0.9rem; margin-top: 4px; }
.err .err-text { display: block; }
.err input, .err select { border-color: var(--err); }
.hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.consent { display: grid; grid-template-columns: 22px 1fr; gap: 10px; margin: 16px 0 18px; font-size: 0.92rem; color: var(--grey); }
.consent input { width: 22px; height: 22px; margin: 2px 0 0; accent-color: var(--blue); }
.consent .err-text { grid-column: 2; }
.consent.err label { color: var(--err); }
.micro { color: var(--grey); font-size: 0.92rem; margin: 12px 0 0; }
.done { padding: 24px 0 8px; }
.done-title { font-family: var(--head); text-transform: uppercase; font-size: 1.7rem; font-weight: 700; margin-bottom: 8px; }

/* Ситуации */
.cards { display: grid; gap: 12px; }
.card { border: 0; border-top: 4px solid var(--indigo); padding: 18px 0 8px; background: #fff; }
.num { display: block; color: var(--coral); font-family: var(--head); font-weight: 800; font-size: 1.1rem; margin-bottom: 12px; }
.card h3 { font-weight: 700; font-size: 1.1rem; margin-bottom: 8px; line-height: 1.25; }
.card p { margin: 0; color: var(--grey); }

/* Логика залога */
.split { display: grid; gap: 28px; align-items: center; }
.photo { margin: 0; overflow: hidden; }
.photo img { width: 100%; height: auto; }

/* Синие блоки */
.cta { background: linear-gradient(rgba(21, 95, 252, 0.8), rgba(21, 95, 252, 0.8)), url("img/сток/gruz_2.webp") center / cover no-repeat, var(--blue); color: #fff; position: relative; }
.cta h2 { color: #fff; }

/* Шаги */
.steps3 { list-style: none; margin: 0; padding: 0; counter-reset: s; display: grid; gap: 0; }
.steps3 li { counter-increment: s; border-top: 4px solid var(--indigo); padding: 20px 0; display: grid; gap: 6px; align-content: start; }
.steps3 li::before { content: counter(s, decimal-leading-zero); color: var(--coral); font-family: var(--head); font-weight: 800; }
.steps3 li b { font-family: var(--head); text-transform: uppercase; font-size: 1.2rem; font-weight: 700; line-height: 1.2; }
.steps3 li span { color: var(--grey); }
.section#kak .btn { margin-top: 8px; }

/* Пример, условия */
.terms { list-style: none; margin: 0; padding: 0; }
.terms li { display: grid; gap: 4px; padding: 16px 0; border-top: 2px solid var(--line); }
.terms li:last-child { border-bottom: 2px solid var(--line); }
.terms b { color: var(--grey); font-weight: 400; font-size: 0.95rem; }
.terms span { font-weight: 500; }

/* Вопросы */
.faq details { border-top: 2px solid var(--line); }
.faq details:last-of-type { border-bottom: 2px solid var(--line); }
.faq summary { list-style: none; cursor: pointer; padding: 20px 40px 20px 0; font-size: 1.1rem; font-weight: 500; position: relative; }
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after { content: '+'; position: absolute; right: 4px; top: 50%; transform: translateY(-50%); font-family: var(--head); font-size: 1.8rem; font-weight: 700; color: var(--blue); }
.faq details[open] summary::after { content: '\2212'; }
.faq details p { color: var(--grey); padding: 0 0 20px; margin: 0; max-width: 40em; }

/* Доверие */
.trust-grid { display: grid; gap: 20px; }
.trust-item { border-top: 4px solid var(--blue); padding-top: 14px; }
.t-label { color: var(--grey); font-family: var(--head); font-weight: 700; text-transform: uppercase; font-size: 0.8rem; letter-spacing: 0.04em; margin-bottom: 4px; }
.trust-item p { margin-bottom: 6px; }
.small { color: var(--grey); font-size: 0.92rem; }

/* Финальный призыв */
.cta h2 { max-width: 14em; text-transform: uppercase; }
.cta-actions { display: flex; flex-direction: column; gap: 12px; max-width: 420px; }
.cta .btn { width: 100%; }

/* Подвал */
.footer { background: #fff; border-top: 3px solid var(--blue); padding: 44px 0 56px; color: var(--grey); font-size: 14px; }
.footer-grid { display: grid; gap: 28px; }
.footer p { margin-bottom: 8px; }
.footer a { color: var(--indigo); }
.footer h3 { font-size: 1rem; color: var(--ink); margin-bottom: 10px; font-weight: 700; }
.footer ul { list-style: none; margin: 0; padding: 0; }
.footer li { margin-bottom: 8px; }
.footer-logo img { width: 150px; height: auto; margin-bottom: 14px; }
.footer .risk { color: var(--ink); }

/* Нижняя панель на телефоне */
.bar {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 20; display: grid; grid-template-columns: 1fr auto auto; gap: 10px;
  padding: 10px 12px calc(10px + env(safe-area-inset-bottom)); background: #fff; border-top: 3px solid var(--blue);
  transition: transform 0.2s;
}
.bar .btn { min-height: 52px; padding: 0 16px; font-size: 0.9rem; }
.bar .btn span { display: none; }
.bar .btn.ghost::before { display: none; }
.bar.hide { transform: translateY(110%); }

@media (min-width: 420px) {
  .bar .btn span { display: inline; }
}
@media (min-width: 640px) {
  .cards { grid-template-columns: 1fr 1fr; gap: 20px 24px; }
  .form-grid { grid-template-columns: 1fr 1fr 1fr; }
  .trust-grid { grid-template-columns: 1fr 1fr; }
  .terms li { grid-template-columns: 260px 1fr; gap: 24px; }
  .cta-actions { flex-direction: row; flex-wrap: wrap; max-width: none; }
  .cta .btn { width: auto; }
  .hero-row { flex-direction: row; flex-wrap: wrap; }
  .hero-field { flex: 1 1 260px; }
}
@media (min-width: 1000px) {
  body.has-bar { padding-bottom: 0; }
  .bar { display: none; }
  .strip { display: block; }
  .nav-call { display: none; }
  .logo img { width: 190px; }
  .nav-in { min-height: 60px; padding: 0 40px; }
  .menu { display: flex; align-items: center; gap: 34px; }
  .menu a { color: var(--ink); text-decoration: none; font-family: var(--head); font-weight: 600; font-size: 0.8rem; text-transform: uppercase; letter-spacing: 0.01em; }
  .menu a:hover { color: var(--blue); }
  .menu .menu-phone { color: var(--blue); font-weight: 700; }
  .header { border-bottom: 0; }
  .hero { display: block; min-height: clamp(560px, calc(100vh - 92px), 720px); }
  .hero-text { padding: 70px 0 90px max(40px, calc((100vw - 1240px) / 2 + 40px)); width: 62%; }
  .eyebrow { font-size: 1.6rem; max-width: 20em; margin-bottom: 10px; }
  .hero h1 { font-size: clamp(64px, 6.4vw, 96px); line-height: 0.98; }
  .hero h1 .eyebrow { font-size: 1.6rem; max-width: 20em; margin-bottom: 10px; }
  .hero-sub { font-size: 1.2rem; margin: 26px 0 28px; max-width: 28em; }
  .hero-row { max-width: 640px; }
  .hero-photo { position: absolute; right: 0; bottom: 0; top: 0; width: auto; aspect-ratio: 1128 / 1400; height: auto; max-height: none; max-width: 52%; }
  .hero-photo img { object-position: right bottom; }
  .hero.pattern::before { width: 46%; clip-path: polygon(14% 0, 100% 0, 100% 100%, 0 100%); }
  .perks { padding: 68px 0 56px; }
  .perks-in { grid-template-columns: repeat(4, 1fr); gap: 32px; padding: 0 40px; }
  .perks-in li { min-height: 150px; }
  .perks-in p { font-size: 1.1rem; }
  .section { padding: 96px 0; }
  .section h2 { font-size: 50px; margin-bottom: 44px; }
  .wrap { padding: 0 40px; }
  .calc { padding: 40px 44px 44px; }
  .calc-grid { grid-template-columns: 1.15fr 1fr; gap: 64px; align-items: center; }
  .cards { grid-template-columns: repeat(3, 1fr); gap: 28px 32px; }
  .split { grid-template-columns: 1.1fr 1fr; gap: 72px; }
  .steps3 { grid-template-columns: repeat(3, 1fr); gap: 32px; }
  .trust-grid { grid-template-columns: repeat(3, 1fr); gap: 28px; }
  .footer-grid { grid-template-columns: 2.4fr 1fr; gap: 56px; }
  .footer-legal { columns: 2; column-gap: 40px; }
  .footer-legal > p, .footer-legal > .psk-block { break-inside: avoid; }
  .footer-legal > .psk-block { margin-top: 0; }
}
@media (min-width: 1000px) and (max-width: 1200px) {
  .hero-text { width: 58%; }
  .nav-in .menu { gap: 22px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  * { transition: none !important; animation: none !important; }
}

/* Что принимаем в залог */
.ztabs { display: flex; flex-wrap: wrap; gap: 4px 0; margin: 0 0 20px; }
.ztab { border: 0; border-bottom: 3px solid transparent; background: none; padding: 6px 0; cursor: pointer; font-family: var(--head); font-weight: 700; font-size: 0.8rem; letter-spacing: 0.04em; text-transform: uppercase; color: var(--ink); }
.ztab:not(:last-child)::after { content: "\00B7"; display: inline-block; margin: 0 10px; color: var(--grey); }
.ztab:hover { color: var(--blue); }
.ztab[aria-pressed="true"] { color: var(--blue); border-bottom-color: var(--blue); }
.zgal { max-width: 1120px; outline-offset: 4px; }
.zstage { position: relative; background: var(--ink); aspect-ratio: 4 / 3; overflow: hidden; touch-action: pan-y; cursor: zoom-in; }
.zstage[hidden] { display: none; }
.zstage img { width: 100%; height: 100%; object-fit: cover; display: block; }
.zarrow { position: absolute; top: 50%; transform: translateY(-50%); width: 44px; height: 44px; display: flex; align-items: center; justify-content: center; border: 0; border-radius: 0; background: #fff; color: var(--blue); cursor: pointer; z-index: 2; }
.zarrow:hover { background: var(--pale); }
.zprev { left: 0; }
.znext { right: 0; }
.zcount { position: absolute; left: 0; bottom: 0; padding: 6px 12px; background: var(--blue); color: #fff; font-family: var(--head); font-weight: 700; font-size: 0.8rem; letter-spacing: 0.06em; text-transform: uppercase; }
.zbadge { position: absolute; right: 0; top: 0; padding: 5px 10px; background: rgba(14, 18, 48, 0.8); color: #fff; font-family: var(--head); font-weight: 700; font-size: 0.7rem; letter-spacing: 0.06em; text-transform: uppercase; z-index: 1; }
.zbadge[hidden] { display: none; }
.zcap { min-height: 1.6em; margin: 10px 0 12px; font-weight: 500; font-size: 1rem; }
.zthumbs { display: flex; gap: 8px; overflow-x: auto; padding-bottom: 6px; scroll-snap-type: x proximity; }
.zthumb { flex: 0 0 96px; align-self: flex-start; padding: 0; border: 3px solid transparent; background: none; cursor: pointer; scroll-snap-align: start; opacity: 0.7; }
.zthumb img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; display: block; }
.zthumb[aria-current="true"] { border-color: var(--blue); opacity: 1; }
.zthumb[hidden], .zthumbs[hidden], .zcap[hidden] { display: none; }
.zlb { position: fixed; inset: 0; z-index: 1000; background: rgba(5, 8, 25, 0.94); display: flex; align-items: center; justify-content: center; touch-action: pan-y; }
.zlb[hidden] { display: none; }
.zlb > img { max-width: 100%; max-height: 100%; object-fit: contain; }
.zlb .zcount { left: 50%; bottom: 16px; transform: translateX(-50%); }
.zlb-close { position: absolute; top: 0; right: 0; width: 48px; height: 48px; border: 0; background: #fff; color: var(--blue); font-size: 2rem; line-height: 1; cursor: pointer; z-index: 3; }
@media (min-width: 1000px) {
  .ztab { font-size: 0.95rem; }
  .zthumb { flex-basis: 128px; }
  .zstage { aspect-ratio: 16 / 10; }
  .zarrow { width: 52px; height: 52px; }
  .zlb > img { max-width: 92vw; max-height: 92vh; }
}
.zempty { padding: 28px 20px; background: var(--pale); }
.zempty p { font-weight: 500; font-size: 1.1rem; }
.zempty .btn { margin: 0; }
#zalogi .btn { margin-top: 8px; }

/* ===== Цвет в стиле Avant ===== */
.section.grey { background: var(--pale); } /* ситуации: светло-голубой, чередуется с белыми секциями */
.ac { stroke: var(--coral); }
.ico { width: 44px; height: 44px; color: var(--blue); margin-bottom: 14px; display: block; }
.section.grey .card { background: #fff; border-top-color: var(--blue); padding: 22px 20px 20px; }
.section.grey .card .num { margin-bottom: 8px; }

/* Двухцветные заголовки секций */
.section h2 .h-a, .section h2 .h-b { display: block; }
.section h2 .h-a { color: var(--ink); font-size: 0.58em; font-weight: 700; letter-spacing: 0.02em; margin-bottom: 0.18em; }
.section h2 .h-b { color: var(--blue); font-size: 1.04em; font-weight: 800; }
.cta h2 .h-a { color: #fff; }
.cta h2 .h-b { color: #fff; }
.cta h2 { max-width: 16em; }

/* Выделенная фраза с красным подчёркиванием ниже текста */
.hl { background: none; color: inherit; text-decoration: underline; text-decoration-color: #FF4B3A; text-decoration-thickness: 3px; text-underline-offset: 0.18em; text-decoration-skip-ink: none; }

/* Кластеры синих треугольников у края секций */
.deco { position: relative; overflow: hidden; }
.deco > .wrap { position: relative; z-index: 1; }
.tri { position: absolute; z-index: 0; width: 150px; height: 150px; pointer-events: none; opacity: 0.9;
  background: no-repeat center / contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 160'%3E%3Cpath d='M0 160 40 90 80 160z' fill='%23155ffc'/%3E%3Cpath d='M60 160 100 100 140 160z' fill='%231b16bc'/%3E%3Cpath d='M90 100 120 50 150 100z' fill='%237fa6ff'/%3E%3Cpath d='M120 160 140 128 160 160z' fill='%23155ffc'/%3E%3Cpath d='M20 90 40 60 60 90z' fill='%237fa6ff'/%3E%3C/svg%3E"); }
.tri-r { right: -20px; top: 0; transform: scaleY(-1); }
.tri-l { left: -20px; bottom: 0; }
#kak .tri-r { top: auto; bottom: 0; transform: none; }


/* Баннер «стена слов» */
.wall { position: relative; overflow: hidden; background: var(--blue); color: #fff; padding: 22px 0; }
.wall-rows { display: flex; flex-direction: column; gap: 4px; position: relative; z-index: 1; }
.wall-row { white-space: nowrap; font-family: var(--head); font-weight: 800; text-transform: uppercase; font-size: clamp(30px, 8.4vw, 56px); line-height: 1.06; letter-spacing: 0.01em; }
.wall-row span { display: inline-block; animation: wall-l 160s linear infinite; }
.wall-row:nth-child(even) span { animation-name: wall-r; }
.wall-row:nth-child(odd) { color: #fff; }
.wall-row:nth-child(even) { color: #fff; }
.wall-row .sl { display: inline-block; width: 0.28em; height: 0.28em; border-radius: 50%; background: #ff4b3a; margin: 0 0.5em; vertical-align: middle; position: relative; top: -0.04em; }
.wall-row.r2 span { margin-left: -220px; }
.wall-row.r3 span { margin-left: -90px; }
.wall-row.r4 span { margin-left: -380px; }
.wall-row.r5 span { margin-left: -160px; }
.wall-row.r1 span { margin-left: -20px; }
@keyframes wall-l { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@keyframes wall-r { from { transform: translateX(-50%); } to { transform: translateX(0); } }
.wall-man { position: absolute; z-index: 2; left: 4%; bottom: 8px; width: 92%; height: auto; max-width: none; pointer-events: none; }
.wall { padding-bottom: calc(92vw * 738 / 1106 + 16px); }
@media (min-width: 1000px) {
  .wall { padding: 44px 0; min-height: 580px; display: flex; align-items: center; }
  .wall-man { left: max(-2%, calc((100vw - 1240px) / 2 - 100px)); width: auto; height: 76%; bottom: 0; }
  .wall-rows { width: 100%; gap: 8px; }
  .wall-row { font-size: clamp(64px, 6.2vw, 92px); }
}

@media (min-width: 1000px) { .tri { width: 230px; height: 230px; } }

/* Красные акценты */
.btn::before { border-color: currentColor; }
.btn.white::before, .btn.ghost::before { border-color: var(--coral); }
.section h2::before, .cta h2::before { content: ''; display: block; width: 40px; height: 4px; background: var(--coral); margin-bottom: 16px; }

/* Пустой блок отзывов скрыт */
#otzyvy.is-empty { display: none; }


.hero-facts { list-style: none; margin: 18px 0 0; padding: 18px 0 0; border-top: 1px solid rgba(255, 255, 255, 0.25); display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.hero-facts li { display: flex; flex-direction: column; gap: 6px; padding: 14px 12px; text-align: center; border-left: 1px solid rgba(255, 255, 255, 0.3); }
.hero-facts li:first-child { border-left: 0; }
.hero-facts b { font-family: var(--head); font-weight: 800; font-size: 1.75rem; line-height: 1.1; color: #fff; white-space: nowrap; }
.hero-facts span { overflow-wrap: normal; font-size: 0.8125rem; line-height: 1.3; font-weight: 500; text-transform: uppercase; letter-spacing: 0.06em; color: #BFD3FF; }
@media (max-width: 899px) {
  .hero-facts li { padding: 12px 6px; }
  .hero-facts b { font-size: 1.45rem; }
  .hero-facts span { font-size: 0.68rem; letter-spacing: 0.03em; }
}
@media (min-width: 900px) {
  .hero-facts { grid-template-columns: repeat(3, 1fr); }
  .hero-facts li { padding: 4px 14px; text-align: left; border-top: 0 !important; border-left: 1px solid rgba(255, 255, 255, 0.3) !important; }
  .hero-facts li:first-child { border-left: 0 !important; padding-left: 0; }
  .hero-facts b { font-size: 2.25rem; }
}

/* Согласие на первом экране, номер из первого экрана, экран после отправки */
.hero-consent { margin: 8px 0 0; font-size: 0.8125rem; line-height: 1.4; color: rgba(255, 255, 255, 0.7); max-width: 44em; }
.hero-consent a { color: inherit; text-decoration: underline; }
.hp input { width: 1px; height: 1px; }
.cta-form { margin: 0 0 24px; max-width: 640px; }
.phone-fixed { margin: 0; min-height: 54px; display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.phone-fixed b { font-weight: 500; font-size: 1.1rem; }
.linklike { border: 0; background: none; padding: 0; min-height: 44px; color: var(--blue); text-decoration: underline; cursor: pointer; }
.field.is-fixed > input { display: none; }
.done-hours { color: var(--grey); }
.done-actions { display: flex; flex-direction: column; gap: 12px; max-width: 420px; margin-top: 16px; }
.bar .bar-max { width: 52px; padding: 0; }
.bar .bar-max svg { margin: 0; }
.bar .bar-max::before { display: none; }
.soglasie { max-width: 860px; margin: 0 auto; padding: 40px 20px 72px; }
.soglasie h1 { font-size: clamp(28px, 6vw, 44px); margin-bottom: 28px; }
.soglasie h2 { font-size: 1.15rem; margin: 28px 0 10px; }
.soglasie li { margin-bottom: 6px; }

/* Тап-зоны не меньше 44px */
.ztab { min-height: 44px; }
.perks-in a { min-height: 44px; }
.footer li a { display: inline-flex; align-items: center; min-height: 44px; }
.footer p a { padding: 12px 0; }
.faq summary { min-height: 44px; }
.back { min-height: 44px; }

/* Подзаголовок секции «Что принимаем в залог»: без ограничения ширины, на десктопе в одну строку */
#zalogi .lead { max-width: none; }
@media (min-width: 1000px) { .lead.lead-wide { max-width: none; white-space: nowrap; } }

/* Полная стоимость займа (ст. 28 38-ФЗ): подпись под платежом, блок в подвале, Telegram */
.pay-psk { color: var(--grey); font-size: 0.8rem; line-height: 1.35; margin: 6px 0 4px; }
.pay-psk a { color: var(--indigo); }
.psk-block { margin: 16px 0 14px; padding: 14px 0; border-top: 2px solid var(--line); border-bottom: 2px solid var(--line); }
.psk-block h3 { margin-bottom: 10px; }
.psk-block p, .psk-block li { font-size: 14px; line-height: 1.5; margin: 0 0 8px; }
.psk-block b { color: var(--ink); }
.psk-block ul { padding: 0; }
.tg-ico { width: 20px; height: 20px; margin-right: 8px; flex: none; }
.bar .bar-max svg { fill: currentColor; stroke: none; }
.bar a.bar-max[aria-label$="Max"] svg { fill: none; stroke: currentColor; }
.perks-in li:last-child:nth-child(odd) { grid-column: 1 / -1; }
@media (min-width: 1000px) {
  .perks-in { grid-template-columns: repeat(5, 1fr); gap: 28px; }
  .perks-in li:last-child:nth-child(odd) { grid-column: auto; }
}

/* Офисы */
.of-grid { display: grid; gap: 32px; }
.of-card { border-top: 4px solid var(--blue); padding-top: 14px; }
.of-main { aspect-ratio: 4 / 3; background: var(--grey-bg); overflow: hidden; }
.of-main img, .of-th img { display: block; width: 100%; height: 100%; object-fit: cover; }
.of-thumbs { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; margin: 6px 0 14px; }
.of-th { aspect-ratio: 4 / 3; padding: 0; border: 2px solid transparent; background: var(--grey-bg); cursor: pointer; overflow: hidden; border-radius: var(--r); }
.of-th:hover { border-color: var(--blue); }
.of-city { font-family: var(--head); font-weight: 800; font-size: 1.3rem; margin: 0 0 4px; color: var(--blue); }
.of-addr { font-weight: 600; margin: 0 0 8px; }
.of-row, .of-hours { margin: 0 0 4px; color: var(--grey); }
.of-row a { font-weight: 700; text-decoration: none; }
.of-route { display: inline-block; margin-top: 8px; font-family: var(--head); font-weight: 700; font-size: 0.85rem; text-transform: uppercase; letter-spacing: 0.02em; text-decoration: none; }
.of-route:hover { text-decoration: underline; }
.of-brn { margin-top: 28px; padding-top: 14px; border-top: 1px solid var(--line); }
@media (min-width: 900px) { .of-grid { grid-template-columns: repeat(3, 1fr); gap: 28px; } }

.more-note { margin: 10px 0 0; font-size: 0.82rem; line-height: 1.4; color: var(--grey); }
.more-check { margin: 4px 0 0; }
.perks-in .perk-sub { display: block; margin: -4px 0 10px; font-size: 0.78rem; line-height: 1.35; color: var(--grey); }

/* Подтверждение вместо формы с телефоном, подпись поля, шаг «Дополните заявку» */
.pf-label { display: block; margin: 0 0 6px; font-size: 0.85rem; line-height: 1.3; color: rgba(255, 255, 255, 0.85); }
.pf-done { padding: 4px 0 0; }
.pf-done-text { margin: 0 0 16px; font-size: 1.25rem; line-height: 1.4; color: #fff; max-width: 28em; }
.pf-done-text b { font-weight: 700; }
.pf-done .btn { min-height: 58px; }
.skip { display: block; margin: 16px 0 0; padding: 0; min-height: 44px; border: 0; background: none; color: var(--blue); font-family: var(--head); font-weight: 700; font-size: 1rem; text-decoration: underline; text-underline-offset: 0.2em; cursor: pointer; }
.micro a { color: var(--blue); }
.done-title { margin-bottom: 8px; }

/* Финальный блок: главная кнопка сплошная, остальные контурные одного размера */
.cta-actions .btn { min-height: 58px; font-size: 1rem; text-transform: uppercase; }
@media (min-width: 640px) {
  .cta-actions { display: grid; grid-template-columns: repeat(3, 1fr); max-width: 960px; }
  .cta .cta-actions .btn { width: 100%; padding: 0 12px; white-space: nowrap; }
}

/* Отзывы: карточки одной высоты */
#reviews .reviews-list { align-items: stretch; }
.review-card { height: 100%; }

/* Телефон: ссылки в карточках преимуществ в одну строку */
@media (max-width: 639px) {
  .perks-in a { font-size: 0.66rem; letter-spacing: 0; gap: 6px; white-space: nowrap; }
}
