/* ============================================================
   ОРЛИНК — страница одной записи блога (/blog/<slug>/).
   Одна колонка текста: длинный материал читается лучше без
   боковых блоков, отвлекающих от строки.
   ============================================================ */

.pst { padding-top: clamp(20px, 3vw, 36px); padding-bottom: clamp(56px, 6vw, 80px); }

/* ---------- Хлебные крошки ---------- */
.pst-crumbs {
  display: flex; flex-wrap: wrap; align-items: center; gap: 8px;
  font-size: 13px; color: var(--ink-45);
  padding-bottom: clamp(24px, 4vw, 44px);
}
.pst-crumbs a { color: var(--ink-55); }
@media (hover: hover) { .pst-crumbs a:hover { color: var(--acc); } }

/* Материал идёт во всю ширину контейнера — ограничителя по мере строки нет.
   Раз строка длинная, компенсируем читаемость набором: чуть крупнее кегль,
   больше интерлиньяж и увеличенные отбивки между абзацами, чтобы глаз
   не терял начало следующей строки. */
.pst-article { max-width: none; }

/* ---------- Шапка материала ---------- */
.pst-head { margin-bottom: clamp(28px, 4vw, 44px); }
.pst-title {
  font-size: clamp(26px, 4.4vw, 46px); margin: 12px 0 18px;
  text-transform: none;            /* заголовок статьи капсом читать тяжело */
  letter-spacing: -.01em; line-height: 1.12;
}
.pst-lede { margin-bottom: 22px; }
.pst-meta {
  display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 10px;
  padding-top: 18px; border-top: 1px solid var(--ink-14);
  font-size: 13px; color: var(--ink-45);
}
.pst-meta i { font-style: normal; opacity: .5; }

/* ---------- Текст ---------- */
.pst-body { font-size: clamp(16px, 1.15vw, 18px); line-height: 1.75; color: var(--ink-70); }
.pst-body p { margin-bottom: 22px; text-wrap: pretty; }
.pst-body b { color: var(--ink); font-weight: 500; }
.pst-body h2 {
  font-family: 'Montserrat Brand', sans-serif; font-weight: 800; text-transform: uppercase;
  font-size: clamp(18px, 2.2vw, 26px); line-height: 1.12; color: var(--ink);
  margin: clamp(34px, 4vw, 48px) 0 16px;
  scroll-margin-top: calc(var(--header-h) + 20px);
}

.pst-disclaimer {
  margin-top: clamp(28px, 3.4vw, 40px);
  padding: 16px 20px;
  background: var(--tile); border-radius: var(--radius);
  font-size: 14px; line-height: 1.6; color: var(--ink-55);
}

/* ---------- Таблица ---------- */
/* Обёртка обязательна: на узком экране таблица прокручивается сама,
   а страница по горизонтали не едет. */
.pst-table-wrap {
  overflow-x: auto;
  margin-bottom: 18px;
  border: 1px solid var(--ink-14);
  border-radius: calc(var(--radius) * 1.5);
}
.pst-table { width: 100%; border-collapse: collapse; font-size: 14px; min-width: 520px; }
.pst-table th, .pst-table td {
  text-align: left; padding: 13px 16px;
  border-bottom: 1px solid var(--ink-14);
  vertical-align: top; line-height: 1.45;
}
.pst-table thead th {
  font-size: 12px; letter-spacing: .08em; text-transform: uppercase;
  color: var(--ink-45); font-weight: 500; background: var(--tile);
}
.pst-table tbody tr:last-child th, .pst-table tbody tr:last-child td { border-bottom: none; }
.pst-table td:first-child { color: var(--ink); }

/* ---------- Подвал материала ---------- */
.pst-foot { margin-top: clamp(40px, 5vw, 72px); }

.pst-cta {
  background: var(--panel);
  border: 1px solid var(--ink-14);
  border-radius: calc(var(--radius) * 2);
  padding: clamp(22px, 3vw, 34px);
}
.pst-cta__title {
  font-family: 'Montserrat Brand', sans-serif; font-weight: 800; text-transform: uppercase;
  font-size: clamp(19px, 2.4vw, 28px); line-height: 1.1; margin-bottom: 12px;
}
.pst-cta__desc { font-size: 15px; line-height: 1.6; color: var(--ink-55); margin-bottom: 22px; }
.pst-cta__row { display: flex; flex-wrap: wrap; gap: 12px; }

.pst-more {
  display: grid; gap: 2px;
  margin-top: clamp(28px, 3.4vw, 40px);
  padding-top: clamp(22px, 2.8vw, 30px);
  border-top: 1px solid var(--ink-14);
}
.pst-more__title {
  font-size: 12px; letter-spacing: .1em; text-transform: uppercase;
  color: var(--ink-45); margin-bottom: 10px;
}
.pst-more a {
  font-size: 15px; color: var(--ink-70);
  padding: 9px 0; border-bottom: 1px solid var(--ink-14);
}
.pst-more a:last-child { border-bottom: none; }
@media (hover: hover) { .pst-more a:hover { color: var(--acc); } }

.pst-back {
  display: inline-block; margin-top: clamp(24px, 3vw, 34px);
  font-size: 15px; color: var(--ink-55);
}
@media (hover: hover) { .pst-back:hover { color: var(--acc); } }

/* ---------- Обложка записи ---------- */
.pst-cover{margin:0 0 clamp(24px,3vw,36px)}
.pst-cover img{width:100%;height:auto;display:block;border-radius:calc(var(--radius) * 2)}
.pst-cover figcaption{margin-top:10px;font-size:13px;color:var(--ink-45)}

/* ---------- Что приходит из редактора ----------
   Редактор вставляет картинки, списки, цитаты и таблицы своей разметкой —
   оформляем её здесь, чтобы автор мог верстать статью сам, без разработчика. */
.pst-body img{max-width:100%;height:auto;border-radius:calc(var(--radius) * 1.5)}
.pst-body figure{margin:clamp(24px,3vw,34px) 0}
.pst-body figure img{display:block}
.pst-body figcaption{margin-top:10px;font-size:13px;line-height:1.5;color:var(--ink-45);text-align:left}
.pst-body .alignleft{float:left;margin:6px clamp(20px,3vw,32px) 18px 0;max-width:min(50%,420px)}
.pst-body .alignright{float:right;margin:6px 0 18px clamp(20px,3vw,32px);max-width:min(50%,420px)}
.pst-body .aligncenter{margin-left:auto;margin-right:auto}
.pst-body .wp-block-image{margin:clamp(24px,3vw,34px) 0}
.pst-body .wp-block-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.pst-body .wp-block-gallery figure{margin:0}

.pst-body h3{font-weight:500;font-size:clamp(17px,1.8vw,21px);line-height:1.25;color:var(--ink);margin:clamp(26px,3vw,34px) 0 12px}
.pst-body ul,.pst-body ol{margin:0 0 18px;padding-left:24px}
.pst-body li{margin-bottom:8px}
.pst-body ul li{list-style:disc}
.pst-body ol li{list-style:decimal}
.pst-body a{color:var(--acc);text-decoration:underline;text-underline-offset:3px}
@media (hover:hover){ .pst-body a:hover{color:var(--ink)} }
.pst-body blockquote{
  margin:clamp(24px,3vw,34px) 0;padding:2px 0 2px clamp(18px,2.4vw,26px);
  border-left:2px solid var(--acc);font-size:clamp(17px,1.6vw,19px);line-height:1.6;color:var(--ink);
}
.pst-body blockquote p:last-child{margin-bottom:0}
/* таблицы из редактора прокручиваются сами, страница вбок не едет */
.pst-body .wp-block-table{overflow-x:auto;margin:clamp(24px,3vw,34px) 0}
.pst-body .wp-block-table table{width:100%;border-collapse:collapse;font-size:14px;min-width:520px}
.pst-body .wp-block-table th,.pst-body .wp-block-table td{
  text-align:left;padding:13px 16px;border-bottom:1px solid var(--ink-14);vertical-align:top;line-height:1.45}
.pst-body .wp-block-table thead th{
  font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-45);font-weight:500;background:var(--tile)}

@media (max-width:640px){
  .pst-body .alignleft,.pst-body .alignright{float:none;margin-left:0;margin-right:0;max-width:100%}
}
