/*
Theme Name: Studio Theme
Theme URI: https://example.ru/
Author: Aleksandr
Description: Одностраничный сайт-портфолио веб-разработчика. WordPress + Битрикс, кейсы как CPT, борд «в продакшене», без сборщиков и конструкторов.
Version: 1.7.0
Requires at least: 6.0
Requires PHP: 8.0
License: GNU General Public License v2 or later
Text Domain: studio
*/

/* ==========================================================================
   ТОКЕНЫ
   ========================================================================== */
:root{
  /* База — тёмно-синий, как ткань комбеза */
  --st-ink:        #0b1730;   /* фон страницы */
  --st-ink-2:      #102544;  /* чередование секций */
  --st-panel:      #14264a;   /* карточки */
  --st-panel-2:    #1a3159;   /* hover / вложенные панели */
  --st-line:       #24406b;   /* линии на тёмном */
  --st-line-2:     #35578a;   /* линии в hover */
  --st-text:       #e9eff8;
  --st-mute:       #93a7c4;
  --st-dim:        #8298bb;

  /* Акцент — золото полосы */
  --st-accent:     #f2c14e;
  --st-accent-lt:  #ffd674;
  --st-accent-dk:  #8f6510;   /* тот же золотой, но читаемый на светлом */

  --st-signal:     #4fd18a;   /* только статус live и галочки */
  --st-alarm:      #e0655f;   /* только крестики в сравнении */

  /* Светлая секция проектов */
  --st-paper:      #eef1f6;
  --st-paper-2:    #e2e7ef;
  --st-paper-line: #cdd6e3;
  --st-paper-ink:  #0b1730;
  --st-paper-mute: #56688a;

  --st-display: 'Unbounded', 'Golos Text', system-ui, sans-serif;
  --st-body:    'Golos Text', system-ui, -apple-system, sans-serif;
  --st-mono:    'JetBrains Mono', ui-monospace, 'SF Mono', Consolas, monospace;

  --st-max: 1180px;
  --st-pad: 24px;
  --st-r:   14px;
  --st-r-s: 8px;
}

/* ==========================================================================
   БАЗА
   ========================================================================== */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:88px}
body{
  margin:0;
  background:var(--st-ink);
  color:var(--st-text);
  font-family:var(--st-body);
  font-size:16px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img,svg{max-width:100%;height:auto;display:block}
a{color:var(--st-accent);text-decoration:none}
a:hover{color:var(--st-accent-lt)}
:focus-visible{outline:2px solid var(--st-accent);outline-offset:3px;border-radius:4px}

.st-wrap{max-width:var(--st-max);margin:0 auto;padding:0 var(--st-pad)}
.st-section{padding:96px 0;position:relative}
.st-section--alt{background:var(--st-ink-2)}
.st-section--paper{background:var(--st-paper);color:var(--st-paper-ink)}
.st-section--tight{padding:64px 0}

/* эйбрау-метка */
.st-eyebrow{
  font-family:var(--st-mono);
  font-size:12px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--st-accent);
  margin:0 0 14px;
  display:flex;align-items:center;gap:10px;
}
.st-eyebrow::before{content:'';width:22px;height:1px;background:var(--st-accent);flex:none}
.st-section--paper .st-eyebrow{color:var(--st-accent-dk)}
.st-section--paper .st-eyebrow::before{background:var(--st-accent-dk)}

/* заголовки-утверждения */
h1,h2,h3,h4{font-family:var(--st-display);font-weight:600;line-height:1.15;letter-spacing:-.02em;margin:0 0 16px}
h2{font-size:clamp(1.6rem,3.4vw,2.4rem)}
h3{font-size:1.06rem;font-family:var(--st-body);font-weight:600;letter-spacing:0;line-height:1.4}
.st-deck{color:var(--st-mute);max-width:58ch;font-size:1.02rem;margin:0 0 44px}
.st-section--paper .st-deck{color:var(--st-paper-mute)}

/* кнопки */
.st-btn{
  display:inline-flex;align-items:center;gap:9px;
  padding:13px 22px;border-radius:var(--st-r-s);
  font-family:var(--st-body);font-weight:600;font-size:15px;
  border:1px solid transparent;cursor:pointer;
  transition:transform .18s ease,background .18s ease,border-color .18s ease;
}
.st-btn--primary{background:var(--st-accent);color:var(--st-ink)}
.st-btn--primary:hover{background:var(--st-accent-lt);color:var(--st-ink);transform:translateY(-2px)}
.st-btn--ghost{border-color:var(--st-line);color:var(--st-text);background:transparent}
.st-btn--ghost:hover{border-color:var(--st-accent);color:var(--st-text);transform:translateY(-2px)}
.st-section--paper .st-btn--ghost{border-color:var(--st-paper-line);color:var(--st-paper-ink)}

/* ==========================================================================
   ХЕДЕР
   ========================================================================== */
.st-header{
  position:fixed;inset:0 0 auto 0;z-index:100;
  background:rgba(11,23,48,.74);
  backdrop-filter:blur(14px);
  border-bottom:1px solid transparent;
  transition:border-color .25s ease,background .25s ease;
}
.st-header.is-scrolled{border-bottom-color:var(--st-line);background:rgba(11,23,48,.95)}
.st-header__inner{
  max-width:var(--st-max);margin:0 auto;padding:0 var(--st-pad);
  height:68px;display:flex;align-items:center;gap:28px;
}
.st-logo{
  font-family:var(--st-display);font-weight:600;font-size:17px;
  letter-spacing:-.02em;color:var(--st-text);flex:none;
}
.st-logo:hover{color:var(--st-text)}
.st-logo span{color:var(--st-accent)}
.st-logo__img{height:30px;width:auto;display:block}
.st-footer .st-logo__img{height:34px}
@media (max-width:760px){.st-logo__img{height:26px}}
.st-nav{margin-left:auto;display:flex;align-items:center;gap:26px}
.st-nav a{
  font-family:var(--st-mono);font-size:12.5px;letter-spacing:.04em;
  color:var(--st-mute);
}
.st-nav a:hover{color:var(--st-text)}
.st-header .st-btn{padding:9px 16px;font-size:13.5px}
.st-burger{
  display:none;margin-left:auto;background:none;border:1px solid var(--st-line);
  color:var(--st-text);width:40px;height:38px;border-radius:var(--st-r-s);
  font-size:16px;cursor:pointer;
}

/* ==========================================================================
   HERO
   ========================================================================== */
.st-hero{padding:150px 0 88px;position:relative;overflow:hidden}
.st-hero::after{
  content:'';position:absolute;top:-180px;right:-160px;width:620px;height:620px;
  background:radial-gradient(circle,rgba(242,193,78,.11),transparent 68%);
  pointer-events:none;
}
.st-hero__grid{display:grid;grid-template-columns:1fr 1.18fr;gap:48px;align-items:center;position:relative;z-index:1}
.st-hero h1{font-size:clamp(2.1rem,5.2vw,3.7rem);margin-bottom:22px}
.st-hero__sub{color:var(--st-mute);font-size:1.08rem;max-width:52ch;margin:0 0 30px}
.st-hero__cta{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:34px}

.st-chips{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0}
.st-chips li{
  font-family:var(--st-mono);font-size:11.5px;letter-spacing:.03em;
  color:var(--st-dim);border:1px solid var(--st-line);
  padding:5px 10px;border-radius:100px;
}

/* --- ПОДПИСНОЙ ЭЛЕМЕНТ: колода проектов --- */
/* Колода выходит за правый край контейнера до кромки экрана — иначе внутри
   1180px не набрать нужной ширины. На узких экранах вынос сам обнуляется. */
.st-stack{
  margin-right:min(0px, calc((var(--st-max) - 100vw) / 2 - var(--st-pad)));
  padding-top:46px;      /* место для верхних углов задних карточек */
  padding-right:76px;    /* место для правых углов */
}
.st-stack__cards{
  position:relative;
  aspect-ratio:16/9;
}
.st-slide{
  position:absolute;inset:0;
  display:block;overflow:hidden;
  border:1px solid var(--st-line);
  border-radius:var(--st-r);
  background:var(--st-ink-2);
  transition:transform .55s cubic-bezier(.34,.03,.2,1), opacity .4s ease, box-shadow .4s ease;
  will-change:transform;
}
.st-slide img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block}
.st-stack.is-still .st-slide{transition:none}

/* позиции в колоде: 0 — лицевая, дальше выглядывают углами */
.st-slide[data-pos="0"]{
  z-index:4;transform:none;opacity:1;
  border-left:3px solid var(--st-accent);
  box-shadow:0 40px 80px -34px rgba(3,9,22,.9);
}
.st-slide[data-pos="1"]{z-index:3;transform:translate(6.5%,-5.5%) scale(.945);opacity:.9;box-shadow:0 30px 60px -34px rgba(3,9,22,.8)}
.st-slide[data-pos="2"]{z-index:2;transform:translate(13%,-11%) scale(.89);opacity:.6}
.st-slide[data-pos="3"]{z-index:1;transform:translate(19%,-16.5%) scale(.835);opacity:.3}
.st-slide[data-pos="-1"]{z-index:0;transform:translate(24%,-21%) scale(.8);opacity:0;pointer-events:none}
.st-slide[data-pos="1"],.st-slide[data-pos="2"],.st-slide[data-pos="3"]{cursor:pointer}

/* подпись — только на лицевой */
.st-slide__cap{
  position:absolute;inset:auto 0 0 0;padding:52px 20px 16px;
  background:linear-gradient(to top,rgba(11,23,48,.95),rgba(11,23,48,.72) 55%,transparent);
  display:flex;align-items:flex-end;justify-content:space-between;gap:14px;
  opacity:0;transition:opacity .35s ease;
}
.st-slide[data-pos="0"] .st-slide__cap{opacity:1}
.st-slide__name{font-weight:600;font-size:16px;color:var(--st-text);line-height:1.3}
.st-slide__host{font-family:var(--st-mono);font-size:12px;color:var(--st-accent);display:block;margin-top:4px}
.st-slide__meta{font-family:var(--st-mono);font-size:11.5px;color:var(--st-mute);white-space:nowrap}

/* управление под колодой */
.st-stack__bar{display:flex;align-items:center;gap:10px;margin-top:20px}
.st-stack__btn{
  width:34px;height:34px;flex:none;border-radius:8px;cursor:pointer;
  background:transparent;border:1px solid var(--st-line);color:var(--st-mute);
  font-size:14px;line-height:1;display:grid;place-items:center;
  transition:border-color .16s ease,color .16s ease;
}
.st-stack__btn:hover{border-color:var(--st-accent);color:var(--st-accent)}
.st-stack__dots{display:flex;gap:6px;flex:1;margin-left:6px}
.st-stack__dots button{
  flex:1;max-width:64px;height:3px;border:0;padding:0;cursor:pointer;border-radius:2px;
  background:var(--st-line);transition:background .2s ease;
}
.st-stack__dots button.is-active{background:var(--st-accent)}
.st-stack__count{
  font-family:var(--st-mono);font-size:11.5px;letter-spacing:.06em;color:var(--st-dim);
}
.st-stack__hint{
  border:1px solid var(--st-line);border-left:3px solid var(--st-accent);
  border-radius:var(--st-r);background:var(--st-panel);
  padding:22px 18px;color:var(--st-mute);font-size:13.5px;
}

/* ==========================================================================
   ЦИФРЫ
   ========================================================================== */
.st-stats{
  display:grid;grid-template-columns:repeat(4,1fr);
  border-top:1px solid var(--st-line);border-bottom:1px solid var(--st-line);
}
.st-stat{padding:34px 26px;border-right:1px solid var(--st-line)}
.st-stat:last-child{border-right:0}
.st-stat__num{
  font-family:var(--st-display);font-weight:600;font-size:2.5rem;line-height:1;
  letter-spacing:-.03em;margin-bottom:10px;
}
.st-stat__lbl{color:var(--st-mute);font-size:13.5px;line-height:1.45}

/* ==========================================================================
   УСЛУГИ
   ========================================================================== */
.st-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.st-card{
  background:var(--st-panel);border:1px solid var(--st-line);
  border-radius:var(--st-r);padding:26px 24px;
  transition:border-color .2s ease,transform .2s ease;
}
.st-card:hover{border-color:var(--st-line-2);transform:translateY(-3px)}
.st-card__glyph{
  font-family:var(--st-mono);font-size:20px;color:var(--st-accent);
  line-height:1;margin-bottom:16px;display:block;
}
.st-card p{color:var(--st-mute);font-size:14.5px;margin:0}

/* ==========================================================================
   СРАВНЕНИЕ — построчно, без галочек и крестиков
   ========================================================================== */
.st-vs{border-top:1px solid var(--st-line)}

.st-vs__head,
.st-vs__row{
  display:grid;
  grid-template-columns:132px 1fr 1fr;
  gap:0 32px;
  align-items:start;
}
.st-vs__head{
  padding:14px 0;
  font-family:var(--st-mono);font-size:11.5px;letter-spacing:.12em;
  text-transform:uppercase;color:var(--st-dim);
  border-bottom:1px solid var(--st-line);
}
.st-vs__head--mine{color:var(--st-accent)}

.st-vs__row{
  padding:20px 0;
  border-bottom:1px solid var(--st-line);
  transition:background .2s ease;
}
.st-vs__row:hover{background:rgba(242,193,78,.03)}

.st-vs__topic{
  font-family:var(--st-mono);font-size:11.5px;letter-spacing:.08em;
  text-transform:uppercase;color:var(--st-dim);padding-top:2px;
}
.st-vs__bad,
.st-vs__good{margin:0;font-size:14.5px;line-height:1.55}
.st-vs__bad{color:var(--st-dim)}
.st-vs__good{
  color:var(--st-text);
  border-left:2px solid var(--st-accent);
  padding-left:20px;margin-left:-20px;
}

/* ==========================================================================
   КЕЙСЫ (светлая секция)
   ========================================================================== */
.st-filter{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 26px}
.st-filter button{
  font-family:var(--st-mono);font-size:12px;letter-spacing:.04em;
  padding:8px 14px;border-radius:100px;cursor:pointer;
  border:1px solid var(--st-paper-line);background:#fff;color:var(--st-paper-mute);
  transition:all .16s ease;
}
.st-filter button:hover{border-color:var(--st-accent-dk);color:var(--st-paper-ink)}
.st-filter button.is-active{background:var(--st-paper-ink);border-color:var(--st-paper-ink);color:#fff}

.st-cases{
  display:grid;grid-template-columns:repeat(3,1fr);gap:22px;
  align-items:start;
}
.st-case{
  background:#fff;border:1px solid var(--st-paper-line);
  border-radius:var(--st-r);overflow:hidden;
  display:flex;flex-direction:column;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.st-case:hover{transform:translateY(-3px);border-color:#b9c4d4;box-shadow:0 18px 36px -24px rgba(11,23,48,.45)}
.st-case[hidden]{display:none}

.st-case__shot{
  position:relative;display:block;aspect-ratio:16/9;
  background:var(--st-ink-2);overflow:hidden;
  border-bottom:1px solid var(--st-paper-line);
}
.st-case__shot img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block;transition:transform .4s ease}
.st-case:hover .st-case__shot img{transform:scale(1.03)}
.st-case__shot--empty{display:grid;place-items:center;background:var(--st-ink)}
.st-case__shot--empty span{font-family:var(--st-mono);font-size:12px;color:var(--st-dim);letter-spacing:.06em}
.st-case__idx{
  position:absolute;top:10px;left:10px;z-index:2;
  font-family:var(--st-mono);font-size:11px;color:var(--st-text);
  background:rgba(11,23,48,.72);backdrop-filter:blur(4px);
  padding:3px 8px;border-radius:100px;
}

.st-case__body{padding:18px 18px 20px;display:flex;flex-direction:column;gap:9px;flex:1}
.st-case__title{font-weight:600;font-size:16px;color:var(--st-paper-ink);line-height:1.35;margin:0}
.st-case__host{font-family:var(--st-mono);font-size:12px;color:var(--st-accent-dk);display:inline-block}
.st-case__host:hover{color:var(--st-paper-ink);text-decoration:underline;text-decoration-color:var(--st-accent)}
.st-case__scope{font-size:13.5px;color:var(--st-paper-mute);line-height:1.55;margin:0}
.st-case__tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:auto;padding-top:6px}
.st-tag{
  font-family:var(--st-mono);font-size:11px;letter-spacing:.03em;
  padding:4px 9px;border-radius:100px;border:1px solid var(--st-paper-line);
  color:var(--st-paper-mute);background:var(--st-paper);white-space:nowrap;
}
.st-tag--year{border-style:dashed}
.st-cases__foot{
  margin-top:26px;font-family:var(--st-mono);font-size:12px;color:var(--st-paper-mute);
}

/* ==========================================================================
   ПРОЦЕСС
   ========================================================================== */
.st-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.st-step{padding:0 24px 0 0;position:relative}
.st-step__n{
  font-family:var(--st-mono);font-size:12px;color:var(--st-accent);
  padding-bottom:14px;margin-bottom:18px;border-bottom:1px solid var(--st-line);
  display:block;letter-spacing:.08em;
}
.st-step p{color:var(--st-mute);font-size:14.5px;margin:0}

/* ==========================================================================
   КОНТАКТ
   ========================================================================== */
.st-contact{display:grid;grid-template-columns:.85fr 1.15fr;gap:56px;align-items:start}
.st-contact__list{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:14px}
.st-contact__list a,.st-contact__list span{font-family:var(--st-mono);font-size:14px;color:var(--st-text)}
.st-contact__list a:hover{color:var(--st-accent)}
.st-contact__list li small{
  display:block;font-family:var(--st-body);font-size:12px;color:var(--st-dim);
  text-transform:uppercase;letter-spacing:.08em;margin-bottom:3px;
}
.st-form{
  background:var(--st-panel);border:1px solid var(--st-line);
  border-radius:var(--st-r);padding:28px;
}
.st-field{margin-bottom:16px}
.st-field label{
  display:block;font-family:var(--st-mono);font-size:11.5px;letter-spacing:.07em;
  text-transform:uppercase;color:var(--st-dim);margin-bottom:7px;
}
.st-field input,.st-field textarea{
  width:100%;background:var(--st-ink);border:1px solid var(--st-line);
  border-radius:var(--st-r-s);padding:12px 14px;color:var(--st-text);
  font-family:var(--st-body);font-size:15px;
}
.st-field input:focus,.st-field textarea:focus{border-color:var(--st-accent);outline:none}
.st-field textarea{min-height:110px;resize:vertical}
.st-consent{display:grid;grid-template-columns:18px 1fr;gap:11px;margin-bottom:20px}
.st-consent label{font-size:12.5px;color:var(--st-dim);text-transform:none;letter-spacing:0;font-family:var(--st-body);line-height:1.5;margin:0}
.st-consent input{width:16px;height:16px;margin-top:3px;accent-color:var(--st-accent)}
.st-hp{position:absolute;left:-9999px}
.st-note{
  margin:14px 0 0;padding:11px 14px;border-radius:var(--st-r-s);font-size:13.5px;
  border:1px solid var(--st-line);
}
.st-note--ok{border-color:rgba(79,209,138,.4);color:var(--st-signal);background:rgba(79,209,138,.07)}
.st-note--err{border-color:rgba(224,101,95,.4);color:var(--st-alarm);background:rgba(224,101,95,.07)}

/* ==========================================================================
   ФУТЕР
   ========================================================================== */
.st-footer{border-top:1px solid var(--st-line);padding:52px 0 30px;background:var(--st-ink-2)}
.st-footer__grid{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:40px;margin-bottom:38px}
.st-footer p{color:var(--st-mute);font-size:14px;max-width:38ch;margin:12px 0 0}
.st-footer h4{
  font-family:var(--st-mono);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--st-dim);font-weight:400;margin:0 0 14px;
}
.st-footer ul{list-style:none;padding:0;margin:0;display:grid;gap:9px}
.st-footer ul a{color:var(--st-mute);font-size:14px}
.st-footer ul a:hover{color:var(--st-text)}
.st-footer__bottom{
  border-top:1px solid var(--st-line);padding-top:22px;
  display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;
  font-family:var(--st-mono);font-size:11.5px;color:var(--st-dim);
}

/* ---- подвал: реквизиты и правовые ссылки ---- */
.st-footer__req{color:var(--st-dim)}
.st-footer__legal{display:flex;flex-wrap:wrap;gap:18px}
.st-footer__legal a{color:var(--st-dim)}
.st-footer__legal a:hover{color:var(--st-accent)}

/* ==========================================================================
   CONTACT FORM 7 — приводим к виду встроенной формы
   ========================================================================== */
.st-form--cf7 .wpcf7-form-control-wrap{display:block}
.st-form--cf7 p{margin:0 0 16px}
.st-form--cf7 input[type=text],
.st-form--cf7 input[type=email],
.st-form--cf7 input[type=tel],
.st-form--cf7 textarea{
  width:100%;background:var(--st-ink);border:1px solid var(--st-line);
  border-radius:var(--st-r-s);padding:12px 14px;color:var(--st-text);
  font-family:var(--st-body);font-size:15px;
}
.st-form--cf7 input:focus,.st-form--cf7 textarea:focus{border-color:var(--st-accent);outline:none}
.st-form--cf7 textarea{min-height:110px;resize:vertical}

/* согласие: чекбокс + текст в две колонки */
.st-form--cf7 .wpcf7-acceptance .wpcf7-list-item{margin:0}
.st-form--cf7 .wpcf7-acceptance label{
  display:grid;grid-template-columns:18px 1fr;gap:11px;align-items:start;
  font-family:var(--st-body);font-size:12.5px;line-height:1.5;
  color:var(--st-dim);text-transform:none;letter-spacing:0;margin:0;
}
.st-form--cf7 .wpcf7-acceptance input[type=checkbox]{width:16px;height:16px;margin-top:3px;accent-color:var(--st-accent)}
.st-form--cf7 .wpcf7-list-item-label a{color:var(--st-accent);text-decoration:underline}
.st-form--cf7 .st-consent-wrap{margin-bottom:20px}

/* валидация и ответ формы */
.st-form--cf7 .wpcf7-not-valid-tip{color:var(--st-alarm);font-size:12.5px;margin-top:6px}
.st-form--cf7 .wpcf7-not-valid{border-color:rgba(224,101,95,.6)}
.st-form--cf7 .wpcf7-response-output{
  margin:16px 0 0 !important;padding:11px 14px !important;
  border:1px solid var(--st-line) !important;border-radius:var(--st-r-s);
  font-size:13.5px;color:var(--st-mute);
}
.st-form--cf7 form.sent .wpcf7-response-output{
  border-color:rgba(79,209,138,.4) !important;color:var(--st-signal);background:rgba(79,209,138,.07);
}
.st-form--cf7 form.invalid .wpcf7-response-output,
.st-form--cf7 form.unaccepted .wpcf7-response-output,
.st-form--cf7 form.failed .wpcf7-response-output,
.st-form--cf7 form.spam .wpcf7-response-output{
  border-color:rgba(224,101,95,.4) !important;color:var(--st-alarm);background:rgba(224,101,95,.07);
}
.st-form--cf7 .wpcf7-spinner{margin:0 0 0 12px}

/* ==========================================================================
   СТАТИКА (страница политики и т.п.)
   ========================================================================== */
.st-page{padding:130px 0 90px}
.st-page__body{max-width:70ch}
.st-page__body h2{font-size:1.25rem;margin-top:38px;color:var(--st-text)}
.st-page__body p,.st-page__body li{color:var(--st-mute)}
.st-page__body ul{padding-left:20px;display:grid;gap:8px;margin:0 0 18px}
.st-page__body li{line-height:1.6}
.st-page__body strong{color:var(--st-text)}
.st-page__body em{color:var(--st-dim);font-style:normal;font-family:var(--st-mono);font-size:12.5px}
.st-page__body a{text-decoration:underline}

/* ==========================================================================
   АНИМАЦИЯ
   ========================================================================== */
.st-fade{opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .55s ease}
.st-fade.is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .st-fade{opacity:1;transform:none;transition:none}
  .st-btn:hover,.st-card:hover{transform:none}
}

/* ==========================================================================
   АДАПТИВ
   ========================================================================== */
@media (max-width:1000px){
  .st-hero__grid{grid-template-columns:1fr;gap:44px}
  .st-stack{padding-top:34px;padding-right:54px}
  .st-cards{grid-template-columns:repeat(2,1fr)}
  .st-cases{grid-template-columns:repeat(2,1fr);gap:18px}
  .st-steps{grid-template-columns:repeat(2,1fr);gap:32px 0}
  .st-stats{grid-template-columns:repeat(2,1fr)}
  .st-stat:nth-child(2){border-right:0}
  .st-stat:nth-child(-n+2){border-bottom:1px solid var(--st-line)}
  .st-contact{grid-template-columns:1fr;gap:36px}
  .st-footer__grid{grid-template-columns:1fr 1fr;gap:32px}
}
@media (max-width:760px){
  :root{--st-pad:18px}
  .st-section{padding:68px 0}
  .st-hero{padding:118px 0 64px}
  .st-nav{display:none}
  .st-header .st-btn--primary{display:none}
  .st-burger{display:block}
  .st-header.is-open .st-nav{
    display:flex;flex-direction:column;align-items:flex-start;gap:18px;
    position:absolute;top:68px;left:0;right:0;
    background:var(--st-ink);border-bottom:1px solid var(--st-line);
    padding:22px var(--st-pad) 28px;margin:0;
  }
  .st-header.is-open .st-nav a{font-size:15px;font-family:var(--st-body)}
  .st-cards{grid-template-columns:1fr}
  .st-vs__head{display:none}
  .st-vs__row{
    grid-template-columns:1fr;gap:10px;padding:22px 0;
  }
  .st-vs__good{margin-left:0;padding-left:16px;border-left-width:2px}
  .st-vs__bad{padding-left:16px;border-left:2px solid var(--st-line)}
  .st-cases{grid-template-columns:1fr;gap:16px}
  .st-stack{padding-top:24px;padding-right:36px}
  .st-slide[data-pos="1"]{transform:translate(5%,-4%) scale(.95)}
  .st-slide[data-pos="2"]{transform:translate(10%,-8%) scale(.9)}
  .st-slide[data-pos="3"]{transform:translate(14%,-12%) scale(.86)}
  .st-slide__cap{padding:40px 14px 12px}
  .st-slide__name{font-size:14px}
  .st-footer__grid{grid-template-columns:1fr}
  .st-stat{padding:26px 18px}
  .st-stat__num{font-size:2.1rem}
}
