/* Тарифы: первый экран как на странице услуги + конструктор тарифа */
.cnh{padding:122px 0 88px;background:var(--paper)}
.cnh-top{display:flex;flex-direction:column;align-items:center;text-align:center}
.cnh-top .u-crumbs{justify-content:center}
.cnh-h{margin:22px 0 0;font-size:clamp(44px,5.4vw,78px);font-weight:500;line-height:1;letter-spacing:-.04em;text-wrap:balance}
.cnh-h span{display:block;color:var(--ink-3)}
.cnh-l{margin:22px 0 0;max-width:620px;font-size:16.5px;line-height:1.55;color:var(--ink-2)}

.cn{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:20px;align-items:start;margin-top:48px}
.cn-l{display:flex;flex-direction:column}
.cn-pre{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px}
.cn-pre>span{margin-right:4px;font-size:14px;font-weight:600;color:var(--ink-2)}
.cn-pre button{display:inline-flex;align-items:baseline;gap:6px;height:40px;padding:0 16px;border:0;border-radius:999px;background:#fff;font:inherit;font-size:14.5px;font-weight:600;color:var(--ink);cursor:pointer;transition:background .2s,color .2s}
.cn-pre button small{font-size:12px;font-weight:500;color:var(--ink-3)}
.cn-pre button:hover{background:#e9e9e5}
.cn-pre button.is-on{background:var(--ink);color:#fff}
.cn-pre button.is-on small{color:rgba(255,255,255,.55)}

.cn-h{display:flex;align-items:center;gap:10px;margin:30px 0 12px;font-size:18px;font-weight:600;letter-spacing:-.01em}
.cn-h em{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--accent);color:#fff;font-style:normal;font-size:13px;font-weight:700}
.cn-pl{display:grid;gap:8px}
.cn-o{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr) auto 26px;gap:16px;align-items:center;padding:16px 18px;border-radius:20px;background:#fff;cursor:pointer;transition:box-shadow .2s,opacity .2s}
.cn-o input{position:absolute;opacity:0;pointer-events:none}
.cn-o:hover{box-shadow:inset 0 0 0 1.5px #d9d9d4}
.cn-o.is-on{box-shadow:inset 0 0 0 2px var(--ink)}
.cn-o.is-off{opacity:.45;cursor:not-allowed}
.cn-o input:focus-visible ~ .cn-o__ch{outline:2px solid var(--accent);outline-offset:3px}
.cn-o__ic{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--paper)}
.cn-o__ic img{width:26px;height:26px;object-fit:contain}
.cn-o__ic--ai{background:var(--ink);color:#fff;font-size:14px;font-weight:700;letter-spacing:.02em}
.cn-o__t b{display:block;font-size:16.5px;font-weight:600}
.cn-o__t small{display:block;margin-top:3px;font-size:13.5px;line-height:1.4;color:var(--ink-2)}
.cn-o__p{text-align:right;font-size:17px;font-weight:600;white-space:nowrap}
.cn-o__p small{display:block;font-size:12px;font-weight:500;color:var(--ink-3)}
.cn-o__ch{width:26px;height:26px;border-radius:8px;box-shadow:inset 0 0 0 2px #d4d4cf;transition:background .2s,box-shadow .2s}
.cn-o.is-on .cn-o__ch{background:var(--ink) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4 8-9' fill='none' stroke='%23fff' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/18px no-repeat;box-shadow:none}

.cn-inc{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0;padding:0;list-style:none}
.cn-inc li{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px 16px;border-radius:18px;background:#fff}
.cn-inc b{display:block;font-size:15px;font-weight:600}
.cn-inc small{display:block;margin-top:2px;font-size:12.5px;line-height:1.35;color:var(--ink-2)}
.cn-inc em{font-style:normal;font-size:12px;font-weight:600;color:var(--good);white-space:nowrap}
.cn-inc__ic{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:var(--ink)}
.cn-inc__ic svg{width:19px;height:19px;fill:none;stroke:#5ed38f;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.cn-inc__ic--l{background:#e3f4ea;color:var(--good);font-weight:700}
.cn-inc--pulse{grid-column:1 / -1;background:var(--ink)!important;color:#fff}
.cn-inc--pulse small{color:rgba(255,255,255,.6)}
.cn-inc--pulse .cn-inc__ic{background:rgba(255,255,255,.1)}
.cn-inc--pulse em{padding:5px 10px;border-radius:999px;background:rgba(94,211,143,.15);color:#5ed38f}

.cn-r{position:sticky;top:96px}
.cn-sum{display:flex;flex-direction:column;padding:24px;border-radius:26px;background:#fff}
.cn-sum__k{font-size:13px;font-weight:600;color:var(--ink-3)}
.cn-sum__n{margin-top:4px;font-size:30px;font-weight:500;letter-spacing:-.03em}
.cn-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;border-top:1px solid var(--line)}
.cn-row:first-of-type{margin-top:16px}
.cn-row>span{font-size:14.5px;font-weight:600}
.cn-step{display:flex;align-items:center;gap:4px;padding:3px;border-radius:12px;background:var(--paper)}
.cn-step button{width:34px;height:34px;border:0;border-radius:9px;background:#fff;font:inherit;font-size:18px;cursor:pointer}
.cn-step output{min-width:30px;text-align:center;font-size:16px;font-weight:600}
.cn-sw{display:flex;padding:3px;border-radius:12px;background:var(--paper)}
.cn-sw button{height:34px;padding:0 12px;border:0;border-radius:9px;background:transparent;font:inherit;font-size:13.5px;font-weight:600;color:var(--ink-2);cursor:pointer}
.cn-sw button small{color:var(--good);font-weight:700}
.cn-sw button.is-on{background:#fff;color:var(--ink)}
.cn-lines{margin:0;padding:12px 0;border-top:1px solid var(--line);list-style:none}
.cn-lines li{display:flex;justify-content:space-between;gap:12px;padding:5px 0;font-size:14px;color:var(--ink-2)}
.cn-lines b{font-weight:600;color:var(--ink);white-space:nowrap}
.cn-lines__pulse b{color:var(--good)!important}
.cn-tot{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding:16px 0 18px;border-top:1px solid var(--line)}
.cn-tot small{width:100%;font-size:13px;color:var(--ink-3)}
.cn-tot b{font-size:40px;font-weight:600;letter-spacing:-.04em;line-height:1}
.cn-tot s{font-size:16px;color:var(--ink-3)}
.cn-big{margin:0 0 14px;font-size:13.5px;color:var(--ink-2)}
.cn-note{margin:14px 0 0;font-size:13px;line-height:1.45;color:var(--ink-3)}
.cn-note b{color:var(--ink);font-weight:600}

@media (max-width:1100px){.cn{grid-template-columns:1fr}.cn-r{position:static}}
@media (max-width:760px){
  .cnh{padding:92px 0 56px}
  .cnh-h{font-size:40px}
  .cnh-l{font-size:15.5px}
  .cn{margin-top:32px}
  .cn-pre button{height:36px;padding:0 13px;font-size:13.5px}
  .cn-o{grid-template-columns:40px minmax(0,1fr) 24px;gap:12px;padding:14px}
  .cn-o__ic{width:40px;height:40px;border-radius:12px}
  .cn-o__p{grid-column:2;grid-row:2;text-align:left;font-size:15px}
  .cn-o__p small{display:inline;margin-left:4px}
  .cn-o__ch{grid-column:3;grid-row:1}
  .cn-inc{grid-template-columns:1fr}
  .cn-sum{padding:20px;border-radius:22px}
  .cn-tot b{font-size:34px}
}

/* готовые наборы: ровный переключатель на три позиции, подпись сверху */
.cn-pre{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;border-radius:18px;background:#fff;margin-bottom:0}
.cn-pre>span{grid-column:1 / -1;margin:6px 0 6px 12px;font-size:13px;font-weight:600;color:var(--ink-3)}
.cn-pre button{flex-direction:column;align-items:center;justify-content:center;gap:1px;height:auto;min-height:52px;padding:8px 10px;border-radius:14px;background:transparent;line-height:1.2;text-align:center}
.cn-pre button:hover{background:var(--paper)}
.cn-pre button.is-on{background:var(--ink);color:#fff}
.cn-pre button small{font-size:11.5px}
@media (max-width:760px){.cn-pre button{min-height:48px;padding:6px;font-size:13.5px}.cn-pre button small{font-size:10.5px}}

/* минимализм: без наборов, без обводок и жирных выделений — один белый список с тонкими линиями */
.cn-h{margin:28px 0 10px;font-size:14px;font-weight:600;letter-spacing:0;color:var(--ink-3)}
.cn-l>.cn-h:first-child{margin-top:0}
.cn-pl{gap:0;padding:0 20px;border-radius:22px;background:#fff}
.cn-o{padding:18px 0;border-radius:0;background:transparent;box-shadow:none!important;border-top:1px solid var(--line)}
.cn-o:first-child{border-top:0}
.cn-o:hover .cn-o__ch{box-shadow:inset 0 0 0 1.5px var(--ink-3)}
.cn-o__ic{width:40px;height:40px;border-radius:12px}
.cn-o__ic img{width:22px;height:22px}
.cn-o__ic--ai{font-size:12px}
.cn-o{grid-template-columns:40px minmax(0,1fr) auto 22px}
.cn-o__t b{font-size:16px;font-weight:500}
.cn-o__p{font-size:16px;font-weight:500;color:var(--ink-3);transition:color .2s}
.cn-o.is-on .cn-o__p{color:var(--ink)}
.cn-o__ch{width:22px;height:22px;border-radius:50%;box-shadow:inset 0 0 0 1.5px #cfcfca}
.cn-o.is-on .cn-o__ch{background-color:var(--ink);background-size:14px}
.cn-inc{grid-template-columns:1fr;gap:0;padding:0 20px;border-radius:22px;background:#fff}
.cn-inc li,.cn-inc--pulse{grid-template-columns:40px minmax(0,1fr) auto;padding:16px 0;border-radius:0;background:transparent!important;color:var(--ink);border-top:1px solid var(--line)}
.cn-inc li:first-child{border-top:0}
.cn-inc b{font-weight:500}
.cn-inc--pulse small{color:var(--ink-2)}
.cn-inc__ic{width:40px;height:40px;border-radius:12px}
.cn-inc--pulse .cn-inc__ic{background:var(--ink)}
.cn-inc__ic--l{background:var(--paper);color:var(--good)}
.cn-inc em,.cn-inc--pulse em{padding:0;background:none;font-size:13px;font-weight:500;color:var(--good)}
.cn-sum__n{font-size:26px}
@media (max-width:760px){
  .cn-pl,.cn-inc{padding:0 16px}
  .cn-o{grid-template-columns:40px minmax(0,1fr) 22px;padding:16px 0}
  .cn-o__p{font-size:14.5px}
}
/* сводка без названия тарифа: сразу точки и срок */
.cn-sum .cn-row:first-of-type{margin-top:0;padding-top:0;border-top:0}
