﻿/* Complemento legal: conserva la paleta y la tipografía de pagina.css. */
.pie__legales { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin-top:16px; letter-spacing:.04em; text-transform:none; }
.pie__legales button { background:none; border:0; padding:0; color:inherit; font:inherit; text-decoration:underline; cursor:pointer; }
[hidden] { display:none !important; }
.legal { max-width:850px; padding-top:48px; padding-bottom:64px; }
.legal h1 { font-size:clamp(2rem,5vw,3rem); font-weight:300; margin:24px 0; }
.legal h2 { font-size:1.6rem; font-weight:400; margin:40px 0 16px; }
.legal h3 { font-size:1.05rem; font-weight:500; margin:24px 0 10px; }
.legal p { margin:12px 0; }
.legal section { scroll-margin-top:24px; }
.legal__nav { display:flex; flex-wrap:wrap; gap:18px; }
.legal a { text-underline-offset:3px; }
.cookies { position:fixed; bottom:0; left:0; right:0; z-index:60; display:flex; align-items:center; gap:24px; padding:16px var(--gutter) calc(16px + env(safe-area-inset-bottom)); background:var(--cota-papel); border-top:1px solid var(--linea); color:var(--cota-carbon); font-size:13px; }
.cookies p { flex:1; max-width:760px; }
.cookies__acciones { display:flex; gap:12px; }
.cookies button { min-height:44px; min-width:100px; padding:10px 18px; background:var(--cota-carbon); color:var(--cota-papel); border:1px solid var(--cota-carbon); font:500 13px var(--cota-fuente); cursor:pointer; }
/* Una zona de lectura independiente evita que el aviso tape los CTA.
   Se activa al resolver la preferencia inicial, antes de interacción. */
html.cookies-abiertas { height:100%; overflow:hidden; }
.cookies-abiertas body { height:calc(100% - var(--cookies-alto, 130px)); overflow-y:auto; }
.cookies-abiertas .sb { bottom:var(--cookies-alto, 130px); }
@media(max-width:860px) {
  .cookies { flex-direction:column; align-items:stretch; gap:10px; padding-top:12px; }
  .cookies__acciones button { flex:1; }
  .cookies-abiertas body { padding-bottom:80px; }
}
