/* Popups de webinar (includes/promos.php). Réplica del popup de Elementor #23694: tarjeta flotante sin fondo oscuro
   (40 % del ancho en escritorio, 70 % en tableta) y, en móvil, barra fija abajo. Colores: brand #003942, accent #00B3BE. */
.amg-promo { --promo-red: #FF0000; --promo-brand: #003942; --promo-pill: #1BB3B6; --promo-accent: #00B3BE;
	position: fixed; z-index: 9990; left: 50%; top: 50%; transform: translate(-50%, -50%);
	width: 40vw; max-height: calc(100vh - 2rem); overflow: auto; overscroll-behavior: contain;
	border-radius: 20px; background: var(--promo-brand); box-shadow: 0 10px 40px rgba(0, 0, 0, .3);
	font-family: Raleway, sans-serif; line-height: 1.45; color: #fff; }
.amg-promo[hidden] { display: none; }
.amg-promo * { box-sizing: border-box; }
.amg-promo p, .amg-promo ul { margin: 0; }
.amg-promo ul { padding: 0; }
.amg-promo__close { position: absolute; top: .5rem; right: .6rem; z-index: 1; width: 2rem; height: 2rem; padding: 0; border: 0; border-radius: 50%;
	background: transparent; color: var(--promo-brand); font: 400 1.6rem/1 Raleway, sans-serif; cursor: pointer; }
.amg-promo__close:hover, .amg-promo__close:focus-visible { background: rgba(0, 57, 66, .1); }
.amg-promo__tag { display: inline-block; background: var(--promo-red); color: #fff; font-weight: 800; text-transform: uppercase; padding: 14px 22px 0; }
.amg-promo__head { background: #fff; text-align: center; padding: 0 1rem 1.2rem; }
.amg-promo__head .amg-promo__tag { padding: 14px 22px 10px; }
.amg-promo__title { margin-top: .9rem !important; color: var(--promo-brand); font-size: 1.3rem; font-weight: 700; line-height: 1.4; }
.amg-promo__body { padding: 1rem; display: flex; flex-direction: column; }
.amg-promo__date { align-self: center; background: #fff; color: #000; font-weight: 700; padding: 3px 20px 14px; min-width: 73%; text-align: center; }
.amg-promo__time { align-self: center; background: var(--promo-red); color: #fff; font-size: .8rem; font-weight: 600; padding: 3px 10px 14px; }
.amg-promo__people { list-style: none; display: grid; grid-template-columns: repeat(auto-fit, minmax(0, 1fr)); gap: 0; margin-top: 2rem !important; }
.amg-promo__person { display: flex; flex-direction: column; align-items: center; text-align: center; padding: 0 .25rem; }
.amg-promo__photo { width: 45%; height: auto; aspect-ratio: 1; object-fit: cover; border: 7px solid #fff; border-radius: 50%; margin-bottom: .6rem; }
.amg-promo__name { display: flex; align-items: center; gap: .5rem; background: var(--promo-pill); border-radius: 15px; padding: 4px 14px;
	color: var(--promo-brand); font-size: 18px; font-weight: 600; line-height: 1.5; text-align: left; }
.amg-promo__flag { width: 30px; height: auto; flex: none; }
.amg-promo__role { margin-top: .5rem; color: #fff; }
.amg-promo__tag--small { align-self: flex-start; margin-top: 2rem; font-size: .7rem; padding: 12px 22px; }
.amg-promo__topics { list-style: none; margin: 1rem 0 0 2.5rem !important; }
.amg-promo__topics li::before { content: "\25B6\FE0E"; margin-right: .3em; }
.amg-promo__cta { display: flex; justify-content: center; align-items: center; gap: 22px; margin: 2rem 0 1rem; padding: .7rem 1rem;
	background: #EBEBEB; color: var(--promo-brand); border-radius: 3px; font-weight: 600; text-decoration: none; }
.amg-promo__cta:hover, .amg-promo__cta:focus-visible { background: var(--promo-accent); color: #fff; }
.amg-promo__arrow { width: 1em; height: 1em; }
.amg-promo__bar { display: none; }

@media (max-width: 1024px) { .amg-promo { width: 70vw; } }

/* Móvil: solo la barra, fija abajo */
@media (max-width: 767px) {
	.amg-promo { top: auto; bottom: 0; left: 0; transform: none; width: 100vw; max-height: none; border-radius: 0;
		border-top: 5px solid var(--promo-accent); box-shadow: 0 -4px 20px rgba(0, 0, 0, .25); }
	.amg-promo__full { display: none; }
	.amg-promo__close { top: .2rem; right: .2rem; color: #fff; font-size: 1.3rem; width: 1.6rem; height: 1.6rem; }
	.amg-promo__close:hover, .amg-promo__close:focus-visible { background: rgba(255, 255, 255, .15); }
	.amg-promo__bar { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: 15px 14px 28px; }
	.amg-promo__bar-text { display: flex; flex-direction: column; align-items: flex-start; gap: .3rem; }
	.amg-promo__bar .amg-promo__tag { padding: 4px; }
	.amg-promo__bar-date { font-size: .8rem; font-weight: 600; }
	.amg-promo__more { flex: none; margin-top: 10px; background: var(--promo-accent); color: #fff; padding: 12px 24px; border-radius: 3px; text-decoration: none; }
	.amg-promo__more:hover, .amg-promo__more:focus-visible { background: var(--promo-brand); outline: 2px solid #fff; }
}
