/*Fontes*/
@import url('https://fonts.googleapis.com/css2?family=New+Amsterdam&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

/*Atributos*/
* {

    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {

    font-family: 'Poppins', sans-serif;
}

.bordado {


    text-shadow:
        1px 1px 0 #fff,
        -1px 1px 0 #fff,
        -1px -1px 0 #fff,
        1px -1px 0 #fff;


}

h1 {

    font-size: 2.5rem;
    font-weight: 700;
    color: white;
    background-color: #0059C4;
    display: inline-block;
}

h2 {

    font-size: 1.8rem;
    font-weight: 600;
}

h3 {
    font-size: 1.5rem;
    font-weight: 800;

}

h4 {
    font-size: 1.2rem;
    font-weight: 600;

}

h5 {
    font-size: 0.95rem;
    font-weight: 400;

}


h6 {

    color: #00bac0;

}



button {

    font-size: 0.8rem;
    font-weight: 900;
    outline: none;
    border: none;
    background-color: #1d1d1d;
    color: aliceblue;
    padding: 13px 30px;
    text-transform: uppercase;
    cursor: pointer;
    transition: 0.5s ease;

}

button:hover {

    background-color: coral;
}




.star {
    padding: 10px 0;
}

.star i {
    font-size: 0.9rem;
    color: goldenrod;

}


.logo {
    height: 70px;
    width: 140px;
}



/*Products*/
.product {

    cursor: pointer;
    margin-bottom: 2rem;
}


.product img {

    transition: 0.3s all;
}

.product:hover img {

    opacity: 0.7;

}

.buy-btn{
    text-decoration: none;
    color: black;
}


/*Responsividade para ecras medios*/
@media (min-width: 576px) {
    .reduzir {
        flex: 0 0 auto;
        width: 25%;
        
    }

    
}


/*Responsividade para pequenos*/
@media (max-width: 476px) {

    .reduzir {
        flex: 0 0 auto;
        width: 50%;

    }

    h1{

        font-size: 2.2rem;
        font-weight: 600;
    }

    h2 {

        font-size: 0.9rem;
        font-weight: 600;
    }

    h3 {

        font-size: 1rem;
        font-weight: 600;
    }

    h4 {
        font-size: 0.9rem;
        font-weight: 600;
    
    }

    h5 {
        font-size: 0.5rem;
        font-weight: 600;
    
    }

    /*PRODUTO*/
    .product img {
        width: 80%;
        
    }
    
    

    /*ESTRELAS*/
    .star {
        padding: 3px 0;
    }

    .star i {
        font-size: 0.4rem;
        color: goldenrod;
    }

    p{

        font-size: 11px;
    }

}

a{

    text-decoration: none;
}










/* =============== Absolute Center Spinner ===============*/

div#loading{
	display: none;
}


#loading{

    position: fixed;
    z-index: 999;
    
    height: 2em;
    width: 2em;

    overflow: show;

    /*CENTRALIZANDO O ELEMENTO*/
    margin: auto;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;

    display: none;
   
}


/* Transparent Overlay */
#loading:before{
    
    content: '';
    display: block;
    position: fixed;
    
    top: 0;
    left: 0;

    height: 100%;
    width: 100%;


    background: radial-gradient( rgba(20, 20, 20, .8) , rgba(0, 0, 0, .8));
}



/* :not(:required) hides these rules from IE9 and below */
#loading:not(:required){

    /* hide "loading..." text */

    font: 0/0 a;
    color: transparent;
    text-shadow: none;
    background-color: transparent;
    border: 0;


}

#loading:not(:required):after{

    content: '';
    display: block;
    
    font-size: 10px;
    
    height: 1em;
    width: 1em;
    margin-top: -0.5em;

    animation: spinner 2s infinite linear;
    border-radius: 0.5em;
    box-shadow: rgba(255, 255, 255, 0.75) 1.5em 0 0 0, rgba(255, 255, 255, 0.75) 1.1em 1.1em 0 0, rgba(255, 255, 255, 0.75) 0 1.5em 0 0, rgba(255, 255, 255, 0.75) -1.1em 1.1em 0 0, rgba(255, 255, 255, 0.75) -1.5em 0 0 0, rgba(255, 255, 255, 0.75) -1.1em -1.1em 0 0, rgba(255, 255, 255, 0.75) 0 -1.5em 0 0, rgba(255, 255, 255, 0.75) 1.1em -1.1em 0 0;


}


/* Animation */
@keyframes spinner {
    0% {
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    
    100% {
        -webkit-transform: rotate(360deg);
        -moz-transform: rotate(360deg);
        -ms-transform: rotate(360deg);
        -o-transform: rotate(360deg);
        transform: rotate(360deg);


    }
}






/* =============== End Absolute Center Spinner ===============*/



.image-wrapper {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.image-skeleton {
  width: 100%;
  padding-top: 100%; /* mantém proporção quadrada */
  background: linear-gradient(90deg, #f0f0f0 25%, #e2e2e2 37%, #f0f0f0 63%);
  background-size: 400% 100%;
  animation: loading 1.2s ease-in-out infinite;
  border-radius: 10px;
}

.product-img {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 10px;
  opacity: 0;
  transition: opacity 0.4s ease-in-out;
}

@keyframes loading {
  0% {
    background-position: 100% 0;
  }
  100% {
    background-position: -100% 0;
  }
}
.product-img.loaded {
  opacity: 1;
}