/* Configuración de Fuentes Globales */
body {
    font-family: 'Open Sans', sans-serif;
    background-color: #ffffff;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Montserrat', sans-serif;
}

/* Personalización del Menú Estilo Eurocare */
.navbar-nav .nav-link {
    font-size: 15px;
    letter-spacing: 0.3px;
    transition: color 0.3s ease;
    color: #4a5568 !important; /* Gris elegante, no negro puro */
}

/* Efecto Hover azul característico médico */
.navbar-nav .nav-link:hover, 
.navbar-nav .nav-link.active {
    color: #0066cc !important; /* Azul institucional */
}

/* Botón Sisadmed personalizado */
.btn-outline-primary {
    color: #0066cc;
    border-color: #0066cc;
    font-size: 14px;
    font-weight: 600;
}

.btn-outline-primary:hover {
    background-color: #0066cc;
    border-color: #0066cc;
    color: #ffffff;
}

/* Estilos del Footer */
footer {
    background-color: #f8f9fa !important; /* Fondo claro y limpio */
}

/* Enlaces del Footer con transición suave */
.combined-links a {
    transition: all 0.2s ease-in-out;
    display: inline-block;
}

.combined-links a:hover {
    color: #0066cc !important; /* Azul corporativo al pasar el mouse */
    transform: translateX(4px); /* Desplazamiento sutil hacia la derecha */
}

/* Iconos de Redes Sociales Circulares */
.social-icon {
    width: 36px;
    height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-color: #dee2e6;
    color: #6c757d;
    transition: all 0.3s ease;
}

.social-icon:hover {
    background-color: #0066cc;
    border-color: #0066cc;
    color: #ffffff;
    transform: translateY(-3px); /* Pequeño brinco moderno hacia arriba */
}

/* --- Carrusel Proporcional Estilo Eurocare --- */

.carousel-img {
    width: 100%;
    height: auto; /* Al poner auto, la altura se calcula sola según el ancho de la pantalla */
    display: block;
}

/* Ajustamos la capa oscura para que mida exactamente lo mismo que la imagen dinámica */
.carousel-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to right, rgba(0, 0, 0, 0.4) 30%, rgba(0, 0, 0, 0.1) 100%);
    z-index: 1;
}

/* --- Sección de Aliados / Clientes --- */

.img-aliado {
    max-height: 80px; /* Controla que ningún logo sea más alto que otro */
    width: auto;
    object-fit: contain;
    filter: grayscale(100%); /* Transforma el logo a blanco y negro */
    opacity: 0.6;            /* Lo pone sutil */
    transition: all 0.3s ease-in-out;
}

/* Efecto Hover: Al pasar el cursor, el logo cobra vida con su color original */
.img-aliado:hover {
    filter: grayscale(0%);
    opacity: 1;
    transform: scale(1.05); /* Un levísimo zoom moderno */
}

/* Ajuste fino para las flechas del carrusel de aliados */
.aliados-control {
    width: 5%;
}
@media (max-width: 768px) {
    .img-aliado {
        max-height: 55px; /* Más pequeños en móviles para que quepan de a dos */
    }
    .aliados-control {
        display: none; /* Ocultamos las flechas en celular para limpiar espacio, se mueve con el dedo */
    }
}

/* --- Tarjetas de Servicios / Productos --- */

/* Contenedor de la Tarjeta */
.card-servicio {
    border-radius: 16px !important; /* Bordes bien redondeados modernos */
    transition: all 0.3s ease-in-out;
    background-color: #ffffff;
}

/* Efecto Hover: La tarjeta se eleva suavemente y proyecta una sombra más profunda */
.card-servicio:hover {
    transform: translateY(-8px);
    box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.08) !important;
}

/* El círculo que envuelve al icono de Font Awesome */
.card-servicio .icon-box {
    width: 70px;
    height: 70px;
    transition: all 0.3s ease-in-out;
}

/* Al pasar el mouse por la tarjeta, el círculo del icono se vuelve azul y el icono blanco */
.card-servicio:hover .icon-box {
    background-color: #0066cc !important; /* Azul institucional */
}
.card-servicio:hover .icon-box i {
    color: #ffffff !important;
}

/* Animación de la flechita del enlace */
.link-flecha .transition-arrow {
    transition: transform 0.2s ease;
}
.link-flecha:hover .transition-arrow {
    transform: translateX(5px); /* Desplaza la flechita a la derecha */
}

/* --- Bloque de Acción Central (CTA) --- */

.cta-section {
    /* Degradado del azul característico médico a un tono más oscuro y elegante */
    background: linear-gradient(135deg, #0052a3 0%, #003366 100%);
}

/* Capa decorativa translúcida para dar profundidad visual */
.cta-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: radial-gradient(circle at 80% 20%, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0) 50%);
    z-index: 1;
}

/* Efecto suave al pasar el mouse por los botones del bloque */
.transition-btn {
    transition: all 0.3s ease;
}

.transition-btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

/* --- Estilos de la Página Nosotros --- */

/* Ajuste fino para el banner superior */
.page-header-banner {
    background-color: #f4f7fa !important; /* Un gris-azul muy institucional */
}

/* Comportamiento de las tarjetas de Misión/Visión/Valores */
.card-pilar {
    border-radius: 12px !important;
    transition: all 0.3s ease;
}

/* El círculo del icono de los pilares */
.icon-pilar {
    width: 65px;
    height: 65px;
    color: #0066cc !important;
    transition: all 0.3s ease-in-out;
}

/* Efecto al pasar el cursor: se destaca sutilmente el pilar */
.card-pilar:hover {
    box-shadow: 0 0.75rem 1.5rem rgba(0, 0, 0, 0.05) !important;
    background-color: #ffffff;
    transform: translateY(-4px);
}

.card-pilar:hover .icon-pilar {
    background-color: #0066cc !important;
    color: #ffffff !important;
}

/* --- Estilos de la Página Contacto --- */

/* Círculos de los iconos informativos */
.contact-icon-box {
    width: 50px;
    height: 50px;
    flex-shrink: 0;
    color: #0066cc !important;
}

/* Ajuste de padding personalizado para los inputs del formulario */
.py-2-5 {
    padding-top: 0.65rem !important;
    padding-bottom: 0.65rem !important;
    padding-left: 1rem !important;
    background-color: #ffffff !important;
    border: 1px solid #e9ecef !important; /* Borde ultra sutil */
    color: #495057 !important;
}

/* Efecto focus moderno: resalta el input con una línea azul limpia */
.py-2-5:focus {
    background-color: #ffffff !important;
    border-color: #0066cc !important;
    box-shadow: 0 0 0 0.25rem rgba(0, 102, 204, 0.1) !important;
}

.extra-small-text {
    font-size: 0.75rem;
}

/* --- Ajustes para Validación de Formularios --- */

/* Cuando el campo tiene un error */
.was-validated .form-control:invalid,
.was-validated .form-select:invalid {
    border: 1px solid #dc3545 !important; /* Borde Rojo */
    background-color: #fff8f8 !important; /* Fondo rosa ultra suave para resaltar */
}

/* Cuando el campo está perfecto */
.was-validated .form-control:valid,
.was-validated .form-select:valid {
    border: 1px solid #198754 !important; /* Borde Verde */
    background-color: #f8fff9 !important; /* Fondo verde ultra suave */
}

/* Estilo para el texto del mensaje de error */
.invalid-feedback {
    color: #dc3545 !important;
    margin-top: 0.35rem;
}

/* --- Estilos de la Página de Servicios/Productos --- */

/* Ajuste fino para los botones de las pestañas (Pills) */
.nav-pills .nav-link {
    color: #495057 !important;
    background-color: #f8f9fa !important;
    border: 1px solid #e9ecef !important;
    transition: all 0.3s ease;
}

/* Estado activo de la pestaña: azul corporativo impecable */
.nav-pills .nav-link.active {
    color: #ffffff !important;
    background-color: #0066cc !important;
    border-color: #0066cc !important;
}

/* Tarjeta del Producto */
.card-producto {
    border-radius: 16px !important;
    transition: all 0.3s ease-in-out;
}
.card-producto:hover {
    transform: translateY(-6px);
    box-shadow: 0 1rem 2.5rem rgba(0, 0, 0, 0.06) !important;
}

/* Control y animación de la imagen del producto */
.img-producto-cat {
    height: 200px;
    object-fit: cover;
    transition: transform 0.5s ease;
}
.card-producto:hover .img-producto-cat {
    transform: scale(1.08); /* Efecto zoom premium en la foto */
}

/* Estilo extra-small para categorías */
.extra-small-text {
    font-size: 0.75rem;
    letter-spacing: 0.5px;
}

/* --- Estilos de Noticias y Tutoriales --- */

.card-noticia, .card-tutorial {
    border-radius: 16px !important;
    transition: all 0.3s ease-in-out;
}

.card-noticia:hover, .card-tutorial:hover {
    transform: translateY(-5px);
    box-shadow: 0 1rem 2rem rgba(0, 0, 0, 0.05) !important;
}

.img-noticia-cat {
    height: 220px;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.card-noticia:hover .img-noticia-cat {
    transform: scale(1.05);
}

/* Colores de badges sutiles de Bootstrap para tutoriales */
.bg-primary-subtle { background-color: rgba(0, 102, 204, 0.1) !important; }
.bg-success-subtle { background-color: rgba(25, 135, 84, 0.1) !important; }


/* Reglas para homogeneizar el texto que viene del SisAdMed */
.editor-content, .editor-content p {
    font-family: 'Segoe UI', Roboto, Helvetica, Arial, sans-serif !important;
    font-size: 1.05rem !important;
    line-height: 1.7 !important;
    color: #515d6d !important; /* Gris corporativo suave, no negro puro */
    margin-bottom: 1rem;
}

/* Si el usuario usa viñetas en la historia, hacemos que se vean ordenadas */
.editor-content ul {
    padding-left: 20px;
    margin-bottom: 1rem;
}

.editor-content li {
    font-size: 1.02rem !important;
    color: #515d6d !important;
    margin-bottom: 5px;
}

/* Estilo para los títulos de las tarjetas de valores */
.card h4 {
    font-family: 'Segoe UI', Roboto, sans-serif;
    letter-spacing: 0.3px;
}

/* --- EFECTO DE RESALTADO PARA LAS TARJETAS DE SOLUCIONES --- */

/* 1. Estado inicial de la tarjeta */
.transition-hover {
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1) !important;
    position: relative;
    top: 0;
}

/* 2. El efecto mágico al pasar el mouse por encima (Hover) */
.transition-hover:hover {
    top: -7px; /* Hace que la tarjeta se eleve sutilmente hacia arriba */
    box-shadow: 0 12px 20px rgba(0, 86, 179, 0.15) !important; /* Le da una sombra más profunda con un toque del azul de EuroFarmVzla */
    background-color: #ffffff !important;
    border-radius: 8px;
}

/* 3. Opcional: Si quieres que el icono también reaccione al hover de la tarjeta */
.transition-hover:hover .card-icon-wrapper i {
    transform: scale(1.12); /* Agranda el icono un poquito */
    transition: transform 0.3s ease;
    color: #004085 !important; /* Oscurece un pelín el azul del icono al enfocarlo */
}

/* Asegurar la transición de regreso para el icono */
.card-icon-wrapper i {
    transition: transform 0.3s ease;
    display: inline-block;
}