* {
    margin: 0px;
    padding: 0px;
    box-sizing: border-box;
    /* border: 1px solid rgb(190, 190, 190); */
    /* font-family: 'Quicksand', sans-serif; */
    /* font-family: 'Roboto', sans-serif; */
    /* font-family: 'Montserrat', sans-serif; */
    /* font-family: 'Roboto Condensed', sans-serif; */
}

body {
    background-color: #000000;
}

header.cabecera {
    position: sticky;
    top: 0px;
    width: 100%;
    height: 110px;
    padding: 5px 0px 0px 0px;
    border-bottom: 1px solid #EDEEF0;
    background-color: #ffffff;
    display: grid;
    grid-template-columns: 10% 65% 10% 15%;
    grid-template-rows: 45% 25% 2% 28%;
    grid-template-areas:
    "A1 A2 A3 A4"
    "A1 A2 A3 A4"
    "B1 B1 B1 B1"
    "C1 C1 C1 C1";
    z-index: 1;
}

@media screen and (max-width: 620px) {

    header.cabecera {
        height: 110px;
        grid-template-columns: 20% 60% 20%;
        grid-template-rows: 45% 25% 2% 28%;
        grid-template-areas:
        "A1 A2 A3 A4"
        "A1 A2 A3 A4"
        "B1 B1 B1 B1"
        "C1 C1 C1 C1";
    }

    .linea {
        grid-area: B1;
        background-color: #EDEEF0;
    }
}

/* ___________________________________________________ */
 /* Inicia Estilos Payment "Botón Desplegable" */


 .perfil {
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    justify-content: center;
    width: auto;
    height: auto;
    grid-area: A1;
    cursor: pointer;
    margin: 0px 0px 0px 20px;
}

.perfil img {
    display: block;
    width: 35px;
    height: auto;
}

.check {
    display: none;
}

.check:checked + .panel-menu {
    position:fixed;
    top: 110px;
    bottom: 40px;
    left: 0px;
    width: 320px;
    background-color: #EDEEF0;
    transition: all 0,7s;
    padding: 20px 20px;

}

.panel-menu {
    position:fixed;
    top: 110px;
    bottom: 40px;
    left: -100%;
    width: 320px;
    background-color: #EDEEF0;
    transition: all 0.7s;
    padding: 20px 20px;
    z-index: 1;
}

.panel-grid {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 20% 2% 50% 2% 20% 6%;
    row-gap: 2px;

}

.bloque1, .bloque2, .bloque3, .bloque4, .bloque5, .bloque6 {
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
}

.bloque1 {
    grid: 1/-2;
}

.bloque1 img {
    width: 70%;
    height: auto;
    object-fit: fill;
    padding: 10px;
}

.bloque2 {
    grid: 2/3;
}

.bloque3 {
    padding: 5px;
    grid: 3/4;
}

.bloque3 h3 {
    width: 100%;
    height: auto;
    color: #000000;
    font-family: 'Montserrat', sans-serif;
    /* font-family: 'Roboto Condensed', sans-serif; */
    font-size: 12pt;
    margin-bottom: 10px;
    text-align: center;
    /* font-weight: 400; */
}


/* ---------------- Direcciones Pertenece al Bloque 3 ---------------*/


div.contenedor-dir {
    display: inline-flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    align-content: flex-start;
    width: 70%;
    height: auto;
    column-gap: 5px;
    row-gap: 5px;
    margin: 10px 0px;
}

div.icono-ubicacion {
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-start;
    align-content: flex-start;
    width: 20%;
    height: auto;
}

div.dir-locales {
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-start;
    align-content: flex-start;
    width: 80%;
    height: auto;
}

div.dir-locales h4 {
    width: 100%;
    height: auto;
    color: #000000;
    font-family: 'Montserrat', sans-serif;
    font-size: 8pt;
    text-align:left;
    letter-spacing: 0px;
    margin-bottom: 5px;
    
}

p.direccion {
    font-family: 'Roboto', sans-serif;
    font-weight: 300;
    color: #000000;
    font-size: 7pt;
    text-align: left;
    letter-spacing: 0px;
}

img.icono-U {
    width: 35px;
    height: auto;
}


/* --------------- Fin direcciones Bloque3 -----------------  */


.bloque4 {
    grid: 4/5;
}

.bloque5 {
    grid: 5/6;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: 1fr;
    margin: 0px 30px;
}

.link-facebook, .link-whatsapp, .link-instagram, .descarga-menu {
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
}

.link-facebook, .link-whatsapp, .link-instagram, .descarga-menu, img {
    width: 35px;
    height: auto;
    justify-self: center;
    align-self: center;
}


.link-facebook, .link-whatsapp, .link-instagram, .descarga-menu, p.n-redes-panel {
    font-family: 'Roboto', sans-serif;
    font-size: 8pt;
    margin: 3px 5px;
    justify-self: center;
    align-self: center;
}

    .link-whatsapp {
        grid: 1/2 ;

    }

    .link-facebook {
        grid: 2/3;

    }

    .link-instagram {
        grid: 3/4;
    }

    .descarga-menu {
        grid: 4/5;
    }

.linea-separacion {
    display: block;
    width: 70%;
    height: 1px;
    background-color: #808080;
}


.bloque6 {
    grid: 6/7;
  
    
}

.bloque6 p {
    font-family: 'Roboto', sans-serif;
    font-weight: 300;
    color: #000000;
    font-size: 9pt;
    text-align: center;
    letter-spacing: 0px;

}

@media screen and (max-width: 620px ) {

    .check:checked + .panel-menu {
        top: 110px;
        bottom: 40px;  
    }

    .perfil {
        margin: 0px 0px 0px 0px;
    }
}


@media screen and (min-width: 380px) and (max-width: 480px) {
  
    .check:checked + .panel-menu {
        width: 100%;
        padding: 30px 40px;   
    }

    .panel-menu {
        width: 100%;
        padding: 30px 40px;
    }
}

@media screen and (max-width: 380px) {

    .check:checked + .panel-menu {
        width: 100%;
        padding: 30px 30px;   
    }

    .panel-menu {
        width: 100%;
        padding: 30px 30px;
    }

    .bloque1 img {
        padding: 10px;
    }
    
}

/* ___________________________________________________ */
 /* Inicia Estilos "Logo Cabecera" */



.logo-restaurante {
    background-image: url("../imagenes-index/logo_abysmo_blanco.svg");
    background-size:contain;
    background-position: left;
    background-repeat: no-repeat;
    display: grid;
    grid-template-columns: repeat(3,1fr);
    grid-template-rows: auto;
    grid-template-areas:
    "left center right";
    width: 100%;
    height: 100%;
    grid-area: A2;
    align-self: center;
 }


 @media screen and (max-width: 620px) {

    .logo-restaurante {
        background-position: center;
        align-items: center;
        justify-content: center;
        grid-template-columns: 1fr;
        grid-template-rows: auto;
        grid-template-areas:
        "center";
     }

}


 /* ___________________________________________________ */
 /* Inicia Estilos Payment "Botón Pago" */



 .payment {
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    justify-content: center;
    width: auto;
    height: auto;
    margin: auto;
    grid-area: A3;
}

.payment img {
    display: block;
    width: 30px;
    height: auto;
}


@media screen and(max-width: 620px ) {

    .payment img {
        display: block;
        width: 40px;
        height: auto;
    }
    
}




/* ___________________________________________________ */
/* Inicia Estilos Botones "Redes Sociales" */



.redes {
    display: flex;
    flex-flow: row nowrap;
    align-content: center;
    justify-content: center;
    width: auto;
    height: auto;
    margin: auto;
    grid-area: A4;
}

.redes img {
    display: block;
    width: 25px;
    height: auto;
    margin: 0px 2px;
}




/* ___________________________________________________ */
/* Inicia Estilos Línea "Línea Divisoria" */

.linea {
    grid-area: B1;
    background-color: #EDEEF0;
}



/* ___________________________________________________ */
/* Inicia Estilos Título menú "titulo-menu-cabecera" */



.titulo-menu-cabecera {
    display: flex;
    flex-flow: column nowrap;
    align-items:center;
    justify-content:center;
    background-color: #ffffff;
    width: 100%;
    height: 30px;
    grid-area: C1;

}

.titulo-menu-cabecera h2 {
    font-family: 'Roboto Condensed', sans-serif;
    font-weight: 400;
    color: #000000;
    font-size: 1em;
    margin-top: 3px;
}

@media screen and (max-width: 620px) {

    .titulo-menu-cabecera h2 {
        font-size: 1em;
        margin-top: 7px;
    }

    .redes {
        display: none;
    }

}

/* ___________________________________________________________________________________ */
                    /* * inicia los stilos de "Section Menú" */ 

    section.seccion-menu {
        height: 100%;
        width: 100%;
        background-color: #808080;
        display: flex;
        flex-flow: column nowrap;
        justify-content: center;
        align-items: center; 
    }
    
    .menu-contenedor {
        display: flex;
        flex-flow: column nowrap;
        align-items: center;
        justify-content: center; 
        background-color: #d5d5d5;
        width: 420px;  
        height: 100%;
        margin: 3px 0px 42px 0px;
        gap: 0px;
        z-index: 0;
    }
    
    .catg01-content {
        background-color: #ffffff;
        width: 100%;
        height: 340px;
        display: grid;
        grid-template-columns: 5% 80% 10% 5%;
        grid-template-rows: 80% 2% 15% 3%;
        grid-template-areas: 
        "foto foto foto foto"
        "boton-go boton-go boton-go boton-go"
        "margen-izq title title margen-der"
        "margen-izq margen-button margen-botton margen-der"; 
    }
    
    
    .enlace-foto,.menu-foto {
        background-color: #808080;
        width: 100%;
        height: 100%;
        margin: auto;
        grid-area: foto;
    }
    
    .n-categ {
        display: flex;
        flex-flow: column nowrap;
        align-items: center;
        justify-content:center;
        grid-area: title;
    }
    
    .n-categ h2 {
        font-family: 'Barlow Condensed', sans-serif;
        color: #000000;
        font-size: 1.1em;
        font-weight: 500;
        letter-spacing: 0px;
        text-align: center;
    }
    
    .box-precio {
        display: flex;
        flex-flow: row nowrap;
        align-items: flex-end;
        justify-content: center;
        gap: 3px;
        grid-area: precio;
    }
    
    .precio, .simbolo-precio {
        font-family: 'Barlow Condensed', sans-serif;
        color: #000000;
    }
    
    .precio {
        font-size: 1.1em;
            font-weight: 500;
    }
    
    .simbolo-precio { 
        font-size: 8pt;
        font-weight: 700;
        margin-bottom: 2px;
    }
    
    .info-menu, a, .flecha  {
        display: flex;
        flex-flow: column nowrap;
        align-items: center;
        justify-content: center;
        text-decoration: none;
        cursor: pointer;
        grid-area: boton-go;
    }
    
    div.flecha {   
        position: relative;
        bottom: 12px; 
        background-color: #000000;
        border-radius: 50px;
        width: 40px;
        height: 40px;
        margin: auto;
    
    }
    
    .flecha > p {
        font-family: 'Quicksand', sans-serif;   
        font-size: 1.6em;
        color: #ffffff;
        font-weight: 400;
        padding-bottom: 1px;
    }
    
    
    /* _______________Estilos Grupo FOTO-MENU______________________ */
    
    
    div.foto01 {
        /* Cocktails */
        background-image: url("../imagenes-index/sesion-menu-bebidas/Moscow-Mule.JPG");
        background-position: center;
        background-size:cover;
        background-repeat: no-repeat;
    }
    
    div.foto02 {
        /* Beer Cocktails */
        background-image: url("../imagenes-index/sesion-menu-bebidas/Mojito.jpg");
        background-position: center;
        background-size:cover;
        background-repeat: no-repeat;
    }

    div.foto03 {
        /* Beer Cocktails */
        background-image: url("../imagenes-index/sesion-menu-bebidas/copa-vino.jpg");
        background-position: center;
        background-size:cover;
        background-repeat: no-repeat;
    }


    /* ________________________________ Estilos "Pop Menú" ____________________________________ */
    
    #menu-01,
    #menu-02,
    #menu-03 { display: none;}
    
    div.pop-contenedor {
        position: fixed;
        top: 130px;
        left: auto;
        background-color: #ffffff;
        width: 250px;
        height: 460px;
        box-shadow: 0px 0px 12px rgba(0, 0, 0, 0.7);
        display: grid;
        grid-template-columns: 6% 88% 6%;
        grid-template-rows: 38% 8% 4% 10% 4% 10% 4% 10% 5% 1%;
        grid-template-areas:
        "foto-cab foto-cab foto-cab"
        "m-izq title-pop m-der"
        "m-izq t-descrip m-der"
        "m-izq p-descrip m-der"
        "m-izq t-sugeren m-der" 
        "m-izq p-sugeren m-der"
        "m-izq t-ingredt m-der"
        "m-izq l-ingredt m-der"
        "m-izq botonX m-der"
        "m-but m-but m-but";
        row-gap: 3px;  
        opacity: 0;
        visibility: hidden;
        transition: all 500ms ease;
        z-index: 2;
    }
    
    label.boton-cerrar {
        display: flex;
        flex-flow: column nowrap;
        justify-content: center;
        align-items: center;
        width: 100%;
        height: auto;
        grid-area: botonX;
        cursor: pointer;
    }
    
    .botonX-cerrar {
        width: 32px;
        height: auto;
    }
    
    label.boton-cerrar i:hover {
        color:#ffffff;
        transition: all 0.3s ease;
    }
    
    #menu-01:checked + .pop-01,
    #menu-02:checked + .pop-02,
    #menu-03:checked + .pop-03 { opacity: 1; visibility: visible; }
     
    div.title-pop, .title-descript, .p-content, div.description-content, 
    div.recoment-content, div.p-recoment, .title-ingredient, div.list-ingredient {
        display: flex;
        flex-flow: column nowrap;
        justify-content: flex-start;
        align-items: flex-start;
    }
    
    h3.pop-title, h4.t-drecrip, 
    h4.title-recoment, h4.t-ingredient  {
    
        font-family: 'Roboto', sans-serif;
        color: #000000; 
        font-size: 10pt;
        font-weight: 500;
        letter-spacing: 0px;
    }
    
    h3.pop-title {
        font-size: 13pt;
    }
    
    p.parrafo-descript, div.p-recoment, div.list-ingredient p {
        list-style: none;
        font-family: 'Roboto', sans-serif;
        color: #515151;
        font-size: 8pt;
        font-weight: 400;
        letter-spacing: 0px;
        line-height: 120%;
        text-align: justify;
    }   
    
    div.mod-foto1,
    div.mod-foto2, 
    div.mod-foto3 
    { background-position: center; background-size: cover; grid-area: foto-cab;}
    
    div.mod-foto1 {
        background-image: url("../imagenes-index/sesion-menu-bebidas/Moscow-Mule.JPG");
    }
    
    div.mod-foto2 {
        background-image: url("../imagenes-index/sesion-menu-bebidas/Mojito.jpg");
    }

    div.mod-foto3 {
        background-image: url("../imagenes-index/sesion-menu-bebidas/Mojito.jpg");
    }

    div.title-pop {    
        align-items: center;
        justify-content: center;
        grid-area: title-pop;
    }
    
    div.title-descript {
        grid-area: t-descrip;
        
    }
    
    div.p-content {
        grid-area: p-descrip;
    }
    
    div.recoment-content {
        grid-area: t-sugeren;
    }
    
    div.p-recoment {
        grid-area: p-sugeren;
    }
    
    div.title-ingredient {
        grid-area: t-ingredt;
    }
    
    div.list-ingredient {
        grid-area: l-ingredt;
    }
    
    div.list-ingredient p {
        grid-area: p-sugeren;
    }
    
    
    @media screen and (min-width: 621px) and (max-width: 720px) {
    
        section.seccion-menu {
            background-color: #000000;
            height: 100%;
            width: 100%;  
            
        }
    
        .menu-contenedor {
            margin: 5px 0px 0px 0px;
            height: 100%;
    
        }
    
        .catg01-content {
            width: 100%;
            height: 340px;
        }
    
        .n-categ h2 {
    
            font-size: 1.2em;
    
            }
    
        .precio {
            font-size: 1.2em;
            }
        
        .simbolo-precio { 
            font-size: 8pt;
            
        }
    
        div.pop-contenedor {
            top: 140px;
            width: 300px;
            height: 500px;
        }
    
    
    }
    
    
    @media screen and (max-width: 620px) {
    
    
        body {
            background-color: #d5d5d5;
        }
    
    
        section.seccion-menu {
            background-color: #EDEEF0;
            height:100%;
        }
    
        .menu-contenedor {
            height: 100%;
            width: 100%;
            margin: 3px 0px 0px 0px;
        }
    
        .catg01-content {
            margin: 0px 0px;
            height: 340px;
            width: 100%;
            grid-template-rows: 80% 2% 15% 3%;
        }


        .n-categ h2 {
            font-size: 1.3em;
    
            }
    
        .precio {
            font-size: 1.3em;
    
            }
        
        .simbolo-precio { 
            font-size: 9pt;
            
        }
    
        div.pop-contenedor {
            top: 150px;
            width: 300px;
            height: 500px;
        }
        
    }
    
    
    @media screen and (max-width: 480px) {
    
        .catg01-content {
            height: 340px;
        }
    }
    
    @media screen and (max-width: 380px) {
        
        .catg01-content {
            height: 340px;
            grid-template-rows: 80% 2% 15% 3%;
        }
    
    }
    
    
    /* --------------- Lista de opciones menú Artisan Pizza ----------------- */
    
    
    div.box-lista {
        background-color: #ffffff;
        width: 100%;
        height: 65px;
        display: grid;
        margin-top: 1px;
        grid-template-columns: 5% 80% 10% 5%;
        grid-template-rows: 5% 50% 40% 5%;
        grid-template-areas: 
        "margenTop margenTop margenTop margenTop"
        "margenLeft tituloLista precioLista margenRight"
        "margenLeft descripcion descripcion margenRight"
        "margenButton margenButton margenButton margenButton";
    }
    
    h3.titulo-lista {
        display: flex;
        flex-flow: row nowrap;
        align-items: flex-end;
        justify-content: flex-start;
        gap: 3px;
        width: 100%;
        height: auto;
        font-family: 'Barlow Condensed', sans-serif;
        color: #000000;
        font-size: 1.1em;
        font-weight: 500;
        letter-spacing: 0px;
        text-align: left;
        grid-area: tituloLista;
    }
    
    div.box-precio-lista {
        display: flex;
        flex-flow: row nowrap;
        align-items: flex-end;
        justify-content: flex-end;
        gap: 3px;
        width: 100%;
        height: auto;
        grid-area: precioLista;
    }
    
    p.descripcion-lista {
        display: flex;
        flex-flow: row nowrap;
        align-items: center;
        justify-content: flex-start;
        width: 100%;
        height: auto;
        font-family: 'Roboto', sans-serif;
        color: #515151;
        font-size: 8pt;
        font-weight: 400;
        letter-spacing: 0px;
        line-height: 120%;
        text-align: left;
        grid-area: descripcion;
    }
    
    
    p.precio-lista {
        font-family: 'Barlow Condensed', sans-serif;
        color: #000000;
        font-size: 1.1em;
        font-weight: 500;
        letter-spacing: 0px;
        text-align: left;
    
    }
    
    p.simbolo-precioLista { 
        font-family: 'Barlow Condensed', sans-serif;
        color: #000000;
        font-size: 8pt;
        font-weight: 700;
        margin-bottom: 2px;
        justify-self: end;
    }


/* _______________________________________________________ */
/* inicia los stilos de "Section Etiqueta Iva" */

section.seccion-iva {
    height: 40px;
    width: 100%;
    background-color: #ffffff;
    margin-top: 1px;
}

div.box-etiqueta-iva {
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
    padding-top: 12px;
}

p.etiqueta-iva {
   
    font-family: 'Roboto', sans-serif;
    color: black;
    font-size: 11pt;
    font-weight: 400;
    letter-spacing: 0px;
    line-height: 120%;

}


/* _______________________________________________________ */
/* inicia los stilos de "Nav Menú Pie" */


section.menu-pie {
    position:fixed;
    bottom: 0px;
    margin-top: 1px;
    background-color: #ffffff;
    height: 40px;
    width: 100%;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
}

section.menu-pie nav {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: 1fr;
    grid-template-areas:
    "pie-1 pie-2 pie-3 pie-4";
    width: 340px;
    height: 80%;
}

section.menu-pie nav a {
    text-decoration: none;
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    justify-content: center;
}

section.menu-pie nav a img {
    display: block;
    width: 27px;
    height: auto;

}

.menu-qr {
    grid-area:pie-1;
}

.promo-dia {
    grid-area:pie-2;
}

.reservas {
    grid-area:pie-3;
}

.califica {
    grid-area:pie-4;
}

@media screen and (max-width: 720px) {
    
    section.menu-pie {
        position:sticky;
        bottom: 0px;
}

}

@media screen and (max-width: 360px) {

section.menu-pie nav  {
    width: 280px;
}

}

/* *{
    letter-spacing: normal;
} */