[data-offertefunnel]{color:var(--ink-900)}
.offertefunnel{display:grid;gap:24px}
.offertefunnel fieldset{border:0;margin:0;padding:0;min-width:0}
.offertefunnel fieldset[hidden]{display:none}
.offertefunnel legend{font-family:'DM Sans',sans-serif;font-size:clamp(22px,3vw,30px);font-weight:800;line-height:1.15;letter-spacing:-.025em;padding:0;margin:0 0 8px}
.offertefunnel legend:focus{outline:none}
.offertefunnel__intro{color:var(--ink-500);font-size:15px;margin:0 0 24px}
.offertefunnel__top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.offertefunnel__progress{font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-500);margin:0}
.offertefunnel__steps{display:flex;align-items:center;gap:7px}
.offertefunnel__steps span{display:block;width:30px;height:4px;border-radius:999px;background:var(--cream-200)}
.offertefunnel__steps span.is-active{background:var(--accent)}
.offertefunnel__grid{display:grid;grid-template-columns:1fr;gap:20px}
.offertefunnel__field{display:grid;align-content:start;gap:7px;min-width:0}
.offertefunnel__field label{font-family:'DM Sans',sans-serif;font-size:15px;font-weight:700;color:var(--ink-700)}
.offertefunnel__field label span{font-weight:400;color:var(--ink-500);font-size:13px}
.offertefunnel__field label strong{color:var(--accent)}
.offertefunnel input,.offertefunnel select,.offertefunnel textarea{width:100%;padding:12px 14px;border:1px solid var(--line-strong);border-radius:6px;background:#fff;color:var(--ink-900);font:inherit;line-height:1.4;transition:border-color .15s ease,outline-color .15s ease;-webkit-appearance:none;appearance:none}
.offertefunnel select{background-image:linear-gradient(45deg,transparent 50%,var(--ink-500) 50%),linear-gradient(135deg,var(--ink-500) 50%,transparent 50%);background-position:calc(100% - 18px) calc(50% - 2px),calc(100% - 13px) calc(50% - 2px);background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:38px}
.offertefunnel textarea{resize:vertical;min-height:112px}
.offertefunnel input:focus-visible,.offertefunnel select:focus-visible,.offertefunnel textarea:focus-visible,.offertefunnel__upload:focus-within{outline:3px solid color-mix(in srgb,var(--accent) 35%,transparent);outline-offset:1px;border-color:var(--accent)}
.offertefunnel [aria-invalid="true"]{border-color:#9d2f2f}
.offertefunnel__upload{display:grid!important;gap:3px;padding:18px;border:1px dashed var(--line-strong);border-radius:6px;background:var(--cream-100);cursor:pointer}
.offertefunnel__upload-title{font-weight:700!important;color:var(--ink-700)!important;font-size:15px!important}
.offertefunnel__upload-help{font-size:13px!important;color:var(--ink-500)!important}
.offertefunnel__file{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.offertefunnel__files{display:grid;gap:5px;margin:0;padding:0;list-style:none;font-size:13px;color:var(--ink-500)}
.offertefunnel__files li::before{content:'✓';color:var(--accent);font-weight:800;margin-right:7px}
.offertefunnel__error{min-height:0;margin:0;color:#8b2525;font-size:13px}
.offertefunnel__error:empty{display:none}
.offertefunnel__alert{border:1px solid rgba(139,37,37,.35);border-radius:6px;background:#fff7f5;color:#762222;padding:12px 14px;font-size:14px}
.offertefunnel__actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:24px;flex-wrap:wrap}
.offertefunnel__actions--end{justify-content:flex-end}
.offertefunnel__actions .btn{cursor:pointer}
.offertefunnel__actions .btn[disabled]{cursor:wait;opacity:.65}
.offertefunnel__privacy{font-size:12px;line-height:1.55;color:var(--ink-500);margin:16px 0 0;max-width:64ch}
.offertefunnel__privacy a{text-decoration:underline;text-underline-offset:2px}
.offertefunnel__turnstile{min-height:65px;margin-top:22px}
.offertefunnel__security-status{font-size:12px;color:var(--ink-500);margin:6px 0 0}
.offertefunnel__success{padding:clamp(24px,4vw,40px) 0}
.offertefunnel__success h3{font-size:clamp(24px,3vw,34px);margin:8px 0 10px}
.offertefunnel__success p:last-child{color:var(--ink-500);margin:0}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(min-width:680px){.offertefunnel__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.offertefunnel__field--wide{grid-column:1/-1}}
@media(max-width:479px){.offertefunnel__actions{align-items:stretch}.offertefunnel__actions .btn{justify-content:center;flex:1 1 100%}.offertefunnel__actions [data-previous]{order:2}}
@media(prefers-reduced-motion:reduce){.offertefunnel *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
