[data-component-id="usfq_theme:section_cards_profesor"] {
  padding: 0 16px;

  @media (min-width: 1025px) {
    min-height: 700px;
  }
}
.button{
  display: inline-block;
  border: 2px solid currentColor ;
  font-weight: 500;
  position: relative;
  padding: 12px 24px;
  border-radius: 61px;
  margin-top: 32px;
}
/* minmax(0, ...) y no 1fr: con 1fr una palabra larga del rol ensancha su
   columna y la rejilla se sale de la sección. */
.grid-mini-cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}

.description {
  margin-top: 2rem;
}

.view-teachers {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: repeat(1, 1fr);
  grid-column-gap: 1rem;
  grid-row-gap: 1.5rem;
  margin-top: 3rem;
}

.view-teachers .attachment-before {
  grid-area: 1 / 1 / 2 / 3;
}

[data-component-id="usfq_theme:section_cards_profesor"].background-Dark,
.section-cards-profesor--bg-secondary {
  background-color: var(--secondary);
  color: var(--white);
}

.section-cards-profesor--bg-light {
  background-color: var(--white);
}

/* Grid uniforme, sin la columna destacada 2fr del resto del sitio. */
.curso-layout .view-teachers {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: none;
}

/* La vista arrastra siempre su attachment_1 (el decano destacado de schools)
   y ese div existe aunque venga vacío: con el grid-area fijo se comía la
   primera columna. Se oculta solo si no trae filas, porque block_1 excluye a
   los decanos y ocultarlo siempre dejaría fuera al que sí exista. */
.curso-layout .view-teachers .attachment-before {
  grid-area: auto;
}

.curso-layout .view-teachers .attachment-before:not(:has(.views-row)) {
  display: none;
}

.view-teachers .attachment-before:not(:has(.views-row)) {
  display: none;
}

.curso-layout .view-teachers:not(:has(.attachment-before .views-row)) {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: none;
}

.view-teachers:not(:has(.attachment-before .views-row)) {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: none;
}

/* TABLET: when there's no decano, use a uniform 4-column layout (matches
   the curso-layout fallback used elsewhere) */
@media (min-width: 768px) and (max-width: 1024px) {
  .curso-layout .view-teachers:not(:has(.attachment-before .views-row)),
  .view-teachers:not(:has(.attachment-before .views-row)) {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-template-rows: none;
  }
}

/* DESKTOP: remove the 2fr decano column and use uniform columns when empty */
@media (min-width: 1025px) {
  .curso-layout .view-teachers:not(:has(.attachment-before .views-row)),
  .view-teachers:not(:has(.attachment-before .views-row)) {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-template-rows: none;
  }
}

/* El CTA salía pegado a la última fila de tarjetas. */
.curso-layout .curso-instructores__link {
  margin-top: 4rem;
}

/* Este organismo no trae `.link--color-secondary { color: inherit }`, así que
   gana el negro de link.css: hay que fijar el color en los dos esquemas. */
:where(html:not([data-theme="dark"])) .curso-instructores__link {
  color: var(--dark) !important;
}

:where(html[data-theme="dark"]) .curso-instructores__link {
  color: var(--white) !important;
}

/* .card-profesor_card-image no define alto propio en card.css: con
   size:'small' la foto queda a 0px. */
.curso-layout .card-profesor_card-img-top,
.curso-layout .card-profesor_card-image {
  width: 100%;
  aspect-ratio: 1 / 1;
}

.curso-layout .card-profesor_card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.card-profesor_card-image img {
  filter: grayscale(100%);
}

/* TABLET */
@media (min-width: 768px) and (max-width: 1024px) {
  [data-component-id="usfq_theme:section_cards_profesor"] {
    padding-left: 24px;
    padding-right: 24px;
  }

  .grid-mini-cards {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .view-teachers {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-template-rows: repeat(1, 1fr);
    grid-column-gap: 1.5rem;
    grid-row-gap: 2rem;
  }

  .view-teachers .attachment-before {
    grid-area: 1 / 1 / 2 / 4;
    padding: 0 6rem;
  }

  .curso-layout .view-teachers {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

/* DESKTOP */
@media (min-width: 1025px) {
  [data-component-id="usfq_theme:section_cards_profesor"] {
    padding-left: 64px;
    padding-right: 64px;
  }

  .grid-mini-cards {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .view-teachers {
    grid-template-columns: minmax(0, 2fr) repeat(4, minmax(0, 1fr));
    grid-template-rows: repeat(2, 1fr);
    grid-column-gap: 2.5rem;
    grid-row-gap: 1rem;
  }

  .view-teachers .attachment-before {
    grid-area: 1 / 1 / 3 / 2;
    padding: 0;
  }

  .curso-layout .view-teachers {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-template-rows: none;
  }
}