.lp-builder .lp-form-modal {
	padding: 24px;
}

.lp-builder .lp-form-modal .lp-form-modal__backdrop {
	background: rgba(0, 0, 0, .72);
	opacity: 0;
	transition: opacity 280ms ease-in;
}

.lp-builder .lp-form-modal .lp-form-modal__panel {
	position: relative;
	top: -24px;
	z-index: 1;
	width: min(100%, 600px);
	max-height: min(90vh, 1006px);
	overflow: hidden;
	border-radius: 10px;
	background: #fff;
	opacity: 0;
	transition: top 280ms cubic-bezier(.4, 0, 1, 1), opacity 280ms ease-in;
}

.lp-builder .lp-form-modal.is-open .lp-form-modal__backdrop {
	opacity: 1;
	transition-duration: 330ms;
	transition-timing-function: ease-out;
}

.lp-builder .lp-form-modal.is-open .lp-form-modal__panel {
	top: 0;
	opacity: 1;
	transition-duration: 330ms;
	transition-timing-function: cubic-bezier(0, 0, .2, 1);
}

.lp-builder .lp-form-modal .lp-form-modal__dialog {
	flex: 0 1 auto;
	width: 100%;
	min-height: 0;
	max-height: min(90vh, 1006px);
	overflow-x: hidden;
	overflow-y: auto;
	padding: 40px 40px 30px;
	border-radius: inherit;
	background: transparent;
	color: #2f3441;
	box-shadow: none;
}

.lp-builder .lp-form-modal .lp-form-modal__close {
	position: absolute;
	z-index: 2;
	top: 10px;
	right: 10px;
	width: 32px;
	height: 32px;
	padding: 0;
	border: 0;
	background: transparent url("../../img/icons/lp-modal-close.svg") center / 32px 32px no-repeat;
	background-color: #f0f0f0;
	border-radius: 50%;
	color: transparent;
	font-size: 0;
}

.lp-builder .lp-form-modal .lp-form-modal__close:focus-visible {
	outline: 2px solid #ff4c01;
	outline-offset: 3px;
}

.lp-builder .lp-form-modal .lp-form-modal__title {
	margin: 0;
	color: #2f3441;
	font: 700 28px/normal "Open Sans", Arial, sans-serif;
	text-align: center;
}

.lp-builder .lp-form-modal__description {
	margin: 30px 0;
	color: #2f3441;
	font: 400 15px/1.3 "Open Sans", Arial, sans-serif;
	text-align: center;
}

.lp-builder .lp-form__fields {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
	align-items: start;
}

.lp-builder .lp-form__row {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	grid-column: 1 / -1;
	gap: 20px;
	min-width: 0;
}

.lp-builder .lp-form__row--2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.lp-builder .lp-form__field {
	position: relative;
	display: block;
	min-width: 0;
	height: auto;
	margin: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: #2f3441;
}

.lp-builder .lp-form__field--full {
	grid-column: 1 / -1;
}

.lp-builder .lp-form__field-label {
	position: absolute;
	z-index: 1;
	top: 25.5px;
	left: 22px;
	max-width: calc(100% - 44px);
	color: #2f3441;
	font: 400 15px/1.4 "Open Sans", Arial, sans-serif;
	transform: translateY(-50%);
	transition: top .18s ease, font-size .18s ease, transform .18s ease;
	pointer-events: none;
}

.lp-builder .lp-form__field .wpcf7-form-control-wrap {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	grid-template-rows: 51px;
	row-gap: 4px;
	width: 100%;
	min-width: 0;
	height: auto;
}

.lp-builder .lp-form__field--textarea .wpcf7-form-control-wrap {
	grid-template-rows: 110px;
}

.lp-builder .lp-form__field .wpcf7-form-control-wrap:has(.wpcf7-not-valid-tip) {
	grid-template-rows: 51px auto;
}

.lp-builder .lp-form__field--textarea .wpcf7-form-control-wrap:has(.wpcf7-not-valid-tip) {
	grid-template-rows: 110px auto;
}

.lp-builder .lp-form__field input[type="text"],
.lp-builder .lp-form__field input[type="tel"],
.lp-builder .lp-form__field input[type="email"],
.lp-builder .lp-form__field select,
.lp-builder .lp-form__field textarea {
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 17px 20px 0;
	border: 0;
	border-radius: inherit;
	outline: 0;
	background: transparent;
	box-shadow: none;
	color: #2f3441;
	font: 400 16px/1.35 "Open Sans", Arial, sans-serif;
}

.lp-builder .lp-form__field textarea {
	min-height: 110px;
	padding: 21px 22px 7px;
	resize: vertical;
}

.lp-builder .lp-form__field input[type="text"],
.lp-builder .lp-form__field input[type="tel"],
.lp-builder .lp-form__field input[type="email"],
.lp-builder .lp-form__field select,
.lp-builder .lp-form__field textarea {
	box-sizing: border-box;
	padding: 21px 22px 7px;
	border: 1px solid transparent;
	border-radius: 20px;
	background: #f0f0f0;
	font-size: 15px;
	line-height: 1.4;
}

.lp-builder .lp-form__field input::placeholder,
.lp-builder .lp-form__field select:invalid,
.lp-builder .lp-form__field textarea::placeholder {
	color: #78828e;
	opacity: 0;
	transition: opacity .18s ease;
}

.lp-builder .lp-form__field.is-floating .lp-form__field-label {
	top: 8px;
	color: #2f3441;
	font-size: 11px;
	transform: none;
}

.lp-builder .lp-form__field--textarea .lp-form__field-label {
	top: 15px;
	transform: none;
}

.lp-builder .lp-form__field.is-focused:not(:has(.wpcf7-not-valid)) input::placeholder,
.lp-builder .lp-form__field.is-focused:not(:has(.wpcf7-not-valid)) textarea::placeholder {
	opacity: 1;
}

.lp-builder .lp-form__field--phone.is-focused:not(.is-filled):not(:has(.wpcf7-not-valid)) input[type="tel"] {
	color: #78828e;
}

.lp-builder .lp-form-modal .lp-form__field input.wpcf7-not-valid,
.lp-builder .lp-form-modal .lp-form__field textarea.wpcf7-not-valid {
	border: 1px solid #c41b26;
}

.lp-builder .lp-form__field:has(.wpcf7-not-valid) .lp-form__field-label {
	color: #2f3441;
}

.lp-builder .lp-form__field:has(.wpcf7-not-valid):not(.is-filled):not(.is-focused) .lp-form__field-label {
	top: 25.5px;
	font-size: 15px;
	transform: translateY(-50%);
}

.lp-builder .lp-form-modal:not(.is-pointer-interaction) .lp-form__field input[type="text"]:focus-visible,
.lp-builder .lp-form-modal:not(.is-pointer-interaction) .lp-form__field input[type="tel"]:focus-visible,
.lp-builder .lp-form-modal:not(.is-pointer-interaction) .lp-form__field input[type="email"]:focus-visible,
.lp-builder .lp-form-modal:not(.is-pointer-interaction) .lp-form__field select:focus-visible,
.lp-builder .lp-form-modal:not(.is-pointer-interaction) .lp-form__field textarea:focus-visible {
	outline: 2px solid #2f3441;
	outline-offset: 2px;
}

.lp-builder .lp-form__field-label--error {
	color: #c41b26;
}

.lp-builder .lp-form__field .wpcf7-not-valid-tip {
	position: static;
	display: block;
	width: 100%;
	min-width: 0;
	margin: 0;
	white-space: normal;
	overflow-wrap: anywhere;
	color: #c41b26;
	font: 400 12px/1.4 "Open Sans", Arial, sans-serif;
}

.lp-builder .lp-form__upload {
	margin-top: 20px;
}

.lp-builder .lp-form__attach {
	display: flex;
	align-items: center;
	gap: 10px;
	min-height: 20px;
	padding: 0;
	border: 0;
	background: transparent;
	color: #2f3441;
	font: 400 15px/normal "Open Sans", Arial, sans-serif;
	cursor: pointer;
}

.lp-builder .lp-form__attach::before {
	display: block;
	flex: 0 0 20px;
	width: 20px;
	height: 19px;
	background: url("../../img/icons/lp-question-attachment.svg") center / contain no-repeat;
	content: "";
}

.lp-builder .lp-form__attach:hover {
	color: #d84000;
}

.lp-builder .lp-form__attach:focus-visible,
.lp-builder .lp-form__file-remove:focus-visible {
	outline: 2px solid #ff4c01;
	outline-offset: 3px;
}

.lp-builder .lp-form__attach:disabled {
	opacity: .55;
	cursor: not-allowed;
}

.lp-builder .lp-form__file-input {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.lp-builder .lp-form__file-note {
	margin: 0;
	color: #78828e;
	font: 400 12px/normal "Open Sans", Arial, sans-serif;
}

.lp-builder .lp-form__file-status {
	margin: 4px 0 0;
	color: #c41b26;
	font: 400 12px/1.4 "Open Sans", Arial, sans-serif;
}

.lp-builder .lp-form__file-list:empty,
.lp-builder .lp-form__file-status:empty {
	display: none;
}

.lp-builder .lp-form__file-list {
	display: grid;
	gap: 6px;
	margin: 9px 0 0;
	padding: 0;
	list-style: none;
}

.lp-builder .lp-form__file-item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	min-width: 0;
	color: #2f3441;
	font: 400 13px/1.35 "Open Sans", Arial, sans-serif;
}

.lp-builder .lp-form__file-name {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.lp-builder .lp-form__file-remove {
	flex: 0 0 auto;
	padding: 2px 4px;
	border: 0;
	background: transparent;
	color: #78828e;
	font: 400 19px/1 Arial, sans-serif;
	cursor: pointer;
}

.lp-builder .lp-form__consent {
	margin-top: 30px;
	color: #2f3441;
	font: 400 13px/1.4 "Open Sans", Arial, sans-serif;
}

.lp-builder .lp-form__consent .wpcf7-list-item {
	display: block;
	margin: 0;
}

.lp-builder .lp-form__consent .wpcf7-list-item label {
	display: flex;
	align-items: flex-start;
	gap: 10px;
}

.lp-builder .lp-form__consent .wpcf7-form-control-wrap {
	display: block;
	width: 100%;
}

.lp-builder .lp-form__consent input[type="checkbox"] {
	flex: 0 0 20px;
	width: 20px;
	height: 20px;
	margin: 0;
	appearance: none;
	border: 1px solid #78828e;
	border-radius: 4px;
	background: #fff;
	cursor: pointer;
}

.lp-builder .lp-form__consent input[type="checkbox"]:checked {
	border-color: #ff4c01;
	background: #ff4c01;
}

.lp-builder .lp-form__consent input[type="checkbox"]:checked::after {
	display: block;
	width: 6px;
	height: 11px;
	margin: 2px 0 0 6px;
	border: solid #fff;
	border-width: 0 2px 2px 0;
	content: "";
	transform: rotate(45deg);
}

.lp-builder .lp-form__consent input[type="checkbox"]:focus-visible {
	outline: 2px solid #ff4c01;
	outline-offset: 2px;
}

.lp-builder .lp-form__consent .wpcf7-not-valid input[type="checkbox"] {
	flex-basis: 24px;
	width: 24px;
	height: 25px;
	border: 1px solid #c41b26;
	border-radius: 5px;
	background-color: #f0f0f0;
}

.lp-builder .lp-form__consent .wpcf7-not-valid-tip {
	display: block;
	width: calc(100% - 34px);
	margin: 4px 0 0 34px;
	color: #c41b26;
	font: 400 12px/1.4 "Open Sans", Arial, sans-serif;
}

.lp-builder .lp-form__submit {
	display: block;
	width: 100%;
	min-height: 54px;
	margin-top: 30px;
	padding: 12px 24px;
	border: 0;
	border-radius: 27px;
	background: #ff4c01;
	color: #fff;
	font: 700 16px/normal "Open Sans", Arial, sans-serif;
	text-align: center;
	cursor: pointer;
	transition: background-color .18s ease, color .18s ease;
}

.lp-builder .lp-form-modal .lp-form__submit + .wpcf7-spinner {
	display: none;
}

.lp-builder .lp-form-modal .wpcf7 form.submitting .lp-form__submit + .wpcf7-spinner {
	display: inline-block;
}

.lp-builder .lp-form__submit:hover {
	background: #e64200;
}

.lp-builder .lp-form__submit:focus-visible {
	outline: 2px solid #2f3441;
	outline-offset: 3px;
}

.lp-builder .lp-form-modal .wpcf7 form .wpcf7-response-output {
	margin: 18px 0 0;
	padding: 10px 14px;
	border: 1px solid #c41b26;
	border-radius: 8px;
	color: #c41b26;
	font: 400 13px/1.4 "Open Sans", Arial, sans-serif;
}

.lp-builder .lp-form-modal .wpcf7 form.invalid .wpcf7-response-output,
.lp-builder .lp-form-modal .wpcf7 form.unaccepted .wpcf7-response-output {
	margin-top: 30px;
	padding: 12px 16px;
	border-radius: 10px;
	background: rgba(217, 54, 62, .05);
	font-size: 14px;
}

.lp-builder .lp-form-modal__success {
	padding: 38px 0 14px;
	text-align: center;
}

.lp-builder .lp-form-modal__success img {
	display: block;
	width: 70px;
	height: 70px;
	margin: 0 auto 24px;
}

.lp-builder .lp-form-modal__success p {
	margin: 0;
	color: #2f3441;
	font: 400 24px/1.35 "Open Sans", Arial, sans-serif;
}

.lp-builder .lp-form-modal.is-sent .lp-form-modal__description,
.lp-builder .lp-form-modal.is-sent .wpcf7 {
	display: none;
}

.lp-builder .lp-form-modal .lp-form-modal__success[hidden] {
	display: none;
}

@media (max-width: 600px) {
	.lp-builder .lp-form-modal {
		padding: 12px;
	}

	.lp-builder .lp-form-modal .lp-form-modal__dialog {
		max-height: 94vh;
		padding: 36px 22px 24px;
	}

	.lp-builder .lp-form-modal .lp-form-modal__panel {
		max-height: 94vh;
	}

	.lp-builder .lp-form-modal .lp-form-modal__title {
		font-size: 22px;
	}

	.lp-builder .lp-form-modal__description {
		margin: 14px 0 24px;
		font-size: 15px;
	}

	.lp-builder .lp-form__fields {
		grid-template-columns: minmax(0, 1fr);
		gap: 18px;
	}

	.lp-builder .lp-form__row--2 {
		grid-template-columns: minmax(0, 1fr);
		gap: 18px;
	}

	.lp-builder .lp-form__field--full {
		grid-column: auto;
	}

	.lp-builder .lp-form__upload {
		margin-top: 20px;
	}

	.lp-builder .lp-form__consent {
		margin-top: 20px;
	}

	.lp-builder .lp-form__submit {
		margin-top: 24px;
	}

	.lp-builder .lp-form-modal__success p {
		font-size: 20px;
	}
}

@media (max-width: 360px) {
	.lp-builder .lp-form-modal .lp-form-modal__dialog {
		padding-right: 18px;
		padding-left: 18px;
	}
}

@media (max-width: 767px) {
	.lp-builder #lp-form-modal-1542.lp-form-modal {
		width: 100vw;
		height: 100vh;
		height: 100dvh;
		min-height: 100vh;
		min-height: 100dvh;
		padding: 0;
		align-items: stretch;
		justify-content: stretch;
		overflow: hidden;
	}

	.lp-builder #lp-form-modal-1542 .lp-form-modal__panel {
		display: flex;
		flex-direction: column;
		width: 100%;
		height: 100%;
		max-height: none;
		min-height: 0;
		border-radius: 0;
	}

	.lp-builder #lp-form-modal-1542 .lp-form-modal__dialog {
		position: relative;
		z-index: 0;
		flex: 1 1 auto;
		width: 100%;
		height: 100%;
		max-height: none;
		min-height: 0;
		overflow-x: hidden;
		overflow-y: auto;
		overscroll-behavior-y: contain;
		-webkit-overflow-scrolling: touch;
		padding: calc(64px + env(safe-area-inset-top, 0px)) calc(20px + env(safe-area-inset-right, 0px)) calc(24px + env(safe-area-inset-bottom, 0px)) calc(20px + env(safe-area-inset-left, 0px));
	}

	.lp-builder #lp-form-modal-1542 .lp-form-modal__close {
		top: calc(6px + env(safe-area-inset-top, 0px));
		right: calc(6px + env(safe-area-inset-right, 0px));
		width: 44px;
		height: 44px;
		background-size: 32px 32px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.lp-builder .lp-form-modal .lp-form-modal__backdrop,
	.lp-builder .lp-form-modal .lp-form-modal__panel {
		transition-duration: 1ms;
		transition-timing-function: linear;
	}
}

