/* RTEX Contact — по макетам 1440×1632 (ПК) и 375×1763 (мобилка), вместе с подвалом. 1 --u = 1px макета.
 * ПК ≥768: масштаб от 1440 (не мельче ×0.75; шире 1440 — 1:1, фон прижат вправо, слева продолжается его край).
 * Мобилка <768: масштаб от 375 (до ×1.5), фон — на всю ширину.
 * Форма вставляется блоком внутрь секции; стили формы CF7 .rxf — во второй половине файла. */

.rxc {
	--rxc-accent: #FFA31A;
	--rxc-text: #E4E3D8;
	--rxc-line: #E6AB74;
	--rxc-font: 'Orbitron', sans-serif;
	--rxc-bg: var(--rxc-bg-n, #0A0A0B);
	--rxc-based: var(--rxc-accent);

	container: rxc / inline-size;
	position: relative;
	overflow: hidden;
	font-family: var(--rxc-font);
	color: var(--rxc-text);
	background: var(--rxc-bg);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	isolation: isolate;
}
.rxc *,
.rxc *::before,
.rxc *::after { box-sizing: border-box; }

/* день */
html.theme-day .rxc,
html:not(.theme-day):not(.theme-night) .rxc--fb-day {
	--rxc-bg: var(--rxc-bg-d, #0A0A0B);
	--rxc-based: #916044;
}

/* какой фон виден в теме */
html.theme-day .rxc .rxc-clip--night,
html.theme-night .rxc .rxc-clip--day,
html:not(.theme-day):not(.theme-night) .rxc--fb-day .rxc-clip--night,
html:not(.theme-day):not(.theme-night) .rxc--fb-night .rxc-clip--day { display: none; }

/* в редакторе — по кнопке превью */
.rxc--editor.rxc--fb-day .rxc-clip--night,
.rxc--editor.rxc--fb-night .rxc-clip--day { display: none !important; }
.rxc--editor.rxc--fb-day .rxc-clip--day,
.rxc--editor.rxc--fb-night .rxc-clip--night { display: block !important; }
.rxc--editor.rxc--fb-day { --rxc-bg: var(--rxc-bg-d, #0A0A0B); --rxc-based: #916044; }
.rxc--editor.rxc--fb-night { --rxc-bg: var(--rxc-bg-n, #0A0A0B); --rxc-based: var(--rxc-accent); }

/* ---------- фон: фото, растушёвки и свечения макета одним слоем ---------- */
.rxc-stage,
.rxc-foot,
.rxc-bg { --u: max(.75px, min(100cqw / 1440, 1px)); }

.rxc-bg {
	position: absolute;
	inset: 0;
	z-index: 0;
	overflow: hidden;
	pointer-events: none;
}
.rxc-clip {
	position: absolute;
	inset: 0;
	overflow: hidden;
}
.rxc-ph {
	position: absolute;
	top: 0;
	right: 0;
	width: calc(1440 * var(--u));
	aspect-ratio: 1440 / 1632;
}
.rxc--no-foot .rxc-ph {
	/* без подвала: кадр гаснет только ниже 1030 — на 1440 стык с блоком «RTEX Footer» без шва */
	-webkit-mask-image: linear-gradient(#000 calc(100% - 602 * var(--u)), transparent calc(100% - 530 * var(--u)));
	mask-image: linear-gradient(#000 calc(100% - 602 * var(--u)), transparent calc(100% - 530 * var(--u)));
}
.rxc-ph picture { display: contents; }
.rxc .rxc-img {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
	margin: 0;
	object-fit: cover;
	object-position: right top;
	border-radius: 0;
}
/* шире 1440: левый край кадра растянут до края экрана, без шва */
.rxc-ext {
	position: absolute;
	top: 0;
	left: 0;
	width: max(0px, calc(100% - 1440 * var(--u) + 2px));
	height: calc(1632 * var(--u));
	background: var(--rxc-ext, none) 0 0 / 288000% 100% no-repeat;
}
.rxc-clip--day .rxc-ext { --rxc-ext: var(--rxc-ext-d); }
.rxc-clip--night .rxc-ext { --rxc-ext: var(--rxc-ext-n); }

/* ---------- контент ---------- */
.rxc-stage {
	position: relative;
	z-index: 1;
	width: calc(1440 * var(--u));
	max-width: 100%;
	min-height: calc(1030 * var(--u));
	margin: 0 auto;
	padding: calc(79.8 * var(--u)) 0 calc(160 * var(--u)) calc(64 * var(--u));
}

/* сброс стилей темы (WoodMart) */
.rxc .rxc-label,
.rxc .rxc-title,
.rxc .rxc-text,
.rxc .rxc-f {
	margin: 0;
	padding: 0;
	border: 0;
	font-family: var(--rxc-font);
	font-style: normal;
	text-transform: none;
	text-align: left;
	text-shadow: none;
	text-decoration: none;
	word-spacing: normal;
	color: inherit;
	background: none;
}

.rxc .rxc-m { display: none; }

.rxc .rxc-label {
	display: flex;
	align-items: center;
	gap: calc(24 * var(--u));
	height: calc(22.572 * var(--u));
	font-size: calc(18 * var(--u));
	line-height: calc(22.572 * var(--u));
	font-weight: 400;
	letter-spacing: 0;
	color: var(--rxc-accent);
}
.rxc-label__line {
	flex: none;
	width: calc(96 * var(--u));
	height: 1px;
	margin-top: calc(-.6 * var(--u));
	background: var(--rxc-accent);
	opacity: .6;
}
.rxc-label__text { white-space: nowrap; }

.rxc .rxc-title {
	margin-top: calc(22.13 * var(--u));
	font-size: calc(56 * var(--u));
	line-height: calc(70 * var(--u));
	font-weight: 400;
	letter-spacing: calc(56 * var(--u) * .162);
	color: var(--rxc-text);
}

.rxc .rxc-text {
	margin-top: calc(18.09 * var(--u));
	font-size: calc(18 * var(--u));
	line-height: calc(23 * var(--u));
	font-weight: 500;
	letter-spacing: 0;
	color: var(--rxc-text);
}

.rxc-form {
	width: 686px;
	max-width: calc(100% - 32px);
	margin-top: calc(84.03 * var(--u));
}
.rxc-form > :first-child { margin-top: 0; }
.rxc-form > :last-child { margin-bottom: 0; }
.rxc-form .wpcf7 form > p:empty { display: none; }

/* ---------- подвал: координаты — из макета (верх подвала = 1030 на ПК, 1170 на мобилке) ---------- */
.rxc-foot {
	position: relative;
	z-index: 1;
	display: block;
	width: calc(1440 * var(--u));
	max-width: 100%;
	height: calc(602 * var(--u));
	margin: 0 auto;
	padding: 0;
	background: none;
}
.rxc-foot > * { position: absolute; }
.rxc .rxc-f {
	white-space: nowrap;
	line-height: 1.254;
	font-weight: 400;
	letter-spacing: 0;
	color: var(--rxc-text);
}
.rxc a.rxc-f:hover,
.rxc a.rxc-f:focus-visible { color: var(--rxc-accent); }

.rxc-map {
	left: calc(364 * var(--u));
	top: calc(-47.5 * var(--u));
	width: calc(802.5 * var(--u));
	height: calc(602 * var(--u));
	pointer-events: none;
}
.rxc-map img { display: block; width: 100%; height: 100%; max-width: none; margin: 0; }
.rxc-pin {
	left: calc(541.47 * var(--u));
	top: calc(233 * var(--u));
	width: calc(24 * var(--u));
	height: calc(24 * var(--u));
	background: url(img/pin.webp) center / 100% 100% no-repeat;
	opacity: .4;
	pointer-events: none;
}

.rxc-based__line {
	left: calc(69.75 * var(--u));
	top: calc(138.75 * var(--u));
	width: calc(96 * var(--u));
	height: 1px;
	background: var(--rxc-based);
	opacity: .6;
}
.rxc .rxc-based { left: calc(190.03 * var(--u)); top: calc(127.802 * var(--u)); font-size: calc(18 * var(--u)); color: var(--rxc-based); }
.rxc .rxc-city { left: calc(69.71 * var(--u)); top: calc(171.984 * var(--u)); font-size: calc(56 * var(--u)); letter-spacing: calc(56 * var(--u) * .16); }
.rxc .rxc-note { left: calc(69.71 * var(--u)); top: calc(260.802 * var(--u)); font-size: calc(18 * var(--u)); font-weight: 500; }

.rxc-soc {
	left: calc(45.71 * var(--u));
	top: calc(348 * var(--u));
	display: flex;
	gap: calc(16 * var(--u));
}
.rxc .rxc-soc__i {
	display: block;
	width: calc(48 * var(--u));
	height: calc(48 * var(--u));
	border-radius: 50%;
	transition: transform .25s ease, filter .25s ease;
}
.rxc a.rxc-soc__i:hover { transform: translateY(-2px); filter: brightness(1.15); }
.rxc .rxc-ico { display: block; width: 100%; height: 100%; }

.rxc .rxc-phone { left: calc(45.71 * var(--u)); top: calc(435.802 * var(--u)); font-size: calc(18 * var(--u)); }

.rxc-cta__line {
	left: calc(45 * var(--u));
	top: calc(499 * var(--u));
	width: 1px;
	height: calc(56 * var(--u));
	background: var(--rxc-accent);
}
.rxc .rxc-cta {
	left: calc(63.71 * var(--u));
	top: calc(506.856 * var(--u));
	font-size: calc(16 * var(--u));
	line-height: calc(20 * var(--u));
	font-weight: 500;
	letter-spacing: calc(16 * var(--u) * .24);
}
.rxc .rxc-cta__btn {
	left: calc(345.75 * var(--u));
	top: calc(503 * var(--u));
	width: calc(48 * var(--u));
	height: calc(48 * var(--u));
	color: var(--rxc-accent);
	border-radius: 50%;
	transition: background-color .25s ease, box-shadow .25s ease;
}
.rxc a.rxc-cta__btn:hover { background: rgba(255, 163, 26, .1); box-shadow: 0 0 18px rgba(255, 163, 26, .25); }

.rxc .rxc-privacy { left: calc(1131.71 * var(--u)); top: calc(436.754 * var(--u)); font-size: calc(16 * var(--u)); }
.rxc .rxc-terms { left: calc(1283.71 * var(--u)); top: calc(436.754 * var(--u)); font-size: calc(16 * var(--u)); }

.rxc .rxc-dev {
	left: calc(1257.71 * var(--u));
	top: calc(472.754 * var(--u));
	display: block;
	width: calc(146.04 * var(--u));
	height: calc(20.064 * var(--u));
	color: var(--rxc-line);
	text-decoration: none;
}
.rxc .rxc-dev .rxc-dev__t { position: absolute; left: 0; top: 0; font-size: calc(16 * var(--u)); color: inherit; }
.rxc .rxc-kh {
	position: absolute;
	left: calc(114.04 * var(--u));
	top: calc(1.496 * var(--u));
	width: calc(32 * var(--u));
	height: calc(16 * var(--u));
}

.rxc-copy {
	left: calc(985.71 * var(--u));
	top: calc(526.01 * var(--u));
	width: calc(24 * var(--u));
	height: calc(24 * var(--u));
	background: url(img/copy.webp) center / 100% 100% no-repeat;
}
.rxc .rxc-brand { left: calc(1016.6 * var(--u)); top: calc(524.666 * var(--u)); font-size: calc(24 * var(--u)); font-weight: 600; letter-spacing: calc(24 * var(--u) * .06); }
.rxc .rxc-brand.rxc-brand--logo { left: calc(1015 * var(--u)); top: calc(525 * var(--u)); width: calc(205 * var(--u)); height: calc(28 * var(--u)); color: var(--rxc-text); }
.rxc .rxc-rights.rxc-rights--logo { left: calc(1219 * var(--u)); top: calc(530 * var(--u)); width: calc(186 * var(--u)); height: calc(26 * var(--u)); color: var(--rxc-text); }
.rxc .rxc-logo { display: block; width: 100%; height: 100%; }
.rxc .rxc-logo--m { display: none; }
.rxc .rxc-rights { left: calc(1222.6 * var(--u)); top: calc(532.754 * var(--u)); font-size: calc(16 * var(--u)); letter-spacing: calc(16 * var(--u) * .01); }

.rxc .screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
}

/* высота секции ровно по макету — подвал и фон совпадают на любой ширине
 * (форма в px не масштабируется; лишние пиксели уходят в пустой нижний отступ) */
@container rxc (min-width: 1280px) {
	.rxc-stage { height: calc(1030 * var(--u)); min-height: 0; }
}
@container rxc (min-width: 360px) and (max-width: 767.98px) {
	.rxc-stage { height: calc(1170 * var(--u)); min-height: 0; }
}

/* ---------- отдельный подвал: блок «RTEX Footer» / [rtex_footer] — тот же фон, сдвинутый к низу макета ---------- */
.rxc.rxc--foot-only { margin-block-start: 0; } /* вплотную к секции выше, без отступа темы */
.rxc--foot-only .rxc-clip {
	inset: auto 0;
	top: calc(-1030 * var(--u));
	height: calc(1632 * var(--u));
}
/* в футере WoodMart — на всю ширину экрана, без отступов контейнера */
.wd-footer:has(.rxc--foot-only) { overflow-x: clip; background: none; }
.wd-footer .main-footer:has(.rxc--foot-only) { padding-top: 0; padding-bottom: 0; }
.wd-footer .rxc--foot-only {
	width: 100vw;
	max-width: 100vw;
	margin: 0 calc(50% - 50vw);
}

/* ---------- планшет: фото заходит под форму — притемняем, чтобы поля читались ---------- */
@container rxc (min-width: 768px) and (max-width: 1199.98px) {
	.rxc-bg::after {
		content: "";
		position: absolute;
		inset: 0;
		background: linear-gradient(90deg, rgba(0, 0, 0, .7) 0, rgba(0, 0, 0, .55) 62%, rgba(0, 0, 0, 0) 92%);
	}
}

/* ---------- мобилка ---------- */
@container rxc (max-width: 767.98px) {
	.rxc-stage,
	.rxc-foot { --u: min(100cqw / 375, 1.5px); }
	.rxc-bg { --u: calc(100cqw / 375); }


	.rxc-ph {
		left: 0;
		width: 100%;
		aspect-ratio: 375 / 1763;
	}
	.rxc--no-foot .rxc-ph {
		-webkit-mask-image: linear-gradient(#000 calc(100% - 593 * var(--u)), transparent calc(100% - 520 * var(--u)));
		mask-image: linear-gradient(#000 calc(100% - 593 * var(--u)), transparent calc(100% - 520 * var(--u)));
	}
	.rxc-ext { display: none; }
	.rxc.rxc--foot-only { margin-block-start: 0; } /* вплотную к секции выше, без отступа темы */
.rxc--foot-only .rxc-clip { top: calc(-1170 * var(--u)); height: calc(1763 * var(--u)); }

	.rxc .rxc-d { display: none; }
	.rxc .rxc-m { display: inline; }

	.rxc-stage {
		width: 100%;
		min-height: calc(1170 * var(--u));
		padding: calc(119.85 * var(--u)) calc(16 * var(--u)) calc(79 * var(--u));
	}
	.rxc .rxc-label {
		gap: calc(24 * var(--u));
		height: calc(17.556 * var(--u));
		font-size: calc(14 * var(--u));
		line-height: calc(17.556 * var(--u));
	}
	.rxc-label__line { width: calc(64 * var(--u)); }
	.rxc .rxc-title {
		margin-top: calc(20.3 * var(--u));
		margin-right: calc(-16 * var(--u)); /* «WHAT DOESN'T» помещается в строку, как в макете */
		font-size: calc(32 * var(--u));
		line-height: calc(40 * var(--u));
		letter-spacing: calc(32 * var(--u) * .162);
	}
	.rxc .rxc-text {
		margin-top: calc(19.91 * var(--u));
		font-size: calc(14 * var(--u));
		line-height: calc(18 * var(--u));
	}
	.rxc-form {
		width: auto;
		max-width: none;
		margin: calc(32 * var(--u)) calc(8 * var(--u)) 0;
	}

	/* подвал */
	.rxc-foot { width: 100%; height: calc(593 * var(--u)); }
	.rxc-map { left: calc(12.75 * var(--u)); top: calc(-38.25 * var(--u)); width: calc(343 * var(--u)); height: calc(257 * var(--u)); }
	.rxc-pin { left: calc(79.3 * var(--u)); top: calc(80.55 * var(--u)); }
	.rxc-based__line { left: calc(13.5 * var(--u)); top: calc(82.5 * var(--u)); width: calc(56 * var(--u)); background: var(--rxc-accent); } /* на мобилке днём тоже оранжевый */
	.rxc .rxc-based { left: calc(93.64 * var(--u)); top: calc(74.076 * var(--u)); font-size: calc(14 * var(--u)); letter-spacing: calc(14 * var(--u) * .045); color: var(--rxc-accent); }
	.rxc .rxc-city { left: calc(13.5 * var(--u)); top: calc(99.878 * var(--u)); font-size: calc(32 * var(--u)); letter-spacing: calc(32 * var(--u) * .16); }
	.rxc .rxc-note { left: calc(13.5 * var(--u)); top: calc(148.076 * var(--u)); font-size: calc(14 * var(--u)); }
	.rxc-soc { left: calc(13.5 * var(--u)); top: calc(214.25 * var(--u)); }
	.rxc .rxc-phone { left: calc(13.5 * var(--u)); top: calc(310.032 * var(--u)); }
	.rxc-cta__line { left: calc(12.75 * var(--u)); top: calc(385.25 * var(--u)); height: calc(40 * var(--u)); }
	.rxc .rxc-cta { left: calc(31.5 * var(--u)); top: calc(386.854 * var(--u)); font-size: calc(14 * var(--u)); line-height: calc(18 * var(--u)); letter-spacing: calc(14 * var(--u) * .24); }
	.rxc .rxc-cta__btn { left: auto; right: calc(13.5 * var(--u)); top: calc(381.25 * var(--u)); }
	.rxc .rxc-privacy { left: calc(13.5 * var(--u)); top: calc(477.076 * var(--u)); font-size: calc(14 * var(--u)); }
	.rxc .rxc-terms { left: auto; right: calc(14.6 * var(--u)); top: calc(477.076 * var(--u)); font-size: calc(14 * var(--u)); }
	.rxc .rxc-dev { left: auto; right: calc(13.5 * var(--u)); top: calc(530.098 * var(--u)); width: calc(104 * var(--u)); height: calc(15.048 * var(--u)); }
	.rxc .rxc-dev .rxc-dev__t { font-size: calc(12 * var(--u)); }
	.rxc .rxc-kh { left: auto; right: 0; top: calc(1.652 * var(--u)); width: calc(24 * var(--u)); height: calc(12 * var(--u)); }
	.rxc-copy { left: calc(13.5 * var(--u)); top: calc(520.49 * var(--u)); width: calc(18 * var(--u)); height: calc(18 * var(--u)); background-image: url(img/copy-m.webp); }
	.rxc .rxc-brand { left: calc(31.5 * var(--u)); top: calc(519.032 * var(--u)); font-size: calc(18 * var(--u)); letter-spacing: calc(18 * var(--u) * .05); }
	.rxc .rxc-brand.rxc-brand--logo { left: calc(30 * var(--u)); top: calc(520 * var(--u)); width: calc(162 * var(--u)); height: calc(20 * var(--u)); }
	.rxc .rxc-rights.rxc-rights--logo { left: calc(12 * var(--u)); top: calc(541 * var(--u)); width: calc(138 * var(--u)); height: calc(16 * var(--u)); }
	.rxc .rxc-logo--d { display: none; }
	.rxc .rxc-logo--m { display: block; }
	.rxc .rxc-rights { left: calc(13.5 * var(--u)); top: calc(540.098 * var(--u)); font-size: calc(12 * var(--u)); }
}

/* ============================================================
 * Форма CF7 .rxf — копия стилей формы (те же правила, что в Custom CSS сайта),
 * чтобы секция выглядела одинаково в редакторе и без глобального CSS.
 * ============================================================ */

.rxf{
  --rxf-text:#E4E3D8;
  --rxf-line:#E4E3D8;
  --rxf-accent:#FFAB2D;
  --rxf-active:#FFA123;
  --rxf-error:#FF6B5B;
  --rxf-pop-bg:#0B0F19;
  --rxf-font:'Orbitron',sans-serif;
  width:100%;max-width:686px;container:rxf / inline-size;
  font-family:var(--rxf-font);font-size:14px;line-height:18px;color:var(--rxf-text);
}
.rxf *,.rxf *::before,.rxf *::after{box-sizing:border-box}
.rxf p{display:contents;margin:0}
.rxf br{display:none}

.rxf-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:32px;row-gap:24px}
.rxf-f{position:relative;display:block;min-width:0;margin:0;padding:0;font:inherit;color:inherit;vertical-align:top}
.rxf-wide{grid-column:1 / -1}
.rxf-l{display:block;margin:0 0 8px;font-family:var(--rxf-font);font-size:14px;line-height:18px;font-weight:400;letter-spacing:0;color:var(--rxf-text);text-transform:none}
.rxf .wpcf7-form-control-wrap{position:relative;display:block}

/* поля */
.rxf .rxf-f .wpcf7-form-control:is(.wpcf7-text,.wpcf7-email,.wpcf7-tel,.wpcf7-textarea){
  display:block;width:100%;max-width:none;height:48px;min-height:48px;margin:0;padding:0 24px;
  font-family:var(--rxf-font);font-size:14px;line-height:18px;font-weight:400;letter-spacing:0;
  color:var(--rxf-text);background:transparent;
  border:.8px solid var(--rxf-line);border-radius:12px;box-shadow:none;outline:0;
  transition:border-color .2s ease,box-shadow .2s ease;-webkit-appearance:none;appearance:none}
.rxf .rxf-f .wpcf7-form-control.wpcf7-textarea{padding:14px 24px;line-height:20px;resize:none;overflow:hidden}
.rxf .rxf-f .wpcf7-form-control::placeholder{color:var(--rxf-text);opacity:1}
.rxf .rxf-f .wpcf7-form-control:is(.wpcf7-text,.wpcf7-email,.wpcf7-tel,.wpcf7-textarea):hover{border-color:rgba(255,171,45,.55)}
.rxf .rxf-f .wpcf7-form-control:is(.wpcf7-text,.wpcf7-email,.wpcf7-tel,.wpcf7-textarea):focus{border-color:var(--rxf-accent);box-shadow:0 0 0 3px rgba(255,171,45,.12)}
.rxf .rxf-f .wpcf7-form-control:-webkit-autofill{-webkit-text-fill-color:var(--rxf-text);transition:background-color 9999s}

/* телефон (intl-tel-input) */
.rxf .rxf-f .wpcf7-form-control.wpcf7-tel,
.rxf .rxf-f .wpcf7-form-control.wpcf7-tel::placeholder{color:var(--rxf-accent)}
.rxf .iti{display:block;width:100%;
  --iti-hover-color:transparent;--iti-dialcode-color:rgba(228,227,216,.5);
  --iti-border-color:rgba(228,227,216,.25);--iti-dropdown-bg:var(--rxf-pop-bg)}
.rxf .iti .wpcf7-form-control.wpcf7-tel{padding-left:92px !important;padding-right:24px}
.rxf .iti__country-container{top:0;bottom:0;left:0;padding:0}
.rxf .iti button.iti__selected-country{
  display:flex;align-items:center;height:100%;min-height:0;margin:0;padding:0 0 0 8px;
  background:transparent !important;border:0;border-radius:12px 0 0 12px;box-shadow:none;
  color:inherit;font:inherit;line-height:1;text-transform:none;letter-spacing:0;cursor:pointer;transition:none}
.rxf .iti__selected-country-primary{display:flex;align-items:center;height:100%;padding:0;background:none}
.rxf .iti__selected-country .iti__flag{width:32px;height:24px;border-radius:0;box-shadow:none}
.rxf .iti--rxf-flag .iti__selected-country .iti__flag{background:var(--rxf-flag) center / cover no-repeat}
.rxf .iti__arrow{width:10px;height:7px;margin:0 0 0 11px;border:0;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7'%3E%3Cpath d='M0 0v2l5 5 5-5V0L5 5z' fill='%23FFAB2D'/%3E%3C/svg%3E") center / 10px 7px no-repeat;
  transition:transform .2s ease}
.rxf .iti__arrow--up{transform:rotate(180deg);border:0}
.rxf .iti__dropdown-content{margin-top:6px;background:var(--rxf-pop-bg);border:.8px solid rgba(228,227,216,.35);border-radius:12px;overflow:hidden;box-shadow:0 16px 40px rgba(0,0,0,.55);z-index:20}
.rxf .iti input.iti__search-input{display:block;width:100%;height:40px;min-height:0;margin:0;padding:0 16px;
  font-family:var(--rxf-font);font-size:12px;color:var(--rxf-text);background:transparent;
  border:0;border-bottom:.8px solid rgba(228,227,216,.2);border-radius:0;box-shadow:none;outline:0}
.rxf .iti input.iti__search-input::placeholder{color:rgba(228,227,216,.45)}
.rxf .iti__country-list{max-height:240px;margin:0;padding:4px 0;font-size:12px;color:var(--rxf-text);scrollbar-width:thin;scrollbar-color:rgba(228,227,216,.25) transparent}
.rxf .iti__country{padding:8px 14px;color:var(--rxf-text);list-style:none}
.rxf .iti__country.iti__highlight{background:rgba(255,171,45,.1)}
.rxf .iti__country[aria-selected="true"] .iti__country-name{color:var(--rxf-accent)}

/* тип проекта */
.rxf .wpcf7-radio.rxf-types{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:0}
.rxf .rxf-types .wpcf7-list-item{display:block;margin:0;padding:0}
.rxf .rxf-types label{position:relative;display:flex;align-items:center;justify-content:center;height:48px;margin:0;padding:0 8px;
  font-family:var(--rxf-font);font-size:14px;line-height:18px;font-weight:400;color:var(--rxf-text);text-align:center;
  border:.8px solid var(--rxf-line);border-radius:12px;cursor:pointer;user-select:none;
  transition:border-color .2s ease,box-shadow .25s ease}
.rxf .rxf-types input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.rxf .rxf-types .wpcf7-list-item-label{margin:0;padding:0;transition:text-shadow .25s ease}
.rxf .rxf-types .wpcf7-list-item-label::before,.rxf .rxf-types .wpcf7-list-item-label::after{display:none}
.rxf .rxf-types label:hover{border-color:rgba(255,161,35,.6)}
.rxf .rxf-types label:has(input:checked){border-color:var(--rxf-active);box-shadow:0 6px 18px rgba(255,161,35,.1)}
.rxf .rxf-types label:has(input:checked) .wpcf7-list-item-label{text-shadow:0 3px 5px rgba(255,161,35,.85)}
.rxf .rxf-types label:has(input:focus-visible){box-shadow:0 0 0 3px rgba(255,171,45,.25)}

/* кнопка */
.rxf-foot{grid-column:2;position:relative;margin-top:16px}
.rxf .rxf-foot .rxf-send{
  display:flex;align-items:center;justify-content:center;gap:24px;width:100%;height:48px;min-height:48px;margin:0;padding:0 24px;
  font-family:var(--rxf-font);font-size:13px;line-height:18px;font-weight:400;letter-spacing:.2em;text-transform:uppercase;
  color:var(--rxf-accent);background:transparent;
  border:1.5px solid var(--rxf-accent);border-radius:24px;box-shadow:0 1px 2px rgba(255,171,45,.8);
  cursor:pointer;opacity:1;transition:background-color .25s ease,box-shadow .25s ease,color .25s ease}
.rxf .rxf-foot .rxf-send svg{flex:none;display:block;width:49px;height:8px;transition:transform .3s ease}
.rxf .rxf-foot .rxf-send:hover{background:rgba(255,171,45,.08);box-shadow:0 1px 2px rgba(255,171,45,.8),0 6px 22px rgba(255,171,45,.18)}
.rxf .rxf-foot .rxf-send:hover svg{transform:translateX(6px)}
.rxf .rxf-foot .rxf-send:focus-visible{outline:2px solid var(--rxf-accent);outline-offset:3px}
.rxf .rxf-foot .rxf-send:disabled{opacity:.55;cursor:progress}
.rxf .wpcf7-spinner{position:absolute;top:50%;left:-36px;margin:-12px 0 0;background-color:var(--rxf-accent)}

/* валидация и ответ */
.rxf .wpcf7-not-valid-tip{position:absolute;top:100%;left:0;margin-top:4px;font-family:var(--rxf-font);font-size:11px;line-height:14px;color:var(--rxf-error)}
.rxf .rxf-f .wpcf7-form-control.wpcf7-not-valid{border-color:var(--rxf-error)}
.wpcf7 form:has(.rxf) .wpcf7-response-output{max-width:686px;margin:24px 0 0;padding:14px 24px;
  font-family:'Orbitron',sans-serif;font-size:13px;line-height:18px;color:#E4E3D8;
  border:.8px solid #E4E3D8;border-radius:12px}
.wpcf7 form.sent:has(.rxf) .wpcf7-response-output{border-color:#FFAB2D;color:#FFAB2D}
.wpcf7 form:is(.invalid,.unaccepted,.failed,.spam,.aborted):has(.rxf) .wpcf7-response-output{border-color:#FF6B5B}

/* мобилка — по ширине самой формы */
@container rxf (max-width:560px){
  .rxf-grid{grid-template-columns:1fr;row-gap:20px}
  .rxf .wpcf7-radio.rxf-types{grid-template-columns:repeat(2,1fr)}
  .rxf-foot{grid-column:1;margin-top:12px}
  .rxf .iti .wpcf7-form-control.wpcf7-tel{padding-left:84px !important}
  .rxf .wpcf7-spinner{left:auto;right:0;top:auto;bottom:-32px}
}

/* ---------- форма .rxf внутри секции: отличия этого макета ---------- */
.rxc .rxf-l { font-weight: 500; }
/* одна строка сообщения — ровно 48px, как поля */
.rxc .rxf .rxf-f .wpcf7-form-control.wpcf7-textarea { padding: 13.2px 24px; }
.rxc .rxf .rxf-foot .rxf-send {
	gap: 22px;
	font-size: 14px;
	letter-spacing: .162em;
	box-shadow: 1px 1px 1px rgba(230, 171, 116, .9);
}
.rxc .rxf .rxf-foot .rxf-send:hover { box-shadow: 1px 1px 1px rgba(230, 171, 116, .9), 0 6px 22px rgba(255, 171, 45, .18); }
.rxc .wpcf7 form.init .wpcf7-response-output,
.rxc .wpcf7 form .wpcf7-response-output:empty { display: none; }

@container rxf (max-width: 560px) {
	.rxc .rxf-grid { row-gap: 8px; }
	.rxc .rxf-f:has(.wpcf7-tel),
	.rxc .rxf-f:has(.rxf-types),
	.rxc .rxf-f:has(textarea) { margin-top: 16px; }
	.rxc .rxf-foot { margin-top: 32px; }
	.rxc .rxf .wpcf7-radio.rxf-types { row-gap: 8px; }
	.rxc .rxf .iti .wpcf7-form-control.wpcf7-tel { padding-left: 92px !important; }
	.rxc .rxf .rxf-f .wpcf7-form-control.wpcf7-textarea { min-height: 96px; padding: 10.6px 8px; }
}
