.faq-section {
  background: var(--branco);
  position: relative;
}

.faq-section::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--cinza-claro), transparent);
}

.accordion {
  --bs-accordion-border-radius: var(--border-radius-lg);
  --bs-accordion-border-color: var(--cinza-claro);
  --bs-accordion-bg: var(--branco);
}

.accordion-item {
  border: 1px solid var(--cinza-claro);
  border-radius: var(--border-radius-lg) !important;
  margin-bottom: var(--spacing-md);
  box-shadow: var(--shadow-sm);
  transition: var(--transition-normal);
  overflow: hidden;
}

.accordion-item:hover {
  box-shadow: var(--shadow-md);
  transform: translateY(-2px);
}

.accordion-item:last-child {
  margin-bottom: 0;
}

.accordion-header {
  margin-bottom: 0;
}

.accordion-button {
  background: var(--branco);
  color: var(--preto-fosco);
  font-family: var(--font-primary);
  font-weight: 600;
  font-size: var(--font-size-lg);
  padding: var(--spacing-lg) var(--spacing-xl);
  border: none;
  border-radius: var(--border-radius-lg) !important;
  position: relative;
  transition: var(--transition-normal);
}

.accordion-button:not(.collapsed) {
  background: linear-gradient(135deg, var(--vermelho-vintage), var(--dourado-escuro));
  color: var(--branco);
  box-shadow: none;
}

.accordion-button:focus {
  box-shadow: 0 0 0 0.2rem rgba(199, 75, 80, 0.25);
  border-color: var(--vermelho-vintage);
}

.accordion-button::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23333'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
  transition: var(--transition-normal);
}

.accordion-button:not(.collapsed)::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
  transform: rotate(-180deg);
}

.accordion-collapse {
  border-top: 1px solid var(--cinza-claro);
}

.accordion-body {
  background: var(--branco-fume);
  color: var(--cinza-escuro);
  font-size: var(--font-size-base);
  line-height: 1.7;
  padding: var(--spacing-xl);
  position: relative;
}

.accordion-body::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 4px;
  height: 100%;
  background: linear-gradient(135deg, var(--vermelho-vintage), var(--dourado-escuro));
}

/* Animações de entrada */
.accordion-item {
  opacity: 0;
  transform: translateY(30px);
  transition: var(--transition-slow);
}

.accordion-item.visible {
  opacity: 1;
  transform: translateY(0);
}

.accordion-item:nth-child(1) { transition-delay: 0.1s; }
.accordion-item:nth-child(2) { transition-delay: 0.2s; }
.accordion-item:nth-child(3) { transition-delay: 0.3s; }
.accordion-item:nth-child(4) { transition-delay: 0.4s; }
.accordion-item:nth-child(5) { transition-delay: 0.5s; }

/* Efeito hover personalizado */
.accordion-button:hover {
  background: linear-gradient(135deg, rgba(199, 75, 80, 0.1), rgba(168, 123, 47, 0.1));
}

.accordion-button:not(.collapsed):hover {
  background: linear-gradient(135deg, var(--dourado-escuro), var(--vermelho-vintage));
}

/* Responsividade */
@media (max-width: 768px) {
  .accordion-button {
    font-size: var(--font-size-base);
    padding: var(--spacing-md) var(--spacing-lg);
  }
  
  .accordion-body {
    padding: var(--spacing-lg);
    font-size: var(--font-size-sm);
  }
}

@media (max-width: 576px) {
  .accordion-button {
    font-size: var(--font-size-sm);
    padding: var(--spacing-sm) var(--spacing-md);
  }
  
  .accordion-body {
    padding: var(--spacing-md);
  }
  
  .accordion-item {
    margin-bottom: var(--spacing-sm);
  }
}

