/* ============================================================
   Maquetacion EDITORIAL
   Portada partida en dos, textos alineados a la izquierda,
   galeria en mosaico. Aire de revista.
   ============================================================ */

/* ---------- Portada partida ---------- */
.layout-editorial .portada-inv{
  display:grid;grid-template-columns:1fr;padding:0;min-height:100svh;text-align:left
}
.layout-editorial .portada-foto{
  background-size:cover;background-position:center;min-height:44svh;
  background-color:color-mix(in srgb,var(--c-acento) 22%,var(--c-fondo))
}
.layout-editorial .portada-int{
  max-width:none;padding:52px 26px;display:flex;flex-direction:column;justify-content:center
}
.layout-editorial .nombres{font-size:clamp(40px,11vw,72px)}
.layout-editorial .adorno{justify-content:flex-start;margin-left:0}
.layout-editorial .adorno .filete-linea:first-child{display:none}
.layout-editorial .frase{margin-left:0}
.layout-editorial .flecha-abajo{left:26px;transform:none;bottom:18px}
@keyframes flota-izq{0%,100%{transform:translateY(0)}50%{transform:translateY(8px)}}
.layout-editorial .flecha-abajo{animation:flota-izq 2.2s ease-in-out infinite}

@media(min-width:860px){
  .layout-editorial .portada-inv{grid-template-columns:1fr 1fr}
  .layout-editorial .portada-inv.sin-foto{grid-template-columns:1fr}
  .layout-editorial .portada-foto{min-height:100svh}
  .layout-editorial .portada-int{padding:70px 60px}
  .layout-editorial .portada-inv.sin-foto .portada-int{max-width:820px;margin:0 auto}
}

/* Cuando hay foto, el texto va sobre el fondo plano (no encima de la imagen) */
.layout-editorial .portada-inv.con-foto{color:var(--c-texto);background-image:none !important}
.layout-editorial .portada-inv.con-foto .etiqueta-sup{color:var(--c-acento);opacity:1}
.layout-editorial .portada-inv.con-foto .adorno{color:var(--c-acento)}

/* ---------- Secciones alineadas a la izquierda ---------- */
.layout-editorial .seccion .int{text-align:left;max-width:840px}
.layout-editorial .seccion .int.estrecho{max-width:640px}

.layout-editorial .titulo{
  font-size:clamp(25px,5.4vw,34px);display:flex;align-items:baseline;gap:14px
}
.layout-editorial .titulo::after{
  content:"";flex:1;height:1px;margin:0;width:auto;opacity:.35;align-self:center
}

.layout-editorial .parrafo{margin-left:0;max-width:640px}
.layout-editorial .cuenta{justify-content:flex-start}
.layout-editorial .tarjeta-lugar{margin:0;max-width:none}
.layout-editorial .icono-lugar{justify-content:flex-start}
.layout-editorial .linea-tiempo{margin-left:0}
.layout-editorial .tarjeta-inv{margin-left:0;margin-right:0;max-width:none}
.layout-editorial .icono-tarjeta{justify-content:flex-start}
.layout-editorial .siluetas{justify-content:flex-start}
.layout-editorial .form-rsvp{margin-left:0}
.layout-editorial .mensaje-cuenta.destacado::after{margin-left:0}

/* Los dos lugares en columnas */
@media(min-width:860px){
  .layout-editorial .sec-lugar{padding-block:40px}
  .layout-editorial .sec-lugar .int{display:grid;grid-template-columns:1fr;gap:0}
  .layout-editorial .rejilla-padres{grid-template-columns:repeat(3,1fr)}
  .layout-editorial .linea-tiempo{
    max-width:none;columns:2;column-gap:44px
  }
  .layout-editorial .linea-tiempo li{break-inside:avoid}
  .layout-editorial .linea-tiempo::before{display:none}
}

/* ---------- Galeria en mosaico ---------- */
.layout-editorial .galeria-inv{
  grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:6px
}
.layout-editorial .galeria-inv figure:nth-child(4n+1){grid-row:span 2;aspect-ratio:3/5}

/* ---------- Pie ---------- */
.layout-editorial .inv-pie{text-align:left}
.layout-editorial .inv-pie .adorno{justify-content:flex-start}
.layout-editorial .inv-pie .adorno .filete-linea:first-child{display:none}
