/* Reforged FAQ: the shared glass palette with native, keyboard-accessible answers. */
.faq-hero{--hero-image:url('assets/infinity.webp')}
.faq-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:64px;align-items:start}
.faq-sidebar{position:sticky;top:calc(var(--header-h) + 36px)}
.faq-topics .eyebrow{font-size:10px;margin-bottom:18px;color:var(--dim)}
.faq-topics a{display:flex;gap:14px;align-items:center;padding:13px 15px;margin-bottom:3px;border-left:2px solid transparent;background:var(--glass);color:var(--muted);font-size:15px;line-height:1.5;transition:background .2s,border-color .2s,color .2s}
.faq-topics a span{font:10px var(--label);color:var(--dim)}
.faq-topics a:hover,.faq-topics a:focus-visible{background:var(--glass-hi);border-left-color:var(--cyan);color:var(--text)}
.faq-reviewed{font:10px/1.9 var(--label);letter-spacing:1px;color:var(--dim);margin:26px 15px 0}
.faq-reviewed time{color:var(--muted)}
.faq-tools{margin-bottom:26px}
.faq-tools>label{display:block;font:10px var(--label);letter-spacing:1.7px;color:var(--muted);margin-bottom:12px}
.faq-search-row{display:flex;gap:10px}
.faq-search-row input{width:100%;min-width:0;min-height:52px;padding:13px 18px;font:17px var(--display);color:var(--text);border:1px solid var(--edge);background:#0c1b2a}
.faq-search-row input::placeholder{color:var(--dim);opacity:1}
.faq-search-row input:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}
.faq-search-row button{padding:0 18px;border:1px solid var(--edge);background:var(--glass);color:var(--cyan);font:11px var(--label)}
.faq-tools>p{font:10px/1.6 var(--label);letter-spacing:1px;color:var(--dim);margin:10px 0 0}
.faq-status{display:flex;flex-wrap:wrap;align-items:center;gap:14px 20px;padding:22px 24px;border:1px solid #f5c54233;border-left:2px solid var(--amber);background:#f5c54208;margin-bottom:48px}
.faq-status p{font-size:15px;line-height:1.7;color:var(--muted);margin:0}
.faq-status strong{font-weight:400;color:var(--text)}
.faq-group{margin-bottom:48px;scroll-margin-top:calc(var(--header-h) + 26px)}
.faq-group-heading{margin-bottom:20px}
.faq-group-heading .eyebrow{font-size:10px;margin-bottom:12px;color:var(--dim)}
.faq-group-heading h2{font-size:clamp(27px,3vw,36px);font-weight:300;line-height:1.2;margin:0}
.faq-item{background:var(--glass);border:1px solid var(--edge);margin-bottom:8px;scroll-margin-top:calc(var(--header-h) + 26px)}
.faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;cursor:pointer;padding:22px 24px;border-left:2px solid transparent;min-height:70px}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:'+';font:25px/1 var(--display);color:var(--cyan);flex:none}
.faq-item summary:hover{border-left-color:var(--cyan);background:var(--glass-hi)}
.faq-item summary:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}
.faq-item summary h3{font-size:19px;line-height:1.45;font-weight:300;margin:0}
.faq-item[open]{border-color:#8bdcff55}
.faq-item[open] summary{border-left-color:var(--cyan);background:var(--glass-hi)}
.faq-item[open] summary::after{content:'−'}
.faq-answer{padding:22px 26px 26px;border-top:1px solid var(--line)}
.faq-answer p{font-size:16px;line-height:1.85;color:var(--muted);max-width:72ch;margin:0 0 16px}
.faq-answer p:last-child{margin-bottom:0}
.faq-answer a{color:var(--cyan);text-decoration:underline;text-underline-offset:3px}
.faq-answer a:hover{color:white}
.faq-empty{padding:28px;background:var(--glass);border:1px solid var(--edge);color:var(--muted);line-height:1.8}
.faq-follow{border-top:1px solid var(--line);padding-top:32px;display:grid;gap:24px}
.faq-follow .eyebrow{font-size:10px;color:var(--dim);margin-bottom:12px}
.faq-follow h2{font-size:28px;font-weight:300;margin:0 0 12px}
.faq-follow p:not(.eyebrow){color:var(--muted);font-size:16px;line-height:1.8;margin:0}
.faq-follow-actions{display:flex;flex-wrap:wrap;gap:12px}
.faq-layout [hidden]{display:none!important}
@media(max-width:1100px){.faq-layout{grid-template-columns:210px minmax(0,1fr);gap:32px}.faq-topics a{padding:12px;font-size:14px;gap:10px}}
@media(max-width:900px){.faq-layout{grid-template-columns:1fr;gap:32px}.faq-sidebar{position:static}.faq-topics{display:flex;flex-wrap:wrap;gap:6px}.faq-topics .eyebrow{width:100%;margin-bottom:6px}.faq-topics a{margin:0;padding:10px 12px}.faq-topics a span{display:none}.faq-reviewed{display:none}}
@media(max-width:760px){.faq-item summary{padding:18px 17px;gap:14px}.faq-item summary h3{font-size:17px}.faq-answer{padding:18px}.faq-answer p{font-size:16px}.faq-status{padding:20px;margin-bottom:36px}.faq-group{margin-bottom:36px}.faq-follow-actions .button{width:100%}.faq-search-row input{font-size:16px;padding-inline:14px}}
