body {
    background: #f4f6f9;
}
div {
    display: block;
    unicode-bidi: isolate;
}
.menu-lat
{
    position: sticky;
    top: 16rem;
    align-self: start;
    background-color: #fff;
    padding: 1.5rem;
    box-shadow: 0 1px 3px #0000001a;
    border: 1px solid #e5e7eb;
    width: 100%;
    background: #F5F7FA;
    border-radius: 18px;
}

.legal-layout
{
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 2rem;
    align-items: start;
    width: 100%;
    align-items:start;
}
.legal-container{
    font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, sans-serif;
    line-height: 1.6;
    color: #333;
    width: 100%;
    min-height: 100vh;
}
.legal-content{
    padding: 0 2rem;
    max-width: 1200px;
    margin: 0 auto;
    width: 100%;
}
.nav-principal{
    display: flex;
    flex-direction: column;
}
.legal-mobile-info{
    display:none;
}

.legal-mobile{
    display:none;
}

@media (max-width:768px){

    .menu-lat,
    .main{
        display:none;
    }

    .legal-mobile{
        display:block;
    }
    
    .legal-container{
        min-height: 0;
    }

}

@media (max-width:768px) {
    .legal-layout {
        display:flex;
        flex-direction:column;
        gap:1.5rem;
    }
    
    .menu-lat{

        position:static;
        width:100%;

    }
    .iframe-principal{

        min-height:450px;
        height:65vh;

    }
    .legal-content{

        padding:0 1rem;

    }
    .span-principal{

        font-size:1rem;

    }
    .main{

        padding:1rem;
    
    }
    .button-principal{

        padding:.9rem;
    
    }
    .grupoempresarial{

        padding:25px 0;
    
    }
    .main{

        order:1;
        display:none;
    
    }
    
    .menu-lat{
    
        order:2;
    
    }
    .legal-mobile-info{

        display:block;
        background:#fff;
        padding:25px;
        border-radius:18px;
        margin-bottom:25px;
        box-shadow:0 8px 25px rgba(0,0,0,.08);

    }
    
    
}
@media (max-width:480px){

    .iframe-principal{

        min-height:350px;
        height:55vh;

    }

}

.button-selected{
    transform:translateX(5px);
    background-color: #ecfdf5;
    color: #154d8b !important;
    border-left: 4px solid #154d8b ;
    font-weight: 600;
    background: linear-gradient(90deg, #eaf1ff, #ffffff) !important;
    border-left: 4px solid #0B4DBA !important;
    box-shadow: 0 6px 15px rgba(11,77,186,0.15) !important;
}

.button-principal{
    background: none;
    border: none;
    padding: 0;
    margin: 0;
    font-family: inherit;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 1rem;
    text-align: left;
    border-radius: 8px;
    margin-bottom: .5rem;
    transition: all .2s ease;
    color: #374151;
    cursor: pointer;
}
.button-principal:hover {
    background: #f1f5ff;
}
.span-principal{
    font-weight: 500;
    font-size: 1.5rem;
    color: inherit;
}
.iframe-principal{
    width:100%;
    height:75vh;
    min-height:600px;
    border:none;
    border-radius:12px;
    display:block;
}
.iframe-principal {
    transition: opacity 0.25s ease;
}
.SidebarIcon{
    width: 16px;
    height: 16px;
    color: #6b7280;
    transition: transform .2s ease;
    flex-shrink: 0;
}
.active-sidebarIcon{
    transform: rotate(90deg);
    color: #154d8b;
    background-color: #ecfdf5;
    border-left: 4px solid #154d8b;
    font-weight: 600;
}

.main{
    background:#fff;
    border-radius:16px;
    padding:2rem;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    border:1px solid #e5e7eb;
    min-height:600px;
    width:100%;
    overflow:hidden;
}

.links-Footer{
    color: #ffff;
}

.shape-links{
    display: flex;
    flex-direction: row-reverse;
    margin-top: 10px;
}

.mobile-card{

    display:flex;
    align-items:center;
    gap:16px;

    background:#fff;

    padding:18px;

    margin-bottom:16px;

    border-radius:18px;

    box-shadow:0 8px 25px rgba(0,0,0,.08);

    cursor:pointer;

    transition:.25s;

}

.mobile-card:active{

    transform:scale(.98);

}

.mobile-icon{

    width:52px;
    height:52px;

    border-radius:50%;

    background:#edf4ff;

    display:flex;
    justify-content:center;
    align-items:center;

    font-size:24px;

}

.mobile-info{

    flex:1;

}

.mobile-info h3{

    margin:0;
    color:#154d8b;
    font-size:1.5rem;

}

.mobile-info span{

    color:#6b7280;
    font-size:.9rem;

}

.mobile-arrow{

    color:#154d8b;
    font-size:20px;

}