/**
 * SLINKOR shared button system.
 *
 * Existing component classes are mapped here so links and form controls keep
 * their original behaviour while sharing one Primary / Secondary treatment.
 */

.slinkor-button,
.slinkor-button .wp-block-button__link,
[data-header*="type-1"] #header [data-id="button"] .ct-button,
[data-header*="type-1"] #offcanvas [data-id="button"] .ct-button,
.slinkor-home-button .wp-block-button__link,
.slinkor-wholesale-button .wp-block-button__link,
.slinkor-about-button .wp-block-button__link,
.slinkor-support-cta .wp-block-button__link,
.slinkor-single-product__cta,
.slinkor-catalog-filter__apply,
.slinkor-catalog-empty a,
.slinkor-rfq-context #wpforms-form-1355 .wpforms-submit,
body.slinkor-contact-page .slinkor-contact-form button[type="submit"].wpforms-submit {
	box-sizing: border-box;
	min-height: var(--slinkor-button-height);
	padding: 0 var(--slinkor-button-padding-inline);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	color: var(--slinkor-button-color);
	background: var(--slinkor-button-background);
	border: 1px solid var(--slinkor-button-border);
	border-radius: var(--slinkor-button-radius);
	box-shadow: none;
	font-family: var(--slinkor-font-button);
	font-size: var(--slinkor-button-font-size);
	font-weight: var(--slinkor-button-font-weight);
	line-height: 1;
	letter-spacing: normal;
	text-align: center;
	text-decoration: none;
	text-transform: none;
	cursor: pointer;
	transition:
		color var(--slinkor-transition-standard),
		background-color var(--slinkor-transition-standard),
		border-color var(--slinkor-transition-standard),
		box-shadow var(--slinkor-transition-standard),
		transform var(--slinkor-transition-standard);
}

.wp-block-button.slinkor-home-button,
.wp-block-button.slinkor-wholesale-button,
.wp-block-button.slinkor-about-button {
	min-height: 0;
	padding: 0;
	background: transparent;
	border: 0;
	border-radius: 0;
}

/* Primary buttons. */
.slinkor-button--primary,
.slinkor-button--primary .wp-block-button__link,
[data-header*="type-1"] #header [data-id="button"] .ct-button,
[data-header*="type-1"] #offcanvas [data-id="button"] .ct-button,
.slinkor-home-button--primary .wp-block-button__link,
.slinkor-wholesale-button--primary .wp-block-button__link,
.slinkor-about-button .wp-block-button__link,
.slinkor-support-cta .wp-block-button__link,
.slinkor-single-product__cta--primary,
.slinkor-catalog-filter__apply,
.slinkor-catalog-empty a,
.slinkor-rfq-context #wpforms-form-1355 .wpforms-submit,
body.slinkor-contact-page .slinkor-contact-form button[type="submit"].wpforms-submit {
	--slinkor-button-color: #fff;
	--slinkor-button-background: var(--slinkor-color-brand);
	--slinkor-button-border: var(--slinkor-color-brand);
}

/* Secondary buttons. */
.slinkor-button--secondary,
.slinkor-button--secondary .wp-block-button__link,
.slinkor-home-button--secondary .wp-block-button__link,
.slinkor-home-button--dark .wp-block-button__link,
.slinkor-home-button--outline .wp-block-button__link,
.slinkor-wholesale-button--catalog .wp-block-button__link,
.slinkor-single-product__cta--secondary {
	--slinkor-button-color: var(--slinkor-color-heading);
	--slinkor-button-background: #fff;
	--slinkor-button-border: var(--slinkor-color-border);
}

/* The Home services pair uses color alone to express hierarchy. */
.slinkor-home-services .slinkor-home-button--secondary .wp-block-button__link {
	--slinkor-button-color: #fff;
	--slinkor-button-background: var(--slinkor-color-brand);
	--slinkor-button-border: var(--slinkor-color-brand);
}

.slinkor-button--primary:hover,
.slinkor-button--primary .wp-block-button__link:hover,
[data-header*="type-1"] #header [data-id="button"] .ct-button:hover,
[data-header*="type-1"] #offcanvas [data-id="button"] .ct-button:hover,
.slinkor-home-button--primary .wp-block-button__link:hover,
.slinkor-home-services .slinkor-home-button--secondary .wp-block-button__link:hover,
.slinkor-wholesale-button--primary .wp-block-button__link:hover,
.slinkor-about-button .wp-block-button__link:hover,
.slinkor-support-cta .wp-block-button__link:hover,
.slinkor-single-product__cta--primary:hover,
.slinkor-catalog-filter__apply:hover,
.slinkor-catalog-empty a:hover,
.slinkor-rfq-context #wpforms-form-1355 .wpforms-submit:hover,
body.slinkor-contact-page .slinkor-contact-form button[type="submit"].wpforms-submit:hover {
	color: #fff;
	background: var(--slinkor-color-brand-hover);
	border-color: var(--slinkor-color-brand-hover);
	box-shadow: 0 7px 18px rgba(0, 143, 199, 0.18);
	transform: translateY(-1px);
}

.slinkor-button--secondary:hover,
.slinkor-button--secondary .wp-block-button__link:hover,
.slinkor-home-button--secondary .wp-block-button__link:hover,
.slinkor-home-button--dark .wp-block-button__link:hover,
.slinkor-home-button--outline .wp-block-button__link:hover,
.slinkor-wholesale-button--catalog .wp-block-button__link:hover,
.slinkor-single-product__cta--secondary:hover {
	color: var(--slinkor-color-heading);
	background: var(--slinkor-color-surface);
	border-color: #cfd5da;
	box-shadow: none;
	transform: translateY(-1px);
}

.slinkor-home-services .slinkor-home-button--secondary .wp-block-button__link:hover {
	color: #fff;
	background: var(--slinkor-color-brand-hover);
	border-color: var(--slinkor-color-brand-hover);
	box-shadow: 0 7px 18px rgba(0, 143, 199, 0.18);
}

/* WPForms publishes high-specificity theme declarations, so only its visual
 * properties need the matching importance level. Form data stays untouched. */
.slinkor-rfq-context #wpforms-form-1355 .wpforms-submit,
body.slinkor-contact-page .slinkor-contact-form button[type="submit"].wpforms-submit {
	min-height: var(--slinkor-button-height) !important;
	padding: 0 var(--slinkor-button-padding-inline) !important;
	color: #fff !important;
	background: var(--slinkor-color-brand) !important;
	border: 1px solid var(--slinkor-color-brand) !important;
	border-radius: var(--slinkor-button-radius) !important;
	box-shadow: none !important;
	font-size: var(--slinkor-button-font-size) !important;
	font-weight: var(--slinkor-button-font-weight) !important;
	line-height: 1 !important;
	letter-spacing: normal !important;
	text-transform: none !important;
}

.slinkor-rfq-context #wpforms-form-1355 .wpforms-submit:hover,
body.slinkor-contact-page .slinkor-contact-form button[type="submit"].wpforms-submit:hover {
	color: #fff !important;
	background: var(--slinkor-color-brand-hover) !important;
	border-color: var(--slinkor-color-brand-hover) !important;
	box-shadow: 0 7px 18px rgba(0, 143, 199, 0.18) !important;
	transform: translateY(-1px);
}

@media (prefers-reduced-motion: reduce) {
	.slinkor-button,
	.slinkor-button .wp-block-button__link,
	[data-header*="type-1"] #header [data-id="button"] .ct-button,
	[data-header*="type-1"] #offcanvas [data-id="button"] .ct-button,
	.slinkor-home-button .wp-block-button__link,
	.slinkor-wholesale-button .wp-block-button__link,
	.slinkor-about-button .wp-block-button__link,
	.slinkor-support-cta .wp-block-button__link,
	.slinkor-single-product__cta,
	.slinkor-catalog-filter__apply,
	.slinkor-catalog-empty a,
	.wpforms-submit {
		transform: none !important;
	}
}
