button {
	appearance: none;
	outline: 0;
	border: none;
	background-color: transparent;
	cursor: pointer;
}

.button {
	margin-right: 0.125rem;
	margin-bottom: 0.5rem;
	margin-left: 0.125rem;
	padding: 0.5em 1em;
	display: inline-block;
	font: var(--body-small-bold);
	color: var(--aktiv);
	letter-spacing: 0.1em;
	text-align: center;
	text-transform: uppercase;
	text-decoration: none;
	outline: 0;
	border: none;
	border-radius: 3em;
	background-color: transparent;
	appearance: none;
	cursor: pointer;
}

@media(min-width: 23em) {
	.button {
		padding: 0.5em 1.5em;
	}
}

@media(min-width: 37.5em) {
	.button {
		padding: 0.5em 2em;
	}
}

a[class*="button"]:hover,
a[class*="button"]:focus {
	outline: 0;
}

.button--small {
	padding: 0.5em 1.5em;
	font: var(--body-tiny-bold);
}

.button-primary {
	color: var(--weiss);
	background-color: var(--aktiv);
}

.button-secondary {
	color: var(--aktiv);
	background-color: var(--weiss);
}

.button-spenden {
	color: var(--weiss);
	background-color: var(--spenden);
}

.button-spenden--inverted {
	color: var(--spenden);
	background-color: var(--weiss);
}

.button-icon--right {
	padding-right: 3rem;
}

.button-spenden .button-icon--right {
	padding-right: 2rem;
}

.button-icon--left {
	padding-left: 2rem;
}

.button--small .button-icon--right {
	padding-right: 1.75rem;
}

.button--small .button-icon--left {
	padding-left: 1.75rem;
}

.button-icon-arrow-right {
	background-repeat: no-repeat;
	background-size: 17px;
	background-position: calc(100% - 1.25rem);
	overflow: hidden;
}

.button-primary .button-icon-arrow-right {
	background-image: url(/assets/images/icon-arrow-short--light.svg);
}

.button-primary:hover .button-icon-arrow-right {
	background-image: url(/assets/images/icon-arrow-long--light.svg);
	background-size: 37px;
	background-position: right;
}

.button-secondary .button-icon-arrow-right {
	background-image: url(/assets/images/icon-arrow-short--dark.svg);
}

.button-secondary:hover .button-icon-arrow-right {
	background-image: url(/assets/images/icon-arrow-long--dark.svg);
	background-size: 37px;
	background-position: right;
}

/* Spenden */

.button-spenden .button-icon--right.button-icon-heart {
	background-image: url(/assets/images/icon-heart--white.svg);
	background-size: 20px;
	background-position: right;
	background-repeat: no-repeat;
}

.button-spenden--inverted:hover {
	color: var(--spenden);
	background-color: var(--weiss);
}

.button-spenden:hover .button-icon--right.button-icon-heart {
	background-image: url(/assets/images/icon-heart-fill.svg);
	background-size: 20px;
	background-position: right;
}

.button-spenden--inverted .button-icon--right.button-icon-heart {
	background-image: url(/assets/images/icon-heart--green.svg);
	background-size: 20px;
	background-position: right;
	background-repeat: no-repeat;
}

.button-spenden--inverted:hover .button-icon--right.button-icon-heart {
	background-image: url(/assets/images/icon-heart-fill--green.svg);
	background-size: 20px;
	background-position: right;
}

.button-spenden .button-icon--left.button-icon-heart {
	background-image: url(/assets/images/icon-heart--white.svg);
	background-size: 20px;
	background-position: left;
	background-repeat: no-repeat;
}

.button-spenden:hover .button-icon--left.button-icon-heart {
	background-image: url(/assets/images/icon-heart-fill.svg);
}

.button-spenden--inverted .button-icon--left.button-icon-heart {
	background-image: url(/assets/images/icon-heart--green.svg);
	background-size: 20px;
	background-position: left;
	background-repeat: no-repeat;
}

.button-spenden--inverted:hover .button-icon--left.button-icon-heart {
	background-image: url(/assets/images/icon-heart-fill--green.svg);
}

/* Download */

.button-primary.button--small .button-icon--right.button-icon-download {
	background-image: url(/assets/images/icon-download--white.svg);
	background-size: 18px;
	background-position: right;
	background-repeat: no-repeat;
}
