/* Native answers remain readable when the category enhancement is unavailable. */
.wellist-faq {
  position: relative;
  z-index: 4;
  isolation: isolate;
  outline: none;
  --faq-ink: #173c46;
  --faq-muted: #647276;
  --faq-plum: #963064;
  --faq-mint: #d4e9dd;
  --faq-surface: #f1f4ed;
  padding: clamp(72px, 7vw, 108px) 24px;
  background: #fff;
  color: var(--faq-ink);
  scroll-margin-top: 28px;
}
.faq-layout { display: flex; flex-direction: column; gap: 16px; width: 100%; max-width: 900px; margin-inline: auto; }
.faq-heading { padding: 0 20px 25px; text-align: center; }
.faq-heading h2 { margin: 0; font: 500 clamp(36px, 3.6vw, 54px)/1.13 Sora, Arial, sans-serif; letter-spacing: -.065em; text-wrap: balance; }
.faq-shell { width: 100%; padding: 15px; border-radius: 42px; background: var(--faq-surface); }
.faq-tabs { display: flex; justify-content: center; align-items: stretch; gap: 7px; padding: 0 0 15px; }
.faq-tabs[hidden], .faq-panel[hidden] { display: none; }
.faq-tab { min-width: 0; min-height: 52px; padding: 13px 24px; border: 0; border-radius: 999px; background: transparent; color: #596d71; font: inherit; font-size: 14px; line-height: 1.35; cursor: pointer; transition: color .2s, background .2s; }
.faq-tab[aria-selected="true"] { background: var(--faq-mint); color: var(--faq-ink); }
.faq-tab:focus-visible, .faq-item summary:focus-visible, .faq-contact-email:focus-visible { outline: 2px solid var(--faq-plum); outline-offset: 3px; }
.faq-panel + .faq-panel { margin-top: 26px; }
.wellist-faq[data-faq-ready] .faq-panel { margin-top: 0; }
.faq-panel-heading { margin: 10px 14px 18px; font: 400 19px/1.4 Sora, Arial, sans-serif; letter-spacing: -.04em; }
.wellist-faq[data-faq-ready] .faq-panel-heading { display: none; }
.faq-item { margin: 0 0 11px; background: #fff; border-radius: 30px; }
.faq-item:last-child { margin-bottom: 0; }
.faq-item summary { display: flex; align-items: center; justify-content: space-between; gap: 28px; min-height: 92px; padding: 26px 34px; border-radius: 30px; color: var(--faq-ink); font-size: 18px; font-weight: 400; line-height: 1.5; cursor: pointer; list-style: none; transition: color .2s; }
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item summary::marker { content: ''; }
.faq-item summary > span:first-child { min-width: 0; }
.faq-toggle { position: relative; flex: 0 0 25px; width: 25px; height: 25px; border-radius: 50%; color: var(--faq-ink); background: var(--faq-surface); }
.faq-toggle::before, .faq-toggle::after { content: ''; position: absolute; top: 11.5px; left: 5px; width: 15px; height: 2px; border-radius: 2px; background: currentColor; transition: transform .2s; }
.faq-toggle::after { transform: rotate(90deg); }
.faq-item[open] .faq-toggle::after { transform: rotate(0); }
.faq-answer { padding: 0 34px 32px; padding-inline-end: 67px; }
.faq-answer p { margin: 0; color: var(--faq-muted); font-size: 16px; line-height: 1.75; }
.faq-contact { display: flex; align-items: center; justify-content: center; gap: clamp(28px, 4vw, 54px); width: 100%; min-height: 154px; padding: 31px 34px; border-radius: 42px; background: var(--faq-surface); }
.faq-contact-portraits { display: flex; align-items: center; flex: 0 0 auto; padding-inline: 4px; }
.faq-contact-portraits img { display: block; position: relative; width: 78px; height: 78px; flex: 0 0 auto; object-fit: cover; border: 4px solid var(--faq-surface); border-radius: 50%; }
.faq-contact-portraits img + img { margin-inline-start: -22px; }
.faq-contact-portraits img:nth-child(2) { width: 94px; height: 94px; z-index: 1; }
.faq-contact-content { position: relative; min-width: 0; }
.faq-contact-caption { margin: 0 0 11px; font-size: 15px; color: var(--faq-muted); line-height: 1.5; }
.faq-contact-email { display: inline-flex; align-items: center; gap: 13px; max-width: 100%; min-height: 44px; padding: 0; border: 0; border-radius: 6px; background: none; color: var(--faq-ink); font: 400 clamp(23px, 2.8vw, 34px)/1.2 Sora, Arial, sans-serif; letter-spacing: -.065em; text-align: start; cursor: pointer; }
.faq-contact-address { min-width: 0; overflow-wrap: anywhere; }
.faq-contact-copy-icon { display: grid; place-items: center; flex: 0 0 40px; width: 40px; height: 40px; border-radius: 50%; background: #347c69; color: #fff; transition: background .2s, transform .2s; }
.faq-contact-copy-icon svg { grid-area: 1 / 1; width: 23px; height: 23px; transition: opacity .15s; }
.faq-contact-check { opacity: 0; }
.faq-contact[data-copied] .faq-contact-copy-icon svg:first-child { opacity: 0; }
.faq-contact[data-copied] .faq-contact-check { opacity: 1; }
.faq-contact-status { display: block; position: absolute; top: calc(100% + 5px); inset-inline-start: 53px; color: var(--faq-muted); font-size: 11px; line-height: 1.4; }
@media (hover: hover) and (pointer: fine) {
  .faq-tab:not([aria-selected="true"]):hover { background: #e7efea; color: var(--faq-ink); }
  .faq-item summary:hover { color: var(--faq-plum); }
  .faq-contact-email:hover .faq-contact-copy-icon { background: var(--faq-plum); transform: translateY(-2px); }
}
@media (max-width: 700px) {
  .faq-contact { gap: 22px; padding-inline: 24px; }
  .faq-contact-portraits img { width: 62px; height: 62px; border-width: 3px; }
  .faq-contact-portraits img:nth-child(2) { width: 76px; height: 76px; }
  .faq-contact-portraits img + img { margin-inline-start: -23px; }
  .faq-contact-caption { font-size: 13px; }
  .faq-contact-email { font-size: 25px; }
}
@media (max-width: 600px) {
  .wellist-faq { padding: 64px 16px; }
  .faq-layout { gap: 12px; }
  .faq-heading { padding: 0 8px 21px; }
  .faq-heading h2 { font-size: clamp(32px, 8.8vw, 44px); }
  .faq-shell { padding: 8px; border-radius: 26px; }
  .faq-tabs { gap: 2px; padding-bottom: 10px; }
  .faq-tab { flex: 1; min-height: 50px; padding: 10px 7px; font-size: 11px; line-height: 1.4; }
  .faq-item { border-radius: 18px; margin-bottom: 7px; }
  .faq-item summary { min-height: 74px; padding: 20px 18px; gap: 14px; border-radius: 18px; font-size: 14px; line-height: 1.5; }
  .faq-answer { padding: 0 18px 23px; }
  .faq-answer p { font-size: 13px; line-height: 1.75; }
  .faq-contact { flex-direction: column; gap: 16px; min-height: 0; padding: 24px 20px 35px; border-radius: 26px; text-align: center; }
  .faq-contact-content { max-width: 100%; }
  .faq-contact-portraits img { width: 62px; height: 62px; }
  .faq-contact-portraits img:nth-child(2) { width: 74px; height: 74px; }
  .faq-contact-portraits img + img { margin-inline-start: -18px; }
  .faq-contact-caption { margin-bottom: 8px; font-size: 12px; }
  .faq-contact-email { justify-content: center; gap: 10px; font-size: clamp(19px, 5.5vw, 28px); }
  .faq-contact-copy-icon { flex-basis: 32px; width: 32px; height: 32px; }
  .faq-contact-copy-icon svg { width: 19px; height: 19px; }
  .faq-contact-status { inset-inline: 0; top: calc(100% + 4px); font-size: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  .wellist-faq *, .wellist-faq *::before, .wellist-faq *::after { transition: none !important; animation: none !important; }
}
