/* KLEO · lo que la web necesita para TODOS los visitantes (generado). Se carga siempre, con o sin sesion.
   Columnas, tonos, alineaciones y tamanos, hero de texto sobre foto, y ocultar secciones (en general o por dispositivo). */
body:not(.efly-editando) [data-efly-oculta="1"] { display: none; }
/* tonos PRO: el tema los fija con --kleo-tono-alt / --kleo-tono-noche (si no, los de la casa) y se encarga del color
   del texto en [data-efly-tono]. El chip «Tono» solo sale si el tema declara --kleo-tono-alt (o --azul-alt) */
[data-efly-tono="alt"] { background: var(--kleo-tono-alt, var(--azul-alt, #071731)) !important; }
[data-efly-tono="noche"] { background: var(--kleo-tono-noche, var(--azul-noche, #050F26)) !important; }
/* columnas responsive (cortes 1024 / 767) */
.efly-fila { display: flex; flex-wrap: wrap; gap: 28px; }
.efly-col { flex: 0 0 calc(var(--kd, 100%) - 28px); max-width: calc(var(--kd, 100%) - 28px); min-width: 0; position: relative; }
@media (max-width: 1024px) {
  .efly-col { flex-basis: calc(var(--kt, 100%) - 28px); max-width: calc(var(--kt, 100%) - 28px); }
}
/* «oculta en tablet» es SOLO tablet (768-1024); el movil tiene su propio boton */
@media (min-width: 768px) and (max-width: 1024px) {
  body:not(.efly-editando) [data-ko-t="1"] { display: none !important; }
}
@media (max-width: 767px) {
  .efly-col { flex-basis: calc(var(--km, 100%) - 28px); max-width: calc(var(--km, 100%) - 28px); }
  body:not(.efly-editando) [data-ko-m="1"] { display: none !important; }
}
@media (min-width: 1025px) {
  body:not(.efly-editando) [data-ko-d="1"] { display: none !important; }
}
.efly-pad-s { padding-block: 28px; } .efly-pad-m { padding-block: 64px; } .efly-pad-l { padding-block: 110px; }
/* alineacion y tamano de los textos de la maqueta */
[data-efly-al="izq"] { text-align: left !important; }
[data-efly-al="centro"] { text-align: center !important; margin-inline: auto !important; }
[data-efly-al="dcha"] { text-align: right !important; margin-left: auto !important; }
/* A- / A+ escalan el PROPIO texto (con em se median sobre el padre y A+ encogia los titulares) */
[data-efly-tam="s"] { zoom: 0.85; }
[data-efly-tam="l"] { zoom: 1.18; }
/* hero con texto sobre la foto (seccion anadida) */
.kleo-hero { position: relative; border-radius: 14px; overflow: hidden; }
.kleo-hero img { display: block; width: 100%; height: clamp(340px, 58vh, 640px); object-fit: cover; }
.kleo-hero-texto {
  position: absolute; inset: auto 0 0 0; padding: clamp(80px, 14vh, 150px) clamp(22px, 5vw, 56px) clamp(26px, 5vh, 44px);
  background: linear-gradient(180deg, transparent 0%, rgba(5, 15, 38, 0.62) 55%, rgba(5, 15, 38, 0.92) 100%);
  color: #F4F7FB;
}
.kleo-hero-texto h2, .kleo-hero-texto p { color: inherit; }
.kleo-hero-texto h2 { margin: 6px 0 10px; }
.kleo-hero-lead { max-width: 62ch; }
@media (max-width: 767px) { .kleo-hero img { height: clamp(300px, 62vh, 480px); } }
/* por si algun mando del editor se hubiera guardado en una seccion: el visitante no lo ve nunca */
.efly-chip, .efly-chips-sec, .efly-chips-col { display: none; }
