/* Only FAQ components are styled; article text and other definition lists are untouched. */
.entry-content .ff-faq-group { min-width: 0; }
.entry-content section.ff-longtail-faq.ff-faq-group {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}
.entry-content .ff-faq-group > h2 { margin-bottom: 20px !important; }
.entry-content .faq-wrap {
  --cocoon-custom-question-color: #285b41;
  --cocoon-custom-answer-color: #285b41;
  box-sizing: border-box;
  display: block;
  max-width: 100%;
  margin: 20px 0 28px;
  padding: 0 !important;
  border: 1px solid #d3e2d8;
  border-radius: 8px;
  background: #fff;
  color: #33453b;
  overflow: hidden;
  box-shadow: none;
}
.entry-content .faq-wrap > .faq { margin: 0; padding: 0; }
.entry-content .faq-wrap > .faq > .faq-item {
  display: flex !important;
  align-items: flex-start;
  gap: 12px;
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  margin: 0 !important;
  padding: 18px 20px;
  border: 0;
  line-height: 1.8;
}
.entry-content .faq-wrap > .faq > .faq-question { background: #edf6ef; color: #244b35; }
.entry-content .faq-wrap > .faq > .faq-answer { background: #fff; }
.entry-content .faq-wrap .faq-item-label {
  flex: 0 0 28px;
  width: 28px;
  margin: 0;
  padding: 0;
  color: #285b41;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
}
.entry-content .faq-wrap .faq-item-content {
  flex: 1 1 0%;
  width: auto;
  min-width: 0;
  margin: 0;
  overflow-wrap: anywhere;
}
.entry-content .faq-wrap .faq-question-content,
.entry-content .faq-wrap .faq-question-content h3 { font-weight: 700; }
.entry-content .faq-wrap .faq-item-content > p,
.entry-content .faq-wrap .faq-item-content > h3 {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: none !important;
  color: inherit !important;
  font-size: 1em !important;
  line-height: 1.8 !important;
}
.entry-content .faq-wrap .faq-item-content > h3::before,
.entry-content .faq-wrap .faq-item-content > h3::after { content: none !important; }
.entry-content .faq-wrap .faq-answer-content > * + * { margin-top: 12px !important; }
.entry-content .faq-wrap a { text-underline-offset: 3px; }
.entry-content .faq-wrap a:focus-visible { outline: 3px solid #285b41; outline-offset: 3px; }
@media (max-width: 600px) {
  .entry-content .faq-wrap { margin: 16px 0 22px; }
  .entry-content .faq-wrap > .faq > .faq-item { gap: 9px; padding: 15px 13px; }
  .entry-content .faq-wrap .faq-item-label { flex-basis: 24px; width: 24px; font-size: 18px; }
}
