:root { --color-bg-dark: #0d0d0d; --color-bg-light: #ffffff; --color-fg-dark: #ffffff; --color-fg-light: #000000; --color-red-neon: #ff073a; --color-yellow-neon: #ffff00; --color-blue-neon: #00ffff; --color-green-neon: #00ff00; --font-titles: 'Montserrat', sans-serif; --font-body: 'Roboto', sans-serif; --font-special: 'Poppins', sans-serif; --transition-speed: 0.3s; } * { margin: 0; padding: 0; box-sizing: border-box; } html { font-size: 16px; /* Base font size */ } body { background: var(--color-bg-dark); color: var(--color-fg-dark); font-family: var(--font-body); overflow-x: hidden; line-height: 1.6; } header, main, section, footer { display: block; width: 100%; } /* Botón de idioma */ #langBtn { position: fixed; top: 1rem; right: 1rem; z-index: 9999; background: var(--color-red-neon); color: var(--color-fg-dark); padding: 0.625rem 0.9375rem; /* 10px 15px */ border: none; border-radius: 0.25rem; font-weight: bold; cursor: pointer; transition: background var(--transition-speed), transform var(--transition-speed); font-family: var(--font-special); font-size: 1rem; } #langBtn:hover { background: #ff3f62; transform: rotate(360deg); } #langMenu { position: fixed; top: 4rem; right: 1rem; z-index: 9999; background: rgba(0, 0, 0, 0.9); color: var(--color-fg-dark); padding: 0.625rem; display: none; border: 0.0625rem solid var(--color-red-neon); border-radius: 0.25rem; animation: slideDown 0.5s ease-in-out; } @keyframes slideDown { 0% { opacity: 0; transform: translateY(-1.25rem); } 100% { opacity: 1; transform: translateY(0); } } #langMenu button { display: block; margin: 0.3125rem 0; /* 5px 0 */ background: none; border: none; color: var(--color-fg-dark); cursor: pointer; font-weight: bold; text-align: left; font-family: var(--font-body); transition: color var(--transition-speed); font-size: 1rem; width: 100%; } #langMenu button:hover { color: var(--color-red-neon); } /* Botón de contacto flotante */ #contactBtn { position: fixed; bottom: 1rem; right: 1rem; z-index: 9999; background: var(--color-blue-neon); color: var(--color-fg-dark); padding: 0.75rem 1.5rem; /* 12px 24px */ border: none; border-radius: 0.25rem; font-weight: bold; cursor: pointer; transition: background var(--transition-speed), transform var(--transition-speed); font-family: var(--font-special); font-size: 1rem; } #contactBtn:hover { background: #00e5ff; transform: scale(1.05); } /* Modales */ .modal { display: none; position: fixed; z-index: 10000; left: 0; top: 0; width: 100%; height: 100%; overflow: auto; background-color: rgba(0, 0, 0, 0.8); justify-content: center; align-items: center; padding: 1rem; } .modalContent { background-color: var(--color-bg-light); color: var(--color-fg-light); padding: 1.5rem; border: 0.125rem solid var(--color-red-neon); border-radius: 0.5rem; max-width: 600px; width: 100%; position: relative; font-family: var(--font-body); font-size: 1rem; } .closeModal { position: absolute; top: 0.5rem; right: 0.75rem; color: var(--color-fg-dark); font-size: 1.5rem; font-weight: bold; cursor: pointer; } .closeModal:hover { color: var(--color-red-neon); } /* HERO */ .hero { position: relative; height: 100vh; background: #000; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; overflow: hidden; perspective: 1000px; padding: 1rem; } .hero::before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: url('https://images.unsplash.com/photo-1555109307-f7d9da25c244?q=80&w=1473&auto=format&fit=crop&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D') center/cover no-repeat; opacity: 0.15; z-index: 1; animation: rotateBackground 20s linear infinite; } @keyframes rotateBackground { 0% { transform: rotate(0deg) scale(1); } 50% { transform: rotate(180deg) scale(1.2); } 100% { transform: rotate(360deg) scale(1); } } .hero h1 { position: relative; z-index: 2; font-family: var(--font-titles); font-weight: 700; font-size: 2.5rem; /* 40px */ margin: 1.25rem 0; /* 20px */ text-shadow: 0 0 0.625rem var(--color-red-neon), 0 0 1.25rem var(--color-red-neon); text-transform: uppercase; animation: glow 2s infinite alternate; max-width: 90%; } @keyframes glow { 0% { text-shadow: 0 0 0.625rem var(--color-red-neon), 0 0 1.25rem var(--color-red-neon); } 100% { text-shadow: 0 0 1.25rem var(--color-red-neon), 0 0 2.5rem var(--color-red-neon); } } .hero p { position: relative; z-index: 2; font-size: 1.125rem; /* 18px */ margin-bottom: 1.25rem; /* 20px */ text-shadow: 0 0 0.3125rem #000; animation: fadeIn 2s ease-in-out; max-width: 80%; } @keyframes fadeIn { 0% { opacity: 0; } 100% { opacity: 1; } } .countdown { position: relative; z-index: 2; font-size: 1.125rem; /* 18px */ font-weight: bold; color: var(--color-yellow-neon); margin-bottom: 0.625rem; /* 10px */ text-shadow: 0 0 0.625rem var(--color-yellow-neon); animation: pulse 1.5s infinite; } @keyframes pulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.1); } } #limitedSlots { position: relative; z-index: 2; margin-bottom: 1.875rem; /* 30px */ font-size: 1.0625rem; /* 17px */ color: var(--color-red-neon); font-weight: bold; animation: shake 0.5s infinite; } @keyframes shake { 0%, 100% { transform: translateX(0); } 25% { transform: translateX(-0.3125rem); /* -5px */ } 75% { transform: translateX(0.3125rem); /* 5px */ } } .hero button { position: relative; z-index: 2; background: var(--color-red-neon); color: var(--color-fg-dark); padding: 0.9375rem 1.875rem; /* 15px 30px */ border: none; cursor: pointer; font-weight: bold; font-size: 1.2rem; /* 19px */ font-family: var(--font-special); transition: box-shadow 0.2s, transform 0.2s; animation: bounce 2s infinite; border-radius: 0.25rem; } @keyframes bounce { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-0.625rem); /* -10px */ } } .hero button:hover { box-shadow: 0 0 1.25rem var(--color-red-neon); transform: scale(1.1); } /* SECCIÓN DE OFERTAS */ .offersSection { background: #111; padding: 2rem 5%; } .offersSection h2 { font-family: var(--font-titles); font-size: 2rem; color: var(--color-fg-light); margin-bottom: 1.5rem; text-align: center; } .offersContainer, .cpaOffersContainer { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 1.5rem; } .offerCard, .cpaOfferItem { background: #222; padding: 1rem; border-radius: 0.5rem; box-shadow: 0 0 0.3125rem rgba(0, 0, 0, 0.5); display: flex; flex-direction: column; justify-content: space-between; transition: transform var(--transition-speed), box-shadow var(--transition-speed); } .offerCard:hover, .cpaOfferItem:hover { transform: translateY(-0.3125rem); /* -5px */ box-shadow: 0 0 0.625rem rgba(0, 0, 0, 0.7); } .offerCard h3, .cpaOfferItem h4 { font-family: var(--font-titles); font-size: 1.25rem; /* 20px */ margin-bottom: 0.5rem; color: var(--color-fg-light); } .offerPayout, .cpaOfferItem p { font-size: 1rem; /* 16px */ margin-bottom: 1rem; color: var(--color-yellow-neon); } .offerBtn, .cpaBtn { background: var(--color-green-neon); color: var(--color-fg-dark); text-align: center; padding: 0.5rem; border-radius: 0.25rem; text-decoration: none; font-weight: bold; transition: background var(--transition-speed), transform var(--transition-speed); font-size: 1rem; } .offerBtn:hover, .cpaBtn:hover { background: #00e600; transform: scale(1.05); } /* TESTIMONIOS */ .testimonialsSection { padding: 2rem 5%; background: var(--color-bg-light); color: var(--color-bg-dark); } .testimonialsSection h2 { font-family: var(--font-titles); font-size: 2rem; margin-bottom: 1.5rem; text-align: center; } .testimonialsContainer { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 1.5rem; } .testimonialItem { background: #f0f0f0; padding: 1rem; border-radius: 0.5rem; box-shadow: 0 0 0.3125rem rgba(0, 0, 0, 0.1); font-style: italic; } .testimonialItem small { display: block; margin-top: 0.5rem; font-size: 0.875rem; color: #555; text-align: right; } /* SECCIÓN INFORMATIVA */ .infoSection { padding: 2rem 5%; background: #222; color: var(--color-fg-light); } .infoSection h2 { font-family: var(--font-titles); font-size: 1.75rem; margin-bottom: 1.5rem; text-align: center; } .infoContent { max-width: 800px; margin: 0 auto; font-size: 1rem; line-height: 1.6; } .infoContent h3 { font-family: var(--font-titles); font-size: 1.25rem; margin-top: 1rem; margin-bottom: 0.5rem; } .infoContent ul { list-style-type: disc; margin-left: 1.5rem; } .infoContent strong { color: var(--color-red-neon); } /* CPA EXCLUSIVAS */ .cpaSection { padding: 2rem 5%; background: #111; color: var(--color-fg-light); } .cpaSection h2 { font-family: var(--font-titles); font-size: 2rem; margin-bottom: 1.5rem; text-align: center; } .cpaSection p { max-width: 800px; margin: 0 auto 1.5rem auto; font-size: 1rem; line-height: 1.6; text-align: center; } /* FOOTER */ .footer { background: #000; color: #fff; padding: 2rem 5%; text-align: center; font-size: 0.875rem; } .footer a { color: var(--color-red-neon); text-decoration: none; margin: 0 0.5rem; transition: color var(--transition-speed); } .footer a:hover { color: var(--color-yellow-neon); } .trustLogos { margin: 1.5rem 0; display: flex; justify-content: center; flex-wrap: wrap; gap: 1rem; } .trustLogos img { max-width: 100px; height: auto; filter: brightness(0) invert(1); } .logosDisclaimer { font-size: 0.75rem; color: #aaa; margin-top: 1rem; max-width: 800px; margin-left: auto; margin-right: auto; } /* Responsividad y ajustes de grid */ @media (max-width: 1024px) { .offersContainer, .cpaOffersContainer, .testimonialsContainer { grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); } .hero h1 { font-size: 2rem; } .hero p { font-size: 1rem; } .countdown { font-size: 1rem; } #limitedSlots { font-size: 0.9375rem; /* 15px */ } .hero button { font-size: 1rem; padding: 0.75rem 1.5rem; } } @media (max-width: 768px) { .offersSection, .testimonialsSection, .infoSection, .cpaSection, .footer { padding: 1.5rem 3%; } .offersContainer, .cpaOffersContainer, .testimonialsContainer { grid-template-columns: 1fr; } .hero h1 { font-size: 1.75rem; } .hero p { font-size: 0.9375rem; /* 15px */ } .countdown { font-size: 0.9375rem; } #limitedSlots { font-size: 0.875rem; /* 14px */ } .hero button { font-size: 0.9rem; padding: 0.625rem 1.25rem; } .testimonialItem, .offerCard, .cpaOfferItem { padding: 0.75rem; } } @media (max-width: 480px) { .offersSection, .testimonialsSection, .infoSection, .cpaSection, .footer { padding: 1rem 2%; } .hero h1 { font-size: 1.5rem; } .hero p { font-size: 0.875rem; /* 14px */ } .countdown { font-size: 0.875rem; } #limitedSlots { font-size: 0.8125rem; /* 13px */ } .hero button { font-size: 0.8rem; padding: 0.5rem 1rem; } .testimonialItem, .offerCard, .cpaOfferItem { padding: 0.5rem; } .trustLogos img { max-width: 80px; } }