/* ==== Kontaktseite ==== */
.kontakt-grid { display: grid; grid-template-columns: 1fr 1.1fr; gap: var(--sp-5); align-items: start; margin-top: var(--sp-4); }
@media (max-width: 900px) { .kontakt-grid { grid-template-columns: 1fr; gap: var(--sp-4); } }

.contact-way { display: flex; gap: 1rem; align-items: flex-start; padding: 1.1rem 0; border-bottom: 1px solid var(--border); }
.contact-way:last-child { border-bottom: none; }
.contact-way .ic { width: 42px; height: 42px; border-radius: 10px; background: var(--brand-100); color: var(--brand-700); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.contact-way b { display: block; font-family: var(--font-display); font-size: 1rem; margin-bottom: .15rem; }
.contact-way a, .contact-way span { font-size: .92rem; color: var(--ink-soft); text-decoration: none; }
.contact-way a:hover { color: var(--brand-700); text-decoration: underline; }

.form-card { padding: var(--sp-4); }
.form-field { margin-bottom: 1.3rem; }
.form-field label { display: block; font-family: var(--font-display); font-weight: 700; font-size: .88rem; margin-bottom: .5rem; }
.form-field input, .form-field textarea {
  width: 100%; padding: .85em 1em; border: 1.5px solid var(--border); border-radius: var(--r-sm);
  font: inherit; font-size: .98rem; background: var(--paper); color: var(--ink); transition: border-color .15s ease;
}
.form-field input:focus, .form-field textarea:focus { outline: none; border-color: var(--brand-700); background: var(--surface); }
.form-field textarea { resize: vertical; min-height: 120px; }
.form-note { font-size: .82rem; color: var(--ink-faint); margin-top: .8rem; }
.form-status { margin-top: 1rem; padding: .9em 1.1em; border-radius: var(--r-sm); font-size: .92rem; font-weight: 600; display: none; }
.form-status.show { display: block; }
.form-status.ok { background: var(--brand-100); color: var(--brand-900); }
.form-status.err { background: #F5E6E1; color: var(--danger); }
