.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-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-4220 .elementor-element.elementor-element-bd7c79d{--grid-columns:3;}@media(max-width:1024px){.elementor-4220 .elementor-element.elementor-element-bd7c79d{--grid-columns:2;}}@media(max-width:767px){.elementor-4220 .elementor-element.elementor-element-bd7c79d{--grid-columns:1;}}/* Start custom CSS *//* ============ /inspiracion — calcada del mockup ============
   https://literary-escapes-map.lovable.app/inspiracion
   Hero 72svh · un artículo destacado en rejilla 1.1/0.9 · rejilla de tres
   columnas con las demás entradas · pie con los tres enlaces hermanos.
   Medido a 1440. */
[id^="ip-"] { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
[id^="ip-"] * { border-radius: 0; }

/* ---------- Hero: 72svh, min 480 ---------- */
#ip-hero {
  position: relative; display: flex; align-items: flex-end;
  height: 72svh; min-height: 480px; padding: 0 !important; margin: 0;
  background-color: var(--color-ink); overflow: hidden;
}
#ip-foto { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; }
#ip-foto .elementor-widget-container, #ip-foto figure, #ip-foto a { height: 100%; }
#ip-foto img { width: 100%; height: 100%; object-fit: cover; display: block;
               filter: saturate(1.03) contrast(1.02); }
#ip-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%);
}
#ip-hero-txt {
  position: relative; z-index: 1;
  flex-direction: column !important; align-items: flex-start !important;
  justify-content: flex-end !important; gap: 0 !important;
  width: 100%; max-width: 1400px; margin: 0 auto;
  padding: 0 40px 64px !important;
}
#ip-hero-txt > * { flex: 0 0 auto; }
#ip-eb p.elementor-heading-title {
  margin: 0; font-family: var(--font-body); font-size: 0.7rem; font-weight: 400;
  letter-spacing: 0.22em; text-transform: uppercase; line-height: 1.5;
  color: var(--color-gold);
}
#ip-h1 { margin-top: 16px; }
#ip-h1 h1.elementor-heading-title {
  margin: 0; max-width: 20ch; 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);
}
#ip-sub { margin-top: 20px; }
#ip-sub p.elementor-heading-title {
  margin: 0; max-width: 672px; font-family: var(--font-body); font-size: 0.98rem;
  font-weight: 400; line-height: 1.625;
  color: color-mix(in srgb, var(--color-ink-foreground) 85%, transparent);
}

/* ---------- Cuerpo ---------- */
#ip-cuerpo {
  flex-direction: column !important; align-items: stretch !important; gap: 0 !important;
  width: 100%; max-width: 1400px; margin: 0 auto;
  padding: 112px 40px !important;
  background-color: var(--color-background);
}
#ip-cuerpo > * { flex: 0 0 auto; }

/* --- El artículo destacado --- */
#ip-dest {
  display: grid !important; grid-template-columns: 1.1fr 0.9fr; gap: 64px;
  align-items: center; padding: 0 !important; width: 100% !important;
  text-decoration: none;
}
#ip-dest-fig { padding: 0 !important; margin: 0; overflow: hidden; min-width: 0; }
#ip-dest-img { margin: 0; }
#ip-dest-img img {
  display: block; width: 100%; height: 512px; object-fit: cover;
  filter: saturate(1.03) contrast(1.02);
  transition: transform .7s cubic-bezier(.2,.6,.2,1);
}
#ip-dest:hover #ip-dest-img img { transform: scale(1.04); }
#ip-dest-txt {
  flex-direction: column !important; align-items: flex-start !important;
  gap: 0 !important; padding: 0 !important; min-width: 0;
}
#ip-dest-txt > * { flex: 0 0 auto; }
#ip-dest-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);
}
#ip-dest-h2 { margin-top: 16px; }
#ip-dest-h2 h2.elementor-heading-title {
  margin: 0; max-width: 24ch; font-family: var(--font-display); font-weight: 400;
  font-size: clamp(2rem, 3.6vw, 3.2rem); line-height: 1.04; letter-spacing: -0.015em;
  color: var(--color-text); transition: color .25s ease;
}
#ip-dest:hover #ip-dest-h2 h2.elementor-heading-title { color: var(--color-gold-deep); }
#ip-dest-p { margin-top: 24px; }
#ip-dest-p p.elementor-heading-title {
  margin: 0; max-width: 576px; font-family: var(--font-body); font-size: 1.02rem;
  font-weight: 400; line-height: 1.75; color: var(--color-text-muted);
}
#ip-dest-cta { margin-top: 28px; }
#ip-dest-cta 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: var(--color-gold-deep);
}
#ip-dest-cta 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;
  transition: margin-left .25s ease;
}
#ip-dest:hover #ip-dest-cta p.elementor-heading-title::after { margin-left: 14px; }

/* --- La rejilla de artículos --- */
#ip-grid .elementor-loop-container {
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr));
  column-gap: 32px; row-gap: 56px; margin-top: 80px; padding: 0 !important;
}
#ip-c {
  flex-direction: column !important; align-items: stretch !important;
  gap: 0 !important; padding: 0 !important; text-decoration: none;
  width: 100% !important; min-width: 0;
}
#ip-c > * { flex: 0 0 auto; }
[id^="ip-c"][id$="-fig"] { padding: 0 !important; margin: 0; overflow: hidden; }
[id^="ip-c"][id$="-img"] { margin: 0; }
[id^="ip-c"][id$="-img"] img {
  display: block; width: 100%; height: 256px; object-fit: cover;
  filter: saturate(1.03) contrast(1.02);
  transition: transform .7s cubic-bezier(.2,.6,.2,1);
}
#ip-c:hover img { transform: scale(1.04); }
[id^="ip-c"][id$="-k"] { margin-top: 20px; }
[id^="ip-c"][id$="-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);
}
[id^="ip-c"][id$="-h"] { margin-top: 12px; }
[id^="ip-c"][id$="-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); transition: color .25s ease;
}
#ip-c:hover h3.elementor-heading-title { color: var(--color-gold-deep); }
[id^="ip-c"][id$="-d"] { margin-top: 8px; }
[id^="ip-c"][id$="-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);
  /* el extracto del original es más largo que el copy del mockup: se recorta
     en la tarjeta, no en el contenido */
  display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical;
  overflow: hidden;
}

/* ---------- Pie: los tres enlaces hermanos ---------- */
#ip-fin {
  padding: 0 40px 96px !important; background-color: var(--color-background);
  width: 100%; max-width: 1400px; margin: 0 auto;
}
#ip-fin-in {
  flex-direction: row !important; flex-wrap: wrap; align-items: center !important;
  gap: 24px; padding: 40px 0 0 !important;
  border-top: 1px solid var(--color-border);
}
#ip-fin-in > * { flex: 0 0 auto; }
#ip-f1, #ip-f2, #ip-f3 {
  flex: 0 0 auto !important; width: fit-content !important;
  flex-direction: row !important; align-items: center !important; gap: 8px;
  padding: 0 !important; color: var(--color-gold-deep);
  text-decoration: none; transition: color .25s ease, gap .25s ease;
}
#ip-f1:hover, #ip-f2:hover, #ip-f3:hover { color: var(--color-text); gap: 12px; }
#ip-f1 p.elementor-heading-title, #ip-f2 p.elementor-heading-title,
#ip-f3 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;
}
#ip-f1 p.elementor-heading-title::after, #ip-f2 p.elementor-heading-title::after,
#ip-f3 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;
}

/* ---------- Cortes ---------- */
@media (max-width: 1024px) {
  #ip-hero { height: 72svh; min-height: 460px; }
  #ip-hero-txt { padding: 0 24px 56px !important; }
  #ip-cuerpo { padding: 80px 24px !important; }
  #ip-dest { grid-template-columns: 1fr; gap: 32px; }
  #ip-dest-img img { height: 380px; }
  #ip-grid .elementor-loop-container { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 48px; }
  #ip-fin { padding: 0 24px 80px !important; }
}
@media (max-width: 767px) {
  #ip-hero { height: auto; min-height: 440px; }
  #ip-hero-txt { padding: 0 20px 48px !important; }
  #ip-cuerpo { padding: 56px 20px !important; }
  #ip-dest-img img { height: 260px; }
  #ip-grid .elementor-loop-container { grid-template-columns: 1fr; row-gap: 40px; }
  [id^="ip-c"][id$="-img"] img { height: 220px; }
  #ip-fin { padding: 0 20px 56px !important; }
  #ip-fin-in { gap: 16px; }
}


/* --- El listado es ahora un bucle --------------------------------------- */
/* Los titulares llevan enlace propio (antes lo era la tarjeta entera), y un
   <a> hereda el azul del navegador si nadie se lo dice. */
#ip-c-h a, #ip-c-h a:hover, #ip-c-h a:visited,
#ip-c-k a, #ip-c-d a { color: inherit; text-decoration: none; }
#ip-c-img a { display: block; }
/* Elementor mete su propio contenedor entre el widget y las tarjetas. */
#ip-grid .elementor-loop-container { padding: 0; }
#ip-grid .e-loop-item { display: flex; min-width: 0; }
/* Toda la pieza clicable, con un enlace de verdad y foco visible. */
#ip-c { position: relative; }
#ip-c-h a::after { content: ""; position: absolute; inset: 0; z-index: 1; }
#ip-c-h a:focus-visible { outline: none; }
#ip-c:focus-within { outline: 2px solid var(--color-gold-deep); outline-offset: 4px; }/* End custom CSS */