.section:has(> .faq) {
  background-color: var(--color-gray-200);
}

.section:not(.xxxl-spacing-static, .xxl-spacing-static, .xl-spacing-static, .xxxl-spacing, .xxl-spacing, .xl-spacing,
.l-spacing, .m-spacing, .s-spacing, .xs-spacing, .xxs-spacing):has(> .faq) > div:first-child, .section:has(> .faq):not([data-padding='none']) > .content:first-child  {
  padding-top: 80px;
}

.section:has(> .faq) > .content, .section:has(> .faq) > .faq {
  margin: auto;
  padding-top: 0;
  padding-right: 24px;
  padding-left: 24px;
  max-width: 375px;
}

.section:has(> .faq) > .content > h2, .section:has(> .faq) > .content > h3, .section:has(> .faq) > .content > h4, .section:has(> .faq) > .content > h5, .section:has(> .faq) > .content > h6 {
  margin-top: 0;
  margin-bottom: 40px;
}

.section:has(> .faq) h3 {
  margin: 0;
}

.faq {
  text-align: left;
  padding-bottom: 80px;
}

.faq .faq-accordion {
  position: relative;
  height: auto;
  margin-top: 8px;
  padding: 40px;
  border-radius: 8px;
  background-color: var(--color-white);
}

.faq .faq-question {
  display: block;
  padding: 0 0 24px 0;
  text-decoration: none;
  text-align: left;
  font-size: var(--body-font-size-xl);
  line-height: 30px;
  font-weight: 700;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
  overflow-anchor: none;
}

.faq .faq-answer {
  padding: 0;
  display: block;
  font-size: var(--body-font-size-m);
  line-height: var(--body-line-height);
}

.faq .faq-answer ul {
  margin: 0 0 8px 0;
}

.faq .faq-answer ul li {
  list-style: disc;
}

.faq .faq-answer p {
  font-size: var(--body-font-size-m);
  line-height: 24px;
  font-weight: 400;
  margin-top: 0;
}

.faq.narrow {
  max-width: 850px;
}

@media (min-width: 900px) {
  .section:has(> .faq) > .content, .section:has(> .faq) > .faq  {
    padding-top: 0;
    padding-right: 56px;
    padding-left: 56px;
    max-width: 830px;
  }

  .section:has(> .faq) > .content > h2, .section:has(> .faq) > .content > h3, .section:has(> .faq) > .content > h4, .section:has(> .faq) > .content > h5, .section:has(> .faq) > .content > h6 {
    margin-bottom: 80px;
  }

  .faq .faq-question {
    font-size: var(--body-font-size-xxl);
    line-height: 36px;
  }
}

@media (min-width: 1200px) {
  .section:has(> .faq) > .content, .section:has(> .faq) > .faq {
    max-width: 1024px;
  }
}