/* Generated; edit the listed source files, then rebuild. */

/* SOURCE: styles/legal/01-grundregeln.css */

.legal-heading {
  padding-top:58px;
  padding-bottom:62px;
  border-bottom:1px solid var(--border);
  background:var(--cream)
}
.legal-heading .breadcrumb {
  display:block;
  margin-bottom:40px
}
.legal-heading .eyebrow {
  color:var(--primary);
  margin-bottom:18px
}
.legal-heading h1 {
  font-size:clamp(2.6rem,6vw,5.2rem);
  color:var(--primary);
  overflow-wrap:anywhere
}
.legal-heading .legal-lead {
  max-width:620px;
  margin-top:24px;
  color:var(--muted-foreground);
  font-size:1.0625rem;
  line-height:1.8
}
.legal-layout {
  display:grid;
  grid-template-columns:minmax(150px,190px) minmax(0,800px);
  gap:clamp(32px,5vw,80px);
  padding-top:60px;
  padding-bottom:90px;
  align-items:start;
  justify-content:start
}
.legal-sidebar {
  position:sticky;
  top:125px;
  min-width:0
}
.legal-sidebar .eyebrow {
  font-size:.75rem;
  margin-bottom:16px
}
.legal-sidebar nav {
  display:grid;
  gap:12px;
  font-size:.9375rem;
  line-height:1.5
}
.legal-sidebar nav a {
  color:var(--muted-foreground)
}
.legal-sidebar nav a:hover {
  color:var(--primary);
  text-decoration:underline;
  text-underline-offset:4px
}
.legal-contact {
  display:grid;
  gap:9px;
  margin-top:34px;
  padding-top:24px;
  border-top:1px solid var(--border);
  font-size:.875rem;
  overflow-wrap:anywhere
}
.legal-contact span {
  color:var(--muted-foreground)
}
.legal-contact a {
  color:var(--primary)
}
.legal-content {
  min-width:0
}
.legal-section {
  padding:0 0 34px;
  margin-bottom:32px;
  border-bottom:1px solid var(--border);
  scroll-margin-top:120px
}
.legal-section h2 {
  font-size:1.7rem;
  line-height:1.3;
  letter-spacing:-.025em;
  color:var(--primary);
  margin-bottom:22px
}
.legal-section p,.legal-section address {
  font-size:1rem;
  line-height:1.85;
  margin:0 0 16px;
  overflow-wrap:anywhere
}
.legal-section p:last-child {
  margin-bottom:0
}
.legal-section strong {
  font-weight:600
}
.legal-section address {
  font-style:normal
}
.legal-content a {
  text-decoration:underline;
  text-underline-offset:4px;
  color:var(--primary)
}
.legal-facts {
  margin:0
}
.legal-facts div {
  display:grid;
  grid-template-columns:minmax(170px,1fr) minmax(0,1fr);
  gap:24px;
  padding:15px 0;
  border-bottom:1px solid var(--border)
}


/* SOURCE: styles/legal/02-grundregeln.css */

.legal-facts div:first-child {
  padding-top:0
}
.legal-facts div:last-child {
  border:0;
  padding-bottom:0
}
.legal-facts dt {
  font-size:.9375rem;
  color:var(--muted-foreground)
}
.legal-facts dd {
  margin:0;
  font-size:1rem;
  overflow-wrap:anywhere
}
.legal-date {
  font-size:.875rem;
  color:var(--muted-foreground)
}


/* SOURCE: styles/legal/03-max-width-800px.css */

@media(max-width:800px) {
  .legal-heading {
    padding-top:32px;
    padding-bottom:40px
  }
  .legal-heading .breadcrumb {
    margin-bottom:28px
  }
  .legal-layout {
    grid-template-columns:1fr;
    gap:34px;
    padding-top:32px;
    padding-bottom:55px
  }
  .legal-sidebar {
    position:static
  }
  .legal-sidebar nav {
    grid-template-columns:1fr 1fr;
    gap:13px 20px
  }
  .legal-contact {
    display:none
  }
  .legal-section {
    scroll-margin-top:90px
  }
  .legal-facts div {
    grid-template-columns:1fr;
    gap:4px
  }
  .legal-section h2 {
    font-size:1.5rem
  }
}


/* SOURCE: styles/legal/04-max-width-420px.css */

@media(max-width:420px) {
  .legal-sidebar nav {
    grid-template-columns:1fr
  }
  .legal-heading .legal-lead {
    font-size:1rem
  }
}
