.legal-page-body { min-height: 100vh; color: #f5f1e8; background: #0b1215; }
.legal-topbar { position: sticky; z-index: 40; top: 0; min-height: 84px; display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 16px var(--page-x); background: rgba(11,18,21,.94); border-bottom: 1px solid rgba(255,255,255,.1); backdrop-filter: blur(16px); }
.legal-topbar .brand { width: min(34vw, 220px); }
.legal-topbar-actions { display: flex; align-items: center; gap: 20px; }
.legal-back { color: rgba(255,255,255,.76); font-size: .75rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.legal-main { width: min(100% - 2 * var(--page-x), 900px); margin-inline: auto; padding: clamp(64px, 9vw, 110px) 0 90px; }
.legal-main h1 { margin: 10px 0 24px; font-family: "Anton Local", Impact, sans-serif; font-size: clamp(4rem, 11vw, 8rem); font-weight: 400; line-height: .9; text-transform: uppercase; }
.legal-lead { max-width: 760px; margin: 0 0 52px; color: rgba(255,255,255,.78); font-size: clamp(1.05rem, 2vw, 1.3rem); line-height: 1.65; }
.legal-main section { padding: 32px 0; border-top: 1px solid rgba(255,255,255,.12); }
.legal-main h2 { margin: 0 0 14px; color: #fff; font-size: clamp(1.25rem, 2.2vw, 1.75rem); line-height: 1.25; }
.legal-main p,
.legal-main address { margin: 0 0 14px; color: rgba(255,255,255,.7); font-size: 1rem; font-style: normal; line-height: 1.75; }
.legal-main a { color: #e3b870; text-underline-offset: 4px; }
.legal-main code { padding: 2px 6px; color: #fff; background: rgba(255,255,255,.08); border-radius: 4px; }
.legal-placeholder { display: inline; color: #ff4b55; font-weight: 850; letter-spacing: .015em; }
.legal-draft-notice { margin: 0 0 30px; padding: 18px 20px; color: #ffdadd; background: rgba(219,39,54,.13); border: 1px solid rgba(255,75,85,.58); border-left: 5px solid #ff4b55; border-radius: 8px; line-height: 1.55; }
.legal-note { color: rgba(255,255,255,.54) !important; font-size: .9rem !important; }
.legal-footer { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px 28px; padding: 28px var(--page-x); color: rgba(255,255,255,.58); background: #060606; border-top: 1px solid rgba(255,255,255,.1); font-size: .8rem; }
.legal-footer a { color: rgba(255,255,255,.8); }
.legal-footer nav { display: flex; flex-wrap: wrap; gap: 12px 20px; }
.legal-agency-credit { font-size: .86rem; text-decoration: none; }
.legal-agency-credit strong { color: #fff; font-size: 1rem; letter-spacing: .035em; }
.legal-agency-credit:hover strong,
.legal-agency-credit:focus-visible strong { color: #e3b870; }
[data-legal-en] { display: none; }
html[lang="en"] [data-legal-de] { display: none; }
html[lang="en"] [data-legal-en] { display: block; }
html[lang="en"] a[data-legal-en] { display: inline; }
@media (max-width: 720px) {
  .legal-topbar { min-height: 72px; padding-inline: 18px; }
  .legal-topbar .brand { width: 148px; }
  .legal-back { display: none !important; }
  .legal-main { width: calc(100% - 36px); padding-top: 50px; }
  .legal-main h1 { font-size: clamp(3.7rem, 19vw, 5.5rem); }
  .legal-main section { padding-block: 26px; }
  .legal-footer { padding: 24px 18px calc(24px + env(safe-area-inset-bottom)); }
  .legal-footer { align-items: flex-start; flex-direction: column; }
  .legal-agency-credit { font-size: .78rem; }
  .legal-agency-credit strong { font-size: .95rem; }
}
