    /* public/css/splash.css - ESTILOS PROFESIONALES OPTIMIZADOS PARA MÓVIL */

    * {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }

    body {
        font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
        margin: 0;
        padding: 0;
        min-height: 100vh;
        overflow: hidden;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
    }

    /* ========== CONTENEDOR PRINCIPAL ========== */
    .splash-container {
        position: relative;
        min-height: 100vh;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 1.5rem;
        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
        overflow: hidden;
    }

    /* ========== FONDO ANIMADO ========== */
    .splash-background {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        overflow: hidden;
    }

    .gradient-overlay {
        position: absolute;
        inset: 0;
        background: 
            radial-gradient(circle at 20% 30%, rgba(99, 102, 241, 0.3) 0%, transparent 50%),
            radial-gradient(circle at 80% 70%, rgba(139, 92, 246, 0.3) 0%, transparent 50%);
        animation: gradientShift 15s ease infinite;
    }

    @keyframes gradientShift {
        0%, 100% { opacity: 0.4; }
        50% { opacity: 0.7; }
    }

    .blob {
        position: absolute;
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.08);
        backdrop-filter: blur(40px);
        filter: blur(40px);
    }

    .blob-1 {
        width: 250px;
        height: 250px;
        top: -80px;
        left: -80px;
        animation: float1 25s infinite ease-in-out;
    }

    .blob-2 {
        width: 300px;
        height: 300px;
        bottom: -100px;
        right: -100px;
        animation: float2 30s infinite ease-in-out;
    }

    .blob-3 {
        width: 200px;
        height: 200px;
        top: 40%;
        left: 60%;
        animation: float3 20s infinite ease-in-out;
    }

    @keyframes float1 {
        0%, 100% { transform: translate(0, 0) scale(1); }
        50% { transform: translate(30px, -40px) scale(1.1); }
    }

    @keyframes float2 {
        0%, 100% { transform: translate(0, 0) scale(1); }
        50% { transform: translate(-40px, 30px) scale(1.15); }
    }

    @keyframes float3 {
        0%, 100% { transform: translate(0, 0) scale(1); }
        50% { transform: translate(20px, 20px) scale(0.95); }
    }

    /* Partículas flotantes */
    .particles {
        position: absolute;
        inset: 0;
        overflow: hidden;
    }

    .particle {
        position: absolute;
        background: rgba(255, 255, 255, 0.3);
        border-radius: 50%;
        animation: particleFloat 15s infinite ease-in-out;
    }

    .particle:nth-child(1) {
        width: 4px;
        height: 4px;
        top: 20%;
        left: 20%;
        animation-delay: 0s;
    }

    .particle:nth-child(2) {
        width: 6px;
        height: 6px;
        top: 60%;
        left: 80%;
        animation-delay: 3s;
    }

    .particle:nth-child(3) {
        width: 3px;
        height: 3px;
        top: 80%;
        left: 30%;
        animation-delay: 6s;
    }

    .particle:nth-child(4) {
        width: 5px;
        height: 5px;
        top: 40%;
        left: 70%;
        animation-delay: 9s;
    }

    .particle:nth-child(5) {
        width: 4px;
        height: 4px;
        top: 30%;
        left: 50%;
        animation-delay: 12s;
    }

    @keyframes particleFloat {
        0%, 100% {
            transform: translateY(0) translateX(0);
            opacity: 0;
        }
        10%, 90% {
            opacity: 1;
        }
        50% {
            transform: translateY(-100px) translateX(50px);
        }
    }

    /* ========== CONTENIDO ========== */
    .splash-content {
        position: relative;
        max-width: 440px;
        width: 100%;
        text-align: center;
        animation: fadeInUp 1s ease-out;
        z-index: 10;
    }

    @keyframes fadeInUp {
        from {
            opacity: 0;
            transform: translateY(40px);
        }
        to {
            opacity: 1;
            transform: translateY(0);
        }
    }

    /* ========== LOGO ========== */
    .splash-logo-container {
        margin-bottom: 2rem;
    }

    .logo-wrapper {
        position: relative;
        display: inline-block;
        animation: scaleIn 0.6s cubic-bezier(0.34, 1.56, 0.64, 1) 0.3s backwards;
    }

    @keyframes scaleIn {
        from {
            transform: scale(0) rotate(-180deg);
            opacity: 0;
        }
        to {
            transform: scale(1) rotate(0deg);
            opacity: 1;
        }
    }

    .logo-glow {
        position: absolute;
        inset: -20px;
        background: radial-gradient(circle, rgba(255, 255, 255, 0.4) 0%, transparent 70%);
        border-radius: 50%;
        animation: pulse 3s ease-in-out infinite;
    }

    @keyframes pulse {
        0%, 100% {
            transform: scale(1);
            opacity: 0.5;
        }
        50% {
            transform: scale(1.1);
            opacity: 0.8;
        }
    }

    .splash-logo {
        position: relative;
        width: 100px;
        height: 100px;
        background: white;
        border-radius: 28px;
        padding: 1.25rem;
        box-shadow: 
            0 20px 60px rgba(0, 0, 0, 0.3),
            0 8px 20px rgba(0, 0, 0, 0.2),
            inset 0 1px 0 rgba(255, 255, 255, 0.5);
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .splash-logo img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    /* ========== TEXTO ========== */
    .splash-text {
        margin-bottom: 2.5rem;
    }

    .splash-title {
        margin-bottom: 1rem;
    }

    .title-line {
        display: block;
        font-size: 1.75rem;
        font-weight: 700;
        color: white;
        letter-spacing: -0.02em;
        margin-bottom: 0.25rem;
        animation: fadeIn 0.8s ease-out 0.5s backwards;
    }

    .title-highlight {
        display: block;
        font-size: 2rem;
        font-weight: 900;
        background: linear-gradient(135deg, #ffffff 0%, #f0f0f0 100%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
        letter-spacing: -0.03em;
        text-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
        animation: fadeIn 0.8s ease-out 0.6s backwards;
    }

    @keyframes fadeIn {
        from { opacity: 0; }
        to { opacity: 1; }
    }

    .splash-description {
        font-size: 1.0625rem;
        line-height: 1.6;
        color: rgba(255, 255, 255, 0.9);
        font-weight: 400;
        max-width: 340px;
        margin: 0 auto;
        animation: fadeIn 0.8s ease-out 0.7s backwards;
    }

    /* ========== CARACTERÍSTICAS ========== */
    .splash-features {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 1rem;
        margin-bottom: 2.5rem;
        animation: fadeInUp 0.8s ease-out 0.8s backwards;
    }

    .feature-card {
        background: rgba(255, 255, 255, 0.12);
        backdrop-filter: blur(20px);
        border-radius: 1.25rem;
        padding: 1.25rem 0.75rem;
        border: 1px solid rgba(255, 255, 255, 0.18);
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    }

    .feature-card:hover {
        transform: translateY(-4px);
        background: rgba(255, 255, 255, 0.18);
        box-shadow: 0 12px 32px rgba(0, 0, 0, 0.15);
    }

    .feature-icon {
        width: 3rem;
        height: 3rem;
        background: rgba(255, 255, 255, 0.2);
        backdrop-filter: blur(10px);
        border-radius: 1rem;
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 0 auto 0.75rem;
        border: 1px solid rgba(255, 255, 255, 0.3);
    }

    .feature-icon svg {
        width: 1.5rem;
        height: 1.5rem;
        color: white;
    }

    .feature-card h3 {
        font-size: 1rem;
        font-weight: 700;
        color: white;
        margin-bottom: 0.25rem;
    }

    .feature-card p {
        font-size: 0.8125rem;
        color: rgba(255, 255, 255, 0.8);
        font-weight: 500;
    }

    /* ========== BOTONES ========== */
    .splash-actions {
        animation: fadeInUp 0.8s ease-out 0.9s backwards;
    }

    .btn-primary {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 0.625rem;
        width: 100%;
        max-width: 280px;
        padding: 1.125rem 2rem;
        background: white;
        color: #6366f1;
        border-radius: 1rem;
        font-size: 1.0625rem;
        font-weight: 700;
        text-decoration: none;
        box-shadow: 
            0 10px 30px rgba(0, 0, 0, 0.2),
            0 4px 12px rgba(0, 0, 0, 0.15);
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        border: 2px solid transparent;
    }

    .btn-primary:hover {
        transform: translateY(-2px);
        box-shadow: 
            0 14px 40px rgba(0, 0, 0, 0.25),
            0 6px 16px rgba(0, 0, 0, 0.2);
    }

    .btn-primary:active {
        transform: translateY(0);
    }

    .btn-primary svg {
        width: 1.125rem;
        height: 1.125rem;
        transition: transform 0.3s ease;
    }

    .btn-primary:hover svg {
        transform: translateX(4px);
    }

    .splash-footer {
        margin-top: 1.5rem;
    }

    .splash-footer p {
        font-size: 0.8125rem;
        color: rgba(255, 255, 255, 0.7);
        font-weight: 500;
    }

    /* ========== RESPONSIVE DESIGN ========== */

    /* Móviles pequeños (320px - 375px) */
    @media (max-width: 375px) {
        .splash-container {
            padding: 1.25rem;
        }
        
        .splash-logo {
            width: 85px;
            height: 85px;
            border-radius: 24px;
        }
        
        .title-line {
            font-size: 1.5rem;
        }
        
        .title-highlight {
            font-size: 1.75rem;
        }
        
        .splash-description {
            font-size: 0.9375rem;
            max-width: 300px;
        }
        
        .splash-features {
            gap: 0.75rem;
        }
        
        .feature-card {
            padding: 1rem 0.5rem;
        }
        
        .feature-icon {
            width: 2.5rem;
            height: 2.5rem;
            margin-bottom: 0.5rem;
        }
        
        .feature-icon svg {
            width: 1.25rem;
            height: 1.25rem;
        }
        
        .feature-card h3 {
            font-size: 0.9rem;
        }
        
        .feature-card p {
            font-size: 0.75rem;
        }
        
        .btn-primary {
            padding: 1rem 1.75rem;
            font-size: 1rem;
        }
    }

    /* Móviles medianos (376px - 428px) */
    @media (min-width: 376px) and (max-width: 428px) {
        .title-line {
            font-size: 1.625rem;
        }
        
        .title-highlight {
            font-size: 1.875rem;
        }
    }

    /* Tablets pequeñas y móviles grandes (429px - 768px) */
    @media (min-width: 429px) and (max-width: 768px) {
        .splash-content {
            max-width: 500px;
        }
        
        .splash-logo {
            width: 110px;
            height: 110px;
        }
        
        .title-line {
            font-size: 1.875rem;
        }
        
        .title-highlight {
            font-size: 2.125rem;
        }
        
        .splash-description {
            font-size: 1.125rem;
            max-width: 380px;
        }
        
        .splash-features {
            gap: 1.25rem;
        }
    }

    /* Pantallas muy cortas (altura) */
    @media (max-height: 700px) {
        .splash-container {
            padding: 1rem;
        }
        
        .splash-logo-container {
            margin-bottom: 1.5rem;
        }
        
        .splash-logo {
            width: 80px;
            height: 80px;
        }
        
        .splash-text {
            margin-bottom: 1.75rem;
        }
        
        .title-line {
            font-size: 1.5rem;
        }
        
        .title-highlight {
            font-size: 1.75rem;
        }
        
        .splash-description {
            font-size: 0.9375rem;
        }
        
        .splash-features {
            margin-bottom: 1.75rem;
            gap: 0.75rem;
        }
        
        .feature-card {
            padding: 1rem 0.625rem;
        }
        
        .feature-icon {
            width: 2.5rem;
            height: 2.5rem;
        }
    }

    /* Pantallas muy cortas y angostas (teléfonos en landscape) */
    @media (max-height: 500px) and (max-width: 900px) {
        .splash-container {
            padding: 1rem 2rem;
        }
        
        .splash-content {
            max-width: 700px;
        }
        
        .splash-logo-container {
            margin-bottom: 1rem;
        }
        
        .splash-logo {
            width: 70px;
            height: 70px;
        }
        
        .splash-text {
            margin-bottom: 1.25rem;
        }
        
        .title-line {
            font-size: 1.25rem;
            margin-bottom: 0.125rem;
        }
        
        .title-highlight {
            font-size: 1.5rem;
        }
        
        .splash-description {
            font-size: 0.875rem;
            max-width: 450px;
        }
        
        .splash-features {
            margin-bottom: 1.25rem;
            max-width: 500px;
            margin-left: auto;
            margin-right: auto;
        }
    }

    /* Dark mode support (opcional) */
    @media (prefers-color-scheme: dark) {
        .splash-logo {
            box-shadow: 
                0 20px 60px rgba(0, 0, 0, 0.4),
                0 8px 20px rgba(0, 0, 0, 0.3);
        }
    }