/**
 * SUIH Theme — estilos del tema hijo
 * Capa ligera sobre Hello Elementor + Bootstrap 5.
 */

:root {
	--suih-content-max: 1140px;
	--suih-space: 1.5rem;
	--suih-header-purple: #4b2e83;
	--suih-header-social: #2f5d52;
}

.suih-theme .site-main,
.suih-theme main {
	width: 100%;
}

/* Contenedor opcional para plantillas sin Elementor */
.suih-theme .suih-container {
	width: 100%;
	max-width: var(--suih-content-max);
	margin-inline: auto;
	padding-inline: var(--suih-space);
}

/* Compatibilidad básica: imágenes responsivas fuera de Elementor */
.suih-theme img:not([class*="elementor"]) {
	max-width: 100%;
	height: auto;
}

/* Ajustes tipográficos suaves con Bootstrap */
.suih-theme .entry-content > *:last-child {
	margin-bottom: 0;
}

/* Encabezado SUIH */
.suih-header {
	background: #fff;
	border-bottom: 1px solid rgba(75, 46, 131, 0.12);
	padding: 1.25rem 0 0.75rem;
}

.suih-header__inner {
	max-width: var(--suih-content-max);
}

.suih-header__branding {
	gap: 1.5rem;
	margin-bottom: 0.75rem;
}

.suih-header__home {
	display: inline-flex;
	align-items: center;
	gap: 0.85rem;
	text-decoration: none;
}

.suih-header__title {
	font-size: 1.25rem;
	font-weight: 600;
	color: var(--suih-header-purple);
	text-decoration: none;
}

.suih-header__divider {
	display: inline-block;
	width: 1px;
	height: 3.5rem;
	background: var(--suih-header-purple);
	flex-shrink: 0;
}

.suih-header .suih-logo {
	width: auto;
	max-width: none;
	height: 4.75rem;
	object-fit: contain;
}

.suih-header .suih-logo--right {
	height: 4.25rem;
}

.suih-header__nav {
	padding: 0;
}

.suih-header__nav .navbar-toggler {
	border-color: rgba(75, 46, 131, 0.25);
	margin-bottom: 0.5rem;
}

.suih-header__menu {
	gap: 0.15rem 1.35rem;
	flex-wrap: wrap;
}

.suih-header__menu .nav-link {
	color: var(--suih-header-purple);
	font-weight: 500;
	padding: 0.35rem 0;
}

.suih-header__menu .nav-link:hover,
.suih-header__menu .nav-link:focus,
.suih-header__menu .nav-link.active {
	color: var(--suih-header-purple);
	text-decoration: underline;
	text-underline-offset: 0.25em;
}

.suih-header__social {
	flex-direction: row;
	gap: 0.85rem;
	align-items: center;
}

.suih-header__social .suih-social-link {
	color: var(--suih-header-social);
	font-size: 1.2rem;
	line-height: 1;
	padding: 0.25rem 0;
}

.suih-header__social .suih-social-link:hover,
.suih-header__social .suih-social-link:focus {
	color: var(--suih-header-purple);
}

@media (max-width: 991.98px) {
	.suih-header .suih-logo {
		height: 3.25rem;
	}

	.suih-header .suih-logo--right {
		height: 2.85rem;
	}

	.suih-header__divider {
		height: 2.5rem;
	}

	.suih-header__social {
		margin-top: 0.75rem;
	}
}
/* ==========================================================================
   Header SUIH - Estructura Apilada (Logos arriba, Menú abajo)
   ========================================================================== */

/* Logos responsivos: Tamaño seguro en móviles para que quepan los 3 en una línea */
.suih-logo {
    max-height: 45px; 
    width: auto;
    object-fit: contain;
}

/* Divisor vertical entre escudos izquierdos */
.suih-header__divider {
    display: inline-block;
    width: 1px;
    height: 35px;
    background-color: #2b164d; /* Color morado oscuro de la imagen */
}

/* Estilos de los enlaces del menú (alineados a la izquierda) */
.suih-header__menu .nav-link {
    color: #2b164d !important; /* Color morado de la imagen */
    font-weight: 500;
    padding-left: 0 !important;
    padding-right: 1rem !important;
}

.suih-header__menu .nav-link:hover {
    color: #4b2d7d !important; 
}

/* 
 * Ajustes para Escritorio (Pantallas mayores a 992px)
 * Permite que los logos recuperen su tamaño original
 */
@media (min-width: 992px) {
    .suih-logo {
        max-height: 90px; /* Altura basada en la imagen de referencia */
    }
    
    .suih-header__divider {
        height: 60px; /* Divisor más alto en escritorio */
    }
    
    .suih-header__branding-row {
        margin-bottom: 0 !important; 
    }
}
/*****INICIO*****/
img.suih-logo.suih-logo--left, img.suih-logo.suih-logo--left {
    max-width: 150px;
}
img.suih-logo.suih-logo--right{
    max-width: 150px;
}
footer#site-footer{
    border-top: 1px solid rgba(75, 46, 131, 0.12);
    padding-top: 2.25rem;
	margin-top: 2.25rem;
}

/* ==========================================================================
   Alineación Unificada: Header, Footer y Contenido Elementor
   ========================================================================== */

/* 1. Forzamos que los contenedores del header y footer usen el mismo ancho máximo */
.suih-header .container,
.suih-footer .container {
    max-width: 1140px !important; /* Ancho estándar del grid de Elementor */
    padding-left: 15px !important;
    padding-right: 15px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    width: 100% !important;
}

/* 2. Eliminamos márgenes o rellenos extra que añade el navbar de Bootstrap */
.suih-header .navbar > .container {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* 3. Aseguramos que el logo izquierdo y el menú comiencen exactamente en la misma línea */
.suih-header__branding-row {
    padding-left: 0;
    padding-right: 0;
}
.suih-header__menu .nav-link:first-child {
    padding-left: 0 !important;
}