@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap");

.elementor-faq-wrapper {
  font-family: "Inter", sans-serif;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.elementor-faq-item {
  background-color: #f8fafc;
  border-left: 2px solid #94a3b8;
  padding: 32px;
  border-radius: 8px;
  transition: all 0.3s ease;
  cursor: pointer;
}

/* Hover State */
.elementor-faq-item:hover {
  background-color: #f1f5f9;
  border-left-color: #204546;
}

.elementor-faq-item:hover .elementor-faq-title {
  color: #f5a623;
}

.elementor-faq-item:hover .elementor-faq-icon svg path {
  stroke: #f5a623;
}

/* Active State (Expanded) */

.elementor-faq-item.active {
  background-color: #ffffff;
  border-left-color: #2d3440; /* matching the title color for active state based on image */
  box-shadow:
    0px 4px 6px -1px rgba(0, 0, 0, 0.05),
    0px 2px 4px -1px rgba(0, 0, 0, 0.03);
}

.elementor-faq-item.active:hover {
  border-left-color: #f5a623; /* matching the title color for active state based on image */
}

.elementor-faq-item.active .elementor-faq-title {
  color: #2d3440;
}

.elementor-faq-item.active:hover .elementor-faq-title {
  color: #f5a623;
}

.elementor-faq-item.active .elementor-faq-icon svg {
  transform: rotate(180deg);
}

.elementor-faq-item.active .elementor-faq-icon svg path {
  stroke: #2d3440;
}

.elementor-faq-item.active:hover .elementor-faq-icon svg path {
  stroke: #f5a623;
}

/* Header */
.elementor-faq-header {
  display: flex;
  align-items: center;
  gap: 16px;
}

.elementor-faq-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
}

.elementor-faq-icon svg {
  transition: transform 0.3s ease;
}

.elementor-faq-icon svg path {
  stroke: #94a3b8;
  transition: stroke 0.3s ease;
}

.elementor-faq-title {
  color: #2d3440;
  font-size: 20px;
  font-weight: 600;
  margin: 0;
  padding: 0;
  line-height: 1.4;
  transition: color 0.3s ease;
}

/* Content */
.elementor-faq-content {
  color: #64748b;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.6;
  padding-top: 24px;
  padding-left: 40px; /* align with title */
}

.elementor-faq-content p {
  margin-bottom: 0;
}
@media screen and (max-width: 700px) {
  .elementor-faq-item {
    padding: 25px !important;
  }

  .elementor-faq-title {
    font-size: 18px;
  }

  .elementor-faq-content {
    font-size: 16px;
  }
}
