/* legal.css — shared styles for Impressum / Datenschutz pages */
html,body{ background:#01030b; }
.legal-page{ position:relative; z-index:2; }
.legal-nav{ border-bottom:1px solid var(--line); }
.legal-nav .nav-inner{ padding-block:18px; }
.legal-main{ max-width:760px; margin:0 auto; padding:clamp(56px,9vh,110px) var(--gutter) 80px; }
.legal-main .eyebrow{ margin-bottom:18px; }
.legal-title{ font-family:var(--font-display); font-weight:500; font-size:clamp(42px,6vw,72px); line-height:1; color:var(--cream); margin:0 0 18px; }
.legal-updated{ font-family:var(--font-mono); font-size:11.5px; letter-spacing:.12em; text-transform:uppercase; color:var(--text-dim); margin:0 0 56px; }
.legal-main h2{ font-family:var(--font-display); font-weight:600; font-size:27px; color:var(--cream); margin:52px 0 14px; }
.legal-main h3{ font-family:var(--font-mono); font-size:12px; letter-spacing:.18em; text-transform:uppercase; color:var(--teal); margin:34px 0 10px; }
.legal-main p{ font-size:18px; line-height:1.62; color:var(--text); margin:0 0 1em; }
.legal-main ul{ font-size:18px; line-height:1.62; color:var(--text); margin:0 0 1em; padding-left:1.2em; }
.legal-main li{ margin-bottom:.35em; }
.legal-main a{ color:var(--gold); border-bottom:1px solid rgba(231,178,78,.35); padding-bottom:1px; }
.legal-card{
  border:1px solid var(--line-2); border-radius:4px; padding:28px 30px; margin:0 0 8px;
  background:linear-gradient(180deg, rgba(14,28,48,.4), rgba(5,11,22,.4));
}
.legal-card p{ margin:0 0 .5em; }
.legal-card p:last-child{ margin:0; }
.legal-card .mono{ font-family:var(--font-mono); font-size:14px; letter-spacing:.02em; }
.legal-note{ font-size:15.5px; color:var(--text-dim); font-style:italic; }
.legal-foot{ border-top:1px solid var(--line); margin-top:72px; padding-top:26px; display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; font-family:var(--font-mono); font-size:11.5px; letter-spacing:.08em; color:var(--text-dim); }
.legal-foot a{ color:var(--text); border-bottom:1px solid var(--line-2); padding-bottom:1px; }
.legal-foot a:hover{ color:var(--gold); }
.legal-foot-links{ display:flex; gap:22px; }

/* language switch */
.lang-switch{ display:flex; gap:2px; border:1px solid var(--line-2); border-radius:3px; overflow:hidden; }
.lang-btn{
  font-family:var(--font-mono); font-size:12px; font-weight:700; letter-spacing:.12em;
  background:transparent; border:0; color:var(--text-dim); padding:9px 16px; cursor:pointer;
  transition:color .25s, background .25s;
}
.lang-btn:hover{ color:var(--cream); }
body[data-lang="de"] .lang-btn[data-set-lang="de"],
body[data-lang="en"] .lang-btn[data-set-lang="en"]{
  background:rgba(231,178,78,.14); color:var(--gold-bright);
}

/* language visibility */
body[data-lang="de"] .lang-en{ display:none; }
body[data-lang="en"] .lang-de{ display:none; }
span.lang{ display:inline; }
