/*
Theme Name: El Humanista Astra Child
Theme URI: https://elhumanista.dev.l3m.mx
Author: Fenria Collective
Author URI: https://fenria.org
Template: astra
Description: Child theme de Astra para someterlo estética Brutalism UI (Cero JS, Cero Sombras, Cero Google Fonts).
Version: 1.0.8
Text Domain: el-humanista-astra-child
*/

:root {
    --color-guinda: #982E44;
    --color-dorado: #E5D6AE;
    --color-blanco-papel: #F9F7F1;
    --fuente-titulos: "Playfair Display", serif;
}

/* Economy of Scarcity / Brutalism execution */
body, .ast-container, #page, .site-content {
  background-color: #FFFFFF;
  box-shadow: none !important;
  border-radius: 0 !important;
}

.ast-article-post, .site-footer {
  margin-bottom: 2rem;
  box-shadow: none !important;
}

.site-header {
    margin-bottom: 0 !important;
    box-shadow: none !important;
}

a, a:visited {
  color: #000000;
  text-decoration: underline;
  text-decoration-thickness: 2px;
}

/* ========================================================
   BRUTALISM HERO HOOK STRUCTURE
   Whitespace Radical, Zero-Box-Shadows
======================================================== */
.humanista-hero-hook {
  padding: clamp(3rem, 10vw, 8rem) clamp(1.5rem, 5vw, 4rem);
  margin: 0 auto;
  max-width: 1200px;
  background-color: #FFFFFF; /* Absolute White */
   /* Hard Break */
  text-align: left;
}

.humanista-hero-hook .hero-title {
  font-family: var(--ast-heading-font-family);
  font-size: clamp(2.5rem, 6vw, 5.5rem);
  font-weight: 900;
  line-height: 1.05;
  margin-bottom: 1.5rem;
  letter-spacing: -0.04em;
  text-transform: uppercase;
  color: #000000;
  word-wrap: break-word;
}

.humanista-hero-hook .hero-subtitle {
  font-family: var(--ast-body-font-family);
  font-size: clamp(1.2rem, 3vw, 2.2rem);
  color: #111111;
  max-width: 850px;
  line-height: 1.4;
}

/* Hardcode Astra Wrappers & Typography to ensure compliance */
.site-content {
  padding-top: 3rem !important; /* Whitespace before loop content */
}

/* Hide Default Sidebar without removing it via PHP completely (Soft override) */
.ast-no-sidebar .widget-area {
    display: none !important;
}

.ast-no-sidebar #primary {
    width: 100% !important;
    max-width: 800px;
    margin: 0 auto;
    float: none !important;
}
/* MODO ENJAMBRE: IMPOSICIÓN DE PALETA INSTITUCIONAL */
:root {
    --color-guinda: #982E44;
    --color-dorado: #E5D6AE;
    --color-blanco-papel: #F9F7F1;
    --fuente-titulos: "Playfair Display", serif;
}


h1, h2, h3, .entry-title a { color: var(--color-guinda) !important; font-family: 'Georgia', serif !important; }
.ast-button, button, input[type="submit"] { background-color: var(--color-guinda) !important; color: white !important; border-radius: 0 !important; }

/* Nota Maestra Destacada */
article:first-of-type { border: none !important; border-bottom: 4px solid #000000 !important; /* Brutalist Harmony */ padding: 20px; margin-bottom: 2rem; }
article:first-of-type .entry-title { font-size: 2.5rem !important; }

/* Layout General */
.humanista-feed-container { max-width: 1000px; margin: 0 auto; padding: 2rem 1rem; }
.humanista-grid { display: flex; flex-direction: column; gap: 3rem; }

/* Tarjeta Base y Tipografía */
.humanista-card { border-bottom: 2px solid #eaeaea; padding-bottom: 2rem; display: flex; flex-direction: column; gap: 1rem; }
.humanista-card .entry-summary p { color: #111111 !important; font-size: 1.1rem; line-height: 1.6; font-family: 'Georgia', serif; }

/* Inyección del Dorado y Guinda */
.humanista-read-more { 
    display: inline-block; 
    margin-top: 1rem; 
    color: var(--color-dorado) !important; 
    font-weight: bold; 
    text-transform: uppercase; 
    text-decoration: none; 
    border-bottom: 2px solid var(--color-dorado); 
}
.humanista-read-more:hover { color: var(--color-guinda) !important; border-bottom-color: var(--color-guinda); }

/* La Nota Maestra (Primer artículo) */
article.humanista-card:first-of-type { 
    border: none !important; border-bottom: 4px solid #000000 !important; /* Brutalist Harmony */ 
    padding: 1.5rem; 
    background-color: transparent;
}
article.humanista-card:first-of-type .entry-title { font-size: 2.5rem; margin-bottom: 1rem; }

/* Imágenes Responsivas */
.humanista-thumbnail img { width: 100% !important; height: 100% !important; display: block !important; object-fit: cover !important; aspect-ratio: 1 / 1 !important; max-height: unset !important; }


/* Placeholders para Monetización (Ads) */
.humanista-ad-slot {
    background-color: #f8f9fa !important; /* Gris muy tenue */
    border: 1px dashed #cccccc;
    min-height: 250px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 3rem auto;
    width: 100%;
    max-width: 800px;
    color: #aaaaaa;
    font-size: 0.85rem;
    font-family: ui-sans-serif, system-ui, sans-serif;
    text-transform: uppercase;
    letter-spacing: 1px;
}
.humanista-ad-slot::after { content: "Espacio Publicitario Reservado"; }

/* Footer Institucional 4T */
.humanista-footer {
    background-color: var(--color-guinda) !important;
    color: #ffffff;
    padding: 3rem 1rem;
    text-align: center;
    margin-top: 4rem;
    border-top: 20px solid var(--color-dorado) !important;
}
.humanista-copyright { font-size: 1.1rem; margin: 0; font-family: 'Georgia', serif; }
.humanista-copyright small { font-size: 0.8rem; opacity: 0.8; font-family: ui-sans-serif, system-ui, sans-serif; display: block; margin-top: 10px; }


/* Corrección del Gap Blanco Inferior */
html, body {
    height: 100%;
    margin: 0;
    padding: 0;
}
body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}
.site-content {
    flex-grow: 1;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}
.humanista-footer {
    margin-top: auto; /* Empuja el footer al final */
    margin-bottom: 0;
}













.ast-site-identity {
    display: flex;
    align-items: center;
}




/* Modificar el contenedor del titulo para mostrar el logo original en su lugar */
.ast-site-identity {
    padding: 15px 0 !important;
}

.ast-site-title-wrap, .site-title {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
}

.ast-site-title-wrap .site-title a {
    display: block !important;
    width: 250px !important;
    height: 100px !important;
    background-image: url('assets/logo-header.png') !important;
    background-repeat: no-repeat !important;
    background-position: left center !important;
    background-size: contain !important;
    color: transparent !important;
    text-indent: -9999px !important;
    overflow: hidden !important;
}

.ast-site-title-wrap .site-title a:hover, 
.ast-site-title-wrap .site-title a:focus,
.ast-site-title-wrap .site-title a:active {
    color: transparent !important;
    background-color: transparent !important;
    outline: none !important;
}

/* Menu Estilo Brutalista 4T */
.main-header-menu {
    display: flex;
    justify-content: center;
    gap: 20px;
    background-color: var(--color-guinda);
    padding: 10px 0;
    margin: 0;
}
.main-header-menu li {
    list-style: none;
}
.main-header-menu li a {
    color: white !important;
    font-family: var(--ast-heading-font-family);
    font-weight: bold;
    text-transform: uppercase;
    text-decoration: none;
    padding: 5px 15px;
}
.main-header-menu li a:hover {
    background-color: var(--color-dorado);
    color: #111 !important;
}

/* Humanista Bare Metal Header */
.humanista-main-header {
    background-color: var(--color-guinda) !important;
    width: 100%;
    margin: 0;
    padding: 0;
    border-bottom: 4px solid var(--color-dorado);
}
.humanista-header-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 1200px;
    margin: 0 auto;
    padding: 10px 20px;
}
.humanista-logo {
    max-height: 80px;
    width: auto;
    display: block;
}
.humanista-nav ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    gap: 20px;
}
.humanista-nav a {
    color: #ffffff !important;
    text-decoration: none;
    font-family: ui-sans-serif, system-ui, sans-serif;
    font-weight: bold;
    text-transform: uppercase;
}
.humanista-nav a:hover { color: var(--color-dorado) !important; }


/* ========================================================
   BARE METAL HEADER
======================================================== */
.humanista-main-header {
    background-color: var(--color-guinda) !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 4px solid var(--color-dorado) !important;
    display: block !important;
    box-sizing: border-box !important;
}

.humanista-header-inner {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: space-between !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 10px 20px !important;
    box-sizing: border-box !important;
}

.site-branding {
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
}

img.humanista-logo {
    max-height: 80px !important;
    width: auto !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Nav Settings */
.humanista-nav {
    display: block !important;
}

.humanista-nav ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 20px !important;
    align-items: center !important;
}

.humanista-nav ul li, .humanista-nav ul li a {
    display: inline-block !important;
}

.humanista-nav ul li a {
    color: #ffffff !important;
    text-decoration: none !important;
    font-family: ui-sans-serif, system-ui, sans-serif !important;
    font-weight: bold !important;
    text-transform: uppercase !important;
    font-size: 1rem !important;
    padding: 5px 10px !important;
}

.humanista-nav ul li a:hover {
    color: var(--color-dorado) !important;
}

/* ==========================================================================
   FENRIA VISUAL CORP: CONTENT AREA OVERRIDE (BRUTALIST PROTOCOL)
   ========================================================================== */

/* 1. Purga de fondo: Blanco absoluto (#FFFFFF) para alto contraste */
.site-content, 
#content, 
.ast-container, 
body.custom-background {
    background-color: #FFFFFF !important;
    background-image: none !important;
}

/* 2. Eliminación de "Clean Design" (Sombras y Bordes Suaves) en artículos */
.ast-article-single, 
.ast-article-post, 
.type-page {
    background-color: #FFFFFF !important;
    border-radius: 0 !important; /* Bordes afilados mandatorios */
    box-shadow: none !important; /* Eliminación de sombras corporativas */
    border-bottom: 2px solid #000000; /* Delimitación estructural clara */
}

/* 3. Tipografía y Contraste en Contenido (Jerarquía de Verdad) */
.entry-content p, 
.entry-content li {
    color: #000000 !important; /* Negro absoluto para máxima legibilidad */
}

/* 4. Estilización Brutalista de Tablas/Datos (Si aplican) */
.entry-content table {
    width: 100%;
    border-collapse: collapse;
    border: 2px solid #000000;
}
.entry-content th, 
.entry-content td {
    border: 1px solid #000000;
    padding: 0.5rem;
}
.entry-content th {
    background-color: #000000;
    color: #FFFFFF;
    text-transform: uppercase;
}

/* 5. Interacciones de Estado (Botones/Enlaces en contenido) */
.entry-content a:not(.btn) {
    color: #982E44; /* Rojo/Guinda de la marca */
    text-decoration: underline;
    text-decoration-thickness: 2px;
    text-underline-offset: 4px;
    transition: all 0.05s steps(2);
}
.entry-content a:not(.btn):hover {
    background-color: #982E44;
    color: #FFFFFF !important;
}


/* Brutalist Harmony para Back to Top */
#ast-scroll-top, .ast-scroll-top {
    background-color: #982E44 !important;
    color: #FFFFFF !important;
    border: 2px solid #000000 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
#ast-scroll-top:hover, .ast-scroll-top:hover {
    background-color: #000000 !important;
    color: #FFFFFF !important;
}

/* Botón Menú Mobile Brutalista */
.ast-mobile-menu-trigger-minimal {
    border: 2px solid #000000 !important;
    background-color: #000000 !important;
    color: #E5D6AE !important;
    border-radius: 0 !important;
    padding: 10px 15px !important;
    font-weight: bold !important;
    box-shadow: 4px 4px 0px 0px #E5D6AE !important; /* Toque retro terminal */
    transition: none !important;
}

.ast-mobile-menu-trigger-minimal:hover {
    background-color: #E5D6AE !important;
    color: #000000 !important;
    box-shadow: 4px 4px 0px 0px #000000 !important;
}

.ast-mobile-menu-trigger-minimal .mobile-menu-toggle-icon {
    font-size: 1.5rem !important;
}

/* Ocultar SVG originales de Astra en el boton (por seguridad) */
.ast-mobile-menu-trigger-minimal svg {
    display: none !important;
}

/* ========================================================
   ASTRA NATIVE RECOVERY (NO HARDCODE HEADER)
======================================================== */

/* Centrado de layout principal */
.ast-container {
    max-width: 1200px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
}

.site-content > .ast-container {
    display: block !important;
}

.ast-right-sidebar #primary,
.ast-left-sidebar #primary {
    width: calc(100% - 360px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    float: left !important;
}

.ast-right-sidebar #secondary,
.ast-left-sidebar #secondary {
    display: block !important;
    width: 320px !important;
    float: right !important;
}

#secondary,
.widget-area {
    background: #FFFFFF !important;
    border-left: 4px solid #000000 !important;
    padding-left: 20px !important;
    margin-left: 20px !important;
    box-shadow: none !important;
}

#secondary .widget,
.widget-area .widget {
    background: transparent !important;
    border: 2px solid #000000 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 14px !important;
    margin-bottom: 16px !important;
}

#secondary .widget-title,
.widget-area .widget-title {
    text-transform: uppercase !important;
    border-bottom: 2px solid #000000 !important;
    padding-bottom: 8px !important;
    margin-bottom: 10px !important;
}

/* Brutalismo sobre clases nativas de Astra */
.main-header-bar {
    background-color: var(--color-guinda) !important;
    border-bottom: 2px solid #E5D6AE !important;
    box-shadow: none !important;
}

.site-header,
.ast-primary-header-bar,
.ast-mobile-header-wrap,
.main-header-bar-wrap {
    background-color: var(--color-guinda) !important;
}

.main-header-menu a {
    color: #E5D6AE !important;
    text-decoration: none !important;
    border: 2px solid transparent !important;
    border-radius: 0 !important;
}

.main-header-menu a:hover,
.main-header-menu .current-menu-item > a {
    color: #000000 !important;
    background-color: #E5D6AE !important;
    border-color: #E5D6AE !important;
}

.main-header-menu-toggle {
    border: 2px solid #E5D6AE !important;
    background-color: #000000 !important;
    color: #E5D6AE !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.main-header-menu-toggle:hover,
.main-header-menu-toggle:focus {
    background-color: #E5D6AE !important;
    color: #000000 !important;
}
/* ==========================================================================
   FENRIA VISUAL CORP: BRUTALIST SIDEBAR & PALETTE HOTFIX v2
   ========================================================================== */
/* Restaurar layout Flex para el contenedor principal de Astra (Evita asimetría por floats) */
.site-content > .ast-container {
    display: flex !important;
    flex-wrap: wrap;
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 2rem 20px !important;
    justify-content: space-between;
}

/* El area de posts (primary) y sidebar (secondary) sin floats */
.ast-right-sidebar #primary {
    width: calc(100% - 340px) !important;
    float: none !important;
    margin: 0 !important;
}

/* Sidebar brutalista (Hard borders, monospace elements) */
.ast-right-sidebar #secondary {
    display: block !important;
    width: 320px !important;
    float: none !important;
    background: #FFFFFF !important;
    border-left: 4px solid #000000 !important;
    padding: 0 0 0 20px !important;
    margin: 0 !important;
    box-shadow: none !important;
}

/* Widgets dentro de la sidebar */
.widget-area .widget {
    margin-bottom: 2rem !important;
    border-bottom: 2px solid #000000;
    padding-bottom: 1.5rem;
}

.widget-area .widget-title {
    font-family: ui-sans-serif, system-ui, sans-serif !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    font-size: 1.2rem !important;
    color: #000000 !important;
    margin-bottom: 1rem !important;
}

/* Corrección del fondo de Header que ocultaba el logo sobre fondo oscuro */
.site-header,
.ast-primary-header-bar,
.ast-mobile-header-wrap,
.main-header-bar-wrap,
.humanista-main-header {
    background-color: #FFFFFF !important;
    border-bottom: 4px solid #000000 !important;
}

/* Menu links con contraste para fondo blanco */
.humanista-nav a, 
.main-header-menu a,
.main-header-menu li a {
    color: #000000 !important;
}

.humanista-nav a:hover, 
.main-header-menu li a:hover {
    background-color: #000000 !important;
    color: #FFFFFF !important;
    border: none !important;
}

/* Ajustes Responsive para la sidebar */
@media (max-width: 992px) {
    .site-content > .ast-container {
        display: block !important;
    }
    .ast-right-sidebar #primary {
        width: 100% !important;
    }
    .ast-right-sidebar #secondary {
        width: 100% !important;
        border-left: none !important;
        border-top: 4px solid #000000 !important;
        margin-top: 2rem !important;
        padding: 2rem 0 0 0 !important;
    }
}
/* ==========================================================================
   FENRIA VISUAL CORP: BRUTALIST SYNC HEADER CON FOOTER
   ========================================================================== */

/* 1. Unificación de color de fondo del Header para igualarlo al Footer (Guinda) con mega-borde dorado */
.site-header,
.ast-primary-header-bar,
.ast-mobile-header-wrap,
.main-header-bar-wrap,
.humanista-main-header {
    background-color: var(--color-guinda) !important;
    border-bottom: 20px solid var(--color-dorado) !important; /* Igual que el footer */
}

/* 2. Fijar colores de enlaces en el menú para que resalten sobre Guinda */
.humanista-nav a, 
.main-header-menu a,
.main-header-menu li a {
    color: #FFFFFF !important;
}

.humanista-nav a:hover, 
.main-header-menu li a:hover {
    background-color: var(--color-dorado) !important;
    color: var(--color-guinda) !important;
    border: none !important;
}

/* 3. Evitar que el logo oscuro se pierda: Inyectar un bloque brutalista blanco detrás del logo */
.ast-site-identity,
.site-branding {
    background-color: #FFFFFF !important;
    padding: 10px 20px !important;
    border: 4px solid var(--color-dorado) !important; 
    box-shadow: 6px 6px 0px 0px #000000 !important; /* Toque Brutalista de volumen plano */
    display: inline-block !important;
    margin: 10px 0 !important;
}

/* Ajustes finos para enlaces activos y botones móviles sobre fondo Guinda */
.ast-builder-menu-mobile .main-navigation .main-header-menu,
.ast-mobile-header-content {
    background-color: var(--color-guinda) !important;
}

.ast-mobile-menu-trigger-minimal {
    background-color: #FFFFFF !important;
    color: var(--color-guinda) !important;
    border: 4px solid var(--color-dorado) !important;
    box-shadow: 4px 4px 0px 0px #000000 !important;
}
/* ==========================================================================
   FENRIA VISUAL CORP: HEADER HOTFIX 2 (Constrain flex-bleed on identity)
   ========================================================================== */

/* 1. Quitar el bloque blanco gigante del wrapper del sitio, que estaba "sangrando" el Flex general */
.ast-site-identity,
.site-branding {
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
    flex: 0 0 auto !important; /* Detener el estiramiento horizontal automático */
}

/* 2. Aplicar el estilo "stamp" ÚNICAMENTE al tag "a" del logo para limitar estrictamente a la imagen (250x100px) */
.ast-site-title-wrap .site-title a {
    background-color: #FFFFFF !important;
    padding: 10px !important;
    border: 4px solid var(--color-dorado) !important; 
    box-shadow: 6px 6px 0px 0px #000000 !important;
    display: inline-block !important;
    box-sizing: content-box !important;
    width: 250px !important;
    height: 100px !important;
    margin: 10px 0 !important;
    /* Evitar que la imagen del logo se pinte debajo del padding */
    background-origin: content-box !important;
    background-position: left center !important;
}

/* 3. Garantizar que TODAS las celdas del Header sean Guinda para igualarlo al fondo general */
.site-header,
.ast-primary-header-bar,
.ast-primary-header-bar .ast-builder-grid-row,
.ast-main-header-wrap,
.main-header-bar-wrap {
    background-color: var(--color-guinda) !important;
}

/* 4. Colocar la barra dorada gruesa AL FONDO de la barra principal (simetría con el tope del footer) */
.ast-primary-header-bar {
    border-bottom: 20px solid var(--color-dorado) !important;
}

/* ==========================================================================
   FENRIA VISUAL CORP: HEADER GREEN & WHITE-VOID PURGE
   ========================================================================== */
/* Eliminar el fondo blanco filtrado por el .ast-container genérico dentro de la cabecera */
.site-header .ast-container,
.ast-primary-header-bar .ast-container,
.ast-main-header-wrap .ast-container,
.site-header-primary-section-left,
.site-header-primary-section-right,
.ast-builder-grid-row,
.ast-builder-layout-element {
    background-color: transparent !important;
}

/* Forzar que todos los fondos de fallback del header sean guinda absoluto */
.site-header,
.ast-primary-header-bar-alignment {
    background-color: var(--color-guinda) !important;
}
/* ==========================================================================
   FENRIA VISUAL CORP: HEADER LOGO SIMPLIFICATION (UNIFORM BLEND)
   ========================================================================== */

/* 
 * Revertir la complejidad de los parches anteriores. El logotipo original en sí
 * ya cuenta con color base que se mezcla perfectamente.
 * Volvemos al estado plano y transparente del contenedor.
 */
.ast-site-title-wrap .site-title a {
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 10px 0 !important;
    /* Mantener sólo las dimensiones estrictas de visualización de imagen */
    display: block !important;
    width: 250px !important;
    height: 100px !important;
}
