/* ---------- Публичный сайт: шапка, страницы разделов, статьи ---------- */
.ps-top .ps-inner { display: flex; align-items: center; gap: 28px; }
.ps-top .ps-nav { flex: 1; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.ps-links { display: flex; align-items: center; gap: 4px; }
.ps-link { display: inline-flex; align-items: center; gap: 6px; padding: 8px 12px; border-radius: 999px;
  color: var(--color-black); font-weight: 600; font-size: 14.5px; text-decoration: none; white-space: nowrap; }
.ps-link svg { width: 10px; height: 6px; opacity: .6; }
.ps-link:hover, .ps-link.is-on { background: var(--color-gray); text-decoration: none; }
.ps-drop { position: relative; }
.ps-menu { position: absolute; top: calc(100% + 6px); left: 0; min-width: 260px; display: grid; gap: 2px;
  padding: 8px; border-radius: 18px; background: #fff; box-shadow: 0 18px 40px -18px rgba(16, 24, 40, .35), 0 0 0 1px rgba(16, 24, 40, .06);
  opacity: 0; visibility: hidden; transform: translateY(4px); transition: opacity .15s ease, transform .15s ease, visibility .15s; z-index: 50; }
.ps-drop:hover .ps-menu, .ps-drop:focus-within .ps-menu { opacity: 1; visibility: visible; transform: none; }
.ps-menu a { padding: 10px 12px; border-radius: 12px; color: var(--color-black); text-decoration: none; font-size: 14px; font-weight: 500; }
.ps-menu a:hover, .ps-menu a.is-on { background: var(--color-gray); text-decoration: none; }
.ps-right { display: flex; align-items: center; gap: 10px; }
.ps-who { font-size: 13px; color: var(--gray-500); max-width: 220px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ps-burger { display: none; }
@media (max-width: 960px) {
  .ps-top .ps-inner { flex-wrap: wrap; gap: 12px; }
  .ps-burger { display: inline-flex; flex-direction: column; gap: 4px; margin-left: auto; padding: 10px; cursor: pointer; }
  .ps-burger span { width: 20px; height: 2px; border-radius: 2px; background: var(--color-black); }
  .ps-top .ps-nav { display: none; flex-basis: 100%; flex-direction: column; align-items: stretch; gap: 12px; padding: 8px 0 12px; }
  .ps-top .ps-burger-cb:checked ~ .ps-nav { display: flex; }
  .ps-links { flex-direction: column; align-items: stretch; }
  .ps-link { justify-content: space-between; }
  .ps-menu { position: static; opacity: 1; visibility: visible; transform: none; box-shadow: none; padding: 0 0 0 12px; min-width: 0; }
  .ps-right { flex-wrap: wrap; }
  .ps-right .btn-sm, .ps-right .btn-primary { flex: 1; text-align: center; }
  .ps-who { flex-basis: 100%; max-width: none; }
}

/* ---------- Страницы сайта: по образцу главной ---------- */
.page-site .sp-preview { margin: 12px 0 0; padding: 10px 16px; border-radius: 14px; background: #FFF3D6; color: #6B4E07; font-size: 14px; }
.page-site .sp-crumbs { display: flex; flex-wrap: wrap; gap: 8px; margin: 22px 0 0; font-size: 13.5px; color: var(--l2-mut); }
.page-site .sp-crumbs a { color: var(--l2-mut); text-decoration: none; }
.page-site .sp-crumbs a:hover { color: var(--l2-ink); }
.page-site .sp-hero { display: grid; gap: 2rem; align-items: center; margin-top: 1.5rem; }
.page-site .sp-hero--art { grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); }
.page-site .sp-kicker { display: inline-block; margin-bottom: 1rem; padding: 6px 14px; border-radius: 999px;
  background: var(--l2-lime); color: var(--l2-ink); font-size: 13px; font-weight: 600; }
.page-site .sp-h1 { font-size: clamp(2rem, 4.4vw, 3.7rem); line-height: 1.05; font-weight: 600; letter-spacing: -0.03em;
  margin: 0 0 1.2rem; text-wrap: balance; }
.page-site .sp-lead { font-size: 1.12rem; line-height: 1.55; color: var(--l2-mut); margin: 0 0 1.8rem; max-width: 36rem; }
.page-site .sp-meta { color: var(--l2-mut); font-size: 0.95rem; margin: 0; }
.page-site .sp-cta { justify-content: flex-start; }
.page-site .sp-hero-art img { display: block; width: 100%; height: auto; border-radius: var(--l2-r); }

/* Текст страницы */
.page-site .sp-body { max-width: 46rem; margin: 4.5rem auto 0; font-size: 1.06rem; line-height: 1.7; color: var(--l2-ink); }
.page-site .sp-body h2 { font-size: clamp(1.5rem, 2.6vw, 2.1rem); line-height: 1.15; letter-spacing: -0.02em; font-weight: 600;
  text-transform: none; color: var(--l2-ink); display: block; margin: 3rem 0 1rem; }
.page-site .sp-body h3 { font-size: 1.3rem; font-weight: 600; letter-spacing: -0.01em; margin: 2rem 0 0.7rem; }
.page-site .sp-body p { margin: 0 0 1.1rem; }
.page-site .sp-body a { color: var(--l2-cobalt); }
.page-site .sp-body ul, .page-site .sp-body ol { margin: 0 0 1.3rem; padding-left: 0; list-style: none; display: grid; gap: 0.55rem; }
.page-site .sp-body ul li { position: relative; padding-left: 1.6rem; }
.page-site .sp-body ul li::before { content: ""; position: absolute; left: 0.2rem; top: 0.62em; width: 0.6rem; height: 0.6rem;
  border-radius: 50%; background: var(--l2-mint); box-shadow: 0 0 0 3px rgba(143, 240, 190, .3); }
.page-site .sp-body ol { counter-reset: sp; }
.page-site .sp-body ol li { position: relative; padding-left: 2.3rem; counter-increment: sp; }
.page-site .sp-body ol li::before { content: counter(sp); position: absolute; left: 0; top: 0.1em; width: 1.6rem; height: 1.6rem;
  border-radius: 50%; background: var(--l2-lime); display: grid; place-items: center; font-size: 0.85rem; font-weight: 700; }
.page-site .sp-body blockquote { margin: 1.8rem 0; padding: 1.4rem 1.6rem; border-radius: 1.3rem; background: var(--l2-card); font-size: 1.02rem; }
.page-site .sp-body table { width: 100%; border-collapse: separate; border-spacing: 0; margin: 1.5rem 0; font-size: 0.97rem;
  border-radius: 1.1rem; overflow: hidden; background: var(--l2-card); }
.page-site .sp-body th, .page-site .sp-body td { padding: 0.8rem 1rem; text-align: left; vertical-align: top; border-bottom: 1px solid #E6E6EA; }
.page-site .sp-body th { background: #EBEBEE; font-weight: 600; }
.page-site .sp-body img { max-width: 100%; height: auto; border-radius: 1.3rem; }

/* Карточки: услуги, тарифы, статьи */
.page-site .sp-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 1rem; }
.page-site .sp-card { display: flex; flex-direction: column; gap: 0.6rem; padding: 1.5rem; border-radius: var(--l2-r);
  background: var(--l2-card); color: var(--l2-ink); text-decoration: none; transition: transform .2s ease, box-shadow .2s ease; }
a.sp-card:hover { transform: translateY(-3px); box-shadow: 0 18px 36px -22px rgba(16, 16, 20, .45); text-decoration: none; }
.page-site .sp-card img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 1.2rem; margin-bottom: 0.4rem; }
.page-site .sp-card--article img { aspect-ratio: 16 / 9; }
.page-site .sp-card b { font-size: 1.15rem; font-weight: 600; letter-spacing: -0.01em; }
.page-site .sp-card span { color: var(--l2-mut); font-size: 0.95rem; line-height: 1.5; }
.page-site .sp-card small { color: var(--l2-mut); font-size: 0.85rem; margin-top: auto; }
.page-site .sp-plan ul { margin: 0.4rem 0 1rem; padding-left: 1.1rem; font-size: 0.93rem; line-height: 1.55; flex: 1; }
.page-site .sp-plan-price { font-size: 1.7rem; font-weight: 600; letter-spacing: -0.02em; }
.page-site .sp-plan-price small { font-size: 0.95rem; font-weight: 400; color: var(--l2-mut); }
.page-site .sp-note { max-width: 46rem; margin: 1.4rem auto 0; color: var(--l2-mut); font-size: 0.95rem; text-align: center; }

/* Финальная плашка — как на главной */
.page-site .sp-final { text-align: center; color: #fff; }
.page-site .sp-final-h { font-size: clamp(1.7rem, 3.2vw, 2.7rem); line-height: 1.1; letter-spacing: -0.025em; font-weight: 600;
  text-transform: none; color: #fff; display: block; margin: 0 auto 1rem; max-width: 40rem; }
.page-site .sp-final-sub { margin: 0 auto 2rem; max-width: 32rem; color: rgba(255, 255, 255, .85); }
.page-site .sp-btn-glass { background: rgba(255, 255, 255, .16); color: #fff; }
.page-site .sp-btn-glass:hover { background: rgba(255, 255, 255, .26); color: #fff; }

@media (max-width: 860px) {
  .page-site .sp-hero--art { grid-template-columns: 1fr; }
  .page-site .sp-hero-art { order: -1; }
  .page-site .sp-body { margin-top: 3rem; }
}

/* ---------- Админка: редактор страниц сайта ---------- */
.se-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 18px; margin-top: 16px; }
.se-grid .se-wide { grid-column: 1 / -1; }
.se-grid label.bill-lbl, .se-form label.bill-lbl { display: grid; gap: 6px; font-size: 12.5px; font-weight: 700; }
.se-grid label.bill-lbl .muted { font-weight: 400; }
.se-grid .qa-field, .se-grid select { font-weight: 400; font-size: 14px; }
.se-slug { display: flex; align-items: center; gap: 4px; }
.se-slug span { color: var(--gray-500); font-size: 13px; font-weight: 400; white-space: nowrap; }
.se-hero-preview img { max-width: 220px; border-radius: 14px; display: block; }
.se-editor { background: #fff; border-radius: 0 0 14px 14px; min-height: 380px; font-size: 15px; }
.se-form .ql-toolbar.ql-snow { background: #fff; border-radius: 14px 14px 0 0; border-color: var(--color-border); margin-top: 12px; }
.se-form .ql-container.ql-snow { border-color: var(--color-border); }
.se-form .ql-editor { min-height: 380px; line-height: 1.65; }
.se-count { font-size: 12px; font-weight: 400; color: var(--gray-400); justify-self: end; }
.se-count.is-over { color: #A3242A; font-weight: 700; }
.se-actions { display: flex; flex-wrap: wrap; gap: 10px; margin: 0 0 40px; }
@media (max-width: 720px) { .se-grid { grid-template-columns: 1fr; } }

/* Кнопки шапки сайта: стили витрины перекрашивали текст тёмной кнопки в тёмный */
.ps-top .ps-right a.btn-primary, .ps-top .ps-right a.btn-primary:hover { background: var(--color-black); color: #fff; }
.ps-top .ps-right a.btn-sm:not(.btn-primary) { background: var(--color-gray); color: var(--color-black); }

/* Значки оплаты в подвале: стили витрины (landing2.css) подключаются позже
   и красили текст ссылок светлым — здесь правило сильнее */
.foot .paymarks .paymark, .foot .paymarks a.paymark, .foot .paymarks a.paymark:hover { color: #111; }
.foot .paymarks .paymark--dolyami, .foot .paymarks a.paymark--dolyami:hover { background: #fff; color: #111; }
.foot .paymarks .paymark--tpay { background: #ffdd2d; }

/* ---------- Оформленные страницы: блоки в стиле главной ---------- */
.page-designed .pb-reveal { opacity: 0; transform: translateY(22px); transition: opacity .6s ease, transform .6s cubic-bezier(.16,1,.3,1); }
.page-designed .pb-reveal.is-visible { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) { .page-designed .pb-reveal { opacity: 1; transform: none; transition: none; } }
.page-designed .pb-hero { padding-top: 2rem; }
.page-designed .pb-kicker { display: inline-block; margin-bottom: 1.2rem; padding: 6px 14px; border-radius: 999px;
  background: var(--l2-lime); color: var(--l2-ink); font-size: 13px; font-weight: 600; }
.page-designed .pb-hero-sub { max-width: 36rem; }
.page-designed .pb-hero-panel { position: relative; max-width: 68rem; margin: 2.6rem auto 0; border-radius: var(--l2-r); overflow: hidden;
  background: var(--l2-grad); aspect-ratio: 16 / 9; }
.page-designed .pb-hero-panel img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.page-designed .pb-float { position: absolute; z-index: 2; }
.page-designed .pb-float--1 { left: 4%; top: 12%; }
.page-designed .pb-float--2 { right: 5%; top: 20%; }
.page-designed .pb-float--3 { left: 7%; bottom: 14%; }
.page-designed .pb-float--4 { right: 8%; bottom: 10%; }
.page-designed .pb-tools { margin-top: 0; }
.page-designed .pb-after { text-align: center; color: var(--l2-mut); margin: 1.6rem auto 0; max-width: 36rem; }
.page-designed .pb-after a { color: var(--l2-cobalt); }

/* Шаги по месяцам */
.page-designed .pb-steps { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: var(--l2-gap); }
.page-designed .pb-step { position: relative; display: flex; flex-direction: column; gap: .55rem; padding: 1.7rem 1.6rem 1.8rem;
  border-radius: var(--l2-r); background: var(--l2-card); min-height: 15rem; }
.page-designed .pb-step:nth-child(4n+2) { background: #EEF2FF; }
.page-designed .pb-step:nth-child(4n+3) { background: #ECFBF3; }
.page-designed .pb-step:nth-child(4n+4) { background: #F6FBE6; }
.page-designed .pb-step-num { font-size: 2.6rem; font-weight: 600; letter-spacing: -0.04em; line-height: 1; color: var(--l2-ink); opacity: .9; }
.page-designed .pb-step-when { align-self: flex-start; padding: 4px 11px; border-radius: 999px; background: #fff; font-size: 12.5px; font-weight: 600; }
.page-designed .pb-step-title { font-size: 1.2rem; font-weight: 600; letter-spacing: -0.015em; margin-top: .3rem; }
.page-designed .pb-step-text { font-size: .93rem; line-height: 1.55; color: var(--l2-mut); }

/* Цветная панель: белая карточка справа (например, цены) */
.page-designed .pb-panel { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.page-designed .pb-panel-card { margin: clamp(1.2rem, 3vw, 2.4rem); align-self: center; background: #fff; color: var(--l2-ink);
  border-radius: 1.4rem; padding: 1.4rem 1.6rem; box-shadow: 0 24px 50px -30px rgba(10, 10, 40, .55); }
.page-designed .pb-panel-card table { width: 100%; border-collapse: collapse; font-size: 1rem; }
.page-designed .pb-panel-card td { padding: .8rem .2rem; border-bottom: 1px solid #ECECF1; }
.page-designed .pb-panel-card tr:last-child td { border-bottom: 0; }
.page-designed .pb-panel-card td:last-child { text-align: right; font-weight: 600; white-space: nowrap; }
.page-designed .pb-panel-card caption { text-align: left; font-weight: 600; font-size: 1.05rem; padding-bottom: .4rem; }
.page-designed .pb-btn-glass { background: rgba(255,255,255,.16); color: #fff; }
.page-designed .pb-btn-glass:hover { background: rgba(255,255,255,.26); color: #fff; }

/* Цифры кейса */
.page-designed .pb-stats { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 2rem; align-items: center;
  padding: clamp(1.8rem, 4vw, 3rem); border-radius: var(--l2-r); background: var(--l2-card); }
.page-designed .pb-stats-head .l2-h2 { text-align: left; margin: 0 0 1rem; }
.page-designed .pb-stats-head p { color: var(--l2-mut); line-height: 1.6; margin: 0 0 1.4rem; }
.page-designed .pb-stats-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: var(--l2-gap); }
.page-designed .pb-stat { display: flex; flex-direction: column; gap: .35rem; padding: 1.4rem; border-radius: 1.3rem; background: #fff; }
.page-designed .pb-stat b { font-size: clamp(2rem, 3.4vw, 2.8rem); font-weight: 600; letter-spacing: -0.04em; line-height: 1; }
.page-designed .pb-stat span { font-weight: 600; }
.page-designed .pb-stat small { color: var(--l2-mut); font-size: .85rem; line-height: 1.45; }

@media (max-width: 900px) {
  .page-designed .pb-panel, .page-designed .pb-stats { grid-template-columns: 1fr; }
  .page-designed .pb-hero-panel { aspect-ratio: 4 / 3; }
  .page-designed .pb-float { display: none; }
}
.page-designed .pb-stats-head .l2-btn--ghost { background: #fff; }
.page-designed .pb-stats-head .l2-btn--ghost:hover { background: #fff; box-shadow: 0 14px 30px -18px rgba(16,16,20,.45); }

/* ---------- Статьи ---------- */
.page-article .pa { max-width: 72rem; margin: 0 auto; display: grid;
  grid-template-columns: 15rem minmax(0, 1fr); column-gap: clamp(2rem, 4vw, 4.5rem); }
.page-article .pa-crumbs { grid-column: 1 / -1; }
.page-article .pa-head { grid-column: 2; max-width: 46rem; margin: 2.6rem 0 0; }
.page-article .pa-h1 { font-size: clamp(2rem, 4vw, 3.3rem); line-height: 1.06; font-weight: 600; letter-spacing: -0.03em; margin: 1rem 0 1.1rem; text-wrap: balance; }
.page-article .pa-lead { font-size: 1.18rem; line-height: 1.55; color: var(--l2-mut); margin: 0 0 1.4rem; }
.page-article .pa-meta { display: flex; align-items: center; gap: .7rem; color: var(--l2-mut); font-size: .95rem; margin: 0; }
.page-article .pa-meta b { color: var(--l2-ink); font-weight: 600; }
.page-article .pa-avatar, .page-article .pa-author-mark { display: inline-grid; place-items: center; width: 2.2rem; height: 2.2rem; border-radius: 50%;
  background: var(--l2-grad); color: #fff; font-weight: 600; flex: none; }
.page-article .pa-cover { grid-column: 1 / -1; margin: 2.6rem 0 0; border-radius: var(--l2-r); overflow: hidden; }
.page-article .pa-cover img { display: block; width: 100%; height: auto; max-height: 34rem; object-fit: cover; }
.page-article .pa-toc { grid-column: 1; grid-row: span 2; position: sticky; top: 6rem; align-self: start; margin-top: 3.5rem;
  padding: 1.2rem 1.3rem; border-radius: 1.3rem; background: var(--l2-card); font-size: .9rem; }
.page-article .pa-toc[hidden] { display: none; }
.page-article .pa-toc-title { font-weight: 700; margin-bottom: .7rem; }
.page-article .pa-toc ol { margin: 0; padding-left: 1.1rem; display: grid; gap: .5rem; }
.page-article .pa-toc a { color: var(--l2-mut); text-decoration: none; line-height: 1.4; }
.page-article .pa-toc a:hover, .page-article .pa-toc a.is-on { color: var(--l2-ink); }
.page-article .pa-toc a.is-on { font-weight: 600; }
.page-article .pa-body { grid-column: 2; max-width: 46rem; margin: 3.5rem 0 0; }
.page-article .pa-body > :first-child { margin-top: 0; }
.page-article .pa-body h2 { scroll-margin-top: 6rem; }
.page-article .pa-author { grid-column: 2; max-width: 46rem; margin-top: 3rem; }
.page-article .pa-author-card { display: flex; gap: 1.2rem; align-items: flex-start; padding: 1.6rem 1.8rem; border-radius: var(--l2-r); background: var(--l2-card); }
.page-article .pa-author-mark { width: 3.2rem; height: 3.2rem; font-size: 1.3rem; }
.page-article .pa-author-card p { margin: .35rem 0 .6rem; color: var(--l2-mut); line-height: 1.55; }
.page-article .pa-author-card a { color: var(--l2-cobalt); }
/* Без оглавления (меньше трёх разделов) — одна колонка по центру */
.page-article .pa--no-toc { grid-template-columns: minmax(0, 46rem); justify-content: center; }
.page-article .pa--no-toc .pa-head, .page-article .pa--no-toc .pa-body, .page-article .pa--no-toc .pa-author { grid-column: 1; }
.page-article .pa--no-toc .pa-cover { grid-column: 1; }
@media (max-width: 900px) {
  .page-article .pa { grid-template-columns: minmax(0, 1fr); }
  .page-article .pa-head, .page-article .pa-body, .page-article .pa-author, .page-article .pa-toc { grid-column: 1; }
  .page-article .pa-toc { position: static; grid-row: auto; margin-top: 2rem; }
  .page-article .pa-body { margin-top: 2rem; }
}

.page-designed .pa-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--l2-gap); }
.page-designed .pa-card { display: flex; flex-direction: column; border-radius: var(--l2-r); overflow: hidden; background: var(--l2-card);
  color: var(--l2-ink); text-decoration: none; transition: transform .2s ease, box-shadow .2s ease; }
.page-designed .pa-card:hover { transform: translateY(-4px); box-shadow: 0 22px 44px -26px rgba(16,16,20,.5); text-decoration: none; }
.page-designed .pa-card img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; display: block; }
.page-designed .pa-card-body { display: flex; flex-direction: column; gap: .5rem; padding: 1.3rem 1.5rem 1.6rem; }
.page-designed .pa-card-body small { color: var(--l2-mut); font-size: .85rem; }
.page-designed .pa-card-body b { font-size: 1.25rem; font-weight: 600; letter-spacing: -0.015em; line-height: 1.25; }
.page-designed .pa-card-body span { color: var(--l2-mut); font-size: .95rem; line-height: 1.5; }
.page-designed .pa-card--wide { grid-column: span 2; }
.page-designed .pa-card--wide .pa-card-body b { font-size: 1.6rem; }
@media (max-width: 900px) {
  .page-designed .pa-grid { grid-template-columns: 1fr; }
  .page-designed .pa-card--wide { grid-column: auto; }
}

/* ---------- Первые экраны со своим макетом (hero_split) ---------- */
.page-designed .hx-hero { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); gap: clamp(1.5rem, 4vw, 3.5rem);
  align-items: center; margin-top: 1.6rem; }
.page-designed .hx-h1 { font-size: clamp(2.1rem, 4.6vw, 4rem); line-height: 1.03; font-weight: 600; letter-spacing: -0.035em;
  margin: 0 0 1.3rem; text-wrap: balance; }
.page-designed .hx-sub { font-size: 1.1rem; line-height: 1.55; color: var(--l2-mut); margin: 0 0 1.8rem; max-width: 32rem; }
.page-designed .hx-cta { justify-content: flex-start; }
.page-designed .hx-note { text-align: left; }
.page-designed .hx-visual { position: relative; border-radius: var(--l2-r); background: var(--l2-grad); padding: clamp(1.2rem, 3vw, 2.4rem);
  min-height: 26rem; display: grid; place-items: center; overflow: hidden; }
.page-designed .hx-visual::before { content: ""; position: absolute; inset: 0; pointer-events: none;
  background: radial-gradient(55% 70% at 88% 8%, rgba(143,240,190,.35), transparent 62%), radial-gradient(45% 60% at 8% 92%, rgba(255,255,255,.16), transparent 60%); }
.page-designed .hx-visual > * { position: relative; }
.page-designed .hx-card { width: 100%; max-width: 30rem; background: #fff; border-radius: 1.3rem; padding: 1.2rem 1.3rem;
  box-shadow: 0 30px 60px -30px rgba(10, 10, 50, .6); color: var(--l2-ink); font-size: .95rem; }
.page-designed .hx-label { font-size: .78rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--l2-mut); }
.page-designed .hx-ex { position: absolute; right: 1rem; bottom: .8rem; font-size: .75rem; color: rgba(255,255,255,.75); }
.page-designed .hx-bar { display: block; height: .55rem; border-radius: 99px; background: #ECECF1; }
.page-designed .hx-bar--s { width: 45%; } .page-designed .hx-bar--m { width: 70%; } .page-designed .hx-bar--l { width: 90%; }
.page-designed .hx-site { display: inline-flex; align-items: center; gap: .4rem; font-weight: 700; }
.page-designed .hx-site::before { content: ""; width: .7rem; height: .7rem; border-radius: 50%; background: var(--l2-mint); box-shadow: 0 0 0 3px rgba(143,240,190,.35); }
@keyframes hx-rise { 0% { transform: translateY(170%); } 60%, 100% { transform: translateY(0); } }
/* Только сдвиг, без прозрачности: если анимация не проиграется, содержимое всё равно видно */
@keyframes hx-pop { 0% { transform: translateY(8px); } 100% { transform: none; } }

/* Яндекс: выдача, где сайт поднимается к верху */
.page-designed .hx-search { display: flex; align-items: center; gap: .6rem; padding: .7rem .9rem; border-radius: .9rem; border: 2px solid #FFCC00; margin: .7rem 0 1rem; font-weight: 600; }
.page-designed .hx-search svg { width: 1.1rem; height: 1.1rem; color: var(--l2-mut); }
.page-designed .hx-results { list-style: none; margin: 0; padding: 0; display: grid; gap: .55rem; }
.page-designed .hx-results li { display: grid; grid-template-columns: 1.6rem 1fr; gap: .2rem .7rem; align-items: center; padding: .65rem .7rem; border-radius: .9rem; background: #F7F7F9; }
.page-designed .hx-results li .hx-pos { grid-row: span 2; display: grid; place-items: center; width: 1.6rem; height: 1.6rem; border-radius: 50%; background: #fff; font-weight: 700; font-size: .85rem; }
.page-designed .hx-results li.is-you { background: #ECFBF3; box-shadow: inset 0 0 0 2px var(--l2-mint); }
.page-designed .hx-results li.is-you .hx-pos { background: var(--l2-mint); }
.page-designed .hx-up { justify-self: start; font-size: .8rem; font-weight: 700; color: var(--l2-mint-ink); }

/* Google: две выдачи рядом */
.page-designed .hx-dual { display: grid; grid-template-columns: 1fr 1fr; gap: .9rem; width: 100%; max-width: 32rem; }
.page-designed .hx-dual .hx-card { padding: 1rem; }
.page-designed .hx-engine { display: flex; align-items: center; justify-content: space-between; margin-bottom: .8rem; font-weight: 700; }
.page-designed .hx-engine i { font-style: normal; font-size: .78rem; padding: .2rem .55rem; border-radius: 99px; background: #F2F2F5; color: var(--l2-mut); }
.page-designed .hx-mini { display: grid; gap: .45rem; }
.page-designed .hx-mini div { display: flex; align-items: center; gap: .5rem; padding: .5rem .55rem; border-radius: .7rem; background: #F7F7F9; font-size: .82rem; }
.page-designed .hx-mini div b { width: 1.3rem; text-align: center; }
.page-designed .hx-mini div.is-you { background: #ECFBF3; box-shadow: inset 0 0 0 2px var(--l2-mint); }
.page-designed .hx-join { grid-column: 1 / -1; justify-self: center; padding: .55rem 1.1rem; border-radius: 99px; background: #fff; font-weight: 700; font-size: .9rem;
  box-shadow: 0 16px 30px -20px rgba(10,10,50,.6); }

/* Нейросети: диалог с ответом, который ссылается на сайт */
.page-designed .hx-chat { display: grid; gap: .8rem; width: 100%; max-width: 30rem; }
.page-designed .hx-msg { padding: .9rem 1.1rem; border-radius: 1.2rem; font-size: .95rem; line-height: 1.5; animation: hx-pop .6s ease both; }
.page-designed .hx-msg--q { justify-self: end; max-width: 85%; background: rgba(255,255,255,.95); border-bottom-right-radius: .4rem; font-weight: 600; }
.page-designed .hx-msg--a { background: #fff; border-bottom-left-radius: .4rem; display: grid; gap: .55rem; animation-delay: .5s;
  box-shadow: 0 30px 60px -30px rgba(10,10,50,.6); }
.page-designed .hx-who { display: flex; align-items: center; gap: .5rem; font-weight: 700; }
.page-designed .hx-who::before { content: ""; width: 1.3rem; height: 1.3rem; border-radius: 50%; background: conic-gradient(#7B5BFA, #4F7DF9, #8FF0BE, #7B5BFA); }
.page-designed .hx-src { display: flex; flex-wrap: wrap; gap: .4rem; margin-top: .2rem; }
.page-designed .hx-src span { padding: .3rem .65rem; border-radius: 99px; background: #F2F2F5; font-size: .8rem; color: var(--l2-mut); }
.page-designed .hx-src span.is-you { background: #ECFBF3; color: var(--l2-mint-ink); font-weight: 700; box-shadow: inset 0 0 0 2px var(--l2-mint); }

/* Директ: объявление и показатели кабинета */
.page-designed .hx-ad .hx-adtag { font-size: .75rem; font-weight: 700; color: var(--l2-mut); }
.page-designed .hx-ad b { display: block; font-size: 1.1rem; color: #3D5BF5; margin: .35rem 0 .45rem; }
.page-designed .hx-ad p { margin: 0 0 .5rem; color: var(--l2-mut); line-height: 1.5; }
.page-designed .hx-chips { display: flex; flex-wrap: wrap; gap: .4rem; margin: .6rem 0 0; }
.page-designed .hx-chips span { padding: .3rem .65rem; border-radius: 99px; background: #EEF2FF; color: #3D5BF5; font-size: .8rem; font-weight: 600; }
.page-designed .hx-metrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: .6rem; margin-top: 1rem; padding-top: 1rem; border-top: 1px solid #EEE; }
.page-designed .hx-metrics div { display: grid; gap: .35rem; }
.page-designed .hx-metrics small { color: var(--l2-mut); font-size: .78rem; }
.page-designed .hx-spark { display: flex; align-items: flex-end; gap: 3px; height: 2rem; }
.page-designed .hx-spark i { flex: 1; border-radius: 3px; background: #C9D3FF; }
.page-designed .hx-metrics div:last-child .hx-spark i { background: var(--l2-mint); }

/* Аудит: чек-лист с отметками */
.page-designed .hx-checks { list-style: none; margin: .8rem 0 0; padding: 0; display: grid; gap: .5rem; }
.page-designed .hx-checks li { display: flex; align-items: center; gap: .7rem; padding: .6rem .75rem; border-radius: .8rem; background: #F7F7F9; animation: hx-pop .5s ease both; }
.page-designed .hx-checks li:nth-child(2) { animation-delay: .1s; } .page-designed .hx-checks li:nth-child(3) { animation-delay: .2s; }
.page-designed .hx-checks li:nth-child(4) { animation-delay: .3s; } .page-designed .hx-checks li:nth-child(5) { animation-delay: .4s; } .page-designed .hx-checks li:nth-child(6) { animation-delay: .5s; }
.page-designed .hx-ck { display: grid; place-items: center; width: 1.6rem; height: 1.6rem; border-radius: 50%; font-weight: 800; font-size: .85rem; flex: none; }
.page-designed .hx-ck--ok { background: #DFF9EC; color: #0B7A4B; }
.page-designed .hx-ck--warn { background: #FFF3D6; color: #8A5A00; }
.page-designed .hx-ck--bad { background: #FDE7E8; color: #A3242A; }
.page-designed .hx-plan { margin-top: .9rem; padding: .7rem .9rem; border-radius: .9rem; background: var(--l2-lime); font-weight: 700; display: flex; justify-content: space-between; }

/* Тарифы: калькулятор по числу страниц */
.page-designed .hx-calc label { display: flex; justify-content: space-between; font-weight: 700; margin: .6rem 0 .4rem; }
.page-designed .hx-calc input[type=range] { width: 100%; accent-color: var(--l2-ink); }
.page-designed .hx-prices { display: grid; gap: .45rem; margin-top: .9rem; }
.page-designed .hx-prices div { display: flex; justify-content: space-between; align-items: baseline; padding: .65rem .8rem; border-radius: .8rem; background: #F7F7F9; }
.page-designed .hx-prices div b { font-size: 1.1rem; letter-spacing: -0.01em; }
.page-designed .hx-prices div.is-main { background: #ECFBF3; box-shadow: inset 0 0 0 2px var(--l2-mint); }

/* Кейсы: цифры «было → стало» */
.page-designed .hx-nums { display: grid; gap: .9rem; width: 100%; max-width: 30rem; }
.page-designed .hx-num { background: #fff; border-radius: 1.3rem; padding: 1.2rem 1.4rem; box-shadow: 0 30px 60px -30px rgba(10,10,50,.6); }
.page-designed .hx-num b { display: block; font-size: clamp(2.2rem, 4vw, 3.2rem); letter-spacing: -0.04em; font-weight: 600; line-height: 1.05; margin: .3rem 0; }
.page-designed .hx-num small { color: var(--l2-mut); }

/* О сервисе: экран кабинета в окне браузера */
.page-designed .hx-browser { width: 100%; max-width: 34rem; border-radius: 1.1rem; overflow: hidden; background: #fff; box-shadow: 0 30px 70px -30px rgba(10,10,50,.7);
  transform: rotate(-1.5deg); }
.page-designed .hx-browser-bar { display: flex; align-items: center; gap: .35rem; padding: .6rem .8rem; background: #F2F2F5; font-size: .8rem; font-weight: 700; }
.page-designed .hx-browser-bar i { width: .6rem; height: .6rem; border-radius: 50%; background: #D7D7DE; }
.page-designed .hx-browser-bar span { margin-left: .5rem; padding: .2rem .7rem; border-radius: 99px; background: #fff; color: var(--l2-mut); }
.page-designed .hx-browser img { display: block; width: 100%; height: auto; }
.page-designed .hx-badge { position: absolute; padding: .5rem .9rem; border-radius: 99px; background: #fff; font-weight: 700; font-size: .85rem;
  box-shadow: 0 16px 30px -18px rgba(10,10,50,.6); }

/* Услуги: плитка услуг */
.page-designed .hx-tiles { display: grid; grid-template-columns: repeat(3, 1fr); gap: .7rem; width: 100%; max-width: 32rem; }
.page-designed .hx-tile { display: grid; gap: .5rem; align-content: start; padding: .9rem; border-radius: 1.1rem; background: rgba(255,255,255,.95); color: var(--l2-ink);
  text-decoration: none; font-weight: 600; font-size: .88rem; line-height: 1.3; transition: transform .2s ease; animation: hx-pop .5s ease both; }
.page-designed a.hx-tile:hover { transform: translateY(-3px); text-decoration: none; }
.page-designed .hx-tile .l2-tool-icon { width: 2.2rem; height: 2.2rem; }

@media (max-width: 900px) {
  .page-designed .hx-hero { grid-template-columns: 1fr; }
  .page-designed .hx-visual { min-height: 0; }
  .page-designed .hx-tiles { grid-template-columns: repeat(2, 1fr); }
  .page-designed .hx-dual { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  .page-designed .hx-results li.is-you, .page-designed .hx-msg, .page-designed .hx-checks li, .page-designed .hx-tile { animation: none; }
}

/* Главная кнопка сайта — переливается, как вкладка «Нейросети» в кабинете */
.page-land2 .l2-btn--flow, .page-land2 .l2-btn--flow:hover {
  color: #fff; text-decoration: none;
  background: linear-gradient(100deg, #4F7DF9 0%, #7B5BFA 30%, #C05BFA 55%, #3FC6A0 80%, #4F7DF9 100%);
  background-size: 250% 100%;
  animation: subtab-geo-flow 6s linear infinite;
  box-shadow: 0 12px 26px -12px rgba(123, 91, 250, .75);
}
.page-land2 .l2-btn--flow:hover { transform: translateY(-2px); filter: brightness(1.06); }
/* сдвиг за цикл — ровно ширина градиента (250%): при размере 250% это позиция 166.667% */
@keyframes subtab-geo-flow { from { background-position: 0% 0; } to { background-position: 166.6667% 0; } }
@media (prefers-reduced-motion: reduce) { .page-land2 .l2-btn--flow { animation: none; } }

/* Форма подключения сайта: ответ сервера и запасной путь — написать */
.start-msg { margin: 0; padding: 0.7rem 0.9rem; border-radius: 12px; background: #E7F7EC; color: #145C2E; font-size: 0.92rem; line-height: 1.45; }
.start-msg[data-error] { background: #FDECEC; color: #9D1C1C; }
.start-alt { margin: 0.2rem 0 0; font-size: 0.86rem; color: #6b6b76; }
.start-alt a { color: inherit; text-decoration: underline; }

/* Хаб статей: свежая — крупно во всю ширину, остальные — сеткой по три */
.page-designed .bh { display: grid; gap: var(--l2-gap); }
.page-designed .bh-feature { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); align-items: stretch;
  border-radius: var(--l2-r); overflow: hidden; background: var(--l2-card); color: var(--l2-ink); text-decoration: none;
  transition: transform .25s ease, box-shadow .25s ease; }
.page-designed .bh-feature:hover { transform: translateY(-4px); box-shadow: 0 26px 50px -30px rgba(16,16,20,.5); text-decoration: none; }
.page-designed .bh-feature img { width: 100%; height: 100%; min-height: 20rem; object-fit: cover; display: block; }
.page-designed .bh-feature-body { display: flex; flex-direction: column; justify-content: center; gap: .8rem; padding: clamp(1.6rem, 3.5vw, 3.2rem); }
.page-designed .bh-feature-body .pb-kicker { align-self: flex-start; }
.page-designed .bh-feature-body small { color: var(--l2-mut); font-size: .9rem; }
.page-designed .bh-feature-body b { font-size: clamp(1.6rem, 2.6vw, 2.4rem); line-height: 1.12; font-weight: 600; letter-spacing: -0.025em; text-wrap: balance; }
.page-designed .bh-feature-body span { color: var(--l2-mut); font-size: 1.05rem; line-height: 1.55; }
.page-designed .bh-feature-body em { font-style: normal; font-weight: 600; color: var(--l2-cobalt); margin-top: .4rem; }
.page-designed .bh-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--l2-gap); }
.page-designed .bh-card { display: flex; flex-direction: column; border-radius: var(--l2-r); overflow: hidden; background: var(--l2-card);
  color: var(--l2-ink); text-decoration: none; transition: transform .25s ease, box-shadow .25s ease; }
.page-designed .bh-card:hover { transform: translateY(-4px); box-shadow: 0 22px 44px -26px rgba(16,16,20,.5); text-decoration: none; }
.page-designed .bh-card img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; display: block; }
.page-designed .bh-card-body { display: flex; flex-direction: column; gap: .5rem; padding: 1.3rem 1.5rem 1.6rem; }
.page-designed .bh-card-body small { color: var(--l2-mut); font-size: .85rem; }
.page-designed .bh-card-body b { font-size: 1.22rem; font-weight: 600; letter-spacing: -0.015em; line-height: 1.25; }
.page-designed .bh-card-body > span { color: var(--l2-mut); font-size: .95rem; line-height: 1.5;
  display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
@media (max-width: 1000px) { .page-designed .bh-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 760px) {
  .page-designed .bh-feature { grid-template-columns: 1fr; }
  .page-designed .bh-feature img { min-height: 0; aspect-ratio: 16 / 9; }
  .page-designed .bh-grid { grid-template-columns: 1fr; }
}

/* Хаб статей, вариант «ровная сетка»: фильтр по темам и тема на карточке */
.page-designed .bh-filter { display: flex; flex-wrap: wrap; gap: .5rem; margin-bottom: .6rem; }
.page-designed .bh-chip { display: inline-flex; align-items: center; gap: .45rem; padding: .6rem 1.05rem; border-radius: 999px;
  border: 1px solid #DCDDE3; background: #fff; color: var(--l2-ink); font: inherit; font-size: .95rem; font-weight: 500; cursor: pointer; }
.page-designed .bh-chip span { color: var(--l2-mut); font-size: .85rem; }
.page-designed .bh-chip:hover { border-color: var(--l2-ink); }
.page-designed .bh-chip.is-on { background: var(--l2-ink); border-color: var(--l2-ink); color: #fff; }
.page-designed .bh-chip.is-on span { color: rgba(255,255,255,.7); }
.page-designed .bh-card[hidden] { display: none; }
.page-designed .bh-topic { color: var(--l2-cobalt); font-weight: 600; }
