/* Styles specific to legal pages (impressum, datenschutz) */

.legal-main {
  flex: 1;
  max-width: 680px;
  width: 100%;
  margin: 0 auto;
  padding: 48px 24px 64px;
}

.legal-main h1 {
  font-size: 2rem;
  font-weight: 600;
  letter-spacing: -0.03em;
  color: #222;
  margin-bottom: 8px;
}

.legal-main .intro {
  font-size: 0.85rem;
  color: #717171;
  margin-bottom: 40px;
}

.legal-main section {
  margin-bottom: 32px;
}

.legal-main h2 {
  font-size: 0.95rem;
  font-weight: 600;
  color: #222;
  margin-bottom: 8px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.legal-main p,
.legal-main li {
  font-size: 0.95rem;
  color: #444;
  line-height: 1.7;
}

.legal-main ul {
  padding-left: 1.4em;
  margin: 8px 0;
}

.legal-main a {
  color: #2d6a47;
  text-decoration: none;
}

.legal-main a:hover {
  text-decoration: underline;
}

/* Allow scrolling on legal pages */
.legal-main ~ footer,
body:has(.legal-main) {
  overflow: auto;
}

body:has(.legal-main) {
  overflow-y: auto;
}
