.faq-section{position:relative;width:100%;padding:var(--space-2xl) 0 var(--space-3xl);background:var(--bg-surface)}.faq-section:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 0,rgba(255,255,255,.02) 50%,transparent 100%);pointer-events:none;z-index:0;opacity:var(--gradient-opacity, 0);transition:opacity .3s linear}.faq-inner{display:grid;grid-template-columns:.35fr .65fr;gap:clamp(2rem,5vw,6rem);width:min(100% - var(--space-md) * 2,var(--content-max));margin-inline:auto;align-items:start}.faq-left{position:sticky;top:calc(var(--nav-height,70px) + var(--space-md))}.faq-title{font-family:var(--font-primary);font-weight:var(--fw-regular);font-size:var(--fs-section);color:var(--text-primary);letter-spacing:var(--ls-display);line-height:var(--lh-heading);margin-bottom:var(--space-xs)}.faq-sub{font-family:var(--font-primary);font-weight:var(--fw-light);font-size:clamp(1rem,1.2vw,1.15rem);color:var(--text-secondary);line-height:var(--lh-body)}.faq-tabs{display:flex;gap:.25rem;position:relative;padding-bottom:.75rem;margin-bottom:var(--space-md);border-bottom:1px solid var(--border-subtle)}.faq-tab{all:unset;box-sizing:border-box;font-family:var(--font-primary);font-size:clamp(.75rem,.85vw,.85rem);font-weight:var(--fw-medium);color:var(--text-muted);padding:.5em 1em;cursor:pointer;white-space:nowrap;transition:color var(--dur-fast) var(--ease-smooth);user-select:none;position:relative;z-index:1}.faq-tab:hover{color:var(--text-secondary)}.faq-tab.is-active{color:var(--text-primary)}.faq-tab:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm,4px)}.faq-tab-count{font-size:.75em;font-weight:var(--fw-regular);color:var(--text-muted);opacity:.6;margin-left:.2em}.faq-tab.is-active .faq-tab-count{color:var(--accent);opacity:.8}.faq-tab-indicator{position:absolute;bottom:-1px;left:0;height:2px;background:var(--accent);border-radius:1px;pointer-events:none;z-index:2}.faq-right{display:flex;flex-direction:column;gap:0}.faq-accordion{display:flex;flex-direction:column;overflow:clip}.faq-item{border-bottom:1px solid var(--border-subtle);position:relative}.faq-item:first-child{border-top:1px solid var(--border-subtle)}.faq-item:before{content:"";position:absolute;left:0;top:15%;bottom:15%;width:2px;background:var(--accent);transform:scaleY(0);transform-origin:center;transition:transform var(--dur-normal) var(--ease-smooth);border-radius:1px;z-index:1}.faq-item.is-open:before,.faq-item:hover:before{transform:scaleY(1)}.faq-question{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);width:100%;padding:clamp(1rem,1.5vw,1.4rem) 0;padding-left:0;background:0 0;border:none;text-align:left;font-family:var(--font-primary);font-size:clamp(.85rem,1vw,1rem);font-weight:var(--fw-medium);color:var(--text-primary);line-height:var(--lh-body);cursor:pointer;user-select:none;transition:color var(--dur-fast) var(--ease-smooth),padding-left var(--dur-normal) var(--ease-smooth)}.faq-question:hover{color:var(--accent)}.faq-item.is-open .faq-question,.faq-item:hover .faq-question{padding-left:.75rem}.faq-question span{flex:1}.faq-icon{flex-shrink:0;color:var(--text-muted);transition:color var(--dur-fast) var(--ease-smooth)}.faq-item.is-open .faq-icon,.faq-question:hover .faq-icon{color:var(--accent)}.faq-answer{padding:0 0 clamp(1rem,1.5vw,1.4rem);padding-left:.75rem;overflow:hidden;height:0;opacity:0}.faq-answer p{font-family:var(--font-primary);font-size:clamp(.8rem,.9vw,.92rem);font-weight:var(--fw-regular);color:var(--text-secondary);line-height:var(--lh-body);max-width:55ch;margin:0}.faq-word{display:inline}.faq-cta-block{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:clamp(1.5rem,2vw,2rem) 0;margin-top:var(--space-sm);border-top:1px solid var(--border-subtle)}.faq-cta-text{font-family:var(--font-primary);font-size:clamp(.8rem,.95vw,.95rem);color:var(--text-secondary);margin:0}.faq-cta-link{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.9rem;font-family:var(--font-primary);font-size:clamp(.85rem,.95vw,1rem);font-weight:var(--fw-medium);letter-spacing:.02em;color:#111;text-decoration:none;padding:.85rem 1.8rem;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:var(--radius-pill);box-shadow:0 2px 8px #ffffff0f,0 8px 24px #ffffff14;transition:background .6s cubic-bezier(.25,.46,.45,.94),color .6s cubic-bezier(.25,.46,.45,.94),transform .6s cubic-bezier(.25,.46,.45,.94),box-shadow .6s cubic-bezier(.25,.46,.45,.94),border-color .6s cubic-bezier(.25,.46,.45,.94)}.faq-cta-link:hover{background:var(--accent);color:#111;transform:translateY(-1px);box-shadow:0 4px 12px #fcb90026,0 16px 48px #fcb9001a;border-color:#00000014}.faq-cta-link:active{transform:translateY(2px) scale(.97);transition:transform .1s ease,box-shadow .1s ease;box-shadow:0 1px 4px #0000001a,0 4px 12px #00000014}.faq-cta-link .dashed-border-canvas{opacity:0;transition:opacity .35s ease;max-width:none;max-height:none}.faq-cta-link:hover .dashed-border-canvas{opacity:1}.faq-cta-link svg{flex-shrink:0;transition:transform var(--dur-fast) var(--ease-smooth)}.faq-cta-link:hover svg{transform:translate(2px,-2px)}body.light-mode .faq-kicker{border-color:#00000012;background:#00000008}body.light-mode .faq-item{border-bottom-color:#0000000f}body.light-mode .faq-item:first-child,body.light-mode .faq-cta-block{border-top-color:#0000000f}body.light-mode .faq-cta-link{background:#111;color:#fff;border-color:#00000026;box-shadow:0 2px 8px #0000001a,0 8px 24px #00000026}body.light-mode .faq-cta-link:hover{background:var(--accent);color:#111;border-color:rgba(var(--accent-rgb),.3)}body.light-mode .faq-cta-link:active{background:var(--accent-hover);color:#111}body.light-mode .faq-tabs{border-bottom-color:#0000000f}@media(max-width:1024px){.faq-section{padding:var(--space-xl) 0 var(--space-2xl)}.faq-inner{grid-template-columns:1fr;gap:var(--space-lg)}.faq-left{position:static;text-align:center}.faq-title{font-size:clamp(1.6rem,3.5vw,2.8rem)}.faq-answer p{max-width:none}.faq-kicker{margin-inline:auto}.faq-cta-block{flex-direction:column;text-align:center}.faq-tabs{justify-content:center}}@media(max-width:640px){.faq-accordion{overflow:visible}.faq-cta-block{margin-bottom:var(--space-md)}.faq-section{padding:clamp(var(--space-sm),4vw,var(--space-lg)) 0 var(--space-xl)}.faq-inner{gap:clamp(var(--space-md),3vw,var(--space-lg))}.faq-title{font-size:clamp(1.3rem,6vw,2.2rem)}.faq-sub{font-size:clamp(.8125rem,2.5vw,.9rem)}.faq-kicker{font-size:clamp(.6875rem,2vw,.75rem);padding:clamp(.25em,1vw,.3em) clamp(.6em,2vw,.75em);letter-spacing:clamp(.12em,.5vw,.16em)}.faq-tabs{justify-content:flex-start;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:.6rem;margin-bottom:var(--space-sm)}.faq-tabs::-webkit-scrollbar{display:none}.faq-tab{font-size:clamp(.7rem,2.2vw,.8rem);padding:.4em .75em;min-height:44px;display:inline-flex;align-items:center}.faq-question{font-size:clamp(.8125rem,2.5vw,.9rem);padding:clamp(.8rem,2vw,1.1rem) 0;gap:clamp(var(--space-2xs),1vw,var(--space-xs))}.faq-answer{padding:0 0 clamp(.8rem,1.5vw,1rem);padding-left:.5rem}.faq-answer p{font-size:clamp(.8125rem,2.5vw,.9rem);word-break:break-word;overflow-wrap:break-word;line-height:1.6}.faq-icon{width:16px;height:16px}.faq-cta-block{gap:clamp(var(--space-xs),2vw,var(--space-sm));padding:clamp(.8rem,2vw,1.5rem) 0}.faq-cta-text{font-size:clamp(.8125rem,2.5vw,.85rem)}.faq-cta-link{font-size:clamp(.8125rem,2.5vw,.85rem);padding:clamp(.4em,1vw,.5em) clamp(.8em,2vw,1em);width:100%;justify-content:center}.faq-item.is-open .faq-question,.faq-item:hover .faq-question{padding-left:.5rem}}@media(min-width:1920px){.faq-inner{gap:clamp(4rem,6vw,8rem)}.faq-question{font-size:clamp(1rem,1.1vw,1.15rem);padding:clamp(1.3rem,1.6vw,1.6rem) 0}.faq-answer p{font-size:clamp(.9rem,1vw,1rem);max-width:60ch}.faq-cta-text{font-size:clamp(.9rem,1vw,1rem)}.faq-cta-link{font-size:clamp(.85rem,.95vw,.95rem)}.faq-tab{font-size:clamp(.85rem,.9vw,.95rem)}}@media(prefers-reduced-motion:reduce){.faq-section .faq-kicker,.faq-section .faq-title{opacity:1;transform:none}.faq-icon,.faq-answer{transition:none!important}.faq-item:before{transition:none!important}.faq-question{transition:color 0s,padding-left 0s!important}.faq-tab-indicator{transition:none!important}}@media(hover:none){.faq-item:before{display:none}.faq-item:hover .faq-question{padding-left:0}.faq-item.is-open .faq-question{padding-left:.5rem}}
