.faq-page{background-color:var(--bg)} .faq-hero{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:var(--white);padding:4rem 0;position:relative;overflow:hidden} .faq-hero-content{max-width:var(--max-width);margin:0 auto;padding:0 var(--padding-horizontal);position:relative;z-index:2;text-align:center} .faq-hero h1{font-size:3rem;font-weight:700;line-height:1.2;margin-bottom:1.5rem;color:var(--white)} .faq-hero p{font-size:1.25rem;line-height:1.6;margin-bottom:2rem;opacity:0.95;color:rgba(255,255,255,0.9);max-width:700px;margin-left:auto;margin-right:auto} .faq-main-content{padding:3rem 0;max-height:100%} .faq-container{max-width:900px;margin:0 auto;padding:0 var(--padding-horizontal)} .faq-quick-nav{display:flex;gap:1rem;margin-bottom:3rem;flex-wrap:wrap;justify-content:center} .faq-nav-btn{padding:0.75rem 1.5rem;background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-md);color:var(--text);text-decoration:none;font-weight:500;transition:var(--transition);display:flex;align-items:center;gap:0.5rem;box-shadow:var(--shadow-sm)} .faq-nav-btn:hover{background:var(--primary);color:var(--white);transform:translateY(-2px);box-shadow:var(--shadow-md)} .faq-search-btn svg,.faq-nav-btn svg{width:18px;height:18px} .faq-category{margin-bottom:4rem;background:var(--white);border-radius:var(--radius-lg);padding:2.5rem;box-shadow:var(--shadow-md);border:1px solid var(--border-light)} .faq-category h2{font-size:1.75rem;margin-bottom:2rem;color:var(--text);display:flex;align-items:center;gap:0.75rem;padding-bottom:1rem;border-bottom:2px solid var(--primary-light);position:relative} .faq-category h2::after{content:'';position:absolute;bottom:-2px;left:0;width:60px;height:2px;background:var(--primary);border-radius:2px} .faq-category h2 svg{width:24px;height:24px;color:var(--primary);flex-shrink:0} .faq-items{display:flex;flex-direction:column;gap:1rem} .faq-item{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-md);overflow:hidden;transition:var(--transition)} .faq-item.active{border-color:var(--primary);box-shadow:var(--shadow-md)} .faq-question{padding:1.5rem;display:flex;align-items:center;justify-content:space-between;cursor:pointer;background:var(--white);transition:var(--transition)} .faq-question:hover{background:var(--primary-extra-light)} .faq-item.active .faq-question{background:var(--primary-extra-light)} .faq-question-content{display:flex;align-items:center;gap:1rem;flex:1} .faq-question-icon{width:40px;height:40px;background:var(--primary-extra-light);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:var(--transition)} .faq-item.active .faq-question-icon{background:var(--primary)} .faq-question-icon svg{width:20px;height:20px;color:var(--primary);transition:var(--transition)} .faq-item.active .faq-question-icon svg{color:var(--white)} .faq-question h3{font-size:1.125rem;margin:0;color:var(--text);font-weight:600;line-height:1.4} .faq-item.active .faq-question h3{color:var(--primary-dark)} .faq-toggle{width:24px;height:24px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:var(--transition)} .faq-toggle svg{width:20px;height:20px;color:var(--text-light);transition:var(--transition)} .faq-item.active .faq-toggle svg{transform:rotate(180deg);color:var(--primary)} .faq-answer{max-height:0;overflow:hidden;transition:max-height 0.3s ease;background:var(--bg-secondary)} .faq-item.active .faq-answer{max-height:500px} .faq-answer-content{padding:1.5rem} .faq-answer-content p{font-size:1rem;line-height:1.6;color:var(--text-medium);margin:0} .faq-answer-content ul,.faq-answer-content ol{margin:1rem 0;padding-left:1.5rem} .faq-answer-content li{margin-bottom:0.5rem;color:var(--text-medium);line-height:1.5} .faq-search{background:var(--white);border-radius:var(--radius-lg);padding:2.5rem;box-shadow:var(--shadow-md);border:1px solid var(--border-light);margin-bottom:3rem;text-align:center} .faq-search h2{font-size:1.75rem;margin-bottom:1rem;color:var(--text)} .faq-search p{font-size:1.125rem;margin-bottom:2rem;color:var(--text-medium)} .search-container{max-width:500px;margin:0 auto;position:relative} .faq-search-input{width:100%;padding:1rem 1.5rem;border:1px solid var(--border);border-radius:var(--radius-md);font-size:1rem;background:var(--white);box-shadow:var(--shadow-sm);transition:var(--transition)} .faq-search-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)} .faq-search-btn{position:absolute;right:0.5rem;top:50%;transform:translateY(-50%);background:var(--primary);color:var(--white);border:none;border-radius:var(--radius-sm);padding:0.5rem 1rem;cursor:pointer;transition:var(--transition)} .faq-search-btn:hover{background:var(--primary-dark)} .contact-cta{text-align:center;padding:4rem 2rem;background:var(--bg-secondary);border-radius:var(--radius-lg);margin-top:4rem} .contact-cta h2{font-size:2rem;margin-bottom:1rem;color:var(--text)} .contact-cta p{font-size:1.125rem;margin-bottom:2rem;color:var(--text-medium);max-width:600px;margin-left:auto;margin-right:auto} .contact-btn{display:inline-flex;align-items:center;gap:0.75rem;padding:1rem 2rem;background:var(--primary);color:var(--white);border-radius:var(--radius-md);text-decoration:none;font-weight:600;transition:var(--transition)} .contact-btn:hover{background:var(--primary-dark);transform:translateY(-2px);box-shadow:var(--shadow-md)} .contact-btn svg{width:20px;height:20px} @media (max-width:768px){.faq-hero{padding:3rem 0} .faq-hero h1{font-size:2.25rem} .faq-hero p{font-size:1.125rem} .faq-category,.faq-search{padding:2rem} .faq-category h2{font-size:1.5rem} .faq-quick-nav{flex-direction:column;align-items:center} .faq-nav-btn{width:100%;max-width:300px;justify-content:center} .faq-question{padding:1.25rem} .faq-question-content{gap:0.75rem} .faq-question-icon{width:36px;height:36px} .faq-question-icon svg{width:18px;height:18px} .contact-cta{padding:3rem 1rem} } @media (max-width:480px){.faq-hero h1{font-size:2rem} .faq-hero p{font-size:1rem} .faq-category,.faq-search{padding:1.5rem} .faq-category h2{font-size:1.25rem} .faq-question h3{font-size:1rem} .contact-cta h2{font-size:1.5rem} .contact-cta p{font-size:1rem} } .faq-category,.faq-search,.contact-cta{opacity:0;transform:translateY(20px);transition:opacity 0.6s ease,transform 0.6s ease} .faq-category.visible,.faq-search.visible,.contact-cta.visible{opacity:1;transform:translateY(0)}