@font-face { font-family: 'Inter'; font-style: normal; font-display: swap; font-weight: 400; src: url(/assets/inter-latin-ext-400-normal.6744a7f509.woff2) format('woff2'); unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: 'Inter'; font-style: normal; font-display: swap; font-weight: 400; src: url(/assets/inter-latin-400-normal.8909904ab6.woff2) format('woff2'); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: 'Inter'; font-style: normal; font-display: swap; font-weight: 500; src: url(/assets/inter-latin-ext-500-normal.2c6fbc42d3.woff2) format('woff2'); unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: 'Inter'; font-style: normal; font-display: swap; font-weight: 500; src: url(/assets/inter-latin-500-normal.f3779f1efc.woff2) format('woff2'); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: 'Inter'; font-style: normal; font-display: swap; font-weight: 600; src: url(/assets/inter-latin-ext-600-normal.e4bdf67b0c.woff2) format('woff2'); unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: 'Inter'; font-style: normal; font-display: swap; font-weight: 600; src: url(/assets/inter-latin-600-normal.f9a06e79cd.woff2) format('woff2'); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: 'Space Grotesk'; font-style: normal; font-display: swap; font-weight: 500; src: url(/assets/space-grotesk-latin-ext-500-normal.ed7e064eda.woff2) format('woff2'); unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: 'Space Grotesk'; font-style: normal; font-display: swap; font-weight: 500; src: url(/assets/space-grotesk-latin-500-normal.1b1a8131d9.woff2) format('woff2'); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: 'Space Grotesk'; font-style: normal; font-display: swap; font-weight: 600; src: url(/assets/space-grotesk-latin-ext-600-normal.0bdc872e28.woff2) format('woff2'); unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: 'Space Grotesk'; font-style: normal; font-display: swap; font-weight: 600; src: url(/assets/space-grotesk-latin-600-normal.685bbbf69f.woff2) format('woff2'); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: 'Space Grotesk'; font-style: normal; font-display: swap; font-weight: 700; src: url(/assets/space-grotesk-latin-ext-700-normal.7ce350b706.woff2) format('woff2'); unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: 'Space Grotesk'; font-style: normal; font-display: swap; font-weight: 700; src: url(/assets/space-grotesk-latin-700-normal.35f8aec56c.woff2) format('woff2'); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
/* Rechtsseiten der Website: gleiche Farben und Schriften wie index.html (01 Marke/lexoj-farben.css) */
:root {
  --bg: #0b0a11;
  --card: #14121b;
  --card-hover: #1a1823;
  --fg: #fff;
  --fg-soft: #e8e4ef;
  --muted: #a39cb3;
  --lilac: #c3b7d7;
  --pink: #d946ef;
  --line: rgb(195 183 215 / 12%);
  --line-strong: rgb(195 183 215 / 30%);
  --radius: 16px;
  --font-body: 'Inter', system-ui, sans-serif;
  --font-display: 'Space Grotesk', 'Inter', system-ui, sans-serif;
  --gutter: 16px;
}
@media (width >= 720px) {
  :root {
    --gutter: 32px;
  }
}
*,
*::before,
*::after {
  box-sizing: border-box;
}
body {
  margin: 0;
  background: var(--bg);
  color: var(--fg-soft);
  font-family: var(--font-body);
  font-size: 1.0625rem;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}
h1,
h2 {
  font-family: var(--font-display);
  color: var(--fg);
  line-height: 1.15;
  letter-spacing: -0.01em;
}
h1 {
  font-size: clamp(1.9rem, 5vw, 2.8rem);
  margin: 0 0 16px;
}
h2 {
  font-size: 1.35rem;
  margin: 40px 0 12px;
  scroll-margin-top: 80px;
}
p {
  margin: 0 0 12px;
}
ul {
  padding-left: 1.2em;
}
li {
  margin-bottom: 8px;
}
a {
  color: var(--lilac);
  text-underline-offset: 3px;
}
a:focus-visible {
  outline: 3px solid var(--pink);
  outline-offset: 3px;
  border-radius: 6px;
}
address {
  font-style: normal;
}
.wrap {
  width: min(760px, 100% - 2 * var(--gutter));
  margin-inline: auto;
}
.skip {
  position: absolute;
  left: -999px;
  top: 8px;
  background: var(--card);
  color: var(--fg);
  padding: 8px 12px;
  z-index: 10;
}
.skip:focus {
  left: 8px;
}
.brand {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 1.75rem;
  color: var(--fg);
  text-decoration: none;
  letter-spacing: -0.02em;
  line-height: 1;
  display: inline-flex;
}
.brand-j {
  position: relative;
  display: inline-block;
}
.brand-j::after {
  content: '';
  position: absolute;
  width: 0.19em;
  height: 0.19em;
  border-radius: 50%;
  background: var(--pink);
  top: 0.1em;
  left: 0.17em;
  box-shadow: 0 0 10px rgb(217 70 239 / 70%);
}
.top {
  position: sticky;
  top: 0;
  z-index: 5;
  background: rgb(11 10 17 / 85%);
  backdrop-filter: blur(12px);
  border-bottom: 1px solid var(--line);
}
/* Wie site.css: Schriftzug links, Knopf rechts, Seitenlinks am Handy als zweite Zeile */
.top .wrap {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0 24px;
  min-height: 64px;
}
.top .brand {
  margin-right: auto;
}
.top nav {
  display: flex;
  align-items: center;
  gap: 22px;
  order: 2;
  flex-basis: 100%;
  padding-bottom: 12px;
}
.top nav a {
  color: var(--fg-soft);
  text-decoration: none;
  font-weight: 500;
  font-size: 0.95rem;
}
.top nav a:hover {
  color: var(--fg);
}
@media (width >= 720px) {
  .top .brand {
    margin-right: 0;
  }
  .top nav {
    order: 0;
    flex-basis: auto;
    margin-left: auto;
    padding-bottom: 0;
  }
  .top .btn {
    order: 1;
  }
}
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-display);
  font-weight: 600;
  text-decoration: none;
  border-radius: 999px;
  padding: 10px 18px;
  min-height: 40px;
  font-size: 0.95rem;
  white-space: nowrap;
}
.btn-main {
  background: #6d28d9;
  color: var(--fg);
}
.btn-main:hover {
  background: #7c3aed;
}
main.legal {
  padding: 48px 0 72px;
}
.intro {
  font-size: 1.15rem;
  color: var(--fg-soft);
}
.date {
  color: var(--muted);
  font-size: 0.92rem;
}
.toc {
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 16px 20px;
  margin: 24px 0 8px;
}
.toc ol {
  margin: 0;
  padding-left: 1.4em;
  columns: 2;
  column-gap: 24px;
}
@media (width < 600px) {
  .toc ol {
    columns: 1;
  }
}
.toc li {
  margin: 4px 0;
  break-inside: avoid;
}
.toc a {
  text-decoration: none;
}
.toc a:hover {
  text-decoration: underline;
}
.tiles {
  list-style: none;
  padding: 0;
  display: grid;
  gap: 10px;
}
@media (width >= 600px) {
  .tiles {
    grid-template-columns: 1fr 1fr;
  }
}
.tiles li {
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 14px 16px;
  font-size: 0.95rem;
  color: var(--muted);
  margin: 0;
}
.tiles strong {
  display: block;
  color: var(--fg);
  margin-bottom: 4px;
}
footer {
  border-top: 1px solid var(--line);
  padding: 40px 0 48px;
  color: var(--muted);
  font-size: 0.92rem;
}
footer p {
  margin: 0;
}
footer .wrap {
  display: grid;
  gap: 28px;
}
footer .company {
  display: grid;
  gap: 10px;
  justify-items: start;
}
footer nav {
  display: grid;
  gap: 10px;
}
/* Schmale Spalte: Betreiberin oben, Rechtsseiten darunter in einer Zeile */
@media (width >= 720px) {
  footer nav {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 24px;
  }
}
footer a {
  color: var(--lilac);
  text-decoration: none;
}
footer a:hover {
  text-decoration: underline;
}
footer .brand {
  font-size: 1.4rem;
  color: var(--fg);
}
