/*
 * Главная страница.
 *
 * Страница собрана родными виджетами Elementor и Woodmart, чтобы владелец
 * правил её мышкой. Этот файл задаёт только внешний вид: сетки, карточки,
 * плашки. Содержание, порядок и состав блоков живут в редакторе.
 *
 * Поэтому здесь нет ни одного правила, которое ломается от перестановки
 * виджетов: всё цепляется за классы, проставленные блокам, а не за порядок.
 *
 * Значения — из tokens.css. Литералов цвета и кегля быть не должно.
 */

.printort-home :where(.printort-note, .printort-lead, .printort-split) p:last-child {
	margin-bottom: 0;
}

/* ==========================================================================
   Типографика блоков
   ========================================================================== */

.printort-home .printort-h .elementor-heading-title,
.printort-home .printort-h1 .elementor-heading-title {
	letter-spacing: -.02em;
}

.printort-home .printort-note {
	margin-top: calc(var(--printort-space-2) * -1);
}

.printort-home .printort-lead {
	max-width: 46ch;
}

/* Надстрочник над заголовком блока: «Свой макет». */
.printort-home .printort-kicker {
	letter-spacing: .09em;
	text-transform: uppercase;
	font-weight: var(--printort-fw-medium);
}

/* Строка развилки под первым экраном: текст и кнопка стоят в одну строку —
   у обоих виджетов ширина «Авто». Линия-разделитель поэтому принадлежит
   предыдущему виджету: он занимает всю колонку, и линия не обрезается
   по ширине текста. */
.printort-home .elementor-widget:has(+ .printort-split) {
	padding-bottom: var(--printort-space-4);
	border-bottom: 1px solid var(--printort-border);
}

.printort-home .printort-split {
	margin-inline-end: var(--printort-space-3);
}

@media (max-width: 767px) {
	.printort-home .printort-split {
		margin-inline-end: 0;
	}
}

.printort-home .printort-split a {
	font-weight: var(--printort-fw-bold);
	color: var(--printort-brand);
	border-bottom: 1px solid currentColor;
}

/* Подсказка в блоке конструктора. */
.printort-home .printort-hint {
	padding: var(--printort-space-3);
	border-radius: var(--printort-radius-sm);
	background: var(--printort-brand-tint);
}

.printort-home .printort-tariff {
	padding: var(--printort-space-4);
	border-radius: var(--printort-radius-md);
	background: var(--printort-brand-tint);
}

.printort-home .printort-tariff a {
	color: var(--printort-brand);
	font-weight: var(--printort-fw-bold);
	border-bottom: 1px solid currentColor;
}

/* ==========================================================================
   Карточка: виджет «Блок с изображением»

   Пока изображение не задано, на его месте штриховка. Как только владелец
   поставит картинку в редакторе, заглушка исчезнет сама — за это отвечает
   :has() в селекторе ниже.
   ========================================================================== */

.printort-home .printort-card .elementor-image-box-wrapper {
	overflow: hidden;
	border: 1px solid var(--printort-border);
	border-radius: var(--printort-radius-md);
	background: var(--printort-surface);
	text-align: left;
	transition: border-color var(--printort-transition);
}

.printort-home .printort-card:hover .elementor-image-box-wrapper {
	border-color: var(--printort-brand);
}

.printort-home .printort-card .elementor-image-box-img {
	margin: 0 !important;
	width: 100% !important;
}

.printort-home .printort-card .elementor-image-box-img img {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
}

.printort-home .printort-card .elementor-image-box-content {
	padding: var(--printort-space-3);
}

.printort-home .printort-card .elementor-image-box-title {
	margin: 0 0 2px;
	line-height: 1.25;
}

.printort-home .printort-card .elementor-image-box-description {
	line-height: 1.35;
}

/* Заглушка вместо изображения, пока его нет. */
.printort-home .printort-card .elementor-image-box-wrapper:not(:has(.elementor-image-box-img))::before {
	content: '';
	display: block;
	aspect-ratio: 4 / 3;
	background: repeating-linear-gradient(45deg, #F3E9EE 0 7px, #F9F2F5 7px 14px);
}

/* Акцентная карточка: две двери первого экрана. */
.printort-home .printort-card--brand .elementor-image-box-wrapper {
	border-color: var(--printort-brand);
	background: var(--printort-brand-tint);
}

/* Плитка: подпись под картинкой по центру. */
.printort-home .printort-card--tile .elementor-image-box-content {
	text-align: center;
}

/* Карточка без подписи — только картинка, для колонок «кому». */
.printort-home .printort-card--plain .elementor-image-box-content {
	display: none;
}

/* ==========================================================================
   Первый экран
   ========================================================================== */

.printort-home .printort-doors > .elementor-widget-wrap {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--printort-space-3);
	align-content: start;
}

.printort-home .printort-doors > .elementor-widget-wrap > .elementor-widget {
	width: 100%;
	margin: 0;
}

/* Строка поиска Woodmart в первом экране. */
.printort-home .printort-search {
	margin-top: var(--printort-space-4);
}

/* Виджет — флекс-строка, из-за чего контейнер формы сжимался по содержимому
   до ширины поля Woodmart. Растягиваем на всю колонку. */
.printort-home .printort-search > .elementor-widget-container {
	flex: 1 1 100%;
	width: 100%;
}

.printort-home .printort-search .searchform input[type="text"],
.printort-home .printort-search input[type="search"] {
	min-height: var(--printort-tap);
	font-size: var(--printort-fs-md);
}

/* ==========================================================================
   Список ссылок: виджет «Список с иконками»
   ========================================================================== */

.printort-home .printort-links .elementor-icon-list-item {
	min-height: var(--printort-tap);
	align-items: center;
}

.printort-home .printort-links .elementor-icon-list-text {
	padding-inline-start: 0;
	color: var(--printort-text);
}

.printort-home .printort-links .elementor-icon-list-item:hover .elementor-icon-list-text {
	color: var(--printort-brand);
}

/* Подсказки под поиском — плашками. */
.printort-home .printort-chips .elementor-icon-list-items {
	display: flex;
	flex-wrap: wrap;
	gap: var(--printort-space-2);
}

.printort-home .printort-chips .elementor-icon-list-item {
	margin: 0 !important;
	padding: 0;
}

.printort-home .printort-chips .elementor-icon-list-item a {
	display: inline-flex;
	align-items: center;
	min-height: 40px;
	padding: var(--printort-space-2) var(--printort-space-4);
	border: 1px solid var(--printort-border);
	border-radius: var(--printort-radius-pill);
	background: var(--printort-surface);
}

.printort-home .printort-chips .elementor-icon-list-item a:hover {
	border-color: var(--printort-brand);
	background: var(--printort-brand-tint);
}

.printort-home .printort-chips .elementor-icon-list-text {
	color: var(--printort-ink);
}

/* ==========================================================================
   Информационный блок Woodmart

   Используется там, где нужны три слота: крупное значение, заголовок
   и пояснение. Это полоса преимуществ, шаги доставки, сегменты опта
   и пункты блока о производстве.
   ========================================================================== */

.printort-home .printort-info .wd-info-box {
	gap: var(--printort-space-1);
}

.printort-home .printort-info .info-box-icon,
.printort-home .printort-info .info-box-number {
	font-size: var(--printort-fs-xl);
	font-weight: var(--printort-fw-bold);
	color: var(--printort-brand);
	line-height: 1.1;
	font-variant-numeric: tabular-nums;
}

.printort-home .printort-info .info-box-title,
.printort-home .printort-info h4 {
	font-size: var(--printort-fs-md);
	font-weight: var(--printort-fw-bold);
	color: var(--printort-ink);
	margin: var(--printort-space-1) 0 0;
}

.printort-home .printort-info .info-box-inner p {
	font-size: var(--printort-fs-sm);
	color: var(--printort-text-muted);
	line-height: 1.45;
	margin-bottom: 0;
}

/* Полоса преимуществ: колонки разделены линиями, без внешней рамки. */
.printort-home .printort-adv {
	border-top: 1px solid var(--printort-border);
	border-bottom: 1px solid var(--printort-border);
}

.printort-home .printort-adv .elementor-column {
	border-inline-end: 1px solid var(--printort-border);
}

.printort-home .printort-adv .elementor-column:last-child {
	border-inline-end: 0;
}

.printort-home .printort-adv .elementor-widget-wrap {
	padding: var(--printort-space-6) var(--printort-space-4);
}

/* Шаги доставки и сегменты опта — карточками. */
.printort-home .printort-flow .elementor-widget-wrap,
.printort-home .printort-b2b .elementor-widget-wrap {
	height: 100%;
	padding: var(--printort-space-4);
	border: 1px solid var(--printort-border);
	border-radius: var(--printort-radius-md);
	background: var(--printort-surface);
}

.printort-home .printort-flow .info-box-icon,
.printort-home .printort-b2b .info-box-icon {
	font-size: var(--printort-fs-sm);
	font-weight: var(--printort-fw-medium);
	letter-spacing: .04em;
}

.printort-home .printort-b2b .elementor-widget-wrap:hover {
	border-color: var(--printort-brand);
}

/* ==========================================================================
   Вкладки: родные вложенные вкладки Elementor
   ========================================================================== */

.printort-home .printort-tabs .e-n-tabs-heading {
	gap: var(--printort-space-2);
	flex-wrap: wrap;
	margin-bottom: var(--printort-space-6);
}

.printort-home .printort-tabs .e-n-tab-title {
	min-height: 40px;
	padding: var(--printort-space-2) var(--printort-space-4);
	border: 1px solid var(--printort-border);
	border-radius: var(--printort-radius-pill);
	background: var(--printort-surface);
	color: var(--printort-ink);
	font-size: var(--printort-fs-base);
}

.printort-home .printort-tabs .e-n-tab-title[aria-selected="true"] {
	background: var(--printort-ink);
	border-color: var(--printort-ink);
	color: var(--printort-surface);
	font-weight: var(--printort-fw-bold);
}

/* Ряд плиток внутри вкладки. */
.printort-home .printort-row {
	--container-widget-width: 100%;
	display: flex;
	flex-wrap: wrap;
	gap: var(--printort-space-3);
	padding: 0;
}

.printort-home .printort-row > .elementor-widget {
	flex: 1 1 140px;
	max-width: 190px;
	margin: 0;
}

/* ==========================================================================
   Категории: виджет Woodmart
   ========================================================================== */

.printort-home .printort-cats .wd-cat-title,
.printort-home .printort-cats h3 {
	text-transform: none;
	font-size: var(--printort-fs-sm);
	font-weight: var(--printort-fw-medium);
}

/* ==========================================================================
   Конструктор и шаги
   ========================================================================== */

.printort-home .printort-maker > .elementor-widget-wrap {
	padding: var(--printort-space-8);
	border: 1px solid var(--printort-brand);
	border-radius: var(--printort-radius-md);
	background: var(--printort-surface);
}

.printort-home .printort-steps > .elementor-widget-wrap {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--printort-space-3);
	align-content: center;
}

.printort-home .printort-steps > .elementor-widget-wrap > .elementor-widget {
	width: 100%;
	margin: 0;
}

/* ==========================================================================
   Колонки «кому»
   ========================================================================== */

.printort-home .printort-gen .elementor-widget-wrap {
	align-content: start;
}

/* ==========================================================================
   Мобильное
   ========================================================================== */

@media (max-width: 1024.98px) {
	.printort-home .printort-doors > .elementor-widget-wrap,
	.printort-home .printort-steps > .elementor-widget-wrap {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.printort-home .printort-adv .elementor-column {
		border-inline-end: 0;
		border-bottom: 1px solid var(--printort-border);
	}

	.printort-home .printort-maker > .elementor-widget-wrap {
		padding: var(--printort-space-6);
	}

	.printort-home .printort-row > .elementor-widget {
		flex: 1 1 140px;
		max-width: none;
	}
}




/* ==========================================================================
   Блок «Для бизнеса»: выбор направления и форма образца
   ========================================================================== */

/* Привязка к идентификаторам Elementor, а не к CSS-классам виджетов: класс
   из настроек стирается, если сохранить страницу из вкладки редактора,
   открытой до правки. Идентификатор проставляет билдер. */

/* Карточка направления. */
.printort-home .elementor-element-b2b0120 > .elementor-container > .elementor-column > .elementor-element-populated {
	position: relative;
	padding: var(--printort-space-4);
	border: 1px solid var(--printort-seg-line, var(--printort-border));
	border-radius: var(--printort-radius-md);
	background: var(--printort-surface);
	cursor: pointer;
	transition: border-color var(--printort-transition), box-shadow var(--printort-transition);
}

.printort-home .elementor-element-b2b0120 > .elementor-container > .elementor-column > .elementor-element-populated:hover {
	border-color: var(--printort-border-strong);
}

/* Кружок переключателя. */
.printort-home .elementor-element-b2b0120 > .elementor-container > .elementor-column > .elementor-element-populated::after {
	content: "";
	position: absolute;
	inset-block-start: var(--printort-space-3);
	inset-inline-end: var(--printort-space-3);
	inline-size: var(--printort-space-4);
	block-size: var(--printort-space-4);
	border: 2px solid var(--printort-border-strong);
	border-radius: 50%;
	background: var(--printort-surface);
}

/* Выбранная карточка. */
.printort-home .elementor-element-b2b0120 > .elementor-container > .elementor-column.is-chosen > .elementor-element-populated {
	outline: 2px solid var(--printort-brand);
	outline-offset: -2px;
}

.printort-home .elementor-element-b2b0120 > .elementor-container > .elementor-column.is-chosen > .elementor-element-populated::after {
	border-color: var(--printort-brand);
	background: var(--printort-brand);
	box-shadow: inset 0 0 0 3px var(--printort-surface);
}

/* Заголовку карточки нужно место под кружок. */
.printort-home .elementor-element-b2b0120 .elementor-widget-heading {
	padding-inline-end: var(--printort-space-6);
}

/* Поле «направление» в форме скрыто: его заполняет выбор карточки. */
.printort-home .elementor-element-b2b0135 .wpcf7-form-control-wrap[data-name="direction"] {
	display: none;
}

/* Форма держится в поле зрения при выборе направления. */
@media (min-width: 861px) {
	.printort-home .elementor-element-b2b0130 > .elementor-element-populated {
		position: sticky;
		inset-block-start: var(--printort-space-16);
	}
}

/* Шесть карточек направлений переносятся по две в ряд. Контейнер вложенной
   секции Elementor по умолчанию не переносит колонки, и шесть штук по 48%
   выстраивались в одну строку, вылезая за пределы колонки. */
.printort-home .elementor-element-b2b0120 > .elementor-container {
	flex-wrap: wrap;
	justify-content: space-between;
	row-gap: var(--printort-space-4);
	align-items: stretch;
}

.printort-home .elementor-element-b2b0120 > .elementor-container > .elementor-column {
	flex: 0 0 auto;
}

.printort-home .elementor-element-b2b0120 > .elementor-container > .elementor-column > .elementor-element-populated {
	block-size: 100%;
}

/* --- Блок «Для бизнеса»: доводка до макета --------------------------------- */

/* Карточки компактнее: в макете отступ 14/16, скругление 8. */
.printort-home .elementor-element-b2b0120 > .elementor-container > .elementor-column > .elementor-element-populated {
	padding: var(--printort-space-3) var(--printort-space-4);
	border-radius: var(--printort-radius-md);
}

/* Плашка выбранного направления над формой. */
.printort-home .elementor-element-b2b0134 {
	display: flex;
	align-items: center;
	gap: var(--printort-space-2);
	padding: var(--printort-space-2) var(--printort-space-3);
	border-radius: var(--printort-radius-sm);
	background: var(--printort-subtle);
}

.printort-home .elementor-element-b2b0134 p {
	margin: 0;
}

.printort-home .elementor-element-b2b0135 :where(input[type="text"], textarea) {
	inline-size: 100%;
	border-radius: var(--printort-radius-sm);
}

/* Кнопка формы. Интеграция Woodmart с CF7 навязывает акцентный стиль —
   розовый по белому даёт 2,9:1 при норме 4,5. Внутри этого блока
   возвращаем брендовый малиновый и растягиваем на всю ширину, как в макете. */
.printort-home .elementor-element-b2b0135 div.wpcf7 input[type="submit"] {
	--btn-accented-bgcolor: var(--printort-brand);
	--btn-accented-bgcolor-hover: var(--printort-brand);
	inline-size: 100%;
	min-block-size: var(--printort-tap);
	border-radius: var(--printort-radius-sm);
	text-transform: none;
}

/* Форма образца: в макете поле «Что нужно» на три строки и зазоры теснее.
   Woodmart растягивает textarea до 190 px и разводит поля на 20 px, из-за
   чего правая колонка становится выше левой и под тарифами остаётся пустота. */
.printort-home .elementor-element-b2b0135 textarea {
	min-block-size: 0;
	block-size: 72px;
	resize: vertical;
}

.printort-home .elementor-element-b2b0135 form p {
	margin-block-end: var(--printort-space-3);
}

.printort-home .elementor-element-b2b0135 form p:last-child {
	margin-block-end: 0;
}
