/* ==========================================================================
   Elementor Default Overrides
   Bringt Elementor-Widgets auf Brand-Design
   ========================================================================== */

/* Base font */
body .elementor-widget {
    font-family: var(--font-primary);
}

/* Headings */
.elementor-widget-heading .elementor-heading-title {
    font-family: var(--font-primary);
    color: var(--color-text-dark);
}

/* Text Editor */
.elementor-widget-text-editor {
    font-family: var(--font-primary);
    color: var(--color-text-body);
}

/* Buttons */
.elementor-widget-button .elementor-button {
    font-family: var(--font-primary);
    font-weight: 600;
    border-radius: var(--radius-md);
    transition: all var(--transition);
}

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

/* Toggle / Accordion */
.elementor-widget-toggle .elementor-toggle-title {
    font-family: var(--font-primary);
    font-weight: 600;
}

.elementor-widget-toggle .elementor-tab-content {
    font-family: var(--font-primary);
    line-height: 1.7;
}

/* Icon List */
.elementor-widget-icon-list .elementor-icon-list-text {
    font-family: var(--font-primary);
}

/* Counter */
.elementor-widget-counter .elementor-counter-number-wrapper {
    font-family: var(--font-primary);
}

.elementor-widget-counter .elementor-counter-title {
    font-family: var(--font-primary);
}

/* Divider */
.elementor-widget-divider .elementor-divider-separator {
    border-color: var(--color-border);
}

/* Full-width sections */
.elementor-section.elementor-section-full_width > .elementor-container {
    max-width: 100%;
}

.elementor-section.elementor-section-boxed > .elementor-container {
    max-width: var(--container-max-width);
}

/* Fix Elementor default widget gap on mobile */
@media (max-width: 767px) {
    .elementor-widget:not(:last-child) {
        margin-bottom: 16px;
    }

    .elementor-column-gap-default > .elementor-column > .elementor-element-populated {
        padding: 10px;
    }
}

/* Smooth scrolling for anchor links */
html {
    scroll-behavior: smooth;
}
