/* Kontaktformular. Rückweg: Abschnitt #formular und die Links auf kontakt.css und kontakt.js aus kontakt.html nehmen. */
.kform[hidden]{display:none}
.kform{max-width:40rem;margin-top:clamp(2rem,4vw,3rem);display:grid;gap:1.3rem}
.kform label{display:block;margin-bottom:.45rem;font-size:.92rem;letter-spacing:.03em;color:var(--muted,#e4e1da)}
.kform label .opt{color:var(--faint,#bfbcb4)}
.kform input[type=text],.kform input[type=email],.kform input[type=tel],.kform textarea{width:100%;font:inherit;font-size:1.05rem;line-height:1.5;color:var(--text,#eceae4);background:var(--panel,#111114);border:1px solid rgba(255,255,255,.3);border-radius:3px;padding:.85rem 1rem;transition:border-color .2s}
.kform textarea{min-height:9.5rem;resize:vertical}
.kform input:focus,.kform textarea:focus{outline:2px solid rgba(176,48,64,.7);outline-offset:1px;border-color:#fff}
.kform .kfehler input,.kform .kfehler textarea{border-color:#ff8f9b}
.kform .kfalle{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.kform .kcheck{display:flex;gap:.8rem;align-items:flex-start;margin:0;font-size:.95rem;line-height:1.5;color:var(--muted,#e4e1da)}
.kform .kcheck input{flex:none;margin-top:.22rem;width:1.15rem;height:1.15rem;accent-color:#b03040}
.kform .kcheck a{text-decoration:underline;text-underline-offset:2px}
.kform .btn{justify-self:start;font:inherit;font-weight:600;cursor:pointer;border:1px solid transparent}
.kform .btn[disabled]{opacity:.6;cursor:wait}
.kform .kstatus{min-height:1.5em;margin:0;font-size:1rem;line-height:1.5}
.kform .kstatus.ok{color:#b8e6c1}
.kform .kstatus.fehler{color:#ffb3bb}
.knoscript{max-width:40rem;margin-top:1.5rem;color:var(--muted,#e4e1da)}
