.site-footer { flex-wrap:wrap;row-gap:20px; }
.menu-legal { display:flex;gap:20px;margin-top:28px;font:13px/1.5 Helvetica,Arial,sans-serif;letter-spacing:0; }
.menu-legal a { color:inherit;text-decoration:underline;text-underline-offset:4px; }
.intro-legal { position:absolute;z-index:3;bottom:24px;left:5.4vw;display:flex;gap:20px;font:12px/1.5 Helvetica,Arial,sans-serif;color:#f2eddf; }
.intro-legal a { color:inherit;text-underline-offset:4px; }
/* Keep the opening image clear; legal access remains one menu click away. */
body.intro-open .site-header { z-index:102; }
body.intro-open .site-header::before,body.intro-open .brand-lockup,body.intro-open .header-actions > :not(.menu-toggle) { visibility:hidden; }
body.intro-open .header-actions { margin-left:auto; }
body.intro-open.menu-open .full-menu { z-index:101; }
body.intro-open:not(.menu-open) .menu-toggle { color:#f2eddf!important;border-color:#f2eddf99!important; }
body.intro-open .menu-toggle { min-width:44px;min-height:44px; }
.footer-legal { flex-basis:100%;border-top:1px solid currentColor;padding-top:20px;display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;font:12px/1.5 Helvetica,Arial,sans-serif;text-transform:none;letter-spacing:0; }
.footer-legal address { font-style:normal;flex:1 1 420px; }
.footer-legal nav { display:flex;gap:20px;flex-wrap:wrap; }
.footer-legal a { color:inherit;text-underline-offset:4px; }
.remember-language { display:inline-flex;align-items:center;gap:8px;font:12px/1.5 Helvetica,Arial,sans-serif;cursor:pointer; }
.remember-language span { text-transform:none;letter-spacing:0; }
.footer-legal address { overflow-wrap:anywhere;min-width:0; }
.remember-language input { width:15px;height:15px;accent-color:#e84632; }
.legal-page { background:#f2eddf;color:#10110e;margin:0;font:18px/1.55 Helvetica,Arial,sans-serif; }
.legal-header,.legal-main,.legal-footer { max-width:1100px;margin:auto;padding:30px clamp(24px,5vw,72px); }
.legal-header { display:flex;align-items:center;justify-content:space-between;gap:24px; }
.legal-header a,.legal-footer a,.legal-main a { color:inherit;text-underline-offset:4px;overflow-wrap:anywhere; }
.legal-brand { font-weight:700;text-decoration:none; }
.legal-brand img { display:block;width:160px;height:auto;filter:brightness(0); }
.returning-from-legal .entry-intro { display:none!important; }
.footer-legal nav a,.menu-legal a,.intro-legal a,.legal-footer a,.legal-header nav a { display:inline-flex;align-items:center;min-height:44px;min-width:44px;padding:8px 12px;box-sizing:border-box; }
.footer-legal nav { position:relative;z-index:4;gap:8px; }
.footer-legal .remember-language,.privacy-options .remember-language { min-height:44px;padding:8px;box-sizing:border-box; }
.remember-language input { flex-shrink:0; }
.legal-header nav { gap:4px; }
@media(max-width:600px){.legal-brand img{width:128px}.legal-header{gap:8px}}
.legal-header nav { display:flex;gap:16px;font-size:14px; }
.legal-header [aria-current] { font-weight:700; }
.legal-main { padding-top:36px;padding-bottom:80px; }
.legal-main h1 { font-size:clamp(42px,7vw,80px);line-height:1;letter-spacing:-.06em;margin:0 0 32px; }
.legal-main h2 { font-size:27px;letter-spacing:-.035em;line-height:1.2;margin:42px 0 14px; }
.legal-main h3 { font-size:19px;margin:28px 0 10px; }
.legal-main p,.legal-main ul { max-width:780px; }
.legal-main address { font-style:normal; }
.legal-main li { margin:9px 0; }
.legal-draft { border-left:3px solid #e84632;padding-left:18px;margin:24px 0 36px;font-size:15px;max-width:780px; }
.legal-status { color:#9e2f22;font:12px/1.5 monospace;text-transform:uppercase;letter-spacing:.05em; }
.legal-footer { display:flex;gap:24px;flex-wrap:wrap;border-top:1px solid #10110e40;font-size:13px; }
.privacy-options { margin:24px 0;display:flex;gap:20px;flex-wrap:wrap;align-items:center; }
.privacy-options button { background:transparent;border:1px solid #10110e60;padding:10px 16px;cursor:pointer;color:inherit;font:14px Helvetica,Arial,sans-serif; }
.legal-main .remember-language { font-size:15px; }
.legal-page :focus-visible,.footer-legal :focus-visible { outline:2px solid #e84632;outline-offset:4px; }
@media(max-width:600px){.legal-header{align-items:flex-start}.legal-header nav{gap:10px}.footer-legal{gap:16px}.footer-legal nav{gap:16px}}
