body, html {
    margin: 0;
    padding: 0;
    height: 100vh;
    width: 100vw;
    font-family: Montserrat, sans-serif;
    -moz-user-select: -moz-none;
    -khtml-user-select: none;
    -webkit-user-select: none;
    -o-user-select: none;
    user-select: none;
    
}
body{
    overflow-y:auto;
    overflow-x:hidden;
    display:inline-block;
}
.fila_cd {
    display:flex;
    justify-content:center;
    height:20vh;
    width:100%; 
    padding:1vh 5vw;
}
.contenedor_cd {
    width:100%; 
    padding:0.5vh 1vw; 
    text-align:center; 
    color:gray;
}
.lema_cd {
    font-size:25px; 
    font-weight:bold; 
    color:gray;
}
.sublema_cd {
    font-size:22px;  
    color:gray;
}
.nombre_cd {
    font-size:18px; 
    font-weight:bold;
}
.puesto_cd {
    font-size:16px;
}
#contenedor_noticias {
    padding:2vh 10vw;
}
#titulo_noticias {
    font-size:50px;
    color:gray;
}
.link_noticias {
    padding:2vh 2vw; 
    display:flex; 
    align-items:center; 
    cursor:pointer;
}
.titulo_noticia {
    font-size:1.5vw; 
    font-weight:bold; 
    color:gray; 
    padding:0 2vw; 
    text-align:center;
}
.icono_noticia {
    height:12vw; 
    width:12vw;
}
#contenedor_principal {
    height:60vh; 
    display:flex; 
    width:100vw;
}
.contenedor_opcion_principal {
    width:100%;
    height:100%;
}
.opcion_principal {
    width:100%; 
    height:100%; 
    display:flex; 
    align-items:center; 
    justify-content:center; 
    background-color:rgba(50, 50, 220, 0.5); 
    color:white;
}
.titulo_opcion_principal {
    font-size:20px; 
    text-align:center;
}
.link_principal {
    border:solid 2px white; 
    color:white; 
    padding:0.7vw 2.5vw; 
    text-decoration:none;
}
#contenedor_radio {
    width:100vw; 
    padding:2vw 5vw;
}
#titulo_audios {
    font-size:20px; 
    font-weight:bold; 
    padding-bottom:2vw;
}
.contenedor_audios {
    width:100%; 
    display:flex;
}
.link_audio {
    width:100%; 
    height:50vh; 
    margin:0 1vw;
    padding:2vw; 
    display:flex; 
    align-items:flex-end; 
    text-decoration:none;
}
.tag_audio {
    font-size:18px; 
    color:gray;
}
.titulo_audio {
    font-size:20px; 
    color:white;
}
#contenedor_calendario_reserva {
    width:100%;
    display:flex;
    justify-content:center;
}
#mi_reserva{
    width:25vw; 
    display: none; 
    align-items: center; 
    justify-content: center; 
    padding-left:1vw;
}
#contenedor_reserva {
    padding:1vw 0; 
    border:solid 1px black; 
    width:100%;
}
#scroll_reserva {
    width:100%; 
    max-height:20vw; 
    overflow-y:auto; 
    padding: 0 1vw; 
    padding-bottom:1vw;
}
.fila_reserva {
    font-size:1.5vw;
}
.celda_reserva {
    white-space:nowrap; 
    padding:0 0.625vw; 
    padding-top:0.625vw;
}
.input_reserva {
    width:100%; 
    height:3.125vw; 
    border:solid 1px black; 
    background-color: white; 
    color:black; 
    padding:0 0.625vw;
}
#contenedor_boton_reserva{
    font-size:1.875vw; 
    display:flex; 
    justify-content:center; 
    width:100%; 
    padding-top:1vw; 
    border-top:solid 1px black;
}
.titulo_salon_reservas {
    font-size:40px; 
    font-weight:bold; 
    padding-bottom:1vw; 
    width:100%;
}
.datos_salon {
    width:100%;
    display:flex;
}
.contenedor_fotos_salon {
    width:50%; 
    padding:0 3vw;
}
.contenedor_texto_salon{
    width:50%;
}
.fila_fotos_salon {
    width:100%; 
    display:flex;
}
.fotos_salon {
    height:12vw; 
    width:100%; 
    margin-left:1vw; 
    cursor:pointer;
}
.contenedor_boton_reserva {
    width:100%; 
    display:flex; 
    justify-content:center; 
    margin-top:2vw;
}
.contenedor_servicios {
    width:100%; 
    display:flex; 
    padding-bottom:3vw;
}
.servicio_imagen {
    width:100%; 
    display:flex;
}
.imagen_servicio {
    width:40vh; 
    height:40vh;
}
.servicio_descripcion {
    width:100%; 
    display:flex;
}
.descripcion_servicio {
    width:40vh; 
    min-height:40vh;
    text-align:center;
}
.nombre_servicio {
    font-size:20px; 
    font-weight:bold;
}





.global_container {
    position: fixed;
    left:0;
    right:0;
    bottom:0;
    top:0;
    z-index: 100000000000000000000000;
    background-color: rgba(0,0,0,0.3);
    display:flex;
    justify-content: center;
    align-items:center;
}
.global_container_frame {
    padding:0.3vw;
    background-color: white;
    border:solid 1px #eaeaea;
    width:25vw;
}
.contenedor_cerrar_popup {
    padding:0.9375vw;
    padding-bottom:0;
    width:100%;
    display:flex;
    justify-content:flex-end;
}
.boton_cerrar_popup {
    float:right; 
    border:none; 
    background-color: transparent; 
    outline:none;
}
.contenedor_formulario {
    padding:0.9375vw;
    width:100%;
}
.label_field2{
    font-size:1.875vw;
    white-space:nowrap;
}
.field{
    font-size:1.5625vw;
    width:100%;
    margin-bottom:0.6vw;
}
.login_button{
    font-size:1.875vw;
    margin-top:0.6vw;
    width:100%;
    border-radius:0vw;
    background-color: #00328B;
    font-weight: bold;
    color: #ffffff;
    border:none;
    outline:none;
}
.boton_otras_opciones {
    font-size: 1.25vw; 
    text-decoration: underline; 
    color: blue; 
    background-color: transparent;
    border:none; 
    padding:0; 
    outline:none;
}
.global_alert_container {
    position:fixed;
    top:10vh;
    left:0;
    right:0;
    height:2.5vw;
    z-index:200000001;
}
.global_alert {
    position:absolute; 
    background-color: white; 
    margin:0; 
    padding:0 1.2vw;  
    border:none;
    border-radius:0.3vw;
    display:flex;
    left:0;
    top:0; 
    width:70vw;
    height:2.5vw; 
    align-items:center; 
    border-left:none;
}
.global_alert_text {
    font-size:1.1vw;
    font-weight:bold;
    white-space:nowrap;
}
.alert_text {
    font-size:1.5vw;
    font-weight:bold;
}
.global_alert_subtext {
    font-size:1.1vw;
    white-space:nowrap;
    margin-left:0.93vw;
}
#accept_alert_button {
    color:#333333; 
    font-size:1.1vw; 
    margin:0; 
    padding:0; 
    border:none; 
    background-color:transparent;
}
.contenido_pagina {
    padding-top:20vh;
    width:100%;
    min-width:100%;
    z-index: 2;
    min-height:80vh;
    background-color:#FFFFFF;
}
#menu_pc{
    height:20vh;
    max-height:20vh;
    overflow-y:hidden;
    z-index:10000;
    top:0;
    left:0;
    right:0;
    position:fixed;
    background-color:white;
    display: flex;
    align-items: center;
    padding-right:3vw; 
    padding-left:1.7vw;
}
#submenu_pc {
    width:100%; 
    display:flex; 
    justify-content: flex-end; 
    height:9.0625vw; 
    align-items: center;
}
#extraccion_menu {
    display:none;
}
#retraccion_menu {
    display:none;
}
#contenedor_logo {
    height:100%;
    cursor:pointer;
    display:flex;
    align-items:center;
}
#logo_menu {
    height:12vh;
}
.div_titulo{
    width:100vw;
    height:20vh;
    display: flex;
    align-items: center;
}
.link_nav {
    background-color:transparent;
    color:#563A21;
    border:none;
    text-decoration:none;
    padding:0 0.8vw;
    font-size: 12px;
    display: flex;
    align-items: center;
    cursor:pointer;
    color:gray;
    height:20vh;
}
.link_nav:hover {
    transition-duration: 0.4s;
    color:black;
}
.nav div ul {
    display:none;
    position:absolute;
    top:11.875vw;
    list-style: none;
    background-color:white;
    min-width:0.125vw;
    margin-left:-0.625vw;
    max-height:18.75vw;
    overflow-y: auto;
    border:solid 1px black;
    border-top:none;
}
        
.nav div a:hover > ul {
    display:inline-block;
    border: 1px solid #eaeaea;
    border-top:none;
    list-style-position: inside;
    padding-left: 0;
}  
.nav div button:hover > ul {
    display:inline-block;
    border: 1px solid #eaeaea;
    border-top:none;
    list-style-position: inside;
    padding-left: 0;
} 
.nav div a ul li {
    width:100%;
    padding:0.625vw;
    background-color: white;
    color:#FF3131;
}
.nav div button ul li {
    width:100%;
    padding:0.625vw;
    background-color: white;
    color:#FF3131;
    text-align:left;
    justify-content: flex-start;
}
.subtitulos_vinculo {
    background-color: white;
    color:black;
    display: inline-block;
    border:solid 1px black;
    border-top:none;
    width:100%;
}
.subtitulo_vinculo {
    padding:0.625vw;
    color:black;
    display: inline-block;
    height:100%;
    width:100%;
    text-decoration:none;
}
.subtitulo_vinculo:hover {
    transition-duration: 0.4s;
    background-color: #eaeaea;
    color:black;
}
.vinculos {
    display:none;
    text-align: left;
}
.vinculo {
    padding:0.625vw 1.3vw;
    font-weight:normal;
}
.vinculo:hover {
    transition-duration: 0.4s;
    background-color: #eaeaea;
}
.portada {
    width: 100vw;
    aspect-ratio: 1600 / 773;
    max-height: calc(100vh - 11.875vw);
    overflow: hidden;
    background-size: cover; 
    background-position: center center;
}
.layout_noticias {
    width:100%; 
    height:75.2.5vw; 
    display:flex; 
    margin-top:11.875vw; 
    border-bottom:solid 2px black;
}
.filtro_noticias {
    min-width:25vw; 
    max-width:25vw; 
    border-right:solid 2px black; 
    overflow-y:auto; 
    height:75.2.5vw;
}
.container_noticias {
    width:100%; 
    height:75.2.5vw; 
    display:flex; 
    justify-content: center; 
    background-color:#545454;
}
#imagen_noticia, #video_noticia{
    display:none; 
    height:36.4375vw;
}
.noticia {
    padding:1.25vw; 
    display:flex; 
    align-items:center; 
    border-bottom:solid 1px #545454; 
    cursor:pointer;
}
.noticia:hover{
    background-color:#EAEAEA;
    transition-duration: 0.4s;
}
.prev_item{
    position:absolute;
    top:0;
    left:0;
    width:6.25vw;
    height:9.375vw;
    background-color: black;
    opacity: 0.1;
    justify-content: center;
    align-items: center;
    font-size: 2.5vw;
    font-weight: bold;
    z-index:3;
}
.prev_item:hover{
    opacity: 0.5;
    transition-duration: 0.5s;
}
.next_item{
    position:absolute;
    top:0;
    right:0;
    width:6.25vw;
    height:9.375vw;
    background-color: black;
    opacity: 0.1;
    display:flex;
    justify-content: center;
    align-items: center;
    font-size: 2.5vw;
    font-weight: bold;
    z-index:3;
}
.next_item:hover{
    opacity: 0.5;
    transition-duration: 0.5s;
}
.footer {
    background-color: #545454;
    height:6vw;
    padding:0 2vw;
    border-top:solid 2px black;
}
.titulo_salon {
    font-size:1.875vw; 
    display: flex; 
    justify-content: center; 
    padding:0.625vw; 
    background-color:white;
    border:solid 1px black; 
    border-bottom:none;
    font-weight: bold;
    position: relative;
}
#nombre_mes {
    display: flex; 
    align-items: center; 
    font-size:1.5625vw; 
    white-space:nowrap;
}
.titulo_mes {
    display:flex; 
    width:100%; 
    justify-content: center; 
    font-weight: bold; 
    font-size:1.25vw; 
    margin-bottom:0.625vw;
    position:relative; 
    height:2.5vw; 
    width:100%;
}
.calendario {
    border:solid 1px black; 
    width:100%; 
    background-color: white;
}
.mes_calendario {
    width:100%;
}
.header_dia {
    text-align:center; 
    height:2.81vw; 
    width:calc(100% / 7); 
    font-weight:bold;
    font-size:1.5vw;
}
.boton_mes {
    height:2.5vw;
    border:none;
    outline:none;
    background-color:transparent;
}
.dia_sombreado:hover {
    background-color: #eaeaea;
}
.dias_salon {
    height:2.81vw;
    text-align:center; 
    vertical-align: center;
    cursor:pointer; 
    font-size:1.56vw;
}
.dias_salon_sn {
    height:2.81vw;
    text-align:center; 
    vertical-align: center;
    cursor:pointer; 
    font-size:1.56vw;
}
.dias_salon:hover {
    background-color: #d3d3ff;
}
.div_dia_salon {
    width:1.875vw;
    height:1.875vw;
    border-radius: 50%;
}
.boton_reserva {
    background-color:black;
    border:none;
    font-size:1.87vw;
    font-weight:bold;
    color:white;
    padding:0.125vw 1.87vw;
    border:solid 1px black;
    cursor:pointer;
}
.cuadro_referencia_calendario {
    margin-left:2vw; 
    padding:0 0.5vw; 
    width:2vw; 
    height:2vw; 
    border:solid 1px gray;
}
.hoja_reporte {
    background-color:white;
    border:solid 1px black;
    margin-top:7.5vw;
}
.celda_reporte {
    border:solid 1px black; 
    border-top:none; 
    border-right:none;
    display:flex;
    justify-content: center;
    align-items: center;
}
.celda_reporte_right { 
    vertical-align: center;
    border:solid 1px black; 
    border-top:none; 
    display:flex;
    justify-content: center;
    align-items: center;
}
#boton_guardar_sorteo{
    font-size: 3.125vw;
    width:4.3vw; 
    height:4.3vw;
    border-radius: 50%;
    position: fixed;
    bottom:1.25vw; 
    right:1.25vw;
    z-index: 1000;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #4244f8;
    color: white;
    border:none;
    outline: none;
    cursor:pointer;
}
.boton1{
    padding:0.125vw 1.25vw;
    background-color: #FF3131;
    color:white;
    text-transform: capitalize;
    font-size:1.25vw;
    font-weight: bold;
    outline:none;
    border:solid 1px black;
    cursor: pointer;
    border-radius:5px;
}
.boton1:hover {
    background-color: #D90000;
    transition-duration: 0.4s;
}
.boton2{
    padding:0.125vw 1.25vw;
    background-color:white;
    color:#FF3131;
    text-transform: capitalize;
    font-size:1.25vw;
    font-weight: bold;
    outline:none;
    border:solid 1px black;
    cursor: pointer;
    border-radius:5px;
}
.boton2:hover {
    background-color: #EAEAEA;
    transition-duration: 0.4s;
}
.boton3{
    margin:0 0.3125vw;
    padding:0 0.625vw;
    background-color:white;
    color:#00328B;
    text-transform: capitalize;
    font-size:1vw;
    font-weight: bold;
    outline:none;
    border:solid 1px black;
    cursor: pointer;
    border-radius:5px;
    text-decoration: none;
    display: flex;
    justify-content: center;
    align-items: center;
    height:1.875vw;
}
.boton3:hover {
    background-color: #00328B;
    transition-duration: 0.4s;
    text-decoration: none;
    color:white;
}
.estanteria {
    overflow:hidden; 
    width:100%; 
    padding:1.25vw 0.625vw;
    display:flex;
    height:15.625vw;
}
.estante2{
    display:flex;
    width:100%;
    position: relative;
    padding:0 8.75vw;
}
.estante {
    display:flex; 
    overflow-x:auto; 
    height:17.5vw;
}
.libro {
    min-width:10vw; 
    max-width:10vw;
    overflow:hidden; 
    margin-right:1.25vw; 
    color:black; 
    text-decoration: none; 
    position: relative; 
    z-index:2;
    text-align: center;
}
.libro:hover {
    color:black; 
    text-decoration: none;
}
.recuadro_libro{
    overflow:hidden; 
    pointer-events:none; 
    border:solid 0px black;
    background-color:red;
}
.titulo_libro {
    width:100%; 
    display:flex; 
    justify-content: center;
}
#ventana_container_noticias_principal {
    width:100%; 
    height:35vw; 
    overflow:hidden;
}
#container_noticias_principal {
    width:100%; 
    height:calc(100% + 2vw); 
    display:flex; 
    align-items:center; 
    overflow-x:auto; 
    overflow-y:hidden;
}
.noticias_principal {
    height:calc(100% - 4vw); 
    min-width:21%; 
    max-width:21%; 
    width:21%; 
    margin:0 2%; 
    padding:0.625vw; 
    border-radius:10px; 
    background-color:white;
}
.imagenes_noticias_principal {
    width:100%;
    background-position:top center; 
    background-size:cover; 
    border-bottom:solid 2px black; 
    border-top-left-radius:10px; 
    border-top-right-radius:10px;
}
.titulos_noticias_principal {
    font-size:1.25vw; 
    text-align:justify; 
    padding:0 0.625vw; 
    font-weight:bold; 
    color:#FF3131; 
    height:4vw;
}
.links_noticias_principal {
    font-size:0.9375vw; 
    display:flex;
    width:100%; 
    height:1.75vw;
}