/*!
Theme Name: Derechos Digitales Theme
Theme URI: http://underscores.me/
Author: El Maizal
Author URI: https://elmaizal.coop.ar/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: derechos-digitales
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

Derechos Digitales Theme is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
 html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
	scroll-behavior: smooth;
	width: 100%;
}

/* Sections
	 ========================================================================== */

/**
 * Remove the margin in all browsers.
 */
body {
	margin: 0;
	overflow-x: hidden;
	width: 100%;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
	display: block;
}

/* Grouping content
	 ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
	font-family: monospace, monospace;
	font-size: 1em;
}

/* Text-level semantics
	 ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */
a {
	background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
	font-weight: 700;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

/**
 * Add the correct font size in all browsers.
 */
small {
	font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/* Embedded content
	 ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */
img {
	border-style: none;
}

/* Forms
	 ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
	font-family: inherit;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
	overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
	text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
	padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */
legend {
	box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
	vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 
textarea {
	overflow: auto;
} */

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}

/* Interactive
	 ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
	display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
	display: list-item;
}

/* Misc
	 ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */
template {
	display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
	display: none;
}

/* Box sizing
--------------------------------------------- */

/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
	box-sizing: inherit;
}

html {
	box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/

/* Typography
--------------------------------------------- */
body,
button,
input,
select,
optgroup,
textarea {
	color: #404040;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
	font-size: 1rem;
	line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
}

dfn,
cite,
em,
i {
	font-style: italic;
}

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", courier, monospace;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	/* overflow: auto;*/
	padding: 1.6em;
}

code,
kbd,
tt,
var {
	font-family: monaco, consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}

abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

/* Elements
--------------------------------------------- */
body {
	background: #fff;
}

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

ul,
ol {
	margin: 0 0 1.5em 3em;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: 700;
}

dd {
	margin: 0 1.5em 1.5em;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}


figure {
	margin: 1em 0;
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/

/* Navigation
--------------------------------------------- */
.main-navigation {
	display: block;
	width: 100%;
}

.main-navigation ul {
	display: none;
	list-style: none;
	margin: 0;
	padding-left: 0;
}

.main-navigation ul ul {
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	float: left;
	position: absolute;
	top: 100%;
	left: -999em;
	z-index: 99999;
}

.main-navigation ul ul ul {
	left: -999em;
	top: 0;
}

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
	display: block;
	left: auto;
}

.main-navigation ul ul a {
	width: 200px;
}

.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
	left: auto;
}

.main-navigation li {
	position: relative;
}

.main-navigation a {
	display: block;
	text-decoration: none;
}

/* Menu hamburguesa */
.menu-toggle,
.main-navigation.toggled ul {
	display: block;
}

.icon-cruz {
    display: none;
}

.menu-toggle.open .icon-hamburguesa {
    display: none;
}

.menu-toggle.open .icon-cruz {
    display: inline;
}

.site-main .comment-navigation,
.site-main
.posts-navigation,
.site-main
.post-navigation {
	margin: 0 0 1.5em;
}

.comment-navigation .nav-links,
.posts-navigation .nav-links,
.post-navigation .nav-links {
	display: flex;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	flex: 1 0 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	text-align: end;
	flex: 1 0 50%;
}

/* Posts and pages
--------------------------------------------- */
.sticky {
	display: block;
}

.post,
.page {
	margin: 0;
}

.updated:not(.published) {
	display: none;
}

.page-content,
.entry-content,
.entry-summary {
	margin: 1.5em 0 0;
}

.page-links {
	clear: both;
	margin: 0 0 1.5em;
}

/* Comments
--------------------------------------------- */
.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {
	display: block;
}

/* Widgets
--------------------------------------------- */
.widget {
	margin: 0 0 1.5em;
}

.widget select {
	max-width: 100%;
}

/* Media
--------------------------------------------- */
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block;
}

/* Captions
--------------------------------------------- */
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

.wp-caption-text {
	text-align: center;
}

/* Galleries
--------------------------------------------- */
.gallery {
	margin-bottom: 1.5em;
	display: grid;
	grid-gap: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	width: 100%;
}

.gallery-columns-2 {
	grid-template-columns: repeat(2, 1fr);
}

.gallery-columns-3 {
	grid-template-columns: repeat(3, 1fr);
}

.gallery-columns-4 {
	grid-template-columns: repeat(4, 1fr);
}

.gallery-columns-5 {
	grid-template-columns: repeat(5, 1fr);
}

.gallery-columns-6 {
	grid-template-columns: repeat(6, 1fr);
}

.gallery-columns-7 {
	grid-template-columns: repeat(7, 1fr);
}

.gallery-columns-8 {
	grid-template-columns: repeat(8, 1fr);
}

.gallery-columns-9 {
	grid-template-columns: repeat(9, 1fr);
}

.gallery-caption {
	display: block;
}

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/

/* Jetpack infinite scroll
--------------------------------------------- */

/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
	display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/

/* Accessibility
--------------------------------------------- */

/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
	outline: 0;
}

/* Alignments
--------------------------------------------- */
.alignleft {

	/*rtl:ignore*/
	float: left;

	/*rtl:ignore*/
	margin-right: 1.5em;
	margin-bottom: 1.5em;
}

.alignright {

	/*rtl:ignore*/
	float: right;

	/*rtl:ignore*/
	margin-left: 1.5em;
	margin-bottom: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5em;
}



/* EL MAIZAL */
:root {
	--color-principal-base: #045D58;
	--color-principal-claro: #058373;
	--color-principal-oscuro: #232E35;
	--color-fondo-medio: #7ED6D1;
	--color-fondo-claro: #BAF5ED;
	--color-neutro-semiblanco: #F5F3EF;
	--color-neutro-gris-claro: #E9E8E7;
	--color-neutro-blanco: #ffffff;
	--color-neutro-gris-medio: #757575;
	--fuente-titulos: 'Space Grotesk', sans-serif;
	--fuente-texto: 'Public Sans', sans-serif;
	--tamano-titulo-h1: clamp(2.5rem, 5vw + 1rem, 4.1825rem);
	--tamano-titulo-h2: clamp(2.25rem, 4vw + 0.5rem, 3.6875rem);
	--tamano-titulo-h3: clamp(2rem, 3vw + 0.5rem, 2.875rem);
	--tamano-h4: clamp(1.75rem, 2.5vw + 0.5rem, 2.1875rem);
	--tamano-h5: clamp(1.5rem, 2vw + 0.25rem, 1.6875rem);
	--tamano-h6: clamp(1.25rem, 1.5vw + 0.25rem, 1.3125rem);
	--tamano-p1: clamp(1rem, 1.2vw + 0.25rem, 1.125rem);
	--tamano-p2: clamp(1rem, 1vw + 0.25rem, 1rem);
	--tamano-p3: clamp(0.75rem, 0.8vw + 0.1rem, 0.75rem);
}

/* Base Tipográfica */
body {
    font-family: "Public Sans", sans-serif;
    color: var(--color-principal-oscuro);
}

.bold{
	font-weight: bold;
}

/* BOTONES */
/* Boton Filled */
.boton-filled{
	display: inline-block;
	padding: 16px 24px;
	font-family: var(--fuente-texto);
	font-weight: bold;
	font-size: var(--tamano-h6);
	line-height: normal;
	text-decoration: none;
	border-radius: 100px;
	background-color: var(--color-principal-oscuro);
	color: var(--color-neutro-blanco);
	align-items: center;
	transition: background-color 0.3s ease;
	border: 0;

}

.boton-filled:hover{
	background-color: var(--color-principal-claro);
	color: var(--color-neutro-blanco);
}

.boton-filled-blanco{
	display: inline-block;
	padding: 16px 24px;
	font-family: var(--fuente-texto);
	font-weight: bold;
	font-size: var(--tamano-h6);
	line-height: normal;
	text-decoration: none;
	border-radius: 100px;
	background-color: var(--color-neutro-blanco);
	color: var(--color-principal-oscuro);
	align-items: center;
	transition: background-color 0.3s ease;
	border: 0;

}

.boton-filled-blanco:hover{
	background-color: var(--color-fondo-medio);
	color: var(--color-principal-oscuro);
}

.boton-path-oscuro{
	padding: 16px 24px;
	font-family: var(--fuente-texto);
	font-weight: bold;
	font-size: var(--tamano-h6);
	line-height: normal;
	text-decoration: none;
	border-radius: 100px;
	background-color: transparent;
	border: solid 2px var(--color-principal-oscuro);
	color: var(--color-principal-oscuro);
	align-items: center;
	transition: color 0.3s ease, border 0.3s ease;
	width: auto;
	align-self: flex-end;
}

.boton-path-oscuro:hover{
	border: solid 2px var(--color-principal-claro);
	color: var(--color-principal-claro);
}

.boton-path-blanco{
	padding: 16px 24px;
	font-family: var(--fuente-texto);
	font-weight: bold;
	font-size: var(--tamano-h6);
	line-height: normal;
	text-decoration: none;
	border-radius: 100px;
	background-color: transparent;
	border: solid 2px var(--color-neutro-blanco);
	color: var(--color-neutro-blanco);
	align-items: center;
	transition: color 0.3s ease, border 0.3s ease;
}

.boton-path-blanco:hover{
	border: solid 2px var(--color-fondo-medio);
	color: var(--color-fondo-medio);
}

.btn-ver-equipo:hover{
    background-color: #045D58;
	color: #ffffff;
}



/* HEADER */
/* Contenedor principal del header */
.menu-toggle {
    order: 1;
  }

  .site-search {
    order: 0;
  }

.site-header {
    position: fixed;
	width: 100%;
    top: 0;
    z-index: 99998; 
    background-color: rgba(250, 249, 247, 0.7); 
    backdrop-filter: blur(8px); 
}

.container-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding: 11px 80px;
	height: 64px;
}

.header-der{
	display: flex;
	gap: 24px;
}

/* Alinear logo */
.site-branding img {
    height: 42px; 
    width: auto;
}

/* Menú */
.menu-toggle,
.mobile-menu {
  display: none;
}

.menu-desktop {
  display: flex;
}

.menu-container {
    display: flex;
    align-items: center;
    gap: 20px;
}

.main-navigation ul {
    list-style: none;
    display: flex;
    gap: 20px;
}

.main-navigation ul li {
    display: inline;
}

.main-navigation ul li a {
    position: relative; 
    text-decoration: none;
    font-size: var(--tamano-p2);
    color: var(--color-principal-oscuro);
    transition: color 0.3s ease;
}

.main-navigation ul li a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -3px; 
    width: 0%;
    height: 2px;
    background-color: var(--color-principal-claro);
    transition: width 0.3s ease;
}

.main-navigation ul li a:hover {
    color: var(--color-principal-claro);
}

.main-navigation ul li.current-menu-item a {
    color: var(--color-principal-claro);
}

.main-navigation ul li a:hover::after {
    width: 100%;
}



.main-navigation ul li.current-menu-item a::after {
    width: 100%;
}

/* Dropdown de idiomas */
.language-switcher {
    position: relative;
    display: inline-block;
}

.lang-btn {
    background: none;
    border: solid 2px var(--color-principal-oscuro);
	border-radius: 100px;
    font-size: var(--tamano-p2);
    cursor: pointer;
    color: var(--color-principal-oscuro);
    display: flex;
    align-items: center;
	justify-content: center;
    gap: 4px;
	height: 34px;
	padding: 4px 10px;
	width: 67px;
	transition: all 0.3s ease;
}

.lang-btn .lang-arrow {
	color: var(--color-principal-oscuro);
    transition: all 0.3s ease;
}

.lang-btn:focus {
    border: solid 2px var(--color-principal-oscuro);
	color: var(--color-principal-claro);
}

.lang-btn:hover {
    border: solid 2px var(--color-principal-claro);
	color: var(--color-principal-claro);
}

.lang-btn:hover .lang-arrow{
	color: var(--color-principal-claro);
}

.lang-btn.active {
	border: solid 2px var(--color-principal-claro);
	color: var(--color-principal-claro);
}

.lang-btn.active .lang-arrow {
    transform: rotate(180deg);
	color: var(--color-principal-claro);
}

.lang-dropdown {
    position: absolute;
    top: 100%;
    right: 0;
    background: rgba(250, 249, 247, 0.7);
    border: none;
    border-radius: 10px;
    margin-top: 8px;
    padding: 0;
    list-style: none;
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
    z-index: 10;
	width: 67px;
	align-items: center;
}

.lang-dropdown li {
    padding: 8px 16px;
	text-transform: uppercase;
	display: flex;
	justify-content: center;
}

.lang-dropdown li a {
	position: relative;
	display: inline-block;
    text-decoration: none;
    color: var(--color-principal-oscuro);
	text-align: center;
}

.lang-dropdown li a:hover {
    color: var(--color-principal-claro);
}

.lang-dropdown li a::after {
	content: '';
	position: absolute;
	left: 0;
	bottom: -2px; /* o el espacio que quieras del texto */
	width: 0%;
	height: 2px;
	background-color: currentColor; /* hereda el color del texto */
	transition: width 0.3s ease;
  }
  
  .lang-dropdown li a:hover::after {
	width: 100%;
  }

.hidden {
    display: none;
}

/* Buscador */
.site-search {
	display: flex;
    align-items: center;
    gap: 8px; /* separación entre ícono y formulario */
    transition: width 0.3s ease;
}

/* Ícono lupa */
.search-toggle {
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    display: flex;
    align-items: center;
	color: var(--color-principal-oscuro);
    transition: color 0.3s ease;
}

.search-toggle svg {
    width: 24px;
}

.site-search .search-toggle:hover {
    color: var(--color-principal-claro);
}


.search-toggle.active .icon-lupa {
    display: none;
}


.search-toggle.active .search-form {
    width: 100px;
}

/* Search form en línea */
.search-form {
    width: 0;
    opacity: 0;
    overflow: hidden;
    transition: width 0.4s ease, opacity 0.4s ease;
    background: white;
    height: 53px;
    border-radius: 30px;
    padding: 0 8px;
    display: flex;
    align-items: center;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
	justify-content: space-around;
}

.search-form input.search-field {
    border: none;
    outline: none;
    padding: 8px;
    font-size: 1rem;
    background: transparent;
}

.search-form .search-submit {
    background: none;
    border: none;
    cursor: pointer;
    padding: 4px;
}


/* Activa el formulario */
.search-form.active {
    width: 230px;
    opacity: 1;
	display: flex;
}

/* Input */
.search-field {
    width: 100%;
    height: 100%;
    padding: 0;
    font-size: 18px;
    border: none;
    border-radius: 30px;
    color: #232E35;
    padding: 16px;
}

.search-field::placeholder {
    color: #757575;
    font-size: 18px;
}

.search-field:focus {
    outline: none;
    box-shadow: none;
}

/* Oculta el botón "x" en Chrome */
.search-field::-webkit-search-cancel-button {
    -webkit-appearance: none;
    appearance: none;
    display: none;
}

/* Submit con ícono */
.search-submit {
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    margin-left: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.buscador-general .search-filter-input-text {
	border: none;         /* Quita el borde */
	outline: none;        /* Quita el borde al hacer foco */
	box-shadow: none;     /* Quita sombras si las hay */
	background-color: transparent; /* Opcional, para que no tenga fondo */
  }

.buscador-general .search-filter-input-text:hover {
	border: none;         /* Quita el borde */
	outline: none;        /* Quita el borde al hacer foco */
	box-shadow: none;     /* Quita sombras si las hay */
	background-color: transparent; /* Opcional, para que no tenga fondo */
  }

.submit-buscador .search-filter-input-button.search-filter-field__input{
	background-color: transparent;
}

.submit-buscador  .search-filter-input-button {
	background: url('assets/img/icono-lupa.svg') no-repeat center center;
	background-size: 30px 30px; 
	border: none;
	width: 40px;  
	height: 40px;
	text-indent: -9999px; /* oculta el texto "X" */
	cursor: pointer;
  }


  .submit-buscador .search-filter-input-button.search-filter-field__input:hover {
	background-color: transparent !important;
  }

  .submit-buscador .search-filter-input-button:hover {
	background-image: url('assets/img/icono-lupa-verde.svg');
  }


/* INDEX */
/* Hero INDEX */
.hero-index{
	background-color: var(--color-principal-base);
	padding: 0;
	display: flex;
    align-items: stretch;
    width: 100%;
    position: relative;
	overflow: hidden;
}

.decorativos-grid-index{
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-template-rows: repeat(5, 1fr);
	aspect-ratio: 3 / 5;
	width: 100%;
	max-width: 474px; 
	height: 100%;
	margin: 0;
	max-height: 948px;
}

.celda-decorativa-index {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;

	opacity: 0;
	transform: scale(0.9);
	transition: opacity 0.6s ease, transform 0.6s ease;
}

.celda-decorativa-index.visible {
	opacity: 1;
	transform: scale(1);
}

.celda-decorativa-index svg {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: filter 0.3s;
}

.celda-decorativa-index path[fill="#058373"] {
    transition: fill 0.3s ease;
}

.celda-decorativa-index:hover path[fill="#058373"] {
    fill: var(--color-fondo-claro);
}


.container-hero-index{
	max-width: 900px;
	margin: auto;
	padding: 0px 50px;
	z-index: 2;
	position: relative;
	background-color: var(--color-principal-base);

}

.hero-index-titulo{
	font-family: var(--fuente-titulos);
	font-size: var(--tamano-titulo-h2);
	color: var(--color-neutro-blanco);
	line-height: 100%;
	text-transform: uppercase;
	font-weight: 300;
	margin-top: 0;
	margin-bottom: 28px;
}

.hero-index-titulo p, .hero-index-bajada p{
	margin: 0;
}

.hero-index-bajada{
	font-family: var(--fuente-texto);
	font-size: var(--tamano-p1);
	color: var(--color-neutro-blanco);
	line-height: 160%;
	margin-bottom: 28px;

}

/* INDEX Banner destacados */
.banner-slider {
	width: 100%;
	margin: 0 auto;
	position: relative;
  }
  
  .banner-slider img {
	width: 100%;
	height: auto;
	display: block;
  }

.swiper-button-next, .swiper-button-prev{
	display: none !important;
}

.swiper-pagination-bullet{
	width: 16px !important;
	height: 16px !important;
	background-color: var(--color-neutro-blanco) !important;
	opacity: 0.5 !important;
}

.swiper-pagination-bullet-active{
	background-color: var(--color-neutro-blanco) !important;
	opacity: 1 !important;
}

/* Seccion Carruseles INDEX */
.carruseles-index{
	margin: 112px 46px 0px;
	display: flex;
	flex-direction: column;
	gap: 110px;
}


/* PAGINA QUIENES SOMOS */
/* Hero Quienes somos */
.hero-quienes-somos {
    display: flex;
    align-items: center;
    color: var(--color-principal-oscuro);
	height: auto;
	position: relative;
	overflow: hidden;
}

.container-hero-quienes-somos {
    max-width: 900px;
    margin: auto;
    box-sizing: border-box;
	padding: 176px 50px 100px 100px;
}

.hero-quienes-somos-container-deco{
	overflow: hidden;
	height: 100%;
	position: absolute;
}

.hero-quienes-somos-container-deco img{
	display: block;
	width: auto;
	height: 100%;
	object-fit: cover;
	object-position: right center;
}


.hero-quienes-somos-titulo {
    font-family: 'Space Grotesk', sans-serif;
	font-size: var(--tamano-titulo-h2);
    color: var(--color-principal-oscuro);
	margin-top: 0;
    margin-bottom: 1rem;
	text-transform: uppercase;
	line-height: 100%;
}

.hero-quienes-somos-titulo p{
    margin: 0;
	margin-bottom: 32px;
}

.hero-quienes-somos-bajada p{
    font-family: 'Public Sans', sans-serif;
    font-size: var(--tamano-p1); /* 18px en rem */
    color: #232E35;
	max-width: 752px;
	margin: 0;
	margin-bottom: 32px;
}

/*  Mision Vision */
#mision-vision-section.bg-mision {
    background-color: #045D58;
}

#mision-vision-section.bg-vision {
    background-color: #BAF5ED;
}

#mision-vision-section {
	transition: background-color 0.5s ease;
  } 

#btn-mision.active,
#btn-vision.active {
    font-weight: bold;
}

.container-mision-vision {
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 149px;
    padding-right: 149px;
	height: 432px;
	align-content: center;
} 

.mision-vision-wrapper {
	display: flex;
	gap: 64px;
  }

  .tabs-vertical {
	display: flex;
	flex-direction: column;
	min-width: 215px;
	gap: 24px;
  }
  
  .tab-button {
	background: none;
	border: none;
	position: relative;
	cursor: pointer;
	text-align: right;
	font-weight: 300;
	line-height: normal;
	transition: font-weight 0.3s ease;
	font-family: 'Space Grotesk', sans-serif;
	font-size: var(--tamano-titulo-h2);
	text-transform: uppercase;
	padding: 0px;
  }

  .tab-button:after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	height: 2px; /* grosor de la línea */
	width: 0;
	background-color: currentColor; /* mismo color que el texto */
	transition: width 0.3s ease;
  }
  
  .tab-button:hover::after,
  .tab-button.active::after {
	width: 100%;
  }

  .tab-indicators {
	display: flex;
	flex-direction: column;
	gap: 10px;
	justify-content: center;
}

.tab-dot {
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background-color: var(--color-fondo-medio);
	box-shadow: 0 0 8px 4px rgba(0, 0, 0, 0.15);
	opacity: .5;
	transition: opacity .3s ease, background-color .3s ease;
	cursor: pointer;
}

.tab-dot.active {
	opacity: 1;
	background-color: var(--color-fondo-medio);
}
  
  .content {
	flex: 1; 
  }
  
  .tab-content {
    display: none;
    font-size: var(--tamano-p1); 
	font-family: 'Public Sans', sans-serif;
	font-weight: 400;
    transition: color 0.3s ease;
}
  
  .tab-content.active {
	display: block;
    font-size: var(--tamano-p1); 
  }  

  .bg-mision .tab-button {
	color: var(--color-fondo-claro);
  }

  .bg-vision .tab-button {
	color: var(--color-principal-base);
  }

.bg-mision .tab-content.active {
    color: var(--color-neutro-blanco);
}

.bg-vision .tab-button.active {
    color: var(--color-principal-base);
}

/*  Nuestros valores fundamentales */
section.valores{
	margin-top: 63px;
}
section.valores .container {
    max-width: 1440px;
    margin: 0 auto;
    padding-left: 150px;
    padding-right: 150px;
}

.valores-title p{
	margin: 0;
}

section.valores h2 {
    font-family: 'Space grotesk', sans-serif;
    font-size: var(--tamano-titulo-h3); 
    text-transform: uppercase;
    font-weight: 400;
    color: var(--color-principal-oscuro);
	margin-top: 0;
    margin-bottom: 48px;
	text-align: center;
	line-height: 100%;
}

.valores-grid {
    display: flex;
    gap: 24px;
}

.valor-item {
    flex: 1;
    display: flex;
    flex-direction: column;
    background-color: #fff;
}

.valor-item img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
}

/* Colores SVG */
.color-aqua {
	fill: #BAF5ED;
	transition: fill 0.3s ease;
  }
  
  .color-verde {
	fill: #045D58;
	transition: fill 0.3s ease;
  }
  
  .svg-wrapper:hover .color-aqua {
	fill: #045D58;
  }
  
  .svg-wrapper:hover .color-verde {
	fill: #BAF5ED;
  }

.valor-contenedor {
    padding: 24px 32px;
}

.valor-contenedor h3 {
	margin: 0;
    font-family: 'Public Sans', sans-serif;
    font-size: var(--tamano-h5); /* 27px */
    font-weight: 700;
    color: var(--color-principal-base);
    margin-bottom: 12px;
	line-height: 120%;
}

.valor-contenedor p {
    font-family: 'Public Sans', sans-serif;
    font-size: var(--tamano-p1); 
    font-weight: 400;
    color: var(--color-principal-base);
    margin: 0;
	line-height: 160%;
}
  
/*  Directorio */
#directorio-title {
	font-family: 'Space Grotesk', sans-serif;
	font-weight: 700;
	font-size: var(--tamano-titulo-h3); 
	text-transform: uppercase;
	text-align: center;
	margin-bottom: 40px; 
	color: var(--color-principal-oscuro); 
  }
  
  .equipo-grid {
	display: flex;
	justify-content: center;
	gap: 24px;
	flex-wrap: wrap;
	margin-top: 48px;
  }
  
  .miembro-directorio {
	background-color: var(--color-neutro-semiblanco);
	border-radius: 20px;
	padding: 24px;
	text-align: center;
	width: 267px;
  }
  
  .miembro-directorio img {
	width: auto;
	height: 160px;
	object-fit: cover;
	border-radius: 20px;
	margin-bottom: 16px;
	filter: grayscale(100%);
	transition: filter 0.3s ease;
  }
  
  .miembro-directorio:hover img {
	filter: grayscale(0%);
  }
  
  .miembro-directorio h3 {
	font-family: 'Public Sans', sans-serif;
	font-weight: 700;
	font-size: var(--tamano-h5);
	color: var(--color-principal-oscuro);
	margin-bottom: 0;
	margin-top: 0;
  }

  .miembro-directorio:hover h3 {
	color: var(--color-principal-base);
}
  
  .miembro-directorio .rol {
	font-family: 'Public Sans', sans-serif;
	font-weight: 400;
	font-size: var(--tamano-p2); 
	color: var(--color-principal-oscuro);
	margin-top: 0;
	margin-bottom: 8px;
  }

  .miembro-directorio:hover .rol {
	color: #058373;
}

.miembro-directorio h3,
.miembro-directorio .rol {
	transition: color 0.3s ease;
}
  
  .miembro-directorio .pais {
	font-family: 'Public Sans', sans-serif;
	font-weight: 400;
	font-size: var(--tamano-p3); /* 12px */
	color: #232E35;
	margin: 0;
  }

  .miembro-directorio .descripcion {
	font-family: 'Public Sans', sans-serif;
	color: #232E35;
	font-weight: 400;
	font-size: var(--tamano-p2);
	line-height: 1.4;
  }

.container {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 150px;
	width: 100%;
    box-sizing: border-box;
}

/* Equipo de trabajo */
.section-equipo-trabajo{
	margin-bottom: 42px;
	margin-top:85px;
}
#equipo-title {
	font-family: 'Space Grotesk', sans-serif;
	font-weight: 700;
	font-size: var(--tamano-titulo-h3); /* 46px */
	text-transform: uppercase;
	text-align: center;
	margin: 0;
  }
.equipo-grid {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 24px;
	margin-top: 48px;
  }
  
  .card-equipo {
	background-color: var(--color-neutro-semiblanco);
	border-radius: 20px;
	padding: 24px;
	text-align: center;
	width: 267px;
	box-sizing: border-box;
	position: relative;
	transition: height 0.3s ease;
	display: flex;
	flex-direction: column;
	transition: all 0.4s ease;
  }
  
  .card-equipo .img-perfil {
	width: 160px;
	height: auto;
	object-fit: cover;
	border-radius: 20px;
	filter: grayscale(100%);
	transition: filter 0.3s ease;
	margin-bottom: 16px;
	align-self: center;

  }
  
  .card-equipo:hover .img-perfil {
	filter: grayscale(0%);
  }
  
  .card-equipo h3 {
	font-family: 'Public Sans', sans-serif;
	font-weight: 700;
	font-size: var(--tamano-h5); 
	color: var(--color-principal-oscuro);
	margin-bottom: 0;
	margin-top: 0;
	line-height: 120%;
  }

  .card-equipo:hover h3 {
	color: var(--color-principal-base);
}
  
  .card-equipo .rol {
	font-family: 'Public Sans', sans-serif;
	font-weight: 400;
	font-size: var(--tamano-p2);
	color: var(--color-principal-oscuro);
	margin-top: 0;
	margin-bottom: 0px;
  }

  .card-equipo:hover .rol {
	color: #058373;
}

.card-equipo h3,
.card-equipo .rol {
	transition: color 0.3s ease;
}
  
  .card-equipo .pais {
	font-family: 'Public Sans', sans-serif;
	font-weight: 400;
	font-size: var(--tamano-p3); /* 12px */
	color: var(--color-principal-oscuro);
	margin-top: 8px;
	margin-bottom: 0px;
  }
  
  .descripcion {
	max-height: 0;
	opacity: 0;
	margin-top: 0;
	pointer-events: none;
	overflow: hidden;
	transition: max-height 0.5s ease, opacity 0.5s ease, margin-top 0.3s ease;
  }

  .descripcion-equipo{
	font-size: var(--tamano-p2);
	font-weight: 400;
	color: var(--color-principal-oscuro);
  }

  .articulo-equipo{
	  margin-top: 28.5px;
	  margin-bottom: 25.5px;
  }

  .btn-articulo{
	  font-size: var(--tamano-h6);
	  font-family: var(--fuente-texto);
	  font-weight: 700;
	  text-decoration: none;
	  color: var(--color-principal-oscuro);
	  transition: max-height 0.4s ease, margin-top 0.3s ease;
	  margin-top: 0;
	  }

  .btn-articulo:hover{
	color: var(--color-principal-claro);
}

  .toggle-btn {
	margin-top: auto;
	padding-top: 16px;
	align-self: center;
	background-color: transparent;
	border: none;
	font-size: var(--tamano-h5);
	cursor: pointer;
	font-weight: bold;
	color: var(--color-principal-oscuro);
  }

  .toggle-btn img{
	  width: 41px;
  }
  
  .card-equipo.expanded .descripcion {
	max-height: 1000px;
	opacity: 1;
	margin-top: 20px;
	pointer-events: auto;
  }

/* PAGINA QUE HACEMOS */
/* Hero Que hacemos */
.hero-que-hacemos {
	padding: 0px 150px;
  }
  
  .container-hero-que-hacemos {
	max-width: 1440px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	padding-top: 176px;
	padding-bottom: 100px;
  }
  
  .col-hero-titulo {
	flex: 1;
	max-width: 461px;
  }
  
  .col-hero-titulo h1 {
	font-family: var(--fuente-titulos);
	color: var(--color-principal-oscuro);
	font-size: var(--tamano-titulo-h2);
	line-height: 100%;
	margin: 0;
	font-weight: 400;
	text-transform: uppercase;
  }

  .hero-que-hacemos-title p{
	  margin: 0;
  }
  
  .col-hero-bajada {
	flex: 1;
  }
  
  .col-hero-bajada p {
	color: var(--color-principal-oscuro);
	font-size: var(--tamano-p1);
	line-height: 1.6;
	margin: 0;
  }
  
/* Introduccion Que hacemos */
  .container-introduccion-que-hacemos {
    display: flex;
    width: 100%; 
    margin: 0;
    padding: 0;
	box-sizing: border-box;
	background-color: var(--color-principal-oscuro);
	flex-direction: column;

  }

  .fila-svg, .fila-detalle {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	width: 100%;
}

  
.columna-svg {
	position: relative;
	width: 100%;
	aspect-ratio: 1 / 1; /* mantiene el cuadrado automáticamente */
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
}

.columna-svg svg {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.columna-detalle {
	background-color: var(--color-principal-oscuro);
	color: var(--color-neutro-blanco);
	border-right: 0.5px solid var(--color-neutro-blanco);
	padding: 32px 48px;
	text-align: left;
	font-family: "Public Sans", sans-serif;
	font-size: var(--tamano-p1);
	line-height: 160%;
  }

  .columna-detalle:last-child {
    border-right: none;
  }  
  
/* Areas de trabajo Que hacemos */
.svg-areas{
	position: absolute;
}

.areas {
	height: 850px;
	background-color: white;
	box-sizing: border-box;
	display: flex;
	align-items: stretch;
	max-width: 1440px;
	padding: 0 100px;
	margin: 0 auto 80px;
  }
  
  .areas-grid {
	display: flex;
	justify-content: center;
	flex-direction: row;
	flex-wrap: wrap;
	gap: 16px;
	width: 100%;
	padding-top: 67px;
	flex: 1;
	min-width: 0;
  }
  
  .area-title p {
	  margin: 0;
	  margin-top: auto;
}

.area-empty{
	width: 30%;
	height: 30%;
}
  
  .area-title {
	width: 30%;
	height: 30%;
	display: flex;
	align-items: center;
	padding-left: 24px;
	justify-content: left;
	background-color: var(--color-neutro-blanco);
	z-index: 2;
  }

  h2.area-title {
	font-family: 'Space Grotesk', sans-serif;
	font-size: var(--tamano-titulo-h2);
	color: var(--color-principal-oscuro);
	text-transform: uppercase;
	text-align: left;
	font-weight: 300;
	line-height: 100%;
	margin: 0;
  }
  
  .area-card {
	width: 30%;
	height: 30%;
	background-color: var(--color-fondo-claro);
	padding: 32px;
	border-radius: 20px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	box-sizing: border-box;
	min-width: 0;
	text-decoration: none;
  }
  
  .area-card h3 {
	margin: 0 0 16px;
	color: var(--color-principal-oscuro);
	font-size: var(--tamano-h5);
	font-family: var(--fuente-texto);
	font-weight: 400;
	line-height: 120%;
  }

  .area-card svg {
	align-self: flex-end;
}

.area-card,
.area-card h3,
.area-card svg rect,
.area-card svg path {
	transition: all 0.3s ease;
}

.area-card:hover {
	background-color: var(--color-principal-oscuro);
}

.area-card:hover h3 {
	color: var(--color-neutro-blanco);
}

.area-card:hover svg rect,
.area-card:hover svg path {
	stroke: var(--color-neutro-blanco);
}

	
/* Redes a las que pertenecemos Que hacemos */
.redes {
	background-color: var(--color-neutro-semiblanco);
	margin-top: 81px;
  }

  .redes-content{
	max-width: 1440px;
	padding: 64px 148px;
	margin: 0 auto;
	box-sizing: border-box;
  }
  
  h2.redes-titulo {
	font-family: 'Space Grotesk', sans-serif;
	font-size: var(--tamano-titulo-h3);
	text-transform: uppercase;
	color: var(--color-principal-oscuro);
	text-align: center;
	margin: 0;
	margin-bottom: 32px;
	font-weight: 300;
	line-height: 100%;
  }

  .redes-titulo p {
	margin: 0;
  }
  
  .redes-grid {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 48px;
	width: 100%;
	max-width: 1151px;
	margin: 0 auto;
  }
  
  .redes-grid img {
	max-width: 120px;
	max-height: 80px;
	object-fit: contain;
	filter: grayscale(100%);
  }
  

  


/* PAGINA RECURSOS */
/* Hero RECURSOS */
.hero-recursos{
	background-color: var(--color-principal-oscuro);
	padding: 176px 247px 100px 247px;
}

.container-hero-recursos{
	max-width: 946px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	gap: 32px;
}

.hero-recursos-titulo{
	font-family: var(--fuente-titulos);
	font-size: var(--tamano-titulo-h2);
	color: var(--color-neutro-blanco);
	line-height: 100%;
	text-transform: uppercase;
	font-weight: 300;
	margin-bottom: 8px;
}

h1.hero-recursos-titulo {
	margin-top: 0;
}

.hero-recursos-bajada{
	font-family: var(--fuente-texto);
	font-size: var(--tamano-p1);
	color: var(--color-neutro-blanco);
	line-height: 160%;
	max-width: 754px;
}

.hero-recursos-titulo p, .hero-recursos-bajada p{
	margin: 0;
}

.hero-recursos-guarda {
	background-image: url('assets/img/guarda-recursos.svg');
	background-repeat: repeat-x;
	background-size: auto 100%;
	background-position: center;
	width: 100%;
	height: 144px; 
  }

/* Filtro RECURSOS */
.barra-filtro-mobile{
	display: none;
	position: sticky;
	top: 64px;
	background-color: var(--color-neutro-semiblanco);
	box-shadow: 0 2px 10px rgba(0,0,0,0.2);
	padding: 12px;
}

/* Botón flotante visible solo en mobile */
.filtro-toggle-mobile {
	display: none;
	background-color: transparent;
	color: var(--color-principal-oscuro);
	border: none;
	border-right: 1px solid var(--color-neutro-gris-claro);
	padding: 12px 20px 12px 0;
	font-size: 16px;
	display: flex;
	align-items: center;
	gap: 8px;
	cursor: pointer;
	font-family: var(--fuente-texto);
	font-size: var(--tamano-p1);
  }
  
  .icono-filtro {
	width: 24px;
	height: 24px;
  }
  
  /* PANEL DESPLEGABLE MOBILE */
  /* Overlay oculto por defecto */
	.filtro-overlay-mobile {
		display: none;
		position: fixed;
		inset: 0;
		background-color: rgba(0, 0, 0, 0.3); /* oscurecimiento */
		backdrop-filter: blur(4px);           /* desenfoque */
		-webkit-backdrop-filter: blur(4px);   /* Safari */
		z-index: 7999;
		transition: opacity 0.3s ease;
		opacity: 0;
		pointer-events: none;
	}

	/* Mostramos el overlay cuando se abre el panel */
	.filtro-overlay-mobile.activo {
		display: block;
		opacity: 1;
		pointer-events: auto;
	}

  /* Panel mobile */
  .bloquear-scroll {
	position: fixed;
	overflow: hidden;
	width: 100%;
	left: 0;
	right: 0;
  }

  .filtro-panel-mobile {
	display: none;
	position: fixed;
	left: 0;
	top: -100%;
	width: 100%;
	height: 85dvh;
	background-color: var(--color-neutro-semiblanco);
	z-index: 8000;
	transition: top 0.4s ease;
	box-shadow: 0 -2px 10px rgba(0,0,0,0.2);
	overflow-y: auto;
	padding: 0px 16px;
	border-bottom-left-radius: 20px;
	border-bottom-right-radius: 20px;
  }
  
  .filtro-panel-mobile.abierto {
	top: 64px;
	}
  
  .filtro-panel-inner {
	position: relative;
	width: 100%;
	z-index: 9000;
  }

  .filtro-panel-inner .filtro-superior{
	  margin: 32px 0;
	  display: flex;
	  flex-direction: column;
	  gap: 32px;
  }

  .filtro-panel-inner .filtro-superior .filtro-lupa{
	order: 1;
	}

	.filtro-panel-inner .filtro-superior .filtro-lupa .search-filter-field__input{
		height: 60px;
		}



  .filtro-panel-inner .filtro-superior .filtro-recursos-desplegables{
	  flex-direction: column;
	  border: none;
	  order: 2;
	  gap: 24px;
  }



  .filtro-panel-inner .filtro-superior .filtro-recursos-desplegables .filtro-item{
	border-right: none;
	border-bottom: 1px solid var(--color-neutro-gris-medio);
}

.filtro-panel-inner .filtro-superior .filtro-recursos-desplegables .filtro-item .search-filter-label{
	transition: background-color 0.3s ease, color 0.3s ease;
	justify-content: space-between;
}

.filtro-panel-inner .filtro-superior .filtro-recursos-desplegables .filtro-item .search-filter-label[aria-expanded="true"] {
	background-color: var(--color-principal-base);
	color: var(--color-neutro-blanco);
	padding: 0px 16px;
}

.filtro-panel-inner .filtro-superior .filtro-recursos-desplegables .filtro-item .search-filter-label[aria-expanded="true"] .search-filter-icon__svg {
	fill: var(--color-neutro-blanco);
}

	.filtro-panel-inner .filtro-superior .filtro-recursos-desplegables .filtro-item .search-filter-input-group{
		width: 100% !important;
		position: relative;
		top: 0;
		border: none;
		border-radius: 0;
		background-color: var(--color-neutro-gris-claro);
	}

	.filtro-panel-inner .filtro-superior .filtro-recursos-desplegables .filtro-item .search-filter-input-group .search-filter-input-checkbox{
		width: auto;
		padding: 12px;
	}




.filtro-panel-inner .filtro-superior .filtro-buscar{
	order: 3;
	position: sticky;
	bottom: 0;
	z-index: 10;
	background-color: var(--color-neutro-semiblanco);
	}

	.filtro-panel-inner .filtro-superior .filtro-buscar .boton-buscar .search-filter-input-button{
		width: 100%;
		height: 60px;
		margin: 10px 0;
		}
  
  /* BOTÓN DE CIERRE */
  .cerrar-filtro-mobile {
	font-size: 24px;
	border: none;
	cursor: pointer;
	position: sticky;
	width: 100%;
	background-color: var(--color-neutro-semiblanco);
	text-align: right;
	top: 0;
	z-index: 9;
  }

/* Filtro visible en desktop */
.encabezado-filtro{
	background-color: var(--color-neutro-semiblanco);
	display: flex;
	padding: 24px 100px;
}
.filtro-recursos{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
    width: 100%;
	margin: auto;
	gap: 8px;
}

.filtro-superior{
	display: flex;
	flex-direction: row;
	gap: 8px;
	width: 100%;
}

.filtro-recursos-desplegables{
	display: flex;
	width: 100%;
    justify-content: space-around;
	border: 1px solid;
	border-radius: 100px;
}

.filtro-item:not(:last-child) {
	border-right: 1px solid var(--color-neutro-gris-medio);
  }

.filtro-item{
	width: 100%;
	display: flex;
}

.search-filter-field {
	position: relative;
	width: 100%;
}

.search-filter-input-group{
	position: absolute;
	top: 40px;
	z-index: 3;
	background-color: var(--color-neutro-semiblanco);
	border-radius: 12px;
	padding: 16px;
	width: 300px !important;
	max-width: none !important;
	border: 1px solid;
}

.search-filter-field{
	margin: auto !important;
	width: 100%;
}

.search-filter-label{
	justify-content: center;
	margin: 0px !important;
	height: 40px;
	gap: 8px;
}

.search-filter-input-checkbox{
	width: 300px;
	max-width: 100%;
}

.search-filter-input-checkbox div[role=group]{
	margin-left: 0px;
	margin-top: 0px;
}
  
.search-filter-input-checkbox *{
	font-size: var(--tamano-p2);
}

/*Checkbox color cuadrado*/
.search-filter-input-checkbox__control svg {
	fill: var(--color-principal-oscuro);
  }

  .search-filter-input-checkbox__container:hover .search-filter-input-checkbox__control svg {
	fill: var(--color-principal-claro); /* Color al hacer hover */
  }
  
  .search-filter-input-checkbox__input:checked + .search-filter-input-checkbox__container .search-filter-input-checkbox__control svg {
	fill: var(--color-principal-claro); /* Color al estar seleccionado */
  }

  /*Filtro lupa*/

.filtro-lupa .search-filter-field__input, .filtro-ordenar .search-filter-field__input{
	border-radius: 100px;
	background-color: transparent;
	border: 1px solid var(--color-principal-oscuro);
}

.search-filter-input-text__input::placeholder{
	color: var(--color-principal-oscuro) !important;
}

.search-filter-input-button.search-filter-field__input{
	border-radius: 100px;
	border: none !important;
	background-color: var(--color-principal-oscuro);
	color: var(--color-neutro-blanco);
	transition: all 0.3s ease;
}

.search-filter-input-button.search-filter-field__input:hover{
	background-color: var(--color-principal-claro) !important;
	color: var(--color-neutro-blanco) !important;
	border: none !important;
}

.search-filter-input-button.search-filter-field__input:active{
	border: none !important;
}

.search-filter-input-button.search-filter-field__input:focus{
	border: none !important;
	box-shadow: none !important;
}

.boton-buscar .search-filter-input-button{
	font-weight: 700;
}

  /* Chips externos */
  .resultados-filtro{
	padding: 24px 100px 0px 100px;
	max-width: 1440px;
	margin: auto;
  }

  #filtros-aplicados-texto{
	font-size: var(--tamano-p1);
	font-weight: 700;
  }

  .contador-resultados p{
	  font-size: var(--tamano-h5);
	  font-weight: 700;
	  margin: 0px;
  }


  .chips-externos {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 16px;
	max-width: 1137px;
	margin: 8px 0;
  }
  
  .chips-externos .search-filter-component-combobox__selection-item {
	display: flex;
	font-family: var(--fuente-texto);
	background-color: transparent;
	color: var(--color-principal-oscuro);
    border: 1px solid var(--color-neutro-gris-medio);
	border-radius: 100px;
	padding: 4px 12px;
	font-size: var(--tamano-p2);
  }

  #chips-externos .search-filter-component-combobox__selection-remove {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0; 
	margin-left: 8px; 
	width: auto;
	height: auto;
  }

  #chips-externos .search-filter-icon__svg {
	width: 16px;
	height: 16px;
	flex-shrink: 0;
	fill: var(--color-principal-oscuro);
	height: 20px;
  }

  #chips-externos .search-filter-component-combobox__selection-remove {
	cursor: pointer;
  }
  
  .boton-limpiar .search-filter-input-button {
	background-color: var(--color-principal-oscuro);
	color: var(--color-neutro-blanco);
	padding: 4px 12px;
	border-radius: 100px;
	font-size: var(--tamano-p2);
	cursor: pointer;
	transition: all 0.2s ease;
}

	.boton-limpiar .search-filter-input-button:hover {
		background-color: var(--color-principal-claro) !important;
		color: var(--color-neutro-blanco) !important;
		border-color: transparent !important;
	}

	.barra-superior-filtros {
		display: flex;
		justify-content: space-between;
		align-items: center;
		flex-wrap: wrap; 
		gap: 16px;
		margin-top: 16px;
	}

	/*Filtro Ordenar por*/
	.search-filter-component-combobox__actions-input::placeholder{
		color: var(--color-principal-oscuro) !important;
		padding-left: 16px;
	}

	.search-filter-component-combobox__listbox-toggle::before,
	.search-filter-component-combobox__listbox-toggle::after {
		display: none !important;
		content: none !important;
	}

	.search-filter-component-popup{
		border-radius: 12px;
		border: 1px solid;
	}

	.search-filter-component-combobox-base__listbox-option{
		padding-left: 16px;
	}

	.search-filter-component-combobox-base__listbox-option:focus,
	.search-filter-component-combobox-base__listbox-option[aria-selected="true"] {
  		background-color: var(--color-principal-claro); 
 		color: var(--color-neutro-blanco); 
  		outline: none; 
}
  


/* PAGINA NOTICIAS */
/* Hero NOTICIAS */
.hero-noticias{
	background-color: var(--color-fondo-medio);
	padding: 176px 247px 100px 247px;
}

.container-hero-noticias{
	max-width: 946px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	gap: 32px;
}

.hero-noticias-titulo{
	font-family: var(--fuente-titulos);
	font-size: var(--tamano-titulo-h2);
	color: var(--color-principal-oscuro);
	line-height: 100%;
	text-transform: uppercase;
	font-weight: 300;
	margin-top: 0;
	margin-bottom: 8px;
}

.hero-noticias-titulo p{
	margin: 0;
}

.hero-noticias-bajada{
	font-family: var(--fuente-texto);
	font-size: var(--tamano-p1);
	color: var(--color-principal-oscuro);
	line-height: 160%;
}

.hero-noticias-bajada p{
	margin: 0;
}

.hero-noticias-guarda {
	background-image: url('assets/img/guarda-noticias.svg');
	background-repeat: repeat-x;
	background-size: auto 100%;
	background-position: center;
	width: 100%;
	height: 144px; 
  }

/* Filtro Noticias Botones */
.search-filter-input-button-group{
	justify-content: center;
	gap: 24px;
}
.search-filter-input-button-group .search-filter-input-button {
	height: 40px;
	padding: 16px 24px;
	border-radius: 100px;
	border: 2px solid var(--color-principal-oscuro); 
	font-size: var(--tamano-h6); 
	font-weight: 700;
	background-color: transparent;
	color: var(--color-principal-oscuro);
	cursor: pointer;
	margin-right: 0;
	justify-content: center;
	transition: all 0.3s ease;
  }
  
  .search-filter-input-button-group .search-filter-input-button:hover {
	color: var(--color-principal-base) !important;
	border-color: var(--color-principal-base) !important;
	background-color: transparent !important;
  }
  
  .search-filter-input-button--is-selected, .search-filter-input-button:active {
	background-color: var(--color-principal-oscuro) !important;
	color: var(--color-neutro-blanco) !important; 
	border-color: var(--color-principal-oscuro) !important;
  }

	
/* PAGINA TRANSPARENCIA */
/* Hero Transparencia */
.hero-transparencia{
	display: flex;
	align-items: center;
	color: var(--color-principal-oscuro);
	height: auto;
	position: relative;
	overflow: hidden;
}

.hero-transparencia-container-deco {
	height: 100%;
	width: 257px;
	position: absolute;
	overflow: hidden;
  }
  
  .hero-transparencia-container-deco img {
	display: block;
	width: auto;
	height: 600px;
	object-fit: cover;
	object-position: right center;
  }

.container-hero-transparencia{
	max-width: 900px;
	margin: auto;
	padding: 176px 50px 100px 100px;
}



.hero-transparencia-titulo{
	font-family: var(--fuente-titulos);
	font-size: var(--tamano-titulo-h2);
	color: var(--color-principal-oscuro);
	line-height: 100%;
	text-transform: uppercase;
	font-weight: 400;
	margin-top: 0;
	margin-bottom: 32px;
}

.hero-transparencia-titulo p{
	margin: 0;
}

.hero-transparencia-bajada{
	font-family: var(--fuente-texto);
	font-size: var(--tamano-p1);
	color: var(--color-principal-oscuro);
	line-height: 160%;
}
/* Logos - Apoyan nuestro trabajo */
.apoyo{
	background-color: var(--color-neutro-semiblanco);
	padding: 100px 144px;
}

.apoyo-content{
	justify-content: center;
}

.logo-apoyo-titulo{
	font-family: var(--fuente-titulos);
	font-size: var(--tamano-titulo-h3);
	color: var(--color-principal-oscuro);
	font-weight: 400;
	text-align: center;
	margin: 0;
	margin-bottom: 32px;
	text-transform: uppercase;
	line-height: 100%;
}

.logo-apoyo-titulo p{
	margin: 0;
}
/* Reportes */
.reportes{
	padding: 112px 150px 64px 150px;
}

.reportes-content{
	max-width: 1140px;
	margin: 0 auto;
}

.reportes-titulo{
	font-family: var(--fuente-titulos);
	font-size: var(--tamano-titulo-h3);
	font-weight: 400;
	color: var(--color-principal-oscuro);
	text-transform: uppercase;
	text-align: center;
	margin: 0;
	margin-bottom: 48px;
}

.reportes-titulo p{
	margin: 0;
}

.grid-reportes {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(267px, 1fr));
	gap: 23px;
	justify-content: center;
	margin-top: 48px;
	margin-bottom: 32px;
}

.card-reporte {
	min-width: 267px;
	height: 192px;
	background-color: var(--color-neutro-semiblanco);
	border-radius: 16px;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
	padding: 24px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	transition: transform 0.3s ease, box-shadow 0.3s ease, color 0.3s ease;
}

.card-reporte:hover {
	background-color: var(--color-principal-base);
	transform: translateY(-4px);
	box-shadow: 0 6px 16px rgba(0, 0, 0, 0.1);
}

.card-reporte h3 {
	font-family: var(--fuente-titulos);
	font-size: var(--tamano-titulo-h2);
	color: var(--color-principal-base);
	margin: 0;
	transition: color 0.3s ease;
}

.card-reporte:hover h3{
	color: var(--color-neutro-blanco);
}

.card-reporte svg{
	align-self: flex-end;
}

.card-reporte:hover svg rect, .card-reporte:hover svg path {
    stroke: var(--color-neutro-blanco);
}

.btn-wrapper{
	display: flex;
	justify-content: center;
	align-items: center;
}

.boton-path,
#cargar-mas-reportes {
  cursor: pointer;
}

.card-reporte-link {
	display: flex;
	flex-direction: column;
	width: 100%;
	height: 100%;
	text-decoration: none;
	color: inherit;
	justify-content: space-between;
  }
  

/* Call to Action Transparencia */
.cta-transparencia{
	padding: 64px 148px 64px 148px;
}

.container-cta-transparencia{
	max-width: 1140px;
	display: flex;
	gap: 24px;
	margin: 0 auto;
}

.cta-box{
	background-color: var(--color-principal-base);
	border-radius: 20px;
	padding: 68px 60px;
	display: flex;
	flex-direction: column;
}

.cta-titulo{
	font-family: var(--fuente-titulos);
	color: var(--color-neutro-blanco);
	font-size: var(--tamano-titulo-h3);
	font-weight: 400;
	text-transform: uppercase;
	line-height: 100%;
	margin-top: 0;
	margin-bottom: 24px;
}

.cta-titulo p,
.cta-texto p{
	margin: 0;
}

.cta-texto{
	font-family: var(--fuente-texto);
	font-size: var(--tamano-p1);
	color: var(--color-neutro-blanco);
	line-height: 160%;
	margin: 0;
	font-weight: 400;
	margin-bottom: 24px;
}

.cta-box .boton-path-blanco {
	margin-top: auto;
	margin-left: auto;
  }


/* PAGINA CONTACTO */
/* Hero Contacto */
.hero-contacto{
	display: flex;
	position: relative;
}

.hero-contacto-container-deco{
	height: 100%;
	width: 200px;
    position: absolute;
	overflow: hidden;
}

.hero-contacto-container-deco img{
	display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: right center;
}

.container-hero-contacto{
	padding: 176px 0px 100px 221px;
	max-width: 1217px;
	margin: 0 auto;
}

.hero-contacto-titulo{
	font-family: var(--fuente-titulos);
	font-size: var(--tamano-titulo-h2);
	color: var(--color-principal-oscuro);
	font-weight: 400;
	text-transform: uppercase;
	margin: 0;
	margin-bottom: 32px;
	line-height: 100%;
}

.hero-contacto-titulo p{
	margin: 0;
}

.hero-contacto-bajada{
	font-family: var(--fuente-texto);
	font-size: var(--tamano-p1);
	color: var(--color-principal-oscuro);
	font-weight: 400;
	margin: 0;
	margin-bottom: 32px;
}

.hero-contacto-bajada p{
	margin: 0;
}

.hero-contacto-cards{
	display: flex;
	gap: 26px;
}

.hero-contacto-card{
	background-color: var(--color-principal-claro);
	padding: 48px;
	border-radius: 20px;
	color: var(--color-neutro-blanco);
}

.hero-contacto-card-1{
	width: 40%;
}
.hero-contacto-card-2{
	width: 60%;
}

.card-contacto-titulo, .card-contacto-bajada, .card-contacto-bajada p {
	margin: 0;
}

.card-contacto-titulo{
	margin-bottom: 10px;
}

.card-contacto-bajada a{
	color: var(--color-neutro-blanco);
	text-decoration: none;
	font-weight: 700;
	transition: color 0.3 ease;
}

.card-contacto-bajada a:hover{
	color: var(--color-fondo-medio);
}



/* Formulario de contacto */
.formulario-contacto{
	background-color: var(--color-principal-oscuro);
	padding: 97px 153px 110px 247px;
	margin-top: -160px;
}

.container-formulario-contacto{
	max-width: 946px;
	margin-right: 94px;
	padding: 48px;
	background-color: var(--color-neutro-blanco);
	border-radius: 20px;
	margin: 0 auto;

}

.encabezado-formulario-contacto{
	max-width: 946px;
	color: var(--color-neutro-blanco);
	font-weight: 700;
	font-size: var(--tamano-h6);
	padding-bottom: 32px;
	margin: 0 auto;
}

.form-group label, legend{
	font-family: var(--fuente-texto);
	font-size: var(--tamano-p1);
	color: var(--color-principal-claro);
	font-weight: 700;
}

fieldset{
	border: none;
	padding: 0;
}

.checkbox-custom {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	margin: 0;
	padding: 0;
}

.wpcf7-list-item-label{
	font-family: var(--fuente-texto);
	font-size: var(--tamano-p2);
	color: var(--color-principal-oscuro);
	font-weight: 400;
}

.wpcf7-list-item {
    margin: 0;
}

/* Ocultamos el checkbox nativo */
.checkbox-custom input[type="checkbox"] {
	appearance: none;
	-webkit-appearance: none;
	background-color: white;
	border: 1px solid var(--color-principal-oscuro);
	width: 14px;
	height: 14px;
	border-radius: 2px;
	margin-right: 4px;
	position: relative;
	transition: background-color 0.2s, border-color 0.2s;
  }

.checkbox-custom input[type="checkbox"]:checked {
	background-color:var(--color-fondo-medio);
	border-color: var(--color-principal-oscuro);
  }

.checkbox-custom input[type="checkbox"]::after {
	content: "";
	position: absolute;
	top: 2px; 
	left: 4px; 
	width: 4px; 
	height: 8px;
	border: solid var(--color-principal-oscuro);
	border-width: 0 2px 2px 0;
	transform: rotate(45deg);
	opacity: 0;
	transition: opacity 0.2s;
  }
  
  .checkbox-custom input[type="checkbox"]:checked::after {
	opacity: 1;
  }

.input-custom{
	width: 100%;
	border: none;
	border-bottom: 1px solid var(--color-principal-oscuro);
	padding: 17px 16px;
	transition: border-color 0.3s ease;
}

.input-custom::placeholder{
	font-family: var(--fuente-texto);
	font-size: var(--tamano-p3);
	color: var(--color-principal-oscuro);
}

.input-custom:focus::placeholder {
	color: transparent;
  }

.input-custom:focus {
	border-bottom: 2px solid var(--color-fondo-medio);
	outline: none;
  }

.form-legales{
	font-family: var(--fuente-texto);
	font-size: var(--tamano-p3);
	color: var(--color-neutro-gris-medio);
}

.form-group-boton > p {
	display: flex;
	align-items: center;
	gap: 16px;
	flex-wrap: wrap;
	justify-content: end;
  }

  .form-group-boton .wpcf7-spinner{
	  order: 1;
  }
  
  .form-group-boton .wpcf7-form-control-wrap {
	order: 2;
  }
  
  .form-group-boton .wpcf7-submit {
	order: 3;
  }

  span[data-name="hcap-cf7"]~input[type="submit"], span[data-name="hcap-cf7"]~button[type="submit"]{
	  margin-top: 0 !important;
  }
 

.form-group-boton {
	display: flex;
	justify-content: end;
}

.form-group-boton .boton-filled{
	cursor: pointer;
}


.wpcf7-response-output{
	font-family: var(--fuente-texto);
	font-size: var(--tamano-p3);
	font-weight: 400;
	transition: all 0.3s ease-in-out;
}

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.failed .wpcf7-response-output{
	font-family: var(--fuente-texto);
	font-size: var(--tamano-p3);
	font-weight: 400;
	color: #EB6F9C;
	border: 0;
	margin: 0;
	padding: 0;
	transition: all 0.3s ease-in-out;
}

.wpcf7-validation-errors, .wpcf7-not-valid-tip{
	font-family: var(--fuente-texto);
	font-size: var(--tamano-p3);
	font-weight: 400;
	color: #EB6F9C;
	margin-top: 4px;
	text-align: right;
	margin: 0;
	padding: 0;
	transition: all 0.3s ease-in-out;
}

.wpcf7-mail-sent-ok{
	font-family: var(--fuente-texto);
	font-size: var(--tamano-p3);
	font-weight: 400;
	color: var(--color-principal-claro);
	margin-top: 4px;
	text-align: right;
	margin: 0;
	padding: 0;
	transition: all 0.3s ease-in-out;
}

.input-custom.wpcf7-not-valid {
	border-bottom: 2px solid #EB6F9C;
  }

  
  


/* ENTRADA GENERAL */
/* Header entrada general */

.entrada-wrapper {
    background-color: #F5F5F5;
}

.decorativos-grid {
	background: var(--color-principal-base);
    display: grid;
    grid-template-columns: repeat(8, 1fr);
    width: 100%;
    gap: 0;
	position: absolute;
	top: 0;
	left: 0;
}

.celda-decorativa img {
	opacity: 0;
	transition: opacity 0.4s ease, transform 0.4s ease;
  }
  
  .celda-decorativa img.visible {
	opacity: 1;
  }
  
.fade-out {
	opacity: 0;
	transition: opacity 0.2s ease;
  }
  
  .fade-in {
	opacity: 1;
	transition: opacity 0.2s ease;
  }

.celda-decorativa {
    aspect-ratio: 1 / 1;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;

}

.celda-decorativa img {
    max-width: 100%;
    height: 100%;
	object-fit: cover;
}


/* Contenido Entrada general */
/* Caja blanca con contenido */
.entrada-contenedor {
    max-width: 914px;
    margin: 0 auto;
	margin-top: 180px;
	margin-bottom: 64px;
    background: #ffffff;
    border-radius: 20px;
    padding: 80px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.05);
	z-index: 3;
	position: relative;
}

/* Contenido */
.entrada-header {
    margin-bottom: 40px;
}

.entrada-meta {
	display: flex;
	justify-content: space-between;
	font-size: 14px;
	color: var(--color-neutro-gris-medio);
	margin-bottom: 16px;
  }
  
  .entrada-tipo {
	background-color: var(--color-principal-oscuro);
	padding: 4px 8px;
	border-radius: 4px;
	font-style: italic;
	text-transform: uppercase;
	color: var(--color-neutro-semiblanco);
	text-decoration: none;
	font-size: var(--tamano-p3);
	transition: background-color 0.3s ease;
  }

  .entrada-tipo a{
	font-style: italic;
	text-transform: uppercase;
	color: var(--color-neutro-semiblanco);
	text-decoration: none;
	font-size: var(--tamano-p3);
	transition: color 0.3s ease;
  }

  .entrada-tipo:hover{
	  background-color: var(--color-principal-base);
  }

  .entrada-tipo:hover a{
	  color: var(--color-neutro-blanco);
  }

  .contenedor-etiquetas-idioma{
    display: flex;
    gap: 24px;
    justify-content: space-between;
  }

  .language-switcher.entrada{
	  display: flex;
	  align-content: center;
	  gap: 12px;
  }

  .language-switcher.entrada p{
	margin: 0;
	width: max-content;
}

  .lang-dropdown.entrada{
	top: 30px;
	border: 2px solid var(--color-principal-claro);
}


  .entrada-etiquetas {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 24px;
  }
  
  .entrada-autor {
	font-size: 16px;
	color: var(--color-principal-oscuro);
	margin-bottom: 32px;
  }
  
  .entrada-idiomas {
	margin-bottom: 24px;
	font-size: 14px;
  }
  
  .entrada-idiomas a.idioma {
	margin-left: 8px;
	color: var(--color-principal-base);
	text-decoration: underline;
  }
  

  .entrada-titulo {
    font-size: clamp(2rem, 1.8vw + 1rem, 3rem);
    font-weight: 700;
	line-height: 120%;
    color: var(--color-principal-base);
	margin-bottom: 16px;
  }

  .entrada-extracto{
	  font-size: 1.25rem;
	  color: var(--color-principal-base);
	  margin-bottom: 48px;
	  font-size: clamp(1rem, 2vw, 1.25rem);
  }

  .entrada-extracto p{
	margin: 0;
}

  .entrada-imagen img{
	width: 100%;
	border-radius: 20px;
	height: auto;
  }



/* Recomendadas Entrada general */
.entrada-recomendadas{
	background-color: var(--color-fondo-medio);
	position: relative;
	z-index: 2;
	padding: 64px 30px 62px 30px;
}


/* PAGINA RESULTADO DE BUSQUEDA */
.search-heading {
	height: 291px;
	background-color: var(--color-principal-base);
	color: var(--color-neutro-blanco);
	font-size: var(--tamano-titulo-h3);
	font-family: var(--fuente-titulos);
	font-weight: 400;
	text-transform: uppercase;
	padding: 186px 150px 59px 150px;
	margin: 0;
}

.search-query {
	font-weight: 700;
}

.card-grid-busqueda{
	max-width: 1240px;
	margin: 65px auto;
	}

	
/* CARDS GENERICAS */

.card {
	width: 100%;
	background-color: var(--color-neutro-semiblanco);
	padding: 24px;
	border-radius: 8px;
	box-shadow: 0 2px 4px rgba(0,0,0,0.1);
	break-inside: avoid;
	margin-bottom: 24px;
}

.card-meta{
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-bottom: 8px;
}

.card-cpt {
	font-size: 12px;
	font-style: italic;
	color: var(--color-principal-base);
	text-transform: uppercase;
}
  
.card-date {
	font-size: 12px;
	color: var(--color-neutro-gris-medio);
	text-transform: uppercase;
	font-style: italic;
	margin-left: auto;
	display: inline-flex;
	align-items: center;
	gap: 16px;
}

.sticky-icon {
	width: 18px;
	height: 18px;
	flex-shrink: 0;
}
  
.card-image{
	  display: flex;
}

.card-image img {
	width: 100%;
	height: 190px;
	object-fit: cover;
	border-radius: 10px;
	display: block;
	margin: 0 auto;
}

.card-tags {
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
	margin-bottom: 8px;
}
  
  .card-content {
	display: flex;
	flex-direction: column;
	height: 100%;
  }


/* CARDS ENTRADAS */
.card-entrada {
	scroll-snap-align: start;
	background: var(--color-neutro-semiblanco);
	border-radius: 12px;
	width: calc((100% / 3) - 16px);
			padding: 16px;
	box-sizing: border-box;
	margin-bottom: 24px;
	display: block;
	overflow: hidden;
	text-decoration: none;
	transition: box-shadow 0.3s ease;
}

.card-recomendada{
	min-width: 363px;
}

.card-entrada:hover {
	box-shadow: 0 12px 24px rgba(0, 0, 0, 0.15);
}

.card-entrada-content {
	height: 100%;
	display: flex;
    flex-direction: column;
}

.card-entrada-meta {
	display: flex;
	justify-content: space-between;
	margin-bottom: 16px;
}

.card-entrada-image {
	width: 100%;
	max-height: 190px;
	border-radius: 20px;
	overflow: hidden;
	margin-bottom: 24px;
	transition: transform 0.3s ease;
}

.card-entrada-image img {
	width: 100%;
	height: auto;
	border-radius: 20px;
	transition: transform 0.3s ease;
}

.card-entrada:hover .card-entrada-image img {
	transform: scale(1.05);
}

.card-bottom {
	margin: 0 9px;
	display: flex;
	flex-flow: column;
	height: 50%;
}

.card-title {
	font-size: var(--tamano-h5);
	font-weight: bold;
	margin: 16px 0;
	color: var(--color-principal-oscuro);
	line-height: 120%;
	margin-top: 0;
	transition: color 0.3s ease, transform 0.3s ease;
}

.card-title a{
	text-decoration: none;
	transition: color 0.3s ease, transform 0.3s ease;

}

.card-entrada:hover .card-title {
	transform: translateY(-2px);
}

.card-entrada:hover .card-title a {
	color: var(--color-principal-base);
}

.card-entrada-tags {
	display: flex;
	gap: 8px;
	flex-flow: wrap;
}

.card-tag {
	border: 1px solid var(--color-principal-oscuro);
	border-radius: 100px;
	padding: 8px 12px;
	font-size: var(--tamano-p2);
	text-decoration: none;
	transition: all 0.3s ease;
	align-content: center;
	line-height: 120%;
}

.card-tag:hover {
	border: 1px solid var(--color-principal-claro);
}

.card-tag:hover a {
	color: var(--color-principal-claro);
}


.card-excerpt {
	font-size: 16px;
	line-height: 140%;
	font-family: "Public Sans", sans-serif;
	color: var(--color-principal-oscuro);
	margin-bottom: 12px;

	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;

	opacity: 0;
	visibility: hidden;
	transition: opacity 0.4s ease, visibility 0.4s ease;
}

.card-button {
	margin-left: auto;
	margin-top: auto;
	color: var(--color-principal-oscuro);
	text-decoration: none;
	font-family: "Public Sans", sans-serif;
	font-weight: 700;
	font-size: 21px;
	padding-bottom: 12.5px;
	padding-top: 12.5px;
	margin-right: 9px;

	transition: color 0.3s ease, opacity 0.4s ease, visibility 0.4s ease;
}

.card-button:hover {
	color: var(--color-principal-claro);
}

/* Hover: contenido visible, sin cambiar altura */
.card-entrada:hover .card-excerpt {
	opacity: 1;
	visibility: visible;
}
  
  
/* PAGINACION */
  .pagination {
	display: flex;
	justify-content: center;
	margin-top: 40px;
  }
  
  .pagination ul {
	display: flex;
	list-style: none;
	padding: 0;
	gap: 8px;
  }

  .pagination a .screen-reader-text,
.pagination a span[aria-hidden="true"] {
	display: none !important;
}

  
  .pagination li a,
  .pagination li span {
	font-family: var(--fuente-texto);
	font-size: var(--tamano-h6);
	font-weight: 700;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 100px;
	background-color: transparent;
	color: var(--color-principal-oscuro);
	text-decoration: none;
	min-width: 57px;
	height: 57px;
	border: 2px solid var(--color-principal-oscuro);
	transition: all 0.3s ease;
  }
  
  .pagination li a:hover {
	color: var(--color-principal-claro);
	border: 2px solid var(--color-principal-claro);
  }

  .pagination li a:hover .arrow-svg {
	color: var(--color-principal-claro);
  }

  .pagination li a:hover .arrow-svg path{
	stroke: var(--color-principal-claro);
  }
  
  .pagination li .current {
	background-color: var(--color-principal-oscuro);
	color: white;
	font-weight: bold;
  }
  
  .pagination li .sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
  }

  .arrow-svg {
	width: 35px;
	height: 36px;
	display: block;
}

.pagination-arrow {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}

.page-numbers .prev svg {
	transform: rotate(180deg); /* Apunta a la izquierda */
}

.pagination-next svg {
	transform: none;
}

.pagination li a::before,
.pagination li span::before {
	content: none !important;
}

.visually-hidden {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
}

/* NO RESULTS */
.no-results-contenedor{
	height: 247px;
	display: flex;
	width: 100%;
}

.no-results-contenedor p{
	font-family: var(--fuente-texto);
	font-size: var(--tamano-h5);
	font-weight: 700;
	color: var(--color-neutro-gris-medio);
	text-align: center;
	margin: auto;
}

/* ERROR 404 */
.contenedor-404{
	height: 100vh;
	background-color: var(--color-principal-oscuro);
	display: flex;
	width: 100%;
	justify-content: space-between;
}

.error-contenedor-izq {
	width: 100%;
	height: 100%;
	color: var(--color-neutro-blanco);
	background-image: url('assets/img/error-404.svg');
	background-repeat: no-repeat;
	background-position: center left;
	background-size: cover;
}

.contenedor-texto-izq{
	align-content: center;
	height: 100%;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.error-texto{
	color: var(--color-neutro-blanco);
	font-family: var(--fuente-titulos);
	text-transform: uppercase;
}

.error-texto-error {
	font-size: clamp(2rem, 3vw + 1rem, 4rem); /* mínimo 2rem, crece con el ancho, máximo 4rem */
	letter-spacing: 0.15em;
	margin-left: clamp(32px, 8vw, 126px);
	font-weight: 300;
}

.error-texto-404 {
	font-size: clamp(6rem, 15vw, 20rem); /* muy grande, así que va de 6rem hasta 20rem */
	line-height: 80%;
	font-weight: 900;
	margin-left: clamp(32px, 8vw, 124px);
}

.error-texto-not-found {
	font-size: clamp(2rem, 3vw + 1rem, 4rem);
	margin-left: clamp(32px, 20vw, 450px);
	padding: 11px 32px;
	font-weight: 300;
	background-color: var(--color-principal-oscuro);
}


.error-contenedor-der{
	width: 100%;
	margin: auto 150px auto 121px;
	max-width: 641px;
}

.error-404-titulo p, .error-404-bajada p{
	margin: 0;
}

.error-404-titulo{
	color: var(--color-neutro-blanco);
	font-family: var(--fuente-titulos);
	font-size: var(--tamano-titulo-h2);
	font-weight: 300;
	text-transform: uppercase;
	line-height: 100%;
	margin-bottom: 32px;
}

.error-404-bajada{
	color: var(--color-neutro-blanco);
	margin-bottom: 32px;

}

/* COOKIES */
.cky-consent-container .cky-consent-bar{
	border-top-left-radius: 20px !important;
	border-top-right-radius: 20px !important;
	padding: 44px 56px !important;
}

.cky-notice-btn-wrapper .cky-btn{
	border-radius: 100px !important;
}

.cky-notice .cky-title{
	font-family: var(--fuente-texto) !important;
	font-size: var(--tamano-h4) !important;
}

.cky-consent-bar .cky-notice-des p{
	display: flex !important;
	flex-direction: column !important;
	font-size: var(--tamano-p2) !important;
	gap: 24px !important;
}

.cky-notice-group{
	align-items: end !important;
}


.cky-btn-revisit-wrapper {
    position: fixed !important;
    bottom: 20px !important;
    left: 20px !important;
    z-index: 9999 !important;
}

/* FOOTER */
.site-footer {
	background-color: var(--color-principal-oscuro);
	color: var(--color-neutro-blanco);
	padding: 60px 80px 30px 80px;
}

.footer-container {
	max-width: 1440px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
}

.footer-top {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: flex-start;
	padding-bottom: 43px;
}

.footer-menus{
	display: flex;
}

.footer-col {
	flex: 1;
	min-width: 160px;
	margin-right: 20px;
}

.footer-col h4 {
	margin-top: 0px;
	margin-bottom: 10px;
	font-weight: bold;
	font-size: 1rem;
}

.footer-col ul {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
}

.footer-col ul li {
	padding: 2px 0;
}

.footer-col ul li a {
	color: var(--color-neutro-blanco);
	text-decoration: none;
	font-size: var(--tamano-p2);
}

.footer-col ul li a:hover {
	color: var(--color-fondo-medio);
}

.logo-col img {
	width: 146px;
	height: auto;
	filter: brightness(0) invert(1);
}

.creative-commons{
	opacity: 50%;
	text-align: right;
	margin: 0;
}

.creative-commons .imagenes-superiores {
	display: flex;
	justify-content: flex-end;
	gap: 10px; /* Espacio entre las dos imágenes */
  }
  
  .creative-commons p {
	margin: 10px 0;
	font-size: var(--tamano-p3);
  }

  .creative-commons p a{
	text-decoration: none;
	color: var(--color-neutro-blanco);
  }
  
  .creative-commons .logo-ngo {
	display: block;
	margin-left: auto;
  }

  .enlace-ngo{
	  display: flex;
  }

.footer-divider {
	border: none;
	border-top: 1px solid rgba(255, 255, 255, 0.2);
	width: 100%;
}

.footer-bottom {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	flex-wrap: wrap;
}

.footer-social a {
	margin-right: 15px;
	display: inline-block;
}

.icono-social svg {
	height: 17px;
	color: var(--color-neutro-blanco);
	transition: color 0.3s ease;
}

.icono-social:hover svg {
	color: var(--color-fondo-medio);
}

.footer-credits {
	color: var(--color-neutro-blanco);
	font-size: 12px;
	opacity: 50%;
}

.footer-credits a {
	color: var(--color-neutro-blanco);
	text-decoration: none;
}

.footer-credits a:hover {
	text-decoration: underline;
	color: var(--color-fondo-medio);
}



/* RESPONSIVE TABLET */

/* Tablet: hasta 1279px */
@media (max-width: 1279px) {
	.container{
		padding: 0px 32px;
		max-width: 100%;
	}

	/* Header Menu */
	.no-scroll {
		overflow: hidden;
		touch-action: none;
	}
	
	.site-header{
		position: sticky;
		background-color: var(--color-neutro-semiblanco);
	}
	.container-header{
		padding: 12px 32px;
		display: flex;
		justify-content: space-between;
	}

	.mobile-menu.active {
		display: flex;
		top: 64px;
	  }

	.menu-toggle {
		display: block;
		background: none;
		border: none;
		font-size: 28px;
		cursor: pointer;
		padding: 0;		
	  }
	
	  .menu-desktop {
		display: none;
	  }


	  .mobile-menu {
		display: none; /* activado con JS al hacer click */
		flex-direction: column;
		gap: 20px;
		background-color: var(--color-neutro-semiblanco);
		backdrop-filter: blur(8px);
		position: absolute;
		top: -100%;
		right: 0;
		width: 100%;
		padding: 0px 20px 20px 20px;
		transition: top 0.4s ease;
	  }

	  .menu-container{
		  flex-direction: column;
	  }

	/* HEADER Menu language */
	  .language-switcher {
		position: relative; /* sigue visible */
		z-index: 999;
	  }

	  .lang-dropdown{
		  background-color: transparent;
		  box-shadow: none;
		  position: relative;
		  margin: 0;
		  padding-top: 12px;
	  }

	  .mobile-menu nav ul {
		list-style: none;
		padding: 0;
		margin: 0;
		display: flex;
		flex-direction: column;
		gap: 0px;
	  }
	  
	  .mobile-menu nav ul li {
		padding: 16px 0px;
	  }
	  
	  .mobile-menu nav ul li a {
		text-decoration: none;
		color: var(--color-principal-oscuro);
		font-size: var(--tamano-p1);
		text-align: center;
	  }

	  .main-navigation ul li a:hover::after,
	  .main-navigation ul li.current-menu-item a::after {
		  width: 0%;
	  }

	/* Header Menu Backdrop */
	.backdrop {
		position: fixed;
		inset: 0; /* top:0; right:0; bottom:0; left:0; */
		background: rgba(0, 0, 0, 0.4);
		backdrop-filter: blur(6px);
		z-index: 99; /* abajo del menú que debe tener un z-index mayor */
		opacity: 0;
		pointer-events: none;
		transition: opacity 0.3s ease;
	  }
	  
	  .backdrop.active {
		opacity: 1;
		pointer-events: auto;
	  }


	/* INDEX Hero */
	.decorativos-grid-index {
		grid-template-columns: repeat(2, 1fr);
		grid-template-rows: repeat(6, 1fr);
		aspect-ratio: 2 / 5;
		max-width: 316px; 
	  }
	
	  .decorativos-grid-index .celda-decorativa-index:nth-child(3n) {
		display: none;
	  }

	  .container-hero-index {
		margin: auto;
	  }	
	  
	/* QUIENES SOMOS Hero */
	.container-hero-quienes-somos{
		max-width: 70%;
		padding: 100px 24px 50px 150px;
	}


	/* QUIENES SOMOS Mision Vision */
	.container-mision-vision{
		padding: 32px;
		display: flex;
		justify-content: center;
		align-items: center;
		height: auto;
	}
	.mision-vision-wrapper{
		flex-direction: column;
		gap: 16px;
		max-width: 600px;
	}

	.tab-indicators{
		flex-direction: row;
	}

	.tabs-vertical{
		flex-direction: row;
		justify-content: space-evenly;
		gap: 12px;
	}

	.tab-content{
		text-align: center;
	}

	.tab-button{
		text-align: center;
	}

	/* QUIENES SOMOS Valores fundamentales */
	section.valores{
		margin-top: 58px;
		margin-bottom: 83px;
	}



	section.valores .container{
		padding: 0px 32px;
		max-width: 897px;
	}

	.valores-grid{
		flex-direction: column;
	}

	.valor-item{
		flex-direction: row;
		gap: 24px;
	}

	.svg-wrapper {
		display: block;
		height: fit-content;
		width: fit-content;
	}

	.svg-wrapper svg{
		display: block;
		height: 200px;
		width: 200px;
	}

	.valor-contenedor{
		padding: 0px;
		margin: auto 0px;
	}

	/* QUIENES SOMOS Cards */
	.equipo-grid{
		gap: 12px;
	}
	.card-equipo{
		width: 230px;
	}

	/* QUE HACEMOS Hero */
	.hero-que-hacemos{
		padding: 32px 24px;
	}

	.container-hero-que-hacemos{
		padding: 50px;
		gap: 50px;
	}

	.col-hero-titulo{
		max-width: 300px;
	}

	.columna-detalle{
		padding: 24px;
	}

	/* QUE HACEMOS Areas de trabajo */
	.areas{
		padding: 0 24px;
	}

	/* QUE HACEMOS Logos redes */
	.redes-content{
		padding: 64px 24px;
	}

	.redes-titulo p {
		margin-bottom: 32px;
	}

	/* RECURSOS Hero */
	.hero-recursos{
		padding: 100px 24px 50px;		
	}

	.container-hero-recursos{
		gap: 24px;
	}

	/* RECURSOS Encabezado filtro */
	.encabezado-filtro{
		padding: 24px;
	}

	/* NOTICIAS Hero */
	.hero-noticias{
		padding: 100px 24px 50px;		
	}

	.container-hero-noticias{
		gap: 24px;
	}

	.resultados-filtro{
		padding: 24px;
		padding-bottom: 0;
	}





	/* TRANSPARENCIA Hero */
	.container-hero-transparencia{
		max-width: 70%;
        padding: 100px 24px 50px 150px;
	}

	/* TRANSPARENCIA Logos */
	.apoyo{
		padding: 64px 24px;
	}

	/* TRANSPARENCIA Reportes */
	.reportes {
		padding: 24px 24px;
	}

	/* TRANSPARENCIA CTA */
	.cta-transparencia{
		padding: 24px 24px;
	}

	/* CONTACTO Hero */
	.container-hero-contacto{
		padding: 100px 24px 50px 250px;
	}

	.hero-contacto-cards{
		gap: 12px;
	}

	.hero-contacto-card{
		padding: 32px;
	}

	.hero-contacto-card-1,
	.hero-contacto-card-2 {
		width: 50%;
	}

	/* CONTACTO Formulario */
	.formulario-contacto{
		margin-top: -100px;
		padding: 97px 24px 50px 24px;
	}

	.encabezado-formulario-contacto{
		padding-left: 250px;
	}

	/* RESULTADO BUSQUEDA Cards Masonry */
	.card-grid-busqueda{
		margin: 100px 24px;
	}

	.card-entrada {
		width: calc(50% - 12px); /* 2 columnas */
	}

	.card-entrada .card-excerpt{
		visibility: visible;
		opacity: 1;
	}






	/* FOOTER */
	.site-footer{
		padding: 32px 24px 44px 24px;
	}

	.footer-top{
		flex-direction: column;
		gap: 32px;
	}

	.footer-menus{
		width: 100%;
		justify-content: space-between;
		flex-wrap: wrap;
		gap: 24px;
	}

	.footer-col{
		margin: 0;
	}
	.creative-commons{
		display: flex;
		gap: 24px;
		row-gap: 8px;
		text-align: left;
		flex-wrap: wrap;
	}

	.creative-commons .imagenes-superiores{
		justify-content: flex-start;
	}

	.imagenes-superiores img{
		width: 30px;
	}



	/* ENTRADA GENERAL */
	.lang-dropdown.entrada{
		position: absolute;
		top: 40px;
		padding-top: 0;
		background: rgba(250, 249, 247, 0.7);
		box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
		z-index: 10;
	}

}








	/* Mobile: hasta 897px */
	@media (max-width: 897px) {
	.container{
		padding: 0px 24px;
	}
	/* HEADER */
	.container-header{
		padding: 12px 20px;	
	}

	/* HEADER Menu lupa search */
	.search-form {
		position: fixed;
		top: 64px;
		left: 50%;
		transform: translateX(-50%);
		width: 90%;
		background: var(--color-neutro-blanco);
		z-index: 9999;
		padding: 16px;
		box-shadow: 0 4px 12px rgba(0,0,0,0.15);
		border-radius: 8px;
		display: none;
		flex-direction: row;
		gap: 8px;
	  }
	
	  .search-form.activo {
		display: flex;
	  }

	  .site-search .search-form.active{
		  	justify-content: space-between;
	}

	.buscador-general .search-filter-input-text{
		border-bottom: 1px solid var(--color-principal-oscuro);
		border-radius: 0;
	}
	
	  .search-field {
		flex: 1;
		padding: 10px;
		font-size: 16px;
		border: 1px solid #ccc;
		border-radius: 4px;
	  }

	  .search-form.active{
		  width: 100%;
		  height: 100px;
		  border-radius: 0;
	  }

	  img.icon-lupa{
		  width: 32px;
	  }




	/* INDEX Hero */
	.hero-index {
		flex-direction: column;
		align-items: center;
	  }
	
	  .celda-decorativa-index {
		display: none;
	  }
	
	  /* Mostramos solo las 1°, 2°, 4°, 5° */
	  .celda-decorativa-index:nth-child(1),
	  .celda-decorativa-index:nth-child(2),
	  .celda-decorativa-index:nth-child(4),
	  .celda-decorativa-index:nth-child(7),
	  .celda-decorativa-index:nth-child(13),
	  .celda-decorativa-index:nth-child(8),
	  .celda-decorativa-index:nth-child(10),
	  .celda-decorativa-index:nth-child(11) {
		display: flex !important;
	  }
	
	  .decorativos-grid-index {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		grid-template-rows: repeat(2, 1fr);
		width: 100vw;
		aspect-ratio: 4/2;
		max-width: 100vw;
		height: auto;
		max-height: none;
		overflow: hidden;
	}

	  .celda-decorativa-index {
		display: flex;
		align-items: center;
		justify-content: center;
		aspect-ratio: 1 / 1;
		width: 100%;
		height: 100%;
	  }
	  
	  .celda-decorativa-index svg {
		width: 100%;
		height: 100%;
		object-fit: contain;
		max-width: 100%;
		max-height: 100%;
	  }
	
	  .hero-index {
		flex-direction: column;
		align-items: center;
	  }
	
	  .container-hero-index {
		max-width: 100%;
		padding: 48px 16px;
	  }	
	  .hero-index-titulo {
		line-height: 110%;
	  }
	
	  .hero-index-bajada {
	  }

	/* INDEX Banner destacados */
	.banner-slider .swiper-slide {
		position: relative;
		width: 100%;
		padding-top: 125%; /* 5 / 4 = 1.25 → 125% */
		overflow: hidden;
	  }
	
	  .banner-slider .swiper-slide img {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		object-fit: cover;
	  }


	/* Carousel */
	.carruseles-index{
		margin: 0px;
		gap: 0px;
	}

	/* QUIENES SOMOS Hero */
	.hero-quienes-somos {
		flex-direction: column;
		align-items: stretch;
	}

	.hero-quienes-somos-container-deco {
		position: relative;
		width: 100%;
		height: auto;
		overflow: hidden;
	}

	.hero-quienes-somos-container-deco img {
		width: 100%;
		height: auto;
		object-fit: cover;
		object-position: center;
	}

	.container-hero-quienes-somos {
		padding: 48px 16px;
		max-width: 100%;
	}

	/* QUIENES SOMOS Mision Vision */
	.container-mision-vision{
		padding: 16px;
		height: 568px;
	}
	.mision-vision-wrapper{
		max-width: 80vw;
	}

	/* QUIENES SOMOS Valores fundamentales */
	section.valores{
		margin-top: 58px;
	}

	section.valores .container{
		padding: 0px 16px;
	}

	section.valores h2{
		margin-bottom: 32px;
	}
	
	.valor-item{
		gap: 16px;
		align-items: flex-start;
	}
	.svg-wrapper svg{
		max-width: 20vw;
		margin-top: 8px;
		max-height: fit-content;
	}

	/* QUIENES SOMOS Cards */
	.card-equipo{
		display: flex;
		flex-direction: row;
		width: 100%;
		flex-wrap: wrap;
		gap: 7%;
	}

	.card-equipo-contenedor-imagen{
		width: 30%;
	}

	.card-equipo .img-perfil{
		width: 100%;
	}

	.card-equipo-contenedor-texto{
		width: 63%;
	}

	.card-equipo h3{
		text-align: left;
	}

	.card-equipo .rol{
		text-align: left;
	}

	.card-equipo .pais{
		text-align: left;
	}

	.toggle-btn{
		margin: auto;
	}

	/* QUE HACEMOS Hero */
	.hero-que-hacemos{
		padding: 24px 16px;
	}

	.container-hero-que-hacemos{
		flex-direction: column;
		align-items: flex-start;
		gap: 32px;
		padding: 32px 0px;
	}

	.col-hero-titulo{
		max-width: 100%;
	}

	.fila-detalle{
		grid-template-columns: repeat(2, 1fr);
	}

	.columna-detalle{
		border-bottom: 0.5px solid var(--color-neutro-blanco);
	}

	.columna-detalle:nth-child(2) {
  		border-right: none;
	}

	/* QUE HACEMOS Areas de trabajo */
	.areas{
		padding: 0 12px;
		height: auto;
	}

	.areas-grid{
		padding-top: 0;
		margin: 0 auto;
	}

	.svg-areas{
		height: 200px;
		left: 0;
		width: auto;
	}

	.area-empty{
		height: 200px;
		width: 30%;
	}

	.area-title{
		height: 200px;
		width: 60%;
	}

	.area-card{
		width: 100%;
		height: auto;
		flex-direction: row;
		align-items: center;
	}

	.area-card h3{
		margin: 0;
		max-width: 80%;
	}

	.area-card svg{
		margin: auto 0;
		padding-left: 12px;
	}

	/* QUE HACEMOS Logos redes */
	.redes{
		margin-top: 0;
	}
	.redes-content{
		padding: 32px 12px;
	}

	.h2.redes-titulo{
		margin-top: 16px;
		margin-bottom: 32px;
	}

	.redes-grid{
		row-gap: 24px;
	}


	/* RECURSOS Hero */
	.hero-recursos{
		padding: 50px 16px;
	}

	/* RECURSOS Filtro */
	.resultados-filtro.desktop{
		display: none;
	}

	.encabezado-filtro.filtro-recursos {
		display: none;

	  }

	  .barra-filtro-mobile{
		display: flex;
		justify-content: center;
		align-items: center;
		z-index: 8;
	}
	
	  .filtro-toggle-mobile,
	  .filtro-panel-mobile {
		display: flex;
	  }

	.barra-superior-filtros .filtro-ordenar{
		display: none;
	}

	.filtro-ordenar.noticias{
		display: block;
	}

	.barra-filtro-mobile .filtro-ordenar{
		display: flex;
		flex-direction: row;
		padding-left: 8px;
	}

	.barra-filtro-mobile .filtro-ordenar .search-filter-field__input{
		border: none;
		border-bottom: 1px solid var(--color-principal-oscuro);
		border-radius: 0px;
		padding: 0;
	}

	.barra-filtro-mobile .filtro-ordenar .search-filter-label{
		width: 200px;
	}

	.barra-filtro-mobile .filtro-ordenar .search-filter-component-combobox .search-filter-component-combobox__actions{
		width: auto;
	}

	.filtro-panel-inner .resultados-filtro{
		padding: 0;
	}



	/* NOTICIAS Hero */
	.hero-noticias{
		padding: 50px 16px;
	}

	.search-filter-input-button-group{
		gap: 12px;
	}

	/* NOTICIAS Filtro */
	.encabezado-filtro.filtro-noticias{
		position: sticky;
		top: 64px;
		z-index: 8000;
		padding: 24px 12px;
	}






	/* TRANSPARENCIA Hero */
	.hero-transparencia {
		flex-direction: column;
		align-items: stretch;
	  }
	
	  .hero-transparencia-container-deco {
		position: relative;
		width: 100%;
		height: auto;
		overflow: hidden;
	  }
	
	  .hero-transparencia-container-deco img {
		width: 100%;
		height: auto;
		object-fit: contain;
		object-position: top center;
		display: block;
	  }
	
	  .container-hero-transparencia {
		max-width: 100%;
		padding: 48px 16px;
	  }

	/* TRANSPARENCIA Logos */
	.apoyo{
		padding: 32px 12px;
	}

	/* TRANSPARENCIA Reportes */
	.card-reporte{
		height: auto;
	}
	.card-reporte-link{
		height: auto;
		flex-direction: row;
	}

	.card-reporte svg{
		padding-left: 12px;
	}

	/* TRANSPARENCIA CTA */
	.cta-transparencia{
		padding: 24px 12px;
	}

	.container-cta-transparencia{
		flex-direction: column;	
	}

	.cta-box{
		padding: 48px;
	}

	/* CONTACTO Hero */
	.hero-contacto {
		flex-direction: column;
		align-items: stretch;
	  }
	
	  .hero-contacto-container-deco {
		position: relative;
		width: 100%;
		height: auto;
		overflow: hidden;
	  }
	
	  .hero-contacto-container-deco img {
		display: block;
		width: 100%;
		height: auto;
		object-fit: cover;
		object-position: top center;
	  }
	
	  .container-hero-contacto {
		max-width: 100%;
		padding: 48px 16px;
	  }

	.hero-contacto-cards{
		flex-direction: column;
	}

	.hero-contacto-card{
		padding: 24px;
	}

	.hero-contacto-card-1, .hero-contacto-card-2 {
		width: 100%;
	}

	/* CONTACTO Formulario */
	.encabezado-formulario-contacto {
        padding-left: 0px;
    }

	.container-formulario-contacto{
		padding: 24px;
	}

	.formulario-contacto{
		padding: 97px 16px 24px 16px;
	}

	.checkbox-custom{
		flex-direction: column;
	}

	textarea#mensaje {
		height: 100px;
	}

	/* RESULTADO BUSQUEDA Header */
	.search-heading{
		height: auto;
		padding: 50px 12px;
	}

	/* RESULTADO BUSQUEDA Cards Masonry */
	.card-grid-busqueda{
		margin: 50px 12px;
	}

	.card-entrada {
		width: 100%;
		}

	/* RESULTADO DE BUSQUEDA Paginacion */
	.pagination {
		margin: 24px 0;
	  }
	
	  .pagination ul {
		  margin: 0 auto;
		gap: 4px;
	  }
	
	  .pagination li a,
	  .pagination li span {
		font-size: 14px;
		min-width: 40px;
		height: 40px;
		padding: 0;
	  }
	
	  .arrow-svg {
		width: 20px;
		height: 20px;
	  }
	
  /* Oculta todos los li que NO contengan prev, next, current, dots, ni sean el primero o último número */
  .pagination li {
    display: none;
  }

  .pagination li:has(.prev),
  .pagination li:has(.next),
  .pagination li:has(.current),
  .pagination li:has(.dots),
  .pagination li:nth-child(2),              /* Primer número (asumiendo que es el segundo <li>) */
  .pagination li:nth-last-child(2) {        /* Último número (antes del next) */
    display: flex;
  }

	.arrow-svg path{
		stroke-width: 3;
	}


	/* ENTRADA GENERAL */
	.decorativos-grid{
		position: sticky;
	}

	.entrada-contenedor{
		margin-top: 0;
		margin-bottom: 0;
		border-bottom-left-radius: 0;
		border-bottom-right-radius: 0;
		padding: 24px 12px;
	}

	.contenedor-etiquetas-idioma{
		flex-direction: column;
	  }

	  .lang-dropdown.entrada{
		  position: relative;
		  width: auto;
		  border-radius: 100px;
		  top: 0;
		  height: 34px;
		  min-width: 67px;
	  }

	  .lang-dropdown li {
		  padding: 4px 10px;
	  }

	  .lang-btn .lang-arrow{
		  transform: rotate(-90deg);
	  }

	  .lang-btn.active .lang-arrow{
		transform: rotate(90deg);
	}

	.entrada-recomendadas{
		background-color: var(--color-fondo-medio);
		position: relative;
		z-index: 2;
		padding: 64px 0px 62px 0px;
	}




	/* ERROR 404 */
	.contenedor-404{
		height: 80vh;
		flex-direction: column;
	}

	.error-contenedor-izq{
		height: 40%;
	}

	.error-contenedor-der{
		height: 60%;
		margin: 0 12px;
		align-content: center;

	}

	/* COOKIES */
    .cky-consent-container .cky-consent-bar{
		padding: 24px 12px !important;
	}


	}