/* ===== Семантическое исследование: стили страницы (в палитре сайта) ===== */
.sm{--ink:#0e0e0e;--paper:#efeeec;--mute:#737373;--line:#dad9d6}
.sm *{box-sizing:border-box}
/* secondary-кнопка: hover сайта делает текст белым на прозрачном, на светлом фоне это невидимо. Чиним. */
.sm .button--secondary:hover{color:#0e0e0e;background-color:#dad9d6;border-color:#0e0e0e}
.sm.stack .section-new{scroll-margin-top:110px}
.sm.stack .section-new + .section-new{margin-top:150px}

/* Hero */
.sm.hero-new .hero-new__title{grid-column:1/-1;line-height:1} /* межстрочное как на Главной */
.sm-accent{-webkit-text-stroke:2px #0e0e0e;text-stroke:2px #0e0e0e;color:transparent}
.sm-hero-actions{grid-column:4/-1;max-width:458px;margin-left:-10px;margin-top:15px;display:flex;gap:10px;flex-wrap:wrap}
.sm-hero-actions .button{flex:1 1 0;min-width:max-content}
@media screen and (max-width:639px){.sm-hero-actions{grid-column:1/-1;margin-left:0;max-width:none}}
.sm-hero-facts{max-width:458px;margin-top:20px}
.sm-fact{display:flex;gap:14px;padding:10px 0;border-top:1px solid var(--line)}
.sm-fact:last-child{border-bottom:1px solid var(--line)}
.sm-fact__label{flex:0 0 92px;font-family:Inter,sans-serif;font-size:11px;font-weight:600;line-height:1.3;text-transform:uppercase;letter-spacing:.6px;color:var(--mute);padding-top:2px}
.sm-fact__text{font-family:Inter,sans-serif;font-size:14px;font-weight:400;line-height:1.3;color:var(--ink)}
/* карточка эксперта: имя и описание рядом вместо разброса по высоте */
.sm .hero-card__info{justify-content:flex-start;gap:8px}

/* Текстовые блоки */
.sm-lead{font-family:Inter,sans-serif;font-size:28px;font-weight:500;line-height:1.05;letter-spacing:-1px;color:var(--ink);max-width:900px}
.sm-p{font-family:Inter,sans-serif;font-size:18px;font-weight:400;line-height:1.45;letter-spacing:-.36px;color:var(--ink);max-width:820px;margin-top:20px}
.sm-p b{font-weight:600}

/* Кому нужно: карточки */
.sm-benefits{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:20px}
.sm-benefit{padding:26px;background:var(--line)}
.sm-benefit__h{font-family:Inter,sans-serif;font-size:19px;font-weight:600;line-height:1.1;letter-spacing:-.3px;color:var(--ink)}
.sm-benefit__text{font-family:Inter,sans-serif;font-size:15px;font-weight:400;line-height:1.4;margin-top:8px;color:#3a3a3a}

/* Что входит: нумерованные шаги */
.sm-steps{display:grid;gap:0}
.sm-steps__item{display:grid;grid-template-columns:72px 1fr;gap:24px;align-items:start;padding:24px 0;border-top:1px solid var(--line)}
.sm-steps__item:last-child{border-bottom:1px solid var(--line)}
.sm-steps__n{font-family:Inter,sans-serif;font-size:44px;font-weight:600;line-height:.9;letter-spacing:-2px;-webkit-text-stroke:2px var(--ink);text-stroke:2px var(--ink);color:transparent;font-variant-numeric:tabular-nums}
.sm-steps__h{font-family:Inter,sans-serif;font-size:22px;font-weight:500;line-height:1.05;letter-spacing:-.5px;color:var(--ink)}
.sm-steps__text{font-family:Inter,sans-serif;font-size:16px;font-weight:400;line-height:1.4;color:var(--mute);margin-top:8px;max-width:680px}

/* Пример результата: фрагмент таблицы ядра */
.sr-demo{display:grid;grid-template-columns:180px 1.6fr max-content 1.2fr;margin-top:24px;border:1px solid var(--line);background:#fff}
.sr-demo__row{display:contents}
.sr-demo__head{padding:12px 16px;font-family:Inter,sans-serif;font-size:11px;font-weight:600;line-height:1.2;text-transform:uppercase;letter-spacing:.6px;color:var(--paper);background:var(--ink)}
.sr-demo__cell{padding:14px 16px;border-top:1px solid var(--line);font-family:Inter,sans-serif;font-size:14px;line-height:1.4;color:var(--ink)}
.sr-demo__cell--k{font-weight:600}
.sr-tag{display:inline-block;padding:4px 10px;border-radius:20px;font-family:Inter,sans-serif;font-size:11px;font-weight:600;line-height:1.2;text-transform:uppercase;letter-spacing:.4px;white-space:nowrap}
.sr-tag--com{background:var(--ink);color:var(--paper)}
.sr-tag--info{background:var(--line);color:var(--ink)}
.sr-tag--nav{background:#fff;color:var(--ink);border:1px solid var(--ink)}

/* Тарифы */
.sr-tariffs{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:28px}
.sr-tariff{display:flex;flex-direction:column;padding:28px;border:1px solid var(--line);background:#fff;transition:border-color .25s ease,box-shadow .25s ease}
.sr-tariff:hover{border-color:var(--ink);box-shadow:0 10px 30px rgba(14,14,14,.05)}
.sr-tariff--rec{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.sr-tariff__badge{align-self:flex-start;font-family:Inter,sans-serif;font-size:11px;font-weight:600;line-height:1.15;padding:5px 12px;border-radius:20px;background:var(--line);color:var(--ink);text-transform:uppercase;letter-spacing:.4px}
.sr-tariff--rec .sr-tariff__badge{background:var(--paper);color:var(--ink)}
.sr-tariff__h{font-family:Inter,sans-serif;font-size:22px;font-weight:500;line-height:1.05;letter-spacing:-.6px;margin-top:16px}
.sr-tariff__price{font-family:Inter,sans-serif;font-size:40px;font-weight:600;line-height:.95;letter-spacing:-1.5px;margin-top:18px;font-variant-numeric:tabular-nums;-webkit-text-stroke:1.5px var(--ink);text-stroke:1.5px var(--ink);color:transparent}
.sr-tariff--rec .sr-tariff__price{-webkit-text-stroke:1.5px var(--paper);text-stroke:1.5px var(--paper)}
.sr-tariff__meta{font-family:Inter,sans-serif;font-size:14px;line-height:1.2;color:var(--mute);margin-top:8px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.sr-tariff--rec .sr-tariff__meta{color:#a7a7a5;border-bottom-color:rgba(255,255,255,.2)}
.sr-tariff .sm-list{margin-top:16px}
.sr-tariff__for{font-family:Inter,sans-serif;font-size:13px;line-height:1.3;color:var(--mute);margin-top:16px;margin-bottom:20px;font-style:italic}
.sr-tariff--rec .sr-tariff__for{color:#a7a7a5}
.sr-tariff__btn{margin-top:auto}
.sm-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.sm-list li{position:relative;padding-left:18px;font-family:Inter,sans-serif;font-size:15px;line-height:1.3}
.sm-list li:before{content:"";position:absolute;left:3px;top:8px;width:5px;height:5px;border-radius:50%;background:var(--mute)}
.sr-tariff--rec .sm-list li:before{background:#a7a7a5}

/* Актуализация: два варианта */
.sr-upd{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:28px}
.sr-upd__col{padding:26px;border:1px solid var(--line);background:#fff}
.sr-upd__col--hl{background:var(--line);border-color:var(--line)}
.sr-upd__h{font-family:Inter,sans-serif;font-size:20px;font-weight:600;line-height:1.1;letter-spacing:-.4px;color:var(--ink)}
.sr-upd__text{font-family:Inter,sans-serif;font-size:15px;line-height:1.4;color:#3a3a3a;margin-top:10px}

/* Куда дальше: карточки-ссылки */
.sm-next{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.sm-next__card{display:flex;flex-direction:column;padding:26px;border:1px solid var(--line);background:#fff;text-decoration:none;color:var(--ink);transition:border-color .25s ease,box-shadow .25s ease}
.sm-next__card:hover{border-color:var(--ink);box-shadow:0 10px 30px rgba(14,14,14,.05)}
.sm-next__label{font-family:Inter,sans-serif;font-size:11px;font-weight:600;line-height:1;text-transform:uppercase;letter-spacing:.6px;color:var(--mute)}
.sm-next__h{font-family:Inter,sans-serif;font-size:20px;font-weight:500;line-height:1.05;letter-spacing:-.5px;margin-top:10px}
.sm-next__text{font-family:Inter,sans-serif;font-size:14px;font-weight:400;line-height:1.35;color:var(--mute);margin-top:12px}
.sm-next__arrow{margin-top:auto;padding-top:18px;font-family:Inter,sans-serif;font-size:14px;font-weight:600;color:var(--ink)}

/* Финальный CTA */
.sm-cta{padding:56px 40px;background:var(--line);text-align:center}
.sm-cta__h{font-family:Inter,sans-serif;font-size:36px;font-weight:600;line-height:1;letter-spacing:-1.5px;color:var(--ink);max-width:820px;margin:0 auto}
.sm-cta__text{font-family:Inter,sans-serif;font-size:18px;font-weight:400;line-height:1.4;color:#3a3a3a;max-width:640px;margin:18px auto 0}
.sm-cta__actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:28px}

/* Читать далее для длинных ответов FAQ (без JS: чекбокс + line-clamp) */
.faq-rd__cb{position:absolute;opacity:0;pointer-events:none}
.faq-rd__text{display:-webkit-box;-webkit-line-clamp:8;-webkit-box-orient:vertical;overflow:hidden}
.faq-tile:has(.faq-rd__cb:checked) .faq-rd__text{display:block;-webkit-line-clamp:unset;overflow:visible}
.faq-rd__more{display:inline-block;margin-top:10px;font-family:Inter,sans-serif;font-size:14px;font-weight:600;color:#0e0e0e;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.faq-rd__lbl::after{content:"Читать далее"}
.faq-tile:has(.faq-rd__cb:checked) .faq-rd__lbl::after{content:"Свернуть"}

/* Полировка */
.sm .button:active{transform:scale(.98)}
.sm .button:focus-visible,.sm-next__card:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.sm.stack .section-new__title{text-wrap:balance}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
@supports (animation-timeline: view()){
  @media (prefers-reduced-motion:no-preference){
    .sm-benefit,.sm-next__card,.sm-steps__item,.sr-tariff,.sr-upd__col{
      animation:sr-reveal .8s cubic-bezier(.16,1,.3,1) both;
      animation-timeline:view();
      animation-range:entry 0% entry 45%;
    }
  }
}
@keyframes sr-reveal{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}

/* ====== Адаптив ====== */
@media screen and (max-width:1279px){
  .sm.stack .section-new + .section-new{margin-top:100px}
  .sr-demo{grid-template-columns:150px 1.4fr max-content 1fr}
}
@media screen and (max-width:767px){
  .sm.stack .section-new + .section-new{margin-top:80px}
  .sm-lead{font-size:24px}
  .sm-accent{-webkit-text-stroke-width:1px;text-stroke-width:1px}
  .sm-benefits{grid-template-columns:1fr}
  .sm-steps__item{grid-template-columns:48px 1fr;gap:16px}
  .sm-steps__n{font-size:34px}
  .sr-demo{display:block;border:none;background:none}
  .sr-demo__head{display:none}
  .sr-demo__row{display:block;border:1px solid var(--line);background:#fff;margin-bottom:12px;padding:6px 0}
  .sr-demo__cell{border-top:none;padding:8px 14px}
  .sr-demo__cell--k{font-size:16px;padding-top:12px}
  .sr-tariffs{grid-template-columns:1fr}
  .sr-upd{grid-template-columns:1fr}
  .sm-next{grid-template-columns:1fr}
  .sm-cta{padding:40px 22px}
  .sm-cta__h{font-size:26px}
}
