.form {
	width: 100%;
	outline: 10px solid #d1f2ff;
	outline-offset: -10px;
}
@media screen and (min-width:768px) {
    .form {
        width: 640px;
        margin: 0 auto;
		outline: 15px solid #d1f2ff;
		outline-offset: -15px;
    }
}

.c-form {
	max-width: 600px;
	margin: 0 auto;
    padding-bottom: 30px;
}
.c-form__item {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-evenly;
	margin-bottom: 20px;
}
.c-form__label,
.c-form__input {
	padding: 10px;
}
.c-form__label {
	width: 90%;
}
.c-form__input {
	width: 90%;
	font-size: 16px;
	border: solid 1px #333;
	border-radius: 4px;
    color: #333;
}
.c-form__input:focus-visible {
	outline: orange auto 1px;
}
.c-form__required {
	color: #fff;
	background-color: red;
	border-radius: 4px;
	padding: 5px 5px;
	margin: 0 0 0 18px;
}
textarea.c-form__input {
	height: 160px;
}
.c-form__submit {
	text-align: center;
}
.c-form__submit button {
    width: 90%;
	font-size: 24px;
	font-weight: bold;
	color: #fff;
	background-color: red;
	border: solid 1px red;
	border-radius: 4px;
	padding: 10px 32px;
	transition: 0.4s;
	cursor: pointer;
}
.c-form__submit button:hover {
	color: red;
	background-color: transparent;
}

@media (min-width: 640px) {
	.c-form__item {
		flex-wrap: nowrap;
	}
	.c-form__label {
		width: 40%;
	}
	.c-form__input {
		width: 55%;
	}
}