:root {
    --error-color: #dc3545;
    --success-color: #28a745;
    --warning-color: #ffc107;
}

button, input, optgroup, select, textarea {
    margin: 0;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
}
.form-group {
	margin: 0 0 4rem;
}
.form-control {
    display: block;
    width: 100%;
    padding: 1.5rem 2.5rem;
    font-size: 1.25rem;
    font-weight: 400;
    line-height: 1.5;
    color: var(--bs-body-color);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: var(--bs-body-bg);
    background-clip: padding-box;
    border: 2px solid #C0C0C0;
	border-radius: 10px;
    transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}

.form-group input,
.form-group textarea {
	box-shadow: none;
    font-size: 14px;
	outline: none;
}
.form-group input {
	height: 48px;
}
.form-group textarea {
	height: 9rem;
}
.form-group input:focus,
.form-group textarea:focus {
    outline: none;
	border: 2px solid #000;
}
.form-group.error input {
    border-color: var(--error-color);
}
.form-group.success input {
    border-color: var(--success-color);
}
.form-group small {
    color: var(--error-color);
}

/*
.email-form input[type=text], 
.email-form input[type=email],
.email-form input[type=password], 
.email-form input[type=tel],
.email-form input[type=radio],
.email-form textarea {
    box-shadow: none;
    font-size: 14px;
	outline: none;
}
.email-form input[type=text], 
.email-form input[type=email],
.email-form input[type=password],
.email-form input[type=tel] {
    height: 48px;
}
.email-form textarea {
    height: 9rem;
}
.email-form input[type=text]:focus, 
.email-form input[type=email]:focus, 
.email-form input[type=password]:focus, 
.email-form input[type=tel]:focus,
.email-form textarea:focus {
	border: 2px solid #000;
}
small {	
	color: #C63A1C;
	font-size: 1rem;
	line-height: 1.25rem;
}
input:invalid + .error-message {
 border-color: #C63A1C;
 font-weight: bold;
}
*/

.email-form .btn {
	margin-top: -0.25rem;
}
.radio-buttons .form-group {
	width: 50%;
	float: left;
}
.email-form input[type="radio"] {
	display: none;
}
.email-form label {
	cursor: pointer;
	position: relative;	
	padding-left: 2.5rem;
}
.email-form label::before {
	content: "";
	position: absolute;
	width: 18px;
	height: 18px;
	background-color: transparent;
	border: 2px solid #696969;
	border-radius: 50%;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	transition: border-color 400ms ease;
}
.email-form label::after {
	content: "";
	position: absolute;
	width: 14px;
	height: 14px;
	background-color: #9E2064;
	border: 2px solid #9E2064;
	border-radius: 50%;
	top: 50%;
	left: 2px;
	transform: translateY(-50%) scale(0);
	transition: transform 400ms ease;
}
.email-form input[type="radio"]:checked + label::before {
	border-color: #9E2064;
}
.email-form input[type="radio"]:checked + label::after {
	transform: translateY(-50%) scale(0.55);
}
.email-form input[type="radio"] + label {
	color: #C0C0C0;
}
.email-form input[type="radio"]:checked + label {
	font-weight: 600;
	color: #000;
}
.password-field, .tel {
	position: relative;
}
#toggler {
	position: absolute;
	top: 1rem;
	right: 2.5rem;
	cursor: pointer;
	width: 25px;
	height: 18px;
}
.eye {
	background: url("../images/view-on.svg") no-repeat top left /contain;
}
.eye-slash {
	background: url("../images/view-off.svg") no-repeat top left /contain;
}
.password-field input {
	padding-right: 6rem;
}
.semi {
	font-weight: 600;
}