/* Public FAQ. Scoped to this Abundance surface; no host-theme overrides. */
.tbfab-faq-page{--faq-ink:#15283b;--faq-muted:#4c6174;--faq-bg:#f7fafb;--faq-surface:#fff;--faq-line:#dce5e8;--faq-accent:#087f70;--faq-accent2:#2461af;max-width:1380px;margin:0 auto;padding:0 clamp(14px,2.5vw,34px) 48px;color:var(--faq-ink);font:400 16px/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.tbfab-faq-page *{box-sizing:border-box}.tbfab-faq-page a{text-underline-offset:3px}.tbfab-faq-page button,.tbfab-faq-page input{font:inherit}.tbfab-faq-page button{cursor:pointer}.tbfab-faq-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.6fr) minmax(170px,.5fr);align-items:center;gap:2rem;padding:clamp(32px,5vw,76px);margin:4px 0 24px;border-radius:28px;background:radial-gradient(circle at 90% 20%,rgba(91,220,201,.22),transparent 34%),linear-gradient(135deg,#0c2433 2%,#143d4b 55%,#075e59);color:#f7fffe;box-shadow:0 24px 54px rgba(9,33,48,.15)}.tbfab-faq-hero-copy{position:relative;z-index:1}.tbfab-faq-eyebrow{margin:0 0 12px;color:#87ebda!important;letter-spacing:.13em;font-size:.75rem;font-weight:800}.tbfab-faq-page .tbfab-faq-hero h1{max-width:850px;margin:0 0 20px;color:#fff!important;letter-spacing:-.055em;font-size:clamp(2.3rem,5.3vw,4.9rem);font-weight:850;line-height:1.06}.tbfab-faq-hero h1 em{font-style:normal;color:#98f1d9}.tbfab-faq-page .tbfab-faq-lead{max-width:740px;margin:0;color:#deecec!important;line-height:1.65;font-size:clamp(1rem,1.5vw,1.22rem)}.tbfab-faq-hero-facts{display:flex;flex-wrap:wrap;gap:9px;margin:28px 0 0}.tbfab-faq-hero-facts span{border:1px solid rgba(224,255,250,.22);padding:9px 14px;border-radius:999px;background:rgba(255,255,255,.07);color:#dcf6f0;font-size:.77rem;font-weight:650}.tbfab-faq-hero-facts strong{color:#fff;font-size:.93rem}.tbfab-faq-hero-mark{width:100%;max-width:235px;justify-self:center;aspect-ratio:1;display:grid;place-content:center;text-align:center;gap:0;border:1px solid rgba(255,255,255,.27);border-radius:50%;color:#fff;background:radial-gradient(circle,rgba(255,255,255,.10),transparent 70%);box-shadow:0 0 0 15px rgba(255,255,255,.03),0 0 0 29px rgba(255,255,255,.02);transform:rotate(-11deg)}.tbfab-faq-hero-mark span{font-size:clamp(.75rem,1.6vw,1.2rem);font-weight:900;letter-spacing:.16em}.tbfab-faq-hero-mark b{font-size:3.7rem;line-height:1.06;color:#8feeda}.tbfab-faq-search-panel{padding:clamp(20px,3.5vw,36px);margin:0 0 30px;border:1px solid var(--faq-line);border-radius:22px;background:var(--faq-surface);box-shadow:0 12px 34px rgba(17,50,66,.05)}.tbfab-faq-search-panel>label{display:block;margin-bottom:8px;font-weight:800;font-size:.98rem;color:var(--faq-ink)}.tbfab-faq-search-field{display:flex;align-items:center;gap:9px;padding:2px 8px 2px 17px;border:1.5px solid #adcacb;border-radius:14px;background:var(--faq-bg)}.tbfab-faq-search-field span{font-size:1.8rem;color:var(--faq-accent)}.tbfab-faq-page .tbfab-faq-search-field input{flex:1;min-width:0;width:100%;height:52px;outline:none;border:0!important;box-shadow:none!important;background:transparent!important;color:var(--faq-ink)!important;font-size:.95rem}.tbfab-faq-page input::placeholder{color:#60788b;opacity:1}.tbfab-faq-page .tbfab-faq-search-field button{padding:8px 12px;border:0;border-radius:10px;background:#def1ed;color:#07564f;font-weight:800;font-size:.8rem}.tbfab-faq-search-panel>p{margin:9px 0 15px;color:var(--faq-muted);font-size:.8rem}.tbfab-faq-filter-list{display:flex;flex-wrap:wrap;gap:8px}.tbfab-faq-page .tbfab-faq-filter-list button{border:1px solid var(--faq-line);border-radius:999px;padding:8px 13px;background:var(--faq-bg);color:var(--faq-ink);font-size:.74rem;line-height:1.4;font-weight:750}.tbfab-faq-page .tbfab-faq-filter-list button.is-current{background:#0a7067;color:#fff;border-color:#0a7067}.tbfab-faq-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.tbfab-faq-page .tbfab-faq-actions button{border:1px solid var(--faq-line);border-radius:9px;padding:7px 12px;background:transparent;color:var(--faq-muted);font-size:.78rem;font-weight:700}.tbfab-faq-page .tbfab-faq-actions button:hover{background:var(--faq-bg)}.tbfab-faq-collections{display:grid;gap:26px}.tbfab-faq-collection{scroll-margin-top:18px;padding:clamp(17px,2.4vw,30px);background:var(--faq-surface);border:1px solid var(--faq-line);border-radius:22px}.tbfab-faq-collection-heading{display:flex;justify-content:space-between;gap:15px;align-items:start;margin-bottom:22px}.tbfab-faq-collection-heading span{color:var(--faq-accent);font-size:.68rem;letter-spacing:.14em;font-weight:900}.tbfab-faq-page .tbfab-faq-collection-heading h2{margin:7px 0 5px;color:var(--faq-ink)!important;font-size:clamp(1.45rem,2.8vw,2.1rem);letter-spacing:-.028em;line-height:1.14}.tbfab-faq-page .tbfab-faq-collection-heading p{margin:0;color:var(--faq-muted);font-size:.86rem}.tbfab-faq-collection-heading>strong{white-space:nowrap;padding:7px 10px;border-radius:12px;background:var(--faq-bg);color:var(--faq-muted);font-size:.72rem;font-weight:800}.tbfab-faq-items{display:grid;gap:9px}.tbfab-faq-entry{scroll-margin-top:20px}.tbfab-faq-entry details{border:1px solid var(--faq-line);border-radius:14px;overflow:hidden;background:var(--faq-bg);transition:border-color .18s ease,box-shadow .18s ease}.tbfab-faq-entry details[open]{border-color:#8acac0;box-shadow:0 8px 20px rgba(9,65,78,.055)}.tbfab-faq-page .tbfab-faq-entry summary{display:grid;grid-template-columns:38px minmax(0,1fr) 32px;gap:10px;align-items:center;padding:17px;list-style:none;cursor:pointer;color:var(--faq-ink);font-weight:770;line-height:1.4}.tbfab-faq-entry summary::-webkit-details-marker{display:none}.tbfab-faq-number{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--faq-line);border-radius:10px;background:var(--faq-surface);color:var(--faq-accent);font-weight:900;font-size:.69rem}.tbfab-faq-question{font-size:clamp(.95rem,1.35vw,1.04rem)}.tbfab-faq-indicator{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;border:1px solid var(--faq-line);color:var(--faq-accent);font-size:1.25rem;line-height:1;transition:transform .2s}.tbfab-faq-entry details[open] .tbfab-faq-indicator{transform:rotate(45deg)}.tbfab-faq-answer{padding:0 20px 20px 65px}.tbfab-faq-page .tbfab-faq-answer>p{margin:0 0 18px;color:var(--faq-ink)!important;font-size:.94rem;line-height:1.76}.tbfab-faq-sources{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.tbfab-faq-sources strong{margin-right:6px;color:var(--faq-muted);font-size:.71rem;text-transform:uppercase;letter-spacing:.07em}.tbfab-faq-page .tbfab-faq-sources a{display:inline-flex;gap:6px;align-items:center;max-width:100%;border:1px solid var(--faq-line);border-radius:11px;padding:6px 10px;background:var(--faq-surface);color:var(--faq-accent2)!important;font-size:.76rem;line-height:1.4;font-weight:750;text-decoration:none!important}.tbfab-faq-page .tbfab-faq-sources a:hover{text-decoration:underline!important;border-color:#9dbbd5}.tbfab-faq-page .tbfab-faq-permalink{display:inline-block;margin-top:12px;color:var(--faq-muted)!important;font-size:.72rem;font-weight:650}.tbfab-faq-empty{margin:20px 0;padding:25px;text-align:center;border:1px solid var(--faq-line);border-radius:15px;background:var(--faq-surface)}.tbfab-faq-page .tbfab-faq-empty strong{color:var(--faq-ink)}.tbfab-faq-page .tbfab-faq-empty button{border:0;border-radius:10px;padding:9px 15px;background:var(--faq-accent);color:#fff;font-weight:800}.tbfab-faq-bottom{display:grid;grid-template-columns:1.4fr .8fr;gap:24px;align-items:center;margin-top:34px;padding:clamp(25px,4vw,52px);border-radius:24px;background:linear-gradient(135deg,#113443,#0e5d56);color:#f8ffff}.tbfab-faq-bottom small{color:#9fe9d7;letter-spacing:.13em;font-size:.7rem;font-weight:900}.tbfab-faq-page .tbfab-faq-bottom h2{color:#fff!important;font-size:clamp(1.6rem,3.4vw,2.55rem);line-height:1.13;letter-spacing:-.035em;margin:10px 0}.tbfab-faq-page .tbfab-faq-bottom p{max-width:650px;margin:0;color:#dcefe9!important;font-size:.89rem}.tbfab-faq-bottom-links{display:grid;gap:11px}.tbfab-faq-page .tbfab-faq-bottom-links a{display:block;padding:12px 14px;border:1px solid rgba(255,255,255,.25);border-radius:11px;color:#fff!important;text-decoration:none!important;font-size:.81rem;font-weight:800}.tbfab-faq-page .tbfab-faq-bottom-links a:hover{background:rgba(255,255,255,.1)}.tbfab-faq-page :is(button,input,summary,a):focus-visible{outline:3px solid #54c7ae;outline-offset:3px}.tbfab-faq-page [hidden]{display:none!important}
html[data-tbfab-theme="dark"] .tbfab-faq-page,.tbfab-public[data-theme="dark"] .tbfab-faq-page{--faq-ink:#f3f8fc;--faq-muted:#afc1d0;--faq-bg:#121f2e;--faq-surface:#182838;--faq-line:#35485a;--faq-accent:#77e2d3;--faq-accent2:#8ecbff}.tbfab-faq-page:is([data-theme="dark"]),html[data-tbfab-theme="dark"] .tbfab-faq-page{color:var(--faq-ink)}html[data-tbfab-theme="dark"] .tbfab-faq-page .tbfab-faq-filter-list button.is-current{background:#0a7267;border-color:#72d3c4;color:#fff}html[data-tbfab-theme="dark"] .tbfab-faq-page .tbfab-faq-search-field button{background:#255c56;color:#fff}
@media(max-width:850px){.tbfab-faq-hero{grid-template-columns:1fr}.tbfab-faq-hero-mark{display:none}.tbfab-faq-bottom{grid-template-columns:1fr}}
@media(max-width:540px){.tbfab-faq-page{padding:0 12px 38px}.tbfab-faq-hero{border-radius:18px;padding:28px 20px}.tbfab-faq-page .tbfab-faq-hero h1{font-size:clamp(2rem,8vw,3rem)}.tbfab-faq-search-panel,.tbfab-faq-collection{padding:16px;border-radius:17px}.tbfab-faq-collection-heading{display:block}.tbfab-faq-collection-heading>strong{display:inline-block;margin-top:9px}.tbfab-faq-page .tbfab-faq-entry summary{grid-template-columns:29px minmax(0,1fr) 24px;padding:13px 10px;gap:8px}.tbfab-faq-number{width:28px;height:28px;font-size:.63rem}.tbfab-faq-indicator{width:23px;height:23px}.tbfab-faq-answer{padding:0 13px 17px}.tbfab-faq-sources{align-items:start}.tbfab-faq-sources strong{width:100%}.tbfab-faq-hero-facts span{font-size:.68rem;padding:7px 9px}.tbfab-faq-search-field{padding-left:8px}.tbfab-faq-page .tbfab-faq-search-field input{font-size:.85rem}}
@media(prefers-reduced-motion:reduce){.tbfab-faq-page *{transition:none!important}}
