/* Aviso de cookies, páginas legales y 404 */
.cookies {
  position: fixed; z-index: 60; left: var(--gutter); right: var(--gutter); bottom: 16px; max-width: 560px; margin: 0 auto;
  display: flex; flex-wrap: wrap; align-items: center; gap: 12px 20px; padding: 16px 20px;
  background: var(--blanco); color: var(--tinta); border-radius: 10px; box-shadow: 0 16px 40px -16px rgba(0,0,0,.35);
  font-size: var(--t-sm); opacity: 0; transform: translateY(16px); transition: opacity .4s var(--ease), transform .4s var(--ease);
}
.cookies.is-on { opacity: 1; transform: none; }
.cookies p { flex: 1 1 260px; }
.cookies a { color: var(--azul-texto); }
.cookies__btns { display: flex; gap: 8px; }
.cookies .btn { padding: .8em 1.2em; }

.legal { padding: calc(var(--sec) + 40px) 0 var(--sec); }
.legal .wrap { max-width: 760px; }
.legal h1 { font-size: var(--t-2xl); font-weight: 300; color: var(--azul); margin: 12px 0 8px; }
.legal .fecha { color: var(--gris); font-size: var(--t-sm); margin-bottom: 40px; }
.legal h2 { font-size: var(--t-lg); color: var(--azul-texto); margin: 36px 0 10px; }
.legal p, .legal li { color: var(--tinta); margin-bottom: 10px; }
.legal ul { padding-left: 1.2em; }
.legal a { color: var(--azul-texto); }
.pag-legal .hdr { background: var(--crema); color: var(--azul-osc); }
.pag-legal .hdr .logo-blanco { display: none; }
.pag-legal .hdr .logo-color { display: block; }

.e404 { min-height: 100svh; display: grid; place-items: center; text-align: center; padding: var(--gutter); }
.e404 h1 { font-size: var(--t-3xl); font-weight: 300; color: var(--azul); }
.e404 p { margin: 16px auto 32px; max-width: 40ch; color: var(--gris); }
.legal .eyebrow, .e404 .eyebrow { color: var(--naranja-texto); }
