@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap'); * { font-family: 'Inter', sans-serif; } /* Custom Animations */ @keyframes fadeInDown { from { opacity: 0; transform: translateY(-30px); } to { opacity: 1; transform: translateY(0); } } @keyframes fadeInUp { from { opacity: 0; transform: translateY(30px); } to { opacity: 1; transform: translateY(0); } } @keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } } @keyframes slideInLeft { from { opacity: 0; transform: translateX(-50px); } to { opacity: 1; transform: translateX(0); } } @keyframes pulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.05); } } @keyframes float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-10px); } } .animate-fade-in-down { animation: fadeInDown 1s ease-out; } .animate-fade-in-up { animation: fadeInUp 1s ease-out; } .animate-fade-in { animation: fadeIn 1s ease-out; } .animate-slide-in-left { animation: slideInLeft 1s ease-out; } /* Wave Animation */ .wave-animation { background: linear-gradient(45deg, #0088cc, #00a8e8, #54a0ff, #0088cc); background-size: 400% 400%; animation: gradientWave 15s ease infinite; opacity: 0.1; } @keyframes gradientWave { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } } /* Glassmorphism Effect */ .glass-morphism { background: rgba(255, 255, 255, 0.05); backdrop-filter: blur(10px); border: 1px solid rgba(255, 255, 255, 0.1); box-shadow: 0 8px 32px 0 rgba(31, 38, 135, 0.37); } /* Cinematic Hero Background Animations */ @keyframes floatRight { from { transform: translateX(0); } to { transform: translateX(calc(100vw + 500px)); } } @keyframes floatLeft { from { transform: translateX(0); } to { transform: translateX(calc(-100vw - 300px)); } } @keyframes gentle-float { 0%, 100% { transform: translateY(0px); } 50% { transform: translateY(-20px); } } @keyframes pulse-glow { 0%, 100% { opacity: 0.6; text-shadow: 0 0 10px rgba(250, 204, 21, 0.5); } 50% { opacity: 1; text-shadow: 0 0 20px rgba(250, 204, 21, 0.8); } } @keyframes neon-pulse { 0%, 100% { opacity: 0.3; } 50% { opacity: 0.7; } } /* Glass Review Cards */ .glass-card-review { box-shadow: 0 8px 32px 0 rgba(31, 38, 135, 0.2); backdrop-filter: blur(16px); transition: all 0.3s ease; } .glass-card-review:hover { transform: scale(1.05); box-shadow: 0 12px 40px 0 rgba(31, 38, 135, 0.4); } /* Glowing Stars */ .glowing-stars { animation: pulse-glow 3s ease-in-out infinite; } /* Glowing Text */ .glowing-text { animation: pulse-glow 4s ease-in-out infinite; font-weight: 900; letter-spacing: 0.05em; } /* Floating Elements */ .floating-review-card { filter: blur(0.5px); transition: filter 0.3s ease; } .floating-review-card:hover { filter: blur(0px); } .floating-text { animation: gentle-float 6s ease-in-out infinite; } /* Radial Glow */ .radial-glow { width: 600px; height: 600px; background: radial-gradient(circle, rgba(0, 136, 204, 0.1) 0%, rgba(84, 160, 255, 0.05) 40%, transparent 70%); border-radius: 50%; animation: gentle-float 8s ease-in-out infinite; } /* Grid Lines */ .grid-lines { background-image: linear-gradient(rgba(0, 136, 204, 0.1) 1px, transparent 1px), linear-gradient(90deg, rgba(0, 136, 204, 0.1) 1px, transparent 1px); background-size: 50px 50px; animation: grid-move 20s linear infinite; } @keyframes grid-move { 0% { transform: translate(0, 0); } 100% { transform: translate(50px, 50px); } } /* Tech Particles */ .tech-particle { position: absolute; background: radial-gradient(circle, rgba(0, 136, 204, 0.6) 0%, transparent 70%); border-radius: 50%; pointer-events: none; } /* Neon Lines */ .neon-line { position: absolute; background: linear-gradient(90deg, transparent, rgba(0, 136, 204, 0.6), transparent); height: 1px; animation: neon-pulse 3s ease-in-out infinite; } /* Hero Content Z-index Fix */ .hero-content { position: relative; z-index: 10; } /* Depth Blur Layers */ .depth-layer-1 { filter: blur(0px); } .depth-layer-2 { filter: blur(0.5px); } .depth-layer-3 { filter: blur(1px); } /* Gradient Radial */ .bg-gradient-radial { background: radial-gradient(circle at center, transparent 0%, rgba(0, 0, 0, 0.4) 50%, rgba(0, 0, 0, 0.8) 100%); } /* Scrollbar Styling */ ::-webkit-scrollbar { width: 10px; } ::-webkit-scrollbar-track { background: #1f2937; } ::-webkit-scrollbar-thumb { background: linear-gradient(to bottom, #0088cc, #54a0ff); border-radius: 5px; } ::-webkit-scrollbar-thumb:hover { background: linear-gradient(to bottom, #00a8e8, #74b9ff); } /* Smooth Scroll */ html { scroll-behavior: smooth; } /* Star Rating Styles */ .star-rating { display: flex; gap: 4px; } .star-rating .star { font-size: 24px; color: #d1d5db; cursor: pointer; transition: all 0.2s; } .star-rating .star:hover, .star-rating .star.active { color: #fbbf24; transform: scale(1.1); } /* Loading Animation */ .loading-dots { display: inline-flex; gap: 4px; } .loading-dots span { width: 8px; height: 8px; background: #6366f1; border-radius: 50%; animation: loadingDot 1.4s infinite ease-in-out; } .loading-dots span:nth-child(1) { animation-delay: -0.32s; } .loading-dots span:nth-child(2) { animation-delay: -0.16s; } @keyframes loadingDot { 0%, 80%, 100% { transform: scale(0); opacity: 0.5; } 40% { transform: scale(1); opacity: 1; } } /* Glow Effects */ .glow-telegram { box-shadow: 0 0 20px rgba(0, 136, 204, 0.5); } .glow-blue { box-shadow: 0 0 20px rgba(84, 160, 255, 0.5); } /* Hover Effects */ .hover-lift { transition: all 0.3s ease; } .hover-lift:hover { transform: translateY(-5px); box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3); } /* Text Gradient */ .text-gradient { background: linear-gradient(to right, #0088cc, #54a0ff, #74b9ff); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; } /* Card Hover Animation */ .service-card { position: relative; overflow: hidden; } .service-card::before { content: ''; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.1), transparent); transition: left 0.5s; } .service-card:hover::before { left: 100%; } /* Modal Styles */ .modal { display: none; position: fixed; z-index: 1000; left: 0; top: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.8); backdrop-filter: blur(5px); } .modal.active { display: flex; align-items: center; justify-content: center; } .modal-content { background: #1f2937; border-radius: 20px; padding: 30px; max-width: 500px; width: 90%; position: relative; animation: modalSlideIn 0.3s ease-out; } @keyframes modalSlideIn { from { opacity: 0; transform: translateY(-50px); } to { opacity: 1; transform: translateY(0); } } /* Responsive Typography */ @media (max-width: 768px) { .hero-title { font-size: 2.5rem !important; } .hero-subtitle { font-size: 1.5rem !important; } } /* Form Styles */ .form-input { background: rgba(255, 255, 255, 0.05); border: 1px solid rgba(255, 255, 255, 0.1); backdrop-filter: blur(10px); transition: all 0.3s; } .form-input:focus { background: rgba(255, 255, 255, 0.1); border-color: #6366f1; box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.1); } /* Button Styles */ .btn-primary { background: linear-gradient(to right, #0088cc, #54a0ff); transition: all 0.3s; } .btn-primary:hover { transform: translateY(-2px); box-shadow: 0 10px 30px rgba(0, 136, 204, 0.5); } .btn-secondary { background: transparent; border: 2px solid #0088cc; transition: all 0.3s; } .btn-secondary:hover { background: #0088cc; transform: translateY(-2px); } /* Notification Styles */ .notification { position: fixed; top: 20px; right: 20px; padding: 15px 20px; border-radius: 10px; background: #10b981; color: white; font-weight: 500; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3); transform: translateX(400px); transition: transform 0.3s ease-out; z-index: 2000; } .notification.show { transform: translateX(0); } .notification.error { background: #ef4444; }