/* Landingpages (lib/landing/template.mjs): nur Ergänzungen zu /styles.css, gleiche Tokens. Struktur und Texte bleiben unverändert. */
.lp .hero h1 { max-width: 24ch; overflow-wrap: anywhere; }
.lp .hero .btn { margin-top: var(--s5); }
.lp .lp-cta { white-space: normal; max-width: 100%; text-align: center; }
.lp .btn.dark.lp-cta { margin-top: var(--s4); }
.lp-content { max-width: var(--read); }
.lp-content h2 { font-size: var(--t-l); margin: var(--s7) 0 var(--s3); }
.lp-content p { margin: var(--s3) 0; color: var(--ink-2); }
.lp-content ol, .lp-content ul { padding-left: 22px; color: var(--ink-2); }
.lp-breadcrumb { font-size: var(--t-s); color: var(--muted); margin: 0 0 var(--s4); overflow-wrap: anywhere; }
.lp-breadcrumb a { color: var(--ink-2); text-decoration: underline; text-underline-offset: 3px; }
.lp-source { font-size: var(--t-s); color: var(--muted); margin-top: var(--s4); }
.lp-jobs { display: grid; gap: var(--s3); list-style: none; padding: 0 !important; }
.lp-job { display: grid; gap: var(--s1); padding: var(--s5); background: var(--surface); border-radius: var(--r-l); box-shadow: var(--sh-1); overflow-wrap: anywhere; }
.lp-job h3 { font-size: 18px; line-height: 1.3; }
.lp-job p { margin: 0; font-size: var(--t-s); }
.lp-job .lp-source { margin-top: var(--s2); }
.lp-job .link { font-size: var(--t-s); }
.lp-links { display: grid; gap: var(--s2); list-style: none; padding: 0 !important; }
.lp-links a { display: inline-flex; align-items: center; min-height: 44px; color: var(--accent-ink); text-decoration: underline; text-underline-offset: 3px; }
.lp details { border-top: 1px solid var(--line); }
.lp details:last-of-type { border-bottom: 1px solid var(--line); }
.lp summary { display: flex; align-items: center; min-height: 52px; cursor: pointer; color: var(--ink); font-weight: 600; }
.lp details p { padding-bottom: var(--s3); }
@media (max-width: 600px) { .lp-job { padding: var(--s4); } }
