.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-5341 .elementor-element.elementor-element-b90b383{--grid-columns:3;}.elementor-5341 .elementor-element.elementor-element-b90b383 .elementor-loop-container{grid-auto-rows:1fr;}.elementor-5341 .elementor-element.elementor-element-b90b383 .e-loop-item > .elementor-section, .elementor-5341 .elementor-element.elementor-element-b90b383 .e-loop-item > .elementor-section > .elementor-container, .elementor-5341 .elementor-element.elementor-element-b90b383 .e-loop-item > .e-con, .elementor-5341 .elementor-element.elementor-element-b90b383 .e-loop-item .elementor-section-wrap  > .e-con{height:100%;}.elementor-5341 .elementor-element.elementor-element-77bd7db{--grid-columns:3;}.elementor-5341 .elementor-element.elementor-element-77bd7db .elementor-loop-container{grid-auto-rows:1fr;}.elementor-5341 .elementor-element.elementor-element-77bd7db .e-loop-item > .elementor-section, .elementor-5341 .elementor-element.elementor-element-77bd7db .e-loop-item > .elementor-section > .elementor-container, .elementor-5341 .elementor-element.elementor-element-77bd7db .e-loop-item > .e-con, .elementor-5341 .elementor-element.elementor-element-77bd7db .e-loop-item .elementor-section-wrap  > .e-con{height:100%;}.elementor-5341 .elementor-element.elementor-element-8478c97{--grid-columns:3;}.elementor-5341 .elementor-element.elementor-element-8478c97 .elementor-loop-container{grid-auto-rows:1fr;}.elementor-5341 .elementor-element.elementor-element-8478c97 .e-loop-item > .elementor-section, .elementor-5341 .elementor-element.elementor-element-8478c97 .e-loop-item > .elementor-section > .elementor-container, .elementor-5341 .elementor-element.elementor-element-8478c97 .e-loop-item > .e-con, .elementor-5341 .elementor-element.elementor-element-8478c97 .e-loop-item .elementor-section-wrap  > .e-con{height:100%;}@media(max-width:1024px){.elementor-5341 .elementor-element.elementor-element-b90b383{--grid-columns:2;}.elementor-5341 .elementor-element.elementor-element-77bd7db{--grid-columns:2;}.elementor-5341 .elementor-element.elementor-element-8478c97{--grid-columns:2;}}@media(max-width:767px){.elementor-5341 .elementor-element.elementor-element-b90b383{--grid-columns:1;}.elementor-5341 .elementor-element.elementor-element-77bd7db{--grid-columns:1;}.elementor-5341 .elementor-element.elementor-element-8478c97{--grid-columns:1;}}/* Start custom CSS *//* ============ Ficha de destino ============
   Hero a sangre, y debajo lo que de verdad hay en ese destino: sus rutas y
   sus casas-museo, traídas por la propia consulta. Nada escrito a mano. */
[id^="fd-"] { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
[id^="fd-"] * { border-radius: 0; }

#fd-hero {
  position: relative; display: flex; align-items: flex-end;
  height: 78svh; min-height: 520px; padding: 0 !important; margin: 0;
  background-color: var(--color-ink); overflow: hidden;
}
#fd-foto { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; padding: 0 !important; }
#fd-foto .elementor-widget-container, #fd-foto figure, #fd-foto a { height: 100%; }
#fd-foto img { width: 100%; height: 100%; object-fit: cover; display: block;
               filter: saturate(1.03) contrast(1.02); }
#fd-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%);
}
#fd-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;
}
#fd-hero-txt > * { flex: 0 0 auto; }
#fd-migas 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);
}
#fd-h1 { margin-top: 16px; }
#fd-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);
}
#fd-sub { margin-top: 20px; }
#fd-sub p.elementor-heading-title {
  margin: 0; max-width: 620px; 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);
}

/* --- las tres bandas de contenido --- */
#fd-rutas, #fd-casas, #fd-fin {
  padding: 96px 0 !important; flex-direction: column !important; gap: 0 !important;
}
#fd-rutas { background-color: var(--color-background); }
#fd-casas { background-color: var(--color-sand);
            border-top: 1px solid var(--color-border);
            border-bottom: 1px solid var(--color-border); }
#fd-fin { background-color: var(--color-background); }
#fd-rutas-in, #fd-casas-in, #fd-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;
}
#fd-rutas-in > *, #fd-casas-in > *, #fd-fin-in > * { flex: 0 0 auto; }
[id$="-eb"][id^="fd-"] 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);
}
[id$="-h2"][id^="fd-"] { margin-top: 16px; }
[id$="-h2"][id^="fd-"] h2.elementor-heading-title {
  margin: 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);
}
[id^="fd-grid-"] { margin-top: 40px; }
[id^="fd-grid-"] .elementor-grid {
  display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px !important;
}
[id^="fd-grid-"] .e-loop-item { height: 100%; }
/* si un destino no tiene rutas o casas-museo, su banda entera desaparece */
#fd-rutas:not(:has(.e-loop-item)), #fd-casas:not(:has(.e-loop-item)) { display: none; }

/* la cabecera hace su transición: aquí hay hero oscuro */
@media (max-width: 1024px) {
  #fd-hero { height: 78svh; min-height: 460px; }
  #fd-hero-txt { padding: 0 24px 56px !important; }
  #fd-rutas, #fd-casas, #fd-fin { padding: 72px 0 !important; }
  #fd-rutas-in, #fd-casas-in, #fd-fin-in { padding: 0 24px !important; }
  [id^="fd-grid-"] .elementor-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
  #fd-hero { height: auto; min-height: 440px; }
  #fd-hero-txt { padding: 0 20px 48px !important; }
  #fd-rutas, #fd-casas, #fd-fin { padding: 56px 0 !important; }
  #fd-rutas-in, #fd-casas-in, #fd-fin-in { padding: 0 20px !important; }
  [id^="fd-grid-"] .elementor-grid { grid-template-columns: 1fr; }
}


#fd-ciudad { display: none; }

/* ---------- El mapa interactivo del destino ----------
   Mismo patrón que en la ficha de ruta: la sección entera desaparece si el
   campo «Mapa interactivo» está vacío, que es lo normal. Solo la tendrán los
   destinos que tengan mapa propio. */

#fd-mapa {
  flex-direction: column;
  padding: 0 0 96px;
  background-color: var(--color-background);
}
#fd-mapa-in {
  flex-direction: column;
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 40px !important;
  gap: 0;
}
#fd-mapa-head {
  flex-direction: row;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  padding: 0 !important;
}
#fd-mapa-head-txt {
  flex-direction: column;
  align-items: flex-start;
  gap: 0;
  flex: 0 1 auto !important;
  width: auto !important;
  padding: 0 !important;
}
#fd-mapa-eb p {
  margin: 0;
  font-family: var(--font-body);
  font-size: 0.6875rem;
  font-weight: 500;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--color-gold-deep);
}
#fd-mapa-h2 h2 {
  margin: 16px 0 0;
  font-family: var(--font-display);
  font-weight: 400;
  font-size: clamp(1.4rem, 2.4vw, 2rem);
  line-height: 1.15;
  letter-spacing: -0.01em;
  color: var(--color-text);
}
/* el botón: un enlace de verdad, con su icono */
#fd-btn-mapa {
  width: fit-content;
  flex: 0 0 auto;
  flex-direction: row;
  align-items: center;
  gap: 10px;
  padding: 13px 22px !important;
  border: 1px solid var(--color-border);
  background-color: var(--color-surface);
  text-decoration: none;
  transition: background-color .25s ease, border-color .25s ease;
}
#fd-btn-mapa:hover { background-color: var(--color-sand); border-color: var(--color-gold-deep); }
#fd-btn-mapa:focus-visible { outline: 2px solid var(--color-gold-deep); outline-offset: 3px; }
#fd-btn-mapa-txt p {
  margin: 0;
  font-family: var(--font-body);
  font-size: 0.875rem;
  font-weight: 500;
  letter-spacing: 0.02em;
  color: var(--color-text);
  white-space: nowrap;
}

#fd-mapa-caja {
  width: 100%;
  min-width: 0;
  height: clamp(420px, 62vh, 640px);
  margin-top: 28px;
  padding: 0 !important;
  background-color: var(--color-sand);
  border: 1px solid var(--color-border);
  overflow: hidden;
}
#fd-mapa-caja iframe { display: block; width: 100%; height: 100%; border: 0; }

#fd-mapa-pie { margin-top: 12px; }
#fd-mapa-pie p {
  margin: 0;
  font-family: var(--font-body);
  font-size: 0.78rem;
  line-height: 1.5;
  letter-spacing: 0.06em;
  color: var(--color-text-muted);
}
#fd-mapa-pie:empty, #fd-mapa-pie p:empty { display: none; }

/* los datos viajan ocultos, como en la ficha de ruta */
#fd-datos-ocultos, #fd-url-mapa, #fd-txt-mapa, #fd-pie-mapa { display: none !important; }

/* sin mapa no hay sección: lo pone el JS, y esto lo respalda por si tarda */
#fd-mapa:not(:has(#fd-mapa-caja iframe)) { display: none; }

@media (max-width: 1024px) {
  #fd-mapa { padding-bottom: 72px; }
  #fd-mapa-in { padding: 0 24px !important; }
  #fd-mapa-caja { height: clamp(400px, 58vh, 520px); }
}
@media (max-width: 767px) {
  #fd-mapa { padding-bottom: 56px; }
  #fd-mapa-in { padding: 0 20px !important; }
  #fd-mapa-head { flex-direction: column; align-items: flex-start; }
  #fd-mapa-caja { height: clamp(380px, 62vh, 460px); }
}

/* En móvil, alto en dvh: con vh la barra del navegador deja fuera de pantalla
   la barra de opciones del mapa. */
@media (max-width: 767px) {
  #fd-mapa-caja { height: clamp(380px, 62dvh, 460px) !important; }
}
/* ===================================================================
   Barra de datos, cuerpo y lateral (10-oct-2026)
   La misma gramática que la ficha de casa-museo (4047) y la de ruta (3914):
   barra con icono sobre color-sand, cuerpo en dos columnas 727/537 y cajas
   en el lateral. Medidas copiadas de esas fichas, no inventadas.
   Todo el texto son campos de la ficha. Un apartado con el campo vacío
   desaparece entero, titular incluido.
   =================================================================== */
#fd-datos, #fd-cuerpo { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

/* ---------- Barra de datos ---------- */
#fd-datos {
  flex-direction: column !important;
  padding: 0 !important;
  background-color: var(--color-sand);
  border-bottom: 1px solid var(--color-border);
}
#fd-datos-in {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 24px 32px;
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding: 40px !important;
}
#fd-datos-in > div { flex-direction: row !important; align-items: flex-start !important; gap: 16px !important; padding: 0 !important; min-width: 0; }
#fd-datos-in > div > div { flex-direction: column !important; align-items: flex-start !important; gap: 0 !important; padding: 0 !important; min-width: 0; }
#fd-datos p { margin: 0; font-family: var(--font-body); }
#fd-datos [id^="fd-et-"] p {
  font-size: 0.68rem; font-weight: 400 !important; letter-spacing: 0.18em;
  text-transform: uppercase; line-height: 1.4; color: var(--color-text-muted);
}
#fd-datos [id^="fd-va-"] { margin-top: 4px; }
#fd-datos [id^="fd-va-"] p { font-size: 0.92rem; font-weight: 400; line-height: 1.5; color: var(--color-text); }
/* el territorio sale del campo; los recuentos los pone el script, y hasta
   entonces el hueco se reserva sin enseñar nada */
#fd-d-territorio:not(:has(#fd-va-territorio)) { display: none !important; }
#fd-d-recorrer:not(.fd-lleno) [id^="fd-va-"],
#fd-d-visitar:not(.fd-lleno) [id^="fd-va-"],
#fd-d-leer:not(.fd-lleno) [id^="fd-va-"],
#fd-d-agenda:not(.fd-lleno) [id^="fd-va-"] { visibility: hidden; }
[id^="fd-ic-"] {
  flex: 0 0 16px !important; width: 16px !important; height: 16px !important;
  min-width: 0 !important; min-height: 0 !important; padding: 0 !important;
  margin-top: 2px; line-height: 0; color: var(--color-gold-deep); align-self: flex-start;
}
[id^="fd-ic-"] svg {
  display: block; width: 16px !important; height: 16px !important;
  fill: none !important; stroke: currentColor !important; stroke-width: 1.5; overflow: visible;
}

/* ---------- Cuerpo ---------- */
#fd-cuerpo {
  display: grid !important;
  grid-template-columns: minmax(0, 727fr) minmax(0, 537fr);
  align-items: start;
  gap: 56px;
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding: 112px 40px !important;
  background-color: var(--color-background);
  /* el fondo llega de borde a borde aunque el contenido tope en 1400: sin
     esto, en pantallas anchas asoma el blanco del body a los lados */
  box-shadow: 0 0 0 100vmax var(--color-background);
  clip-path: inset(0 -100vmax);
}
#fd-col-texto { flex-direction: column !important; align-items: stretch !important; gap: 0 !important; padding: 0 !important; min-width: 0; }
#fd-col-lado {
  flex-direction: column !important; align-items: stretch !important; gap: 24px !important;
  padding: 0 !important; min-width: 0;
  align-self: stretch;          /* ocupa todo el alto: el índice puede quedarse pegado */
}
#fd-col-texto > *, #fd-col-lado > * { flex: 0 0 auto; }

/* La entrada: el primer párrafo hace de entradilla, con el filete dorado
   encima, como en los artículos de Inspiración */
#fd-intro p {
  margin: 0 0 20px; font-family: var(--font-body); font-size: 1.02rem;
  line-height: 1.75; color: var(--color-text-muted);
}
#fd-intro p:last-child { margin-bottom: 0; }
#fd-intro p:first-child {
  margin-bottom: 32px; font-family: var(--font-display); font-weight: 400;
  font-size: clamp(1.5rem, 2.6vw, 2.1rem); line-height: 1.3; color: var(--color-text);
}
#fd-intro p:first-child::before {
  content: ""; display: block; width: 48px; height: 1px;
  margin-bottom: 20px; background-color: var(--color-gold);
}
#fd-intro strong { font-weight: 500; color: var(--color-text); }

/* Cada apartado: filete fino, titular y su campo */
[id^="fd-s-"] {
  flex-direction: column !important; align-items: stretch !important; gap: 0 !important;
  padding: 56px 0 0 !important; margin-top: 64px;
  border-top: 1px solid var(--color-border);
  scroll-margin-top: 104px; min-width: 0;
}
#fd-col-texto > [id^="fd-s-"]:first-child { margin-top: 0; padding-top: 0 !important; border-top: 0; }
/* el titulo del kit de Elementor vale (0,2,0): sin subir especificidad sale azul */
#fd-col-texto [id^="fd-t-"] h2.elementor-heading-title {
  margin: 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);
}
[id^="fd-s-"] [id^="fd-c-"] { margin-top: 28px; }
[id^="fd-s-"]:not(:has([id^="fd-c-"])) { display: none !important; }

[id^="fd-c-"] { font-family: var(--font-body); color: var(--color-text-muted); }
[id^="fd-c-"] a { color: var(--color-gold-deep); text-decoration: none; border-bottom: 1px solid currentColor; }
[id^="fd-c-"] a:hover { color: var(--color-text); }
[id^="fd-c-"] strong { font-weight: 500; color: var(--color-text); }
.fd-entradilla p, .fd-pie p { margin: 0 0 16px; font-size: 1.02rem; line-height: 1.75; }
.fd-entradilla p:last-child, .fd-pie p:last-child { margin-bottom: 0; }

/* Las fichas: rejilla de dos, con el filete dorado de 48x1 encima del
   título, igual que «Qué se ve en la visita» en casa-museo */
.fd-fichas { display: grid; grid-template-columns: 1fr 1fr; column-gap: 40px; row-gap: 40px; align-items: start; }
.fd-entradilla + .fd-fichas { margin-top: 36px; }
.fd-ficha { min-width: 0; }
.fd-ficha h3 {
  position: relative; margin: 0; padding-top: 21px;
  font-family: var(--font-display); font-weight: 400; font-size: 1.5rem;
  line-height: 1.375; letter-spacing: -0.015em; color: var(--color-text);
}
.fd-ficha h3::before {
  content: ""; position: absolute; top: 0; left: 0;
  width: 48px; height: 1px; background-color: var(--color-gold);
}
.fd-ficha p { margin: 12px 0 0; font-size: 0.875rem; line-height: 1.625; overflow-wrap: anywhere; }
.fd-ficha p.fd-dato, .fd-ficha p.fd-enlace { margin-top: 6px; font-size: 0.82rem; line-height: 1.55; }
.fd-ficha p:not(.fd-dato):not(.fd-enlace) + p.fd-dato,
.fd-ficha p:not(.fd-dato):not(.fd-enlace) + p.fd-enlace { margin-top: 16px; }
.fd-ficha em, .fd-entradilla em, .fd-pie em, #fd-intro em { font-style: italic; }

/* Los enlaces de la ficha («Web», «Ver ruta»…): el rótulo es el enlace, con
   su flecha, como los «Ver ruta» de las tarjetas */
p.fd-enlace a { border-bottom: 0; letter-spacing: 0.04em; }
p.fd-enlace a::after { content: "\2192"; display: inline-block; margin-left: 6px; transition: transform .25s ease; }
p.fd-enlace a:hover::after { transform: translateX(3px); }
p.fd-enlace a:focus-visible { outline: 2px solid var(--color-gold-deep); outline-offset: 3px; }

/* El pie del apartado (lo que va tras la línea horizontal) */
.fd-pie { margin-top: 40px; padding-top: 28px; border-top: 1px solid var(--color-border); }
.fd-pie p.fd-enlace, .fd-pie p.fd-dato { margin: 8px 0 0; font-size: 0.875rem; }

/* ---------- Lateral ---------- */
#fd-caja-organiza, #fd-caja-indice {
  flex-direction: column !important; align-items: stretch !important; gap: 0 !important;
  padding: 32px !important; border: 1px solid var(--color-border);
}
#fd-caja-organiza { background-color: var(--color-surface); }
#fd-t-organiza h2, #fd-eb-indice p {
  margin: 0; font-family: var(--font-body); font-size: 0.6875rem; font-weight: 400 !important;
  letter-spacing: 0.22em; text-transform: uppercase; line-height: 1.5; color: var(--color-gold-deep);
}
#fd-c-organiza { margin-top: 16px; }
#fd-c-organiza p { margin: 0 0 14px; font-size: 0.92rem; line-height: 1.7; }
#fd-c-organiza p:last-child { margin-bottom: 0; }
#fd-caja-organiza:not(:has(#fd-c-organiza)) { display: none !important; }

#fd-caja-indice { position: sticky; top: 112px; }
#fd-caja-indice ol { list-style: none; margin: 16px 0 0; padding: 0; }
#fd-caja-indice li {
  position: relative; padding: 0 0 10px 18px;
  font-family: var(--font-body); font-size: 0.9rem; line-height: 1.5;
}
#fd-caja-indice li:last-child { padding-bottom: 0; }
#fd-caja-indice li::before {
  content: ""; position: absolute; left: 0; top: 0.55em;
  width: 6px; height: 6px; border-radius: 50%; background-color: var(--color-border);
  transition: background-color .2s ease;
}
#fd-caja-indice li.activo::before { background-color: var(--color-gold); }
#fd-caja-indice a { color: var(--color-text-muted); text-decoration: none; transition: color .2s ease; }
#fd-caja-indice a:hover, #fd-caja-indice a.activo { color: var(--color-text); }
#fd-caja-indice a:focus-visible { outline: 2px solid var(--color-gold-deep); outline-offset: 2px; }
#fd-caja-indice:not(:has(nav)) { display: none !important; }
#fd-rutas, #fd-casas { scroll-margin-top: 80px; }

/* ---------- Las bandas de relacionados ----------
   Sobre color-sand, como «Lugares recomendados» en casa-museo, y separadas
   por un filete: después del cuerpo se leen como una zona aparte, salga la
   banda que salga (rutas, casas-museo u otros destinos). */
#fd-rutas, #fd-casas, #fd-fin {
  background-color: var(--color-sand);
  border-top: 1px solid var(--color-border);
  border-bottom: 0;
}

/* Cabecera de cada banda: rótulo y titular a la izquierda, «Ver todos…» a la
   derecha, con las medidas de «Lugares recomendados» de casa-museo */
#fd-rutas-head, #fd-casas-head, #fd-fin-head {
  flex-direction: row !important; flex-wrap: wrap; align-items: flex-end !important;
  justify-content: space-between !important; gap: 16px !important; padding: 0 !important;
}
#fd-rutas-head-txt, #fd-casas-head-txt, #fd-fin-head-txt {
  flex: 0 1 auto !important; width: auto !important; max-width: 100%;
  flex-direction: column !important; align-items: flex-start !important; gap: 0 !important; padding: 0 !important;
}
/* un e-flexbox con etiqueta a se estira al 100%: hay que atarlo corto */
#fd-rutas-link, #fd-casas-link, #fd-fin-link {
  flex: 0 0 auto !important; flex-direction: row !important; align-items: center !important;
  gap: 8px !important; width: fit-content; padding: 0 0 6px !important; line-height: 0;
  color: var(--color-gold-deep); text-decoration: none; transition: color .25s ease, gap .25s ease;
}
#fd-rutas-link:hover, #fd-casas-link:hover, #fd-fin-link:hover { color: var(--color-text); gap: 12px !important; }
#fd-rutas-link:focus-visible, #fd-casas-link:focus-visible, #fd-fin-link:focus-visible { outline: 2px solid var(--color-gold-deep); outline-offset: 3px; }
#fd-rutas-link p, #fd-casas-link p, #fd-fin-link p {
  margin: 0; font-family: var(--font-body); font-size: 0.875rem; font-weight: 400 !important;
  letter-spacing: 0.06em; line-height: 1.4; color: inherit;
}
#fd-rutas-flecha, #fd-casas-flecha, #fd-fin-flecha {
  flex: 0 0 16px !important; width: 16px !important; height: 16px !important;
  min-width: 0 !important; min-height: 0 !important; padding: 0 !important; line-height: 0; color: inherit;
}
#fd-rutas-flecha svg, #fd-casas-flecha svg, #fd-fin-flecha svg {
  display: block; width: 16px !important; height: 16px !important;
  fill: none !important; stroke: currentColor !important; stroke-width: 1.5; overflow: visible;
}
@media (max-width: 767px) {
  #fd-rutas-head, #fd-casas-head, #fd-fin-head { align-items: flex-start !important; }
}

/* Un destino sin textos todavía no deja un cuerpo vacío de 224px de alto:
   se queda el hero, la barra y las bandas */
#fd-cuerpo:not(:has(#fd-intro)):not(:has([id^="fd-s-"] [id^="fd-c-"])) { display: none !important; }

/* ---------- Cortes ---------- */
@media (max-width: 1024px) {
  #fd-datos-in { grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); padding: 32px 24px !important; }
  /* en una columna, el lateral va detrás de la entrada y antes de los
     apartados: las dos columnas se deshacen y se ordena todo junto */
  #fd-cuerpo { grid-template-columns: minmax(0, 1fr); gap: 0; padding: 80px 24px !important; }
  #fd-col-texto, #fd-col-lado { display: contents !important; }
  #fd-intro { order: 1; }
  #fd-caja-indice { order: 2; margin-top: 40px; position: static; }
  #fd-caja-organiza { order: 3; margin-top: 24px; }
  [id^="fd-s-"] { order: 4; }
  #fd-col-texto > [id^="fd-s-"]:first-child { margin-top: 64px; padding-top: 56px !important; border-top: 1px solid var(--color-border); }
}
@media (max-width: 767px) {
  #fd-datos-in { grid-template-columns: 1fr; gap: 20px; padding: 28px 20px !important; }
  #fd-cuerpo { padding: 56px 20px !important; }
  [id^="fd-s-"], #fd-col-texto > [id^="fd-s-"]:first-child { margin-top: 48px; padding-top: 40px !important; }
  .fd-fichas { grid-template-columns: 1fr; row-gap: 32px; }
  #fd-caja-organiza, #fd-caja-indice { padding: 24px !important; }
}

/* =====================================================================
   PRUEBA C (10-oct-2026, con el feedback de Víctor sobre A y B)
   - La barra y los colores, los de la plantilla actual.
   - La entrada con letra capital (de la B).
   - Cada apartado con la cabecera de «Qué se ve en la visita» de casa-museo:
     rótulo pequeño en mayúsculas y bloques a dos columnas con su filete.
   - Las rutas, en tarjetas con foto: las fichas de ruta de la web, más las
     del texto que no tienen ficha («Próximamente», guías oficiales).
   ===================================================================== */

/* La entrada, con letra capital en lugar del filete */
#fd-intro p:first-child::before { display: none; }
#fd-intro p:first-child::first-letter {
  float: left; font-size: 4.4em; line-height: 0.8; padding: 0.08em 0.1em 0 0;
  color: var(--color-gold-deep);
}

/* Cabecera de apartado = rótulo, como «QUÉ SE VE EN LA VISITA» */
[id^="fd-s-"], #fd-col-texto > [id^="fd-s-"]:first-child {
  border-top: 0 !important; padding-top: 0 !important; margin-top: 64px;
}
#fd-col-texto [id^="fd-t-"] h2.elementor-heading-title {
  max-width: none; 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);
}
[id^="fd-s-"] [id^="fd-c-"] { margin-top: 24px; }
.fd-entradilla + .fd-fichas { margin-top: 32px; }
.fd-fichas { column-gap: 40px; row-gap: 32px; }

/* Las rutas, en tarjetas: la rejilla de la web se muda al apartado */
#fd-s-rutas #fd-grid-rutas { margin-top: 0; }
/* dentro del campo, los enlaces de las tarjetas no llevan el subrayado de los del texto */
#fd-c-rutas #fd-grid-rutas a { border-bottom: 0 !important; }
#fd-s-rutas #fd-grid-rutas .elementor-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 24px !important; }
.fd-entradilla + #fd-grid-rutas { margin-top: 32px; }
/* La ruta sin ficha: el hueco de la foto, en arena con el icono del mapa */
.fd-sinfoto {
  display: flex; align-items: center; justify-content: center;
  height: 240px; background-color: var(--color-sand);
}
.fd-sinfoto::before {
  content: ""; width: 44px; height: 44px; background-color: var(--color-gold-deep); opacity: 0.55;
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M14.106%205.553a2%202%200%200%200%201.788%200l3.659-1.83A1%201%200%200%201%2021%204.619v12.764a1%201%200%200%201-.553.894l-4.553%202.277a2%202%200%200%201-1.788%200l-4.212-2.106a2%202%200%200%200-1.788%200l-3.659%201.83A1%201%200%200%201%203%2019.381V6.618a1%201%200%200%201%20.553-.894l4.553-2.277a2%202%200%200%201%201.788%200z%22/%3E%3Cpath%20d%3D%22M15%205.764v15%22/%3E%3Cpath%20d%3D%22M9%203.236v15%22/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M14.106%205.553a2%202%200%200%200%201.788%200l3.659-1.83A1%201%200%200%201%2021%204.619v12.764a1%201%200%200%201-.553.894l-4.553%202.277a2%202%200%200%201-1.788%200l-4.212-2.106a2%202%200%200%200-1.788%200l-3.659%201.83A1%201%200%200%201%203%2019.381V6.618a1%201%200%200%201%20.553-.894l4.553-2.277a2%202%200%200%201%201.788%200z%22/%3E%3Cpath%20d%3D%22M15%205.764v15%22/%3E%3Cpath%20d%3D%22M9%203.236v15%22/%3E%3C/svg%3E") center / contain no-repeat;
}
.fd-ruta-extra #rc-cta a { color: inherit; text-decoration: none; }
.fd-ruta-extra #rc-pie:not(:has(#rc-cta a)) { display: none !important; }

@media (max-width: 767px) {
  #fd-s-rutas #fd-grid-rutas .elementor-grid { grid-template-columns: minmax(0, 1fr) !important; }
  [id^="fd-s-"], #fd-col-texto > [id^="fd-s-"]:first-child { margin-top: 48px; }
}/* End custom CSS */