/* ============================================================
   negocios.css — Sección Negocios + CTA final
   ============================================================ */

/* --- CTA FINAL --- */
.cta-final {
    position: relative;
    overflow: hidden;
    margin: 60px auto;
    max-width: 1240px;
    border-radius: 32px;
    padding: 60px;
    color: white;
    display: flex;
    justify-content: space-between;
    align-items: center;
    box-shadow: var(--shadow-lg);
    min-height: 200px;
    background-image: url('assets/cta_bg.jpg');
    /* tu propia foto aquí */
    background-size: cover;
    background-position: center;
}

.cta-final::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(120deg,
            rgba(193, 31, 192, 0.94) 0%,
            rgba(109, 15, 148, 0.88) 55%,
            rgba(61, 14, 135, 0.757) 100%);
    z-index: 0;
}

.cta-final::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: radial-gradient(rgba(255, 255, 255, 0.12) 1.5px, transparent 1.5px);
    background-size: 22px 22px;
    z-index: 0;
}

.cta-final>* {
    position: relative;
    z-index: 1;
}



.cta-final h2 {
    font-size: 32px;
    margin-bottom: 10px;
    font-weight: 800;
}

.cta-final p {
    font-size: 16px;
    opacity: 0.9;
}

.cta-buttons {
    display: flex;
    gap: 15px;
}

.cta-buttons .btn {
    background: white;
    color: var(--primary);
    padding: 14px 28px;
}

.cta-buttons .btn-outline {
    background: transparent;
    border: 1px solid white;
    color: white;
}

.cta-buttons .btn-outline:hover {
    background: rgba(255, 255, 255, 0.1);
}

/* ==================================================
   RESPONSIVO: SECCIÓN NEGOCIOS
   ================================================== */

/* PANTALLAS MEDIANAS (Tabletas - Menores a 1024px) */
@media (max-width: 1024px) {
    .bus-grid {
        grid-template-columns: 1fr !important;
        /* El título sube y las imágenes bajan */
        gap: 30px !important;
        text-align: left;
    }

    .bus-images {
        grid-template-columns: repeat(3, 1fr) !important;
        /* Rejilla de 3 columnas */
    }
}

/* PANTALLAS PEQUEÑAS (Celulares - Menores a 768px) */
@media (max-width: 768px) {

    /* Agrega padding horizontal a la sección de negocios (fondo gris) */
    .section-gray {
        padding: 60px 20px !important;
    }

    /* Igualamos la tarjeta a la estética de "Qué es Biplo" y la App */
    .bus-grid+.section-panel,
    section.section-panel {
        margin: 40px 16px !important;
        padding: 40px 24px !important;
        border-radius: 24px !important;
    }

    .bus-grid h2 {
        font-size: 28px !important;
        line-height: 1.25;
    }

    /* --- CARRUSEL DESLIZABLE PARA NEGOCIOS (MÓVIL) --- */
   .bus-images {
    display: flex !important;
    flex-direction: row !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory;
    gap: 16px !important;
    height: auto !important;
    padding-top: 16px !important;      /* NUEVO: espacio para la sombra arriba */
    padding-bottom: 0px !important;   /* antes 10px */
    margin-top: -16px !important;      /* NUEVO: compensa el padding-top */
    margin-left: -20px !important;
    margin-right: -20px !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
}

    .bus-images::-webkit-scrollbar {
        display: none;
        /* Oculta la barra fea de scroll */
    }

    /* Ignoramos el comportamiento de JS en móvil y fijamos tamaños */
    .bus-img,
.bus-img.active {
    flex: 0 0 90% !important;   /* antes 75% — más ancha */
    height: 480px !important;   /* antes 320px — más alta */
    scroll-snap-align: center;
    border-radius: 20px !important;
    padding: 24px !important;
    transition: none !important;
}

    /* Mostramos el texto siempre, ya que no hay 'hover' en celular */
    .bus-img-content p {
        opacity: 0.9 !important;
        max-height: 80px !important;
        font-size: 13px !important;
        margin-top: 4px !important;
    }

    /* ==================================================
   RESPONSIVO: CTA FINAL
   ================================================== */

    @media (max-width: 768px) {
        .cta-final {
            margin: 40px 16px !important;
            /* Alineado con los márgenes de todas las tarjetas */
            padding: 40px 24px !important;
            /* Espaciado interno consistente */
            border-radius: 24px !important;
            /* Mismo radio de bordes */
            flex-direction: column !important;
            /* Apilado vertical del texto y botones */
            align-items: flex-start !important;
            /* Alineación del texto a la izquierda */
            gap: 30px !important;
            /* Separación entre el bloque de texto y botones */
        }

        /* Asegura que el contenedor de texto de escritorio no restrinja el flujo */
        .cta-final div[style*="text-align: left"] {
            width: 100% !important;
        }

        .cta-final h2 {
            font-size: 26px !important;
            /* Tamaño de título cómodo para pantallas móviles */
            line-height: 1.2;
            margin-bottom: 8px !important;
        }

        .cta-final p {
            font-size: 14px !important;
            line-height: 1.45;
        }

        /* Botones de acción */
        .cta-buttons {
            flex-direction: column !important;
            /* Apilado vertical de los botones */
            width: 100% !important;
            gap: 12px !important;
        }

        .cta-buttons .btn {
            width: 100% !important;
            /* Botones de ancho completo para facilitar la pulsación táctil */
            padding: 14px 0 !important;
            font-size: 14px !important;
        }
    }
}


.section-gray {
    /* background-color: var(--bg-light); */
    background-color: #ffffff;
    padding: 100px 0;
}



