/* ORDEN-1 (CORRECCION-ORDEN-1.md, prototipo Orden1.dc.html): créditos y orden de tarjetas. Solo con body.iv-o1. */

/* 1 · Créditos. Fotos grandes del contenido: una línea gris de 11,5 px, sin subrayado (se subraya al pasar el ratón). */
body.iv-o1 .ivr-cred-linea { display: block; font-size: 11.5px !important; line-height: 1.4; color: #8A8377 !important; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; text-decoration: none !important; max-width: 100%; }
body.iv-o1 .ivr-cred-linea a { color: inherit !important; text-decoration: none !important; border: 0 !important; }
body.iv-o1 .ivr-cred-linea a:hover { text-decoration: underline !important; }
body.iv-o1 figcaption:has(.ivr-cred-linea) { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-width: 0; margin-top: 8px; }
/* Fotos de tarjeta: el crédito dentro de la foto, abajo a la derecha, en blanco sobre oscuro translúcido. */
body.iv-o1 .ivr-o1-tfoto { position: relative; margin: 0 !important; padding: 0 !important; border: 0 !important; background: var(--paper-2); aspect-ratio: 3 / 2; overflow: hidden; min-height: 0 !important; width: 100%; }
body.iv-o1 .ivr-o1-tfoto::before { display: none !important; }
body.iv-o1 .ivr-o1-tfoto img, body.iv-o1 .ivr-o1-tfoto .ivr-img-vacia { position: absolute !important; inset: 0; display: block; width: 100% !important; height: 100% !important; min-height: 0 !important; max-height: none !important; aspect-ratio: auto !important; object-fit: cover !important; border: 0 !important; margin: 0 !important; }
body.iv-o1 .ivr-cred-tarjeta { position: absolute; right: 0; bottom: 0; z-index: 1; max-width: 70%; padding: 3px 8px; font-size: 10.5px; line-height: 1.4; color: #fff; background: rgba(18, 16, 13, .55); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; pointer-events: auto; }

/* 2 · Rejillas: todas las tarjetas de una fila empiezan a la misma altura y miden lo mismo. */
body.iv-o1 .iv-reparto { align-items: stretch !important; }
body.iv-o1 .iv-reparto > * { margin-top: 0 !important; align-self: stretch !important; }
/* Tarjetas de lugar: foto arriba a todo el ancho (3:2), texto debajo y «Ver en el mapa» abajo del todo. */
body.iv-o1 .ivr-fichas > .ivr-ficha, body.iv-o1 .ivr-ficha:not(.ivr-ficha-ancha) { display: flex !important; flex-direction: column; grid-template-columns: none !important; }
body.iv-o1 .ivr-ficha > .ivr-ficha-foto { flex: none; position: relative !important; }
body.iv-o1 .ivr-ficha-txt { flex: 1 1 auto; display: flex; flex-direction: column; }
body.iv-o1 .ivr-ficha-pie { margin-top: auto !important; padding-top: 16px; }
body.iv-o1 .ivr-ficha .ivr-ficha-pie:only-child { margin-top: 0 !important; }
/* La que va sola a todo el ancho: en horizontal, foto a la izquierda en 3:2 entera (antes ocupaba toda la altura del texto
 * y con textos largos se recortaba y ampliaba: Akrotiri, 421 × 578 y 1,3×). */
@media (min-width: 700px) {
	body.iv-o1 .ivr-fichas > .ivr-ficha.ivr-ficha-ancha { display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important; align-items: start; }
	body.iv-o1 .ivr-ficha-ancha > .ivr-o1-tfoto { aspect-ratio: 3 / 2; height: auto; align-self: start; }
}
/* Zonas para dormir: misma altura y el enlace abajo. */
body.iv-o1 .ivr-zonas > .ivr-zona { display: flex; flex-direction: column; height: auto; }
body.iv-o1 .ivr-zona > .ivr-o1-tfoto { margin: 0 0 12px !important; }
body.iv-o1 .ivr-zona-pie { margin-top: auto !important; }

/* 3 · Restaurantes y alojamientos: el bloque de precio pegado abajo, igual en todas; después el mapa y la web. */
body.iv-o1 .ivr-aloj > .ivr-aloj-t { display: flex; flex-direction: column; }
body.iv-o1 .ivr-rest-pie { margin-top: auto; border-top: 1px solid var(--hairline); padding-top: 14px; display: flex; flex-direction: column; align-items: flex-start; gap: 12px; }
body.iv-o1 .ivr-rest-pie > * { margin: 0 !important; }
body.iv-o1 .ivr-rest-pie .ivr-rest-precio small { display: block; margin-top: 4px; }
/* Ninguna foto suelta a medio ancho con hueco al lado: a todo el ancho de la columna. */
body.iv-o1 .ivr-zona2.ivr-zona2-ancha { display: block; }
body.iv-o1 .ivr-zona2-ancha > figure { width: 100%; }
body.iv-o1 .iv-contenido figure.wp-block-image:not(.alignleft):not(.alignright), body.iv-o1 .iv-contenido .wp-block-image:not(.alignleft):not(.alignright) > figure { width: 100% !important; max-width: 100% !important; margin-left: 0 !important; margin-right: 0 !important; }
body.iv-o1 .iv-contenido figure.wp-block-image:not(.alignleft):not(.alignright) img { width: 100% !important; height: auto; }
/* Rótulo de cada grupo de restaurantes o alojamientos pegado a sus tarjetas, y el aire entre grupos (no al revés). */
body.iv-o1 .iv-contenido .ivr-zona-aloj { display: flex; flex-direction: column; gap: 14px !important; }
body.iv-o1 .iv-contenido .ivr-zona-aloj > .ivr-aloj-cab { margin: 0 !important; }
body.iv-o1 .iv-contenido .ivr-zona-aloj > .ivr-aloj { margin-top: 0 !important; }
body.iv-o1 .iv-contenido .ivr-zona-aloj + .ivr-zona-aloj { margin-top: 40px !important; }
@media (max-width: 899px) { body.iv-o1 .iv-contenido .ivr-zona-aloj + .ivr-zona-aloj { margin-top: 32px !important; } }
body.iv-o1 .ivr-rest-pie .ivr-rest-precio { border-top: 0 !important; padding-top: 0 !important; margin-top: 0 !important; } /* Una sola línea: la del bloque de abajo. */

/* ORDEN-2 (1): cabecera de país y de destino. Columnas 1 / 1,05, foto de unos 520 px con el marco desplazado del destino. */
body.iv-o1 .iv-o1-pcab { display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr) !important; gap: 70px !important; align-items: center !important; }
body.iv-o1 .iv-o1-cab { margin: 0; min-width: 0; }
body.iv-o1 .iv-o1-cab-marco { position: relative; padding: 0 28px 28px 0; } /* Como el marco de las piezas (28 px; 12 en el móvil): con 22 se veía más pálido. */
body.iv-o1 .iv-o1-cab-fondo { position: absolute; left: 28px; top: 28px; right: 0; bottom: 0; background: var(--dest-marco, var(--dest-tinte, #EFE9DC)); }
body.iv-o1 .iv-o1-cab-foto { position: relative; height: 520px; overflow: hidden; background: var(--paper-2); }
body.iv-o1 .iv-o1-cab-foto img { display: block; width: 100%; height: 100%; object-fit: cover; }
body.iv-o1 .iv-o1-cab figcaption { margin-top: 8px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
body.iv-o1 .iv-dp-cab.iv-o1-pcab .iv-dp-dek { max-width: none; }
@media (max-width: 899px) {
	body.iv-o1 .iv-o1-pcab { grid-template-columns: minmax(0, 1fr) !important; gap: 22px !important; }
	body.iv-o1 .iv-o1-cab-marco { padding: 0 12px 12px 0; }
	body.iv-o1 .iv-o1-cab-fondo { left: 12px; top: 12px; }
	body.iv-o1 .iv-o1-cab-foto { height: auto; aspect-ratio: 4 / 3; } /* 4:3, nunca una franja panorámica. */
}

/* ORDEN-2 (2): Ideas de viaje. Cabecera de sección, pestañas, destacada grande y rejilla de 3 con las tarjetas de Inspiración. */
body.iv-o1 .iv-o1-ideas { padding-top: 60px; }
body.iv-o1 .iv-o1-ideas-cab .iv-migas { margin-bottom: 14px; }
body.iv-o1 .iv-o1-ideas-h1 { font-family: var(--display); font-weight: 500; font-size: 72px; line-height: 1; margin: 14px 0 12px; }
body.iv-o1 .iv-o1-ideas-pag { font-size: .4em; color: var(--muted); }
body.iv-o1 .iv-o1-ideas-dek { font-family: var(--display); font-style: italic; font-weight: 400; font-size: 21px; line-height: 1.45; color: var(--ink-soft); margin: 0 0 34px; max-width: 760px; }
body.iv-o1 .iv-o1-ideas .iv-r5-pestanas { margin-bottom: 34px; }
body.iv-o1 .iv-o1-ideas-dest { margin-bottom: 56px; }
body.iv-o1 .iv-o1-ideas-dest .iv-ef-ins { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); grid-template-rows: auto auto 1fr; column-gap: 50px; align-items: start; }
body.iv-o1 .iv-o1-ideas-dest .iv-ef-ins-marco { grid-row: 1 / span 4; }
body.iv-o1 .iv-o1-ideas-dest .iv-ef-ins-foto { height: 420px; }
body.iv-o1 .iv-o1-ideas-dest .iv-ef-ins-lab { align-self: end; margin-top: 120px; }
body.iv-o1 .iv-o1-ideas-dest .iv-ef-ins-t { font-size: 44px; line-height: 1.08; }
body.iv-o1 .iv-o1-ideas-rejilla { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 36px; }
body.iv-o1 .iv-o1-ideas-rejilla > li[hidden] { display: none; }
body.iv-o1 .iv-o1-ideas-rejilla .iv-ef-ins-foto { height: auto; aspect-ratio: 4 / 3; } /* Fotos antiguas verticales (2:3): en 4:3 se ve la mitad; a 230 px de alto, solo el 41 %. */
body.iv-o1 .iv-o1-ideas-mas { text-align: center; margin: 50px 0 0; }
body.iv-o1 a.iv-o1-vermas { display: inline-block; border: 1.5px solid var(--ink); padding: 14px 26px; font-size: 12px; font-weight: 700; letter-spacing: .12em; color: var(--ink) !important; text-decoration: none; min-height: 44px; }
@media (max-width: 899px) {
	body.iv-o1 .iv-o1-ideas { padding-top: 26px; }
	body.iv-o1 .iv-o1-ideas-h1 { font-size: 44px; margin: 8px 0 10px; }
	body.iv-o1 .iv-o1-ideas-dek { font-size: 17px; margin-bottom: 18px; }
	body.iv-o1 .iv-o1-ideas .iv-r5-pestanas { margin-bottom: 24px; }
	body.iv-o1 .iv-o1-ideas-dest { margin-bottom: 26px; }
	body.iv-o1 .iv-o1-ideas-dest .iv-ef-ins { display: block; }
	body.iv-o1 .iv-o1-ideas-dest .iv-ef-ins-foto, body.iv-o1 .iv-o1-ideas-rejilla .iv-ef-ins-foto { height: auto; aspect-ratio: 4 / 3; }
	body.iv-o1 .iv-o1-ideas-dest .iv-ef-ins-lab { margin-top: 14px; }
	body.iv-o1 .iv-o1-ideas-dest .iv-ef-ins-t { font-size: 26px; }
	body.iv-o1 .iv-o1-ideas-rejilla { grid-template-columns: minmax(0, 1fr); gap: 26px; }
}
body.iv-o1 .iv-ef-ins-foto picture { display: block; width: 100%; height: 100%; }

/* Fotos de tarjeta en el ordenador (fallo visto en las capturas del 20/10/2026): la regla de la fase 2
 * «.ivr-fichas > .ivr-ficha:not(.ivr-ficha-ancha) .ivr-ficha-foto :is(img) { height: auto !important }» ganaba por
 * especificidad y la imagen se estiraba a 1500 px de alto (solo se veía una franja). Clase repetida para ganarle. */
body.iv-o1 .ivr-o1-tfoto.ivr-o1-tfoto.ivr-o1-tfoto.ivr-o1-tfoto img, body.iv-o1 .ivr-o1-tfoto.ivr-o1-tfoto.ivr-o1-tfoto.ivr-o1-tfoto .ivr-img-vacia { /* (0,5,2): gana a «… :is(img, .ivr-img-vacia)», que cuenta como clase (0,5,0). */ position: absolute !important; inset: 0 !important; width: 100% !important; height: 100% !important; min-height: 0 !important; max-height: none !important; aspect-ratio: auto !important; object-fit: cover !important; transform: none; }

/* Tarjetas con fotos antiguas verticales (683 × 1024, casi todas las de los artículos de antes): en cajas panorámicas solo se
 * veía el 37 % (Nápoles, solo cielo). Con la corrección, 4:3 en el ordenador como en el móvil: se ve al menos la mitad. */
body.iv-o1 .iv-r5-dest-foto { aspect-ratio: 4 / 3 !important; }
body.iv-o1 .iv-r5-ideas.iv-ef-ins-lista .iv-ef-ins-foto { height: auto !important; aspect-ratio: 4 / 3; }
/* La que se queda sola en su fila no se estira en una franja: en horizontal, foto a un lado y texto al otro. */
@media (min-width: 900px) {
	body.iv-o1 .iv-r5-ideas > li:last-child:nth-child(3n+1) .iv-ef-ins { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); grid-template-rows: auto auto 1fr; column-gap: 40px; }
	body.iv-o1 .iv-r5-ideas > li:last-child:nth-child(3n+1) .iv-ef-ins-marco { grid-row: 1 / span 4; }
	body.iv-o1 .iv-r5-ideas > li:last-child:nth-child(3n+1) .iv-ef-ins-lab { margin-top: 0; align-self: end; }
}

/* Fotos grandes de los artículos antiguos (bloque de imagen con el marco de los ajustes 5): «aspect-ratio: auto» les quitaba
 * la proporción de width/height y, con la regla de WordPress para sizes="auto" (alto intrínseco de 1500 px), en el móvil
 * llenaban el tope de 70vh: 1,5× y el 38 % visible (lista de Suiza, 15312). Con «auto 3 / 2», la proporción real del archivo
 * y 3:2 mientras carga. */
body.iv-o1 .wp-block-image.iv-c-marco-cont .iv-c-marco-foto img { aspect-ratio: auto 3 / 2 !important; }
body.iv-o1 .iv-c-marco-vertical .iv-c-marco-foto { aspect-ratio: 4 / 3 !important; }
body.iv-o1 .iv-c-pano-pic { display: contents; } /* El recorte móvil de la panorámica: la imagen sigue llenando la caja. */

/* «La lista de un vistazo» (ORDEN-1, 8e, aprobada el 20/10/2026): una columna en el móvil y dos en el ordenador, 6 lugares y
 * «Ver los N lugares ▾» cuando hay más de 8. */
body.iv-o1 .ivp-vistazo { display: block !important; }
body.iv-o1 .ivp-vistazo-lista { display: grid; grid-template-columns: minmax(0, 1fr); column-gap: 40px; }
body.iv-o1 .ivp-vistazo-lista > a[hidden] { display: none !important; }
body.iv-o1 .ivp-vistazo-mas { display: flex; align-items: center; justify-content: center; gap: 8px; width: 100%; min-height: 48px; margin-top: 16px; padding: 0 16px; border: 1px solid var(--dest); background: transparent; color: var(--dest); font: 700 12px/1 var(--sans); letter-spacing: .12em; text-transform: uppercase; cursor: pointer; }
body.iv-o1 .ivp-vistazo-mas:hover, body.iv-o1 .ivp-vistazo-mas:focus-visible { background: var(--dest); color: #FFF; }
@media (min-width: 900px) {
	body.iv-o1 .ivp-vistazo-lista { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	body.iv-o1 .iv-pieza-lista .ivp-vistazo-lista > a { grid-template-columns: 28px 1fr auto !important; }
	body.iv-o1 .iv-pieza-lista .ivp-vistazo-lista .ivp-vistazo-ideal { display: block !important; }
}
body.iv-o1 .ivp-vistazo-mas[aria-expanded="true"] .ivp-vistazo-mas-f { display: inline-block; transform: rotate(180deg); }
body.iv-o1 .iv-c-entrada-sin-foto { border-top: 3px solid var(--dest); padding-top: 16px; } /* Tarjeta sin foto: solo texto, sin hueco. */
@media (min-width: 900px) {
	body.iv-o1 .iv-dp-lugares > .iv-tv:only-child { aspect-ratio: 16 / 9; } /* Un solo lugar: sin franja vertical de 1.550 px (Asturias, Oviedo). */
}
@media (min-width: 900px) {
	/* Una sola tarjeta de artículo en la rejilla: en horizontal, sin estirarse a 1.240 px (Nápoles, 1,4×). */
	body.iv-o1 .iv-c-rejilla > li:only-child .iv-c-entrada { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); grid-template-rows: auto 1fr; column-gap: 32px; align-items: start; }
	body.iv-o1 .iv-c-rejilla > li:only-child .iv-c-entrada-foto { grid-row: 1 / span 3; }
	body.iv-o1 .iv-c-rejilla > li:only-child .iv-c-entrada .iv-eyebrow { margin-top: 0; }
}
/* Itinerarios: columna de la hora más ancha en el ordenador, para «Temprano» o «Mediodía» sin tocar el punto (cola, 20/10/2026). */
@media (min-width: 900px) {
	body.iv-o1 .ivv2-parada, body.iv-o1 .ivv2-tramo { grid-template-columns: 124px 28px minmax(0, 1fr); }
	body.iv-o1 .ivv2-hora { white-space: nowrap; }
}

/* Rejilla de guías (punto 10, 20/10/2026): reparto fijo y foto 3:2 en todas. Una sola guía, en horizontal. */
body.iv-o1 ul.iv-o1-guias { display: grid !important; grid-template-columns: minmax(0, 1fr); gap: 24px; }
body.iv-o1 ul.iv-o1-guias > li { min-width: 0; flex: none !important; }
body.iv-o1 .iv-o1-guias .iv-r5-guia { display: flex !important; flex-direction: column; height: 100%; }
body.iv-o1 .iv-o1-guias .iv-r5-guia-foto { aspect-ratio: 3 / 2 !important; min-height: 0 !important; position: relative; }
body.iv-o1 .iv-o1-guias .iv-r5-guia-foto img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
body.iv-o1 .iv-o1-guias .iv-r5-guia-res { display: block !important; }
body.iv-o1 .iv-o1-guias .iv-r5-guia-txt { padding: 20px 22px; }
body.iv-o1 .iv-o1-guias-todas { margin: 20px 0 0; text-align: right; }
body.iv-o1 .iv-o1-guias-pag { display: flex; gap: 10px; justify-content: center; margin: 32px 0 0; font-weight: 700; }
body.iv-o1 .iv-o1-guias-pag a, body.iv-o1 .iv-o1-guias-pag span { display: inline-flex; align-items: center; justify-content: center; min-width: 40px; min-height: 40px; border: 1px solid var(--hairline); }
body.iv-o1 .iv-o1-guias-pag span { background: var(--ink); color: #FFF; }
@media (min-width: 900px) {
	body.iv-o1 ul.iv-o1-guias-2, body.iv-o1 ul.iv-o1-guias-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	body.iv-o1 ul.iv-o1-guias-3, body.iv-o1 ul.iv-o1-guias-6 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	body.iv-o1 ul.iv-o1-guias-5 { grid-template-columns: repeat(6, minmax(0, 1fr)); }
	body.iv-o1 ul.iv-o1-guias-5 > li { grid-column: span 2; }
	body.iv-o1 ul.iv-o1-guias-5 > li:nth-child(n+4) { grid-column: span 3; }
	body.iv-o1 :is(ul.iv-o1-guias-3, ul.iv-o1-guias-6, ul.iv-o1-guias-5) .iv-r5-guia-t { font-size: 28px; }
	body.iv-o1 .iv-o1-guias-1 .iv-r5-guia-ancha { display: grid !important; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); align-items: start; }
	body.iv-o1 .iv-o1-guias-1 .iv-r5-guia-ancha .iv-r5-guia-foto { aspect-ratio: 3 / 2 !important; min-height: 0 !important; max-height: 420px; }
}
@media (max-width: 899px) {
	body.iv-o1 .iv-o1-guias-1 .iv-r5-guia-ancha { display: flex !important; flex-direction: column; }
	body.iv-o1 .iv-o1-guias-1 .iv-r5-guia-ancha .iv-r5-guia-foto { aspect-ratio: 3 / 2 !important; min-height: 0 !important; }
}

/* Tarjetas que se ensanchan para no dejar hueco al final de la rejilla (punto 10): en horizontal, para no ser más altas que
 * las demás (Italia: 538 frente a 326 px). Lo decide el ancho de la propia tarjeta (consulta de contenedor). */
body.iv-o1 :is(.iv-r5-rejilla, .iv-r5-destinos) > li { container-type: inline-size; }
@container (min-width: 440px) {
	body.iv-o1 .iv-r5-rejilla .iv-r5-tarjeta { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: start; }
	body.iv-o1 .iv-r5-rejilla .iv-r5-tarjeta-foto { aspect-ratio: 4 / 3; }
}
@container (min-width: 300px) {
	body.iv-o1 .iv-r5-destinos .iv-r5-dest { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; }
}
