/* === Acción Juvenil Internacional — acento + componentes propios ===
   Encolado por el plugin FUNAJIT Páginas solo donde hay shortcodes [aj_...].
   Reusa el sistema fjx global (cargado en todo el sitio). */

/* Azules reales del logo AJ: brillante #026DFE + profundo #0021C6 */
.aj-hero { --fjx-accent: #026DFE; }
/* Header del tema = overlay transparente de 134px. El CSS global (Customizer) define
   `padding:` shorthand DESPUÉS de este archivo y pisaba el padding-top simple; por eso
   va con doble clase (mayor especificidad) + !important, y min-height:0 para que el
   centrado vertical del hero no absorba el empuje. Verificado en vivo: eyebrow a 219px. */
.fjx-hero.aj-hero { padding-top:180px !important; padding-bottom:44px !important; min-height:0 !important; }
.aj-hero .fjx-eyebrow { color: #026DFE !important; }
@media (max-width:760px){ .fjx-hero.aj-hero { padding-top:120px !important; } }

/* ===== CTA final ([aj_cta]) — centrado real + botón visible sobre el degradado ===== */
/* el tema limita el ancho de .fjx-title y lo ancla a la izquierda; aquí se fuerza centrado */
.fjx-cta-row .fjx-title {
  max-width:none !important; margin-left:auto !important; margin-right:auto !important;
  text-align:center !important; color:#fff !important;
}
.fjx-cta-row .fjx-lead { margin-left:auto !important; margin-right:auto !important; text-align:center !important; max-width:62ch; }
.fjx-cta-row .fjx-btn-outline {
  color:#fff !important; border:2px solid rgba(255,255,255,.75) !important; background:transparent !important;
}
.fjx-cta-row .fjx-btn-outline:hover { background:rgba(255,255,255,.16) !important; border-color:#fff !important; color:#fff !important; }

/* ===== El programa ([aj_programa]) — dos columnas: texto + foto ===== */
.aj-prog-grid { display:grid; grid-template-columns:1.05fr .95fr; gap:56px; align-items:center; }
.aj-prog-foto { margin:0; }
.aj-prog-foto img {
  display:block; width:100%; aspect-ratio:4/3; object-fit:cover;
  border-radius:24px; box-shadow:0 24px 60px rgba(16,42,67,.16);
}
@media (max-width:900px){ .aj-prog-grid { grid-template-columns:1fr; gap:28px; } }

/* meta del hero: rol + ciudad */
.aj-meta { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin:18px 0 6px; }
.aj-pill {
  display:inline-flex; align-items:center; padding:7px 14px; border-radius:999px;
  background:#e8f0ff; color:#0021C6; font-weight:800; font-size:13px;
  border:1px solid rgba(2,109,254,.20);
}
.aj-loc { color:#3d4a66; font-weight:600; font-size:14px; }

/* ===== Números ([aj_numeros]) — contenidos, con aire arriba y abajo ===== */
.aj-stats {
  display:grid; grid-template-columns:repeat(4,1fr); gap:18px;
  max-width:1120px; margin:0 auto; padding:64px 24px;
}
.aj-stats .fjx-stat-card { border-radius:18px; }
@media (max-width:980px){ .aj-stats { grid-template-columns:repeat(2,1fr); } }
@media (max-width:520px){ .aj-stats { grid-template-columns:1fr; } }

/* ===== Trayectoria por año — línea de tiempo con espina ===== */
.aj-tray-wrap { position:relative; display:flex; flex-direction:column; gap:10px; padding-left:0; }
/* espina vertical que conecta los años */
.aj-tray-wrap::before {
  content:""; position:absolute; left:6px; top:28px; bottom:28px; width:2px;
  background:linear-gradient(180deg,#026DFE 0%, #85B7EB 100%); border-radius:2px;
}
.aj-tray-year {
  position:relative; display:grid; grid-template-columns:110px 1fr; gap:18px; align-items:start;
  padding:22px 4px 22px 34px; border-top:1px solid rgba(16,42,67,.10);
}
.aj-tray-year:first-child { border-top:0; }
/* nodo del año, centrado sobre la espina (left:0 == borde de .aj-tray-wrap) */
.aj-tray-year::before {
  content:""; position:absolute; left:0; top:26px; width:14px; height:14px; border-radius:50%;
  background:#026DFE; border:3px solid #fff; box-shadow:0 0 0 1.5px #026DFE; z-index:1;
}
.aj-tray-y {
  position:sticky; top:96px;
  font-family:"Outfit",sans-serif; font-weight:900; font-size:30px; line-height:1;
  color:#026DFE;
}
.aj-tray-list { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:12px; }
.aj-tray-list li {
  display:grid; grid-template-columns:96px 28px minmax(180px,1.4fr) minmax(110px,.8fr) minmax(140px,1fr);
  gap:14px; align-items:center;
  padding:10px 16px 10px 10px; border-radius:14px; background:#f6f8fc; border:1px solid rgba(16,42,67,.07);
  transition:transform .15s ease, box-shadow .15s ease, background .15s ease;
}
.aj-tray-list li:hover { transform:translateX(3px); background:#fff; box-shadow:0 8px 22px rgba(2,109,254,.10); }
/* foto-evidencia de la conferencia (clic = ver en grande) o tile con siglas si aún no hay foto */
.aj-tray-thumb {
  display:block; width:96px; aspect-ratio:4/3; object-fit:cover; border-radius:10px;
  box-shadow:0 4px 12px rgba(16,42,67,.14);
}
img.aj-tray-thumb { cursor:zoom-in; transition:transform .2s ease, box-shadow .2s ease; }
img.aj-tray-thumb:hover { transform:scale(1.05); box-shadow:0 8px 20px rgba(2,109,254,.25); }
/* nombre completo del MUN bajo las siglas */
.aj-tray-full { display:block; font-style:normal; font-weight:600; color:#66748c; font-size:12.5px; line-height:1.35; margin-top:2px; }
.aj-thumb-ph {
  display:flex; align-items:center; justify-content:center;
  background:linear-gradient(135deg,#0021C6,#026DFE); color:#fff;
  font-family:"Outfit",sans-serif; font-weight:800; font-size:12px; letter-spacing:.03em;
  text-align:center; padding:4px; overflow:hidden;
}
.aj-tray-flag { width:28px; height:20px; object-fit:cover; border-radius:4px; box-shadow:0 1px 4px rgba(16,42,67,.18); }
.aj-tray-conf { font-family:"Outfit",sans-serif; font-weight:800; color:#0a1628; font-size:16px; }
.aj-tray-city { color:#3d4a66; font-size:14px; }
.aj-tray-role { color:#66748c; font-size:13.5px; }

@media (max-width:760px){
  .aj-tray-year { grid-template-columns:1fr; gap:10px; padding-left:34px; }
  .aj-tray-y { position:static; font-size:24px; }
  .aj-tray-year::before { top:24px; }
  .aj-tray-list li { grid-template-columns:84px 1fr; grid-auto-rows:min-content; gap:4px 12px; padding:10px 14px 10px 10px; align-items:start; }
  .aj-tray-thumb { width:84px; grid-row:1 / span 4; }
  .aj-tray-flag { margin-top:2px; }
}

/* ===== Slide principal: logo AJ + banderas en órbita ===== */
.aj-orbit{position:relative;width:min(460px,82vw);aspect-ratio:1;margin:0 auto}
.aj-orbit-ring{position:absolute;inset:6%;border-radius:50%;
  border:1.5px dashed rgba(37,99,235,.30);animation:aj-spin 46s linear infinite}
.aj-flag{position:absolute;width:58px;height:58px;transform:translate(-50%,-50%)}
.aj-flag img{display:block;width:100%;height:100%;object-fit:cover;border-radius:50%;
  background:#fff;border:3px solid #fff;box-shadow:0 8px 22px rgba(16,42,67,.20);
  animation:aj-spin-rev 46s linear infinite}
.aj-orbit-core{position:absolute;top:50%;left:50%;width:42%;height:42%;transform:translate(-50%,-50%);
  display:grid;place-items:center;
  animation:aj-float 5.5s ease-in-out infinite;z-index:2}
.aj-orbit-core img{width:100%;height:100%;object-fit:contain;
  filter:drop-shadow(0 22px 40px rgba(2,33,198,.28))}
@keyframes aj-spin{to{transform:rotate(360deg)}}
@keyframes aj-spin-rev{to{transform:rotate(-360deg)}}
@keyframes aj-float{0%,100%{margin-top:0}50%{margin-top:-10px}}
@media (max-width:760px){ .aj-flag{width:46px;height:46px} }

/* ===== Destacado: incidencia internacional real (glass sobre azul AJ) ===== */
.aj-real-row {
  background:linear-gradient(135deg,#0021C6 0%, #026DFE 100%);
  position:relative; overflow:hidden;
}
.aj-real-inner { max-width:1120px; margin:0 auto; padding:0 24px; position:relative; z-index:1; }
.aj-real-head { text-align:center; margin-bottom:34px; }
/* !important: el tema pisa colores de h2/h3/kicker y limita el ancho del título
   (lo que lo dejaba anclado a la izquierda) — aquí se fuerza blanco y centrado real */
.aj-real-row .fjx-kicker, .aj-real-head .fjx-kicker { color:rgba(255,255,255,.78) !important; }
.aj-real-row .fjx-title, .aj-real-head .fjx-title {
  color:#fff !important; max-width:none !important;
  margin-left:auto !important; margin-right:auto !important; text-align:center !important;
}
.aj-real-row .fjx-lead, .aj-real-head .fjx-lead {
  color:rgba(255,255,255,.85) !important; margin:10px auto 0 !important;
  max-width:62ch; text-align:center !important;
}
.aj-real-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.aj-real-card {
  background:rgba(255,255,255,.12);
  -webkit-backdrop-filter:blur(22px) saturate(160%); backdrop-filter:blur(22px) saturate(160%);
  border:1px solid rgba(255,255,255,.24); border-radius:22px;
  padding:26px 26px 24px; color:#fff;
  box-shadow:0 24px 60px rgba(0,12,70,.28);
  transition:transform .2s ease, box-shadow .2s ease;
}
.aj-real-card:hover { transform:translateY(-4px); box-shadow:0 34px 72px rgba(0,12,70,.36); }
/* tarjeta estelar ONU: ancho completo, versión CLARA (alivia la saturación de azul) */
.aj-real-card.aj-real-feat {
  grid-column:1 / -1;
  background:rgba(255,255,255,.96);
  border:1px solid rgba(255,255,255,.9);
  box-shadow:0 28px 70px rgba(0,8,50,.35);
  color:#0a1628;
  display:grid; grid-template-columns:auto 1fr; gap:22px; align-items:center;
}
.aj-real-card.aj-real-feat:hover { box-shadow:0 36px 84px rgba(0,8,50,.45); }
.aj-real-feat .aj-real-logo { width:96px; height:96px; border-radius:22px; padding:14px; border:1px solid #e6ecf5; box-shadow:0 10px 24px rgba(16,42,67,.12); }
.aj-real-card.aj-real-feat h3.aj-real-title { font-size:24px; color:#0a1628 !important; }
.aj-real-feat .aj-real-badge { background:#e8f0ff; border-color:rgba(2,109,254,.25); color:#0021C6; }
.aj-real-feat .aj-real-meta { color:#3d4a66; }
.aj-real-feat .aj-real-desc { color:#33415c; }
.aj-real-feat .aj-real-desc a { color:#0021C6; text-decoration-color:rgba(2,33,198,.35); }
.aj-real-feat .aj-real-desc a:hover { text-decoration-color:#0021C6; }
.aj-real-star {
  display:inline-flex; align-items:center; gap:7px; padding:5px 12px; border-radius:999px;
  background:#0021C6; color:#fff; font-size:12px; font-weight:900; letter-spacing:.02em;
  margin:0 8px 8px 0;
}
.aj-real-top { display:flex; align-items:center; gap:14px; margin-bottom:16px; }
.aj-real-logo {
  width:66px; height:66px; flex:none; border-radius:16px; background:#fff;
  display:grid; place-items:center; padding:9px; box-shadow:0 10px 24px rgba(0,0,0,.20);
}
.aj-real-logo img { max-width:100%; max-height:100%; object-fit:contain; }
.aj-real-badge {
  display:inline-flex; align-items:center; gap:7px; padding:5px 12px; border-radius:999px;
  background:rgba(255,255,255,.16); border:1px solid rgba(255,255,255,.30);
  font-size:12px; font-weight:800; letter-spacing:.02em; margin-bottom:8px;
}
.aj-real-badge i { width:7px; height:7px; border-radius:50%; background:#7dffc0; box-shadow:0 0 0 3px rgba(125,255,192,.30); }
.aj-real-card h3.aj-real-title, .aj-real-title { font-family:"Outfit",sans-serif; font-weight:900; font-size:21px; line-height:1.2; margin:0; color:#fff !important; }
.aj-real-meta {
  display:flex; flex-wrap:wrap; gap:6px 16px; margin:14px 0 12px;
  font-size:13.5px; font-weight:700; color:rgba(255,255,255,.82);
}
.aj-real-desc { font-size:14.5px; line-height:1.6; color:rgba(255,255,255,.92); margin:0; }
.aj-real-desc a { color:#fff; font-weight:700; text-decoration:underline; text-underline-offset:2px; text-decoration-color:rgba(255,255,255,.55); }
.aj-real-desc a:hover { text-decoration-color:#fff; }
@media (max-width:760px){
  .aj-real-grid { grid-template-columns:1fr; }
  .aj-real-title { font-size:19px; }
  .aj-real-feat { grid-template-columns:1fr; gap:14px; }
  .aj-real-feat .aj-real-logo { width:72px; height:72px; }
  .aj-real-card.aj-real-feat h3.aj-real-title { font-size:20px; }
}
