.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-loop-grid .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-loop-grid .elementor-pagination{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-loop-grid .e-load-more-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-4140 .elementor-element.elementor-element-ec84816{--grid-columns:3;}@media(max-width:1024px){.elementor-4140 .elementor-element.elementor-element-ec84816{--grid-columns:2;}}@media(max-width:767px){.elementor-4140 .elementor-element.elementor-element-ec84816{--grid-columns:1;}}/* Start custom CSS *//* ============ Guía de eventos — calcada del mockup ============
   Mismo CSS que las otras dos guías. Ver /eventos/festivales-literarios-espana */
[id^="ev-"] { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
[id^="ev-"] * { border-radius: 0; }

#ev-hero {
  position: relative; display: flex; align-items: flex-end;
  height: 666px; padding: 0 !important; margin: 0;
  background-color: var(--color-ink); overflow: hidden;
}
#ev-foto { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; }
#ev-foto .elementor-widget-container, #ev-foto figure, #ev-foto a { height: 100%; }
#ev-foto img { width: 100%; height: 100%; object-fit: cover; display: block;
               filter: saturate(1.03) contrast(1.02); }
#ev-hero::after {
  content: ""; position: absolute; inset: 0;
  background: linear-gradient(to right,
    color-mix(in srgb, var(--color-ink) 82%, transparent) 0%,
    color-mix(in srgb, var(--color-ink) 55%, transparent) 45%,
    color-mix(in srgb, var(--color-ink) 15%, transparent) 100%);
}
#ev-hero-txt {
  position: relative; z-index: 1; flex-direction: column;
  align-items: flex-start; justify-content: flex-end;
  width: 100%; max-width: 1400px; margin: 0 auto;
  padding: 0 40px 64px !important; gap: 0;
}
#ev-hero-txt > * { flex: 0 0 auto; }
#ev-titulo { margin-top: 16px; }
#ev-titulo h1, #ev-titulo h1.elementor-heading-title {
  margin: 0; max-width: 840px; font-family: var(--font-display);
  font-weight: 400; font-size: clamp(2.4rem, 6vw, 5rem);
  line-height: 0.98; letter-spacing: -0.015em; color: var(--color-ink-foreground);
}
#ev-subtitulo { margin-top: 24px; }

#ev-intro { padding: 96px 0 !important; background-color: var(--color-background); }
#ev-intro-in {
  display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 56px;
  align-items: start; width: 100%; max-width: 1400px; margin: 0 auto;
  padding: 0 40px !important;
}
#ev-intro-txt, #ev-intro-lado {
  flex-direction: column !important; align-items: stretch !important;
  gap: 0 !important; padding: 0 !important; min-width: 0;
}
#ev-intro-txt > *, #ev-intro-lado > * { flex: 0 0 auto; }
#ev-intro-titular h2, #ev-intro-titular h2.elementor-heading-title {
  margin: 16px 0 0; max-width: 26ch; font-family: var(--font-display);
  font-weight: 400; font-size: clamp(1.9rem, 3.4vw, 3rem);
  line-height: 1.06; letter-spacing: -0.015em; color: var(--color-text);
}
#ev-intro-cuerpo { margin-top: 28px; }
#ev-intro-cuerpo p {
  margin: 0 0 24px; font-family: var(--font-body); font-size: 1.02rem;
  line-height: 1.75; color: var(--color-text-muted);
}
#ev-intro-cuerpo p:last-child { margin-bottom: 0; }
#ev-intro-cuerpo strong { font-weight: 500; color: var(--color-text); }

#ev-indice { margin-top: 20px; }
#ev-indice ul { list-style: none; margin: 0; padding: 0; }
#ev-indice li { border-bottom: 1px solid var(--color-border); padding-bottom: 12px; margin-bottom: 12px; }
#ev-indice li:last-child { border-bottom: 0; margin-bottom: 0; }
#ev-indice a {
  display: flex; gap: 16px; font-family: var(--font-body);
  font-size: 0.95rem; line-height: 1.75; color: var(--color-text);
  text-decoration: none; transition: color .25s ease;
}
#ev-indice a:hover { color: var(--color-gold-deep); }
#ev-indice .ev-num {
  flex: 0 0 auto; font-family: var(--font-display);
  font-size: 1.25rem; color: var(--color-gold-deep);
}
#ev-indice .ev-idx-txt {
  text-decoration: underline;
  text-decoration-color: color-mix(in srgb, var(--color-gold) 30%, transparent);
  text-underline-offset: 4px;
}
#ev-indice a:hover .ev-idx-txt { text-decoration-color: var(--color-gold); }
#ev-indice .ev-idx-n { text-decoration: none; color: var(--color-text-muted); }
#ev-nota { margin-top: 24px; }
#ev-nota p {
  margin: 0; font-family: var(--font-body); font-size: 0.85rem;
  line-height: 1.625; color: var(--color-text-muted);
}

/* Los eyebrows: hay que nombrar la clase o gana el azul del tema */
#ev-migas p.elementor-heading-title,
#ev-eb-intro p.elementor-heading-title,
#ev-eb-indice p.elementor-heading-title,
[id$="-eb"] p.elementor-heading-title {
  margin: 0; font-family: var(--font-body); font-size: 0.6875rem;
  font-weight: 400; letter-spacing: 0.22em; text-transform: uppercase;
  line-height: 1.5; color: var(--color-gold-deep);
}
#ev-migas p.elementor-heading-title { font-size: 0.7rem; color: var(--color-gold); }
#ev-subtitulo p.elementor-heading-title {
  margin: 0; max-width: 62ch; font-family: var(--font-body);
  font-size: 0.95rem; font-weight: 400; letter-spacing: normal;
  text-transform: none; line-height: 1.625;
  color: color-mix(in srgb, var(--color-ink-foreground) 85%, transparent);
}

/* Bandas: el padding se pone nombrando las secciones, porque `[id^="ev-b0"]`
   casa tambien con `ev-b01-eb` y `ev-b01-lista` */
#ev-b01, #ev-b03, #ev-b05, #ev-b07, #ev-b09,
#ev-b11, #ev-b13, #ev-b15, #ev-b17, #ev-b19 { background-color: var(--color-sand); }
#ev-b02, #ev-b04, #ev-b06, #ev-b08, #ev-b10,
#ev-b12, #ev-b14, #ev-b16, #ev-b18 { background-color: var(--color-background); }
#ev-b01, #ev-b02, #ev-b03, #ev-b04, #ev-b05, #ev-b06, #ev-b07,
#ev-b08, #ev-b09, #ev-b10, #ev-b11, #ev-b12, #ev-b13, #ev-b14,
#ev-b15, #ev-b16, #ev-b17, #ev-b18, #ev-b19 { padding: 80px 0 !important; }
#ev-b01-in, #ev-b02-in, #ev-b03-in, #ev-b04-in, #ev-b05-in,
#ev-b06-in, #ev-b07-in, #ev-b08-in, #ev-b09-in, #ev-b10-in,
#ev-b11-in, #ev-b12-in, #ev-b13-in, #ev-b14-in, #ev-b15-in,
#ev-b16-in, #ev-b17-in, #ev-b18-in, #ev-b19-in {
  flex-direction: column !important; align-items: stretch !important;
  gap: 0 !important; width: 100%; max-width: 1400px; margin: 0 auto;
  padding: 0 40px !important;
}
#ev-b01-in > *, #ev-b02-in > *, #ev-b03-in > *, #ev-b04-in > *, #ev-b05-in > *,
#ev-b06-in > *, #ev-b07-in > *, #ev-b08-in > *, #ev-b09-in > *, #ev-b10-in > *,
#ev-b11-in > *, #ev-b12-in > *, #ev-b13-in > *, #ev-b14-in > *, #ev-b15-in > *,
#ev-b16-in > *, #ev-b17-in > *, #ev-b18-in > *, #ev-b19-in > * { flex: 0 0 auto; }

[id^="bloque-"] { margin-top: 16px; scroll-margin-top: 100px; }
[id^="bloque-"] h2, [id^="bloque-"] h2.elementor-heading-title {
  margin: 0; max-width: 24ch; font-family: var(--font-display);
  font-weight: 400; font-size: clamp(1.8rem, 3vw, 2.6rem);
  line-height: 1.08; letter-spacing: -0.015em; color: var(--color-text);
}

[id$="-lista"] { margin-top: 40px; }
[id$="-lista"] ul.ev-lista {
  display: grid; grid-template-columns: 1fr 1fr;
  column-gap: 40px; row-gap: 28px;
  list-style: none; margin: 0; padding: 0;
}
[id$="-lista"] ul.ev-lista li { padding: 0; border-bottom: 0; }
[id$="-lista"] ul.ev-lista a,
[id$="-lista"] ul.ev-lista .ev-sin-enlace {
  display: inline; max-width: 42ch; font-family: var(--font-display);
  font-size: 1.25rem; line-height: 1.375; color: var(--color-text);
}
[id$="-lista"] ul.ev-lista a {
  text-decoration: underline;
  text-decoration-color: color-mix(in srgb, var(--color-gold) 50%, transparent);
  text-underline-offset: 4px;
  transition: color .25s ease, text-decoration-color .25s ease;
}
[id$="-lista"] ul.ev-lista a:hover {
  color: var(--color-gold-deep); text-decoration-color: var(--color-gold);
}
/* Fecha o localidad que en el original va fuera del enlace */
[id$="-lista"] ul.ev-lista .ev-meta {
  display: block; margin-top: 4px; font-family: var(--font-body);
  font-size: 0.8rem; line-height: 1.5; color: var(--color-text-muted);
}
/* Subtitulo de provincia dentro de una comunidad */
[id$="-lista"] h3.ev-sub {
  margin: 40px 0 16px; font-family: var(--font-body);
  font-size: 0.68rem; font-weight: 500; letter-spacing: 0.16em;
  text-transform: uppercase; color: var(--color-gold-deep);
}
[id$="-lista"] h3.ev-sub:first-child { margin-top: 0; }

@media (max-width: 1024px) {
  #ev-hero { height: 560px; }
  #ev-hero-txt { padding: 0 24px 56px !important; }
  #ev-intro { padding: 80px 0 !important; }
  #ev-intro-in { grid-template-columns: 1fr; gap: 48px; padding: 0 24px !important; }
  #ev-b01, #ev-b02, #ev-b03, #ev-b04, #ev-b05, #ev-b06, #ev-b07,
  #ev-b08, #ev-b09, #ev-b10, #ev-b11, #ev-b12, #ev-b13, #ev-b14,
  #ev-b15, #ev-b16, #ev-b17, #ev-b18, #ev-b19 { padding: 64px 0 !important; }
  #ev-b01-in, #ev-b02-in, #ev-b03-in, #ev-b04-in, #ev-b05-in,
  #ev-b06-in, #ev-b07-in, #ev-b08-in, #ev-b09-in, #ev-b10-in,
  #ev-b11-in, #ev-b12-in, #ev-b13-in, #ev-b14-in, #ev-b15-in,
  #ev-b16-in, #ev-b17-in, #ev-b18-in, #ev-b19-in { padding: 0 24px !important; }
}
@media (max-width: 767px) {
  #ev-hero { height: auto; min-height: 460px; }
  #ev-hero-txt { padding: 0 20px 48px !important; }
  #ev-intro { padding: 56px 0 !important; }
  #ev-intro-in { padding: 0 20px !important; }
  #ev-b01, #ev-b02, #ev-b03, #ev-b04, #ev-b05, #ev-b06, #ev-b07,
  #ev-b08, #ev-b09, #ev-b10, #ev-b11, #ev-b12, #ev-b13, #ev-b14,
  #ev-b15, #ev-b16, #ev-b17, #ev-b18, #ev-b19 { padding: 48px 0 !important; }
  #ev-b01-in, #ev-b02-in, #ev-b03-in, #ev-b04-in, #ev-b05-in,
  #ev-b06-in, #ev-b07-in, #ev-b08-in, #ev-b09-in, #ev-b10-in,
  #ev-b11-in, #ev-b12-in, #ev-b13-in, #ev-b14-in, #ev-b15-in,
  #ev-b16-in, #ev-b17-in, #ev-b18-in, #ev-b19-in { padding: 0 20px !important; }
  [id$="-lista"] ul.ev-lista { grid-template-columns: 1fr; }
  [id$="-lista"] ul.ev-lista a, [id$="-lista"] ul.ev-lista .ev-sin-enlace { font-size: 1.125rem; }
}
/* ===================================================================
   Cotejo contra el mockup real (1/9, 15:00). El mockup tiene publicada
   esta guía y su bloque de provincias es distinto del que monté:
   - las provincias van en rejilla de DOS columnas (632px, gap 48/56),
     no una debajo de otra a ancho completo
   - entre cada fila de provincias hay un separador: línea dorada de 1px
     con un rombo de 8x8 girado 45º en el centro (lo pediste tú y Lovable
     lo unificó en dorado)
   - el h3 de provincia es Jost 11.52px con ls 0.2em, no 10.88 / 0.16
   - los <li> llevan filete y la fecha va a la derecha con un calendario
   El agrupado de cada provincia con su lista lo hace el JS, para no tener
   que reescribir los 19 bloques.
   =================================================================== */

/* --- La lista de ferias --- */
[id$="-lista"] ul.ev-lista {
  grid-template-columns: 1fr;     /* dentro de una provincia va a una columna */
  column-gap: 40px;
  row-gap: 0;
}
[id$="-lista"] ul.ev-lista li {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  column-gap: 24px;
  row-gap: 4px;
  padding: 16px 0;
  border-bottom: 1px solid var(--color-border);
}
[id$="-lista"] ul.ev-lista a,
[id$="-lista"] ul.ev-lista .ev-sin-enlace {
  display: inline;
  max-width: 34ch;
  font-family: var(--font-display);
  font-size: 1.125rem;            /* mockup: text-lg dentro de las provincias */
  line-height: 1.375;
  color: var(--color-text);
}
[id$="-lista"] ul.ev-lista .ev-meta {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 0;
  font-family: var(--font-body);
  font-size: 0.78rem;
  line-height: 1.5;
  color: var(--color-text-muted);
  white-space: nowrap;
}
[id$="-lista"] ul.ev-lista .ev-meta::before {
  content: "";
  flex: 0 0 auto;
  width: 12px;
  height: 12px;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2'/%3E%3Cpath d='M8 2v4M16 2v4M3 10h18'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2'/%3E%3Cpath d='M8 2v4M16 2v4M3 10h18'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* --- Las provincias, en dos columnas. El JS envuelve cada h3 con su lista
       en .ev-prov y coloca los separadores entre filas. --- */
[id$="-lista"] .ev-provincias {
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 56px;
  row-gap: 0;
}
.ev-prov { min-width: 0; margin-bottom: 48px; }
[id$="-lista"] h3.ev-sub {
  margin: 0 0 8px;
  font-family: var(--font-body);
  font-size: 0.72rem;
  font-weight: 400;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--color-gold-deep);
}

/* El separador: línea dorada con rombo centrado, a lo ancho de las dos
   columnas. Ocupa fila propia en la rejilla. */
.ev-sep {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 48px;
}
.ev-sep::before, .ev-sep::after {
  content: "";
  flex: 1 1 auto;
  height: 1px;
  background-color: var(--color-gold);
}
.ev-sep > span {
  flex: 0 0 auto;
  width: 8px;
  height: 8px;
  background-color: var(--color-gold);
  transform: rotate(45deg);
}

/* --- El índice, a dos columnas: 19 entradas --- */
#ev-indice ul.ev-indice {
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 32px;
  row-gap: 12px;
}
#ev-indice ul.ev-indice li { margin-bottom: 0; padding-bottom: 12px; }
#ev-indice ul.ev-indice li:last-child { border-bottom: 1px solid var(--color-border); }

@media (max-width: 900px) {
  [id$="-lista"] .ev-provincias { grid-template-columns: 1fr; column-gap: 0; }
  .ev-sep { display: none; }   /* en una columna el separador sobra */
}
@media (max-width: 767px) {
  [id$="-lista"] ul.ev-lista li { padding: 14px 0; }
  [id$="-lista"] ul.ev-lista .ev-meta { white-space: normal; }
  #ev-indice ul.ev-indice { grid-template-columns: 1fr; }
}
/* La caja del índice, que faltaba. Mockup: `border border-border bg-card
   p-8 lg:mt-14` — borde 1px color-border, fondo color-surface, padding 32,
   margen superior 56, y la nota final dentro de la misma caja. */
#ev-intro-lado {
  border: 1px solid var(--color-border);
  background-color: var(--color-surface);
  padding: 32px !important;
  margin-top: 56px;
  align-self: start;
}
#ev-eb-indice { margin: 0; }
#ev-indice { margin-top: 24px; }
#ev-nota { margin-top: 24px; }
#ev-nota p { font-size: 0.85rem; line-height: 1.625; color: var(--color-text-muted); }

@media (max-width: 1024px) { #ev-intro-lado { margin-top: 0; } }
@media (max-width: 767px)  { #ev-intro-lado { padding: 24px !important; } }
/* El mockup separa el recuento con `ml-2` (8px) y su texto empieza en el
   punto. El mío lleva un espacio dentro del texto (~4px): se suman 4 para
   que el hueco sea el mismo. */
#ev-indice .ev-idx-n { margin-left: 4px; }
/* El mockup también parte «Comunidad de Madrid · 19 ferias» y «Comunidad
   Valenciana · 17 ferias» en dos líneas. Aquí mejoro el mockup, que es lo
   que pide Vanessa: con el hueco del número a 12px y el cuerpo a 0.9rem
   caben las 19 en una sola línea, y el recuento nunca se separa del nombre. */
#ev-indice a { gap: 12px; font-size: 0.9rem; }
#ev-indice .ev-idx-n { white-space: nowrap; }
/* El hero es `74svh min-h-480` en el mockup, no 666px fijos, y el h2 de
   bloque es `max-w-[28ch]` con clamp(1.7rem,3vw,2.6rem). */
#ev-hero { height: 74svh; min-height: 480px; }
[id^="bloque-"] h2, [id^="bloque-"] h2.elementor-heading-title {
  max-width: 28ch;
  font-size: clamp(1.7rem, 3vw, 2.6rem);
}
@media (max-width: 1024px) { #ev-hero { height: 74svh; min-height: 460px; } }
@media (max-width: 767px)  { #ev-hero { height: auto; min-height: 440px; } }

/* ===================================================================
   «Seguir explorando» — la sección de cierre del mockup, que faltaba.
   =================================================================== */
#ev-fin { padding: 96px 0 !important; background-color: var(--color-background); }
#ev-fin-in {
  flex-direction: column !important; align-items: stretch !important; gap: 0 !important;
  width: 100%; max-width: 1400px; margin: 0 auto; padding: 0 40px !important;
}
#ev-fin-in > * { flex: 0 0 auto; }
#ev-fin-head {
  flex-direction: row !important; flex-wrap: wrap; align-items: flex-end !important;
  justify-content: space-between; gap: 24px; padding: 0 !important;
}
#ev-fin-head-txt {
  flex: 0 1 auto !important; width: auto !important; max-width: 576px;
  flex-direction: column !important; align-items: flex-start !important;
  gap: 0 !important; padding: 0 !important;
}
#ev-fin-head-txt > * { flex: 0 0 auto; }
#ev-fin-eb p.elementor-heading-title {
  margin: 0; font-family: var(--font-body); font-size: 0.6875rem; font-weight: 400;
  letter-spacing: 0.22em; text-transform: uppercase; line-height: 1.5;
  color: var(--color-gold-deep);
}
#ev-fin-h2 h2.elementor-heading-title {
  margin: 16px 0 0; font-family: var(--font-display); font-weight: 400;
  font-size: clamp(1.9rem, 3.4vw, 3rem); line-height: 1.06;
  letter-spacing: -0.015em; color: var(--color-text);
}
#ev-fin-link {
  flex: 0 0 auto !important; width: fit-content !important;
  flex-direction: row !important; align-items: center !important; gap: 8px;
  padding: 0 0 6px !important; color: var(--color-gold-deep);
  text-decoration: none; transition: color .25s ease, gap .25s ease;
}
#ev-fin-link:hover { color: var(--color-text); gap: 12px; }
#ev-fin-link p.elementor-heading-title {
  margin: 0; font-family: var(--font-body); font-size: 0.875rem; font-weight: 400;
  letter-spacing: 0.06em; line-height: 1.4; color: inherit;
}
#ev-fin-link p.elementor-heading-title::after {
  content: ""; display: inline-block; width: 16px; height: 16px;
  margin-left: 8px; vertical-align: -3px; background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14'/%3E%3Cpath d='m12 5 7 7-7 7'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14'/%3E%3Cpath d='m12 5 7 7-7 7'/%3E%3C/svg%3E") center / contain no-repeat;
}
#ev-fin-grid {
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px; margin-top: 48px; padding: 0 !important;
}
#ev-t1, #ev-t2 {
  flex-direction: column !important; align-items: stretch !important;
  gap: 0 !important; padding: 0 !important;
  border: 1px solid var(--color-border);
  background-color: var(--color-surface);
  text-decoration: none; overflow: hidden;
  transition: border-color .25s ease;
}
#ev-t1 > *, #ev-t2 > * { flex: 0 0 auto; }
#ev-t1:hover, #ev-t2:hover { border-color: var(--color-gold); }
#ev-t1-img, #ev-t2-img { margin: 0; overflow: hidden; }
#ev-t1-img img, #ev-t2-img img {
  display: block; width: 100%; height: 224px; object-fit: cover;
  filter: saturate(1.03) contrast(1.02);
  transition: transform .7s cubic-bezier(.2,.6,.2,1);
}
#ev-t1:hover #ev-t1-img img, #ev-t2:hover #ev-t2-img img { transform: scale(1.04); }
#ev-t1-cuerpo, #ev-t2-cuerpo {
  flex-direction: column !important; align-items: flex-start !important;
  gap: 0 !important; padding: 24px !important;
}
#ev-t1-cuerpo > *, #ev-t2-cuerpo > * { flex: 0 0 auto; }
#ev-t1-k p.elementor-heading-title, #ev-t2-k p.elementor-heading-title {
  margin: 0; font-family: var(--font-body); font-size: 0.68rem; font-weight: 400;
  letter-spacing: 0.2em; text-transform: uppercase; line-height: 1.5;
  color: var(--color-gold-deep);
}
#ev-t1-h, #ev-t2-h { margin-top: 12px; }
#ev-t1-h h3.elementor-heading-title, #ev-t2-h h3.elementor-heading-title {
  margin: 0; font-family: var(--font-display); font-weight: 400;
  font-size: 1.5rem; line-height: 1.375; letter-spacing: -0.015em;
  color: var(--color-text);
}
#ev-t1-d, #ev-t2-d { margin-top: 12px; }
#ev-t1-d p.elementor-heading-title, #ev-t2-d p.elementor-heading-title {
  margin: 0; font-family: var(--font-body); font-size: 0.875rem;
  font-weight: 400; line-height: 1.625; color: var(--color-text-muted);
}
@media (max-width: 1024px) {
  #ev-fin { padding: 80px 0 !important; }
  #ev-fin-in { padding: 0 24px !important; }
  #ev-fin-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
  #ev-fin { padding: 56px 0 !important; }
  #ev-fin-in { padding: 0 20px !important; }
  #ev-fin-head { align-items: flex-start !important; }
  #ev-fin-grid { grid-template-columns: 1fr; margin-top: 32px; }
}

#ev-t3 { border: 1px solid var(--color-border); background-color: var(--color-surface); text-decoration: none; overflow: hidden; transition: border-color .25s; flex-direction: column !important; align-items: stretch !important; gap: 0 !important; padding: 0 !important; }
#ev-t3 > * { flex: 0 0 auto; }
#ev-t3:hover { border-color: var(--color-gold); }
#ev-t3-img { margin: 0; overflow: hidden; }
#ev-t3-img img { display: block; width: 100%; height: 224px; object-fit: cover; filter: saturate(1.03) contrast(1.02); transition: transform .7s cubic-bezier(.2,.6,.2,1); }
#ev-t3:hover #ev-t3-img img { transform: scale(1.04); }
#ev-t3-cuerpo { flex-direction: column !important; align-items: flex-start !important; gap: 0 !important; padding: 24px !important; }
#ev-t3-cuerpo > * { flex: 0 0 auto; }
#ev-t3-k p.elementor-heading-title { margin: 0; font-family: var(--font-body); font-size: .68rem; font-weight: 400; letter-spacing: .2em; text-transform: uppercase; line-height: 1.5; color: var(--color-gold-deep); }
#ev-t3-h { margin-top: 12px; }
#ev-t3-h h3.elementor-heading-title { margin: 0; font-family: var(--font-display); font-weight: 400; font-size: 1.5rem; line-height: 1.375; letter-spacing: -.015em; color: var(--color-text); }
#ev-t3-d { margin-top: 12px; }
#ev-t3-d p.elementor-heading-title { margin: 0; font-family: var(--font-body); font-size: .875rem; font-weight: 400; line-height: 1.625; color: var(--color-text-muted); }/* End custom CSS */