/* Elementor Theme Compatibility Styles */

/* Ensure Elementor containers don't conflict with theme */
.elementor-container,
.elementor-section {
    max-width: 100%;
}

/* Fix for Elementor full-width sections */
.elementor-section.elementor-section-full_width {
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
}

/* Elementor widget spacing */
.elementor-widget-container {
    width: 100%;
}

/* Make sure the main content area works well with Elementor */
.elementor-page .main-content {
    padding: 0;
    border-radius: 0;
}

/* Fix the hero section when Elementor is used */
.elementor-page .hero {
    min-height: auto;
}

/* Ensure text content is readable */
.elementor-section .elementor-column > .elementor-widget-wrap {
    width: 100%;
}

/* Typography support */
.elementor-widget-heading h1,
.elementor-widget-heading h2,
.elementor-widget-heading h3,
.elementor-widget-heading h4,
.elementor-widget-heading h5,
.elementor-widget-heading h6 {
    word-wrap: break-word;
}

/* Ensure image widgets work properly */
.elementor-widget-image img {
    max-width: 100%;
    height: auto;
    display: block;
}

/* Fix button styling */
.elementor-widget-button .elementor-button {
    display: inline-block;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.3s ease;
}

/* Ensure columns are responsive */
.elementor-column {
    margin-bottom: 20px;
}

/* Remove extra margins from Elementor on mobile */
@media (max-width: 768px) {
    .elementor-section-full_width {
        margin-left: -20px;
        margin-right: -20px;
        width: calc(100% + 40px);
    }
    
    .elementor-column {
        margin-bottom: 15px;
    }
}

/* Prevent content overflow */
.elementor-widget-container {
    overflow: visible;
}

/* Ensure proper spacing in nested elements */
.elementor-widget-container > * {
    margin-bottom: inherit;
}
