/* INCL FAQ accordion: scoped to .incl-faq to avoid changing existing site styles. */
.incl-faq { padding: 36px 0 55px; }
.incl-faq--home { padding-top: 50px; }
.incl-faq__container { max-width: 1176px; margin: 0 auto; }
.incl-faq__title { margin: 0 0 16px; text-align: center; font-size: clamp(23px, 3vw, 32px); font-weight: 700; color: #24364d; }
.incl-faq__intro { max-width: 900px; margin: 0 auto 25px; font-size: 15px; line-height: 1.8; }
.incl-faq__nav { display: flex; gap: 10px; flex-wrap: wrap; margin: 0 0 30px; }
.incl-faq__nav a { color: #25364e; text-decoration: none; background: #fff; border: 1px solid #f3c0cc; border-radius: 24px; padding: 8px 15px; font-size: 14px; }
.incl-faq__nav a:hover, .incl-faq__nav a:focus-visible { background: #fff1f4; }
.incl-faq__group { margin: 0 0 32px; scroll-margin-top: 90px; }
.incl-faq__category-title { font-size: 21px; color: #25364e; border-left: 5px solid #f6526d; padding: 0 0 0 13px; margin: 0 0 14px; line-height: 1.4; }
.incl-faq__list { border: 1px solid #e7e9ed; border-radius: 10px; overflow: hidden; background: #fff; }
.incl-faq__item + .incl-faq__item { border-top: 1px solid #e7e9ed; }
.incl-faq__question { display: flex; align-items: center; gap: 15px; cursor: pointer; padding: 20px 22px; list-style: none; font-weight: 700; color: #24364d; line-height: 1.65; }
.incl-faq__question::-webkit-details-marker { display: none; }
.incl-faq__question::marker { content: ''; }
.incl-faq__question:hover { background: #fff8fa; }
.incl-faq__question:focus-visible { outline: 3px solid #f6526d; outline-offset: -3px; }
.incl-faq__q-label, .incl-faq__a-label { color: #f6526d; font-weight: 800; font-size: 20px; flex: 0 0 24px; }
.incl-faq__question-text { min-width: 0; flex: 1; }
.incl-faq__toggle { position: relative; border: 1.5px solid #f6526d; border-radius: 50%; width: 25px; height: 25px; flex: 0 0 25px; }
.incl-faq__toggle::before, .incl-faq__toggle::after { content: ''; position: absolute; background: #f6526d; left: 6px; right: 6px; top: 10.5px; height: 2px; }
.incl-faq__toggle::after { transform: rotate(90deg); }
.incl-faq__item[open] .incl-faq__toggle::after { display: none; }
.incl-faq__item[open] .incl-faq__question { background: #fff8fa; }
.incl-faq__answer { display: flex; align-items: flex-start; gap: 15px; padding: 18px 22px 21px; background: #fafbfd; border-top: 1px solid #f1f1f1; font-size: 15px; line-height: 1.9; }
.incl-faq__answer-content { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.incl-faq__answer-content p { margin: 0 0 1em; }
.incl-faq__answer-content p:last-child { margin-bottom: 0; }
.incl-faq__answer-content a { color: #d72d53; text-decoration: underline; }
.incl-faq__more { margin: 25px auto 0; text-align: center; }
@media (max-width: 640px) {
  .incl-faq { padding: 28px 0 38px; }
  .incl-faq__intro { font-size: 14px; }
  .incl-faq__question { gap: 10px; padding: 16px 14px; font-size: 15px; }
  .incl-faq__answer { gap: 10px; padding: 15px 14px; font-size: 14px; }
  .incl-faq__category-title { font-size: 19px; }
  .incl-faq__toggle { width: 23px; height: 23px; flex-basis: 23px; }
  .incl-faq__toggle::before, .incl-faq__toggle::after { top: 9.5px; left: 5px; right: 5px; }
}
