/* Variables para los colores de los iconos */
:root {
  --accordion-icon-color: var(--primary-green); /* #97bdac;*/
  --accordion-icon-hover-color: #7a9c6d; /* Un tono más oscuro del verde */
}

.accordion {
  box-shadow: none;
}

.accordion-item {
  background-color: transparent;
  border: none;
  margin-bottom: 0;
}

.accordion-item:last-of-type {
  border-bottom: none;
}

.accordion-button {
  background-color: transparent;
  border: none;
  font-weight: var(--fw-semibold);
  color: var(--text-dark);
  padding: var(--spacing-xs) 0;
  font-size: var(--fs-lg);
  text-align: left;
  box-shadow: none;
  border-radius: 0;
}

.accordion-button:not(.collapsed) {
  background-color: transparent;
  color: var(--primary-green);
  box-shadow: none;
}

.accordion-button::after {
  display: none;
}

.accordion-button::before {
  content: "";
  /* SVG más grueso para el icono + */
  mask: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill-rule='evenodd' stroke='black' stroke-width='1' d='M8 1a.5.5 0 0 1 .5.5v6h6a.5.5 0 0 1 0 1h-6v6a.5.5 0 0 1-1 0v-6h-6a.5.5 0 0 1 0-1h6v-6A.5.5 0 0 1 8 1z'/%3e%3c/svg%3e");
  -webkit-mask: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill-rule='evenodd' stroke='black' stroke-width='1' d='M8 1a.5.5 0 0 1 .5.5v6h6a.5.5 0 0 1 0 1h-6v6a.5.5 0 0 1-1 0v-6h-6a.5.5 0 0 1 0-1h6v-6A.5.5 0 0 1 8 1z'/%3e%3c/svg%3e");
  mask-repeat: no-repeat;
  -webkit-mask-repeat: no-repeat;
  mask-position: center;
  -webkit-mask-position: center;
  mask-size: contain;
  -webkit-mask-size: contain;
  background-color: var(--accordion-icon-color);
  width: 1rem;
  height: 1rem;
  margin-right: var(--spacing-xs);
  flex-shrink: 0;
  transition: background-color 0.2s ease;
}

.accordion-button:not(.collapsed)::before {
  /* SVG más grueso para el icono - */
  mask: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill-rule='evenodd' stroke='black' stroke-width='1' d='M1.5 8a.5.5 0 0 1 .5-.5h12a.5.5 0 0 1 0 1H2a.5.5 0 0 1-.5-.5z'/%3e%3c/svg%3e");
  -webkit-mask: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill-rule='evenodd' stroke='black' stroke-width='1' d='M1.5 8a.5.5 0 0 1 .5-.5h12a.5.5 0 0 1 0 1H2a.5.5 0 0 1-.5-.5z'/%3e%3c/svg%3e");
}

.accordion-button:hover::before {
  background-color: var(--accordion-icon-hover-color);
}

.accordion-button:hover {
  background-color: transparent;
  color: var(--primary-green);
}

.accordion-button:focus {
  box-shadow: none;
  border-color: transparent;
}

.accordion-body {
  padding: 0 0 var(--spacing-xs) 0;
  background-color: transparent;
  color: var(--text-gray);
  line-height: 1.6;
}

.highlight-text {
  color: var(--text-dark);
  font-weight: var(--fw-semibold);
}

.service-list {
  list-style: none;
  padding-left: 0;
  margin: var(--spacing-sm) 0;
}

.service-list li {
  padding: var(--spacing-xs) 0;
  position: relative;
  padding-left: var(--spacing-md);
  color: var(--text-dark);
}

.service-list li::before {
  content: "•";
  color: var(--text-dark);
  font-weight: bold;
  position: absolute;
  left: 0;
}

.accordion-header h2 {
  margin: 0;
}

.accordion-button:not(.collapsed) {
  border-bottom: 1px solid transparent;
}
