/* footer: v4-ft */
.v4-ft{--navy:#323232;--navy-d:#1a1a1a;font-family:'Inter',sans-serif;background:var(--navy);color:rgba(255,255,255,.65);padding:64px 0 0}

.v4-ft__top{display:grid;grid-template-columns:1.1fr 2fr;gap:48px;padding-bottom:44px;border-bottom:1px solid rgba(255,255,255,.1)}

.v4-ft__brand{display:flex;flex-direction:column;gap:8px}
.v4-ft__logo{font-size:19px;font-weight:400;color:#fff;letter-spacing:2px;margin-bottom:6px}
.v4-ft__desc{font-size:13.5px;color:rgba(255,255,255,.65);margin-bottom:6px}
.v4-ft__addr{font-size:13px;line-height:1.6;color:rgba(255,255,255,.65);margin-bottom:10px}
.v4-ft__tel{font-size:17px;font-weight:800;color:#fff;text-decoration:none}
.v4-ft__tel:hover{color:#fff}
.v4-ft__mail{font-size:13.5px;color:rgba(255,255,255,.65);text-decoration:none;margin-bottom:14px}
.v4-ft__mail:hover{color:#fff}

.v4-btn-red{background:var(--red);color:#fff;padding:12px 20px;font-size:13.5px;font-weight:700;font-family:inherit;border:none;cursor:pointer;display:inline-flex;width:fit-content;margin:6px 0 10px;transition:background .18s,transform .16s cubic-bezier(.22,.61,.36,1),box-shadow .2s}
.v4-btn-red:hover{background:var(--red-h);transform:translateY(-2px);box-shadow:0 18px 44px rgba(20,30,50,.16)}
.v4-ft__regions{font-size:12.5px;font-weight:700;color:#fff;text-decoration:none;width:fit-content;border-bottom:1px solid rgba(255,255,255,.3)}





.v4-ft__cols{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.v4-ft__col{display:flex;flex-direction:column;gap:10px}
.v4-ft__col h4{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#fff;margin-bottom:4px}
.v4-ft__col a{font-size:13.5px;color:rgba(255,255,255,.65);text-decoration:none;transition:color .15s}
.v4-ft__col a:hover{color:#fff}
.v4-ft__more{color:#fff !important;font-weight:700}

.v4-ft__bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;padding:22px 0;font-size:12px;color:rgba(255,255,255,.45)}
.v4-ft__legal{display:flex;gap:20px}
.v4-ft__legal a{color:rgba(255,255,255,.45);text-decoration:none}
.v4-ft__legal a:hover{color:#fff}

@media(max-width:900px){
  .v4-ft__top{grid-template-columns:1fr;gap:32px}
  .v4-ft__cols{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:560px){
  .v4-ft__cols{grid-template-columns:1fr}
}

.v4-ft .wrap{padding-left:40px;padding-right:40px}
/* regionsmodal */


.pp-wrap { padding: 0 0 60px; }

/* Полное сравнение тарифов — компонент pr1, адаптирован под общий стиль сайта */
.pr1{--red:#A82319;--red-h:#8E1D14;--navy:#323232;--muted:#5b6a88;--line:#eeeeee;background:#fff;padding:64px 0}
.pr1-wrap{max-width:1280px;margin:0 auto;padding:0 40px}

.pr1-head{text-align:center;max-width:700px;margin:0 auto 36px}
.pr1-title{font-size:clamp(24px,3vw,32px);font-weight:800;color:var(--navy);line-height:1.2;margin-bottom:12px}
.pr1-sub{font-size:14.5px;color:var(--muted);line-height:1.6}

.pr1-tabs{display:flex;justify-content:center;gap:28px;margin:0 auto 30px;flex-wrap:wrap;border-bottom:1px solid var(--line);width:fit-content}
.pr1-tab{padding:12px 2px;margin-bottom:-1px;border-radius:0;font-size:14px;font-weight:700;color:var(--muted);border:0;border-bottom:2px solid transparent;cursor:pointer;background:none;font-family:inherit;transition:border-color .18s,color .18s}
.pr1-tab--act{color:var(--navy);border-bottom-color:var(--red)}

.pr1-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(20,30,50,.06)}
.pr1-table{width:100%;min-width:820px;border-collapse:separate;border-spacing:0;font-size:14.5px;table-layout:fixed}
/* table-layout:fixed + явные проценты вместо auto — с auto браузер распределял ширину колонок
   по-разному на живой странице и в статичном мокапе (при абсолютно идентичных HTML/computed
   CSS ячеек — не удалось найти конкретное правило-причину даже полным отключением всех
   сайт-вайд стилей шаблона, похоже на особенность браузерного intrinsic-sizing алгоритма при
   разном окружении страницы), из-за чего "120 050 ₽"/"227 682 ₽" переносились некрасиво.
   Фиксированные проценты дают одинаковый, предсказуемый результат независимо от окружения.
   Найдено 2026-08-10 (скриншот Игоря, "Посмотри на переносы"). */
.pr1-th--svc{width:41%}
.pr1-hrow .pr1-th:not(.pr1-th--svc){width:14.75%}
/* Сайт-вайд утечка: неограниченный селектор `table{border-radius:10px;border:1px solid #d9d9d9;
   box-shadow:...;overflow:hidden;max-width:1052px;margin:0 auto;background:#fff}`
   (template_styles.min.css) добавляет СВОЮ рамку+скругление на любой <table>, включая
   .pr1-table — накладывается на уже собственную рамку/скругление контейнера .pr1-scroll и
   даёт видимый "двойной" уголок. Найдено 2026-08-10 (скриншот Игоря, "Таблицу не поправил"
   — крупный план углов). Гасим все свойства этого легаси-правила на самой таблице, скругление
   и рамку оставляем только на .pr1-scroll. */
.pr1-table{border:none;border-radius:0;box-shadow:none;max-width:none;margin:0;background:transparent;overflow:visible}

.pr1-hrow .pr1-th{background:#fff;color:var(--navy);padding:22px 18px 20px;text-align:center;vertical-align:bottom;border-bottom:2px solid var(--line);font-size:14.5px;border-right:none}
/* Сайт-вайд утечка (тот же файл/класс бага, что и .pr1-table выше): неограниченный
   `table thead th{font-size:1rem;border-right:1px solid #d9d9d9;...}` не перебивался нашими
   правилами для .pr1-th/.pr1-th--svc, т.к. мы никогда явно не задавали font-size/border-right
   на самих <th> — только на дочерних элементах. th-1rem(16px) вместо унаследованных 14.5px
   менял внутренние пропорции auto table layout и расталкивал колонки (первая — шире, тарифные —
   уже, из-за чего "120 050 ₽"/"227 682 ₽" переносились некрасиво). Найдено 2026-08-10
   (скриншот Игоря, "Посмотри на переносы"). */
.pr1-hrow .pr1-th--svc{font-size:14.5px;border-right:none}
.pr1-hrow .pr1-th--svc{background:#fff;text-align:left;min-width:210px;padding:0;vertical-align:top;border-top-left-radius:17px}
.pr1-hrow .pr1-th:last-child{border-top-right-radius:17px}
.pr1-table tbody tr:last-child .pr1-svc{border-bottom-left-radius:17px}
.pr1-table tbody tr:last-child td:last-child{border-bottom-right-radius:17px}
.pr1-svc-inner{position:relative;overflow:hidden;height:100%;padding:22px 18px 20px;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start}
.pr1-svc-decor{position:absolute;top:50%;left:68%;transform:translate(-50%,-50%);font-size:145px;font-weight:800;line-height:1;color:rgba(50,50,50,.045);pointer-events:none;user-select:none;font-family:'SaarSP',Inter,sans-serif;z-index:0}
.pr1-svc-top{position:relative;z-index:1}
.pr1-svc-logo{display:block;font-family:'SaarSP',Inter,sans-serif;font-size:13px;font-weight:400;letter-spacing:1.5px;text-transform:uppercase;color:var(--navy);margin-bottom:10px}
.pr1-svc-logo-accent{color:var(--red)}
.pr1-svc-label{display:block;font-size:17px;font-weight:800;color:var(--navy);margin-bottom:8px}
.pr1-svc-desc{position:relative;z-index:1;font-size:12.5px;line-height:1.55;color:var(--muted);max-width:190px}
.pr1-tier{display:block;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.pr1-price{display:block;font-size:26px;font-weight:800;letter-spacing:-.01em;line-height:1.1;margin-bottom:14px;color:var(--navy)}
.pr1-cur{font-size:18px;font-weight:700}
.pr1-badge{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;background:var(--red);color:#fff;border-radius:999px;padding:3px 10px;margin-bottom:8px}
.pr1-btn{display:inline-block;width:100%;max-width:160px;font-family:inherit;font-size:13px;font-weight:700;color:var(--navy);background:#f1f2f4;border:1px solid var(--line);border-radius:999px;padding:10px 14px;cursor:pointer;text-decoration:none;text-align:center;transition:background .15s,transform .15s}
.pr1-btn:hover{background:#e8e9ec;transform:translateY(-1px)}
.pr1-btn--rec{background:var(--red);border-color:var(--red);color:#fff}
.pr1-btn--rec:hover{background:var(--red-h);border-color:var(--red-h)}

.pr1-cat td{background:var(--navy)!important;color:#fff!important;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;padding:10px 18px;text-align:left!important;border-bottom:1px solid var(--navy)}
.pr1-cat:first-child td{border-top:0}
.pr1-table tbody td{padding:13px 18px;border-bottom:1px solid var(--line);vertical-align:middle;color:var(--navy);text-align:center;font-size:14px;font-weight:500}
.pr1-table tbody tr:last-child td{border-bottom:0}
.pr1-table tbody tr:nth-child(even) td{background:#f7f7f7}

.pr1-svc{text-align:left!important;font-weight:600;color:var(--navy);min-width:210px;position:sticky;left:0;z-index:2;background:#fff;box-shadow:1px 0 0 var(--line)}
.pr1-table tbody tr:nth-child(even) td.pr1-svc{background:#f7f7f7}

.pr1-table tbody tr{transition:background .15s}
.pr1-table tbody tr:hover td{background:#eeeeee}
.pr1-table tbody tr:hover td.pr1-svc{background:#eeeeee}

.pr1-yes{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:rgba(36,162,54,.12);color:#24A236;font-size:12px;font-weight:800}
.pr1-no{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:rgba(168,35,25,.1);color:var(--red);font-size:11px;font-weight:800}
.pr1-dash{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#f1f2f4;color:#9aa1af;font-size:13px;font-weight:700}

.pr1-calc{display:flex;justify-content:center;margin-top:24px}
.pr1-calc-link{display:inline-flex;align-items:center;gap:6px;font-size:14.5px;font-weight:700;color:var(--red);text-decoration:none;background:none;border:0;cursor:pointer;font-family:inherit;padding:0}
.pr1-calc-link span{transition:transform .18s}
.pr1-calc-link:hover{color:var(--red-h);text-decoration:underline}
.pr1-calc-link:hover span{transform:translateX(2px)}

@media(max-width:900px){
  .pr1-th{padding:18px 14px 16px}
  .pr1-price{font-size:22px}
}
@media(max-width:640px){
  .pr1{padding:36px 0}
  .pr1-wrap{padding:0 20px}
  .pr1-price{font-size:20px}
  .pr1-tabs{gap:20px}
}

.pr1-mobile{display:none}
@media(max-width:760px){
  .pr1-scroll{display:none}
  .pr1-mobile{display:block}
}

.pr1-mtabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.pr1-mtab{padding:9px 14px;border-radius:999px;font-size:13px;font-weight:700;color:var(--muted);border:1px solid var(--line);background:#fff;cursor:pointer;font-family:inherit;transition:background .15s,color .15s,border-color .15s}
.pr1-mtab--act{background:var(--navy);color:#fff;border-color:var(--navy)}

.pr1-msummary{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;margin-bottom:16px;text-align:center;box-shadow:0 4px 16px rgba(20,30,50,.05)}
.pr1-msummary .pr1-btn{max-width:none;width:100%}

.pr1-mlist{list-style:none;margin:0;padding:0;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff}
.pr1-mitem{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--line);font-size:13.5px}
.pr1-mitem:last-child{border-bottom:0}
.pr1-mcat{list-style:none;background:var(--navy);color:#fff;font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;padding:9px 16px;border-bottom:1px solid var(--navy)}
.pr1-mcat:first-child{border-top:0}
.pr1-mitem:nth-child(even){background:#f7f7f7}
.pr1-mitem-label{color:var(--navy);font-weight:500;flex:1;min-width:0}
.pr1-mitem-val{flex:none;display:flex;align-items:center;gap:6px;color:var(--muted);font-size:13px;text-align:right;max-width:45%}

.pp-seo { margin-top: 0; padding: 0 0 56px; background: #fff; }
.pp-seo__wrap { max-width: 1280px; margin: 0 auto; padding: 0 40px; }
.pr1-notice { display:flex; gap:16px; align-items:flex-start; background:var(--navy); box-shadow:0 0 20px rgba(20,30,50,.10); border-radius:16px; padding:22px 24px; margin:0 0 48px; }
.pr1-notice__ico { width:48px; height:48px; border-radius:50%; background:#fff; display:flex; align-items:center; justify-content:center; flex:none; }
.pr1-notice svg { width:22px; height:22px; }
.pr1-notice__title { font-weight:700; margin:0 0 6px; color:#fff; }
.pr1-notice__subtitle { margin:0; color:rgba(255,255,255,.7); }
.pr1-notice__phone { display:inline-flex; align-items:center; gap:10px; margin-top:14px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.16); border-radius:999px; padding:10px 20px; text-decoration:none; transition:background .15s,transform .15s; }
.pr1-notice__phone:hover { background:rgba(255,255,255,.15); transform:translateY(-1px); }
.pr1-notice__phone-ico { flex:none; }
.pr1-notice__phone span { color:#fff; font-weight:800; font-size:15px; white-space:nowrap; }
@media(max-width:600px) {
  .pr1-notice { flex-direction:column; padding:20px; gap:14px; }
  .pr1-notice__ico { width:40px; height:40px; }
  .pr1-notice__phone { width:100%; justify-content:center; }
}

/* SEO-текст страницы "Цены" — визуальный язык как у seotext/v5-st (нумерованные строки),
   а не голые <h2>/<p>/<ul> */
.ppx-phone-inline { display:inline-flex; align-items:center; gap:5px; background:rgba(168,35,25,.08); color:var(--red); font-weight:800; text-decoration:none; padding:2px 10px 2px 6px; border-radius:999px; white-space:nowrap; transition:background .15s; }
.ppx-phone-inline svg { flex:none; }
.ppx-phone-inline:hover { background:rgba(168,35,25,.16); }

.ppx-discount__grid { display:grid; grid-template-columns:300px 1fr; gap:0; background:#fff; }
.ppx-discount__stat { position:relative; background:var(--navy); padding:40px 32px; display:flex; flex-direction:column; justify-content:center; align-items:flex-start; overflow:hidden; }
.ppx-discount__stat-decor { position:absolute; top:-30px; right:-10px; font-size:190px; font-weight:800; line-height:1; color:rgba(255,255,255,.06); z-index:0; pointer-events:none; user-select:none; }
.ppx-discount__stat-logo { position:absolute; top:24px; left:32px; font-size:13px; font-weight:400; letter-spacing:2px; text-transform:uppercase; color:#fff; z-index:1; }
.ppx-discount__stat-num { font-size:clamp(56px,7vw,76px); font-weight:800; line-height:.9; color:#fff; letter-spacing:-1px; display:flex; align-items:baseline; gap:8px; position:relative; z-index:1; }
.ppx-discount__stat-unit { font-size:18px; font-weight:700; color:var(--red); }
.ppx-discount__stat-label { margin-top:10px; font-size:14px; line-height:1.5; color:rgba(255,255,255,.72); max-width:220px; position:relative; z-index:1; }
.ppx-discount__stat-note { margin-top:16px; font-size:12px; line-height:1.5; color:rgba(255,255,255,.5); max-width:220px; position:relative; z-index:1; }
.ppx-discount__content { padding:40px 44px; display:flex; flex-direction:column; justify-content:center; }
.ppx-discount__h2 { font-size:clamp(20px,2vw,27px); font-weight:800; color:var(--navy); line-height:1.22; margin:0 0 8px; }
.ppx-discount__h2 b { color:var(--red); }
.ppx-discount__text { font-size:14px; color:var(--muted); line-height:1.55; margin:0 0 20px; max-width:560px; }
.ppx-discount__list { list-style:none; margin:0 0 20px; padding:0; display:grid; grid-template-columns:repeat(2,1fr); gap:12px 24px; }
@media(max-width:560px) { .ppx-discount__list { grid-template-columns:1fr; } }
.ppx-discount__item { display:flex; align-items:center; gap:12px; font-size:14px; }
.ppx-discount__item-ico { flex:none; width:30px; height:30px; display:flex; align-items:center; justify-content:center; }
.ppx-discount__item a { color:var(--navy); font-weight:700; text-decoration:none; transition:color .18s; }
.ppx-discount__item a:hover { color:var(--red); }
.ppx-discount__actions { display:flex; align-items:center; flex-wrap:wrap; gap:20px; }
.ppx-discount__cta { display:inline-flex; align-items:center; gap:10px; background:var(--red); color:#fff; border-radius:999px; padding:14px 26px; font-size:14.5px; font-weight:700; text-decoration:none; border:none; cursor:pointer; font-family:inherit; transition:background .18s,transform .16s cubic-bezier(.22,.61,.36,1),box-shadow .2s; }
.ppx-discount__cta:hover { background:var(--red-h); transform:translateY(-2px); box-shadow:0 18px 44px rgba(20,30,50,.16); }
.ppx-discount__phone { display:inline-flex; align-items:center; gap:10px; text-decoration:none; }
.ppx-discount__phone-ico { flex:none; width:40px; height:40px; border-radius:50%; background:var(--navy); color:#fff; display:flex; align-items:center; justify-content:center; }
.ppx-discount__phone-num { display:block; font-size:15px; font-weight:800; color:var(--navy); transition:color .18s; }
.ppx-discount__phone-label { display:block; font-size:12px; color:var(--muted); }
.ppx-discount__phone:hover .ppx-discount__phone-num { color:var(--red); }
@media(max-width:860px) {
  .ppx-discount__grid { grid-template-columns:1fr; }
  .ppx-discount__stat { padding:56px 28px 28px; }
  .ppx-discount__stat-label { max-width:none; }
  .ppx-discount__content { padding:32px 28px; }
}
.ppx-lead { font-size:15px; line-height:1.7; color:var(--muted); max-width:820px; margin:0 0 8px; }
.ppx-lead--top { font-size:16px; line-height:1.8; color:var(--text); margin-bottom:32px; }
.ppx-rows { display:flex; flex-direction:column; }
.ppx-row { padding:32px 0; border-top:1px solid var(--line); }
.ppx-row:last-child { border-bottom:1px solid var(--line); }
.ppx-body { min-width:0; }
.ppx-title { font-size:20px; font-weight:800; color:var(--navy); margin-bottom:10px; }
.ppx-price-badge { display:inline-block; background:var(--red); color:#fff; font-weight:800; font-size:14px; border-radius:999px; padding:6px 16px; margin-bottom:14px; }
.ppx-list { list-style:none; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px 32px; margin:12px 0 0; padding:0; }
.ppx-list li { font-size:14px; color:var(--muted); line-height:1.6; padding-left:14px; position:relative; }
.ppx-list li::before { content:''; position:absolute; left:0; top:9px; width:4px; height:4px; border-radius:50%; background:var(--red); opacity:.65; }
.ppx-list--single { grid-template-columns:1fr; gap:10px; }
.ppx-list--check li { padding-left:26px; }
.ppx-list--check li b { color:var(--navy); }
.ppx-list--check li::before { top:1px; width:16px; height:16px; border-radius:50%; opacity:1; background:var(--navy) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.3l3 3 6-6.6' stroke='white' stroke-width='1.7' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/9px no-repeat; }
.ppx-steps { list-style:none; display:flex; flex-direction:column; gap:10px; margin:12px 0 0; padding:0; counter-reset:step; }
.ppx-steps li { font-size:14px; color:var(--text); line-height:1.5; padding-left:34px; position:relative; counter-increment:step; }
.ppx-steps li::before { content:counter(step); position:absolute; left:0; top:-1px; width:22px; height:22px; border-radius:50%; background:var(--navy); color:#fff; font-size:11px; font-weight:700; display:flex; align-items:center; justify-content:center; }
@media(max-width:860px) {
  .ppx-list { grid-template-columns:1fr; }
}

/* Сайт-вайд утечка: неограниченный table thead th::before (template_styles.min.css) рисует
   красную точку 8px перед КАЖДЫМ <th> любой таблицы сайта — на .pr1-table (Полное сравнение
   тарифов) это давало точки перед "Стандарт"/"Премиум"/... и перед текстом в первой колонке.
   Тот же класс бага, что уже чинили на .ppx-pricetable — здесь отдельный компонент/класс,
   унаследованный CSS-фикс на него не распространялся, чиним отдельно. Найдено 2026-08-10
   (скриншот Игоря, "Таблица поехала"). */
.pr1-table thead th::before { content: none; }
