/*
Elementor-specific overrides for VitalTech theme.
Loaded only when Elementor is active.
*/

/* Allow Elementor sections to be full-width */
.elementor-section.elementor-section-stretched {
	max-width: none;
}

/* Match theme container width */
.elementor-section .container,
.elementor-section-wrap .container {
	max-width: var(--container-width);
	margin-inline: auto;
	padding-inline: 24px;
}

/* Ensure Elementor widgets inherit theme fonts */
.elementor-widget,
.elementor-widget * {
	font-family: var(--font-body);
}

/* Match heading styles */
.elementor-widget-heading h1,
.elementor-widget-heading h2,
.elementor-widget-heading h3,
.elementor-widget-heading h4 {
	font-family: var(--font-heading);
	color: var(--color-ink);
	line-height: 1.15;
}

/* Match button styles */
.elementor-widget-button .elementor-button {
	border-radius: var(--radius-md);
	font-weight: 600;
	font-size: 15px;
	padding: 14px 28px;
	transition: transform 0.15s ease, background-color 0.15s ease, color 0.15s ease;
}

.elementor-widget-button .elementor-button:hover {
	transform: translateY(-1px);
}

/* Primary button variant */
.elementor-widget-button .elementor-button.elementor-size-sm {
	background: var(--color-primary);
	color: #fff;
	border: 2px solid transparent;
}

.elementor-widget-button .elementor-button.elementor-size-sm:hover {
	background: var(--color-primary-dark);
}

/* Secondary button variant */
.elementor-widget-button .elementor-button.elementor-size-md {
	background: transparent;
	border-color: var(--color-border);
	color: var(--color-ink);
}

.elementor-widget-button .elementor-button.elementor-size-md:hover {
	border-color: var(--color-primary);
	color: var(--color-primary);
}

/* Match image styles */
.elementor-widget-image img {
	max-width: 100%;
	height: auto;
	border-radius: var(--radius-md);
}

/* Remove default Elementor spacing when inside theme sections */
.site-main .elementor-section {
	margin-bottom: 0;
}

/* Ensure proper stacking on mobile */
@media (max-width: 720px) {
	.elementor-section .elementor-column {
		width: 100%;
		flex-basis: 100%;
	}
}
