label.radio-align,
input[type="radio"] + label {
	vertical-align: middle;
}
input[type="checkbox"] {
	width: 1.4em;
	height: 1.4em;
}

/* Big primary button */
.btn-form,
.btn-primary {
	cursor: pointer;
	border: 2px solid;
	font-size: 1em;
	text-align: center;
	font-weight: 700;
	text-transform: uppercase;
	text-decoration: none;
	color: inherit;
	background-color: inherit;
}
@media (prefers-color-scheme: dark) {
	.btn-form {
		background-color: #000;
		border-color: transparent;
	}
}
.btn-form {
	border-radius: 1em;
	padding-left: 0.75em;
	padding-right: 0.75em;
	box-shadow: 0 4px 3px -3px #000;
}
.btn-primary {
	display: block;
	border-radius: 1.5em;
	margin: 0;
	padding: 0.5em 1em 0.4em;
	box-shadow: 0 8px 6px -6px #000;
}

.btn-form:hover,
.btn-form:focus,
.btn-primary:hover {
	border-color: transparent;
	background-color: #222;
	color: #fff;
}
@media (prefers-color-scheme: dark) {
	.btn-form:focus,
	.btn-form:hover {
		background-color: #fff;
		color: #222;
	}
}
.btn-primary:hover {
	border-color: rgba(255, 255, 255, 0.3);
}
.btn-primary span {
	text-transform: none;
}
.btn-c {
	margin-left: auto;
	margin-right: auto;
}
@media (min-width: 20em) {
	.btn-primary {
		font-size: 6vw;
	}
	.btn-primary-sm,
	.btn-primary-standard {
		font-size: 1.4em;
	}
}
@media (min-width: 28.125em) {
	/* 450px */
	.btn-primary-sm {
		font-size: 5.6vw;
	}
	.btn-primary-standard {
		font-size: 4vw;
	}
}
@media (min-width: 53.125em) {
	/* 850px */
	.btn-primary-sm {
		font-size: 2.666666666667em; /* 48px /18 */
	}
	.btn-primary-standard {
		font-size: 1.666666666667em; /* 30px /18 */
	}
}
@media (min-width: 87.5em) {
	/* 1400px */
	.btn-primary {
		font-size: 5.25em; /* 84px /16 */
	}
}
.btn-primary-nogrow {
	font-size: 1.4em;
}
