/* Global Styles */ * { margin: 0; padding: 0; box-sizing: border-box; user-select: none; scroll-behavior: smooth; } ::-webkit-scrollbar { display: none; } body { background-color: #121212; color: #ffffff; font-family: 'Montserrat', sans-serif; display: flex; flex-direction: column; align-items: center; min-height: 100vh; padding: 20px 0; } /* Performance Optimizations */ .lazy-image { opacity: 0; transition: opacity 0.4s ease; } .lazy-image.loaded { opacity: 1; } /* Loading Screen */ .loading-screen { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: #121212; z-index: 1000; display: flex; align-items: center; justify-content: center; transition: opacity 0.5s ease; } .loader { width: 48px; height: 48px; border: 3px solid #FFF; border-bottom-color: transparent; border-radius: 50%; animation: rotation 1s linear infinite; } @keyframes rotation { 0% { transform: rotate(0deg) } 100% { transform: rotate(360deg) } } /* Modern CTA Buttons */ .cta-button { display: inline-flex; align-items: center; padding: 1rem 2rem; border-radius: 50px; font-weight: 600; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); gap: 0.75rem; border: 2px solid transparent; } .cta-button { background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: white; } .cta-button.secondary { background: transparent; border-color: #667eea; color: #667eea; } .cta-button svg { width: 1.25rem; height: 1.25rem; stroke-width: 2; } .cta-button:hover { transform: translateY(-2px); box-shadow: 0 10px 20px rgba(102, 126, 234, 0.2); } /* Features Grid */ .features-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 2rem; padding: 4rem 2rem; } .feature-card { background: rgba(255, 255, 255, 0.05); padding: 2rem; border-radius: 1rem; text-align: center; backdrop-filter: blur(10px); border: 1px solid rgba(255, 255, 255, 0.1); } .feature-icon { font-size: 2.5rem; margin-bottom: 1rem; } /* Accessibility Improvements */ [aria-hidden="true"] { pointer-events: none; } :focus-visible { outline: 2px solid #667eea; outline-offset: 4px; } /* Reduced Motion */ @media (prefers-reduced-motion: reduce) { * { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; } } /* Main Section */ .main_section { height: 100vh; display: flex; align-items: center; justify-content: center; /* Center main section horizontally */ } .main { position: relative; /* Make sure the .main container is the reference for the pseudo-element */ display: flex; justify-content: space-between; align-items: center; max-width: 1200px; width: 100%; padding: 40px; border-radius: 12px; box-shadow: 0 4px 20px rgba(92, 92, 92, 0.5); opacity: 0; transform: scale(1.2); transform-origin: center; animation: scaleDown 1s ease-out forwards; background: rgba(255, 255, 255, 0.8); /* Optional: A slight background color to ensure readability */ z-index: 1; /* Ensure it stays above the pseudo-element */ } .main::before { content: ""; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: url(https://wallpapercave.com/wp/wp2635955.jpg); background-size: cover; background-position: center; filter: blur(8px); /* Adjust the blur amount as needed */ border-radius: 12px; /* Match the border radius */ z-index: -1; /* Place it behind the main content */ } /* Scale down animation */ @keyframes scaleDown { 0% { transform: scale(1.2); opacity: 0; } 100% { transform: scale(1); opacity: 1; } } /* Content Section */ .content { max-width: 50%; opacity: 0; transform: translateX(-50px); animation: slideInLeft 1s ease-out forwards; animation-delay: 1.2s; } @keyframes slideInLeft { to { opacity: 1; transform: translateX(0); } } .main h1 { font-size: 3rem; margin-bottom: 20px; opacity: 0; animation: fadeIn 0.5s ease-out forwards; animation-delay: 1.8s; } @keyframes fadeIn { to { opacity: 1; } } .main p { font-size: 1.2rem; line-height: 1.6; color: #b0b0b0; opacity: 0; animation: fadeIn 0.5s ease-out forwards; animation-delay: 2.3s; } /* Image Container */ .image-container { max-width: 45%; opacity: 0; transform: translateX(50px); animation: slideInRight 1s ease-out forwards; animation-delay: 2.8s; } @keyframes slideInRight { to { opacity: 1; transform: translateX(0); } } .image-container img { width: 100%; border-radius: 12px; box-shadow: 0 4px 20px rgba(0, 0, 0, 0.5); } /* Responsive Design */ @media (max-width: 768px) { .main { flex-direction: column; text-align: center; padding: 20px; /* Adjust padding for smaller screens */ } .content { max-width: 100%; transform: translateY(20px); animation: slideInUp 1s ease-out forwards; animation-delay: 1.2s; } @keyframes slideInUp { to { opacity: 1; transform: translateY(0); } } .image-container { max-width: 100%; margin-top: 20px; transform: translateY(20px); animation: slideInUp 1s ease-out forwards; animation-delay: 2.8s; } } @media (max-width: 480px) { .main h1 { font-size: 2.5rem; } .main p { font-size: 1rem; } } /* Flex Container for Buttons */ .button-container { display: flex; gap: 20px; justify-content: center; margin-top: 20px; } /* Button Styles */ .btn-53, .btn-53 *, .btn-53 :after, .btn-53 :before, .btn-53:after, .btn-53:before { border: 0 solid; box-sizing: border-box; } .btn-53 { -webkit-tap-highlight-color: transparent; -webkit-appearance: button; background-color: #000; background-image: none; color: #fff; cursor: pointer; font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji; font-size: 100%; line-height: 1.5; margin: 0; -webkit-mask-image: -webkit-radial-gradient(#000, #fff); padding: 0; } .btn-53:disabled { cursor: default; } .btn-53:-moz-focusring { outline: auto; } .btn-53 svg { display: block; vertical-align: middle; } .btn-53 [hidden] { display: none; } .btn-53 { border: 1px solid; border-radius: 999px; box-sizing: border-box; display: block; font-weight: 900; padding: 1.2rem 3rem; position: relative; text-transform: uppercase; } .btn-53 .original { background: #fff; color: #000; display: grid; inset: 0; place-content: center; position: absolute; transition: transform 0.2s cubic-bezier(0.87, 0, 0.13, 1); } .btn-53:hover .original { transform: translateY(100%); } .btn-53 .letters { display: inline-flex; } .btn-53 span { opacity: 0; transform: translateY(-15px); transition: transform 0.2s cubic-bezier(0.87, 0, 0.13, 1), opacity 0.2s; } .btn-53 span:nth-child(2n) { transform: translateY(15px); } .btn-53:hover span { opacity: 1; transform: translateY(0); } .btn-53:hover span:nth-child(2) { transition-delay: 0.1s; } .btn-53:hover span:nth-child(3) { transition-delay: 0.2s; } .btn-53:hover span:nth-child(4) { transition-delay: 0.3s; } .btn-53:hover span:nth-child(5) { transition-delay: 0.4s; } .btn-53:hover span:nth-child(6) { transition-delay: 0.5s; } .btn-53:hover span:nth-child(7) { transition-delay: 0.6s; } .btn-53:hover span:nth-child(8) { transition-delay: 0.7s; } .btn-53:hover span:nth-child(9) { transition-delay: 0.8s; } /* Supported Platforms Section */ .supported-platforms { text-align: center; padding: 60px 20px; color: #ffffff; border-radius: 12px; margin-top: 40px; opacity: 0; transform: translateY(50px); transition: opacity 0.5s ease, transform 0.5s ease; } /* Active State */ .supported-platforms.active { opacity: 1; transform: translateY(0); } .supported-platforms h2 { font-size: 2.5rem; margin-bottom: 20px; opacity: 0; transform: translateY(20px); transition: opacity 0.5s ease, transform 0.5s ease; } .supported-platforms.active h2 { opacity: 1; transform: translateY(0); } .supported-platforms p { font-size: 1.2rem; margin-bottom: 40px; color: #b0b0b0; opacity: 0; transform: translateY(20px); transition: opacity 0.5s ease, transform 0.5s ease; transition-delay: 0.3s; } .supported-platforms.active p { opacity: 1; transform: translateY(0); } .platforms-container { display: flex; justify-content: center; gap: 40px; flex-wrap: wrap; opacity: 0; transform: translateY(50px); transition: opacity 0.5s ease, transform 0.5s ease; transition-delay: 0.6s; } .supported-platforms.active .platforms-container { opacity: 1; transform: translateY(0); } .platform { text-align: center; opacity: 0; transform: translateY(50px); transition: opacity 0.5s ease, transform 0.5s ease; } .supported-platforms.active .platform { opacity: 1; transform: translateY(0); transition-delay: 0.8s; } .platform img { width: 120px; height: 120px; margin-bottom: 10px; filter: grayscale(100%); transition: filter 0.3s ease; } .platform:hover img { filter: grayscale(0%); } .platform p { font-size: 1rem; color: #ffffff; } .platform:hover { transform: translateY(-10px); } /* Responsive Design */ @media (max-width: 768px) { .platforms-container { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; justify-items: center; } .platform img { width: 100px; height: 100px; } .supported-platforms h2 { font-size: 2rem; } .supported-platforms p { font-size: 1rem; } } @media (max-width: 480px) { .platform img { width: 80px; height: 80px; } .platforms-container { grid-template-columns: repeat(2, 1fr); } } /* Footer */ .footer { width: 100%; padding: 20px; background-color: #1e1e1e; color: #b0b0b0; font-size: 0.9rem; position: fixed; bottom: 0; left: 0; z-index: 10; box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.5); display: flex; justify-content: space-between; align-items: center; } /* Footer Paragraphs */ .footer p { margin: 0; } /* Footer Links */ .footer-links { text-align: right; } .footer-links a { margin-left: 20px; /* Spacing between links */ text-decoration: none; color: #b0b0b0; /* Matching link color with footer text */ font-size: 0.9rem; transition: color 0.3s ease; /* Smooth color transition */ } .footer-links a:hover { color: #ffffff; /* Link color on hover */ } /* Gradient Text */ .gradient { background: linear-gradient(-45deg, #ee7752, #e73c7e, #23a6d5, #23d5ab); background-size: 300%; -webkit-background-clip: text; background-clip: text; color: transparent; animation: gradient 2.5s ease infinite; } @keyframes gradient { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } } /* Responsive Design */ @media (max-width: 768px) { .footer { flex-direction: column; align-items: flex-start; /* Align items to the start for small screens */ text-align: center; /* Center text for small screens */ padding: 20px 10px; /* Reduced padding for smaller screens */ } .footer p { margin-bottom: 10px; /* Add some spacing between paragraphs */ } .footer-links { text-align: center; /* Center links for small screens */ margin-top: 10px; /* Add spacing above links */ } .footer-links a { display: block; margin: 5px 0; /* Vertical spacing for links on small screens */ } } /* Modal Container */ .modal { display: none; position: fixed; z-index: 1000; left: 0; top: 0; width: 100%; height: 100%; overflow: auto; background-color: rgba(0, 0, 0, 0.5); backdrop-filter: blur(5px); padding: 20px; } /* Modal Content */ .modal-content { background-color: #1e1e1e; margin: auto; padding: 20px; border: 1px solid #888; width: 80%; max-width: 600px; max-height: 80vh; overflow-y: auto; border-radius: 12px; box-shadow: 0 4px 20px rgba(0, 0, 0, 0.5); color: #ffffff; } /* Close Button */ .close { color: #aaa; float: right; font-size: 28px; font-weight: bold; } .close:hover, .close:focus { color: #fff; text-decoration: none; cursor: pointer; } /* Selection Modal Content */ .modal-content { background-color: #1e1e1e; margin: auto; padding: 20px; border: 1px solid #888; width: 80%; max-width: 600px; max-height: 80vh; overflow-y: auto; border-radius: 12px; box-shadow: 0 4px 20px rgba(0, 0, 0, 0.5); color: #ffffff; } /* Close Button */ .close { color: #aaa; float: right; font-size: 28px; font-weight: bold; } .close:hover, .close:focus { color: #fff; text-decoration: none; cursor: pointer; } /* Selection Modal Buttons */ .selection-buttons { display: flex; flex-wrap: wrap; /* Allows wrapping to the next line if necessary */ justify-content: space-around; margin-top: 20px; } .selection-buttons button { background-color: #444; border: none; color: #fff; padding: 15px 20px; text-align: center; text-transform: uppercase; font-size: 16px; cursor: pointer; border-radius: 8px; box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3); margin: 5px; /* Adds space between buttons */ flex: 1 1 45%; /* Allows buttons to be flexible and take up around 45% of the container width */ max-width: 200px; /* Ensures buttons don't get too wide */ } .selection-buttons button:hover { background-color: #666; } /* Responsive Adjustments */ @media (max-width: 768px) { .selection-buttons { flex-direction: column; /* Stacks buttons vertically on smaller screens */ align-items: center; /* Center-aligns buttons */ } .selection-buttons button { max-width: 100%; /* Allows buttons to take up full width on smaller screens */ } } /* Commit Container */ .commit { padding: 15px; border-radius: 8px; margin-bottom: 10px; } .commit:nth-child(odd) { background-color: #2a2a2a; } .commit:nth-child(even) { background-color: #333333; } /* Credits Container with Glassmorphic Background */ .credits-container { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 20px; margin: 20px 0; padding: 20px; /* Increase padding for better spacing */ background: rgba(255, 255, 255, 0.2); /* Semi-transparent white background */ border-radius: 15px; /* Rounded corners */ backdrop-filter: blur(10px); /* Apply blur effect for glass effect */ box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1); /* Soft shadow for depth */ border: 1px solid rgba(255, 255, 255, 0.3); /* Light border to enhance glass look */ } /* Credit Item */ .credit-item { width: 50px; height: 50px; position: relative; border-radius: 50%; overflow: hidden; transition: transform 0.3s ease, opacity 0.3s ease; box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3); cursor: pointer; opacity: 0; transform: scale(0.5); } .credit-item img { width: 100%; height: 100%; object-fit: cover; } .credit-item:hover { transform: scale(1.15); opacity: 0.8; } /* Adjustments for Smaller Screens */ @media (max-width: 600px) { .credits-container { gap: 10px; padding: 8px; } .credit-item { width: 40px; height: 40px; } .credit-item::after { font-size: 10px; bottom: -25px; } .credit-item:hover::after { bottom: -35px; } } /* Credits Container Animation */ .credits-container { opacity: 0; transform: translateY(50px); transition: opacity 0.6s ease-out, transform 0.6s ease-out; } .credits-container.in-view { opacity: 1; transform: translateY(0); } /* Credit Item Animation */ .credit-item.in-view { opacity: 1; transform: scale(1); } /* Delay for each credit item */ .credit-item:nth-child(1) { transition-delay: 0.1s; } .credit-item:nth-child(2) { transition-delay: 0.2s; } .credit-item:nth-child(3) { transition-delay: 0.3s; } .credit-item:nth-child(4) { transition-delay: 0.4s; } .credit-item:nth-child(5) { transition-delay: 0.5s; } .credit-item:nth-child(6) { transition-delay: 0.6s; } .credit-item:nth-child(7) { transition-delay: 0.7s; } .credit-item:nth-child(8) { transition-delay: 0.8s; } .credit-item:nth-child(9) { transition-delay: 0.9s; } /* yt tutorial */ .video-section { margin: 40px 0; text-align: center; color: #ffffff; height: 100vh; } .video-title { font-size: 2rem; margin-bottom: 20px; } .video-container { position: relative; padding-bottom: 56.25%; /* 16:9 aspect ratio */ height: 0; overflow: hidden; border-radius: 12px; box-shadow: 0 4px 20px rgba(255, 255, 255, 0.5); max-width: 100%; background-color: #1e1e1e; /* Optional: background color for better contrast */ } .video-container iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 0; border-radius: 12px; } .video-description { font-size: 1.2rem; color: #b0b0b0; margin-top: 20px; max-width: 800px; margin-left: auto; margin-right: auto; padding: 0 20px; } /* Responsive Design */ @media (max-width: 768px) { .video-container { transform: scale(0.8); } .video-title { font-size: 1.5rem; } .video-description { font-size: 1rem; } } @media (max-width: 480px) { .video-title { font-size: 1.25rem; } .video-description { font-size: 0.9rem; } } /* Features Section */ .features { padding: 60px 20px; text-align: center; } .features-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 30px; max-width: 1200px; margin: 40px auto 0; } .feature-card { background: rgba(255, 255, 255, 0.05); padding: 30px; border-radius: 15px; backdrop-filter: blur(10px); border: 1px solid rgba(255, 255, 255, 0.1); transition: transform 0.3s ease; } .feature-card:hover { transform: translateY(-5px); background: rgba(255, 255, 255, 0.1); } .feature-icon { font-size: 2.5rem; margin-bottom: 15px; background: linear-gradient(-45deg, #ee7752, #e73c7e); -webkit-background-clip: text; background-clip: text; color: transparent; } .feature-card h3 { margin: 15px 0; font-size: 1.4rem; } .feature-card p { color: #b0b0b0; font-size: 1rem; line-height: 1.6; } @media (max-width: 768px) { .features-grid { grid-template-columns: 1fr; max-width: 500px; } .feature-card { padding: 25px; } }