* {margin:0; padding:0; box-sizing:border-box; font-family:Arial, sans-serif;}
body {color:#333; background:#f8f6f3; line-height:1.6;}
.container {max-width:1200px; margin:0 auto; padding:0 15px;}

.cabecalho {background:#2c2c2c; color:white; padding:1rem; position:sticky; top:0; z-index:99;}
.cabecalho .container {display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:1rem;}
.cabecalho a {color:#eee; text-decoration:none; margin:0 0.5rem;}
.cabecalho a:hover {color:#d2b48c;}

.banner {background:linear-gradient(rgba(44,44,44,0.7),rgba(44,44,44,0.7)), url('imagens/fundo-banner.jpg') center/cover no-repeat; color:white; padding:4rem 0; text-align:center;}
.botao {display:inline-block; background:#8b7355; color:white; padding:0.7rem 1.5rem; border-radius:5px; text-decoration:none; margin-top:1rem; transition:0.3s;}
.botao:hover {background:#6d5944;}
.whatsapp {background:#25d366;}
.whatsapp:hover {background:#1da851;}

.secao {padding:2.5rem 0;}
.clara {background:#f3eee8;}
h2 {text-align:center; margin-bottom:1.5rem; color:#504130;}
.lista-servicos {max-width:700px; margin:0 auto; font-size:1.05rem;}
.lista-servicos li {margin-bottom:0.5rem; list-style:none;}

.galeria {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 1rem;
}

.item-galeria {
    position: relative;
    border-radius: 6px;
    overflow: hidden;
    box-shadow: 0 2px 5px #0002;
    cursor: pointer;
}

.galeria img {
    width: 100%;
    height: 220px;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.descricao {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.85), transparent);
    color: white;
    padding: 2.5rem 1rem 1rem;
    font-size: 0.95rem;
    opacity: 0;
    transform: translateY(20px);
    transition: all 0.3s ease;
}

.item-galeria:hover img {
    transform: scale(1.05);
}

.item-galeria:hover .descricao {
    opacity: 1;
    transform: translateY(0);
}

footer {background:#2c2c2c; color:white; text-align:center; padding:1rem; font-size:0.9rem;}

@media(max-width:600px){
    .cabecalho .container {flex-direction:column;}
    .banner {padding:2.5rem 0;}
}
.instagram-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #2c3e50;
  text-decoration: none;
  font-weight: 500;
  transition: all 0.3s ease;
  margin: 8px;
}

.instagram-link:hover {
  color: #e4405f; /* Cor oficial do Instagram */
  transform: scale(1.05);
}

@media (max-width: 768px) {
  .instagram-link {
    justify-content: center;
    font-size: 15px;
  }
}