/* FAQ page - scoped. Shared header/footer remain controlled by global.css. */
.faqPage{
  --faq-accent:#c78b1f;
  --faq-accent-strong:#a86d00;
  --faq-ink:var(--text);
  --faq-muted:var(--muted);
  --faq-surface:var(--card);
  --faq-line:var(--border);
}

.faqPage .skipLink{
  position:fixed;left:18px;top:12px;z-index:12000;
  padding:10px 14px;border-radius:999px;background:#111;color:#fff;
  transform:translateY(-160%);transition:transform .2s ease;
}
.faqPage .skipLink:focus{transform:translateY(0)}

.faqPage main{overflow:hidden}
.faqPage .eyebrow{
  display:inline-block;color:var(--faq-accent-strong);font-size:12px;font-weight:800;
  letter-spacing:.16em;text-transform:uppercase;line-height:1.25;
}
.theme-dark.faqPage .eyebrow{color:#e2ad4b}

.faqHero{
  position:relative;padding:92px 0 72px;
  background:
    radial-gradient(circle at 84% 18%, rgba(199,139,31,.12), transparent 31%),
    linear-gradient(180deg, color-mix(in srgb,var(--bg) 96%,#fff 4%), var(--bg));
  border-bottom:1px solid var(--faq-line);
}
.faqHero::after{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.32;
  background-image:linear-gradient(to right,transparent 0 49.8%,rgba(199,139,31,.08) 50%,transparent 50.2%);
  background-size:180px 100%;mask-image:linear-gradient(to bottom,transparent,black 22%,black 78%,transparent);
}
.faqHeroInner{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.75fr);gap:72px;align-items:center}
.faqHeroCopy h1{max-width:760px;margin:12px 0 18px;font-size:clamp(44px,6vw,82px);line-height:.93;letter-spacing:-.055em;font-weight:800}
.faqHeroCopy p{max-width:720px;color:var(--faq-muted);font-size:18px;line-height:1.65}
.faqHeroActions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.faqButton{
  min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:0 20px;border:1px solid var(--faq-line);border-radius:999px;font-weight:800;font-size:14px;
  transition:transform .2s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease,color .2s ease;
}
.faqButton:hover{transform:translateY(-2px)}
.faqButton:focus-visible{outline:3px solid rgba(199,139,31,.28);outline-offset:3px}
.faqButtonPrimary{background:var(--faq-accent);border-color:var(--faq-accent);color:#111;box-shadow:0 10px 28px rgba(168,109,0,.17)}
.faqButtonPrimary:hover{background:#d79b2b;border-color:#d79b2b;box-shadow:0 14px 32px rgba(168,109,0,.24)}
.faqButtonSecondary{background:var(--faq-surface);color:var(--faq-ink)}
.faqButtonSecondary:hover{border-color:color-mix(in srgb,var(--faq-ink) 36%,var(--faq-line));background:color-mix(in srgb,var(--faq-surface) 91%,var(--faq-ink) 9%)}

.faqSearchCard{
  position:relative;padding:28px;border:1px solid var(--faq-line);border-radius:26px;background:color-mix(in srgb,var(--faq-surface) 94%,transparent);
  box-shadow:0 24px 70px rgba(0,0,0,.08);backdrop-filter:blur(12px);
}
.faqSearchCard::before{content:"";position:absolute;left:28px;right:28px;top:0;height:3px;border-radius:99px;background:linear-gradient(90deg,var(--faq-accent),transparent)}
.faqSearchCard label{display:block;margin-bottom:12px;font-size:16px;font-weight:800}
.faqSearchField{display:flex;align-items:center;gap:10px;border:1px solid var(--faq-line);border-radius:16px;background:var(--bg);padding:0 14px;min-height:58px;transition:border-color .2s ease,box-shadow .2s ease}
.faqSearchField:focus-within{border-color:var(--faq-accent);box-shadow:0 0 0 4px rgba(199,139,31,.11)}
.faqSearchIcon{font-size:22px;color:var(--faq-accent-strong);transform:translateY(-1px)}
.faqSearchField input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--faq-ink);font-size:16px;line-height:1.4}
.faqSearchField input::placeholder{color:color-mix(in srgb,var(--faq-muted) 78%,transparent)}
.faqSearchClear{border:0;background:transparent;color:var(--faq-accent-strong);font-weight:800;cursor:pointer;padding:8px}
.faqSearchCard p{margin:10px 0 0;color:var(--faq-muted);font-size:13px;line-height:1.5}
.faqSearchStatus{font-weight:800!important;color:var(--faq-ink)!important}

.faqQuickNav{border-bottom:1px solid var(--faq-line);background:var(--faq-surface)}
.faqQuickNavInner{display:flex;gap:8px;overflow:auto;padding-top:14px;padding-bottom:14px;scrollbar-width:none}
.faqQuickNavInner::-webkit-scrollbar{display:none}
.faqQuickNav a{flex:0 0 auto;padding:9px 13px;border:1px solid var(--faq-line);border-radius:999px;color:var(--faq-muted);font-size:13px;font-weight:750;transition:.2s ease}
.faqQuickNav a:hover,.faqQuickNav a:focus-visible{color:var(--faq-ink);border-color:var(--faq-accent);background:rgba(199,139,31,.08)}

.faqIntro{padding:72px 0;border-bottom:1px solid var(--faq-line)}
.faqIntroGrid{display:grid;grid-template-columns:.82fr 1.18fr;gap:90px;align-items:start}
.faqIntro h2{margin-top:10px;max-width:560px;font-size:clamp(34px,4vw,56px);line-height:.98;letter-spacing:-.045em}
.faqIntroPoints{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.faqIntroPoints p{padding:20px 0;border-top:2px solid var(--faq-line);color:var(--faq-muted);font-size:14px;line-height:1.6}
.faqIntroPoints strong{display:block;margin-bottom:5px;color:var(--faq-ink);font-size:15px}

.faqContent{padding-top:28px;padding-bottom:96px}
.faqGroup{display:grid;grid-template-columns:280px minmax(0,1fr);gap:56px;padding:68px 0;border-bottom:1px solid var(--faq-line);scroll-margin-top:110px}
.faqGroupHead{position:sticky;top:106px;align-self:start}
.faqGroupHead h2{margin-top:10px;font-size:30px;line-height:1.02;letter-spacing:-.035em}
.faqList{border-top:1px solid var(--faq-line)}
.faqItem{border-bottom:1px solid var(--faq-line)}
.faqToggle{width:100%;display:grid;grid-template-columns:46px minmax(0,1fr) 34px;gap:12px;align-items:center;padding:20px 0;border:0;background:transparent;color:var(--faq-ink);text-align:left;cursor:pointer}
.faqNumber{font-size:11px;font-weight:800;letter-spacing:.11em;color:var(--faq-accent-strong)}
.theme-dark.faqPage .faqNumber{color:#e2ad4b}
.faqQuestionText{font-size:17px;font-weight:800;line-height:1.35;letter-spacing:-.01em}
.faqIcon{width:28px;height:28px;display:grid;place-items:center;border:1px solid var(--faq-line);border-radius:50%;font-size:17px;color:var(--faq-accent-strong);transition:transform .22s ease,background .22s ease,border-color .22s ease}
.faqToggle:hover .faqQuestionText{color:var(--faq-accent-strong)}
.faqToggle:hover .faqIcon{border-color:var(--faq-accent);background:rgba(199,139,31,.08)}
.faqToggle[aria-expanded="true"] .faqIcon{transform:rotate(45deg);background:var(--faq-accent);border-color:var(--faq-accent);color:#111}
.faqAnswer{overflow:hidden}
.faqAnswerInner{padding:0 58px 22px}
.faqAnswerInner p{max-width:900px;color:var(--faq-muted);font-size:15px;line-height:1.72}
.faqItem.is-match{background:linear-gradient(90deg,rgba(199,139,31,.055),transparent 68%)}

.faqNoResults{text-align:center;padding:92px 24px}
.faqNoResults h2{margin:10px auto 12px;max-width:720px;font-size:42px;line-height:1}
.faqNoResults p{max-width:640px;margin:0 auto;color:var(--faq-muted)}
.faqNoResults .faqButton{margin-top:24px}

.faqLegalNote{padding:76px 0;background:color-mix(in srgb,var(--faq-surface) 76%,var(--bg));border-top:1px solid var(--faq-line);border-bottom:1px solid var(--faq-line)}
.faqLegalNoteInner{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:start}
.faqLegalNote h2{margin-top:10px;font-size:34px;line-height:1.05;letter-spacing:-.035em}
.faqLegalNote p{color:var(--faq-muted);font-size:15px;line-height:1.7}
.faqPolicyLinks{grid-column:2;display:flex;flex-wrap:wrap;gap:10px}
.faqPolicyLinks a{padding:9px 12px;border:1px solid var(--faq-line);border-radius:999px;font-size:12px;font-weight:800;color:var(--faq-muted);transition:.2s ease}
.faqPolicyLinks a:hover{color:var(--faq-ink);border-color:var(--faq-accent);transform:translateY(-1px)}

.faqCta{padding:78px 0 30px}
.faqCtaCard{position:relative;overflow:hidden;padding:58px;border-radius:28px;background:#11110f;color:#f8f4ec;box-shadow:0 26px 65px rgba(0,0,0,.13)}
.faqCtaCard::after{content:"?";position:absolute;right:34px;top:-52px;font-size:220px;font-weight:900;line-height:1;color:rgba(199,139,31,.07);pointer-events:none}
.faqCtaCard h2{max-width:780px;margin:10px 0 14px;font-size:clamp(38px,5vw,64px);line-height:.96;letter-spacing:-.045em}
.faqCtaCard p{max-width:800px;color:#bdb8af;font-size:15px}
.faqCtaCard .faqButtonSecondary{background:transparent;color:#f8f4ec;border-color:#46443f}
.faqCtaCard .eyebrow{color:#e2ad4b}

@media(max-width:980px){
 .faqHeroInner{grid-template-columns:1fr;gap:40px}.faqSearchCard{max-width:760px}
 .faqIntroGrid{grid-template-columns:1fr;gap:36px}.faqIntroPoints{grid-template-columns:1fr 1fr 1fr}
 .faqGroup{grid-template-columns:1fr;gap:24px}.faqGroupHead{position:static}
 .faqLegalNoteInner{grid-template-columns:1fr;gap:24px}.faqPolicyLinks{grid-column:1}
}

@media(max-width:680px){
 .faqHero{padding:64px 0 48px}.faqHeroCopy h1{font-size:48px}.faqHeroCopy p{font-size:16px}
 .faqHeroActions{display:grid;grid-template-columns:1fr}.faqButton{width:100%}
 .faqSearchCard{padding:20px;border-radius:20px}.faqSearchField{min-height:54px}
 .faqIntro{padding:52px 0}.faqIntroPoints{grid-template-columns:1fr;gap:10px}
 .faqContent{padding-bottom:64px}.faqGroup{padding:48px 0}.faqGroupHead h2{font-size:27px}
 .faqToggle{grid-template-columns:34px minmax(0,1fr) 32px;padding:18px 0;gap:8px}.faqQuestionText{font-size:16px}
 .faqAnswerInner{padding:0 0 20px 42px}.faqAnswerInner p{font-size:14px}
 .faqLegalNote{padding:56px 0}.faqCta{padding:54px 0 16px}.faqCtaCard{padding:34px 24px;border-radius:22px}.faqCtaCard h2{font-size:39px}
}

@media(prefers-reduced-motion:reduce){
 .faqPage *, .faqPage *::before, .faqPage *::after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}
}
