/* ==========================================================================
   TASK 1: Equal Heights (Map & Form)
   ========================================================================== */
@media (min-width: 1025px) {
    /* Target the parent container (45dea2f) holding both columns */
    .elementor-element-45dea2f {
        display: flex !important;
        align-items: stretch !important;
    }

    /* Target the two child columns (2e31516 and a2d5892) to stretch full height */
    .elementor-element-2e31516,
    .elementor-element-a2d5892 {
        display: flex !important;
        flex-direction: column !important;
        height: auto !important; /* Allow stretch */
        flex: 1 1 50% !important;
    }

    /* Force the map widget container (1039f67) to fill its column */
    .elementor-element-1039f67 {
        flex-grow: 1 !important;
        display: flex !important;
        flex-direction: column !important;
    }

    /* Force the actual map iframe/div to fill 100% height */
    .elementor-element-1039f67 .elementor-custom-embed,
    .elementor-element-1039f67 iframe,
    .elementor-element-1039f67 .elementor-widget-container {
        height: 100% !important;
        flex-grow: 1 !important;
        min-height: 100% !important;
    }
    
    /* Ensure the red form container matches visual padding */
    .elementor-element-a2d5892 {
        padding: 40px !important;
    }
}

/* ==========================================================================
   TASK 2: WPForms Button & Input Polish
   ========================================================================== */
/* Polish Inputs */
.elementor-element-901dc54 .wpforms-container .wpforms-field input,
.elementor-element-901dc54 .wpforms-container .wpforms-field textarea {
    border-radius: 4px !important;
    border: 1px solid #ccc !important;
    padding: 12px 15px !important;
    font-size: 16px !important;
}

/* Polish Submit Button */
.elementor-element-901dc54 .wpforms-container .wpforms-submit-container {
    text-align: center !important; /* Ensure no left alignment */
}

.elementor-element-901dc54 .wpforms-container .wpforms-submit-container button[type="submit"] {
    width: 100% !important;
    background-color: #8B0000 !important;
    color: #FFFFFF !important;
    border-radius: 5px !important;
    border: none !important;
    padding: 15px 30px !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    text-align: center !important;
    transition: background-color 0.3s ease !important;
    cursor: pointer !important;
    display: block !important;
    box-sizing: border-box !important;
}

.elementor-element-901dc54 .wpforms-container .wpforms-submit-container button[type="submit"]:hover {
    background-color: #000000 !important;
}


/* ==========================================================================
   TASK 3: Custom Accordion Icons
   ========================================================================== */
/* Hide default Elementor +/- icons */
.custom-bylaw-accordion .e-n-accordion-item-title-icon {
    display: none !important;
}

/* Base icon styling for FontAwesome */
.custom-bylaw-accordion .e-n-accordion-item-title-text::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #8B0000;
    margin-right: 12px;
    font-size: 1.2em;
    vertical-align: middle;
}

/* 1. Kitchener: Permit/Document */
.custom-bylaw-accordion .e-n-accordion-item:nth-child(1) .e-n-accordion-item-title-text::before {
    content: "\f56d"; 
}

/* 2. Waterloo: Ruler/Measurement (UPDATED: clearer ruler icon, not a comb) */
.custom-bylaw-accordion .e-n-accordion-item:nth-child(2) .e-n-accordion-item-title-text::before {
    content: "\f545"; /* fa-ruler-horizontal */
}

/* 3. Cambridge: Map/Location */
.custom-bylaw-accordion .e-n-accordion-item:nth-child(3) .e-n-accordion-item-title-text::before {
    content: "\f279";
}

/* 4. Guelph: Hammer/Construction */
.custom-bylaw-accordion .e-n-accordion-item:nth-child(4) .e-n-accordion-item-title-text::before {
    content: "\f6e3";
}