/* ============================================================
   JET ATLAS — ht-faq (numbered editorial accordion)
   Ported 1:1 from home-two.css. Single-open accordion driven by
   ht-core.js (data-ht-faq / data-ht-faq-item).
   ============================================================ */
.ht-faq { background: var(--ht-paper); padding: clamp(80px,12vw,150px) 0; }
.ht-faq__grid { display: grid; grid-template-columns: 0.8fr 1.2fr; gap: clamp(36px,6vw,90px); align-items: start; }
.ht-faq__intro { display: flex; flex-direction: column; gap: 16px; align-items: flex-start; position: sticky; top: 110px; }
.ht-faq__help { font-family: var(--ht-ui); font-size: 14px; line-height: 1.7; color: var(--ht-mut); }
.ht-faq__help a { color: var(--ht-ink); border-bottom: 2px solid var(--ht-lime); padding-bottom: 2px; transition: opacity .3s; }
.ht-faq__help a:hover { opacity: 0.6; }
.ht-faq__list { border-top: 1px solid var(--ht-line); }
.ht-faq__item { border-bottom: 1px solid var(--ht-line); }
.ht-faq__q { width: 100%; background: none; border: 0; cursor: pointer; display: flex; align-items: center; gap: clamp(14px,2vw,26px); padding: 26px 0; text-align: left; }
.ht-faq__num { font-family: var(--ht-data); font-weight: 700; font-size: 14px; color: var(--ht-mut); flex: 0 0 auto; transition: background .35s, color .35s, padding .35s; padding: 2px 0; }
.ht-faq__item.is-open .ht-faq__num { background: var(--ht-lime); color: var(--ht-ink); padding: 3px 9px; border-radius: 7px; }
.ht-faq__qt { flex: 1; font-family: var(--ht-serif); font-size: clamp(19px,2vw,26px); font-weight: 500; color: var(--ht-ink); }
.ht-faq__plus { position: relative; flex: 0 0 22px; height: 22px; }
.ht-faq__plus::before, .ht-faq__plus::after { content: ""; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); background: var(--ht-ink); transition: transform .35s var(--ht-ease), opacity .35s; }
.ht-faq__plus::before { width: 16px; height: 2px; }
.ht-faq__plus::after { width: 2px; height: 16px; }
.ht-faq__item.is-open .ht-faq__plus::after { transform: translate(-50%, -50%) rotate(90deg); opacity: 0; }
.ht-faq__a { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .4s var(--ht-ease); }
.ht-faq__a > p { overflow: hidden; color: var(--ht-mut); line-height: 1.7; max-width: 62ch; padding-left: clamp(28px,4vw,40px); margin: 0; }
.ht-faq__item.is-open .ht-faq__a { grid-template-rows: 1fr; padding-bottom: 26px; }

@media (max-width: 1024px) {
  .ht-faq__grid { grid-template-columns: 1fr; }
  .ht-faq__intro { position: static; align-items: center; text-align: center; }
}
