/* Anfrage- und Katalogformular */
.pm-anfrage { max-width: 760px; margin: 40px 0 0; padding: 28px; border: 1px solid var(--pm-linie); border-radius: 4px; }
.pm-katalog { margin-top: 20px; }
.pm-felder { display: grid; grid-template-columns: 1fr 1fr; gap: 0 20px; }
.pm-feld label { display: block; font-weight: 600; color: var(--pm-dunkel); margin-bottom: 4px; }
.pm-feld input, .pm-feld textarea { width: 100%; font: inherit; padding: 9px 10px; border: 1px solid #ccc; border-radius: 3px; background: #fff; }
.pm-feld-breit { grid-column: 1 / -1; }
.pm-feld-fehler input, .pm-feld-fehler textarea { border-color: #b32d2e; }
.pm-fehler { display: block; color: #b32d2e; font-size: 13px; margin-top: 3px; }
.pm-pflicht { color: #b32d2e; }
.pm-hinweis-fehler { background: #fcf0f1; border-left: 4px solid #b32d2e; padding: 10px 14px; color: #3c434a; }
.pm-hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.pm-datenschutz { font-size: 13px; color: var(--pm-grau); }
.pm-danke { padding: 28px; background: #f3faf3; border-left: 4px solid #46a049; margin: 10px 0 30px; }
.pm-danke h2 { margin-top: 0; }
@media (max-width: 640px) { .pm-felder { grid-template-columns: 1fr; } .pm-anfrage { padding: 18px; } }
