/* WIDTH */
::-webkit-scrollbar {
    
    width:                      5px;
  
}
::-webkit-scrollbar-track {
    
    border-radius:              5px;
    box-shadow:                 inset 0 0 5px grey; 
  
}
::-webkit-scrollbar-thumb {
    
    background:                 #2195d3; 
    border-radius:              5px;
  
}
::-webkit-scrollbar-thumb:hover {
    
    background:                 #2195d3; 
  
}
body {
    
    box-sizing:                 border-box;
    font-family:                'Poppins' , sans-serif;
    font-size:                  1em;
    margin:                     0;
    padding:                    0;
    overflow-x:                 hidden;
    overscroll-behavior:        contain;
    position:                   relative;
    z-index:                    0;
    
}
a {
    
    color:                      inherit;
    position:                   relative;
    text-decoration:            none;
    
}
img {
    
    box-sizing:                 border-box;
    display:                    block;
    position:                   relative;
    width:                      100%;
    
}
button {
    
    appearance:                 none;
    -webkit-appearance:         none;
    -moz-appearance:            none;
    box-sizing:                 border-box;
    cursor:                     pointer;
    outline:                    none;
    
}
select {
    
    appearance:                 none;
    -webkit-appearance:         none;
    -moz-appearance:            none;
    
}
.fondo_modal {
    
    background:                 rgba(0,0,0,.5);
    display:                    none;
    height:                     100vh;
    left:                       0;
    position:                   fixed;
    top:                        0;
    width:                      100vw;
    z-index:                    99999;
    
}
header {
    
    background:                 white;
    box-sizing:                 border-box;
    left:                       0;
    position:                   relative;
    top:                        0;
    width:                      100%;
    z-index:                    9999;
    
}
header .header_contenedor {
    
    align-items:                center;
    box-sizing:                 border-box;
    display:                    flex;
    flex-wrap:                  wrap;
    justify-content:            center;
    margin:                     auto;
    padding:                    1em 0;
    position:                   relative;
    width:                      98%;
    
}
header .header_contenedor .logotipo {
    
    box-sizing:                 border-box;
    position:                   relative;
    width:                      160px;
    
}
header .header_contenedor .logotipo img {
    
    box-sizing:                 border-box;
    display:                    block;
    position:                   relative;
    width:                      100%;
    
}
header .header_contenedor .menu {
    
    box-sizing:                 border-box;
    position:                   relative;
    width:                      calc( 100% - 160px );
    
}
header .header_contenedor .menu .redes {
    
    box-sizing:                 border-box;
    padding-right:              0;
    position:                   relative;
    text-align:                 right;
    width:                      100%;
    
}
header .header_contenedor .menu .redes span {
    
    background:                 #515151;
    border-radius:              50%;
    color:                      #fff;
    cursor:                     pointer;
    display:                    inline-block;
    font-size:                  1.25em;
    height:                     2em;
    line-height:                2em;
    margin-bottom:              10px;
    margin-right:               .25em;
    text-align:                 center;
    transition:                 .2s;
    width:                      2em;
    
}
header .header_contenedor .menu .redes .telefono_icono {
        
    display:                    inline-block;
    
}
header .header_contenedor .menu .redes .telefono {
    
    background:                 none;
    color:                      #515151;
    display:                    none;
    border-radius:              0;
    width:                      auto;
    
}
header .header_contenedor .menu .redes span:nth-child( 3 ) {
    
    margin-right:               0;
    
}
header .header_contenedor .menu .menu_cel {
    
    cursor:                     pointer;
    display:                    block;
    margin-right:               .25em;
    padding:                    .5em 0 0 .5em;
    position:                   relative;
    text-align:                 right;
    
}
header .header_contenedor .menu nav {
    
    box-sizing:                 border-box;
    display:                    block; /* ES NONE */
    position:                   relative;
    width:                      100%;
    font-family:                'Poppins' , sans-serif;
    font-weight:                300;
    
}
header .header_contenedor .menu nav .fondo_menu {
    
    background:                 rgba( 0 , 0 , 0 , .5 );
    display:                    none;   /* AQUI VA BLOCK */
    height:                     100vh;
    left:                       0;
    position:                   fixed;
    top:                        0;
    width:                      100vw;
    z-index:                    9;
    
}
header .header_contenedor .menu nav .menu_items {
    
    background:                 white;
    box-sizing:                 border-box;
    display:                    none;   /* AQUI VA BLOCK */
    height:                     100vh;
    left:                       0;
    overflow-y:                 auto;
    position:                   fixed;
    top:                        0;
    width:                      85vw;
    z-index:                    99;
    
}
header .header_contenedor .menu nav .menu_items > a {
    
    box-sizing:                 border-box;
    display:                    block;
    line-height:                3em;
    padding:                    0   1.5em;
    position:                   relative;
    text-align:                 left;
    width:                      100%;
    
}
header .header_contenedor .menu nav .menu_items > span {
    
    box-sizing:                 border-box;
    cursor:                     pointer;
    display:                    block;
    line-height:                3em;
    padding:                    0   1.5em;
    position:                   relative;
    text-align:                 left;
    width:                      100%;
    
}
header .header_contenedor .menu nav .menu_items > span .titulo {
    
    box-sizing:                 border-box;
    cursor:                     pointer;
    display:                    block;
    line-height:                3em;
    padding:                    0   0;
    position:                   relative;
    text-align:                 left;
    width:                      100%;
    
}
header .header_contenedor .menu nav .menu_items > span .titulo .flecha {
        
    display:                    inline-block;
    margin:                     0 1em;
    position:                   absolute;
    right:                      0;
    
}
header .header_contenedor .menu nav .menu_items > span .subitems {
    
    box-sizing:                 border-box;
    display:                    none;
    margin:                     0;
    padding:                    0   1em;
    position:                   relative;
    width:                      100%;
    
}
header .header_contenedor .menu nav .menu_items > span .subitems > a {
    
    box-sizing:                 border-box;
    color:                      black;
    display:                    block;
    font-size:                  .8em;
    line-height:                3em;
    position:                   relative;
    width:                      100%;
    
}
header .header_contenedor .menu nav .menu_items .logo_oculto {
    
    box-sizing:                 border-box;
    display:                    block;
    padding:                    1em;
    position:                   relative;
    
}
.swal2-container {
    
    z-index:                    999999999;
    
}
.swal2-html-container {
    
    font-family:                'Poppins' , sans-serif;
    font-size:                  .9em;
    
}
.swal2-styled.swal2-confirm {
    
    background-color:           #502763;
    border:                     none;
    color:                      white;
    font-family:                'Poppins' , sans-serif;
    font-size:                  1em;
    outline:                    none;
    
}
@media only screen and (min-width: 360px){
    
    header .header_contenedor .logotipo {
    
        width:                      200px;
        
    }
    header .header_contenedor .menu {
    
        width:                      calc( 100% - 200px );
        
    }
}
@media only screen and (min-width: 460px){
    
    header .header_contenedor .logotipo {
    
        width:                          250px;
        
    }
    header .header_contenedor .menu {
    
        width:                          calc( 100% - 250px );
        
    }
}
@media only screen and (min-width: 1024px){
    
    header .header_contenedor {
        
        width:                              98%;
        
    }
    header .header_contenedor .menu .menu_cel {
    
        display:                            none;
        position:                           relative;
        
    }
    header .header_contenedor .logotipo {
    
        width:                              300px;
        
    }
    header .header_contenedor .menu {
    
        width:                              calc( 100% - 300px );
        
    }
    header .header_contenedor .menu .redes {
    
        padding-right:                      0;
        
    }
    header .header_contenedor .menu .redes .telefono_icono {
        
        display:                            none;
        
    }
    header .header_contenedor .menu .redes .telefono {
    
        display:                            inline-block;
        
    }
    header .header_contenedor .menu .redes a:hover:not( :last-child ) span {
    
        background:                         #2195d3;
        
    }
    header .header_contenedor .menu nav {
        
        display:                            block;
        
    }
    header .header_contenedor .menu nav .menu_items .logo_oculto {
    
        display:                            none;
        position:                           relative;
        
    }
    header .header_contenedor .menu nav .fondo_menu {
    
        display:                            none;
        
    }
    header .header_contenedor .menu nav .menu_items {
        
        align-items:                        center;
        background:                         none;
        box-sizing:                         border-box;
        display:                            flex;
        flex-wrap:                          nowrap;
        height:                             auto;
        justify-content:                    flex-end;
        overflow-y:                         visible;
        position:                           relative;
        width:                              100%;
        z-index:                            99;
        
    }
    header .header_contenedor .menu nav .menu_items > a {
        
        background:                         rgba( 0 , 0 , 0 , .5 );
        color:                              white;
        line-height:                        2em;
        transition:                         .1s;
        text-align:                         center;
        width:                              auto;
        
    }
    header .header_contenedor .menu nav .menu_items > a:hover {
        
        background:                         #2195d3;
        color:                              white;
        
    }
    header .header_contenedor .menu nav .menu_items > span {
        
        background:                         rgba( 0 , 0 , 0 , .5 );
        color:                              white;
        line-height:                        2em;
        padding:                            0   .5em;
        transition:                         .1s;
        text-align:                         center;
        width:                              auto;
        
    }
    header .header_contenedor .menu nav .menu_items > span .titulo {
        
        line-height:                        2em;
        padding:                            0   1em;
        
    }
    header .header_contenedor .menu nav .menu_items > span:hover {
        
        background:                         #2195d3;
        color:                              white;
        
    }
    header .header_contenedor .menu nav .menu_items > span .titulo .flecha {
        
        right:                              -.75em;
        
    }
    header .header_contenedor .menu nav .menu_items > span .subitems {
        
        left:                               50%;
        margin:                             0;
        padding:                            0;
        position:                           absolute;
        top:                                100%;
        transform:                          translateX( -50% );
        -webkit-transform:                  translateX( -50% );
        -moz-transform:                     translateX( -50% );
        -ms-transform:                      translateX( -50% );
        -o-transform:                       translateX( -50% );
        width:                              200%;
        
    }
    header .header_contenedor .menu nav .menu_items > span .subitems > a {
        
        background:                         rgba( 0 , 0 , 0 , .5 );
        color:                              white;
        line-height:                        1.25em;
        padding:                            .5em 1em;
        width:                              100%;
        
    }
    header .header_contenedor .menu nav .menu_items > span .subitems > a:hover {
        
        background:                         #2195d3;
        color:                              white;
        
    }
    
}
@media only screen and ( min-width: 1280px ){
    
    header .header_contenedor {
        
        padding:                                .5em 0;
        width:                                  90%;
        
    }
    header .header_contenedor .logotipo {
    
        width:                                  350px;
        
    }
    header .header_contenedor .menu {
    
        width:                                  calc( 100% - 350px );
        
    }
    header .header_contenedor .menu nav .menu_items > span {
        
        padding:                                0   1.5em;
        
    }
    header .header_contenedor .menu nav .menu_items > span .titulo {
        
        padding:                                0   1.5em;
        
    }
    
}