/* Reset e base */
*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

body {
  font-family: "Segoe UI", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.6;
  color: #111;
  background-color: #fefefe;
}

.hero {
  height: 100vh;
  /*altura da tela. O vh significa Viewport Height. Se o usuário girar o celular ou abrir em um monitor gigante, ele sempre ocupará exatamente metade da altura da tela visível.*/
  background-image: url("../img.jpg/homenss3.jpg");
  background-size: cover;
  background-position: 50% -100px;
  background-repeat: no-repeat;
  /*garante que a imagem de fundo não se repita, mesmo que a tela seja maior do que a imagem*/
  display: flex;
  justify-content: center;
  /*alinha o conteúdo horizontalmente ao centro do contêiner usando Flexbox*/
  align-items: center;
  /*alinha o conteúdo verticalmente ao centro do contêiner usando Flexbox*/
  text-align: center;
}

.galeria {
  display: grid;
  grid-template-columns: 1fr 1fr;
  /*duas colunas de largura iguais, cada uma ocupando metade do espaço disponível*/
  gap: 10px;
  /*espaçamento entre as colunas e linhas da grade*/
}

.galeria figure {
  overflow: hidden;
  /*garante que as imagens não ultrapassem os limites do contêiner*/
}

.galeria figure img {
  width: 100%;
  height: 500px;
  object-fit: cover;
  /*garante que a imagem preencha completamente o contêiner, cortando as partes que ultrapassarem os limites*/
  object-position: top center;
  /* Prioriza mostrar o topo da imagem antes de cortar */
  display: block;
  transition:
    transform 0.3s,
    opacity 0.3s;
}

.galeria figure:hover img {
  transform: scale(1.06);
  /*aumenta a imagem em 6% quando o mouse passa por cima, criando um efeito de zoom suave*/
  opacity: 0.82;
}

nav {
  background-color: #fefefe;
  padding: 10px;
  text-align: center;
  position: sticky;
  /*faz com que a barra de navegação fique fixa no topo da página quando o usuário rolar para baixo, garantindo que ela esteja sempre visível*/
  top: 0;
  z-index: 1000;
  /*garante que a barra de navegação fique acima de outros elementos da página, evitando que seja sobreposta por eles*/
}

.icons {
  position: relative;
  margin-top: -28px;
  margin-left: 1150px;
}

.fa-solid {
  font-size: 16px;
}

a {
  text-decoration: none;
  color: #111;
  font-size: 15px;
  font-family: Verdana, Geneva, Tahoma, sans-serif;
  font-size: 13px;
}

nav a {
  color: #111;
  text-decoration: none;
  padding: 8px 16px;
  border-radius: 6px;
  font-weight: 700;
  font-family: "Times New Roman", Times, serif;
  transition: background 0.2s;
}

nav a:hover {
  background: #e7e6e6;
}

main {
  margin: 0 auto;
  /* Centraliza o bloco na tela */
  max-width: 100%;
}

.main_shop {
  max-width: 900px;
  margin: 0 auto;
  /* Centraliza o bloco na tela */
}

.galeria h2 {
  grid-column: 1 / -1;
  /*faz o título ocupar toda a largura da grade, garantindo que ele fique acima das imagens*/
  font-size: 40px;
  font-weight: 100;
  font-family: "Times New Roman", Times, serif;
  color: #111;
  text-align: center;
  margin-top: 20px;
}

.galeria p {
  color: #111;
  margin-bottom: 30px;
  grid-column: 1 / -1;
  /*faz o parágrafo ocupar toda a largura da grade, garantindo que ele fique abaixo do título e das imagens*/
  text-align: center;
  font-family: "Times New Roman", Times, serif;
  font-weight: 100;
}

figcaption {
  position: relative;
  bottom: 100px;
  left: 200px;
  color: #fefefe;
  font-family: "Times New Roman", Times, serif;
  font-size: 30px;
  font-weight: 100;
}

h3 {
  /*footer*/
  display: inline-block;
  font-size: 13px;
  font-family: Verdana, Geneva, Tahoma, sans-serif;
}

footer {
  background-color: #e7e6e6;
  color: #111;
  text-align: center;
  padding: 20px 0;
  height: max-content;
  margin-top: 200px;
}

.icon {
  margin: 16px;
}


.btn_shop {
  position: relative;
  /* Permite posicionar o botão em relação ao seu contêiner pai (figure) */
  bottom: 100px;
  left: 290px;
  border: 0;
  background: 0;
  /* Remove o fundo do botão para que ele fique transparente */
  cursor: pointer;
  color: #fefefe;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 15px;
  font-weight: 700;
  text-decoration: underline;
  /*adiciona um sublinhado ao texto do botão*/
  text-underline-offset: 8px;
  /*dá um espaço entre a linha e o texto*/
}

.galeria_shop {
  display: grid;
  grid-template-columns: repeat(auto-fit,
      minmax(250px, 1fr));
  /*o repeat com minmax fica responsivo (3 colunas no PC, menos no celular) */
  gap: 20px;
  /*espaçamento entre as colunas e linhas da grade*/
}

.galeria_shop figure {
  overflow: hidden;
  /*garante que as imagens não ultrapassem os limites do contêiner*/
}

.galeria_shop figure img {
  width: 100%;
  height: 300px;
  object-fit: cover;
  /*garante que a imagem preencha completamente o contêiner, cortando as partes que ultrapassarem os limites*/
  object-position: center;
  display: block;
  transition:
    transform 0.3s,
    opacity 0.3s;
}

.galeria_shop figure:hover img {
  transform: scale(1.06);
  /*aumenta a imagem em 6% quando o mouse passa por cima, criando um efeito de zoom suave*/
  opacity: 0.82;
}

.h2_shop {
  grid-column: 1 / -1;
  /*faz o título ocupar toda a largura da grade, garantindo que ele fique acima das imagens*/
  font-size: 50px;
  font-weight: 100;
  margin-top: 80px;
  font-family: "Times New Roman", Times, serif;
  color: #111;
  text-align: center;
  margin-bottom: 0;
}

.descricao {
  color: #111;
  display: inline-block;
  width: 100%;
  text-align: center;
  padding: 15px 0;
  background-color: #fefefe;
  /* Fundo sólido se quiser separar da página */
  color: #111;
  font-family: "Times New Roman", Times, serif;
  font-size: 13px;
  text-transform: capitalize;
  /*deixa o texto em maiusculo*/
  letter-spacing: 2px;
  /*da espaço entre as letras*/
  position: static;
}

.p_shop {
  color: #111;
  grid-column: 1 / -1;
  /*faz o parágrafo ocupar toda a largura da grade, garantindo que ele fique abaixo do título e das imagens*/
  text-align: center;
  font-family: "Times New Roman", Times, serif;
  font-weight: 100;
  margin-top: -30px;
  text-decoration: underline;
  text-underline-offset: 8px;
  /*dá um espaço entre a linha e o texto*/
}

.galeria_mais1 {
  display: grid;
  margin: 100px;
  grid-template-columns: repeat(auto-fit,
      minmax(250px, 1fr));
  /*o repeat com minmax fica responsivo (3 colunas no PC, menos no celular) */
  gap: 10px;
  /*espaçamento entre as colunas e linhas da grade*/
}

.galeria_mais1 figure {
  overflow: hidden;
  /*garante que as imagens não ultrapassem os limites do contêiner*/
}

.galeria_mais1 figure img {
  width: 100%;
  height: 400px;
  object-fit: cover;
  /*garante que a imagem preencha completamente o contêiner, cortando as partes que ultrapassarem os limites*/
  object-position: center;
  display: block;
  transition:
    transform 0.3s,
    opacity 0.3s;
}

.galeria_mais1 figure:hover img {
  transform: scale(1.06);
  /*aumenta a imagem em 6% quando o mouse passa por cima, criando um efeito de zoom suave*/
  opacity: 0.85;
}

.categorias {
  grid-column: 1 / -1;
  /*faz o título ocupar toda a largura da grade, garantindo que ele fique acima das imagens*/
  font-size: 30px;
  font-weight: 100;
  margin-top: 20px;
  font-family: "Times New Roman", Times, serif;
  color: #111;
  text-align: center;
}

.liked {
  position: relative;
  /* Permite posicionar o botão em relação ao seu contêiner pai (figure) */
  bottom: 290px;
  left: 250px;
  color: #000000;
  opacity: 0.50;
  transition:
    opacity 0.50s;
}

.liked:hover {
  opacity: 1;

}

input,
select,
textarea {
  width: 100%;
  margin: 20px;
  padding: 10px 14px;
  border: 1px solid #111;
  border-radius: 8px;
  font-size: 1rem;
  font-family: inherit;
  transition: border-color .2s, box-shadow .2s;
}

input:focus,
select:focus,
textarea:focus {
  outline: none;
  border-color: #111;
  box-shadow: 0 0 0 3px rgba(207, 233, 93, 0.282);
}

.legenda {
  text-align: center;
  font-size: 30px;
  font-family: "Times New Roman", Times, serif;
  margin: 15px;

}

.campo p {
  font-size: 16px;
  width: 850px;
  margin: 0 auto;
  margin-bottom: 80px;
}

.campo a {
  color: #762929;
  text-decoration: underline;
}

.campo {
  margin: 30px;
  font-family: "Times New Roman", Times, serif;
}

fieldset {
  border: none;
  margin: 50px auto;
  width: 400px;
}

.campo span {
  display: flex;
  color: #762929;
  justify-content: flex-end;
}

label {
  font-weight: 500;
  font-size: 16px;
}

button {
  width: 100px;
  height: 30px;
  margin-left: 30px;
  border: 1px solid;
  border-radius: 4px;
}

button:hover {
  background-color: #a5a5a5;
}

.botoes {
  display: flex;
  justify-content: center;

}

.botao_cor {
  background-color: rgb(174, 252, 164);
}

table {
  margin: 100px auto;

}

caption {
  font-size: 30px;
  margin-bottom: 30px;
  font-family: "Times New Roman", Times, serif;
  width: 500px;
}
/* Reset e base */
*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

body {
  font-family: "Segoe UI", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.6;
  color: #111;
  background-color: #fefefe;
}

.hero {
  height: 100vh;
  /*altura da tela. O vh significa Viewport Height. Se o usuário girar o celular ou abrir em um monitor gigante, ele sempre ocupará exatamente metade da altura da tela visível.*/
  background-image: url("../img.jpg/homenss3.jpg");
  background-size: cover;
  background-position: 50% -100px;
  background-repeat: no-repeat;
  /*garante que a imagem de fundo não se repita, mesmo que a tela seja maior do que a imagem*/
  display: flex;
  justify-content: center;
  /*alinha o conteúdo horizontalmente ao centro do contêiner usando Flexbox*/
  align-items: center;
  /*alinha o conteúdo verticalmente ao centro do contêiner usando Flexbox*/
  text-align: center;
}

.galeria {
  display: grid;
  grid-template-columns: 1fr 1fr;
  /*duas colunas de largura iguais, cada uma ocupando metade do espaço disponível*/
  gap: 10px;
  /*espaçamento entre as colunas e linhas da grade*/
}

.galeria figure {
  overflow: hidden;
  /*garante que as imagens não ultrapassem os limites do contêiner*/
}

.galeria figure img {
  width: 100%;
  height: 500px;
  object-fit: cover;
  /*garante que a imagem preencha completamente o contêiner, cortando as partes que ultrapassarem os limites*/
  object-position: top center;
  /* Prioriza mostrar o topo da imagem antes de cortar */
  display: block;
  transition:
    transform 0.3s,
    opacity 0.3s;
}

.galeria figure:hover img {
  transform: scale(1.06);
  /*aumenta a imagem em 6% quando o mouse passa por cima, criando um efeito de zoom suave*/
  opacity: 0.82;
}

nav {
  background-color: #fefefe;
  padding: 10px;
  text-align: center;
  position: sticky;
  /*faz com que a barra de navegação fique fixa no topo da página quando o usuário rolar para baixo, garantindo que ela esteja sempre visível*/
  top: 0;
  z-index: 1000;
  /*garante que a barra de navegação fique acima de outros elementos da página, evitando que seja sobreposta por eles*/
}

.icons {
  position: relative;
  margin-top: -28px;
  margin-left: 1150px;
}

.fa-solid {
  font-size: 16px;
}

a {
  text-decoration: none;
  color: #111;
  font-size: 15px;
  font-family: Verdana, Geneva, Tahoma, sans-serif;
  font-size: 13px;
}

nav a {
  color: #111;
  text-decoration: none;
  padding: 8px 16px;
  border-radius: 6px;
  font-weight: 700;
  font-family: "Times New Roman", Times, serif;
  transition: background 0.2s;
}

nav a:hover {
  background: #e7e6e6;
}

main {
  margin: 0 auto;
  /* Centraliza o bloco na tela */
  max-width: 100%;
}

.main_shop {
  max-width: 900px;
  margin: 0 auto;
  /* Centraliza o bloco na tela */
}

.galeria h2 {
  grid-column: 1 / -1;
  /*faz o título ocupar toda a largura da grade, garantindo que ele fique acima das imagens*/
  font-size: 40px;
  font-weight: 100;
  font-family: "Times New Roman", Times, serif;
  color: #111;
  text-align: center;
  margin-top: 20px;
}

.galeria p {
  color: #111;
  margin-bottom: 30px;
  grid-column: 1 / -1;
  /*faz o parágrafo ocupar toda a largura da grade, garantindo que ele fique abaixo do título e das imagens*/
  text-align: center;
  font-family: "Times New Roman", Times, serif;
  font-weight: 100;
}

figcaption {
  position: relative;
  bottom: 100px;
  left: 200px;
  color: #fefefe;
  font-family: "Times New Roman", Times, serif;
  font-size: 30px;
  font-weight: 100;
}

h3 {
  /*footer*/
  display: inline-block;
  font-size: 13px;
  font-family: Verdana, Geneva, Tahoma, sans-serif;
}

footer {
  background-color: #e7e6e6;
  color: #111;
  text-align: center;
  padding: 20px 0;
  height: max-content;
  margin-top: 200px;
}

.icon {
  margin: 16px;
}


.btn_shop {
  position: relative;
  /* Permite posicionar o botão em relação ao seu contêiner pai (figure) */
  bottom: 100px;
  left: 290px;
  border: 0;
  background: 0;
  /* Remove o fundo do botão para que ele fique transparente */
  cursor: pointer;
  color: #fefefe;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 15px;
  font-weight: 700;
  text-decoration: underline;
  /*adiciona um sublinhado ao texto do botão*/
  text-underline-offset: 8px;
  /*dá um espaço entre a linha e o texto*/
}

.galeria_shop {
  display: grid;
  grid-template-columns: repeat(auto-fit,
      minmax(250px, 1fr));
  /*o repeat com minmax fica responsivo (3 colunas no PC, menos no celular) */
  gap: 20px;
  /*espaçamento entre as colunas e linhas da grade*/
}

.galeria_shop figure {
  overflow: hidden;
  /*garante que as imagens não ultrapassem os limites do contêiner*/
}

.galeria_shop figure img {
  width: 100%;
  height: 300px;
  object-fit: cover;
  /*garante que a imagem preencha completamente o contêiner, cortando as partes que ultrapassarem os limites*/
  object-position: center;
  display: block;
  transition:
    transform 0.3s,
    opacity 0.3s;
}

.galeria_shop figure:hover img {
  transform: scale(1.06);
  /*aumenta a imagem quando o mouse passa por cima, criando um efeito de zoom suave*/
  opacity: 0.82;
}

.h2_shop {
  grid-column: 1 / -1;
  /*faz o título ocupar toda a largura da grade, garantindo que ele fique acima das imagens*/
  font-size: 50px;
  font-weight: 100;
  margin-top: 80px;
  font-family: "Times New Roman", Times, serif;
  color: #111;
  text-align: center;
  margin-bottom: 0;
}

.descricao {
  color: #111;
  display: inline-block;
  width: 100%;
  text-align: center;
  padding: 15px 0;
  background-color: #fefefe;
  /* Fundo sólido se quiser separar da página */
  color: #111;
  font-family: "Times New Roman", Times, serif;
  font-size: 13px;
  text-transform: capitalize;
  /*deixa o texto em maiusculo*/
  letter-spacing: 2px;
  /*da espaço entre as letras*/
  position: static;
}

.p_shop {
  color: #111;
  grid-column: 1 / -1;
  /*faz o parágrafo ocupar toda a largura da grade, garantindo que ele fique abaixo do título e das imagens*/
  text-align: center;
  font-family: "Times New Roman", Times, serif;
  font-weight: 100;
  margin-top: -30px;
  text-decoration: underline;
  text-underline-offset: 8px;
  /*dá um espaço entre a linha e o texto*/
}

.galeria_mais1 {
  display: grid;
  margin: 100px;
  grid-template-columns: repeat(auto-fit,
      minmax(250px, 1fr));
  /*o repeat com minmax fica responsivo (3 colunas no PC, menos no celular) */
  gap: 10px;
  /*espaçamento entre as colunas e linhas da grade*/
}

.galeria_mais1 figure {
  overflow: hidden;
  /*garante que as imagens não ultrapassem os limites do contêiner*/
}

.galeria_mais1 figure img {
  width: 100%;
  height: 400px;
  object-fit: cover;
  /*garante que a imagem preencha completamente o contêiner, cortando as partes que ultrapassarem os limites*/
  object-position: center;
  display: block;
  transition:
    transform 0.3s,
    opacity 0.3s;
}

.galeria_mais1 figure:hover img {
  transform: scale(1.06);
  /*aumenta a imagem em 6% quando o mouse passa por cima, criando um efeito de zoom suave*/
  opacity: 0.85;
}

.categorias {
  grid-column: 1 / -1;
  /*faz o título ocupar toda a largura da grade, garantindo que ele fique acima das imagens*/
  font-size: 30px;
  font-weight: 100;
  margin-top: 20px;
  font-family: "Times New Roman", Times, serif;
  color: #111;
  text-align: center;
}

.liked {
  position: relative;
  /* Permite posicionar o botão em relação ao seu contêiner pai (figure) */
  bottom: 290px;
  left: 250px;
  color: #000000;
  opacity: 0.50;
  transition:
    opacity 0.50s;
}

.liked:hover {
  opacity: 1;

}

/*formulario*/

input,
select,
textarea {
  width: 100%;
  margin: 20px;
  padding: 10px 14px;
  border: 1px solid #111;
  border-radius: 8px;
  font-size: 1rem;
  font-family: inherit;
  transition: border-color .2s, box-shadow .2s;
}

input:focus,
select:focus,
textarea:focus {
  outline: none;
  border-color: #111;
  box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.282);
}

.legenda {
  text-align: center;
  font-size: 30px;
  font-family: "Times New Roman", Times, serif;
  margin: 15px;

}

.campo p {
  font-size: 16px;
  width: 850px;
  margin: 0 auto;
  margin-bottom: 40px;
}

.campo a {
  color: #762929;
  text-decoration: underline;
}

.campo {
  margin: 10px 30px;
  font-family: "Times New Roman", Times, serif;
}

fieldset {
  border: none;
  margin: 50px auto;
  width: 400px;
}

.campo span {
  display: flex;
  color: #762929;
  justify-content: flex-end;
}

label {
  font-weight: 500;
  font-size: 16px;
}

button {
  width: 100px;
  height: 30px;
  margin-left: 30px;
  border: 1px solid;
  border-radius: 4px;
}

button:hover {
  background-color: #a5a5a5;
}

.botoes {
  display: flex;
  justify-content: center;

}

.botao_cor {
  background-color: rgb(174, 252, 164);
}

table {
  margin: 100px auto;

}

caption {
  font-size: 30px;
  margin-bottom: 30px;
  font-family: "Times New Roman", Times, serif;
}
.checkbox{
  display: flex;
  position: relative;
 margin-left: -220px;
  margin-top: -20px;

}
.checkbox:focus{
  box-shadow: none;
}
tfoot{
  font-weight: 500;
  text-decoration: underline;
  text-decoration-color: #762929;
  text-underline-offset: 10px;
}
table td{
  text-align: center;
}