a {
	color: var(--red);
	text-decoration: none;
	background-clip: border-box;
}

a:focus {
	color: var(--red);
}

a:visited {
	color: var(--red);
}

a:focus {
	outline: none;
}

/* @media (hover: hover) and (pointer: fine) {} */

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a,
p a,
ul li a,
ol li a {
	font-size: inherit;
	line-height: inherit;
}

.button, button {
	display: inline-block;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	height: auto;
	white-space: nowrap;
	vertical-align: middle;
	-ms-touch-action: manipulation;
	    touch-action: manipulation;
	cursor: pointer;
	background-image: none;
	border: none;
	background-clip: border-box;
	overflow: hidden;
	padding-block: 0.7em;
	padding-inline: 2em;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	    user-select: none;
	/* border-radius: null; */
	font-size: 0.9rem;
	text-align: center;
	background-color: var(--red);
	color: white;
}

@media (hover: hover) and (pointer: fine) {

	.button, button {
		-webkit-transition: background-color 300ms ease;
		-o-transition: background-color 300ms ease;
		transition: background-color 300ms ease;
	}

	.button:hover, button:hover {
		background-color: var(--hover-red);
	}

}

.button, 
.button:active, 
.button:focus, 
.button.active,
button,
button:active,
button:focus,
button.active {
	outline: none;
}

.button:visited,
button:visited {
	color: white;
}

.button:focus,
button:focus {
	color: white;
	text-decoration: none;
}

.button:active, 
.button.active,
button:active,
button.active {
	background-image: none;
	outline: 0;
}

.button[disabled], .button fieldset[disabled],
button[disabled],
button fieldset[disabled] {
	cursor: not-allowed;
	opacity: 0.65;
	-webkit-box-shadow: none;
	        box-shadow: none;
}

fieldset[disabled] .button,
fieldset[disabled] button {
	pointer-events: none;
}