/*
  CSS propio de la pagina de politica de datos.
  En el sitio original iba embebido dentro de politica-datos.html, porque
  esa pagina no usa styles.css. Se separa aqui tal cual, sin cambios, y se
  carga solo en esa pagina.
*/
:root{
    --verde:#0D1B2A; --verde-2:#1B263B;
    --oro:#B8974F; --oro-deep:#886F3A;
    --cream:#FAF9F6; --ink:#1c1c1c; --ink-mute:#55605C;
    --line:rgba(102,102,102,.22);
    --display:'Lora',Georgia,serif;
    --body:'Manrope','DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  }
  *{ box-sizing:border-box; margin:0; padding:0; }
  body{ background:var(--cream); color:var(--ink); font-family:var(--body); font-size:16px; line-height:1.68; }
  .wrap{ max-width:760px; margin:0 auto; padding:0 24px; }

  header.top{ background:var(--verde); padding:28px 0; }
  header.top .wrap{ display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; }
  header.top img{ height:42px; width:auto; }
  header.top a.back{ color:rgba(250, 249, 246,.8); font-size:.85rem; text-decoration:none; letter-spacing:.04em; }
  header.top a.back:hover{ color:var(--oro); }

  .hero{ background:var(--verde-2); color:var(--cream); padding:56px 0; }
  .hero h1{ font-family:var(--display); font-weight:600; font-size:clamp(1.9rem,4.5vw,2.7rem); line-height:1.1; }
  .hero p{ color:rgba(250, 249, 246,.72); margin-top:.9rem; font-size:1rem; }

  main{ padding:52px 0 72px; }
  h2{ font-family:var(--display); font-weight:600; font-size:1.5rem; color:var(--verde); margin:2.4rem 0 .8rem; line-height:1.2; }
  h2:first-of-type{ margin-top:0; }
  h3{ font-size:1rem; font-weight:600; margin:1.4rem 0 .5rem; color:var(--verde-2); }
  p{ margin-bottom:1rem; color:var(--ink-mute); }
  ul,ol{ margin:0 0 1.1rem 1.3rem; color:var(--ink-mute); }
  li{ margin-bottom:.55rem; }
  strong{ color:var(--ink); font-weight:600; }
  a{ color:var(--oro-deep); }

  .datos{ background:#fff; border:1px solid var(--line); border-radius:12px; padding:22px 26px; margin-bottom:1.6rem; }
  .datos dl{ display:grid; grid-template-columns:auto 1fr; gap:.55rem 1.4rem; margin:0; }
  .datos dt{ font-size:.72rem; letter-spacing:.1em; text-transform:uppercase; color:var(--oro-deep); font-weight:700; padding-top:.15rem; }
  .datos dd{ margin:0; color:var(--ink); }
  @media (max-width:520px){ .datos dl{ grid-template-columns:1fr; gap:.15rem; } .datos dd{ margin-bottom:.7rem; } }

  .aviso{ background:rgba(184, 151, 79,.12); border-left:3px solid var(--oro-deep); padding:16px 20px; border-radius:0 8px 8px 0; margin-bottom:1.6rem; }
  .aviso p{ margin:0; font-size:.9rem; color:#6B562C; }

  footer{ background:var(--verde); color:rgba(250, 249, 246,.6); padding:32px 0; font-size:.85rem; }
  footer a{ color:rgba(250, 249, 246,.8); }
  .vigencia{ margin-top:2.6rem; padding-top:1.4rem; border-top:1px solid var(--line); font-size:.88rem; }
  a:focus-visible{ outline:2px solid var(--oro-deep); outline-offset:3px; }
