.faq-header{padding:var(--space-xl) 0;background:radial-gradient(circle at 20% 30%,var(--color-primary-light) 0,var(--color-primary) 100%);position:relative;overflow:hidden}.faq-header:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;opacity:.05;background-image:radial-gradient(circle,#ffffff 2px,transparent 0);background-size:24px 24px;pointer-events:none}.faq-header h1{font-size:2.5rem;margin-bottom:var(--space-sm)}.faq-list{display:flex;flex-direction:column;gap:var(--space-md);margin-top:var(--space-lg)}.faq-item{background-color:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);overflow:hidden;padding:0;transition:border-color .3s}.faq-item:hover{border-color:var(--color-secondary)}.faq-question{display:flex;justify-content:space-between;align-items:center;width:100%;padding:var(--space-md);background:none;border:none;text-align:left;cursor:pointer;color:var(--color-primary);font-family:var(--font-heading);font-size:1.25rem;font-weight:700;outline:none}.faq-icon{color:var(--color-secondary);transition:transform .3s ease;flex-shrink:0;margin-left:1rem}.faq-item.open .faq-icon{transform:rotate(180deg)}.faq-answer-wrapper{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s ease-out;overflow:hidden}.faq-item.open .faq-answer-wrapper{grid-template-rows:1fr}.faq-answer{min-height:0;padding:0 var(--space-md) var(--space-md) var(--space-md);line-height:1.6}.faq-answer,.faq-footer h2{color:var(--color-text-main)}