/* ==========================================
   PAGE CSS - Empresa Landing
   Hero background, slideshow, animations
   ========================================== */

/* SLIDESHOW HERO */
.slideshow-container { position: absolute; inset: -5%; width: 110%; height: 110%; z-index: 0; background-color: #0f172a; overflow: hidden; }
.bg-slide { 
    position: absolute; inset: 0; width: 100%; height: 100%; 
    background-size: cover; background-position: center; 
    opacity: 0; z-index: 1; 
    transition: opacity 1.5s ease-in-out, transform 15s linear; 
    transform: translateZ(0) scale(1.0); 
}
.bg-slide.active { opacity: 1; z-index: 3; transform: translateZ(0) scale(1.15); }
.bg-slide.prev { opacity: 1; z-index: 2; transform: translateZ(0) scale(1.15); }

/* CARRUSEL INFINITO DE TARJETAS */
.ticker-wrapper-flow {
    width: 100%; overflow: hidden; display: flex; background-color: transparent;
    mask-image: linear-gradient(to right, transparent, black 5%, black 95%, transparent);
    -webkit-mask-image: linear-gradient(to right, transparent, black 5%, black 95%, transparent);
    pointer-events: auto;
}
.ticker-track-flow { display: flex; width: max-content; will-change: transform; transform: translateZ(0); }

/* ESTILOS CORPORATIVOS PREMIUM */
.glass-panel { background: rgba(255, 255, 255, 0.85); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); border: 1px solid rgba(255, 255, 255, 0.5); }

/* ANIMACIONES EMBEBIDAS CSS */
.pulse-ring { animation: pulseRing 2s cubic-bezier(0.215, 0.61, 0.355, 1) infinite; }
@keyframes pulseRing { 0% { box-shadow: 0 0 0 0 rgba(79, 70, 229, 0.7); } 70% { box-shadow: 0 0 0 20px rgba(79, 70, 229, 0); } 100% { box-shadow: 0 0 0 0 rgba(79, 70, 229, 0); } }

.dash-line-path { stroke-dasharray: 1000; stroke-dashoffset: 1000; }
.tv-grid { position: absolute; inset: 0; background: linear-gradient(rgba(18, 16, 16, 0) 50%, rgba(0, 0, 0, 0.1) 50%); background-size: 100% 4px; z-index: 10; pointer-events: none; opacity: 0.2; }

/* FIX: Renderizado Nítido para Imágenes Escaladas */
.crisp-img {
    image-rendering: -webkit-optimize-contrast;
    image-rendering: crisp-edges;
    transform: translateZ(0);
    backface-visibility: hidden;
}

/* ==========================================
   MOBILE ANIMATION CONTAINERS
   Show animations on mobile below text
   ========================================== */
@media (max-width: 1023px) {
    /* Animation containers - show on mobile (only .anim-col, not header) */
    .anim-col.hidden.lg\:flex {
        display: flex !important;
        position: relative !important;
        width: 100% !important;
        height: 400px !important;
        min-height: 400px !important;
        max-height: 400px !important;
        padding: 0 !important;
        margin-top: 1.5rem !important;
        transform: scale(0.55) !important;
        transform-origin: top center !important;
        overflow: visible !important;
        contain: paint;
    }
    
    /* Remove sticky on mobile */
    .anim-col.sticky {
        position: relative !important;
    }
    
    /* Allow animation containers to overflow */
    .embedded-anim-container {
        overflow: visible !important;
        contain: paint;
    }
    
    .stage-scaler {
        overflow: visible !important;
        contain: paint;
    }
}
