/* Textseiten: Impressum, Datenschutz, Kontakt. Ruhig, gut lesbar,
   am Handy mit 16px Fliesstext (Regel: mobile body >= 16px). */
html, body { height: auto; overflow: visible; }

.tx {
  width: min(760px, 100%); margin: 0 auto;
  padding: min(124px, 15vh) var(--rand) 8svh;
}
.tx-titel {
  font-size: clamp(34px, 5vw, 58px); font-weight: 700; line-height: 1.02;
  letter-spacing: -0.038em; text-transform: uppercase;
}
.tx-vor {
  margin-top: 26px; font-size: 17px; line-height: 1.65; color: rgba(20,24,15,.72); max-width: 54ch;
}
.tx-block { margin-top: clamp(34px, 5vh, 56px); }
.tx-block h2 {
  font-size: 11px; letter-spacing: .22em; text-transform: uppercase; color: var(--grau);
  padding-bottom: 12px; border-bottom: 1px solid var(--linie); margin-bottom: 18px;
  font-weight: 500;
}
.tx-block p {
  font-size: 16px; line-height: 1.7; color: rgba(20,24,15,.78); max-width: 62ch;
}
.tx-block p + p { margin-top: 14px; }
.tx-block a { border-bottom: 1px solid var(--linie); padding-bottom: 1px; }
.tx-block a:hover { border-bottom-color: var(--ink); }
[data-pflegen] {
  background: rgba(200,162,101,.16); padding: 1px 6px; border-radius: 3px;
}

.tx-wege { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 30px; }
.tx-augen {
  font-size: 10px; letter-spacing: .22em; text-transform: uppercase; color: var(--grau);
  margin-bottom: 10px;
}
.tx-knopf {
  display: inline-flex; align-items: center; gap: 18px; min-height: 52px;
  padding: 15px 30px; border-radius: 100px;
  background: var(--moos); color: var(--weiss);
  font-size: 11px; letter-spacing: .19em; text-transform: uppercase;
  transition: background .4s;
}
.tx-knopf span { transition: transform .4s cubic-bezier(.2,.8,.2,1); }
.tx-knopf:hover { background: var(--gruen); }
.tx-knopf:hover span { transform: translateX(5px); }

.schluss {
  width: min(1340px, 100%); margin: 0 auto;
  display: grid; grid-template-columns: 1fr auto 1fr; align-items: end; gap: 20px;
  padding: 0 var(--rand) 5svh;
}

@media (max-width: 900px) {
  .tx { padding: 20px var(--rand) 6svh; }
  .tx-titel { font-size: clamp(30px, 9vw, 42px); }
  .tx-vor { font-size: 16px; }
  .tx-wege { grid-template-columns: 1fr; gap: 24px; }
  .schluss { display: block; padding: 0 var(--rand) 40px; }
  .schluss .fu-mitte { text-align: left; margin: 14px 0; }
}
