/*
Theme Name: Hello Elementor Child
Theme URI: https://elementor.com/
Description: Tema hijo personalizado para el sitio web.
Author: Marco Antonio Polvo
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.5
*/



/* ==========================================================================
   Tus CSS Generales y Diseños Complejos Empiezan Aquí
   ========================================================================== */
@import url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css');
html, body, p, span, a, h1, h2, h3, h4, h5, h6, li, input, button, textarea, * {
    font-family: 'Montserrat', sans-serif !important;
	color: #5a5a58;
}

body {
    font-smoothing: antialiased;
}

input[type="date"], input[type="time"], input[type="datetime-local"], input[type="week"], input[type="month"], input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], input[type="tel"], input[type="number"], textareaSpecificity: (0,1,1) {
    background: #f7f7f7;
    background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0), rgba(255, 255, 255, 0));
    border: 1px solid #d1d1d1;
    border-radius: 2px;
    color: #686868;
    padding: 0.625em 0.4375em;
    width: 100%;
}

.site-header {
  padding-inline-end: 0px;
  padding-inline-start: 0px;
  border-bottom: 3px solid #be1212;
}

body.page-id-458 .site-header,
body.parent-pageid-458 .site-header {
    border-bottom: 3px solid #541a43 !important; /* Cambia la línea a Morado Corporativo */
}

body.page-id-1206 .site-header,
body.parent-pageid-1206 .site-header {
    border-bottom: 3px solid #0d2638 !important; /* Cambia la línea a Morado Corporativo */
}

.site-navigation ul.menu {
  display: flex;
  flex-wrap: wrap;
  margin-top: 50px;
}

.uppercase{text-transform: uppercase;}

#parrafobco strong{ color:#FFF;}

.site-navigation-dropdown ul.menu li.current-menu-item a {
  background: #eee;
  color: #fff;
}

/* ==========================================================================
   ANCHO FORZADO Y COMPORTAMIENTO DINÁMICO DE SUBMENÚ (ALCÁZAR REAL)
   ========================================================================== */

nav.site-navigation ul#menu-principal li.menu-item-has-children {
    position: relative !important;
}

nav.site-navigation ul#menu-principal ul.sub-menu {
    width: 320px !important;       /* El ancho premium que requiere el cliente */
    min-width: 320px !important;
    max-width: 350px !important;
    position: absolute !important;
    left: 0 !important;             /* Alineado al inicio de la palabra Servicios */
    box-sizing: border-box !important;
    display: none !important; 
}

nav.site-navigation ul#menu-principal li.menu-item-has-children:hover ul.sub-menu,
nav.site-navigation ul#menu-principal li.menu-item-has-children:focus-within ul.sub-menu {
    display: block !important;
}

nav.site-navigation ul#menu-principal ul.sub-menu li a {
    width: 100% !important;
    white-space: nowrap !important; /* Evita que las palabras salten de renglón */
    display: block !important;
    padding: 12px 20px !important;  /* Espaciado interno premium */
    font-family: 'Montserrat', sans-serif !important;
    font-size: 14px !important;
    line-height: 1.2 !important;
    box-sizing: border-box !important;
}

/* ==========================================================================
   COMPENSACIÓN DE SCROLL PARA EL ANCLAJE DE CONTACTO
   ========================================================================== */
#contacto {
    scroll-margin-top: 60px !important;
}


/* ==========================================================================
   SECCIÓN BLOG - ALCÁZAR & COMPAÑÍA (CLASE .dj26)
   ========================================================================== */

/* Contenedor principal en Grid */
.dj26-blog-container {
    display: grid;
    grid-template-columns: 1.2fr 0.8fr;
    gap: 40px;
    max-width: 1300px;
    margin: 0 auto;
    padding: 20px;
    font-family: 'Montserrat', sans-serif !important;
    box-sizing: border-box;
}

/* --- POST PRINCIPAL (IZQUIERDA) --- */
.dj26-main-post {
    display: flex;
    flex-direction: column;
}

.dj26-main-post-img img {
    width: 100%;
    height: auto;
    max-height: 480px;
    object-fit: cover;
    border-radius: 15px !important;
    transition: transform 0.3s ease;
}

.dj26-main-post-img img:hover {
    transform: scale(1.01);
}

.dj26-main-post-content h2 {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 28px !important;
    font-weight: 700 !important;
    color: #0d2738 !important; /* Azul Oscuro */
    margin: 20px 0 12px 0 !important;
    line-height: 1.2 !important;
}

.dj26-main-post-content h2 a {
    color: #0d2738 !important;
    text-decoration: none !important;
	font-weight: 400 !important;
}

.dj26-main-post-content h2 a:hover {
    color: #541a43 !important; /* Cambio a Morado en Hover */
	font-weight: 400 !important;
}

.dj26-main-post-content p {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 15px !important;
    line-height: 1.5 !important;
    color: #333 !important;
    margin-bottom: 20px !important;
}

/* --- COLUMNA SECUNDARIA (DERECHA CON SCROLL) --- */
.dj26-secondary-column {
    max-height: 680px; /* Ajusta este alto según el diseño para que coincida con el post izquierdo */
    overflow-y: auto;
    padding-right: 15px;
    border-left: 1px solid #e0e0e0;
    padding-left: 20px;
}

/* Personalización del scrollbar de la columna (diseño limpio) */
.dj26-secondary-column::-webkit-scrollbar {
    width: 6px;
}
.dj26-secondary-column::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 10px;
}
.dj26-secondary-column::-webkit-scrollbar-thumb {
    background: #e3a843; /* Dorado corporativo para el track */
    border-radius: 10px;
}

/* Tarjeta contenedora secundaria */
.dj26-secondary-post {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important; /* Alinea la imagen verticalmente al centro del texto si este crece */
    gap: 20px !important;
    padding-bottom: 20px !important;
    margin-bottom: 20px !important;
    border-bottom: 1px solid #f1f1f1 !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Contenedor del enlace de la imagen: Bloqueamos su deformación */
.dj26-secondary-img {
    display: block !important;
    flex-shrink: 0 !important; /* REGLA CLAVE: Evita que el contenedor se estire o colapse por culpa del texto largo */
    width: 110px !important;   /* Ancho fijo para el cuadrado */
    height: 110px !important;  /* Alto idéntico para forzar el formato cuadrado */
    overflow: hidden !important;
    border-radius: 15px !important; /* Mantiene tus bordes redondeados corporativos */
}

.dj26-secondary-post:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}

.dj26-secondary-img a,
.dj26-secondary-img img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important; /* REGLA CLAVE: Recorta la foto proporcionalmente al centro del cuadrado */
}

/* Ajuste fino al contenido de texto de al lado (CORREGIDO) */
.dj26-secondary-content {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: flex-start !important; /* REGLA CLAVE: Evita que el botón se estire al 100% y lo compacta a la izquierda */
    flex-grow: 1 !important; 
}

.dj26-secondary-content h3 {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #0d2738 !important;
    margin: 0 0 12px 0 !important;
    line-height: 1.3 !important;
}

.dj26-secondary-content h3 a {
    color: #0d2738 !important;
    text-decoration: none !important;
	font-weight: 400 !important;
}

.dj26-secondary-content h3 a:hover {
    color: #541a43 !important;
	font-weight: 400 !important;
}

/* --- BOTONES LEER MÁS (ROJO INSTITUCIONAL) --- */
.dj26-blog-btn {
    display: inline-block !important;
    background-color: #be1212 !important; /* Rojo Institucional */
    color: #ffffff !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    padding: 10px 24px !important;
    border-radius: 15px !important;
    text-decoration: none !important;
    white-space: nowrap;
    width: fit-content;
    transition: background-color 0.3s ease, transform 0.2s ease;
}

.dj26-blog-btn:hover {
    background-color: #541a43 !important; /* Cambio a Morado en hover */
}

.dj26-blog-btn-sm {
    display: inline-block !important;
    background-color: #be1212 !important;
    color: #ffffff !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    padding: 6px 16px !important;
    border-radius: 15px !important;
    text-decoration: none !important;
    transition: background-color 0.3s ease;
}

.dj26-blog-btn-sm:hover {
    background-color: #541a43 !important;
}

/* --- ADAPTACIÓN RESPONSIVA (MÓVILES) --- */
@media (max-width: 991px) {
    .dj26-blog-container {
        grid-template-columns: 1fr; /* Una sola columna en tablets y móviles */
        gap: 30px;
    }
    
    .dj26-secondary-column {
        max-height: none; /* Quitamos el scroll interno en móvil para una lectura natural */
        overflow-y: visible;
        border-left: none;
        padding-left: 0;
        padding-right: 0;
    }
    
    .dj26-secondary-post {
        flex-direction: row;
    }
}

@media (max-width: 480px) {
    .dj26-secondary-post {
        flex-direction: column;
        align-items: flex-start;
    }
    
    .dj26-secondary-img img {
        width: 100%;
        height: 160px;
    }
}



/* ==========================================================================
   VISTA DE ENTRADA INDIVIDUAL - ALCÁZAR & COMPAÑÍA (.dj26)
   ========================================================================== */

.dj26-single-post-container {
    max-width: 1200px;
    margin: 40px auto;
    padding: 0 20px;
    font-family: 'Montserrat', sans-serif !important;
    box-sizing: border-box;
}

/* --- HERO SPLIT (SUPERIOR) --- */
.dj26-post-hero {
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap: 40px;
    align-items: center;
    margin-bottom: 40px;
}

/* Columna Izquierda: Contenedor de Tags */
.dj26-post-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 20px;
}

/* Recuadros Rojos Sólidos (Como en la imagen) */
.dj26-tag-item {
    background-color: #be1212 !important; /* Rojo Institucional Sólido */
    color: #ffffff !important;            /* Texto Plano Blanco */
    font-family: 'Montserrat', sans-serif !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    padding: 6px 16px !important;
    border-radius: 0px !important;         /* Totalmente rectangulares */
    display: inline-block !important;
    text-transform: none;                  /* Respeta mayúsculas/minúsculas originales */
    letter-spacing: 0.3px;
    line-height: 1.2 !important;
}

.dj26-post-title {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 36px !important;
    font-weight: 400 !important;
    color: #0d2738 !important;            /* Azul Oscuro */
    line-height: 1.2 !important;
    margin: 0 0 20px 0 !important;
}

.dj26-post-excerpt p {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px !important;
    line-height: 1.6 !important;
    color: #555 !important;
    margin: 0 !important;
}

/* Columna Derecha (Imagen Destacada) */
.dj26-post-hero-right img {
    width: 100%;
    height: auto;
    max-height: 400px;
    object-fit: cover;
    border-radius: 15px !important;
    box-shadow: 0 4px 15px rgba(0,0,0,0.05);
}

/* --- CUERPO DEL TEXTO (CENTRAL) --- */
.dj26-post-content-body {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px !important;
    line-height: 1.8 !important;
    color: #333 !important;
    margin-bottom: 60px;
}

.dj26-post-content-body p {
    margin-bottom: 25px !important;
}

.dj26-post-content-body h2, 
.dj26-post-content-body h3 {
    font-family: 'Montserrat', sans-serif !important;
    color: #0d2738 !important;
    margin: 35px 0 15px 0 !important;
    font-weight: 700 !important;
}

.dj26-divider {
    border: 0;
    border-top: 1px solid #e0e0e0;
    margin: 40px 0;
}

/* --- SECCIÓN INFERIOR: ENTRADAS ANTERIORES (CORREGIDO A 4 COLUMNAS) --- */
.dj26-related-posts {
    margin-top: 40px;
}

.dj26-related-heading {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    color: #0d2738 !important;
    margin-bottom: 25px !important;
}

/* Forzamos el contenedor a un comportamiento estricto de Grid */
.dj26-related-grid {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important; /* 4 columnas en una sola línea */
    gap: 20px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Forzamos a cada tarjeta a respetar el flujo de su columna */
.dj26-related-card {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important; 
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* Enlaces de las imágenes de las tarjetas */
.dj26-related-img-link {
    display: block !important;
    width: 100% !important;
    margin-bottom: 12px !important;
    overflow: hidden !important;
    border-radius: 15px !important;
}

/* Ajuste de dimensiones de imagen para las 4 columnas */
.dj26-related-card img {
    width: 100% !important;
    height: 160px !important;
    object-fit: cover !important;
    display: block !important;
    transition: transform 0.3s ease;
}

.dj26-related-card img:hover {
    transform: scale(1.03);
}

/* Títulos con min-height para que queden alineados de forma uniforme */
.dj26-related-card h4 {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    margin: 0 0 0 0 !important;
    min-height: 36px !important; /* Evita saltos si un título es más largo */
}

.dj26-related-card h4 a {
    color: #0d2738 !important;
    text-decoration: none !important;
    transition: color 0.2s ease;
	font-weight: 400 !important;
}

.dj26-related-card h4 a:hover {
    color: #be1212 !important; /* Rojo Institucional en hover */
	font-weight: 400 !important;
}

/* Estilo y comportamiento del botón Leer Más */
.dj26-btn-related {
    display: inline-block !important;
    background-color: #be1212 !important; /* Rojo Institucional */
    color: #ffffff !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    padding: 6px 20px !important;
    border-radius: 0px !important;         /* Esquinas rectas */
    text-decoration: underline !important; /* Subrayado inicial nativo */
    text-underline-offset: 3px;
    transition: background-color 0.3s ease, text-decoration 0.3s ease;
}

.dj26-btn-related:hover {
    background-color: #541a43 !important; /* Cambio a Morado corporativo en hover */
    text-decoration: none !important;     /* Elimina el subrayado en hover */
}

/* --- RESPONSIVO BLINDADO --- */
@media (max-width: 991px) {
    .dj26-post-hero {
        grid-template-columns: 1fr;
        gap: 25px;
    }
    .dj26-post-hero-right {
        order: -1; /* Mueve la imagen arriba en móviles */
    }
    .dj26-related-grid {
        grid-template-columns: repeat(2, 1fr) !important; /* 2x2 en tablets */
    }
}

@media (max-width: 600px) {
    .dj26-related-grid {
        grid-template-columns: 1fr !important; /* 1 columna vertical en smartphones */
    }
    .dj26-post-title {
        font-size: 28px !important;
    }
}

/* ==========================================================================
   EFECTO STICKY PARA EL POST PRINCIPAL (.dj26)
   ========================================================================== */

/* 1. Aseguramos que el contenedor de Grid permita elementos pegajosos alineando sus hijos al inicio */
.dj26-blog-container {
    align-items: start !important;
}

/* 2. Volvemos fija la columna del Post Principal al hacer Scroll */
.dj26-main-post {
    position: -webkit-sticky !important; /* Soporte para Safari */
    position: sticky !important;
    top: 120px !important; /* Distancia respecto al menú superior flotante. Ajusta si tu cabecera es más alta */
    z-index: 100 !important;
}

/* 3. Ajuste opcional para la columna secundaria */
.dj26-secondary-column {
    
    max-height: none !important;
    overflow-y: visible !important;
}

/* 4. Desactivar el efecto en pantallas móviles para evitar colisiones visuales */
@media (max-width: 991px) {
    .dj26-main-post {
        position: static !important; /* Regresa a su flujo normal apilado verticalmente */
    }
}


/* ==========================================================================
   Animación Fade para post (.dj26)
   ========================================================================== */
/* Animación para los posts nuevos cargados vía AJAX */
.animate-fade-in {
    animation: dj26FadeIn 0.4s ease-out forwards;
    opacity: 0;
}

@keyframes dj26FadeIn {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}



/* ==========================================================================
   TABS ALCÁZAR (4 CAMPOS EN FILAS)
   ========================================================================== */

#tabfirma1 span{ color: #FFF !important;}
#tabfirma2 span{ color: #FFF !important;}
#tabfirma3 span{ color: #FFF !important;}
#tabfirma4 span{ color: #FFF !important;}
.border1pxg{ border-left: 1px solid #bfbfbf;}


/* ==========================================================================
   FORMULARIO DE CONTACTO ALCÁZAR (4 CAMPOS EN FILAS)
   ========================================================================== */

/* Contenedor general */
.cf7-alcazar-form-container {
    width: 100%;
    max-width: 900px; /* Ajusta según el ancho que desees en la sección */
    margin: 0 auto;
    box-sizing: border-box;
}

/* Rejilla de campos (2 columnas en escritorio) */
.cf7-alcazar-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 20px; /* Espaciado entre campos */
    margin-bottom: 25px;
}

/* Cada campo ocupa el 50% menos la mitad del gap */
.cf7-alcazar-field {
    flex: 1 1 calc(50% - 10px);
    box-sizing: border-box;
}

/* Estilos para los inputs de texto, tel, email y select */
.cf7-alcazar-form-container input[type="text"],
.cf7-alcazar-form-container input[type="tel"],
.cf7-alcazar-form-container input[type="email"],
.cf7-alcazar-form-container select {
    width: 100% !important;
    height: 50px !important;
    padding: 10px 20px !important;
    background-color: #FFFFFF !important;
    border: none !important;
    border-radius: 15px !important; /* Consistencia UI */
    font-family: 'Montserrat', sans-serif !important;
    font-size: 15px !important;
    color: #0d2738 !important; /* Texto oscuro al escribir */
    box-sizing: border-box !important;
    outline: none !important;
}

/* Estilos específicos para los Placeholders (Texto gris claro) */
.cf7-alcazar-form-container input::placeholder {
    color: #a5a5a5 !important;
    font-style: italic;
    opacity: 1;
}

/* Personalización del selector (Dropdown) */
.cf7-alcazar-form-container select {
    color: #a5a5a5 !important; /* Color inicial simulando placeholder */
    font-style: italic;
    appearance: none; /* Quita la flecha nativa */
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='%23be1212'><path d='M7 10l5 5 5-5z'/></svg>") !important;
    background-repeat: no-repeat !important;
    background-position: calc(100% - 20px) center !important;
    background-size: 18px !important;
    cursor: pointer;
}

/* Cambiar color del select cuando el usuario ya elige una opción válida */
.cf7-alcazar-form-container select:focus,
.cf7-alcazar-form-container select:not([value=""]) {
    color: #0d2738 !important;
    font-style: normal;
}

/* Envoltura del botón de envío */
.cf7-alcazar-submit-wrapper {
    text-align: center;
    width: 100%;
}

/* Botón ENVIAR */
.cf7-alcazar-form-container input[type="submit"].cf7-alcazar-btn {
    background-color: #00a4c5 !important; /* Azul/Verde azulado de tu diseño */
    color: #FFFFFF !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    letter-spacing: 2px !important;
    padding: 12px 60px !important;
    border: none !important;
    border-radius: 15px !important; /* Consistencia UI */
    cursor: pointer !important;
    display: inline-block !important;
    transition: background-color 0.3s ease, transform 0.2s ease !important;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15) !important;
}

/* Efecto Hover del Botón */
.cf7-alcazar-form-container input[type="submit"].cf7-alcazar-btn:hover {
    background-color: #0d2738 !important; /* Cambia al azul oscuro institucional */
    transform: translateY(-2px);
}



/* ==========================================================================
   RESPONSIVE / MÓVILES
   ========================================================================== */
@media (max-width: 767px) {
    .cf7-alcazar-field {
        flex: 1 1 100%; /* Los campos ocupan el 100% del ancho en móviles */
    }
    
    .cf7-alcazar-form-container input[type="submit"].cf7-alcazar-btn {
        width: 100% !important; /* El botón se hace ancho completo en móvil */
        box-sizing: border-box;
    }
}

/* ==========================================================================
   Fijar Menú: Exterminio Total del Triángulo Gris y Forzado de Rojo Unificado
   ========================================================================== */

/* 1. Reset Masivo: Matamos CUALQUIER flecha, icono o borde gris que intente meter el tema */
.site-navigation ul#menu-principal li.menu-item-has-children > a::after,
.site-navigation ul#menu-principal li.menu-item-has-children > a::before,
.site-header .site-navigation .menu-item-has-children > a::after {
    content: "" !important;
    display: none !important;
    border: none !important; /* Borra si el triángulo viejo era un truco de border-clip */
    background: none !important; /* Borra si el tema metía un micro SVG de fondo */
}

/* 2. Estructuramos el enlace limpio */
.site-navigation ul#menu-principal li.menu-item-has-children > a {
    color: #7a7a7a !important; /* Tu gris elegante para las letras */
    padding-right: 18px !important; /* Dejamos el espacio exacto para nuestra flecha roja custom */
    position: relative !important;
    display: inline-block;
}

/* 3. Inyectamos de forma ÚNICA nuestro triángulo rojo nítido usando posicionamiento de caja */
.site-navigation ul#menu-principal li.menu-item-has-children > a::before {
    content: "▼" !important;    /* El triángulo limpio */
    color: #be1212 !important;  /* Tu Rojo Institucional */
    font-size: 10px !important; /* Tamaño perfecto y legible */
    position: absolute !important;
    right: 0 !important;        /* Forzado a la extrema derecha */
    top: 50% !important;
    transform: translateY(-50%) !important; /* Centrado vertical matemático */
    display: inline-block !important;
    visibility: visible !important; /* Asegura que el reset masivo no oculte este elemento nuevo */
}

/* 4. Control de estados Hover (Al pasar el mouse) */
.site-navigation ul#menu-principal li.menu-item-has-children > a:hover {
    color: #0d2738 !important; /* Pasa a tu azul/morado oscuro corporativo */
}

.site-navigation ul#menu-principal li.menu-item-has-children > a:hover::before {
    color: #be1212 !important; /* El triángulo se queda firmemente en rojo */
}


.site-navigation ul.menu li.menu-item-has-children::after {
  align-items: center;
  color: #666;
  content: "▾";
  display: none;
  font-size: 1.5em;
  justify-content: center;
  text-decoration: none;

}
/* ==========================================================================
   Cambio de color del menú (Hello Elementor Child) - Guinda a Gris
   ========================================================================== */

.site-navigation ul#menu-principal li a {
    color: #5a5a58 !important; }

.site-navigation ul#menu-principal li a:hover {
    color: #333333 !important; }

.site-navigation-dropdown ul#menu-principal-1 li a {
    color: #5a5a58 !important;
}

.site-navigation-dropdown ul#menu-principal-1 li a:hover {
    color: #333333 !important;
}

.entry-title{ display:none !important;}

.a26titulo {text-align: center; width: 100%; margin: 80px 0 50px 0;}
.btnhomedfranc { position: relative; height: 68px; }
#btnhomedfrancr{background:#c10d0e;}
#btnhomedfrancm{background:#541a43;}
#btnhomedfrancv{background:#0d2738;}
.btnhomedfranc div{position: absolute; width: 100%; height: 100%; top: 0; left: 0;}
.btnhomedfranc a{ width:100%; height: 100%; position: absolute; display: block; left: 0; top: 0; padding-top: 10px;}
.btnhomedfranc a b{ color:#FFF;}
.txtblanco{ color:#FFF !important;}
.txtblanco p{ color:#FFF !important;}
.txtblanco strong{ color:#FFF !important;}
.txtblanco b{ color:#FFF !important;}
.txtblanco2{ color:#FFF !important;}
.txtblanco2 p{ color:#FFF !important;}
.txtblanco2 strong{ color:#FFF !important;}

.txtmorado{ color:#541a43 !important;}
.txtmorado p{ color:#541a43 !important;}
.txtmorado strong{ color:#541a43 !important;}
.txtrojo{ color:#c10d0e !important;}
.txtrojo p{ color:#c10d0e !important;}
.txtrojo strong{ color:#c10d0e !important;}
.txtdorado{ color:#e1a73e !important;}
.txtdorado p{ color:#e1a73e !important;}
.txtdorado strong{ color:#e1a73e !important;}
.txtazul{ color:#40378a !important;}
.txtazul p{ color:#40378a !important;}
.txtazul strong{ color:#40378a !important;}
.txtazul b{ color:#40378a !important;}


#btnrojotxtbco{width: 300px; height: 50px; padding-top: 18px; color: #FFF !important;}
#btnrojotxtbco span span{ color:#FFF !important;}
#btnrojotxtbco span{color:#FFFFFF !important;}


.a26hbloqueh4r{ color: #c10d0e !important;}
.a26hbloqueh4r b{ color: #c10d0e !important;}
.a26hbloquep1g{ font-size: 1.1em; font-weight: 400; margin: 20px 0 30px 0;}
.a26hbloquep1{}
.a26hbloqueulr{ padding: 0; margin: 0; position: relative; overflow: hidden;}
.a26hbloqueulr li {list-style-type: none; background-image: url('https://sitio.alcazar.com.mx/nuevaweb/wp-content/uploads/2026/05/check-rojo.jpg'); background-repeat: no-repeat; background-position: 0px 5px; background-size: 22px 21px; padding-left: 28px; line-height: 30px; margin: 10px 0;}
.a26hbloqueh4m{ color:#541a43;}
.a26hbloqueh4m b{ color: #541a43 !important;}
.a26hbloqueulm{padding: 0; margin: 0; position: relative; overflow: hidden;}
.a26hbloqueulm li {list-style-type: none; background-image: url('https://sitio.alcazar.com.mx/nuevaweb/wp-content/uploads/2026/05/check-morado.jpg'); background-repeat: no-repeat; background-position: 0px 5px; background-size: 22px 21px; padding-left: 28px; line-height: 30px;  margin: 10px 0;}
.a26hbloqueh4v{ color: #0d2738;}
.a26hbloqueh4v b{ color: #0d2738 !important;}
.a26hbloqueulv{padding: 0; margin: 0; position: relative; overflow: hidden;}
.a26hbloqueulv li {list-style-type: none; background-image: url('https://sitio.alcazar.com.mx/nuevaweb/wp-content/uploads/2026/05/check-azul.jpg'); background-repeat: no-repeat; background-position: 0px 5px; background-size: 22px 21px; padding-left: 28px; line-height: 30px;  margin: 10px 0;}


.btn-contenedor-base { position: relative; display: inline-block; width: 100%; max-width: 550px; border-radius: 15px; padding: 22px 25px; text-align: center; overflow: hidden; transition: background-color 0.3s ease, transform 0.2s ease; box-sizing: border-box; margin-top: 30px;}
.btn-contenedor-base a {position: absolute; top: 0; left: 0; width: 100%; height: 100%; color: #ffffff !important;font-family: 'Montserrat', sans-serif !important; font-weight: 400; font-size: 15px; text-transform: uppercase; text-decoration: none; letter-spacing: 0.5px; display: flex; align-items: center; justify-content: center; padding: 0 15px; box-sizing: border-box;}
.btn-contenedor-base:hover {  cursor: pointer; transform: translateY(-1px); }
.btn-rojo { background-color: #be1212;}
.btn-rojo:hover { background-color: #9e0e0e;}
.btn-morado { background-color: #541a43;}
.btn-morado:hover { background-color: #3b112e;}
.btn-verde-azulado { background-color: #0d2738;}
.btn-verde-azulado:hover { background-color: #061521;}
.btn-blanco { background-color: #FFFFFF;}
.btn-blanco:hover { background-color: #DDDDD;}
.btn-dorado { background-color: #e2a73f;}
.btn-dorado:hover { background-color:#DE9B25;}
.btn-contenedor-basebco { position: relative; display: inline-block; width: 100%; max-width: 550px; border-radius: 15px; padding: 22px 25px; text-align: center; overflow: hidden; transition: background-color 0.3s ease, transform 0.2s ease; box-sizing: border-box; margin-top: 30px;}
.btn-contenedor-basebco a {position: absolute; top: 0; left: 0; width: 100%; height: 100%; color: #41368a !important;font-family: 'Montserrat', sans-serif !important; font-weight: 700; font-size: 15px; text-transform: uppercase; text-decoration: none; letter-spacing: 0.5px; display: flex; align-items: center; justify-content: center; padding: 0 15px; box-sizing: border-box;}


/* ==========================================================================
   FORMULARIO 1: Registro General (Home - Corregido y Optimizado)
   ========================================================================== */
.alcazar-registro-general .wpcf7 { 
    max-width: 600px; 
    width: 100%; 
    margin: 0 auto;
}

/* Forzamos que TODOS los tipos de input y select hereden el mismo diseño limpio */
.alcazar-registro-general .wpcf7 input[type="text"],
.alcazar-registro-general .wpcf7 input[type="email"],
.alcazar-registro-general .wpcf7 input[type="tel"],
.alcazar-registro-general .wpcf7 select { 
    width: 100% !important; 
    height: 50px !important; /* Altura fija para consistencia visual */
    background-color: #ffffff !important; 
    color: #444444 !important; 
    border: none !important; 
    border-radius: 15px !important; /* Forzado a los 15px de la línea gráfica general */
    padding: 10px 20px !important; /* Relleno interno para que el texto no se pegue */
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px !important; 
    margin-bottom: 20px !important; 
    box-sizing: border-box !important;
}

/* Corrección de tipografía y estilo para los placeholders en el Home */
.alcazar-registro-general .wpcf7 input::placeholder { 
    color: #aaaaaa !important; 
    font-style: italic !important;
    font-family: 'Montserrat', sans-serif !important;
}

/* Botón Rojo Institucional para el Home */
.alcazar-registro-general .wpcf7 input[type="submit"] { 
    width: 100% !important; 
    background-color: #be1212 !important; /* Rojo Institucional */
    color: #ffffff !important; 
    font-family: 'Montserrat', sans-serif !important;
    font-weight: bold !important; 
    text-transform: uppercase !important; 
    font-size: 18px !important; 
    letter-spacing: 2px !important; 
    border: none !important; 
    border-radius: 15px !important; /* Bordes redondeados del botón */
    padding: 15px !important; 
    cursor: pointer !important; 
    transition: background 0.3s ease !important; 
    margin-top: 10px !important;
}

.alcazar-registro-general .wpcf7 input[type="submit"]:hover { 
    background-color: #9e0e0e !important; 
}
/* ==========================================================================
   Carrusel Morado
   ========================================================================== */

.carrusel-morado img{ width: 75%;}
.carrusel-gris img{width: 90%;}
.carrusel-fran img{ width: 70%;}
.carrusel-inv img{ width: 80%;}


/* ==========================================================================
   Sección: Título Razones para Invertir (Número Destacado)
   ========================================================================== */
#topfranchisemtop{ margin-top: -120px !important;}

.alcazar-header-razones {
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Montserrat', sans-serif !important;
}

/* El número 10 Gigante */
.alcazar-numero-granderojo {
    color: #be1212 !important;
  font-size: 5rem !important;
  font-weight: 400 !important;
  line-height: 73px !important;
  margin: 0 !important;
  padding: 0 !important;
}

.alcazar-numero-granderojo p{ color:#c10d0e !important;}


.alcazar-numero-grande {
    color: #e3a843 !important;
  font-size: 5rem !important;
  font-weight: 400 !important;
  line-height: 73px !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* El texto de dos renglones */
.alcazar-texto-razones {
    color: #541a43 !important; /* Morado Corporativo */
    font-size: 2rem !important; /* Tamaño grande pero menor al número */
    font-weight: 500 !important; /* Peso medio */
    line-height: 1.1 !important; /* Interlineado cerrado para que se vea unido */
    text-transform: uppercase !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
}

.alcazar-texto-razonesazul {
    color: #40378a !important; /* azul Corporativo */
    font-size: 2rem !important; /* Tamaño grande pero menor al número */
    font-weight: 500 !important; /* Peso medio */
    line-height: 1.1 !important; /* Interlineado cerrado para que se vea unido */
    text-transform: uppercase !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
}

/* --- Ajuste Responsivo --- */

/* Tablets */
@media (max-width: 1024px) {
    .alcazar-numero-grande {
        font-size: 80px !important;
    }
    .alcazar-texto-razones {
        font-size: 30px !important;
    }
}

/* Móviles: Centramos el conjunto y bajamos el tamaño */
@media (max-width: 767px) {
    .alcazar-header-razones {
        flex-direction: column !important; /* Se apilan en móvil */
        text-align: center !important;
    }
    .alcazar-texto-razones {
        text-align: center !important;
        font-size: 24px !important;
    }
    .alcazar-numero-grande {
        margin-bottom: 10px !important;
    }
}

/* ==========================================================================
   FORMULARIO 2: Consulta Sin Costo (Top Franchise - Nuevo)
   ========================================================================== */
.cf7-formulario-consulta {
    max-width: 1300px; /* Se abre al ancho completo de tu contenedor */
    margin: 0 auto;
    padding: 20px;
    box-sizing: border-box;
    font-family: 'Montserrat', sans-serif !important;
}

.cf7-formulario-consulta .cf7-row {
    display: block;
    width: 100%;
    margin-bottom: 25px;
    clear: both;
}

.cf7-formulario-consulta .cf7-col-4 {
    width: 31.33%;
    float: left;
    margin-right: 3%;
    box-sizing: border-box;
}

.cf7-formulario-consulta .cf7-col-4:last-child {
    margin-right: 0;
}

.cf7-formulario-consulta .cf7-row::after {
    content: "";
    display: table;
    clear: both;
}

.cf7-formulario-consulta input[type="text"],
.cf7-formulario-consulta input[type="email"],
.cf7-formulario-consulta input[type="tel"],
.cf7-formulario-consulta select {
    width: 100% !important;
    height: 50px;
    background-color: #ffffff !important;
    color: #4a4a4a !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 0.95rem !important;
    font-weight: 400;
    padding: 10px 20px !important;
    border: none !important;
    border-radius: 15px !important; /* Respeta los 15px generales del UI */
    box-sizing: border-box !important;
    margin-bottom: 0 !important; /* Sobreescribe el margen de 20px del anterior */
}

.cf7-formulario-consulta input::placeholder {
    color: #a0a0a0 !important;
    font-style: italic !important;
    opacity: 1;
}

/* El contenedor se centra y mide exactamente el 31.33% (una columna) */
.cf7-formulario-consulta .cf7-row-boton {
    width: 31.33%;
    margin: 20px auto 0 auto; /* Centra el bloque horizontalmente */
    float: none !important; /* Elimina el empuje a la derecha */
    clear: both;
    box-sizing: border-box;
}

/* El botón llena ese contenedor centrado */
.cf7-formulario-consulta .btn-alcazar-dorado {
    width: 100% !important;
    height: 50px;
    background-color: #e3a843 !important;
    color: #ffffff !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 1.1rem !important;
    font-weight: 600 !important;
    letter-spacing: 2px !important;
    padding: 0 !important;
    text-align: center;
    border: none !important;
    border-radius: 15px !important;
    cursor: pointer;
    display: block;
    transition: background-color 0.3s ease, transform 0.2s ease;
}
/* Mantenemos el efecto hover limpio */
.cf7-formulario-consulta .btn-alcazar-dorado:hover {
    background-color: #cb9234 !important;
    transform: scale(1.02);
}

/* El botón llena ese contenedor centrado */
.cf7-formulario-consulta .btn-alcazar-rojo {
    width: 100% !important;
    height: 50px;
    background-color: #be1212 !important;
    color: #ffffff !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 1.1rem !important;
    font-weight: 600 !important;
    letter-spacing: 2px !important;
    padding: 0 !important;
    text-align: center;
    border: none !important;
    border-radius: 15px !important;
    cursor: pointer;
    display: block;
    transition: background-color 0.3s ease, transform 0.2s ease;
}
/* Mantenemos el efecto hover limpio */
.cf7-formulario-consulta .btn-alcazar-rojo:hover {
    background-color: #be1212 !important;
    transform: scale(1.02);
}

/* --- Ajuste extra para limpiar flujos y evitar desalineaciones --- */
.cf7-formulario-consulta .cf7-formulario-consulta::after {
    content: "";
    display: table;
    clear: both;
}

/* --- Responsive --- */
@media screen and (max-width: 768px) {
    .cf7-formulario-consulta .cf7-col-4 {
        width: 100% !important;
        float: none !important;
        margin-right: 0 !important;
        margin-bottom: 15px;
    }
    .cf7-formulario-consulta .cf7-row {
        margin-bottom: 0;
    }
	.cf7-formulario-consulta .cf7-row-boton {
        width: 100% !important;
        margin-top: 15px;
    }
    .cf7-formulario-consulta .btn-alcazar-dorado {
        width: 100% !important;
        padding: 14px 20px !important;
    }
	 .cf7-formulario-consulta .btn-alcazar-rojo {
        width: 100% !important;
        padding: 14px 20px !important;
    }
}

/* ==========================================================================
   Sección: Mosaico de Sectores (Checkerboard) - BOTÓN CORREGIDO
   ========================================================================== */

/* Forzar esquinas cuadradas en los contenedores de esta sección */
.alcazar-grid-sectores .elementor-container,
.alcazar-grid-sectores .elementor-column,
.alcazar-grid-sectores .elementor-widget-container,
.alcazar-grid-sectores .elementor-element {
    border-radius: 0 !important; /* Cuadradas 100% */
}

.alcazar-grid-sectores img{ width:150px !important;}

/* Ajuste de los títulos dentro de la tarjeta */
.alcazar-grid-sectores h3, 
.alcazar-grid-sectores p {
    color: #ffffff !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 1.1rem !important;
  font-weight: 500 !important;
  margin: -20px 0 9px 0 !important;
  text-align: center;
}

/* --- NUEVA CLASE: Estilo del botón nativo de Elementor --- */
.alcazar-grid-sectores button.e-button-base {
    background-color: #ffffff !important; /* Botón blanco */
    color: #541a43 !important;
  border: none !important;
  border-radius: 5px !important;
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 600 !important;
  font-size: 0.8rem !important;
  padding: 6px 25px !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
  display: inline-block !important;
  width: 90%;
}

/* Efecto Hover para el nuevo botón */
.alcazar-grid-sectores button.e-button-base:hover {
    background-color: #eeeeee !important;
    transform: translateY(-2px) !important;
}

/* Efecto hover en la tarjeta completa */
.alcazar-grid-sectores > .elementor-element:hover {
    filter: brightness(1.1);
    z-index: 10;
    cursor: pointer;
}

/* --- Responsive --- */

/* Tablets: 2 columnas */
@media (max-width: 1024px) {
    .alcazar-grid-sectores > .elementor-element {
        width: 50% !important;
    }
}

/* Móviles: 1 columna */
@media (max-width: 767px) {
    .alcazar-grid-sectores > .elementor-element {
        width: 100% !important;
    }
}



/* ==========================================================================
   SECCIÓN BLOG - MAQUETACIÓN NATIVA DE 1300PX
   ========================================================================== */

.seccion-blog-home {
    width: 100%;
    padding: 20px 0;
    background-color: #efedee; /* Un fondo sumamente claro y limpio */
    box-sizing: border-box;
}

.blog-home-container-1300 {
    max-width: 1300px;
    width: 100%;
    margin: 0 auto;
    padding: 0 30px;
    display: flex;
    justify-content: space-between;
    align-items: stretch; 
    gap: 40px;
    box-sizing: border-box;
}

.blog-home-col-texto {
    flex: 0 0 32%;
    background-color: #40378a;
    color: #ffffff;
    padding: 40px 30px;
    border-radius: 15px; 
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    box-sizing: border-box;
}

.blog-home-titulo {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 26px !important;
    line-height: 1.3 !important;
    color: #ffffff !important;
    margin: 0 0 15px 0 !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.blog-home-extracto {
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    color: #f0e6ee; 
    line-height: 1.6;
    margin: 0 0 30px 0;
}

.btn-quiero-info {
    display: inline-block;
    background-color: #ffffff !important;
    color: #40378a !important; 
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 700;
    font-size: 13px;
    text-transform: uppercase;
    text-decoration: none !important;
    text-align: center;
    padding: 14px 20px;
    border-radius: 12px;
    transition: background-color 0.2s ease;
}
.btn-quiero-info:hover {
    background-color: #f3f3f3 !important;
}

.blog-home-col-entradas {
    flex: 0 0 65%;
    width: 100%;
    box-sizing: border-box;
}

.blog-dinamico-grid {
    display: flex;
    gap: 30px;
    width: 100%;
    height: 100%;
}

.blog-tarjeta-mini {
    flex: 1;
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
}

.blog-tarjeta-img {
    width: 100%;
    height: 250px; 
    background-size: cover;
    background-position: center;
    border-radius: 15px; 
    margin-bottom: 15px;
}

.blog-tarjeta-titulo {
    margin: 0 0 10px 0;
    padding: 0;
}
.blog-tarjeta-titulo a {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #333333 !important;
    text-decoration: none !important;
    line-height: 1.3;
}
.blog-tarjeta-titulo a:hover {
    color: #be1212 !important; 
}

.blog-tarjeta-leer-mas {
    font-family: 'Montserrat', sans-serif;
    color: #be1212 !important; 
    font-weight: 700;
    font-size: 14px;
    text-decoration: underline !important;
}

.blog-home-contenedor-boton {
    width: 100%;
    display: flex;
    justify-content: center;
    margin-top: 50px;
}

.btn-ver-todo-blog {
    display: inline-block;
    font-family: 'Montserrat', sans-serif !important;
    background-color: #be1212 !important; 
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: 14px;
    font-weight: 400;
    padding: 15px 40px;
    border-radius: 15px; 
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: background-color 0.2s ease;
}
.btn-ver-todo-blog:hover {
    background-color: #9c0f0f !important;
}

.blog-tarjeta-extracto {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 14px !important;
    color: #666666 !important; /* Gris medio para el cuerpo de texto */
    line-height: 1.5 !important;
    margin: 10px 0 15px 0 !important; /* Separa el título del enlace "Leer más" */
    font-weight: 400;
}

/* --- NUEVA TARJETA ROJA DESTACADA --- */

/* Variación de color y posición relativa indispensable para el link absoluto */
.blog-home-col-destacada-roja {
    position: relative;
    flex: 0 0 32%;
    background-color: #be1212 !important; /* Rojo Institucional */
    padding: 20px 0 0 0 !important; /* Quitamos padding lateral para que la imagen toque los bordes si es necesario, o lo controlamos interno */
    border-radius: 15px; 
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    overflow: hidden; /* Evita que las esquinas de la imagen o el botón rompan el border-radius de 15px */
    box-sizing: border-box;
}

/* Encabezado superior de la tarjeta */
.destacada-header {
    padding: 0 25px;
    margin-bottom: 15px;
}

.destacada-sub {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 20px;
    font-weight: 300;
    color: #ffffff;
    text-transform: uppercase;
    display: block;
    line-height: 1;
}

/* Forzar el título de Franquicias pegado al sub-texto */
.blog-home-col-destacada-roja .blog-home-titulo {
    font-size: 28px !important;
    margin: 5px 0 0 0 !important;
    line-height: 1.1 !important;
}

/* Contenedor central de la imagen de la franquicia */
.destacada-imagen-wrap {
    flex-grow: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    background-color: #000000; /* Fondo negro de seguridad por si la imagen no cubre todo */
    overflow: hidden;
}

.destacada-img-fluid {
    width: 100%;
    height: 100%;
    object-fit: cover; /* Mantiene la proporción del espacio exterior y el logo de Chikaban */
    display: block;
}

/* Estilización del Botón Inferior Blanco (Simulado en diseño, responsivo) */
.btn-quiero-info-simulado {
    background-color: #ffffff !important;
    color: #be1212 !important; /* Texto en Rojo Institucional */
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 700;
    font-size: 13px;
    text-transform: uppercase;
    text-align: center;
    padding: 15px 20px;
    margin: 20px 20px; /* Margen para que flote idéntico al mockup */
    border-radius: 15px; /* Bordes de 15px según manual UI */
    line-height: 1.3;
    transition: background-color 0.2s ease, transform 0.2s ease;
    z-index: 2; /* Por encima del link absoluto para efectos visuales si se requiere */
}

/* Efecto Hover heredado desde el padre para accionar el botón visual */
.blog-home-col-destacada-roja:hover .btn-quiero-info-simulado {
    background-color: #f3f3f3 !important;
    transform: scale(1.02);
}

/* --- TRUCO DE USABILIDAD: LINK ABSOLUTO TOTAL --- */
.link-absoluto-tarjeta {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 5; /* Cubre absolutamente toda la caja para capturar el click */
    text-decoration: none;
    background-color: transparent;
}

@media (max-width: 768px) {
    .blog-home-container-1300, .blog-dinamico-grid {
        flex-direction: column;
    }
    .blog-home-col-texto, .blog-home-col-entradas {
        flex: 0 0 100%;
    }
	.blog-home-container-1300 {
  max-width: 1300px;
  width: 100%;
  margin: 0 auto;
  padding: 0 10px;
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  gap: 40px;
  box-sizing: border-box;
}
}



/* ==========================================================================
   FOOTER ALCÁZAR - MAQUETACIÓN EXACTA
   ========================================================================== */

.site-footer-corporativo {
    background-color:#40378a;
    color: #ffffff;
    font-family: 'Montserrat', sans-serif !important;
    padding: 70px 0 0 0;
    width: 100%;
    box-sizing: border-box;
}

.site-footer-corporativo .footer-container-1300 {
    max-width: 1300px;
    width: 100%;
    margin: 0 auto;
    padding: 0 30px;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 50px;
    box-sizing: border-box;
}

.footer-col-3 {
    flex: 1;
    box-sizing: border-box;
}

.footer-col-logo-left {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    border-right: 1px solid rgba(255, 255, 255, 0.25); 
    min-height: 220px;
    padding-right: 40px;
}

.footer-logo-img {
    max-width: 250px;
    height: auto;
}

.footer-titulo-seccion {
    font-size: 16px;
    font-weight: 700;
    text-transform: capitalize;
    margin: 0 0 15px 0;
    color: #ffffff;
    letter-spacing: 0.3px;
}

.footer-sub-titulo {
    font-size: 15px;
    font-weight: 700;
    margin: 25px 0 12px 0;
    text-transform: capitalize;
}

.footer-list-info {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-list-info li {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 14px;
    font-size: 14px;
    line-height: 1.4;
}

.footer-list-info a, .footer-list-info p {
    color: #ffffff !important;
    text-decoration: none !important;
    margin: 0;
    font-size: 14px;
}

.footer-icon-info::before {
    font-family: "Font Awesome 5 Free", "Font Awesome 6 Free";
    font-weight: 900;
    color: #ffffff;
    font-size: 14px;
}
.icon-tel::before { content: "\f095"; }
.icon-mail::before { content: "\f0e0"; }
.icon-geo::before { content: "\f3c5"; }

.footer-redes-flex {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.social-circle-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background-color: #ffffff;
    border-radius: 50%;
    text-decoration: none !important;
    transition: transform 0.2s ease, opacity 0.2s ease;
}

.social-circle-icon::before {
    font-family: "Font Awesome 5 Brands", "Font Awesome 6 Brands", "Font Awesome 5 Free";
    color: #40378a;
    font-size: 16px;
}

.social-circle-icon.fb::before { content: "\f39e"; }
.social-circle-icon.ig::before { content: "\f16d"; }
.social-circle-icon.x-tw::before { content: "\e61b"; } 
.social-circle-icon.yt::before { content: "\f167"; }
.social-circle-icon.tk::before { content: "\e07b"; }
.social-circle-icon.sp::before { content: "\f1bc"; }
.social-circle-icon.wa::before { content: "\f232"; }

.social-circle-icon:hover {
    transform: translateY(-2px);
    opacity: 0.9;
}

.footer-menu-links {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-menu-links li {
    margin-bottom: 8px;
}

.footer-menu-links a {
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: 14px;
    transition: color 0.2s ease;
}

.footer-menu-links a:hover {
    color: #cbd5e0 !important;
}

.footer-menu-main {
    margin-top: 25px; 
}

/* ==========================================================================
   FRANJA INFERIOR (Gris Claro)
   ========================================================================== */

.footer-barra-inferior-gris {
    background-color: #f4f5f7; 
    margin-top: 50px;
    padding: 15px 0;
    width: 100%;
}

.footer-barra-inferior-gris .barra-flex {
    justify-content: center; 
    align-items: center;
}

.footer-links-legales {
    font-size: 13px;
    color: #555555;
    text-align: center;
}

.footer-links-legales a {
    color: #555555 !important;
    text-decoration: none !important;
}

.footer-separador-legal {
    margin: 0 10px;
    color: #b5b5b5;
}

/* ==========================================================================
   RESPONSIVO MÓVIL
   ========================================================================== */

@media (max-width: 991px) {
    .site-footer-corporativo .footer-container-1300 {
        flex-direction: column;
        align-items: stretch;
        gap: 40px;
    }
    .footer-col-logo-left {
        border-right: none;
        border-bottom: 1px solid rgba(255, 255, 255, 0.25);
        min-height: auto;
        padding-right: 0;
        padding-bottom: 30px;
        justify-content: center;
    }
    .footer-col-center, .footer-col-links-right {
        text-align: left;
    }
}

@media (max-width: 768px) {
.a26hbloqueh4{font-size: 1.5em !important; text-transform: uppercase;}
.a26hbloqueh4r b{ font-size: 1em !important; text-transform: uppercase;}
.a26hbloqueh4r{ color: #c10d0e !important; font-size: 1.5em !important; text-transform: uppercase;}
.a26hbloqueh4r b{ color: #c10d0e !important; font-size: 1em !important; text-transform: uppercase;}
.a26hbloqueh4m{ color:#541a43; font-size: 1.5em !important; text-transform: uppercase;}
.a26hbloqueh4m b{ color: #541a43 !important; font-size: 1em !important; text-transform: uppercase;}
.a26hbloqueh4v{ color: #0d2738; font-size: 1.5em !important; text-transform: uppercase;}
.a26hbloqueh4v b{ color: #0d2738 !important; font-size: 1em !important; text-transform: uppercase;}

.btn-contenedor-base a {position: absolute; top: 0; left: 0; width: 100%; height: 100%; color: #ffffff !important;font-family: 'Montserrat', sans-serif !important; font-weight: 400; font-size: 15px; text-transform: uppercase; text-decoration: none; letter-spacing: 0.5px; display: inline-block; align-items: center; justify-content: center; padding: 0 15px; box-sizing: border-box;}
.header-inner img{ width: 200px !important;}	
.site-navigation-toggle-holder .site-navigation-toggle {
  align-items: center;
  background-color: rgba(0,0,0,0);
  border: 0 solid;
  border-radius: 3px;
  color: #494c4f;
  cursor: pointer;
  display: flex;
  justify-content: center;
  padding: .5rem;
}	
	.margin10 a{ padding-top: 10px !important;}
	
	#topfranchisemtop {
    margin-top: -400px !important;
  }
}
	