/* ============================================================
   Sheker.Agency — Створення інтернет-магазину (store page)
   Доповнення до design-system.css / home.css / ecommerce-dev.css
   ============================================================ */

/* ---------- Крошки на чорному ---------- */
.crumbs--dark { padding-top: clamp(16px, 2.4vw, 26px); margin-bottom: clamp(20px, 2.6vw, 32px); }
.crumbs--dark ol { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; font-family: var(--f-mono); font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--c-text-2); list-style: none; margin: 0; padding: 0; }
.crumbs--dark li { display: flex; gap: 10px; align-items: center; }
.crumbs--dark li + li::before { content: "/"; color: var(--c-disabled-inv); }
.crumbs--dark a:hover { color: var(--c-red); }
.crumbs--dark [aria-current] { color: var(--c-text-2-inv); }

/* ---------- Hero: Inner Page Hero (патерн 4.1) ---------- */
.shop-hero { padding-bottom: clamp(48px, 6vw, 88px); }
.shop-hero__masthead { display: flex; align-items: center; gap: 24px; margin-top: clamp(32px, 4vw, 56px); font-family: var(--f-mono); font-size: 11px; letter-spacing: .14em; text-transform: uppercase; }
.shop-hero__masthead::before, .shop-hero__masthead .rule-flex { content: ""; flex: 1; height: 1px; background: var(--c-line-inv); }
.shop-hero__masthead-label { color: var(--c-text-2-inv); white-space: nowrap; }
.shop-hero__est { color: var(--c-text-2); white-space: nowrap; }
.shop-hero__stage { display: grid; grid-template-columns: minmax(0, 1fr); gap: clamp(28px, 4vw, 48px); margin-top: clamp(36px, 5vw, 64px); align-items: start; }
.shop-hero__center { text-align: center; display: grid; gap: clamp(20px, 2.6vw, 32px); justify-items: center; }
.shop-hero__title { font-size: clamp(38px, 4.8vw, 76px); line-height: 1.02; max-width: 18ch; }
.shop-hero__title em { font-style: normal; color: var(--c-red); }
.shop-hero__lead { color: var(--c-text-2-inv); max-width: 560px; }
.shop-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; }
.shop-hero__note { display: flex; align-items: center; gap: 16px; font-family: var(--f-mono); font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--c-text-2); text-align: left; }
.shop-hero__note::before { content: ""; width: 24px; height: 1px; background: var(--c-red); flex-shrink: 0; }
.shop-hero__rail { display: none; }
.shop-hero__mobrail { display: flex; flex-wrap: wrap; gap: 8px 24px; border-top: 1px solid var(--c-line-inv); padding-top: 16px; margin-top: clamp(28px, 4vw, 48px); font-family: var(--f-mono); font-size: 10px; letter-spacing: .12em; text-transform: uppercase; color: var(--c-text-2-inv); }
.shop-hero__mobrail b { font-weight: 500; color: var(--c-text-2); }
@media (min-width: 1024px) {
  .shop-hero__stage { grid-template-columns: 170px minmax(0, 1fr) 170px; gap: clamp(32px, 4vw, 64px); }
  .shop-hero__rail { display: grid; gap: 14px; align-content: start; padding-top: 12px; font-family: var(--f-mono); font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--c-text-2-inv); }
  .shop-hero__rail--right { text-align: right; }
  .shop-hero__rail-label { font-size: 10px; letter-spacing: .14em; color: var(--c-text-2); border-bottom: 1px solid var(--c-line-inv); padding-bottom: 10px; }
  .shop-hero__mobrail { display: none; }
}

/* ---------- Три входи ---------- */
.entry__grid { grid-template-columns: minmax(0, 1fr); }
.entry-card { padding: var(--card-pad); display: grid; gap: 16px; align-content: start; min-height: clamp(220px, 22vw, 300px); }
.entry-card__n { font-family: var(--f-mono); font-size: 11px; letter-spacing: .1em; color: var(--c-red); }
.entry-card h3 { max-width: 18ch; }
.entry-card p { color: var(--c-text-2); font-size: 15px; line-height: 1.6; text-wrap: pretty; }
.entry-card .link-arrow { margin-top: auto; }
@media (min-width: 768px) { .entry__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

/* ---------- Діагноз: 4 ситуації ---------- */
.diag__intro { display: grid; gap: 16px; max-width: var(--measure); }
.sitx__grid { margin-top: clamp(32px, 4vw, 48px); grid-template-columns: minmax(0, 1fr); }
.sitx-card { padding: var(--card-pad); display: grid; gap: 14px; align-content: start; min-height: 200px; }
.sitx-card__n { font-family: var(--f-mono); font-size: 10px; letter-spacing: .14em; text-transform: uppercase; color: var(--c-red); }
.sitx-card h3 { font-family: var(--f-display); font-weight: 500; font-size: clamp(20px, 2vw, 26px); line-height: 1.15; letter-spacing: -.02em; max-width: 16ch; }
.sitx-card p { font-size: 14px; color: var(--c-text-2-inv); line-height: 1.6; text-wrap: pretty; }
@media (min-width: 640px) { .sitx__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1280px) { .sitx__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }

/* ---------- Доказ без цифр ---------- */
.proof__statement { font-family: var(--f-display); font-weight: 500; font-size: clamp(30px, 4vw, 60px); line-height: 1.1; letter-spacing: -.02em; max-width: 22ch; text-wrap: balance; }
.proof__statement span { color: var(--c-red); }
.proof__text { display: grid; gap: 16px; max-width: var(--measure); color: var(--c-text-2-inv); margin-top: clamp(24px, 3vw, 40px); }
.proof__grid { margin-top: clamp(36px, 4.6vw, 64px); grid-template-columns: minmax(0, 1fr); }
.proof-card { padding: var(--card-pad); display: grid; gap: 14px; align-content: start; min-height: 200px; }
.proof-card__n { font-family: var(--f-mono); font-size: 11px; letter-spacing: .1em; color: var(--c-red); }
.proof-card h3 { font-family: var(--f-display); font-weight: 500; font-size: 20px; letter-spacing: -.01em; }
.proof-card p { font-size: 14px; color: var(--c-text-2-inv); line-height: 1.6; }
.proof__since { margin-top: clamp(28px, 3.4vw, 44px); border-top: 1px solid var(--c-line-inv); padding-top: 20px; font-family: var(--f-mono); font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--c-text-2); }
@media (min-width: 768px) { .proof__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1280px) { .proof__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }

/* ---------- Де шукають проблему (redyzayn) — леджер ✕/→ ---------- */
.mislook__grid { margin-top: clamp(24px, 3vw, 40px); grid-template-columns: minmax(0, 1fr); }
.mislook { padding: var(--card-pad); display: grid; gap: 12px; align-content: start; background: var(--c-white); }
.mislook__n { font-size: 11px; letter-spacing: .1em; color: var(--c-text-2); margin-bottom: 4px; }
.mislook__bad, .mislook__good { display: flex; align-items: baseline; gap: 12px; margin: 0; font-family: var(--f-display); font-weight: 500; font-size: 20px; line-height: 1.3; letter-spacing: -.01em; }
.mislook__bad { color: var(--c-text-2); text-decoration: line-through; text-decoration-thickness: 1px; }
.mislook__bad span, .mislook__good span { font-family: var(--f-mono); font-size: 14px; text-decoration: none; flex: none; }
.mislook__bad span { color: var(--c-text-2); }
.mislook__good span { color: var(--c-red); }
.mislook__d { margin: 4px 0 0; font-size: 14px; line-height: 1.6; color: var(--c-text-2); max-width: 40ch; text-wrap: pretty; }
@media (min-width: 768px) { .mislook__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

/* ---------- Сигнали (redyzayn) — леджер із висновком ---------- */
.sig__rows { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--c-line); }
.sig-row { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px 24px; padding: clamp(24px, 3vw, 36px) 0; border-bottom: 1px solid var(--c-line); transition: transform .2s ease; }
.sig-row:hover { transform: translateX(16px); }
.sig-row__n { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--c-red); padding-top: 6px; }
.sig-row__body h3 { font-family: var(--f-display); font-weight: 500; font-size: clamp(20px, 2.2vw, 26px); line-height: 1.2; letter-spacing: -.015em; margin: 0 0 10px; }
.sig-row__body p { margin: 0; font-size: 15px; line-height: 1.6; color: var(--c-text-2); max-width: 52ch; text-wrap: pretty; }
.sig-row__means { margin: 0; display: flex; align-items: baseline; gap: 12px; font-family: var(--f-mono); font-size: 12px; letter-spacing: .06em; text-transform: uppercase; line-height: 1.5; }
.sig-row__means .mono { color: var(--c-red); flex: none; }
@media (min-width: 1024px) {
  .sig-row { grid-template-columns: 140px minmax(0, 1fr) 300px; position: relative; border-left: 1px solid var(--c-line); border-right: 1px solid var(--c-line); }
  .sig-row__n { padding-left: 36px; }
  .sig-row__body { padding-left: 36px; }
  .sig-row__means { justify-self: end; padding-top: 6px; padding-left: 36px; padding-right: 36px; }
  .sig-row::before, .sig-row::after { content: ""; position: absolute; top: 0; bottom: 0; width: 1px; background: var(--c-line); pointer-events: none; }
  .sig-row::before { left: 152px; }
  .sig-row::after { right: 312px; }
}
@media (prefers-reduced-motion: reduce) { .sig-row:hover { transform: none; } }

/* Уніфікація символів ✕/→ (єдиний розмір 14px) і легенда позначень */
#risks .cmp-card__mark, .mislook__bad span, .mislook__good span, .sig-row__means .mono { font-size: 14px; }
.cmp__legend { display: flex; gap: 24px; margin: 16px 0 0; font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--c-text-2-inv); }
.cmp__legend > span { display: flex; gap: 8px; align-items: baseline; }
.cmp__legend-x { color: var(--c-text-2-inv); font-size: 14px; }
.cmp__legend-a { color: var(--c-red); font-size: 14px; }

/* Сітка 8px: вирівнювання внутрішніх відступів секції ризиків на цій сторінці */
#risks .cmp-card__row { gap: 16px; }
#risks .cmp-card { gap: 24px; }

@media (max-width: 599px) {
  .shop-hero__masthead { gap: 16px; }
  .shop-hero__masthead::before, .shop-hero__est { display: none; }
}

/* Результат (redyzayn): компактніший, жирніший меседж на 2–3 рядки */
#results .res-card__t { font-size: clamp(17px, 1.5vw, 21px); font-weight: 600; line-height: 1.25; letter-spacing: -.01em; max-width: 22ch; }
@media (max-width: 767px) { #results .res-card__t { max-width: none; } }
#results .res-card--white { background: var(--c-white) !important; color: var(--c-black); }
#results .res-card--white .res-card__label { color: var(--c-text-2); }

/* ---------- Вже обпікалися (redyzayn) — протокол у рамці ---------- */
.burned__intro { margin-bottom: clamp(32px, 4vw, 56px); display: grid; gap: clamp(20px, 2.4vw, 28px); }
.burned__quote { font-family: var(--f-display); font-weight: 600; font-size: clamp(30px, 3.8vw, 52px); line-height: 1.05; letter-spacing: -.02em; max-width: 24ch; text-wrap: balance; margin: 0; }
@media (min-width: 1024px) { .burned__quote { max-width: 34ch; } }
.burned__quote span { color: var(--c-red); }
.burned__src { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--c-text-2-inv); }
.burned__frame { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1px; background: var(--c-line-inv); border: 1px solid var(--c-line-inv); }
.burned__why { background: var(--c-black); padding: var(--card-pad); display: grid; gap: 16px; align-content: start; }
.burned__why p { margin: 0; font-size: 15px; line-height: 1.6; color: var(--c-text-2-inv); max-width: 44ch; text-wrap: pretty; }
.burned__why p.burned__why-lead { font-size: 17px; color: var(--c-white); }
.burned__why-note { align-self: end; padding-top: 24px; font-size: 10px; letter-spacing: .14em; text-transform: uppercase; color: var(--c-text-2-inv); }
.burned__rows { list-style: none; margin: 0; padding: 0; display: grid; gap: 1px; background: var(--c-line-inv); counter-reset: none; }
.burned-row { background: var(--c-black); display: grid; grid-template-columns: 40px minmax(0, 1fr); gap: 12px 20px; align-items: start; padding: clamp(20px, 2.4vw, 28px) var(--card-pad); transition: background .2s ease; }
.burned-row:hover { background: #111111; }
.burned-row__n { font-size: 12px; letter-spacing: .08em; color: var(--c-text-2-inv); padding-top: 5px; }
.burned-row__body h3 { font-family: var(--f-display); font-weight: 500; font-size: 20px; line-height: 1.3; letter-spacing: -.01em; margin: 0 0 8px; }
.burned-row__body p { margin: 0; font-size: 14px; line-height: 1.6; color: var(--c-text-2-inv); max-width: 52ch; text-wrap: pretty; }
.burned-row__fix { grid-column: 2; justify-self: start; display: inline-flex; align-items: center; gap: 10px; border: 1px solid var(--c-line-inv); padding: 9px 14px; font-size: 10px; letter-spacing: .12em; text-transform: uppercase; color: var(--c-text-2-inv); }
.burned-row__fix i { width: 6px; height: 6px; background: var(--c-white); flex: none; }
.burned__since { margin-top: clamp(28px, 3.4vw, 44px); border-top: 1px solid var(--c-line-inv); padding-top: 20px; display: flex; justify-content: space-between; gap: 24px; flex-wrap: wrap; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--c-text-2-inv); }
@media (min-width: 1024px) {
  .burned__frame { grid-template-columns: 5fr 7fr; }
  .burned-row { grid-template-columns: 56px minmax(0, 1fr) auto; }
  .burned-row__fix { grid-column: auto; justify-self: end; white-space: nowrap; }
}

/* ---------- Формати ---------- */
.fmt__grid { grid-template-columns: minmax(0, 1fr); }
.fmt-card { display: grid; align-content: start; }
.fmt-card__media { aspect-ratio: 16 / 10; border-bottom: 1px solid var(--c-line); }
.fmt-card__body { padding: var(--card-pad); display: grid; gap: 14px; align-content: start; }
.fmt-card__n { font-family: var(--f-mono); font-size: 11px; letter-spacing: .1em; color: var(--c-red); }
.fmt-card dl { margin: 0; display: grid; gap: 12px; }
.fmt-card dt { font-family: var(--f-mono); font-size: 10px; letter-spacing: .14em; text-transform: uppercase; color: var(--c-text-2); }
.fmt-card dd { margin: 4px 0 0; font-size: 14px; line-height: 1.6; color: var(--c-text-2); text-wrap: pretty; }
.fmt-card dd.fmt-card__gain { color: var(--c-black); font-weight: 500; }
.fmt__cta { margin-top: var(--s-6); display: flex; justify-content: flex-end; }
@media (min-width: 900px) { .fmt__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

/* ---------- Склад поставки: акцентна картка ---------- */
.launch-card--accent { background: var(--c-red) !important; color: var(--c-white); }
.launch-card--accent p, .launch-card--accent .mono { color: var(--c-white); }
.launch-card--accent .launch-card__dot { background: var(--c-white); }

/* ---------- Бюджет: 4 тарифи, featured ---------- */
.price__grid--4 { grid-template-columns: minmax(0, 1fr); }
@media (min-width: 700px) { .price__grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1280px) { .price__grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
/* Keep the reference modifier authoritative when ecommerce-dev.css is also loaded:
   its later, generic .price__grid rule must not turn this four-card layout into 3 columns. */
#pricing .price__grid--4 { grid-template-columns: minmax(0, 1fr); }
@media (min-width: 700px) { #pricing .price__grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1280px) { #pricing .price__grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.theme-dark .price-card { background: var(--c-black); }
.theme-dark .price-card__for, .theme-dark .price-card__hint { color: var(--c-text-2-inv); }
.price-card--featured { position: relative; border-top: 2px solid var(--c-red); }
.price-card--featured::after { content: "Рекомендуємо"; position: absolute; top: -1px; right: 0; background: var(--c-red); color: var(--c-white); font-family: var(--f-mono); font-size: 9px; letter-spacing: .14em; text-transform: uppercase; padding: 6px 12px; }
.price-card--featured .price-card__tier span:first-child { color: var(--c-red); }
.price__note { margin-top: var(--s-4); font-size: 14px; color: var(--c-text-2-inv); max-width: var(--measure); }

/* ---------- Розвиток після запуску ---------- */
.grow__statement { font-family: var(--f-display); font-weight: 600; font-size: clamp(28px, 3.6vw, 52px); line-height: 1.08; letter-spacing: -.02em; max-width: 22ch; text-wrap: balance; }
.grow__statement span { color: var(--c-red); }
.grow__grid { display: grid; gap: clamp(28px, 4vw, 64px); margin-top: clamp(28px, 3.6vw, 48px); }
.grow__text { display: grid; gap: 16px; color: var(--c-text-2); max-width: var(--measure); }
.grow__list { display: grid; gap: 0; border-top: 1px solid var(--c-black); }
.grow__list li { display: flex; gap: 16px; align-items: baseline; padding: 14px 0; border-bottom: 1px solid var(--c-line); font-size: 15px; line-height: 1.55; }
.grow__list li::before { content: ""; width: 6px; height: 6px; background: var(--c-red); flex-shrink: 0; transform: translateY(-2px); }
.grow__format { border: 1px solid var(--c-line); padding: var(--card-pad); display: grid; gap: 12px; align-content: start; }
.grow__format-price { font-family: var(--f-display); font-weight: 500; font-size: clamp(26px, 2.6vw, 36px); letter-spacing: -.02em; }
.grow__format-price span { color: var(--c-red); }
.grow__format p { font-size: 14px; color: var(--c-text-2); line-height: 1.6; }
@media (min-width: 1024px) { .grow__grid { grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); align-items: start; } }

/* ---------- Наступний крок ---------- */
.next__grid { display: grid; gap: 1px; background: var(--c-line); border: 1px solid var(--c-line); grid-template-columns: minmax(0, 1fr); }
.next__col { background: var(--c-white); padding: var(--card-pad); display: grid; gap: 20px; align-content: start; }
.next__col--full { padding: 0; background: transparent; }
.next__cal { aspect-ratio: 16 / 11; }
.next-form { display: grid; gap: 12px; }
.next-form__row { display: grid; gap: 12px; }
.next-form__methods { display: flex; flex-wrap: wrap; gap: 8px; }
.next-form__chip { font-family: var(--f-body); font-size: 13px; height: 36px; display: inline-flex; align-items: center; padding: 0 16px; border: 1px solid var(--c-line); background: none; cursor: pointer; }
.next-form__chip.is-active { border-color: var(--c-red); color: var(--c-red); }
.next-form__note { font-size: 13px; color: var(--c-text-2); }
.next__quick { margin-top: 1px; background: var(--c-black); color: var(--c-white); padding: var(--card-pad); display: grid; gap: 16px; }
.next__quick h3 { font-family: var(--f-display); font-weight: 500; font-size: clamp(20px, 2.2vw, 28px); letter-spacing: -.02em; }
.next__quick p { font-size: 14px; color: var(--c-text-2-inv); line-height: 1.6; max-width: 62ch; }
.next__quick-row { display: grid; gap: 12px; }
.next__quick-note { grid-column: 1 / -1; width: 100%; max-width: none; margin: 8px 0 0; padding-top: 14px; border-top: 1px solid var(--c-line-inv); font-size: 10px; letter-spacing: .04em; text-transform: uppercase; color: var(--c-text-2-inv); }
.next__quick-row .input { background: #111111; border-color: #4D4D4D; color: var(--c-white); }
.next__quick-row .input::placeholder { color: #999999; }
.next__quick-row .input:focus-visible { border-color: var(--c-white); }
/* CF7 adds paragraph, label, wrap and BR nodes around the approved form row.
   Flatten those presentation wrappers so the native form keeps the reference
   three-column geometry without replacing CF7's submission/validation flow. */
#quick-check .wpcf7,
#quick-check .wpcf7-form { min-width: 0; }
#quick-check > .wpcf7 { display: contents; }
#quick-check > .wpcf7 > .wpcf7-form { display: contents; }
#quick-check .wpcf7-form { display: grid; gap: 12px; align-content: start; }
#quick-check .wpcf7-form > p { display: contents; }
#quick-check > .next__quick-row > .wpcf7 { display: contents; }
#quick-check > .next__quick-row > .wpcf7 > .wpcf7-form { display: contents; }
#quick-check > .next__quick-row > .wpcf7 > .wpcf7-form > p { display: contents; }
#quick-check > .next__quick-row > .wpcf7 > .wpcf7-form br { display: none; }
#quick-check .wpcf7-form .next__quick-row { display: grid; gap: 12px; }
#quick-check .next__quick-row .wpcf7,
#quick-check .next__quick-row .wpcf7-form { display: contents; }
#quick-check .wpcf7-form .next__quick-row > p,
#quick-check .wpcf7-form .next__quick-row label { display: contents; }
#quick-check .wpcf7-form .next__quick-row br { display: none; }
#quick-check .wpcf7-form .next__quick-row .wpcf7-form-control-wrap { display: block; min-width: 0; }
#quick-check .next__quick-row .wpcf7-form-control-wrap { display: block; width: 100%; min-width: 0; }
#quick-check .next__quick-row .wpcf7-form-control-wrap input { width: 100%; box-sizing: border-box; }
#quick-check .wpcf7-form .next__quick-row .wpcf7-submit { align-self: stretch; white-space: nowrap; }
#quick-check .wpcf7-spinner { display: none; }
#quick-check .wpcf7-form .next__quick-note { grid-column: 1 / -1; width: 100%; }
#quick-check .wpcf7-response-output { grid-column: 1 / -1; margin: 0; }
.next__contacts { margin-top: var(--s-5); font-family: var(--f-mono); font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--c-text-2); display: flex; flex-wrap: wrap; gap: 8px 32px; }
@media (min-width: 900px) {
  .next__grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); }
  .next-form__row { grid-template-columns: 1fr 1fr; }
  .next__quick { grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr); align-items: center; }
  .next__quick-row { grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr) auto; }
  #quick-check .wpcf7-form .next__quick-row { grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr) auto; }
  .next__quick-note { grid-column: 1 / -1; }
}
@media (max-width: 899px) {
  #quick-check .wpcf7-form .next__quick-row { grid-template-columns: minmax(0, 1fr); }
  #quick-check .wpcf7-form .next__quick-row .wpcf7-submit { width: 100%; }
}

/* ---------- Marquee (DS 4.6) ---------- */
@keyframes sp-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.marquee{border-top:1px solid var(--c-line);border-bottom:1px solid var(--c-line);padding:20px 0;overflow:hidden;background:var(--c-white);color:var(--c-black)}
.marquee__track{display:flex;width:max-content;animation:sp-marquee 28s linear infinite}
.marquee__track:hover{animation-play-state:paused}
.marquee__row{font-family:var(--f-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--c-text-2);white-space:nowrap;padding-right:48px}
.marquee__row i{font-style:normal;color:var(--c-red)}
@media (prefers-reduced-motion:reduce){.marquee__track{animation:none}}

/* ---------- Entries v2 ---------- */
.entry-card{min-height:clamp(300px,28vw,380px);grid-template-rows:auto auto 1fr auto}
.entry-card__sol{margin-top:auto;align-self:end;border-top:1px solid var(--c-line);padding-top:16px;display:grid;gap:8px}
.entry-card > p{margin-bottom:40px}
@media(min-width:900px){.entry-card__sol p{min-height:104px}}
.entry-card__sol-label{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--c-red)}
.entry-card__sol p{font-size:16px;font-weight:500;line-height:1.6;color:var(--c-black)}
.entry-card--accent .entry-card__sol{border-top-color:rgba(255,255,255,.35)}
.entry-card--accent .entry-card__sol-label{color:var(--c-white)}
.entry-card--accent .entry-card__sol p{color:var(--c-white)}
.entry-card--accent{background:var(--c-red)!important;color:var(--c-white)}
.entry-card--accent p{color:var(--c-white)}
.entry-card--accent .entry-card__n{color:var(--c-white)}
.entry-card--accent .btn--secondary{color:var(--c-white);border-color:var(--c-white)}
.entry-card--accent .btn--secondary:hover{background:var(--c-white);color:var(--c-red)}

/* ---------- Sticky process (DS 4.2) ---------- */
.proc{display:grid;gap:clamp(32px,4vw,64px);align-items:start}
.proc__meta{display:grid;gap:20px;align-content:start}
@media(min-width:1024px){.proc{grid-template-columns:minmax(0,1fr) minmax(0,1.6fr)}.proc__meta{position:sticky;top:calc(var(--header-h) + 32px)}}
.proc__steps{border-top:1px solid var(--c-black);display:grid;margin:0;padding:0;list-style:none}
.proc-step{display:grid;grid-template-columns:56px minmax(0,1fr);gap:16px 24px;padding:clamp(24px,3vw,36px) 0;border-bottom:1px solid var(--c-line)}
.proc-step__n{font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;color:var(--c-red)}
.proc-step__body{display:grid;gap:12px}
.proc-step__t{font-family:var(--f-display);font-weight:500;font-size:clamp(19px,2vw,24px);letter-spacing:-.015em;line-height:1.25}
.proc-step__list{display:grid;gap:8px;font-size:14px;color:var(--c-text-2);margin:0;padding:0;list-style:none}
.proc-step__list li{display:flex;gap:12px;align-items:baseline}
.proc-step__list li::before{content:"";width:12px;height:1px;background:var(--c-line);flex-shrink:0;align-self:center}
.proc-step__res{border-top:1px solid var(--c-line);padding-top:12px;font-size:14px;line-height:1.6}
.proc-step__res span{display:block;font-family:var(--f-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--c-text-2);margin-bottom:6px}
.proc-step__art{font-family:var(--f-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--c-text-2)}
.proc-step__art b{color:var(--c-red);font-weight:500}
@media(max-width:767px){.proc-step{grid-template-columns:40px minmax(0,1fr)}}

/* ---------- Services rows (DS 3.3) ---------- */
.svcrows{border-top:1px solid var(--c-black)}
.svcrow{display:grid;grid-template-columns:72px minmax(0,1fr) 40px;gap:16px 24px;align-items:center;padding:24px 0;border-bottom:1px solid var(--c-line);color:inherit;transition:padding-left var(--t-fast)}
a.svcrow:hover{padding-left:16px;color:inherit}
a.svcrow:hover .svcrow__t{color:var(--c-red)}
.svcrow__n{font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;color:var(--c-text-2)}
.svcrow__t{font-family:var(--f-display);font-weight:500;font-size:clamp(20px,2.4vw,28px);letter-spacing:-.015em;margin:0}
.svcrow__x{font-family:var(--f-mono);font-size:16px;text-align:right;color:var(--c-red)}
.svcrow--open{grid-template-columns:72px minmax(0,1.2fr) minmax(0,1fr) 40px;align-items:start}
.svcrow--open .svcrow__n{color:var(--c-red)}
.svcrow__desc{font-size:14px;color:var(--c-text-2);line-height:1.6;max-width:44ch;margin:10px 0 0}
.svcrow__tags{display:flex;gap:8px;flex-wrap:wrap;align-content:start}
@media(max-width:899px){.svcrow,.svcrow--open{grid-template-columns:48px minmax(0,1fr) 32px}.svcrow__tags{display:none}}

/* ---------- Proof v2 ---------- */
.proof__pillar{padding:clamp(40px,6vw,96px) 0 clamp(32px,4vw,56px);text-align:center;display:grid;gap:28px;justify-items:center}
.proof__pillar .label{justify-content:center}
.proof__pillar .proof__statement{font-size:clamp(32px,4.6vw,68px);max-width:20ch;margin:0 auto}
.proof__cols{display:grid;gap:16px;max-width:1080px;margin:0 auto;color:var(--c-text-2-inv);font-size:15px;line-height:1.65}
@media(min-width:900px){.proof__cols{grid-template-columns:1fr 1fr 1fr;gap:32px}}

/* ---------- Growth cards ---------- */
.grow__grid2{grid-template-columns:minmax(0,1fr)}
.grow-card{padding:var(--card-pad);display:grid;gap:12px;align-content:start;min-height:190px}
.grow-card__n{font-family:var(--f-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--c-red)}
.grow-card h3{font-family:var(--f-display);font-weight:500;font-size:20px;letter-spacing:-.01em;margin:0}
.grow-card p{font-size:14px;color:var(--c-text-2);line-height:1.6;margin:0}
.grow-card--accent{background:var(--c-red)!important;color:var(--c-white)}
.grow-card--accent .grow-card__n,.grow-card--accent p{color:var(--c-white)}
@media(min-width:768px){.grow__grid2{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* ---------- Clients (DS 3.10) ---------- */
.clients__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--c-line-inv);border:1px solid var(--c-line-inv)}
.clients__cell{background:var(--c-black);padding:clamp(20px,2.6vw,32px);display:flex;align-items:center;gap:14px;min-height:88px}
.clients__n{font-family:var(--f-mono);font-size:10px;color:var(--c-text-2)}
@media(min-width:900px){.clients__grid{grid-template-columns:repeat(4,1fr)}}



/* ---------- Comparison table (DS 3.16) ---------- */
.cmpt{border:1px solid var(--c-line)}
.cmpt__row{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr)}
.cmpt__row+.cmpt__row{border-top:1px solid var(--c-line)}
.cmpt__head{background:var(--c-black);color:var(--c-white)}
.cmpt__head>div{padding:20px 28px;font-family:var(--f-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--c-text-2-inv)}
.cmpt__head>div+div{border-left:1px solid var(--c-line-inv)}
.cmpt__head .cmpt__us{color:var(--c-white)}
.cmpt__head .cmpt__us i{color:var(--c-red);font-style:normal}
.cmpt__crit{padding:22px 28px;font-size:15px;font-weight:500}
.cmpt__cell{padding:22px 28px;font-size:15px;line-height:1.55;border-left:1px solid var(--c-line);display:flex;gap:12px}
.cmpt__cell i{font-style:normal;font-family:var(--f-mono);font-size:11px;flex-shrink:0}
.cmpt__cell--good i{color:var(--c-red)}
.cmpt__cell--bad{color:var(--c-text-2)}
.cmpt__cell--bad i{color:var(--c-disabled)}
@media(max-width:899px){
  .cmpt__row{grid-template-columns:1fr}
  .cmpt__head{display:none}
  .cmpt__cell{border-left:none;border-top:1px solid var(--c-line);padding:16px 20px}
  .cmpt__crit{background:var(--c-black);color:var(--c-white);font-family:var(--f-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:400;padding:14px 20px}
}

/* ---------- Chain timeline (DS 3.15) ---------- */
.chain{position:relative}
.chain__line{position:absolute;top:3px;left:0;right:0;height:1px;background:var(--c-line-inv)}
.chain__grid{display:grid;gap:28px;grid-template-columns:minmax(0,1fr);margin:0;padding:0;list-style:none}
.chain__step{display:grid;gap:12px;align-content:start}
.chain__dot{width:7px;height:7px;background:var(--c-white);position:relative}
.chain__step--first .chain__dot{background:var(--c-red)}
.chain__k{font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--c-text-2-inv)}
.chain__step--first .chain__k{color:var(--c-red)}
.chain__t{font-family:var(--f-display);font-weight:500;font-size:19px;line-height:1.25}
.chain__d{font-size:14px;color:var(--c-text-2-inv);line-height:1.6;margin:0}
.chain__time{font-family:var(--f-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--c-text-2)}
@media(min-width:900px){.chain__grid{grid-template-columns:repeat(5,1fr);gap:32px}}
@media(max-width:899px){
  .chain__line{top:6px;bottom:6px;left:3px;right:auto;width:1px;height:auto}
  .chain__step{grid-template-columns:auto minmax(0,1fr);gap:8px 20px}
  .chain__dot{margin-top:5px}
  .chain__step > *:not(.chain__dot){grid-column:2}
}

/* Entries on dark */
.theme-dark .entry-card p{color:var(--c-text-2-inv)}
.theme-dark .entry-card__sol{border-top-color:var(--c-line-inv)}
.theme-dark .entry-card__sol p{color:var(--c-white)}

/* ---------- Форма заявки в блоці entries (чорна, ширина контенту) ---------- */
.entries-ask{background:var(--c-black);color:var(--c-white);margin-top:clamp(32px,4vw,48px);padding:clamp(32px,4.6vw,56px);display:grid;gap:clamp(28px,3.6vw,48px)}
.entries-ask__text{display:grid;gap:16px;align-content:start}
.entries-ask__title{font-family:var(--f-display);font-weight:500;font-size:clamp(24px,2.8vw,36px);line-height:1.15;letter-spacing:-.02em;margin:0;max-width:18ch}
.entries-ask__note{font-size:14px;color:var(--c-text-2-inv);line-height:1.6;margin:0}
.entries-ask__form{display:grid;gap:12px;align-content:start}
.entries-ask__row{display:grid;gap:12px}
.entries-ask .input,.entries-ask .textarea{background:var(--c-black);border:1px solid var(--c-line-inv);color:var(--c-white)}
.entries-ask .input:focus,.entries-ask .textarea:focus{border-color:var(--c-white)}
.entries-ask .btn{justify-self:start}
@media(min-width:900px){.entries-ask{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}.entries-ask__row{grid-template-columns:1fr 1fr}}

/* Entries-ask: DS-форма 3.12 на ширину контенту */
.entries-ask--ds{padding:0;gap:0;border:1px solid var(--c-line-inv);margin-top:0}
.entries-ask--ds .cta-final__aside{padding:clamp(32px,4vw,56px);display:flex;flex-direction:column;justify-content:space-between;gap:32px;border-bottom:1px solid var(--c-line-inv)}
.entries-ask--ds .cta-form{padding:clamp(32px,4vw,56px)}
@media(min-width:900px){.entries-ask--ds{grid-template-columns:5fr 7fr}.entries-ask--ds .cta-final__aside{border-bottom:none;border-right:1px solid var(--c-line-inv)}}

/* Знайомо?: 3 рівні колонки, без чорної картки й сірої смуги */
#situations .sit__grid{grid-template-columns:minmax(0,1fr);background:var(--c-line);border:1px solid var(--c-line);gap:1px}
#situations .sit-card{background:var(--c-white);height:100%;min-height:0}
#situations .statement{max-width:none;margin-top:0;background:var(--c-white);color:var(--c-black);border:1px solid var(--c-line);border-top:none;padding:clamp(28px,3.6vw,48px) clamp(24px,3vw,40px)}
#situations .statement span{color:var(--c-red)}
@media(min-width:900px){#situations .sit__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
/* Відступ між «Ситуація» і заголовком — удвічі менший; блок прямокутний, вертикальні відступи симетричні */
#situations .sit-card{display:grid;grid-template-rows:auto auto auto;gap:0;aspect-ratio:auto;align-content:start}
#situations .sit-card h3{margin:clamp(48px,6vw,80px) 0 0;font-weight:600}
#situations .sit-card p:not(.sit-card__n){margin-top:20px}

/* ---------- Entries: альтернатива — редакційні рядки-леджер (DS 3.3 / 4.2) ---------- */
.entryrows{border-top:1px solid var(--c-black)}
.entryrow{display:grid;grid-template-columns:minmax(0,1fr);gap:12px 32px;padding:clamp(24px,3.4vw,44px) 0;border-bottom:1px solid var(--c-line)}
.entryrow__n{font-size:11px;letter-spacing:.1em;color:var(--c-red)}
.entryrow__t{font-family:var(--f-display);font-weight:500;font-size:clamp(21px,2.2vw,28px);line-height:1.15;letter-spacing:-.015em;margin:0;max-width:16ch;text-wrap:balance}
.entryrow__d{font-size:15px;line-height:1.6;color:var(--c-text-2);margin:0;max-width:44ch;text-wrap:pretty}
.entryrow__sol{display:grid;gap:10px;align-content:start;border-left:2px solid var(--c-red);padding-left:20px}
.entryrow__sol-label{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--c-red)}
.entryrow__sol p{font-size:16px;font-weight:500;line-height:1.55;margin:0;max-width:46ch;text-wrap:pretty}
@media(min-width:1024px){
  .entryrow{grid-template-columns:64px minmax(0,1.05fr) minmax(0,.95fr) minmax(0,1.15fr);align-items:start}
  .entryrow__n{padding-top:6px}
}
@media(min-width:640px) and (max-width:1023px){
  .entryrow{grid-template-columns:48px minmax(0,1fr)}
  .entryrow__t,.entryrow__d{grid-column:2}
  .entryrow__sol{grid-column:2;margin-top:8px}
}

/* Наступний крок на чорному (разом із «Від заявки до запуску») */
.theme-dark#contact .next__grid{background:var(--c-line-inv);border-color:var(--c-line-inv)}
.theme-dark#contact .next__col{background:var(--c-black)}
.theme-dark#contact .next-form .input,.theme-dark#contact .next-form .textarea{background:var(--c-black);border-color:var(--c-line-inv);color:var(--c-white)}
.theme-dark#contact .next-form__chip{border-color:var(--c-line-inv);color:var(--c-white)}
.theme-dark#contact .next-form__chip.is-active{border-color:var(--c-red);color:var(--c-red)}
.theme-dark#contact .next__quick{border:1px solid var(--c-line-inv)}

/* ---------- Мобільна ієрархія: повітря між актами, заголовки без вузьких колонок ---------- */
@media (max-width: 1023px) {
  /* Квадрат → прямокутник (правило E.1): плитки стискаються до контенту */
  .res-card, .sit-card { aspect-ratio: auto; min-height: 0; justify-content: flex-start; gap: 14px; }
  .res-card__t, .sit-card h3 { margin-top: 0; max-width: none; }
  .offer-card { min-height: 0; }
  .offer-card__t { margin-top: 0; }
  .entry-card, .sitx-card, .proof-card, .grow-card { min-height: 0; }
}
@media (max-width: 860px) {
  #situations[style], #approach[style], #signals[style] { padding-top: clamp(48px, 12vw, 72px) !important; }
  #seo[style] { padding-top: clamp(48px, 12vw, 72px) !important; }
  #quick-check-sec[style] { padding-top: clamp(28px, 7vw, 40px) !important; }
  .sit__head .t-h2, .sit-card h3, .entryrow__t, .entryrow__d, .sig-row__body h3, .sig-row__body p { max-width: none; }
  #situations .sit-card h3 { margin-top: 20px; }
  #situations .sit-card p:not(.sit-card__n) { margin-top: 12px; }
  .sig-row { padding: 28px 0; }
  .sig-row__means { margin-top: 4px; }
  .entryrow { gap: 10px 32px; }
  .entryrow__sol { margin-top: 6px; }
}

/* Кнопки «Обрати» на одному рівні в усіх тарифах */
#pricing .price-card{display:flex;flex-direction:column}
#pricing .price-card .btn{margin-top:auto;align-self:flex-start}

/* Фактори ціни: рамка-шов, впритул до сітки тарифів */
#pricing .price__factors{border:1px solid var(--c-line-inv);margin-top:0}
#pricing .price__factors .btn--primary{background:transparent;border:1px solid var(--c-white);color:var(--c-white)}
#pricing .price__factors .btn--primary:hover{background:var(--c-white);color:var(--c-black)}



/* Знайомо?: пара зображень у шві між сіткою та statement */
#situations .sit__pair{display:grid;grid-template-columns:minmax(0,1fr);gap:0;border:1px solid var(--c-line);border-top:none}
#situations .sit__pair .media-ph{aspect-ratio:4/3;border:none;border-top:1px solid var(--c-line)}
@media(min-width:700px){#situations .sit__pair{grid-template-columns:repeat(2,minmax(0,1fr))}
#situations .sit__pair .media-ph:last-child{border-left:1px solid var(--c-line)}}
