button {
    font-family: inherit;
    font-weight: 300;
}

.btn,
.btn:visited {
    background: none;
    border: 1px solid;
    border-radius: 5px;
    cursor: pointer;
    display: inline-block;
    font-size: 14px;
    line-height: 1.2;
    padding: 1.1em 1.3em;
    text-decoration: none;
    transition: .3s opacity;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font-family: inherit;
}

.btn--block,
.btn--block:visited {
    display: block;
    width: 100%;
}

.btn--info,
.btn--info:visited {
    background-color: #fff;
    border: 2px solid #ccc;
    color: #676767; 
}

.btn--primary,
.btn--primary:visited {
    background-color: #27B573;
    border: 1px solid #27B573;
    color: #fff;
    font-weight: 600;
}

.btn--secondary,
.btn--secondary:visited {
    background-color: #0A73BA;
    border: 1px solid #0A73BA;
    color: #fff;
    font-weight: 600;
}

.btn--cover-info,
.btn--cover-info:visited {
    background-color: rgba(1, 18, 39, .5);
    border: 1px solid rgba(1, 18, 39, .5);
    color: #fff;
    opacity: 0.9;
}

.btn--hero,
.btn--hero:visited {
	text-transform: uppercase;
	font-size: 14px;
	display: block;
	margin-top: 15px;
	font-weight: 600;
}

.btn--cta,
.btn--cta:visited {
	text-transform: uppercase;
	padding-left: 2em;
	padding-right: 2em;
}

.btn:hover,
.btn:active,
.btn:focus {
	color: #fff;
}

.btn--info:hover,
.btn--info:active,
.btn--info:focus {
	color: #0A73BA;
}


.btn--cover-info:hover {
	opacity: 1;
}

.btn--secondary:hover {
	opacity: 0.8;
}


.btn .fas {
	font-size: 0.8em;
	position: relative;
	top: -0.05em;
	margin-left: 0.3em;
}

@media (min-width: 768px) {
	.btn,
	.btn:visited {
		font-size: 16px;
	}
	
	.btn--hero,
	.btn--hero:visited {
		display: inline-block;
		width: 200px;
		font-size: 16px;
		margin: 0 12px;
	}	
}

@media (min-width: 1900px) {
	.btn--hero,
	.btn--hero:visited {
		width: 230px;
		font-size: 20px;
		margin: 20px 15px;
	}
}
