.adira-texto__body { color: var(--adira-text); text-align: justify; }
.adira-texto__body h2, .adira-texto__body h3 { font-family: Dosis, Arial, sans-serif; text-transform: uppercase; letter-spacing: .1em; color: var(--adira-dark); }
.adira-texto__body a { color: var(--adira-accent); }

/* Soporte del markup migrado del estático (listados e-learning / otros cursos: .works-grid) */
.adira-texto__body .works-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.adira-texto__body .works-grid li { margin: 0; }
.adira-texto__body .works-grid img { display: block; width: 100%; height: auto; }
.adira-texto__body .works-grid a { display: block; transition: opacity .2s; }
.adira-texto__body .works-grid a:hover { opacity: .85; }
@media (max-width: 991px) { .adira-texto__body .works-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 767px) { .adira-texto__body .works-grid { grid-template-columns: 1fr; } }

/* Filtro de cursos (calco .works-filter) */
.adira-texto__body .works-filter {
  list-style: none;
  padding: 0;
  margin: 0 0 45px;
  font-family: Dosis, Arial, sans-serif;
  font-size: 13px;
  text-transform: uppercase;
  text-align: center;
  letter-spacing: .1em;
}
.adira-texto__body .works-filter a {
  display: inline-block;
  margin: 0 27px;
  color: #999;
  text-decoration: none;
  transition: color .37s;
}
.adira-texto__body .works-filter a:hover,
.adira-texto__body .works-filter a.active { color: #111; }
.adira-texto__body .works-filter a.active { cursor: default; }
@media (max-width: 767px) { .adira-texto__body .works-filter a { margin: 0 12px 8px; } }

/* Filtrado: los items ocultos */
.adira-texto__body .work-item.adira-filter-hidden { display: none; }

/* Hover blanco sobre los tiles (calco hover-white) */
.adira-texto__body .works-grid .work-img { position: relative; overflow: hidden; }
.adira-texto__body .works-grid .work-img::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(250,250,250,0);
  transition: background .27s;
}
.adira-texto__body .works-grid li:hover .work-img::after { background: rgba(250,250,250,.35); }

/* Columnas del contenido migrado, sin depender de :has — flex proporcional:
   col-sm-8 + col-sm-4 = 66/33 (contenido + sidebar); col-sm-6 = 50/50 */
.adira-texto__body .row { display: flex; flex-wrap: wrap; gap: 30px; align-items: flex-start; }
.adira-texto__body .row > .col-sm-8 { flex: 2 1 0; min-width: 0; }
.adira-texto__body .row > .col-sm-4 { flex: 1 1 0; min-width: 0; }
.adira-texto__body .row > .col-sm-6 { flex: 1 1 40%; min-width: 0; }
@media (max-width: 767px) {
  .adira-texto__body .row { display: block; }
  .adira-texto__body .row > * { margin-bottom: 30px; }
}

/* Título del contenido migrado (calco .blog-item-title.font-alt) */
.adira-texto__body .blog-item-title {
  margin: 0 0 .5em;
  padding: 0;
  font-family: Dosis, Arial, sans-serif;
  font-size: 24px;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: .2em;
  color: var(--adira-dark);
}
.adira-texto__body .blog-item-title a { color: #111; text-decoration: none; }
.adira-texto__body .blog-item-title a:hover { color: #777; }

/* Widgets del sidebar migrado (calco .widget / .widget-title del original) */
.adira-texto__body .widget { margin-bottom: 40px; }
.adira-texto__body .widget-title {
  margin: 0 0 20px;
  padding-bottom: 5px;
  font-family: Dosis, Arial, sans-serif;
  font-size: 14px;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: .2em;
  color: #777;
  border-bottom: 1px solid #ccc;
}
.adira-texto__body .widget ul { list-style: none; margin: 0; padding: 0; }
.adira-texto__body .widget li { padding: 5px 0; }
.adira-texto__body .widget a { color: var(--adira-text); text-decoration: none; }
.adira-texto__body .widget a:hover { color: var(--adira-dark); }
/* Acordeón legacy (dl.accordion del programa ADR): cerrado por defecto, dt clicable */
.adira-texto__body dl.accordion dt { border: 1px solid #eaeaea; border-bottom: 0; padding: 14px 18px; font-weight: 700; cursor: pointer; }
.adira-texto__body dl.accordion dt:last-of-type { border-bottom: 0; }
.adira-texto__body dl.accordion dt::before { content: "+"; margin-right: 10px; color: var(--adira-accent); }
.adira-texto__body dl.accordion dt.is-open::before { content: "–"; }
.adira-texto__body dl.accordion dt a { color: var(--adira-dark); text-decoration: none; pointer-events: none; }
.adira-texto__body dl.accordion dd { margin: 0; border: 1px solid #eaeaea; border-top: 0; border-bottom: 0; padding: 0 18px; max-height: 0; overflow: hidden; transition: max-height .35s cubic-bezier(.2,0,0,1), padding .35s; }
.adira-texto__body dl.accordion dd.is-open { max-height: 1200px; padding: 12px 18px 18px; }
.adira-texto__body dl.accordion dd:last-of-type { border-bottom: 1px solid #eaeaea; }
.adira-texto__body dl.accordion:not(.adira-accordion-ready) dd { max-height: none; }

/* Tablas legacy (.table / .table-hover) */
.adira-texto__body table.table { width: 100%; border-collapse: collapse; }
.adira-texto__body table.table td { padding: 10px 8px; border-top: 1px solid #eaeaea; text-align: left; }
.adira-texto__body table.table-hover tr:hover td { background: var(--adira-gray-lighter); }

/* Botones legacy del contenido migrado (descargar temario, redes…). btn-round original = 2px */
.adira-texto__body .btn,
.adira-texto__body a.btn-mod {
  display: inline-block;
  padding: 8px 37px;
  font-family: Dosis, Arial, sans-serif;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: .2em;
  text-transform: uppercase;
  text-decoration: none;
  color: #fff;
  background: var(--adira-dark);
  border-radius: 2px;
  transition: background .2s, color .2s;
}
.adira-texto__body .btn:hover,
.adira-texto__body a.btn-mod:hover { background: var(--adira-naranja, #FF8F00); color: #fff; }
/* Variante gris pequeña (botones de redes del sidebar: .btn-small.btn-gray del original) */
.adira-texto__body .btn.btn-gray { background: #e5e5e5; color: #777; }
.adira-texto__body .btn.btn-gray:hover { background: #d5d5d5; color: #444; }
.adira-texto__body .btn.btn-small { padding: 6px 17px; font-size: 11px; }
.adira-texto__body .btn .fa { margin-right: 6px; }
.adira-texto__body .mb-10 { margin-bottom: 10px; }
.adira-texto__body .sidebar .btn { margin-right: 4px; }
/* Botones de redes del sidebar migrado (CAP/ADR/PRL) en una sola fila */
.adira-texto__body .sidebar .widget-body:has(> .btn) { display: flex; flex-wrap: nowrap; gap: 6px; }
.adira-texto__body .sidebar .widget-body:has(> .btn) .btn {
  flex: 1 1 0;
  min-width: 0;
  margin: 0;
  padding: 6px 4px;
  font-size: 10px;
  letter-spacing: .08em;
  text-align: center;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
