.ctaSection { padding: 6rem 0; position: relative; } .ctaCard { background: linear-gradient(135deg, var(--primary), var(--secondary)); border-radius: 32px; padding: 4rem 2rem; position: relative; overflow: hidden; box-shadow: 0 20px 60px rgba(236, 72, 153, 0.3); } .background { position: absolute; top: 0; left: 0; right: 0; bottom: 0; overflow: hidden; } .circle1, .circle2, .circle3 { position: absolute; border-radius: 50%; background: rgba(255, 255, 255, 0.1); animation: float 20s ease-in-out infinite; } .circle1 { width: 300px; height: 300px; top: -100px; right: -100px; animation-delay: 0s; } .circle2 { width: 200px; height: 200px; bottom: -50px; left: 10%; animation-delay: 2s; } .circle3 { width: 150px; height: 150px; top: 50%; left: -50px; animation-delay: 4s; } @keyframes float { 0%, 100% { transform: translateY(0) scale(1); } 50% { transform: translateY(-30px) scale(1.1); } } .content { position: relative; z-index: 1; text-align: center; max-width: 900px; margin: 0 auto; } .badge { display: inline-flex; align-items: center; gap: 0.5rem; padding: 0.5rem 1.25rem; background: rgba(255, 255, 255, 0.2); border: 1px solid rgba(255, 255, 255, 0.3); border-radius: 50px; font-size: 0.875rem; font-weight: 600; color: white; margin-bottom: 1.5rem; backdrop-filter: blur(10px); } .title { font-size: clamp(2rem, 5vw, 3.5rem); font-weight: 800; color: white; margin-bottom: 1.5rem; line-height: 1.2; } .highlight { background: linear-gradient(135deg, #fff, rgba(255, 255, 255, 0.7)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; text-shadow: 0 0 30px rgba(255, 255, 255, 0.3); } .subtitle { font-size: 1.125rem; color: rgba(255, 255, 255, 0.95); margin-bottom: 2.5rem; line-height: 1.7; max-width: 700px; margin-left: auto; margin-right: auto; } .features { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 1rem; margin-bottom: 2.5rem; max-width: 800px; margin-left: auto; margin-right: auto; } .feature { display: flex; align-items: center; gap: 0.75rem; color: white; font-size: 1rem; font-weight: 500; background: rgba(255, 255, 255, 0.1); padding: 0.75rem 1rem; border-radius: 12px; backdrop-filter: blur(10px); border: 1px solid rgba(255, 255, 255, 0.2); } .checkIcon { width: 24px; height: 24px; background: white; color: var(--primary); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: 700; flex-shrink: 0; } .buttons { display: flex; flex-direction: column; gap: 1rem; align-items: center; margin-bottom: 2.5rem; } @media (min-width: 640px) { .buttons { flex-direction: row; justify-content: center; } } .primaryBtn { background: white !important; color: var(--primary) !important; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2); } .primaryBtn:hover { transform: translateY(-2px); box-shadow: 0 15px 40px rgba(0, 0, 0, 0.3); } .secondaryBtn { background: rgba(255, 255, 255, 0.2) !important; color: white !important; border: 2px solid white !important; backdrop-filter: blur(10px); } .secondaryBtn:hover { background: rgba(255, 255, 255, 0.3) !important; } .arrow { margin-left: 0.5rem; transition: transform 0.3s ease; display: inline-block; } .primaryBtn:hover .arrow { transform: translateX(5px); } .trustBadges { display: flex; flex-wrap: wrap; justify-content: center; gap: 2rem; padding-top: 2rem; border-top: 1px solid rgba(255, 255, 255, 0.2); } .trustBadge { display: flex; align-items: center; gap: 0.5rem; color: white; font-size: 0.9375rem; font-weight: 600; } .badgeIcon { font-size: 1.25rem; } @media (min-width: 768px) { .ctaCard { padding: 5rem 3rem; } .subtitle { font-size: 1.25rem; } } @media (min-width: 1024px) { .ctaCard { padding: 6rem 4rem; } }