/* Consent banner + legal footer. Loaded by every landing-side page so the
   banner looks the same on the home page and on the legal documents. */
.legal-footer{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;
  margin-top:28px;padding:16px 12px;font-size:14px}
.legal-footer a,.legal-footer button{color:rgba(240,192,96,.85);background:none;border:0;
  padding:0;font:inherit;text-decoration:underline;cursor:pointer}
.doc .legal-footer a,.doc .legal-footer button{color:#1f4f8f}

.consent{position:fixed;inset:auto 0 0 0;z-index:50;background:#fff;color:#0b1a33;
  border-top:1px solid #cbd5e1;box-shadow:0 -8px 30px rgba(15,23,42,.15);
  padding:16px 12px;max-height:85vh;overflow-y:auto}
.consent[hidden]{display:none}
.consent-inner{max-width:720px;margin:0 auto}
.consent h2{margin:0 0 6px;font-size:18px}
.consent p{margin:0 0 12px;font-size:14px;color:#475569}
.consent ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.consent li{display:flex;gap:10px;align-items:flex-start;
  border:1px solid #e2e8f0;border-radius:12px;padding:10px}
.consent input{width:20px;height:20px;margin-top:2px;flex:0 0 auto}
.consent label{font-size:14px}
.consent label b{display:block}
.consent label span{display:block;color:#475569}
.consent-actions{display:grid;gap:10px;margin-top:16px}
@media(min-width:640px){.consent-actions{grid-template-columns:repeat(3,1fr)}}
/* Accept and refuse are the same button, by law. Only "save" is secondary. */
.c-primary{font:inherit;font-weight:700;font-size:14px;padding:12px 16px;border:0;
  border-radius:12px;background:#0b1a33;color:#fff;cursor:pointer;width:100%}
.c-secondary{font:inherit;font-weight:700;font-size:14px;padding:12px 16px;
  border:1px solid #94a3b8;border-radius:12px;background:#fff;color:#0b1a33;
  cursor:pointer;width:100%}
