@media(min-width: 992px) {
    .soymm-main-wrapper {
        width: 100%;
        padding: 10px 0;
    }

    .soymm-mixed-menu {
        display: flex;
        align-items: center;
        list-style: none;
        margin: 0;
        padding: 0;
        flex-wrap: wrap;
    }

    .soymm-mixed-menu > li {
        margin-right: 30px;
        position: relative;
    }

    .soymm-trigger-button {
        display: flex;
        align-items: center;
        color: #232323;
        cursor: pointer;
        font-weight: 700 !important;
        text-transform: uppercase;
        font-size: 15px;
    }

    .soymm-trigger-button i { margin-left: 8px; font-size: 20px; }

    .soymm-dropdown-container {
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        padding-top: 10px;
    }

    .soymm-trigger-wrapper:hover .soymm-dropdown-container { display: block; }

    #soymenu_main_ul {
        display: flex;
        flex-direction: column;
        width: 400px;
        background: #fff;
        border: 1px solid #ddd;
        padding: 0;
        box-shadow: 0 5px 15px rgba(0,0,0,0.1);
        margin: 0;
    }

    .soymm-horizontal-link {
        display: flex;
        align-items: center;
        color: #232323;
        font-weight: 400 !important;
        text-transform: uppercase;
        font-size: 15px;
        text-decoration: none;
    }

    /* ESTILOS DEL DRAWER */
    .soymenu_category { 
        border-bottom: 1px solid #f0f0f0; 
        position: static;
    }

    .soymm_content_link { 
        display: flex; 
        justify-content: space-between; 
        align-items: center; 
        padding: 10px 20px; 
        height: 45px; 
    }

    .soymm_content_link a.dropdown-item { 
        color: #333; 
        font-weight: 400 !important; 
        font-size: 14px; 
        text-decoration: none; 
        display: flex; 
        align-items: center; 
        width: 100%;
    }

    .soymm-cat-icon { margin-right: 12px; font-size: 20px; color: #666; }

    .soy-content-submenu { 
        display: none; 
        position: absolute; 
        left: 400px; 
        top: -1px; 
        width: 400px; 
        min-height: calc(100% + 1px); 
        background: #fff; 
        border: 1px solid #ddd; 
        box-shadow: 10px 5px 15px rgba(0,0,0,0.1); 
    }

    .soymenu_category:hover > .soy-content-submenu { display: block; }

    .soymenu_subcategories, .soymenu_subcategories .row, .soymenu_subcategories ul {
        width: 100% !important;
        margin: 0;
        padding: 0;
    }

    #soymenu_main_ul .soymenu_subcategories .col-md-12,
    #soymenu_main_ul .soymenu_subcategories .col-md-6,
    #soymenu_main_ul .soymenu_subcategories .col-md-4,
    #soymenu_main_ul .soymenu_subcategories .col-md-3 {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
        padding: 0;
    }

    .soymm_col_title, .soymm_title_submenu {
        font-weight: 400 !important;
        font-size: 14px;
        padding: 10px 20px;
        margin: 0;
        border-bottom: 1px solid #f0f0f0;
        color: #333;
    }

    .soymm_category a.dropdown-submenu { 
        display: flex; 
        justify-content: space-between; 
        align-items: center; 
        padding: 10px 20px; 
        color: #444; 
        font-size: 14px; 
        text-decoration: none; 
        height: 45px; 
        width: 100%;
        border-bottom: 1px solid #f0f0f0;
    }

    .soymm_right_arrow { font-size: 18px; color: #bbb; }

    .soymm_subcategories_childs { 
        display: none; 
        position: absolute; 
        left: 100%; 
        top: -1px; 
        width: 400px; 
        min-height: calc(100% + 2px); 
        background: #fff; 
        border: 1px solid #ddd; 
        box-shadow: 10px 5px 15px rgba(0,0,0,0.1); 
    }

    .soymm_category:hover > .soymm_subcategories_childs { display: block; }
    .soymm_subcategories_childs li a { 
        display: block; 
        padding: 12px 20px; 
        color: #666; 
        font-size: 14px; 
        text-decoration: none; 
        border-bottom: 1px solid #f0f0f0;
    }

    .soymm-text { text-transform: lowercase; display: inline-block; }
    .soymm-text::first-letter { text-transform: uppercase; }

    /* Estilos para dropdowns en enlaces horizontales (PC) */
    .soymm-horizontal-item {
        position: relative;
    }
    .soymm-horizontal-item:hover .soymm-horizontal-submenu {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
    }
    .soymm-horizontal-submenu {
        display: none;
        position: absolute;
        top: 100% !important;
        left: 0 !important;
        width: 450px !important;
        border: 1px solid #ddd;
        background: #fff;
        box-shadow: 0 5px 15px rgba(0,0,0,0.1);
        z-index: 9999 !important;
        visibility: hidden;
        opacity: 0;
        margin-top: 10px;
    }
    .soymm-horizontal-submenu .row,
    .soymm-horizontal-submenu .row [class*="col-md-"],
    .soymm-horizontal-submenu ul {
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin: 0 !important;
        list-style: none !important;
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
    }
    .soymm-horizontal-submenu .soymm_col_title,
    .soymm-horizontal-submenu ul li a,
    .soymm-horizontal-submenu .soymm_category a.dropdown-submenu {
        display: flex !important;
        width: 100% !important;
        box-sizing: border-box !important;
        border-bottom: 1px solid #f0f0f0 !important;
        margin: 0 !important;
    }
    .soymm-horizontal-arrow {
        font-size: 18px;
        margin-left: 5px;
        color: #666;
    }

    .soymm-mobile-back, .soymm-mobile-back-lvl2 { display: none !important; }
}

@media(max-width: 991px) {
    .menu.js-top-menu, #_desktop_top_menu { padding: 0 !important; margin: 0 !important; }
    .soymm-main-wrapper { width: 100%; padding: 0; margin: 0; box-sizing: border-box; }
    .soymm-mixed-menu { display: block; padding: 0; margin: 0; list-style: none; width: 100%; }
    .soymm-mixed-menu > li { margin: 0; padding: 0; border-bottom: none; width: 100%; display: block; }

    .soymm-trigger-button, .soymm-horizontal-link {
        display: flex; justify-content: space-between; align-items: center;
        padding: 15px 20px; background: #fff; font-weight: 700 !important;
        color: #333; text-decoration: none; text-transform: none !important;
        width: 100%; box-sizing: border-box;
    }
    .soymm_content_link, .soymm_category a.dropdown-submenu {
        display: flex !important; justify-content: space-between;
        align-items: center; flex-wrap: nowrap !important; width: 100%;
    }
    .soymm_content_link a.dropdown-item, .soymm_category a.dropdown-submenu span {
        text-transform: none !important; flex: 1; min-width: 0;
    }
    .soymm_content_link a.dropdown-item span, .soymm_category a.dropdown-submenu span {
        white-space: normal; text-align: left; line-height: 1.3; display: block;
    }
    .soymenu_dropdown { flex-shrink: 0; margin-left: 10px; display: flex; align-items: center; }

    .soymm-dropdown-container {
        display: none; background: #fff; position: relative;
        overflow: hidden; width: 100%; box-sizing: border-box;
    }
    .soymm-trigger-wrapper.active .soymm-dropdown-container { display: block; }

    #soymenu_main_ul {
        position: relative; width: 100%; border: none; box-shadow: none;
        box-sizing: border-box; transition: transform 0.3s ease-in-out;
        margin: 0; padding: 0; list-style: none;
    }
    #soymenu_main_ul.lvl1-active { transform: translateX(-100%); }
    #soymenu_main_ul.lvl2-active { transform: translateX(-200%); }

    .soymenu_category, .soymm_category,
    .soymenu_subcategories, .soymenu-spe-dropdown,
    .soymenu_subcategories .row, .soymenu_subcategories [class*="col-"],
    .soymenu_subcategories ul, .soymenu_subcategories li { position: static !important; }

    .soymenu_subcategories, .soymenu-spe-dropdown,
    .soymenu_subcategories .row, .soymenu_subcategories [class*="col-"],
    .soymenu_subcategories ul {
        overflow: visible !important; height: auto !important;
        margin: 0 !important; padding: 0 !important;
    }

    .soy-content-submenu .soymenu_subcategories.collapse,
    .soy-content-submenu .soymenu_subcategories.collapsing {
        display: block !important; height: auto !important;
    }
    .soymm-dropdown-container .row, .soy-content-submenu .row {
        margin-left: 0 !important; margin-right: 0 !important;
    }

    /* PANEL 1 — especificidad alta */
    #soymenu_main_ul .soymenu_category .soy-content-submenu,
    .soymm-dropdown-container .soy-content-submenu,
    .soy-content-submenu {
        display: block !important; position: absolute !important;
        top: 0 !important; left: 100% !important; width: 100% !important;
        background: #fff; z-index: 10; visibility: hidden;
        overflow: visible !important;
        box-sizing: border-box; margin: 0 !important; padding: 0 !important;
    }
    #soymenu_main_ul .soymenu_category.active > .soy-content-submenu,
    .soymenu_category.active > .soy-content-submenu { visibility: visible; }

    /* PANEL 2 — especificidad máxima para ganar al CSS del tema */
    #soymenu_main_ul .soymm_category .soymm_subcategories_childs,
    .soymm-dropdown-container .soymm_subcategories_childs,
    ul.soymm_subcategories_childs,
    .soymm_subcategories_childs {
        display: none !important;
        position: absolute !important;
        top: 0 !important;
        left: 100% !important;
        width: 100% !important;
        background: #fff;
        z-index: 20;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        box-sizing: border-box;
        margin: 0 !important;
        padding: 0 !important;
        list-style: none !important;
        border-right: none !important;
    }
    #soymenu_main_ul .soymm_category.active > .soymm_subcategories_childs,
    .soymm_category.active > .soymm_subcategories_childs {
        display: block !important;
    }

    .soymm-horizontal-submenu {
        display: none !important; position: static !important; width: 100% !important;
        background: #fff !important; visibility: visible !important; opacity: 1 !important;
        box-sizing: border-box; border-top: 1px solid #eee !important;
    }
    .soymm-horizontal-item.active .soymm-horizontal-submenu { display: block !important; }
    .soymm-horizontal-submenu .soymm-mobile-back { display: none !important; }

    .soymenu_subcategories .row [class*="col-"] {
        padding: 0 !important; width: 100% !important; max-width: 100% !important; flex: 0 0 100% !important;
    }
    .soymm_col_title, .soymm_title_submenu {
        padding: 15px 20px !important; background: #fff; margin: 0 !important;
        font-weight: 700 !important; border-bottom: 1px solid #eee; color: #333; display: block;
    }
    .soymm_content_link, .soymm_category a.dropdown-submenu, .soymm-horizontal-submenu ul li a {
        padding: 15px 10px !important; border-bottom: 1px solid #eee !important;
        display: flex !important; justify-content: space-between; align-items: center;
        color: #666; text-decoration: none; background: #fff;
    }
    .soymm_right_arrow, .soymm_down { font-size: 18px; color: #bbb; }
    .soymm-mobile-back, .soymm-mobile-back-lvl2 {
        padding: 15px 20px; background: #fff; border-bottom: 1px solid #eee;
        font-weight: 400; font-size: 16px; cursor: pointer; display: flex;
        align-items: center; color: #333; text-transform: none !important;
    }
    .soymm-mobile-back i, .soymm-mobile-back-lvl2 i { margin-right: 8px; font-size: 22px; margin-left: -6px; }
    .soy-content-submenu::-webkit-scrollbar,
    .soymm_subcategories_childs::-webkit-scrollbar { width: 4px; display: block !important; }
    .soy-content-submenu::-webkit-scrollbar-thumb,
    .soymm_subcategories_childs::-webkit-scrollbar-thumb { background: #ccc; border-radius: 4px; }
}
