/* MPFORM – neutrale Grundgestaltung. Block 22 ordnet nur das Layout an. */
.mpform { width: 100%; }
.mpform form { width: 100%; max-width: 980px; margin-inline: auto; }
.mpform fieldset { margin: 0; padding: 0; border: 0; }
.mpform label { color: #878787; font-size: 1rem; font-weight: 400; line-height: 1.45; }
.mpform input[type="text"],
.mpform input[type="email"],
.mpform input[type="tel"],
.mpform input[type="url"],
.mpform input[type="number"],
.mpform input[type="date"],
.mpform input[type="file"],
.mpform select,
.mpform textarea,
.mpform_field { display: block; width: 100%; max-width: 100%; padding: .65rem .8rem; color: #212529; background: #fff; border: 1px solid #ced4da; border-radius: 5px; font: inherit; line-height: 1.5; transition: border-color .15s ease,box-shadow .15s ease; }
.mpform textarea { min-height: 140px; resize: vertical; }
.mpform input:focus,
.mpform select:focus,
.mpform textarea:focus { outline: 0; border-color: #b4a591; box-shadow: 0 0 0 .25rem rgba(180,165,145,.25); }
.mpform input[type="checkbox"],
.mpform input[type="radio"] { width: 1.1rem; height: 1.1rem; margin: .15rem .55rem 0 0; accent-color: #b4a591; cursor: pointer; }
.mpform_radio_label,
.mpform_checkbox_label { display: inline-block; width: calc(100% - 40px); margin: 0 0 .75rem; padding-top: 1px; vertical-align: top; color: #878787; font-size: .95rem !important; line-height: 1.5; cursor: pointer; }
.mpform_required { margin-left: .2rem; color: #dc3545; font-weight: 700; }
.mpform_missing,
.invalid-feedback { display: block; margin-top: .35rem; color: #dc3545; font-size: .85rem; }
.mpform_err_date,
.mpform_err_email,
.mpform_err_textarea,
.mpform_err_text,
.mpform_err_radio,
.mpform_err_select,
.captcha_err input { background-color: #fff8f8; border-color: #dc3545 !important; }
.captcha_table { width: auto; margin-top: .25rem; }
.captcha_table td { padding: .3rem; vertical-align: middle; }
.captcha_table input { display: inline-block !important; width: 80px !important; text-align: center; }
.mpform input[type="submit"],
.mpform button[type="submit"],
.mpform_submit { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; padding: .75rem 1.35rem; color: #050505; background: linear-gradient(135deg,#724305 0%,#cf8917 22%,#ffe08a 48%,#e5a52c 72%,#7a4907 100%); border: 1px solid transparent; border-radius: 999px; box-shadow: 0 10px 30px rgba(215,151,32,.18); font: inherit; font-size: .78rem; font-weight: 700; letter-spacing: .12em; line-height: 1.2; text-transform: uppercase; cursor: pointer; transition: transform .18s ease,box-shadow .18s ease; }
.mpform input[type="submit"]:hover,
.mpform button[type="submit"]:hover,
.mpform_submit:hover { box-shadow: 0 14px 40px rgba(237,177,55,.32); transform: translateY(-2px); }
.mpform_results { margin-top: 1.5rem; padding: 1.25rem; color: #0f5132; background: #d1e7dd; border: 1px solid #badbcc; border-radius: 5px; }
.nixhier,
.mpform .nixhier { position: absolute !important; left: -9999px !important; display: none !important; width: 0 !important; height: 0 !important; overflow: hidden !important; visibility: hidden !important; }
#andree-block-22 .mpform,
#andree-block-22 .mpform form { width: 100%; max-width: none; margin: 0; }
@media (max-width: 575.98px) {
  .mpform input[type="submit"],.mpform button[type="submit"],.mpform_submit { width: 100%; }
}
