/* aiGPT.law — Landing v3
   Современный технологичный редакционный стиль.
   Палитра: off-white, чернила, плазменный лайм как единственный акцент. */

:root{
  --bg:           #F4F3EE;        /* off-white, тёплая бумага-хай-тек */
  --bg-alt:       #EDECE5;
  --ink:          #0B0D10;        /* почти чёрный */
  --ink-2:        #1A1D22;
  --muted:        #5B6066;
  --muted-2:      #8A8F96;
  --line:         #D9D7CF;
  --line-2:       #C9C6BB;
  --accent:       #C6F24E;        /* плазменный лайм */
  --accent-ink:   #0B0D10;
  --danger:       #D8472B;

  --f-sans: "Geist", "Inter", ui-sans-serif, system-ui, -apple-system, sans-serif;
  --f-mono: "Geist Mono", "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;

  --max: 1360px;
  --pad: 32px;
}

*,*::before,*::after{ box-sizing:border-box; }
html,body{ margin:0; padding:0; overflow-x:clip; }
html{ background:var(--bg); color:var(--ink); }
body{
  font-family:var(--f-sans);
  font-size:16px;
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  font-feature-settings:"ss01","cv11";
}
img,svg{ display:block; max-width:100%; }
a{ color:inherit; text-decoration:none; }
button{ font:inherit; color:inherit; background:none; border:0; cursor:pointer; }
input,textarea{ font:inherit; color:inherit; }

/* ——————————————————————— Layout primitives ——————————————————————— */
.wrap{ max-width:var(--max); margin:0 auto; padding:0 var(--pad); }
.hair{ height:1px; background:var(--line); }
.vhair{ width:1px; background:var(--line); align-self:stretch; }

.eyebrow{
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--muted);
  display:inline-flex; align-items:center; gap:8px;
}
.eyebrow .dot{ width:6px; height:6px; border-radius:50%; background:var(--accent); box-shadow:0 0 0 3px rgba(198,242,78,.25); }
.eyebrow .num{ color:var(--ink); }

.mono{ font-family:var(--f-mono); font-feature-settings:"ss01"; }

h1,h2,h3{ margin:0; font-weight:500; letter-spacing:-0.02em; }
h1{ font-size:clamp(44px, 6.4vw, 96px); line-height:.98; letter-spacing:-0.035em; }
h2{ font-size:clamp(32px, 3.6vw, 56px); line-height:1.02; letter-spacing:-0.025em; }
h3{ font-size:20px; line-height:1.25; font-weight:500; }

p{ margin:0; }

/* ——————————————————————— Topbar ——————————————————————— */
.topbar{
  position:sticky; top:0; z-index:40;
  background:color-mix(in srgb, var(--bg) 88%, transparent);
  backdrop-filter:saturate(1.1) blur(10px);
  -webkit-backdrop-filter:saturate(1.1) blur(10px);
  border-bottom:1px solid var(--line);
}
.burger{
  display:none;
  position:absolute;
  top:50%; right:16px;
  transform:translateY(-50%);
  width:40px; height:40px;
  background:transparent;
  border:1px solid var(--line);
  border-radius:10px;
  cursor:pointer;
  z-index:60;
  padding:0;
  align-items:center; justify-content:center;
  flex-direction:column;
  gap:4px;
  transition:border-color .15s ease, background .15s ease;
}
.burger:hover{ background:var(--bg-alt); }
.burger span{
  display:block;
  width:18px; height:2px;
  background:var(--ink);
  border-radius:1px;
  transition:transform .25s ease, opacity .2s ease;
}
.burger.open span:nth-child(1){ transform:translateY(6px) rotate(45deg); }
.burger.open span:nth-child(2){ opacity:0; }
.burger.open span:nth-child(3){ transform:translateY(-6px) rotate(-45deg); }
.topbar .row{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:16px;
  height:64px;
}
.brand{ display:flex; align-items:center; gap:10px; font-weight:500; }
.brand-mark{
  width:26px; height:26px; border-radius:7px;
  background:var(--ink); color:var(--accent);
  display:grid; place-items:center;
  font-family:var(--f-mono); font-size:13px; font-weight:500;
}
.brand-name{ font-size:15px; letter-spacing:-0.01em; }
.brand-name b{ font-weight:600; }

.nav{ display:flex; gap:14px; justify-content:center; flex-wrap:nowrap; }
.nav a{ font-size:12.5px; color:var(--muted); transition:color .15s; display:inline-flex; gap:6px; align-items:baseline; white-space:nowrap; }
.nav a:hover{ color:var(--ink); }
.nav a .n, .nav a .nav-n{ font-family:var(--f-mono); font-size:10px; color:var(--muted-2); letter-spacing:.04em; }

.top-cta{ display:flex; gap:8px; align-items:center; white-space:nowrap; }
.top-cta .btn{ white-space:nowrap; }
.top-cta .tel{ font-size:12.5px; padding:0 14px; height:38px; letter-spacing:0; }
.top-cta .btn-primary{ font-size:13px; padding:0 16px; height:38px; }
.top-cta .top-cta-accent{
  font-size:13px; padding:0 18px; height:38px;
  background:var(--accent); color:var(--ink);
  border:1.5px solid var(--ink);
  font-weight:500;
}
.top-cta .top-cta-accent:hover{ filter:brightness(1.03); transform:translateY(-1px); }
.top-cta .top-cta-accent .arr{ transition:transform .2s; }
.top-cta .top-cta-accent:hover .arr{ transform:translateX(3px); }
.top-cta .top-cta-accent::before{
  content:""; display:inline-block;
  width:6px; height:6px; border-radius:50%;
  background:var(--ink);
  margin-right:6px;
  animation:ctaPulse 1.6s ease-in-out infinite;
}
@keyframes ctaPulse{
  0%,100%{ opacity:1; transform:scale(1); }
  50%{ opacity:.45; transform:scale(.7); }
}

/* ——————————————————————— Buttons ——————————————————————— */
.btn{
  display:inline-flex; align-items:center; gap:10px;
  height:40px; padding:0 16px;
  border-radius:999px;
  font-size:14px; font-weight:500; letter-spacing:-0.005em;
  transition:transform .15s, background .15s, color .15s, border-color .15s;
  border:1px solid transparent;
}
.btn:active{ transform:translateY(1px); }
.btn-primary{ background:var(--ink); color:#fff; }
.btn-primary:hover{ background:#000; }
.btn-primary .arr{ transition:transform .2s; }
.btn-primary:hover .arr{ transform:translateX(3px); }
.btn-accent{ background:var(--accent); color:var(--accent-ink); }
.btn-accent:hover{ filter:brightness(1.03); }
.btn-ghost{ border-color:var(--line-2); color:var(--ink); background:transparent; }
.btn-ghost:hover{ border-color:var(--ink); }
.btn-lg{ height:48px; padding:0 20px; font-size:15px; }

/* ——————————————————————— Hero ——————————————————————— */
.hero{ padding:72px 0 48px; position:relative; }
.hero-grid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:64px;
  align-items:end;
}
.hero-meta{
  display:flex; gap:24px;
  font-family:var(--f-mono); font-size:11px; letter-spacing:.04em; text-transform:uppercase;
  color:var(--muted);
  margin-bottom:40px;
}
.hero-meta span{ display:inline-flex; gap:8px; }
.hero-meta b{ color:var(--ink); font-weight:500; }

.hero h1 .accent{
  background:var(--accent);
  padding:0 .08em 0.02em;
  border-radius:6px;
  box-decoration-break:clone;
  -webkit-box-decoration-break:clone;
}
.hero h1 .slash{ color:var(--muted-2); font-weight:300; }

.hero-lede{
  font-size:18px; line-height:1.5;
  color:var(--muted);
  max-width:48ch;
  margin-top:28px;
}
.hero-lede--2{ margin-top:14px; }
.hero-lede b{ color:var(--ink); font-weight:500; }

.hero-ctas{ display:flex; gap:12px; margin-top:32px; align-items:center; }

/* ——————————————————————— Hero form card (зелёная) ——————————————————————— */
.hero-form-card{
  margin-top:32px;
  background:var(--accent);
  border:2px solid var(--ink);
  border-radius:20px;
  padding:26px 28px 22px;
  max-width:560px;
  position:relative;
  display:flex;
  flex-direction:column;
  gap:16px;
}
.hero-form-card.hero-form-card--sent{
  padding:22px 26px;
  animation:messageIn .25s ease-out;
}
.hfc-title{
  font-size:17px;
  line-height:1.35;
  letter-spacing:-0.01em;
  font-weight:500;
  color:var(--ink);
  max-width:44ch;
}
.hfc-row{
  display:flex;
  gap:10px;
  align-items:stretch;
}
.hfc-input{
  flex:1;
  height:54px;
  padding:0 22px;
  border:1px solid transparent;
  border-radius:999px;
  background:#fff;
  color:var(--ink);
  font-family:var(--f-mono);
  font-size:15px;
  letter-spacing:-0.005em;
  outline:none;
  transition:border-color .15s ease, box-shadow .15s ease;
  min-width:0;
}
.hfc-input::placeholder{ color:var(--muted-2); }
.hfc-input:focus{ border-color:var(--ink); }
.hfc-submit{
  flex:none;
  height:54px;
  padding:0 22px;
  border:0;
  border-radius:999px;
  background:var(--ink);
  color:#fff;
  font-family:var(--f-sans);
  font-size:15px;
  font-weight:500;
  letter-spacing:-0.005em;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  gap:4px;
  white-space:nowrap;
  transition:background .15s ease, transform .15s ease;
}
.hfc-submit:hover{ background:#000; }
.hfc-submit:active{ transform:translateY(1px); }
.hfc-submit:disabled{ opacity:.55; cursor:not-allowed; }
.hfc-submit .arr{ transition:transform .2s ease; }
.hfc-submit:hover .arr{ transform:translateX(3px); }

.hfc-error{
  font-size:12px;
  color:#5C1410;
  font-family:var(--f-mono);
  margin-top:-6px;
}

/* ——— Чекбокс согласия в HeroForm (лаймовая карточка) ——— */
.hfc-agree{
  display:flex;
  align-items:flex-start;
  gap:10px;
  font-size:12px;
  line-height:1.45;
  color:var(--ink);
  cursor:pointer;
  margin-top:-4px;
}
.hfc-agree input[type="checkbox"]{
  flex-shrink:0;
  width:16px; height:16px;
  margin-top:1px;
  cursor:pointer;
  accent-color:var(--ink);
}
.hfc-agree a{
  color:var(--ink);
  text-decoration:underline;
  text-underline-offset:2px;
}
.hfc-agree a:hover{ text-decoration:none; }

.hfc-perks{
  display:flex;
  flex-wrap:wrap;
  gap:8px 18px;
  font-family:var(--f-mono);
  font-size:12px;
  color:var(--ink);
  letter-spacing:.02em;
}
.hfc-perks span{
  position:relative;
  padding-left:14px;
}
.hfc-perks span::before{
  content:"";
  position:absolute;
  left:0; top:50%;
  transform:translateY(-50%);
  width:4px; height:4px;
  border-radius:50%;
  background:var(--ink);
}
.hfc-perks span:first-child{ padding-left:0; }
.hfc-perks span:first-child::before{ display:none; }

.hfc-sent{
  display:flex;
  align-items:center;
  gap:14px;
}
.hfs-mk{
  width:36px; height:36px;
  border-radius:50%;
  background:var(--ink);
  color:var(--accent);
  display:grid; place-items:center;
  font-size:18px; font-weight:500;
  flex-shrink:0;
}
.hfs-title{ font-size:16px; font-weight:500; color:var(--ink); }
.hfs-sub{ font-size:13px; color:var(--ink-2); margin-top:2px; opacity:.7; }
@keyframes messageIn{ from{opacity:0;transform:translateY(6px);} to{opacity:1;transform:translateY(0);} }

.hero-stats{
  display:grid; grid-template-columns:repeat(3,1fr);
  border-top:1px solid var(--line);
  margin-top:56px;
}
.hero-stats .st{
  padding:20px 0 0;
  border-right:1px solid var(--line);
}
.hero-stats .st:last-child{ border-right:0; padding-left:24px; }
.hero-stats .st:not(:first-child){ padding-left:24px; }
.hero-stats .v{ font-size:36px; letter-spacing:-0.03em; font-weight:500; }
.hero-stats .v sup{ font-size:18px; color:var(--muted); font-weight:400; margin-left:2px; }
.hero-stats .k{ font-family:var(--f-mono); font-size:11px; color:var(--muted); text-transform:uppercase; letter-spacing:.06em; margin-top:4px; }

/* ——————————————————————— Product window ——————————————————————— */
.product{
  border:1px solid var(--line);
  border-radius:16px;
  background:#fff;
  overflow:hidden;
  box-shadow: 0 1px 0 #fff inset, 0 20px 40px -20px rgba(11,13,16,.15), 0 2px 8px -2px rgba(11,13,16,.06);
}
.product-head{
  display:grid; grid-template-columns:auto 1fr auto;
  align-items:center; gap:16px;
  padding:12px 14px;
  border-bottom:1px solid var(--line);
  background:var(--bg-alt);
}
.product-head .dots{ display:flex; gap:6px; }
.product-head .dots i{ width:10px; height:10px; border-radius:50%; background:var(--line-2); display:block; }
.product-head .addr{
  font-family:var(--f-mono); font-size:12px; color:var(--muted);
  text-align:center;
  display:flex; gap:8px; justify-content:center; align-items:center;
}
.product-head .addr .live{
  width:6px; height:6px; border-radius:50%; background:var(--accent);
  box-shadow:0 0 0 3px rgba(198,242,78,.25);
  animation:pulse 1.6s ease-in-out infinite;
}
@keyframes pulse{ 0%,100%{ opacity:1 } 50%{ opacity:.4 } }
.product-head .status{ font-family:var(--f-mono); font-size:11px; color:var(--muted); }

.product-body{ display:grid; grid-template-columns: 220px 1fr; min-height:440px; }
.product-side{
  background:var(--bg-alt);
  border-right:1px solid var(--line);
  padding:14px 10px;
  font-size:13px;
}
.side-group{ padding:4px 6px 8px; }
.side-label{ font-family:var(--f-mono); font-size:10px; letter-spacing:.08em; text-transform:uppercase; color:var(--muted-2); padding:6px 8px; }
.side-item{
  display:flex; align-items:center; gap:8px;
  padding:8px 10px; border-radius:8px;
  color:var(--muted);
  cursor:pointer;
}
.side-item.active{ background:#fff; color:var(--ink); box-shadow:0 1px 0 rgba(11,13,16,.04); }
.side-item .sq{ width:14px; height:14px; border-radius:4px; background:var(--line); flex:none; }
.side-item.active .sq{ background:var(--accent); }

.chat{ display:flex; flex-direction:column; }
.chat-scroll{ padding:20px 24px; display:flex; flex-direction:column; gap:14px; }
.msg{ max-width:86%; font-size:14px; line-height:1.5; }
.msg.user{
  align-self:flex-end;
  background:var(--ink); color:#fff;
  padding:10px 14px; border-radius:14px 14px 4px 14px;
}
.msg.ai{
  align-self:flex-start;
  padding:0;
  color:var(--ink);
}
.msg.ai .who{
  font-family:var(--f-mono); font-size:10px; color:var(--muted);
  text-transform:uppercase; letter-spacing:.08em;
  margin-bottom:6px; display:flex; gap:8px; align-items:center;
}
.msg.ai .who .pill{
  background:var(--accent); color:var(--ink);
  padding:1px 6px; border-radius:4px;
  font-weight:500;
}
.msg.ai .body{
  background:var(--bg);
  border:1px solid var(--line);
  padding:12px 14px;
  border-radius:14px 14px 14px 4px;
}
.msg.ai .body p + p{ margin-top:8px; }
.msg.ai .cite{
  margin-top:10px; padding:8px 10px;
  border-left:2px solid var(--accent);
  background:color-mix(in srgb, var(--accent) 14%, transparent);
  font-family:var(--f-mono); font-size:12px; line-height:1.45;
  color:var(--ink-2);
  border-radius:0 6px 6px 0;
}
.msg.ai .cite b{ font-weight:500; }

.typing{ display:inline-flex; gap:3px; align-items:center; }
.typing i{ width:6px; height:6px; border-radius:50%; background:var(--muted-2); display:block; animation:bounce 1.2s infinite; }
.typing i:nth-child(2){ animation-delay:.15s; }
.typing i:nth-child(3){ animation-delay:.3s; }
@keyframes bounce{ 0%,60%,100%{transform:translateY(0); opacity:.5} 30%{transform:translateY(-4px); opacity:1} }

.chat-input{
  border-top:1px solid var(--line);
  padding:12px 16px;
  display:grid; grid-template-columns: 1fr auto; gap:10px; align-items:center;
  background:#fff;
  cursor:pointer;
  color:inherit;
  text-decoration:none;
  transition:background .15s ease;
}
.chat-input:hover{ background:var(--bg-alt); }
.chat-input:hover .field{ color:var(--ink); }
.chat-input:hover .send{ background:#000; }
.chat-input .field{
  display:flex; align-items:center; gap:10px;
  font-size:14px; color:var(--muted);
  transition:color .15s ease;
}
.chat-input .field .caret{
  width:1px; height:14px; background:var(--ink);
  animation:blink 1s step-end infinite;
}
@keyframes blink{ 50%{ opacity:0 } }
.chat-input .send{
  width:34px; height:34px; border-radius:50%;
  background:var(--ink); color:#fff;
  display:grid; place-items:center;
  transition:background .15s ease;
}

/* ——————————————————————— Section frames ——————————————————————— */
.section{ padding:96px 0; border-top:1px solid var(--line); }
.section-head{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:64px;
  align-items:end;
  margin-bottom:56px;
}
.section-head .lede{ color:var(--muted); font-size:17px; line-height:1.5; max-width:52ch; }
.section-head .lede b{ color:var(--ink); font-weight:500; }
.section-num{ font-family:var(--f-mono); font-size:11px; color:var(--muted); letter-spacing:.1em; text-transform:uppercase; margin-bottom:20px; display:flex; gap:10px; align-items:center;}
.section-num .bar{ width:24px; height:1px; background:var(--ink); }

/* ——————————————————————— Problems ——————————————————————— */
.problems{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-top:1px solid var(--line);
  border-left:1px solid var(--line);
}
.problem{
  padding:32px 28px;
  border-right:1px solid var(--line);
  border-bottom:1px solid var(--line);
  display:flex; flex-direction:column; gap:12px;
  min-height:220px;
}
.problem .idx{ font-family:var(--f-mono); font-size:11px; color:var(--muted); letter-spacing:.06em; }
.problem h3{ font-size:22px; letter-spacing:-0.015em; }
.problem p{ color:var(--muted); font-size:15px; line-height:1.5; }
.problem .tag{
  margin-top:auto;
  display:inline-flex; width:max-content;
  font-family:var(--f-mono); font-size:11px; letter-spacing:.04em;
  color:var(--ink);
  padding:4px 8px; border-radius:4px;
  background:var(--bg-alt); border:1px solid var(--line);
}

/* ——————————————————————— Capabilities (feature rows) ——————————————————————— */
.caps{
  display:grid; grid-template-columns:1fr;
  border-top:1px solid var(--line);
}
.cap{
  display:grid;
  grid-template-columns: 80px 1.1fr 1.3fr 1fr;
  gap:32px;
  padding:28px 0;
  border-bottom:1px solid var(--line);
  align-items:start;
}
.cap .num{ font-family:var(--f-mono); font-size:12px; color:var(--muted-2); letter-spacing:.08em; padding-top:2px;}
.cap h3{ font-size:22px; letter-spacing:-0.015em; }
.cap p{ color:var(--muted); font-size:15px; line-height:1.5; }
.cap .meta{
  display:flex; flex-direction:column; gap:6px;
  font-family:var(--f-mono); font-size:12px; color:var(--ink);
}
.cap .meta .k{ color:var(--muted-2); text-transform:uppercase; letter-spacing:.06em; font-size:10px; }

/* ——————————————————————— Flow (process) ——————————————————————— */
.flow{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:0;
  border-top:1px solid var(--line);
  border-left:1px solid var(--line);
}
.flow-step{
  padding:28px 24px 32px;
  border-right:1px solid var(--line);
  border-bottom:1px solid var(--line);
  display:flex; flex-direction:column; gap:12px;
  min-height:220px;
  position:relative;
}
.flow-step .num{
  font-family:var(--f-mono); font-size:11px; color:var(--muted); letter-spacing:.06em;
  display:flex; justify-content:space-between; align-items:center;
}
.flow-step .num .ar{ color:var(--muted-2); }
.flow-step:last-child .num .ar{ display:none; }
.flow-step h3{ font-size:20px; }
.flow-step p{ color:var(--muted); font-size:14px; line-height:1.5; }
.flow-step .deliver{
  margin-top:auto;
  font-family:var(--f-mono); font-size:11px;
  color:var(--ink);
  background:var(--accent);
  align-self:flex-start;
  padding:3px 8px; border-radius:4px;
}

/* ——————————————————————— Principles ——————————————————————— */
.principles{
  display:grid;
  grid-template-columns:repeat(2, 1fr);
  gap:0;
  border-top:1px solid var(--line);
}
.principle{
  padding:28px 32px;
  display:grid;
  grid-template-columns: 56px 1fr;
  gap:20px;
  border-bottom:1px solid var(--line);
}
.principle:nth-child(2n){ border-left:1px solid var(--line); }
.principle:nth-child(odd){ padding-left:0; }
.principle .n{ font-family:var(--f-mono); font-size:12px; color:var(--muted-2); padding-top:4px;}
.principle h3{ font-size:19px; letter-spacing:-0.01em; margin-bottom:6px; }
.principle p{ color:var(--muted); font-size:14.5px; line-height:1.55; }

/* ——————————————————————— Audience / integrations ——————————————————————— */
.audience{
  display:grid; grid-template-columns:1fr 1fr; gap:64px;
  align-items:start;
}
.who-list{ display:flex; flex-direction:column; gap:0; border-top:1px solid var(--line); }
.who-item{
  padding:20px 0;
  border-bottom:1px solid var(--line);
  display:grid;
  grid-template-columns: 1fr auto;
  align-items:center;
  gap:24px;
}
.who-item h3{ font-size:19px; }
.who-item p{ color:var(--muted); font-size:14px; margin-top:4px; }
.who-item .check{
  width:28px; height:28px; border-radius:50%;
  background:var(--accent); color:var(--ink);
  display:grid; place-items:center; font-size:14px;
}

.integrations{
  padding:28px;
  background:var(--bg-alt);
  border:1px solid var(--line);
  border-radius:14px;
}
.integrations h3{ font-size:16px; margin-bottom:16px; display:flex; align-items:center; gap:10px; }
.integrations h3 .tag{ font-family:var(--f-mono); font-size:10px; padding:2px 6px; background:#fff; border:1px solid var(--line); border-radius:4px; color:var(--muted); }
.int-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
.int{
  background:#fff; border:1px solid var(--line); border-radius:10px;
  padding:14px 12px; display:flex; flex-direction:column; gap:8px;
  font-size:13px;
}
.int .ic{
  width:24px; height:24px; border-radius:6px;
  background:var(--bg-alt);
  font-family:var(--f-mono); font-size:11px;
  display:grid; place-items:center;
  color:var(--ink);
}
.int .nm{ font-weight:500; }
.int .ds{ font-size:11.5px; color:var(--muted); font-family:var(--f-mono); }

/* ——————————————————————— Risks ——————————————————————— */
.risks{
  display:grid; grid-template-columns:repeat(3,1fr);
  border-top:1px solid var(--line);
  border-left:1px solid var(--line);
}
.risk{
  padding:32px 28px;
  border-right:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:#fff;
  display:flex; flex-direction:column; gap:14px;
  min-height:260px;
}
.risk .n{ font-family:var(--f-mono); font-size:11px; color:var(--danger); letter-spacing:.08em; }
.risk h3{ font-size:22px; letter-spacing:-0.015em; }
.risk p{ color:var(--muted); font-size:15px; line-height:1.55; }
.risks-note{
  margin-top:24px; padding:20px 24px;
  background:var(--ink); color:#fff;
  border-radius:12px;
  display:flex; gap:20px; align-items:center;
  font-size:15px; line-height:1.5;
}
.risks-note b{ color:#fff; font-weight:500; }
.risks-note .mark{
  background:var(--accent); color:var(--ink);
  font-family:var(--f-mono); font-size:11px; letter-spacing:.06em; text-transform:uppercase;
  padding:4px 10px; border-radius:4px; flex:none;
}

/* ——————————————————————— Market ——————————————————————— */
.market{
  display:grid; grid-template-columns:1fr 1fr; gap:0;
  border-top:1px solid var(--line);
  border-left:1px solid var(--line);
}
.market-col{
  padding:32px 28px;
  border-right:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:#fff;
}
.market-col.good{ background:#fff; }
.market-col.bad{ background:var(--bg-alt); }
.market-tag{
  display:inline-flex; align-items:center; gap:10px;
  font-family:var(--f-mono); font-size:11px; letter-spacing:.06em; text-transform:uppercase;
  color:var(--muted);
  margin-bottom:20px;
}
.market-tag .mk{
  width:22px; height:22px; border-radius:50%;
  display:grid; place-items:center;
  font-family:var(--f-mono); font-size:13px; font-weight:500;
}
.market-col.good .mk{ background:var(--accent); color:var(--ink); }
.market-col.bad .mk{ background:var(--line-2); color:var(--ink); }
.market ul{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:14px; font-size:15px; line-height:1.55; color:var(--muted); }
.market li b{ color:var(--ink); font-weight:500; }
.market-note{
  margin-top:28px; padding:20px 0 0;
  border-top:1px solid var(--line);
  font-size:17px; color:var(--muted);
}
.market-note b{ color:var(--ink); font-weight:500; }

/* ——————————————————————— ROI ——————————————————————— */
.roi{
  display:grid; grid-template-columns:repeat(4,1fr);
  border-top:1px solid var(--line);
  border-left:1px solid var(--line);
}
.roi-num{
  padding:28px 24px 32px;
  border-right:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:#fff;
}
.roi-num.featured{ background:var(--accent); }
.roi-num .v{ font-size:44px; letter-spacing:-0.03em; font-weight:500; line-height:1; }
.roi-num .v sup{ font-size:20px; font-weight:400; color:var(--muted); margin-left:2px; }
.roi-num.featured .v sup{ color:var(--ink-2); }
.roi-num .k{ font-family:var(--f-mono); font-size:11px; color:var(--muted); text-transform:uppercase; letter-spacing:.06em; margin-top:10px; }
.roi-num.featured .k{ color:var(--ink-2); }
.roi-list{
  list-style:none; margin:28px 0 0; padding:0;
  display:grid; grid-template-columns:repeat(3,1fr); gap:24px;
  font-size:15px; color:var(--muted); line-height:1.55;
}
.roi-list li b{ color:var(--ink); font-weight:500; }

/* ——————————————————————— Tech ——————————————————————— */
.techs{
  display:grid; grid-template-columns:repeat(3,1fr);
  border-top:1px solid var(--line);
  border-left:1px solid var(--line);
}
.tech{
  padding:32px 28px;
  border-right:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:#fff;
  display:flex; flex-direction:column; gap:14px;
  min-height:300px;
}
.tech-head{ display:flex; justify-content:space-between; align-items:baseline; }
.tech .num{ font-family:var(--f-mono); font-size:11px; color:var(--muted); letter-spacing:.08em; }
.tech .big{ font-size:44px; letter-spacing:-0.03em; font-weight:500; color:var(--ink); }
.tech h3{ font-size:22px; }
.tech p{ color:var(--muted); font-size:14.5px; line-height:1.55; }
.tech .lb{
  margin-top:auto;
  font-family:var(--f-mono); font-size:11px;
  color:var(--ink); background:var(--accent);
  align-self:flex-start;
  padding:3px 8px; border-radius:4px;
}

/* ——————————————————————— Pricing ——————————————————————— */
.pricing{
  display:grid; grid-template-columns:repeat(3,1fr); gap:0;
  border-top:1px solid var(--line);
  border-left:1px solid var(--line);
}
.plan{
  padding:32px 28px;
  border-right:1px solid var(--line);
  border-bottom:1px solid var(--line);
  display:flex; flex-direction:column; gap:18px;
  background:#fff;
}
.plan.featured{ background:var(--ink); color:#fff; }
.plan.featured .lede, .plan.featured li{ color:#C9CCD1; }
.plan.featured .price b{ color:#fff; }
.plan .tier{
  display:flex; justify-content:space-between; align-items:center;
  font-family:var(--f-mono); font-size:11px; letter-spacing:.08em; text-transform:uppercase;
  color:var(--muted);
}
.plan.featured .tier{ color:#C9CCD1; }
.plan .tier .mark{
  background:var(--accent); color:var(--ink);
  padding:2px 6px; border-radius:4px;
}
.plan h3{ font-size:28px; letter-spacing:-0.02em; font-weight:500; }
.plan .price{ display:flex; align-items:baseline; gap:8px; border-bottom:1px solid var(--line); padding-bottom:18px; }
.plan.featured .price{ border-bottom-color:#2A2E35; }
.plan .price b{ font-size:44px; font-weight:500; letter-spacing:-0.03em; color:var(--ink); line-height:1; }
.plan.featured .price b{ color:#fff; }
.plan .price span{ font-family:var(--f-mono); font-size:13px; color:var(--muted); }
.plan-meta{ display:flex; flex-direction:column; gap:10px; font-size:13.5px; line-height:1.45; }
.plan-meta .k{ font-family:var(--f-mono); font-size:10px; letter-spacing:.08em; text-transform:uppercase; color:var(--muted); display:block; margin-bottom:2px; }
.plan.featured .plan-meta .k{ color:#8A8F96; }
.plan-meta > div{ color:var(--ink); }
.plan.featured .plan-meta > div{ color:#fff; }
.plan-result{
  margin-top:6px; padding:14px 16px;
  background:var(--bg-alt);
  border-radius:10px;
  font-size:13.5px; line-height:1.45;
}
.plan-result .k{ font-family:var(--f-mono); font-size:10px; letter-spacing:.08em; text-transform:uppercase; color:var(--muted); display:block; margin-bottom:4px; }
.plan.featured .plan-result{ background:#1F232A; color:#fff; }
.plan.featured .plan-result .k{ color:#8A8F96; }
.pricing-foot{
  margin-top:28px; padding-top:20px;
  border-top:1px solid var(--line);
  font-size:15px; color:var(--muted);
  text-align:center;
}
.pricing-foot a{ color:var(--ink); border-bottom:1px solid var(--line-2); }
.pricing-foot a:hover{ border-bottom-color:var(--ink); }
.plan .lede{ font-size:14px; color:var(--muted); line-height:1.5; }
.plan ul{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:10px; flex:1; }
.plan li{ font-size:14px; line-height:1.5; display:flex; gap:10px; color:var(--ink); }
.plan li::before{
  content:""; flex:none; width:12px; height:12px; border-radius:50%;
  background:var(--accent); margin-top:5px;
}
.plan.featured li{ color:#E5E7EB; }
.plan .cta{ margin-top:auto; }

/* ——————————————————————— Scarcity note ——————————————————————— */
.scarcity-note{
  margin-top:28px; padding:22px 24px;
  background:var(--ink); color:#fff;
  border-radius:12px;
  font-size:15.5px; line-height:1.55;
}
.scarcity-note b{ color:var(--accent); font-weight:500; }

/* ——————————————————————— Quote ——————————————————————— */
.quote-wrap{ max-width:860px; margin:0 auto; }
.quote-wrap .section-num{ margin-bottom:32px; }
.quote{
  font-family:var(--f-sans);
  font-size:clamp(24px, 2.8vw, 36px);
  line-height:1.3; letter-spacing:-0.02em;
  font-weight:400;
  color:var(--ink);
  margin:0;
}
.quote p + p{ margin-top:20px; }
.quote em{ font-style:normal; background:var(--accent); padding:0 .1em; border-radius:4px; }
.quote-author{
  margin-top:32px; padding-top:20px;
  border-top:1px solid var(--line);
  display:flex; gap:12px; align-items:baseline;
}
.qa-name{ font-weight:500; }
.qa-role{ color:var(--muted); font-family:var(--f-mono); font-size:12px; }

/* ——————————————————————— Manifesto ——————————————————————— */
.manifesto-section{ background:var(--ink); color:#fff; border-top:0; padding:120px 0; }
.manifesto-section .section-num{ color:#8A8F96; margin-bottom:32px; }
.manifesto-section .section-num .bar{ background:#fff; }
.manifesto{ max-width:1000px; }
.manifesto p{
  font-size:clamp(28px, 3.6vw, 48px);
  line-height:1.2; letter-spacing:-0.025em;
  color:#E5E7EB;
  margin:0;
}
.manifesto p + p{ margin-top:24px; }
.manifesto .hl{ color:#fff; background:linear-gradient(transparent 60%, rgba(198,242,78,.35) 60%); }

/* ——————————————————————— Roadmap ——————————————————————— */
.rm-tabs{
  display:flex; gap:4px;
  border-bottom:1px solid var(--line);
  margin-bottom:0;
}
.rm-tab{
  padding:14px 18px;
  font-size:14px; font-weight:500;
  color:var(--muted);
  border-bottom:2px solid transparent;
  margin-bottom:-1px;
  display:inline-flex; align-items:baseline; gap:10px;
}
.rm-tab span{ font-family:var(--f-mono); font-size:11px; color:var(--muted-2); letter-spacing:.04em; }
.rm-tab.active{ color:var(--ink); border-bottom-color:var(--ink); }
.rm-body{ display:flex; flex-direction:column; }
.rm-year{
  display:grid;
  grid-template-columns:120px 1fr;
  gap:40px;
  padding:40px 0;
  border-bottom:1px solid var(--line);
}
.rm-y{ font-family:var(--f-mono); font-size:14px; color:var(--ink); letter-spacing:.04em; font-weight:500; }
.rm-items{ display:flex; flex-direction:column; gap:20px; }
.rm-item{
  display:grid;
  grid-template-columns:100px 1fr;
  gap:24px;
  align-items:start;
}
.rm-date{ font-family:var(--f-mono); font-size:12px; color:var(--muted-2); letter-spacing:.04em; padding-top:4px; }
.rm-t h3{ font-size:17px; letter-spacing:-0.01em; margin-bottom:4px; }
.rm-t p{ color:var(--muted); font-size:14px; line-height:1.5; }

/* ——————————————————————— Links / misc ——————————————————————— */
.link-inline{ color:var(--ink); border-bottom:1px solid var(--line-2); }
.link-inline:hover{ border-bottom-color:var(--ink); }
.final-links{ display:flex; gap:24px; margin-top:24px; font-size:14px; color:#C9CCD1; }
.final-links a{ border-bottom:1px solid #2A2E35; padding-bottom:2px; }
.final-links a:hover{ border-bottom-color:var(--accent); color:#fff; }

/* ——————————————————————— FAQ ——————————————————————— */
.faq{ border-top:1px solid var(--line); }
.faq-item{
  border-bottom:1px solid var(--line);
  padding:24px 0;
  display:grid; grid-template-columns: 60px 1fr 1fr; gap:32px;
  align-items:start;
}
.faq-item .n{ font-family:var(--f-mono); font-size:12px; color:var(--muted-2); letter-spacing:.06em; padding-top:3px; }
.faq-item .q{ font-size:18px; letter-spacing:-0.01em; font-weight:500;}
.faq-item .a{ color:var(--muted); font-size:15px; line-height:1.55; }

/* ——————————————————————— Final CTA ——————————————————————— */
.final{
  margin:96px 0 0;
  padding:88px 0 80px;
  background:var(--ink);
  color:#fff;
  border-top:1px solid var(--ink);
}
.final-grid{
  display:grid; grid-template-columns: 1.3fr 1fr; gap:64px; align-items:end;
}
.final h2{ font-size:clamp(36px, 4.5vw, 72px); letter-spacing:-0.03em; color:#fff; line-height:.98; }
.final h2 .accent{ background:var(--accent); color:var(--ink); padding:0 .08em 0.02em; border-radius:6px; box-decoration-break:clone; -webkit-box-decoration-break:clone;}
.final p{ color:#B6BAC1; font-size:16px; line-height:1.55; }
.final-form{
  background:#15181D;
  border:1px solid #23272E;
  border-radius:14px;
  padding:22px;
  display:flex; flex-direction:column; gap:14px;
}
.final-form label{ font-family:var(--f-mono); font-size:11px; letter-spacing:.06em; text-transform:uppercase; color:#8A8F96; }
.final-form input{
  width:100%;
  background:transparent; border:0; outline:0;
  border-bottom:1px solid #2A2E35;
  padding:8px 0 10px; color:#fff;
  font-size:16px;
}
.final-form input::placeholder{ color:#5B6066; }
.final-form input:focus{ border-bottom-color:var(--accent); }
.final-form .row{ display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.final-form .sub{ color:#5B6066; font-size:12px; font-family:var(--f-mono); }
.final-form .submit{
  height:48px; border-radius:999px;
  background:var(--accent); color:var(--ink);
  font-weight:500; font-size:15px;
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  transition:transform .12s;
}
.final-form .submit:active{ transform:translateY(1px); }
.final-form.sent .fields{ display:none; }
.final-form .thanks{ display:none; color:#fff; font-size:15px; padding:20px 0; }
.final-form.sent .thanks{ display:flex; gap:12px; align-items:center; }
.final-form .thanks .mk{ width:28px; height:28px; border-radius:50%; background:var(--accent); color:var(--ink); display:grid; place-items:center; }

/* ——— Чекбокс согласия в Final форме (тёмный фон) ——— */
.final-agree{
  display:flex;
  align-items:flex-start;
  gap:10px;
  font-size:12px;
  line-height:1.45;
  color:#B6BAC1;
  cursor:pointer;
  margin-top:4px;
}
.final-agree input[type="checkbox"]{
  flex-shrink:0;
  width:16px; height:16px;
  margin-top:1px;
  cursor:pointer;
  accent-color:var(--accent);
}
.final-agree a{
  color:#fff;
  text-decoration:underline;
  text-underline-offset:2px;
}
.final-agree a:hover{ text-decoration:none; }

/* ——————————————————————— Footer ——————————————————————— */
.footer{
  background:var(--ink); color:#8A8F96;
  padding:48px 0 28px;
  border-top:1px solid #1A1D22;
}
.footer .cols{
  display:grid; grid-template-columns: 1.6fr 1fr 1fr 1fr; gap:40px;
  margin-bottom:48px;
}
.footer h4{ color:#fff; font-size:13px; margin:0 0 14px; font-weight:500; font-family:var(--f-mono); letter-spacing:.06em; text-transform:uppercase; }
.footer ul{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:10px; font-size:14px; }
.footer a:hover{ color:#fff; }
.footer .brand-mark{ background:var(--accent); color:var(--ink); }
.footer .sub{ font-size:13px; line-height:1.6; color:#8A8F96; margin-top:16px; }
.footer .legal{
  display:flex; justify-content:space-between; gap:24px;
  border-top:1px solid #1A1D22;
  padding-top:20px;
  font-size:12px; font-family:var(--f-mono); color:#5B6066;
}

/* ——————————————————————— Hero trust + buttons ——————————————————————— */
.hero-trust{
  margin-top:20px;
  display:inline-flex; gap:12px; align-items:flex-start;
  padding:12px 16px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:10px;
  font-size:14px; line-height:1.45;
  max-width:520px;
}
.hero-trust b{ color:var(--ink); font-weight:500; }
.hero-trust .mk{
  width:22px; height:22px; border-radius:50%;
  background:var(--accent); color:var(--ink);
  display:grid; place-items:center; font-size:13px;
  flex:none;
}

/* ——————————————————————— Sticky bar ——————————————————————— */
.sticky-bar{
  position:fixed; left:0; right:0; bottom:0;
  z-index:50;
  background:var(--ink); color:#fff;
  border-top:2px solid var(--accent);
  animation:slideUp .3s ease-out;
}
@keyframes slideUp{ from{transform:translateY(100%)} to{transform:translateY(0)} }
.sb-row{
  display:grid; grid-template-columns:1fr auto; gap:20px;
  align-items:center;
  padding-top:12px; padding-bottom:12px;
}
.sb-left{ font-size:14.5px; line-height:1.4; display:inline-flex; gap:12px; align-items:center; }
.sb-left b{ color:var(--accent); font-weight:500; }
.sb-live{ display:inline-flex; gap:3px; }
.sb-live i{ width:4px; height:4px; border-radius:50%; background:var(--accent); animation:bounce 1.2s infinite; }
.sb-live i:nth-child(2){ animation-delay:.15s } .sb-live i:nth-child(3){ animation-delay:.3s }

/* ——————————————————————— Trust strip ——————————————————————— */
.trust-strip{
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:var(--bg-alt);
}
.trust-row{
  display:grid; grid-template-columns:auto 1fr; gap:32px;
  align-items:center;
  padding-top:20px; padding-bottom:20px;
}
.trust-label{
  font-family:var(--f-mono); font-size:11px; letter-spacing:.08em; text-transform:uppercase;
  color:var(--muted);
}
.trust-grid{ display:grid; grid-template-columns:repeat(5,1fr); gap:32px; }
.trust-item{ display:flex; flex-direction:column; gap:4px; }
.trust-item .v{ font-size:22px; letter-spacing:-0.02em; font-weight:500; }
.trust-item .k{ font-family:var(--f-mono); font-size:10.5px; color:var(--muted); letter-spacing:.04em; }

/* ——————————————————————— Calculator ——————————————————————— */
.calc{
  display:grid; grid-template-columns:1.2fr 1fr; gap:0;
  border:1px solid var(--line);
  border-radius:14px;
  overflow:hidden;
  background:#fff;
}
.calc-controls{ padding:32px; display:flex; flex-direction:column; gap:28px; }
.calc-row{
  display:grid;
  grid-template-columns:1fr auto;
  grid-template-rows:auto auto auto;
  gap:4px 16px;
  align-items:baseline;
}
.calc-row label{
  font-family:var(--f-mono); font-size:11px; letter-spacing:.08em; text-transform:uppercase;
  color:var(--muted);
}
.calc-val{
  font-size:24px; letter-spacing:-0.02em; font-weight:500;
  text-align:right;
}
.calc-row input[type=range]{
  grid-column:1 / -1;
  -webkit-appearance:none; appearance:none;
  width:100%; height:4px;
  background:var(--line);
  border-radius:999px; outline:0;
  margin:6px 0 0;
}
.calc-row input[type=range]::-webkit-slider-thumb{
  -webkit-appearance:none; appearance:none;
  width:20px; height:20px; border-radius:50%;
  background:var(--ink); border:3px solid var(--accent);
  cursor:pointer;
  box-shadow:0 0 0 2px var(--bg);
}
.calc-row input[type=range]::-moz-range-thumb{
  width:20px; height:20px; border-radius:50%;
  background:var(--ink); border:3px solid var(--accent);
  cursor:pointer;
}
.calc-scale{
  grid-column:1 / -1;
  display:flex; justify-content:space-between;
  font-family:var(--f-mono); font-size:10.5px; color:var(--muted-2);
  letter-spacing:.04em;
}

.calc-result{
  background:var(--ink); color:#fff;
  padding:32px;
  display:flex; flex-direction:column; gap:14px;
  justify-content:center;
}
.cr-line{
  display:flex; justify-content:space-between; align-items:baseline;
  padding:8px 0;
  border-bottom:1px dashed #2A2E35;
  font-size:14px; color:#B6BAC1;
}
.cr-line b{ color:#fff; font-weight:500; font-size:18px; letter-spacing:-0.01em; }
.cr-total{
  margin-top:10px;
  padding:16px 0;
  border-top:2px solid var(--accent);
}
.cr-t-label{
  font-family:var(--f-mono); font-size:11px; letter-spacing:.08em; text-transform:uppercase;
  color:#8A8F96; margin-bottom:6px;
}
.cr-t-val{
  font-size:44px; letter-spacing:-0.03em; font-weight:500; color:var(--accent);
  line-height:1;
}
.cr-saved{
  padding:14px 16px;
  background:#1F232A; border-radius:10px;
  font-size:14px; line-height:1.45; color:#C9CCD1;
  display:flex; gap:10px; align-items:center; flex-wrap:wrap;
}
.cr-saved b{ color:#fff; font-weight:500; }
.cr-pill{
  font-family:var(--f-mono); font-size:10px; letter-spacing:.08em; text-transform:uppercase;
  background:var(--accent); color:var(--ink);
  padding:3px 8px; border-radius:4px;
}

/* ——————————————————————— Objections ——————————————————————— */
.objections{
  display:grid; grid-template-columns:repeat(3,1fr); gap:0;
  border-top:1px solid var(--line);
  border-left:1px solid var(--line);
}
.obj{
  padding:28px 26px;
  border-right:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:#fff;
  display:flex; flex-direction:column; gap:14px;
  min-height:240px;
}
.obj-q{
  font-size:19px; line-height:1.3; letter-spacing:-0.015em;
  font-weight:500; color:var(--ink);
  font-style:italic;
}
.obj-bar{ width:32px; height:2px; background:var(--accent); }
.obj-a{ color:var(--muted); font-size:14.5px; line-height:1.55; }

/* ——————————————————————— Comparison ——————————————————————— */
.compare{
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.cmp-head, .cmp-row{
  display:grid;
  grid-template-columns: 1.3fr 1fr 1fr;
  gap:24px;
  padding:18px 0;
  border-bottom:1px solid var(--line);
  align-items:center;
}
.cmp-head{
  border-bottom:1px solid var(--ink);
  font-family:var(--f-mono); font-size:11px; letter-spacing:.08em; text-transform:uppercase;
  color:var(--muted);
  padding:14px 0;
}
.cmp-head .b{ color:var(--ink); }
.cmp-row:last-child{ border-bottom:0; }
.cmp-c.k{ font-size:15px; font-weight:500; }
.cmp-c.a{ font-size:15px; color:var(--muted); text-decoration:line-through; text-decoration-color:var(--line-2); }
.cmp-row .cmp-c.a{ text-decoration:none; }
.cmp-c.b{
  font-size:15px; font-weight:500; color:var(--ink);
  display:inline-flex; gap:10px; align-items:center;
}
.cmp-row .cmp-c.b::before{
  content:""; width:14px; height:14px; flex:none;
  background:var(--accent); border-radius:50%;
}

/* ——————————————————————— Timeline ——————————————————————— */
.timeline{
  border-top:1px solid var(--line);
  padding-top:40px;
}
.tl-track{
  position:relative; height:32px; margin:0 0 24px;
}
.tl-bar{
  position:absolute; left:0; right:0; top:14px; height:4px;
  background:linear-gradient(90deg, var(--accent) 0%, var(--accent) 33%, #EAD78A 33%, #EAD78A 66%, var(--line-2) 66%);
  border-radius:999px;
}
.tl-marker{ position:absolute; top:0; transform:translateX(-50%); }
.tl-pin{
  background:var(--ink); color:#fff;
  font-family:var(--f-mono); font-size:11px; letter-spacing:.06em;
  padding:4px 10px; border-radius:4px;
  position:relative;
  white-space:nowrap;
}
.tl-pin::after{
  content:""; position:absolute; left:50%; bottom:-14px;
  transform:translateX(-50%);
  width:0; height:0;
  border-left:6px solid transparent; border-right:6px solid transparent;
  border-top:10px solid var(--ink);
}
.tl-cells{
  display:grid; grid-template-columns:repeat(3,1fr); gap:0;
  border-left:1px solid var(--line);
}
.tl-cell{
  padding:24px;
  border-right:1px solid var(--line);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  display:flex; flex-direction:column; gap:10px;
  background:#fff;
  min-height:220px;
}
.tl-cell.now{ background:#fff; }
.tl-cell.soon{ background:var(--bg-alt); }
.tl-cell.late{ background:var(--bg-alt); color:var(--muted); }
.tl-when{
  font-family:var(--f-mono); font-size:11px; letter-spacing:.08em; text-transform:uppercase;
  color:var(--muted);
}
.tl-cell.now .tl-when{ color:var(--ink); }
.tl-cell h3{ font-size:22px; letter-spacing:-0.02em; line-height:1.1; }
.tl-cell p{ font-size:14px; line-height:1.5; color:var(--muted); }

/* ——————————————————————— Micro CTA ——————————————————————— */
.micro-cta{
  margin-top:32px;
  padding:18px 24px;
  background:var(--bg-alt);
  border:1px solid var(--line);
  border-radius:12px;
  display:flex; justify-content:space-between; gap:20px; align-items:center;
  flex-wrap:wrap;
}
.mc-text{ font-size:14px; color:var(--muted); display:inline-flex; gap:10px; align-items:center; }
.mc-text .mc-live{ display:inline-flex; }
.mc-live i{ width:8px; height:8px; border-radius:50%; background:var(--accent); box-shadow:0 0 0 3px rgba(198,242,78,.25); animation:pulse 1.6s ease-in-out infinite; }

/* ——————————————————————— Guarantee ——————————————————————— */
.guarantee-section{ padding:96px 0; background:var(--bg-alt); border-top:1px solid var(--line); }
.guarantee{
  display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center;
}
.guarantee h2{ font-size:clamp(32px,3.6vw,56px); }
.g-right{ display:flex; flex-direction:column; gap:20px; }
.g-badge{
  display:inline-flex; gap:14px; align-items:center;
  padding:14px 20px; border-radius:12px;
  background:var(--accent); color:var(--ink);
  align-self:flex-start;
}
.g-b-num{ font-size:40px; letter-spacing:-0.03em; font-weight:500; line-height:1; }
.g-b-k{ font-family:var(--f-mono); font-size:11px; letter-spacing:.08em; text-transform:uppercase; }
.g-list{ list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:14px; font-size:15.5px; line-height:1.55; color:var(--muted); }
.g-list li b{ color:var(--ink); font-weight:500; }
.g-list li{ position:relative; padding-left:24px; }
.g-list li::before{
  content:""; position:absolute; left:0; top:9px;
  width:12px; height:1px; background:var(--ink);
}

/* ——————————————————————— Responsive for new blocks ——————————————————————— */
@media (max-width: 1040px){
  .calc{ grid-template-columns:1fr; }
  .objections, .tl-cells{ grid-template-columns:1fr 1fr; }
  .trust-grid{ grid-template-columns:repeat(3,1fr); gap:20px 16px; }
  .trust-row{ grid-template-columns:1fr; gap:12px; padding-top:18px; padding-bottom:18px; }
  .guarantee{ grid-template-columns:1fr; gap:32px; }
  .cmp-head, .cmp-row{ grid-template-columns: 1fr 1fr 1fr; gap:12px; }
}
@media (max-width: 680px){
  .objections, .tl-cells{ grid-template-columns:1fr; }
  .trust-grid{ grid-template-columns:repeat(2,1fr); }
  .sb-row{ grid-template-columns:1fr; gap:10px; }
  .sb-row .btn{ width:100%; justify-content:center; }
  .sb-left{ font-size:13px; }
  .cmp-head, .cmp-row{ grid-template-columns: 1fr; gap:4px; padding:14px 0; }
  .cmp-head{ display:none; }
  .cmp-c.a::before{ content:"Без ИИ · "; color:var(--muted-2); font-family:var(--f-mono); font-size:11px; letter-spacing:.06em; }
  .cmp-c.b::before{ content:""; }
  .cmp-c.b{ color:var(--ink); }
  .micro-cta{ flex-direction:column; align-items:stretch; text-align:center; }
  .micro-cta .btn{ justify-content:center; }
}
@media (max-width: 1040px){
  .hero-grid, .section-head, .final-grid, .audience{ grid-template-columns:1fr; gap:40px; }
  .section{ padding:72px 0; }
  .section-head{ margin-bottom:40px; }
  .product-body{ grid-template-columns:1fr; }
  .product-side{ display:none; }
  .problems, .flow, .pricing, .risks, .techs{ grid-template-columns:1fr 1fr; }
  .roi{ grid-template-columns:1fr 1fr; }
  .roi-list{ grid-template-columns:1fr; gap:14px; }
  .market{ grid-template-columns:1fr; }
  .rm-year{ grid-template-columns:1fr; gap:16px; }
  .rm-item{ grid-template-columns:80px 1fr; gap:16px; }
  .cap{ grid-template-columns: 60px 1fr; gap:16px; }
  .cap .meta{ grid-column:2; flex-direction:row; gap:16px; flex-wrap:wrap; }
  .cap > p{ grid-column:2; }
  .principles{ grid-template-columns:1fr; }
  .principle{ padding:24px 0 !important; border-left:0 !important; }
  .footer .cols{ grid-template-columns:1fr 1fr; }
  .faq-item{ grid-template-columns: 40px 1fr; }
  .faq-item .a{ grid-column:2; }
  .guarantee-section{ padding:72px 0; }
  .final{ margin:72px 0 0; padding:64px 0 60px; }
}
@media (max-width: 680px){
  :root{ --pad:20px; }
  .nav{ display:none; }

  /* Общая плотность — секции не дышат по 96px */
  .section{ padding:48px 0; }
  .section-head{ margin-bottom:28px; gap:20px; }

  .hero-stats{ grid-template-columns:1fr; }
  .hero-stats .st{ border-right:0; border-bottom:1px solid var(--line); padding:16px 0 !important; }
  .problems, .flow, .pricing, .risks, .techs{ grid-template-columns:1fr; }
  .roi{ grid-template-columns:1fr 1fr; }
  .final-form .row{ grid-template-columns:1fr; }
  .footer .cols{ grid-template-columns:1fr; gap:28px; }
  .footer .legal{ flex-direction:column; gap:8px; }

  /* Topbar — логотип слева, бургер справа */
  .topbar .row{ gap:10px; height:56px; grid-template-columns:auto 1fr; padding-right:56px; }
  .brand{ gap:8px; min-width:0; }
  .brand-mark{ width:24px; height:24px; border-radius:6px; font-size:12px; flex-shrink:0; }
  .brand-name{ font-size:13px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  .brand-name .sub{ display:none; }

  /* На мобиле вся навигация + кнопка уходят в раскрывающийся оверлей */
  .burger{ display:flex; }
  .nav, .top-cta{
    display:none;
  }
  .topbar.menu-open{
    position:fixed;
    inset:0;
    height:100dvh;
    z-index:100;
    background:var(--bg);
    border-bottom:none;
    overflow-y:auto;
    -webkit-overflow-scrolling:touch;
  }
  /* Вся внутренность оверлея — flex-column, полной высоты */
  .topbar.menu-open .row{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    justify-content:flex-start;
    gap:0;
    height:auto;
    min-height:100dvh;
    padding:0;
    grid-template-columns:none;
  }
  /* Шапка оверлея — логотип слева, бургер (крестик) справа */
  .topbar.menu-open .brand{
    min-height:56px;
    padding:0 20px;
    padding-right:56px;
    border-bottom:1px solid var(--line);
    align-self:stretch;
    width:100%;
  }
  .topbar.menu-open .nav{
    display:flex;
    flex-direction:column;
    gap:0;
    padding:12px 20px 12px;
    width:100%;
  }
  .topbar.menu-open .nav a{
    font-size:20px;
    padding:16px 0;
    border-bottom:1px solid var(--line);
    width:100%;
    letter-spacing:-0.01em;
    color:var(--ink);
    justify-content:flex-start;
  }
  .topbar.menu-open .nav a:last-child{ border-bottom:none; }
  .topbar.menu-open .top-cta{
    display:flex;
    flex-direction:column;
    gap:10px;
    padding:16px 20px calc(24px + env(safe-area-inset-bottom));
    border-top:1px solid var(--line);
    width:100%;
    margin-top:auto;
  }
  .topbar.menu-open .top-cta .btn,
  .topbar.menu-open .top-cta .tel{
    display:flex;
    width:100%; height:52px;
    font-size:15px;
    padding:0 20px;
    justify-content:center;
    letter-spacing:0;
  }
  /* Бургер превращается в крестик на том же месте — прижат к верху справа */
  .topbar.menu-open .burger{
    position:fixed;
    top:8px; right:16px;
  }

  /* Hero — меньше воздуха сверху */
  .hero{ padding:32px 0 24px; }
  .hero-meta{ display:none; }
  .hero-lede{ margin-top:0; font-size:16px; }
  .hero-ctas{ flex-direction:column; align-items:stretch; gap:10px; margin-top:24px; }
  .hero-ctas .btn{ width:100%; justify-content:center; }

  /* Hero form card на мобиле */
  .hero-form-card{ margin-top:24px; padding:20px 20px 18px; border-radius:16px; }
  .hfc-title{ font-size:15px; }
  .hfc-row{ flex-direction:column; gap:10px; }
  .hfc-input{
    height:54px;
    width:100%;
    font-size:16px;
    padding:0 22px;
    text-align:center;
  }
  .hfc-submit{
    height:54px;
    width:100%;
    padding:0 22px;
    font-size:15px;
    font-weight:500;
    justify-content:center;
  }
  .hfc-perks{ gap:6px 14px; font-size:11px; }
  .hero-stats{ margin-top:32px; }
  .hero-stats .st:last-child{ padding-left:0; border-bottom:0; }
  .hero-stats .st:not(:first-child){ padding-left:0; }

  /* Калькулятор — уменьшаю внутренние паддинги карточек */
  .calc-controls{ padding:22px; gap:22px; }
  .calc-result{ padding:22px; }
  .cr-t-val{ font-size:34px; }

  /* Карточки — более плотные отступы */
  .obj{ padding:22px 20px; min-height:auto; }
  .problem{ padding:24px 20px; min-height:auto; }
  .risk{ padding:24px 20px; min-height:auto; }
  .plan{ padding:24px 20px; }
  .tech{ padding:24px 20px; min-height:auto; }
  .market-col{ padding:24px 20px; }
  .roi-num{ padding:20px 16px; }
  .roi-num .v{ font-size:32px; }
  .tl-cell{ padding:20px; min-height:auto; }

  /* Trust strip */
  .trust-strip{ overflow:hidden; }
  .trust-row{ padding-top:20px; padding-bottom:20px; gap:16px; }
  .trust-label{ font-size:10px; }
  .trust-grid{ gap:18px 16px; }
  .trust-item .v{ font-size:20px; }
  .trust-item .k{ font-size:10px; }

  /* Sticky bar — на полную ширину, с нормальными внутренними паддингами */
  .sticky-bar{ left:0; right:0; width:auto; }
  .sticky-bar .sb-row{ padding-top:10px; padding-bottom:10px; }
  .sticky-bar .wrap.sb-row{ padding-left:16px; padding-right:16px; }
  .sb-left{ font-size:12.5px; }
  .sb-row .btn{ height:38px; padding:0 14px; font-size:13px; }

  /* Final — убираю огромную дыру перед формой */
  .final{ margin:32px 0 0; padding:48px 0 56px; }
  .final h2{ font-size:clamp(32px, 9vw, 48px); }
  .final-form{ padding:18px; }
  .final-links{ gap:16px; flex-wrap:wrap; margin-top:20px; }

  /* Guarantee — уменьшаю */
  .guarantee-section{ padding:48px 0; }

  /* Footer */
  .footer{ padding:40px 0 24px; }

  /* Product window: не толкает скролл */
  .product{ max-width:100%; }
  .product-head .tabs{ overflow-x:auto; -webkit-overflow-scrolling:touch; }

  /* Timeline — маркер не вылазит за viewport */
  .timeline{ overflow:hidden; padding-top:24px; }
  .tl-track{ overflow:visible; }
  .tl-pin{ font-size:10px; padding:3px 8px; }

  /* Принципы / Scarcity — убираем левые/правые 0-паддинги, которые ломали выравнивание */
  .principle{ padding:20px 0 !important; }

  /* Capabilities — плотнее */
  .cap{ padding:20px 0; gap:12px; }
  .cap h3{ font-size:19px; }

  /* Roadmap */
  .rm-item{ grid-template-columns:60px 1fr; gap:12px; padding:16px 0; }
  .rm-tabs{ flex-wrap:wrap; gap:8px; }

  /* FAQ */
  .faq-item{ grid-template-columns: 32px 1fr; gap:12px; padding:18px 0; }
  .faq-item .q{ font-size:16px; }

  /* Manifesto — плотнее */
  .manifesto p{ font-size:18px; }

  /* Section-num не прилипает к левому краю — и так в .wrap, норм */
}

/* Любые возможные причины горизонтального скролла — последняя защита */
@media (max-width: 680px){
  .wrap{ overflow-x:clip; }
  .section{ overflow-x:clip; }
  img, svg, video, iframe{ max-width:100%; height:auto; }
  pre, code{ white-space:pre-wrap; word-break:break-word; }
}

/* ——————————————————————— Mobile form modal ——————————————————————— */
.form-modal{
  position:fixed; inset:0; z-index:100;
  display:none;
  align-items:flex-end; justify-content:center;
  background:rgba(11,13,16,.55);
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
  animation:fm-fade .2s ease;
}
.form-modal.open{ display:flex; }
@keyframes fm-fade{ from{opacity:0} to{opacity:1} }
.form-modal-card{
  width:100%; max-width:520px;
  background:var(--bg);
  border-radius:20px 20px 0 0;
  padding:24px 20px calc(20px + env(safe-area-inset-bottom));
  animation:fm-slide .25s cubic-bezier(.2,.8,.2,1);
  max-height:92vh; overflow-y:auto;
}
@keyframes fm-slide{ from{transform:translateY(100%)} to{transform:translateY(0)} }
.form-modal-head{
  display:flex; align-items:center; justify-content:space-between;
  margin-bottom:16px;
}
.form-modal-head h3{ font-size:22px; letter-spacing:-0.02em; font-weight:500; margin:0; }
.form-modal-close{
  width:36px; height:36px; border-radius:50%;
  background:var(--bg-alt); border:1px solid var(--line);
  display:grid; place-items:center;
  font-size:18px; line-height:1;
}
.form-modal p.lede{
  font-size:14px; color:var(--muted); margin:0 0 20px;
}
.form-modal .fm-field label{
  display:block;
  font-family:var(--f-mono); font-size:10px; letter-spacing:.08em; text-transform:uppercase;
  color:var(--muted); margin-bottom:8px;
}
.form-modal .fm-field input{
  width:100%; height:52px;
  background:#fff; border:1px solid var(--line-2);
  border-radius:10px; padding:0 16px;
  font-size:17px; letter-spacing:-0.01em;
  font-family:var(--f-mono);
}
.form-modal .fm-field input:focus{ outline:none; border-color:var(--ink); }
.form-modal .fm-submit{
  width:100%; height:52px; margin-top:14px;
  background:var(--accent); color:var(--accent-ink);
  border-radius:999px; font-weight:500; font-size:15px;
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
}
.form-modal .fm-submit[disabled]{ opacity:.6; }
.form-modal .fm-hint{
  font-size:12px; color:var(--muted); margin-top:12px; text-align:center;
}
.form-modal .fm-error{ color:#C8322A; font-size:13px; margin-top:8px; }

/* ——— Чекбокс согласия в мобильной модалке ——— */
.form-modal .fm-agree{
  display:flex;
  align-items:flex-start;
  gap:10px;
  font-size:12px;
  line-height:1.45;
  color:var(--muted);
  cursor:pointer;
  margin-top:12px;
  margin-bottom:4px;
}
.form-modal .fm-agree input[type="checkbox"]{
  flex-shrink:0;
  width:16px; height:16px;
  margin-top:1px;
  cursor:pointer;
  accent-color:var(--ink);
}
.form-modal .fm-agree a{
  color:var(--ink);
  text-decoration:underline;
  text-underline-offset:2px;
}
.form-modal .fm-agree a:hover{ text-decoration:none; }
.form-modal .fm-thanks{
  padding:24px 0;
  text-align:center;
}
.form-modal .fm-thanks .mk{
  width:48px; height:48px; border-radius:50%;
  background:var(--accent); color:var(--ink);
  display:grid; place-items:center; margin:0 auto 14px;
  font-size:22px;
}

/* Когда модалка открыта — скрываем sticky-bar */
body.fm-open .sticky-bar{ display:none !important; }
body.fm-open{ overflow:hidden; }


/* ——————————————————————— Thank you page ——————————————————————— */
.thankyou-page{
  min-height: calc(100vh - 64px);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 80px 0 120px;
  background:
    radial-gradient(900px 500px at 85% 10%, rgba(198,242,78,.18), transparent 60%),
    radial-gradient(700px 400px at 10% 90%, rgba(11,13,16,.04), transparent 70%),
    var(--bg);
  position: relative;
  overflow: hidden;
}
.thankyou-page::before{
  content:"";
  position:absolute; inset:0;
  background-image:
    linear-gradient(var(--line) 1px, transparent 1px),
    linear-gradient(90deg, var(--line) 1px, transparent 1px);
  background-size: 80px 80px;
  opacity:.35;
  mask-image: radial-gradient(ellipse 60% 60% at 50% 50%, #000 30%, transparent 80%);
  -webkit-mask-image: radial-gradient(ellipse 60% 60% at 50% 50%, #000 30%, transparent 80%);
  pointer-events:none;
}
.ty-wrap{
  position:relative; z-index:1;
  max-width: 920px;
  margin: 0 auto;
  padding: 0 var(--pad);
  text-align: left;
}
.ty-eyebrow{
  display:inline-flex; align-items:center; gap:10px;
  font-family: var(--f-mono);
  font-size: 11px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--muted);
  padding: 8px 14px;
  border: 1px solid var(--line-2);
  border-radius: 999px;
  background: color-mix(in srgb, var(--bg) 60%, #fff);
}
.ty-eyebrow .tick{
  width: 18px; height: 18px; border-radius: 50%;
  background: var(--accent); color: var(--accent-ink);
  display:inline-grid; place-items:center;
  font-size: 11px; font-weight: 700;
  box-shadow: 0 0 0 4px rgba(198,242,78,.2);
}
.ty-title{
  margin-top: 28px;
  font-size: clamp(48px, 7vw, 112px);
  line-height: .95;
  letter-spacing: -0.04em;
  font-weight: 500;
}
.ty-title .accent{
  font-style: italic;
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 400;
}
.ty-title .hl{
  background: linear-gradient(180deg, transparent 55%, rgba(198,242,78,.55) 55%);
  padding: 0 .1em;
}
.ty-lede{
  margin-top: 32px;
  font-size: clamp(18px, 1.6vw, 22px);
  line-height: 1.5;
  color: var(--ink-2);
  max-width: 58ch;
}
.ty-lede b{ color: var(--ink); font-weight: 500; }

.ty-meta{
  margin-top: 40px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.ty-meta .cell{
  padding: 20px 24px 20px 0;
  border-right: 1px solid var(--line);
}
.ty-meta .cell:last-child{ border-right: 0; padding-right: 0; }
.ty-meta .k{
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--muted);
}
.ty-meta .v{
  margin-top: 6px;
  font-size: 15px;
  color: var(--ink);
  line-height: 1.35;
}

.ty-cta-row{
  margin-top: 44px;
  display: flex;
  align-items: center;
  gap: 24px;
  flex-wrap: wrap;
}
.ty-primary{
  display: inline-flex;
  align-items: center;
  gap: 16px;
  padding: 22px 32px;
  background: var(--ink);
  color: #fff;
  border-radius: 12px;
  font-size: 18px;
  font-weight: 500;
  letter-spacing: -.01em;
  position: relative;
  overflow: hidden;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
  box-shadow: 0 10px 30px -10px rgba(11,13,16,.35);
}
.ty-primary:hover{
  transform: translateY(-2px);
  box-shadow: 0 16px 40px -10px rgba(11,13,16,.45);
  background: #000;
}
.ty-primary .spark{
  width: 10px; height: 10px; border-radius: 50%;
  background: var(--accent);
  box-shadow: 0 0 0 4px rgba(198,242,78,.25);
  animation: ty-pulse 1.6s ease-in-out infinite;
}
@keyframes ty-pulse{
  0%,100%{ box-shadow: 0 0 0 4px rgba(198,242,78,.25); }
  50%{ box-shadow: 0 0 0 8px rgba(198,242,78,.08); }
}
.ty-primary .arr{
  display: inline-block;
  transition: transform .25s ease;
}
.ty-primary:hover .arr{ transform: translateX(6px); }
.ty-primary .url{
  font-family: var(--f-mono);
  font-size: 12px;
  color: rgba(255,255,255,.55);
  letter-spacing: .04em;
  margin-left: 8px;
  padding-left: 16px;
  border-left: 1px solid rgba(255,255,255,.18);
}
.ty-secondary{
  font-family: var(--f-mono);
  font-size: 13px;
  letter-spacing: .06em;
  color: var(--muted);
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.ty-secondary a{
  color: var(--ink);
  text-decoration: underline;
  text-decoration-color: var(--line-2);
  text-underline-offset: 4px;
}
.ty-secondary a:hover{ text-decoration-color: var(--ink); }

.ty-foot{
  margin-top: 56px;
  padding-top: 24px;
  border-top: 1px solid var(--line);
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 16px;
  font-family: var(--f-mono);
  font-size: 11px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--muted);
}

@media (max-width: 680px){
  .thankyou-page{ padding: 28px 0 60px; }
  .ty-eyebrow{ margin-bottom: 0; }
  .ty-title{
    margin-top: 20px;
    font-size: clamp(40px, 11vw, 56px);
    line-height: .98;
  }
  .ty-cta-row{ margin-top: 24px; gap: 14px; }
  .ty-lede{ margin-top: 24px; font-size: 16px; }
  .ty-meta{ grid-template-columns: 1fr; margin-top: 28px; }
  .ty-meta .cell{ border-right: 0; border-bottom: 1px solid var(--line); padding: 16px 0; }
  .ty-meta .cell:last-child{ border-bottom: 0; }
  .ty-primary{ width: 100%; justify-content: center; padding: 20px 24px; font-size: 16px; }
  .ty-primary .url{ display: none; }
  .ty-foot{ grid-template-columns: 1fr; }
}

/* ——————————————————————— Legal documents (политика, оферта) ——————————————————————— */
.legal-page{
  padding: 80px 0 120px;
  min-height: 60vh;
}
.legal-page .wrap{ max-width: 820px; }
.legal-eyebrow{
  font-family: var(--f-mono);
  font-size: 11px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--muted);
  margin-bottom: 16px;
}
.legal-title{
  font-size: clamp(32px, 4vw, 48px);
  line-height: 1.08;
  letter-spacing: -0.03em;
  font-weight: 500;
  margin-bottom: 16px;
  max-width: 20ch;
}
.legal-meta{
  font-family: var(--f-mono);
  font-size: 12px;
  color: var(--muted);
  margin-bottom: 40px;
  padding-bottom: 24px;
  border-bottom: 1px solid var(--line);
}
.legal-body{
  font-size: 15px;
  line-height: 1.65;
  color: var(--ink-2);
}
.legal-body h2{
  font-size: 20px;
  font-weight: 500;
  letter-spacing: -0.01em;
  color: var(--ink);
  margin-top: 44px;
  margin-bottom: 14px;
}
.legal-body h2:first-child{ margin-top: 0; }
.legal-body h3{
  font-size: 16px;
  font-weight: 500;
  color: var(--ink);
  margin-top: 28px;
  margin-bottom: 10px;
}
.legal-body p{ margin-bottom: 14px; }
.legal-body ul, .legal-body ol{
  margin: 14px 0 14px 0;
  padding-left: 22px;
}
.legal-body li{ margin-bottom: 6px; }
.legal-body a{
  color: var(--ink);
  border-bottom: 1px solid var(--line-2);
  text-decoration: none;
}
.legal-body a:hover{ border-bottom-color: var(--ink); }
.legal-body b, .legal-body strong{ color: var(--ink); font-weight: 500; }

.legal-back{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 48px;
  padding: 12px 20px;
  border: 1px solid var(--line-2);
  border-radius: 999px;
  color: var(--ink);
  text-decoration: none;
  font-size: 14px;
  transition: border-color .15s ease, background .15s ease;
}
.legal-back:hover{ border-color: var(--ink); background: var(--bg-alt); }

@media (max-width: 680px){
  .legal-page{ padding: 48px 0 80px; }
  .legal-title{ font-size: 32px; }
  .legal-body{ font-size: 14px; line-height: 1.6; }
  .legal-body h2{ font-size: 18px; margin-top: 32px; }
  .legal-body h3{ font-size: 15px; }
}

/* ——————————————————————— Consent-чекбокс под формами ——————————————————————— */
.hfc-consent{
  font-size: 11px;
  color: var(--ink);
  line-height: 1.4;
  opacity: .72;
  letter-spacing: -0.005em;
  margin-top: -4px;
}
.hfc-consent a{
  color: inherit;
  border-bottom: 1px solid currentColor;
  text-decoration: none;
}
.hfc-consent a:hover{ opacity: 1; }

.final-consent{
  font-size: 11.5px;
  color: var(--muted);
  line-height: 1.5;
  margin-top: 8px;
  letter-spacing: 0;
}
.final-consent a{
  color: var(--ink);
  border-bottom: 1px solid var(--line-2);
  text-decoration: none;
}
.final-consent a:hover{ border-bottom-color: var(--ink); }

.fm-consent{
  font-size: 11.5px;
  color: var(--muted);
  line-height: 1.5;
  margin-top: 10px;
}
.fm-consent a{
  color: var(--ink);
  border-bottom: 1px solid var(--line-2);
  text-decoration: none;
}

/* ==========================================================================
   НОВЫЕ БЛОКИ (v29 → v30): LiveDemo, UseCases, Features, Comparison2, Guarantees, Blog
   ========================================================================== */

/* ===== Section--alt — альтернативный фон для зебры секций ===== */
.section--alt{ background:var(--bg-alt); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }

/* ===== LiveDemo ===== */
.live-demo{ margin-top:48px; }
.ld-grid{ display:grid; grid-template-columns: 1fr 1.4fr; gap:48px; align-items:start; }
.ld-col{ display:flex; flex-direction:column; gap:24px; }
.ld-step{
  border:1px solid var(--line);
  background:var(--bg);
  padding:24px;
  border-radius:8px;
  position:relative;
}
.ld-step-n{
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.08em;
  color:var(--muted-2);
  margin-bottom:8px;
}
.ld-step h3{ font-size:18px; line-height:1.2; margin-bottom:8px; }
.ld-step p{ font-size:14px; line-height:1.5; color:var(--muted); }

.ld-window{
  border:1px solid var(--line);
  border-radius:12px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 2px 24px rgba(0,0,0,0.04);
}
.ld-head{
  display:flex;
  align-items:center;
  gap:12px;
  padding:10px 14px;
  border-bottom:1px solid var(--line);
  background:var(--bg-alt);
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.04em;
}
.ld-head .dots{ display:flex; gap:5px; }
.ld-head .dots i{ width:10px; height:10px; border-radius:50%; background:var(--line-2); display:block; }
.ld-addr{ flex:1; display:flex; align-items:center; gap:6px; color:var(--muted); }
.ld-addr .live{
  width:7px; height:7px; border-radius:50%;
  background:var(--accent);
  box-shadow:0 0 0 3px rgba(198,242,78,.3);
  animation: pulse 1.6s infinite;
}
@keyframes pulse{ 0%,100%{ opacity:1 } 50%{ opacity:.5 } }
.ld-status{ color:var(--muted-2); font-size:10px; }

.ld-body{ padding:20px; display:flex; flex-direction:column; gap:14px; }
.ld-msg{ font-size:14px; line-height:1.5; }
.ld-msg.user{
  align-self:flex-end;
  background:var(--ink);
  color:var(--bg);
  padding:12px 16px;
  border-radius:14px 14px 4px 14px;
  max-width:80%;
}
.ld-msg.ai{ display:flex; flex-direction:column; gap:8px; }
.ld-who{
  font-family:var(--f-mono);
  font-size:10px;
  letter-spacing:.08em;
  color:var(--muted);
  display:flex;
  align-items:center;
  gap:6px;
}
.ld-who .pill{
  background:var(--accent);
  color:var(--ink);
  padding:2px 7px;
  border-radius:4px;
  font-weight:600;
}
.ld-who .thought{ color:var(--muted-2); font-size:10px; }
.ld-who .typing{ display:inline-flex; gap:2px; align-items:center; }
.ld-who .typing i{ width:4px; height:4px; border-radius:50%; background:var(--muted-2); display:block; animation:typing 1s infinite; }
.ld-who .typing i:nth-child(2){ animation-delay:.2s }
.ld-who .typing i:nth-child(3){ animation-delay:.4s }
@keyframes typing{ 0%,80%,100%{ opacity:.3 } 40%{ opacity:1 } }
.ld-bubble{
  background:var(--bg-alt);
  padding:14px 16px;
  border-radius:4px 14px 14px 14px;
}
.ld-bubble p{ margin:0 0 10px; }
.ld-bubble p:last-child{ margin-bottom:0; }
.ld-cite{
  border-left:2px solid var(--accent);
  padding:8px 12px;
  margin:10px 0;
  background:#fff;
  font-size:13px;
  color:var(--muted);
  border-radius:0 4px 4px 0;
}
.ld-cite .src{ display:block; margin-top:4px; font-size:11px; color:var(--muted-2); font-family:var(--f-mono); }
.ld-tags{ display:flex; gap:6px; flex-wrap:wrap; margin-top:10px; }
.ld-tag{
  font-family:var(--f-mono);
  font-size:11px;
  padding:4px 8px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:4px;
  color:var(--muted);
}
.ld-tag.accent{ background:var(--accent); color:var(--ink); border-color:var(--accent); font-weight:600; }
.ld-input{
  display:flex;
  gap:10px;
  align-items:center;
  padding:10px 12px;
  background:var(--bg);
  border:1px solid var(--line);
  border-radius:24px;
  margin-top:8px;
  cursor:pointer;
  transition:border-color .15s;
}
.ld-input:hover{ border-color:var(--ink); }
.ld-field{ flex:1; color:var(--muted); font-size:14px; display:flex; align-items:center; }
.ld-field .caret{ display:inline-block; width:1px; height:14px; background:var(--ink); margin-left:2px; animation:blink 1s infinite; }
@keyframes blink{ 50%{ opacity:0 } }
.ld-send{
  width:32px; height:32px;
  background:var(--ink); color:var(--bg);
  border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  font-size:16px;
}

@media (max-width: 980px){
  .ld-grid{ grid-template-columns:1fr; gap:32px; }
}
@media (max-width: 680px){
  .ld-body{ padding:14px; }
  .ld-msg{ font-size:13px; }
  .ld-cite{ font-size:12px; }
}

/* ===== UseCases (10 направлений) ===== */
.uc{ margin-top:48px; display:flex; flex-direction:column; }
.uc-row{
  display:grid;
  grid-template-columns: 80px 1fr;
  gap:32px;
  padding:32px 0;
  border-bottom:1px solid var(--line);
  align-items:start;
}
.uc-row:last-child{ border-bottom:none; }
.uc-idx{
  font-family:var(--f-mono);
  font-size:42px;
  font-weight:300;
  color:var(--muted-2);
  letter-spacing:-.02em;
  line-height:1;
}
.uc-body h4{ font-size:22px; line-height:1.2; margin:0 0 12px; font-weight:500; letter-spacing:-.01em; }
.uc-p{ font-size:15px; line-height:1.55; color:var(--muted); margin-bottom:16px; max-width:72ch; }
.uc-ex{
  background:var(--bg-alt);
  padding:14px 18px;
  border-left:2px solid var(--accent);
  border-radius:0 6px 6px 0;
  max-width:72ch;
}
.uc-ex .uc-cap{
  font-family:var(--f-mono);
  font-size:10px;
  letter-spacing:.1em;
  color:var(--muted-2);
  text-transform:uppercase;
  display:block;
  margin-bottom:4px;
}
.uc-ex p{ font-size:14px; line-height:1.5; color:var(--ink); margin:0; }
.section--alt .uc-ex{ background:var(--bg); }

@media (max-width: 680px){
  .uc-row{ grid-template-columns:1fr; gap:12px; padding:24px 0; }
  .uc-idx{ font-size:28px; }
  .uc-body h4{ font-size:18px; }
}

/* ===== Features (Полный набор инструментов) ===== */
.feat{
  margin-top:48px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1px;
  background:var(--line);
  border:1px solid var(--line);
}
.feat-cell{
  background:var(--bg-alt);
  padding:28px 24px;
  display:flex;
  flex-direction:column;
  gap:12px;
}
.section--alt .feat-cell{ background:var(--bg); }
.feat-n{
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.08em;
  color:var(--muted-2);
}
.feat-cell h4{ font-size:18px; line-height:1.25; margin:0; font-weight:500; letter-spacing:-.01em; }
.feat-cell p{ font-size:14px; line-height:1.5; color:var(--muted); margin:0; }

@media (max-width: 980px){
  .feat{ grid-template-columns:repeat(2,1fr); }
}
@media (max-width: 680px){
  .feat{ grid-template-columns:1fr; }
}

/* ===== Comparison2 (Юджин vs альтернативы) ===== */
.cmp2{
  margin-top:48px;
  border:1px solid var(--line);
  background:var(--bg);
  border-radius:8px;
  overflow:hidden;
}
.cmp2-head, .cmp2-row{
  display:grid;
  grid-template-columns: 1.6fr 1fr 1fr 1fr 1fr;
  align-items:stretch;
}
.cmp2-head{
  background:var(--bg-alt);
  border-bottom:1px solid var(--line);
}
.cmp2-row{ border-bottom:1px solid var(--line); }
.cmp2-row:last-child{ border-bottom:none; }
.cmp2-head > div, .cmp2-row > div{
  padding:14px 16px;
  font-size:14px;
  line-height:1.4;
  border-right:1px solid var(--line);
}
.cmp2-head > div:last-child, .cmp2-row > div:last-child{ border-right:none; }
.cmp2-col{
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--muted);
  font-weight:500;
  display:flex;
  align-items:center;
  gap:6px;
}
.cmp2-col.featured{ color:var(--ink); font-weight:600; }
.cmp2-mark{
  width:20px; height:20px;
  background:var(--accent); color:var(--ink);
  border-radius:4px;
  display:inline-flex; align-items:center; justify-content:center;
  font-size:11px;
  font-weight:700;
  font-family:var(--f-sans);
}
.cmp2-k{ color:var(--ink); font-weight:500; }
.cmp2-v{ color:var(--muted); }
.cmp2-v.featured{ color:var(--ink); font-weight:600; background:rgba(198,242,78,0.12); }

@media (max-width: 980px){
  .cmp2-head, .cmp2-row{ grid-template-columns: 1.4fr 1fr 1fr 1fr 1fr; }
  .cmp2-head > div, .cmp2-row > div{ padding:10px 10px; font-size:13px; }
}
@media (max-width: 680px){
  /* На мобиле — карточный вид: каждая строка = блок с 4 значениями */
  .cmp2{ border-radius:6px; }
  .cmp2-head{ display:none; }
  .cmp2-row{
    grid-template-columns:1fr;
    padding:0;
    border-bottom:1px solid var(--line);
  }
  .cmp2-row > div{
    border-right:none;
    border-bottom:1px solid var(--line);
    padding:10px 14px;
  }
  .cmp2-row > div:last-child{ border-bottom:none; }
  .cmp2-k{
    background:var(--bg-alt);
    font-weight:600;
    font-size:14px;
  }
  .cmp2-v{ display:flex; justify-content:space-between; }
  .cmp2-v::before{
    font-family:var(--f-mono);
    font-size:10px;
    letter-spacing:.06em;
    text-transform:uppercase;
    color:var(--muted-2);
  }
  .cmp2-row > div:nth-child(2)::before{ content:"Юджин"; color:var(--ink); font-weight:600; }
  .cmp2-row > div:nth-child(3)::before{ content:"Стажёр"; }
  .cmp2-row > div:nth-child(4)::before{ content:"ChatGPT"; }
  .cmp2-row > div:nth-child(5)::before{ content:"Другие ИИ"; }
}

/* ===== Guarantees (новый блок гарантий) ===== */
.guarantees-section{ background:var(--bg-alt); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.guars{
  margin-top:48px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1px;
  background:var(--line);
  border:1px solid var(--line);
}
.guar{
  background:var(--bg);
  padding:32px 28px;
  display:flex;
  flex-direction:column;
  gap:10px;
  position:relative;
}
.guar-n{
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.08em;
  color:var(--muted-2);
  margin-bottom:4px;
}
.guar h3{
  font-size:20px;
  line-height:1.2;
  margin:0 0 4px;
  font-weight:500;
  letter-spacing:-.01em;
}
.guar p{ font-size:14px; line-height:1.55; color:var(--muted); margin:0; }
.guar::before{
  content:"";
  position:absolute;
  top:0; left:0;
  width:24px; height:2px;
  background:var(--accent);
}

@media (max-width: 980px){
  .guars{ grid-template-columns:repeat(2,1fr); }
}
@media (max-width: 680px){
  .guars{ grid-template-columns:1fr; }
  .guar{ padding:24px 20px; }
}

/* ===== Blog (превью статей) ===== */
.posts{
  margin-top:48px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1px;
  background:var(--line);
  border:1px solid var(--line);
}
.post{
  display:flex;
  flex-direction:column;
  gap:12px;
  padding:32px 28px;
  background:var(--bg);
  text-decoration:none;
  color:inherit;
  transition:background .15s;
  min-height:240px;
}
.section--alt .post{ background:var(--bg-alt); }
.post:hover{ background:var(--bg-alt); }
.section--alt .post:hover{ background:var(--bg); }
.post-meta{
  font-family:var(--f-mono);
  font-size:10px;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--muted-2);
  display:flex;
  gap:8px;
  align-items:center;
}
.post-cat{
  background:var(--ink); color:var(--bg);
  padding:3px 7px;
  border-radius:3px;
  font-weight:600;
}
.post-title{
  font-size:19px;
  line-height:1.25;
  margin:0;
  font-weight:500;
  letter-spacing:-.01em;
  color:var(--ink);
}
.post-lede{
  font-size:13px;
  line-height:1.5;
  color:var(--muted);
  margin:0;
  flex-grow:1;
}
.post-arrow{
  font-family:var(--f-mono);
  font-size:12px;
  color:var(--ink);
  margin-top:auto;
  display:flex;
  align-items:center;
  gap:4px;
}

@media (max-width: 980px){
  .posts{ grid-template-columns:repeat(2,1fr); }
  .post{ min-height:220px; padding:24px 20px; }
}
@media (max-width: 680px){
  .posts{ grid-template-columns:1fr; }
  .post{ min-height:0; padding:24px 20px; }
}

/* ==========================================================================
   СТИЛИ ДЛЯ HTML-СТАТЕЙ БЛОГА (a-top, a-h1, article-wrap, timeline)
   ========================================================================== */
body.article{
  background:var(--bg);
  color:var(--ink);
  font-family:var(--f-sans);
  -webkit-font-smoothing:antialiased;
}
.a-top{
  position:sticky; top:0; z-index:40;
  background:color-mix(in srgb, var(--bg) 92%, transparent);
  backdrop-filter:saturate(1.1) blur(10px);
  -webkit-backdrop-filter:saturate(1.1) blur(10px);
  border-bottom:1px solid var(--line);
}
.a-top__inner{
  max-width:var(--max);
  margin:0 auto;
  padding:14px var(--pad);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}
.a-brand{
  display:flex;
  align-items:center;
  gap:10px;
  text-decoration:none;
  color:var(--ink);
  font-weight:500;
}
.a-brand__sq{
  width:28px; height:28px;
  background:var(--ink); color:var(--accent);
  border-radius:6px;
  display:inline-flex; align-items:center; justify-content:center;
  font-weight:700;
  font-size:14px;
}
.a-brand__sub{
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.06em;
  color:var(--muted);
  margin-left:4px;
}
.a-back{
  font-family:var(--f-mono);
  font-size:12px;
  letter-spacing:.04em;
  color:var(--muted);
  text-decoration:none;
  padding:8px 14px;
  border:1px solid var(--line);
  border-radius:6px;
  transition:border-color .15s, color .15s;
}
.a-back:hover{ border-color:var(--ink); color:var(--ink); }

.article-wrap{
  max-width:760px;
  margin:0 auto;
  padding:60px var(--pad) 80px;
}
.a-eyebrow{
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--muted);
  margin-bottom:20px;
  display:flex;
  gap:10px;
  align-items:center;
}
.a-eyebrow .a-cat{
  background:var(--accent); color:var(--ink);
  padding:3px 8px;
  border-radius:3px;
  font-weight:600;
}
.a-h1{
  font-size:clamp(32px, 4.4vw, 52px);
  line-height:1.05;
  letter-spacing:-.025em;
  font-weight:500;
  margin:0 0 24px;
}
.a-h1 em{ font-style:italic; color:var(--muted); }
.a-lede{
  font-size:19px;
  line-height:1.5;
  color:var(--muted);
  margin:0 0 40px;
  max-width:64ch;
}
.article-wrap h2{
  font-size:28px;
  line-height:1.15;
  letter-spacing:-.015em;
  font-weight:500;
  margin:48px 0 16px;
}
.article-wrap h3{
  font-size:20px;
  line-height:1.2;
  font-weight:500;
  margin:32px 0 12px;
}
.article-wrap p{
  font-size:17px;
  line-height:1.65;
  margin:0 0 18px;
  color:var(--ink);
}
.article-wrap p.muted{ color:var(--muted); }
.article-wrap ul, .article-wrap ol{
  font-size:17px;
  line-height:1.65;
  margin:0 0 24px;
  padding-left:24px;
}
.article-wrap li{ margin-bottom:8px; }
.article-wrap blockquote{
  border-left:3px solid var(--accent);
  padding:8px 24px;
  margin:24px 0;
  font-style:italic;
  color:var(--muted);
  background:var(--bg-alt);
  border-radius:0 6px 6px 0;
}
.article-wrap a{
  color:var(--ink);
  text-decoration:underline;
  text-underline-offset:3px;
  text-decoration-color:var(--accent);
  text-decoration-thickness:2px;
}
.article-wrap a:hover{ text-decoration-thickness:3px; }
.article-wrap .a-figure{
  margin:32px 0;
  padding:24px;
  background:var(--bg-alt);
  border-radius:8px;
  border:1px solid var(--line);
}
.article-wrap .a-stat{
  font-family:var(--f-mono);
  font-size:42px;
  font-weight:300;
  letter-spacing:-.02em;
  line-height:1;
  margin-bottom:8px;
}
.article-wrap .a-stat-lbl{
  font-size:14px;
  color:var(--muted);
}

.timeline{ margin:32px 0; }
.timeline__row{
  display:grid;
  grid-template-columns: 200px 1fr;
  gap:24px;
  padding:20px 0;
  border-bottom:1px solid var(--line);
  align-items:start;
}
.timeline__row:last-child{ border-bottom:none; }
.timeline__when{
  font-family:var(--f-mono);
  font-size:12px;
  letter-spacing:.06em;
  color:var(--muted-2);
  text-transform:uppercase;
  margin:0;
}
.timeline__what{
  font-weight:500;
  margin:0 0 8px;
  font-size:17px;
}
.timeline__detail{
  font-size:15px;
  line-height:1.5;
  color:var(--muted);
  margin:0;
}

.a-cta{
  margin-top:60px;
  padding:32px;
  background:var(--ink);
  color:var(--bg);
  border-radius:10px;
  text-align:center;
}
.a-cta h3{ font-size:24px; margin:0 0 8px; color:var(--bg); }
.a-cta p{ color:rgba(244,243,238,.7); font-size:15px; margin:0 0 20px; }
.a-cta a{
  display:inline-block;
  background:var(--accent); color:var(--ink);
  padding:14px 28px;
  font-weight:500;
  border-radius:6px;
  text-decoration:none;
  font-size:15px;
}
.a-cta a:hover{ filter:brightness(1.05); }

.a-foot{
  border-top:1px solid var(--line);
  padding:24px var(--pad);
  text-align:center;
  font-family:var(--f-mono);
  font-size:11px;
  color:var(--muted);
  letter-spacing:.04em;
}

@media (max-width: 680px){
  .article-wrap{ padding:40px 20px 60px; }
  .a-h1{ font-size:32px; }
  .a-lede{ font-size:17px; }
  .article-wrap h2{ font-size:24px; margin:36px 0 12px; }
  .article-wrap p, .article-wrap ul, .article-wrap ol{ font-size:16px; }
  .timeline__row{ grid-template-columns:1fr; gap:6px; padding:16px 0; }
}

/* ==========================================================================
   МОБИЛЬНЫЕ ПРАВКИ v31
   1. Скрытие демо чата на мобиле
   2. Хедер скрывается при скролле вниз
   3. Comparison: карточная вёрстка
   4. MarketTimeline: вертикальная вёрстка
   ========================================================================== */

/* === #2 Хедер: плавное скрытие/показ при скролле === */
.topbar{
  transition: transform .28s ease;
  will-change: transform;
}
.topbar.topbar-hidden{
  transform: translateY(-100%);
}
/* Когда меню открыто — никогда не прячем (на всякий случай поверх transform) */
.topbar.menu-open{
  transform: translateY(0) !important;
}

@media (max-width: 680px){

  /* === #1 Демо чата (ProductWindow) скрываем на мобиле === */
  .product{ display:none !important; }
  /* Скрываем hero-stats на мобиле — статы перенесены в trust-strip */
  .hero-stats{ display:none !important; }
  /* hero-grid превращается в одну колонку — высвобожденное место */
  .hero-grid{ grid-template-columns:1fr !important; }


  /* === #3 Comparison: карточный вид === */
  /* Каждая cmp-row становится карточкой с заметным разделителем,
     метрика — заголовок, значения "Без ИИ" / "С Юджином" — два ряда внутри */
  .compare{ border:1px solid var(--line); border-radius:10px; overflow:hidden; background:var(--bg); }
  .cmp-head{ display:none; }
  .cmp-row{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:0 !important;
    padding:0 !important;
    border-bottom:1px solid var(--line);
  }
  .cmp-row:last-child{ border-bottom:none; }
  .cmp-row .cmp-c{
    padding:10px 16px;
    border-bottom:1px solid var(--line);
    display:flex;
    align-items:flex-start;
    gap:8px;
  }
  .cmp-row .cmp-c:last-child{ border-bottom:none; }
  /* Метрика — крупный заголовок карточки */
  .cmp-row .cmp-c.k{
    background:var(--bg-alt);
    font-size:14px;
    font-weight:600;
    color:var(--ink);
    padding:12px 16px;
  }
  /* Значения — с лейблом слева */
  .cmp-row .cmp-c.a,
  .cmp-row .cmp-c.b{
    font-size:14px;
    line-height:1.4;
    text-decoration:none;
    justify-content:space-between;
  }
  .cmp-row .cmp-c.a{ color:var(--muted); }
  .cmp-row .cmp-c.a::before{
    content:"Без ИИ";
    flex-shrink:0;
    font-family:var(--f-mono);
    font-size:10px;
    letter-spacing:.08em;
    color:var(--muted-2);
    text-transform:uppercase;
    align-self:center;
    text-decoration:none;
  }
  .cmp-row .cmp-c.b{ color:var(--ink); font-weight:500; }
  .cmp-row .cmp-c.b::before{
    content:"С Юджином";
    flex-shrink:0;
    font-family:var(--f-mono);
    font-size:10px;
    letter-spacing:.08em;
    color:var(--ink);
    text-transform:uppercase;
    align-self:center;
    background:var(--accent);
    padding:2px 6px;
    border-radius:3px;
  }


  /* === #4 MarketTimeline: вертикальная вёрстка === */
  /* Скрываем горизонтальный трек/маркер — они на мобиле бесполезны и ломают вёрстку */
  .timeline{ overflow:visible; padding:0; }
  .tl-track{ display:none; }
  .tl-cells{
    display:flex !important;
    flex-direction:column;
    gap:12px;
  }
  .tl-cell{
    padding:24px 20px !important;
    min-height:auto;
    border-radius:10px;
    border:1px solid var(--line);
    position:relative;
    margin:0;
  }
  .tl-cell.now{
    background:var(--accent);
    color:var(--ink);
    border-color:var(--accent);
  }
  .tl-cell.now .tl-when{ color:var(--ink); font-weight:600; }
  .tl-cell.now p{ color:var(--ink); }
  .tl-cell.soon{ background:var(--bg); }
  .tl-cell.late{ background:var(--bg-alt); color:var(--muted); }
  .tl-when{
    font-family:var(--f-mono);
    font-size:11px;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:var(--muted-2);
    margin-bottom:8px;
  }
  .tl-cell h3{ font-size:20px; line-height:1.15; margin:0 0 10px; }
  .tl-cell h3 br{ display:none; }
  .tl-cell p{ font-size:14px; line-height:1.5; margin:0; }


  /* === Бонус: Roadmap-табы — компактнее на мобиле, т.к. блок теперь в самом конце === */
  .rm-tab{ font-size:13px; padding:8px 12px; }
  .rm-tab span{ font-size:11px; }
}

/* === Финальные правки v31: фикс iOS sticky+transform === */
@media (max-width: 680px){
  /* На мобиле topbar делаем fixed — sticky+transform на iOS работает нестабильно */
  .topbar{
    position:fixed !important;
    top:0; left:0; right:0;
    z-index:40;
  }
  /* Компенсируем body, чтобы контент не уезжал под topbar */
  body{ padding-top:56px; }
  /* Когда меню открыто — оверлей перекрывает всё */
  body:has(.topbar.menu-open){ padding-top:0; }
}



/* ==========================================================================
   v35: Объединение hero-stats + trust-strip — ТОЛЬКО НА МОБИЛЕ
   Десктоп остаётся без изменений.
   ========================================================================== */

/* На ДЕСКТОПЕ скрываем мобильно-специфичные ячейки в trust-grid */
.trust-item--mob{
  display: none;
}

/* На МОБИЛЕ скрываем hero-stats (он будет показан как 3 акцентные ячейки в trust-strip) */
@media (max-width: 680px){

  .hero-stats{
    display: none !important;
  }

  /* Показываем 3 акцентные ячейки */
  .trust-item--mob{
    display: flex !important;
  }

  /* Перерисовываем trust-strip как красивую сетку 2×4 */
  .trust-strip{
    padding: 24px 0 32px;
    background: var(--bg);
    border-top: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
  }

  .trust-strip .trust-row{
    display: block;
  }

  .trust-strip .trust-label{
    font-family: var(--f-mono);
    font-size: 11px;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--muted);
    margin-bottom: 16px;
    display: flex;
    align-items: center;
    gap: 8px;
    text-align: left;
  }
  .trust-strip .trust-label::before{
    content: "";
    display: inline-block;
    width: 22px;
    height: 2px;
    background: var(--ink);
  }

  /* Сетка 2×4 на мобиле */
  .trust-strip .trust-grid{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1px;
    background: var(--line);
    border: 1px solid var(--line);
    border-radius: 12px;
    overflow: hidden;
    padding: 0;
    margin: 0;
    width: 100%;
  }

  .trust-strip .trust-item{
    background: var(--bg);
    padding: 20px 18px 18px;
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-height: 100px;
    margin: 0;
    border: none;
    text-align: left;
    position: relative;
  }

  /* Акцентные ячейки (-60%, 2-3×, 3 мин) — лаймовый фон */
  .trust-strip .trust-item--hl{
    background: var(--accent);
  }

  .trust-strip .trust-item .v{
    font-size: 28px;
    font-weight: 600;
    letter-spacing: -.025em;
    line-height: 1;
    color: var(--ink);
    margin-top: auto;
  }
  .trust-strip .trust-item .k{
    font-family: var(--f-mono);
    font-size: 10px;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--muted);
    line-height: 1.4;
  }
  .trust-strip .trust-item--hl .k{
    color: var(--ink);
    opacity: .8;
  }
}

/* ==========================================================================
   v40: H1 на полную ширину Hero — строго 2 строки на десктопе
   ========================================================================== */
.hero-h1{
  margin: 0 0 48px;
  font-size: clamp(48px, 7vw, 112px);
  line-height: 1.0;
  letter-spacing: -0.035em;
  font-weight: 500;
  max-width: 100%;
}
.hero-h1 .accent{
  background: var(--accent);
  padding: 0 .08em 0.02em;
  border-radius: 6px;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}

/* На мобиле — компактнее, со своей разбивкой */
@media (max-width: 980px){
  .hero-h1{
    font-size: clamp(40px, 8vw, 72px);
  }
}
@media (max-width: 680px){
  .hero-h1{
    font-size: clamp(36px, 10vw, 56px);
    line-height: 1.04;
    margin-bottom: 32px;
  }
}
