/**
 * Tsera Pest Line — Elementor Compatibility Overrides
 * Enqueued after Elementor's own CSS to fix spacing/padding conflicts.
 */

/* Remove Elementor's default body padding */
.elementor-default .site-content,
.elementor-page .site-content {
    padding: 0 !important;
    margin: 0 !important;
}

/* Full-width sections — remove side margins */
.elementor-section.elementor-section-full_width {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* Make sure Elementor inner sections respect our grid layouts */
.elementor-inner-section .elementor-container {
    max-width: 100% !important;
}

/* Reset Elementor default link color to theme red */
.elementor-widget-text-editor a {
    color: var(--r);
}

/* Elementor Form — match our theme inputs */
.elementor-form .elementor-field-group input,
.elementor-form .elementor-field-group select,
.elementor-form .elementor-field-group textarea {
    border: 1.5px solid rgba(0,0,0,0.08) !important;
    background: #f0efec !important;
    font-family: 'DM Sans', sans-serif !important;
    font-size: 0.88rem !important;
    color: #111 !important;
    padding: 0.85rem 1rem !important;
    border-radius: 0 !important;
    outline: none !important;
    transition: border-color 0.2s, background 0.2s !important;
    -webkit-appearance: none !important;
}

.elementor-form .elementor-field-group input:focus,
.elementor-form .elementor-field-group select:focus,
.elementor-form .elementor-field-group textarea:focus {
    border-color: #e62b2b !important;
    background: #fff !important;
}

.elementor-form .elementor-field-group label {
    font-size: 0.7rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;
    color: #111 !important;
    font-family: 'DM Sans', sans-serif !important;
    margin-bottom: 0.5rem !important;
}

/* Elementor Form Submit Button */
.elementor-form .elementor-button[type="submit"],
.elementor-form .e-form__buttons .elementor-button {
    background: #e62b2b !important;
    color: #fff !important;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 800 !important;
    font-size: 0.85rem !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 1.1rem 2rem !important;
    transition: background 0.2s !important;
    width: 100% !important;
}

.elementor-form .elementor-button[type="submit"]:hover,
.elementor-form .e-form__buttons .elementor-button:hover {
    background: #c42222 !important;
}

/* Elementor success / error messages */
.elementor-form .elementor-message.elementor-message-success {
    color: #2e7d32;
    font-size: 0.85rem;
}

.elementor-form .elementor-message.elementor-message-danger {
    color: #e62b2b;
    font-size: 0.85rem;
}

/* Remove extra padding Elementor adds between widget areas */
.elementor-widget:not(:last-child) {
    margin-bottom: 0;
}
