/* Events archive and detail */

.minimal-event-archive,
.minimal-event-single {
  --event-ink: #102f55;
  --event-forest: #114379;
  --event-sage: #e7f3f8;
  --event-soft: #edf7fa;
  --event-line: rgba(17, 67, 121, .16);

  color: var(--event-ink);
  background: #fff;
}

.minimal-event-shell {
  width: var(--minimal-max);
  margin-inline: auto;
}

.minimal-event-eyebrow {
  margin: 0 0 12px;

  color: #3d6f92;

  font-size: .67rem;
  font-weight: 700;

  letter-spacing: .28em;
  text-transform: uppercase;
}


/* =========================================================
   EVENTS ARCHIVE
   ========================================================= */

.minimal-event-list-hero {
  background: #f5f2e9;
}

.minimal-event-list-hero-grid {
  min-height: 540px;

  display: grid;
  grid-template-columns: 1fr .95fr;
}

.minimal-event-list-hero-grid > div {
  padding:
    clamp(55px, 6vw, 90px)
    clamp(35px, 6vw, 90px)
    clamp(55px, 6vw, 90px)
    0;

  display: flex;
  flex-direction: column;
  justify-content: center;
}

.minimal-event-list-hero h1 {
  margin: 0;

  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(4rem, 6.2vw, 7rem);
  font-weight: 400;

  line-height: .88;
  letter-spacing: -.06em;
}

.minimal-event-list-hero-grid > div > p:not(.minimal-event-eyebrow) {
  max-width: 600px;

  margin: 24px 0;

  color: #52677a;

  font-size: 1.05rem;
  line-height: 1.55;
}

.minimal-event-list-hero figure {
  position: relative;

  min-height: 540px;

  margin: 0;

  overflow: hidden;
}

.minimal-event-list-hero figure::after {
  content: "";

  position: absolute;
  inset: 0;

  background:
    linear-gradient(
      90deg,
      rgba(245, 242, 233, .12),
      rgba(7, 34, 26, .12)
    );
}

.minimal-event-list-hero figure img {
  width: 100%;
  height: 100%;

  object-fit: cover;
}

.minimal-event-list-hero figcaption {
  position: absolute;

  right: 35px;
  bottom: 40px;

  z-index: 1;

  color: #fff;

  font-family: 'Segoe Print', cursive;
  font-size: 1.35rem;
  font-style: italic;

  line-height: 1.16;

  text-shadow: 0 2px 10px rgba(0, 0, 0, .25);

  transform: rotate(-4deg);
}


/* =========================================================
   BUTTONS
   ========================================================= */

.minimal-event-actions {
  display: flex;
  flex-wrap: wrap;

  gap: 10px;
}

.minimal-event-actions a,
.minimal-event-primary,
.minimal-event-member-bar > a,
.minimal-event-bottom a {
  display: inline-flex;

  align-items: center;
  justify-content: center;

  padding: .84rem 1.25rem;

  border: 1px solid var(--event-forest);
  border-radius: 999px;

  background: var(--event-forest);

  color: #fff;

  font-size: .75rem;
  font-weight: 650;

  text-decoration: none;

  transition:
    transform .2s ease,
    background .2s ease;
}

.minimal-event-actions a:hover,
.minimal-event-primary:hover {
  transform: translateY(-2px);

  background: #0b79a3;
}

.minimal-event-actions .is-outline {
  background: transparent;

  color: var(--event-forest);
}


/* =========================================================
   BENEFITS
   ========================================================= */

.minimal-event-benefits {
  border-bottom: 1px solid var(--event-line);

  background: #fff;
}

.minimal-event-benefits .minimal-event-shell {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
}

.minimal-event-benefits .minimal-event-shell > div {
  padding: 25px 14px;

  border-right: 1px solid var(--event-line);

  color: #52677a;

  font-size: .75rem;
  line-height: 1.35;

  text-align: center;
}

.minimal-event-benefits .minimal-event-shell > div:last-child {
  border-right: 0;
}

.minimal-event-benefits span {
  width: 49px;
  height: 49px;

  margin: 0 auto 10px;

  display: grid;
  place-items: center;

  border-radius: 50%;

  background: var(--event-sage);

  color: var(--event-forest);

  font-size: 1.25rem;
}


/* =========================================================
   EVENT SECTIONS
   ========================================================= */

.minimal-event-section {
  padding: clamp(65px, 7vw, 100px) 0;

  background: #fff;
}

.minimal-event-section-head {
  margin-bottom: 30px;

  display: grid;
  grid-template-columns: 1fr 1fr;

  gap: 60px;

  align-items: end;
}

.minimal-event-section-head h2 {
  margin: 0;

  font-family: Georgia, 'Times New Roman', serif;

  font-size: clamp(2.8rem, 4.2vw, 4.6rem);
  font-weight: 400;

  line-height: .95;
  letter-spacing: -.045em;
}

.minimal-event-section-head > p {
  max-width: 520px;

  margin: 0 0 4px;

  color: #52677a;

  line-height: 1.55;
}


/* =========================================================
   FEATURED EVENT
   ========================================================= */

.minimal-event-featured {
  margin-top: 20px;

  display: grid;
  grid-template-columns: .95fr 1.05fr;

  overflow: hidden;

  border: 1px solid var(--event-line);
  border-radius: 22px;

  background: #fff;

  box-shadow: 0 18px 55px rgba(20, 49, 37, .08);
}

.minimal-event-featured-image {
  min-height: 390px;
}

.minimal-event-featured-image img {
  width: 100%;
  height: 100%;

  object-fit: cover;
}

.minimal-event-featured > div {
  padding: clamp(30px, 4vw, 60px);

  display: flex;
  flex-direction: column;
  justify-content: center;
}

.minimal-event-featured h2 {
  max-width: 650px;

  margin: 20px 0;

  font-family: Georgia, 'Times New Roman', serif;

  font-size: clamp(2.6rem, 4.2vw, 4.5rem);
  font-weight: 400;

  line-height: .94;
  letter-spacing: -.045em;
}

.minimal-event-featured > div > p {
  color: #52677a;

  line-height: 1.6;
}


/* =========================================================
   EVENT CARDS
   ========================================================= */

.minimal-event-card-labels {
  display: flex;

  align-items: center;
  justify-content: space-between;

  gap: 12px;
}

.minimal-event-pill {
  display: inline-flex;

  width: max-content;

  padding: 8px 12px;

  border-radius: 999px;

  background: var(--event-sage);

  color: var(--event-forest);

  font-size: .65rem;
  font-weight: 700;

  letter-spacing: .04em;
  text-transform: uppercase;
}

.minimal-event-state {
  display: inline-flex;

  width: max-content;

  padding: 7px 10px;

  border-radius: 999px;

  background: #edf0f2;

  color: #52677a;

  font-size: .63rem;
  font-weight: 700;
}

.minimal-event-state.is-inscripciones-abiertas {
  background: #e7f3f8;

  color: #114379;
}

.minimal-event-state.is-ultimas-plazas {
  background: #f3e9b2;

  color: #6c5b11;
}

.minimal-event-state.is-completo,
.minimal-event-state.is-finalizado {
  background: #ececec;

  color: #666;
}

.minimal-event-featured-meta,
.minimal-event-detail-meta {
  display: flex;
  flex-wrap: wrap;

  gap: 10px 20px;

  color: #4d5b55;

  font-size: .78rem;
}


/* =========================================================
   FILTERS
   ========================================================= */

.minimal-event-filters {
  margin: 0 0 25px;

  display: flex;
  flex-wrap: wrap;

  gap: 7px;
}

.minimal-event-filters button {
  padding: 10px 16px;

  border: 0;
  border-radius: 999px;

  background: transparent;

  color: var(--event-forest);

  font: inherit;
  font-size: .75rem;

  cursor: pointer;
}

.minimal-event-filters button.is-active {
  background: var(--event-forest);

  color: #fff;
}


/* =========================================================
   CARDS GRID
   ========================================================= */

.minimal-event-cards {
  display: grid;

  grid-template-columns: repeat(3, 1fr);

  gap: 20px;
}

.minimal-event-card {
  overflow: hidden;

  border: 1px solid var(--event-line);
  border-radius: 18px;

  background: #fff;

  transition:
    transform .2s ease,
    box-shadow .2s ease;
}

.minimal-event-card:hover {
  transform: translateY(-4px);

  box-shadow: 0 18px 50px rgba(20, 49, 37, .09);
}

.minimal-event-card[hidden] {
  display: none;
}

.minimal-event-card-image {
  height: 220px;

  display: block;

  overflow: hidden;
}

.minimal-event-card-image img {
  width: 100%;
  height: 100%;

  object-fit: cover;

  transition: transform .35s ease;
}

.minimal-event-card:hover .minimal-event-card-image img {
  transform: scale(1.035);
}

.minimal-event-card-body {
  padding: 22px;
}

.minimal-event-card h3 {
  margin: 18px 0 15px;

  font-family: Georgia, 'Times New Roman', serif;

  font-size: 1.65rem;
  font-weight: 400;

  line-height: 1.02;
  letter-spacing: -.025em;
}

.minimal-event-card h3 a,
.minimal-event-card-link {
  color: inherit;

  text-decoration: none;
}

.minimal-event-card-meta {
  min-height: 76px;

  display: grid;

  gap: 7px;

  color: #657789;

  font-size: .75rem;
}

.minimal-event-card-link {
  display: inline-block;

  margin-top: 15px;

  font-size: .76rem;
  font-weight: 700;
}

.minimal-event-empty {
  padding: 35px;

  background: var(--event-soft);

  text-align: center;
}


/* =========================================================
   MEMBER BAR
   ========================================================= */

.minimal-event-member-bar {
  margin-top: 45px;

  padding: 25px 30px;

  display: flex;

  align-items: center;
  justify-content: space-between;

  gap: 20px;

  border-radius: 18px;

  background: var(--event-soft);
}

.minimal-event-member-bar h3 {
  margin: 0 0 6px;

  font-family: Georgia, 'Times New Roman', serif;

  font-size: 1.65rem;
  font-weight: 400;
}

.minimal-event-member-bar p {
  margin: 0;

  color: #52677a;

  font-size: .8rem;
}


/* =========================================================
   PAST EVENTS
   ========================================================= */

.minimal-event-past {
  padding: clamp(65px, 7vw, 95px) 0;

  background: #f3f1eb;
}

.minimal-event-past-list {
  border-top: 1px solid #ccd4ce;
}

.minimal-event-past-list a {
  padding: 20px 0;

  display: grid;

  grid-template-columns: 100px 1fr 270px 25px;

  gap: 20px;

  align-items: center;

  border-bottom: 1px solid #ccd4ce;

  color: inherit;

  text-decoration: none;
}

.minimal-event-past-list span {
  font-family: Georgia, 'Times New Roman', serif;

  font-size: 2rem;

  color: #657789;
}

.minimal-event-past-list h3 {
  margin: 0;

  font-family: Georgia, 'Times New Roman', serif;

  font-size: 1.55rem;
  font-weight: 400;

  transition: transform .2s ease;
}

.minimal-event-past-list a:hover h3 {
  transform: translateX(5px);
}

.minimal-event-past-list p {
  margin: 0;

  color: #657789;

  font-size: .76rem;
}


/* =========================================================
   EVENT DETAIL
   ========================================================= */

.minimal-event-detail-hero {
  min-height: 580px;

  display: flex;
  align-items: center;

  color: #fff;

  background:
    linear-gradient(
      90deg,
      rgba(8, 48, 84, .93),
      rgba(8, 48, 84, .68) 58%,
      rgba(8, 48, 84, .15)
    ),
    var(--event-hero) center / cover no-repeat;
}

.minimal-event-detail-hero .minimal-event-shell {
  padding: 70px 0;
}

.minimal-event-breadcrumb {
  margin: 0 0 24px;

  color: rgba(255, 255, 255, .68);

  font-size: .72rem;
}

.minimal-event-breadcrumb a {
  color: inherit;
}

.minimal-event-detail-hero .minimal-event-pill {
  background: rgba(228, 237, 223, .18);

  color: #fff;
}

.minimal-event-detail-hero h1 {
  max-width: 1050px;

  margin: 20px 0;

  font-family: Georgia, 'Times New Roman', serif;

  font-size: clamp(4rem, 7.2vw, 7.6rem);
  font-weight: 400;

  line-height: .87;
  letter-spacing: -.06em;
}

.minimal-event-detail-lead {
  max-width: 700px;

  color: rgba(255, 255, 255, .8);

  font-size: 1.05rem;

  line-height: 1.55;
}

.minimal-event-detail-meta {
  margin: 23px 0;

  color: rgba(255, 255, 255, .8);
}

.minimal-event-detail-hero .minimal-event-primary {
  border-color: #fff;

  background: #fff;

  color: var(--event-forest);
}


/* =========================================================
   EVENT FACTS
   ========================================================= */

.minimal-event-facts {
  border-bottom: 1px solid var(--event-line);

  background: #fff;
}

.minimal-event-facts .minimal-event-shell {
  display: grid;

  grid-template-columns: repeat(5, 1fr);
}

.minimal-event-facts .minimal-event-shell > div {
  padding: 25px 14px;

  border-right: 1px solid var(--event-line);

  text-align: center;
}

.minimal-event-facts .minimal-event-shell > div:last-child {
  border-right: 0;
}

.minimal-event-facts span {
  display: block;

  margin-bottom: 7px;

  font-size: 1.35rem;
}

.minimal-event-facts small {
  display: block;

  color: #657789;

  font-size: .55rem;

  letter-spacing: .14em;
  text-transform: uppercase;
}

.minimal-event-facts strong {
  display: block;

  margin-top: 5px;

  font-size: .78rem;
}


/* =========================================================
   EVENT MAIN CONTENT
   ========================================================= */

.minimal-event-detail-main {
  padding: clamp(60px, 7vw, 95px) 0;

  background: #fff;
}

.minimal-event-detail-grid {
  display: grid;

  grid-template-columns:
    minmax(0, 1fr)
    340px;

  gap: clamp(40px, 6vw, 90px);

  align-items: start;
}

.minimal-event-content {
  margin-bottom: 55px;
}

.minimal-event-content h2,
.minimal-event-info h2,
.minimal-event-bottom h2 {
  margin: 0 0 20px;

  color: var(--event-ink);

  font-family: Georgia, 'Times New Roman', serif;

  font-size: clamp(2.3rem, 3.5vw, 3.8rem);
  font-weight: 400;

  line-height: .96;
  letter-spacing: -.04em;
}

.minimal-event-content > p,
.minimal-event-content > .wp-block-paragraph,
.minimal-event-content li {
  color: #52677a;

  line-height: 1.7;
}


/* =========================================================
   SPEAKER
   ========================================================= */

.minimal-event-speaker {
  padding: 25px 0;

  display: grid;

  grid-template-columns: 82px 1fr;

  gap: 23px;

  align-items: center;

  border-top: 1px solid var(--event-line);
  border-bottom: 1px solid var(--event-line);
}

.minimal-event-speaker > span {
  width: 82px;
  height: 82px;

  display: grid;
  place-items: center;

  border-radius: 50%;

  background: var(--event-sage);

  font-size: 2rem;
}

.minimal-event-speaker h3 {
  margin: 0 0 8px;

  font-family: Georgia, 'Times New Roman', serif;

  font-size: 1.65rem;
  font-weight: 400;
}

.minimal-event-speaker p {
  margin: 0;

  color: #52677a;

  font-size: .82rem;

  line-height: 1.55;
}


/* =========================================================
   PROGRAM / NATIVE ACCORDION
   ========================================================= */

.minimal-event-program {
  overflow: hidden;

  border: 1px solid var(--event-line);
  border-radius: 15px;

  background: #fff;
}


/* Cada día */

.minimal-event-program-item {
  margin: 0;

  background: #fff;
}

.minimal-event-program-item + .minimal-event-program-item {
  border-top: 1px solid var(--event-line);
}


/* ---------------------------------------------------------
   Summary / cabecera clicable
   --------------------------------------------------------- */

.minimal-event-program-item > summary {
  width: 100%;

  padding: 19px 20px;

  display: grid;

  grid-template-columns:
    minmax(0, 1fr)
    40px;

  gap: 20px;

  align-items: center;

  list-style: none;

  background: #fff;

  color: var(--event-ink);

  text-align: left;

  cursor: pointer;

  user-select: none;

  transition:
    background .2s ease;
}


/* Quitar flecha nativa en WebKit */

.minimal-event-program-item > summary::-webkit-details-marker {
  display: none;
}


/* Quitar marcador nativo estándar */

.minimal-event-program-item > summary::marker {
  content: "";
}


/* Hover */

.minimal-event-program-item > summary:hover {
  background: #f7fbfc;
}


/* Teclado */

.minimal-event-program-item > summary:focus-visible {
  outline: 2px solid #109bc5;
  outline-offset: -2px;
}


/* ---------------------------------------------------------
   Texto de la cabecera
   --------------------------------------------------------- */

.minimal-event-program-copy {
  min-width: 0;

  display: flex;

  align-items: baseline;
  flex-wrap: wrap;

  gap: 8px 14px;
}

.minimal-event-program-copy small {
  color: #3d6f92;

  font-size: .65rem;
  font-weight: 700;

  letter-spacing: .1em;
  text-transform: uppercase;
}

.minimal-event-program-copy strong {
  font-family: Georgia, 'Times New Roman', serif;

  font-size: 1.25rem;
  font-weight: 400;

  line-height: 1.2;
}

.minimal-event-program-copy em {
  color: #657789;

  font-size: .72rem;
  font-style: normal;
}


/* ---------------------------------------------------------
   Icono + / -
   --------------------------------------------------------- */

.minimal-event-program-icon {
  position: relative;

  width: 36px;
  height: 36px;

  display: block;

  justify-self: end;

  border: 1px solid rgba(17, 67, 121, .20);
  border-radius: 50%;

  background: #fff;

  transition:
    background .2s ease,
    border-color .2s ease,
    transform .2s ease;
}


/* Línea horizontal */

.minimal-event-program-icon::before {
  content: "";

  position: absolute;

  top: 50%;
  left: 50%;

  width: 12px;
  height: 1.5px;

  border-radius: 999px;

  background: var(--event-forest);

  transform: translate(-50%, -50%);
}


/* Línea vertical = + */

.minimal-event-program-icon::after {
  content: "";

  position: absolute;

  top: 50%;
  left: 50%;

  width: 1.5px;
  height: 12px;

  border-radius: 999px;

  background: var(--event-forest);

  transform: translate(-50%, -50%);

  transition:
    opacity .2s ease,
    transform .2s ease;
}


/* Abierto */

.minimal-event-program-item[open]
> summary
.minimal-event-program-icon {
  border-color: var(--event-forest);

  background: var(--event-forest);
}

.minimal-event-program-item[open]
> summary
.minimal-event-program-icon::before {
  background: #fff;
}

.minimal-event-program-item[open]
> summary
.minimal-event-program-icon::after {
  opacity: 0;

  background: #fff;

  transform:
    translate(-50%, -50%)
    rotate(90deg);
}


/* Hover del círculo */

.minimal-event-program-item > summary:hover
.minimal-event-program-icon {
  border-color: var(--event-forest);

  transform: scale(1.05);
}


/* ---------------------------------------------------------
   Contenido desplegado
   --------------------------------------------------------- */

.minimal-event-program-body {
  padding:
    0
    20px
    22px;

  color: #52677a;

  font-size: .83rem;

  line-height: 1.65;
}

.minimal-event-program-body p {
  margin: 0 0 14px;
}

.minimal-event-program-body p:last-child {
  margin-bottom: 0;
}


/* Ligera separación al estar abierto */

.minimal-event-program-item[open] > summary {
  padding-bottom: 13px;
}


/* =========================================================
   EVENT INFO SIDEBAR
   ========================================================= */

.minimal-event-info {
  position: sticky;

  top: 25px;

  padding: 28px;

  border: 1px solid var(--event-line);
  border-radius: 18px;

  background: #f3f9fb;
}

body.admin-bar .minimal-event-info {
  top: 57px;
}

.minimal-event-info h2 {
  margin-top: 18px;

  font-size: 2rem;
}

.minimal-event-info > .minimal-event-primary {
  width: 100%;

  margin-bottom: 22px;
}

.minimal-event-info dl {
  margin: 0;
}

.minimal-event-info dl > div {
  padding: 13px 0;

  border-top: 1px solid var(--event-line);
}

.minimal-event-info dt {
  color: #657789;

  font-size: .6rem;
  font-weight: 700;

  letter-spacing: .1em;
  text-transform: uppercase;
}

.minimal-event-info dd {
  margin: 5px 0 0;

  color: #274e73;

  font-size: .82rem;
}

.minimal-event-info > p {
  font-size: .78rem;
}

.minimal-event-priority {
  margin-top: 18px;

  padding: 15px;

  border-radius: 12px;

  background: #e7f3f8;

  font-size: .72rem;

  line-height: 1.5;
}


/* =========================================================
   EVENT BOTTOM
   ========================================================= */

.minimal-event-bottom {
  padding: 28px 0;

  background: var(--event-soft);
}

.minimal-event-bottom .minimal-event-shell {
  display: flex;

  align-items: center;
  justify-content: space-between;

  gap: 25px;
}

.minimal-event-bottom h2 {
  margin: 0 0 5px;

  font-size: 1.8rem;
}

.minimal-event-bottom p {
  margin: 0;

  color: #52677a;

  font-size: .8rem;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1050px) {

  .minimal-event-list-hero-grid {
    grid-template-columns: 1fr;
  }

  .minimal-event-list-hero figure {
    min-height: 390px;
  }

  .minimal-event-benefits .minimal-event-shell {
    grid-template-columns: repeat(3, 1fr);
  }

  .minimal-event-cards {
    grid-template-columns: 1fr 1fr;
  }

  .minimal-event-detail-grid {
    grid-template-columns: 1fr;
  }

  .minimal-event-info {
    position: static;
  }

  .minimal-event-facts .minimal-event-shell {
    grid-template-columns: repeat(3, 1fr);
  }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 720px) {

  .minimal-event-list-hero-grid > div {
    padding-right: 0;
  }

  .minimal-event-list-hero h1 {
    font-size: clamp(3.7rem, 16vw, 5.5rem);
  }

  .minimal-event-benefits .minimal-event-shell {
    grid-template-columns: 1fr 1fr;
  }

  .minimal-event-section-head {
    grid-template-columns: 1fr;

    gap: 20px;
  }

  .minimal-event-featured {
    grid-template-columns: 1fr;
  }

  .minimal-event-featured-image {
    min-height: 290px;
  }

  .minimal-event-cards {
    grid-template-columns: 1fr;
  }

  .minimal-event-member-bar,
  .minimal-event-bottom .minimal-event-shell {
    align-items: flex-start;
    flex-direction: column;
  }

  .minimal-event-past-list a {
    grid-template-columns: 65px 1fr 22px;
  }

  .minimal-event-past-list p {
    display: none;
  }

  .minimal-event-detail-hero {
    min-height: 650px;
  }

  .minimal-event-detail-hero h1 {
    font-size: clamp(3.7rem, 16vw, 5.6rem);
  }

  .minimal-event-facts .minimal-event-shell {
    grid-template-columns: 1fr 1fr;
  }

  .minimal-event-facts .minimal-event-shell > div:last-child {
    grid-column: 1 / -1;
  }


  /* Programa */

  .minimal-event-program-item > summary {
    grid-template-columns:
      minmax(0, 1fr)
      36px;

    gap: 14px;

    padding: 18px 16px;
  }

  .minimal-event-program-copy {
    align-items: flex-start;
    flex-direction: column;

    gap: 4px;
  }

  .minimal-event-program-copy strong {
    font-size: 1.15rem;
  }

  .minimal-event-program-icon {
    width: 34px;
    height: 34px;
  }

  .minimal-event-program-body {
    padding:
      0
      16px
      20px;

    font-size: .82rem;
  }

}


/* =========================================================
   EVENT POSTER
   ========================================================= */

.minimal-event-content .minimal-event-poster {
  margin: 30px 0;
}

.minimal-event-poster img {
  display: block;

  width: 100%;
  max-width: 600px;
  height: auto;

  border: 1px solid var(--event-line);
  border-radius: 12px;
}

.minimal-event-poster figcaption {
  margin-top: 12px;

  font-size: .85rem;
}

.minimal-event-info dd,
.minimal-event-info a {
  overflow-wrap: anywhere;
}

.minimal-event-card-labels {
  flex-wrap: wrap;
}


/* =========================================================
   EVENTS HERO — FULL BLEED IMAGE
   ========================================================= */

.minimal-event-list-hero {
  overflow: hidden;
}

.minimal-event-list-hero-grid {
  min-height: 540px;

  /*
   * Un poco más de espacio para el texto y una imagen
   * con proporciones más naturales.
   */
  grid-template-columns:
    minmax(0, 1.05fr)
    minmax(0, .95fr);
}


/*
 * Extendemos solo la fotografía hasta el borde
 * derecho del viewport.
 */

.minimal-event-list-hero figure {
  width: calc(100% + var(--minimal-gutter));

  margin-right: calc(var(--minimal-gutter) * -1);

  min-height: 540px;
}


/*
 * La fotografía llena todo el espacio pero desplazamos
 * ligeramente el encuadre hacia la persona.
 */

.minimal-event-list-hero figure img {
  width: 100%;
  height: 100%;

  object-fit: cover;
  object-position: 68% center;
}


/* Texto algo más equilibrado */

.minimal-event-list-hero-grid > div {
  padding-right: clamp(45px, 6vw, 95px);
}


/* =========================================================
   TABLET — HERO
   ========================================================= */

@media (max-width: 1050px) {

  .minimal-event-list-hero-grid {
    grid-template-columns: 1fr;
  }

  .minimal-event-list-hero figure {
    width: calc(100% + (var(--minimal-gutter) * 2));

    margin-left: calc(var(--minimal-gutter) * -1);
    margin-right: calc(var(--minimal-gutter) * -1);

    min-height: 420px;
  }

  .minimal-event-list-hero figure img {
    object-position: 65% center;
  }

}


/* =========================================================
   MOBILE — HERO
   ========================================================= */

@media (max-width: 720px) {

  .minimal-event-list-hero-grid > div {
    padding-right: 0;
  }

  .minimal-event-list-hero figure {
    min-height: 340px;
  }

  .minimal-event-list-hero figure img {
    object-position: 67% center;
  }

}


/* =========================================================
   FIX HERO EVENTS HEIGHT
   ========================================================= */

.minimal-event-list-hero-grid {
  height: clamp(560px, 63vh, 650px);

  min-height: 0;
}

.minimal-event-list-hero-grid > div {
  height: 100%;
}

.minimal-event-list-hero figure {
  height: 100%;

  min-height: 0;
}

.minimal-event-list-hero figure img {
  display: block;

  width: 100%;
  height: 100%;

  object-fit: cover;

  /*
   * Ajusta esto si quieres mover el encuadre.
   * Con el loro probaría primero así:
   */
  object-position: 50% 50%;
}