/**
 * SkinPoint Elementor compatibility contract.
 *
 * This is not Elementor runtime CSS. It preserves the minimum historical DOM
 * contract needed while frontend Elementor assets are removed.
 */

:root {
	--e-global-color-primary: var(--sp-color-brand, #7a1837);
	--e-global-color-secondary: var(--sp-color-heading, #1a0a10);
	--e-global-color-text: var(--sp-color-text, #2b1b21);
	--e-global-color-accent: var(--sp-color-accent, #b98b5f);
	--e-global-typography-primary-font-family: var(--sp-font-heading, inherit);
	--e-global-typography-text-font-family: var(--sp-font-body, inherit);
	--container-max-width: 1140px;
	--widgets-spacing: 20px 20px;
}

.elementor *,
.elementor ::before,
.elementor ::after {
	box-sizing: border-box;
}

.elementor,
.elementor-section,
.elementor-container,
.elementor-column,
.elementor-widget,
.elementor-widget-wrap,
.elementor-widget-container {
	min-width: 0;
}

.elementor-section {
	position: relative;
}

.elementor-container {
	width: min(var(--container-max-width), calc(100% - 32px));
	margin-inline: auto;
}

.elementor-widget-container {
	width: 100%;
}

.elementor img {
	max-width: 100%;
	height: auto;
}

.elementor-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	text-decoration: none;
}

@media (max-width: 767px) {
	.elementor-container {
		width: min(100%, calc(100% - 28px));
	}
}
