Spaces:
Running
Running
Ctrl+K
- 1.52 kB initial commit
- 210 Bytes <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Zivvy - Unlock Your Revenue</title> <style> :root { --zivvy-black: #000000; --zivvy-white: #ffffff; --zivvy-purple: #6b47eb; --zivvy-dark-purple: #510d54; --zivvy-darkest-purple: #302326; --zivvy-yellow: #f9c80e; --zivvy-blue: #256eff; --zivvy-light-blue: #cddeff; --zivvy-light-yellow: #efe3ac; --success-green: #00d09c; } * { margin: 0; padding: 0; box-sizing: border-box; } body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, sans-serif; background: linear-gradient(135deg, var(--zivvy-darkest-purple) 0%, var(--zivvy-dark-purple) 100%); min-height: 100vh; display: flex; flex-direction: column; overflow-x: hidden; position: relative; } /* Animated background */ .bg-glow { position: fixed; width: 600px; height: 600px; border-radius: 50%; background: radial-gradient(circle, var(--zivvy-purple), transparent); filter: blur(150px); opacity: 0.3; top: 50%; left: 50%; transform: translate(-50%, -50%); animation: glow 4s ease-in-out infinite; } @keyframes glow { 0%, 100% { transform: translate(-50%, -50%) scale(1); opacity: 0.3; } 50% { transform: translate(-50%, -50%) scale(1.2); opacity: 0.5; } } /* Progress indicator */ .progress-container { padding: 30px 20px 20px; display: flex; justify-content: center; align-items: center; gap: 15px; } .progress-coin { width: 40px; height: 40px; border-radius: 50%; background: linear-gradient(135deg, #444, #222); display: flex; align-items: center; justify-content: center; font-weight: bold; transition: all 0.3s ease; position: relative; } .progress-coin.completed { background: linear-gradient(135deg, var(--zivvy-yellow), #f39c12); transform: scale(1.1); box-shadow: 0 0 20px rgba(249, 200, 14, 0.5); } .progress-coin.active { background: linear-gradient(135deg, var(--zivvy-yellow), #f39c12); animation: coinPulse 2s infinite; } @keyframes coinPulse { 0%, 100% { transform: scale(1); box-shadow: 0 0 20px rgba(249, 200, 14, 0.5); } 50% { transform: scale(1.15); box-shadow: 0 0 30px rgba(249, 200, 14, 0.8); } } .progress-coin span { color: var(--zivvy-white); font-size: 18px; } /* Container */ .container { flex: 1; padding: 20px; max-width: 900px; margin: 0 auto; width: 100%; } /* ROI Visualization */ .roi-visual { text-align: center; margin-bottom: 50px; animation: fadeInScale 0.8s ease-out; } @keyframes fadeInScale { from { opacity: 0; transform: scale(0.9); } to { opacity: 1; transform: scale(1); } } .roi-title { font-size: 32px; color: var(--zivvy-white); margin-bottom: 40px; } /* Investment comparison */ .comparison-container { display: flex; align-items: center; justify-content: center; gap: 50px; margin-bottom: 50px; flex-wrap: wrap; } .investment-box, .return-box { text-align: center; animation: slideIn 0.8s ease-out; } @keyframes slideIn { from { opacity: 0; transform: translateX(-30px); } to { opacity: 1; transform: translateX(0); } } .investment-box { animation-delay: 0.3s; animation-fill-mode: both; } .return-box { animation-delay: 0.6s; animation-fill-mode: both; } .box-label { color: var(--zivvy-light-blue); font-size: 18px; margin-bottom: 15px; } .investment-amount { font-size: 48px; font-weight: bold; color: var(--zivvy-white); position: relative; display: inline-block; } .return-amount { font-size: 72px; font-weight: bold; background: linear-gradient(135deg, var(--zivvy-yellow), var(--success-green)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; text-shadow: 0 0 30px rgba(249, 200, 14, 0.5); animation: valuePulse 2s ease-in-out infinite; } @keyframes valuePulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.05); } } /* Arrow animation */ .arrow-container { display: flex; align-items: center; justify-content: center; margin: 0 20px; animation: arrowBounce 1s ease-in-out infinite; } @keyframes arrowBounce { 0%, 100% { transform: translateX(0); } 50% { transform: translateX(10px); } } .arrow { font-size: 48px; color: var(--zivvy-yellow); } /* ROI multiplier */ .roi-multiplier { background: linear-gradient(135deg, rgba(0, 208, 156, 0.1), rgba(0, 208, 156, 0.05)); border: 2px solid var(--success-green); border-radius: 20px; padding: 30px; margin-bottom: 40px; text-align: center; animation: fadeIn 1s ease-out 0.9s both; } @keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } } .multiplier-text { font-size: 36px; font-weight: bold; color: var(--success-green); text-shadow: 0 0 20px rgba(0, 208, 156, 0.5); } /* Payment form */ .payment-section { background: rgba(255, 255, 255, 0.05); backdrop-filter: blur(10px); border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 20px; padding: 40px; margin-bottom: 30px; animation: fadeInUp 0.8s ease-out 1.2s both; } @keyframes fadeInUp { from { opacity: 0; transform: translateY(30px); } to { opacity: 1; transform: translateY(0); } } .form-header { text-align: center; margin-bottom: 30px; } .form-title { font-size: 24px; color: var(--zivvy-white); margin-bottom: 10px; } .form-subtitle { color: var(--zivvy-light-blue); font-size: 16px; } .payment-methods { display: flex; gap: 15px; margin-bottom: 30px; justify-content: center; } .payment-method { padding: 15px 30px; background: rgba(255, 255, 255, 0.1); border: 2px solid rgba(255, 255, 255, 0.2); border-radius: 10px; color: var(--zivvy-white); cursor: pointer; transition: all 0.3s ease; display: flex; align-items: center; gap: 10px; } .payment-method:hover { background: rgba(255, 255, 255, 0.15); border-color: var(--zivvy-yellow); transform: translateY(-2px); } .payment-method.active { background: rgba(107, 71, 235, 0.3); border-color: var(--zivvy-purple); } .card-form { display: grid; gap: 20px; } .form-group { position: relative; } .form-label { position: absolute; left: 15px; top: 50%; transform: translateY(-50%); color: var(--zivvy-light-blue); font-size: 16px; transition: all 0.3s ease; pointer-events: none; } .form-input { width: 100%; padding: 15px; background: rgba(255, 255, 255, 0.1); border: 2px solid rgba(255, 255, 255, 0.2); border-radius: 10px; color: var(--zivvy-white); font-size: 16px; transition: all 0.3s ease; } .form-input:focus, .form-input:not(:placeholder-shown) { outline: none; background: rgba(255, 255, 255, 0.15); border-color: var(--zivvy-purple); } .form-input:focus + .form-label, .form-input:not(:placeholder-shown) + .form-label { top: -10px; left: 10px; font-size: 12px; background: var(--zivvy-dark-purple); padding: 0 5px; } .card-row { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; } /* Trust badges */ .trust-section { display: flex; justify-content: center; gap: 40px; margin: 30px 0; flex-wrap: wrap; animation: fadeIn 0.8s ease-out 1.5s both; } .trust-badge { display: flex; align-items: center; gap: 10px; color: var(--zivvy-light-blue); font-size: 14px; } .trust-icon { font-size: 24px; color: var(--success-green); } /* Urgency banner */ .urgency-banner { background: linear-gradient(135deg, rgba(255, 71, 87, 0.1), rgba(255, 71, 87, 0.05)); border: 1px solid rgba(255, 71, 87, 0.3); border-radius: 15px; padding: 20px; text-align: center; margin-bottom: 30px; animation: urgencyPulse 2s ease-in-out infinite; } @keyframes urgencyPulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.02); } } .urgency-text { color: #ff4757; font-size: 18px; font-weight: bold; } .spots-remaining { color: var(--zivvy-yellow); font-size: 24px; font-weight: bold; } /* CTA Button */ .cta-button { width: 100%; padding: 20px; background: linear-gradient(135deg, var(--zivvy-yellow), var(--success-green)); color: var(--zivvy-darkest-purple); font-size: 24px; font-weight: bold; border: none; border-radius: 50px; cursor: pointer; position: relative; overflow: hidden; transition: all 0.3s ease; animation: ctaPulse 2s ease-in-out infinite; } @keyframes ctaPulse { 0%, 100% { box-shadow: 0 5px 30px rgba(249, 200, 14, 0.4); } 50% { box-shadow: 0 5px 50px rgba(249, 200, 14, 0.8); } } .cta-button::before { content: ''; position: absolute; top: -50%; left: -50%; width: 200%; height: 200%; background: linear-gradient(45deg, transparent, rgba(255,255,255,0.4), transparent); animation: shimmer 3s infinite; } @keyframes shimmer { 0% { transform: translateX(-100%) rotate(45deg); } 100% { transform: translateX(100%) rotate(45deg); } } .cta-button:hover { transform: scale(1.05); } .cta-button:active { transform: scale(0.98); } /* Loading state */ .loading-overlay { display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0, 0, 0, 0.8); z-index: 1000; justify-content: center; align-items: center; } .loading-content { text-align: center; } .loading-spinner { width: 60px; height: 60px; border: 4px solid rgba(249, 200, 14, 0.3); border-top: 4px solid var(--zivvy-yellow); border-radius: 50%; animation: spin 1s linear infinite; margin: 0 auto 20px; } @keyframes spin { 100% { transform: rotate(360deg); } } .loading-text { color: var(--zivvy-white); font-size: 18px; } /* Mobile responsiveness */ @media (max-width: 768px) { .comparison-container { flex-direction: column; gap: 30px; } .arrow-container { transform: rotate(90deg); margin: 20px 0; } .return-amount { font-size: 48px; } .card-row { grid-template-columns: 1fr; } .payment-methods { flex-direction: column; } .trust-section { flex-direction: column; align-items: center; } } </style> </head> <body> <!-- Background glow --> <div class="bg-glow"></div> <!-- Progress indicator --> <div class="progress-container"> <div class="progress-coin completed"><span>$</span></div> <div class="progress-coin completed"><span>$</span></div> <div class="progress-coin completed"><span>$</span></div> <div class="progress-coin completed"><span>$</span></div> <div class="progress-coin active"><span>$</span></div> <div class="progress-coin"><span>$</span></div> </div> <!-- Container --> <div class="container"> <!-- ROI Visualization --> <div class="roi-visual"> <h1 class="roi-title">Your Investment vs. Your Return</h1> <div class="comparison-container"> <div class="investment-box"> <div class="box-label">Your Investment Today</div> <div class="investment-amount">$1</div> </div> <div class="arrow-container"> <div class="arrow">β</div> </div> <div class="return-box"> <div class="box-label">Your Potential Return</div> <div class="return-amount" id="returnAmount">$67,500</div> </div> </div> </div> <!-- ROI Multiplier --> <div class="roi-multiplier"> <div class="multiplier-text">That's a 67,500X Return on Investment!</div> </div> <!-- Urgency Banner --> <div class="urgency-banner"> <div class="urgency-text">β° Limited Time Offer</div> <div class="spots-remaining">Only 23 spots remaining at this price</div> </div> <!-- Payment Section --> <div class="payment-section"> <div class="form-header"> <h2 class="form-title">Start Your 14-Day Trial for Just $1</h2> <p class="form-subtitle">Then $397/month β’ Cancel anytime β’ No hidden fees</p> </div> <!-- Payment Methods --> <div class="payment-methods"> <div class="payment-method active" onclick="selectPaymentMethod(this, 'card')"> <span>π³</span> <span>Card</span> </div> <div class="payment-method" onclick="selectPaymentMethod(this, 'paypal')"> <span>π ΏοΈ</span> <span>PayPal</span> </div> </div> <!-- Card Form --> <form class="card-form" id="paymentForm"> <div class="form-group"> <input type="text" class="form-input" id="cardNumber" placeholder=" " required> <label class="form-label">Card Number</label> </div> <div class="card-row"> <div class="form-group"> <input type="text" class="form-input" id="expiry" placeholder=" " required> <label class="form-label">MM/YY</label> </div> <div class="form-group"> <input type="text" class="form-input" id="cvv" placeholder=" " required> <label class="form-label">CVV</label> </div> </div> <div class="form-group"> <input type="text" class="form-input" id="cardName" placeholder=" " required> <label class="form-label">Name on Card</label> </div> <button type="submit" class="cta-button"> Unlock My $67,500 Revenue β </button> </form> </div> <!-- Trust Badges --> <div class="trust-section"> <div class="trust-badge"> <span class="trust-icon">π</span> <span>256-bit SSL Encrypted</span> </div> <div class="trust-badge"> <span class="trust-icon">β</span> <span>30-Day Money Back Guarantee</span> </div> <div class="trust-badge"> <span class="trust-icon">π</span> <span>Trusted by 500+ Schools</span> </div> </div> </div> <!-- Loading Overlay --> <div class="loading-overlay" id="loadingOverlay"> <div class="loading-content"> <div class="loading-spinner"></div> <div class="loading-text">Unlocking your revenue opportunities...</div> </div> </div> <script> // Get total from previous page const totalOpportunity = localStorage.getItem('totalOpportunity') || 67500; document.getElementById('returnAmount').textContent = '$' + parseInt(totalOpportunity).toLocaleString(); // Update spots remaining countdown let spotsRemaining = 23; setInterval(() => { if (Math.random() > 0.7 && spotsRemaining > 5) { spotsRemaining--; document.querySelector('.spots-remaining').textContent = `Only ${spotsRemaining} spots remaining at this price`; } }, 30000); // Update every 30 seconds randomly // Payment method selection function selectPaymentMethod(element, method) { document.querySelectorAll('.payment-method').forEach(el => { el.classList.remove('active'); }); element.classList.add('active'); if (method === 'paypal') { // Would redirect to PayPal in real implementation console.log('PayPal selected'); } } // Form submission document.getElementById('paymentForm').addEventListener('submit', function(e) { e.preventDefault(); // Show loading overlay document.getElementById('loadingOverlay').style.display = 'flex'; // Simulate processing setTimeout(() => { // Store success data localStorage.setItem('trialStarted', 'true'); localStorage.setItem('potentialRevenue', totalOpportunity); // Redirect to success page window.location.href = 'page6-success.html'; }, 2000); }); // Card number formatting document.getElementById('cardNumber').addEventListener('input', function(e) { let value = e.target.value.replace(/\s/g, ''); let formattedValue = value.match(/.{1,4}/g)?.join(' ') || value; e.target.value = formattedValue; }); // Expiry formatting document.getElementById('expiry').addEventListener('input', function(e) { let value = e.target.value.replace(/\D/g, ''); if (value.length >= 2) { value = value.slice(0, 2) + '/' + value.slice(2, 4); } e.target.value = value; }); // CVV formatting document.getElementById('cvv').addEventListener('input', function(e) { e.target.value = e.target.value.replace(/\D/g, '').slice(0, 4); }); // Add floating dollar signs animation function createFloatingDollar() { const dollar = document.createElement('div'); dollar.textContent = '$'; dollar.style.position = 'fixed'; dollar.style.color = 'rgba(249, 200, 14, 0.3)'; dollar.style.fontSize = '24px'; dollar.style.left = Math.random() * window.innerWidth + 'px'; dollar.style.top = window.innerHeight + 'px'; dollar.style.pointerEvents = 'none'; dollar.style.zIndex = '1'; document.body.appendChild(dollar); const duration = Math.random() * 3000 + 5000; dollar.animate([ { transform: 'translateY(0) rotate(0deg)', opacity: 0.3 }, { transform: `translateY(-${window.innerHeight + 100}px) rotate(360deg)`, opacity: 0 } ], { duration: duration, easing: 'linear' }).onfinish = () => dollar.remove(); } // Create floating dollars periodically setInterval(createFloatingDollar, 2000); </script> </body> </html> - Initial Deployment
- 18.8 kB <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Zivvy - Unlock Your Revenue</title> <style> :root { --zivvy-black: #000000; --zivvy-white: #ffffff; --zivvy-purple: #6b47eb; --zivvy-dark-purple: #510d54; --zivvy-darkest-purple: #302326; --zivvy-yellow: #f9c80e; --zivvy-blue: #256eff; --zivvy-light-blue: #cddeff; --zivvy-light-yellow: #efe3ac; --success-green: #00d09c; } * { margin: 0; padding: 0; box-sizing: border-box; } body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, sans-serif; background: linear-gradient(135deg, var(--zivvy-darkest-purple) 0%, var(--zivvy-dark-purple) 100%); min-height: 100vh; display: flex; flex-direction: column; overflow-x: hidden; position: relative; } /* Animated background */ .bg-glow { position: fixed; width: 600px; height: 600px; border-radius: 50%; background: radial-gradient(circle, var(--zivvy-purple), transparent); filter: blur(150px); opacity: 0.3; top: 50%; left: 50%; transform: translate(-50%, -50%); animation: glow 4s ease-in-out infinite; } @keyframes glow { 0%, 100% { transform: translate(-50%, -50%) scale(1); opacity: 0.3; } 50% { transform: translate(-50%, -50%) scale(1.2); opacity: 0.5; } } /* Progress indicator */ .progress-container { padding: 30px 20px 20px; display: flex; justify-content: center; align-items: center; gap: 15px; } .progress-coin { width: 40px; height: 40px; border-radius: 50%; background: linear-gradient(135deg, #444, #222); display: flex; align-items: center; justify-content: center; font-weight: bold; transition: all 0.3s ease; position: relative; } .progress-coin.completed { background: linear-gradient(135deg, var(--zivvy-yellow), #f39c12); transform: scale(1.1); box-shadow: 0 0 20px rgba(249, 200, 14, 0.5); } .progress-coin.active { background: linear-gradient(135deg, var(--zivvy-yellow), #f39c12); animation: coinPulse 2s infinite; } @keyframes coinPulse { 0%, 100% { transform: scale(1); box-shadow: 0 0 20px rgba(249, 200, 14, 0.5); } 50% { transform: scale(1.15); box-shadow: 0 0 30px rgba(249, 200, 14, 0.8); } } .progress-coin span { color: var(--zivvy-white); font-size: 18px; } /* Container */ .container { flex: 1; padding: 20px; max-width: 900px; margin: 0 auto; width: 100%; } /* ROI Visualization */ .roi-visual { text-align: center; margin-bottom: 50px; animation: fadeInScale 0.8s ease-out; } @keyframes fadeInScale { from { opacity: 0; transform: scale(0.9); } to { opacity: 1; transform: scale(1); } } .roi-title { font-size: 32px; color: var(--zivvy-white); margin-bottom: 40px; } /* Investment comparison */ .comparison-container { display: flex; align-items: center; justify-content: center; gap: 50px; margin-bottom: 50px; flex-wrap: wrap; } .investment-box, .return-box { text-align: center; animation: slideIn 0.8s ease-out; } @keyframes slideIn { from { opacity: 0; transform: translateX(-30px); } to { opacity: 1; transform: translateX(0); } } .investment-box { animation-delay: 0.3s; animation-fill-mode: both; } .return-box { animation-delay: 0.6s; animation-fill-mode: both; } .box-label { color: var(--zivvy-light-blue); font-size: 18px; margin-bottom: 15px; } .investment-amount { font-size: 48px; font-weight: bold; color: var(--zivvy-white); position: relative; display: inline-block; } .return-amount { font-size: 72px; font-weight: bold; background: linear-gradient(135deg, var(--zivvy-yellow), var(--success-green)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; text-shadow: 0 0 30px rgba(249, 200, 14, 0.5); animation: valuePulse 2s ease-in-out infinite; } @keyframes valuePulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.05); } } /* Arrow animation */ .arrow-container { display: flex; align-items: center; justify-content: center; margin: 0 20px; animation: arrowBounce 1s ease-in-out infinite; } @keyframes arrowBounce { 0%, 100% { transform: translateX(0); } 50% { transform: translateX(10px); } } .arrow { font-size: 48px; color: var(--zivvy-yellow); } /* ROI multiplier */ .roi-multiplier { background: linear-gradient(135deg, rgba(0, 208, 156, 0.1), rgba(0, 208, 156, 0.05)); border: 2px solid var(--success-green); border-radius: 20px; padding: 30px; margin-bottom: 40px; text-align: center; animation: fadeIn 1s ease-out 0.9s both; } @keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } } .multiplier-text { font-size: 36px; font-weight: bold; color: var(--success-green); text-shadow: 0 0 20px rgba(0, 208, 156, 0.5); } /* Payment form */ .payment-section { background: rgba(255, 255, 255, 0.05); backdrop-filter: blur(10px); border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 20px; padding: 40px; margin-bottom: 30px; animation: fadeInUp 0.8s ease-out 1.2s both; } @keyframes fadeInUp { from { opacity: 0; transform: translateY(30px); } to { opacity: 1; transform: translateY(0); } } .form-header { text-align: center; margin-bottom: 30px; } .form-title { font-size: 24px; color: var(--zivvy-white); margin-bottom: 10px; } .form-subtitle { color: var(--zivvy-light-blue); font-size: 16px; } .payment-methods { display: flex; gap: 15px; margin-bottom: 30px; justify-content: center; } .payment-method { padding: 15px 30px; background: rgba(255, 255, 255, 0.1); border: 2px solid rgba(255, 255, 255, 0.2); border-radius: 10px; color: var(--zivvy-white); cursor: pointer; transition: all 0.3s ease; display: flex; align-items: center; gap: 10px; } .payment-method:hover { background: rgba(255, 255, 255, 0.15); border-color: var(--zivvy-yellow); transform: translateY(-2px); } .payment-method.active { background: rgba(107, 71, 235, 0.3); border-color: var(--zivvy-purple); } .card-form { display: grid; gap: 20px; } .form-group { position: relative; } .form-label { position: absolute; left: 15px; top: 50%; transform: translateY(-50%); color: var(--zivvy-light-blue); font-size: 16px; transition: all 0.3s ease; pointer-events: none; } .form-input { width: 100%; padding: 15px; background: rgba(255, 255, 255, 0.1); border: 2px solid rgba(255, 255, 255, 0.2); border-radius: 10px; color: var(--zivvy-white); font-size: 16px; transition: all 0.3s ease; } .form-input:focus, .form-input:not(:placeholder-shown) { outline: none; background: rgba(255, 255, 255, 0.15); border-color: var(--zivvy-purple); } .form-input:focus + .form-label, .form-input:not(:placeholder-shown) + .form-label { top: -10px; left: 10px; font-size: 12px; background: var(--zivvy-dark-purple); padding: 0 5px; } .card-row { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; } /* Trust badges */ .trust-section { display: flex; justify-content: center; gap: 40px; margin: 30px 0; flex-wrap: wrap; animation: fadeIn 0.8s ease-out 1.5s both; } .trust-badge { display: flex; align-items: center; gap: 10px; color: var(--zivvy-light-blue); font-size: 14px; } .trust-icon { font-size: 24px; color: var(--success-green); } /* Urgency banner */ .urgency-banner { background: linear-gradient(135deg, rgba(255, 71, 87, 0.1), rgba(255, 71, 87, 0.05)); border: 1px solid rgba(255, 71, 87, 0.3); border-radius: 15px; padding: 20px; text-align: center; margin-bottom: 30px; animation: urgencyPulse 2s ease-in-out infinite; } @keyframes urgencyPulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.02); } } .urgency-text { color: #ff4757; font-size: 18px; font-weight: bold; } .spots-remaining { color: var(--zivvy-yellow); font-size: 24px; font-weight: bold; } /* CTA Button */ .cta-button { width: 100%; padding: 20px; background: linear-gradient(135deg, var(--zivvy-yellow), var(--success-green)); color: var(--zivvy-darkest-purple); font-size: 24px; font-weight: bold; border: none; border-radius: 50px; cursor: pointer; position: relative; overflow: hidden; transition: all 0.3s ease; animation: ctaPulse 2s ease-in-out infinite; } @keyframes ctaPulse { 0%, 100% { box-shadow: 0 5px 30px rgba(249, 200, 14, 0.4); } 50% { box-shadow: 0 5px 50px rgba(249, 200, 14, 0.8); } } .cta-button::before { content: ''; position: absolute; top: -50%; left: -50%; width: 200%; height: 200%; background: linear-gradient(45deg, transparent, rgba(255,255,255,0.4), transparent); animation: shimmer 3s infinite; } @keyframes shimmer { 0% { transform: translateX(-100%) rotate(45deg); } 100% { transform: translateX(100%) rotate(45deg); } } .cta-button:hover { transform: scale(1.05); } .cta-button:active { transform: scale(0.98); } /* Loading state */ .loading-overlay { display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0, 0, 0, 0.8); z-index: 1000; justify-content: center; align-items: center; } .loading-content { text-align: center; } .loading-spinner { width: 60px; height: 60px; border: 4px solid rgba(249, 200, 14, 0.3); border-top: 4px solid var(--zivvy-yellow); border-radius: 50%; animation: spin 1s linear infinite; margin: 0 auto 20px; } @keyframes spin { 100% { transform: rotate(360deg); } } .loading-text { color: var(--zivvy-white); font-size: 18px; } /* Mobile responsiveness */ @media (max-width: 768px) { .comparison-container { flex-direction: column; gap: 30px; } .arrow-container { transform: rotate(90deg); margin: 20px 0; } .return-amount { font-size: 48px; } .card-row { grid-template-columns: 1fr; } .payment-methods { flex-direction: column; } .trust-section { flex-direction: column; align-items: center; } } </style> </head> <body> <!-- Background glow --> <div class="bg-glow"></div> <!-- Progress indicator --> <div class="progress-container"> <div class="progress-coin completed"><span>$</span></div> <div class="progress-coin completed"><span>$</span></div> <div class="progress-coin completed"><span>$</span></div> <div class="progress-coin completed"><span>$</span></div> <div class="progress-coin active"><span>$</span></div> <div class="progress-coin"><span>$</span></div> </div> <!-- Container --> <div class="container"> <!-- ROI Visualization --> <div class="roi-visual"> <h1 class="roi-title">Your Investment vs. Your Return</h1> <div class="comparison-container"> <div class="investment-box"> <div class="box-label">Your Investment Today</div> <div class="investment-amount">$1</div> </div> <div class="arrow-container"> <div class="arrow">β</div> </div> <div class="return-box"> <div class="box-label">Your Potential Return</div> <div class="return-amount" id="returnAmount">$67,500</div> </div> </div> </div> <!-- ROI Multiplier --> <div class="roi-multiplier"> <div class="multiplier-text">That's a 67,500X Return on Investment!</div> </div> <!-- Urgency Banner --> <div class="urgency-banner"> <div class="urgency-text">β° Limited Time Offer</div> <div class="spots-remaining">Only 23 spots remaining at this price</div> </div> <!-- Payment Section --> <div class="payment-section"> <div class="form-header"> <h2 class="form-title">Start Your 14-Day Trial for Just $1</h2> <p class="form-subtitle">Then $397/month β’ Cancel anytime β’ No hidden fees</p> </div> <!-- Payment Methods --> <div class="payment-methods"> <div class="payment-method active" onclick="selectPaymentMethod(this, 'card')"> <span>π³</span> <span>Card</span> </div> <div class="payment-method" onclick="selectPaymentMethod(this, 'paypal')"> <span>π ΏοΈ</span> <span>PayPal</span> </div> </div> <!-- Card Form --> <form class="card-form" id="paymentForm"> <div class="form-group"> <input type="text" class="form-input" id="cardNumber" placeholder=" " required> <label class="form-label">Card Number</label> </div> <div class="card-row"> <div class="form-group"> <input type="text" class="form-input" id="expiry" placeholder=" " required> <label class="form-label">MM/YY</label> </div> <div class="form-group"> <input type="text" class="form-input" id="cvv" placeholder=" " required> <label class="form-label">CVV</label> </div> </div> <div class="form-group"> <input type="text" class="form-input" id="cardName" placeholder=" " required> <label class="form-label">Name on Card</label> </div> <button type="submit" class="cta-button"> Unlock My $67,500 Revenue β </button> </form> </div> <!-- Trust Badges --> <div class="trust-section"> <div class="trust-badge"> <span class="trust-icon">π</span> <span>256-bit SSL Encrypted</span> </div> <div class="trust-badge"> <span class="trust-icon">β</span> <span>30-Day Money Back Guarantee</span> </div> <div class="trust-badge"> <span class="trust-icon">π</span> <span>Trusted by 500+ Schools</span> </div> </div> </div> <!-- Loading Overlay --> <div class="loading-overlay" id="loadingOverlay"> <div class="loading-content"> <div class="loading-spinner"></div> <div class="loading-text">Unlocking your revenue opportunities...</div> </div> </div> <script> // Get total from previous page const totalOpportunity = localStorage.getItem('totalOpportunity') || 67500; document.getElementById('returnAmount').textContent = '$' + parseInt(totalOpportunity).toLocaleString(); // Update spots remaining countdown let spotsRemaining = 23; setInterval(() => { if (Math.random() > 0.7 && spotsRemaining > 5) { spotsRemaining--; document.querySelector('.spots-remaining').textContent = `Only ${spotsRemaining} spots remaining at this price`; } }, 30000); // Update every 30 seconds randomly // Payment method selection function selectPaymentMethod(element, method) { document.querySelectorAll('.payment-method').forEach(el => { el.classList.remove('active'); }); element.classList.add('active'); if (method === 'paypal') { // Would redirect to PayPal in real implementation console.log('PayPal selected'); } } // Form submission document.getElementById('paymentForm').addEventListener('submit', function(e) { e.preventDefault(); // Show loading overlay document.getElementById('loadingOverlay').style.display = 'flex'; // Simulate processing setTimeout(() => { // Store success data localStorage.setItem('trialStarted', 'true'); localStorage.setItem('potentialRevenue', totalOpportunity); // Redirect to success page window.location.href = 'page6-success.html'; }, 2000); }); // Card number formatting document.getElementById('cardNumber').addEventListener('input', function(e) { let value = e.target.value.replace(/\s/g, ''); let formattedValue = value.match(/.{1,4}/g)?.join(' ') || value; e.target.value = formattedValue; }); // Expiry formatting document.getElementById('expiry').addEventListener('input', function(e) { let value = e.target.value.replace(/\D/g, ''); if (value.length >= 2) { value = value.slice(0, 2) + '/' + value.slice(2, 4); } e.target.value = value; }); // CVV formatting document.getElementById('cvv').addEventListener('input', function(e) { e.target.value = e.target.value.replace(/\D/g, '').slice(0, 4); }); // Add floating dollar signs animation function createFloatingDollar() { const dollar = document.createElement('div'); dollar.textContent = '$'; dollar.style.position = 'fixed'; dollar.style.color = 'rgba(249, 200, 14, 0.3)'; dollar.style.fontSize = '24px'; dollar.style.left = Math.random() * window.innerWidth + 'px'; dollar.style.top = window.innerHeight + 'px'; dollar.style.pointerEvents = 'none'; dollar.style.zIndex = '1'; document.body.appendChild(dollar); const duration = Math.random() * 3000 + 5000; dollar.animate([ { transform: 'translateY(0) rotate(0deg)', opacity: 0.3 }, { transform: `translateY(-${window.innerHeight + 100}px) rotate(360deg)`, opacity: 0 } ], { duration: duration, easing: 'linear' }).onfinish = () => dollar.remove(); } // Create floating dollars periodically setInterval(createFloatingDollar, 2000); </script> </body> </html> - Initial Deployment
- 388 Bytes initial commit