/* ===== Статьи: общий стиль под фирменный дизайн ===== */
:root{
  --primary-color: #1e3e24;
  --secondary-color:#2d5a3d;
  --accent-color:#4a7c59;
  --text-dark:#333;
  --text-muted:#5b6b5f;
  --paper:#ffffff;
  --paper-2:#f7faf7;
  --bd: rgba(30,62,36,0.14);
  --shadow: 0 24px 60px rgba(0,0,0,.20);
}

/* Фон раздела статей — мягкий тёмно-зелёный, как в "Базе знаний" */
body.article{
  margin:0;
  color:var(--text-dark);
  background-color: #0a1810;
  background-image: url("../images/heatingnetworks.png");
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  background-attachment: fixed;
  min-height:100svh;
}

/* Контейнер */
body.article .container{ max-width: 980px; margin:0 auto; padding: 28px 22px; }

/* Шапка страниц статей */
body.article .site-header{
  position: sticky; top:0; z-index:10;
  backdrop-filter: blur(8px);
  background: rgba(14,32,20,.75);
  border-bottom: 1px solid rgba(255,255,255,.08);
}
body.article .logo{ color:#fff; font-weight:700; letter-spacing:.04em; }
body.article .logo:hover{ opacity:.9; }

/* Карточка статьи */
body.article .post{
  background: #fff;
  border:1px solid rgba(255,255,255,.55);
  border-radius: 22px;
  padding: clamp(22px, 3.6vw, 36px);
  box-shadow: var(--shadow);
}

/* Заголовки */
body.article h1{
  margin: 0 0 .4rem 0;
  font-size: clamp(1.8rem, 3.2vw, 2.4rem);
  font-weight: 700;
  color: var(--primary-color);
  line-height: 1.2;
}
body.article .post-meta{
  margin: 0 0 1.4rem 0;
  color: rgba(30,62,36,.75);
  font-weight: 550;
}
body.article h2{
  margin: 2rem 0 .6rem;
  font-size: clamp(1.25rem, 2.4vw, 1.6rem);
  color: var(--primary-color);
  position: relative;
}
body.article h2::after{
  content:"";
  display:block;
  height:2px;
  width: 100px;
  background: linear-gradient(90deg, transparent, var(--primary-color), transparent);
  opacity:.35;
  margin-top:.45rem;
}
body.article h3{
  margin: 1.4rem 0 .5rem;
  font-size: 1.1rem;
  color: #20462a;
}

/* Текст */
body.article p,
body.article li{
  font-size: 1.02rem;
  line-height: 1.75;
  color: var(--text-dark);
}
body.article p{ margin: .7rem 0; }
body.article em{ color:#2a4a34; }

body.article.article--otg p{
  text-indent: 0;
}
body.article.article--otg p:first-child,
body.article.article--otg h1 + p,
body.article.article--otg h2 + p,
body.article.article--otg h3 + p,
body.article.article--otg p.no-indent,
body.article.article--otg p.small{
  text-indent: 0;
}

/* Списки */
body.article ul{ padding-left: 1.2rem; margin:.6rem 0; }
body.article ul li{ margin:.25rem 0; }
body.article ol{ padding-left: 1.2rem; margin:.6rem 0; }

body.article .list-check,
body.article .list-dash{
  list-style: none;
  padding-left: 0;
  margin: .8rem 0;
}

body.article .list-check li,
body.article .list-dash li{
  position: relative;
  padding-left: 1.8rem;
  margin: .35rem 0;
}

body.article .list-check li::before{
  content: "✓";
  position: absolute;
  left: 0;
  top: .15rem;
  color: #2e8b57;
  font-size: 1rem;
  font-weight: 700;
}

body.article .list-dash li{
  padding-left: 1.5rem;
}

body.article .list-dash li::before{
  content: "—";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--text-dark);
  font-size: 1.1rem;
  font-weight: 600;
}

/* Цитаты */
body.article blockquote{
  margin: 1rem 0;
  padding: 1rem 1.2rem;
  background: var(--paper-2);
  border:1px solid var(--bd);
  border-left: 4px solid var(--secondary-color);
  border-radius: 12px;
  color: var(--text-muted);
}

/* Рисунки/таблицы */
body.article figure{
  margin: 1.2rem 0;
  background: #fff;
  border:1px solid #e8efe8;
  border-radius: 14px;
  padding: .9rem 1rem;
}
body.article figure img{ max-width:100%; height:auto; display:block; border-radius:10px; }
body.article figcaption{
  font-size: .95rem; color:#405546; font-weight:600; margin-bottom:.4rem;
}

body.article .figure{
  text-align: center;
}

body.article .figure img{
  margin: 0 auto 0.5rem;
}

body.article .figure figcaption{
  text-align: center;
}

/* Таблицы (если будут вставлены) */
body.article table{
  width:100%; border-collapse: collapse; margin: 1rem 0;
  border:1px solid #e3ece3; background:#fff; border-radius:10px; overflow:hidden;
}
body.article thead th{
  background:#f1f7f2; color:#1e3e24; text-align:left; font-weight:650;
  padding:.7rem .8rem; border-bottom:1px solid #e3ece3;
}
body.article tbody td{
  padding:.65rem .8rem; border-bottom:1px solid #edf3ee; color:#2b2b2b;
}
body.article tbody tr:nth-child(even) td{ background:#fafdfb; }
body.article .table-wrap{ overflow:auto; }

/* Кнопки навигации внизу */
body.article .btn{
  display:inline-block; text-decoration:none; cursor:pointer;
  padding: .65rem 1rem; border-radius: 999px;
  border:1px solid #dfe9df; color:#1e3e24; background:#fff;
  transition: transform .15s ease, box-shadow .2s ease, background .2s ease;
}
body.article .btn:hover{ background:#f4faf4; transform: translateY(-1px); box-shadow:0 8px 18px rgba(30,62,36,.18); }

/* Альтернативная (залитая) */
body.article .btn.btn--primary{
  background: var(--primary-color); color:#fff; border-color: rgba(0,0,0,.05);
}
body.article .btn.btn--primary:hover{
  background: var(--secondary-color);
}

body.article .article-footer-actions{
  padding: 0 22px 50px;
}
body.article .article-footer-actions__inner{
  max-width: 980px;
  margin: 0 auto;
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:12px;
}
body.article .article-footer-actions .btn{
  min-width:220px;
  text-align:center;
}

/* Хлебные крошки (если добавишь) */
body.article .breadcrumbs{
  margin-top:.25rem; font-size:.95rem;
}
body.article .breadcrumbs a{ color:#e9f5ee; text-decoration:none; opacity:.9; }
body.article .breadcrumbs a:hover{ text-decoration:underline; }

/* Ссылки внутри текста */
body.article a{ color:#256a41; }
body.article a:hover{ text-decoration: underline; }

/* Низ страницы */
body.article .site-footer{
  color:#fff; opacity:.8;
}

/* Адаптив */
@media (max-width: 640px){
  body.article .post{ padding: 18px; border-radius: 18px; }
  body.article h1{ font-size: 1.6rem; }
  body.article .btn{ width:100%; text-align:center; }
}
