.neon-blue {
  color: #0055FF;
  background: #D6EBFF;
}

.sorbus {
  color: #CC5702;
  background: #FFF3D3;
}

.coral-red {
  color: #ED1527;
  background: #FFF1F2;
}

.faq {
  background: #EEF2F6;
  padding-top: 72px;
  padding-bottom: 72px;
}
@media only screen and (min-width: 992px) {
  .faq {
    padding-top: calc(72px + 28 * (100vw - 992px) / 608);
    padding-bottom: calc(72px + 28 * (100vw - 992px) / 608);
  }
}
@media only screen and (min-width: 1600px) {
  .faq {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}
@media only screen and (max-width: 767px) {
  .faq {
    padding-top: 56px;
    padding-bottom: 56px;
  }
}
.faq__intro {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 40px;
}
@media only screen and (min-width: 768px) {
  .faq__intro {
    margin-bottom: 90px;
  }
}
.faq__eyebrow {
  margin-top: 0;
  font-weight: 600;
  line-height: 1.4;
  color: #0055FF;
  font-size: 12px;
}
@media only screen and (min-width: 992px) {
  .faq__eyebrow {
    font-size: calc(12px + 4 * (100vw - 992px) / 608);
  }
}
@media only screen and (min-width: 1600px) {
  .faq__eyebrow {
    font-size: 16px;
  }
}
.faq__eyebrow {
  margin-bottom: 12px;
}
@media only screen and (min-width: 992px) {
  .faq__eyebrow {
    margin-bottom: calc(12px + 6 * (100vw - 992px) / 608);
  }
}
@media only screen and (min-width: 1600px) {
  .faq__eyebrow {
    margin-bottom: 18px;
  }
}
.faq__heading {
  margin-top: 0;
  color: #121926;
  font-weight: 700;
  font-size: 25px;
}
@media only screen and (min-width: 992px) {
  .faq__heading {
    font-size: calc(25px + 11 * (100vw - 992px) / 608);
  }
}
@media only screen and (min-width: 1600px) {
  .faq__heading {
    font-size: 36px;
  }
}
@media only screen and (max-width: 767px) {
  .faq__heading {
    font-size: 30px;
    line-height: 38px;
  }
}
.faq__heading {
  margin-bottom: 16px;
}
@media only screen and (min-width: 992px) {
  .faq__heading {
    margin-bottom: calc(16px + 8 * (100vw - 992px) / 608);
  }
}
@media only screen and (min-width: 1600px) {
  .faq__heading {
    margin-bottom: 24px;
  }
}
.faq__description {
  margin-left: auto;
  margin-right: auto;
  max-width: 100%;
}
.faq.section .faq__description p {
  margin: 0;
  font-size: 18px;
}
@media only screen and (min-width: 992px) {
  .faq.section .faq__description p {
    font-size: calc(18px + 2 * (100vw - 992px) / 608);
  }
}
@media only screen and (min-width: 1600px) {
  .faq.section .faq__description p {
    font-size: 20px;
  }
}
.faq.section .faq__description p {
  color: #202939;
}
.faq__items {
  list-style: none;
  margin: 0;
  padding: 0;
}
.faq__item {
  margin: 0;
  border-bottom: 1px solid #9AA4B2;
}
.faq__item::before {
  display: none;
}
.faq__toggle {
  display: flex;
  align-items: center;
  gap: 16px;
  width: 100%;
  margin: 0;
  padding: 40px 0;
  border: 0;
  background: transparent;
  cursor: pointer;
  text-align: left;
  font: inherit;
  color: #121926;
  transition: padding-bottom 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}
@media only screen and (max-width: 767px) {
  .faq__toggle {
    gap: 12px;
  }
}
.faq__toggle::after {
  content: "";
  flex: 0 0 20px;
  width: 20px;
  height: 20px;
  background-color: #121926;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m5 7.5 5 5 5-5' fill='none' stroke='%23000' stroke-width='1.67' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m5 7.5 5 5 5-5' fill='none' stroke='%23000' stroke-width='1.67' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
  transition: all 0.4s ease;
  transition-property: transform, background-color;
}
.faq__item.is-open .faq__toggle {
  padding-bottom: 0;
}
.faq__item.is-open .faq__toggle::after {
  transform: rotate(180deg);
  background-color: #9AA4B2;
}
.faq__question {
  flex: 1;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.25;
  color: #121926;
}
.faq__panel {
  display: grid;
  grid-template-rows: 0fr;
  overflow: hidden;
  transition: all 0.4s ease;
  transition-property: grid-template-rows;
  transition-timing-function: cubic-bezier(0.33, 1, 0.68, 1);
}
.faq__panel-inner {
  overflow: hidden;
  min-height: 0;
  transform: translateY(-10px);
  opacity: 0;
  transition: transform 0.4s cubic-bezier(0.33, 1, 0.68, 1), opacity 0.4s ease;
}
.faq__item.is-open .faq__panel {
  grid-template-rows: 1fr;
}
.faq__item.is-open .faq__panel-inner {
  transform: translateY(0);
  opacity: 1;
  padding-top: 16px;
}
@media only screen and (min-width: 992px) {
  .faq__item.is-open .faq__panel-inner {
    padding-top: calc(16px + 8 * (100vw - 992px) / 608);
  }
}
@media only screen and (min-width: 1600px) {
  .faq__item.is-open .faq__panel-inner {
    padding-top: 24px;
  }
}
.faq__item.is-open .faq__panel-inner {
  padding-bottom: 20px;
}
@media only screen and (min-width: 992px) {
  .faq__item.is-open .faq__panel-inner {
    padding-bottom: calc(20px + 4 * (100vw - 992px) / 608);
  }
}
@media only screen and (min-width: 1600px) {
  .faq__item.is-open .faq__panel-inner {
    padding-bottom: 24px;
  }
}
.faq__answer {
  margin: 0;
  padding: 0;
}
.faq.section .faq__answer p {
  margin: 0;
  font-size: 16px;
  line-height: 1.25;
  color: #4B5565;
}
@media (prefers-reduced-motion: reduce) {
  .faq__toggle, .faq__toggle::after, .faq__panel, .faq__panel-inner {
    transition: none;
    transform: none;
    opacity: 1;
  }
}