/* Текст статьи блога: типографика для того, что приходит из markdown.
   Общий reset v3.css обнуляет отступы и снимает маркеры списков — здесь возвращаем их внутри .post-body. */

.post-body { max-width: 760px; margin: 64px auto; padding: 0 48px 80px; }
.post-body > :first-child { margin-top: 0; }

.post-body h2 { font-family: 'Cormorant Garamond', serif; font-size: 1.75rem; font-weight: 400; line-height: 1.2; color: #1c1a16; margin: 44px 0 16px; }
.post-body h3 { font-family: 'Cormorant Garamond', serif; font-size: 1.35rem; font-weight: 500; line-height: 1.25; color: #1c1a16; margin: 30px 0 12px; }
.post-body h4 { font-size: 0.95rem; font-weight: 600; color: #1c1a16; margin: 24px 0 10px; }

.post-body p,
.post-body li { font-size: 0.95rem; color: #4a4640; line-height: 1.9; }
.post-body p { margin-bottom: 18px; }
.post-body strong { font-weight: 600; color: #1c1a16; }
.post-body em { font-style: italic; }

.post-body ul,
.post-body ol { margin: 0 0 20px; padding-left: 24px; }
.post-body ul { list-style: disc; }
.post-body ol { list-style: decimal; }
.post-body li { margin-bottom: 8px; padding-left: 4px; }
.post-body li::marker { color: #9a7a32; }
.post-body li > ul,
.post-body li > ol { margin: 8px 0 0; }

.post-body a { color: #9a7a32; text-decoration: none; border-bottom: 0.5px solid rgba(154,122,50,0.4); }
.post-body a:hover { border-color: #9a7a32; }
.post-body .btn { color: #fff; border-bottom: none; }
.post-body .btn:hover { color: #fff; border-bottom: none; }

.post-body blockquote { margin: 24px 0; padding: 4px 0 4px 22px; border-left: 2px solid #9a7a32; }
.post-body blockquote p { font-family: 'Cormorant Garamond', serif; font-size: 1.2rem; font-style: italic; line-height: 1.6; color: #1c1a16; margin-bottom: 10px; }
.post-body blockquote p:last-child { margin-bottom: 0; }

.post-body hr { border: 0; border-top: 0.5px solid rgba(28,26,22,0.15); margin: 36px 0; }

/* таблицы: рамка и горизонтальная прокрутка внутри обёртки, страница не едет вбок */
.post-body .table-wrap { margin: 24px 0 28px; overflow-x: auto; -webkit-overflow-scrolling: touch; border: 0.5px solid rgba(28,26,22,0.15); }
.post-body table { width: 100%; min-width: 520px; border-collapse: collapse; font-size: 0.88rem; }
.post-body th,
.post-body td { padding: 11px 14px; text-align: left; vertical-align: top; border-bottom: 0.5px solid rgba(28,26,22,0.10); color: #4a4640; line-height: 1.55; }
.post-body th { background: #f5f3ee; font-weight: 600; color: #1c1a16; }
.post-body tr:last-child td { border-bottom: 0; }

/* место под фото, пока реального снимка нет */
.post-photo-slot { margin: 28px 0 32px; }
.post-photo-slot-box {
  display: flex; align-items: center; justify-content: center; min-height: 240px; padding: 24px;
  background: repeating-linear-gradient(-45deg, #f5f3ee, #f5f3ee 12px, #efece4 12px, #efece4 24px);
  border: 1px dashed rgba(154,122,50,0.55); color: #9a7a32;
  font-size: 0.72rem; font-weight: 600; letter-spacing: 0.16em; text-transform: uppercase; text-align: center;
}
.post-photo-slot figcaption { margin-top: 10px; font-size: 0.82rem; font-style: italic; color: #8a8480; line-height: 1.6; }

/* хлебные крошки и метка категории в шапке статьи */
.post-meta-cat { font-size: 0.62rem; font-weight: 500; letter-spacing: 0.16em; text-transform: uppercase; color: #9a7a32; }

@media (max-width: 960px) { .post-body { padding: 0 24px 56px; } }
@media (max-width: 640px) {
  .post-body { padding: 0 16px 48px; margin-top: 40px; }
  .post-body h2 { font-size: 1.5rem; margin-top: 36px; }
  .post-body h3 { font-size: 1.2rem; }
  .post-photo-slot-box { min-height: 180px; }
}
