/**
 * LID group — фирменное оформление формы GenerateBlocks Pro.
 * Палитра и шрифты по брендбуку: тёмно-синий #204C6F, бирюзовый #008AAB,
 * светлая подложка #F5F8FA, линии #E1E8EE, текст #4A5B68.
 * Шрифт: Century Gothic / Bahnschrift с системными заменами.
 */

.gb-overlay__content {
	position: relative;
	--lid-navy: #204c6f;
	--lid-cyan: #008aab;
	--lid-ink: #182a36;
	--lid-text: #4a5b68;
	--lid-line: #e1e8ee;
	--lid-surface: #ffffff;
	--lid-soft: #f5f8fa;
	--lid-radius: 14px;
	--lid-font: "Century Gothic", "Century Gothic Pro", Bahnschrift, "Segoe UI",
		"Helvetica Neue", Arial, sans-serif;
}

/* Окно целиком: воздух от краёв экрана и ограничение ширины */
.gb-overlay {
	padding: 28px 20px;
	box-sizing: border-box;
}

.gb-overlay__content {
	width: 100%;
	max-width: 560px;
	margin: 0 auto;
	padding: 0;
}

/* Сама карточка формы: белая, со скруглением и мягкой тенью */
.gb-overlay__content > .gb-element-86a64465,
.gb-overlay__content > div[class*="gb-element"] {
	box-sizing: border-box;
	width: 100%;
	max-height: calc(100vh - 56px);
	overflow-y: auto;
	overscroll-behavior: contain;
	scrollbar-width: thin;
	padding: clamp(18px, 2.2vw, 26px) clamp(18px, 2.4vw, 28px) clamp(18px, 2.4vw, 26px);
	background: var(--lid-surface);
	border: 0;
	border-radius: 26px;
	box-shadow: 0 30px 70px -40px rgba(18, 46, 68, 0.55);
}

.gb-overlay__content .gb-form {
	display: grid;
	gap: 14px;
	width: 100%;
	box-sizing: border-box;
	margin: 0;
	padding: 0;
	/* Серая плашка темы внутри белой карточки убрана: фон единый */
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	font-family: var(--lid-font);
	color: var(--lid-text);
}

.gb-overlay__content .gb-form-field {
	display: grid;
	gap: 6px;
	margin: 0;
}

/* Кнопка закрытия: аккуратный круг в углу панели, а не «квадрат на стыке» */
.gb-overlay__content [data-gb-overlay-close] {
	position: absolute;
	top: 12px;
	right: 12px;
	width: 38px;
	height: 38px;
	display: grid;
	place-items: center;
	padding: 0;
	border: 1px solid var(--lid-line);
	border-radius: 50%;
	background: var(--lid-surface);
	color: var(--lid-navy);
	font-size: 19px;
	line-height: 1;
	cursor: pointer;
	z-index: 2;
	transition: background 0.16s ease, color 0.16s ease, border-color 0.16s ease;
}

.gb-overlay__content [data-gb-overlay-close]:hover {
	background: var(--lid-navy);
	border-color: var(--lid-navy);
	color: #fff;
}

.gb-overlay__content .gb-form-field__label,
.gb-overlay__content .gb-form-field-label {
	font-family: var(--lid-font);
	font-size: 10.5px;
	line-height: 1.4;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--lid-navy);
	margin: 0;
}

.gb-overlay__content .gb-form-field__required {
	color: var(--lid-cyan);
	font-weight: 700;
}

.gb-overlay__content .gb-form-field-control,
.gb-overlay__content .gb-form-field__input {
	width: 100%;
	box-sizing: border-box;
	height: 48px;
	padding: 0 14px;
	font-family: var(--lid-font);
	font-size: 15px;
	line-height: 1.4;
	color: var(--lid-ink);
	background: var(--lid-soft);
	border: 1px solid var(--lid-line);
	border-radius: 16px;
	box-shadow: none;
	transition: border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
	-webkit-appearance: none;
	appearance: none;
}

.gb-overlay__content textarea.gb-form-field-control {
	height: 112px;
	min-height: 96px;
	padding: 12px 14px;
	resize: vertical;
}

.gb-overlay__content .gb-form-field-control::placeholder {
	color: #97a7b4;
}

.gb-overlay__content .gb-form-field-control:hover {
	border-color: #c9d6e0;
}

.gb-overlay__content .gb-form-field-control:focus {
	outline: none;
	background: var(--lid-surface);
	border-color: var(--lid-navy);
	box-shadow: 0 0 0 4px rgba(32, 76, 111, 0.1);
}

.gb-overlay__content .gb-form-field-control:user-invalid {
	border-color: #c4553f;
	box-shadow: 0 0 0 4px rgba(196, 85, 63, 0.08);
}

/* Чекбокс согласия */
.gb-overlay__content .gb-form-field--checkbox {
	display: grid;
	grid-template-columns: 20px 1fr;
	align-items: start;
	gap: 10px;
	padding: 0;
}

.gb-overlay__content .gb-form-field--checkbox .gb-form-field-control {
	width: 20px;
	height: 20px;
	min-height: 0;
	margin: 1px 0 0;
	padding: 0;
	border: 1.5px solid #b3c3d0;
	border-radius: 6px;
	background: var(--lid-surface);
	cursor: pointer;
	display: grid;
	place-content: center;
}

.gb-overlay__content .gb-form-field--checkbox .gb-form-field-control:checked {
	background: linear-gradient(135deg, var(--lid-navy), var(--lid-cyan));
	border-color: var(--lid-navy);
}

.gb-overlay__content .gb-form-field--checkbox .gb-form-field-control:checked::after {
	content: "";
	width: 10px;
	height: 6px;
	border-left: 2px solid #fff;
	border-bottom: 2px solid #fff;
	transform: rotate(-45deg) translateY(-1px);
}

.gb-overlay__content .gb-form-field--checkbox .gb-form-field__label {
	font-size: 12.5px;
	line-height: 1.5;
	font-weight: 400;
	letter-spacing: 0;
	text-transform: none;
	color: #4c5a65;
	cursor: pointer;
}

.gb-overlay__content .gb-form-field--checkbox a {
	color: var(--lid-navy);
	text-decoration: underline;
	text-decoration-color: rgba(0, 138, 171, 0.45);
	text-underline-offset: 2px;
	transition: color 0.16s ease;
}

.gb-overlay__content .gb-form-field--checkbox a:hover {
	color: var(--lid-cyan);
}

/* Кнопка: фирменный градиент из логотипа */
.gb-overlay__content .gb-form .gbp-button--form,
.gb-overlay__content .gb-form button[type="submit"] {
	width: 100%;
	min-height: 50px;
	margin-top: 4px;
	padding: 0 24px;
	border: 0;
	border-radius: var(--lid-radius);
	background: linear-gradient(100deg, var(--lid-navy) 0%, #17698c 55%, var(--lid-cyan) 100%);
	color: #fff;
	font-family: var(--lid-font);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	cursor: pointer;
	box-shadow: 0 14px 26px -16px rgba(0, 138, 171, 0.85);
	transition: transform 0.16s ease, box-shadow 0.2s ease, filter 0.18s ease;
}

.gb-overlay__content .gb-form .gbp-button--form:hover,
.gb-overlay__content .gb-form button[type="submit"]:hover {
	filter: brightness(1.06);
	transform: translateY(-1px);
	box-shadow: 0 18px 30px -16px rgba(0, 138, 171, 0.95);
}

.gb-overlay__content .gb-form .gbp-button--form:active,
.gb-overlay__content .gb-form button[type="submit"]:active {
	transform: translateY(0);
	filter: brightness(0.98);
}

.gb-overlay__content .gb-form .gbp-button--form:focus-visible,
.gb-overlay__content .gb-form button[type="submit"]:focus-visible {
	outline: 2px solid var(--lid-cyan);
	outline-offset: 3px;
}

/* Сообщения формы */
.gb-overlay__content .gb-form-message {
	margin: 2px 0 0;
	padding: 14px 16px;
	border-radius: 12px;
	background: rgba(0, 138, 171, 0.07);
	border-left: 3px solid var(--lid-cyan);
	font-size: 14px;
	line-height: 1.5;
	color: var(--lid-ink);
}

/* Заголовок окна: без лишних отступов темы, чтобы форма была компактнее */
.gb-overlay__content > div[class*="gb-element"] > h2 {
	margin: 0 0 6px;
	padding-top: 0;
	font-size: clamp(21px, 2.2vw, 26px);
	line-height: 1.2;
	color: var(--lid-navy);
}

.gb-overlay__content > div[class*="gb-element"] > p {
	margin: 0 0 2px;
}

.gb-overlay__content .gb-form-message[hidden] {
	display: none;
}

/* Две колонки на широком экране: имя — на всю ширину, email и телефон — рядом */
@media (min-width: 720px) {
	.gb-overlay__content .gb-form {
		grid-template-columns: 1fr 1fr;
		column-gap: 16px;
	}

	.gb-overlay__content .gb-form-field:has(input[name="n"]),
	.gb-overlay__content .gb-form-field:has(textarea),
	.gb-overlay__content .gb-form-field--checkbox,
	.gb-overlay__content .gb-form-message,
	.gb-overlay__content .gb-form noscript,
	.gb-overlay__content .gb-form button[type="submit"] {
		grid-column: 1 / -1;
	}
}

@media (max-width: 600px) {
	.gb-overlay {
		padding: 12px 12px;
	}

	.gb-overlay__content > .gb-element-86a64465,
	.gb-overlay__content > div[class*="gb-element"] {
		max-height: calc(100vh - 24px);
		max-height: calc(100dvh - 24px);
		padding: 16px 16px 14px;
		border-radius: 22px;
		box-shadow: 0 16px 40px -28px rgba(18, 46, 68, 0.5);
	}

	.gb-overlay__content .gb-form {
		gap: 12px;
		padding-top: 6px;
	}

	.gb-overlay__content .gb-form-field-control,
	.gb-overlay__content .gb-form-field__input {
		height: 46px;
		border-radius: 14px;
	}

	.gb-overlay__content textarea.gb-form-field-control {
		height: 92px;
		min-height: 76px;
	}

	/* Кнопка всегда под рукой: прилипает к низу прокручиваемой карточки */
	.gb-overlay__content .gb-form button[type="submit"] {
		position: sticky;
		bottom: 0;
		margin-top: 6px;
		z-index: 1;
	}
}

/* Невысокие экраны (iPhone SE, небольшие ноутбуки в портретной ориентации):
   форма ужимается так, чтобы не приходилось прокручивать её целиком */
@media (max-width: 600px) and (max-height: 760px) {
	.gb-overlay {
		padding: 8px;
	}

	.gb-overlay__content > .gb-element-86a64465,
	.gb-overlay__content > div[class*="gb-element"] {
		max-height: calc(100dvh - 16px);
		padding: 14px 16px 18px;
	}

	.gb-overlay__content > div[class*="gb-element"] > h2 {
		font-size: 19px;
		margin-bottom: 2px;
	}

	.gb-overlay__content .gb-form {
		gap: 10px;
		padding-top: 4px;
	}

	.gb-overlay__content .gb-form-field {
		gap: 5px;
	}

	.gb-overlay__content .gb-form-field__label,
	.gb-overlay__content .gb-form-field-label {
		font-size: 10px;
		letter-spacing: 0.1em;
	}

	.gb-overlay__content .gb-form-field-control,
	.gb-overlay__content .gb-form-field__input {
		height: 42px;
		border-radius: 12px;
	}

	.gb-overlay__content textarea.gb-form-field-control {
		height: 84px;
		min-height: 66px;
		padding: 9px 12px;
	}

	.gb-overlay__content .gb-form-field--checkbox .gb-form-field__label {
		font-size: 11.5px;
		line-height: 1.4;
	}

	.gb-overlay__content .gb-form .gbp-button--form,
	.gb-overlay__content .gb-form button[type="submit"] {
		min-height: 44px;
		margin-top: 2px;
	}
}

/* Стили блока формы подключаются после нашего файла и перебивают поля,
   поэтому ключевые свойства закреплены явно. Держим их в одном месте. */
.gb-overlay__content .gb-form .gb-form-field-control,
.gb-overlay__content .gb-form .gb-form-field__input,
.gb-overlay__content .gb-form input:not([type="checkbox"]),
.gb-overlay__content .gb-form textarea {
	width: 100% !important;
	box-sizing: border-box !important;
	height: 48px !important;
	padding: 0 14px !important;
	font-family: var(--lid-font) !important;
	font-size: 15px !important;
	line-height: 1.4 !important;
	color: var(--lid-ink) !important;
	background: var(--lid-soft) !important;
	border: 1px solid var(--lid-line) !important;
	border-radius: 16px !important;
	box-shadow: none !important;
	-webkit-appearance: none !important;
	appearance: none !important;
}

.gb-overlay__content .gb-form textarea {
	height: 112px !important;
	min-height: 96px !important;
	padding: 12px 14px !important;
	resize: vertical !important;
}

.gb-overlay__content .gb-form .gb-form-field-control::placeholder,
.gb-overlay__content .gb-form .gb-form-field__input::placeholder {
	color: #8fa0ae !important;
	opacity: 1 !important;
}

.gb-overlay__content .gb-form .gb-form-field-control:focus,
.gb-overlay__content .gb-form .gb-form-field__input:focus,
.gb-overlay__content .gb-form input:not([type="checkbox"]):focus,
.gb-overlay__content .gb-form textarea:focus {
	background: #fff !important;
	border-color: var(--lid-navy) !important;
	box-shadow: 0 0 0 4px rgba(32, 76, 111, 0.1) !important;
	outline: none !important;
}

.gb-overlay__content .gb-form input[type="checkbox"] {
	width: 20px !important;
	height: 20px !important;
	min-height: 0 !important;
	margin: 1px 0 0 !important;
	padding: 0 !important;
	border: 1.5px solid #b3c3d0 !important;
	border-radius: 6px !important;
	background: #fff !important;
	box-shadow: none !important;
}

.gb-overlay__content .gb-form input[type="checkbox"]:checked {
	background: linear-gradient(135deg, var(--lid-navy), var(--lid-cyan)) !important;
	border-color: var(--lid-navy) !important;
}

.gb-overlay__content .gb-form .gbp-button--form,
.gb-overlay__content .gb-form button[type="submit"] {
	min-height: 50px !important;
	border: 0 !important;
	border-radius: 16px !important;
	background: linear-gradient(100deg, var(--lid-navy) 0%, #17698c 55%, var(--lid-cyan) 100%) !important;
	color: #fff !important;
	font-family: var(--lid-font) !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: 0.16em !important;
	text-transform: uppercase !important;
}

@media (max-width: 600px) {
	.gb-overlay__content .gb-form .gb-form-field-control,
	.gb-overlay__content .gb-form .gb-form-field__input,
	.gb-overlay__content .gb-form input:not([type="checkbox"]),
	.gb-overlay__content .gb-form textarea {
		height: 46px !important;
		border-radius: 14px !important;
	}

	.gb-overlay__content .gb-form textarea {
		height: 92px !important;
		min-height: 76px !important;
	}

	.gb-overlay__content .gb-form .gbp-button--form,
	.gb-overlay__content .gb-form button[type="submit"] {
		min-height: 46px !important;
	}
}

@media (max-width: 600px) and (max-height: 760px) {
	.gb-overlay__content .gb-form .gb-form-field-control,
	.gb-overlay__content .gb-form .gb-form-field__input,
	.gb-overlay__content .gb-form input:not([type="checkbox"]),
	.gb-overlay__content .gb-form textarea {
		height: 42px !important;
		border-radius: 12px !important;
	}

	.gb-overlay__content .gb-form textarea {
		height: 84px !important;
		min-height: 66px !important;
	}

	.gb-overlay__content .gb-form .gbp-button--form,
	.gb-overlay__content .gb-form button[type="submit"] {
		min-height: 44px !important;
	}
}

/* ==========================================================================
 * Тёмная фирменная карточка формы — тот же стиль, что у блока
 * «Почему нам доверяют»: глубокий синий, белый текст, бирюзовые акценты.
 * Слой идёт последним и только перекрашивает уже готовую вёрстку,
 * разметку и поведение формы не меняет.
 * ========================================================================== */

.gb-overlay__content > .gb-element-86a64465,
.gb-overlay__content > div[class*="gb-element"] {
	--lid-card-ink: #ffffff;
	--lid-card-muted: rgba(255, 255, 255, 0.66);
	--lid-card-line: rgba(255, 255, 255, 0.16);
	--lid-card-accent: #62d2e6;
	background:
		radial-gradient(120% 90% at 100% 0%, rgba(98, 210, 230, 0.18) 0%, rgba(98, 210, 230, 0) 55%),
		linear-gradient(155deg, #27567c 0%, #1d4260 42%, #142e42 100%);
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 24px;
	box-shadow: 0 40px 80px -40px rgba(6, 22, 34, 0.8);
	color: var(--lid-card-ink);
	color-scheme: dark;
	scrollbar-color: rgba(255, 255, 255, 0.28) transparent;
}

.gb-overlay__content > div[class*="gb-element"] *::-webkit-scrollbar-thumb {
	background: rgba(255, 255, 255, 0.24);
	border-radius: 4px;
}

.gb-overlay__content > div[class*="gb-element"] > h2 {
	color: #ffffff;
	letter-spacing: 0.01em;
}

.gb-overlay__content > div[class*="gb-element"] > p {
	color: var(--lid-card-muted);
}

.gb-overlay__content .gb-form {
	color: rgba(255, 255, 255, 0.82);
}

/* Подписи полей */
.gb-overlay__content .gb-form-field__label,
.gb-overlay__content .gb-form-field-label {
	color: var(--lid-card-muted);
}

.gb-overlay__content .gb-form-field__required {
	color: var(--lid-card-accent);
}

/* Поля ввода */
.gb-overlay__content .gb-form-field-control,
.gb-overlay__content .gb-form-field__input,
.gb-overlay__content .gb-form input:not([type="checkbox"]),
.gb-overlay__content .gb-form textarea {
	background: rgba(255, 255, 255, 0.07);
	border: 1px solid rgba(255, 255, 255, 0.2);
	color: #ffffff;
	caret-color: var(--lid-card-accent);
	box-shadow: none;
}

.gb-overlay__content .gb-form-field-control::placeholder,
.gb-overlay__content .gb-form-field__input::placeholder,
.gb-overlay__content .gb-form textarea::placeholder {
	color: rgba(255, 255, 255, 0.44);
}

.gb-overlay__content .gb-form-field-control:hover,
.gb-overlay__content .gb-form input:not([type="checkbox"]):hover,
.gb-overlay__content .gb-form textarea:hover {
	background: rgba(255, 255, 255, 0.1);
	border-color: rgba(255, 255, 255, 0.34);
}

.gb-overlay__content .gb-form-field-control:focus,
.gb-overlay__content .gb-form-field__input:focus,
.gb-overlay__content .gb-form input:not([type="checkbox"]):focus,
.gb-overlay__content .gb-form textarea:focus {
	background: rgba(255, 255, 255, 0.12);
	border-color: var(--lid-card-accent);
	box-shadow: 0 0 0 4px rgba(98, 210, 230, 0.18);
	outline: none;
}

.gb-overlay__content .gb-form-field-control:user-invalid {
	border-color: #ff9a83;
	box-shadow: 0 0 0 4px rgba(255, 154, 131, 0.16);
}

/* Автозаполнение браузера не должно заливать поле белым */
.gb-overlay__content .gb-form input:-webkit-autofill,
.gb-overlay__content .gb-form input:-webkit-autofill:hover,
.gb-overlay__content .gb-form input:-webkit-autofill:focus,
.gb-overlay__content .gb-form textarea:-webkit-autofill {
	-webkit-text-fill-color: #ffffff;
	-webkit-box-shadow: 0 0 0 1000px #1d4260 inset;
	box-shadow: 0 0 0 1000px #1d4260 inset;
	caret-color: #ffffff;
}

/* Чекбокс согласия */
.gb-overlay__content .gb-form-field--checkbox .gb-form-field-control,
.gb-overlay__content .gb-form input[type="checkbox"] {
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.38);
}

.gb-overlay__content .gb-form-field--checkbox .gb-form-field-control:checked,
.gb-overlay__content .gb-form input[type="checkbox"]:checked {
	background: var(--lid-card-accent);
	border-color: var(--lid-card-accent);
}

.gb-overlay__content .gb-form-field--checkbox .gb-form-field__label,
.gb-overlay__content .gb-form-field--checkbox .gb-form-field-label {
	color: rgba(255, 255, 255, 0.72);
	letter-spacing: 0;
	text-transform: none;
	font-weight: 500;
	font-size: 12.5px;
	line-height: 1.5;
}

.gb-overlay__content .gb-form-field--checkbox a {
	color: var(--lid-card-accent);
	text-decoration-color: rgba(98, 210, 230, 0.5);
	text-underline-offset: 2px;
}

.gb-overlay__content .gb-form-field--checkbox a:hover {
	color: #a8ecf7;
	text-decoration-color: #a8ecf7;
}

/* Кнопка: бирюзовый градиент на синем фоне */
.gb-overlay__content .gb-form .gbp-button--form,
.gb-overlay__content .gb-form button[type="submit"] {
	background: linear-gradient(100deg, #0e7d9a 0%, #1497b6 55%, #2fb9d4 100%);
	color: #ffffff;
	box-shadow: 0 18px 34px -20px rgba(47, 185, 212, 0.9);
}

.gb-overlay__content .gb-form .gbp-button--form:hover,
.gb-overlay__content .gb-form button[type="submit"]:hover {
	filter: brightness(1.08);
	box-shadow: 0 22px 38px -18px rgba(47, 185, 212, 1);
}

.gb-overlay__content .gb-form .gbp-button--form:focus-visible,
.gb-overlay__content .gb-form button[type="submit"]:focus-visible {
	outline: 2px solid #bff0fa;
	outline-offset: 3px;
}

/* Сообщения формы */
.gb-overlay__content .gb-form-message {
	background: rgba(98, 210, 230, 0.12);
	border-left-color: var(--lid-card-accent);
	color: #eaf8fc;
}

/* Кнопка закрытия */
.gb-overlay__content [data-gb-overlay-close] {
	background: rgba(255, 255, 255, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.18);
	color: #ffffff;
	box-shadow: none;
}

.gb-overlay__content [data-gb-overlay-close]:hover {
	background: #ffffff;
	border-color: #ffffff;
	color: #17364e;
}

/* --- Тёмная карточка: добиваем правила темы и блока формы, которые
       подключаются позже и перебивают цвет по специфичности --- */

.gb-overlay__content .gb-form .gb-form-field__label,
.gb-overlay__content .gb-form .gb-form-field-label {
	color: rgba(255, 255, 255, 0.66) !important;
}

.gb-overlay__content .gb-form .gb-form-field__required {
	color: #62d2e6 !important;
}

.gb-overlay__content .gb-form .gb-form-field-control,
.gb-overlay__content .gb-form .gb-form-field__input,
.gb-overlay__content .gb-form input:not([type="checkbox"]),
.gb-overlay__content .gb-form textarea {
	background-color: rgba(255, 255, 255, 0.07) !important;
	border-color: rgba(255, 255, 255, 0.2) !important;
	color: #ffffff !important;
	caret-color: #62d2e6 !important;
	box-shadow: none !important;
}

.gb-overlay__content .gb-form .gb-form-field-control::placeholder,
.gb-overlay__content .gb-form .gb-form-field__input::placeholder,
.gb-overlay__content .gb-form textarea::placeholder {
	color: rgba(255, 255, 255, 0.44) !important;
}

.gb-overlay__content .gb-form .gb-form-field-control:focus,
.gb-overlay__content .gb-form .gb-form-field__input:focus,
.gb-overlay__content .gb-form input:not([type="checkbox"]):focus,
.gb-overlay__content .gb-form textarea:focus {
	background-color: rgba(255, 255, 255, 0.12) !important;
	border-color: #62d2e6 !important;
	box-shadow: 0 0 0 4px rgba(98, 210, 230, 0.18) !important;
}

.gb-overlay__content .gb-form input[type="checkbox"] {
	background-color: rgba(255, 255, 255, 0.06) !important;
	border-color: rgba(255, 255, 255, 0.38) !important;
}

.gb-overlay__content .gb-form input[type="checkbox"]:checked {
	background-color: #62d2e6 !important;
	border-color: #62d2e6 !important;
}

.gb-overlay__content .gb-form .gb-form-field--checkbox .gb-form-field__label,
.gb-overlay__content .gb-form .gb-form-field--checkbox .gb-form-field-label {
	color: rgba(255, 255, 255, 0.72) !important;
}

.gb-overlay__content .gb-form .gbp-button--form,
.gb-overlay__content .gb-form button[type="submit"] {
	background: linear-gradient(100deg, #0e7d9a 0%, #1497b6 55%, #2fb9d4 100%) !important;
	color: #ffffff !important;
}

.gb-overlay__content .gb-form-message {
	background: rgba(98, 210, 230, 0.12) !important;
	color: #eaf8fc !important;
}

/* --- Геометрия карточки: прямоугольник со скошенной правой стороной --- */

.gb-overlay__content {
	/* Тень считаем по контуру фигуры, поэтому она живёт на обёртке */
	filter: drop-shadow(0 30px 60px rgba(6, 22, 34, 0.55));
}

.gb-overlay__content > .gb-element-86a64465,
.gb-overlay__content > div[class*="gb-element"] {
	/* Тот же контур, что у карточки «Почему нам доверяют»:
	   правая сторона уходит внутрь на 5% ширины к низу, углы острые. */
	border-radius: 0;
	border: 0;
	box-shadow: none;
	clip-path: polygon(0 0, 100% 0, 95% 100%, 0 100%);
}

/* --- Поля и кнопка: та же скошенная геометрия --- */

.gb-overlay__content .gb-form .gb-form-field-control,
.gb-overlay__content .gb-form .gb-form-field__input,
.gb-overlay__content .gb-form input:not([type="checkbox"]),
.gb-overlay__content .gb-form textarea {
	--lid-slant: 12px;
	border: 0 !important;
	border-radius: 0 !important;
	padding-left: calc(var(--lid-slant) + 14px) !important;
	padding-right: calc(var(--lid-slant) + 14px) !important;
	background-color: rgba(255, 255, 255, 0.1) !important;
	clip-path: polygon(
		var(--lid-slant) 0,
		100% 0,
		calc(100% - var(--lid-slant)) 100%,
		0 100%
	);
	transition: background-color 0.18s ease, filter 0.18s ease;
}

.gb-overlay__content .gb-form textarea {
	padding-top: 12px !important;
	padding-bottom: 12px !important;
}

.gb-overlay__content .gb-form .gb-form-field-control:hover,
.gb-overlay__content .gb-form input:not([type="checkbox"]):hover,
.gb-overlay__content .gb-form textarea:hover {
	background-color: rgba(255, 255, 255, 0.14) !important;
}

/* Рамка не переживает срез, поэтому фокус показываем свечением по контуру */
.gb-overlay__content .gb-form .gb-form-field-control:focus,
.gb-overlay__content .gb-form input:not([type="checkbox"]):focus,
.gb-overlay__content .gb-form textarea:focus {
	background-color: rgba(255, 255, 255, 0.18) !important;
	box-shadow: none !important;
	filter: drop-shadow(0 0 7px rgba(98, 210, 230, 0.6));
	outline: none !important;
}

.gb-overlay__content .gb-form .gb-form-field-control:user-invalid,
.gb-overlay__content .gb-form input:not([type="checkbox"]):user-invalid,
.gb-overlay__content .gb-form textarea:user-invalid {
	box-shadow: none !important;
	filter: drop-shadow(0 0 7px rgba(255, 154, 131, 0.55));
}

/* Кнопка отправки — параллелограмм */
.gb-overlay__content .gb-form .gbp-button--form,
.gb-overlay__content .gb-form button[type="submit"] {
	--lid-slant: 16px;
	border-radius: 0 !important;
	padding-left: calc(var(--lid-slant) + 18px) !important;
	padding-right: calc(var(--lid-slant) + 18px) !important;
	clip-path: polygon(
		var(--lid-slant) 0,
		100% 0,
		calc(100% - var(--lid-slant)) 100%,
		0 100%
	);
}

@media (max-width: 600px) {
	.gb-overlay__content .gb-form .gb-form-field-control,
	.gb-overlay__content .gb-form input:not([type="checkbox"]),
	.gb-overlay__content .gb-form textarea {
		--lid-slant: 10px;
	}

	.gb-overlay__content .gb-form .gbp-button--form,
	.gb-overlay__content .gb-form button[type="submit"] {
		--lid-slant: 13px;
	}
}

/* Чекбокс согласия остаётся квадратным: срез к нему не применяем */
.gb-overlay__content .gb-form input[type="checkbox"] {
	clip-path: none !important;
	padding: 0 !important;
	border-radius: 4px !important;
	border: 1px solid rgba(255, 255, 255, 0.38) !important;
	background-color: rgba(255, 255, 255, 0.06) !important;
}

.gb-overlay__content .gb-form input[type="checkbox"]:checked {
	background-color: #62d2e6 !important;
	border-color: #62d2e6 !important;
}

/* Внутренние отступы многострочного поля: тема ставит свои с !important */
.gb-overlay__content .gb-form textarea.gb-form-field-control {
	padding: 12px calc(var(--lid-slant) + 14px) 12px calc(var(--lid-slant) + 14px) !important;
}

/* Кнопка: карточка справа скошена, поэтому у нижнего края места меньше.
   Поджимаем кнопку справа на половину скоса — визуальные отступы слева
   и справа становятся одинаковыми, кнопка читается по центру. */
.gb-overlay__content .gb-form .gbp-button--form,
.gb-overlay__content .gb-form button[type="submit"] {
	width: calc(100% - 5%) !important;
	margin-right: auto !important;
}

/* --- Кнопка «Отправить»: объёмная, в духе 3D девяностых --- */

.gb-overlay__content .gb-form .gbp-button--form,
.gb-overlay__content .gb-form button[type="submit"] {
	--lid-3d-face: linear-gradient(180deg, #47d3ec 0%, #22a9c6 46%, #0f7f9b 100%);
	--lid-3d-light: inset 0 4px 0 rgba(255, 255, 255, 0.45);
	--lid-3d-dark: inset 0 -4px 0 rgba(3, 26, 38, 0.4);
	background: var(--lid-3d-face) !important;
	box-shadow: var(--lid-3d-light), var(--lid-3d-dark) !important;
	filter: drop-shadow(2px 0 0 rgba(4, 18, 28, 0.9)) drop-shadow(-2px 0 0 rgba(4, 18, 28, 0.9)) drop-shadow(0 2px 0 rgba(4, 18, 28, 0.9)) drop-shadow(0 -2px 0 rgba(4, 18, 28, 0.9)) drop-shadow(6px 6px 0 rgba(4, 16, 26, 0.55)) !important;
	transform: none;
	text-shadow: 0 2px 0 rgba(3, 26, 38, 0.45);
	transition: transform 0.06s linear, filter 0.06s linear, box-shadow 0.06s linear;
}

.gb-overlay__content .gb-form .gbp-button--form:hover,
.gb-overlay__content .gb-form button[type="submit"]:hover {
	background: var(--lid-3d-face) !important;
	box-shadow: var(--lid-3d-light), var(--lid-3d-dark) !important;
	filter: drop-shadow(2px 0 0 rgba(4, 18, 28, 0.9)) drop-shadow(-2px 0 0 rgba(4, 18, 28, 0.9)) drop-shadow(0 2px 0 rgba(4, 18, 28, 0.9)) drop-shadow(0 -2px 0 rgba(4, 18, 28, 0.9)) drop-shadow(8px 8px 0 rgba(4, 16, 26, 0.55)) !important;
	transform: translate(-1px, -1px);
}

/* Нажатие: кнопка «проваливается», тень исчезает, грани меняются местами */
.gb-overlay__content .gb-form .gbp-button--form:active,
.gb-overlay__content .gb-form button[type="submit"]:active {
	background: linear-gradient(180deg, #1795b1 0%, #127d97 100%) !important;
	box-shadow: inset 0 4px 0 rgba(3, 26, 38, 0.38), inset 0 -3px 0 rgba(255, 255, 255, 0.2) !important;
	filter: drop-shadow(2px 0 0 rgba(4, 18, 28, 0.9)) drop-shadow(-2px 0 0 rgba(4, 18, 28, 0.9)) drop-shadow(0 2px 0 rgba(4, 18, 28, 0.9)) drop-shadow(0 -2px 0 rgba(4, 18, 28, 0.9)) drop-shadow(1px 1px 0 rgba(4, 16, 26, 0.5)) !important;
	transform: translate(4px, 4px);
}

.gb-overlay__content .gb-form .gbp-button--form:focus-visible,
.gb-overlay__content .gb-form button[type="submit"]:focus-visible {
	outline: 3px solid #bff0fa;
	outline-offset: 5px;
}

/* --- Подсказка «нужен телефон или e-mail» --- */

.gb-overlay__content .gb-form .lid-form-alert {
	grid-column: 1 / -1;
	margin: 0;
	padding: 11px 16px 11px 18px;
	background: rgba(255, 154, 131, 0.14);
	border-left: 3px solid #ff9a83;
	color: #ffe7e1;
	font-family: var(--lid-font);
	font-size: 13px;
	line-height: 1.45;
}

.gb-overlay__content .gb-form .lid-form-alert[hidden] {
	display: none;
}

/* Поля, которые нужно заполнить, подсвечиваем так же, как невалидные */
.gb-overlay__content .gb-form .lid-invalid {
	filter: drop-shadow(0 0 7px rgba(255, 154, 131, 0.6)) !important;
}

.gb-overlay__content .gb-form .lid-invalid:focus {
	filter: drop-shadow(0 0 9px rgba(255, 154, 131, 0.8)) !important;
}

/* Сообщения формы — по ширине кнопки и по центру карточки.
   Кнопка уже на 5% (под скос карточки), поэтому сообщение без этой
   поправки выпирало справа и казалось смещённым. */
.gb-overlay__content .gb-form .gb-form-message,
.gb-overlay__content .gb-form .lid-form-alert {
	width: calc(100% - 5%) !important;
	max-width: calc(100% - 5%) !important;
	box-sizing: border-box;
	margin-left: 0 !important;
	margin-right: auto !important;
	text-align: center;
}

