@import url('https://fonts.googleapis.com/css2?family=Chango&display=swap');
:root {
    font-family: Verdana, Geneva, Tahoma, sans-serif;
    --verde: #00a38d;
    --blanco: white;
    --negro: #000;
    --grisclaro: #f3f3f3;
    --grisoscuro: rgb(199, 199, 199);
}

body {
    display: grid;
    margin: 0px;
    padding: 0px;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    grid-template-rows: 75px auto 100px;
    grid-template-areas: 'header header header header header' 'menu main main main main' ' footer footer footer footer footer';
    min-height: 100vh;
}

header {
    background-color: var(--verde);
    color: var(--blanco);
    grid-area: header;
    padding: 15px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    justify-content: space-around;
    align-content: center;
    font-family: 'Chango', cursive;
}

header #botonmenu {
    display: none;
    font-size: 2em;
}

header div {
    max-width: 100%;
    align-self: center;
    text-align: right;
}

header div input {
    padding: 4px;
    border-radius: 8px;
    border: 1px var(--grisclaro) solid;
    width: 75%;
    font-size: 1.3em;
}

#menu {
    grid-area: menu;
    background-color: var(--grisclaro);
    color: var(--verde);
}

#menu ul {
    margin: 0px;
    padding: 0px;
}

#menu>ul>li {
    list-style: none;
    border-bottom: 1px var(--grisoscuro) solid;
}

#menu>ul>li:last-child {
    border-bottom: 0;
}

#menu ul li a {
    color: inherit;
    display: block;
    text-decoration: none;
    font-size: 1.2em;
    padding: 10px;
}

#menu ul li a:hover {
    background-color: var(--verde);
    color: var(--grisclaro);
}

main {
    grid-area: main;
    background: rgba(226, 226, 226, 1);
    background: -moz-linear-gradient(top, rgba(226, 226, 226, 1) 0%, rgba(209, 209, 209, 1) 5%, rgba(219, 219, 219, 1) 7%, rgba(254, 254, 254, 1) 56%, rgba(254, 254, 254, 1) 100%);
    background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(226, 226, 226, 1)), color-stop(5%, rgba(209, 209, 209, 1)), color-stop(7%, rgba(219, 219, 219, 1)), color-stop(56%, rgba(254, 254, 254, 1)), color-stop(100%, rgba(254, 254, 254, 1)));
    background: -webkit-linear-gradient(top, rgba(226, 226, 226, 1) 0%, rgba(209, 209, 209, 1) 5%, rgba(219, 219, 219, 1) 7%, rgba(254, 254, 254, 1) 56%, rgba(254, 254, 254, 1) 100%);
    background: -o-linear-gradient(top, rgba(226, 226, 226, 1) 0%, rgba(209, 209, 209, 1) 5%, rgba(219, 219, 219, 1) 7%, rgba(254, 254, 254, 1) 56%, rgba(254, 254, 254, 1) 100%);
    background: -ms-linear-gradient(top, rgba(226, 226, 226, 1) 0%, rgba(209, 209, 209, 1) 5%, rgba(219, 219, 219, 1) 7%, rgba(254, 254, 254, 1) 56%, rgba(254, 254, 254, 1) 100%);
    background: linear-gradient(to bottom, rgba(226, 226, 226, 1) 0%, rgba(209, 209, 209, 1) 5%, rgba(219, 219, 219, 1) 7%, rgba(254, 254, 254, 1) 56%, rgba(254, 254, 254, 1) 100%);
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#e2e2e2', endColorstr='#fefefe', GradientType=0);
}

main h1 {
    color: var(--verde);
    border-bottom: 1px solid var(--verde);
    text-align: right;
    padding: 10px;
    margin: 10px;
}

main article {
    padding: 15px;
}

main article section {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
}

main article section img {
    width: 28%;
    margin: 1em;
    border-radius: 6px;
}

main #productos {
    display: grid;
    grid-gap: 30px;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    list-style: none;
    justify-content: space-evenly;
    align-content: space-around;
    margin: 0px;
    padding: 15px;
}

main #productos li {
    padding: 6px;
    border: 1px solid var(--grisclaro);
    border-radius: 10px;
    max-width: 100%;
}

main #productos li article {
    height: 90%;
    display: grid;
    grid-template-columns: 1fr;
    justify-content: space-around;
}

main #productos li:hover {
    /* border: 2px solid var(--verde); */
    -webkit-box-shadow: 0px 0px 18px 0px rgba(0, 163, 141, 1);
    -moz-box-shadow: 0px 0px 18px 0px rgba(0, 163, 141, 1);
    box-shadow: 0px 0px 18px 0px rgba(0, 163, 141, 1);
}

main #productos li img {
    display: block;
    max-width: 100%;
    border-radius: 10px;
    max-height: 135px;
    margin: auto;
}

main #productos li .detalle {
    display: flex;
    justify-content: space-around;
    align-content: center;
}

main #productos li .detalle .detalle1 {
    align-self: center;
}

main #paginacion ul {
    display: grid;
    grid-gap: 30px;
    list-style: none;
    grid-template-columns: 1fr 1fr;
    justify-content: space-evenly;
    align-content: center;
    margin: 0px;
    padding: 0px;
}

main #paginacion ul li {
    align-self: center;
    text-align: center;
}

footer {
    grid-area: footer;
    background-color: var(--negro);
    color: var(--grisclaro);
}

footer nav {
    height: 100%;
}

footer nav ul {
    height: 100%;
    margin: 0px;
    padding: 0px;
    display: flex;
    justify-content: center;
    align-content: center;
    align-items: center;
    justify-items: center;
}

footer ul li {
    list-style: none;
    display: block;
    padding: 20px;
}

footer ul li a {
    color: inherit;
    text-decoration: none;
}

.precio {
    font-size: 1.4em;
    color: var(--verde);
}

.boton {
    display: block;
    padding: 5px;
    font-size: 1.4em;
    border-radius: 3px;
    border: none;
    color: var(--blanco);
    background-color: var(--verde);
}

.boton:hover {
    border: 1px solid var(--verde);
    background-color: var(--grisclaro);
    color: var(--verde);
}

.boton a {
    text-decoration: none;
    color: inherit;
}

.centrar {
    margin: auto;
}

.respirar {
    margin-top: 15px;
    margin-bottom: 15px;
}

@media screen and (max-width: 640px) {
    body {
        grid-template-columns: 1fr;
        grid-template-rows: 75px auto auto auto;
        grid-template-areas: 'header' 'menu' 'main' 'footer';
    }
    header #botonmenu {
        display: block;
    }
    header h1 {
        display: none;
    }
    #menu {
        display: none;
    }
    main article section img {
        width: 70%;
    }
    main #productos {
        grid-template-columns: 1fr;
    }
    main #productos li {
        border: 1px var(--verde) solid;
    }
    main #productos li img {
        max-height: 375px;
        width: 85%;
    }
    footer nav ul {
        flex-direction: column;
    }
}

@media screen and (min-width: 640px) and (max-width: 1200px) {
    main #productos {
        grid-template-columns: 1fr 1fr;
    }
}