.header { text-align: center; margin-bottom: 4rem; } .badge { display: inline-flex; align-items: center; gap: 0.5rem; padding: 0.5rem 1.25rem; background: linear-gradient(135deg, rgba(236, 72, 153, 0.1), rgba(59, 130, 246, 0.1)); border: 1px solid rgba(236, 72, 153, 0.2); border-radius: 50px; font-size: 0.875rem; font-weight: 600; color: var(--primary); margin-bottom: 1rem; } .title { font-size: clamp(2rem, 5vw, 3rem); font-weight: 800; margin-bottom: 1rem; line-height: 1.2; } .subtitle { font-size: 1.125rem; color: var(--text-secondary); max-width: 700px; margin: 0 auto; } .contactLink { color: var(--primary); text-decoration: none; font-weight: 600; transition: color 0.3s ease; } .contactLink:hover { color: var(--secondary); text-decoration: underline; } .faqContainer { max-width: 900px; margin: 0 auto 4rem; } .faqItem { background: var(--card-bg); border: 1px solid var(--border-color); border-radius: 16px; margin-bottom: 1rem; overflow: hidden; transition: all 0.3s ease; } .faqItem:hover { border-color: var(--primary); box-shadow: 0 4px 20px rgba(236, 72, 153, 0.1); } .faqItem.open { border-color: var(--primary); } .faqQuestion { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1.5rem; background: transparent; border: none; cursor: pointer; text-align: left; transition: all 0.3s ease; } .faqQuestion:hover { background: rgba(236, 72, 153, 0.05); } .questionText { font-size: 1.125rem; font-weight: 600; color: var(--text-primary); flex: 1; } .icon { width: 24px; height: 24px; color: var(--primary); transition: transform 0.3s ease; flex-shrink: 0; } .faqItem.open .icon { transform: rotate(180deg); } .faqAnswer { max-height: 0; overflow: hidden; transition: max-height 0.3s ease; } .faqItem.open .faqAnswer { max-height: 500px; } .answerContent { padding: 0 1.5rem 1.5rem; } .answerContent p { font-size: 1rem; line-height: 1.7; color: var(--text-secondary); margin: 0; } .ctaBox { background: linear-gradient(135deg, rgba(236, 72, 153, 0.1), rgba(59, 130, 246, 0.1)); border: 1px solid var(--border-color); border-radius: 24px; padding: 3rem 2rem; text-align: center; position: relative; overflow: hidden; } .ctaBox::before { content: ''; position: absolute; top: -50%; left: -50%; width: 200%; height: 200%; background: radial-gradient(circle, rgba(236, 72, 153, 0.1) 0%, transparent 70%); animation: rotate 20s linear infinite; } @keyframes rotate { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } .ctaTitle { font-size: 1.75rem; font-weight: 800; color: var(--text-primary); margin-bottom: 0.75rem; position: relative; z-index: 1; } .ctaText { font-size: 1.125rem; color: var(--text-secondary); margin-bottom: 2rem; position: relative; z-index: 1; } .ctaButtons { display: flex; flex-direction: column; gap: 1rem; align-items: center; position: relative; z-index: 1; } @media (min-width: 640px) { .ctaButtons { flex-direction: row; justify-content: center; } } @media (min-width: 768px) { .ctaBox { padding: 4rem 3rem; } .questionText { font-size: 1.25rem; } .answerContent p { font-size: 1.0625rem; } }