body 
{
  min-height: 100vh;
  width: 100%;
  font-family: Impact, Haettenschweiler, 'Arial Narrow Bold', sans-serif;
  background: linear-gradient(to right,
                            hsl(252, 90%, 5%) 40%,
                            hsl(0, 100%, 10%));
}

.container 
{
  width: 100%;
  display: flex;
  justify-content: center;
  padding-bottom: 1rem;
}

.produtos 
{
  width: 100%;
  display: flex;
}

.listaDeProdutos 
{
  display: flex;
  flex-flow: row wrap;
  flex-grow: 1;
  justify-content: center;
}

.itemBox 
{
  width: 15rem;
  margin: 2rem;
  text-align: center;
  display: flex;
  flex-flow: column nowrap;
  color: hsl(0, 0%, 100%);
  background-color: hsla(0, 0%, 100%, 0.05);
  border: .1rem solid hsl(252, 90%, 5%);
  border-radius: 0 0 1rem 1rem;
}

.itemBox:hover 
{
  background-size: 400% 400%;
  background-color: hsla(0, 0%, 100%, 0.1);
  border-color: hsl(0, 0%, 100%);
  animation: hovering 5s ease infinite;
  transition: ease 1s;
}

.itemBox :not(img)
{
  margin-bottom: .25rem;
}

.itemBox img 
{
  width: 100%;
  height: 12rem;
}

.itemBox img:hover 
{
  transform: scale(1.2);
  transition: all ease 3s;
  border-radius: 2rem;
  cursor: none;
}

.categoria 
{
  width: 50%;
  padding: .4rem .2rem;
  background-color: hsl(251, 65%, 20%);
  text-align: center;
  border-radius: 0 0 1rem 0;
}

.nomeDoProduto 
{
  padding: .2rem;
  background-color: hsl(0, 0%, 10%);
  font-size: 1.25rem;
  font-weight: bold;
}

.descricaoDoProduto 
{
  display: inline-flex;
  align-items: center;
  min-height: 5rem;
  padding: 0 .5rem;
  color: hsl(0, 0%, 100%);
  border: solid hsl(0, 0%, 20%);
  background-color: hsl(0, 0%, 20%);
  border-width: .3rem 0;
}

.valorDoProduto 
{
  background-color: hsl(251, 70%, 25%);
}

.adicionarAoCarrinho:hover 
{
  color: hsl(123, 100%, 35%);
  transition: .75s;
  cursor: pointer;
}

.hidden
{
  display: none!important;
}