footer .legalFooter { grid-column: 1 / -1; width: 100%; max-width: 1280px; margin: 28px auto 0; padding: 24px 0 0; border-top: 1px solid rgba(255,255,255,.2); display: flex; flex-wrap: wrap; align-items: start; justify-content: space-between; gap: 22px; text-transform: none; letter-spacing: normal; font-size: 12px; line-height: 1.8; color: #b7c3cc; }
footer .foundationData { display: grid; gap: 2px; }
footer .foundationData strong { color: white; font-weight: 600; }
footer .legalFooter nav { display: flex; flex-wrap: wrap; gap: 12px 24px; }
footer .legalFooter a { text-decoration: underline; text-underline-offset: 4px; }
footer .legalFooter a:hover { color: white; }
body:not(:has(.footerBrand)) footer > .legalFooter { width: min(100% - 48px, 1280px); }
.legalHeader { padding: 24px max(24px,calc((100vw - 960px)/2)); display: flex; align-items: center; justify-content: space-between; gap: 24px; font-size: 12px; }
.legalHeader img { object-fit: contain; }
.legalDocument { width: min(100% - 48px,850px); margin: auto; font-size: 16px; line-height: 1.8; overflow-wrap: anywhere; }
.legalDocument h1 { font: 400 clamp(38px,6vw,72px)/1.1 Georgia,serif; letter-spacing: -.04em; margin: 22px 0; }
.legalDocument h2 { margin: 42px 0 12px; font-size: 23px; line-height: 1.3; }
.legalDocument a { color: #a6190b; text-decoration: underline; text-underline-offset: 3px; }
.legalDate, .legalSource { color: #53616b; font-size: 13px; }
.mapPrivacy { padding: 40px; background: #e1e8e5; color: #071826; }
.mapPrivacy p { max-width: 720px; line-height: 1.7; }
@media(max-width:600px) { footer .legalFooter { flex-direction: column; font-size: 11px; } .legalHeader { align-items: start; } .mapPrivacy { padding: 24px; } }
@media print { .legalPage header, .legalPage footer { display: none; } .legalPage main { padding: 0; background: white; } .legalDocument { width: 100%; } }
