/* Anfrageformular (anfrage.html, danke.html). Ergaenzt style.css, aendert dort nichts. */
.anfrage-hero{padding-bottom:40px}
.anfrage-hero h1{max-width:none}
.sos-box.akut{max-width:720px}
.sos-box.akut b{font-size:1.2rem}
.sos-box.akut .sos-btn{font-size:1.1rem}
.anfrage-bereich{padding-top:1.5rem}
.formular-spalte{min-width:0;max-width:46rem}

.anfrage-form fieldset{border:1px solid var(--line);border-radius:20px;background:var(--panel);padding:1.4rem 1.5rem .6rem;margin:0 0 1.4rem;min-width:0}
.anfrage-form legend{font-weight:700;font-size:1.1rem;padding:0 .5rem;color:var(--text)}
.feld{margin:0 0 1.1rem;min-width:0}
.feld-reihe{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}
@media(max-width:620px){.feld-reihe{grid-template-columns:1fr}}
.feld label{display:block;font-weight:600;margin-bottom:.35rem;color:var(--text)}
.pflicht{color:#ff6b7d;font-weight:700}
.pflicht-hinweis,.klein{font-size:.92rem;color:var(--muted);margin:0 0 1rem}
.klein a,.feld-hinweis a,.formstatus a{color:var(--cyan)}
.anfrage-form input[type=text],.anfrage-form input[type=email],.anfrage-form input[type=tel],.anfrage-form select,.anfrage-form textarea{
  display:block;width:100%;max-width:100%;font:inherit;font-size:1rem;color:var(--text);background:#05090e;
  border:1px solid #2a3a4c;border-radius:12px;padding:.8rem .9rem;min-height:48px;transition:border-color .2s,box-shadow .2s}
.anfrage-form select{appearance:none;-webkit-appearance:none;padding-right:2.4rem;
  background-image:linear-gradient(45deg,transparent 50%,var(--cyan) 50%),linear-gradient(135deg,var(--cyan) 50%,transparent 50%);
  background-position:calc(100% - 20px) 50%,calc(100% - 14px) 50%;background-size:6px 6px;background-repeat:no-repeat}
.anfrage-form textarea{resize:vertical;min-height:9rem;line-height:1.5}
.anfrage-form input:hover,.anfrage-form select:hover,.anfrage-form textarea:hover{border-color:#3d546b}
.anfrage-form input:focus-visible,.anfrage-form select:focus-visible,.anfrage-form textarea:focus-visible{
  outline:3px solid #7df9ff;outline-offset:2px;border-color:var(--cyan);border-radius:12px}
.anfrage-form [aria-invalid=true]{border-color:#ff6b7d;box-shadow:0 0 0 1px #ff6b7d}
.feld-hinweis{font-size:.88rem;color:var(--dim);margin:.35rem 0 0}
.feld-fehler{font-size:.92rem;color:#ff8a98;font-weight:600;margin:.35rem 0 0}
.feld-fehler:empty{display:none}
.wahl{display:grid;gap:.5rem;margin:.3rem 0 1rem}
.option{display:flex;align-items:flex-start;gap:.7rem;padding:.7rem .9rem;border:1px solid #2a3a4c;border-radius:12px;cursor:pointer;color:var(--text);line-height:1.35}
.option:hover{border-color:#3d546b}
.option input{width:20px;height:20px;margin-top:.05rem;flex:0 0 auto;accent-color:var(--cyan)}
.option:has(input:checked){border-color:var(--cyan);background:rgba(34,211,238,.06)}
.option input:focus-visible{outline:3px solid #7df9ff;outline-offset:3px}
.wahl.ungueltig .option{border-color:#ff6b7d}
.zaehler{white-space:nowrap}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.senden{border:0;cursor:pointer;font-family:inherit;margin:.4rem 0 1rem}
.senden[disabled]{opacity:.6;cursor:wait;transform:none}
@media(max-width:520px){.senden{width:100%;justify-content:center}}

.formstatus{border-radius:16px;padding:1.1rem 1.3rem;margin:0 0 1.4rem;border:1px solid rgba(239,68,68,.55);background:rgba(239,68,68,.08);color:var(--text)}
.formstatus:focus{outline:3px solid #7df9ff;outline-offset:3px}
.formstatus p{margin:0 0 .4rem;color:#d7e0ea}
.formstatus p:last-child{margin:0}
.formstatus b{color:#ff8a98}

.side .ablauf{margin:0 0 .8rem 1.2rem;color:var(--muted);font-size:.95rem}
.side .ablauf li{margin:.4rem 0}

.danke-schritte{margin:0 0 1.3rem 1.3rem}
@media(max-width:900px){.anfrage-bereich .side{position:static}}
