/* mrdom.ru — лидген-слой поверх темы Reboot.
   Тему не трогаем (она обновляется), всё здесь. Правила — e:\Project\Design.
   Палитра с посчитанным контрастом: текст 16.7:1, muted 7.3:1, бренд 7.9:1,
   белый на кнопке заявки 5.5:1. */

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

:root {
  --mrd-bg: #fafaf9;
  --mrd-surface: #ffffff;
  --mrd-surface-2: #f1f0ed;
  --mrd-ink: #1c1917;
  --mrd-muted: #57534e;
  --mrd-line: #e3e1dd;
  --mrd-brand: #1b4f8a;          /* фирменный синий: ссылки, акценты */
  --mrd-brand-soft: #eaf1f8;
  --mrd-action: #b4451f;         /* действие: заявка. Отдельный цвет, чтобы кнопку было видно */
  --mrd-action-dark: #93380f;
  --mrd-action-soft: #fbede8;
  --mrd-ok: #0b6b3d;

  --mrd-r1: 8px; --mrd-r2: 12px; --mrd-r3: 16px;
  --mrd-s2: 8px; --mrd-s3: 12px; --mrd-s4: 16px; --mrd-s5: 24px;
  --mrd-s6: 32px; --mrd-s7: 48px; --mrd-s8: 64px; --mrd-s9: 96px;
  --mrd-ease: cubic-bezier(.25, 1, .5, 1);
}

/* ─── общая типографика ─────────────────────────────────────────── */
body {
  font-family: "Onest", "Segoe UI", system-ui, sans-serif !important;
  background: var(--mrd-bg);
  color: var(--mrd-ink);
  line-height: 1.6;
}
h1, h2, h3, h4, .entry-title, .post-card__title {
  font-family: "Onest", "Segoe UI", system-ui, sans-serif !important;
  letter-spacing: -.02em; line-height: 1.18; text-wrap: balance;
}
p { text-wrap: pretty; }
a { color: var(--mrd-brand); text-underline-offset: .18em; }

::selection { background: var(--mrd-action); color: #fff; }
:root { accent-color: var(--mrd-brand); caret-color: var(--mrd-brand); }
:focus-visible { outline: 2px solid var(--mrd-action); outline-offset: 2px; }

/* ─── ширина контента ───────────────────────────────────────────── */
/* У темы в body стоит sidebar-right, а самого сайдбара в разметке нет:
   контент годами жался в узкую колонку, справа висела пустота. */
.site-content-inner { display: block; }
.content-area {
  width: 100% !important; max-width: 100% !important;
  float: none !important; margin-right: 0 !important; margin-left: 0 !important;
  padding-right: 0 !important;   /* поле под сайдбар, которого нет */
}
.site-content.fixed, .site-content-inner { max-width: 1200px; margin-left: auto; margin-right: auto; }
/* лендингу нужна вся ширина; в статьях 730px оставляем — это правильная длина строки */
body.home .entry-content { max-width: 100% !important; }

/* на главной шапка страницы не нужна: у лендинга свой первый экран */
body.home .breadcrumb,
body.home .entry-title,
body.home .entry-meta,
body.home .entry-social,
body.home .entry-image { display: none !important; }

/* ─── шапка ─────────────────────────────────────────────────────── */
.site-branding__body .site-title a,
.site-branding .site-title { font-weight: 800; letter-spacing: -.03em; }
.main-navigation .menu > li > a { font-weight: 500; }

/* ─── чистка страницы статьи ────────────────────────────────────── */
/* Автор «mrdom_ru» и счётчик просмотров лидов не приносят, а доверие роняют:
   техническое имя палит движок, «57 просмотров» читается как «сюда никто не ходит». */
.entry-meta .entry-author,
.entry-meta .entry-views { display: none !important; }
.entry-meta { color: var(--mrd-muted); }
.breadcrumb, .breadcrumb * { text-transform: none !important; font-size: .8125rem; }
/* на обложке уже написан заголовок — плашка категории поверх него налезает */
.entry-image .post-card__category { display: none; }

.entry-title { font-size: clamp(1.625rem, 1.35rem + 1.37vw, 2.375rem); }
.entry-content { font-size: 1.0625rem; }
.entry-content h2 {
  font-size: clamp(1.375rem, 1.2rem + .87vw, 1.75rem);
  margin-top: var(--mrd-s7); margin-bottom: var(--mrd-s4);
}
.entry-content h3 { font-size: 1.25rem; margin-top: var(--mrd-s6); }
/* длина строки: контейнер темы даёт ~86 знаков, глаз теряет строку. Таблицы не сужаем. */
/* 730px при кегле 17 — это ~86 знаков в строке; 640px дают комфортные ~75 */
.entry-content > p, .entry-content > ul, .entry-content > ol,
.entry-content > h2, .entry-content > h3, .entry-content > blockquote {
  max-width: 640px !important;
}
.entry-content table { font-variant-numeric: tabular-nums; }
.entry-content table th { background: var(--mrd-surface-2); }
.entry-content table th, .entry-content table td { padding: 12px 14px; }   /* было 7.65px — текст лип к линиям */

/* ─── кнопки ────────────────────────────────────────────────────── */
.mrd-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: var(--mrd-s2);
  padding: 15px 26px; border-radius: var(--mrd-r2);
  background: var(--mrd-action); color: #fff !important;
  font-family: inherit; font-weight: 600; font-size: 1rem; line-height: 1.2;
  border: 0; cursor: pointer; text-decoration: none !important; text-align: center;
  transition: background .18s var(--mrd-ease), transform .12s var(--mrd-ease);
}
.mrd-btn:hover { background: var(--mrd-action-dark); color: #fff !important; }
.mrd-btn:active { transform: translateY(1px); }
.mrd-btn--ghost {
  background: transparent; color: var(--mrd-ink) !important;
  border: 1px solid var(--mrd-line);
}
.mrd-btn--ghost:hover { background: var(--mrd-surface); border-color: var(--mrd-muted); color: var(--mrd-ink) !important; }

/* ─── лендинг главной ───────────────────────────────────────────── */
.mrd { margin: 0; }
.mrd h2 { font-size: clamp(1.5rem, 1.25rem + 1.25vw, 2.125rem); margin: 0 0 var(--mrd-s4); }
.mrd section { margin: var(--mrd-s9) 0; }
.mrd section:first-child { margin-top: var(--mrd-s5); }

/* первый экран: обещание слева, форма справа */
.mrd-hero { display: grid; gap: var(--mrd-s6); align-items: start; }
@media (min-width: 900px) { .mrd-hero { grid-template-columns: 1.05fr .95fr; gap: var(--mrd-s7); } }
.mrd-hero h1 {
  font-size: clamp(1.875rem, 1.55rem + 1.63vw, 2.875rem);
  line-height: 1.06; margin: 0 0 var(--mrd-s4); font-weight: 800; text-wrap: pretty;
}
.mrd-hero__lead { font-size: 1.125rem; color: var(--mrd-muted); margin: 0 0 var(--mrd-s5); max-width: 44ch; }
.mrd-hero__facts { display: grid; gap: var(--mrd-s3); margin: var(--mrd-s5) 0 0; padding: 0; list-style: none; }
.mrd-hero__facts li { display: flex; gap: var(--mrd-s3); align-items: flex-start; color: var(--mrd-muted); }
.mrd-hero__facts li::before {
  content: ""; flex: 0 0 auto; width: 8px; height: 8px; margin-top: .55em;
  border-radius: 50%; background: var(--mrd-ok);
}
/* На телефоне форма должна быть сразу после обещания, а не через три пункта:
   display:contents распрямляет левую колонку, дальше расставляем порядок. */
@media (max-width: 899px) {
  .mrd-hero { gap: var(--mrd-s4); }   /* элементы стали прямыми детьми — gap теперь между всеми */
  .mrd-hero > div:first-child { display: contents; }
  .mrd-hero h1 { order: 1; margin-bottom: 0; }
  .mrd-hero__lead { order: 2; margin: 0; }
  .mrd-hero > div:last-child { order: 3; }
  .mrd-hero__facts { order: 4; margin-top: 0; }
}

/* направления */
.mrd-dirs { display: grid; gap: var(--mrd-s3); grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); }
.mrd-dir {
  display: block; padding: var(--mrd-s5); border: 1px solid var(--mrd-line);
  border-radius: var(--mrd-r3); background: var(--mrd-surface);
  text-decoration: none !important; color: var(--mrd-ink) !important;
  transition: border-color .18s var(--mrd-ease), transform .18s var(--mrd-ease);
}
.mrd-dir:hover { border-color: var(--mrd-brand); transform: translateY(-2px); }
.mrd-dir b { display: block; font-size: 1.0625rem; margin-bottom: var(--mrd-s2); }
.mrd-dir span { color: var(--mrd-muted); font-size: .9375rem; }

/* как устроено — путь, а не три карточки */
.mrd-path { display: grid; gap: var(--mrd-s6); counter-reset: mrdp; }
@media (min-width: 800px) { .mrd-path { grid-template-columns: repeat(3, 1fr); gap: var(--mrd-s7); } }
.mrd-path__step { position: relative; padding-top: var(--mrd-s5); border-top: 2px solid var(--mrd-line); }
.mrd-path__step::before {
  counter-increment: mrdp; content: counter(mrdp);
  position: absolute; top: var(--mrd-s3); left: 0;
  font-size: 1.75rem; font-weight: 800; color: var(--mrd-action); line-height: 1;
}
.mrd-path__step h3 { margin: var(--mrd-s6) 0 var(--mrd-s2); font-size: 1.125rem; }
.mrd-path__step p { margin: 0; color: var(--mrd-muted); }

/* статьи-строки */
.mrd-rows { display: grid; }
@media (min-width: 800px) { .mrd-rows { grid-template-columns: 1fr 1fr; column-gap: var(--mrd-s7); } }
.mrd-row {
  display: flex; align-items: baseline; gap: var(--mrd-s3);
  padding: var(--mrd-s3) 0; border-bottom: 1px solid var(--mrd-line);
}
.mrd-row a { color: var(--mrd-ink); text-decoration: none; font-weight: 500; }
.mrd-row a:hover { color: var(--mrd-brand); }
.mrd-row span { margin-left: auto; color: var(--mrd-muted); font-size: .8125rem; white-space: nowrap; }

/* карточки статей с обложкой */
.mrd-cards { display: grid; gap: var(--mrd-s5); grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); }
.mrd-card {
  display: flex; flex-direction: column; overflow: hidden;
  border: 1px solid var(--mrd-line); border-radius: var(--mrd-r3);
  background: var(--mrd-surface); text-decoration: none !important;
  transition: border-color .18s var(--mrd-ease), transform .18s var(--mrd-ease);
}
.mrd-card:hover { border-color: var(--mrd-brand); transform: translateY(-2px); }
/* тема заворачивает миниатюру в inline-span со schema-разметкой — распрямляем */
.mrd-card > span, .mrd-card span[itemprop="image"] { display: block; }
.mrd-card img {
  width: 100%; aspect-ratio: 16 / 9; object-fit: cover; display: block;
  background: var(--mrd-surface-2);
}
.mrd-card b { display: block; padding: var(--mrd-s4) var(--mrd-s5) var(--mrd-s5); font-size: 1rem; color: var(--mrd-ink); line-height: 1.3; }

/* полоса-акцент */
.mrd-band {
  background: var(--mrd-ink); color: var(--mrd-bg);
  border-radius: var(--mrd-r3); padding: var(--mrd-s7) var(--mrd-s6);
}
.mrd-band h2 { color: var(--mrd-bg); }
.mrd-band p { color: #b9b3ac; max-width: 60ch; }
.mrd-band .mrd-btn { margin-top: var(--mrd-s4); }

/* ─── форма заявки ──────────────────────────────────────────────── */
.zayavka-box {
  border: 1px solid var(--mrd-line) !important; border-left: 1px solid var(--mrd-line) !important;
  border-radius: var(--mrd-r3) !important;
  background: var(--mrd-surface) !important;
  padding: var(--mrd-s6) !important; margin: var(--mrd-s7) 0 !important;
  /* либо рамка, либо тень: волосяная рамка под широкой тенью — типовой признак
     сгенерированного интерфейса. Здесь фон светлый, рамка честнее. */
}
.mrd-hero .zayavka-box { margin-top: 0 !important; }
.zayavka-title { font-size: 1.375rem; font-weight: 700; color: var(--mrd-ink); letter-spacing: -.02em; margin-bottom: var(--mrd-s2); }
.zayavka-sub { color: var(--mrd-muted); line-height: 1.5; margin-bottom: var(--mrd-s5); }
.zayavka-form { display: grid; gap: var(--mrd-s3); max-width: none; }
.zayavka-agree { display: flex; gap: var(--mrd-s2); align-items: flex-start; line-height: 1.4; font-size: .8125rem; color: var(--mrd-muted); }
.zayavka-agree input { margin-top: 3px; flex: 0 0 auto; }
.zayavka-form input[type="text"],
.zayavka-form input[type="tel"],
.zayavka-form textarea {
  padding: 14px 16px !important; font-size: 16px !important;
  border: 1px solid var(--mrd-line) !important; border-radius: var(--mrd-r2) !important;
  background: var(--mrd-bg) !important; color: var(--mrd-ink) !important;
  font-family: inherit !important;
}
.zayavka-form input::placeholder, .zayavka-form textarea::placeholder { color: #8a8580 !important; }
.zayavka-form input:focus, .zayavka-form textarea:focus {
  outline: 2px solid var(--mrd-action); outline-offset: 1px; border-color: var(--mrd-action) !important;
}
.zayavka-form button[type="submit"] {
  background: var(--mrd-action) !important;
  /* цвет текста был инлайновым и потерялся вместе с инлайн-стилями:
     чёрный на терракоте даёт 3.8:1, белый — 5.5:1 */
  color: #fff !important; border: 0 !important; cursor: pointer;
  border-radius: var(--mrd-r2) !important;
  padding: 16px 24px !important; font-size: 1.0625rem !important; font-weight: 600 !important;
  font-family: inherit !important; transition: background .18s var(--mrd-ease);
}
.zayavka-form button[type="submit"]:hover { background: var(--mrd-action-dark) !important; }
.zayavka-note { color: var(--mrd-muted) !important; }

/* быстрый выбор работ — чтобы человек не думал, что писать */
.mrd-chips { display: flex; flex-wrap: wrap; gap: var(--mrd-s2); }
.mrd-chip {
  padding: 8px 14px; border: 1px solid var(--mrd-line); border-radius: 999px;
  background: var(--mrd-bg); color: var(--mrd-muted); font-size: .875rem;
  font-family: inherit; cursor: pointer; transition: all .15s var(--mrd-ease);
}
.mrd-chip:hover { border-color: var(--mrd-action); color: var(--mrd-ink); }
.mrd-chip.is-on { background: var(--mrd-action-soft); border-color: var(--mrd-action); color: var(--mrd-action); font-weight: 600; }

/* ─── липкая кнопка на телефоне ─────────────────────────────────── */
/* Весь трафик тут мобильный, а форма — внизу длинной статьи. */
.mrd-sticky {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 90;
  display: none; gap: var(--mrd-s3); align-items: center;
  padding: 10px 12px calc(10px + env(safe-area-inset-bottom));
  background: color-mix(in srgb, var(--mrd-surface) 94%, transparent);
  backdrop-filter: blur(10px);
  border-top: 1px solid var(--mrd-line);
}
.mrd-sticky .mrd-btn { flex: 1; padding: 14px 18px; }
.mrd-sticky__note { font-size: .75rem; color: var(--mrd-muted); line-height: 1.25; max-width: 40%; }
@media (max-width: 900px) { .mrd-sticky { display: flex; } body { padding-bottom: 76px; } }

/* ─── подвал ────────────────────────────────────────────────────── */
.mrd-foot {
  background: var(--mrd-ink); color: var(--mrd-bg);
  padding: var(--mrd-s8) 0; margin-top: var(--mrd-s9);
}
.mrd-foot__in {
  max-width: 1200px; margin: 0 auto; padding: 0 var(--mrd-s4);
  display: grid; gap: var(--mrd-s6);
}
@media (min-width: 800px) { .mrd-foot__in { grid-template-columns: 1.2fr 1fr 1fr; gap: var(--mrd-s7); } }
.mrd-foot b { display: block; font-size: 1.0625rem; margin-bottom: var(--mrd-s3); }
.mrd-foot p, .mrd-foot li { color: #b9b3ac; }
.mrd-foot ul { list-style: none; margin: 0; padding: 0; }
.mrd-foot li { margin: var(--mrd-s2) 0; }
.mrd-foot a { color: var(--mrd-bg); text-decoration: none; }
.mrd-foot a:hover { text-decoration: underline; }

/* родной подвал темы оставляем только под копирайт */
.footer-info { display: none; }

/* ─── движение ──────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .01ms !important; transition-duration: .01ms !important;
    scroll-behavior: auto !important;
  }
}
