/* Bilingual legal pages — consistent with site design */
.legal-hero {padding-bottom:clamp(2.3rem,5vw,4.2rem)}
.legal-kicker {font-size:.77rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;opacity:.8;margin:0 0 1.2rem}
.legal-intro {font-size:clamp(1.05rem,2vw,1.3rem);max-width:750px;margin:1rem auto 0;line-height:1.65}
.legal-date {font-size:.88rem;opacity:.8;margin:1.2rem 0 0}
.legal-wrap {padding-top:clamp(2rem,5vw,4.5rem)}
.legal-layout {display:grid;grid-template-columns:220px minmax(0,1fr);gap:clamp(2rem,5vw,5.5rem);max-width:1160px;margin:0 auto;align-items:start}
.legal-aside {position:sticky;top:110px;padding:1.15rem 1rem;border:1px solid var(--color-border);border-radius:12px;background:var(--color-white,#fff)}
.legal-aside-title {text-transform:uppercase;letter-spacing:.09em;font-size:.8rem;font-weight:700;margin-bottom:.8rem}
.legal-aside ol {list-style:none;margin:0;padding:0;display:grid;gap:.65rem}
.legal-aside a {font-size:.84rem;line-height:1.45;color:var(--color-text-muted);text-decoration:none}
.legal-aside a:hover,.legal-aside a:focus-visible {text-decoration:underline;color:var(--color-primary,#9a623f)}
.legal-content {min-width:0;max-width:780px}
.legal-section {padding-bottom:2rem;margin-bottom:2rem;border-bottom:1px solid var(--color-border);scroll-margin-top:110px}
.legal-section:last-child {border:0}
.legal-section h2 {font-size:clamp(1.27rem,2.3vw,1.7rem);line-height:1.3;margin-bottom:1rem}
.legal-section p,.legal-section li {font-size:.98rem;line-height:1.82;color:var(--color-text);margin:0 0 1rem}
.legal-section ul {padding-left:1.45rem;list-style:disc;margin:0 0 1.25rem}
.legal-section a {text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.legal-section mark {background:#fff0bf;color:#553712;padding:.1rem .3rem;border-radius:.25rem;box-decoration-break:clone}
.legal-cookie-grid {display:grid;gap:1rem}
.legal-cookie-grid>div {padding:1.25rem;border:1px solid var(--color-border);border-radius:12px;background:#fff}
.legal-cookie-grid strong {display:inline-block;margin-right:.75rem}
.legal-cookie-grid p {margin:.6rem 0 0}
.legal-chip {display:inline-block;padding:.25rem .55rem;background:#e8f5ed;color:#185b37;border-radius:30px;font-weight:700;font-size:.72rem}
.legal-chip-off {background:#f1f2f4;color:#515b6b}
.legal-cookie-actions {display:flex;gap:.75rem;flex-wrap:wrap;margin:1.25rem 0}
.legal-cookie-actions .btn {cursor:pointer;white-space:normal}
.legal-status {font-weight:600;min-height:1.3em}
.newsletter-privacy-note,.contact-privacy-note {font-size:.8rem;line-height:1.5;margin:.5rem 0 1rem;color:var(--color-text-muted)}
.newsletter-privacy-note a,.contact-privacy-note a {text-decoration:underline}
@media(max-width:780px){.legal-layout{grid-template-columns:1fr}.legal-aside{position:static}.legal-aside ol{display:flex;flex-wrap:wrap;gap:.75rem}.legal-aside a{display:block;padding:.2rem 0}}

/* Consent settings — accessible, bilingual preference controls */
.legal-analytics-toggle {display:flex; align-items:flex-start; gap:.8rem; cursor:pointer; padding:1rem; border:1px solid var(--color-border); border-radius:12px; background:#fff; margin:1rem 0;}
.legal-analytics-toggle input {width:20px;height:20px;min-width:20px;accent-color:var(--color-primary);margin-top:3px;cursor:pointer;}
.legal-analytics-toggle strong {display:block;margin-bottom:.25rem;}
.legal-analytics-toggle span {font-size:.92rem;line-height:1.55;}
.legal-cookie-actions .btn {min-height:44px; flex:1 1 150px;}
