/* FAQ page (Views/Home/Faq.cshtml) - black / yellow like the rest of the public site. Namespaced fq-*. */
body.fq { margin: 0; background: #faf8f1; color: #1b1b1b; font-family: "Montserrat", "Inter", "Segoe UI", system-ui, -apple-system, Roboto, Arial, sans-serif; }
body.fq *, body.fq *::before, body.fq *::after { box-sizing: border-box; }
.fq-wrap { max-width: 980px; margin: 0 auto; padding: 0 20px; }

.fq-hero { background: linear-gradient(120deg, #0b0b0b, #1a1208 60%, #0b0b0b); color: #fff; padding: 46px 0 40px; text-align: center; }
.fq-eyebrow { display: inline-block; font-size: .72rem; font-weight: 700; letter-spacing: .3em; text-transform: uppercase; color: #ffb400; margin-bottom: 10px; }
.fq-hero h1 { margin: 0 0 8px; font-size: clamp(1.7rem, 3.6vw, 2.5rem); font-weight: 800; }
.fq-hero h1 span { color: #ffb400; }
.fq-hero p { margin: 0 auto 22px; color: #e7e2d0; font-size: .92rem; max-width: 560px; }
.fq-search { position: relative; max-width: 560px; margin: 0 auto; }
.fq-search i { position: absolute; left: 16px; top: 50%; transform: translateY(-50%); color: #8c8574; }
.fq-search input { width: 100%; height: 48px; padding: 0 16px 0 44px; border-radius: 999px; border: 2px solid transparent; background: #fff; color: #111; font: inherit; font-size: .9rem; outline: none; }
.fq-search input:focus { border-color: #ffb400; }

.fq-main { padding: 26px 0 50px; }
.fq-tabs { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 18px; border-bottom: 2px solid #ece6d2; }
.fq-tabs button { display: inline-flex; align-items: center; gap: 8px; background: transparent; border: 0; border-bottom: 3px solid transparent; margin-bottom: -2px; padding: 12px 16px; font: 700 .86rem inherit; font-family: inherit; color: #5b5646; cursor: pointer; }
.fq-tabs button:hover { color: #111; }
.fq-tabs button.is-active { color: #111; border-bottom-color: #ffb400; }
.fq-tabs em { font-style: normal; font-size: .7rem; font-weight: 800; background: #ece6d2; color: #4a4636; border-radius: 999px; padding: 2px 8px; }
.fq-tabs button.is-active em { background: #ffb400; color: #111; }

.fq-panel { display: none; }
.fq-panel.is-active { display: block; }
.fq-item { background: #fff; border: 1px solid #ece6d2; border-radius: 12px; margin-bottom: 10px; overflow: hidden; }
.fq-item[hidden] { display: none; }
.fq-qb { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 14px; text-align: left; background: transparent; border: 0; padding: 16px 18px; font: 700 .92rem/1.4 inherit; font-family: inherit; color: #111; cursor: pointer; }
.fq-qb i { color: #ffb400; font-size: 1.3rem; transition: transform .2s; flex: 0 0 auto; }
.fq-item.is-open { border-color: #ffb400; box-shadow: 0 8px 22px rgba(255, 180, 0, .15); }
.fq-item.is-open .fq-qb i { transform: rotate(180deg); }
.fq-a { display: none; padding: 0 18px 16px; font-size: .88rem; line-height: 1.65; color: #3a3a3a; }
.fq-item.is-open .fq-a { display: block; }
.fq-a p { margin: 0 0 8px; } .fq-a ul { margin: 0 0 4px 18px; padding: 0; } .fq-a li { margin-bottom: 4px; }

.fq-none { text-align: center; padding: 34px 10px; color: #5b5646; }
.fq-none[hidden] { display: none; }
.fq-none i { display: block; font-size: 1.8rem; color: #ffb400; margin-bottom: 8px; }
.fq-none b { display: block; margin-bottom: 4px; color: #111; }
.fq-none a, .fq-more a { color: #b87900; font-weight: 700; text-decoration: none; }
.fq-none a:hover, .fq-more a:hover { text-decoration: underline; }
.fq-more { text-align: center; margin-top: 26px; font-size: .88rem; color: #5b5646; }
@media (max-width: 575.98px) { .fq-tabs button { padding: 10px 10px; font-size: .78rem; } .fq-qb { padding: 14px; font-size: .88rem; } }
