/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.2
*/

/* ==========================================================================
   Оформление сайта. Цвета, радиусы и тени собраны в переменных —
   чтобы поменять оттенок, достаточно поправить значение здесь.
   ========================================================================== */

:root {
	--ct-brand: #174d8d;
	--ct-brand-dark: #103b6e;
	--ct-link: #15569c;
	--ct-ink: #14263a;
	--ct-text: #27384b;
	--ct-muted: #5d6d7e;
	--ct-line: #dde6ef;
	--ct-bg: #f3f6fa;
	--ct-tint: #eef4fb;
	--ct-surface: #fff;
	--ct-footer: #0f2338;
	--ct-footer-text: #b9c7d6;
	--ct-radius: 16px;
	--ct-radius-sm: 10px;
	--ct-shadow: 0 1px 2px rgba(20, 38, 58, .04), 0 10px 24px -18px rgba(20, 38, 58, .22);
	--ct-font: "Golos Text", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	--accent: #174d8d;
}

/* --- Основа ------------------------------------------------------------- */

body {
	background-color: var(--ct-bg);
	color: var(--ct-text);
	line-height: 1.65;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

body, button, input, select, textarea {
	font-family: var(--ct-font);
}

::selection {
	background: #cfe1f7;
	color: var(--ct-ink);
}

a, a:visited {
	color: var(--ct-link);
}

a:hover, a:focus, a:active {
	color: var(--ct-brand-dark);
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
.pseudo-clearfy-link:focus-visible {
	outline: 2px solid #2f7de1;
	outline-offset: 2px;
	border-radius: 4px;
}

h1, h2, h3, h4, h5, h6 {
	color: var(--ct-ink);
	font-weight: 700;
	letter-spacing: -.015em;
}

h1 {
	font-size: clamp(27px, 3.4vw, 38px);
	line-height: 1.15;
	font-weight: 700;
	letter-spacing: -.02em;
}

h2 {
	font-size: clamp(22px, 2.5vw, 27px);
	line-height: 1.25;
	font-weight: 700;
}

h3 {
	font-size: 20px;
	line-height: 1.3;
}

h4 {
	font-size: 18px;
	line-height: 1.35;
	margin-bottom: 14px;
}

hr {
	background-color: var(--ct-line);
	margin-top: 32px;
	margin-bottom: 32px;
}

/* --- Ширина и поля контейнеров ------------------------------------------ */

body .grid-container {
	max-width: 1180px;
}

.inside-navigation.grid-container,
#page.grid-container,
.footer-widgets-container.grid-container,
.inside-site-info.grid-container {
	padding-left: 20px;
	padding-right: 20px;
}

/* --- Шапка -------------------------------------------------------------- */

.site-header {
	background-color: var(--ct-surface);
	color: var(--ct-text);
}

.site-header .inside-header {
	padding: 18px 20px 16px;
}

.site-branding {
	display: inline-grid;
	grid-template-columns: auto 1fr;
	column-gap: 14px;
	align-items: center;
	text-align: left;
}

/* Знак слева от названия (весы). Не нужен — удалите этот блок. */
.site-branding::before {
	content: "";
	grid-row: 1 / span 2;
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: var(--ct-brand) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3.5v16M8.5 19.5h7M4.5 6.5h15'/%3E%3Cpath d='M4.5 6.5 2 13M4.5 6.5 7 13M19.5 6.5 17 13M19.5 6.5 22 13' stroke-width='1.3'/%3E%3Cpath d='M1.6 13h5.8a2.9 2.9 0 0 1-5.8 0zM16.6 13h5.8a2.9 2.9 0 0 1-5.8 0z' fill='%23fff' stroke-width='1.2'/%3E%3C/svg%3E") center / 28px no-repeat;
}

.main-title {
	font-size: 23px;
	font-weight: 800;
	letter-spacing: -.02em;
	line-height: 1.2;
}

.main-title a,
.main-title a:hover {
	color: var(--ct-ink);
}

.site-description {
	color: var(--ct-muted);
	font-size: 14px;
	line-height: 1.4;
}

/* --- Главное меню -------------------------------------------------------- */

.main-navigation,
.main-navigation ul ul {
	background-color: var(--ct-surface);
}

.main-navigation {
	border-top: 1px solid var(--ct-line);
	border-bottom: 1px solid var(--ct-line);
}

.main-navigation .main-nav ul li a,
.main-navigation .menu-toggle,
.main-navigation .menu-bar-items {
	color: var(--ct-ink);
}

.main-navigation .main-nav > ul {
	margin-left: -14px;
}

.main-navigation .main-nav > ul > li > a {
	margin: 8px 2px 8px 0;
	padding-left: 14px;
	padding-right: 14px;
	line-height: 36px;
	border-radius: 9px;
	font-size: 15px;
	font-weight: 500;
}

.main-navigation .main-nav > ul > li.menu-item-has-children > a {
	padding-right: 0;
}

.main-navigation .main-nav > ul > li > a .dropdown-menu-toggle {
	padding-left: 6px;
	padding-right: 12px;
}

.main-navigation .main-nav ul li:not([class*="current-menu-"]):hover > a,
.main-navigation .main-nav ul li:not([class*="current-menu-"]):focus > a,
.main-navigation .main-nav ul li.sfHover:not([class*="current-menu-"]) > a,
.main-navigation .menu-bar-item:hover > a,
.main-navigation .menu-bar-item.sfHover > a,
.main-navigation .main-nav ul li[class*="current-menu-"] > a {
	color: var(--ct-brand);
	background-color: var(--ct-tint);
}

.main-navigation .main-nav > ul > li[class*="current-menu-"] > a {
	font-weight: 600;
}

/* Выпадающее подменю */
.main-navigation ul ul {
	box-sizing: border-box;
	width: 264px;
	padding: 6px;
	border: 1px solid var(--ct-line);
	border-radius: 12px;
	box-shadow: 0 18px 40px -14px rgba(20, 38, 58, .28);
}

.main-navigation .main-nav ul ul li a {
	color: var(--ct-ink);
	padding: 9px 12px;
	border-radius: 8px;
	font-size: 14.5px;
	line-height: 1.35;
}

.main-navigation .main-nav ul ul li:not([class*="current-menu-"]):hover > a,
.main-navigation .main-nav ul ul li:not([class*="current-menu-"]):focus > a,
.main-navigation .main-nav ul ul li.sfHover:not([class*="current-menu-"]) > a,
.main-navigation .main-nav ul ul li[class*="current-menu-"] > a {
	color: var(--ct-brand);
	background-color: var(--ct-tint);
}

@media (min-width: 769px) {

	/* Стрелка вложенного подменю — в одну строку с названием пункта */
	.main-navigation .main-nav ul ul li.menu-item-has-children > a {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 8px;
		padding-right: 10px;
	}

	.main-navigation .main-nav ul ul .dropdown-menu-toggle {
		float: none;
		height: auto;
		margin: 0;
		padding: 0;
	}
}

/* Вложенное подменю последнего пункта открываем влево, чтобы не уезжало за край экрана */
.main-navigation:not(.toggled) .main-nav > ul > li:last-child ul li:hover > ul,
.main-navigation:not(.toggled) .main-nav > ul > li:last-child ul li.sfHover > ul {
	left: auto;
	right: 100%;
}

button.menu-toggle,
button.menu-toggle:hover,
button.menu-toggle:focus,
.main-navigation .mobile-bar-items a,
.main-navigation .mobile-bar-items a:hover,
.main-navigation .mobile-bar-items a:focus {
	color: var(--ct-ink);
}

/* --- Карточки контента ---------------------------------------------------- */

.separate-containers .site-main {
	margin-top: 28px;
	margin-bottom: 44px;
}

.separate-containers .inside-right-sidebar,
.separate-containers .inside-left-sidebar {
	margin-top: 28px;
	margin-bottom: 44px;
}

.separate-containers .inside-article,
.separate-containers .comments-area,
.separate-containers .paging-navigation,
.sidebar .widget {
	border: 1px solid var(--ct-line);
	border-radius: var(--ct-radius);
	box-shadow: var(--ct-shadow);
}

/* Заголовок рубрики — без плашки, прямо на фоне */
.separate-containers .page-header {
	background-color: transparent;
	padding: 4px 0 0;
	margin-bottom: 18px;
}

.page-header .page-title {
	font-size: clamp(26px, 3vw, 34px);
}

.page-header .taxonomy-description {
	margin-top: 10px;
	color: var(--ct-muted);
}

/* --- Запись и страница ---------------------------------------------------- */

.entry-meta {
	color: var(--ct-muted);
	font-size: 14px;
}

.entry-header .entry-meta {
	margin-top: .7em;
}

.entry-meta a {
	color: var(--ct-muted);
}

.entry-meta a:hover {
	color: var(--ct-brand);
}

.entry-content h2 {
	margin-top: 1.7em;
	margin-bottom: .6em;
}

.entry-content h3,
.entry-content h4 {
	margin-top: 1.5em;
	margin-bottom: .5em;
}

.entry-content > :first-child,
.entry-content section > :first-child {
	margin-top: 0;
}

.entry-content section + section {
	margin-top: 2.2em;
}

.entry-content p {
	margin-bottom: 1.2em;
}

.entry-content a {
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
	text-decoration-color: rgba(21, 86, 156, .35);
}

.entry-content a:hover {
	text-decoration-color: currentColor;
}

.entry-content ul,
.entry-content ol {
	margin: 0 0 1.3em 1.35em;
}

.entry-content li {
	margin-bottom: .4em;
}

.entry-content li > ul,
.entry-content li > ol {
	margin-top: .4em;
	margin-bottom: 0;
}

.entry-content li::marker {
	color: var(--ct-brand);
	font-weight: 600;
}

.entry-content img,
.entry-content video,
.entry-content .wp-video {
	border-radius: 12px;
	max-width: 100%;
}

.entry-content blockquote {
	margin: 1.6em 0;
	padding: 18px 22px;
	border-left: 4px solid #3477b6;
	border-radius: 0 12px 12px 0;
	background: var(--ct-tint);
	color: var(--ct-ink);
	font-size: 1em;
	font-style: normal;
}

.entry-content blockquote p:last-child {
	margin-bottom: 0;
}

/* Партнёрские ссылки (Clearfy) — как обычные ссылки в тексте */
.entry-content .pseudo-clearfy-link {
	color: var(--ct-link);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
	text-decoration-color: rgba(21, 86, 156, .35);
}

.entry-content .pseudo-clearfy-link:hover {
	color: var(--ct-brand-dark);
	text-decoration-color: currentColor;
}

/* Кнопки: формы, a.button и кнопки-заявки в статьях */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"],
a.button,
a.button:visited,
a.wp-block-button__link:not(.has-background),
.entry-content .button.pseudo-clearfy-link {
	display: inline-block;
	padding: 12px 22px;
	border: 1px solid transparent;
	border-radius: var(--ct-radius-sm);
	background-color: var(--ct-brand);
	color: #fff;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.35;
	text-decoration: none;
	transition: background-color .15s ease, box-shadow .15s ease, transform .15s ease;
}

button:hover,
html input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover,
a.button:hover,
button:focus,
html input[type="button"]:focus,
input[type="reset"]:focus,
input[type="submit"]:focus,
a.button:focus,
a.wp-block-button__link:not(.has-background):active,
a.wp-block-button__link:not(.has-background):focus,
a.wp-block-button__link:not(.has-background):hover,
.entry-content .button.pseudo-clearfy-link:hover {
	background-color: var(--ct-brand-dark);
	color: #fff;
}

.entry-content a.button:hover,
.entry-content .button.pseudo-clearfy-link:hover {
	box-shadow: 0 10px 20px -12px rgba(16, 59, 110, .7);
	transform: translateY(-1px);
}

/* Ссылка-заявка в ячейке таблицы — компактная кнопка */
.entry-content td > .pseudo-clearfy-link:only-child:not(.button) {
	display: inline-block;
	padding: 6px 12px;
	border-radius: 8px;
	background: var(--ct-tint);
	color: var(--ct-brand);
	font-size: 14px;
	font-weight: 600;
	line-height: 1.35;
	text-decoration: none;
	white-space: nowrap;
}

.entry-content td > .pseudo-clearfy-link:only-child:not(.button):hover {
	background: var(--ct-brand);
	color: #fff;
}

/* Поля форм */
input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="number"],
textarea,
select {
	border-color: #cbd8e5;
	border-radius: var(--ct-radius-sm);
	background-color: #fff;
	color: var(--ct-ink);
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="number"]:focus,
textarea:focus,
select:focus {
	border-color: #3477b6;
	background-color: #fff;
	color: var(--ct-ink);
	box-shadow: 0 0 0 3px rgba(52, 119, 182, .18);
	outline: 0;
}

/* --- Таблицы (кроме .ct-table на главной — у неё свои стили) -------------- */

table:not(.ct-table) {
	border: 1px solid var(--ct-line);
	border-radius: 12px;
	overflow: hidden;
	font-size: 15px;
	line-height: 1.45;
}

table:not(.ct-table) th,
table:not(.ct-table) td {
	padding: 12px 16px;
	border-width: 0 0 1px;
	border-color: var(--ct-line);
	vertical-align: top;
}

table:not(.ct-table) thead th {
	background: #e8f0f9;
	color: var(--ct-ink);
	font-size: 13.5px;
	font-weight: 600;
}

table:not(.ct-table) tbody tr:nth-child(even) {
	background: #f8fafc;
}

table:not(.ct-table) tbody tr:last-child > * {
	border-bottom: 0;
}

table:not(.ct-table) caption {
	padding: 0 0 10px;
	color: var(--ct-ink);
	font-weight: 600;
}

table:not(.ct-table) small {
	color: var(--ct-muted);
}

.cti-table-wrap {
	margin-bottom: 1.5em;
}

.cti-table-wrap table {
	margin-bottom: 0;
}

/* --- Блоки статей --------------------------------------------------------- */

/* Мнение эксперта */
.article-expert {
	margin: 2em 0;
	padding: 24px 28px;
	border: 1px solid #d3e1ef;
	border-radius: var(--ct-radius);
	background: var(--ct-tint);
}

.entry-content .article-expert h2 {
	margin: 0 0 .7em;
	font-size: 20px;
	line-height: 1.3;
}

.entry-content .article-expert blockquote {
	margin: 0 0 1em;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: none;
}

.entry-content .article-expert blockquote p {
	margin-bottom: .9em;
}

.entry-content .article-expert__author {
	margin: 0;
	padding-top: 14px;
	border-top: 1px solid #d3e1ef;
	color: var(--ct-muted);
	font-size: 14.5px;
	line-height: 1.5;
}

.article-expert__author strong {
	color: var(--ct-ink);
}

/* Блок «получить расчёт» */
.article-lead-form {
	margin: 2em 0;
	padding: 24px 28px;
	border: 1px solid var(--ct-line);
	border-radius: var(--ct-radius);
	background: #f8fafc;
}

.entry-content .article-lead-form > :first-child {
	margin-top: 0;
}

.entry-content .article-lead-form > :last-child {
	margin-bottom: 0;
}

/* Сноски и источники на страницах компаний */
.entry-content .cti-source {
	color: var(--ct-muted);
	font-size: 14px;
}

.entry-content .cti-note {
	padding: 14px 18px;
	border-left: 4px solid #3477b6;
	border-radius: 0 12px 12px 0;
	background: var(--ct-tint);
	font-size: 15.5px;
}

/* Плитки подрубрик в рубрике «Статьи о страховании» (выводятся из functions.php) */
.ct-tiles {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(178px, 1fr));
	gap: 14px;
	margin-top: 22px;
}

.ct-tiles .ct-tile {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	gap: 4px;
	padding: 24px 14px 20px;
	border: 1px solid var(--ct-line);
	border-radius: var(--ct-radius);
	background: var(--ct-surface);
	box-shadow: var(--ct-shadow);
	color: var(--ct-ink);
	text-align: center;
	text-decoration: none;
	transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}

.ct-tiles .ct-tile:hover,
.ct-tiles .ct-tile:focus-visible {
	border-color: #c3d5e8;
	box-shadow: 0 1px 2px rgba(20, 38, 58, .05), 0 18px 32px -20px rgba(20, 38, 58, .45);
	color: var(--ct-brand);
	transform: translateY(-2px);
}

.ct-tile__icon {
	width: 46px;
	height: 46px;
	margin-bottom: 10px;
	color: var(--ct-brand);
}

.ct-tile__name {
	font-size: 15.5px;
	font-weight: 600;
	line-height: 1.3;
}

.ct-tile__count {
	color: var(--ct-muted);
	font-size: 13px;
}

/* --- Рубрики, метки, списки записей --------------------------------------- */

.blog .inside-article,
.archive .inside-article,
.search .inside-article {
	padding: 28px 32px;
	transition: border-color .15s ease, box-shadow .15s ease;
}

.blog .inside-article:hover,
.archive .inside-article:hover,
.search .inside-article:hover {
	border-color: #c3d5e8;
	box-shadow: 0 1px 2px rgba(20, 38, 58, .05), 0 16px 30px -20px rgba(20, 38, 58, .4);
}

h2.entry-title {
	font-size: 22px;
	line-height: 1.3;
}

.entry-title a,
.entry-title a:visited {
	color: var(--ct-ink);
}

.entry-title a:hover {
	color: var(--ct-brand);
}

.entry-summary:not(:first-child) {
	margin-top: 1em;
}

footer.entry-meta {
	margin-top: 1.6em;
	padding-top: 1.1em;
	border-top: 1px solid var(--ct-line);
}

/* Рубрики и метки — «чипы»; font-size: 0 прячет запятые между ссылками */
footer.entry-meta .cat-links,
footer.entry-meta .tags-links {
	font-size: 0;
}

footer.entry-meta .gp-icon {
	font-size: 14px;
	margin-right: 8px;
}

footer.entry-meta .cat-links a,
footer.entry-meta .tags-links a {
	display: inline-block;
	margin: 0 6px 6px 0;
	padding: 4px 11px;
	border: 1px solid transparent;
	border-radius: 999px;
	background: var(--ct-tint);
	color: var(--ct-brand);
	font-size: 13px;
	line-height: 1.4;
}

footer.entry-meta .tags-links a {
	border-color: var(--ct-line);
	background: transparent;
	color: var(--ct-muted);
}

footer.entry-meta .cat-links a:hover,
footer.entry-meta .tags-links a:hover {
	border-color: var(--ct-brand);
	background: var(--ct-brand);
	color: #fff;
}

/* Постраничная навигация */
.paging-navigation .nav-links {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px;
}

.paging-navigation .nav-links > * {
	min-width: 40px;
	padding: 0 12px;
	border: 1px solid var(--ct-line);
	border-radius: var(--ct-radius-sm);
	color: var(--ct-ink);
	font-size: 15px;
	font-weight: 500;
	line-height: 38px;
	text-align: center;
}

.paging-navigation .nav-links a:hover {
	border-color: var(--ct-brand);
	color: var(--ct-brand);
}

.paging-navigation .nav-links .current {
	border-color: var(--ct-brand);
	background: var(--ct-brand);
	color: #fff;
	font-weight: 600;
}

.paging-navigation .nav-links .dots {
	min-width: 0;
	padding: 0 4px;
	border-color: transparent;
}

/* --- Боковая колонка ------------------------------------------------------- */

.sidebar .widget {
	padding: 22px 24px;
	background-color: var(--ct-surface);
	font-size: 15px;
}

.sidebar .widget .widget-title {
	margin-bottom: 10px;
	color: var(--ct-ink);
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1.4;
}

.sidebar .widget ul li {
	padding-bottom: 0;
}

.sidebar .widget ul li a {
	display: block;
	margin: 0 -10px;
	padding: 7px 10px;
	border-radius: 8px;
	color: var(--ct-text);
	line-height: 1.4;
}

.sidebar .widget ul li a:hover,
.sidebar .widget ul li.current-menu-item > a {
	background: var(--ct-tint);
	color: var(--ct-brand);
}

.sidebar .widget_search {
	padding: 14px;
}

.widget .search-field {
	padding-left: 42px;
	background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235d6d7e' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.6-3.6'/%3E%3C/svg%3E") 14px center / 18px no-repeat;
}

/* --- Подвал ---------------------------------------------------------------- */

.footer-widgets {
	padding: 48px 0 44px;
	background-color: var(--ct-footer);
	color: var(--ct-footer-text);
}

.footer-widgets .widget {
	font-size: 15px;
}

.footer-widgets .widget-title {
	margin-bottom: 14px;
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0;
}

.footer-widgets .textwidget p {
	margin-bottom: .55em;
}

.footer-widgets a,
.footer-widgets a:visited {
	color: var(--ct-footer-text);
}

.footer-widgets a:hover {
	color: #fff;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.site-info {
	padding: 18px 0;
	border-top: 1px solid rgba(255, 255, 255, .08);
	background-color: #0b1b2c;
	color: #8ea2b7;
	font-size: 13.5px;
	line-height: 1.6;
}

.site-info a,
.site-info a:visited {
	color: #c4d1de;
}

.site-info a:hover {
	color: #fff;
}

/* --- Мелочи ---------------------------------------------------------------- */

a.generate-back-to-top {
	width: 44px;
	line-height: 44px;
	border-radius: 12px;
	background-color: var(--ct-brand);
	box-shadow: 0 10px 24px -10px rgba(16, 59, 110, .6);
}

a.generate-back-to-top:hover,
a.generate-back-to-top:focus {
	background-color: var(--ct-brand-dark);
}

.clearfy-cookie .clearfy-cookie-accept {
	padding: .35em 1em;
	border-radius: 8px;
	background: var(--ct-brand);
	font-weight: 600;
}

/* --- Планшеты и телефоны ---------------------------------------------------- */

@media (max-width: 768px) {

	.inside-navigation.grid-container,
	#page.grid-container,
	.footer-widgets-container.grid-container,
	.inside-site-info.grid-container {
		padding-left: 12px;
		padding-right: 12px;
	}

	.site-header .inside-header {
		padding: 14px 12px 12px;
		text-align: left;
	}

	.site-branding {
		column-gap: 12px;
	}

	.site-branding::before {
		width: 38px;
		height: 38px;
		border-radius: 10px;
		background-size: 24px;
	}

	.main-title {
		font-size: 18px;
	}

	.site-description {
		font-size: 12.5px;
	}

	/* Мобильное меню */
	.main-navigation .menu-toggle {
		line-height: 50px;
		font-weight: 600;
	}

	.main-navigation .main-nav > ul {
		margin-left: 0;
		padding-bottom: 10px;
	}

	.main-navigation .main-nav > ul > li > a {
		margin: 2px 0;
		line-height: 42px;
	}

	.main-navigation .main-nav > ul > li > a .dropdown-menu-toggle {
		padding-left: 16px;
		padding-right: 14px;
	}

	.main-navigation.toggled ul ul {
		width: 100%;
		padding: 0 0 4px 14px;
		border: 0;
		border-radius: 0;
		box-shadow: none;
	}

	.separate-containers .site-main {
		margin-top: 14px;
	}

	.separate-containers .inside-right-sidebar,
	.separate-containers .inside-left-sidebar {
		margin-top: 14px;
		margin-bottom: 28px;
	}

	.separate-containers .inside-article,
	.separate-containers .comments-area,
	.separate-containers .paging-navigation,
	.blog .inside-article,
	.archive .inside-article,
	.search .inside-article {
		padding: 22px 18px;
	}

	.separate-containers .page-header {
		padding: 6px 4px 0;
		margin-bottom: 14px;
	}

	.separate-containers .widget,
	.separate-containers .site-main > *,
	.separate-containers .page-header {
		margin-bottom: 14px;
	}

	.article-expert,
	.article-lead-form {
		padding: 18px;
	}

	.ct-tiles {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
		margin-top: 16px;
	}

	.ct-tiles .ct-tile {
		min-height: 0;
		padding: 16px 8px 14px;
	}

	.ct-tile__icon {
		width: 34px;
		height: 34px;
		margin-bottom: 4px;
	}

	.ct-tile__name {
		font-size: 14.5px;
	}

	.entry-content .button.pseudo-clearfy-link,
	.entry-content a.button {
		display: block;
		text-align: center;
	}

	.footer-widgets {
		padding: 36px 4px 32px;
	}

	.inside-footer-widgets > div:not(:last-child) {
		margin-bottom: 28px;
	}
}

/* Таблицы на телефоне: каждая строка — отдельная карточка */
@media screen and (max-width: 600px) {

	table:not(.ct-table) {
		display: block;
		border: 0;
		border-radius: 0;
		overflow: visible;
	}

	table:not(.ct-table) thead {
		display: none;
	}

	table:not(.ct-table) tbody,
	table:not(.ct-table) caption {
		display: block;
	}

	table:not(.ct-table) tr {
		display: block;
		margin-bottom: 12px;
		border: 1px solid var(--ct-line);
		border-radius: 12px;
		overflow: hidden;
		background: #fff;
		box-shadow: var(--ct-shadow);
	}

	table:not(.ct-table) tbody tr:nth-child(even) {
		background: #fff;
	}

	table:not(.ct-table) th,
	table:not(.ct-table) td {
		display: block;
		padding: 9px 14px;
		text-align: left;
	}

	table:not(.ct-table) tbody tr > :last-child {
		border-bottom: 0;
	}

	table:not(.ct-table) tbody tr > :first-child {
		background: #f4f8fc;
		color: var(--ct-ink);
		font-weight: 600;
	}

	/* Подпись колонки над значением, если в разметке есть data-label */
	table:not(.ct-table) td[data-label]::before {
		content: attr(data-label);
		display: block;
		margin-bottom: 2px;
		color: var(--ct-muted);
		font-size: 12px;
		font-weight: 400;
	}
}

@media (prefers-reduced-motion: reduce) {

	* {
		transition: none !important;
	}
}
