/* Общий стиль сайта agentek.ru.
   Дизайн-система: Golos Text (self-hosted, variable), холодные серые с синим
   подтоном, один акцент #2f6bff. Имена классов совпадают со всеми страницами. */

@font-face {
  font-family:"Golos Text";
  font-style:normal;
  font-weight:400 900;
  font-display:swap;
  src:url(fonts/golos-cyrillic.woff2) format("woff2");
  unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}
@font-face {
  font-family:"Golos Text";
  font-style:normal;
  font-weight:400 900;
  font-display:swap;
  src:url(fonts/golos-latin.woff2) format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

:root {
  --fg:#171b26; --muted:#525d70; --line:#e3e8f0; --line-strong:#ccd4e0;
  --accent:#2f6bff; --accent-down:#1f55e0; --accent-soft:#eef3ff;
  --bg:#fff; --bg-soft:#f5f7fb;
  --shadow-sm:0 1px 2px rgba(23,43,99,.06);
  --shadow-md:0 6px 20px -6px rgba(23,43,99,.14);
  --shadow-lg:0 16px 40px -12px rgba(23,43,99,.18);
  --radius:14px;
  --ease-out:cubic-bezier(0.23, 1, 0.32, 1);
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body {
  margin:0;
  font:16.5px/1.65 "Golos Text",-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  color:var(--fg);
  background:var(--bg);
  background-image:radial-gradient(1100px 480px at 50% -160px, rgba(47,107,255,.06), transparent 65%);
  background-repeat:no-repeat;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
.wrap { max-width:1120px; margin:0 auto; padding:0 28px; }
p { margin:12px 0; max-width:72ch; text-wrap:pretty; }
a { color:var(--accent); text-underline-offset:3px; transition:color .18s ease; }
a:hover { color:var(--accent-down); }
:focus-visible { outline:2px solid var(--accent); outline-offset:2px; border-radius:4px; }

/* Шапка */
.site-head {
  border-bottom:1px solid var(--line);
  background:rgba(255,255,255,.86);
  -webkit-backdrop-filter:saturate(160%) blur(12px);
  backdrop-filter:saturate(160%) blur(12px);
}
@media (min-width:900px) {
  .site-head { position:sticky; top:0; z-index:50; }
}
.site-head .wrap {
  display:flex; align-items:center; justify-content:space-between;
  gap:12px 24px; flex-wrap:wrap; padding-top:14px; padding-bottom:14px;
}
.brand { font-size:20px; font-weight:800; color:var(--fg); text-decoration:none; letter-spacing:-0.02em; }
.brand span { color:var(--accent); }
.site-nav { display:flex; gap:2px; flex-wrap:wrap; }
.site-nav a {
  color:var(--muted); text-decoration:none; font-size:13.5px; font-weight:500;
  padding:6px 10px; border-radius:8px;
  transition:color .18s ease, background-color .18s ease;
}
.site-nav a:hover { color:var(--fg); background:var(--bg-soft); }
.site-nav a[aria-current="page"] { color:var(--fg); font-weight:650; background:var(--bg-soft); }

/* Контент */
main.wrap { padding-top:64px; padding-bottom:96px; }
h1 {
  font-size:clamp(32px, 4.5vw, 44px); line-height:1.12; font-weight:750;
  letter-spacing:-0.025em; margin:0 0 14px; text-wrap:balance;
}
.lead { color:var(--muted); font-size:19px; line-height:1.6; margin:0 0 32px; max-width:62ch; }
h2 {
  font-size:26px; line-height:1.25; font-weight:700; letter-spacing:-0.02em;
  margin:72px 0 16px; text-wrap:balance;
}
h2:first-of-type { margin-top:56px; }
h3 { font-size:18px; font-weight:650; letter-spacing:-0.01em; margin:28px 0 8px; }
ul { padding-left:22px; }
li { margin:6px 0; }
li::marker { color:var(--line-strong); }

.meta {
  background:var(--bg-soft); border-radius:var(--radius);
  padding:20px 24px; margin:28px 0;
}
.meta b { color:var(--fg); }
.meta div { margin:5px 0; color:var(--muted); font-size:15px; }

table { width:100%; border-collapse:collapse; margin:20px 0; font-variant-numeric:tabular-nums; }
th,td { text-align:left; padding:13px 16px; border-bottom:1px solid var(--line); vertical-align:top; }
th { color:var(--muted); font-weight:600; font-size:13.5px; }
tbody tr { transition:background-color .15s ease; }
tbody tr:hover { background:var(--bg-soft); }
td.price { font-weight:700; white-space:nowrap; }
.note { color:var(--muted); }

/* Герой */
.hero { padding-top:8px; }
.hero h1 { font-size:clamp(38px, 5.5vw, 58px); max-width:24ch; }
@media (prefers-reduced-motion: no-preference) {
  .hero > * { animation:rise .7s var(--ease-out) backwards; }
  .hero > *:nth-child(2) { animation-delay:.08s; }
  .hero > *:nth-child(3) { animation-delay:.16s; }
  .hero > *:nth-child(4) { animation-delay:.24s; }
}
@keyframes rise {
  from { opacity:0; transform:translateY(14px); }
  to   { opacity:1; transform:none; }
}

.badges { display:flex; flex-wrap:wrap; gap:8px; margin:24px 0 8px; padding:0; list-style:none; }
.badges li {
  margin:0; font-size:13.5px; font-weight:500; color:var(--muted);
  background:var(--bg); border:1px solid var(--line); border-radius:999px; padding:5px 14px;
}

/* Кнопки */
.btn {
  display:inline-block; background:var(--accent); color:#fff; text-decoration:none;
  border-radius:999px; padding:12px 26px; font-weight:600; font-size:15.5px;
  letter-spacing:-0.005em; box-shadow:var(--shadow-sm);
  transition:background-color .18s ease, transform .16s var(--ease-out), box-shadow .18s ease;
}
.btn:hover { background:var(--accent-down); color:#fff; }
@media (hover:hover) and (pointer:fine) {
  .btn:hover { transform:translateY(-1px); box-shadow:var(--shadow-md); }
}
.btn:active { transform:translateY(0) scale(.98); box-shadow:var(--shadow-sm); }
.btn.ghost {
  background:transparent; color:var(--fg); border:1px solid var(--line-strong); box-shadow:none;
}
.btn.ghost:hover { border-color:var(--accent); color:var(--accent); background:var(--accent-soft); box-shadow:none; }
.cta-row { display:flex; gap:12px; flex-wrap:wrap; margin:28px 0 8px; }

/* Карточки */
.cards { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin:24px 0; }
@media (max-width:700px) { .cards { grid-template-columns:1fr; } }
.cards3 { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin:24px 0; }
@media (max-width:860px) { .cards3 { grid-template-columns:1fr; } }
.card {
  display:flex; flex-direction:column; align-items:flex-start;
  border:1px solid var(--line); border-radius:var(--radius);
  padding:24px 26px; background:var(--bg);
  transition:border-color .2s ease, box-shadow .2s ease, transform .2s var(--ease-out);
}
.card:hover { border-color:var(--line-strong); }
@media (hover:hover) and (pointer:fine) {
  .card:hover { box-shadow:var(--shadow-md); transform:translateY(-2px); }
}
.card h3 { margin:0 0 8px; font-size:18px; }
.card p { color:var(--muted); margin:8px 0; font-size:15px; }
.card p:last-of-type { margin-bottom:16px; }
.card .btn { margin-top:auto; }
.card .tag {
  display:inline-block; font-size:12.5px; font-weight:650; color:var(--accent);
  background:var(--accent-soft); border-radius:999px; padding:3px 12px; margin-bottom:12px;
}

/* Маркетинговые блоки */
.feature-grid {
  display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:14px; margin:24px 0; padding:0; list-style:none;
}
.feature-grid li {
  margin:0; border-radius:var(--radius); padding:20px 22px; background:var(--bg-soft);
  transition:background-color .2s ease;
}
.feature-grid li:hover { background:#eef2f8; }
.feature-grid b { display:block; margin-bottom:5px; font-weight:650; letter-spacing:-0.01em; }
.feature-grid span { display:block; color:var(--muted); font-size:14.5px; line-height:1.55; }

.cta-band {
  background:var(--bg-soft);
  background-image:radial-gradient(600px 220px at 85% -40%, rgba(47,107,255,.1), transparent 70%);
  border-radius:18px; padding:34px 38px; margin:80px 0 0;
  display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap;
}
.cta-band h2 { margin:0; padding:0; font-size:22px; }
.cta-band p { margin:6px 0 0; color:var(--muted); font-size:15.5px; }

.muted { color:var(--muted); }

/* «Знания»: запасной мозг компании + переключение LLM (две панели) */
.mono { font-family:ui-monospace,"JetBrains Mono","SF Mono",Consolas,monospace;
  font-size:11px; letter-spacing:.12em; text-transform:uppercase; color:var(--muted); }
.mem-duo { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin:26px 0 8px; }
@media (max-width:860px) { .mem-duo { grid-template-columns:1fr; } }
.mem-panel { background:var(--bg-soft); border-radius:18px; padding:30px; }
.mem-panel .mono b { color:#178a44; font-weight:400; margin-right:6px; }
.mem-panel h3 { font-size:23px; font-weight:750; letter-spacing:-.02em; margin:12px 0 4px; }
.mem-panel .mem-sub { color:var(--muted); font-size:14.5px; margin:0 0 18px; }
.mem-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:0 0 16px; padding:0; list-style:none; }
@media (max-width:480px) { .mem-grid { grid-template-columns:1fr; } }
.mem-grid li { margin:0; background:var(--bg); border-radius:12px; box-shadow:var(--shadow-sm);
  padding:12px 14px; font-size:14px; display:flex; align-items:center; gap:9px; }
.mem-grid li::before { content:""; width:6px; height:6px; border-radius:50%; background:var(--accent); flex-shrink:0; }
.mem-note { background:var(--bg); border-radius:12px; box-shadow:var(--shadow-sm); padding:14px 16px;
  font-size:14px; color:var(--muted); }
.mem-note b { color:var(--fg); }
.llm-panel { background:#10141f; border-radius:18px; padding:30px; color:#e8eaf2; }
.llm-panel .mono { color:#8e94ab; }
.llm-stage { display:grid; margin:12px 0 18px; }
.llm-stage .llm-active { grid-area:1/1; margin:0;
  animation:llm-swap 12s linear infinite; opacity:0; }
.llm-stage .llm-active:nth-child(2) { animation-delay:3s; }
.llm-stage .llm-active:nth-child(3) { animation-delay:6s; }
.llm-stage .llm-active:nth-child(4) { animation-delay:9s; }
@keyframes llm-swap {
  0% { opacity:0; }
  3% { opacity:1; }
  25% { opacity:1; }
  28% { opacity:0; }
  100% { opacity:0; }
}
.llm-next span { animation:llm-chip-dim 12s linear infinite; }
.llm-next span:nth-child(2) { animation-delay:3s; }
.llm-next span:nth-child(3) { animation-delay:6s; }
.llm-next span:nth-child(4) { animation-delay:9s; }
@keyframes llm-chip-dim {
  0% { opacity:1; }
  3% { opacity:.35; }
  25% { opacity:.35; }
  28% { opacity:1; }
  100% { opacity:1; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  .llm-stage .llm-active { animation:none; opacity:1; }
  .llm-stage .llm-active:not(:first-child) { display:none; }
  .llm-next span { animation:none; }
}
.llm-active { display:flex; align-items:center; gap:13px; margin:12px 0 18px;
  background:#16203a; border:1.5px solid var(--accent); border-radius:14px; padding:15px 17px;
  box-shadow:0 8px 28px -8px rgba(47,107,255,.35); }
.llm-active .ic { width:40px; height:40px; border-radius:10px; display:flex; align-items:center;
  justify-content:center; font-size:16px; font-weight:700; color:#fff; flex-shrink:0; }
.llm-active b { display:block; font-size:16px; }
.llm-active .llm-state { font-family:ui-monospace,monospace; font-size:11.5px; color:#8e94ab; letter-spacing:.06em; }
.llm-active .llm-badge { margin-left:auto; background:var(--accent); color:#fff; border-radius:999px;
  padding:4px 11px; font-family:ui-monospace,monospace; font-size:10.5px; letter-spacing:.08em; }
.llm-next { display:flex; gap:10px; flex-wrap:wrap; margin:12px 0 18px; }
.llm-next span { display:inline-flex; align-items:center; gap:8px; background:#1a2233;
  border:1px solid rgba(255,255,255,.09); border-radius:12px; padding:9px 15px 9px 9px;
  font-size:14px; font-weight:600; }
.llm-next .ic { width:24px; height:24px; border-radius:7px; display:inline-flex; align-items:center;
  justify-content:center; font-size:11px; font-weight:700; color:#fff; }
.llm-note { background:#1a2233; border:1px solid rgba(255,255,255,.07); border-radius:12px;
  padding:14px 16px; font-size:13.5px; line-height:1.55; color:#c3c9d9; }
.llm-note .mono { display:block; margin-bottom:7px; }

/* Слайдер интеграций и моделей */
.kicker { text-align:center; margin:0 0 6px; }
.int-head { text-align:center; font-size:26px; font-weight:750; letter-spacing:-.02em;
  margin:0 0 26px; padding:0; border:0; }
.marquee { overflow:hidden; margin:16px 0; position:relative;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent); }
.marquee-track { display:flex; gap:14px; width:max-content; animation:marquee 34s linear infinite; }
.marquee.reverse .marquee-track { animation-direction:reverse; }
.marquee:hover .marquee-track { animation-play-state:paused; }
@keyframes marquee { to { transform:translateX(-50%); } }
@media (prefers-reduced-motion: reduce) { .marquee-track { animation:none; flex-wrap:wrap; width:auto; } }
.int-chip { display:inline-flex; align-items:center; gap:9px; flex-shrink:0;
  font-weight:600; font-size:15px; color:#3b4356; background:var(--bg);
  border:1px solid var(--line); padding:13px 20px; border-radius:12px; white-space:nowrap; }
.int-chip .ic { width:26px; height:26px; border-radius:7px; flex-shrink:0;
  display:inline-flex; align-items:center; justify-content:center;
  font-size:11px; font-weight:700; color:#fff; }

/* Подвал */
.site-foot { border-top:1px solid var(--line); background:var(--bg-soft); margin-top:0; }
.site-foot .wrap { padding-top:44px; padding-bottom:48px; }
.foot-grid { display:grid; grid-template-columns:1.4fr 1fr; gap:32px; }
@media (max-width:700px) { .foot-grid { grid-template-columns:1fr; } }
.site-foot h4 { margin:0 0 10px; font-size:14px; font-weight:650; color:var(--fg); }
.site-foot h4 + h4, .site-foot p + h4, .site-foot ul + h4 { margin-top:22px; }
.site-foot p, .site-foot li { color:var(--muted); font-size:14px; margin:5px 0; }
.site-foot ul { list-style:none; padding:0; margin:0; }
.site-foot a { color:var(--muted); text-decoration-color:transparent; }
.site-foot a:hover { color:var(--accent); }
.copyright { margin-top:28px; padding-top:18px; border-top:1px solid var(--line);
  color:var(--muted); font-size:13px; }

/* Подменю «О нас» */
.nav-drop { position:relative; }
.nav-drop > a::after { content:" ▾"; font-size:10px; color:var(--muted); }
.nav-drop-menu { display:none; position:absolute; top:100%; left:-14px; z-index:60;
  min-width:150px; padding:8px 0; background:#fff; border:1px solid var(--line);
  border-radius:12px; box-shadow:var(--shadow-md); }
.nav-drop:hover .nav-drop-menu, .nav-drop:focus-within .nav-drop-menu { display:block; }
.nav-drop-menu a { display:block; padding:7px 16px; font-size:14px; white-space:nowrap; }
.nav-drop-menu a:hover { background:var(--bg-soft); }

/* Модалка CTA-формы */
.lead-overlay[hidden] { display:none; }
.lead-overlay { position:fixed; inset:0; z-index:200; background:rgba(15,19,28,.55);
  display:flex; align-items:center; justify-content:center; padding:20px; }
.lead-dialog { position:relative; background:#fff; border-radius:16px; padding:26px 28px;
  width:100%; max-width:440px; max-height:92vh; overflow-y:auto; box-shadow:var(--shadow-lg); }
.lead-close { position:absolute; top:12px; right:14px; background:none; border:0;
  font-size:16px; color:var(--muted); cursor:pointer; padding:6px; }
.lead-title { margin:0 0 14px; font-size:20px; }
.lead-form { display:grid; gap:12px; }
.lead-form[hidden] { display:none; }
.lead-field { display:grid; gap:5px; font-size:13.5px; color:var(--muted); }
.lead-form .input { width:100%; padding:9px 12px; font:inherit; font-size:15px;
  border:1px solid var(--line-strong); border-radius:10px; background:#fff; color:var(--fg); }
.lead-form .input:focus { outline:2px solid var(--accent); outline-offset:0; border-color:var(--accent); }
.lead-form .btn { border:0; cursor:pointer; font:inherit; font-weight:600; }
.lead-status { font-size:14px; min-height:1em; color:var(--muted); }
.lead-status.success { color:#1e7e3b; }
.lead-status.error { color:#c43b3b; }
.lead-consent { margin:0; font-size:12px; color:var(--muted); }
