/*
Theme Name:  DVApro
Theme URI:   https://dva-pro.ru/
Description: Тема сайта подбора и доставки автомобилей из Японии, Китая, Кореи и ОАЭ. Блоки главной собираются из вёрстки скриптом tools/build-blocks.mjs; каталог живёт в своих таблицах (плагин dvapro-catalog), WordPress — витрина и SEO-обвязка.
Author:      DVApro
Version:     0.1.0
Requires PHP: 8.1
Text Domain: dvapro
*/

/*
 * Здесь только то, что общее для всей страницы. Стили блоков изолированы
 * в assets/blocks/<блок>/ под обёрткой .dvb-<блок> и сюда не попадают.
 * Никакого html { overflow-x: hidden } — на carfinance он сломал position: sticky
 * на всём сайте (04-ГРАБЛИ.md).
 */
:root {
	--dvapro-cyan: #1da3cb;
	--dvapro-coral: #d57959;
	--dvapro-ink: #222221;
	--dvapro-muted: #6d7c94;
	--dvapro-line: #e5e9ee;
	--dvapro-font: Gilroy, Manrope, system-ui, sans-serif;
	--dvapro-gutter: clamp(16px, 3.5vw, 50px);
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
body {
	margin: 0;
	min-width: 320px;
	background: #fff;
	color: var(--dvapro-ink);
	font-family: var(--dvapro-font);
	-webkit-font-smoothing: antialiased;
}

/* Обёртки блоков не создают своих коробок — вёрстка блока ведёт себя как в исходнике. */
.dvb { display: block; }

.dvapro-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }

/* ------------------------------------------------ внутренние страницы */

.dvapro-page {
	width: min(1100px, calc(100% - var(--dvapro-gutter) * 2));
	margin: 0 auto;
	padding: 24px 0 72px;
	font-size: 17px;
	line-height: 1.6;
}
.dvapro-crumbs { margin: 0 0 18px; font-size: 14px; color: var(--dvapro-muted); }
.dvapro-crumbs ol { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; padding: 0; list-style: none; }
.dvapro-crumbs li + li::before { content: "/"; margin-right: 6px; color: #b7c2d0; }
.dvapro-crumbs a { color: inherit; text-decoration: none; }
.dvapro-crumbs a:hover { color: var(--dvapro-cyan); }
.dvapro-page h1 {
	margin: 0 0 20px;
	font-size: clamp(30px, 4.4vw, 52px);
	line-height: 1.08;
	font-weight: 800;
	letter-spacing: -.02em;
	text-transform: uppercase;
}
.dvapro-page h2 { margin: 1.8em 0 .6em; font-size: clamp(22px, 2.6vw, 32px); line-height: 1.2; }
.dvapro-page h3 { margin: 1.5em 0 .5em; font-size: 20px; }
.dvapro-page a { color: #0a7fac; }
.dvapro-page img { max-width: 100%; height: auto; }
.dvapro-page table { width: 100%; border-collapse: collapse; margin: 1.2em 0; font-size: 15px; }
.dvapro-page th, .dvapro-page td { padding: 10px 12px; border: 1px solid var(--dvapro-line); text-align: left; vertical-align: top; }
.dvapro-page .dvapro-lead { font-size: 19px; color: #3b4658; max-width: 760px; }

.dvapro-notice {
	margin: 28px 0;
	padding: 18px 22px;
	border-left: 4px solid var(--dvapro-cyan);
	border-radius: 0 12px 12px 0;
	background: #f2f9fc;
	color: #2f3a4b;
	font-size: 16px;
}

.dvapro-404 { text-align: left; }
.dvapro-404 ul { padding-left: 1.2em; }
