/* HN12 legal page: shared paper, typography and navigation; static content. */
.imprint-body { min-height: 100vh; display: flex; flex-direction: column; }
.imprint-page {
  flex: 1; width: 100%; max-width: 66rem; margin: 0 auto;
  padding: 8rem 3rem 5rem; scroll-margin-top: 6rem;
}
.imprint-heading { padding-bottom: 3rem; text-align: center; }
.imprint-label {
  font-family: var(--mono); font-size: 0.65rem; font-weight: 400;
  letter-spacing: 0.12em; line-height: 1.6; text-transform: uppercase;
  color: rgba(var(--ink-rgb), 0.65);
}
.imprint-heading h1 {
  margin: 0.6rem 0 1rem; font-size: clamp(3rem, 6vw, 4.5rem);
  font-weight: 300; letter-spacing: -0.045em; line-height: 1.05;
}
.imprint-lede { font-size: 0.9rem; color: var(--gray); }
.imprint-section {
  display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2.4fr);
  gap: 2.5rem; padding: 2.5rem 0; border-top: 1px solid var(--border);
}
.imprint-section > .imprint-label { padding-top: 0.3rem; }
.imprint-label span { display: block; margin-bottom: 0.45rem; }
.imprint-copy { min-width: 0; }
.imprint-copy h2 {
  font-size: clamp(1.35rem, 2.5vw, 1.8rem); font-weight: 300;
  line-height: 1.25; letter-spacing: -0.025em;
}
.imprint-formation { display: block; margin-top: 0.4rem; font-size: 0.95rem; line-height: 1.5; letter-spacing: 0; color: var(--gray); }
.imprint-copy p, .imprint-copy address {
  max-width: 66ch; margin-top: 1rem; font-size: 0.95rem;
  font-style: normal; line-height: 1.8; color: rgba(var(--ink-rgb), 0.8);
}
.imprint-details { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem; margin-top: 2rem; }
.imprint-details h3 { font-family: var(--mono); font-size: 0.65rem; font-weight: 400; line-height: 1.5; letter-spacing: 0.12em; text-transform: uppercase; }
.imprint-details p, .imprint-details address { margin-top: 0.6rem; }
.imprint-copy a { color: var(--black); text-underline-offset: 4px; overflow-wrap: anywhere; }
.imprint-copy a:hover { text-decoration-thickness: 2px; }
.imprint-skip {
  position: fixed; top: 1rem; left: 1rem; z-index: 300;
  padding: 0.7rem 1rem; background: var(--white); color: var(--black);
  transform: translateY(calc(-100% - 2rem));
}
.imprint-skip:focus { transform: translateY(0); }
@media (max-width: 680px) {
  .imprint-page { padding: 6.5rem 1.25rem 2.5rem; }
  .imprint-heading { padding-bottom: 2rem; }
  .imprint-section { grid-template-columns: minmax(0, 1fr); gap: 1.25rem; padding: 2rem 0; }
  .imprint-section > .imprint-label { padding-top: 0; }
  .imprint-label span { display: inline; margin-right: 0.6rem; }
  .imprint-details { gap: 1.5rem; margin-top: 1.5rem; }
}
@media (max-width: 380px) {
  .imprint-details { grid-template-columns: minmax(0, 1fr); }
}
