/* Athanor Core — componentes del plugin (usa los tokens del tema Athanor 25 si está activo). */
.ath-lista-check { list-style: none; padding: 0; margin: 0; display: grid; gap: 10px; }
.ath-lista-check li { position: relative; padding-left: 30px; }
.ath-lista-check li::before { content: ""; position: absolute; left: 0; top: .35em; width: 18px; height: 18px; border-radius: 999px; background: var(--ath-acento, #F5C902); box-shadow: inset 0 0 0 5px #fff, 0 0 0 1.5px var(--ath-dorado, #D2A500); }
.ath-solucion__pregunta { display: flex; gap: 16px; align-items: center; font-size: clamp(22px, 2.6vw, 30px); font-weight: 500; color: var(--ath-primario, #014FA1); max-width: none; margin: 0 0 32px; }
.ath-solucion__pregunta .ath-icono { width: 56px; height: 56px; flex: none; }
.ath-solucion__pe { margin-bottom: 32px; }
.ath-solucion__listas { margin-top: 48px; gap: 40px !important; }
.ath-solucion__listas h2 { font-size: var(--wp--preset--font-size--tarjeta, 26px); }
.ath-caso__meta { display: flex; flex-wrap: wrap; gap: 12px 32px; margin: 0 0 32px; padding: 20px 24px; background: var(--ath-fondo-alt, #F5F8FC); border-radius: 16px; }
.ath-caso__meta dt { font-size: 13px; text-transform: uppercase; letter-spacing: .08em; color: var(--ath-gris, #5B6B80); }
.ath-caso__meta dd { margin: 0; font-weight: 500; }
.ath-testimonio { border-radius: 24px; padding: 32px; margin: 32px 0; }
.ath-testimonio blockquote { margin: 0; font-size: 22px; }
.ath-testimonio figcaption { margin-top: 12px; color: #C8D3E3; }

/* Clientes */
.ath-clientes__cifras { margin: 0 0 32px; }
.ath-clientes__cifras dd { margin: 0; }
.ath-clientes__cifras .ath-card { display: flex; flex-direction: column-reverse; justify-content: flex-end; }
.ath-clientes__controles { display: flex; flex-wrap: wrap; gap: 16px; justify-content: space-between; align-items: center; margin-bottom: 16px; }
.ath-tabs { display: inline-flex; background: var(--ath-fondo-alt, #F5F8FC); border-radius: 999px; padding: 4px; gap: 4px; flex-wrap: wrap; }
.ath-tab { border: 0; background: transparent; border-radius: 999px; padding: 10px 18px; min-height: 44px; font: 500 16px Rubik, Arial, sans-serif; color: var(--ath-tinta, #1A2433); cursor: pointer; }
.ath-tab[aria-selected="true"] { background: var(--ath-primario, #014FA1); color: #fff; }
.ath-clientes__buscar { flex: 1 1 260px; max-width: 360px; }
.ath-clientes__buscar input { width: 100%; }
.ath-chips { border: 0; padding: 0; margin: 0 0 16px; display: flex; flex-wrap: wrap; gap: 8px; }
.ath-chip { border: 1.5px solid var(--ath-borde, #DDE5EF); background: #fff; border-radius: 999px; padding: 8px 14px; min-height: 44px; font: 400 15px Rubik, Arial, sans-serif; cursor: pointer; color: var(--ath-tinta, #1A2433); }
.ath-chip[aria-pressed="true"] { border-color: var(--ath-primario, #014FA1); background: #EAF2FB; color: var(--ath-primario, #014FA1); font-weight: 500; }
.ath-clientes__estado { font-size: 14px; color: var(--ath-gris, #5B6B80); }
.ath-muro { list-style: none; padding: 0; margin: 0 0 24px; display: grid; gap: 12px; grid-template-columns: repeat(2, 1fr); }
@media (min-width: 768px) { .ath-muro { grid-template-columns: repeat(4, 1fr); } }
@media (min-width: 1024px) { .ath-muro { grid-template-columns: repeat(6, 1fr); } }
.ath-muro__item { position: relative; }
.ath-muro__item[hidden] { display: none; }
.ath-muro__tarjeta { width: 100%; min-height: 112px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; text-align: center; padding: 16px 12px; background: #fff; border: 1px solid var(--ath-borde, #DDE5EF); border-radius: 16px; cursor: pointer; font: 500 15px/1.3 Rubik, Arial, sans-serif; color: var(--ath-noche, #0A2540); transition: box-shadow .2s, transform .2s; }
@media (hover: hover) { .ath-muro__tarjeta:hover { box-shadow: var(--ath-sombra-2); transform: translateY(-2px); } }
.ath-muro__tarjeta[aria-expanded="true"] { border-color: var(--ath-celeste, #1990CB); }
.ath-muro__logo img { max-height: 48px; width: auto; }
.ath-muro__sector { font-size: 12px; font-weight: 500; border-radius: 999px; padding: 2px 10px; }
.ath-muro__sector--privado { background: #EAF2FB; color: var(--ath-primario, #014FA1); }
.ath-muro__sector--publico { background: #E7F5EE; color: #145C3B; }
.ath-muro__ficha { position: absolute; z-index: 5; left: 0; right: 0; top: calc(100% + 6px); min-width: 220px; background: #fff; border-radius: 16px; box-shadow: var(--ath-sombra-3, 0 16px 40px rgba(10,37,64,.12)); border: 1px solid var(--ath-borde, #DDE5EF); padding: 16px; font-size: 15px; }
.ath-muro__ficha dl { margin: 8px 0 0; display: grid; gap: 6px; }
.ath-muro__ficha dt { font-size: 12px; color: var(--ath-gris, #5B6B80); text-transform: uppercase; letter-spacing: .06em; }
.ath-muro__ficha dd { margin: 0; }
.ath-muro__ficha p { margin: 8px 0 0; color: var(--ath-gris, #5B6B80); }

/* Formulario de candidatos */
.ath-postular { background: #fff; border: 1px solid var(--ath-borde, #DDE5EF); border-radius: 32px; box-shadow: var(--ath-sombra-2); overflow: hidden; }
.ath-postular__cabecera { background: var(--ath-primario, #014FA1); color: #fff; padding: clamp(24px, 4vw, 40px); }
.ath-postular__cabecera .ath-antetitulo { color: var(--ath-acento, #F5C902); }
.ath-postular__titulo { color: #fff !important; margin: 0 0 24px; font-size: clamp(28px, 3.6vw, 40px); }
.ath-postular__titulo span { display: block; color: #9CC9F0; font-weight: 500; font-size: .72em; margin-top: 4px; }
.ath-pasos { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
.ath-pasos__item { background: rgba(255,255,255,.14); color: #fff; border-radius: 999px; min-height: 40px; display: flex; align-items: center; justify-content: center; gap: 6px; font-weight: 500; font-size: 15px; padding: 6px 10px; text-align: center; }
.ath-pasos__item.is-hecho { background: rgba(255,255,255,.28); }
.ath-pasos__item.is-actual { background: var(--ath-acento, #F5C902); color: var(--ath-noche, #0A2540); }
.ath-pasos__movil { display: none; }
.ath-postular__form { padding: clamp(24px, 4vw, 40px); }
.ath-paso { border: 0; padding: 0; margin: 0 0 24px; min-width: 0; }
.ath-paso[hidden] { display: none; }
.ath-paso__leyenda { font-size: 20px; font-weight: 500; color: var(--ath-noche, #0A2540); margin-bottom: 16px; display: flex; gap: 10px; align-items: center; padding: 0; }
.ath-paso__leyenda span { width: 32px; height: 32px; border-radius: 999px; background: var(--ath-fondo-alt, #F5F8FC); color: var(--ath-primario, #014FA1); display: inline-grid; place-items: center; font-size: 16px; }
.ath-etiqueta { display: block; font-weight: 500; margin-bottom: 6px; }
.ath-carga { position: relative; }
.ath-carga input[type="file"] { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; cursor: pointer; }
.is-js .ath-carga input[type="file"] { z-index: 2; }
.ath-carga__zona { display: flex !important; flex-direction: column; align-items: center; justify-content: center; gap: 6px; text-align: center; min-height: 160px; padding: 24px; border: 2px dashed var(--ath-celeste, #1990CB); border-radius: 20px; background: var(--ath-fondo-alt, #F5F8FC); color: var(--ath-gris, #5B6B80); font-weight: 400 !important; margin: 0 !important; }
.ath-carga__zona strong { color: var(--ath-noche, #0A2540); font-size: 18px; font-weight: 500; }
.ath-carga__icono { width: 44px; height: 44px; color: var(--ath-celeste, #1990CB); }
.ath-carga.is-sobre .ath-carga__zona, .ath-carga:focus-within .ath-carga__zona { border-style: solid; background: #EAF5FB; box-shadow: var(--ath-foco); }
.ath-carga[hidden] { display: none; }
.ath-carga__tactil { display: none; }
@media (hover: none) and (pointer: coarse) { .ath-carga__tactil { display: inline; } .ath-carga__escritorio { display: none; } }
.ath-archivo { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; border: 1.5px solid var(--ath-borde, #DDE5EF); border-radius: 16px; padding: 10px 12px 10px 18px; }
.ath-archivo[hidden] { display: none; }
.ath-archivo__nombre { font-weight: 500; flex: 1 1 200px; word-break: break-all; }
.ath-archivo__barra { flex: 0 0 120px; height: 8px; background: var(--ath-borde, #DDE5EF); border-radius: 999px; overflow: hidden; }
.ath-archivo__barra span { display: block; height: 100%; width: 0; background: var(--ath-celeste, #1990CB); transition: width .2s; }
.ath-aviso-privacidad { background: var(--ath-fondo-alt, #F5F8FC); border-radius: 16px; padding: 16px 20px; font-size: 15px; margin-bottom: 8px; }
.ath-aviso-privacidad p { margin: 0; max-width: none; }
.ath-postular__acciones { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.ath-postular__acciones [hidden] { display: none; }
.ath-confirmacion { text-align: center; padding: clamp(32px, 6vw, 64px) 24px; }
.ath-confirmacion .ath-icono, .ath-confirmacion__icono { width: 80px; height: 80px; color: var(--ath-exito, #1E8E5A); }
.ath-confirmacion__icono .ath-icono__acento { color: var(--ath-exito, #1E8E5A); stroke: var(--ath-exito, #1E8E5A); }
.ath-confirmacion p { margin-inline: auto; color: var(--ath-gris, #5B6B80); }
.ath-confirmacion h2 { margin: 16px 0 8px; }
.ath-btn--secundario.ath-btn { text-decoration: none; display: inline-flex; align-items: center; gap: 8px; margin-top: 16px; }
@media (max-width: 767px) {
	.ath-postular { border-radius: 24px; }
	.is-js .ath-pasos { display: none; }
	.is-js .ath-pasos__movil { display: inline-block; background: var(--ath-acento, #F5C902); color: var(--ath-noche, #0A2540); border-radius: 999px; padding: 4px 16px; font-weight: 500; font-size: 15px; margin: 0; }
	.ath-pasos { grid-template-columns: repeat(2, 1fr); }
	.is-js .ath-postular__acciones { position: sticky; bottom: calc(8px + env(safe-area-inset-bottom)); background: #fff; padding: 12px 0; flex-direction: column-reverse; align-items: stretch; z-index: 3; }
	.is-js .ath-postular__acciones button { width: 100%; }
}
body:has(.ath-postular) .ath-cta-movil { display: none; }
body:has(.ath-postular) { padding-bottom: 0; }
