/**
 * CF7 без потери пиксельного паритета: обёртки плагина исключаются из
 * раскладки (display:contents) — DOM-дерево форм визуально = статика;
 * стандартный CSS CF7 снят (Cf7\Setup), служебные элементы стилизуются
 * под дизайн-систему.
 */

.wpcf7 {
	display: contents;
}

/* Обёртки контролов CF7 (их JS собирает данные через них — убирать нельзя):
   блочные и прозрачные для ритма форм статики — в flex-column формах они
   flex-дети с тем же gap, в owl-ритме Contacts несут margin сами */
.wpcf7-form .wpcf7-form-control-wrap {
	display: block;
	position: relative;
}

.prc-contact-form__row .wpcf7-form-control-wrap,
.prc-contacts-form__row .wpcf7-form-control-wrap {
	flex: 1;
}

/* Служебные скрытые поля CF7 (fieldset без их CSS рендерился полоской) */
.wpcf7-form .hidden-fields-container {
	display: none;
}

/* fieldset — первый DOM-ребёнок формы: не даём owl-ритму статики
   (.prc-*-form > * + *) навесить отступ первому видимому элементу */
.wpcf7-form > .hidden-fields-container + * {
	margin-top: 0;
}

/* Отклик скринридера (без CSS плагина стал бы видимым) */
.wpcf7 .screen-reader-response {
	position: absolute;
	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	width: 1px;
	height: 1px;
	margin: 0;
	padding: 0;
	border: 0;
	word-wrap: normal;
}

/* Live-подсказки CF7 скрыты: дублировали «Заповніть поле» form-validate.js
   (репорт 2026-07-23); ошибку поля показывает только .prc-field-error,
   серверный вердикт — .wpcf7-response-output */
.wpcf7-form .wpcf7-not-valid-tip {
	display: none;
}

.wpcf7-form .wpcf7-form-control.wpcf7-not-valid {
	border-color: rgba(234, 25, 25, 0.64);
}

/* Итоговое сообщение отправки: в rest скрыт полностью (пустой div — участник
   owl-ритма форм статики), показывается только в статусах CF7 */
.wpcf7-form .wpcf7-response-output {
	display: none;
	margin: 16px 0 0;
	font: 400 14px/20px "Inter", sans-serif;
	color: #fff;
}

.wpcf7-form.sent .wpcf7-response-output,
.wpcf7-form.invalid .wpcf7-response-output,
.wpcf7-form.failed .wpcf7-response-output,
.wpcf7-form.spam .wpcf7-response-output,
.wpcf7-form.aborted .wpcf7-response-output {
	display: block;
}

.wpcf7-form.invalid .wpcf7-response-output,
.wpcf7-form.failed .wpcf7-response-output {
	color: #ea1919;
}

.wpcf7-form .wpcf7-spinner {
	display: none;
}

/* Попап «let's Talk»: сообщение на красном фоне */
.prc-popup .wpcf7-form .wpcf7-response-output,
.prc-popup .wpcf7-form.invalid .wpcf7-response-output,
.prc-popup .wpcf7-form.failed .wpcf7-response-output {
	color: #fff;
}

/* Успех показывает СВОЙ экран страницы (заказчик 2026-07-27) — стандартное
 * «Thank you for your message» под формой не выводим; ошибки остаются. */
form.wpcf7-form.sent .wpcf7-response-output {
	display: none;
}
