body {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

header,
header * {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

#root > div:first-child {
  padding-top: 0 !important;
  margin-top: 0 !important;
  height: auto !important;
  min-height: 0 !important;
}

/* La franja roja de Gobierno de México se queda en flujo normal */
.navbar-fixed-top:not(.sub-navbar) {
  position: relative !important;
  top: auto !important;
  margin-top: 0 !important;
}

/* La franja del menú (Alumnos, Tesis, etc.) se queda pegada al hacer scroll */
.sub-navbar {
  position: sticky !important;
  top: 0 !important;
  z-index: 1000 !important;
}

#root > div > div > h3 {
  margin: 0 !important;
  padding: 0 !important;
  min-height: 0 !important;
  line-height: 0 !important;
  font-size: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
}
.sub-navbar {
  margin-top: 0 !important;
}

/* --- Apilar tarjetas de Profesores: arriba foto+nombre+página personal, abajo biografía --- */

/* La fila de cada profesor pasa de "una sola línea" a "puede partirse en 2 líneas" */
.GrupoTrabajo_subtitulo__3lQei ~ .col-md-12 {
  display: flex !important;
  flex-wrap: wrap !important;
  margin-bottom: 25px !important;
}

/* El espaciador vacío del inicio ya no hace falta, lo quitamos */
.GrupoTrabajo_subtitulo__3lQei ~ .col-md-12 > .col-md-1:first-child {
  display: none !important;
}

/* El bloque de foto + nombre + página personal ocupa TODO el ancho arriba */
.GrupoTrabajo_subtitulo__3lQei ~ .col-md-12 > div[id] {
  flex: 0 0 100% !important;
  max-width: 100% !important;
}

/* La caja de Biografía baja y también ocupa todo el ancho */
.GrupoTrabajo_subtitulo__3lQei ~ .col-md-12 .col-md-6 {
  flex: 0 0 100% !important;
  max-width: 100% !important;
  margin-top: 15px !important;
}

/* Baja un poco el título "Profesores:" */
.GrupoTrabajo_subtitulo__3lQei {
  margin-top: 15px !important;
}

/* Recorre "Página personal" más a la derecha */
.GrupoTrabajo_subtitulo__3lQei ~ .col-md-12 .col-md-1:last-child {
  margin-left: 60px !important;
}

/* Baja un poco los logos dentro de la franja, sin mover el menú */
.sub-navbar .navbar-header {
  padding-top: 10px !important;
}

/* --- Proyectos: columnas legibles y sin textos encimados --- */
.Tesis_containerWrap__DWGQP {
display: block !important;
overflow-x: auto;
}

.Tesis_tesisTable__x0z7t {
width: 100% !important;
table-layout: fixed;
}

.Tesis_tesisTable__x0z7t th,
.Tesis_tesisTable__x0z7t td {
padding: 12px !important;
vertical-align: top;
overflow-wrap: anywhere;
word-break: normal;
}

/* Tipo, título, resumen y responsables */
.Tesis_tesisTable__x0z7t th:nth-child(1),
.Tesis_tesisTable__x0z7t td:nth-child(1) { width: 14%; }

.Tesis_tesisTable__x0z7t th:nth-child(2),
.Tesis_tesisTable__x0z7t td:nth-child(2) { width: 22%; }

.Tesis_tesisTable__x0z7t th:nth-child(3),
.Tesis_tesisTable__x0z7t td:nth-child(3) { width: 42%; }

.Tesis_tesisTable__x0z7t th:nth-child(4),
.Tesis_tesisTable__x0z7t td:nth-child(4) {
width: 22%;
text-align: left;
}

/* Evita que las viñetas invadan la columna de Resumen */
.Tesis_tesisTable__x0z7t td:nth-child(4) li {
list-style-position: inside;
margin-left: 0;
padding-left: 0;
margin-bottom: 6px;
}

@media (max-width: 768px) {
.Tesis_tesisTable__x0z7t {
min-width: 760px;
}
}

/* --- Líneas de investigación: iconos junto a Líneas y Aplicación --- */
/* Reemplaza el bloque equivalente en tu custom.css por este */

[class*="homepageLineas"] {
  align-items: flex-start;
  column-gap: 90px;
}

/* Reservamos espacio a la izquierda para el icono en ambas columnas */
[class*="homepageLineas"] > div:first-child,
[class*="homepageLineas"] > div:nth-child(2) {
  position: relative;
  padding-left: 68px;
  box-sizing: border-box;
}

/* Icono base: mismo tamaño y posición para las dos columnas,
   alineado con la parte superior del título (sin desplazamientos
   negativos que lo hagan pisar el texto de arriba) */
[class*="homepageLineas"] > div:first-child::before,
[class*="homepageLineas"] > div:nth-child(2)::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 48px;
  height: 48px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

/* 1. Icono de Laptop (columna "Líneas") */
[class*="homepageLineas"] > div:first-child::before {
  background-image: url("/static/media/icono-lab-robotica.png");
}

/* 2. Icono de Dron (columna "Aplicación") */
[class*="homepageLineas"] > div:nth-child(2)::before {
  background-image: url("/static/media/icono-dron.png");
}

/* --- Adaptación para celulares --- */
@media (max-width: 768px) {
  [class*="homepageLineas"] {
    align-items: stretch;
    column-gap: 0;
    flex-direction: column;
    row-gap: 25px;
  }

  [class*="homepageLineas"] > div:first-child,
  [class*="homepageLineas"] > div:nth-child(2) {
    flex: 0 1 auto;
    width: 100%;
    padding-left: 56px;
  }

  [class*="homepageLineas"] > div:first-child::before,
  [class*="homepageLineas"] > div:nth-child(2)::before {
    width: 40px;
    height: 40px;
  }
}

/* --- Proyectos: columnas legibles y sin textos encimados --- */
.Tesis_containerWrap__DWGQP {
display: block !important;
overflow-x: auto;
}

.Tesis_tesisTable__x0z7t {
width: 100% !important;
table-layout: fixed;
}

.Tesis_tesisTable__x0z7t th,
.Tesis_tesisTable__x0z7t td {
padding: 12px !important;
vertical-align: top;
overflow-wrap: anywhere;
word-break: normal;
}

/* Tipo, título, resumen y responsables */
.Tesis_tesisTable__x0z7t th:nth-child(1),
.Tesis_tesisTable__x0z7t td:nth-child(1) { width: 14%; }

.Tesis_tesisTable__x0z7t th:nth-child(2),
.Tesis_tesisTable__x0z7t td:nth-child(2) { width: 22%; }

.Tesis_tesisTable__x0z7t th:nth-child(3),
.Tesis_tesisTable__x0z7t td:nth-child(3) { width: 42%; }

.Tesis_tesisTable__x0z7t th:nth-child(4),
.Tesis_tesisTable__x0z7t td:nth-child(4) {
width: 22%;
text-align: left;
}

/* Evita que las viñetas invadan la columna de Resumen */
.Tesis_tesisTable__x0z7t td:nth-child(4) li {
list-style-position: inside;
margin-left: 0;
padding-left: 0;
margin-bottom: 6px;
}

@media (max-width: 768px) {
.Tesis_tesisTable__x0z7t {
min-width: 760px;
}
}

.dropdown-submenu {
  position: relative;
}
.dropdown-submenu > .dropdown-menu {
  top: 0;
  left: 100%;
  margin-top: -1px;
  display: none;
}
.dropdown-submenu:hover > .dropdown-menu {
  display: block;
}
.dropdown-submenu > a:after {
  display: block;
  content: " ";
  float: right;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
  border-width: 5px 0 5px 5px;
  border-left-color: #ccc;
  margin-top: 5px;
  margin-right: -10px;
}

