/* Landingpages für Makler (Marketing, Website, SEO, Google und Meta Ads, Flyer und Logo), Stand 10.10.2026.
   Gleiches Layout wie /objektakquise-immobilienmakler/ (Entwurf Brilliant 10.10.2026). Erzeugt von makler-seiten/bauen.py.
   Selektoren mit .wrap davor, weil neu.css nach dieser Datei geladen wird und .wrap den Abstand setzt. */
.lp-hero { display: grid; grid-template-columns: minmax(0, 1fr) 440px; gap: 64px; align-items: center; }
.wrap.lp-hero { padding-top: 72px; padding-bottom: 64px; }
.lp-hero h1 { font-size: clamp(2.3rem, 4.6vw, 3.5rem); font-weight: 500; line-height: 1.08; letter-spacing: -.02em; margin: 0 0 24px; }
.lp-hero .lp-lead { font-size: 1.2rem; line-height: 1.6; color: var(--text); margin: 0 0 32px; max-width: 600px; }
.lp-knoepfe { display: flex; flex-wrap: wrap; gap: 12px; }
.lp-btn { display: inline-block; padding: 18px 30px; font-size: 17px; font-weight: 600; text-decoration: none; border: 1px solid var(--navy); }
.lp-btn--voll { background: var(--navy); color: #FFFFFF; }
.lp-btn--voll:hover { background: #142D54; color: #FFFFFF; text-decoration: none; }
.lp-btn--rand { background: #FFFFFF; color: var(--navy); font-weight: 500; }
.lp-btn--rand:hover { background: #EAF0F8; text-decoration: none; }
.lp-btn--weiss { background: #FFFFFF; color: var(--navy); border-color: #FFFFFF; }
.lp-btn--weiss:hover { background: #EAF0F8; color: var(--navy); text-decoration: none; }
.lp-tafel { background: var(--navy); color: #FFFFFF; padding: 40px; }
.lp-tafel .lp-klein { font-size: 14px; color: #C9D4E5; margin: 0; padding-bottom: 18px; border-bottom: 1px solid #3D5A87; }
.lp-tafel h2 { font-size: 1.7rem; font-weight: 500; line-height: 1.2; color: #FFFFFF; margin: 20px 0; }
.lp-tafel ul { list-style: none; margin: 0; padding: 0 0 20px; border-bottom: 1px solid #3D5A87; }
.lp-tafel li { color: #E4EAF3; font-size: 16px; line-height: 1.5; margin-bottom: 12px; padding-left: 22px; position: relative; }
.lp-tafel li::before { content: "→"; position: absolute; left: 0; }
.lp-tafel .lp-frist { margin: 18px 0 0; font-weight: 500; color: #FFFFFF; font-size: 15px; }
.wrap.lp-abschnitt { padding-top: 96px; }
.lp-kopf { display: flex; justify-content: space-between; align-items: flex-end; gap: 16px; flex-wrap: wrap; padding-bottom: 28px; border-bottom: 1px solid var(--ink); }
.lp-kopf h2 { font-size: clamp(1.7rem, 3.2vw, 2.25rem); font-weight: 500; letter-spacing: -.01em; line-height: 1.15; margin: 0; }
.lp-kopf p { font-size: 15px; color: #5A554C; margin: 0; }
.lp-einleitung { font-size: 16px; line-height: 1.65; color: var(--text); margin: 24px 0 0; max-width: 820px; }
.lp-zahlen { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; padding-top: 32px; }
.lp-zahl { background: #F4F6F9; padding: 28px; }
.lp-zahl strong { display: block; font-size: 2.3rem; font-weight: 500; letter-spacing: -.02em; line-height: 1.1; color: var(--navy); margin-bottom: 10px; }
.lp-zahl span { font-size: 15px; line-height: 1.55; color: var(--text); }
.lp-quelle { font-size: 13px; line-height: 1.55; color: #5A554C; margin: 16px 0 0; }
.lp-tabelle { width: 100%; border-collapse: collapse; font-size: 15px; line-height: 1.55; }
.lp-tabelle th { text-align: left; font-size: 13px; font-weight: 400; color: #5A554C; padding: 16px 32px 16px 0; border-bottom: 1px solid var(--linie); background: none; text-transform: none; letter-spacing: 0; }
.lp-tabelle td { padding: 22px 32px 22px 0; border-bottom: 1px solid var(--linie); vertical-align: top; color: var(--text); }
.lp-tabelle td:first-child { font-size: 18px; font-weight: 500; color: var(--ink); width: 220px; }
.lp-tabelle td:last-child, .lp-tabelle th:last-child { padding-right: 0; }
.lp-tabelle a { font-weight: 600; text-decoration: none; }
.lp-tabellenrahmen { overflow-x: auto; }
.lp-hinweis-klein { font-size: 13px; line-height: 1.55; color: #5A554C; margin: 16px 0 0; }
.lp-band { display: flex; justify-content: space-between; align-items: center; gap: 48px; background: var(--navy); color: #FFFFFF; padding: 48px 56px; }
.lp-band h2 { font-size: 1.9rem; font-weight: 500; line-height: 1.2; color: #FFFFFF; margin: 0 0 12px; }
.lp-band p { color: #E4EAF3; font-size: 17px; line-height: 1.55; margin: 0; max-width: 620px; }
.lp-drei { display: grid; grid-template-columns: repeat(3, 1fr); gap: 56px; padding-top: 34px; }
.lp-drei > div + div { border-left: 1px solid var(--linie); padding-left: 56px; margin-left: -28px; }
.lp-drei h3 { font-size: 20px; font-weight: 500; margin: 0 0 10px; }
.lp-drei p { font-size: 15px; line-height: 1.65; color: var(--text); margin: 0; }
.lp-liste { list-style: none; margin: 0; padding: 0; }
.lp-liste li { display: grid; grid-template-columns: 300px minmax(0, 1fr); gap: 32px; padding: 20px 0; border-bottom: 1px solid var(--linie); font-size: 15px; line-height: 1.6; color: var(--text); }
.lp-liste li strong { font-size: 17px; font-weight: 500; color: var(--ink); }
.lp-laender { display: grid; grid-template-columns: repeat(var(--spalten, 2), 1fr); gap: 16px; padding-top: 32px; }
.lp-land { border: 1px solid #E1E5EB; padding: 32px; }
.lp-land h3 { font-size: 22px; font-weight: 500; margin: 0 0 14px; }
.lp-land p { font-size: 15px; line-height: 1.6; color: var(--text); margin: 0 0 14px; }
.lp-land .lp-mehr { font-size: 14px; font-weight: 600; text-decoration: none; }
.lp-hinweis { background: #F4F6F9; padding: 20px 24px; margin-top: 16px; font-size: 14px; line-height: 1.6; color: var(--text); }
.lp-hinweis strong { color: var(--ink); }
.lp-faq > div { display: grid; grid-template-columns: 420px minmax(0, 1fr); gap: 56px; padding: 26px 0; border-bottom: 1px solid var(--linie); }
.lp-faq h3 { font-size: 19px; font-weight: 500; line-height: 1.4; margin: 0; }
.lp-faq p { font-size: 15px; line-height: 1.65; color: var(--text); margin: 0; }
.lp-weiter { display: grid; grid-template-columns: repeat(var(--spalten, 3), 1fr); gap: 16px; padding-top: 32px; }
.lp-karte { position: relative; display: flex; flex-direction: column; gap: 10px; padding: 26px; background: #FFFFFF; border: 1px solid #E1E5EB; transition: background-color .15s, border-color .15s; }
.lp-karte h3 { font-size: 19px; font-weight: 500; line-height: 1.3; margin: 0; }
.lp-karte p { font-size: 15px; line-height: 1.55; color: var(--text); margin: 0; }
.lp-karte a { color: var(--ink); text-decoration: none; }
.lp-karte a::after { content: ""; position: absolute; inset: 0; }
.lp-karte .mehr { margin-top: auto; padding-top: 8px; }
.lp-karte:hover, .lp-karte:focus-within { background: #EAF0F8; border-color: var(--navy); }
.lp-karte:hover a, .lp-karte:focus-within a { color: var(--navy); }
.lp-schluss { display: flex; justify-content: space-between; align-items: center; gap: 72px; background: var(--navy); color: #FFFFFF; padding: 56px; margin: 104px 0 0; }
.lp-schluss h2 { font-size: 2.35rem; font-weight: 500; line-height: 1.15; color: #FFFFFF; margin: 0 0 14px; }
.lp-schluss p { color: #E4EAF3; font-size: 18px; line-height: 1.55; margin: 0; }
.lp-schluss .lp-mail { color: #E4EAF3; font-size: 15px; display: inline-block; margin-top: 14px; }
@media (max-width: 1040px) {
  .lp-hero { grid-template-columns: 1fr; gap: 32px; }
  .lp-zahlen { grid-template-columns: repeat(2, 1fr); }
  .lp-weiter { grid-template-columns: repeat(2, 1fr); }
  .lp-band, .lp-schluss { flex-direction: column; align-items: flex-start; gap: 24px; padding: 32px 24px; }
  .lp-faq > div, .lp-liste li { grid-template-columns: 1fr; gap: 8px; }
}
@media (max-width: 760px) {
  .wrap.lp-hero { padding-top: 40px; padding-bottom: 40px; }
  .wrap.lp-abschnitt { padding-top: 64px; }
  .lp-zahlen, .lp-weiter, .lp-drei, .lp-laender { grid-template-columns: 1fr; gap: 16px; }
  .lp-drei > div + div { border-left: 0; padding-left: 0; margin-left: 0; border-top: 1px solid var(--linie); padding-top: 24px; }
  .lp-tabelle, .lp-tabelle tbody, .lp-tabelle tr, .lp-tabelle td { display: block; width: auto !important; }
  .lp-tabelle thead { display: none; }
  .lp-tabelle tr { border-bottom: 1px solid var(--linie); padding: 18px 0; }
  .lp-tabelle td { border: 0; padding: 4px 0; }
  .lp-tabelle td[data-titel]::before { content: attr(data-titel) ": "; color: #5A554C; font-size: 13px; }
  .lp-tafel, .lp-land { padding: 24px 20px; }
  .lp-btn { width: 100%; text-align: center; }
}
