form[id^="form-"] {
	width: 100%;
	max-width: 1354px;
	padding: 45px 25px;
	margin: 0 auto 50px auto;
	background: var(--primary-blue);
	border-radius: 4px;

	label {
		color: white;
	}

	.ktc-radio.ktc-radio-list:has(.ktc-radio) {
		display: flex;
		gap: 30px;
		flex-direction: column;
	}

	.ktc-checkbox {
		display: flex;
		gap: 15px;
	}
}

label {
	vertical-align: middle;
	font-weight: 600;
	font-size: 1.125rem;
	color: #212529;
	display: inline-block;
	font-family: "DM Sans", sans-serif !important;
	margin-bottom: 5px;
}

.form-field {
	margin-bottom: 20px;
}

input[type="text"],
input[type="tel"],
input[type="number"],
input[type="email"],
input[type="file"],
input[type="password"],
select {
	color: #212529;
	padding: 15px;
	font-size: 1rem;
	border: 2px solid #212529;
	border-radius: 4px;
	vertical-align: middle;
	height: 50px;
	max-width: 100%;
	font-family: "DM Sans", sans-serif !important;
	transition: all 0.2s ease-in-out;
}

input[type="text"]:hover,
input[type="tel"]:hover,
input[type="number"]:hover,
input[type="email"]:hover,
input[type="file"]:hover,
input[type="password"]:hover,
select:hover,
input[type="text"]:focus,
input[type="tel"]:focus,
input[type="number"]:focus,
input[type="email"]:focus,
input[type="file"]:focus,
input[type="password"]:focus,
select:focus {
	border-color: var(--primary-blue);
	box-shadow: 0 0 0 0.15rem rgba(0, 105, 224, 0.15);
}

input[type="checkbox"],
input[type="radio"] {
	height: 35px;
	width: 35px;
	transition: all 0.2s ease-in-out;
	border: 2px solid #212529;
	appearance: auto;
	cursor: pointer;
	flex-shrink: 0;
}

input[type="radio"] {
	border-radius: 50%;
}
input[type="checkbox"] {
	accent-color: #fff;
	position: relative;
	appearance: none;
}
input[type="checkbox"]:checked::before {
	content: "\2713";  
	color: var(--primary-blue);  
    font-size: 25px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

input[type="checkbox"]:hover,
input[type="checkbox"]:focus,
input[type="radio"]:hover,
input[type="radio"]:focus {
	border: 2px solid var(--primary-blue);
	box-shadow: none;
}

.ktc-radio {
	display: flex;
	gap: 15px;
}

input[type="submit"] {
	display: flex !important;
	width: fit-content !important;
	align-items: center;
	justify-content: center;
	padding: 10px 14px !important;
	font-family: "DM Sans", sans-serif;
	text-decoration: none;
	text-align: center;
	background: white !important;
	color: black !important;
	cursor: pointer;
	transition: 0.3s all ease-in-out;
	border-radius: 0;
	font-weight: 500;
	font-size: 1.125rem;
	line-height: normal;
	border: none;
	margin-left: auto !important;
}

input[type="submit"]:hover,
input[type="submit"]:focus {
	color: white !important;
	background: #00113f !important;
}

@media (min-width: 48em) {
	form[id^="form-"] {
		.ktc-radio.ktc-radio-list:has(.ktc-radio) {
			flex-direction: row;
			gap: 50px;
		}
	}

	.ktc-radio {
		align-items: center;
	}
}
