/**
 * Elementor Custom Styles
 * Estilos adicionais para compatibilidade com Elementor
 */

/* Reset Elementor defaults for this theme */
.elementor-section.elementor-section-boxed > .elementor-container {
    max-width: 1200px;
}

/* Elementor Button Styles */
.elementor-button.elementor-size-md {
    padding: 0.875rem 2rem;
    font-family: var(--font-body);
    font-weight: 600;
    border-radius: var(--radius);
}

.elementor-button.elementor-size-lg {
    padding: 1rem 2.5rem;
    font-size: 1.125rem;
}

/* Elementor Heading Styles */
.elementor-heading-title {
    font-family: var(--font-display);
}

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

/* Elementor Image */
.elementor-image img {
    border-radius: var(--radius);
}

/* Elementor Icon */
.elementor-icon {
    color: var(--color-accent);
}

/* Elementor Form Styles */
.elementor-form .elementor-field-group .elementor-field {
    padding: 0.75rem 1rem;
    font-family: var(--font-body);
    border: 1px solid var(--color-border);
    border-radius: var(--radius);
}

.elementor-form .elementor-field-group .elementor-field:focus {
    border-color: var(--color-accent);
    box-shadow: 0 0 0 3px rgba(43, 97, 173, 0.1);
}

.elementor-form .elementor-button {
    background: var(--gradient-accent) !important;
    font-family: var(--font-body);
    font-weight: 600;
}

/* Elementor Testimonial */
.elementor-testimonial-wrapper {
    background-color: var(--color-card);
    border-radius: var(--radius-xl);
    padding: 2rem;
    box-shadow: var(--shadow-card);
}

/* Elementor Accordion */
.elementor-accordion .elementor-accordion-item {
    background-color: var(--color-card);
    border-radius: var(--radius-xl);
    margin-bottom: 1rem;
    box-shadow: var(--shadow-card);
    border: none !important;
}

.elementor-accordion .elementor-tab-title {
    font-family: var(--font-body);
    font-weight: 600;
    padding: 1.5rem !important;
}

.elementor-accordion .elementor-tab-content {
    padding: 0 1.5rem 1.5rem !important;
    color: var(--color-foreground-muted);
}

/* Elementor Tabs */
.elementor-tabs .elementor-tab-title {
    font-family: var(--font-body);
    font-weight: 600;
}

/* Elementor Counter */
.elementor-counter-number-wrapper {
    font-family: var(--font-display);
    color: var(--color-accent);
}

/* Elementor Progress Bar */
.elementor-progress-bar {
    background: var(--gradient-accent);
}

/* Elementor Pricing Table */
.elementor-price-table {
    background-color: var(--color-card);
    border-radius: var(--radius-xl);
    box-shadow: var(--shadow-card);
}

.elementor-price-table:hover {
    box-shadow: var(--shadow-card-hover);
}

/* Custom Elementor Widgets Styling */
.elementor-widget-icon-box .elementor-icon {
    background: var(--gradient-accent);
    border-radius: var(--radius-xl);
}

.elementor-widget-image-box .elementor-image-box-img img {
    border-radius: var(--radius-lg);
}

/* Responsive adjustments for Elementor */
@media (max-width: 767px) {
    .elementor-section.elementor-section-boxed > .elementor-container {
        padding: 0 1rem;
    }
}
