/**
 * Button styles. Variants match Figma colors/padding exactly.
 * Hover/active/disabled: PROVISIONAL brightness only (open decision).
 *
 * Elementor puts Advanced → CSS Classes on the widget wrapper, not on
 * <a class="elementor-button">. Visual chrome (bg / border / padding /
 * color) must target the inner .elementor-button only — never the
 * wrapper — or you get a “double box” (wrapper border + Accent fill).
 *
 * Direct uses (shortcode <a>, CF7 submit) keep the class on the control.
 */

/* Shared look: direct element OR Elementor inner link */
a.hbn-btn,
button.hbn-btn,
input.hbn-btn,
.elementor-widget-button.hbn-btn .elementor-button {
	align-items: center;
	background-color: transparent;
	border: 1px solid transparent;
	border-radius: var(--hbn-radius-btn);
	box-sizing: border-box;
	color: var(--hbn-color-navy);
	cursor: pointer;
	display: inline-flex;
	font-family: var(--hbn-font-body);
	font-size: 15px;
	font-weight: 600;
	gap: 8px;
	justify-content: center;
	line-height: 1.5;
	text-decoration: none;
	/* Beat Elementor size-sm / kit Accent defaults */
	width: auto;
}

.elementor-widget-button.hbn-btn .elementor-button-text {
	font: inherit;
	color: inherit;
}

a.hbn-btn:focus-visible,
button.hbn-btn:focus-visible,
input.hbn-btn:focus-visible,
.elementor-widget-button.hbn-btn .elementor-button:focus-visible {
	outline: 2px solid var(--hbn-color-teal-on-light);
	outline-offset: 2px;
}

/* PROVISIONAL hover until button states are decided */
a.hbn-btn:hover,
button.hbn-btn:hover,
input.hbn-btn:hover,
.elementor-widget-button.hbn-btn .elementor-button:hover {
	filter: brightness(0.95);
	/* TODO: final hover / active / disabled states */
}

/* Wrapper must not look like a button */
.elementor-widget-button.hbn-btn {
	background: none;
	border: 0;
	padding: 0;
	color: inherit;
	filter: none;
}

a.hbn-btn--primary,
button.hbn-btn--primary,
input.hbn-btn--primary,
.elementor-widget-button.hbn-btn--primary .elementor-button {
	background-color: var(--hbn-color-teal-on-light);
	border-color: var(--hbn-color-teal-on-light);
	color: var(--hbn-color-white);
	padding: 16px 32px;
}

a.hbn-btn--primary-dark,
button.hbn-btn--primary-dark,
input.hbn-btn--primary-dark,
.elementor-widget-button.hbn-btn--primary-dark .elementor-button {
	background-color: var(--hbn-color-teal-on-dark);
	border-color: var(--hbn-color-teal-on-dark);
	color: var(--hbn-color-navy);
	padding: 16px 24px;
}

/*
 * Outline must kill kit Theme Style fill
 * (`.elementor-kit-* .elementor-button { background-color: Accent }`)
 * and the same rule on :hover/:focus — otherwise fill = border = text.
 * !important is required: kit + page CSS both paint Accent on every button.
 */
a.hbn-btn--outline-dark,
button.hbn-btn--outline-dark,
input.hbn-btn--outline-dark,
a.hbn-btn--outline-dark:hover,
a.hbn-btn--outline-dark:focus,
button.hbn-btn--outline-dark:hover,
button.hbn-btn--outline-dark:focus,
input.hbn-btn--outline-dark:hover,
input.hbn-btn--outline-dark:focus,
.elementor-widget-button.hbn-btn--outline-dark .elementor-button,
.elementor-widget-button.hbn-btn--outline-dark .elementor-button:hover,
.elementor-widget-button.hbn-btn--outline-dark .elementor-button:focus,
.elementor-kit-4 .elementor-widget-button.hbn-btn--outline-dark .elementor-button,
.elementor-kit-4 .elementor-widget-button.hbn-btn--outline-dark .elementor-button:hover,
.elementor-kit-4 .elementor-widget-button.hbn-btn--outline-dark .elementor-button:focus {
	background: transparent !important;
	background-color: transparent !important;
	background-image: none !important;
	border-color: var(--hbn-color-teal-on-dark) !important;
	color: var(--hbn-color-teal-on-dark) !important;
	padding: 16px 24px;
}

a.hbn-btn--outline-light,
button.hbn-btn--outline-light,
input.hbn-btn--outline-light,
a.hbn-btn--outline-light:hover,
a.hbn-btn--outline-light:focus,
button.hbn-btn--outline-light:hover,
button.hbn-btn--outline-light:focus,
input.hbn-btn--outline-light:hover,
input.hbn-btn--outline-light:focus,
.elementor-widget-button.hbn-btn--outline-light .elementor-button,
.elementor-widget-button.hbn-btn--outline-light .elementor-button:hover,
.elementor-widget-button.hbn-btn--outline-light .elementor-button:focus,
.elementor-kit-4 .elementor-widget-button.hbn-btn--outline-light .elementor-button,
.elementor-kit-4 .elementor-widget-button.hbn-btn--outline-light .elementor-button:hover,
.elementor-kit-4 .elementor-widget-button.hbn-btn--outline-light .elementor-button:focus {
	background: transparent !important;
	background-color: transparent !important;
	background-image: none !important;
	border-color: var(--hbn-color-sand) !important;
	color: var(--hbn-color-sand) !important;
	gap: 12px;
	padding: 12px 24px;
}

a.hbn-btn--sm,
button.hbn-btn--sm,
input.hbn-btn--sm,
.elementor-widget-button.hbn-btn--sm .elementor-button {
	padding: 8px 16px;
}

a.hbn-btn--text,
button.hbn-btn--text,
input.hbn-btn--text,
.elementor-widget-button.hbn-btn--text .elementor-button {
	background-color: transparent;
	border-color: transparent;
	color: var(--hbn-color-navy);
	padding: 12px 0;
}
