/* =========================================================================
 * Ameba Shiatsu — estilos de los shortcodes del plugin
 * ========================================================================= */

/* ───── [ameba_ediciones_curso] ─────────────────────────────────────────── */

.ameba-ediciones-curso {
	margin: 1.5rem 0 0;
	display: flex;
	flex-direction: column;
	gap: 1rem;
	color: var(--e-global-color-text, #1d1d1b);
}

.ameba-ediciones-curso__seccion {
	margin: 0;
	font-family: var(--e-global-typography-primary-font-family, "Quicksand"), sans-serif;
	font-weight: var(--e-global-typography-primary-font-weight, 600);
	font-size: 1.5rem;
	line-height: 1.3;
	color: var(--e-global-color-primary, #a4c56d);
}

.ameba-ediciones-curso__list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1.5rem;
}

@media (max-width: 600px) {
	.ameba-ediciones-curso__list {
		grid-template-columns: 1fr;
	}
}

.ameba-ediciones-curso__item {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	min-width: 0;
	font-family: var(--e-global-typography-text-font-family, "Inter"), sans-serif;
}

.ameba-ediciones-curso__lugar {
	font-family: inherit;
	font-size: 1.3rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	line-height: 1.3;
}

.ameba-ediciones-curso__fecha {
	font-family: inherit;
	font-size: 0.95rem;
	font-weight: 700;
	line-height: 1.3;
}

/* Botón "Info y reservas →" — Especificidad reforzada y !important
 * defensivos porque Elementor / Hello Elementor a veces aplica estilos
 * a <a> con selectores específicos que ganaban al simple .__btn. */
.ameba-ediciones-curso .ameba-ediciones-curso__btn {
	display: inline-block !important;
	align-self: flex-start;
	margin-top: 0.4rem;
	padding: 0.6rem 1.4rem !important;
	width: auto !important;
	max-width: fit-content;
	background-color: var(--e-global-color-primary, #a4c56d) !important;
	color: var(--e-global-color-accent, #ffffff) !important;
	border-radius: 9999px !important;
	border: none !important;
	text-decoration: none !important;
	text-align: center;
	white-space: nowrap;
	font-family: var(--e-global-typography-accent-font-family, "Quicksand"), sans-serif !important;
	font-weight: var(--e-global-typography-accent-font-weight, 500) !important;
	font-size: 0.95rem !important;
	letter-spacing: 0.02em;
	line-height: 1.2 !important;
	transition: background-color 0.3s ease;
}

.ameba-ediciones-curso .ameba-ediciones-curso__btn:hover,
.ameba-ediciones-curso .ameba-ediciones-curso__btn:focus {
	background-color: var(--e-global-color-secondary, #86a54a) !important;
	color: var(--e-global-color-accent, #ffffff) !important;
}

/* ───── [ameba_proximas_ediciones] ──────────────────────────────────────── */

.ameba-proximas-ediciones {
	font-family: var(--e-global-typography-text-font-family, "Inter"), sans-serif;
	color: var(--e-global-color-text, #1d1d1b);
}

.ameba-proximas-ediciones__list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	row-gap: 60px;
	column-gap: 80px;
}

@media (max-width: 900px) {
	.ameba-proximas-ediciones__list {
		grid-template-columns: repeat(2, 1fr);
		row-gap: 40px;
		column-gap: 40px;
	}
}

@media (max-width: 600px) {
	.ameba-proximas-ediciones__list {
		grid-template-columns: 1fr;
		row-gap: 40px;
	}
}

.ameba-proximas-ediciones__item {
	display: flex;
	flex-direction: column;
	gap: 0.6rem;
	min-width: 0;
}

.ameba-proximas-ediciones .ameba-proximas-ediciones__img-wrap {
	width: 100%;
	margin-bottom: 0.4rem;
}

.ameba-proximas-ediciones .ameba-proximas-ediciones__img {
	width: 100% !important;
	height: 200px !important;
	object-fit: cover !important;
	object-position: center center !important;
	display: block !important;
	-webkit-mask-image: url(../svg/mancha-mask.svg);
	mask-image: url(../svg/mancha-mask.svg);
	-webkit-mask-size: 100% 100%;
	mask-size: 100% 100%;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
}

.ameba-proximas-ediciones__titulo {
	margin: 0;
	color: var(--e-global-color-primary, #a4c56d);
	font-family: var(--e-global-typography-primary-font-family, "Quicksand"), sans-serif;
	font-weight: var(--e-global-typography-primary-font-weight, 600);
}

.ameba-proximas-ediciones__meta {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 1rem;
	flex-wrap: wrap;
}

.ameba-proximas-ediciones__lugar {
	font-size: 1.3rem;
	font-weight: 700;
	color: var(--e-global-color-text, #1d1d1b);
}

.ameba-proximas-ediciones__fecha {
	margin: 0;
	font-size: 1rem;
	color: var(--e-global-color-text, #1d1d1b);
}

.ameba-proximas-ediciones__extracto {
	margin: 0;
	font-size: 1rem;
	color: var(--e-global-color-text, #1d1d1b);
}

.ameba-proximas-ediciones .ameba-proximas-ediciones__btn {
	display: inline-block !important;
	align-self: flex-start;
	margin-top: 0.6rem;
	padding: 0.6rem 1.4rem !important;
	width: auto !important;
	max-width: fit-content;
	background-color: var(--e-global-color-primary, #a4c56d) !important;
	color: var(--e-global-color-accent, #ffffff) !important;
	border-radius: 9999px !important;
	border: none !important;
	text-decoration: none !important;
	text-align: center;
	white-space: nowrap;
	font-family: var(--e-global-typography-accent-font-family, "Quicksand"), sans-serif !important;
	font-weight: var(--e-global-typography-accent-font-weight, 500) !important;
	font-size: 0.95rem !important;
	letter-spacing: 0.02em;
	line-height: 1.2 !important;
	transition: background-color 0.3s ease;
}

.ameba-proximas-ediciones .ameba-proximas-ediciones__btn:hover,
.ameba-proximas-ediciones .ameba-proximas-ediciones__btn:focus {
	background-color: var(--e-global-color-secondary, #86a54a) !important;
	color: var(--e-global-color-accent, #ffffff) !important;
}

.ameba-proximas-ediciones--vacio {
	padding: 1.5rem 0;
}

.ameba-proximas-ediciones--vacio p {
	margin: 0;
	font-size: 1.1rem;
}

/* ───── [ameba_catalogo] ────────────────────────────────────────────────── */

.ameba-catalogo {
	font-family: var(--e-global-typography-text-font-family, "Inter"), sans-serif;
	color: var(--e-global-color-text, #1d1d1b);
}

.ameba-catalogo__list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	row-gap: 60px;
	column-gap: 80px;
}

@media (max-width: 900px) {
	.ameba-catalogo__list {
		grid-template-columns: repeat(2, 1fr);
		row-gap: 40px;
		column-gap: 40px;
	}
}

@media (max-width: 600px) {
	.ameba-catalogo__list {
		grid-template-columns: 1fr;
		row-gap: 40px;
	}
}

.ameba-catalogo__item {
	display: flex;
	flex-direction: column;
	gap: 0.6rem;
	min-width: 0;
}

.ameba-catalogo .ameba-catalogo__img-wrap {
	width: 100%;
	margin-bottom: 0.4rem;
	border-radius: 30px;
	overflow: hidden;
}

.ameba-catalogo .ameba-catalogo__img {
	width: 100% !important;
	height: 200px !important;
	object-fit: cover !important;
	object-position: center center !important;
	border-radius: 30px !important;
	display: block !important;
}

.ameba-catalogo__titulo {
	margin: 0;
	color: var(--e-global-color-primary, #86a54a);
	font-family: var(--e-global-typography-primary-font-family, "Quicksand"), sans-serif;
	font-weight: var(--e-global-typography-primary-font-weight, 600);
}

.ameba-catalogo__extracto {
	margin: 0;
	font-size: 1rem;
	color: var(--e-global-color-text, #1d1d1b);
}

.ameba-catalogo .ameba-catalogo__btn {
	display: inline-block !important;
	align-self: flex-start;
	margin-top: 0.4rem;
	padding: 0.6rem 1.4rem !important;
	width: auto !important;
	max-width: fit-content;
	background-color: var(--e-global-color-primary, #86a54a) !important;
	color: var(--e-global-color-accent, #ffffff) !important;
	border-radius: 9999px !important;
	border: none !important;
	text-decoration: none !important;
	text-align: center;
	white-space: nowrap;
	font-family: var(--e-global-typography-accent-font-family, "Quicksand"), sans-serif !important;
	font-weight: var(--e-global-typography-accent-font-weight, 500) !important;
	font-size: 0.95rem !important;
	letter-spacing: 0.02em;
	line-height: 1.2 !important;
	transition: background-color 0.3s ease;
}

.ameba-catalogo .ameba-catalogo__btn:hover,
.ameba-catalogo .ameba-catalogo__btn:focus {
	background-color: var(--e-global-color-secondary, #a4c56d) !important;
	color: var(--e-global-color-accent, #ffffff) !important;
}

.ameba-catalogo--vacio {
	padding: 1.5rem 0;
}

.ameba-catalogo--vacio p {
	margin: 0;
	font-size: 1.1rem;
}
