/* Sitio de Soluciones Presencia Digital: fondos propios (assets/img/fondos/). Se carga después de kit.css. */

/* F-01 · cuadrícula de plano, en secciones claras con poco contenido */
.fondo-cuadricula { background-image: url("../img/fondos/f-01-cuadricula.svg"); background-size: 48px 48px; }

/* F-02 · líneas técnicas, en secciones oscuras sin foto */
.fondo-lineas { background-image: url("../img/fondos/f-02-lineas-tecnicas.svg"); background-repeat: no-repeat; background-size: cover; background-position: right center; }

/* F-03 · sierra en curvas de nivel, al pie de todas las páginas */
.pie {
  background: var(--c-oscuro) url("../img/fondos/f-03-768.webp") center bottom / 100% auto no-repeat;
  padding-bottom: max(var(--e-4), 17vw);
}
@media (min-width: 48rem) { .pie { background-image: url("../img/fondos/f-03-1536.webp"); padding-bottom: max(var(--e-5), 14vw); } }

/* Páginas legales: aviso de privacidad, términos y condiciones, política de cookies */
.legal { max-width: 46rem; }
.legal a { overflow-wrap: anywhere; }   /* correos y URL largas no desbordan en celular */
.legal h2 { margin-top: var(--e-4); scroll-margin-top: 6rem; }
.legal h3 { margin-top: var(--e-2); font-size: 1.05rem; }
.legal__fecha { font-size: var(--t-chico); opacity: 0.75; }
.legal__indice { margin-block: var(--e-3); padding: var(--e-2) var(--e-3); border: 1px solid var(--c-linea); border-radius: 0.5rem; }
.legal__indice ol { margin: 0; columns: 2 14rem; }
.legal table { width: 100%; margin-block: var(--e-2); border-collapse: collapse; font-size: 0.95rem; }
.legal th, .legal td { padding: 0.6rem 0.5rem; border-bottom: 1px solid var(--c-linea); text-align: left; vertical-align: top; }
.legal thead th { border-bottom-width: 2px; }
.legal tbody th[scope="rowgroup"] { padding-top: var(--e-2); }
.legal__nota { margin-top: var(--e-4); padding-top: var(--e-2); border-top: 1px solid var(--c-linea); font-size: var(--t-chico); }
@media (max-width: 40rem) {
  .legal table, .legal tbody, .legal tr, .legal td, .legal th { display: block; }
  .legal thead { display: none; }
  .legal tr { padding-block: 0.5rem; border-bottom: 1px solid var(--c-linea); }
  .legal td, .legal th { padding: 0.15rem 0; border: 0; }
  .legal td:first-child { font-weight: 600; }
}
.pie--simple { padding-bottom: max(var(--e-4), 17vw); }
.pie__enlaces { display: flex; flex-wrap: wrap; gap: 0.5rem 1.5rem; }
