body{
	margin: 0 !important;
}

.cabecalho{
	display: flex; 
	justify-content: space-between; 
	height: 13vh;
	padding: 2vh 1%;
	/*background-color: #330000;*/
	background-color: #373737;
	width: 98%;
}

.boxPesquisa{
	background-color: white;
	border-radius: 30px;
	width: 100%;
	height: 100%;
	text-align: center;
}

.inputPesquisa{
	height: 98%;
	width: 90%;
	border: none !important;
    box-shadow: none !important;
	font-family: Open Sans, sans-serif;
}

.inputPesquisa:focus{
	border: none !important; 
    box-shadow: none !important;
	outline: none !important;
}

.formPesquisa{
	display: flex;
    justify-content: space-between;
    padding: 0px 15px;
	height: 95%;
}

.produtos{
	padding-top: 2%;
	display: flex;
}

.boxMenu{
	width: 45%;
	display: flex; 
	height: 37%; 
	margin-top: 1%;
}

.divMenu{
	display: flex;
    margin-left: 25px;
	cursor: pointer;
	justify-content: normal;
}

.divMenu label{
	cursor: pointer;
}

.menuProdutos{
	text-align: center;
	list-style: none;
	width: 90%;
	padding-top: 0%;
	display: flex;
    justify-content: center;
}

.menuProdutos li{
	display: inline-block;
	padding: 7px 15px;
	margin: 0px 10px;
	color: lightgray;
	font-size: 19px;
	font-weight: 700;
}

.menuProdutos li a{
	color: lightgray ;
	text-decoration: none;
}

.menuProdutos li a: hover{
	color: gray !important;
	text-decoration: none;
}

/* ---------- Corpo ---------- */

.corpo{
	width: 80%;
	padding: 25px 10%;
	display: grid;
    grid-template-columns: repeat(4, 1fr);
	margin-bottom: 50px;
}

.corpo a {
	text-decoration: none;

}

.produto{
	padding: 3%;
	width: 93%;
	height: 520px;
	font-family: Open Sans, sans-serif;
}

.corpo > form:hover{
	box-shadow: 0px 0px 5px 3px rgba(0, 0, 0, 0.2);
	
}

.corpo > a:hover{
	box-shadow: 0px 0px 5px 3px rgba(0, 0, 0, 0.2);
	
}

.corpo > div:hover{
	box-shadow: 0px 0px 5px 3px rgba(0, 0, 0, 0.2);
	
}

.descricao{
	margin-top: 20px;
	text-align: center;
	font-size: 19px;
	color: black
}

.valor{
	text-align: center;
	font-size: 25px;
	font-weight: 700;
	color: darkorange;
	font-family: sans-serif;
}

.paginacao{
	font-size: 18px;
	font-family: Open Sans, sans-serif;
	font-weight: 700;
}

.paginacao a{
	color: black;
	text-decoration: none;
}

/* ------------ Menu Lateral ------------ */ 

.menu-lateral {
      position: fixed;
      top: 0;
      left: -250px; /* Escondido inicialmente */
      width: 250px;
      height: 100%;
      background-color: #444;
      overflow-x: hidden;
      transition: left 0.3s ease; /* Animação */
      padding-top: 60px;
	  z-index: 15;
    }

    /* Quando ativo */
    .menu-lateral.ativo {
      left: 0;
    }

    .menu-lateral a {
      padding: 10px 25px;
      display: block;
      color: white;
      text-decoration: none;
      transition: background 0.2s;
	  font-family: Open Sans, sans-serif;
    }

    .menu-lateral a:hover {
      background-color: #555;
    }

    /* Botão fechar */
    .fechar {
      position: absolute;
      top: 10px;
      right: 15px;
      font-size: 25px;
      color: white;
      cursor: pointer;
    }
	
	.menu-lateral label{
		font-family: Open Sans, sans-serif;
		color: white;
		padding: 10px 25px;
		font-size: 20px;
	}

/* ------------ Carrossel Index ------------ */ 

.carrossel-wrapper {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 63%; /* ajuste conforme sua necessidade */
}

.carrossel-index {
  display: flex;
  transition: transform 0.5s ease-in-out;
  width: 500%; /* 5 imagens → 5x100% */
}

.carrossel-index img {
  width: 100vw;
  height: 390px;
 /* object-fit: cover; */
  flex-shrink: 0;
}

.seta {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(0, 0, 0, 0.4);
  color: white;
  border: none;
  padding: 15px;
  font-size: 24px;
  cursor: pointer;
  z-index: 10;
}

.seta.esquerda { left: 0px; }
.seta.direita { right: 0; }



/* ------------ Detalhes ------------ */

.corpoDetalhes{
	width: 60%;
	padding: 25px 20%;
	display: flex;
    
}

.marcaDetalhe{
	color: gray;
	font-size: 17px;
}

.nomeDetalhe{
	font-size: 26px;
}

.valorDetalhe{
	font-size: 27px;
	color: darkorange;
	font-weight: 700;
	font-family: sans-serif;
}

.ValorAntigo{
	font-size: 19px;
    color: gray;
    text-decoration: line-through;
	font-family: sans-serif;
}

.ValorNovo{
	font-size: 34px;
	color: darkorange;
	font-weight: 700;
	font-family: sans-serif;
}

.corpoDescricao{
	padding: 10px 10vw;
    text-align: left;
    font-size: 16px;
}

.divCaminho{
	color: gray;
	height: 18%;
}

.divCaminho a{
	text-decoration: none !important;
	color: gray !important;
	padding: 0px 10px;
}

.divCaminho label{
	text-decoration: none !important;
	color: gray !important;
	padding: 0px 10px;
}

.divCaminho a:hover{
	color: lightgray !important;
}

.btnComprar {
	margin-top: 20px;
}

.btnComprar a {
    width: 32%;
    border-radius: 20px;
    border: none;
    background-color: limegreen;
    color: white;
    font-size: 1vw;
    display: flex;
    padding: 2% 5%;
	text-decoration: none;
	cursor: pointer;
	justify-content: center;
}

.btnComprarDisabled {
	margin-top: 20px;
}

.btnComprarDisabled a {
    width: 32%;
    border-radius: 20px;
    border: none;
    background-color: darkgray;
    color: white;
    font-size: 1vw;
    display: flex;
    padding: 2% 5%;
	text-decoration: none;
	cursor: not-allowed;
	justify-content: center;
}

/* ---------- Carrossel ---------- */

.carrossel {
	display: flex;
	align-items: center;
	gap: 20px;
	justify-content: center;
}

.miniaturas {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.miniaturas img {
	width: 80px;
	height: 80px;
	cursor: pointer;
	border: 2px solid lightgray;
	border-radius: 4px;
}

.miniaturas img.selecionada {
	border-color: #000;
}

.imagem-grande img {
	width: 350px;
	height: 350px;
	border-radius: 6px;
	object-fit: contain;
}


/* ------------ Footer ------------ */

.footer{
	height: 22vh;
	background-color: #373737;
	padding: 25px 10vw;
	display: flex;
	font-family: Open Sans, sans-serif;
}

.footer div label{
	color: lightgray;
}

.footer div strong{
	color: lightgray;
}

.dadosEndereco{
	display: flex;
	width: 80%; 
	margin-top: 30px;
	cursor: pointer
}

.dadosEndereco div label{
	cursor: pointer
}

.contatos div img{
	margin-right: 6px;
}

.contato a{
	text-decoration: none;
	cursor: pointer;
}

.contato a label{
	cursor: pointer;
}

.contato a label:hover{
	color: white;
}

/* ------------ Modal Mapa ------------ */

.modal {
    display: none;
    position: fixed;
    z-index: 1000;
    left: 0; top: 0;
    width: 100%; height: 100%;
    background-color: rgba(0,0,0,0.5);
}

.modal-conteudo {
    background-color: #fff;
    margin: 10% auto;
    padding: 0;
    border-radius: 8px;
    width: 80%;
    max-width: 600px;
    position: relative;
    overflow: hidden;
}

.fechar {
    position: absolute;
    top: 10px; right: 20px;
    font-size: 30px;
    font-weight: bold;
    cursor: pointer;
}

/* ---------- Celular ------------ */

@media (max-width: 768px) {
	
	html{
		width: 100%;
	}

	
	.corpo{
		width: 90% !important;
		padding: 15px 5% !important;
		grid-template-columns: repeat(2, 1fr) !important;
		margin-bottom: 100px !important;
	}
	
	/* ------------ Cabecalho ------------ */
	
	.cabecalho{
		display: block !important;
		height: 8vh !important;
	}
	
	.produtos{
		display: block !important;
		width: 100% !important;
		height: 80%; !important;
	}
	
	.boxMenu{
		width: 100% !important;
		height: 30% !important;
		display: block !important;
	}
	
	.divMenu{
		margin-left: 0px !important;
		display: block !important;
	}
	
	.divMenu img{
		height: 17px !important;	
	}
	
	.divMenu label{
		font-size: 12px !important;
		display: none !important;
	}
	
	.divPesquisa{
		height: 30% !important;
		width: 100% !important;
		display: flex !important;
		justify-content: center !important;
		margin-top: -5% !important;
	}
	
	.inputPesquisa{
		height: 18px !important;
	}
	
	.boxPesquisa{
		width: 65% !important;
		height: 25px !important;
	}
	
	.formPesquisa{
		height: 25px !important;
	}
	
	.imgCabecalho{
		width: 100% !important;
		text-align: right !important;	
		margin-top: -16% !important;
		height: 56% !important;
	}
	
	.imgCabecalho a img{
		height: 100% !important;		
	}
	
	.linkCabecalho{
		width: 100% !important;
	}
	
	.linkCabecalho div{
		padding: 3% 1% 2% 74% !important;
		
	}
	
	.linkCabecalho div{
		padding: 3% 1% 2% 74% !important;
		
	}
	
	#cabWhats{
		width: 26px !important;
	}
	
	#cabInsta{
		width: 23px !important;
	}
	
	#cabEmail{
		width: 31px !important;
	}
	
	/* ------------ Carrossel index ------------ */
	
	.carrossel-wrapper{
		height: 15% !important;	
	}
	
	.carrossel-index img {
	  height: 100%;
	  object-fit: cover; 
	}
		
	/* ------------ Footer ------------ */
	
	.footer{
		height: 39% !important;
		display: block !important;
		padding: 10px 4vw !important;
		font-size: 11px !important;
	}
	
	.conteudoRodape{
		width: 100% !important;
	}

	.imgRodape{
		width: 20% !important;
	}
	
	/* ------------ Detalhes ---------- */
	
	.corpoDetalhes{
		width: 90% !important;
		display: block !important;
		padding: 25px 5% !important;
	}
	
	.corpoDetalhes div{
		width: 100% !important;
	}
	
	.divCaminho{
		height: 3% !important; 
	}
	
	.carrossel{
		gap: 0px !important;
	}
	
	.imagem-grande img{
		width: 260px !important;
		height: 260px !important;
	}
	
	.btnComprar{
		display: flex !important;
		justify-content: center !important;
	}
	
	.btnComprar a {
		width: 45% !important;
		font-size: 5vw !important;
	}
	
	.btnComprar a img{
		width: 5.1vw !important;
	}
	
	.btnComprarDisabled{
		display: flex !important;
		justify-content: center !important;
	}
	
	.btnComprarDisabled a {
		width: 45% !important;
		font-size: 5vw !important;
	}
	
	.btnComprarDisabled a img{
		width: 5.1vw !important;
	}
	
	.msgIndisponivel{
		text-align: center !important;
	}
	
	.corpoDescricao{
		font-size: 13px !important;
	}

}
	

 
 
 
 
 
 
 
 
 
 
 
 


