/* ════════════════════════════════════════════════════════════
   FCM Mega Menu — replacement for Max Mega Menu
   Scoped to .fcm-mm (BEM)
   ════════════════════════════════════════════════════════════ */

.fcm-mm,
.fcm-mm * {
    box-sizing: border-box;
    font-family: 'Poppins', sans-serif;
}

.fcm-mm {
    position: relative;
    width: 100%;
    margin: 0 auto;
}

/* Hide mobile-only chrome on desktop */
.fcm-mm__toggle,
.fcm-mm__back,
.fcm-mm__close,
.fcm-mm__back-row,
.fcm-mm__arrow {
    display: none;
}

/* Desktop: link-row and heading-row just act as transparent wrappers */
.fcm-mm__link-row,
.fcm-mm__heading-row {
    display: contents;
}

/* ══ TOP BAR (DESKTOP) ═══════════════════════════════════════ */
.fcm-mm__bar {
    list-style: none;
    margin: 0;
    padding: 0;
    padding-bottom: 10px!important;
    padding-left: 0!important;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 5px 0;
}

.fcm-mm__item {
    position: static;
    list-style: none;
    margin: 0;
    padding: 0;
    border-right: 1px solid rgba(0, 0, 0, 0.2);
}

.fcm-mm__item:last-child { border-right: none; }

a.fcm-mm__link {
    display: block;
    padding: 6px 12px;
    font-size: 14px; 
    font-weight: 500;
    color: rgba(26, 39, 68, 0.5)!important;
    text-decoration: none;
    line-height: 1.48;
    background: none;
    border: none;
    white-space: nowrap;
    transition: color 0.15s ease, background-color 0.15s ease;
    cursor: pointer;
    @media(min-width: 980px) {
        padding: 8px 7px;
        font-size: 11px;
    }
    @media(min-width: 1240px) {
        padding: 8px 14px;
        font-size: 12px;
    }
    @media(min-width: 1320px) {
        padding: 8px 12px;
        font-size: 13px;
    }
    @media(min-width: 1520px) {
        padding: 6px 16px!important;
        font-size: 13px;
    }
} 

.fcm-mm__link:hover,
.fcm-mm__item.is-open > .fcm-mm__link,
.fcm-mm__item--active > .fcm-mm__link {
    color: #65ad1f !important;
}

.fcm-mm__item--highlight .fcm-mm__link {
    color: rgba(26, 39, 68, 0.7) !important;
    background: #b0d77c;
}


.fcm-mm__item--highlight > .fcm-mm__link:hover {
    background: #65ad1f;
    color: #fff !important;
} 

/* ══ DESKTOP DROPDOWN ════════════════════════════════════════ */
.fcm-mm__dropdown {
    display: none;
    position: absolute;
    left: 0;
    right: 0;
    top: calc(100% + 6px);
    z-index: 99999;
    background: #fff;
    border-top: 1px solid rgba(26, 39, 68, 0.2);
    border-left: 1px solid rgba(26, 39, 68, 0.2);
    border-right: 1px solid rgba(26, 39, 68, 0.2);
    border-bottom: 1px solid rgba(26, 39, 68, 0.2);
    padding: 25px 20px;
        @media(min-width: 1420px) {
            padding: 25px 35px;
    }
}

/* Invisible hover bridge — lets the cursor travel from the parent link
   down to the dropdown without the hover state dropping */
.fcm-mm__dropdown::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: -14px;
    height: 14px;
    background: transparent;
    pointer-events: auto;
}

.fcm-mm__item.is-open > .fcm-mm__dropdown {
    display: block;
}

/* Desktop: hover opens dropdown (CSS = instant open, JS adds delayed close) */
@media (min-width: 981px) {
    .fcm-mm__item.has-submenu:hover > .fcm-mm__dropdown,
    .fcm-mm__item.is-hover-open > .fcm-mm__dropdown {
        display: block;
    }
    .fcm-mm__item.has-submenu:hover > .fcm-mm__link,
    .fcm-mm__item.is-hover-open > .fcm-mm__link {
        color: #65ad1f !important;
    }
}

/* ══ COLUMNS GRID (DESKTOP) ═════════════════════════════════ */
.fcm-mm__cols {
    display: grid;
    grid-template-columns: repeat(var(--fcm-cols, 5), minmax(0, 1fr));
    gap: 16px 14px;
    margin: 0;
    padding: 0;
    list-style: none;
    text-align: left;
}

.fcm-mm__group {
    list-style: none;
    margin: 0;
    padding: 0;
    min-width: 0;
}

.fcm-mm__heading {
    display: block;
    font-size: 14px;
    font-weight: 600;
    color: #1a2744 !important;
    line-height: 1.4;
    margin: 0 0 8px 0!important; 
    padding: 0;
    text-decoration: none;
    background: none;
    cursor: pointer;
    transition: color 0.15s ease;
}

.fcm-mm__heading:hover { color: #65ad1f !important; }

.fcm-mm__sublist {
    list-style: none;
    margin: 0;
    padding: 0!important;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.fcm-mm__sublist li {
    list-style: none;
    margin: 0;
    padding: 0;
    line-height: 1;
}

.fcm-mm__sublist a {
    display: inline-block;
    font-size: 13px;
    font-weight: 400;
    color: rgba(26, 39, 68, 0.8)!important;
    line-height: 1.4;
    padding: 3px 0!important;
    margin: 0;
    text-decoration: none;
    background: none;
    transition: color 0.15s ease;
}

.fcm-mm__sublist a:hover { color: #65ad1f !important; }

/* ══ MERGED COLUMNS (multiple groups in one column) ══════════ */
.fcm-mm__group--merged {
    display: flex;
    flex-direction: column;
}

.fcm-mm__group-section {
    margin-bottom: 18px;
}

.fcm-mm__group-section:last-child {
    margin-bottom: 0;
}

/* ══ DIVI / THEME OVERRIDES ══════════════════════════════════ */
.et_pb_section .fcm-mm,
.et_pb_row .fcm-mm,
.et_pb_column .fcm-mm,
.et_pb_code_inner .fcm-mm,
.et_pb_module .fcm-mm {
    padding: 0;
    margin: 0;
    overflow: visible;
}

.fcm-mm ul,
.fcm-mm li,
.fcm-mm a,
.fcm-mm p {
    margin-top: 0;
    margin-bottom: 0;
    padding-top: 0;
    padding-bottom: 0;
}

/* ══════════════════════════════════════════════════════════════
   MOBILE — inline drill-down (≤980px)
   Stays in original placement; panels replace each other in flow.
   ══════════════════════════════════════════════════════════════ */
@media (max-width: 980px) {

    /* Hamburger / close — same anchor point, only one shows at a time */
    .fcm-mm__toggle,
    .fcm-mm.is-open .fcm-mm__close {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 44px;
        height: 44px;
        padding: 0;
        background: #fff;
        border: 1px solid rgba(0, 0, 0, 0.1);
        border-radius: 6px;
        color: #65ad1f;
        font-size: 24px;
        cursor: pointer;
        position: absolute;
        top: -72px!important;
        right: 15px; 
        z-index: 99;
    }

    .fcm-mm.is-open .fcm-mm__toggle { display: none; }

    /* Bar — inline, hidden until toggle */
    .fcm-mm__bar {
        display: none;
        position: relative;
        flex-direction: column;
        align-items: stretch;
        width: 100%;
        background: #fff;
        padding: 0!important;  
        gap: 0;
    }

    /* Close button anchored at top-right of opened menu */
    .fcm-mm.is-open .fcm-mm__close {
        position: absolute;
        right: 15px;
        z-index: 3;
    }

    /* Global back button — single, top-left of opened menu, only shown when drilled in */
    .fcm-mm__back--global { display: none !important; }

    .fcm-mm.is-drilled .fcm-mm__back--global {
        display: flex !important;
        align-items: center;
        justify-content: center;
        gap: 6px;
        position: relative;
        top: 10px;
        left: 7px;
        z-index: 3;
        height: 44px;
        margin-bottom: 10px!important;
        background: #fff;
        border: none;
        color: rgba(26, 39, 68, 0.8);
        font: 400 14px/1 'Poppins', sans-serif;
        cursor: pointer;
    }

    .fcm-mm__back--global::before {
        content: "‹";
        color: #65ad1f;
        font-size: 32px;
        margin-top: -2px;
        line-height: 1;
    }

    .fcm-mm.is-open .fcm-mm__bar {
        display: flex;
    }

    /* Top-level item rows */
    .fcm-mm__item {
        position: relative;
        width: 100%;
        border-right: none;
        border-bottom: 1px solid rgba(26, 39, 68, 0.1);
    }

    .fcm-mm__item:last-child { border-bottom: none; }

    .fcm-mm__link {
        display: flex !important;
        align-items: center;
        min-height: 56px;
        padding: 18px 15px !important;
        font-size: 14px;
        font-weight: 400;
        color: rgba(26, 39, 68, 0.8)!important;
        white-space: normal;
        line-height: 1.4;
        flex: 1 1 auto;
    }

    /* Link row: link + arrow side by side */
    .fcm-mm__link-row,
    .fcm-mm__heading-row {
        display: flex;
        align-items: center;
        width: 100%;
        position: relative;
    }

    .fcm-mm__heading-row {
        border-bottom: 1px solid rgba(26, 39, 68, 0.06);
    }

    .fcm-mm__heading-row .fcm-mm__heading {
        flex: 1 1 auto;
    }

    /* Arrow toggle button */
    .fcm-mm__arrow {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 56px;
        min-height: 56px;
        flex-shrink: 0;
        background: none;
        border: none;
        cursor: pointer;
        color: #65ad1f;
        padding: 0;
        transition: background 0.15s ease;
    }

    .fcm-mm__arrow:hover {
        background: rgba(101, 173, 31, 0.05);
    }

    .fcm-mm__arrow svg {
        transition: transform 0.2s ease;
    }

    /* Strip any chevrons / arrows the theme might inject into menu links */
    .fcm-mm a::after,
    .fcm-mm a::before,
    .fcm-mm li::after,
    .fcm-mm li::before {
        content: none !important;
        background: none !important;
    }

    /* Chevron handled by .fcm-mm__arrow button — remove pseudo-element chevrons */
    .fcm-mm__item.has-submenu > .fcm-mm__link-row .fcm-mm__link,
    .fcm-mm__group--has-children > .fcm-mm__heading-row .fcm-mm__heading,
    .fcm-mm__sublist li.has-children > a {
        padding-right: 15px;
    }

    .fcm-mm__item.has-submenu > .fcm-mm__link-row .fcm-mm__link::after,
    .fcm-mm__group--has-children > .fcm-mm__heading-row .fcm-mm__heading::after,
    .fcm-mm__sublist li.has-children > a::after {
        content: none !important;
    }

    .fcm-mm__sublist li.has-children {
        position: relative;
    }

    .fcm-mm__item--highlight > .fcm-mm__link {
        background: #b0d77c;
        margin: 8px 0;
        border-radius: 4px;
        padding-left: 15px;
    }

    /* When a top item is open: hide its siblings + its own link, show dropdown inline */
    .fcm-mm__bar.has-open-child > .fcm-mm__item:not(.is-open) {
        display: none !important;
    }

    .fcm-mm__item.is-open {
        border-bottom: none;
    }

    .fcm-mm__item.is-open > .fcm-mm__link-row {
        display: none !important;
    }

    /* DROPDOWN — inline, replaces the bar visually */
    .fcm-mm__dropdown {
        display: none;
        position: static;
        background: transparent;
        border: none;
        box-shadow: none;
        padding: 0;
        width: 100%;
    }

    .fcm-mm__item.is-open > .fcm-mm__dropdown {
        display: block;
    }

    /* Cols stack vertically */
    .fcm-mm__cols {
        display: flex;
        flex-direction: column;
        grid-template-columns: none;
        gap: 0;
        padding: 0!important;
    }

    .fcm-mm__group {
        position: relative;
        border-bottom: 1px solid rgba(26, 39, 68, 0.1);
    }

    .fcm-mm__group:last-child { border-bottom: none; }

    .fcm-mm__heading {
        display: flex !important;
        align-items: center;
        min-height: 56px;
        position: relative;
        padding: 18px 15px !important;
        margin: 0 !important;
        font-size: 14px;
        font-weight: 400;
        color: rgba(26, 39, 68, 0.8)!important;
        line-height: 1.4;
        cursor: pointer;
    }

    /* Hide siblings when a group is opened */
    .fcm-mm__cols.has-open-child > .fcm-mm__group:not(.is-open) {
        display: none !important;
    }

    .fcm-mm__group.is-open {
        border-bottom: none;
    }

    .fcm-mm__group.is-open > .fcm-mm__heading-row {
        display: none !important;
    }

    /* Merged column on mobile: each section acts like a group row */
    .fcm-mm__group--merged {
        display: flex;
        flex-direction: column;
        gap: 0;
    }

    .fcm-mm__group-section {
        margin-bottom: 0;
        border-bottom: 1px solid rgba(26, 39, 68, 0.1);
    }

    .fcm-mm__group-section:last-child {
        border-bottom: none;
    }

    .fcm-mm__group-section .fcm-mm__heading {
        display: flex !important;
        align-items: center;
        min-height: 56px;
        padding: 18px 15px !important;
        margin: 0 !important;
        font-size: 14px;
        font-weight: 400;
        color: rgba(26, 39, 68, 0.8) !important;
        line-height: 1.4;
        cursor: pointer;
    }

    /* When a merged section is open, hide its siblings within the column */
    .fcm-mm__group--merged.has-open-child > .fcm-mm__group-section:not(.is-open) {
        display: none !important;
    }

    .fcm-mm__group-section.is-open {
        border-bottom: none;
    }

    .fcm-mm__group-section.is-open > .fcm-mm__heading-row > .fcm-mm__heading {
        display: none !important;
    }

    .fcm-mm__group-section.is-open > .fcm-mm__heading-row {
        display: none !important;
    }

    .fcm-mm__group-section > .fcm-mm__sublist {
        display: none;
    }

    .fcm-mm__group-section.is-open > .fcm-mm__sublist {
        display: flex;
    }

    /* SUBLIST — inline, replaces group heading */
    .fcm-mm__sublist {
        display: none;
        position: static;
        flex-direction: column;
        gap: 0;
        padding: 0;
        background: transparent;
        width: 100%;
    }

    .fcm-mm__group.is-open > .fcm-mm__sublist {
        display: flex;
    }

    .fcm-mm__sublist li {
        position: relative;
        border-bottom: 1px solid rgba(26, 39, 68, 0.1);
        line-height: normal;
    }

    .fcm-mm__sublist li:last-child { border-bottom: none; }

    .fcm-mm__sublist a {
        display: flex !important;
        align-items: center;
        min-height: 56px;
        padding: 18px 15px !important;
        font-size: 14px;
        font-weight: 400;
        color: rgba(26, 39, 68, 0.8)!important;
        line-height: 1.4;
    }

}


header.et-l--header{
        border-bottom: 1px solid rgba(0, 0, 0, 0.20);
    .et_pb_module.et_pb_image{
        max-width: 220px;
    }
}

@media (max-width: 480px) {

    header.et-l--header{
        .et_pb_module.et_pb_image{
            margin: 0 !important;
        }
    }
        header.header-phone{
            font-size: 16px!important;
    }
}


/* Header */
 
@media (max-width: 980px) {
        header.et-l--header{
        .et_pb_module.et_pb_image{
        }
    }
    #social-media-mobile{
        margin-bottom: 15px;
    }
}
#header-search-form{
    padding: 0 20px;
}

#top-header-mobile{
    margin-bottom: 0!important;
}

#social-media-mobile{
    transform: none!important;
}