/**
 * Elementor overrides — loaded only when Elementor is active.
 * Ensures Elementor-edited pages look cohesive with the theme.
 */

/* Override Elementor container max-width to match theme */
.elementor-section.elementor-section-boxed > .elementor-container {
    max-width: 1200px;
}

/* Match theme font variables */
.elementor-widget-container {
    font-family: var(--font-body);
    color: var(--color-text);
}

.elementor-widget-heading .elementor-heading-title {
    font-family: var(--font-display);
    color: var(--color-dark);
}

/* Prevent white gap between header and Elementor hero sections */
.elementor-page .site-main > .elementor {
    margin-top: 0;
}

/* Ensure theme header/footer render above Elementor z-index */
.site-header { z-index: 9999 !important; }

/* Remove Elementor default padding resets that break theme layout */
.elementor-page .content-layout__main {
    min-width: 0;
}

/* Elementor buttons inherit theme styling when using primary color */
.elementor-button.elementor-size-md {
    border-radius: var(--radius-full);
    font-family: var(--font-ui);
    font-weight: var(--font-weight-semibold);
    letter-spacing: 0;
}

/* Elementor forms match theme inputs */
.elementor-field-group .elementor-field {
    border-color: var(--color-border);
    border-radius: var(--radius-lg);
    font-family: var(--font-body);
    color: var(--color-text);
}

.elementor-field-group .elementor-field:focus {
    border-color: var(--color-primary);
    box-shadow: var(--shadow-focus);
    outline: none;
}

/* No conflicting margin resets */
.elementor-widget:not(:last-child) {
    margin-bottom: 0;
}
