a.btn,
a.btn:link,
a.btn:visited {
	text-decoration: none;
}

.btn {
	--btn-primary-color: var(--color-raspberry);
	--btn-secondary-color: var(--color-white);
	--btn-hover-color: var(--color-mandarin);
	--padding-addition: 0px;
	--padding-top-y: 3px;
	--padding-bottom-y: 0px;
	--padding-y: calc(7px + var(--padding-addition));
	--padding-x: calc(24px + var(--padding-addition));
	--border-size: 2px;
	box-sizing: content-box;
	display: flex;
	gap: 8px;
	color: var(--btn-secondary-color);
	background-color: var(--btn-primary-color);
	border-color: var(--btn-primary-color);
	border-style: solid;
	border-width: var(--border-size);
	font-size: 26px;
	line-height: 28px;
	padding-top: calc(var(--padding-y) + var(--padding-top-y));
	padding-bottom: calc(var(--padding-y) + var(--padding-bottom-y));
	padding-right: calc(var(--padding-x) + var(--padding-addition));
	padding-left: calc(var(--padding-x) + var(--padding-addition));
	font-family: 'Passion One';
	font-weight: 400;
	letter-spacing: -0.02em;
	text-transform: uppercase;
	border-radius: 50px;
	cursor: pointer;
	justify-content: center;
	text-align: center;
}

.btn[disabled] {
	background-color: var(--color-eggshell);
	border-color: var(--color-caramel);
	cursor: not-allowed;
	pointer-events: none;
}

.btn[disabled]::placeholder {
	color: var(--color-caramel);
}

.btn .tribeecon {
	font-size: 0.7em;
	font-weight: normal;
}

.btn-s {
	font-size: 22px;
	line-height: 24px;
}

.btn-m {
	font-size: 26px;
	line-height: 28px;
}

.btn-l {
	--padding-x: 32px;
	font-size: 30px;
	line-height: 32px;
}

.btn:hover {
	--btn-primary-color: var(--color-dark-raspberry);
	border-color: var(--color-raspberry);
	transition: background-color 0.3s ease-in-out,
		color 0.3s ease-in-out;
}

.btn-outline {
	--border-size: 1px;
	--hover-border-size: 2px;
	--padding-addition: calc(var(--hover-border-size) - var(--border-size));
	color: var(--btn-primary-color);
	background-color: transparent;
}

.btn-outline,
.btn-outline:hover {
	border-color: var(--btn-primary-color);
}

.btn-outline:hover {
	--border-size: var(--hover-border-size);
}

.btn-secondary,
.btn-secondary:hover {
	--btn-primary-color: var(--color-white);
	--btn-secondary-color: var(--color-raspberry);
}

.btn-secondary-alt,
.btn-secondary-alt:hover {
	--btn-primary-color: var(--color-raspberry);
	--btn-secondary-color: var(--color-raspberry);
	background-color: transparent;
}

.btn-tertiary,
.btn-tertiary:hover {
	text-align: center;
	color: var(--color-carbone);
}
