/* M02: preserve the Elementor menu layout, assets and interaction handlers.
   Scope to the existing desktop menu and mobile product bar only. */
.elementor-8897 .elementor-element-e4e36e3 {
    --m02-border: #e4e3ee;
    --m02-accent: #4853af;
    --m02-hover: #f7f6ff;
}

/* Exclude empty layout slots; include the two existing non-wrapper service cards. */
.elementor-8897 .elementor-element-e4e36e3 .e-n-menu-content
    :is(.e-con[data-ep-wrapper-link]:has(.elementor-heading-title),
        .elementor-element-bf7b134, .elementor-element-217ab0d) {
    border-color: var(--m02-border);
    --border-color: var(--m02-border);
    border-radius: 11px;
    transition: background-color 160ms ease, border-color 160ms ease,
        box-shadow 160ms ease;
}

@media (hover: hover) {
    .elementor-8897 .elementor-element-e4e36e3 .e-n-menu-content
        :is(.e-con[data-ep-wrapper-link]:has(.elementor-heading-title),
            .elementor-element-bf7b134, .elementor-element-217ab0d):hover {
        background-color: var(--m02-hover);
        border-color: var(--m02-accent);
        --border-color: var(--m02-accent);
        box-shadow: 0 4px 12px rgba(69, 65, 156, 0.07);
    }
}

.elementor-8897 .elementor-element-e4e36e3 .e-n-menu-content
    :is(.e-con[data-ep-wrapper-link]:has(.elementor-heading-title),
        .elementor-element-bf7b134, .elementor-element-217ab0d):focus-within {
    border-color: var(--m02-accent);
    --border-color: var(--m02-accent);
    background-color: var(--m02-hover);
}

/* Existing row widths/breakpoints are retained; only the gutters become quieter. */
.elementor-8897 .elementor-element-e4e36e3 .e-n-menu-content
    .e-con-inner:has(> .e-con[data-ep-wrapper-link] .elementor-heading-title) {
    column-gap: 14px;
}
.elementor-8897 .elementor-element-e4e36e3 .e-n-menu-content
    .e-con:has(> .e-con > .e-con-inner > .e-con[data-ep-wrapper-link] .elementor-heading-title) {
    row-gap: 14px;
}

.elementor-8897 .elementor-element-e4e36e3 .e-n-menu-title {
    border-radius: 6px;
    transition: background-color 160ms ease;
}
.elementor-8897 .elementor-element-e4e36e3 .e-n-menu-title:has([aria-expanded="true"]) {
    background-color: #e8e3fb;
}
.elementor-8897 .elementor-element-e4e36e3 .e-n-menu-content > .e-con {
    box-shadow: 0 10px 22px rgba(62, 54, 122, 0.05);
}
.elementor-8897 .elementor-element-e4e36e3
    :is(.elementor-element-3fba33f, .elementor-element-f314162,
        .elementor-element-dfb172a, .elementor-element-add404c,
        .elementor-element-0cc85b3) {
    border-color: var(--m02-border);
    --border-color: var(--m02-border);
    border-radius: 11px;
}

/* Product chooser only: no changes to the rest of the footer. */
.elementor-element-5717c94 .elementor-element-b235041 {
    border-radius: 19px;
    box-shadow: 0 5px 20px rgba(61, 50, 106, 0.05);
}
.elementor-element-5717c94 #e-n-menu-content-2041 {
    border-radius: 15px;
    box-shadow: 0 5px 20px rgba(61, 50, 106, 0.05);
}
.elementor-element-5717c94 #e-n-menu-content-2041
    :is(.elementor-element-e7001b2, .elementor-element-2d22081,
        .elementor-element-cccc33f, .elementor-element-1b056d6,
        .elementor-element-a857d47, .elementor-element-5a0b913) {
    border-color: #e4e3ee;
    --border-color: #e4e3ee;
    border-radius: 11px;
    min-height: 44px;
    transition: background-color 160ms ease, border-color 160ms ease;
}
.elementor-element-5717c94 #e-n-menu-content-2041
    :is(.elementor-element-e7001b2, .elementor-element-2d22081,
        .elementor-element-cccc33f, .elementor-element-1b056d6,
        .elementor-element-a857d47, .elementor-element-5a0b913):focus-within {
    background-color: #f7f6ff;
    border-color: #4853af;
}

@media (prefers-reduced-motion: reduce) {
    .elementor-8897 .elementor-element-e4e36e3 .e-n-menu-title,
    .elementor-8897 .elementor-element-e4e36e3 .e-n-menu-content .e-con,
    .elementor-element-5717c94 #e-n-menu-content-2041 .e-con {
        transition: none;
        animation: none;
    }
}
