/* /faq (faq.leaf). Plain CSS on the marketing tokens (Resources/css/tokens.css, compiled
   into admin.css), in the same shape as about.css. The public pages are pinned light
   (data-theme="light" on <html>). Questions are native <details>, so the page works
   with no script and every answer is in the HTML for crawlers. */

.fk-faqpage {
    color: var(--fk-ink);
}

.fk-faqpage__wrap {
    max-width: 52rem;
    margin-inline: auto;
    padding-inline: var(--fk-gutter);
}

.fk-faqpage a {
    color: var(--fk-primary-text, #b45309);
    text-decoration: underline;
    text-decoration-color: var(--fk-hairline);
    text-underline-offset: 4px;
}

.fk-faqpage a:hover {
    text-decoration-color: currentColor;
}

.fk-faqpage a:focus-visible,
.fk-faqpage__item summary:focus-visible {
    outline: 2px solid var(--fk-focus, #b45309);
    outline-offset: 3px;
    border-radius: var(--fk-radius-sm);
}

/* ---------- Intro ---------- */

.fk-faqpage__intro {
    position: relative;
    padding-block: var(--fk-space-2xl) var(--fk-space-xl);
    overflow: hidden;
}

.fk-faqpage__intro::before {
    content: "";
    position: absolute;
    inset: -30% -10% auto auto;
    width: 38rem;
    height: 38rem;
    background: var(--fk-accent-glow);
    pointer-events: none;
    z-index: 0;
}

.fk-faqpage__intro .fk-faqpage__wrap {
    position: relative;
    z-index: 1;
}

.fk-faqpage__eyebrow {
    font-size: var(--fk-font-eyebrow);
    font-weight: 700;
    letter-spacing: var(--fk-tracking-eyebrow);
    text-transform: uppercase;
    color: var(--fk-primary-text, #b45309);
}

.fk-faqpage__title {
    margin-top: var(--fk-space-sm);
    max-width: 22ch;
    font-size: var(--fk-font-h1);
    font-weight: 800;
    line-height: var(--fk-leading-tight);
    letter-spacing: var(--fk-tracking-tight);
}

.fk-faqpage__lead {
    margin-top: var(--fk-space-lg);
    max-width: 44rem;
    font-size: var(--fk-font-lead);
    line-height: var(--fk-leading-body);
    color: var(--fk-ink-soft);
}

.fk-faqpage__toc ul {
    display: flex;
    flex-wrap: wrap;
    gap: var(--fk-space-sm);
    margin-top: var(--fk-space-xl);
    padding: 0;
    list-style: none;
}

.fk-faqpage__toc a {
    display: inline-block;
    padding: 0.45rem 0.9rem;
    border: 1px solid var(--fk-hairline);
    border-radius: var(--fk-radius-pill);
    background: var(--fk-surface-raised);
    font-size: var(--fk-font-small);
    font-weight: 600;
    color: var(--fk-ink);
    text-decoration: none;
}

.fk-faqpage__toc a:hover {
    border-color: currentColor;
}

/* ---------- Groups ---------- */

.fk-faqpage__group {
    padding-block: var(--fk-space-xl);
    scroll-margin-top: 5rem;
}

.fk-faqpage__group:nth-of-type(even) {
    background: var(--fk-surface-alt);
}

.fk-faqpage__h2 {
    font-size: var(--fk-font-h2);
    font-weight: 700;
    line-height: var(--fk-leading-tight);
    letter-spacing: var(--fk-tracking-tight);
}

.fk-faqpage__list {
    margin-top: var(--fk-space-lg);
    border-top: 1px solid var(--fk-hairline);
}

.fk-faqpage__item {
    border-bottom: 1px solid var(--fk-hairline);
    scroll-margin-top: 5rem;
}

.fk-faqpage__item summary {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: var(--fk-space-md);
    padding-block: var(--fk-space-md);
    cursor: pointer;
    list-style: none;
}

.fk-faqpage__item summary::-webkit-details-marker {
    display: none;
}

.fk-faqpage__item summary::after {
    content: "+";
    flex: none;
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 1;
    color: var(--fk-ink-soft);
}

.fk-faqpage__item[open] summary::after {
    content: "\2212";
}

.fk-faqpage__item h3 {
    margin: 0;
    font-size: var(--fk-font-body, 1rem);
    font-weight: 650;
    line-height: var(--fk-leading-snug);
    overflow-wrap: anywhere;
}

.fk-faqpage__answer {
    padding-bottom: var(--fk-space-md);
    max-width: 44rem;
    line-height: var(--fk-leading-body);
    color: var(--fk-ink-soft);
    overflow-wrap: anywhere;
}

.fk-faqpage__more {
    margin-top: var(--fk-space-sm);
    font-weight: 600;
}

.fk-faqpage__cta {
    padding-block: var(--fk-space-2xl);
}
