.block__button {
	--button-wrapper-background: #fff;
	--button-background: #f7941d;
	--button-text: #fff;
	box-sizing: border-box;
	display: flex;
	width: 100%;
	margin: 0;
	background: var(--button-wrapper-background);
}

.block__button.align-left {
	justify-content: flex-start;
}

.block__button.align-center {
	justify-content: center;
}

.block__button.align-right {
	justify-content: flex-end;
}

.block__button.pt-no {
	padding-top: 0;
}

.block__button.pt-sm {
	padding-top: 10px;
}

.block__button.pt-md {
	padding-top: 20px;
}

.block__button.pt-lg {
	padding-top: 40px;
}

.block__button.pt-xl {
	padding-top: 50px;
}

.block__button.pb-no {
	padding-bottom: 0;
}

.block__button.pb-sm {
	padding-bottom: 10px;
}

.block__button.pb-md {
	padding-bottom: 20px;
}

.block__button.pb-lg {
	padding-bottom: 40px;
}

.block__button.pb-xl {
	padding-bottom: 50px;
}

.block__button .button__link {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: fit-content;
	border: 0;
	border-radius: 0;
	background: var(--button-background);
	color: var(--button-text);
	font-family: 'Lato', sans-serif;
	font-weight: 700;
	letter-spacing: 1px;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	transition: transform .25s ease-out;
}

.block__button .button__link:hover,
.block__button .button__link:focus-visible {
	color: var(--button-text);
	transform: translateY(-2px);
}

.block__button.size-sm .button__link {
	padding: 5px 10px;
	font-size: .8rem;
}

.block__button.size-md .button__link {
	padding: 10px 20px;
	font-size: 1rem;
}

.block__button.size-lg .button__link {
	padding: 15px 30px;
	font-size: 1.2rem;
}

.block__button.size-xl .button__link {
	padding: 25px 50px;
	font-size: 2rem;
}

.block__button.color-white {
	--button-background: #fff;
	--button-text: #000;
}

.block__button.color-cloud {
	--button-background: #f2f2f2;
	--button-text: #000;
}

.block__button.color-grey {
	--button-background: #ccc;
	--button-text: #000;
}

.block__button.color-blue {
	--button-background: #1991e0;
	--button-text: #fff;
}

.block__button.color-orange {
	--button-background: #ff8a00;
	--button-text: #000;
}

.block__button.color-yellow {
	--button-background: #ffa500;
	--button-text: #000;
}

.block__button.color-charcoal {
	--button-background: #2e2a2b;
	--button-text: #fff;
}

.block__button.color-black {
	--button-background: #000;
	--button-text: #fff;
}

.block__button.is-preview {
	min-height: 48px;
	outline: 1px dashed #aaa;
	outline-offset: -1px;
}

.block__button.is-preview .button__link {
	pointer-events: none;
}

@media (max-width: 767px) {
	.block__button.size-sm .button__link {
		font-size: .7rem;
	}

	.block__button.size-md .button__link {
		font-size: .85rem;
	}

	.block__button.size-lg .button__link {
		font-size: 1rem;
	}

	.block__button.size-xl .button__link {
		font-size: 1.5rem;
	}
}

@media (min-width: 768px) {
	.block__button.pt-sm {
		padding-top: 20px;
	}

	.block__button.pt-md {
		padding-top: 40px;
	}

	.block__button.pt-lg {
		padding-top: 80px;
	}

	.block__button.pt-xl {
		padding-top: 100px;
	}

	.block__button.pb-sm {
		padding-bottom: 20px;
	}

	.block__button.pb-md {
		padding-bottom: 40px;
	}

	.block__button.pb-lg {
		padding-bottom: 80px;
	}

	.block__button.pb-xl {
		padding-bottom: 100px;
	}
}
