:root {
    --colorRojo: red;
    --colorNegro: black;
    --colorBlanco: white;
    --colorRosaPastel: #ffafcc;
    --colorGrisClaro: #adb5bd;
    --colorCeleste: #219ebc;

    --letraPrincipal: 'Roboto', sans-serif;
    --letraSecundaria: 'Lobster', cursive;
}

html {
    box-sizing: border-box;
}

*,
*:before,
*:after {
    box-sizing: inherit;
}

body {
    font-size: 62.5%;
    font-family: var(--letraPrincipal);
}

.container {
    max-width: 100rem;
    margin: 0 auto;
    padding: 1rem 2rem;
}

.img-flex {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 2rem 0 1rem;
}

.img-logo {
    height: 14rem;
    width: 14rem;
}

.title {
    color: var(--colorRojo);
    font-size: 3rem;
    margin: 1rem 0;
    text-align: center;
}

.section {
    margin: 0 auto;
    max-width: 80;
}

.title-secund {
    font-size: 2rem;
    font-weight: 700;
    text-align: center;
    margin: 0 0 2rem;
}

.grid-categoria {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    align-items: center;
    gap: 1rem;
}


@media (max-width: 680px) { 
    .grid-categoria {
        padding: 0 6rem;
    }
}

@media (max-width: 480px) {
    .grid-categoria {
        padding: 0 .5rem;
    }
}

@media (min-width: 684px) { 
    .grid-categoria {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 968px) {
    .grid-categoria {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (min-width: 1110px) {
    .grid-categoria {
        grid-template-columns: repeat(5, 1fr);
    }
}

/* .grid-categoria {
    gap: 2rem;    
} */

.card {    
    display: flex;
    flex-direction: column;
    text-align: center;
    align-items: center;
    border: 2px solid var(--colorGrisClaro);
    padding: 1rem 0;
    border-radius: .8rem;
}

@media (min-width: 668px) { 
    .card {
        padding: 1rem;
    }
}

.img-card {
    height: 14rem;
}

.btn {
    font-size: 1.4rem;
    text-decoration: none;
    margin-top: 1rem;
    background-color: var(--colorRosaPastel);
    width: 95%;
    padding: 1rem;
    border-radius: .4rem;
    color: var(--colorNegro);
    transition: .5s;
}

@media (min-width: 668px) { 
     .btn {
        padding: .6rem 1rem;
     }
}

.btn:hover {
    background-color: #ff9eac;
    transform: scale(1.1);
}

.producto-grid {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    align-items: center;
    gap: 2rem;
    text-align: center;
    padding: 2rem;
}

@media (min-width: 568px) { 
    .producto-grid {
            grid-template-columns: repeat(2, 1fr);
        }
}

@media (min-width: 768px) { 
    .producto-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (min-width: 1110px) { 
    .producto-grid {
            grid-template-columns: repeat(4, 1fr);
        }
}

.img-producto {
    height: 18rem;
}

.precio, .tallas, .tonos {
    text-align: center;
    font-weight: 700;
    color: var(--colorNegro);
    font-size: 1.5rem;
    margin: .5rem 0;
}

.precio span, .tallas span, .tonos span {
    color: var(--colorCeleste);
    text-transform: uppercase;
}

.tonos span {
    font-size: 1.2rem;
}

.border-bottom {
    border: 1px solid var(--colorGrisClaro);
    margin-top: 1rem;

    border-radius: .5rem;
}

.categoria-flex {
    display: flex;
    align-items: center;
    gap: 1rem;
    justify-content: center;
    flex-direction: column;
}

@media (min-width: 1110px) { 
    .categoria-flex {
        flex-direction: row;
        gap: 2rem;
    }
}

.categoria-title {
    font-size: 1.6rem;
    font-weight: 700;
}

.categoria-select {
    padding: .8rem 2rem;
    font-size: 1.2rem;
    font-weight: 700;
    background-color: var(--colorRosaPastel);
    border: 1px solid var(--colorNegro);
    border-radius: .8rem;
    width: 100%;
}

@media (min-width: 668px) { 
    .categoria-select {
        width: 20rem;
    }
}

.footer {
    color: var(--colorRojo);    
    font-size: 2rem;
    font-family: var(--letraSecundaria);
    padding: 1rem;
    text-align: center;
}

.whatss {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.whatss p {
    font-size: 1.5rem;
    font-weight: 700;
    text-align: center;
}

/* Button subir */
.go-top-container {
    position: fixed;
    bottom: 0rem;
    right: 0rem;
    width: 3rem;
    height: 3rem;
    z-index: -1;
}

.go-top-button {
    width: 0rem;
    height: 0rem;
    background-color: var(--colorRojo);
    border-radius: 50%;
    cursor: pointer;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: -1;
    opacity: 0.7;
}

.go-top-button .icon {
    position: absolute;
    top: 48%;
    left: 50%;
    transform: translate(-50%, -50%) scale(0);
    transition: .3s;
}

.show {
    z-index: 10;
}

.show .go-top-button {
    animation: popup .3s ease-in-out;
    width: 3rem;
    height: 3rem;
    z-index: 11;
}

.show .icon {
    transform: translate(-50%, -50%) scale(1);
}

@keyframes popup {
    0% {
        width: 0rem;
        height: 0rem;
    }

    50% {
        width: 8rem;
        height: 8rem;
    }

    100% {
        width: 6.6rem;
        height: 6.6rem;
    }
}