.custom-checkbox {
	position: relative;
	margin-top: 15px;
}
.custom-checkbox__input {
	position: absolute;
	opacity: 0;
	width: 20px;
	height: 20px;
	z-index: 1;
	cursor: pointer;
}
.custom-checkbox__label {
	display: flex;
	align-items: flex-start;
	cursor: pointer;
	font-size: 13px;
	line-height: 18px;
	color: #131619;
	margin-left: 30px;
}
.custom-checkbox__icon {
	position: absolute;
	left: 0;
	top: 0;
	width: 20px;
	height: 20px;
	border: 2px solid #e6ebf1;
	border-radius: 4px;
	background: white;
	transition: all 0.2s ease;
	display: block;
}
.custom-checkbox__input:checked ~ .custom-checkbox__label .custom-checkbox__icon {
	background-color: #B81F20;
	border-color: #B81F20;
}
.custom-checkbox__input:checked ~ .custom-checkbox__label .custom-checkbox__icon::after {
	content: "";
	position: absolute;
	left: 6px;
	top: 2px;
	width: 5px;
	height: 10px;
	border: solid white;
	border-width: 0 2px 2px 0;
	transform: rotate(45deg);
}
.custom-checkbox__label .accent {
	color: #dd1e31;
	margin-left: 4px;
}
#agreement-error {
	color: #DD1E31;
	font-size: 12px;
	display: block;
	margin-top: 4px;
	padding-left: 30px;
}
.custom-checkbox__privacy-policy {
	border-bottom: 1px solid #131619;
	display: inline-flex;
	text-decoration: none;
	color: #131619;
	transition: all 0.3s linear;
}
.custom-checkbox__privacy-policy:hover {
	color: #B81F20;
	border-bottom: 1px solid #B81F20;
}
.section_bg {
	background-color: #e6ebf1;
}
.section_feedback {
	scroll-margin: 30px;
	padding: 54px 28px;
}
.section_feedback-rent-page {
	margin: 48px 0 0;
	border-radius: 16px;
	overflow: hidden;
}
.section__inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.section_feedback .section__col_form {
	max-width: 446px;
	-webkit-box-flex: 1;
	-ms-flex-positive: 1;
	flex-grow: 1;
}
.section_feedback .section__col_img {
	width: calc(100% - 590px);
	margin-bottom: -54px;
	margin-right: -28px;
	display: flex;
	align-items: flex-end;
}
.section_feedback .section__col_img img {
	width: 100%;
	object-fit: cover;
}
.field {
	width: 100%;
	position: relative;
}
.field__input {
	width: 100%;
	padding: 15px;
	font-family: 'Inter-Medium';
	font-size: 17px;
	line-height: 24px;
	border-radius: 12px;
	border: 1px solid #e6ebf1;
	transition: all 0.3s ease;
}
.field__input:focus {
	outline: none;
	border-color: #B81F20;
}
.field__input_area {
	height: 167px;
	resize: none;
}

/* ОСНОВНЫЕ СТИЛИ ДЛЯ ПЛЕЙСХОЛДЕРА */
.field__placeholder {
	position: absolute;
	top: 16px;
	left: 16px;
	font-family: 'Inter-Medium', sans-serif;
	font-size: 17px;
	line-height: 24px;
	color: #6c757d;
	pointer-events: none;
	transition: all 0.2s ease;
	padding: 0 4px;
	z-index: 1;
	opacity: 1;
}
.field__placeholder .accent {
	color: #B81F20;
}

/* ПЛЕЙСХОЛДЕР ПОДНИМАЕТСЯ ВВЕРХ ПРИ ФОКУСЕ ИЛИ КОГДА ЕСТЬ ТЕКСТ */
.field.focused .field__placeholder,
.field__input:focus + .field__placeholder,
.field__input:not(:placeholder-shown) + .field__placeholder {
	top: -10px;
	font-size: 14px;
	color: #B81F20;
	background: white;
	opacity: 0;
	z-index: 2;
	padding: 0 8px;
}

/* ПЛЕЙСХОЛДЕР СКРЫВАЕТСЯ ТОЛЬКО КОГДА ПОЛЕ В ФОКУСЕ И ПУСТОЕ */
.field__input:focus + .field__placeholder {
	opacity: 0;
}

/* НО ЕСЛИ В ПОЛЕ УЖЕ ЕСТЬ ТЕКСТ - ПОКАЗЫВАЕМ ПОДНЯТЫЙ ПЛЕЙСХОЛДЕР */
.field__input:focus:not(:placeholder-shown) + .field__placeholder {
	opacity: 1;
}

.field__error {
	display: none;
	color: #dd1e31;
	font-size: 0.7rem;
	margin-top: 2px;
	padding-left: 8px;
}
.field_error .field__error {
	display: block;
}
.field_error .field__input {
	border-color: #dd1e31;
}
.form__row {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-bottom: 16px;
	gap: 16px;
}
.form__row:last-child {
	margin-bottom: 0;
}
.form__row .form__item {
	width: 49%;
}
.form__fields {
	margin-bottom: 24px;
	display: flex;
	flex-direction: column;
	gap: 16px;
}
.form__item {
	width: 100%;
}
.section__form span.error {
	color: #DD1E31;
	font-size: 12px;
	display: block;
	margin-top: 4px;
	padding-left: 8px;
}
.section__col_form.sent .feedback-modal__sent-text {
	text-align: left;
	font-size: 18px;
	color: #1a1a1a;
	line-height: 1.5;
}
.section__col_form.sent  .feedback-modal__sent .feedback-modal__sent-text:before {
	margin: 0 0 32px;
	content: "✓";
	display: block;
	font-size: 48px;
	color: #dd1e31;
	font-weight: bold;
}
.form__button {
	width: 100%;
}
.form__button:hover:not(:disabled) {
	background-color: #dd1e31;
	cursor: pointer;
}
.form__button:disabled {
	background-color: #ccc;
	cursor: not-allowed;
	transform: none;
	box-shadow: none;
	border: transparent;
}

/* Стили для полей ввода */
.field input {
	width: 100%;
	padding: 15px;
	font-family: 'Inter-Medium', sans-serif;
	font-size: 17px;
	line-height: 24px;
	border-radius: 12px;
	border: 1px solid #e6ebf1;
	transition: all 0.3s ease;
}
.field textarea {
	width: 100%;
	padding: 15px;
	font-family: 'Inter-Medium', sans-serif;
	font-size: 17px;
	line-height: 24px;
	border-radius: 12px;
	border: 1px solid #e6ebf1;
	transition: all 0.3s ease;
}

@media screen and (max-width: 540px) {
	.section_rent-page {
		margin: 30px 0 0;
	}
	.section_feedback-rent-page {
		margin: 30px 0 0;
	}

	.section_feedback {
		padding: 30px 16px;
	}

	.custom-checkbox__label {
		font-size: 10px;
	}
}
