:root{
  --expander-ms: 600ms; /* súbelo a 800ms/1000ms si quieres aún más lento */
  --expander-ease: cubic-bezier(.2,.8,.2,1); /* ease suave tipo Material */
}

:root{
  --gap: 12px; /* margen en móviles */
  --expander-ms: 600ms;
  --expander-ease: cubic-bezier(.2,.8,.2,1);
}
@media (min-width: 576px){ :root{ --gap: 40px; } }

body {
	background-color: #FFF;
}


#lafundacion {
	color: #000;
	padding-top: 50px;
}


h1 {
	font-family: 'brockmann', sans-serif;
	font-size: 2rem;
}

.nav-link {
	color: #000;
}

.nav-link:hover {
	color: #B4B4B4;
}


.navbar-nav .nav-link.active,
.navbar-nav .nav-link.show {
	color: #FFF;
}

.accordion-header {
	text-align: -webkit-center;
}

.navbar-toggler-icon {
	color: #000;
	/* Change this to the desired color */
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='black' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
	fill: black;
}

.navbar-toggler {
	color: #FFF;
	border-color: #FFF;

}

.accordion-button {
	justify-content: center;
	flex-direction: row-reverse;
	width: 100%;
	color: #000;
	background-color: #FFF;
	outline: unset;
	font-family: 'archiamedium', sans-serif;
	font-size: 2rem;
	border-bottom: #EFEFEF solid 1px;
}

.accordion-button::after {
	display: none;

}

.tituloEje {
	display: flex;
	flex-direction: column;
	text-align: center;
	justify-content: center;
}

/* Cuando el acordeón está colapsado (mostrar "+") */
.accordion-button.collapsed .tituloEje h2::before {
	content: "";
	display: inline-block;
	width: 22px;
	height: 22px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23FFCD00' class='bi bi-plus' viewBox='0 0 16 16'%3E%3Cpath d='M8 4a.5.5 0 0 1 .5.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3A.5.5 0 0 1 8 4'/%3E%3C/svg%3E");
	background-size: contain;
	background-repeat: no-repeat;
	margin-right: 10px;
}

/* Cuando el acordeón está expandido (mostrar "-") */
.accordion-button:not(.collapsed) .tituloEje h2::before {
	content: "";
	display: inline-block;
	width: 22px;
	height: 22px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23FFCD00' class='bi bi-dash' viewBox='0 0 16 16'%3E%3Cpath d='M4 8a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7A.5.5 0 0 1 4 8'/%3E%3C/svg%3E");
	background-size: contain;
	background-repeat: no-repeat;
	margin-right: 10px;
}



.tituloEje p {
	font-size: 1.2rem;
	margin-left: 32px;

}

.tituloEje img {
	max-width: 60px;
	height: auto;
	filter: brightness(0) invert(0);
	display: block;
	margin: 0 auto;
	/* Centra horizontalmente */
	padding-bottom: 15px;
	padding-top: 25px;
}

.accordion-body {
	font-family: 'archiamedium', sans-serif;
	font-size: 1.4rem;
	color: #000;
	background: rgba(0, 0, 0, 0.02);
	padding-bottom: 50px;
}

.accordion-body a.enlaceBlanco {
	color: #000 !important;
}

.accordion-button:not(.collapsed) {
	color: #000;
	background-color: #FFF;
}


.accordion-button:focus {
	z-index: 3;
	border-color: #000000;
	outline: unset;
	box-shadow: 0 0 0 0.25rem rgba(255, 255, 255, 0);
}


.accordion-item {
	background-color: #FFF;
	color: #000;
	border: 0;
}

/*

.accordion-button:after {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23FFCD00' class='bi bi-plus' viewBox='0 0 16 16'%3E%3Cpath d='M8 4a.5.5 0 0 1 .5.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3A.5.5 0 0 1 8 4'/%3E%3C/svg%3E");
 width: 22px;
    height: 22px;
	 background-size: contain;
    background-repeat: no-repeat;
	margin-right: 5px;
	
}

.accordion-button:not(.collapsed)::after{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23FFCD00' class='bi bi-dash' viewBox='0 0 16 16'%3E%3Cpath d='M4 8a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7A.5.5 0 0 1 4 8'/%3E%3C/svg%3E");
	 width: 22px;
    height: 22px;
	 background-size: contain;
    background-repeat: no-repeat;
	margin-right: 5px;
}
*/


.btnFundacion {
	text-decoration: none;
	display: inline-block;
	font-size: 1.8rem;
	font-family: 'archiamedium', sans-serif;
	background-color: #000;
	color: #FFF;
	width: 275px;
	padding-top: 5px;
	padding-bottom: 5px;
	margin-top: 15px;
	text-align: center;
	border: 2px solid #FFF;

}

.active {
	background-color: #FFF;
	color: #000;
	border: 2px solid #FFF;
}


.btnFundacion:hover {
	background-color: #FFF;
	color: #000;
	border: 2px solid #FFF;

}

.btnFundacion:first-child {
	margin-right: 25px;
}

.enlacesFooter {
	text-align: center;
}

.enlacesFooter a {
	color: #000;
}

.btnRS {
	font-size: 1.5rem;
}

.listaPatronos {
	padding-left: 350px;
	list-style: none;
	line-height: 3rem;
	/*list-style-image: url("../images/marca2.png");*/
	list-style-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23FFCD00' class='bi bi-dash' viewBox='0 0 16 16'%3E%3Cpath d='M4 8a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7A.5.5 0 0 1 4 8'/%3E%3C/svg%3E");
}

.centrarContenido {
	display: flex;
	justify-content: center
}

.centrarContenido a {
	color: #FFF;
	text-decoration: underline;
}


/*flip cards */



.contenedorPremiados {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	width: 100%;
	justify-content: center;
}

.cuadroPremiado {
	width: calc(50% - 5px);
	aspect-ratio: 1/1;
	/* Set aspect ratio to 1:1 (square) */
	background-color: transparent;
	border: 0;
	cursor: pointer;
	position: relative;
	perspective: 1000px;
	box-sizing: border-box;

}

.filaUnica .cuadroPremiado {
	width: calc(25% - 5px);
}

.cuadroPremiadoActual {
	width: calc(100% + 5px);
}


.flip-card2 {
	perspective: 1000px;
	height: 100%;
}


.front {
	background-image: url(../images/premiado.jpg);
}

.contenido {
	position: absolute;
	background-color: #fff;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
	backface-visibility: hidden;
	transition: transform 0.5s;
	transform: rotateY(180deg);
	display: flex;
	justify-content: center;
	align-items: center;

}

.cuadroPremiado .front,
.cuadroPremiado .contenido {
	position: absolute;
	width: 100%;
	height: 100%;
}

.cuadroPremiado .front {
	transform: rotateY(0deg);
	backface-visibility: hidden;
	display: flex;
	justify-content: center;
	align-items: center;

}

.cuadroPremiado.abierto .front {
	/*transform: rotateY(-180deg);*/

}

.cuadroPremiado.abierto .contenido {
	transform: rotateY(0deg);
}


.freebirdMaterialHeaderbannerSectionTriangle>polygon {
	stroke-width: 10;
}


.freebirdSolidFillAzul {
	fill: var(--azulete);
	stroke: var(--azulete);
}

.cuadroPremiado .flip-card-front {
	overflow: hidden;
	background-position: center center;
}







.abierto {
	/*
				  width:800px;
				  height: 500px;
				  position: absolute;
				  top:0;
				  z-index: 9999999999999999999999999999;
				  */
}

.flip-card2 .flip-card-inner .flip-card-front {
	text-align: center;
	background-repeat: no-repeat;
	background-size: cover;
}

.flip-card2 .flip-card-inner .flip-card-front span {
	color: #FFF;
	font-size: 3.8rem;
	font-family: 'brockmann', sans-serif;
	line-height: 3.4rem;
	position: absolute;
	top: 0;
	left: 0;
	padding: 10px;
	font-weight: bolder;
}



.infoPremiado {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 99999;
	background-color: rgba(255, 255, 255, 0.7);
	padding: 15px;
}

.infoPremiado h3 {
	font-size: 1.2rem
}

.infoPremiado p {
	margin-bottom: 0;
	font-size: 0.9rem;
}


.infoPremiado a {
	font-size: 1rem;
	text-decoration: none;
	line-height: 10px !important;
}

.over {
	position: absolute;
	background-color: #FFF;
	opacity: 0.5;
	height: 100%;
	width: 100%;
	left: 0;
	top: 0;
}

.modal-content {
	border: 0;
	border-radius: 0;
	background-color: #FFF;
}

.modal-body {
	border: 0;
}


.hTrayectoria {
	/*background-image: url(../images/2024.jpg);*/
	background-repeat: no-repeat;
	background-position: left center;
	/*padding-left: 120px;*/
	font-weight: bolder;
	font-size: 3rem;
	padding-bottom: 25px;
	padding-top: 25px;
	text-align: right;
	display: table-cell;
}

.hTrayectoria p {
	font-size: 1.5rem;
	font-weight: normal;
}


.hFuturo {
	/*background-image: url(../images/2024b.jpg);*/
	background-repeat: no-repeat;
	background-position: left center;
	/*padding-left: 120px;*/
	font-weight: bolder;
	font-size: 3rem;
	padding-bottom: 25px;
	padding-top: 25px;
	text-align: right;
	display: table-cell;
}

.hFuturo p {
	font-size: 1.5rem;
	font-weight: normal;
}

.verTodos {
	font-size: 1.5rem;
}

.years {
	display: inline-flex;
	flex-direction: row;
	border: 1px solid #000;
}

.years span {
	padding-right: 10px;
	padding-left: 10px;
	border: 1px solid #000;
	font-size: 1.2rem;
	cursor: pointer;
}

.video-responsive {
	height: 0;
	overflow: hidden;
	padding-bottom: 56.25%;
	/* padding-top: 30px;*/
	position: relative;
	border: 2px solid #000;
	margin-top: -2px;
}


.video-responsive iframe,
.video-responsive object,
.video-responsive embed {
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

#modalPremiado {
	--bs-modal-footer-border-color: var(--amarillo) !important;
	z-index: 9999999999999999;
}

#modalResultado {
	z-index: 99999999999999;
}

#modalResultado .modal-header {
	border: 0;
}

#sponsors {
	background-color: var(--azulete);
}

#modalPremiado .modal-body {
	border-bottom: solid 2px #000 !important;
}


#modalPremiado .modal-footer {
	border: 0 !important;
}


#modalFormulario .modal-content {
	background-color: #FFF;
}


#modalFormulario {
	--bs-modal-footer-border-color: #FFF !important;
	z-index: 9999999999999999;
}


.freebirdSolidFill {
	fill: rgba(197, 27, 27, 1);
	stroke: rgb(0, 0, 0, 1);
}

.flip-card2 .flip-card-inner .flip-card-front p {
	color: #FFF;
	font-size: 1.5rem;
	font-family: 'brockmann', sans-serif;
	line-height: 1.8rem;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	text-align: center;
	padding: 15px;
	margin-bottom: 0;
	transform: translate(-50%, -50%);
	/* This will center it vertically and horizontally */
}


/*fin flip cards*/

/*
.listaPatronos li{
	background-image: url("../images/marca.png");
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 4%;
	padding-left: 40px;
}
*/



.card-fecha {
	font-size: 1.5rem;
	font-family: 'archiasemibold';
	color: #000;
	margin-bottom: 0;
}

.card-title {
	color: var(--azulete);
	font-size: 1.3rem;
	font-family: 'archiasemibold';
}

.card-text {
	font-size: 1.1rem;
	font-family: 'archiasemibold';
	color: #000;
	margin-bottom: 0;
}


.card-img-square {
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 1;

	/*object-fit: cover;*/
}

.imageNoticia {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}

.card {
	border-radius: 0;
	border: 0;
	background-color: transparent;
	/*max-width: 275px;*/
}

.card-body {
	padding-left: 0;
	padding-right: 0;
}

.paginacion {
	text-align: center;
}

.paginacion ul li {
	list-style: none;
	display: inline-block;
	padding: 15px;
	font-size: 1.5rem;
	font-family: 'archiamedium', sans-serif;
}

.paginacion ul li a {
	text-decoration: none;
}

.paginacion ul li.active a {
	color: #B4B4B4;
}

.migas {
	font-size: 1.4rem;
}

.migas a {
	text-decoration: none;
}



.cuadroPremio h2 {
	font-family: "brockmann";
}

.cuadroPremio {
	position: relative;
	/*background-image: url(../images/cruz-negra.png);
	background-position: bottom right;
	background-repeat: no-repeat;
	padding-bottom: 45px;
	height: auto;*/
}

.cuadroPremio p:last-child {
	margin-bottom: 0;
}

/*
.cuadroPremio:hover .flip-card .flip-card-inner {
            transform: rotateY(180deg);
        }
*/

.textoPremio {
	padding-top: 45px;
}

.flip-card {
	perspective: 1000px;
	height: 220px;
}

.flip-card-inner {
	position: relative;
	width: 100%;
	height: 100%;
	transition: transform 0.6s;
	transform-style: preserve-3d;

}

/*
        .flip-card:hover .flip-card-inner {
            transform: rotateY(180deg);
        }
*/
.flip-card-inner {
	transition: transform 0.6s;
	transform-style: preserve-3d;
}

.rotar {
	transform: rotateY(180deg);
}

.flip-card-front,
.flip-card-back {
	position: absolute;
	width: 100%;
	height: 100%;
	backface-visibility: hidden;
}




.flip-card-front {
	color: #000;
	background-color: #000;
	overflow: hidden;

}

.flip-card-front .bg-blur {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	filter: blur(3px);
	transform: scale(1.08);
	/* evita bordes tras el blur */
	pointer-events: none;
	z-index: 0;
}

.flip-card-front .scrim {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.3);
	pointer-events: none;
	z-index: 0;
}

.flip-card-front> :not(.bg-blur):not(.scrim) {
	position: relative;
	z-index: 1;
}

.flip-card-back {
	background-color: var(--amarillo) !important;
}

/* Todo lo demás por encima del fondo */
.flip-card-front> :not(.bg-blur):not(.scrim) {
	position: relative;
	z-index: 1;
}

.flip-card-back {
	color: #000;
	transform: rotateY(180deg);
	text-align: center;
	background-repeat: no-repeat;
	background-size: cover;
	background-color: #EFEFEF;
	cursor: pointer;
}


#premiados h2 {
	font-family: 'brockmann', sans-serif;
	font-size: 2rem;
}

#btnPremio {
	cursor: pointer;
}


.form-control {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 100%;
	margin-top: 5px;
	border: none;
	background-color: transparent;
	border: solid 1px #CCC;
	border-radius: 0;
	margin: 0;
	font-size: 1.2rem;
	background-color: #FFF;
}

.pieTexto {
	font-size: 0.8rem;
}

.oculto {
	display: none;
}

.form-select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 100%;
	margin-top: 5px;
	border: none;
	background-color: transparent;
	border: solid 1px #CCC;
	border-radius: 0;
	margin: 0;
	font-size: 1.2rem;
	background-color: #FFF;
}

.owl-carousel .owl-nav button.owl-next,
.owl-carousel .owl-nav button.owl-prev,
.owl-carousel button.owl-dot {
	font-size: 4rem;
}


.subLinea:before {
	position: absolute;
	bottom: 360px;
	width: 250px;
	height: 4px;
	content: "";
	background-color: var(--amarillo);

}

#texto {
	padding-top: 20px;
	padding-bottom: 50px;
	margin-bottom: 50px;
}


.patronos-container {
	display: flex;
	flex-wrap: wrap;
	/* Allows wrapping if space is insufficient */
	justify-content: center;
	/* Centers the elements horizontally */
	gap: 80px;
	/* Adds space between the items */
}

.patrono {
	text-align: center;
	/* Centers text under the images */
	flex: 1 1 200px;
	/* Responsive flex-basis for resizing */
}

.patrono img {
	width: 100%;
	/* Makes the image responsive */
	height: auto;
	/* Maintains aspect ratio */
}

.patrono p {
	font-size: 0.9rem;
	padding-top: 0.5rem;
	text-align: justify;
}

.patrono h3 {
	position: relative;
	text-align: center;
	margin: 20px 0;
	padding: 0 20px;
	/* Adds padding to ensure space on the sides */
}

.patrono h3::before,
.patrono h3::after {
	content: "";
	position: absolute;
	top: 50%;
	/* Position the lines at the vertical center */
	width: 40%;
	/* Adjust the line width */
	height: 1px;
	background-color: #000;
	/* Line color */
}

.patrono h3::before {
	left: 0;
}

.patrono h3::after {
	right: 0;
}

.patrono h3 span {
	position: relative;
	z-index: 1;
	/* Ensures the text is above the lines */
	background-color: #FAFAFA;
	padding-left: 10px;
	padding-right: 10px;
}




@media (max-width:1199px) {

	/*menor de*/
	.cuadroPremiado {
		width: calc(100% - 5px);
	}

	.flip-card2 .flip-card-inner .flip-card-front p {
		font-size: 2.5rem;
		line-height: 2.7rem;
	}

	.infoPremiado {
		position: absolute;
		top: 50%;
		left: 50%;
		width: 100%;
		height: 100%;
		z-index: 99999;
		background-color: rgba(255, 255, 255, 0.7);
		padding: 15px;
		transform: translate(-50%, -50%);
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		text-align: center;
	}

}


@media (max-width:1199px) {

	/*menor de*/
	.filaUnica .cuadroPremiado {
		width: calc(50% - 5px);
	}


}

@media (max-width:1150px) {

	/*menor de*/
	.listaPatronos {
		padding-left: 300px;
	}


}

@media (max-width:1145px) {

	/*menor de*/
	.infoPremiado p {
		font-size: 1.2rem;
	}

}


@media (max-width:850px) {

	/*menor de*/
	.listaPatronos {
		padding-left: 250px;
	}

	.flip-card2 .flip-card-inner .flip-card-front p {
		font-size: 2rem;
		line-height: 2.2rem;
	}

}


@media (max-width:690px) {

	/*menor de*/
	.listaPatronos {
		padding-left: 40px;
	}
}



@media (max-width:597px) {

	/*menor de*/
	.btnFundacion:first-child {
		margin-right: 0;
	}
}

@media (max-width:545px) {

	/*menor de*/
	.filaUnica .cuadroPremiado {
		width: calc(100% - 5px);
	}
}


.expandido {
	height: 100% !important;
}

/* Asegura compatibilidad */
.flip-card-front,
.flip-card-back {
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
}

/* Por defecto la trasera no capta clics */
.flip-card-inner .flip-card-back {
	pointer-events: none;
}

/* Cuando está girada: la frontal NO capta clics y la trasera SÍ */
.flip-card-inner.rotar .flip-card-front {
	pointer-events: none;
}

.flip-card-inner.rotar .flip-card-back {
	pointer-events: auto;
}

/* (opcional) z-index claro cuando está girada */
.flip-card-front {
	z-index: 2;
}

.flip-card-inner.rotar .flip-card-front {
	z-index: 1;
}

.flip-card-inner.rotar .flip-card-back {
	z-index: 2;
}

.listaProyectos li {
	padding-bottom: 1.2rem;
	font-size: 1.2rem;
}

.listaProyectos li a {
	cursor: pointer;
}

/* --- Backdrop y panel expansible --- */
.expander-backdrop {
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, .35);
	opacity: 0;
	transition: opacity 200ms ease;
	z-index: 99998;
}

.expander-panel {
	position: fixed;
	/* tamaño/posición inicial los pone el JS via transform (FLIP) */
	z-index: 99999;
	overflow: hidden;
	background: #FFF;
	border: 0;
	border-radius: 0;
	box-shadow: 0 18px 60px rgba(0, 0, 0, .25);
	will-change: transform, width, height;
	/* estados animados */
	transition: transform 260ms ease, width 260ms ease, height 260ms ease;
}

/* Contenido interno del panel (reutilizamos estilos del modal) */
.expander-content {
	display: flex;
	flex-direction: column;
	max-height: 100vh;
}



.expander-body {
	padding: 12px 20px 20px 20px;
	overflow: auto;
	/* como tu modal */
}

.expander-footer {
	padding: 12px 20px 20px 20px;
	display: flex;
	justify-content: flex-end;
}

/* Botón negro como tu .btnNegro */
.btnNegroInline {
	appearance: none;
	background: #000;
	color: #FFF;
	border: 0;
	padding: 8px 16px;
	font-family: 'archiamedium', sans-serif;
	font-size: 1rem;
	cursor: pointer;
}

/* Por si el grid recorta la tarjeta al aplicar blur/zoom */
.contenedorPremiados {
	position: relative;
	overflow: visible;
}

/* --- Backdrop y panel expansible --- */
.expander-backdrop {
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, .35);
	opacity: 0;
	transition: opacity 200ms ease;
	z-index: 99998;
}

/* Backdrop + panel que se expanden desde la FRONT */
.expander-backdrop {
	position: fixed;
	inset: 0;
	opacity: 0;
	transition: opacity var(--expander-ms) var(--expander-ease);
	background: rgba(0, 0, 0, .4);
	z-index: 1040;
	display: none;
}



.expander-panel{
  position:fixed; left:0; top:0; /* se recoloca vía transform */
  display:none; z-index:1050;
  overflow:auto;        /* un solo scroll, el del panel */
  height:auto;          /* altura por contenido */
  max-height:calc(100vh - 80px); /* margen total 40px*2 (ajústalo a tu margin) */
  width:auto;           /* se ajusta en JS */
  max-width:calc(100vw - 80px);
  background:#fff;
  box-shadow:0 12px 40px rgba(0,0,0,.2);
  backface-visibility:hidden;           /* evita “blurr” en Chrome */
  -webkit-font-smoothing:auto;          /* no fuerces antialiased si lo empeora */
  text-rendering:optimizeLegibility;     /* o prueba geometricPrecision en Safari */
  transform: none !important;           /* clave: nunca transformar el contenedor de texto */
  transition: left .22s, top .22s, width .22s, height .22s, opacity .22s;
  will-change: left, top, width, height, opacity; /* opcional */
  transition:
    left   var(--expander-ms) var(--expander-ease),
    top    var(--expander-ms) var(--expander-ease),
    width  var(--expander-ms) var(--expander-ease),
    height var(--expander-ms) var(--expander-ease),
    opacity var(--expander-ms) var(--expander-ease);
}
/* estructura interna (reutiliza tu estilo de modal) */
.expander-content {
	display: flex;
	flex-direction: column;
	max-height: 100vh;
}

.expander-header {
	padding: 16px 20px 0 20px;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
}

.expander-header h3{
	padding-right: 20px;
}

.expander-body {
	padding: 12px 20px 20px 20px;
	border-bottom: 2px solid #000;
}

.expander-footer {
	padding: 12px 20px 20px 20px;
	display: flex;
	justify-content: flex-end;
}

.btnNegroInline {
	appearance: none;
	background: #000;
	color: #FFF;
	border: 0;
	padding: 8px 16px;
	font-family: 'archiamedium', sans-serif;
	font-size: 1rem;
	cursor: pointer;
}

.expander-content{ overflow:visible; }
.expander-body{ overflow:visible; }

.expander-content,
.expander-body{
  filter:none;           /* por si acaso */
  transform:none;        /* nada de transform en ancestros del texto */
}


.expander-panel {

    margin: 0.5rem;
  
}




/* Panel centrado por CSS cuando esté "asentado" */
.expander-panel.expander-centered{
  position: fixed;
  left: 0; right: 0;              /* necesario para que margin funcione en fixed */
  top: var(--gap);                /* márgenes visuales arriba/abajo */
  bottom: var(--gap);
  margin: auto;                   /* centra horizontal y vertical si hay altura fija */
  /* ancho responsivo */
  width: auto;                    /* permite que apliquen max-widths */
  max-width: 500px;               /* <=576px */
}

@media (min-width: 992px){
  .expander-panel.expander-centered{
    max-width: 800px;             /* en desktop */
  }
}