/* Reset y configuraciones globales */* {    margin: 0;    padding: 0;    box-sizing: border-box;}:root {    --primary-color: #6366f1;    --primary-dark: #4f46e5;    --secondary-color: #f59e0b;    --dark-color: #1f2937;    --light-color: #f9fafb;    --gray-color: #6b7280;    --gray-light: #e5e7eb;    --success-color: #10b981;    --danger-color: #ef4444;    --border-radius: 12px;    --box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);    --transition: all 0.3s ease;}body {    font-family: 'Poppins', sans-serif;    line-height: 1.6;    color: var(--dark-color);    background-color: var(--light-color);    overflow-x: hidden;}.container {    width: 100%;    max-width: 1200px;    margin: 0 auto;    padding: 0 20px;}.section {    padding: 80px 0;}.section-header {    text-align: center;    margin-bottom: 60px;}.section-title {    font-family: 'Montserrat', sans-serif;    font-size: 2.5rem;    font-weight: 800;    margin-bottom: 15px;    background: linear-gradient(90deg, var(--primary-color), var(--secondary-color));    -webkit-background-clip: text;    background-clip: text;    color: transparent;}.section-subtitle {    font-size: 1.1rem;    color: var(--gray-color);    max-width: 600px;    margin: 0 auto;}.btn {    display: inline-block;    padding: 12px 28px;    border-radius: var(--border-radius);    text-decoration: none;    font-weight: 600;    font-size: 1rem;    border: 2px solid transparent;    cursor: pointer;    transition: var(--transition);    text-align: center;}.btn-primary {    background-color: var(--primary-color);    color: white;    border-color: var(--primary-color);}.btn-primary:hover {    background-color: var(--primary-dark);    border-color: var(--primary-dark);    transform: translateY(-3px);    box-shadow: var(--box-shadow);}.btn-outline {    background-color: transparent;    color: var(--primary-color);    border-color: var(--primary-color);}.btn-outline:hover {    background-color: var(--primary-color);    color: white;    transform: translateY(-3px);}.btn-large {    padding: 16px 32px;    font-size: 1.1rem;}.btn-extra-large {    padding: 20px 40px;    font-size: 1.2rem;    font-weight: 700;}.btn-block {    display: block;    width: 100%;}/* Navbar */.navbar {    position: fixed;    top: 0;    left: 0;    width: 100%;    background-color: rgba(255, 255, 255, 0.95);    backdrop-filter: blur(10px);    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);    z-index: 1000;    padding: 15px 0;}.nav-container {    display: flex;    justify-content: space-between;    align-items: center;}.logo {    display: flex;    align-items: center;    text-decoration: none;    font-size: 1.8rem;    font-weight: 900;    color: var(--primary-color);}.logo i {    margin-right: 10px;    font-size: 2rem;}.nav-links {    display: flex;    align-items: center;    gap: 30px;}.nav-links a {    text-decoration: none;    color: var(--dark-color);    font-weight: 500;    transition: var(--transition);}.nav-links a:hover {    color: var(--primary-color);}.menu-toggle {    display: none;    background: none;    border: none;    font-size: 1.5rem;    color: var(--dark-color);    cursor: pointer;}/* Hero Section */.hero {    padding: 150px 0 80px;    background: linear-gradient(135deg, #f0f4ff 0%, #fef7ff 100%);    overflow: hidden;}.hero-container {    display: grid;    grid-template-columns: 1fr 1fr;    gap: 60px;    align-items: center;}.hero-title {    font-family: 'Montserrat', sans-serif;    font-size: 3.2rem;    font-weight: 900;    line-height: 1.2;    margin-bottom: 20px;}.highlight {    background: linear-gradient(90deg, var(--primary-color), var(--secondary-color));    -webkit-background-clip: text;    background-clip: text;    color: transparent;    position: relative;}.highlight::after {    content: '';    position: absolute;    bottom: 5px;    left: 0;    width: 100%;    height: 8px;    background-color: rgba(99, 102, 241, 0.2);    z-index: -1;    border-radius: 4px;}.hero-subtitle {    font-size: 1.2rem;    color: var(--gray-color);    margin-bottom: 30px;}.hero-cta {    display: flex;    gap: 20px;    margin-bottom: 40px;}.hero-stats {    display: flex;    gap: 40px;}.stat h3 {    font-size: 2.5rem;    font-weight: 700;    color: var(--primary-color);    margin-bottom: 5px;}.stat p {    color: var(--gray-color);    font-size: 0.9rem;}.hero-image {    position: relative;}.video-placeholder {    position: relative;    border-radius: 20px;    overflow: hidden;    box-shadow: 0 30px 60px rgba(99, 102, 241, 0.2);    transform: perspective(1000px) rotateY(-10deg);    transition: var(--transition);}.video-placeholder:hover {    transform: perspective(1000px) rotateY(-5deg);}.video-container {    background: white;    padding: 25px;    border-radius: 20px;}.video-screen {    background: linear-gradient(135deg, #1f2937, #374151);    border-radius: 12px;    padding: 20px;    height: 320px;    display: flex;    align-items: center;    justify-content: center;}.before-after {    display: flex;    align-items: center;    gap: 20px;    width: 100%;}.before, .after {    flex: 1;}.label {    color: white;    font-size: 0.9rem;    margin-bottom: 10px;    text-align: center;    opacity: 0.8;}.video-long {    height: 180px;    background: linear-gradient(135deg, #4f46e5, #7c3aed);    border-radius: 8px;    position: relative;    overflow: hidden;}.video-long::after {    content: '';    position: absolute;    top: 0;    left: 0;    width: 100%;    height: 100%;    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.1), transparent);    animation: shimmer 2s infinite;}.video-shorts {    display: flex;    flex-direction: column;    gap: 10px;}.short {    height: 50px;    background: linear-gradient(135deg, #f59e0b, #fbbf24);    border-radius: 8px;    position: relative;    overflow: hidden;}.short:nth-child(2) {    background: linear-gradient(135deg, #10b981, #34d399);}.short:nth-child(3) {    background: linear-gradient(135deg, #8b5cf6, #a78bfa);}.short::after {    content: '';    position: absolute;    top: 0;    left: 0;    width: 100%;    height: 100%;    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.1), transparent);    animation: shimmer 2s infinite;    animation-delay: 0.5s;}.arrow {    color: white;    font-size: 2rem;}@keyframes shimmer {    0% { transform: translateX(-100%); }    100% { transform: translateX(100%); }}/* How It Works */.how-it-works {    background-color: white;}.steps {    display: grid;    grid-template-columns: repeat(3, 1fr);    gap: 40px;    margin-bottom: 50px;}.step {    text-align: center;    padding: 30px;    border-radius: var(--border-radius);    transition: var(--transition);}.step:hover {    transform: translateY(-10px);    box-shadow: var(--box-shadow);}.step-icon {    margin-bottom: 20px;}.icon-circle {    display: inline-flex;    align-items: center;    justify-content: center;    width: 70px;    height: 70px;    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));    color: white;    font-size: 1.8rem;    font-weight: 700;    border-radius: 50%;    margin: 0 auto;}.step h3 {    font-size: 1.5rem;    margin-bottom: 15px;    color: var(--dark-color);}.demo-cta {    text-align: center;}/* Features */.features {    background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);}.features-grid {    display: grid;    grid-template-columns: repeat(3, 1fr);    gap: 30px;}.feature-card {    background: white;    padding: 30px;    border-radius: var(--border-radius);    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);    transition: var(--transition);}.feature-card:hover {    transform: translateY(-10px);    box-shadow: var(--box-shadow);}.feature-icon {    font-size: 2.5rem;    color: var(--primary-color);    margin-bottom: 20px;}.feature-card h3 {    font-size: 1.3rem;    margin-bottom: 15px;}/* Pricing */.pricing-switcher {    display: flex;    justify-content: center;    align-items: center;    gap: 15px;    margin-bottom: 50px;}.switch-label {    font-weight: 500;    color: var(--gray-color);}.switch-label.active {    color: var(--dark-color);    font-weight: 600;}.discount-badge {    background-color: var(--secondary-color);    color: white;    padding: 3px 8px;    border-radius: 20px;    font-size: 0.8rem;    margin-left: 5px;}.switch {    position: relative;    display: inline-block;    width: 60px;    height: 30px;}.switch input {    opacity: 0;    width: 0;    height: 0;}.slider {    position: absolute;    cursor: pointer;    top: 0;    left: 0;    right: 0;    bottom: 0;    background-color: var(--gray-light);    transition: var(--transition);    border-radius: 34px;}.slider:before {    position: absolute;    content: "";    height: 22px;    width: 22px;    left: 4px;    bottom: 4px;    background-color: white;    transition: var(--transition);    border-radius: 50%;}input:checked + .slider {    background-color: var(--primary-color);}input:checked + .slider:before {    transform: translateX(30px);}.pricing-cards {    display: grid;    grid-template-columns: repeat(3, 1fr);    gap: 30px;    margin-bottom: 40px;}.pricing-card {    background: white;    border-radius: var(--border-radius);    padding: 40px 30px;    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);    transition: var(--transition);    position: relative;}.pricing-card:hover {    transform: translateY(-10px);    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.12);}.pricing-card.featured {    border: 2px solid var(--primary-color);    transform: scale(1.05);}.pricing-card.featured:hover {    transform: scale(1.05) translateY(-10px);}.badge {    position: absolute;    top: -12px;    left: 50%;    transform: translateX(-50%);    background: linear-gradient(90deg, var(--primary-color), var(--secondary-color));    color: white;    padding: 6px 20px;    border-radius: 20px;    font-size: 0.8rem;    font-weight: 600;}.pricing-header {    text-align: center;    margin-bottom: 30px;    padding-bottom: 20px;    border-bottom: 1px solid var(--gray-light);}.pricing-header h3 {    font-size: 1.8rem;    margin-bottom: 15px;    color: var(--dark-color);}.price {    display: flex;    align-items: baseline;    justify-content: center;    margin-bottom: 10px;}.currency {    font-size: 1.5rem;    font-weight: 600;    color: var(--gray-color);}.amount {    font-size: 3.5rem;    font-weight: 800;    color: var(--dark-color);    line-height: 1;}.period {    font-size: 1rem;    color: var(--gray-color);}.price-description {    color: var(--gray-color);}.pricing-features ul {    list-style: none;    margin-bottom: 30px;}.pricing-features li {    margin-bottom: 15px;    display: flex;    align-items: flex-start;}.pricing-features i {    margin-right: 10px;    margin-top: 3px;    color: var(--success-color);}.pricing-features .fa-times {    color: var(--gray-light);}.pricing-cta {    margin-top: auto;}.custom-plan {    text-align: center;    padding: 20px;    background-color: rgba(99, 102, 241, 0.05);    border-radius: var(--border-radius);}.custom-plan a {    color: var(--primary-color);    font-weight: 600;    text-decoration: none;}/* Testimonials */.testimonials-slider {    display: grid;    grid-template-columns: repeat(3, 1fr);    gap: 30px;}.testimonial-card {    background: white;    padding: 30px;    border-radius: var(--border-radius);    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);}.testimonial-content {    font-style: italic;    margin-bottom: 25px;    color: var(--dark-color);    line-height: 1.7;}.testimonial-author {    display: flex;    align-items: center;    gap: 15px;}.author-avatar {    width: 60px;    height: 60px;    border-radius: 50%;    object-fit: cover;}.author-info h4 {    font-size: 1.1rem;    margin-bottom: 5px;}.author-info p {    color: var(--gray-color);    font-size: 0.9rem;    margin-bottom: 5px;}.stars {    color: var(--secondary-color);    font-size: 0.9rem;}/* FAQ */.faq-container {    max-width: 800px;    margin: 0 auto 40px;}.faq-item {    border-bottom: 1px solid var(--gray-light);    margin-bottom: 15px;}.faq-question {    display: flex;    justify-content: space-between;    align-items: center;    padding: 20px 0;    cursor: pointer;}.faq-question h3 {    font-size: 1.2rem;    font-weight: 600;}.faq-question i {    transition: var(--transition);    color: var(--gray-color);}.faq-answer {    max-height: 0;    overflow: hidden;    transition: max-height 0.3s ease;    color: var(--gray-color);    line-height: 1.7;}.faq-answer.active {    max-height: 300px;    padding-bottom: 20px;}.faq-cta {    text-align: center;    padding: 30px;    background-color: rgba(99, 102, 241, 0.05);    border-radius: var(--border-radius);}.faq-cta a {    color: var(--primary-color);    font-weight: 600;    text-decoration: none;}/* Final CTA */.final-cta {    background: linear-gradient(135deg, var(--primary-color), var(--primary-dark));    color: white;    text-align: center;}.cta-box {    max-width: 700px;    margin: 0 auto;}.cta-box h2 {    font-size: 2.5rem;    margin-bottom: 20px;}.cta-box p {    font-size: 1.2rem;    margin-bottom: 30px;    opacity: 0.9;}.cta-note {    margin-top: 20px;    font-size: 0.9rem;    opacity: 0.8;}/* Footer */.footer {    background-color: var(--dark-color);    color: white;    padding: 60px 0 30px;}.footer-content {    display: grid;    grid-template-columns: 2fr 1fr 1fr 1fr 1.5fr;    gap: 40px;    margin-bottom: 40px;}.footer-brand p {    margin: 15px 0;    color: rgba(255, 255, 255, 0.7);    line-height: 1.7;}.social-links {    display: flex;    gap: 15px;    margin-top: 20px;}.social-links a {    display: inline-flex;    align-items: center;    justify-content: center;    width: 40px;    height: 40px;    background-color: rgba(255, 255, 255, 0.1);    border-radius: 50%;    color: white;    font-size: 1.2rem;    transition: var(--transition);}.social-links a:hover {    background-color: var(--primary-color);    transform: translateY(-5px);}.footer-links {    display: flex;    flex-direction: column;}.footer-links h4 {    font-size: 1.2rem;    margin-bottom: 20px;    color: white;}.footer-links a {    color: rgba(255, 255, 255, 0.7);    text-decoration: none;    margin-bottom: 10px;    transition: var(--transition);}.footer-links a:hover {    color: white;    padding-left: 5px;}.footer-contact p {    display: flex;    align-items: center;    margin-bottom: 15px;    color: rgba(255, 255, 255, 0.7);}.footer-contact i {    margin-right: 10px;    color: var(--primary-color);}.footer-bottom {    text-align: center;    padding-top: 30px;    border-top: 1px solid rgba(255, 255, 255, 0.1);    color: rgba(255, 255, 255, 0.6);    font-size: 0.9rem;    display: flex;    justify-content: space-between;}.footer-bottom i {    color: var(--danger-color);    margin: 0 5px;}/* Modal */.modal {    display: none;    position: fixed;    top: 0;    left: 0;    width: 100%;    height: 100%;    background-color: rgba(0, 0, 0, 0.5);    z-index: 2000;    align-items: center;    justify-content: center;    padding: 20px;}.modal.active {    display: flex;}.modal-content {    background: white;    border-radius: var(--border-radius);    width: 100%;    max-width: 500px;    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);    animation: modalFade 0.3s ease;}@keyframes modalFade {    from { opacity: 0; transform: translateY(-30px); }    to { opacity: 1; transform: translateY(0); }}.modal-header {    display: flex;    justify-content: space-between;    align-items: center;    padding: 25px 30px;    border-bottom: 1px solid var(--gray-light);}.modal-header h3 {    font-size: 1.5rem;    color: var(--dark-color);}.modal-close {    background: none;    border: none;    font-size: 1.8rem;    color: var(--gray-color);    cursor: pointer;    transition: var(--transition);}.modal-close:hover {    color: var(--dark-color);}.modal-body {    padding: 30px;}.form-group {    margin-bottom: 20px;}.form-group label {    display: block;    margin-bottom: 8px;    font-weight: 500;    color: var(--dark-color);}.form-group input {    width: 100%;    padding: 12px 15px;    border: 1px solid var(--gray-light);    border-radius: var(--border-radius);    font-size: 1rem;    transition: var(--transition);}.form-group input:focus {    outline: none;    border-color: var(--primary-color);    box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.1);}.form-footer {    margin-top: 20px;    text-align: center;    color: var(--gray-color);}.form-footer a {    color: var(--primary-color);    text-decoration: none;    font-weight: 500;}.plan-summary {    background-color: rgba(99, 102, 241, 0.05);    padding: 25px;    border-radius: var(--border-radius);    margin: 20px 0;    text-align: center;}.plan-summary h4 {    font-size: 1.5rem;    margin-bottom: 15px;    color: var(--dark-color);}.plan-summary ul {    list-style: none;    text-align: left;    margin-top: 15px;}.plan-summary li {    margin-bottom: 8px;    padding-left: 20px;    position: relative;}.plan-summary li:before {    content: "✓";    position: absolute;    left: 0;    color: var(--success-color);    font-weight: bold;}.modal-actions {    display: flex;    gap: 15px;    margin-top: 30px;}.modal-note {    margin-top: 20px;    font-size: 0.9rem;    color: var(--gray-color);    text-align: center;}/* Responsive */@media (max-width: 1024px) {    .hero-container {        grid-template-columns: 1fr;        text-align: center;        gap: 40px;    }        .hero-stats {        justify-content: center;    }        .steps, .features-grid, .pricing-cards, .testimonials-slider, .footer-content {        grid-template-columns: repeat(2, 1fr);    }        .video-placeholder {        max-width: 600px;        margin: 0 auto;        transform: none;    }        .pricing-card.featured {        transform: none;    }        .pricing-card.featured:hover {        transform: translateY(-10px);    }}@media (max-width: 768px) {    .nav-links {        position: fixed;        top: 70px;        left: 0;        width: 100%;        background-color: white;        flex-direction: column;        padding: 20px;        box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);        transform: translateY(-100%);        opacity: 0;        visibility: hidden;        transition: var(--transition);        gap: 20px;    }        .nav-links.active {        transform: translateY(0);        opacity: 1;        visibility: visible;    }        .menu-toggle {        display: block;    }        .hero-title {        font-size: 2.5rem;    }        .hero-cta {        flex-direction: column;        align-items: center;    }        .hero-stats {        flex-direction: column;        gap: 20px;    }        .section-title {        font-size: 2rem;    }        .steps, .features-grid, .pricing-cards, .testimonials-slider, .footer-content {        grid-template-columns: 1fr;    }        .footer-bottom {        flex-direction: column;        gap: 10px;    }}