:root{--rot:#e30613;--gold:#9f885e;--schwarz:#1a1a1a;--grau:#666;--beige:#f5f2ed;--border:#e8e0d4;--weiss:#fff;--gruen:#2a9e4f;--gelb:#d9a300;--sans:"Montserrat","Arial",sans-serif;--serif:"Playfair Display","Georgia",serif;--radius:12px;--shadow:0 1px 2px rgba(0,0,0,.05),0 10px 30px rgba(0,0,0,.06)}*{box-sizing:border-box}html,body{margin:0;padding:0;-webkit-text-size-adjust:100%;text-size-adjust:100%}body{font-family:var(--sans);color:var(--schwarz);background:#faf8f4;line-height:1.55;font-size:16px;-webkit-font-smoothing:antialiased}.wrap{max-width:760px;margin:0 auto;padding:0 18px 120px}header.app{background:var(--weiss);border-bottom:3px solid var(--rot);position:sticky;top:0;z-index:50;box-shadow:0 2px 12px #0000000a}header.app .inner{max-width:760px;margin:0 auto;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;gap:16px}header.app img{height:38px}.hero{padding:30px 0 8px}.hero h1{font-family:var(--serif);font-size:30px;font-weight:700;margin:0 0 8px;line-height:1.15}.hero p{font-size:15.5px;color:var(--grau);margin:0;max-width:600px}.steps{display:flex;gap:6px;margin:24px 0 22px}.steps .s{flex:1;height:5px;border-radius:99px;background:var(--border);transition:.3s}.steps .s.done{background:var(--gold)}.steps .s.active{background:var(--rot)}.card{background:var(--weiss);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:26px 26px 22px;margin-bottom:18px}.section{display:none;animation:fade .25s ease}.section.active{display:block}@keyframes fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}h2.sec{font-family:var(--serif);font-size:22px;font-weight:700;margin:0 0 4px}.seclead{color:var(--grau);font-size:14px;margin:0 0 20px}.grp{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gold);margin:22px 0 10px;padding-top:16px;border-top:1px solid var(--border)}.grp:first-of-type{border-top:none;padding-top:0;margin-top:0}.field{margin:0 0 15px}.field label{display:block;font-size:13.5px;font-weight:600;margin-bottom:5px}.field .hint{font-size:12px;color:var(--grau);margin:2px 0 6px;font-weight:400}.field input,.field select,.field textarea{width:100%;font-family:var(--sans);font-size:15px;padding:11px 13px;border:1px solid var(--border);border-radius:9px;background:#fff;color:var(--schwarz);transition:.12s}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--rot);box-shadow:0 0 0 3px #e306131a}.field.eur{position:relative}.field.eur input{padding-right:32px}.field.eur:after{content:"€";position:absolute;right:13px;bottom:11px;color:var(--grau);font-size:14px;pointer-events:none}.row{display:flex;gap:14px;flex-wrap:wrap;align-items:flex-start}.row .field{flex:1 1 200px}.req{color:var(--rot)}.collapse-toggle{background:none;border:none;color:var(--rot);font-family:var(--sans);font-size:14px;font-weight:600;cursor:pointer;padding:8px 0;text-align:left;display:inline-flex;align-items:center;gap:7px}.collapse-toggle:hover{text-decoration:underline}.collapse-toggle .ct-sym{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border:1.5px solid var(--rot);border-radius:5px;font-size:14px;line-height:1;flex:0 0 auto}.collapse-toggle .ct-opt{font-weight:400;color:var(--grau)}.seg{display:flex;gap:8px;flex-wrap:wrap}.seg label{flex:1 1 auto;border:1px solid var(--border);border-radius:9px;padding:11px 12px;cursor:pointer;background:#fff;transition:.12s;font-size:14px;font-weight:600;text-align:center}.seg label:hover{border-color:var(--gold)}.seg input{display:none}.seg-wrap label{flex:1 1 calc(50% - 4px)}.seg input:checked+span{color:var(--rot)}.seg label.sel{border-color:var(--rot);background:#e306130a;box-shadow:0 0 0 1px var(--rot)}.ampel{border-radius:var(--radius);padding:20px 22px;margin:6px 0 4px;border:2px solid}.ampel .label{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;opacity:.8}.ampel .val{font-family:var(--serif);font-size:26px;font-weight:700;margin:0 0 4px}.ampel .desc{font-size:13.5px}.ampel.gut{border-color:var(--gruen);background:#2a9e4f12}.ampel.gut .val{color:var(--gruen)}.ampel.mittel{border-color:var(--gelb);background:#d9a30014}.ampel.mittel .val{color:#a87c00}.ampel.knapp{border-color:var(--rot);background:#e306130d}.ampel.knapp .val{color:var(--rot)}.ampel.neutral{border-color:var(--border);background:var(--beige)}.ampel.neutral .val{color:var(--grau);font-size:18px}.calcbox{background:var(--beige);border-radius:10px;padding:16px 18px;margin:14px 0;font-size:14px}.calcrow{display:flex;justify-content:space-between;padding:5px 0;border-bottom:1px solid var(--border)}.calcrow:last-child{border-bottom:none;font-weight:700;border-top:2px solid var(--gold);margin-top:4px;padding-top:9px}.calcrow .v{font-variant-numeric:tabular-nums}.note{border-radius:9px;padding:13px 15px;font-size:13.5px;margin:14px 0;border:1px solid}.note .nt{font-weight:700;display:block;margin-bottom:2px}.note.info{background:#eef3f8;border-color:#d3e0ec;color:#2b4a66}.note.gold{background:#f7f3ea;border-color:#e3d5b8;color:#6b5a32}.consent{display:flex;gap:11px;align-items:flex-start;background:var(--beige);border:1px solid var(--border);border-radius:10px;padding:15px;margin:6px 0 4px}.consent input{margin-top:3px;width:18px;height:18px;flex:0 0 auto;accent-color:var(--rot)}.consent label{font-size:13px;color:#4a4640;line-height:1.5}.consent a{color:var(--rot)}.nav{display:flex;justify-content:space-between;gap:12px;margin-top:6px}.btn{font-family:var(--sans);font-size:15px;font-weight:700;padding:13px 24px;border-radius:10px;border:none;cursor:pointer;transition:.15s}.btn.primary{background:var(--rot);color:#fff;box-shadow:0 3px 10px #e3061340}.btn.primary:hover{filter:brightness(1.06);transform:translateY(-1px)}.btn.primary:disabled{background:var(--border);color:#999;box-shadow:none;cursor:not-allowed;transform:none}.btn.ghost{background:transparent;color:var(--schwarz);border:1px solid var(--border)}.btn.ghost:hover{background:var(--beige)}.btn.block{width:100%}.legal{font-size:11px;color:var(--grau);text-align:center;margin-top:16px;line-height:1.5}.invalid{border-color:var(--rot)!important;box-shadow:0 0 0 3px #e306131a!important}.done-screen{text-align:center;padding:30px 10px}.done-screen .big{font-size:54px;line-height:1;margin-bottom:14px}.done-screen h2{font-family:var(--serif);font-size:26px;margin:0 0 10px}.done-screen p{color:var(--grau);font-size:15px;max-width:480px;margin:0 auto 8px}@media(max-width:520px){.wrap{padding:0 10px 110px}.card{padding:20px 15px}header.app .inner{padding:10px 14px}header.app img{height:36px}.hero{padding:18px 0 6px}.hero h1{font-size:25px}.hero p{font-size:14.5px}h2.sec{font-size:21px}.seclead{font-size:14.5px}.row{flex-direction:column;gap:0}.row .field{flex:1 1 auto;width:100%;max-width:none!important}.field{margin-bottom:17px}.field label{font-size:14.5px;margin-bottom:6px}.field .hint{font-size:13px}.field input,.field select,.field textarea{font-size:16px;padding:14px}.field.eur input{padding-right:32px}.field.eur:after{bottom:14px}.pstep-label{display:none!important}.nav{gap:10px}.btn{font-size:16px;padding:15px 20px}.nav .btn.primary{flex:1}.nav .btn.ghost{flex:0 0 auto}.seg label{padding:14px 12px;font-size:15px}.consent label{font-size:13.5px}}#formToast{position:fixed;left:50%;bottom:22px;transform:translate(-50%) translateY(24px);background:var(--rot);color:#fff;padding:13px 20px;border-radius:10px;font-size:14px;font-weight:600;line-height:1.4;box-shadow:0 6px 24px #00000047;opacity:0;pointer-events:none;transition:opacity .25s,transform .25s;z-index:9998;max-width:90%;width:max-content;text-align:center}#formToast.show{opacity:1;transform:translate(-50%) translateY(0)}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0000008c;z-index:9999;display:flex;align-items:center;justify-content:center;padding:16px}.warning-modal{background:#fff;border-radius:16px;max-width:600px;width:100%;max-height:85vh;overflow-y:auto;box-shadow:0 12px 40px #00000040;padding:28px 24px}.warning-modal h3{font-family:var(--serif);font-size:20px;margin:0 0 16px;color:var(--schwarz)}.warning-modal .wm-item{border:1px solid var(--border);border-radius:10px;padding:12px 14px;margin-bottom:10px;background:var(--beige)}.warning-modal .wm-item.fixed{border-color:var(--gruen);background:#f0faf0}.warning-modal .wm-label{font-size:13px;color:var(--grau);margin-bottom:6px}.warning-modal .wm-msg{font-size:14px;color:var(--schwarz);margin-bottom:8px;line-height:1.4}.warning-modal .wm-edit{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.warning-modal .wm-edit label{font-size:12px;color:var(--grau)}.warning-modal .wm-edit input{padding:6px 10px;border:1px solid var(--border);border-radius:6px;font-size:14px;width:120px}.warning-modal .wm-edit .wm-apply{padding:5px 12px;border:none;border-radius:6px;background:var(--gelb);color:var(--schwarz);font-size:12px;font-weight:600;cursor:pointer}.warning-modal .wm-edit .wm-apply:hover{filter:brightness(.95)}.warning-modal .wm-btns{display:flex;gap:10px;margin-top:18px;justify-content:flex-end;flex-wrap:wrap}.warning-modal .wm-btns button{padding:10px 22px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;border:none}.warning-modal .wm-send{background:var(--gruen);color:#fff}.warning-modal .wm-send:hover{filter:brightness(.9)}.warning-modal .wm-cancel{background:transparent;color:var(--grau);border:1px solid var(--border)!important}.warning-modal .wm-cancel:hover{background:var(--beige)}@media(max-width:520px){.warning-modal{padding:20px 16px}.warning-modal .wm-edit input{font-size:16px;flex:1 1 auto;width:auto}.warning-modal .wm-edit .wm-apply{padding:9px 14px}.warning-modal .wm-btns{flex-direction:column-reverse}.warning-modal .wm-btns button{width:100%;padding:13px 22px}}
