/*
Theme Name: Азбука Дела
Theme URI: https://azbukadela.ru/
Author: Азбука Дела
Author URI: https://azbukadela.ru/
Description: Фирменный шаблон блога «Азбука Дела» — справочник по открытию и ведению бизнеса: регистрация ИП и ООО, налоги, бухгалтерия, кадры, право и закрытие. С числами, сроками и честным минусом в каждом разборе.
Requires at least: 6.0
Tested up to: 7.0
Requires PHP: 7.4
Version: 1.0.1
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: delo-blog
Tags: full-site-editing, blog, custom-colors, custom-logo, custom-menu, featured-images, block-patterns, wide-blocks
*/

/* =====================================================
   МОБИЛЬНЫЙ ФИКС ГОРИЗОНТАЛЬНОГО ВЫЕЗДА
   Гасим любой горизонтальный скролл на узких экранах:
   ни один блок не должен быть шире вьюпорта.
   ===================================================== */
html, body {
	overflow-x: hidden;
	max-width: 100%;
}

/* =====================================================
   ПРИНУДИТЕЛЬНЫЕ ПРАВИЛА ТИПОГРАФИКИ — тема «Сталь»
   Заголовки Inter Tight 700, тело Inter 400, числа JetBrains Mono.
   Шрифт с засечками темой не используется вовсе.
   ===================================================== */

/* Заголовки H1–H3, post-title, archive-title */
body :is(h1, h2, h3, .wp-block-post-title, .wp-block-query-title, .wp-block-heading, .az-archive-title, .az-post-title) {
	font-family: 'Inter Tight', 'Inter', sans-serif !important;
	font-weight: 700 !important;
	letter-spacing: -0.02em !important;
	line-height: 1.14 !important;
}

/* Маленькие eyebrow-надписи (рубрики на карточках, лейблы).
   ⚠️ Цветом НЕ выделяются: в теме «Сталь» цвет закреплён за смыслом
   (срок, штраф, льгота), а не за оформлением. Отличие — кегль и разрядка. */
body :is(.wp-block-post-terms a, .az-post-card-category, .az-post-category, .az-related-cat) {
	font-size: 11px !important;
	font-weight: 700 !important;
	letter-spacing: 3px !important;
	text-transform: uppercase !important;
	color: var(--az-text-muted) !important;
	font-family: 'Inter', sans-serif !important;
}

/* ВСЁ остальное (body, p, li, кнопки) — Inter 400 */
body,
body p,
body li,
body button,
body input,
body textarea,
body select,
body .wp-block-post-content,
body .wp-block-post-content p,
body .az-post-body,
body .az-post-body p {
	font-family: 'Inter', sans-serif !important;
}

/* Курсив остаётся курсивом и НИЧЕГО не значит: в «Стали» смысловую нагрузку
   несёт только цвет из служебной тройки. Прежняя тема красила <em> акцентом —
   здесь это запрещено, иначе разметка перестаёт читаться. */
body em,
body i,
body .az-italic {
	font-style: italic !important;
	font-weight: 400 !important;
	color: inherit !important;
}

/* Числа, ставки, сроки и суммы — моноширинный с табличными цифрами.
   Ради этого класса тема и держит третий шрифт: в статьях таблицы ставок,
   лимитов и дат, и колонка чисел обязана выравниваться по разряду. */
body .az-num,
body .az-post-body table td.az-n,
body .wp-block-post-content table td.az-n {
	font-family: 'JetBrains Mono', ui-monospace, monospace !important;
	font-variant-numeric: tabular-nums;
	font-feature-settings: "tnum";
}

/* Цитаты blockquote — без засечек и без курсива: цитата в статье этой темы
   бывает только одна, и это врезка «Честный минус» (см. секцию «Сталь»). */
body blockquote,
body .wp-block-quote,
body .wp-block-quote p {
	font-family: 'Inter', sans-serif !important;
	font-style: normal !important;
}

/* =====================================================
   ШРИФТЫ — Google Fonts, подключаются в functions.php
   Inter + Inter Tight + JetBrains Mono, все три с кириллицей.
   ===================================================== */

/* =====================================================
   БАЗОВЫЕ ПЕРЕМЕННЫЕ — фирменная палитра «Азбука Дела», тема «Сталь»
   ===================================================== */
:root {
	/* ⭐ ТЕМА «СТАЛЬ», принята 13.08.2026.
	   Правило темы: ЦВЕТ ТОЛЬКО ЗА СМЫСЛ. Жёлтый — срок, красный — штраф,
	   зелёный — льгота. Ссылки выделяются подчёркиванием, а не цветом.
	   Цветная плашка «ради красоты» ломает всю систему разметки.
	   ⚠️ Имена переменных НЕ меняются: их читают все секции ниже.
	   Значения обязаны совпадать с палитрой theme.json один в один. */
	--az-accent:       #24282B;  /* Антрацит — кнопки, знак, подчёркивание */
	--az-accent-hover: #000000;  /* Hover: до чёрного */
	--az-tint:         #EDEFF0;  /* Тонировка: «Суть», шапка таблицы, плашки */
	--az-text:         #16181A;  /* Основной текст */
	--az-text-alt:     #2A2E31;  /* Альт текст: абзацы, ячейки таблиц */
	--az-text-muted:   #5D6467;  /* Вторичный текст */
	--az-text-light:   #8C9295;  /* Светлый: мелкие подписи, реквизиты */
	--az-border:       #E2E5E6;  /* Линии и рамки */
	--az-bg:           #FFFFFF;  /* Основной фон */
	--az-bg-2:         #F6F7F7;  /* Подложка секций */
	/* Тёмный (футер, плашка «честного минуса») */
	--az-dark:         #16181A;
	--az-dark-2:       #24282B;

	/* ⭐ СЛУЖЕБНАЯ ТРОЙКА — единственные цвета в теме, и каждый значит одно */
	--az-warn:         #75530F;  /* Срок: текст */
	--az-warn-bg:      #FBF3E0;  /* Срок: подложка врезки */
	--az-warn-line:    #C08A14;  /* Срок: полоса слева */
	--az-alert:        #A8362B;  /* Штраф, пени, запрет */
	--az-ok:           #2E6244;  /* Льгота, вычет, «можно» */
	--az-ok-bg:        #E8F1EB;  /* Льгота: подложка */

	/* Честный минус — тёмная плашка, опознавательный знак формата */
	--az-minus-bg:     #16181A;
	--az-minus-fg:     #E7EAEB;
	--az-minus-line:   #C4483A;

	/* Форма и глубина. «Сталь» держится на линиях, а не на тенях:
	   скругления мелкие, тень почти незаметна и нужна только для отрыва
	   липких элементов от текста. */
	--az-radius:       14px;     /* Карточки, врезки, крупные блоки */
	--az-radius-sm:    10px;     /* Мелкие врезки, таблицы, поля формы */
	--az-pill:         8px;      /* Кнопки и плашки: НЕ пилюля, а прямоугольник */
	--az-shadow:       0 1px 2px rgba(22, 24, 26, .06);
	--az-shadow-lg:    0 8px 24px rgba(22, 24, 26, .12);

	/* Шрифты */
	--az-font-h:       'Inter Tight', 'Inter', sans-serif;
	--az-font-m:       'JetBrains Mono', ui-monospace, monospace;
}

/* =====================================================
   МОБИЛЬНЫЕ ОТСТУПЫ ДЛЯ КОНТЕНТА
   Шапка и футер — на всю ширину, без отступов.
   Только контент статьи и архива получает 16px.
   ===================================================== */
@media (max-width: 600px) {
	/* Контент статьи */
	.az-post-header {
		padding-left: 16px !important;
		padding-right: 16px !important;
	}
	.az-post-body,
	.wp-block-post-content {
		padding-left: 16px !important;
		padding-right: 16px !important;
	}
	.az-post-tags-wrap {
		padding-left: 16px !important;
		padding-right: 16px !important;
	}
	.az-post-divider {
		margin-left: 16px !important;
		margin-right: 16px !important;
	}
	.az-related-posts {
		padding-left: 16px !important;
		padding-right: 16px !important;
	}
	/* Архив постов */
	.az-archive-hero {
		padding-left: 16px !important;
		padding-right: 16px !important;
	}
	.wp-block-query.az-posts-grid-wrapper {
		padding-left: 16px !important;
		padding-right: 16px !important;
	}
	/* Пагинация */
	.az-pagination {
		padding-left: 16px !important;
		padding-right: 16px !important;
	}
	/* Сетка в 1 колонку на мобильном */
	.az-posts-grid,
	.az-related-grid {
		grid-template-columns: 1fr !important;
	}
}

/* =====================================================
   SCROLLBAR — цвета акцента
   ===================================================== */
::-webkit-scrollbar { width: 4px; }
::-webkit-scrollbar-track { background: var(--az-bg-2); }
::-webkit-scrollbar-thumb { background: var(--az-accent); border-radius: 2px; }

/* =====================================================
   ШАПКА — белая (бренд-гайд: чистая методология, белый фон)
   ===================================================== */

.az-site-header {
	background: var(--az-bg);
	position: sticky;
	top: 0;
	z-index: 100;
	width: 100%;
	border-bottom: 1px solid var(--az-border);
}
.az-header-inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 32px;
	height: 68px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
}

/* Логотип-знак R[3]Q (SVG) */
.az-header-logo-link {
	display: inline-flex;
	align-items: center;
	color: var(--az-text);
	text-decoration: none;
	white-space: nowrap;
	flex-shrink: 0;
	height: 40px;
}
.az-header-logo-svg {
	display: block;
	height: 32px;
	width: auto;
}

/* Навигация — десктоп */
.az-header-nav {
	display: flex;
	align-items: center;
	gap: 28px;
	flex: 1;
	justify-content: center;
}
.az-header-nav a {
	color: var(--az-text-alt);
	text-decoration: none;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: normal;
	text-transform: none;
	white-space: nowrap;
	transition: color .2s;
	font-family: 'Inter', sans-serif;
}
.az-header-nav a:hover { color: var(--az-accent); }

/* Правая часть: CTA + бургер */
.az-header-right {
	display: flex;
	align-items: center;
	gap: 12px;
	flex-shrink: 0;
}

/* CTA-кнопка — пилюля, как на лендинге (border-radius: 999px) */
.az-header-cta-btn {
	background: var(--az-text);    /* чёрная как .nav .cta на лендинге */
	color: #ffffff !important;
	text-decoration: none;
	padding: 10px 22px;
	border-radius: 999px;
	font-family: 'Inter', sans-serif;
	font-size: 14px;
	font-weight: 600;
	white-space: nowrap;
	transition: background .2s;
}
.az-header-cta-btn:hover { background: var(--az-accent); }

/* Бургер — только мобильный */
.az-burger {
	display: none;
	align-items: center;
	background: none;
	border: 1px solid var(--az-border);
	border-radius: 6px;
	cursor: pointer;
	padding: 7px 14px;
	z-index: 201;
	color: var(--az-text);
	font-family: 'Inter', sans-serif;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	transition: border-color .18s, color .18s;
}
.az-burger:hover { border-color: var(--az-accent); color: var(--az-accent); }
.az-burger-open { display: inline; }
.az-burger-close { display: none; }
.az-burger.active .az-burger-open { display: none; }
.az-burger.active .az-burger-close { display: inline; }

/* Мобильное меню — белый фон под бренд-гайд */
.az-mobile-menu {
	display: none;
	position: fixed;
	top: 0; left: 0; right: 0; bottom: 0;
	background: var(--az-bg);
	z-index: 200;
	flex-direction: column;
	padding: 88px 24px 40px;
}
.az-mobile-menu.open { display: flex; }
.az-mobile-menu a {
	color: var(--az-text);
	text-decoration: none;
	font-size: 15px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	font-family: 'Inter', sans-serif;
	padding: 18px 0;
	border-bottom: 1px solid var(--az-border);
	transition: color .18s;
}
.az-mobile-menu a:hover { color: var(--az-accent); }
.az-mobile-menu .az-mobile-cta {
	margin-top: 24px;
	border-bottom: none;
	background: var(--az-accent);
	color: #ffffff !important;
	padding: 14px 24px;
	border-radius: 6px;
	font-weight: 700;
	text-align: center;
}
.az-mobile-menu .az-mobile-cta:hover { background: var(--az-accent-hover); }

/* Адаптив */
@media (max-width: 768px) {
	.az-header-inner { padding: 0 16px; }
	.az-header-nav { display: none; }
	.az-header-cta-btn { display: none; }
	.az-burger { display: flex; }
}
@media (min-width: 769px) {
	.az-burger { display: none !important; }
	.az-mobile-menu { display: none !important; }
}

.az-site-header .wp-block-navigation__responsive-container.is-menu-open a:hover,
.wp-block-navigation__responsive-container.is-menu-open a:hover {
	color: var(--az-accent) !important;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {
	color: var(--az-text) !important;
}

/* =====================================================
   ГЛОБАЛЬНЫЙ СБРОС UPPERCASE И РАЗМЕРОВ ЗАГОЛОВКОВ
   ===================================================== */
h1, h2, h3, h4, h5, h6,
.wp-block-post-title,
.wp-block-query-title,
.wp-block-heading {
	text-transform: none !important;
}

.wp-block-query-title,
.wp-block-archive-title,
.az-archive-hero h1,
.az-archive-hero .wp-block-heading {
	font-size: 28px !important;
	font-weight: 400 !important;
	line-height: 1.3 !important;
}

/* Заголовок статьи */
.az-post-title,
.az-single-main .wp-block-post-title {
	font-size: 20px !important;
	font-weight: 400 !important;
	line-height: 1.2 !important;
	text-transform: none !important;
}

/* =====================================================
   ЗАГОЛОВОК СТРАНИЦЫ (архив)
   ===================================================== */

/* Рубрики в шапке статьи — серый цвет */
.az-post-meta-top .wp-block-post-terms a,
.az-post-meta-top .wp-block-post-terms,
.az-post-category a,
.az-post-category {
	color: var(--az-text-muted) !important;
	text-transform: uppercase;
	font-size: 11px !important;
	letter-spacing: 0.08em !important;
	font-weight: 700 !important;
	text-decoration: none !important;
}

/* Заголовок архива/рубрики */
.az-archive-main .wp-block-query-title,
.az-archive-main .az-archive-title,
.az-archive-hero h1,
.wp-block-query-title {
	font-family: 'Inter', sans-serif !important;
	font-size: 28px !important;
	font-weight: 400 !important;
	line-height: 1.3 !important;
	letter-spacing: 0.01em !important;
	color: var(--az-text) !important;
	margin: 0 0 12px !important;
	word-break: break-word;
	text-transform: none !important;
}

.az-archive-hero .az-archive-title {
	font-size: 28px !important;
	font-weight: 400 !important;
	line-height: 1.3 !important;
}
.az-page-heading {
	border-bottom: 1px solid var(--az-border);
	padding: 36px 48px 28px;
}
.az-page-heading-inner {
	max-width: 1200px;
	margin: 0 auto;
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 24px;
	flex-wrap: wrap;
}
.az-page-title {
	font-family: 'Inter', sans-serif;
	font-size: 48px;
	letter-spacing: 1px;
	line-height: 1;
	color: var(--az-text);
	margin: 0;
}
.az-page-title .az-accent { color: var(--az-accent); }
.az-page-desc {
	font-size: 14px;
	color: var(--az-text-muted);
	font-weight: 400;
	max-width: 400px;
	text-align: right;
}

/* =====================================================
   СЕТКА ПОСТОВ
   ===================================================== */
.az-posts-area {
	max-width: 1200px;
	margin: 0 auto;
	padding: 40px 48px 72px;
}
.az-posts-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}

.az-post-card {
	display: flex;
	flex-direction: column;
	border: 1px solid var(--az-border);
	border-radius: 12px;
	overflow: hidden;
	text-decoration: none;
	color: inherit;
	transition: border-color .2s, transform .2s, box-shadow .2s;
	position: relative;
	padding: 8px 8px 0 8px;
	box-sizing: border-box;
	background: var(--az-bg);
}
.az-post-card::before {
	content: '';
	position: absolute;
	top: 0; left: 0; right: 0;
	height: 0;
	background: var(--az-accent);
	transition: height .2s;
	z-index: 1;
}
.az-post-card:hover {
	border-color: var(--az-accent);
	transform: translateY(-3px);
	box-shadow: 0 8px 28px rgba(0,0,0,.06);
}
.az-post-card:hover::before { height: 3px; }

/* картинка 16:9 — горизонтальный редакторский формат обложки */
.az-post-card .wp-block-post-featured-image {
	width: 100% !important;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	display: block;
	margin: 0 !important;
	border-radius: 8px;
	flex-shrink: 0;
}
.az-post-card .wp-block-post-featured-image img,
.az-post-card .wp-block-post-featured-image a img {
	width: 100% !important;
	height: 100% !important;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	object-position: center center;
	display: block;
	margin: 0;
}

.az-post-card-body {
	padding: 20px 22px 24px;
	display: flex;
	flex-direction: column;
	flex: 1;
}

/* мета (рубрика + дата) */
.az-post-meta {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 10px;
}
.az-post-card .wp-block-post-terms a {
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--az-accent);
	text-decoration: none;
}
.az-post-card .wp-block-post-date {
	font-size: 11px;
	color: var(--az-text-muted);
	font-weight: 500;
}

/* заголовок карточки */
.az-post-card .wp-block-post-title,
.az-post-card .wp-block-post-title a {
	font-family: 'Inter', sans-serif !important;
	font-size: 22px !important;
	line-height: 1.15 !important;
	letter-spacing: .3px !important;
	color: var(--az-text) !important;
	margin-bottom: 10px;
	text-decoration: none !important;
	transition: color .18s;
	display: block;
	word-break: break-word;
	overflow-wrap: break-word;
	font-weight: 400 !important;
}
.az-post-card:hover .wp-block-post-title,
.az-post-card:hover .wp-block-post-title a { color: var(--az-accent) !important; }

/* анонс */
.az-post-card .wp-block-post-excerpt {
	font-size: 13px;
	color: var(--az-text-alt);
	line-height: 1.65;
	font-weight: 400;
	flex: 1;
	margin-bottom: 18px;
}
.az-post-card .wp-block-post-excerpt p { margin: 0; }
.az-post-card .wp-block-post-excerpt .wp-block-post-excerpt__more-link { display: none; }

/* «Читать» */
.az-read-more {
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--az-accent);
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	gap: 5px;
	margin-top: auto;
	transition: gap .18s;
}
.az-post-card:hover .az-read-more { gap: 9px; }
.az-read-more::after { content: '→'; font-size: 13px; }

/* пагинация */
.az-pagination {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	margin-top: 48px;
}
.az-pagination .page-numbers {
	min-width: 38px;
	height: 38px;
	padding: 0 10px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--az-border);
	border-radius: 3px;
	font-family: 'Inter', sans-serif;
	font-size: 13px;
	font-weight: 600;
	color: var(--az-text-alt);
	text-decoration: none;
	transition: all .18s;
}
.az-pagination .page-numbers:hover { border-color: var(--az-accent); color: var(--az-accent); }
.az-pagination .page-numbers.current { background: var(--az-accent); border-color: var(--az-accent); color: #ffffff; }
.az-pagination .page-numbers.dots { border: none; color: var(--az-text-muted); }

/* =====================================================
   СТРАНИЦА СТАТЬИ
   ===================================================== */
.az-post-header {
	border-bottom: 1px solid var(--az-border);
	padding: 48px 48px 40px;
}

.az-post-header-inner {
	max-width: 720px;
	margin: 0 auto;
}

.az-post-back {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--az-text-muted);
	text-decoration: none;
	margin-bottom: 28px;
	transition: color .18s;
}
.az-post-back::before { content: '←'; font-size: 14px; }
.az-post-back:hover { color: var(--az-accent); }

.az-post-meta-top {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 20px;
	flex-wrap: wrap;
}
.az-post-cat-badge {
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--az-accent);
	border: 1px solid var(--az-border);
	background: var(--az-tint);
	padding: 4px 12px;
	border-radius: 100px;
	text-decoration: none;
}
.az-meta-sep { color: var(--az-border); }
.az-post-date-single, .az-post-readtime {
	font-size: 12px;
	color: var(--az-text-muted);
	font-weight: 500;
}

.az-single-title,
.az-single-main .wp-block-post-title,
.az-single-main h1.wp-block-post-title,
.az-post-header .wp-block-post-title {
	font-family: 'Inter', sans-serif !important;
	font-size: clamp(28px, 4.5vw, 48px) !important;
	line-height: 1.1 !important;
	letter-spacing: 0.01em !important;
	color: var(--az-text) !important;
	font-weight: 400 !important;
	margin: 8px 0 0 !important;
	word-break: break-word !important;
	overflow-wrap: break-word !important;
	text-transform: none !important;
}

.az-post-intro {
	font-size: 17px;
	font-weight: 300;
	color: var(--az-text-alt);
	line-height: 1.7;
	border-left: 3px solid var(--az-accent);
	padding-left: 20px;
	margin: 0;
}

/* прогресс чтения */
#az-reading-progress {
	position: fixed;
	top: 0;
	left: 0;
	height: 3px;
	width: 0;
	background: var(--az-accent);
	border-radius: 0 2px 2px 0;
	transition: width .1s linear;
	z-index: 9999;
	pointer-events: none;
}

/* тело статьи */
.az-post-body {
	max-width: 720px;
	margin: 0 auto;
	padding: 48px 48px 64px;
}

/* Мобильный: уменьшаем боковые отступы тела статьи,
   иначе на узком экране контент и врезки (промо, related)
   вылезают за пределы вьюпорта (v1.9.34). */
@media (max-width: 600px) {
	.az-post-body {
		padding: 32px 16px 48px;
	}
}

/* Базовая типографика — все p внутри контента.
   v1.3.7: воздух между абзацами. Раньше было 4px — при line-height 1.8
   абзацы сливались в сплошное полотно и длинные статьи читались тяжело. */
.az-post-body p,
.wp-block-post-content p {
	font-size: 16px;
	line-height: 1.8;
	color: var(--az-text-alt);
	font-weight: 400;
	margin-top: 0;
	margin-bottom: 20px;
}

.wp-block-spacer {
	height: 12px !important;
	min-height: 0 !important;
}

/* Абзацы-врезки «**Шаг 1.** …» — самостоятельные смысловые блоки.
   v1.3.7: раньше 8/2px склеивали их в один ком. */
.wp-block-post-content p:has(> strong:first-child) {
	margin-top: 28px;
	margin-bottom: 20px;
}
/* Два подряд — не удваивать разрыв */
.wp-block-post-content p:has(> strong:first-child) + p:has(> strong:first-child) {
	margin-top: 20px;
}
/* Врезка сразу после заголовка — заголовок уже дал отступ */
.wp-block-post-content :is(h2, h3, h4) + p:has(> strong:first-child) {
	margin-top: 0;
}

/* Внешние отступы блоков «Суть» и FAQ — ОБЯЗАТЕЛЬНО здесь, а не только
   инлайном в functions.php. v1.3.8: из-за blockGap в theme.json WordPress
   печатает layout-правило
       .wp-container-core-post-content-is-layout-N > *
           { margin-block-start: 0; margin-block-end: 0 }
   с той же специфичностью (0,1,0), что и одноклассовые .az-tldr / .az-faq,
   но ПОЗЖЕ по порядку — и обнуляет им margin. Абзацы не страдали:
   .wp-block-post-content p — это (0,1,1) и правило перебивает. Поэтому
   поднимаем вес селектора до (0,2,0). */
.wp-block-post-content .az-tldr,
.az-post-body .az-tldr {
	margin: 0 0 44px;
}
.wp-block-post-content .az-faq,
.az-post-body .az-faq {
	margin: 48px 0 24px;
}
@media (max-width: 600px) {
	.wp-block-post-content .az-tldr,
	.az-post-body .az-tldr { margin: 0 0 32px; }
	.wp-block-post-content .az-faq,
	.az-post-body .az-faq { margin: 40px 0 20px; }
}

/* Служебные контейнеры со своим ритмом — не наследуют абзацный margin
   (CSS этих блоков живёт инлайном в functions.php и печатается раньше
   style.css, поэтому перебиваем здесь явно). v1.3.7 */
.wp-block-post-content .az-tldr p,
.az-post-body .az-tldr p {
	margin: 0;
}
.wp-block-post-content .az-tldr p + p,
.az-post-body .az-tldr p + p {
	margin-top: 8px;
}
.wp-block-post-content .az-faq p,
.az-post-body .az-faq p {
	margin: 0 0 14px;
}
.wp-block-post-content .wp-block-quote p,
.az-post-body .wp-block-quote p {
	margin: 0;
}
.wp-block-post-content .wp-block-quote p + p,
.az-post-body .wp-block-quote p + p {
	margin-top: 12px;
}

.wp-block-post-content p strong {
	color: var(--az-text);
	font-weight: 700;
}

/* Ссылки */
.wp-block-post-content a,
.az-post-body a {
	color: var(--az-accent);
	text-underline-offset: 3px;
	text-decoration-thickness: 1px;
}
.wp-block-post-content a:hover { color: var(--az-accent-hover); }

/* Заголовки h2/h3 внутри контента */
.wp-block-post-content h2 {
	font-family: 'Inter', sans-serif;
	font-size: 24px;
	letter-spacing: .3px;
	color: var(--az-text);
	line-height: 1.2;
	margin: 48px 0 16px;
}
.wp-block-post-content h3 {
	font-family: 'Inter', sans-serif;
	font-size: 19px;
	letter-spacing: .3px;
	color: var(--az-text);
	line-height: 1.2;
	margin: 36px 0 12px;
}
/* Заголовок сразу под заголовком — без двойного разрыва */
.wp-block-post-content :is(h2, h3) + :is(h2, h3) { margin-top: 16px; }

/* Курсив — обычный курсив Inter. В теме «Сталь» он НИЧЕГО не значит:
   смысл несёт только служебная тройка цветов. */
.wp-block-post-content em,
.wp-block-post-content i,
.az-italic {
	font-family: 'Inter', sans-serif;
	font-style: italic;
	font-weight: 500;
	color: var(--az-accent);
}
.wp-block-post-content h1 em,
.wp-block-post-content h2 em,
.wp-block-post-content h3 em {
	font-size: 1.05em;
	letter-spacing: 0;
}

/* Списки — v1.3.7: тот же воздух, что и у абзацев */
.wp-block-post-content ul,
.wp-block-post-content ol {
	padding-left: 1.4em;
	margin: 16px 0 24px;
}
.wp-block-post-content li {
	margin-bottom: 10px;
	line-height: 1.7;
	color: var(--az-text-alt);
}
.wp-block-post-content li:last-child { margin-bottom: 0; }
.wp-block-post-content li > p { margin: 0; }
.wp-block-post-content ul li::marker { color: var(--az-accent); }

/* Цитаты. Финальное оформление — врезка «Честный минус» в секции «Сталь». */
.wp-block-post-content blockquote,
.wp-block-post-content .wp-block-quote {
	border-left: 3px solid var(--az-accent);
	padding: 18px 26px;
	background: var(--az-bg-2);
	border-radius: 0 4px 4px 0;
	margin: 28px 0;
}
.wp-block-post-content .wp-block-quote p {
	font-family: 'Inter', sans-serif;
	font-size: 22px;
	font-style: italic;
	font-weight: 500;
	color: var(--az-text);
	line-height: 1.4;
}

/* Изображения внутри контента */
.wp-block-post-content figure.wp-block-image {
	margin: 28px 0;
}
.wp-block-post-content figure.wp-block-image img {
	border-radius: 8px;
	max-width: 100%;
}
.wp-block-post-content figcaption {
	font-size: 12px;
	color: var(--az-text-muted);
	text-align: center;
	margin-top: 8px;
}

/* Эмодзи в тексте — не растягивать */
.wp-block-post-content img.emoji {
	width: 1em !important;
	height: 1em !important;
	vertical-align: -0.1em;
	display: inline;
}

/* featured image на странице поста — сильные селекторы (v1.2.0).
   ⚠ Верхний отступ живёт ИМЕННО ЗДЕСЬ. Правило шортхендом с !important
   перебивает любую попытку добавить `margin-top` отдельным селектором ниже
   по файлу: на этом 25.07.2026 сгорели две версии темы подряд — CSS уезжал
   на сервер, в файле лежал, а отступа на сайте не было.
   Обложка шла вплотную к линии-границе шапки статьи; 40 px (на мобильном
   24 px) отбивают её от разделителя. */
body.az-single-page .wp-block-post-featured-image,
body.single .wp-block-post-featured-image,
body.single-post .wp-block-post-featured-image,
.az-post-featured,
.az-single-main .wp-block-post-featured-image,
.az-post-header + .wp-block-post-featured-image {
	max-width: 360px !important;
	margin: 40px auto 48px !important;
	border-radius: 12px !important;
	overflow: hidden !important;
	display: block !important;
}
@media (max-width: 600px) {
	body.az-single-page .wp-block-post-featured-image,
	body.single .wp-block-post-featured-image,
	body.single-post .wp-block-post-featured-image,
	.az-post-featured,
	.az-single-main .wp-block-post-featured-image,
	.az-post-header + .wp-block-post-featured-image {
		margin: 24px auto 32px !important;
	}
}
body.az-single-page .wp-block-post-featured-image img,
body.single .wp-block-post-featured-image img,
body.single-post .wp-block-post-featured-image img,
.az-post-featured img,
.az-single-main .wp-block-post-featured-image img,
.az-single-main .wp-block-post-featured-image figure img,
body.az-single-page .wp-block-post-featured-image figure img,
body.single .wp-block-post-featured-image figure img {
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 16 / 9 !important;
	object-fit: cover !important;
	object-position: center center !important;
	display: block !important;
	border-radius: 12px !important;
}
body.az-single-page .wp-block-post-featured-image figure,
body.single .wp-block-post-featured-image figure,
.az-single-main .wp-block-post-featured-image figure {
	margin: 0 !important;
	max-width: 100% !important;
}

/* теги + шер */
.az-post-footer {
	max-width: 720px;
	margin: 0 auto;
	padding: 32px 48px 64px;
	border-top: 1px solid var(--az-border);
}
.az-post-tags {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin-bottom: 20px;
}
.az-tag-label {
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--az-text-muted);
}
.az-post-tags a {
	padding: 5px 14px;
	border: 1px solid var(--az-border);
	border-radius: 100px;
	font-size: 12px;
	font-weight: 500;
	color: var(--az-text-alt);
	text-decoration: none;
	transition: all .18s;
}
.az-post-tags a:hover { border-color: var(--az-accent); color: var(--az-accent); }


/* =====================================================
   ПАНЕЛЬ РУБРИК
   ===================================================== */

.az-cats-bar {
	background: var(--az-bg-2);
	border-bottom: 1px solid var(--az-border);
	position: relative;
	z-index: 90;
}

/* Кнопка-триггер */
.az-cats-toggle {
	display: flex;
	align-items: center;
	gap: 8px;
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 32px;
	height: 44px;
	background: none;
	border: none;
	cursor: pointer;
	font-family: 'Inter', sans-serif;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--az-text-alt);
	transition: color .18s;
}
.az-cats-toggle:hover { color: var(--az-accent); }

.az-cats-toggle-label { flex: 1; text-align: left; }

.az-cats-arrow {
	width: 16px;
	height: 16px;
	flex-shrink: 0;
	transition: transform .22s ease;
	color: var(--az-text-muted);
}
.az-cats-bar.open .az-cats-arrow { transform: rotate(180deg); }

/* Выпадающий список */
.az-cats-dropdown {
	display: none;
	flex-wrap: wrap;
	gap: 8px;
	max-width: 1200px;
	margin: 0 auto;
	padding: 16px 32px 20px;
}
.az-cats-bar.open .az-cats-dropdown { display: flex; }

/* Чипсы рубрик */
.az-cats-item {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 14px;
	background: var(--az-bg);
	border: 1px solid var(--az-border);
	border-radius: 20px;
	font-family: 'Inter', sans-serif;
	font-size: 12px;
	font-weight: 600;
	color: var(--az-text);
	text-decoration: none;
	transition: background .18s, border-color .18s, color .18s;
	white-space: nowrap;
}
.az-cats-item:hover {
	background: var(--az-accent);
	border-color: var(--az-accent);
	color: #ffffff;
}
.az-cats-count {
	font-size: 10px;
	font-weight: 700;
	color: var(--az-text-muted);
	background: var(--az-border);
	padding: 1px 6px;
	border-radius: 10px;
	transition: background .18s, color .18s;
}
.az-cats-item:hover .az-cats-count {
	background: rgba(255,255,255,0.25);
	color: #ffffff;
}

@media (max-width: 768px) {
	.az-cats-toggle { padding: 0 16px; }
	.az-cats-dropdown { padding: 12px 16px 16px; gap: 6px; }
	.az-cats-item { font-size: 11px; padding: 5px 11px; }
}

/* =====================================================
   БЛОК «НАШИ ПРОЕКТЫ» (врезка в середину статьи)
   ===================================================== */

.az-projects-block {
	margin: 40px 0;
	padding: 24px 28px;
	background: var(--az-tint);
	border-left: 3px solid var(--az-accent);
	border-radius: 0 12px 12px 0;
	font-family: 'Inter', sans-serif;
	color: var(--az-text);
}

.az-projects-intro {
	margin: 0 0 18px 0;
	font-size: 15px;
	line-height: 1.55;
	color: var(--az-text-alt);
	font-weight: 400;
}

.az-projects-list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.az-projects-item {
	display: flex;
	gap: 14px;
	align-items: flex-start;
	font-size: 15px;
	line-height: 1.55;
	color: var(--az-text);
}

.az-projects-icon-wrap {
	flex-shrink: 0;
	width: 22px;
	height: 22px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-top: 2px;
}

.az-projects-icon {
	display: block;
}

.az-projects-item strong {
	font-weight: 600;
	color: var(--az-text);
}

.az-projects-link {
	color: var(--az-accent);
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 3px;
	transition: color .18s;
	white-space: nowrap;
}

.az-projects-link:hover {
	color: var(--az-accent-hover);
}

@media (max-width: 768px) {
	.az-projects-block { padding: 20px 22px; margin: 32px 0; }
	.az-projects-intro { font-size: 14px; margin-bottom: 16px; }
	.az-projects-item { font-size: 14px; gap: 12px; }
	.az-projects-link { white-space: normal; }
}

/* --- Компактный вариант: иконка + интро + одна CTA --- */
.az-projects-block--compact {
	padding: 28px 32px;
}
.az-projects-block--compact .az-projects-intro {
	margin: 0 0 16px 0;
	font-size: 16px;
	line-height: 1.55;
	color: var(--az-text);
}
.az-projects-block--compact .az-projects-intro strong {
	color: var(--az-text);
	font-weight: 700;
}
.az-projects-hero {
	display: flex;
	gap: 22px;
	align-items: flex-start;
}
.az-projects-hero-icon-wrap {
	flex-shrink: 0;
	width: 56px;
	height: 56px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-top: 2px;
}
.az-projects-hero-icon {
	display: block;
}
.az-projects-hero-body {
	flex: 1;
	min-width: 0;
}
.az-projects-block .az-projects-cta,
body .wp-block-post-content .az-projects-block .az-projects-cta,
body .az-post-body .az-projects-block .az-projects-cta {
	display: inline-block !important;
	background: var(--az-accent) !important;
	color: #ffffff !important;
	font-weight: 700 !important;
	font-size: 14px !important;
	letter-spacing: 0.2px !important;
	padding: 12px 22px !important;
	border-radius: 999px !important;
	text-decoration: none !important;
	border: none !important;
	transition: background .18s, transform .18s !important;
}
.az-projects-block .az-projects-cta:hover,
body .wp-block-post-content .az-projects-block .az-projects-cta:hover,
body .az-post-body .az-projects-block .az-projects-cta:hover {
	background: var(--az-accent-hover) !important;
	color: #ffffff !important;
	transform: translateY(-1px) !important;
	text-decoration: none !important;
}
@media (max-width: 600px) {
	.az-projects-block--compact { padding: 22px 20px; }
	.az-projects-hero { gap: 16px; }
	.az-projects-hero-icon-wrap { width: 44px; height: 44px; }
	.az-projects-hero-icon { width: 44px; height: 44px; }
	.az-projects-block--compact .az-projects-intro { font-size: 15px; }
	.az-projects-cta { font-size: 13px; padding: 11px 20px; }
}

/* =====================================================
   ФИНАЛЬНЫЙ БЛОК «Спасибо, что дочитали» — [az_vitrina_outro]
   ===================================================== */
.az-outro {
	max-width: 720px;
	margin: 8px auto 0;
	padding: 36px 40px;
	background: var(--az-tint);
	border-left: 4px solid var(--az-accent);
	border-radius: 0 16px 16px 0;
	font-family: 'Inter', sans-serif;
	color: var(--az-text);
}

.az-outro-head {
	display: flex;
	align-items: center;
	gap: 18px;
	margin-bottom: 20px;
}

.az-outro-icon-wrap {
	flex-shrink: 0;
	width: 48px;
	height: 48px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.az-outro-icon { display: block; }

.az-outro-kicker {
	margin: 0 0 2px 0;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--az-accent);
}

.az-outro-title {
	margin: 0;
	font-family: 'Inter', sans-serif;
	font-weight: 400;
	font-size: 26px;
	line-height: 1.1;
	letter-spacing: 0.01em;
	color: var(--az-text);
}

.az-outro-lead {
	margin: 0 0 20px 0;
	font-size: 16px;
	line-height: 1.6;
	color: var(--az-text-alt);
}

.az-outro-lead strong { font-weight: 700; color: var(--az-text); }

.az-outro-list {
	list-style: none;
	padding: 0;
	margin: 0 0 28px 0;
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.az-outro-item {
	display: flex;
	gap: 12px;
	align-items: flex-start;
	font-size: 15px;
	line-height: 1.55;
	color: var(--az-text);
}

.az-outro-check {
	flex-shrink: 0;
	margin-top: 2px;
}

.az-outro-item strong { font-weight: 700; color: var(--az-text); }

.az-outro .az-outro-cta,
body .wp-block-post-content .az-outro .az-outro-cta,
body .az-post-body .az-outro .az-outro-cta {
	display: inline-block !important;
	background: var(--az-accent) !important;
	color: #ffffff !important;
	font-weight: 700 !important;
	font-size: 15px !important;
	letter-spacing: 0.2px !important;
	padding: 14px 28px !important;
	border-radius: 999px !important;
	text-decoration: none !important;
	border: none !important;
	transition: background .18s, transform .18s !important;
}

.az-outro .az-outro-cta:hover,
body .wp-block-post-content .az-outro .az-outro-cta:hover,
body .az-post-body .az-outro .az-outro-cta:hover {
	background: var(--az-accent-hover) !important;
	color: #ffffff !important;
	transform: translateY(-1px) !important;
	text-decoration: none !important;
}

@media (max-width: 600px) {
	/* Промо-блок вставлен в <main>, а не в .az-post-body,
	   поэтому ему нужны собственные боковые поля, иначе он
	   прижимается к кромке экрана, а кнопка обрезается справа (v1.9.35). */
	.az-outro {
		box-sizing: border-box;
		padding: 26px 22px;
		margin-left: 16px;
		margin-right: 16px;
		border-radius: 16px;
	}
	.az-outro-head { gap: 14px; margin-bottom: 16px; }
	.az-outro-icon-wrap { width: 40px; height: 40px; }
	.az-outro-icon { width: 40px; height: 40px; }
	.az-outro-title { font-size: 22px; }
	.az-outro-lead { font-size: 15px; }
	.az-outro-item { font-size: 14px; }
	.az-outro .az-outro-cta { font-size: 14px; padding: 12px 24px !important; width: 100%; text-align: center; }
}

/* =====================================================
   ФУТЕР — тёмный (визуальный вес в низу страницы)
   Бренд-гайд разрешает тёмный фон точечно (не на всю страницу).
   ===================================================== */

.footer-new {
	background: var(--az-dark);
	border-top: 1px solid var(--az-dark-2);
	padding: 48px 48px 0;
	color: #aaaaaa;
}
.footer-top {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 40px;
	padding-bottom: 36px;
	border-bottom: 1px solid rgba(255,255,255,0.05);
	flex-wrap: wrap;
}
.footer-brand { display: flex; flex-direction: column; gap: 12px; }
.footer-brand-logo {
	display: inline-flex;
	align-items: center;
	color: #ffffff;
	text-decoration: none;
}
.footer-brand-logo svg {
	display: block;
	height: 30px;
	width: auto;
}
.footer-brand-tagline { font-size: 12px; color: #888; line-height: 1.6; max-width: 280px; font-weight: 400; }
.footer-nav-block { display: flex; flex-direction: column; gap: 10px; }
.footer-nav-label { font-size: 10px; font-weight: 700; letter-spacing: 3px; text-transform: uppercase; color: #888; margin-bottom: 4px; }
.footer-nav-block a { color: #aaaaaa; text-decoration: none; font-size: 13px; font-weight: 500; transition: color 0.2s; }
.footer-nav-block a:hover { color: var(--az-accent); }
.footer-social-block { display: flex; flex-direction: column; gap: 10px; }
.footer-social-label { font-size: 10px; font-weight: 700; letter-spacing: 3px; text-transform: uppercase; color: #888; margin-bottom: 4px; }
.footer-new .footer-socials { display: flex !important; gap: 10px !important; align-items: center !important; flex-wrap: wrap !important; margin: 0 !important; padding: 0 !important; }
.footer-new .footer-social-pill,
body .footer-new a.footer-social-pill {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	padding: 10px 16px !important;
	width: auto !important;
	height: auto !important;
	background: var(--az-tint) !important;
	border: 1px solid var(--az-border) !important;
	border-radius: 24px !important;
	color: var(--az-accent) !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	transition: background 0.2s, border-color 0.2s, color 0.2s !important;
	flex-shrink: 0 !important;
	line-height: 1 !important;
}
.footer-new .footer-social-pill:hover,
body .footer-new a.footer-social-pill:hover {
	background: var(--az-bg-2) !important;
	border-color: var(--az-text-light) !important;
	color: var(--az-accent-hover) !important;
}
.footer-new .footer-social-pill svg,
body .footer-new a.footer-social-pill svg {
	width: 18px !important;
	height: 18px !important;
	max-width: 18px !important;
	max-height: 18px !important;
	min-width: 18px !important;
	min-height: 18px !important;
	flex-shrink: 0 !important;
	display: inline-block !important;
	vertical-align: middle !important;
}
.footer-new .footer-social-pill span {
	display: inline-block !important;
	line-height: 1 !important;
	color: inherit !important;
}
@media (max-width: 600px) {
	.footer-new .footer-social-pill { padding: 9px 14px !important; font-size: 12px !important; }
}
.footer-middle {
	padding: 24px 0;
	border-bottom: 1px solid rgba(255,255,255,0.05);
	display: flex; gap: 28px; flex-wrap: wrap; align-items: baseline;
}
.footer-legal-item { font-size: 12px; color: #555; line-height: 1.6; }
.footer-legal-item a { color: #aaaaaa; text-decoration: none; transition: color 0.2s; }
.footer-legal-item a:hover { color: var(--az-accent); }
.footer-disclaimer { padding: 20px 0 0; font-size: 11px; color: #555; line-height: 1.65; max-width: 900px; }
.footer-disclaimer a { color: #888; text-decoration: underline; }
.footer-seo { padding: 14px 0 0; font-size: 10px; color: #3a3a3a; line-height: 1.6; max-width: 900px; }
.footer-bottom { padding: 16px 0 40px; }

/* =====================================================
   404
   ===================================================== */
.az-404-wrap {
	max-width: 720px;
	margin: 0 auto;
	padding: 100px 48px;
	text-align: center;
}
.az-404-num {
	font-family: 'Inter', sans-serif;
	font-size: clamp(120px, 20vw, 200px);
	line-height: 1;
	color: var(--az-border);
	letter-spacing: -4px;
}
.az-404-num span { color: var(--az-accent); }
.az-404-title {
	font-family: 'Inter', sans-serif;
	font-size: 36px;
	letter-spacing: 1px;
	color: var(--az-text);
	margin: 16px 0 12px;
}
.az-404-text { font-size: 15px; color: var(--az-text-alt); margin-bottom: 32px; }
.az-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: var(--az-accent);
	color: #ffffff;
	text-decoration: none;
	padding: 14px 32px;
	border-radius: 6px;
	font-family: 'Inter', sans-serif;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: .05em;
	text-transform: uppercase;
	transition: background .2s;
}
.az-btn:hover { background: var(--az-accent-hover); }

/* =====================================================
   АДАПТИВ
   ===================================================== */
@media (max-width: 900px) {
	.az-posts-grid { grid-template-columns: repeat(2, 1fr); }
	.az-related-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
	.footer-new { padding: 32px 16px 0; }
	.footer-top { flex-direction: column; gap: 24px; }
	.footer-middle { flex-direction: column; gap: 8px; }
}

/* =====================================================
   Breadcrumbs, related, sticky, btt
   ===================================================== */

/* Хлебные крошки */
.az-breadcrumbs {
	max-width: 1200px;
	margin: 16px auto 0;
	padding: 0 32px;
	font-family: 'Inter', sans-serif;
	font-size: 12px;
	color: var(--az-text-muted);
}
.az-breadcrumbs a { color: var(--az-text-muted); text-decoration: none; transition: color .18s; }
.az-breadcrumbs a:hover { color: var(--az-accent); }
.az-breadcrumbs span { color: var(--az-text); }

/* Дата обновления */
.az-post-updated {
	display: inline-block;
	margin-left: 12px;
	padding: 3px 10px;
	background: var(--az-tint);
	color: var(--az-accent);
	font-size: 12px;
	font-weight: 600;
	border-radius: 12px;
}

/* Похожие статьи */

/* Заголовок «Читайте также» (v1.4.1).
   Два разных элемента делили класс .az-related-title: заголовок секции (h2)
   и названия карточек (span). Из-за этого секционный заголовок подхватывал
   правило `margin: 0` карточек и прилипал к сетке. Собственный класс
   .az-related-heading развязывает их; !important и селектор по старому классу
   оставлены на случай, если шаблон single.html закреплён в базе редактором
   сайта и приходит со старой инлайновой отбивкой в 24px. */
.az-related-posts > h2.az-related-heading,
.az-related-posts > h2.az-related-title {
	margin-top: 0;
	margin-bottom: 48px !important;
}
.az-related-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
	max-width: 1200px;
	margin: 0 auto;
}
.az-related-card {
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 12px;
	border: 1px solid var(--az-border);
	border-radius: 12px;
	text-decoration: none;
	color: inherit;
	transition: border-color .2s, transform .2s;
	min-width: 0;
	overflow: hidden;
	background: var(--az-bg);
}
.az-related-card:hover { border-color: var(--az-accent); transform: translateY(-2px); }
.az-related-thumb-wrap {
	display: block;
	border-radius: 8px;
	overflow: hidden;
	aspect-ratio: 16/9;
	background: var(--az-bg-2);
}
.az-related-thumb-empty {
	background: var(--az-tint);
	position: relative;
}
.az-related-thumb-empty::after {
	content: 'Азбука Дела';
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: 'Inter', sans-serif;
	font-size: 18px;
	letter-spacing: 0.05em;
	color: var(--az-accent);
	opacity: 0.6;
}
.az-related-thumb { width: 100%; height: 100%; object-fit: cover; display: block; }
.az-related-cat {
	display: block;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--az-accent);
	overflow-wrap: break-word;
	word-wrap: break-word;
}
.az-related-title {
	display: block;
	font-family: 'Inter', sans-serif;
	font-size: 22px;
	line-height: 1.15;
	letter-spacing: 0.01em;
	color: var(--az-text);
	margin: 0;
	overflow-wrap: break-word;
	word-wrap: break-word;
	hyphens: auto;
}
.az-related-date { display: block; font-size: 12px; color: var(--az-text-muted); }

@media (max-width: 768px) {
	.az-related-grid {
		grid-template-columns: 1fr;
		padding: 0 16px;
		max-width: 100%;
		box-sizing: border-box;
	}
	.az-related-card { padding: 14px; }
	.az-related-title { font-size: 20px; }
	.az-related-cat { font-size: 10px; }
	/* На телефоне 48px съедают экран — воздуха хватает и меньшего (v1.4.1) */
	.az-related-posts > h2.az-related-heading,
	.az-related-posts > h2.az-related-title {
		margin-bottom: 32px !important;
	}
}

/* Автоссылки в контенте */
.az-autolink {
	color: var(--az-accent);
	text-decoration: underline;
	text-underline-offset: 3px;
	text-decoration-thickness: 1px;
	transition: color .18s;
}
.az-autolink:hover { color: var(--az-accent-hover); }

/* Sticky-CTA «Спросить ассистента» */
.az-sticky-cta {
	position: fixed;
	right: 20px;
	bottom: 20px;
	z-index: 999;
	max-width: 320px;
	opacity: 0;
	transform: translateY(20px);
	transition: opacity .35s ease, transform .35s ease;
	pointer-events: none;
}
.az-sticky-cta--in {
	opacity: 1;
	transform: translateY(0);
	pointer-events: auto;
}
.az-sticky-cta-link {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 14px 18px;
	background: var(--az-accent);
	color: #fff !important;
	border-radius: 12px;
	text-decoration: none !important;
	box-shadow: var(--az-shadow-lg);
	font-family: 'Inter', sans-serif;
	transition: background .2s;
}
.az-sticky-cta-link:hover { background: var(--az-accent-hover); transform: translateY(-1px); }
.az-sticky-cta-avatar {
	flex-shrink: 0;
	width: 38px; height: 38px;
	border-radius: 50%;
	background: rgba(255,255,255,0.18);
	display: flex; align-items: center; justify-content: center;
}
.az-sticky-cta-avatar svg { width: 22px; height: 22px; }
.az-sticky-cta-text { display: flex; flex-direction: column; gap: 2px; line-height: 1.3; }
.az-sticky-cta-text strong { font-size: 14px; font-weight: 700; }
.az-sticky-cta-text span { font-size: 13px; opacity: 0.9; }
.az-sticky-cta-close {
	position: absolute;
	top: -8px; right: -8px;
	width: 24px; height: 24px;
	background: var(--az-text); color: #fff;
	border: none; border-radius: 50%;
	font-size: 16px; line-height: 1;
	cursor: pointer;
	display: flex; align-items: center; justify-content: center;
	box-shadow: 0 2px 8px rgba(0,0,0,0.2);
	z-index: 1;
}
.az-sticky-cta-close:hover { background: var(--az-text-alt); }

@media (max-width: 600px) {
	.az-sticky-cta { right: 12px; bottom: 12px; left: 12px; max-width: none; }
	.az-sticky-cta-link { padding: 12px 14px; }
	.az-sticky-cta-text strong { font-size: 13px; }
	.az-sticky-cta-text span { font-size: 12px; }
}

/* Кнопка «Назад наверх» */
.az-back-to-top {
	position: fixed;
	right: 20px;
	bottom: 110px;
	width: 44px; height: 44px;
	background: #fff;
	border: 1px solid var(--az-border);
	border-radius: 50%;
	cursor: pointer;
	display: flex; align-items: center; justify-content: center;
	color: var(--az-accent);
	box-shadow: 0 4px 12px rgba(0,0,0,0.08);
	opacity: 0;
	transform: translateY(10px);
	transition: opacity .25s ease, transform .25s ease, border-color .2s;
	z-index: 998;
	pointer-events: none;
}
.az-back-to-top.az-btt--in {
	opacity: 1;
	transform: translateY(0);
	pointer-events: auto;
}
.az-back-to-top:hover { border-color: var(--az-accent); }

@media (max-width: 600px) {
	.az-back-to-top { right: 12px; bottom: 100px; width: 40px; height: 40px; }
}


/* =====================================================
   ЛОГОТИП «АЗБУКА ДЕЛА» — знак «Графа» + текст
   ===================================================== */
.az-logo-mark { display: inline-flex; width: 32px; height: 32px; flex: 0 0 auto; }
.az-logo-mark svg { width: 100%; height: 100%; display: block; }
.az-header-logo-link {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	text-decoration: none;
	color: var(--az-text);
}
.az-logo-text {
	font-family: 'Inter', sans-serif;
	font-weight: 800;
	font-size: 19px;
	letter-spacing: 0.2px;
	color: var(--az-text);
	white-space: nowrap;
}
.az-logo-text em { font-style: normal; color: var(--az-accent); margin-left: 6px; }
.az-logo-text--light { color: #ffffff; }
.az-footer-logo { display: inline-flex; align-items: center; gap: 10px; text-decoration: none; }

/* Дисклеймер в финальном CTA-блоке витрины */
.az-outro-disclaimer {
	margin: 14px 0 0;
	font-size: 12px;
	color: var(--az-text-muted);
	line-height: 1.55;
}

/* =====================================================
   ФОРМА ОБРАТНОЙ СВЯЗИ (v1.2.0)
   Шорткод [az_contact_form] на странице «Контакты».
   Почта на сайте не публикуется — только форма.
   ===================================================== */

.az-form-wrap {
  margin: 32px 0;
}

.az-form {
  display: block;
  max-width: 560px;
}

.az-form-row {
  margin: 0 0 20px;
}

.az-form-row label {
  display: block;
  margin-bottom: 8px;
  font-family: 'Inter', sans-serif;
  font-size: 15px;
  font-weight: 600;
  color: var(--az-text);
}

.az-form input[type="text"],
.az-form input[type="email"],
.az-form textarea {
  width: 100%;
  box-sizing: border-box;
  padding: 12px 14px;
  font-family: 'Inter', sans-serif;
  font-size: 16px; /* 16px — чтобы Safari на iOS не зумил при фокусе */
  line-height: 1.5;
  color: var(--az-text);
  background: var(--az-bg);
  border: 1px solid var(--az-border);
  border-radius: 8px;
  transition: border-color .15s ease, box-shadow .15s ease;
}

.az-form input[type="text"]:focus,
.az-form input[type="email"]:focus,
.az-form textarea:focus {
  outline: none;
  border-color: var(--az-accent);
  box-shadow: 0 0 0 3px rgba(14, 159, 110, .15);
}

.az-form textarea {
  resize: vertical;
  min-height: 140px;
}

.az-form-submit {
  display: inline-block;
  padding: 14px 28px;
  font-family: 'Inter', sans-serif;
  font-size: 15px;
  font-weight: 700;
  color: #fff;
  background: var(--az-accent);
  border: none;
  border-radius: 8px;
  cursor: pointer;
  transition: background .15s ease;
}

.az-form-submit:hover {
  background: var(--az-accent-hover);
}

.az-form-legal {
  margin-top: 16px;
  font-size: 13px;
  line-height: 1.5;
  color: var(--az-text-muted);
}

.az-form-legal a {
  color: var(--az-text-muted);
  text-decoration: underline;
}

/* Поле-ловушка для ботов: невидимо для людей и для скринридеров,
   но остаётся в DOM и заполняется автоматическими скриптами. */
.az-form-hp {
  position: absolute !important;
  left: -9999px !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.az-form-notice {
  margin: 0 0 24px;
  padding: 14px 18px;
  border-radius: 8px;
  font-size: 15px;
  line-height: 1.5;
}

.az-form-ok {
  background: var(--az-tint);
  border-left: 3px solid var(--az-accent);
  color: var(--az-text);
}

.az-form-err {
  background: #FDF2F2;
  border-left: 3px solid #D64545;
  color: #7A2020;
}

@media (max-width: 600px) {
  .az-form-submit {
    width: 100%;
  }
}


/* ---------------------------------------------------------------
 * Слотовые блоки офферов партнёрской сети (v1.4.0; сеть сменена на Saleads.pro
 * 27.07.2026, Инссмарт с 28.07.2026 в чёрном списке)
 * Карточка: белая, тонкая рамка, зелёная боковая полоса-акцент.
 * Карточки рендерятся скрытыми; показывает JS-ротатор (functions 11-бис).
 * ------------------------------------------------------------- */
.az-slot { margin: 34px 0; }

.az-offer {
  position: relative;
  border: 1px solid #E2E8F0;
  border-radius: 14px;
  padding: 20px 22px 18px;
  box-shadow: 0 1px 3px rgba(15, 23, 42, .04);
  background: #fff;
}
.az-offer::before {
  content: "";
  position: absolute;
  left: 0; top: 14px; bottom: 14px;
  width: 3px;
  border-radius: 0 3px 3px 0;
  background: var(--az-accent);
}
.az-offer-disc {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  font-family: var(--wp--preset--font-family--inter, Inter, sans-serif);
  font-size: 11px;
  line-height: 1.45;
  color: #94A3B8;
  margin: 0 0 10px;
}
/* Пометка по 38-ФЗ: слово «Реклама» чуть темнее — оно обязано быть
   читаемым, а не сливаться с фоном. Наименование рекламодателя бывает
   длинным (юрлица туроператоров и страховщиков бывают в несколько слов),
   поэтому строка переносится, а erid прижат вправо и не переносится. */
.az-offer-adv { color: #64748B; max-width: 78%; }
.az-offer-adv b { font-weight: 700; color: #475569; }
.az-offer-erid { white-space: nowrap; margin-left: auto; }
@media (max-width: 600px) {
  .az-offer-adv { max-width: 100%; }
  .az-offer-erid { margin-left: 0; }
}
.az-offer-title {
  font-family: var(--wp--preset--font-family--inter, Inter, sans-serif);
  font-size: 17px;
  font-weight: 800;
  line-height: 1.3;
  margin: 0 0 6px;
  color: #0F172A;
}
.az-offer-text {
  font-size: 14.5px;
  line-height: 1.55;
  color: #334155;
  margin: 0 0 14px;
}
.az-offer-cta,
body .wp-block-post-content .az-offer-cta,
body .az-post-body .az-offer-cta {
  display: inline-block;
  /* ⚠️ 29.07.2026: без border-box на мобильном width:100% складывался
     с padding 22px и кнопка вылезала за правый край карточки на 44px.
     Глобального border-box в теме нет — задаём здесь. */
  box-sizing: border-box;
  max-width: 100%;
  background: var(--az-accent);
  color: #fff;
  font-family: var(--wp--preset--font-family--inter, Inter, sans-serif);
  font-weight: 700;
  font-size: 14.5px;
  padding: 10px 22px;
  border-radius: 10px;
  text-decoration: none;
}
.az-offer-cta:hover { background: var(--az-accent-hover); color: #fff; }
.az-offer-cta--ghost,
body .wp-block-post-content .az-offer-cta--ghost,
body .az-post-body .az-offer-cta--ghost {
  background: #fff;
  color: var(--az-accent);
  border: 1.5px solid var(--az-accent);
}
.az-offer-cta--ghost:hover { background: var(--az-tint); color: var(--az-accent-hover); }
.az-offer-fine {
  font-size: 11.5px;
  color: #94A3B8;
  margin: 10px 0 0;
}
@media (max-width: 600px) {
  .az-offer { padding: 18px 16px 16px; }
  .az-offer-cta { width: 100%; text-align: center; }
}

/* ---------------------------------------------------------------
 * 46-бис. Микро-блоки: узкая плашка в две строки плюс маркировка
 * (решение пользователя 29.07.2026 — 4 крупных блока и 3 микро).
 * Отдельный лёгкий пул офферов: карты, подписки, сервисы.
 * Карточки рендерятся скрытыми; показывает JS-ротатор.
 * ------------------------------------------------------------- */
.az-micro { margin: 26px 0; }

.az-micro-card {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  box-sizing: border-box;
  border: 1px solid #E2E8F0;
  border-left: 3px solid var(--az-accent);
  border-radius: 12px;
  background: #F8FAFC;
  padding: 12px 16px;
}
.az-micro-icon {
  position: relative;
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 3px;
  border-radius: 50%;
  background: var(--az-accent);
}
.az-micro-icon::after {
  content: "";
  position: absolute;
  left: 6px; top: 4px;
  width: 4px; height: 8px;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}
.az-micro-body { min-width: 0; }
.az-micro-title {
  font-family: var(--wp--preset--font-family--inter, Inter, sans-serif);
  font-size: 14.5px;
  font-weight: 800;
  line-height: 1.35;
  color: #0F172A;
  margin: 0 0 3px;
}
.az-micro-text {
  font-size: 13.5px;
  line-height: 1.5;
  color: #475569;
  margin: 0;
}
.az-micro-link,
body .wp-block-post-content .az-micro-link,
body .az-post-body .az-micro-link {
  color: var(--az-accent-hover);
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
}
.az-micro-link:hover { text-decoration: underline; color: var(--az-accent-hover); }
/* Пометка по 38-ФЗ отдельной строкой: длинные юрлица иначе рвут вторую. */
.az-micro-disc {
  font-size: 10.5px;
  line-height: 1.4;
  color: #94A3B8;
  margin: 7px 0 0;
  word-break: break-word;
}
@media (max-width: 600px) {
  .az-micro { margin: 22px 0; }
  .az-micro-card { padding: 12px 14px; gap: 10px; }
  .az-micro-title { font-size: 14px; }
  .az-micro-text { font-size: 13px; }
}

/* ⚠️ Защита атрибута hidden (v1.7.11 / 1.3.12, 29.07.2026).
   Ротатор прячет лишние карточки атрибутом hidden, а он работает только
   через display:none браузерного стиля. Любое своё правило с display —
   а у .az-micro-card стоит display:flex — этот стиль перебивает, и на
   странице разом видны ВСЕ карточки пула вместо одной. Найдено на живом
   сайте 29.07.2026: в статье подряд стояли четыре микро-плашки.
   Правило ниже возвращает hidden силу. Держать выше любых display-правил
   офферных блоков нельзя — нужно ниже, поэтому оно в конце секции. */
.az-offer[hidden],
.az-micro-card[hidden],
.az-slot[hidden],
.az-micro[hidden] { display: none !important; }


/* =====================================================
   ТЕМА «СТАЛЬ» — форма, глубина и служебные цвета ⭐ (13.08.2026)
   =====================================================
   Секция намеренно стоит ПОСЛЕДНЕЙ и работает переопределением:
   выше по файлу ничего не удалено, поэтому откат — это удаление
   одного блока, а не разбор шестидесяти килобайт правок.

   🔴 ПРАВИЛО ТЕМЫ: ЦВЕТ ТОЛЬКО ЗА СМЫСЛ.
   Жёлтый — срок. Красный — штраф, пени, запрет. Зелёный — льгота.
   Всё остальное монохромно. Ссылка выделяется подчёркиванием,
   а не цветом; кнопка — заливкой антрацитом. Читатель за три статьи
   выучивает эту разметку и дальше сканирует страницу глазами,
   но только пока правило соблюдается без исключений.
   ===================================================== */

/* --- Заголовки -------------------------------------------------------- */
h1, h2, h3,
.az-page-title, .az-archive-title, .az-post-title, .az-single-title,
.az-post-card-body h3, .az-related-title, .az-offer-title,
.az-outro-title, .az-projects-intro, .az-404-title, .az-logo-text {
	font-family: var(--az-font-h);
	letter-spacing: -.02em;
}
.az-post-body p, .az-post-body li, .wp-block-post-content p { font-family: 'Inter', sans-serif; }

/* --- Знак и логотип --------------------------------------------------- */
.az-logo-mark svg, .az-header-logo-svg { border-radius: 0; }
.az-logo-text em { font-style: normal; color: var(--az-text); }
.az-logo-text--light em { color: #FFFFFF; }

/* --- Шапка ------------------------------------------------------------ */
.az-site-header { border-bottom: 1px solid var(--az-border); }

/* --- Ссылки в тексте: подчёркивание вместо цвета ---------------------- */
.wp-block-post-content a,
.az-post-body a {
	color: var(--az-text);
	text-decoration: underline;
	text-decoration-color: var(--az-accent);
	text-decoration-thickness: 2px;
	text-underline-offset: 3px;
}
.wp-block-post-content a:hover,
.az-post-body a:hover { color: var(--az-accent-hover); text-decoration-color: var(--az-accent-hover); }
.wp-block-post-content ul li::marker { color: var(--az-text-muted); }

/* --- Карточки постов: держатся на линии, а не на тени ----------------- */
.az-post-card {
	border: 1px solid var(--az-border);
	border-radius: var(--az-radius);
	box-shadow: none;
	background: var(--az-bg);
	transition: border-color .15s ease, box-shadow .15s ease;
}
.az-post-card:hover { border-color: var(--az-text-light); box-shadow: var(--az-shadow); transform: none; }
.az-related-card { border-radius: var(--az-radius); border: 1px solid var(--az-border); box-shadow: none; }

/* Плашка рубрики на карточке: тонировка с рамкой, без цвета */
.az-post-cat-badge {
	color: var(--az-text-muted);
	background: var(--az-tint);
	border: 1px solid var(--az-border);
	border-radius: var(--az-pill);
	padding: 6px 10px;
	text-transform: uppercase;
	letter-spacing: .12em;
	font-size: 10.5px;
	font-weight: 700;
}

/* Время чтения — нейтральная точка */
.az-post-readtime::before {
	content: "";
	display: inline-block;
	width: 5px; height: 5px;
	margin-right: 7px;
	border-radius: 50%;
	background: var(--az-text-light);
	vertical-align: middle;
}

/* --- Панель рубрик ---------------------------------------------------- */
.az-cats-item { border-radius: var(--az-pill); padding: 8px 14px; }
.az-cats-item:hover { background: var(--az-dark); border-color: var(--az-dark); color: #FFFFFF; }
.az-cats-dropdown { border-radius: var(--az-radius-sm); box-shadow: var(--az-shadow-lg); }

/* --- Заголовок страницы и архива: подложка, а не градиент -------------- */
.az-page-heading, .az-archive-hero {
	background: var(--az-bg-2);
	border-bottom: 1px solid var(--az-border);
	color: var(--az-text);
	position: relative;
	overflow: hidden;
}
.az-page-heading .az-page-title, .az-archive-hero .az-archive-title { color: var(--az-text); }
.az-page-heading .az-page-desc, .az-archive-hero p { color: var(--az-text-muted); opacity: 1; }

/* Кикер над заголовком */
.az-hero-kicker {
	display: inline-block;
	font: 700 11px/1 'Inter', sans-serif;
	letter-spacing: .16em;
	text-transform: uppercase;
	background: transparent;
	color: var(--az-text-muted);
	border: 1px solid var(--az-border);
	padding: 7px 12px;
	border-radius: var(--az-pill);
	margin-bottom: 16px;
}

/* --- Кнопки: прямоугольные, антрацит, без свечения -------------------- */
.az-btn, .az-offer-cta, .az-form-submit, .az-header-cta-btn, .az-mobile-cta {
	border-radius: var(--az-pill);
	box-shadow: none;
	background: var(--az-accent);
	color: #FFFFFF;
}
.az-btn:hover, .az-offer-cta:hover, .az-form-submit:hover { background: var(--az-accent-hover); color: #FFFFFF; }
.az-offer-cta--ghost {
	box-shadow: none;
	background: transparent;
	border: 1px solid var(--az-border);
	color: var(--az-text);
}
.az-offer-cta--ghost:hover { background: var(--az-tint); color: var(--az-text); }

/* --- Врезка «Суть» ---------------------------------------------------- */
.az-tldr {
	border-radius: var(--az-radius-sm);
	background: var(--az-tint);
	border-left: none;
	border: 1px solid var(--az-border);
}
.az-faq { border-radius: var(--az-radius-sm); }

/* --- ⭐ ВРЕЗКА «ЧЕСТНЫЙ МИНУС» — опознавательный знак формата ----------
   В MD пишется цитатой, первая строка жирная:
       > **Честный минус.** Зачёт работает по дате фактической уплаты…
   Отдельный класс не нужен: цитата в статье бывает только этой.

   Почему плашка тёмная, а не цветная: жёлтый и красный в этой теме уже
   заняты сроком и штрафом, и «минус» в их цвете читался бы как ещё одно
   предупреждение. Тёмный блок не кричит, но и не путается с рекламой. */
.az-post-body blockquote, .wp-block-post-content blockquote {
	background: var(--az-minus-bg);
	color: var(--az-minus-fg);
	border-left: 5px solid var(--az-minus-line);
	border-radius: var(--az-radius-sm);
	padding: 20px 22px;
	margin: 0 0 26px;
	font-style: normal;
}
.az-post-body blockquote p, .wp-block-post-content blockquote p {
	color: var(--az-minus-fg);
	font-family: 'Inter', sans-serif;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 1.65;
}
.az-post-body blockquote strong, .wp-block-post-content blockquote strong {
	display: block;
	font: 800 10.5px/1 'Inter', sans-serif;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--az-minus-line);
	margin-bottom: 10px;
}
.az-post-body blockquote a, .wp-block-post-content blockquote a { color: #FFFFFF; text-decoration-color: var(--az-minus-line); }

/* --- ⭐ СЛУЖЕБНАЯ ТРОЙКА: срок, штраф, льгота -------------------------
   Три класса на всю тему. Больше цветных сущностей не заводить. */
.az-warn {
	background: var(--az-warn-bg);
	border-left: 4px solid var(--az-warn-line);
	border-radius: var(--az-radius-sm);
	padding: 15px 18px;
	margin: 0 0 24px;
	color: var(--az-warn);
}
.az-warn strong, .az-warn b {
	display: block;
	font: 800 10.5px/1 'Inter', sans-serif;
	letter-spacing: .13em;
	text-transform: uppercase;
	color: var(--az-warn);
	margin-bottom: 8px;
}
.az-warn p { margin: 0; color: var(--az-warn); }
.az-alert-text { color: var(--az-alert); font-weight: 600; }
.az-ok-text    { color: var(--az-ok);    font-weight: 600; }

/* --- Слоты офферов ---------------------------------------------------- */
.az-offer {
	border: 1px solid var(--az-border);
	border-top: 4px solid var(--az-accent);
	border-radius: var(--az-radius);
	box-shadow: none;
}
.az-sticky-cta { border-radius: var(--az-radius); box-shadow: var(--az-shadow-lg); }
.az-micro-card, .az-projects-block, .az-outro { border-radius: var(--az-radius); }

/* --- Таблицы: ради них половина решений этой темы --------------------- */
.az-post-body table, .wp-block-post-content table {
	border: 1px solid var(--az-border);
	border-radius: var(--az-radius-sm);
	border-collapse: collapse;
	overflow: hidden;
}
.az-post-body table th, .wp-block-post-content table th {
	background: var(--az-tint);
	color: var(--az-text);
	font-size: 11.5px;
	letter-spacing: .06em;
	text-transform: uppercase;
	border-bottom: 1px solid var(--az-border);
}
.az-post-body table td, .wp-block-post-content table td {
	border-bottom: 1px solid var(--az-border);
	color: var(--az-text-alt);
	vertical-align: top;
}
.az-post-body table tbody tr:nth-child(even) td,
.wp-block-post-content table tbody tr:nth-child(even) td { background: var(--az-bg-2); }
.az-post-body table tbody tr:last-child td,
.wp-block-post-content table tbody tr:last-child td { border-bottom: none; }
.az-post-body table th:first-child { border-radius: 0; }
.az-post-body table th:last-child  { border-radius: 0; }

/* --- Форма и подвал --------------------------------------------------- */
.az-form-row input, .az-form-row textarea { border-radius: var(--az-radius-sm); }
.az-footer-logo svg { border-radius: 0; }


/* =====================================================================
   ПОИСК ПО СТАТЬЯМ — 08.08.2026
   =====================================================================
   Лупа в шапке раскрывает панель под ней. Панель одна на десктоп
   и на мобильный, поэтому формы в мобильном меню нет.
   Цвета берутся из :root, своих значений здесь нет.
   ===================================================================== */

/* --- Кнопка-лупа в шапке ---------------------------------------------- */
.az-search-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	padding: 0;
	background: none;
	border: 1px solid var(--az-border);
	border-radius: 6px;
	color: var(--az-text);
	cursor: pointer;
	transition: border-color .18s, color .18s, background .18s;
}
.az-search-toggle svg { width: 19px; height: 19px; display: block; }
.az-search-toggle:hover { border-color: var(--az-accent); color: var(--az-accent); }
.az-search-toggle.active {
	background: var(--az-accent);
	border-color: var(--az-accent);
	color: #ffffff;
}

/* --- Панель под шапкой ------------------------------------------------ */
.az-search-panel {
	display: none;
	border-top: 1px solid var(--az-border);
	background: var(--az-bg-2);
	padding: 18px 24px;
}
.az-search-panel.open { display: block; }

/* --- Сама форма -------------------------------------------------------- */
.az-search-form {
	display: flex;
	align-items: stretch;
	gap: 10px;
	width: 100%;
	margin: 0;
}
/* Подпись нужна скринридеру, но не глазу: placeholder меткой не считается. */
.az-search-label {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
	border: 0;
}
.az-search-input {
	flex: 1 1 auto;
	min-width: 0;
	font-family: 'Inter', sans-serif;
	font-size: 15px;
	line-height: 1.4;
	color: var(--az-text);
	background: var(--az-bg);
	border: 1px solid var(--az-border);
	border-radius: var(--az-radius-sm);
	padding: 12px 16px;
	transition: border-color .18s, box-shadow .18s;
}
.az-search-input::placeholder { color: var(--az-text-light); }
.az-search-input:focus {
	outline: none;
	border-color: var(--az-accent);
	box-shadow: 0 0 0 3px rgba(22, 24, 26, .10);
}
/* Крестик очистки в WebKit — родной, но серый и мелкий. Оставляем как есть:
   свой рисовать дороже, чем польза. */

.az-search-submit {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	flex-shrink: 0;
	background: var(--az-accent);
	color: #ffffff;
	border: none;
	border-radius: var(--az-radius-sm);
	padding: 12px 22px;
	font-family: 'Inter', sans-serif;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: .02em;
	cursor: pointer;
	transition: background .18s;
}
.az-search-submit svg { width: 17px; height: 17px; display: block; }
.az-search-submit:hover { background: var(--az-accent-hover); }

/* --- Страница результатов --------------------------------------------- */
.az-search-hero { text-align: left; }
.az-search-title {
	font-family: 'Inter Tight', 'Inter', sans-serif;
	font-size: clamp(34px, 5.5vw, 60px);
	line-height: 1.08;
	letter-spacing: .01em;
	color: var(--az-text);
	margin: 0 0 12px;
}
.az-search-term { color: var(--az-accent); }
.az-search-count {
	font-family: 'Inter', sans-serif;
	font-size: 16px;
	line-height: 1.6;
	color: var(--az-text-muted);
	margin: 0 0 22px;
}
.az-search-hero .az-search-form { max-width: 620px; margin-bottom: 8px; }

/* --- Ничего не нашлось -------------------------------------------------- */
.az-search-empty {
	padding: 40px 0 70px;
	font-family: 'Inter', sans-serif;
}
.az-search-empty-lead {
	font-size: 17px;
	line-height: 1.65;
	color: var(--az-text-alt);
	margin: 0 0 14px;
}
.az-search-empty-hint {
	font-size: 15px;
	line-height: 1.65;
	color: var(--az-text-muted);
	margin: 0;
}
.az-search-empty a { color: var(--az-accent); text-decoration: none; border-bottom: 1px solid var(--az-border); }
.az-search-empty a:hover { border-bottom-color: var(--az-accent); }

/* --- Форма в конце статьи ---------------------------------------------- */
/* Врезка между телом статьи и метками. Фон и рамка те же, что у панели
   поиска в шапке, — форма опознаётся как один и тот же элемент. */
.az-post-search {
	margin: 44px 0 0;
	padding: 22px 24px 24px;
	background: var(--az-bg-2);
	border: 1px solid var(--az-border);
	border-radius: var(--az-radius-sm);
}
.az-post-search-title {
	font-family: 'Inter', sans-serif;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.4;
	color: var(--az-text);
	margin: 0 0 12px;
}
.az-post-search .az-search-form { width: 100%; }

/* --- Форма на 404 ------------------------------------------------------ */
.az-404-search { width: 100%; max-width: 560px; margin: 4px 0 8px; }
.az-404-search .az-search-form { width: 100%; }

/* --- Узкие экраны ------------------------------------------------------ */
@media (max-width: 600px) {
	.az-search-panel { padding: 14px 16px; }
	.az-post-search { margin-top: 32px; padding: 18px 16px 20px; }
	.az-search-form { gap: 8px; }
	.az-search-input { font-size: 16px; padding: 11px 14px; } /* 16px — иначе iOS зумит поле при фокусе */
	.az-search-submit { padding: 11px 16px; }
	.az-search-submit span { display: none; }               /* на узком оставляем одну лупу */
	.az-search-count { font-size: 15px; }
}
