/*
Theme Name: Крымский Гектар — Блог
Theme URI: https://xn----8sbiimgfafn7bjev9j.xn--p1ai/blog
Description: Блог «Крымский гектар». Шапка и подвал — один в один с основным сайтом (экспорт Tilda), контент в фирменном стиле КГ.
Author: Крымский Гектар
Version: 1.0
*/

/* ==========================================================================
   Всё оформление контента изолировано в .kg-blog-main, чтобы не конфликтовать
   со стилями шапки и подвала Тильды. Только фирменные токены КГ.
   ========================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Unbounded:wght@400;500;600;700&family=Inter:wght@400;500;600;700&display=swap');

.kg-blog-main {
  --red: #ED3C24;
  --ink: #272524;
  --ink2: #252525;
  --muted: #6b6b6b;
  --bg: #ffffff;
  --bg-alt: #f6f6f6;
  --border: #e3e3e3;
  --blue: #2C9CED;
  --radius: 30px;
  --radius-md: 20px;

  font-family: 'Inter', -apple-system, Segoe UI, sans-serif;
  color: var(--ink2);
  background: var(--bg);
  /* отступ сверху под фиксированную шапку Тильды */
  padding-top: 100px;
  min-height: 60vh;
}
@media (max-width: 900px) { .kg-blog-main { padding-top: 80px; } }

.kg-wrap { max-width: 1200px; margin: 0 auto; padding: 0 20px; }
.kg-blog-main h1, .kg-blog-main h2, .kg-blog-main h3 {
  font-family: 'Unbounded', sans-serif; color: var(--ink); letter-spacing: .02em; line-height: 1.15;
}

/* ── ШАПКА РАЗДЕЛА ───────────────────────────────────────────────────────── */
.kg-intro { padding: 48px 0 32px; }
.kg-intro h1 { font-size: 40px; font-weight: 600; text-transform: uppercase; margin: 0 0 16px; max-width: 20em; }
.kg-intro p { font-size: 18px; line-height: 1.5; color: var(--ink2); max-width: 46em; margin: 0; }
@media (max-width: 900px) { .kg-intro h1 { font-size: 26px; } .kg-intro p { font-size: 16px; } }

/* ── СЕТКА СТАТЕЙ ────────────────────────────────────────────────────────── */
.kg-grid { display: grid; gap: 34px; grid-template-columns: repeat(auto-fill, minmax(min(300px,100%),1fr)); padding-bottom: 72px; }
/* детерминированные колонки: мобайл 1 (auto-fill), планшет 2, десктоп 3 */
@media (min-width: 620px) and (max-width: 1000px) { .kg-grid { grid-template-columns: 1fr 1fr; } }
@media (min-width: 1001px) { .kg-grid { grid-template-columns: repeat(3, 1fr); } }
.kg-card { display: flex; flex-direction: column; background: #fff; border-radius: var(--radius); box-shadow: 0 2px 17px rgba(0,0,0,.1); overflow: hidden; padding: 3px; transition: box-shadow .15s ease; }
.kg-card:hover { box-shadow: 0 2px 17px rgba(84,138,174,.25); }
.kg-card__media { height: 210px; border-radius: 27px; overflow: hidden; background: #d9d9d9 center/cover no-repeat; }
.kg-card__body { display: flex; flex-direction: column; gap: 14px; padding: 20px 17px 18px; flex: 1; }
.kg-card__rubric { align-self: flex-start; font-size: 13px; letter-spacing: .04em; text-transform: uppercase; color: #fff; background: var(--blue); border-radius: 10px; padding: 4px 14px; }
.kg-card__title { font-size: 20px; font-weight: 500; text-transform: uppercase; margin: 0; }
.kg-card__title a { color: var(--ink); text-decoration: none; }
.kg-card__title a:hover { color: var(--red); }
.kg-card__excerpt { font-size: 15px; line-height: 1.5; color: var(--ink2); margin: 0; }
.kg-card__more { margin-top: auto; font-size: 14px; font-weight: 600; text-transform: uppercase; letter-spacing: .04em; color: var(--red); text-decoration: none; }

/* ── ПАГИНАЦИЯ ───────────────────────────────────────────────────────────── */
.kg-pagination { display: flex; gap: 10px; justify-content: center; padding: 0 0 60px; flex-wrap: wrap; }
.kg-pagination a, .kg-pagination span { min-width: 46px; height: 46px; display: inline-flex; align-items: center; justify-content: center; padding: 0 16px; border-radius: 200px; background: var(--bg-alt); color: var(--ink2); text-decoration: none; }
.kg-pagination .current { background: var(--red); color: #fff; }

/* ── СТАТЬЯ ──────────────────────────────────────────────────────────────── */
.kg-article { padding: 32px 0 60px; }
.kg-crumbs { font-size: 13px; color: var(--muted); margin-bottom: 20px; }
.kg-crumbs a { color: var(--muted); text-decoration: none; } .kg-crumbs a:hover { color: var(--red); }
/* крошки списка/архива/поиска идут сразу под hero — даём воздух, чтобы не липли */
.kg-wrap > .kg-crumbs { margin-top: 40px; }
@media (max-width: 900px) { .kg-wrap > .kg-crumbs { margin-top: 28px; } }
.kg-article h1 { font-size: 36px; font-weight: 600; text-transform: uppercase; margin: 0 0 16px; max-width: 22em; }
.kg-article__meta { font-size: 14px; color: var(--muted); margin-bottom: 24px; }
.kg-article__cover { border-radius: var(--radius-md); overflow: hidden; margin: 0 0 32px; aspect-ratio: 16/9; background: #d9d9d9 center/cover no-repeat; }
.kg-prose { max-width: 760px; font-size: 18px; line-height: 1.7; color: var(--ink2); }
.kg-prose > * + * { margin-top: 20px; }
.kg-prose h2 { font-size: 28px; font-weight: 500; text-transform: uppercase; margin: 40px 0 0; }
.kg-prose h3 { font-size: 20px; font-weight: 500; text-transform: uppercase; margin: 32px 0 0; }
.kg-prose a { color: var(--red); text-decoration: underline; text-underline-offset: 3px; }
.kg-prose img { max-width: 100%; border-radius: var(--radius-md); }
.kg-prose ul, .kg-prose ol { padding-left: 24px; display: flex; flex-direction: column; gap: 10px; }
.kg-prose blockquote { margin: 0; padding: 20px 24px; background: var(--bg-alt); border-left: 3px solid var(--red); border-radius: var(--radius-md); }
@media (max-width: 900px) { .kg-article h1 { font-size: 24px; } .kg-prose { font-size: 17px; } }

/* ── ПУСТО ───────────────────────────────────────────────────────────────── */
.kg-empty { padding: 40px 0 80px; font-size: 18px; color: var(--muted); }

/* ==========================================================================
   КОНВЕРСИОННАЯ СТРАНИЦА СПИСКА (v2)
   ========================================================================== */

/* ── HERO ────────────────────────────────────────────────────────────── */
/* Герой уходит на всю ширину под фиксированную шапку Тильды (как на «Акциях»):
   отрицательным margin вытягиваем его вверх на высоту резерва шапки (padding-top
   у .kg-blog-main = 100px), а сам контент героя опускаем внутренним padding-top,
   чтобы заголовок не залезал под плавающее меню. */
.kg-hero {
  position: relative; margin-top: -100px; padding: 0;
  background: #1a1a1a center/cover no-repeat;
  color: #fff;
}
.kg-hero::before { content:''; position:absolute; inset:0; background:linear-gradient(180deg, rgba(20,20,20,.55) 0%, rgba(20,20,20,.35) 40%, rgba(20,20,20,.75) 100%); }
.kg-hero__in { position: relative; display:flex; flex-direction:column; align-items:flex-start; gap:18px; padding:150px 20px 72px; max-width:1200px; margin:0 auto; }
.kg-eyebrow { display:inline-flex; padding:5px 16px; border-radius:100px; background:var(--blue); color:#fff; font-size:13px; letter-spacing:.06em; text-transform:uppercase; }
.kg-hero__title { color:#fff !important; font-size:48px; font-weight:600; text-transform:uppercase; line-height:1.12; margin:0; max-width:18em; }
.kg-hero__lead { font-size:19px; line-height:1.5; color:#fff; max-width:44em; margin:0; opacity:.95; }
@media (max-width:900px){ .kg-hero{margin-top:-80px} .kg-hero__title{font-size:30px} .kg-hero__lead{font-size:16px} .kg-hero__in{padding:118px 20px 44px} }

/* поиск */
.kg-search { display:flex; width:100%; max-width:520px; margin-top:8px; background:#fff; border-radius:100px; overflow:hidden; box-shadow:0 6px 24px rgba(0,0,0,.18); }
.kg-search input { flex:1; border:0; outline:0; padding:0 24px; height:56px; font-size:16px; font-family:'Inter',sans-serif; color:var(--ink); background:transparent; }
.kg-search button { border:0; width:64px; background:var(--red); color:#fff; cursor:pointer; display:flex; align-items:center; justify-content:center; }
.kg-search button:hover { filter:brightness(1.05); }

/* ── КНОПКИ (сигнатурные) ────────────────────────────────────────────── */
.kg-btn { display:inline-flex; align-items:center; gap:8px; height:55px; padding:0 8px 0 6px; border-radius:100px; font-family:'Inter',sans-serif; font-weight:500; font-size:16px; text-transform:uppercase; letter-spacing:-.01em; text-decoration:none; cursor:pointer; transition:filter .15s ease, background .15s ease, color .15s ease; }
.kg-btn__badge { width:44px; height:44px; flex-shrink:0; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; }
.kg-btn__label { padding:0 16px 0 6px; }
.kg-btn--primary { background:var(--red); color:#fff; } .kg-btn--primary .kg-btn__badge{ background:#FF8574; color:#fff; }
.kg-btn--primary:hover { filter:brightness(1.06); }
.kg-btn--outline { background:transparent; color:var(--red); box-shadow:inset 0 0 0 1px var(--red); } .kg-btn--outline .kg-btn__badge{ background:var(--red); color:#fff; }
.kg-btn--outline:hover { background:var(--red); color:#fff; } .kg-btn--outline:hover .kg-btn__badge{ background:#fff; color:var(--red); }
.kg-btn--onred { background:#fff; color:var(--red); } .kg-btn--onred .kg-btn__badge{ background:var(--red); color:#fff; }
.kg-btn--onred:hover { filter:brightness(.97); }

/* ── ФИЛЬТРЫ-РУБРИКИ ─────────────────────────────────────────────────── */
.kg-cats { display:flex; gap:10px; flex-wrap:wrap; padding:44px 0 12px; }
.kg-cat { display:inline-flex; align-items:center; height:44px; padding:0 20px; border-radius:100px; background:var(--bg-alt); color:var(--ink2); font-size:15px; text-decoration:none; white-space:nowrap; transition:background .15s,color .15s; }
.kg-cat:hover { background:#FFDED9; color:var(--red); }
.kg-cat.is-active { background:var(--red); color:#fff; }
@media (max-width:700px){ .kg-cats{ flex-wrap:nowrap; overflow-x:auto; scrollbar-width:none; margin-inline:-20px; padding:24px 20px 8px; } .kg-cats::-webkit-scrollbar{display:none} .kg-cat{flex:0 0 auto} }

/* ── ПЛАШКА РУБРИКИ ──────────────────────────────────────────────────── */
.kg-tag { display:inline-flex; align-self:flex-start; padding:4px 14px; border-radius:10px; background:var(--blue); color:#fff; font-size:13px; letter-spacing:.04em; text-transform:uppercase; }
.kg-tag--onmedia { position:absolute; left:12px; top:12px; }

/* ── ИЗБРАННАЯ СТАТЬЯ ────────────────────────────────────────────────── */
.kg-featured { display:grid; grid-template-columns:1.15fr 1fr; gap:0; margin:32px 0 48px; background:#fff; border-radius:var(--radius); overflow:hidden; box-shadow:0 2px 17px rgba(0,0,0,.1); text-decoration:none; transition:box-shadow .15s; }
.kg-featured:hover { box-shadow:0 8px 30px rgba(84,138,174,.28); }
.kg-featured__media { min-height:340px; background:#d9d9d9 center/cover no-repeat; }
.kg-featured__body { padding:40px; display:flex; flex-direction:column; align-items:flex-start; gap:14px; }
.kg-featured__label { font-size:13px; letter-spacing:.08em; text-transform:uppercase; color:var(--red); font-weight:600; }
.kg-featured__title { font-size:32px; font-weight:600; text-transform:uppercase; color:var(--ink); margin:0; line-height:1.15; }
.kg-featured__excerpt { font-size:17px; line-height:1.5; color:var(--ink2); margin:0; }
.kg-featured__foot { margin-top:auto; width:100%; display:flex; align-items:center; justify-content:space-between; gap:16px; }
.kg-featured__meta { font-size:14px; color:var(--muted); }
.kg-featured__more { font-size:14px; font-weight:600; text-transform:uppercase; letter-spacing:.04em; color:var(--red); white-space:nowrap; }
@media (max-width:900px){ .kg-featured{ grid-template-columns:1fr; } .kg-featured__media{min-height:220px} .kg-featured__body{padding:24px} .kg-featured__title{font-size:24px} }

/* ── КАРТОЧКИ ────────────────────────────────────────────────────────── */
.kg-card__media { position:relative; }
.kg-card__foot { display:flex; align-items:center; justify-content:space-between; margin-top:auto; padding-top:4px; }
.kg-card__meta { font-size:13px; color:var(--muted); }

/* ── КОНВЕРСИОННАЯ ВРЕЗКА В ЛЕНТЕ ────────────────────────────────────── */
.kg-promo { display:flex; flex-direction:column; justify-content:center; gap:16px; padding:30px; border-radius:var(--radius); background:linear-gradient(135deg,#ED3C24,#c9301b); color:#fff; }
.kg-promo h3 { color:#fff; font-family:'Unbounded',sans-serif; font-size:24px; font-weight:600; text-transform:uppercase; line-height:1.15; margin:0; }
.kg-promo p { font-size:15px; line-height:1.5; margin:0; opacity:.95; }
.kg-promo .kg-btn { align-self:flex-start; }

/* ── НИЖНИЙ CTA ──────────────────────────────────────────────────────── */
.kg-bottom { background:var(--bg-alt); margin-top:20px; }
.kg-bottom__in { display:flex; align-items:center; justify-content:space-between; gap:40px; padding:56px 20px; flex-wrap:wrap; }
.kg-bottom__text { flex:1; min-width:280px; }
.kg-bottom__text h2 { font-size:32px; font-weight:600; text-transform:uppercase; margin:0 0 12px; }
.kg-bottom__text p { font-size:16px; line-height:1.55; color:var(--ink2); margin:0; max-width:46em; }
.kg-bottom__actions { display:flex; flex-direction:column; gap:14px; }
@media (max-width:900px){ .kg-bottom__text h2{font-size:24px} .kg-bottom__actions{width:100%} .kg-bottom__actions .kg-btn{width:100%} }

/* ── SEO-БЛОК ────────────────────────────────────────────────────────── */
.kg-seo { padding:56px 0 72px; margin-top:24px; border-top:1px solid var(--border); }
.kg-seo h2 { font-size:26px; font-weight:600; text-transform:uppercase; margin:0 0 18px; max-width:24em; }
.kg-seo p { font-size:15px; line-height:1.7; color:var(--muted); margin:0 0 14px; max-width:70em; }
.kg-seo a { color:var(--red); text-decoration:underline; text-underline-offset:2px; }
@media (max-width:900px){ .kg-seo h2{font-size:20px} }


/* ==========================================================================
   ФИРМЕННЫЙ ПОДВАЛ (footer.php)
   ========================================================================== */
.kgf-cta { background:linear-gradient(135deg,#ED3C24,#c9301b); color:#fff; }
.kgf-cta__in { display:grid; grid-template-columns:1.1fr .9fr; gap:48px; align-items:center; padding:56px 20px; }
.kgf-cta__text h2 { color:#fff; font-family:'Unbounded',sans-serif; font-size:30px; font-weight:600; text-transform:uppercase; line-height:1.15; margin:0 0 14px; }
.kgf-cta__text p { font-size:16px; line-height:1.55; margin:0 0 22px; opacity:.95; }
.kgf-cta__contacts { display:flex; align-items:center; gap:24px; flex-wrap:wrap; }
.kgf-phone { font-family:'Unbounded',sans-serif; font-size:22px; color:#fff; text-decoration:none; }
.kgf-msgs { display:flex; gap:10px; }
.kgf-msgs a { color:#fff; border:1px solid rgba(255,255,255,.5); border-radius:100px; padding:8px 18px; font-size:14px; text-decoration:none; }
.kgf-msgs a:hover { background:#fff; color:var(--red); }

.kgf-form { background:#fff; border-radius:24px; padding:28px; display:flex; flex-direction:column; gap:14px; box-shadow:0 10px 40px rgba(0,0,0,.18); }
.kgf-form label { display:flex; flex-direction:column; gap:6px; font-size:13px; color:var(--muted); }
.kgf-form input { height:52px; border:1px solid var(--border); border-radius:100px; padding:0 20px; font-size:16px; font-family:'Inter',sans-serif; color:var(--ink); outline:none; }
.kgf-form input:focus { border-color:var(--red); box-shadow:0 0 0 4px rgba(237,60,36,.15); }
.kgf-form .kg-btn { align-self:stretch; justify-content:center; }
.kgf-consent { font-size:12px; color:var(--muted); line-height:1.4; }
.kgf-consent a { color:var(--red); }
.kgf-form__ok { margin:0; font-size:14px; color:#127a2f; font-weight:600; }
@media (max-width:900px){ .kgf-cta__in{ grid-template-columns:1fr; gap:28px; padding:40px 20px; } .kgf-cta__text h2{font-size:23px} }

.kgf { background:#201e1d; color:#cfcccb; padding:56px 0 28px; }
.kgf__grid { display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr 1.1fr; gap:36px; }
.kgf__col h3 { font-family:'Unbounded',sans-serif; font-size:15px; font-weight:500; letter-spacing:.04em; text-transform:uppercase; color:#fff; margin:0 0 16px; }
.kgf__col ul { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:10px; }
.kgf__col a { color:#cfcccb; font-size:15px; text-decoration:none; }
.kgf__col a:hover { color:#fff; }
.kgf__tagline { font-size:14px; line-height:1.6; color:#9a9694; margin:0 0 18px; max-width:26em; }
.kgf__socials { display:flex; flex-wrap:wrap; gap:10px; }
.kgf__socials a { color:#cfcccb; border:1px solid #3a3735; border-radius:100px; padding:7px 16px; font-size:13px; text-decoration:none; }
.kgf__socials a:hover { border-color:var(--red); color:#fff; }
.kgf__phone { display:inline-block; font-family:'Unbounded',sans-serif; font-size:20px; color:#fff; text-decoration:none; margin-bottom:14px; }
.kgf__note { margin:0 0 12px; font-size:14px; line-height:1.4; color:#cfcccb; }
.kgf__note span { display:block; font-size:12px; color:#7d7a78; margin-bottom:2px; text-transform:uppercase; letter-spacing:.04em; }
.kgf__legal { margin-top:36px; padding-top:22px; border-top:1px solid #3a3735; display:flex; flex-direction:column; gap:8px; }
.kgf__legal p { margin:0; font-size:13px; color:#7d7a78; line-height:1.5; }
.kgf__legal a { color:#9a9694; }
@media (max-width:1000px){ .kgf__grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:560px){ .kgf__grid{ grid-template-columns:1fr; } }

/* ── Хлебные крошки: разделитель ─────────────────────────────────────── */
.kg-crumbs__sep { margin: 0 8px; opacity: .5; }

/* ── КВИЗ «Подобрать участок» ────────────────────────────────────────── */
.kg-quiz { margin: 8px 0 40px; border-radius: var(--radius); overflow: hidden;
  background: linear-gradient(135deg, #1f6fb2, #2C9CED); color: #fff; }
.kg-quiz__in { display: grid; grid-template-columns: .9fr 1.1fr; gap: 32px; align-items: center; padding: 40px; }
.kg-quiz__eyebrow { display: inline-block; font-size: 12px; letter-spacing: .08em; text-transform: uppercase; font-weight: 600; background: rgba(255,255,255,.2); padding: 5px 12px; border-radius: 100px; margin-bottom: 14px; }
.kg-quiz__title { font-family: 'Unbounded', sans-serif; font-size: 28px; font-weight: 600; text-transform: uppercase; line-height: 1.15; color: #fff; margin: 0 0 12px; }
.kg-quiz__sub { font-size: 16px; line-height: 1.5; opacity: .95; margin: 0; }
.kg-quiz__body { background: #fff; border-radius: 20px; padding: 26px; color: var(--ink2); box-shadow: 0 24px 60px -30px rgba(0,0,0,.5); }
.kg-quiz__bar { height: 6px; border-radius: 100px; background: var(--bg-alt); overflow: hidden; margin-bottom: 20px; }
.kg-quiz__barfill { display: block; height: 100%; background: var(--red); transition: width .3s ease; }
.kg-quiz__step { display: none; }
.kg-quiz__step.is-active { display: block; animation: kgFade .25s ease; }
@keyframes kgFade { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
.kg-quiz__q { font-family: 'Unbounded', sans-serif; font-size: 17px; font-weight: 500; color: var(--ink); margin: 0 0 16px; }
.kg-quiz__opts { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.kg-quiz__opts button { text-align: left; padding: 14px 16px; border: 1px solid var(--border); border-radius: 14px; background: #fff; font-family: 'Inter', sans-serif; font-size: 15px; color: var(--ink); cursor: pointer; transition: border-color .15s, background .15s, color .15s; }
.kg-quiz__opts button:hover { border-color: var(--red); background: #FFF3F1; color: var(--red); }
.kg-quiz__form input { width: 100%; height: 52px; padding: 0 18px; margin-bottom: 12px; border: 1px solid var(--border); border-radius: 14px; font-size: 16px; font-family: 'Inter', sans-serif; box-sizing: border-box; }
.kg-quiz__form input:focus { outline: none; border-color: var(--red); }
.kg-quiz__form .kg-btn { width: 100%; justify-content: center; }
.kg-quiz__consent { display: block; font-size: 12px; color: var(--muted); margin-top: 12px; }
.kg-quiz__consent a { color: var(--red); }
.kg-quiz__ok { color: #178a3b; font-weight: 600; margin: 14px 0 0; }
@media (max-width: 820px) {
  .kg-quiz__in { grid-template-columns: 1fr; gap: 22px; padding: 28px; }
  .kg-quiz__title { font-size: 23px; }
  .kg-quiz__opts { grid-template-columns: 1fr; }
}

/* ── ЛИД-МАГНИТ (врезка в сетке карточек) ────────────────────────────── */
.kg-lead { grid-column: 1 / -1; display: grid; grid-template-columns: 1.2fr .8fr; gap: 32px; align-items: center;
  padding: 32px 36px; border-radius: var(--radius); background: linear-gradient(135deg, #ED3C24, #c9301b); color: #fff; }
.kg-lead__badge { display: inline-block; font-size: 12px; letter-spacing: .06em; text-transform: uppercase; font-weight: 600; background: rgba(255,255,255,.2); padding: 5px 12px; border-radius: 100px; margin-bottom: 12px; }
.kg-lead__title { font-family: 'Unbounded', sans-serif; font-size: 24px; font-weight: 600; text-transform: uppercase; line-height: 1.18; color: #fff; margin: 0 0 10px; }
.kg-lead__desc { font-size: 15px; line-height: 1.5; opacity: .95; margin: 0; }
.kg-lead__form { display: flex; flex-direction: column; gap: 10px; }
.kg-lead__form input { height: 50px; padding: 0 18px; border: 0; border-radius: 14px; font-size: 16px; font-family: 'Inter', sans-serif; }
.kg-lead__form input:focus { outline: 2px solid #fff; }
.kg-lead__form .kg-btn { justify-content: center; }
.kg-lead__consent { font-size: 11px; opacity: .9; }
.kg-lead__consent a { color: #fff; text-decoration: underline; }
.kg-lead__ok { font-weight: 600; margin: 6px 0 0; }
@media (max-width: 820px) { .kg-lead { grid-template-columns: 1fr; gap: 22px; padding: 26px; } }

/* ── Квиз Marquiz (встроенный виджет) ────────────────────────────────── */
/* Квиз с подложкой (обрамление, чтобы не сливался с фоном). Врезка на всю ширину сетки. */
.kg-quiz-embed { grid-column: 1 / -1; margin: 8px 0 20px; padding: clamp(16px, 3vw, 28px);
  border-radius: var(--radius); background: linear-gradient(135deg, #eaf5fe, #f4faff); border: 1px solid #d6ecfb;
  box-shadow: 0 10px 34px -22px rgba(44,156,237,.55); }
.kg-quiz-embed div[data-marquiz-id] { min-height: 120px; }

/* ── Дата и просмотры (карточки + статья) ────────────────────────────── */
/* Мета карточки — обычный инлайн-текст; «глазок» вставлен инлайново в поток
   (vertical-align), число рядом. Пара «глазок+число» не разрывается (nowrap),
   поэтому не выбивается из строки. */
.kg-card__meta { font-size: 13px; line-height: 1.5; }
.kg-card__views, .kg-featured__meta .kg-card__views { white-space: nowrap; }
.kg-eye { display: inline-block; width: 13px; height: 13px; vertical-align: -2px; opacity: .7; }
/* Мета статьи — отдельная flex-строка (там места хватает) */
.kg-article__meta { display: flex; align-items: center; gap: 18px; flex-wrap: wrap; }
.kg-article__views { display: inline-flex; align-items: center; gap: 6px; }
.kg-article__views .kg-eye { vertical-align: 0; }

/* ==========================================================================
   ДЕТАЛЬНАЯ СТРАНИЦА СТАТЬИ (single.php) — 2 колонки, липкий сайдбар
   ========================================================================== */
/* align-items:stretch (по умолчанию) — колонка-сайдбар растягивается на высоту
   статьи, и position:sticky внутри неё реально плывёт при прокрутке. */
.kg-article-wrap { display: grid; grid-template-columns: minmax(0,1fr) 360px; gap: 48px; padding-top: 24px; }
.kg-article-main { min-width: 0; }
/* Тильдовский #allrecords имеет overflow:hidden (селектор с id — высокая специфичность),
   это ломает position:sticky в Firefox/Safari. overflow:clip клипует так же (без гориз.
   скролла), но НЕ создаёт scroll-контейнер → sticky работает. !important — перебить id. */
.t-records__overflow-hidden { overflow: clip !important; }

/* мета статьи */
.kg-article .kg-tag { display: inline-flex; margin: 0 0 14px; }
.kg-article__meta { display: flex; gap: 18px; flex-wrap: wrap; font-size: 14px; color: var(--muted); margin: 8px 0 24px; }
.kg-article__views { display: inline-flex; align-items: center; gap: 6px; }
.kg-article-main .kg-article__cover { border-radius: var(--radius-md); overflow: hidden; margin: 0 0 28px; aspect-ratio: 16/8; background: var(--bg-alt); }
.kg-article-main .kg-article__cover img { width: 100%; height: 100%; object-fit: cover; display: block; }
@media (max-width: 700px) { .kg-article-main .kg-article__cover { aspect-ratio: 16/10; } }

/* оглавление */
.kg-toc { background: var(--bg-alt); border: 1px solid var(--border); border-radius: var(--radius-md); padding: 20px 24px; margin: 0 0 32px; }
.kg-toc__title { display: block; font-family: 'Unbounded',sans-serif; font-size: 14px; text-transform: uppercase; letter-spacing: .04em; color: var(--ink); margin-bottom: 10px; }
.kg-toc__list { margin: 0; padding-left: 20px; display: flex; flex-direction: column; gap: 8px; }
.kg-toc__list a { color: var(--ink2); text-decoration: none; } .kg-toc__list a:hover { color: var(--red); }
html { scroll-behavior: smooth; }
.kg-prose h2 { scroll-margin-top: 120px; }

/* inline-CTA в тексте */
.kg-inline-cta { display: flex; align-items: center; justify-content: space-between; gap: 20px; flex-wrap: wrap;
  background: linear-gradient(135deg,#ED3C24,#c9301b); color: #fff; border-radius: var(--radius); padding: 24px 28px; margin: 34px 0; }
.kg-inline-cta__t { display: flex; flex-direction: column; gap: 4px; }
.kg-inline-cta__t strong { font-family: 'Unbounded',sans-serif; font-size: 19px; text-transform: uppercase; line-height: 1.15; }
.kg-inline-cta__t span { font-size: 14px; opacity: .95; }
.kg-inline-cta .kg-btn { flex: 0 0 auto; }

/* FAQ */
.kg-faq { margin: 44px 0 0; }
.kg-faq > h2 { font-size: 26px; font-weight: 600; text-transform: uppercase; margin: 0 0 18px; }
.kg-faq__item { border: 1px solid var(--border); border-radius: var(--radius-md); padding: 0 22px; margin-bottom: 12px; background: #fff; }
.kg-faq__item summary { cursor: pointer; list-style: none; padding: 18px 0; font-weight: 600; font-size: 17px; color: var(--ink); position: relative; padding-right: 32px; }
.kg-faq__item summary::-webkit-details-marker { display: none; }
.kg-faq__item summary::after { content: '+'; position: absolute; right: 4px; top: 50%; transform: translateY(-50%); font-size: 24px; color: var(--red); line-height: 1; }
.kg-faq__item[open] summary::after { content: '–'; }
.kg-faq__a { padding: 0 0 20px; font-size: 16px; line-height: 1.6; color: var(--ink2); }

/* блок доверия / автор */
.kg-author { display: flex; align-items: center; gap: 18px; flex-wrap: wrap; background: var(--bg-alt); border-radius: var(--radius); padding: 22px 26px; margin: 40px 0 0; }
.kg-author__logo { width: 54px; height: 54px; border-radius: 12px; object-fit: contain; background: #fff; }
.kg-author__text { flex: 1; min-width: 200px; display: flex; flex-direction: column; gap: 4px; }
.kg-author__text strong { font-family: 'Unbounded',sans-serif; text-transform: uppercase; font-size: 15px; color: var(--ink); }
.kg-author__text span { font-size: 14px; color: var(--muted); line-height: 1.4; }

/* похожие — слайдер во всю ширину (перелинковка) */
.kg-related { margin: 64px 0 0; padding-bottom: 72px; } /* padding-bottom — оторвать от подвала */
.kg-related__head { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 22px; }
.kg-related__title { font-size: 26px; font-weight: 600; text-transform: uppercase; margin: 0; }
.kg-related__nav { display: flex; gap: 8px; }
.kg-related__arrow { width: 46px; height: 46px; box-sizing: border-box; padding: 0; border-radius: 50%; border: 1px solid var(--border); background: #fff; color: var(--ink); display: inline-flex; align-items: center; justify-content: center; cursor: pointer; transition: background .15s, color .15s, border-color .15s; }
.kg-related__arrow:hover { background: var(--red); color: #fff; border-color: var(--red); }
.kg-related__track { display: flex; gap: 22px;
  overflow-x: auto; scroll-snap-type: x proximity; scroll-behavior: smooth; padding: 4px 0 8px;
  scrollbar-width: none; -ms-overflow-style: none; }
.kg-related__track::-webkit-scrollbar { display: none; height: 0; }
.kg-related__card { flex: 0 0 300px; scroll-snap-align: start; display: flex; flex-direction: column; gap: 12px; text-decoration: none;
  background: #fff; border-radius: var(--radius); box-shadow: 0 2px 17px rgba(0,0,0,.1); padding: 4px 4px 16px; transition: box-shadow .15s; }
.kg-related__card:hover { box-shadow: 0 8px 26px rgba(84,138,174,.25); }
.kg-related__media { position: relative; display: block; aspect-ratio: 16/10; border-radius: 26px; background: #d9d9d9 center/cover no-repeat; }
.kg-related__media .kg-tag { position: absolute; top: 12px; left: 12px; }
.kg-related__name { padding: 0 14px; font-size: 16px; font-weight: 500; color: var(--ink); line-height: 1.3; text-transform: uppercase; }
.kg-related__card:hover .kg-related__name { color: var(--red); }
.kg-related__more { padding: 0 14px; margin-top: auto; font-size: 13px; font-weight: 600; text-transform: uppercase; letter-spacing: .04em; color: var(--red); }
@media (max-width: 700px) { .kg-related__card { flex-basis: 78%; } .kg-related__nav { display: none; } }

/* ── ЛИПКИЙ САЙДБАР ──────────────────────────────────────────────────── */
.kg-side-sticky { position: sticky; top: 120px; display: flex; flex-direction: column; gap: 18px; }
.kg-side-promo { background: linear-gradient(135deg,#ED3C24,#c9301b); color: #fff; border-radius: var(--radius); padding: 26px; }
.kg-side-promo h3 { color: #fff; font-family: 'Unbounded',sans-serif; font-size: 20px; font-weight: 600; text-transform: uppercase; line-height: 1.15; margin: 0 0 10px; }
.kg-side-promo p { font-size: 14px; line-height: 1.5; margin: 0 0 16px; opacity: .95; }
.kg-side-form { background: #fff; border: 2px solid #FFD23C; border-radius: var(--radius); padding: 26px; box-shadow: 0 18px 50px -30px rgba(0,0,0,.4); }
.kg-side-form h3 { font-family: 'Unbounded',sans-serif; font-size: 21px; font-weight: 600; text-transform: uppercase; line-height: 1.12; color: var(--ink); margin: 0 0 10px; }
.kg-side-form > p { font-size: 14px; line-height: 1.5; color: var(--muted); margin: 0 0 18px; }
.kg-side-form input[type=tel] { width: 100%; height: 54px; padding: 0 18px; border: 1px solid var(--border); border-radius: 14px; font-size: 16px; font-family: 'Inter',sans-serif; box-sizing: border-box; margin-bottom: 12px; }
.kg-side-form input[type=tel]:focus { outline: none; border-color: var(--red); }
.kg-side-form .kg-btn { width: 100%; justify-content: center; box-sizing: border-box; height: 54px; }
.kg-side-form .kg-btn__badge { width: 40px; height: 40px; }
.kg-side-form__consent { display: block; font-size: 12px; color: var(--muted); margin-top: 12px; }
.kg-side-form__consent a { color: var(--red); }
.kg-side-form__ok { color: #178a3b; font-weight: 600; margin: 12px 0 0; font-size: 14px; }
.kg-side-form__msgs { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--border); font-size: 14px; color: var(--muted); }
.kg-side-form__msgs a { color: var(--blue); text-decoration: none; font-weight: 600; } .kg-side-form__msgs a:hover { text-decoration: underline; }

/* адаптив статьи */
@media (max-width: 1000px) {
  .kg-article-wrap { grid-template-columns: 1fr; gap: 36px; }
  .kg-side-sticky { position: static; }
  .kg-article-side { max-width: 520px; }
}
@media (max-width: 700px) {
  .kg-related__grid { grid-template-columns: 1fr; }
  .kg-inline-cta { flex-direction: column; align-items: flex-start; }
  .kg-inline-cta .kg-btn { width: 100%; justify-content: center; }
}

/* ── Всплывающая форма-попап (кнопки «Оставить заявку» в шапке/меню) ─────
   Модалка живёт вне .kg-blog-main, поэтому токены объявляем на .kg-modal. */
.kg-modal { --red:#ED3C24; --ink:#272524; --ink2:#252525; --muted:#6b6b6b; --bg-alt:#f6f6f6; --border:#e3e3e3; --blue:#2C9CED; --radius:30px;
  position: fixed; inset: 0; z-index: 2147483000; display: flex; align-items: center; justify-content: center; padding: 20px;
  font-family: 'Inter', -apple-system, Segoe UI, sans-serif; }
.kg-modal[hidden] { display: none; }
.kg-modal__overlay { position: absolute; inset: 0; background: rgba(20,20,20,.6); }
.kg-modal__box { position: relative; z-index: 1; width: 100%; max-width: 460px; background: #fff; border-radius: var(--radius);
  padding: 38px; box-shadow: 0 30px 80px -18px rgba(0,0,0,.55); animation: kgModalIn .22s ease; }
@keyframes kgModalIn { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
.kg-modal__close { position: absolute; top: 16px; right: 16px; width: 38px; height: 38px; box-sizing: border-box; padding: 0;
  border: 0; border-radius: 50%; background: var(--bg-alt); display: inline-flex; align-items: center; justify-content: center;
  color: var(--ink); cursor: pointer; transition: background .15s, color .15s; }
.kg-modal__close:hover { background: var(--red); color: #fff; }
.kg-modal__box h3 { font-family: 'Unbounded', sans-serif; font-size: 24px; font-weight: 600; text-transform: uppercase; line-height: 1.15; color: var(--ink); margin: 0 0 12px; padding-right: 28px; }
.kg-modal__box > p { font-size: 15px; line-height: 1.5; color: var(--muted); margin: 0 0 22px; }
.kg-modal__box input { width: 100%; height: 54px; padding: 0 18px; margin-bottom: 12px; border: 1px solid var(--border); border-radius: 14px; font-size: 16px; font-family: 'Inter', sans-serif; box-sizing: border-box; }
.kg-modal__box input:focus { outline: none; border-color: var(--red); }
.kg-modal__box .kg-btn { width: 100%; justify-content: center; }
.kg-modal__consent { display: block; font-size: 12px; color: var(--muted); margin-top: 12px; }
.kg-modal__consent a { color: var(--red); }
.kg-modal__ok { color: #178a3b; font-weight: 600; margin: 12px 0 0; }
.kg-modal__msgs { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--border); font-size: 14px; color: var(--muted); }
.kg-modal__msgs a { color: var(--blue); text-decoration: none; font-weight: 600; }
.kg-modal__msgs a:hover { text-decoration: underline; }
@media (max-width: 500px) { .kg-modal__box { padding: 28px 22px; } .kg-modal__box h3 { font-size: 20px; } }

/* Состояние успеха форм-заявок — заменяет форму на том же месте (галочка + текст) */
.kg-formok { display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; gap: 14px; width: 100%; padding: 8px 0; }
.kg-formok__ico { width: 58px; height: 58px; border-radius: 50%; background: #178a3b; color: #fff; display: inline-flex; align-items: center; justify-content: center; flex: none; }
.kg-formok__t { font-size: 16px; line-height: 1.5; font-weight: 500; color: var(--ink2); max-width: 30em; }
/* в тёмных/цветных плашках (квиз/лид-магнит) текст должен читаться */
.kg-quiz .kg-formok__t, .kg-lead .kg-formok__t { color: var(--ink2); }
.kg-lead .kg-formok__t { color: #fff; }
