.contact-form{flex-direction:column;gap:16px;display:flex}.contact-form-grid-2{grid-template-columns:1fr 1fr;gap:16px;display:grid}.contact-form-label{font-family:var(--font-body);font-size:var(--text-body-sm);color:var(--text-primary);margin-bottom:6px;font-weight:700;display:block}.contact-form-required{color:var(--error)}.contact-form-optional{color:var(--prose-dim);font-size:12px;font-weight:400}.contact-form-input,.contact-form-select,.contact-form-textarea{border:1px solid var(--card-edge);background:var(--card-surface);width:100%;color:var(--text-primary);font-family:var(--font-body);font-size:var(--text-body-sm);transition:border-color .22s var(--ease-expo-out), box-shadow .22s var(--ease-expo-out), background .22s ease;border-radius:10px;padding:12px 14px;line-height:1.5}.contact-form-input::-moz-placeholder{color:var(--prose-dim);opacity:.55}.contact-form-textarea::-moz-placeholder{color:var(--prose-dim);opacity:.55}.contact-form-input::placeholder,.contact-form-textarea::placeholder{color:var(--prose-dim);opacity:.55}.contact-form-input:focus,.contact-form-select:focus,.contact-form-textarea:focus{background:#d4c5570d;border-color:#d4c557b3;outline:none;box-shadow:0 0 0 3px #d4c5572e}.contact-form-select option{background-color:var(--bg-elevated);color:var(--text-primary)}.contact-form-select option:checked,.contact-form-select option:hover{background-color:var(--bg-muted);color:var(--text-primary)}.contact-form-select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23D4C557' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding-right:36px}.contact-form-textarea{resize:vertical}.contact-form-counter{color:var(--prose-dim);text-align:right;margin-top:4px;font-size:11.5px}.contact-form-checkbox-row{align-items:flex-start;gap:10px;padding-top:2px;display:flex}.contact-form-checkbox{cursor:pointer;accent-color:#d4c557;flex-shrink:0;width:16px;height:16px;margin-top:2px}.contact-form-checkbox-label{color:var(--prose-dim);cursor:pointer;font-size:12.5px;line-height:1.6}.contact-form-link{color:#d4c557;text-underline-offset:2px;text-decoration:underline}.contact-form-link:hover{color:#e4d26b}.contact-form-error{color:var(--error);font-size:var(--text-body-sm);background:#ef44441a;border:1px solid #ef444459;border-radius:10px;padding:12px 14px}.contact-form-submit{width:100%}.contact-form-footnote{text-align:center;color:var(--prose-dim);font-size:11.5px}.contact-form-success{text-align:center;padding:48px 24px}.contact-form-success-icon{color:#4ade80;background:#4ade801a;border:2px solid #4ade80;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 24px;display:flex}.contact-form-success-title{font-family:var(--font-display);color:var(--text-primary);margin-bottom:12px;font-size:24px;font-weight:700}.contact-form-success-text{font-size:var(--text-body);color:var(--prose-dim);max-width:420px;margin:0 auto 28px;line-height:1.7}@media (max-width:640px){.contact-form-grid-2{grid-template-columns:1fr}}.cfl-fortschritt{background:#d4c55712;border:1px solid #d4c55740;border-radius:14px;padding:12px 14px}.cfl-fortschritt-kopf{justify-content:space-between;align-items:baseline;margin-bottom:8px;display:flex}.cfl-fortschritt-kopf b{letter-spacing:.06em;text-transform:uppercase;color:var(--text-primary);font-size:12px;font-weight:800}.cfl-fortschritt-zahl{font-variant-numeric:tabular-nums;color:#d4c557!important}.cfl-fortschritt-spur{background:var(--card-edge);border-radius:99px;height:6px;overflow:hidden}.cfl-fortschritt-spur i{background:linear-gradient(90deg,#b8a93f,#d4c557,#3ddc84,#d4c557) 0 0/200% 100%;border-radius:99px;height:100%;transition:width .6s cubic-bezier(.34,1.56,.64,1);animation:3s linear infinite cflFluss;display:block;box-shadow:0 0 12px #d4c55799}@keyframes cflFluss{to{background-position:-200% 0}}.contact-form--lebendig .contact-form-input{border-radius:14px;padding-top:13px;padding-bottom:13px;transition:border-color .25s,box-shadow .3s,background .25s,transform .3s cubic-bezier(.16,1,.3,1)}.contact-form--lebendig .contact-form-input:hover{border-color:#d4c55759}.contact-form--lebendig .contact-form-input:focus{transform:translateY(-2px);box-shadow:0 0 0 4px #d4c55729,0 14px 30px -18px #d4c55799}.contact-form--lebendig input.contact-form-input:required:valid:not(:-moz-placeholder-shown){background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5' fill='none' stroke='%233ddc84' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;border-color:#3ddc8480;padding-right:38px}.contact-form--lebendig input.contact-form-input:required:valid:not(:placeholder-shown){background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5' fill='none' stroke='%233ddc84' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;border-color:#3ddc8480;padding-right:38px}.contact-form--lebendig .contact-form-label{letter-spacing:.04em;font-size:12px}.cfl-chips{flex-wrap:wrap;gap:8px;display:flex}.cfl-chip{cursor:pointer;color:var(--prose-dim);background:var(--card-surface);border:1px solid var(--card-edge);border-radius:99px;padding:8px 13px;font-size:12.5px;font-weight:700;transition:all .28s cubic-bezier(.34,1.56,.64,1)}.cfl-chip:hover{border-color:#d4c55773;transform:translateY(-2px)}.cfl-chip.ist-an{color:#0a0a0a;background:#d4c557;border-color:#d4c557;transform:scale(1.04);box-shadow:0 8px 20px -10px #d4c557cc}.cfl-chip:focus-visible,.cfl-baustein:focus-visible{outline-offset:2px;outline:2px solid #d4c557}.cfl-bausteine{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.cfl-baustein{cursor:pointer;color:var(--prose-dim);border:1px dashed var(--card-edge);background:0 0;border-radius:8px;padding:5px 10px;font-size:11.5px;font-weight:600;transition:all .25s}.cfl-baustein:hover{color:#d4c557;border-color:#d4c55780}.cfl-baustein.ist-an{color:#3ddc84;background:#3ddc8414;border-style:solid;border-color:#3ddc8473}.contact-form--lebendig .contact-form-checkbox-row{background:var(--card-surface);border:1px solid var(--card-edge);border-radius:12px;padding:12px 14px}.contact-form--lebendig .contact-form-submit{transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s;position:relative;overflow:hidden;border-radius:14px!important;padding-top:16px!important;padding-bottom:16px!important;font-size:15px!important}.contact-form--lebendig .contact-form-submit:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 18px 40px -16px #d4c557cc}.contact-form--lebendig .contact-form-submit:not(:disabled):after{content:"";background:linear-gradient(100deg,#0000,#ffffff73,#0000);width:30%;animation:3.2s ease-in-out infinite cflGlanz;position:absolute;top:0;bottom:0;left:0;transform:translate(-150%)skew(-18deg)}@keyframes cflGlanz{0%,55%{transform:translate(-150%)skew(-18deg)}to{transform:translate(450%)skew(-18deg)}}@media (prefers-reduced-motion:reduce){.cfl-fortschritt-spur i,.contact-form--lebendig .contact-form-submit:after{animation:none!important}}
