*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html{
    height: 100%;
    font-size: 62.7%;
}
body{
    min-height: 100%;
    background-color: #EFEFEF;
}

/* header - cabecera */
header{
    padding-top: 1%;
    position: fixed;
    width:100%;
    display: grid;
    grid-template-columns: 20% 50% 30%;
    grid-template-rows: 100%;
    height: 13%;
    background-color: #EFEFEF;
}
header .imagen_logo{
    width: 15vw;
    height: 100%;
    text-align: end;
    margin-top: 5%;
    margin-left: 5%;
}
.imagen_logo >a img{
    max-width: 100vw;
    min-width: 18vw;
    max-height: 10vh;
    min-height: 10vw;
}
header h1{
    margin-left: 2%;
    text-align: start;
    align-self:center;
    font-size: 2rem;
    font-weight: bold;
}
header h1 a{
    text-decoration: none;
    color: black;

}
header button{
    position: fixed;
    right: 5%;
    top: 3%;
    border: none;
    background: none;
}
.nav-toggle>span{
    font-size: 4rem;
}

nav >ul{
    flex-direction: column;
    align-items: center;
    position: fixed;
    top:13%;
    width: 100%;
    background-color: #4582A8;
    left: 100%;
    transition: left 0.3s;
    height: calc(100% - 13%);
}
nav li{
    padding: 3%;
    margin-top: 10%;
    list-style: none;
    text-align: center;
}
nav li>a{
    text-decoration: none;
    font-size: 3rem;
    color: white;
    font-weight: bold;
}
nav li>a:hover{
    border-bottom: .2em solid white;
    text-decoration: line-through #4582A8;
}
.inicio{
    border-bottom: .2em solid white;
}
.nav-menu_visible{
    left: 0;
}

/* main - contenido principal */
main{
    padding-top: 25%;
}
main h2{
    text-align: center;
    font-size: 2.5rem;
    font-weight: bold;
    margin-bottom: 2%;
    color: #004AAD;
    text-decoration: underline;
}
main p{
    text-align: center;
    font-size: 1.5rem;
    margin: 0 5% 2%;
    font-weight: bold;
}

main div{
    margin: 1%;
}
/* Ssecion 01*/
main .div01{
    width: 98%;
    height: calc(100vh - 62vh);
    display: grid;
    grid-template-columns: 50% 50%;
    grid-template-rows: 100% ;
}

main .div01 .bebidas{
    background-color: rgb(223, 231, 236);
}

.div01 section{
    border: .1em solid black;
    margin: 2% 1%;
    padding: 2% 1%;
    border-radius: .5em;
}
main .div01 section:hover{
    background-color: crimson;
    color: white;
    transition: all .7s;
}
main .div01 section:hover a{
    background-color: white;
    color: black;
}

.div01 section p{
    font-size: 2rem;
    margin: 3% auto;
}

.div01 section img{
    width: 100%;
    height: calc(100% - 40%);
    border-radius: .5em;
    object-fit: fill;
}
.div01 section a{
    display: block;
    font-size: 1.3rem;
    text-align: center;
    text-decoration: none;
    margin:  3% 20%;
    padding: 3% 0;
    border-radius: .5em;
    background-color: #4582A8;
    color: white;
}
main .div01 section a:hover{
    color: white;
    transition: all .5s;
    box-shadow: 350px 0 #4582A8 inset,
                -350px 0 #4582A8 inset;
}
/* Seccion 01*/
main .div02{
    width: 98%;
    height: 180vh;
}
main .div02 >p{
    font-size: 2rem;
    border-bottom: .1em solid #004AAD;
    margin: 1% 15%;
}

.div02 section {
    display: grid;
    grid-template-columns: 50% 50%;
    width: 100%;
    height: 170vh;
    margin: 3% 0;
}
.div02 section >div{
    margin: 5% 2%;
    border: .1em solid black;
    padding: 5% 1%;
    background-color: burlywood;
}
.div02 div:hover{
    background-color: lightblue;
    transition: all .5s;
    color: black;
}
section div img{
    width: 100%;
    height: 20vh;
    margin: 5% 0;
}
section div h3{
    font-size: 1.8rem;
    text-align: center;
    color: rgb(222, 2, 2);
    text-shadow: 0.1rem 0.1rem 0.1rem rgb(0 0 0);
}
section div h4{
    font-size: 1.5rem;
    text-align: center;
    color: #004AAD;
    margin: 3% 0;
}
section div p{
    font-size: 1.2rem;
    text-align:justify;
    height: 50vh;
}

section div b{
    font-size: 1.4rem;
    color: blue;
}

/* tablet */
@media (min-width:768px) and (max-width:1023px){
    header{
        height: 15%;
    }
    nav >ul{
        top:15%;
        height: calc(100% - 15%);
    }

    header a .imagen_logo{
        margin-top: 5%;
        margin-left: 13%;
    }

    header h1{
        text-align: start;
        align-self:center;
        margin-left: 0;
        font-size: 3.6rem;
    }
    .nav-toggle>span{
        font-size: 6rem;
    }
    /* main - contenido principal */

main{
    padding-top: 20%;
}
main h2{
    font-size: 4rem;
}
main p{
    font-size: 2rem;
}

/* Ssecion 01*/
main .div01{
    height: calc(100vh - 50vh);
}
.div01 section p{
    font-size: 3.5rem;
}

.div01 section img{
    height: calc(100% - 30%);
}
.div01 section a{
    font-size: 2.5rem;
}

/* Ssecion 01*/
main .div02{
    width: 98%;
    height: 180vh;
}
main .div02 >p{
    font-size: 4rem;
}

.div02 section {
    height: 250vh;
}

section div img{
    height: 25vh;
}
section div h3{
    font-size: 3.5rem;
}
section div h4{
    font-size: 3rem;
}
section div p{
    font-size: 2.5rem;
}

section div b{
    font-size: 2.9rem;
}
}


/* pc */
@media (min-width:1024px){
    /* header - cabecera */
    header{
        padding-top: 3%;
        display:grid;
        height: 25%;
        grid-template-columns: 20% 28% 52%;
    }
    header .imagen_logo{
        margin-top: 0;
        margin-left: 25%;
    }
    .imagen_logo > a img{
        margin-top: -7%;
        max-width: 10vw;
        min-width: 10vw;
        min-height: 10vw;
    }
    header>h1{
        font-size: 5rem;
    }

    .nav-toggle{
        display: none;
    }
    nav{
        position: relative;
        align-self: center;
    }
    nav ul{
        position: absolute;
        left: 0;
        padding:0;
        margin: 0;
        height: 0;
    }
    nav ul >li{
        background: none;
        right: 0;
        padding:0;
        margin-top: -3%;
        margin-right: 5%;
        display: inline-block;
    }
    nav ul li>a{
        font-size: 3rem;
        color: black;
        font-weight: bold;
    }
    .inicio{
        color: #004AAD;
        border-bottom: .2em solid #004AAD;
    }
    nav li>a:hover{
        color: #004AAD;
        border-bottom: .2em solid #004AAD;
    }

    /* main - contenido principal */
    main{
        padding-top: 15%;
    }
    main h2{
        font-size: 5rem;
    }
    main p{
        font-size: 2.5rem;
    }
    
    main div{
        margin: 0 1%;
        display: inline-flexbox;
        width: 98%;
    }

    /* DIV 01 - ESCOGER OPCIONES */
    main .div01{
        display: inline-block;
        width: 28%;
        height: 120vh;
    }
    main .div01 section{
        margin: 15% 0;
    }

    main .div01 p{
        font-size: 3rem;
    }
    main .div01 img{
        width: 96%;
        margin: 0 2%;
    }
    main .div01 a{
        font-size: 2.5rem;
    }

    /* DIV 02 - PRODUCTOS */
    main .div02 {
        float: right;
        width: 68%;
        height: 100vh;
    }
    main .div02 >p{
        font-size: 3rem;
    }

    .div02 section {
        display: grid;
        grid-template-columns: 33% 33% 33%;
        width: 100%;
        height: 120vh;
        margin: 0;
    }
    .div02 section >div{
        margin: 1% 2.5%;
        border: .1em solid black;
        padding: 5% 1%;
        height: 90vh;
    }

    section div h3{
        font-size: 3.5rem;
        text-align: center;
    }

    section div img{
        object-fit: fill;
        border-radius: 1rem;
        width: 90%;
        height: 30vh;
        margin: 3% 5% 2%;
    }
    
    section div h4{
        font-size: 3rem;
        margin: 0;
    }
    section div p{
        font-size: 2rem;
        height: 50vh;
    }
    
    section div b{
        font-size: 2.5rem;
    }
}



