/* ===== Cursos por Área (Axioma) ===== */
:root{
  --ax-bg:#071819; --ax-bg-2:#0c2324;
  --ax-brand:#00e6d7; --ax-text:#e9fffb; --ax-line:#10cbbf;
  --ax-soft:#0b2324; --ax-soft-2:#103033;
}

.ax-cursos{
  padding: 28px 0 60px;
}

.ax-cursos__head h1{
  margin: 0 0 4px 0;
  font-size: clamp(26px, 3vw, 36px);
  color: var(--ax-text);
}
.ax-cursos__head p{
  margin: 0 0 16px 0;
  color: #bfeee9;
}

.ax-filters{
  background: #081e1f;
  border: 1px solid #103033;
  border-radius: 14px;
  padding: 14px;
  margin-bottom: 18px;
}
.ax-filters__row{
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 12px;
  align-items: center;
}
@media (max-width: 840px){
  .ax-filters__row{ grid-template-columns: 1fr; }
}

/* Chips (áreas) */
.ax-chips{ display: flex; flex-wrap: wrap; gap: 10px; }
.chip{
  background: var(--ax-soft);
  border: 1px solid #124547;
  color: var(--ax-text);
  padding: 8px 12px;
  border-radius: 999px;
  cursor: pointer;
  font-weight: 700;
}
.chip:hover{ border-color: var(--ax-brand); }
.chip.is-active{
  background: #0c3b3b;
  border-color: var(--ax-line);
  color: var(--ax-brand);
}

/* Búsqueda local + ordenar */
.ax-local-search{
  display: flex; gap: 10px; align-items: center;
}
.ax-local-search input, .ax-local-search select{
  background: var(--ax-soft);
  border: 1px solid #124547;
  color: var(--ax-text);
  padding: 8px 10px;
  border-radius: 10px;
  outline: none;
}
.ax-local-search input{ min-width: min(420px, 58vw); }
.ax-local-search select{ white-space: nowrap; }

/* Grid de cards */
.ax-grid{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(12px, 2.2vw, 22px);
}
@media (max-width: 1040px){
  .ax-grid{ grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px){
  .ax-grid{ grid-template-columns: 1fr; }
}

/* Card */
.ax-card{
  display: grid;
  grid-template-rows: 168px auto;
  border: 1px solid #103033;
  border-radius: 16px;
  background: linear-gradient(180deg, #081c1d 0%, #071819 100%);
  overflow: hidden;
  transition: transform .18s ease, box-shadow .18s ease;
}
.ax-card:hover{
  transform: translateY(-3px);
  box-shadow: 0 8px 24px rgba(0,0,0,.28);
}
.ax-card__media{
  position: relative;
  background: #041112;
}
.ax-card__media img{
  width: 100%; height: 100%; object-fit: cover; display: block;
}

/* Badges */
.badges{
  position: absolute; left: 10px; top: 10px; display: flex; gap: 8px; flex-wrap: wrap;
}
.badge{
  background: #0b2324; border: 1px solid #124547; color: var(--ax-text);
  padding: 5px 8px; border-radius: 999px; font-size: 12px; font-weight: 700;
}
.badge--tipo{ color: #042; background: #00e6d7; border-color: #00e6d7; }

/* Body */
.ax-card__body{
  padding: 12px 12px 16px;
  display: grid; gap: 8px;
}
.ax-card__title{
  margin: 0;
  color: var(--ax-text);
  font-size: clamp(16px, 2.4vw, 19px);
  line-height: 1.25;
  font-weight: 800;
}
.ax-card__meta{
  color: #97d8d1; font-size: 14px;
}
.ax-card__actions{
  margin-top: 4px; display: flex; gap: 10px; flex-wrap: wrap;
}
.btn{
  background: var(--ax-brand); color: #00302d;
  padding: 8px 12px; border-radius: 10px; border: 0;
  font-weight: 800; cursor: pointer;
}
.btn--soft{
  background: #0b2324; color: var(--ax-text);
  border: 1px solid #124547;
}

/* Cargar más */
.ax-loadmore{
  display: grid; place-items: center;
  padding-top: 16px;
}

/* Vacio */
.ax-empty{
  grid-column: 1 / -1; text-align: center; color: #bfeee9; padding: 28px 0;
  border: 1px dashed #124547; border-radius: 12px; background: #081e1f;
}
