.wp-block-button__link {
	transition: all 100ms ease-in-out;
}

/* Filled button hover: inverts to outline */
.wp-block-button:not(.is-style-outline):not(.has-contrast-color) .wp-block-button__link:hover {
	background-color: transparent;
	color: #000000;
}

/* Outline button — either explicitly set or migrated with has-contrast-color */
.wp-block-button.is-style-outline .wp-block-button__link,
.wp-block-button.has-contrast-color .wp-block-button__link {
	background-color: transparent;
	color: #000000 !important;
	border: 1px solid #000000;
}

.wp-block-button.is-style-outline .wp-block-button__link:hover,
.wp-block-button.has-contrast-color .wp-block-button__link:hover {
	background-color: rgba(0, 0, 0, 0.05);
}

/* Outline buttons on a dark cover, or any dark/colored full-bleed section
   marked .sfbbo-section-dark, invert to white. */
.wp-block-cover .wp-block-button.is-style-outline .wp-block-button__link,
.wp-block-cover .wp-block-button.has-contrast-color .wp-block-button__link,
.sfbbo-section-dark .wp-block-button.is-style-outline .wp-block-button__link,
.sfbbo-section-dark .wp-block-button.has-contrast-color .wp-block-button__link {
	color: #ffffff !important;
	border-color: #ffffff;
}

.wp-block-cover .wp-block-button.is-style-outline .wp-block-button__link:hover,
.wp-block-cover .wp-block-button.has-contrast-color .wp-block-button__link:hover,
.sfbbo-section-dark .wp-block-button.is-style-outline .wp-block-button__link:hover,
.sfbbo-section-dark .wp-block-button.has-contrast-color .wp-block-button__link:hover {
	background-color: rgba(255, 255, 255, 0.15);
}
