/* Custom Utilities & Animations */
body {
  background-color: #faf9f7;
  color: #1c2b24;
  -webkit-font-smoothing: antialiased;
}

::selection {
  background-color: #b8922a;
  color: #faf9f7;
}

.reveal {
  opacity: 0;
  transform: translateY(24px);
  transition: all 0.9s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.reveal.active {
  opacity: 1;
  transform: translateY(0);
}

/* Cards com borda sutil, fundo branco, sombra leve */
.glass-panel {
  background: #ffffff;
  border: 1px solid #ddd9d2;
  transition: all 0.35s ease;
}

.glass-panel:hover {
  border-color: #b8922a;
  background: #ffffff;
  transform: translateY(-4px);
  box-shadow: 0 12px 40px -10px rgba(28, 43, 36, 0.12);
}

/* Navbar ao rolar — fundo branco com sombra suave */
.nav-scrolled {
  background: rgba(250, 249, 247, 0.97);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid #ddd9d2;
  box-shadow: 0 1px 16px rgba(28, 43, 36, 0.06);
}

/* Linha de hover nos links de navegação */
.glowing-line::after {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 1px;
  background: #b8922a;
  transition: width 0.3s ease;
}

.group:hover .glowing-line::after {
  width: 100%;
}

.fade-in-image {
  animation: fadeIn 1.8s ease-in-out;
}

@keyframes fadeIn {
  from {
    opacity: 0;
    filter: blur(4px);
  }
  to {
    opacity: 1;
    filter: blur(0);
  }
}
