{"id":17132,"date":"2021-03-08T11:35:50","date_gmt":"2021-03-08T10:35:50","guid":{"rendered":"https:\/\/www.bestfinance.ch\/?page_id=17132"},"modified":"2026-07-27T12:29:44","modified_gmt":"2026-07-27T10:29:44","slug":"domanda-di-credito-svizzera","status":"publish","type":"page","link":"https:\/\/www.bestfinance.ch\/it\/kreditanfrage-schweiz\/","title":{"rendered":"Richiesta di credito Svizzera"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"17132\" class=\"elementor elementor-17132\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-373d62e e-flex e-con-boxed e-con e-parent\" data-id=\"373d62e\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;gradient&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-9a45207 elementor-widget elementor-widget-spacer\" data-id=\"9a45207\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"spacer.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-68c5a058 e-flex e-con-boxed e-con e-parent\" data-id=\"68c5a058\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5c08ac7 elementor-widget elementor-widget-shortcode\" data-id=\"5c08ac7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"> <script>window.BF_KREDIT_CFG = {\"ENDPOINT\":\"\/wp-json\/bestfinance\/v1\/submit\",\"PLZ_ENDPOINT\":\"\/wp-json\/bestfinance\/v1\/gemeinden\",\"THANKYOU_URLS\":{\"de\":\"https:\/\/www.bestfinance.ch\/danke\/\",\"fr\":\"https:\/\/www.bestfinance.ch\/fr\/merci-bcp\/\",\"it\":\"https:\/\/www.bestfinance.ch\/it\/grazie-mille\/\",\"pt\":\"https:\/\/www.bestfinance.ch\/pt\/muito-obrigado\/\",\"es\":\"https:\/\/www.bestfinance.ch\/es\/muchas-gracias\/\",\"en\":\"https:\/\/www.bestfinance.ch\/en\/thankyou\/\"},\"THANKYOU_URL\":\"https:\/\/www.bestfinance.ch\/danke\/\",\"LEGAL_URLS\":{\"de\":\"https:\/\/www.bestfinance.ch\/legal-information-bf\/\",\"fr\":\"\",\"it\":\"\",\"pt\":\"\",\"es\":\"\",\"en\":\"\"},\"LEGAL_URL\":\"https:\/\/www.bestfinance.ch\/legal-information-bf\/\",\"PRIVACY_URLS\":{\"de\":\"https:\/\/www.bestfinance.ch\/privacy-policy-bf\/\",\"fr\":\"\",\"it\":\"\",\"pt\":\"\",\"es\":\"\",\"en\":\"\"},\"PRIVACY_URL\":\"https:\/\/www.bestfinance.ch\/privacy-policy-bf\/\",\"MIN_AGE\":18,\"MAX_AGE\":68,\"MAX_AGE_END\":65,\"CH_STOP_MONTHS\":12,\"CH_HINT_MONTHS\":24,\"PROBEZEIT_MONTHS\":3,\"SCORING_MONTHS\":12,\"MIN_INCOME\":3000,\"MIN_INCOME_HINT\":4000,\"LANG\":\"it\"};<\/script><div class=\"cc-root notranslate\" translate=\"no\" data-no-translation style=\"--cc-accent:#1A3B8C;--cc-accent-d:#122A66;--cc-accent-s:#E9EDF7;--cc-accent-b:#CBD6EE;--cc-ink:#0E1A24;--cc-muted:#5C6B76;--cc-line:#E3E8EC;--cc-field:#FFFFFF;--cc-bg:#F6F8F9;--cc-error:#C0392B;--cc-error-s:#FBECEA;--cc-ok:#1B7F5B\" data-bf-form=\"mittel\">\r\n  <style>\r\n    .cc-root, .cc-root *, .cc-root *::before, .cc-root *::after { box-sizing: border-box; }\r\n    .cc-root {\r\n      --cc-ink:      #0E1A24;\r\n      --cc-muted:    #5C6B76;\r\n      --cc-line:     #E3E8EC;\r\n      --cc-field:    #FFFFFF;\r\n      --cc-bg:       #F6F8F9;\r\n      --cc-accent:   #1A3B8C;\r\n      --cc-accent-d: #122A66;\r\n      --cc-accent-s: #E9EDF7;\r\n      --cc-accent-b: #CBD6EE;\r\n      --cc-error:    #C0392B;\r\n      --cc-error-s:  #FBECEA;\r\n      --cc-radius:   16px;\r\n      --cc-radius-s: 12px;\r\n      --cc-font: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif;\r\n      font-family: var(--cc-font);\r\n      color: var(--cc-ink);\r\n      line-height: 1.5;\r\n      -webkit-font-smoothing: antialiased;\r\n      max-width: 560px;\r\n      margin: 0 auto;\r\n      padding: 4px;\r\n    }\r\n    .cc-root h2 { font-size: 26px; font-weight: 700; letter-spacing: -0.02em; margin: 0 0 4px; }\r\n    .cc-root .cc-lead { color: var(--cc-muted); margin: 0 0 16px; font-size: 16px; }\r\n\r\n    \/* ---- Fortschritt ---- *\/\r\n    .cc-root .cc-progress { margin: 0 0 16px; }\r\n    .cc-root .cc-progress-top { display: flex; justify-content: space-between; align-items: baseline; font-size: 13px; font-weight: 700; color: var(--cc-muted); margin-bottom: 8px; gap: 10px; }\r\n    .cc-root .cc-progress-top #ccStepTitle { color: var(--cc-accent-d); text-align: right; }\r\n    .cc-root .cc-progress-bar { height: 8px; background: var(--cc-line); border-radius: 8px; overflow: hidden; }\r\n    .cc-root .cc-progress-fill { height: 100%; width: 14%; border-radius: 8px; background: linear-gradient(90deg, var(--cc-accent), #3457B5); transition: width .3s ease; }\r\n\r\n    \/* ---- Steps ---- *\/\r\n    .cc-root .cc-step { display: none; }\r\n    .cc-root .cc-step.cc-active { display: block; animation: cc-fade .25s ease; }\r\n    @keyframes cc-fade { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }\r\n\r\n    .cc-root .cc-card {\r\n      background: var(--cc-bg); border: 1px solid var(--cc-line);\r\n      border-radius: var(--cc-radius); padding: 18px 16px; margin-bottom: 14px;\r\n    }\r\n    .cc-root .cc-sec-title {\r\n      font-size: 14px; font-weight: 700; text-transform: uppercase;\r\n      letter-spacing: .08em; color: var(--cc-accent-d);\r\n      margin: 0 0 14px; display: flex; align-items: center; gap: 8px;\r\n    }\r\n    .cc-root .cc-sec-title span.num {\r\n      display: inline-flex; align-items: center; justify-content: center;\r\n      width: 22px; height: 22px; border-radius: 50%;\r\n      background: var(--cc-accent); color: #fff; font-size: 13px;\r\n    }\r\n    .cc-root .cc-field { margin-bottom: 14px; }\r\n    .cc-root .cc-field:last-child { margin-bottom: 0; }\r\n    .cc-root .cc-row { display: flex; gap: 10px; }\r\n    .cc-root .cc-row > * { flex: 1 1 0; min-width: 0; }\r\n    .cc-root label.cc-lbl { display: block; font-size: 16px; font-weight: 600; margin-bottom: 6px; color: var(--cc-ink); }\r\n    .cc-root .cc-req { color: var(--cc-accent); }\r\n\r\n    .cc-root input[type=text], .cc-root input[type=tel], .cc-root input[type=email],\r\n    .cc-root input[type=number], .cc-root select, .cc-root textarea {\r\n      width: 100%; font-family: inherit; font-size: 16px; color: var(--cc-ink);\r\n      background: var(--cc-field); border: 1.5px solid var(--cc-line);\r\n      border-radius: var(--cc-radius-s); padding: 14px 14px; min-height: 52px;\r\n      appearance: none; -webkit-appearance: none; transition: border-color .15s, box-shadow .15s;\r\n    }\r\n    .cc-root textarea { min-height: 96px; resize: vertical; line-height: 1.5; }\r\n    .cc-root input:focus, .cc-root select:focus, .cc-root textarea:focus {\r\n      outline: none; border-color: var(--cc-accent); box-shadow: 0 0 0 3px var(--cc-accent-s);\r\n    }\r\n    .cc-root input::placeholder, .cc-root textarea::placeholder { color: #A5B0B8; }\r\n    .cc-root input[readonly] { background: var(--cc-bg); color: var(--cc-muted); cursor: default; }\r\n    .cc-root select {\r\n      background-image: url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%235C6B76' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'\/%3E%3C\/svg%3E\");\r\n      background-repeat: no-repeat; background-position: right 14px center; padding-right: 40px;\r\n    }\r\n    .cc-root .cc-invalid input, .cc-root .cc-invalid select, .cc-root .cc-invalid textarea { border-color: var(--cc-error); background: var(--cc-error-s); }\r\n    .cc-root .cc-err-msg { display: none; color: var(--cc-error); font-size: 14px; margin-top: 5px; font-weight: 600; }\r\n    .cc-root .cc-invalid .cc-err-msg { display: block; }\r\n\r\n    .cc-root .cc-slider-head { display: flex; align-items: baseline; justify-content: space-between; margin-bottom: 10px; }\r\n    .cc-root .cc-slider-val { font-size: 26px; font-weight: 700; letter-spacing: -0.02em; color: var(--cc-accent-d); }\r\n    .cc-root .cc-slider-val small { font-size: 16px; font-weight: 600; color: var(--cc-muted); }\r\n    .cc-root input[type=range] {\r\n      -webkit-appearance: none; appearance: none; width: 100%; height: 8px; border-radius: 8px;\r\n      padding: 0; min-height: 0; background: var(--cc-line); outline: none; margin: 6px 0 4px;\r\n    }\r\n    .cc-root input[type=range]::-webkit-slider-thumb {\r\n      -webkit-appearance: none; appearance: none; width: 30px; height: 30px; border-radius: 50%;\r\n      background: var(--cc-accent); border: 4px solid #fff; box-shadow: 0 2px 8px rgba(26,59,140,.4); cursor: pointer;\r\n    }\r\n    .cc-root input[type=range]::-moz-range-thumb {\r\n      width: 30px; height: 30px; border-radius: 50%; background: var(--cc-accent);\r\n      border: 4px solid #fff; box-shadow: 0 2px 8px rgba(26,59,140,.4); cursor: pointer;\r\n    }\r\n    .cc-root .cc-slider-scale { display: flex; justify-content: space-between; font-size: 13px; color: var(--cc-muted); margin-top: 2px; }\r\n\r\n    .cc-root .cc-rate {\r\n      margin-top: 16px; padding: 16px; border-radius: var(--cc-radius-s);\r\n      background: var(--cc-accent-s); border: 1px solid var(--cc-accent-b);\r\n      display: flex; align-items: center; justify-content: space-between; gap: 12px;\r\n    }\r\n    .cc-root .cc-rate-main { line-height: 1.2; }\r\n    .cc-root .cc-rate-label { font-size: 14px; color: var(--cc-accent-d); font-weight: 600; }\r\n    .cc-root .cc-rate-big { font-size: 18px; font-weight: 800; color: var(--cc-accent-d); letter-spacing: -.02em; }\r\n    .cc-root .cc-rate-big small { font-size: 16px; font-weight: 700; }\r\n    .cc-root .cc-rate-side { text-align: right; font-size: 14px; color: var(--cc-muted); line-height: 1.35; }\r\n    .cc-root .cc-rate-side b { color: var(--cc-ink); font-weight: 700; }\r\n    .cc-root .cc-rate-note { font-size: 13px; color: var(--cc-muted); margin-top: 6px; }\r\n\r\n    \/* ---- Auswahl-Zusammenfassung statt Rechner (v2.2.0) ---- *\/\r\n    .cc-root .cc-pick-grid { display: flex; gap: 12px; flex-wrap: wrap; }\r\n    .cc-root .cc-pick-item {\r\n      flex: 1 1 140px; padding: 12px 14px; border-radius: var(--cc-radius-s);\r\n      background: #fff; border: 1px solid var(--cc-accent-b);\r\n    }\r\n    .cc-root .cc-pick-lbl { display: block; font-size: 13px; color: var(--cc-muted); font-weight: 600; }\r\n    .cc-root .cc-pick-val { display: block; font-size: 20px; font-weight: 800; color: var(--cc-ink); letter-spacing: -.02em; margin-top: 2px; }\r\n    .cc-root .cc-pick-val small { font-size: 15px; font-weight: 700; color: var(--cc-muted); }\r\n    .cc-root .cc-pick-btn {\r\n      font-family: inherit; font-size: 15px; font-weight: 700; border-radius: var(--cc-radius);\r\n      min-height: 52px; width: 100%; margin-top: 14px; cursor: pointer; padding: 14px;\r\n      background: #fff; color: var(--cc-accent-d); border: 1.5px solid var(--cc-accent-b);\r\n      transition: background .15s, transform .05s;\r\n    }\r\n    .cc-root .cc-pick-btn:hover { background: var(--cc-accent-s); }\r\n    .cc-root .cc-pick-btn:active { transform: translateY(1px); }\r\n    @media (max-width: 480px) { .cc-root .cc-pick-item { flex: 1 1 100%; } }\r\n\r\n    \/* ---- Verwendungszweck visuell abgesetzt (v2.2.2) ---- *\/\r\n    .cc-root .cc-purpose {\r\n      margin-top: 18px; padding: 16px; border-radius: var(--cc-radius-s);\r\n      background: #fff; border: 1px solid var(--cc-accent-b);\r\n      box-shadow: 0 2px 8px rgba(26,59,140,.06);\r\n    }\r\n    .cc-root .cc-purpose .cc-field { margin-bottom: 0; }\r\n    .cc-root .cc-purpose .cc-hint { margin-top: 8px; }\r\n    .cc-root .cc-sub { font-size: 16px; font-weight: 700; color: var(--cc-ink); margin: 2px 0 12px; padding-bottom: 6px; border-bottom: 1px solid var(--cc-line); }\r\n    .cc-root .cc-sub2 { margin-top: 18px; }\r\n    .cc-root .cc-panel2 { background: #EEF2FB; border: 1px solid #CBD6EE; border-left: 4px solid var(--cc-accent); border-radius: 12px; padding: 14px 16px 4px; margin-top: 10px; }\r\n    .cc-root .cc-panel2 .cc-sub2 { margin-top: 2px; color: var(--cc-accent-d); }\r\n    .cc-root .cc-card-hero { position: relative; overflow: hidden; background: linear-gradient(135deg, #EEF3FC 0%, #E2E9F7 100%); border: 1px solid var(--cc-accent-b); box-shadow: 0 10px 30px rgba(26,59,140,.16); padding-top: 22px; }\r\n    .cc-root .cc-card-hero::before { content: \"\"; position: absolute; top: 0; left: 0; right: 0; height: 5px; background: linear-gradient(90deg, var(--cc-accent), #3457B5); }\r\n    .cc-root .cc-warn { margin-top: 12px; padding: 14px 16px; border-radius: 12px; background: #FBECEA; border: 1px solid #E9C4BF; color: #9B2C22; font-size: 14px; font-weight: 600; line-height: 1.45; }\r\n\r\n    \/* ---- Hinweisboxen (v2.5.0) \u2013 bewusst aus den bestehenden Tokens abgeleitet ---- *\/\r\n    .cc-root .cc-note { margin-top: 10px; padding: 13px 15px; border-radius: 12px; font-size: 14px; line-height: 1.5; }\r\n    .cc-root .cc-note strong { font-weight: 800; }\r\n    .cc-root .cc-note-info { background: #EEF3FC; border: 1px solid var(--cc-accent-b); border-left: 4px solid var(--cc-accent); color: var(--cc-accent-d); }\r\n    .cc-root .cc-note-warn { background: #FFF8E8; border: 1px solid #EFD9A6; border-left: 4px solid #C08A12; color: #7A5406; font-weight: 600; }\r\n    .cc-root .cc-note-stop { background: var(--cc-error-s); border: 1px solid #E9C4BF; border-left: 4px solid var(--cc-error); color: #9B2C22; font-weight: 600; }\r\n\r\n    .cc-root .cc-addbtn {\r\n      font-family: inherit; font-size: 14px; font-weight: 600; color: var(--cc-accent-d);\r\n      background: var(--cc-accent-s); border: 1px dashed var(--cc-accent-b);\r\n      border-radius: var(--cc-radius-s); padding: 12px; width: 100%; cursor: pointer; margin-top: 2px;\r\n    }\r\n    .cc-root .cc-addbtn:hover { background: #DCE4F4; }\r\n    .cc-root .cc-addbtn.cc-hidden { display: none; }\r\n\r\n    .cc-root .cc-seg { display: flex; gap: 8px; }\r\n    .cc-root .cc-seg.cc-seg-stack { flex-direction: column; }\r\n    .cc-root .cc-seg.cc-seg-stack button { text-align: left; padding: 0 16px; }\r\n    .cc-root .cc-vers-opts { margin-top: 14px; }\r\n    .cc-root .cc-vers-opts.cc-invalid .cc-err-msg { display: block; }\r\n    .cc-root .cc-vers-card { position: relative; border: 2px solid var(--cc-line); border-radius: var(--cc-radius); overflow: hidden; margin-bottom: 12px; cursor: pointer; background: #fff; transition: border-color .15s, box-shadow .15s; }\r\n    .cc-root .cc-vers-card[aria-selected=\"true\"] { border-color: var(--cc-accent); box-shadow: 0 0 0 3px var(--cc-accent-s); }\r\n    .cc-root .cc-vers-head { padding: 14px 16px 12px; color: #fff; position: relative; }\r\n    .cc-root .cc-vers-basic { background: linear-gradient(135deg,#c0392b,#e74c3c); }\r\n    .cc-root .cc-vers-premium { background: linear-gradient(135deg,#8e44ad,#9b59b6); }\r\n    .cc-root .cc-vers-badge { position: absolute; top: 0; right: 0; background: rgba(255,255,255,.22); font-size: 10px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; padding: 4px 10px; border-radius: 0 12px 0 10px; }\r\n    .cc-root .cc-vers-name { font-size: 17px; font-weight: 800; }\r\n    .cc-root .cc-vers-sub { font-size: 13px; opacity: .9; }\r\n    .cc-root .cc-vers-body { display: flex; gap: 14px; align-items: center; padding: 14px 16px; }\r\n    .cc-root .cc-vers-price { flex: 0 0 auto; font-weight: 800; color: var(--cc-ink); line-height: 1; }\r\n    .cc-root .cc-vers-price b { font-size: 30px; } .cc-root .cc-vers-price small { font-size: 13px; color: var(--cc-muted); }\r\n    .cc-root .cc-vers-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; font-size: 14px; color: var(--cc-ink); }\r\n    .cc-root .cc-vers-list li { padding-left: 20px; position: relative; }\r\n    .cc-root .cc-vers-list li::before { content: \"\u2713\"; position: absolute; left: 0; color: var(--cc-accent); font-weight: 800; }\r\n    .cc-root .cc-vers-foot { font-size: 12px; color: var(--cc-muted); padding: 0 16px 12px; line-height: 1.5; }\r\n    .cc-root .cc-vers-check { display: none; position: absolute; top: 10px; left: 10px; z-index: 2; background: var(--cc-accent); color: #fff; font-size: 12px; font-weight: 700; padding: 3px 9px; border-radius: 99px; }\r\n    .cc-root .cc-vers-card[aria-selected=\"true\"] .cc-vers-check { display: inline-block; }\r\n    .cc-root .cc-info-btn {\r\n      display: inline-flex; align-items: center; justify-content: center;\r\n      width: 18px; height: 18px; margin-left: 6px; padding: 0;\r\n      border: 1.5px solid var(--cc-accent); border-radius: 50%;\r\n      background: transparent; color: var(--cc-accent); font-size: 12px; font-weight: 700;\r\n      line-height: 1; cursor: pointer; vertical-align: middle; font-family: inherit;\r\n    }\r\n    .cc-root .cc-info-btn:hover { background: var(--cc-accent); color: #fff; }\r\n    .cc-root .cc-info-box { margin: 8px 0 10px; padding: 10px 12px; border: 1px solid var(--cc-line); border-radius: var(--cc-radius-s); background: var(--cc-bg); color: var(--cc-muted); font-size: 13.5px; line-height: 1.5; }\r\n    .cc-root .cc-seg button {\r\n      flex: 1; font-family: inherit; font-size: 16px; font-weight: 600; min-height: 52px;\r\n      border: 1.5px solid var(--cc-line); background: var(--cc-field); color: var(--cc-ink);\r\n      border-radius: var(--cc-radius-s); cursor: pointer; transition: all .15s;\r\n    }\r\n    .cc-root .cc-seg button[aria-pressed=\"true\"] { background: var(--cc-accent); border-color: var(--cc-accent); color: #fff; }\r\n\r\n    .cc-root .cc-check { display: flex; align-items: flex-start; gap: 12px; cursor: pointer; }\r\n    .cc-root .cc-check input { position: absolute; opacity: 0; width: 0; height: 0; }\r\n    .cc-root .cc-box {\r\n      flex: 0 0 auto; width: 26px; height: 26px; margin-top: 1px; border: 2px solid var(--cc-line);\r\n      border-radius: 8px; background: #fff; display: inline-flex; align-items: center; justify-content: center; transition: all .15s;\r\n    }\r\n    .cc-root .cc-box svg { width: 16px; height: 16px; opacity: 0; transition: opacity .1s; }\r\n    .cc-root .cc-check input:checked + .cc-box { background: var(--cc-accent); border-color: var(--cc-accent); }\r\n    .cc-root .cc-check input:checked + .cc-box svg { opacity: 1; }\r\n    .cc-root .cc-check input:focus-visible + .cc-box { box-shadow: 0 0 0 3px var(--cc-accent-s); }\r\n    .cc-root .cc-check-txt { font-size: 15px; color: var(--cc-ink); }\r\n    .cc-root .cc-check-txt a { color: var(--cc-accent-d); font-weight: 600; }\r\n    .cc-root .cc-comm-row { display: flex; gap: 10px; }\r\n    .cc-root .cc-comm-row > .cc-check { flex: 1 1 0; min-width: 0; align-items: center; }\r\n    .cc-root .cc-comm-box { background: var(--cc-bg); border: 1px solid var(--cc-line); border-radius: var(--cc-radius-s); padding: 14px; }\r\n    .cc-root .cc-legal-sep { margin: 20px 0 12px; padding-top: 16px; border-top: 1px solid var(--cc-line); font-size: 15px; font-weight: 700; color: var(--cc-accent-d); }\r\n    .cc-root .cc-modal { position: fixed; inset: 0; z-index: 99999; display: none; align-items: center; justify-content: center; background: rgba(0,0,0,.55); padding: 16px; box-sizing: border-box; }\r\n    .cc-root .cc-modal.open { display: flex; }\r\n    .cc-root .cc-modal-box { position: relative; width: 100%; max-width: 900px; height: 85vh; background: #fff; border-radius: 12px; overflow: hidden; box-shadow: 0 20px 60px rgba(0,0,0,.35); }\r\n    .cc-root .cc-modal-iframe { width: 100%; height: 100%; border: 0; display: block; }\r\n    .cc-root .cc-modal-close { position: absolute; top: 10px; right: 10px; width: 42px; height: 42px; padding: 0; border: none; border-radius: 50%; background: #e11d48; color: #fff; font-size: 26px; line-height: 1; cursor: pointer; display: flex; align-items: center; justify-content: center; z-index: 2; box-shadow: 0 2px 8px rgba(0,0,0,.3); }\r\n    .cc-root .cc-modal-close:hover { background: #be123c; }\r\n    @media (max-width: 480px) {\r\n      .cc-root .cc-modal-box { height: 92vh; }\r\n      .cc-root .cc-modal-close { top: auto; bottom: 16px; right: 16px; width: 46px; height: 46px; font-size: 28px; }\r\n    }\r\n    .cc-root .cc-inline { display: flex; gap: 12px; align-items: center; }\r\n    .cc-root .cc-inline .cc-num { flex: 1 1 auto; }\r\n    .cc-root .cc-inline .cc-check { flex: 0 0 auto; margin: 0; white-space: nowrap; }\r\n    .cc-root .cc-info { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 18px; height: 18px; border-radius: 50%; background: var(--cc-accent); color: #fff; font-size: 12px; font-weight: 700; font-style: normal; cursor: help; margin-left: 6px; user-select: none; }\r\n    .cc-root .cc-info:hover::after, .cc-root .cc-info:focus::after {\r\n      content: attr(data-tip); position: absolute; left: 50%; bottom: 140%; transform: translateX(-50%);\r\n      width: 230px; background: var(--cc-accent-d); color: #fff; font-size: 13px; font-weight: 400; line-height: 1.4;\r\n      padding: 8px 10px; border-radius: 8px; box-shadow: 0 4px 14px rgba(0,0,0,.18); z-index: 5; white-space: normal;\r\n    }\r\n    .cc-root .cc-highlight { background: #EEF3FC; border: 1px solid var(--cc-accent-b); border-left: 4px solid var(--cc-accent); border-radius: 10px; padding: 12px 14px; margin-top: 4px; }\r\n    .cc-root .cc-highlight .cc-lbl { color: var(--cc-accent-d); font-weight: 700; }\r\n    .cc-root .cc-consent.cc-invalid .cc-box { border-color: var(--cc-error); }\r\n\r\n    \/* ---- Navigation ---- *\/\r\n    .cc-root .cc-nav { display: flex; gap: 10px; margin-top: 4px; }\r\n    .cc-root .cc-btn {\r\n      font-family: inherit; font-size: 16px; font-weight: 700; border-radius: var(--cc-radius);\r\n      min-height: 56px; cursor: pointer; padding: 16px; transition: background .15s, transform .05s;\r\n    }\r\n    .cc-root .cc-btn:active { transform: translateY(1px); }\r\n    .cc-root .cc-btn-back { flex: 0 0 34%; background: #fff; color: var(--cc-accent-d); border: 1.5px solid var(--cc-line); }\r\n    .cc-root .cc-btn-back:hover { background: var(--cc-bg); }\r\n    .cc-root .cc-btn-next { flex: 1 1 auto; background: var(--cc-accent); color: #fff; border: none; box-shadow: 0 4px 14px rgba(26,59,140,.28); }\r\n    .cc-root .cc-btn-next:hover { background: var(--cc-accent-d); }\r\n\r\n    .cc-root .cc-submit {\r\n      flex: 1 1 auto; width: auto; font-family: inherit; font-size: 18px; font-weight: 700;\r\n      color: #fff; background: var(--cc-accent); border: none; border-radius: var(--cc-radius);\r\n      padding: 16px; min-height: 56px; cursor: pointer; transition: background .15s, transform .05s;\r\n      box-shadow: 0 4px 14px rgba(26,59,140,.28);\r\n    }\r\n    .cc-root .cc-submit:hover { background: var(--cc-accent-d); }\r\n    .cc-root .cc-submit:active { transform: translateY(1px); }\r\n    .cc-root .cc-submit:disabled { opacity: .65; cursor: default; }\r\n    .cc-root .cc-submit .cc-spin {\r\n      display: none; width: 18px; height: 18px; border: 2.5px solid rgba(255,255,255,.5);\r\n      border-top-color: #fff; border-radius: 50%; vertical-align: -3px; margin-right: 8px; animation: cc-spin .7s linear infinite;\r\n    }\r\n    .cc-root .cc-submit.is-loading .cc-spin { display: inline-block; }\r\n    @keyframes cc-spin { to { transform: rotate(360deg); } }\r\n\r\n    .cc-root .cc-form-msg { display: none; margin-top: 14px; padding: 14px 16px; border-radius: var(--cc-radius-s); font-size: 16px; font-weight: 600; background: var(--cc-error-s); color: var(--cc-error); }\r\n    .cc-root .cc-form-msg.show { display: block; }\r\n    .cc-root .cc-hint { font-size: 14px; color: var(--cc-muted); margin-top: 6px; }\r\n    .cc-root .cc-hidden { display: none !important; }\r\n    .cc-root .cc-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }\r\n\r\n    @media (prefers-reduced-motion: reduce) {\r\n      .cc-root .cc-submit .cc-spin { animation: none; }\r\n      .cc-root * { transition: none !important; animation: none !important; }\r\n    }\r\n    \/* v3.1.1: Auf sehr schmalen Geraeten werden Zeilen gestapelt - AUSSER den\r\n       Zeilen, die inhaltlich zusammengehoeren und nebeneinander bleiben\r\n       muessen (.cc-row-keep): Strasse\/Nr., PLZ\/Ort\/Kanton, Datumsfelder,\r\n       Telefonvorwahl\/Nummer. Vorher galt die Stapelung fuer alle Zeilen. *\/\r\n    @media (max-width: 400px) {\r\n      .cc-root .cc-row:not(.cc-row-keep) { flex-direction: column; gap: 0; }\r\n      .cc-root .cc-row:not(.cc-row-keep) > * { margin-bottom: 14px; }\r\n    }\r\n    @media (max-width: 600px) {\r\n      .cc-root label.cc-lbl, .cc-root input[type=text], .cc-root input[type=tel], .cc-root input[type=email],\r\n      .cc-root input[type=number], .cc-root select, .cc-root textarea, .cc-root .cc-sub, .cc-root .cc-lead { font-size: 17px; }\r\n      .cc-root .cc-check-txt { font-size: 16px; line-height: 1.45; }\r\n      .cc-root .cc-hint, .cc-root .cc-err-msg, .cc-root .cc-sec-title, .cc-root .cc-info-box, .cc-root .cc-addbtn { font-size: 15px; }\r\n      .cc-root .cc-note { font-size: 15px; }\r\n      .cc-root .cc-rate-note, .cc-root .cc-slider-scale { font-size: 14px; }\r\n      .cc-root .cc-rate-label { font-size: 13px; white-space: nowrap; }\r\n      .cc-root .cc-rate-big { font-size: 22px; }\r\n      .cc-root .cc-vers-name { font-size: 18px; }\r\n      .cc-root .cc-vers-list { font-size: 15px; }\r\n      .cc-root .cc-legal-sep { font-size: 16px; }\r\n    }\r\n    \/* v3.1.1: In den zusammenhaengenden Zeilen etwas Platz sparen, damit\r\n       PLZ\/Ort\/Kanton, Tag\/Monat\/Jahr und Telefon auch auf 360 px nebeneinander\r\n       passen. Schriftgroesse bleibt bei 16px - darunter zoomt iOS beim Fokus. *\/\r\n    @media (max-width: 480px) {\r\n      .cc-root .cc-row-keep { gap: 8px; }\r\n      .cc-root .cc-row-keep input, .cc-root .cc-row-keep select { font-size: 16px; padding-left: 10px; padding-right: 10px; }\r\n      .cc-root .cc-row-keep select { padding-right: 26px; background-position: right 8px center; }\r\n      .cc-root .cc-row-keep .cc-lbl { font-size: 15px; }\r\n    }\r\n  <\/style>\r\n\r\n  <form id=\"ccForm\" novalidate autocomplete=\"on\">\r\n\r\n    <h2>Richiesta di credito<\/h2>\r\n    <p class=\"cc-lead\">Senza impegno e gratuito. Tutti i dati vengono trattati in modo confidenziale.<\/p>\r\n\r\n    <!-- Fortschritt -->\r\n    <div class=\"cc-progress\">\r\n      <div class=\"cc-progress-top\">\r\n        <span id=\"ccStepLabel\">Passo 1 di 7<\/span>\r\n        <span id=\"ccStepTitle\">Credito desiderato<\/span>\r\n      <\/div>\r\n      <div class=\"cc-progress-bar\"><div class=\"cc-progress-fill\" id=\"ccProgressFill\"><\/div><\/div>\r\n    <\/div>\r\n\r\n    <!-- v3.2.0: Schritt-Titel & Schrittw\u00f6rter als versteckt gerendertes HTML, damit\r\n         TranslatePress sie schon beim ersten Laden \u00fcbersetzt. Das JS unten liest die\r\n         Texte aus diesen Elementen statt aus fest verdrahteten JS-Strings. -->\r\n    <div id=\"ccStepTitleSrc\" style=\"display:none\" aria-hidden=\"true\">\r\n      <div>Credito desiderato<\/div>\r\n      <div>Dati personali<\/div>\r\n      <div>Contatto e consenso<\/div>\r\n      <div>Abitazione e famiglia<\/div>\r\n      <div>Reddito e occupazione<\/div>\r\n      <div>Riepilogo e invio<\/div>\r\n    <\/div>\r\n    <div id=\"ccStepWordSrc\" style=\"display:none\" aria-hidden=\"true\">\r\n      <div>Passo<\/div>\r\n      <div>di<\/div>\r\n    <\/div>\r\n\r\n    <!-- ============ STEP 1: KREDITWUNSCH ============ -->\r\n    <div class=\"cc-step\" data-step=\"0\">\r\n      <div class=\"cc-card cc-card-hero\">\r\n        <p class=\"cc-sec-title\"><span class=\"num\">1<\/span> Il Suo credito desiderato<\/p>\r\n\r\n        <!-- Auswahl-Zusammenfassung (nur sichtbar bei ?r=0, v2.2.1) -->\r\n        <div id=\"ccPickBox\" hidden>\r\n          <div class=\"cc-pick-grid\">\r\n            <div class=\"cc-pick-item\">\r\n              <span class=\"cc-pick-lbl\" id=\"ccPickBetragLbl\">Il Suo importo di credito<\/span>\r\n              <span class=\"cc-pick-val\"><span id=\"ccPickBetrag\">\u2013<\/span> <small>CHF<\/small><\/span>\r\n            <\/div>\r\n            <div class=\"cc-pick-item\">\r\n              <span class=\"cc-pick-lbl\" id=\"ccPickLaufzeitLbl\">La Sua durata<\/span>\r\n              <span class=\"cc-pick-val\"><span id=\"ccPickLaufzeit\">\u2013<\/span> <small id=\"ccPickMonate\">Mesi<\/small><\/span>\r\n            <\/div>\r\n          <\/div>\r\n          <div class=\"cc-rate\">\r\n            <div class=\"cc-rate-main\">\r\n              <div class=\"cc-rate-label\" id=\"ccPickRateLbl\">Rata mensile a partire da<\/div>\r\n              <div class=\"cc-rate-big\"><span id=\"ccPickRateMin\">\u2013<\/span> <small>CHF<\/small><\/div>\r\n            <\/div>\r\n            <div class=\"cc-rate-side\">\r\n              <span id=\"ccPickSide1\">al miglior tasso<\/span> <b><span id=\"ccPickZinsMin\">4.9<\/span>%<\/b><br>\r\n              <span id=\"ccPickSide2\">fino a<\/span> <span id=\"ccPickRateMax\">\u2013<\/span> CHF <span id=\"ccPickSide3\">a<\/span> <span id=\"ccPickZinsMax\">9.95<\/span>%\r\n            <\/div>\r\n          <\/div>\r\n          <p class=\"cc-rate-note\"><span id=\"ccPickNoteTxt\">Valore indicativo senza impegno. Il tasso d'interesse annuo effettivo dipende dalla Sua solvibilit\u00e0<\/span> (<span id=\"ccPickZinsMinN\">4.9<\/span>%\u2013<span id=\"ccPickZinsMaxN\">9.95<\/span>% p.a.).<\/p>\r\n          <button type=\"button\" class=\"cc-pick-btn\" id=\"ccPickChange\" aria-expanded=\"false\" aria-controls=\"ccCalcWrap\">Modificare importo o durata<\/button>\r\n        <\/div>\r\n\r\n        <!-- Kreditrechner -->\r\n        <div id=\"ccCalcWrap\">\r\n        <div class=\"cc-field\">\r\n          <div class=\"cc-slider-head\">\r\n            <label class=\"cc-lbl\" for=\"ccBetrag\" style=\"margin:0\">Importo di credito<\/label>\r\n            <span class=\"cc-slider-val\"><span id=\"ccBetragTxt\">20\u2019000<\/span> <small>CHF<\/small><\/span>\r\n          <\/div>\r\n          <input type=\"range\" id=\"ccBetrag\" min=\"0\" max=\"119\" step=\"1\" value=\"15\">\r\n          <div class=\"cc-slider-scale\"><span id=\"ccScaleMin\">5\u2019000<\/span><span id=\"ccScaleMax\">300\u2019000<\/span><\/div>\r\n          <input type=\"hidden\" name=\"Kreditbetrag\" id=\"ccBetragHidden\" value=\"20000\">\r\n        <\/div>\r\n        <div class=\"cc-field\">\r\n          <div class=\"cc-slider-head\">\r\n            <label class=\"cc-lbl\" for=\"ccLaufzeit\" style=\"margin:0\">Durata<\/label>\r\n            <span class=\"cc-slider-val\"><span id=\"ccLaufzeitTxt\">36<\/span> <small>Mesi<\/small><\/span>\r\n          <\/div>\r\n          <input type=\"range\" id=\"ccLaufzeit\" min=\"0\" max=\"7\" step=\"1\" value=\"2\">\r\n          <div class=\"cc-slider-scale\"><span id=\"ccDurScaleMin\">12<\/span><span id=\"ccDurScaleMax\">120<\/span><\/div>\r\n          <input type=\"hidden\" name=\"Laufzeit\" id=\"ccLaufzeitHidden\" value=\"36\">\r\n        <\/div>\r\n        <div class=\"cc-rate\">\r\n          <div class=\"cc-rate-main\">\r\n            <div class=\"cc-rate-label\">Rata mensile a partire da<\/div>\r\n            <div class=\"cc-rate-big\"><span id=\"ccRateMin\">\u2013<\/span> <small>CHF<\/small><\/div>\r\n          <\/div>\r\n          <div class=\"cc-rate-side\">\r\n            al miglior tasso <b><span id=\"ccZinsMin\">4.9<\/span>%<\/b><br>\r\n            fino a <span id=\"ccRateMax\">\u2013<\/span> CHF a <span id=\"ccZinsMax\">9.95<\/span>%\r\n          <\/div>\r\n        <\/div>\r\n        <p class=\"cc-rate-note\">Valore indicativo senza impegno. Il tasso d'interesse annuo effettivo dipende dalla Sua solvibilit\u00e0 (<span id=\"ccZinsMinN\">4.9<\/span>%\u2013<span id=\"ccZinsMaxN\">9.95<\/span>% p.a.).<\/p>\r\n        <\/div><!-- \/#ccCalcWrap -->\r\n        <div class=\"cc-purpose\">\r\n          <div class=\"cc-field\">\r\n          <label class=\"cc-lbl\" for=\"ccZweck\">Scopo d'utilizzo <span class=\"cc-req\">*<\/span><\/label>\r\n          <select id=\"ccZweck\" name=\"Verwendungszweck\" required>\r\n            <option value=\"\">- Selezionare -<\/option>\r\n            <option value=\"Ausbildung\">Formazione<\/option>\r\n            <option value=\"Auto \/ Motorrad\">Auto \/ moto<\/option>\r\n            <option value=\"Einrichtung \/ M\u00f6bel\">Arredamento \/ mobili<\/option>\r\n            <option value=\"Elektronische Ger\u00e4te\">Apparecchi elettronici<\/option>\r\n            <option value=\"Ferien\">Vacanze<\/option>\r\n            <option value=\"Kredit abl\u00f6sen\">Rimborsare un credito<\/option>\r\n            <option value=\"Kreditkarte abl\u00f6sen\">Rimborsare una carta di credito<\/option>\r\n            <option value=\"Immobilie in der Schweiz\">Immobile in Svizzera<\/option>\r\n            <option value=\"Immobilie im Ausland\">Immobile all'estero<\/option>\r\n            <option value=\"Rechnung bezahlen\">Pagare una fattura<\/option>\r\n            <option value=\"Schulden\">Debiti<\/option>\r\n            <option value=\"Steuern\">Imposte<\/option>\r\n            <option value=\"Andere\">Altro<\/option>\r\n          <\/select>\r\n          <div class=\"cc-err-msg\">Selezionare lo scopo d'utilizzo.<\/div>\r\n          <\/div>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <!-- ============ STEP 2: PERS\u00d6NLICHE ANGABEN ============ -->\r\n    <div class=\"cc-step\" data-step=\"1\">\r\n      <div class=\"cc-card\">\r\n        <p class=\"cc-sec-title\"><span class=\"num\">2<\/span> Dati personali<\/p>\r\n        <div class=\"cc-field\">\r\n          <label class=\"cc-lbl\">Titolo <span class=\"cc-req\">*<\/span><\/label>\r\n          <div class=\"cc-seg\" id=\"ccAnredeSeg\">\r\n            <button type=\"button\" data-val=\"Herr\" aria-pressed=\"false\">Signore<\/button>\r\n            <button type=\"button\" data-val=\"Frau\" aria-pressed=\"false\">Signora<\/button>\r\n          <\/div>\r\n          <input type=\"hidden\" name=\"Anrede\" id=\"ccAnrede\" required>\r\n          <div class=\"cc-err-msg\">Selezionare il titolo.<\/div>\r\n        <\/div>\r\n        <div class=\"cc-row\">\r\n          <div class=\"cc-field\">\r\n            <label class=\"cc-lbl\" for=\"ccVorname\">Nome <span class=\"cc-req\">*<\/span><\/label>\r\n            <input type=\"text\" id=\"ccVorname\" name=\"vorname\" autocomplete=\"given-name\" required>\r\n            <div class=\"cc-err-msg\">Inserire il nome.<\/div>\r\n          <\/div>\r\n          <div class=\"cc-field\">\r\n            <label class=\"cc-lbl\" for=\"ccNachname\">Cognome <span class=\"cc-req\">*<\/span><\/label>\r\n            <input type=\"text\" id=\"ccNachname\" name=\"nachname\" autocomplete=\"family-name\" required>\r\n            <div class=\"cc-err-msg\">Inserire il cognome.<\/div>\r\n          <\/div>\r\n        <\/div>\r\n        <div class=\"cc-field\">\r\n          <label class=\"cc-lbl\" for=\"ccGeb\">Data di nascita <span class=\"cc-req\">*<\/span><\/label>\r\n          <input type=\"text\" id=\"ccGeb\" name=\"Geburtsdatum\" inputmode=\"numeric\" placeholder=\"GG.MM.AAAA\" maxlength=\"10\" autocomplete=\"bday\" required>\r\n          <!-- v2.5.0: eine Meldung je Fall statt einer Sammelmeldung -->\r\n          <div class=\"cc-err-msg\">\r\n            <span data-e=\"format\">Inserire una data valida (GG.MM.AAAA).<\/span>\r\n            <span data-e=\"min\" class=\"cc-hidden\">Credito non possibile: l'et\u00e0 minima \u00e8 di 18 anni.<\/span>\r\n            <span data-e=\"max\" class=\"cc-hidden\">Credito non possibile: l'et\u00e0 massima \u00e8 di 68 anni.<\/span>\r\n          <\/div>\r\n        <\/div>\r\n        <div class=\"cc-row cc-row-keep\">\r\n          <div class=\"cc-field\">\r\n            <label class=\"cc-lbl\" for=\"ccStrasse\">Via <span class=\"cc-req\">*<\/span><\/label>\r\n            <input type=\"text\" id=\"ccStrasse\" name=\"Strasse\" autocomplete=\"address-line1\" required>\r\n            <div class=\"cc-err-msg\">Inserire la via.<\/div>\r\n          <\/div>\r\n          <div class=\"cc-field\" style=\"flex:0 0 30%\">\r\n            <label class=\"cc-lbl\" for=\"ccStrasseNr\">N. <span class=\"cc-req\">*<\/span><\/label>\r\n            <input type=\"text\" id=\"ccStrasseNr\" name=\"Strassennr\" maxlength=\"6\" autocomplete=\"address-line2\" placeholder=\"ad es. 15B\" required>\r\n            <div class=\"cc-err-msg\">N.<\/div>\r\n          <\/div>\r\n        <\/div>\r\n        <div class=\"cc-row cc-row-keep\">\r\n          <div class=\"cc-field\" style=\"flex:0 0 96px\">\r\n            <label class=\"cc-lbl\" for=\"ccPLZ\">NPA <span class=\"cc-req\">*<\/span><\/label>\r\n            <input type=\"text\" id=\"ccPLZ\" name=\"PLZ\" inputmode=\"numeric\" maxlength=\"5\" autocomplete=\"postal-code\" style=\"max-width:130px\" required>\r\n            <div class=\"cc-err-msg\">NPA non valido.<\/div>\r\n          <\/div>\r\n          <div class=\"cc-field\" style=\"flex:1 1 auto\">\r\n            <label class=\"cc-lbl\" for=\"ccOrt\">Localit\u00e0 <span class=\"cc-req\">*<\/span><\/label>\r\n            <input type=\"text\" id=\"ccOrt\" name=\"Ort\" autocomplete=\"address-level2\" required>\r\n            <select id=\"ccOrtSelect\" class=\"cc-hidden\" aria-label=\"Selezionare la localit\u00e0\"><\/select>\r\n            <div class=\"cc-err-msg\">Inserire la localit\u00e0.<\/div>\r\n          <\/div>\r\n          <div class=\"cc-field\" style=\"flex:0 0 64px\">\r\n            <label class=\"cc-lbl\" for=\"ccKanton\">Cantone<\/label>\r\n            <input type=\"text\" id=\"ccKanton\" name=\"Kanton\" maxlength=\"2\" autocomplete=\"off\" readonly tabindex=\"-1\" aria-readonly=\"true\" title=\"Viene ripreso automaticamente dal NPA\" style=\"text-transform:uppercase;max-width:90px\" placeholder=\"autom.\">\r\n          <\/div>\r\n        <\/div>\r\n        <div class=\"cc-field\">\r\n          <label class=\"cc-lbl\">Residente a questo indirizzo dal <span class=\"cc-req\">*<\/span><\/label>\r\n          <div class=\"cc-row cc-row-keep\">\r\n            <select name=\"SeitwannadresseMonat\" id=\"ccAdrMonat\" aria-label=\"Mese\"><\/select>\r\n            <select name=\"SeitwannadresseJahr\" id=\"ccAdrJahr\" aria-label=\"Anno\"><\/select>\r\n          <\/div>\r\n          <div class=\"cc-err-msg\">Selezionare mese e anno.<\/div>\r\n        <\/div>\r\n        <div class=\"cc-hidden\" id=\"ccOldAddrBlock\">\r\n          <p class=\"cc-sub cc-sub2\">Indirizzo precedente (meno di 2 anni all'indirizzo attuale)<\/p>\r\n          <div class=\"cc-field\">\r\n            <label class=\"cc-lbl\" for=\"ccAlteStrasse\">Via precedente e n.<\/label>\r\n            <input type=\"text\" id=\"ccAlteStrasse\" name=\"alte_strasse\" autocomplete=\"off\">\r\n          <\/div>\r\n          <div class=\"cc-row\">\r\n            <div class=\"cc-field\" style=\"flex:0 0 34%\">\r\n              <label class=\"cc-lbl\" for=\"ccAltePLZ\">NPA precedente<\/label>\r\n              <input type=\"text\" id=\"ccAltePLZ\" name=\"alte_plz\" inputmode=\"numeric\" maxlength=\"5\" autocomplete=\"off\">\r\n            <\/div>\r\n            <div class=\"cc-field\">\r\n              <label class=\"cc-lbl\" for=\"ccAlterOrt\">Localit\u00e0 precedente<\/label>\r\n              <input type=\"text\" id=\"ccAlterOrt\" name=\"alter_ort\" autocomplete=\"off\">\r\n              <select id=\"ccAlterOrtSelect\" class=\"cc-hidden\" aria-label=\"Selezionare la localit\u00e0\"><\/select>\r\n            <\/div>\r\n          <\/div>\r\n        <\/div>\r\n        <div class=\"cc-field\">\r\n          <label class=\"cc-lbl\" for=\"ccNation\">Nazionalit\u00e0 <span class=\"cc-req\">*<\/span><\/label>\r\n          <select id=\"ccNation\" name=\"Nation\" required><\/select>\r\n          <div class=\"cc-err-msg\">Selezionare la nazionalit\u00e0.<\/div>\r\n        <\/div>\r\n        <div class=\"cc-hidden\" id=\"ccAuslBlock\">\r\n          <div class=\"cc-field\">\r\n            <label class=\"cc-lbl\" for=\"ccAusweis\">Permesso di soggiorno<\/label>\r\n            <select id=\"ccAusweis\" name=\"AuslaenderAusweis\">\r\n              <option value=\"\">Selezionare il permesso di soggiorno<\/option>\r\n              <option value=\"C\">Permesso di soggiorno C (domicilio)<\/option>\r\n              <option value=\"B\">Permesso di soggiorno B (dimora)<\/option>\r\n              <option value=\"G\">Permesso di soggiorno G (frontaliere)<\/option>\r\n              <option value=\"L\">Permesso di soggiorno L (dimora breve)<\/option>\r\n              <option value=\"F\">Permesso di soggiorno F (diplomatico \/ consolato)<\/option>\r\n            <\/select>\r\n          <\/div>\r\n          <div class=\"cc-field\" id=\"ccInCHBlock\">\r\n            <label class=\"cc-lbl\">In Svizzera dal <span class=\"cc-req\">*<\/span><\/label>\r\n            <div class=\"cc-row cc-row-keep\">\r\n              <select name=\"SeitWannInCHTag\"   id=\"ccInCHTag\"   aria-label=\"Giorno\"><\/select>\r\n              <select name=\"SeitWannInCHMonat\" id=\"ccInCHMonat\" aria-label=\"Mese\"><\/select>\r\n              <select name=\"SeitWannInCH\"      id=\"ccInCHJahr\"  aria-label=\"Anno\"><\/select>\r\n            <\/div>\r\n            <div class=\"cc-err-msg\">Selezionare giorno, mese e anno.<\/div>\r\n            <!-- v2.5.0: Aufenthaltsdauer -->\r\n            <div class=\"cc-note cc-note-stop cc-hidden\" id=\"ccChStop\">\r\n              <strong>Credito non possibile.<\/strong> Non risiede ancora da un anno intero in Svizzera. In questo caso non \u00e8 purtroppo possibile mediare un credito. La invitiamo a ricontattarci non appena risieder\u00e0 da un anno in Svizzera.\r\n            <\/div>\r\n            <div class=\"cc-note cc-note-info cc-hidden\" id=\"ccChHint\">\r\n              <strong>Nota bene:<\/strong> Se il Suo arrivo in Svizzera risale a meno di 2 anni fa, un credito \u00e8 possibile solo in rari casi. Compili integralmente il modulo e ci chiami successivamente, cos\u00ec potremo analizzare il Suo caso nel dettaglio.\r\n            <\/div>\r\n          <\/div>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <!-- ============ STEP 3: KONTAKT + ZUSTIMMUNG ============ -->\r\n    <div class=\"cc-step\" data-step=\"2\">\r\n      <div class=\"cc-card\">\r\n        <p class=\"cc-sec-title\"><span class=\"num\">3<\/span> Contatto<\/p>\r\n        <div class=\"cc-field\">\r\n          <label class=\"cc-lbl\" for=\"ccTelNum\">Telefono <span class=\"cc-req\">*<\/span><\/label>\r\n          <div class=\"cc-row cc-row-keep\" style=\"gap:8px\">\r\n            <select id=\"ccTelCountry\" style=\"flex:0 0 128px\" aria-label=\"Prefisso internazionale\">\r\n              <option value=\"41\" data-ph=\"079 123 45 67\" selected>\ud83c\udde8\ud83c\udded +41<\/option>\r\n              <option value=\"423\" data-ph=\"660 12 34\">\ud83c\uddf1\ud83c\uddee +423<\/option>\r\n              <option value=\"49\" data-ph=\"0151 23456789\">\ud83c\udde9\ud83c\uddea +49<\/option>\r\n              <option value=\"33\" data-ph=\"06 12 34 56 78\">\ud83c\uddeb\ud83c\uddf7 +33<\/option>\r\n              <option value=\"39\" data-ph=\"312 345 6789\">\ud83c\uddee\ud83c\uddf9 +39<\/option>\r\n            <\/select>\r\n            <input type=\"tel\" id=\"ccTelNum\" inputmode=\"tel\" placeholder=\"079 123 45 67\" autocomplete=\"tel-national\" style=\"flex:1 1 auto\">\r\n          <\/div>\r\n          <input type=\"hidden\" name=\"phonenumber\" id=\"ccTel\">\r\n          <div class=\"cc-err-msg\">Verificare il numero di telefono (il numero di cifre non \u00e8 corretto).<\/div>\r\n        <\/div>\r\n        <div class=\"cc-field\">\r\n          <label class=\"cc-lbl\" for=\"ccEmail\">E-mail <span class=\"cc-req\">*<\/span><\/label>\r\n          <input type=\"email\" id=\"ccEmail\" name=\"email\" inputmode=\"email\" placeholder=\"nome@esempio.ch\" autocomplete=\"email\" required>\r\n          <div class=\"cc-err-msg\">Inserire un indirizzo e-mail valido.<\/div>\r\n        <\/div>\r\n        <div class=\"cc-field cc-comm-box\">\r\n          <label class=\"cc-lbl\">Come possiamo contattarLa?<\/label>\r\n          <div class=\"cc-comm-row\">\r\n            <label class=\"cc-check\">\r\n              <input type=\"checkbox\" id=\"ccKontaktEmail\" name=\"kontakt_email\" checked>\r\n              <span class=\"cc-box\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#fff\" stroke-width=\"3.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"20 6 9 17 4 12\"\/><\/svg><\/span>\r\n              <span class=\"cc-check-txt\">E-mail<\/span>\r\n            <\/label>\r\n            <label class=\"cc-check\">\r\n              <input type=\"checkbox\" id=\"ccKontaktWhatsapp\" name=\"kontakt_whatsapp\" checked>\r\n              <span class=\"cc-box\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#fff\" stroke-width=\"3.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"20 6 9 17 4 12\"\/><\/svg><\/span>\r\n              <span class=\"cc-check-txt\">WhatsApp<\/span>\r\n            <\/label>\r\n          <\/div>\r\n          <div class=\"cc-comm-row\" style=\"margin-top:12px\">\r\n            <label class=\"cc-check\">\r\n              <input type=\"checkbox\" id=\"ccKontaktSms\" name=\"kontakt_sms\" checked>\r\n              <span class=\"cc-box\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#fff\" stroke-width=\"3.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"20 6 9 17 4 12\"\/><\/svg><\/span>\r\n              <span class=\"cc-check-txt\">SMS<\/span>\r\n            <\/label>\r\n            <label class=\"cc-check\">\r\n              <input type=\"checkbox\" id=\"ccKontaktTelefon\" name=\"kontakt_telefon\" checked>\r\n              <span class=\"cc-box\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#fff\" stroke-width=\"3.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"20 6 9 17 4 12\"\/><\/svg><\/span>\r\n              <span class=\"cc-check-txt\">Telefono<\/span>\r\n            <\/label>\r\n          <\/div>\r\n        <\/div>\r\n\r\n        <div class=\"cc-legal-sep\">Note legali e consenso<\/div>\r\n        <!-- Zustimmung (hier, damit ab jetzt gespeichert werden darf) -->\r\n        <div class=\"cc-field cc-consent\" id=\"ccConsentField\">\r\n          <label class=\"cc-check\">\r\n            <input type=\"checkbox\" id=\"ccRecht\" name=\"rechtliche_hinweise\" required>\r\n            <span class=\"cc-box\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#fff\" stroke-width=\"3.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"20 6 9 17 4 12\"\/><\/svg><\/span>\r\n            <span class=\"cc-check-txt\">\r\n              Ho letto le <a href=\"https:\/\/www.bestfinance.ch\/legal-information-bf\/\" class=\"cc-legal-link\" data-l=\"legal\" rel=\"noopener\">note legali<\/a>\r\n              e accetto l' <a href=\"https:\/\/www.bestfinance.ch\/privacy-policy-bf\/\" class=\"cc-legal-link\" data-l=\"privacy\" rel=\"noopener\">utilizzo di mezzi di comunicazione elettronici<\/a>. A partire da questo consenso i miei dati possono essere memorizzati e utilizzati per l'elaborazione della mia richiesta nonch\u00e9 per essere contattato\/a. <span class=\"cc-req\">*<\/span>\r\n            <\/span>\r\n          <\/label>\r\n          <div class=\"cc-err-msg\" style=\"margin-left:38px\">Questo consenso \u00e8 necessario per proseguire.<\/div>\r\n        <\/div>\r\n        <div class=\"cc-field\">\r\n          <label class=\"cc-check\">\r\n            <input type=\"checkbox\" id=\"ccWerbung\" name=\"Werbung\">\r\n            <span class=\"cc-box\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#fff\" stroke-width=\"3.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"20 6 9 17 4 12\"\/><\/svg><\/span>\r\n            <span class=\"cc-check-txt\">Desidero essere informato\/a su offerte adeguate (revocabile in qualsiasi momento).<\/span>\r\n          <\/label>\r\n        <\/div>\r\n        <p class=\"cc-hint\">\ud83d\udd12 I Suoi dati vengono trasmessi in forma crittografata e trattati in modo confidenziale.<\/p>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <!-- ============ STEP 4: WOHNEN & FAMILIE ============ -->\r\n    <div class=\"cc-step\" data-step=\"3\">\r\n      <div class=\"cc-card\">\r\n        <p class=\"cc-sec-title\"><span class=\"num\">4<\/span> Abitazione e famiglia<\/p>\r\n        <div class=\"cc-field\">\r\n          <label class=\"cc-lbl\" for=\"ccMietStatus\">Situazione abitativa <span class=\"cc-req\">*<\/span><\/label>\r\n          <select id=\"ccMietStatus\" name=\"MietStatus\" required>\r\n            <option value=\"Miete\" selected>In affitto<\/option>\r\n            <option value=\"Eigentum\">Propriet\u00e0 abitativa<\/option>\r\n            <option value=\"bei Eltern\">Presso i genitori<\/option>\r\n            <option value=\"Untermiete\">Subaffitto<\/option>\r\n          <\/select>\r\n          <div class=\"cc-err-msg\">Selezionare.<\/div>\r\n        <\/div>\r\n        <div class=\"cc-field\" id=\"ccMieteField\">\r\n          <label class=\"cc-lbl\" for=\"ccMiete\">Affitto \/ mese (CHF) <span class=\"cc-req\">*<\/span><\/label>\r\n          <input type=\"text\" id=\"ccMiete\" name=\"Miete\" class=\"cc-num\" inputmode=\"numeric\" placeholder=\"ad es. 1500\">\r\n          <div class=\"cc-err-msg\">Inserire l'affitto.<\/div>\r\n        <\/div>\r\n        <div class=\"cc-hidden\" id=\"ccHypoBlock\">\r\n          <div class=\"cc-row\">\r\n            <div class=\"cc-field\" style=\"flex:1 1 auto\">\r\n              <label class=\"cc-lbl\" for=\"ccHypothek\">Ipoteca totale (CHF)<span class=\"cc-info\" tabindex=\"0\" data-tip=\"Gemeint ist die Gesamth\u00f6he der aktuellen Hypothek.\">i<\/span><\/label>\r\n              <input type=\"text\" id=\"ccHypothek\" name=\"Hypothek\" class=\"cc-num\" inputmode=\"numeric\" placeholder=\"ad es. 500&#039;000\">\r\n            <\/div>\r\n            <div class=\"cc-field\" style=\"flex:0 0 44%\">\r\n              <label class=\"cc-lbl\" for=\"ccHypoSeit\">Proprietario dal<\/label>\r\n              <select id=\"ccHypoSeit\" name=\"Hypothek_seit\" aria-label=\"Anno\"><\/select>\r\n            <\/div>\r\n          <\/div>\r\n        <\/div>\r\n        <div class=\"cc-field\">\r\n          <label class=\"cc-lbl\" for=\"ccZivil\">Stato civile <span class=\"cc-req\">*<\/span><\/label>\r\n          <select id=\"ccZivil\" name=\"Zivilstand\" required>\r\n            <option value=\"1\" selected>Celibe\/nubile<\/option>\r\n            <option value=\"2\">Coniugato\/a<\/option>\r\n            <option value=\"4\">Divorziato\/a<\/option>\r\n            <option value=\"3\">separato\/a giudizialmente<\/option>\r\n            <option value=\"5\">Vedovo\/a<\/option>\r\n            <option value=\"6\">Unione domestica registrata<\/option>\r\n          <\/select>\r\n          <div class=\"cc-err-msg\">Selezionare.<\/div>\r\n        <\/div>\r\n        <div class=\"cc-field\">\r\n          <label class=\"cc-lbl\" for=\"ccKinder\">Numero di figli a carico<\/label>\r\n          <select id=\"ccKinder\" name=\"Kinder\">\r\n            <option value=\"0\">0<\/option><option value=\"1\">1<\/option><option value=\"2\">2<\/option>\r\n            <option value=\"3\">3<\/option><option value=\"4\">4<\/option>\r\n          <\/select>\r\n        <\/div>\r\n        <div id=\"ccKinderBlock\" class=\"cc-hidden\">\r\n          <div class=\"cc-field cc-kind cc-hidden\"><label class=\"cc-lbl\">Anno di nascita figlio 1<\/label><select name=\"kind_1\"><\/select><\/div>\r\n          <div class=\"cc-field cc-kind cc-hidden\"><label class=\"cc-lbl\">Anno di nascita figlio 2<\/label><select name=\"kind_2\"><\/select><\/div>\r\n          <div class=\"cc-field cc-kind cc-hidden\"><label class=\"cc-lbl\">Anno di nascita figlio 3<\/label><select name=\"kind_3\"><\/select><\/div>\r\n          <div class=\"cc-field cc-kind cc-hidden\"><label class=\"cc-lbl\">Anno di nascita figlio 4<\/label><select name=\"kind_4\"><\/select><\/div>\r\n        <\/div>\r\n        <!-- v2.5.0: nur bei Ledig UND mindestens einem Kind -->\r\n        <div class=\"cc-field cc-hidden cc-highlight\" id=\"ccWohnsitField\">\r\n          <label class=\"cc-lbl\" for=\"ccWohnsituation\">Vive da solo\/a con il\/i Suo\/i figlio\/i oppure con un\/una partner? <span class=\"cc-req\">*<\/span><\/label>\r\n          <select id=\"ccWohnsituation\" name=\"Wohnsituation\">\r\n            <option value=\"\">- Selezionare -<\/option>\r\n            <option value=\"Alleinerziehend\">Genitore single (solo\/a con figlio)<\/option>\r\n            <option value=\"Mit Partner\/in im Haushalt\">Convivente con partner nella stessa economia domestica<\/option>\r\n          <\/select>\r\n          <div class=\"cc-err-msg\">Selezionare.<\/div>\r\n        <\/div>\r\n        <div class=\"cc-field\" id=\"ccAlimenteField\">\r\n          <label class=\"cc-lbl\" for=\"ccAlimente\">Alimenti che Lei versa \/ mese (CHF)<\/label>\r\n          <input type=\"text\" id=\"ccAlimente\" name=\"Alimente\" class=\"cc-num\" inputmode=\"numeric\" value=\"0\" placeholder=\"0\">\r\n          <p class=\"cc-hint\">Solo i pagamenti che effettua Lei. Gli alimenti che riceve La preghiamo di indicarli nel passo successivo sotto \u00abHa altri redditi?\u00bb.<\/p>\r\n        <\/div>\r\n        <div class=\"cc-field\">\r\n          <label class=\"cc-lbl\" for=\"ccKK\">\r\n            <span id=\"ccKKLbl1\">Premio cassa malati \/ mese (CHF) <span class=\"cc-req\">*<\/span><\/span>\r\n            <span id=\"ccKKLbl2\" class=\"cc-hidden\">Premio cassa malati totale economia domestica \/ mese (CHF) <span class=\"cc-req\">*<\/span><\/span>\r\n          <\/label>\r\n          <input type=\"text\" id=\"ccKK\" name=\"Krankenkasse\" class=\"cc-num\" inputmode=\"numeric\" placeholder=\"ad es. 350\">\r\n          <div class=\"cc-err-msg\">Inserire il premio della cassa malati.<\/div>\r\n          <p class=\"cc-hint\" id=\"ccKKHint\">Il Suo premio mensile.<\/p>\r\n          <!-- v2.5.0: bei Verheiratet \/ Kindern hervorgehoben statt kleiner Fliesstext -->\r\n          <div class=\"cc-note cc-note-info cc-hidden\" id=\"ccKKTotalNote\">\r\n            <strong>Importante \u2013 indicare l'importo totale:<\/strong> Indicare il premio mensile per <strong>tutti i membri della famiglia che vivono nella stessa economia domestica<\/strong> (Lei, partner e figli). Un valore troppo basso falsa il calcolo del budget.\r\n          <\/div>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <!-- ============ STEP 5: EINKOMMEN & BESCH\u00c4FTIGUNG ============ -->\r\n    <div class=\"cc-step\" data-step=\"4\">\r\n      <div class=\"cc-card\">\r\n        <p class=\"cc-sec-title\"><span class=\"num\">5<\/span> Reddito e occupazione<\/p>\r\n        <p class=\"cc-sub\">Richiedente 1<\/p>\r\n        <div class=\"cc-field\">\r\n          <label class=\"cc-lbl\" for=\"ccAnstVerh\">Rapporto di lavoro <span class=\"cc-req\">*<\/span><\/label>\r\n          <select id=\"ccAnstVerh\" name=\"AnstellungsVerhaeltniss\" required>\r\n            <option value=\"Angestellt unbefristet\" selected>Impiego a tempo indeterminato<\/option>\r\n            <option value=\"Angestellt in Probezeit\">Impiego in periodo di prova<\/option>\r\n            <option value=\"Tempor\u00e4r angestellt\">Impiego temporaneo<\/option>\r\n            <option value=\"Selbst\u00e4ndig (Einzelfirma)\">Indipendente (ditta individuale)<\/option>\r\n            <option value=\"Selbst\u00e4ndig (AG oder GmbH)\">Indipendente (SA o Sagl)<\/option>\r\n            <option value=\"Rentner (IV \/ AHV)\">Pensionato (AI \/ AVS)<\/option>\r\n          <\/select>\r\n          <div class=\"cc-err-msg\">Selezionare.<\/div>\r\n          <!-- v2.5.0: Voraussetzungen je Anstellungsart -->\r\n          <div class=\"cc-note cc-note-info cc-hidden\" id=\"ccAnstTemp\">\r\n            <strong>Info:<\/strong> Il presupposto \u00e8 di almeno 6 mesi presso la stessa agenzia interinale nonch\u00e9 un contratto di lavoro a tempo indeterminato.\r\n          <\/div>\r\n          <div class=\"cc-note cc-note-info cc-hidden\" id=\"ccAnstEinzel\">\r\n            <strong>Info:<\/strong> Il presupposto \u00e8 di almeno 2 anni di attivit\u00e0 indipendente con tassazione fiscale definitiva.\r\n          <\/div>\r\n          <div class=\"cc-note cc-note-info cc-hidden\" id=\"ccAnstGmbh\">\r\n            <strong>Info:<\/strong> La preghiamo di tenere a portata di mano gli ultimi 3 conteggi salariali con avviso di accredito che attestano il Suo reddito.\r\n          <\/div>\r\n        <\/div>\r\n        <div class=\"cc-field\">\r\n          <label class=\"cc-lbl\">Impiegato dal <span class=\"cc-req\">*<\/span><\/label>\r\n          <div class=\"cc-row cc-row-keep\">\r\n            <select name=\"SeitwannAGMonat\" id=\"ccAGMonat\" aria-label=\"Mese\"><\/select>\r\n            <select name=\"SeitwannAGJahr\" id=\"ccAGJahr\" aria-label=\"Anno\"><\/select>\r\n          <\/div>\r\n          <div class=\"cc-err-msg\">Indicare.<\/div>\r\n          <!-- v2.5.0: weniger als 3 Monate beim aktuellen Arbeitgeber -->\r\n          <div class=\"cc-note cc-note-warn cc-hidden\" id=\"ccAGProbe\">\r\n            <strong>Avvertenza:<\/strong> Con meno di 3 mesi presso il datore di lavoro attuale, un credito \u00e8 possibile solo se il periodo di prova \u00e8 gi\u00e0 terminato.\r\n          <\/div>\r\n        <\/div>\r\n        <div class=\"cc-field\">\r\n          <label class=\"cc-lbl\" for=\"ccTransport\">Mezzo di trasporto per il posto di lavoro <span class=\"cc-req\">*<\/span><\/label>\r\n          <select id=\"ccTransport\" name=\"Transport\" required>\r\n            <option value=\"\">- Selezionare il mezzo di trasporto per il posto di lavoro -<\/option>\r\n            <option value=\"Zu Fuss\">A piedi<\/option>\r\n            <option value=\"Velo\">Bicicletta<\/option>\r\n            <option value=\"Motorrad\">Moto<\/option>\r\n            <option value=\"\u00d6ffentlicher Verkehr\">Trasporti pubblici<\/option>\r\n            <option value=\"Auto\">Auto<\/option>\r\n            <option value=\"Gesch\u00e4ftsauto\">Auto aziendale<\/option>\r\n          <\/select>\r\n          <div class=\"cc-err-msg\">Selezionare il mezzo di trasporto.<\/div>\r\n        <\/div>\r\n        <div class=\"cc-field\">\r\n          <label class=\"cc-lbl\" for=\"ccEinkommen\">Reddito netto \/ mese (CHF) <span class=\"cc-req\">*<\/span><\/label>\r\n          <div class=\"cc-inline\">\r\n            <input type=\"text\" id=\"ccEinkommen\" name=\"Einkommen\" class=\"cc-num\" inputmode=\"numeric\" placeholder=\"min. 3&#039;000\">\r\n            <label class=\"cc-check\">\r\n              <input type=\"checkbox\" id=\"ccM13\" name=\"Monatslohn13\">\r\n              <span class=\"cc-box\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#fff\" stroke-width=\"3.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"20 6 9 17 4 12\"\/><\/svg><\/span>\r\n              <span class=\"cc-check-txt\">13a mensilit\u00e0<\/span>\r\n            <\/label>\r\n          <\/div>\r\n          <div class=\"cc-err-msg\">Inserire il reddito netto (min. CHF 3'000).<\/div>\r\n        <\/div>\r\n        <div class=\"cc-field\">\r\n          <label class=\"cc-lbl\" for=\"ccWeitEink1\">Ha altri redditi?<\/label>\r\n          <select id=\"ccWeitEink1\" class=\"cc-weitEink\" data-target=\"ccWeitEink1Block\">\r\n            <option value=\"Nein\">No<\/option><option value=\"Ja\">S\u00ec<\/option>\r\n          <\/select>\r\n        <\/div>\r\n        <div class=\"cc-hidden\" id=\"ccWeitEink1Block\">\r\n          <div class=\"cc-field\">\r\n            <label class=\"cc-lbl\" for=\"ccEinkArt2As1\">Descrizione altri redditi<\/label>\r\n            <select id=\"ccEinkArt2As1\" name=\"einkommen_art2_as1\">\r\n              <option value=\"\">Selezionare<\/option>\r\n              <option value=\"Nebenerwerb\">Attivit\u00e0 accessoria<\/option>\r\n              <option value=\"Bonuszahlungen\">Pagamenti di bonus<\/option>\r\n              <option value=\"Alimente\">Alimenti<\/option>\r\n              <option value=\"Mietzahlungen\">Pagamenti di affitto<\/option>\r\n              <option value=\"Trinkgeld\">Mance<\/option>\r\n              <option value=\"sonstige Zahlungen\">altri pagamenti<\/option>\r\n            <\/select>\r\n          <\/div>\r\n          <div class=\"cc-field\">\r\n            <label class=\"cc-lbl\" for=\"ccEink2As1\">Reddito netto \/ mese (CHF)<\/label>\r\n            <input type=\"text\" id=\"ccEink2As1\" name=\"einkommen2_as1\" class=\"cc-num\" inputmode=\"numeric\" placeholder=\"ad es. 800\">\r\n          <\/div>\r\n          <div class=\"cc-field\">\r\n            <label class=\"cc-lbl\" for=\"ccWeitEink1b\">Altri redditi?<\/label>\r\n            <select id=\"ccWeitEink1b\" class=\"cc-weitEink\" data-target=\"ccWeitEink1bBlock\">\r\n              <option value=\"Nein\">No<\/option><option value=\"Ja\">S\u00ec<\/option>\r\n            <\/select>\r\n          <\/div>\r\n          <div class=\"cc-hidden\" id=\"ccWeitEink1bBlock\">\r\n            <div class=\"cc-field\">\r\n              <label class=\"cc-lbl\" for=\"ccEinkArt3As1\">Descrizione altri redditi<\/label>\r\n              <select id=\"ccEinkArt3As1\" name=\"einkommen_art3_as1\">\r\n                <option value=\"\">Selezionare<\/option>\r\n                <option value=\"Nebenerwerb\">Attivit\u00e0 accessoria<\/option>\r\n                <option value=\"Bonuszahlungen\">Pagamenti di bonus<\/option>\r\n                <option value=\"Alimente\">Alimenti<\/option>\r\n                <option value=\"Mietzahlungen\">Pagamenti di affitto<\/option>\r\n                <option value=\"Trinkgeld\">Mance<\/option>\r\n                <option value=\"sonstige Zahlungen\">altri pagamenti<\/option>\r\n              <\/select>\r\n            <\/div>\r\n            <div class=\"cc-field\">\r\n              <label class=\"cc-lbl\" for=\"ccEink3As1\">Reddito netto \/ mese (CHF)<\/label>\r\n              <input type=\"text\" id=\"ccEink3As1\" name=\"einkommen3_as1\" class=\"cc-num\" inputmode=\"numeric\" placeholder=\"ad es. 500\">\r\n            <\/div>\r\n          <\/div>\r\n        <\/div>\r\n        <div class=\"cc-field cc-hidden cc-highlight\" id=\"ccPartnerIncomeQ\">\r\n          <label class=\"cc-lbl\" for=\"ccPartnerHatEink\">Il\/la Suo\/a coniuge\/partner ha un reddito?<\/label>\r\n          <select id=\"ccPartnerHatEink\" name=\"partner_hat_einkommen\">\r\n            <option value=\"Nein\">No<\/option><option value=\"Ja\">S\u00ec<\/option>\r\n          <\/select>\r\n          <p class=\"cc-hint\">Se il\/la coniuge o il\/la convivente ha anch'egli\/ella un reddito, la probabilit\u00e0 di ottenere il credito e condizioni vantaggiose pu\u00f2 aumentare.<\/p>\r\n        <\/div>\r\n        <!-- v2.5.0: Partner\/in ohne Einkommen -> Situation erfassen -->\r\n        <div class=\"cc-field cc-hidden cc-highlight\" id=\"ccPartnerSitField\">\r\n          <label class=\"cc-lbl\" for=\"ccPartnerSituation\">Cosa vale per il\/la Suo\/a partner? <span class=\"cc-req\">*<\/span><\/label>\r\n          <select id=\"ccPartnerSituation\" name=\"PartnerSituation\">\r\n            <option value=\"\">- Selezionare -<\/option>\r\n            <option value=\"Hausfrau\/Hausmann\">Casalinga \/ casalingo<\/option>\r\n            <option value=\"Arbeitslos\">Disoccupato\/a<\/option>\r\n            <option value=\"nicht arbeitst\u00e4tig\">non attivo\/a professionalmente<\/option>\r\n            <option value=\"Wohnhaft im Ausland\">Residente all'estero<\/option>\r\n          <\/select>\r\n          <div class=\"cc-err-msg\">Selezionare.<\/div>\r\n          <div class=\"cc-field cc-hidden\" id=\"ccPartnerAuslandField\" style=\"margin-top:14px\">\r\n            <label class=\"cc-lbl\" for=\"ccAlimenteInCHF\">Pagamento di sostegno all'estero \/ mese (CHF) <span class=\"cc-req\">*<\/span><\/label>\r\n            <input type=\"text\" id=\"ccAlimenteInCHF\" name=\"AlimenteInCHF\" class=\"cc-num\" inputmode=\"numeric\" placeholder=\"ad es. 500\">\r\n            <p class=\"cc-hint\">Importo che invia mensilmente al\/alla Suo\/a partner o alla Sua famiglia all'estero. Se non viene effettuato alcun pagamento: inserire 0.<\/p>\r\n            <div class=\"cc-err-msg\">Inserire l'importo (0 se nessun pagamento).<\/div>\r\n          <\/div>\r\n        <\/div>\r\n        <div id=\"ccPartnerBlock\" class=\"cc-hidden cc-panel2\">\r\n          <p class=\"cc-sub cc-sub2\">Richiedente 2<\/p>\r\n          <div class=\"cc-field\">\r\n            <label class=\"cc-lbl\" for=\"ccPartnerVerh\">Rapporto di lavoro<\/label>\r\n            <select id=\"ccPartnerVerh\" name=\"PartnerAnstellungsVerhaeltniss\">\r\n              <option value=\"Angestellt unbefristet\" selected>Impiego a tempo indeterminato<\/option>\r\n              <option value=\"Angestellt in Probezeit\">Impiego in periodo di prova<\/option>\r\n              <option value=\"Tempor\u00e4r angestellt\">Impiego temporaneo<\/option>\r\n              <option value=\"Selbst\u00e4ndig (Einzelfirma)\">Indipendente (ditta individuale)<\/option>\r\n              <option value=\"Selbst\u00e4ndig (AG oder GmbH)\">Indipendente (SA o Sagl)<\/option>\r\n              <option value=\"Rentner (IV \/ AHV)\">Pensionato (AI \/ AVS)<\/option>\r\n            <\/select>\r\n          <\/div>\r\n          <div class=\"cc-field\">\r\n            <label class=\"cc-lbl\">Impiegato dal<\/label>\r\n            <div class=\"cc-row cc-row-keep\">\r\n              <select name=\"PartnerSeitwannAngestelltMonat\" id=\"ccPartnerMonat\" aria-label=\"Mese\"><\/select>\r\n              <select name=\"PartnerSeitwannAngestelltCHJahr\" id=\"ccPartnerJahr\" aria-label=\"Anno\"><\/select>\r\n            <\/div>\r\n          <\/div>\r\n          <div class=\"cc-field\">\r\n            <label class=\"cc-lbl\" for=\"ccPartnerEinkommen\">Reddito netto \/ mese (CHF)<\/label>\r\n            <div class=\"cc-inline\">\r\n              <input type=\"text\" id=\"ccPartnerEinkommen\" name=\"PartnerEinkommen\" class=\"cc-num\" inputmode=\"numeric\" placeholder=\"ad es. 5000\">\r\n              <label class=\"cc-check\">\r\n                <input type=\"checkbox\" id=\"ccPM13\" name=\"PartnerMonatslohn13\">\r\n                <span class=\"cc-box\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#fff\" stroke-width=\"3.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"20 6 9 17 4 12\"\/><\/svg><\/span>\r\n                <span class=\"cc-check-txt\">13a mensilit\u00e0<\/span>\r\n              <\/label>\r\n            <\/div>\r\n          <\/div>\r\n          <div class=\"cc-field\">\r\n            <label class=\"cc-lbl\" for=\"ccWeitEink2\">Ha altri redditi?<\/label>\r\n            <select id=\"ccWeitEink2\" class=\"cc-weitEink\" data-target=\"ccWeitEink2Block\">\r\n              <option value=\"Nein\">No<\/option><option value=\"Ja\">S\u00ec<\/option>\r\n            <\/select>\r\n          <\/div>\r\n          <div class=\"cc-hidden\" id=\"ccWeitEink2Block\">\r\n            <div class=\"cc-field\">\r\n              <label class=\"cc-lbl\" for=\"ccEinkArt2As2\">Descrizione altri redditi<\/label>\r\n              <select id=\"ccEinkArt2As2\" name=\"einkommen_art2_as2\">\r\n                <option value=\"\">Selezionare<\/option>\r\n                <option value=\"Nebenerwerb\">Attivit\u00e0 accessoria<\/option>\r\n                <option value=\"Bonuszahlungen\">Pagamenti di bonus<\/option>\r\n                <option value=\"Alimente\">Alimenti<\/option>\r\n                <option value=\"Mietzahlungen\">Pagamenti di affitto<\/option>\r\n                <option value=\"Trinkgeld\">Mance<\/option>\r\n                <option value=\"sonstige Zahlungen\">altri pagamenti<\/option>\r\n              <\/select>\r\n            <\/div>\r\n            <div class=\"cc-field\">\r\n              <label class=\"cc-lbl\" for=\"ccEink2As2\">Reddito netto \/ mese (CHF)<\/label>\r\n              <input type=\"text\" id=\"ccEink2As2\" name=\"einkommen2_as2\" class=\"cc-num\" inputmode=\"numeric\" placeholder=\"ad es. 800\">\r\n            <\/div>\r\n            <div class=\"cc-field\">\r\n              <label class=\"cc-lbl\" for=\"ccWeitEink2b\">Altri redditi?<\/label>\r\n              <select id=\"ccWeitEink2b\" class=\"cc-weitEink\" data-target=\"ccWeitEink2bBlock\">\r\n                <option value=\"Nein\">No<\/option><option value=\"Ja\">S\u00ec<\/option>\r\n              <\/select>\r\n            <\/div>\r\n            <div class=\"cc-hidden\" id=\"ccWeitEink2bBlock\">\r\n              <div class=\"cc-field\">\r\n                <label class=\"cc-lbl\" for=\"ccEinkArt3As2\">Descrizione altri redditi<\/label>\r\n                <select id=\"ccEinkArt3As2\" name=\"einkommen_art3_as2\">\r\n                  <option value=\"\">Selezionare<\/option>\r\n                  <option value=\"Nebenerwerb\">Attivit\u00e0 accessoria<\/option>\r\n                  <option value=\"Bonuszahlungen\">Pagamenti di bonus<\/option>\r\n                  <option value=\"Alimente\">Alimenti<\/option>\r\n                  <option value=\"Mietzahlungen\">Pagamenti di affitto<\/option>\r\n                  <option value=\"Trinkgeld\">Mance<\/option>\r\n                  <option value=\"sonstige Zahlungen\">altri pagamenti<\/option>\r\n                <\/select>\r\n              <\/div>\r\n              <div class=\"cc-field\">\r\n                <label class=\"cc-lbl\" for=\"ccEink3As2\">Reddito netto \/ mese (CHF)<\/label>\r\n                <input type=\"text\" id=\"ccEink3As2\" name=\"einkommen3_as2\" class=\"cc-num\" inputmode=\"numeric\" placeholder=\"ad es. 500\">\r\n              <\/div>\r\n            <\/div>\r\n          <\/div>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <div class=\"cc-card\">\r\n        <p class=\"cc-sec-title\"><span class=\"num\">6<\/span> Altri impegni<\/p>\r\n        <div class=\"cc-field\">\r\n          <label class=\"cc-lbl\" for=\"ccKredite\">Ha altri crediti o impegni in corso (leasing, carta di credito, credito privato)?<\/label>\r\n          <select id=\"ccKredite\" name=\"Kredite\">\r\n            <option value=\"Nein\" selected>No<\/option>\r\n            <option value=\"Ja\">S\u00ec<\/option>\r\n          <\/select>\r\n        <\/div>\r\n        <div class=\"cc-hidden\" id=\"ccBankBlock\">\r\n          <p class=\"cc-hint\" style=\"margin:2px 0 10px\">La preghiamo di indicare i Suoi impegni in corso con la banca \/ l'istituto e il saldo aperto. \u00c8 sufficiente un'indicazione approssimativa.<\/p>\r\n          <div class=\"cc-bankrow\">\r\n            <div class=\"cc-field\">\r\n              <label class=\"cc-lbl\" for=\"ccBank1\">Banca \/ istituto 1<\/label>\r\n              <input type=\"text\" id=\"ccBank1\" name=\"Bank1\" placeholder=\"ad es. Banca XY \/ societ\u00e0 di leasing\">\r\n            <\/div>\r\n            <div class=\"cc-field\">\r\n              <label class=\"cc-lbl\" for=\"ccSaldo1\">Saldo aperto ca. (CHF)<\/label>\r\n              <input type=\"text\" id=\"ccSaldo1\" name=\"Saldo1\" class=\"cc-num\" inputmode=\"numeric\" placeholder=\"ad es. 8000\">\r\n            <\/div>\r\n          <\/div>\r\n          <div class=\"cc-bankrow cc-hidden\">\r\n            <div class=\"cc-field\">\r\n              <label class=\"cc-lbl\" for=\"ccBank2\">Banca \/ istituto 2<\/label>\r\n              <input type=\"text\" id=\"ccBank2\" name=\"Bank2\" placeholder=\"ad es. Banca XY \/ societ\u00e0 di leasing\">\r\n            <\/div>\r\n            <div class=\"cc-field\">\r\n              <label class=\"cc-lbl\" for=\"ccSaldo2\">Saldo aperto ca. (CHF)<\/label>\r\n              <input type=\"text\" id=\"ccSaldo2\" name=\"Saldo2\" class=\"cc-num\" inputmode=\"numeric\" placeholder=\"ad es. 5000\">\r\n            <\/div>\r\n          <\/div>\r\n          <div class=\"cc-bankrow cc-hidden\">\r\n            <div class=\"cc-field\">\r\n              <label class=\"cc-lbl\" for=\"ccBank3\">Banca \/ istituto 3<\/label>\r\n              <input type=\"text\" id=\"ccBank3\" name=\"Bank3\" placeholder=\"ad es. Banca XY \/ societ\u00e0 di leasing\">\r\n            <\/div>\r\n            <div class=\"cc-field\">\r\n              <label class=\"cc-lbl\" for=\"ccSaldo3\">Saldo aperto ca. (CHF)<\/label>\r\n              <input type=\"text\" id=\"ccSaldo3\" name=\"Saldo3\" class=\"cc-num\" inputmode=\"numeric\" placeholder=\"ad es. 3000\">\r\n            <\/div>\r\n          <\/div>\r\n          <button type=\"button\" class=\"cc-addbtn\" id=\"ccAddBank\">+ Aggiungere un altro impegno<\/button>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <div class=\"cc-card\">\r\n        <p class=\"cc-sec-title\"><span class=\"num\">7<\/span> Esecuzioni<\/p>\r\n        <div class=\"cc-field\">\r\n          <label class=\"cc-check\">\r\n            <input type=\"checkbox\" id=\"ccBetr\" name=\"Betreibungen\">\r\n            <span class=\"cc-box\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#fff\" stroke-width=\"3.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"20 6 9 17 4 12\"\/><\/svg><\/span>\r\n            <span class=\"cc-check-txt\">Ha avuto in passato esecuzioni o attestati di carenza beni?<\/span>\r\n          <\/label>\r\n        <\/div>\r\n        <div class=\"cc-warn cc-hidden\" id=\"ccBetrMsg\">\r\n          <strong>Importante:<\/strong> Prima di presentare la richiesta, La preghiamo di assicurarsi che le esecuzioni aperte siano pagate e preferibilmente cancellate. Con esecuzioni aperte la Sua richiesta verr\u00e0 respinta.\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <!-- ============ STEP 6: KURZ\u00dcBERSICHT, MITTEILUNG & ABSENDEN ============ -->\r\n    <div class=\"cc-step\" data-step=\"5\">\r\n      <div class=\"cc-card\">\r\n        <p class=\"cc-sec-title\"><span class=\"num\">8<\/span> Assicurazione delle rate<\/p>\r\n        <div class=\"cc-field\" style=\"margin-top:6px\">\r\n          <label class=\"cc-lbl\">\r\n            Assicurazione delle rate in caso di malattia \/ infortunio \/ disoccupazione?\r\n            <button type=\"button\" class=\"cc-info-btn\" id=\"ccVersInfoBtn\" aria-expanded=\"false\" aria-controls=\"ccVersInfo\" aria-label=\"Maggiori informazioni sull&#039;assicurazione delle rate\">i<\/button>\r\n          <\/label>\r\n          <div class=\"cc-info-box\" id=\"ccVersInfo\" hidden>\r\n            In questo modo protegge ulteriormente il pagamento delle Sue rate in caso di incapacit\u00e0 di guadagno nonch\u00e9 di disoccupazione involontaria. La copertura del credito \u00e8 facoltativa.\r\n          <\/div>\r\n          <div class=\"cc-seg cc-seg-stack\" id=\"ccVersSeg\">\r\n            <button type=\"button\" data-val=\"1\" aria-pressed=\"false\">S\u00ec, desidero essere assicurato\/a<\/button>\r\n            <button type=\"button\" data-val=\"0\" aria-pressed=\"true\">No, mi assumo io questo rischio<\/button>\r\n          <\/div>\r\n          <input type=\"hidden\" name=\"Ratenversicherung\" id=\"ccVers\" value=\"0\">\r\n          <div class=\"cc-vers-opts cc-hidden\" id=\"ccVersOptions\">\r\n            <p class=\"cc-hint\" style=\"margin:2px 0 10px;font-weight:600;color:var(--cc-ink)\">Scelga la Sua copertura:<\/p>\r\n            <div class=\"cc-vers-card\" data-prod=\"IncomeProtect Basic \u2013 CHF 66\/Mt.\" aria-selected=\"false\" tabindex=\"0\">\r\n              <span class=\"cc-vers-check\">\u2713 Selezionato<\/span>\r\n              <div class=\"cc-vers-head cc-vers-basic\">\r\n                <span class=\"cc-vers-badge\">Popolare<\/span>\r\n                <div class=\"cc-vers-name\">IncomeProtect Basic<\/div>\r\n                <div class=\"cc-vers-sub\">CHF 2.20 \/ giorno \u00b7 CHF 66.\u2013 \/ mese<\/div>\r\n              <\/div>\r\n              <div class=\"cc-vers-body\">\r\n                <div class=\"cc-vers-price\"><b>66<\/b><small>.\u2013\/mese<\/small><\/div>\r\n                <ul class=\"cc-vers-list\">\r\n                  <li>Disoccupazione: CHF 1'000.\u2013 \/ mese<\/li>\r\n                  <li>Incapacit\u00e0 lavorativa: CHF 1'000.\u2013 \/ mese<\/li>\r\n                <\/ul>\r\n              <\/div>\r\n              <div class=\"cc-vers-foot\">Nessun esame sanitario \u00b7 indipendentemente da et\u00e0 e professione \u00b7 disdicibile in qualsiasi momento<\/div>\r\n            <\/div>\r\n            <div class=\"cc-vers-card\" data-prod=\"IncomeProtect Premium \u2013 CHF 99\/Mt.\" aria-selected=\"false\" tabindex=\"0\">\r\n              <span class=\"cc-vers-check\">\u2713 Selezionato<\/span>\r\n              <div class=\"cc-vers-head cc-vers-premium\">\r\n                <span class=\"cc-vers-badge\">Premium<\/span>\r\n                <div class=\"cc-vers-name\">IncomeProtect Premium<\/div>\r\n                <div class=\"cc-vers-sub\">CHF 3.30 \/ giorno \u00b7 CHF 99.\u2013 \/ mese<\/div>\r\n              <\/div>\r\n              <div class=\"cc-vers-body\">\r\n                <div class=\"cc-vers-price\"><b>99<\/b><small>.\u2013\/mese<\/small><\/div>\r\n                <ul class=\"cc-vers-list\">\r\n                  <li>Disoccupazione: CHF 1'800.\u2013 \/ mese<\/li>\r\n                  <li>Incapacit\u00e0 lavorativa: CHF 1'800.\u2013 \/ mese<\/li>\r\n                <\/ul>\r\n              <\/div>\r\n              <div class=\"cc-vers-foot\">Nessun esame sanitario \u00b7 indipendentemente da et\u00e0 e professione \u00b7 disdicibile in qualsiasi momento<\/div>\r\n            <\/div>\r\n            <input type=\"hidden\" name=\"Ratenversicherung_Produkt\" id=\"ccVersProd\" value=\"\">\r\n            <div class=\"cc-err-msg\" id=\"ccVersErr\">Selezionare una copertura.<\/div>\r\n          <\/div>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <!-- v2.5.1: Die Kurz\u00fcbersicht ist bewusst NICHT sichtbar. Die Hinweise\r\n           sind interne Bewertungsvermerke f\u00fcr die Kreditberatung und werden\r\n           still im versteckten Feld cc_hinweise \u00fcbermittelt (siehe\r\n           ccBuildSummary weiter unten). -->\r\n\r\n      <div class=\"cc-card\">\r\n        <p class=\"cc-sec-title\"><span class=\"num\">9<\/span> Comunicazione e invio<\/p>\r\n        <div class=\"cc-field\">\r\n          <label class=\"cc-lbl\" for=\"ccMsg\">La Sua comunicazione (facoltativo)<\/label>\r\n          <textarea id=\"ccMsg\" name=\"question\" placeholder=\"Il Suo messaggio per noi \u2026\"><\/textarea>\r\n        <\/div>\r\n        <p class=\"cc-hint\">Con l'invio completa la Sua richiesta di credito. Verificheremo i Suoi dati e La contatteremo a breve.<\/p>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <!-- Honeypot -->\r\n    <div class=\"cc-hp\" aria-hidden=\"true\">\r\n      <label>Lasciare vuoto questo campo\r\n        <input type=\"text\" name=\"cc_website\" tabindex=\"-1\" autocomplete=\"off\">\r\n      <\/label>\r\n    <\/div>\r\n    <input type=\"hidden\" name=\"cc_ts\"   id=\"ccTs\" value=\"\">\r\n    <input type=\"hidden\" name=\"cc_lang\" id=\"ccLang\" value=\"\">\r\n    <input type=\"hidden\" name=\"lead_uid\" id=\"ccLeadUid\" value=\"\">\r\n    <input type=\"hidden\" name=\"cc_form\" value=\"mittel\">\r\n    <input type=\"hidden\" name=\"cc_hinweise\" id=\"ccHinweise\" value=\"\">\r\n    <input type=\"hidden\" name=\"w1\" id=\"ccW1\" value=\"\">\r\n    <input type=\"hidden\" name=\"fo\" id=\"ccFo\" value=\"\">\r\n    <input type=\"hidden\" name=\"Filiale\" id=\"ccFiliale\" value=\"AA\">\r\n\r\n    <!-- Navigation -->\r\n    <div class=\"cc-nav\">\r\n      <button type=\"button\" class=\"cc-btn cc-btn-back\" id=\"ccBack\" style=\"visibility:hidden\">Indietro<\/button>\r\n      <button type=\"button\" class=\"cc-btn cc-btn-next\" id=\"ccNext\">Avanti<\/button>\r\n      <button type=\"submit\" class=\"cc-submit cc-hidden\" id=\"ccSubmit\">\r\n        <span class=\"cc-spin\" aria-hidden=\"true\"><\/span>\r\n        <span class=\"cc-submit-label\">Inviare la richiesta di credito<\/span>\r\n      <\/button>\r\n    <\/div>\r\n\r\n    <div class=\"cc-form-msg\" id=\"ccFormMsg\" role=\"alert\"><\/div>\r\n    <p class=\"cc-hint\" style=\"text-align:center;margin-top:14px\">\ud83d\udd12 Trasmissione crittografata SSL \u00b7 I Suoi dati vengono trattati in modo confidenziale.<\/p>\r\n  <\/form>\r\n\r\n  <div class=\"cc-modal\" id=\"ccModal\" aria-hidden=\"true\">\r\n    <div class=\"cc-modal-box\">\r\n      <button type=\"button\" class=\"cc-modal-close\" id=\"ccModalClose\" aria-label=\"Chiudere\">&times;<\/button>\r\n      <iframe class=\"cc-modal-iframe\" id=\"ccModalFrame\" src=\"about:blank\" title=\"Informazioni legali\"><\/iframe>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <script>\r\n  (function () {\r\n    \"use strict\";\r\n\r\n    \/\/ CONFIG kommt aus dem PHP-Kopf dieses Snippets (window.BF_KREDIT_CFG).\r\n    \/\/ Die Werte unten sind nur der Notfall-Fallback, falls das Snippet den\r\n    \/\/ Konfigurationsblock nicht ausgeliefert hat. Zum Aendern IMMER den\r\n    \/\/ PHP-Block oben im Snippet verwenden, nicht diese Zeilen.\r\n    var CONFIG = (function () {\r\n      var fallback = {\r\n        ENDPOINT: \"\/wp-json\/bestfinance\/v1\/submit\",\r\n        PLZ_ENDPOINT: \"\/wp-json\/bestfinance\/v1\/gemeinden\",\r\n        THANKYOU_URLS: {\r\n          de: \"https:\/\/www.bestfinance.ch\/danke\/\",\r\n          fr: \"https:\/\/www.bestfinance.ch\/fr\/merci-bcp\/\",\r\n          it: \"https:\/\/www.bestfinance.ch\/it\/grazie-mille\/\",\r\n          pt: \"https:\/\/www.bestfinance.ch\/pt\/muito-obrigado\/\",\r\n          es: \"https:\/\/www.bestfinance.ch\/es\/muchas-gracias\/\",\r\n          en: \"https:\/\/www.bestfinance.ch\/en\/thankyou\/\"\r\n        },\r\n        THANKYOU_URL: \"https:\/\/www.bestfinance.ch\/danke\/\",\r\n        LEGAL_URL: \"https:\/\/www.bestfinance.ch\/legal-information-bf\/\",\r\n        PRIVACY_URL: \"https:\/\/www.bestfinance.ch\/privacy-policy-bf\/\",\r\n        MIN_AGE: 18,\r\n        MAX_AGE: 68,\r\n        MAX_AGE_END: 65,\r\n        CH_STOP_MONTHS: 12,\r\n        CH_HINT_MONTHS: 24,\r\n        PROBEZEIT_MONTHS: 3,\r\n        SCORING_MONTHS: 12,\r\n        MIN_INCOME: 3000,\r\n        MIN_INCOME_HINT: 4000\r\n      };\r\n      var aus_php = window.BF_KREDIT_CFG || {};\r\n      for (var k in fallback) {\r\n        if (Object.prototype.hasOwnProperty.call(fallback, k) && !(k in aus_php)) { aus_php[k] = fallback[k]; }\r\n      }\r\n      return aus_php;\r\n    })();\r\n\r\n    \/\/ ---- v3.1.0: eigenes Formular bestimmen ----\r\n    \/\/ Auf einer Seite kann ein zweites Formular mit demselben cc-Praefix stehen.\r\n    \/\/ Deshalb wird ab hier NUR noch innerhalb des eigenen .cc-root gesucht.\r\n    \/\/ document.currentScript zeigt waehrend der Ausfuehrung auf genau dieses\r\n    \/\/ <script>; darueber finden wir zuverlaessig den zugehoerigen Container.\r\n    var ROOT = (function () {\r\n      var sc = document.currentScript;\r\n      if (sc && sc.closest) { var r = sc.closest(\".cc-root\"); if (r) { return r; } }\r\n      var alle = document.querySelectorAll(\".cc-root\");\r\n      return alle.length ? alle[alle.length - 1] : null;\r\n    })();\r\n    if (!ROOT) return;\r\n\r\n    var form = ROOT.querySelector(\"#ccForm\") || ROOT.querySelector(\"form\");\r\n    if (!form) return;\r\n\r\n    \/\/ Suche per ID, aber ausschliesslich im eigenen Container. Damit greift das\r\n    \/\/ Skript auch dann richtig zu, wenn dieselbe ID auf der Seite doppelt\r\n    \/\/ vorkommt (getElementById wuerde immer das erste Element liefern).\r\n    function $(id) { return ROOT.querySelector('[id=\"' + id + '\"]'); }\r\n    function nf(n) { return n.toLocaleString(\"de-CH\").replace(\/,\/g, \"\u2019\"); }\r\n    function toggle(el, show) { if (el) el.classList.toggle(\"cc-hidden\", !show); }\r\n\r\n    \/\/ ---- Hilfsfunktionen v2.5.0 ----\r\n    function isHidden(el) { return !el || el.classList.contains(\"cc-hidden\"); }\r\n    function ccInt(v) { return parseInt(String(v == null ? \"\" : v).replace(\/\\D\/g, \"\"), 10) || 0; }\r\n    \/\/ Vergangene Monate seit Jahr\/Monat (Tag optional). null = unvollst\u00e4ndig.\r\n    function ccMonthsSince(y, m, d) {\r\n      y = parseInt(y, 10); m = parseInt(m, 10);\r\n      if (!y || !m) return null;\r\n      var now = new Date();\r\n      var mo = (now.getFullYear() - y) * 12 + (now.getMonth() + 1 - m);\r\n      d = parseInt(d, 10);\r\n      if (d && now.getDate() < d) mo--;\r\n      return mo;\r\n    }\r\n    \/\/ Fehlermeldung mit mehreren Varianten (<span data-e=\"...\">)\r\n    function setErrorVariant(field, key) {\r\n      if (!field) return;\r\n      var box = field.querySelector(\".cc-err-msg\");\r\n      if (box) {\r\n        box.querySelectorAll(\"[data-e]\").forEach(function (s) {\r\n          s.classList.toggle(\"cc-hidden\", s.getAttribute(\"data-e\") !== key);\r\n        });\r\n      }\r\n      field.classList.add(\"cc-invalid\");\r\n    }\r\n\r\n    $(\"ccTs\").value = String(Date.now());\r\n\r\n    \/\/ ---- Sprache (Pfad \/fr\/ \u2026 hat Vorrang, sonst <html lang>) ----\r\n    var CC_LANG = (function () {\r\n      var known = [\"de\", \"fr\", \"it\", \"pt\", \"es\", \"en\"];\r\n      \/\/ v3.6.0: serverseitig aufgel\u00f6ste Sprache hat Vorrang (synchron zur Text\u00fcbersetzung).\r\n      var srv = (CONFIG && CONFIG.LANG) ? String(CONFIG.LANG).slice(0, 2).toLowerCase() : \"\";\r\n      if (known.indexOf(srv) >= 0) return srv;\r\n      var seg = (window.location.pathname || \"\").split(\"\/\").filter(Boolean)[0] || \"\";\r\n      seg = seg.slice(0, 2).toLowerCase();\r\n      if (known.indexOf(seg) >= 0) return seg;\r\n      var hl = (document.documentElement.getAttribute(\"lang\") || navigator.language || \"de\").slice(0, 2).toLowerCase();\r\n      return known.indexOf(hl) >= 0 ? hl : \"de\";\r\n    })();\r\n    $(\"ccLang\").value = (document.documentElement.getAttribute(\"lang\") || navigator.language || CC_LANG).trim();\r\n\r\n    \/\/ ---- \u00dcbersetzungen f\u00fcr dynamische JS-Texte (Sende-Status, Fehlermeldung) ----\r\n    var CC_I18N = {\r\n      sending: { de: \"Wird gesendet \u2026\", fr: \"Envoi en cours \u2026\", it: \"Invio in corso \u2026\", pt: \"A enviar \u2026\", es: \"Enviando \u2026\", en: \"Sending \u2026\" },\r\n      error:   { de: \"Es ist ein Fehler aufgetreten. Bitte versuchen Sie es erneut oder rufen Sie uns an.\",\r\n                 fr: \"Une erreur s'est produite. Veuillez r\u00e9essayer ou nous appeler.\",\r\n                 it: \"Si \u00e8 verificato un errore. La preghiamo di riprovare o di chiamarci.\",\r\n                 pt: \"Ocorreu um erro. Tente novamente ou ligue para n\u00f3s.\",\r\n                 es: \"Se ha producido un error. Int\u00e9ntelo de nuevo o ll\u00e1menos.\",\r\n                 en: \"An error occurred. Please try again or call us.\" },\r\n      submitFailed: { de: \"\u00dcbermittlung fehlgeschlagen.\", fr: \"\u00c9chec de la transmission.\", it: \"Trasmissione non riuscita.\", pt: \"Falha na transmiss\u00e3o.\", es: \"Error en el env\u00edo.\", en: \"Submission failed.\" },\r\n      choose:  { de: \"Bitte w\u00e4hlen\", fr: \"Veuillez choisir\", it: \"Selezionare\", pt: \"Selecione\", es: \"Seleccione\", en: \"Please select\" },\r\n      month:   { de: \"Monat\", fr: \"Mois\", it: \"Mese\", pt: \"M\u00eas\", es: \"Mes\", en: \"Month\" },\r\n      year:    { de: \"Jahr\", fr: \"Ann\u00e9e\", it: \"Anno\", pt: \"Ano\", es: \"A\u00f1o\", en: \"Year\" },\r\n      day:     { de: \"Tag\", fr: \"Jour\", it: \"Giorno\", pt: \"Dia\", es: \"D\u00eda\", en: \"Day\" },\r\n\r\n      \/\/ ---- Auswahl-Zusammenfassung (v2.2.0) ----\r\n      pickAmount:   { de: \"Ihr Kreditbetrag\", fr: \"Votre montant\", it: \"Il suo importo\", pt: \"O seu montante\", es: \"Su importe\", en: \"Your loan amount\" },\r\n      pickDuration: { de: \"Ihre Laufzeit\", fr: \"Votre dur\u00e9e\", it: \"La sua durata\", pt: \"O seu prazo\", es: \"Su plazo\", en: \"Your term\" },\r\n      pickMonths:   { de: \"Monate\", fr: \"mois\", it: \"mesi\", pt: \"meses\", es: \"meses\", en: \"months\" },\r\n      pickRateLbl:  { de: \"Monatliche Rate ab\", fr: \"Mensualit\u00e9 d\u00e8s\", it: \"Rata mensile da\", pt: \"Presta\u00e7\u00e3o mensal a partir de\", es: \"Cuota mensual desde\", en: \"Monthly instalment from\" },\r\n      pickSide1:    { de: \"zum Bestzins\", fr: \"au meilleur taux\", it: \"al tasso migliore\", pt: \"\u00e0 melhor taxa\", es: \"al mejor tipo\", en: \"at the best rate\" },\r\n      pickSide2:    { de: \"bis\", fr: \"jusqu'\u00e0\", it: \"fino a\", pt: \"at\u00e9\", es: \"hasta\", en: \"up to\" },\r\n      pickSide3:    { de: \"bei\", fr: \"\u00e0\", it: \"al\", pt: \"a\", es: \"al\", en: \"at\" },\r\n      pickNote:     { de: \"Unverbindlicher Richtwert. Der effektive Jahreszins richtet sich nach Ihrer Bonit\u00e4t\",\r\n                      fr: \"Valeur indicative sans engagement. Le taux annuel effectif d\u00e9pend de votre solvabilit\u00e9\",\r\n                      it: \"Valore indicativo non vincolante. Il tasso annuo effettivo dipende dalla sua solvibilit\u00e0\",\r\n                      pt: \"Valor indicativo sem compromisso. A taxa anual efetiva depende da sua solv\u00eancia\",\r\n                      es: \"Valor orientativo sin compromiso. El tipo anual efectivo depende de su solvencia\",\r\n                      en: \"Non-binding guide value. The effective annual rate depends on your creditworthiness\" },\r\n      pickChange:   { de: \"Betrag oder Laufzeit \u00e4ndern\", fr: \"Modifier le montant ou la dur\u00e9e\", it: \"Modificare importo o durata\", pt: \"Alterar montante ou prazo\", es: \"Modificar importe o plazo\", en: \"Change amount or term\" }\r\n    };\r\n    function ccT(key) { var m = CC_I18N[key] || {}; return m[CC_LANG] || m.de; }\r\n    function ccSendingLabel(labelEl) { if (!labelEl) return; if (!labelEl.getAttribute(\"data-orig\")) labelEl.setAttribute(\"data-orig\", labelEl.textContent); labelEl.textContent = ccT(\"sending\"); }\r\n    function ccResetLabel(labelEl) { if (!labelEl) return; labelEl.textContent = labelEl.getAttribute(\"data-orig\") || labelEl.textContent; }\r\n\r\n    \/\/ ---- lead_uid ----\r\n    function uuid() {\r\n      try { if (window.crypto && crypto.randomUUID) return crypto.randomUUID(); } catch (e) {}\r\n      return \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(\/[xy]\/g, function (c) {\r\n        var r;\r\n        if (window.crypto && crypto.getRandomValues) { r = crypto.getRandomValues(new Uint8Array(1))[0] % 16; }\r\n        else { r = Math.floor(Math.random() * 16); }\r\n        var v = c === \"x\" ? r : (r & 0x3 | 0x8);\r\n        return v.toString(16);\r\n      });\r\n    }\r\n    \/\/ v3.3.0: Wiederaufnahme aus der Erinnerungsmail \u2013 eine g\u00fcltige lead_uid aus\r\n    \/\/ der URL \u00fcbernehmen (setzt den bestehenden Datensatz fort statt einen neuen\r\n    \/\/ anzulegen). Sonst wie bisher eine neue UUID erzeugen.\r\n    var LEAD_UID = (function () {\r\n      try {\r\n        var u = new URLSearchParams(window.location.search).get(\"lead_uid\");\r\n        if (u && \/^[A-Za-z0-9_\\-]{8,64}$\/.test(u)) { return u; }\r\n      } catch (e) {}\r\n      return uuid();\r\n    })();\r\n    $(\"ccLeadUid\").value = LEAD_UID;\r\n\r\n    \/\/ ---- Kampagnen-Tracking w1 ----\r\n    function ccGetCookie(n) { var m = document.cookie.match(\"(?:^|; )\" + n + \"=([^;]*)\"); return m ? decodeURIComponent(m[1]) : \"\"; }\r\n    function ccSetCookie(n, v, days) { var d = new Date(); d.setTime(d.getTime() + days * 864e5); document.cookie = n + \"=\" + encodeURIComponent(v) + \";expires=\" + d.toUTCString() + \";path=\/;SameSite=Lax\"; }\r\n    (function () {\r\n      var urlW1 = new URLSearchParams(location.search).get(\"w1\");\r\n      if (urlW1) ccSetCookie(\"cc_w1\", urlW1, 30);\r\n      var w1 = urlW1 || ccGetCookie(\"cc_w1\");\r\n      \/\/ Regel: kein w1 \u00fcbermittelt -> \"direct\"\r\n      if ($(\"ccW1\")) $(\"ccW1\").value = w1 || \"direct\";\r\n    })();\r\n\r\n    \/\/ ---- FilialeOrt (fo) + Filiale \u2013 versteckte Felder ----\r\n    \/\/ Regel fo:      kommt aus ?fo=\u2026 im Link oder aus dem Cookie cc_fo.\r\n    \/\/                Fehlt beides, wird fo aus der Sprache abgeleitet:\r\n    \/\/                PT und FR -> \"LS\", alle anderen (de\/it\/es\/en) -> \"AA\".\r\n    \/\/ Regel Filiale: \u00fcbernimmt seit v2.1.1 den ermittelten fo-Wert.\r\n    \/\/                Ist kein Wert ermittelbar -> \"AA\". (Vorher fest \"BF\".)\r\n    (function () {\r\n      var FILIALE_FALLBACK = \"AA\";\r\n\r\n      \/\/ Nur A-Z, 0-9, Bindestrich\/Unterstrich zulassen, max. 10 Zeichen.\r\n      function ccCleanFo(v) {\r\n        return String(v || \"\").trim().toUpperCase().replace(\/[^A-Z0-9_-]\/g, \"\").slice(0, 10);\r\n      }\r\n\r\n      var urlFo = ccCleanFo(new URLSearchParams(location.search).get(\"fo\"));\r\n      if (urlFo) ccSetCookie(\"cc_fo\", urlFo, 30);\r\n\r\n      var fo = urlFo || ccCleanFo(ccGetCookie(\"cc_fo\"));\r\n\r\n      \/\/ Sprachabh\u00e4ngiger Fallback (unver\u00e4nderte Bestandslogik)\r\n      if (!fo) { fo = (CC_LANG === \"pt\" || CC_LANG === \"fr\") ? \"LS\" : FILIALE_FALLBACK; }\r\n\r\n      if ($(\"ccFo\"))      $(\"ccFo\").value      = fo;\r\n      if ($(\"ccFiliale\")) $(\"ccFiliale\").value = fo || FILIALE_FALLBACK;\r\n    })();\r\n\r\n    \/\/ ---- Select-Optionen f\u00fcllen ----\r\n    function fillMonths(sel) { if (!sel) return; sel.innerHTML = '<option value=\"\">' + ccT('month') + '<\/option>'; for (var i = 1; i <= 12; i++) sel.innerHTML += '<option value=\"' + i + '\">' + i + \"<\/option>\"; }\r\n    function fillDays(sel) { if (!sel) return; sel.innerHTML = '<option value=\"\">' + ccT('day') + '<\/option>'; for (var d = 1; d <= 31; d++) sel.innerHTML += '<option value=\"' + d + '\">' + d + \"<\/option>\"; }\r\n    function fillYears(sel, back) { if (!sel) return; var now = new Date().getFullYear(); sel.innerHTML = '<option value=\"\">' + ccT('year') + '<\/option>'; for (var y = now; y >= now - back; y--) sel.innerHTML += '<option value=\"' + y + '\">' + y + \"<\/option>\"; }\r\n    [\"ccAdrMonat\",\"ccAGMonat\",\"ccPartnerMonat\",\"ccInCHMonat\"].forEach(function (id) { fillMonths($(id)); });\r\n    [\"ccAdrJahr\",\"ccAGJahr\",\"ccPartnerJahr\"].forEach(function (id) { fillYears($(id), 60); });\r\n    fillDays($(\"ccInCHTag\"));\r\n    fillYears($(\"ccInCHJahr\"), 80);\r\n    fillYears($(\"ccHypoSeit\"), 70);\r\n\r\n    \/\/ Nationalit\u00e4ten: VALUE bleibt immer Deutsch (f\u00fcr Mailer\/DB), Label wird \u00fcbersetzt.\r\n    var NATIONEN = [\r\n      [\"Schweiz\",                 {fr:\"Suisse\",it:\"Svizzera\",pt:\"Su\u00ed\u00e7a\",es:\"Suiza\",en:\"Switzerland\"}],\r\n      [\"Deutschland\",             {fr:\"Allemagne\",it:\"Germania\",pt:\"Alemanha\",es:\"Alemania\",en:\"Germany\"}],\r\n      [\"Italien\",                 {fr:\"Italie\",it:\"Italia\",pt:\"It\u00e1lia\",es:\"Italia\",en:\"Italy\"}],\r\n      [\"Frankreich\",              {fr:\"France\",it:\"Francia\",pt:\"Fran\u00e7a\",es:\"Francia\",en:\"France\"}],\r\n      [\"Portugal\",                {fr:\"Portugal\",it:\"Portogallo\",pt:\"Portugal\",es:\"Portugal\",en:\"Portugal\"}],\r\n      [\"Spanien\",                 {fr:\"Espagne\",it:\"Spagna\",pt:\"Espanha\",es:\"Espa\u00f1a\",en:\"Spain\"}],\r\n      [\"\u00d6sterreich\",              {fr:\"Autriche\",it:\"Austria\",pt:\"\u00c1ustria\",es:\"Austria\",en:\"Austria\"}],\r\n      [\"Vereinigtes K\u00f6nigreich\",  {fr:\"Royaume-Uni\",it:\"Regno Unito\",pt:\"Reino Unido\",es:\"Reino Unido\",en:\"United Kingdom\"}],\r\n      [\"Niederlande\",             {fr:\"Pays-Bas\",it:\"Paesi Bassi\",pt:\"Pa\u00edses Baixos\",es:\"Pa\u00edses Bajos\",en:\"Netherlands\"}],\r\n      [\"Belgien\",                 {fr:\"Belgique\",it:\"Belgio\",pt:\"B\u00e9lgica\",es:\"B\u00e9lgica\",en:\"Belgium\"}],\r\n      [\"Polen\",                   {fr:\"Pologne\",it:\"Polonia\",pt:\"Pol\u00f3nia\",es:\"Polonia\",en:\"Poland\"}],\r\n      [\"Rum\u00e4nien\",                {fr:\"Roumanie\",it:\"Romania\",pt:\"Rom\u00e9nia\",es:\"Ruman\u00eda\",en:\"Romania\"}],\r\n      [\"Griechenland\",            {fr:\"Gr\u00e8ce\",it:\"Grecia\",pt:\"Gr\u00e9cia\",es:\"Grecia\",en:\"Greece\"}],\r\n      [\"Kosovo\",                  {fr:\"Kosovo\",it:\"Kosovo\",pt:\"Kosovo\",es:\"Kosovo\",en:\"Kosovo\"}],\r\n      [\"Serbien\",                 {fr:\"Serbie\",it:\"Serbia\",pt:\"S\u00e9rvia\",es:\"Serbia\",en:\"Serbia\"}],\r\n      [\"Nordmazedonien\",          {fr:\"Mac\u00e9doine du Nord\",it:\"Macedonia del Nord\",pt:\"Maced\u00f3nia do Norte\",es:\"Macedonia del Norte\",en:\"North Macedonia\"}],\r\n      [\"Bosnien und Herzegowina\", {fr:\"Bosnie-Herz\u00e9govine\",it:\"Bosnia ed Erzegovina\",pt:\"B\u00f3snia e Herzegovina\",es:\"Bosnia y Herzegovina\",en:\"Bosnia and Herzegovina\"}],\r\n      [\"Kroatien\",                {fr:\"Croatie\",it:\"Croazia\",pt:\"Cro\u00e1cia\",es:\"Croacia\",en:\"Croatia\"}],\r\n      [\"Albanien\",                {fr:\"Albanie\",it:\"Albania\",pt:\"Alb\u00e2nia\",es:\"Albania\",en:\"Albania\"}],\r\n      [\"Montenegro\",              {fr:\"Mont\u00e9n\u00e9gro\",it:\"Montenegro\",pt:\"Montenegro\",es:\"Montenegro\",en:\"Montenegro\"}],\r\n      [\"T\u00fcrkei\",                  {fr:\"Turquie\",it:\"Turchia\",pt:\"Turquia\",es:\"Turqu\u00eda\",en:\"Turkey\"}],\r\n      [\"Sri Lanka\",               {fr:\"Sri Lanka\",it:\"Sri Lanka\",pt:\"Sri Lanka\",es:\"Sri Lanka\",en:\"Sri Lanka\"}],\r\n      [\"Eritrea\",                 {fr:\"\u00c9rythr\u00e9e\",it:\"Eritrea\",pt:\"Eritreia\",es:\"Eritrea\",en:\"Eritrea\"}],\r\n      [\"Brasilien\",               {fr:\"Br\u00e9sil\",it:\"Brasile\",pt:\"Brasil\",es:\"Brasil\",en:\"Brazil\"}],\r\n      [\"Indien\",                  {fr:\"Inde\",it:\"India\",pt:\"\u00cdndia\",es:\"India\",en:\"India\"}],\r\n      [\"China\",                   {fr:\"Chine\",it:\"Cina\",pt:\"China\",es:\"China\",en:\"China\"}],\r\n      [\"Russland\",                {fr:\"Russie\",it:\"Russia\",pt:\"R\u00fassia\",es:\"Rusia\",en:\"Russia\"}],\r\n      [\"Ukraine\",                 {fr:\"Ukraine\",it:\"Ucraina\",pt:\"Ucr\u00e2nia\",es:\"Ucrania\",en:\"Ukraine\"}],\r\n      [\"Vereinigte Staaten\",      {fr:\"\u00c9tats-Unis\",it:\"Stati Uniti\",pt:\"Estados Unidos\",es:\"Estados Unidos\",en:\"United States\"}],\r\n      [\"Andere\",                  {fr:\"Autre\",it:\"Altro\",pt:\"Outro\",es:\"Otro\",en:\"Other\"}]\r\n    ];\r\n    var natSel = $(\"ccNation\");\r\n    natSel.innerHTML = '<option value=\"\">' + ccT('choose') + '<\/option>';\r\n    NATIONEN.forEach(function (n) {\r\n      var deName = n[0], tr = n[1] || {};\r\n      var label = (CC_LANG === \"de\") ? deName : (tr[CC_LANG] || deName);\r\n      natSel.innerHTML += '<option value=\"' + deName + '\">' + label + '<\/option>';\r\n    });\r\n\r\n    \/\/ Kinder-Jahrgang: Dropdown, aktuelles Jahr absteigend bis aktuelles Jahr - 25.\r\n    function fillVintage(sel) {\r\n      if (!sel) return;\r\n      var now = new Date().getFullYear();\r\n      sel.innerHTML = '<option value=\"\">' + ccT('year') + '<\/option>';\r\n      for (var y = now; y >= now - 25; y--) sel.innerHTML += '<option value=\"' + y + '\">' + y + '<\/option>';\r\n    }\r\n    [\"kind_1\",\"kind_2\",\"kind_3\",\"kind_4\"].forEach(function (nm) { fillVintage(form.querySelector('[name=\"' + nm + '\"]')); });\r\n\r\n    \/\/ Statische \"Bitte w\u00e4hlen\"-Platzhalter in die aktuelle Sprache bringen (TranslatePress erreicht <option>-Texte nicht).\r\n    (function () {\r\n      form.querySelectorAll('option[value=\"\"]').forEach(function (o) {\r\n        var t = (o.textContent || \"\").trim();\r\n        if (t === \"Bitte w\u00e4hlen\" || t === \"- Bitte w\u00e4hlen -\") o.textContent = ccT(\"choose\");\r\n      });\r\n    })();\r\n\r\n    \/\/ ---- Rechner-Konfiguration ----\r\n    var _root = ROOT;   \/\/ v3.1.0: eigener Container statt erstem .cc-root der Seite\r\n    var _G = window.CC_CALC || {};\r\n    function _num(dataAttr, key, def) {\r\n      var dv = _root.getAttribute ? _root.getAttribute(dataAttr) : null;\r\n      var raw = (dv !== null && dv !== \"\") ? dv : _G[key];\r\n      var num = parseFloat(String(raw).replace(\",\", \".\"));\r\n      return isFinite(num) && num > 0 ? num : def;\r\n    }\r\n    var MIN_AMOUNT = Math.round(_num(\"data-min-amount\", \"tiefstbetrag\", 5000));\r\n    var MAX_AMOUNT = Math.round(_num(\"data-max-amount\", \"hoechstbetrag\", 300000));\r\n    var RATE_MIN = _num(\"data-rate-min\", \"tiefstzinssatz\", 4.9);\r\n    var RATE_MAX = _num(\"data-rate-max\", \"hoechstzinssatz\", 9.95);\r\n    if (MAX_AMOUNT <= MIN_AMOUNT) MAX_AMOUNT = MIN_AMOUNT + 1000;\r\n    if (RATE_MAX < RATE_MIN) { var _t = RATE_MIN; RATE_MIN = RATE_MAX; RATE_MAX = _t; }\r\n\r\n    var AMOUNTS = [];\r\n    (function () { var bp = 80000, s1 = 1000, s2 = 5000, v = MIN_AMOUNT; while (v < MAX_AMOUNT) { AMOUNTS.push(v); v += (v < bp ? s1 : s2); } AMOUNTS.push(MAX_AMOUNT); })();\r\n    var DUR_MIN = Math.round(_num(\"data-dur-min\", \"tiefstrate\", 12));\r\n    var DUR_MAX = Math.round(_num(\"data-dur-max\", \"hoechstrate\", 120));\r\n    if (DUR_MAX <= DUR_MIN) DUR_MAX = DUR_MIN + 6;\r\n    \/\/ Feste Laufzeit-Stufen laut Gesch\u00e4ftsvorgabe, identisch zu Kreditformel.js:\r\n    \/\/ 6er-Schritte bis 84 Monate, danach direkt 120. Die Zwischenwerte\r\n    \/\/ 90\/96\/102\/108\/114 sind NICHT vermittelbar und werden nicht angeboten.\r\n    \/\/ Die Liste ist bewusst fest, weil sich der Sprung 84 -> 120 nicht aus\r\n    \/\/ Minimum und Maximum ableiten l\u00e4sst. DUR_MIN\/DUR_MAX aus CC_CALC grenzen\r\n    \/\/ sie weiterhin ein.\r\n    var DUR_STEPS = [12, 18, 24, 30, 36, 42, 48, 54, 60, 66, 72, 78, 84, 120];\r\n    var DURATIONS = DUR_STEPS.filter(function (d) { return d >= DUR_MIN && d <= DUR_MAX; });\r\n    if (!DURATIONS.length) DURATIONS = [DUR_STEPS[0]];\r\n    var DEF_AMOUNT = Math.min(Math.max(20000, MIN_AMOUNT), MAX_AMOUNT);\r\n\r\n    function closestIdx(arr, val) { var best = 0, bd = Infinity; for (var i = 0; i < arr.length; i++) { var d = Math.abs(arr[i] - val); if (d < bd) { bd = d; best = i; } } return best; }\r\n    function bindIdxSlider(rangeId, txtId, hiddenId, arr, fmt, defVal) {\r\n      var r = $(rangeId), t = $(txtId), h = $(hiddenId);\r\n      r.min = 0; r.max = arr.length - 1; r.step = 1; r.value = closestIdx(arr, defVal);\r\n      function upd() { var val = arr[parseInt(r.value, 10)] || arr[0]; t.textContent = fmt ? nf(val) : val; h.value = val; }\r\n      r.addEventListener(\"input\", upd); upd();\r\n      return { r: r, arr: arr };\r\n    }\r\n    var betragSl = bindIdxSlider(\"ccBetrag\", \"ccBetragTxt\", \"ccBetragHidden\", AMOUNTS, true, DEF_AMOUNT);\r\n    var laufzeitSl = bindIdxSlider(\"ccLaufzeit\", \"ccLaufzeitTxt\", \"ccLaufzeitHidden\", DURATIONS, false, 36);\r\n\r\n    \/\/ Zinsformel \u2013 zentrale Quelle ist window.BFCalc (bf-calc-shared, wp_head).\r\n    \/\/ Der Prozentwert ist ein EFFEKTIVER Jahreszins. Die Umrechnung auf den\r\n    \/\/ Monatszins erfolgt geometrisch ((1+apr)^(1\/12)-1), NICHT linear (apr\/12).\r\n    \/\/ Das Ergebnis wird auf 5 Rappen gerundet (r5c).\r\n    \/\/ Der lokale Zweig ist nur ein Fallback, falls BFCalc nicht geladen ist,\r\n    \/\/ und ist zeichengenau identisch zu BFCalc.mRate.\r\n    function r5c(v) { return Math.round(v * 20) \/ 20; }\r\n    function monthlyRate(P, annualPct, n) {\r\n      var B = window.BFCalc;\r\n      if (B && typeof B.mRate === \"function\") { return B.mRate(P, n, annualPct); }\r\n      var r = Math.pow(1 + annualPct \/ 100, 1 \/ 12) - 1;\r\n      return r === 0 ? r5c(P \/ n) : r5c(P * r \/ (1 - Math.pow(1 + r, -n)));\r\n    }\r\n    \/\/ Rundung identisch zu Zinsrechner_1.html \/ BFCalc.fmt2: exakte zwei\r\n    \/\/ Nachkommastellen, KEINE 5-Rappen-Rundung. Vorher: Math.round(x*20)\/20,\r\n    \/\/ was Abweichungen bis 2.5 Rappen gegen\u00fcber dem Wunschkredit-Rechner ergab.\r\n    \/\/ Formatierung identisch zu BFCalc.fmt2 \/ fmtI (gerades Hochkomma als\r\n    \/\/ Tausendertrennzeichen, zwei Nachkommastellen). Die Rundung auf 5 Rappen\r\n    \/\/ ist bereits in monthlyRate() erfolgt.\r\n    function fmtChf(x) { var p = Number(x).toFixed(2).split(\".\"); return nf(parseInt(p[0], 10)) + \".\" + p[1]; }\r\n    function updateRate() {\r\n      var P = parseInt($(\"ccBetragHidden\").value, 10) || 0, n = parseInt($(\"ccLaufzeitHidden\").value, 10) || 1;\r\n      $(\"ccRateMin\").textContent = fmtChf(monthlyRate(P, RATE_MIN, n));\r\n      $(\"ccRateMax\").textContent = fmtChf(monthlyRate(P, RATE_MAX, n));\r\n    }\r\n    $(\"ccBetrag\").addEventListener(\"input\", updateRate);\r\n    $(\"ccLaufzeit\").addEventListener(\"input\", updateRate);\r\n    updateRate();\r\n    (function () {\r\n      function pct(x) { return String(Math.round(x * 100) \/ 100); }\r\n      var m;\r\n      if ((m = $(\"ccScaleMin\"))) m.textContent = nf(MIN_AMOUNT);\r\n      if ((m = $(\"ccScaleMax\"))) m.textContent = nf(MAX_AMOUNT);\r\n      if ((m = $(\"ccDurScaleMin\"))) m.textContent = String(DURATIONS[0]);\r\n      if ((m = $(\"ccDurScaleMax\"))) m.textContent = String(DURATIONS[DURATIONS.length - 1]);\r\n      [\"ccZinsMin\", \"ccZinsMinN\"].forEach(function (id) { var e = $(id); if (e) e.textContent = pct(RATE_MIN); });\r\n      [\"ccZinsMax\", \"ccZinsMaxN\"].forEach(function (id) { var e = $(id); if (e) e.textContent = pct(RATE_MAX); });\r\n    })();\r\n    \/\/ Vorbelegung aus dem Link. Akzeptiert mehrere Schreibweisen, damit\r\n    \/\/ bestehende Kampagnenlinks (?amount=\u2026&duration=\u2026) weiterlaufen.\r\n    var CC_HAS_AMOUNT = false, CC_HAS_DURATION = false;\r\n    (function () {\r\n      var p = new URLSearchParams(window.location.search);\r\n      function setFromParam(names, sl) {\r\n        for (var i = 0; i < names.length; i++) {\r\n          var raw = p.get(names[i]);\r\n          if (raw === null || raw === \"\") continue;\r\n          var v = parseInt(String(raw).replace(\/\\D\/g, \"\"), 10);\r\n          if (isNaN(v)) continue;\r\n          sl.r.value = closestIdx(sl.arr, v);\r\n          sl.r.dispatchEvent(new Event(\"input\"));\r\n          return true;\r\n        }\r\n        return false;\r\n      }\r\n      CC_HAS_AMOUNT   = setFromParam([\"Kreditbetrag\", \"amount\", \"betrag\"], betragSl);\r\n      CC_HAS_DURATION = setFromParam([\"Laufzeit\", \"duration\", \"laufzeit\", \"dauer\"], laufzeitSl);\r\n    })();\r\n\r\n    \/\/ ---- Rechner per Link ausblenden (?r=0) \u2013 v2.2.1 ----\r\n    \/\/ Zeigt statt der Slider eine Zusammenfassung der auf der Landingpage\r\n    \/\/ getroffenen Auswahl. Klick auf \"\u00c4ndern\" blendet den Rechner wieder ein.\r\n    \/\/ Sicherung: Ausgeblendet wird NUR, wenn Kreditbetrag UND Laufzeit im Link\r\n    \/\/ stehen. Sonst w\u00fcrde der Besucher unbemerkt die Standardwerte absenden.\r\n    (function () {\r\n      var wrap = $(\"ccCalcWrap\"), box = $(\"ccPickBox\"), btn = $(\"ccPickChange\");\r\n      if (!wrap || !box || !btn) return;\r\n\r\n      var p = new URLSearchParams(window.location.search);\r\n      var raw = String(p.get(\"r\") || \"\").trim().toLowerCase();\r\n      var OFF = [\"0\", \"aus\", \"off\", \"nein\", \"no\", \"false\"];\r\n      if (OFF.indexOf(raw) < 0) return;\r\n      if (!CC_HAS_AMOUNT || !CC_HAS_DURATION) return;\r\n\r\n      function pct(x) { return String(Math.round(x * 100) \/ 100); }\r\n      function txt(id, v) { var e = $(id); if (e) e.textContent = v; }\r\n\r\n      function fillPick() {\r\n        var P = parseInt($(\"ccBetragHidden\").value, 10) || 0;\r\n        var n = parseInt($(\"ccLaufzeitHidden\").value, 10) || 1;\r\n        txt(\"ccPickBetrag\", nf(P));\r\n        txt(\"ccPickLaufzeit\", String(n));\r\n        txt(\"ccPickRateMin\", fmtChf(monthlyRate(P, RATE_MIN, n)));\r\n        txt(\"ccPickRateMax\", fmtChf(monthlyRate(P, RATE_MAX, n)));\r\n        txt(\"ccPickZinsMin\", pct(RATE_MIN));\r\n        txt(\"ccPickZinsMax\", pct(RATE_MAX));\r\n        txt(\"ccPickZinsMinN\", pct(RATE_MIN));\r\n        txt(\"ccPickZinsMaxN\", pct(RATE_MAX));\r\n        txt(\"ccPickBetragLbl\", ccT(\"pickAmount\"));\r\n        txt(\"ccPickLaufzeitLbl\", ccT(\"pickDuration\"));\r\n        txt(\"ccPickMonate\", ccT(\"pickMonths\"));\r\n        txt(\"ccPickRateLbl\", ccT(\"pickRateLbl\"));\r\n        txt(\"ccPickSide1\", ccT(\"pickSide1\"));\r\n        txt(\"ccPickSide2\", ccT(\"pickSide2\"));\r\n        txt(\"ccPickSide3\", ccT(\"pickSide3\"));\r\n        txt(\"ccPickNoteTxt\", ccT(\"pickNote\"));\r\n        txt(\"ccPickChange\", ccT(\"pickChange\"));\r\n      }\r\n\r\n      fillPick();\r\n      wrap.hidden = true;\r\n      box.hidden = false;\r\n\r\n      btn.addEventListener(\"click\", function () {\r\n        wrap.hidden = false;\r\n        box.hidden = true;\r\n        btn.setAttribute(\"aria-expanded\", \"true\");\r\n        var sl = $(\"ccBetrag\");\r\n        if (sl) { try { sl.focus({ preventScroll: true }); } catch (e) { sl.focus(); } }\r\n      });\r\n    })();\r\n\r\n    \/\/ ---- Telefon ----\r\n    var telCountry = $(\"ccTelCountry\"), telNum = $(\"ccTelNum\");\r\n    var TEL = {\r\n      \"41\":  { trunk0: true,  min: 9,  max: 9,  ph: \"079 123 45 67\",  groups: [2,3,2,2] },\r\n      \"423\": { trunk0: false, min: 7,  max: 7,  ph: \"660 12 34\",      groups: [3,2,2] },\r\n      \"49\":  { trunk0: true,  min: 6,  max: 11, ph: \"0151 23456789\",  groups: [3] },\r\n      \"33\":  { trunk0: true,  min: 9,  max: 9,  ph: \"06 12 34 56 78\", groups: [1,2,2,2,2] },\r\n      \"39\":  { trunk0: false, min: 8,  max: 11, ph: \"312 345 6789\",   groups: [3,3,4] }\r\n    };\r\n    function telPh() { var cfg = TEL[telCountry.value]; telNum.placeholder = cfg ? cfg.ph : \"\"; }\r\n    telCountry.addEventListener(\"change\", function () { telPh(); telFormat(); clearError(telNum.closest(\".cc-field\")); });\r\n    telPh();\r\n    \/\/ v3.13.0: Live-Formatierung fuer ALLE Laender (nicht nur CH). Gruppierung\r\n    \/\/ je Land aus TEL[...].groups; bei trunk0-Laendern wird die fuehrende 0 ergaenzt.\r\n    function telFmt(dial, raw) {\r\n      var cfg = TEL[dial];\r\n      var d = String(raw).replace(\/\\D\/g, \"\");\r\n      if (!cfg || !cfg.groups) { return d; }\r\n      if (cfg.trunk0) { d = d.replace(\/^0+\/, \"\"); }\r\n      d = d.slice(0, cfg.max || 15);\r\n      if (d === \"\") { return (cfg.trunk0 && String(raw).replace(\/\\D\/g, \"\") !== \"\") ? \"0\" : \"\"; }\r\n      var parts = [], i = 0, g;\r\n      for (g = 0; g < cfg.groups.length && i < d.length; g++) { parts.push(d.substr(i, cfg.groups[g])); i += cfg.groups[g]; }\r\n      if (i < d.length) { parts.push(d.substr(i)); }\r\n      var out = parts.join(\" \");\r\n      return cfg.trunk0 ? \"0\" + out : out;\r\n    }\r\n    \/\/ v3.11.0: Beim Formatieren die Cursor-Position erhalten. Wir merken uns die\r\n    \/\/ Anzahl Ziffern RECHTS vom Cursor und setzen ihn danach an dieselbe Stelle\r\n    \/\/ zurueck (robust gegen die automatisch vorangestellte 0 bei CH-Nummern).\r\n    function telFormat() {\r\n      var el = telNum;\r\n      var oldVal = el.value;\r\n      var focused = (document.activeElement === el);\r\n      var selEnd = (focused && typeof el.selectionStart === \"number\") ? el.selectionStart : null;\r\n      var digitsAfter = (selEnd === null) ? -1 : oldVal.slice(selEnd).replace(\/\\D\/g, \"\").length;\r\n      var digits = oldVal.replace(\/\\D\/g, \"\");\r\n      var newVal = telFmt(telCountry.value, digits);\r\n      if (newVal === oldVal) { return; }        \/\/ nichts geaendert -> Cursor nicht anfassen\r\n      el.value = newVal;\r\n      if (digitsAfter >= 0) {\r\n        var pos = newVal.length, seen = 0;\r\n        if (digitsAfter > 0) {\r\n          for (var i = newVal.length; i > 0; i--) {\r\n            if (\/\\d\/.test(newVal.charAt(i - 1))) { seen++; if (seen === digitsAfter) { pos = i - 1; break; } }\r\n          }\r\n        }\r\n        try { el.setSelectionRange(pos, pos); } catch (e) {}\r\n      }\r\n    }\r\n    telNum.addEventListener(\"input\", telFormat);\r\n    function nationalDigits() {\r\n      var dial = telCountry.value, cfg = TEL[dial] || {};\r\n      var raw = telNum.value.replace(\/\\D\/g, \"\");\r\n      if (raw.indexOf(\"00\" + dial) === 0) raw = raw.slice(2 + dial.length);\r\n      else if (dial && raw.indexOf(dial) === 0 && raw.length > (cfg.max || 15)) raw = raw.slice(dial.length);\r\n      if (cfg.trunk0) raw = raw.replace(\/^0\/, \"\");\r\n      return raw;\r\n    }\r\n    function fmtPhone(dial, d) {\r\n      if (dial === \"41\"  && d.length === 9) return d.replace(\/(\\d{2})(\\d{3})(\\d{2})(\\d{2})\/, \"$1 $2 $3 $4\");\r\n      if (dial === \"33\"  && d.length === 9) return d.replace(\/(\\d)(\\d{2})(\\d{2})(\\d{2})(\\d{2})\/, \"$1 $2 $3 $4 $5\");\r\n      if (dial === \"39\"  && d.length >= 9)  return d.replace(\/(\\d{3})(\\d{3})(\\d+)\/, \"$1 $2 $3\");\r\n      if (dial === \"49\"  && d.length >= 6)  return d.replace(\/(\\d{3})(\\d+)\/, \"$1 $2\");\r\n      if (dial === \"423\" && d.length === 7) return d.replace(\/(\\d{3})(\\d{2})(\\d{2})\/, \"$1 $2 $3\");\r\n      return d;\r\n    }\r\n    function composePhone() { var dial = telCountry.value, d = nationalDigits(); return d ? \"+\" + dial + \" \" + d : \"\"; }\r\n    function phoneValid() { var cfg = TEL[telCountry.value] || { min: 6, max: 15 }; var n = nationalDigits().length; return n >= cfg.min && n <= cfg.max; }\r\n\r\n    \/\/ ---- Anrede ----\r\n    var seg = $(\"ccAnredeSeg\");\r\n    seg.querySelectorAll(\"button\").forEach(function (b) {\r\n      b.addEventListener(\"click\", function () {\r\n        seg.querySelectorAll(\"button\").forEach(function (x) { x.setAttribute(\"aria-pressed\", \"false\"); });\r\n        b.setAttribute(\"aria-pressed\", \"true\");\r\n        $(\"ccAnrede\").value = b.getAttribute(\"data-val\");\r\n        clearError($(\"ccAnrede\").closest(\".cc-field\"));\r\n        schedulePartial();\r\n      });\r\n    });\r\n\r\n    \/\/ ---- Raten-Versicherung (Ja\/Nein + Produktauswahl Basic\/Premium) ----\r\n    var vInfoBtn = $(\"ccVersInfoBtn\"), vInfo = $(\"ccVersInfo\");\r\n    if (vInfoBtn && vInfo) { vInfoBtn.addEventListener(\"click\", function () { var willOpen = vInfo.hidden; vInfo.hidden = !willOpen; vInfoBtn.setAttribute(\"aria-expanded\", willOpen ? \"true\" : \"false\"); }); }\r\n    var vSeg = $(\"ccVersSeg\");\r\n    var versCards = Array.prototype.slice.call(ROOT.querySelectorAll(\".cc-vers-card\"));\r\n    function versClear() { versCards.forEach(function (c) { c.setAttribute(\"aria-selected\", \"false\"); }); if ($(\"ccVersProd\")) $(\"ccVersProd\").value = \"\"; }\r\n    if (vSeg) vSeg.querySelectorAll(\"button\").forEach(function (b) {\r\n      b.addEventListener(\"click\", function () {\r\n        vSeg.querySelectorAll(\"button\").forEach(function (x) { x.setAttribute(\"aria-pressed\", \"false\"); });\r\n        b.setAttribute(\"aria-pressed\", \"true\");\r\n        var val = b.getAttribute(\"data-val\"); $(\"ccVers\").value = val;\r\n        var want = (val === \"1\");\r\n        toggle($(\"ccVersOptions\"), want);\r\n        if (!want) { versClear(); if ($(\"ccVersOptions\")) $(\"ccVersOptions\").classList.remove(\"cc-invalid\"); }\r\n        schedulePartial();\r\n      });\r\n    });\r\n    versCards.forEach(function (c) {\r\n      function pick() {\r\n        versClear();\r\n        c.setAttribute(\"aria-selected\", \"true\");\r\n        $(\"ccVersProd\").value = c.getAttribute(\"data-prod\");\r\n        $(\"ccVers\").value = \"1\";\r\n        if ($(\"ccVersOptions\")) $(\"ccVersOptions\").classList.remove(\"cc-invalid\");\r\n        schedulePartial();\r\n      }\r\n      c.addEventListener(\"click\", pick);\r\n      c.addEventListener(\"keydown\", function (e) { if (e.key === \"Enter\" || e.key === \" \") { e.preventDefault(); pick(); } });\r\n    });\r\n\r\n    \/\/ ---- Geburtsdatum-Maske (v3.10.0) ----\r\n    \/\/ Reine Ziffern werden automatisch zu TT.MM.JJJJ gruppiert. Tippt der Kunde\r\n    \/\/ mit Trennzeichen (z. B. 1.5.1967), bleiben seine Gruppen erhalten; beim\r\n    \/\/ Verlassen des Feldes \/ Absenden wird auf 01.05.1967 aufgefuellt (padDate).\r\n    var geb = $(\"ccGeb\");\r\n    function padDate(v) {\r\n      v = String(v == null ? \"\" : v).trim();\r\n      if (!v) return v;\r\n      var p = v.split(\/[^0-9]+\/).filter(Boolean);\r\n      if (p.length === 3) {\r\n        var dd = p[0].length < 2 ? (\"0\" + p[0]).slice(-2) : p[0].slice(0, 2);\r\n        var mm = p[1].length < 2 ? (\"0\" + p[1]).slice(-2) : p[1].slice(0, 2);\r\n        var yy = p[2].slice(0, 4);\r\n        return dd + \".\" + mm + \".\" + yy;\r\n      }\r\n      var d = v.replace(\/\\D\/g, \"\").slice(0, 8);\r\n      if (d.length === 8) return d.slice(0, 2) + \".\" + d.slice(2, 4) + \".\" + d.slice(4, 8);\r\n      return v;\r\n    }\r\n    \/\/ v3.14.0: Datums-Formatierung als eigene Funktion + Cursor-Erhalt. Wichtig:\r\n    \/\/ Wenn sich nichts aendert, wird das Feld NICHT neu gesetzt (sonst springt der\r\n    \/\/ Cursor auf manchen Browsern\/Handys an den Anfang und das Jahr laesst sich\r\n    \/\/ nicht mehr tippen).\r\n    function fmtDate(raw) {\r\n      raw = String(raw == null ? \"\" : raw);\r\n      \/\/ Normalisieren, dann Ziffern in Tag(2)\/Monat(2)\/Jahr(4) einfuellen. Ueberlauf\r\n      \/\/ flieszt in die naechste Gruppe; ein vom Nutzer gesetztes Trennzeichen beendet\r\n      \/\/ die aktuelle Gruppe (so bleibt 1.5.1967 = 1 \/ 5 \/ 1967 erhalten).\r\n      var norm = raw.replace(\/[\\\/\\-\\s]+\/g, \".\").replace(\/[^0-9.]\/g, \"\").replace(\/^\\.+\/, \"\").replace(\/\\.{2,}\/g, \".\");\r\n      var groups = norm.split(\".\");\r\n      var caps = [2, 2, 4], slots = [\"\", \"\", \"\"], reached = [false, false, false], slot = 0;\r\n      function adv() { if (slot < 3) { slot++; if (slot <= 2) { reached[slot] = true; } } }\r\n      for (var k = 0; k < groups.length; k++) {\r\n        var g = groups[k];\r\n        for (var c = 0; c < g.length; c++) {\r\n          while (slot < 3 && slots[slot].length >= caps[slot]) { adv(); }\r\n          if (slot >= 3) { break; }\r\n          slots[slot] += g.charAt(c);\r\n        }\r\n        if (slot >= 3) { break; }\r\n        if (k < groups.length - 1) { if (slot < 2) { adv(); } else { slot = 3; } }\r\n      }\r\n      var res = slots[0];\r\n      if (reached[1] || slots[1] !== \"\") { res += \".\" + slots[1]; }\r\n      if (reached[2] || slots[2] !== \"\") { res += \".\" + slots[2]; }\r\n      return res;\r\n    }\r\n    geb.addEventListener(\"input\", function () {\r\n      var el = geb;\r\n      var oldVal = el.value;\r\n      var focused = (document.activeElement === el);\r\n      var selEnd = (focused && typeof el.selectionStart === \"number\") ? el.selectionStart : null;\r\n      var digitsBefore = (selEnd === null) ? -1 : oldVal.slice(0, selEnd).replace(\/\\D\/g, \"\").length;\r\n      var newVal = fmtDate(oldVal);\r\n      if (newVal === oldVal) { return; }          \/\/ nichts geaendert -> Cursor NICHT anfassen\r\n      el.value = newVal;\r\n      if (digitsBefore >= 0) {\r\n        var pos = newVal.length, seen = 0;\r\n        if (digitsBefore <= 0) { pos = 0; }\r\n        else {\r\n          for (var i = 0; i < newVal.length; i++) {\r\n            if (\/\\d\/.test(newVal.charAt(i))) { seen++; if (seen === digitsBefore) { pos = i + 1; break; } }\r\n          }\r\n        }\r\n        try { el.setSelectionRange(pos, pos); } catch (e) {}\r\n      }\r\n    });\r\n    $(\"ccPLZ\").addEventListener(\"input\", function () { this.value = this.value.replace(\/\\D\/g, \"\"); });\r\n    ROOT.querySelectorAll('input[name^=\"kind_\"], .cc-num').forEach(function (inp) {\r\n      \/\/ v2.5.4: Hypothek hat eine eigene Behandlung mit Tausendertrennzeichen\r\n      if (inp.id === \"ccHypothek\") { return; }\r\n      inp.addEventListener(\"input\", function () { this.value = this.value.replace(\/\\D\/g, \"\"); });\r\n    });\r\n    $(\"ccKanton\").addEventListener(\"input\", function () { this.value = this.value.toUpperCase().replace(\/[^A-Z]\/g, \"\"); });\r\n\r\n    \/\/ ---- Name \/ Vorname \/ Strasse: jeweils ersten Buchstaben gross ----\r\n    function capitalizeWords(s) {\r\n      return String(s).replace(\/(^|[\\s\\-'.])([\\p{L}])\/gu, function (m, sep, ch) { return sep + ch.toUpperCase(); });\r\n    }\r\n    [\"ccVorname\", \"ccNachname\", \"ccStrasse\"].forEach(function (id) {\r\n      var el = $(id);\r\n      if (!el) return;\r\n      el.addEventListener(\"blur\", function () {\r\n        var v = capitalizeWords(this.value);\r\n        if (v !== this.value) { this.value = v; }\r\n      });\r\n    });\r\n\r\n    \/\/ ---- PLZ \u2192 Ort\/Kanton ----\r\n    function plzLookup(plzInput, ortInput, ortSelect, kantonInput) {\r\n      var plz = plzInput.value.replace(\/\\D\/g, \"\");\r\n      ortSelect.classList.add(\"cc-hidden\"); ortInput.classList.remove(\"cc-hidden\");\r\n      if (plz.length !== 4) return;\r\n      fetch(CONFIG.PLZ_ENDPOINT + \"?plz=\" + plz, { headers: { \"Accept\": \"application\/json\" } })\r\n        .then(function (r) { return r.json(); })\r\n        .then(function (list) {\r\n          if (!Array.isArray(list) || list.length === 0) return;\r\n          ortInput.value = list[0].ort || \"\";\r\n          if (kantonInput) kantonInput.value = (list[0].kanton || \"\").toUpperCase();\r\n          if (list.length > 1) {\r\n            ortSelect.innerHTML = list.map(function (g) {\r\n              return '<option value=\"' + g.ort + '\" data-kanton=\"' + (g.kanton || \"\") + '\">' + g.ort + (g.kanton ? \" (\" + g.kanton + \")\" : \"\") + \"<\/option>\";\r\n            }).join(\"\");\r\n            ortSelect._ort = ortInput; ortSelect._kanton = kantonInput;\r\n            ortInput.classList.add(\"cc-hidden\"); ortSelect.classList.remove(\"cc-hidden\");\r\n          }\r\n          clearError(ortInput.closest(\".cc-field\"));\r\n          schedulePartial();\r\n        })\r\n        .catch(function () {});\r\n    }\r\n    function bindOrtSelect(sel) {\r\n      sel.addEventListener(\"change\", function () {\r\n        this._ort.value = this.value;\r\n        var opt = this.options[this.selectedIndex];\r\n        if (this._kanton) this._kanton.value = (opt.getAttribute(\"data-kanton\") || \"\").toUpperCase();\r\n        schedulePartial();\r\n      });\r\n    }\r\n    $(\"ccPLZ\").addEventListener(\"input\", function () { plzLookup($(\"ccPLZ\"), $(\"ccOrt\"), $(\"ccOrtSelect\"), $(\"ccKanton\")); });\r\n    bindOrtSelect($(\"ccOrtSelect\"));\r\n    $(\"ccAltePLZ\").addEventListener(\"input\", function () { this.value = this.value.replace(\/\\D\/g, \"\"); plzLookup($(\"ccAltePLZ\"), $(\"ccAlterOrt\"), $(\"ccAlterOrtSelect\"), null); });\r\n    bindOrtSelect($(\"ccAlterOrtSelect\"));\r\n\r\n    \/\/ ---- Fr\u00fchere Adresse < 2 Jahre ----\r\n    function updateOldAddr() {\r\n      var m = parseInt($(\"ccAdrMonat\").value, 10), y = parseInt($(\"ccAdrJahr\").value, 10);\r\n      if (!m || !y) { toggle($(\"ccOldAddrBlock\"), false); return; }\r\n      var now = new Date();\r\n      var months = (now.getFullYear() - y) * 12 + (now.getMonth() + 1 - m);\r\n      toggle($(\"ccOldAddrBlock\"), months >= 0 && months < 24);\r\n    }\r\n    $(\"ccAdrMonat\").addEventListener(\"change\", updateOldAddr);\r\n    $(\"ccAdrJahr\").addEventListener(\"change\", updateOldAddr);\r\n\r\n    if ($(\"ccBetr\")) $(\"ccBetr\").addEventListener(\"change\", function () { toggle($(\"ccBetrMsg\"), this.checked); });\r\n    ROOT.querySelectorAll(\".cc-weitEink\").forEach(function (sel) {\r\n      sel.addEventListener(\"change\", function () { toggle($(this.getAttribute(\"data-target\")), this.value === \"Ja\"); });\r\n    });\r\n\r\n    function updateAusweis() {\r\n      var notCH = natSel.value && natSel.value !== \"Schweiz\";\r\n      toggle($(\"ccAuslBlock\"), notCH);\r\n      var isC = $(\"ccAusweis\").value === \"C\";\r\n      toggle($(\"ccInCHBlock\"), notCH && !isC);\r\n      updateChNotes();\r\n    }\r\n    natSel.addEventListener(\"change\", updateAusweis);\r\n    $(\"ccAusweis\").addEventListener(\"change\", updateAusweis);\r\n\r\n    \/\/ ---- v2.5.0: Aufenthaltsdauer Schweiz ----\r\n    function ccChMonths() {\r\n      if (isHidden($(\"ccAuslBlock\")) || isHidden($(\"ccInCHBlock\"))) return null;\r\n      return ccMonthsSince($(\"ccInCHJahr\").value, $(\"ccInCHMonat\").value, $(\"ccInCHTag\").value);\r\n    }\r\n    function updateChNotes() {\r\n      var mo = ccChMonths();\r\n      toggle($(\"ccChStop\"), mo !== null && mo >= 0 && mo < CONFIG.CH_STOP_MONTHS);\r\n      toggle($(\"ccChHint\"), mo !== null && mo >= CONFIG.CH_STOP_MONTHS && mo < CONFIG.CH_HINT_MONTHS);\r\n    }\r\n    [\"ccInCHTag\", \"ccInCHMonat\", \"ccInCHJahr\"].forEach(function (id) {\r\n      var e = $(id); if (e) e.addEventListener(\"change\", updateChNotes);\r\n    });\r\n\r\n    \/\/ ---- v2.5.0: Probezeit-Hinweis (< 3 Monate beim Arbeitgeber) ----\r\n    function updateAGNotes() {\r\n      var mo = ccMonthsSince($(\"ccAGJahr\").value, $(\"ccAGMonat\").value);\r\n      toggle($(\"ccAGProbe\"), mo !== null && mo >= 0 && mo < CONFIG.PROBEZEIT_MONTHS);\r\n    }\r\n    $(\"ccAGMonat\").addEventListener(\"change\", updateAGNotes);\r\n    $(\"ccAGJahr\").addEventListener(\"change\", updateAGNotes);\r\n\r\n    \/\/ ---- v2.5.0: Hinweise je Anstellungsverh\u00e4ltnis ----\r\n    var SPECIAL_EMPLOY = [\"Tempor\u00e4r angestellt\", \"Selbst\u00e4ndig (Einzelfirma)\", \"Selbst\u00e4ndig (AG oder GmbH)\"];\r\n    function updateAnstNotes() {\r\n      var v = $(\"ccAnstVerh\").value;\r\n      toggle($(\"ccAnstTemp\"),   v === \"Tempor\u00e4r angestellt\");\r\n      toggle($(\"ccAnstEinzel\"), v === \"Selbst\u00e4ndig (Einzelfirma)\");\r\n      toggle($(\"ccAnstGmbh\"),   v === \"Selbst\u00e4ndig (AG oder GmbH)\");\r\n    }\r\n    $(\"ccAnstVerh\").addEventListener(\"change\", updateAnstNotes);\r\n\r\n    \/\/ ---- v2.5.0: Wohnsituation nur bei Ledig + Kind ----\r\n    \/\/ Liste bewusst als Konstante: soll die Frage sp\u00e4ter auch bei\r\n    \/\/ \"geschieden\" (4) oder \"verwitwet\" (5) erscheinen, hier erg\u00e4nzen.\r\n    var SINGLE_STATES = [\"1\"];\r\n    function updateWohnsit() {\r\n      var show = SINGLE_STATES.indexOf($(\"ccZivil\").value) > -1 && (parseInt($(\"ccKinder\").value, 10) || 0) > 0;\r\n      toggle($(\"ccWohnsitField\"), show);\r\n      if (!show) { $(\"ccWohnsituation\").value = \"\"; clearError($(\"ccWohnsitField\")); }\r\n    }\r\n    $(\"ccWohnsituation\").addEventListener(\"change\", function () { clearError($(\"ccWohnsitField\")); });\r\n\r\n    function updateMieteFromHypo() {\r\n      if ($(\"ccMietStatus\").value !== \"Eigentum\") return;\r\n      var h = parseInt(($(\"ccHypothek\").value || \"\").replace(\/\\D\/g, \"\"), 10) || 0;\r\n      $(\"ccMiete\").value = h ? String(Math.round(h * 0.03 \/ 12)) : \"\";\r\n    }\r\n    $(\"ccMietStatus\").addEventListener(\"change\", function () {\r\n      var eigentum = this.value === \"Eigentum\";\r\n      toggle($(\"ccMieteField\"), !eigentum);\r\n      toggle($(\"ccHypoBlock\"), eigentum);\r\n      if (eigentum) { updateMieteFromHypo(); } else { $(\"ccMiete\").value = \"\"; }\r\n    });\r\n    $(\"ccHypothek\").addEventListener(\"input\", updateMieteFromHypo);\r\n\r\n    \/\/ ---- v2.5.4: Gesamt Hypothek mit Tausendertrennzeichen ----\r\n    \/\/ L\u00e4uft NACH updateMieteFromHypo (dort werden Trennzeichen ohnehin entfernt).\r\n    \/\/ Die Cursorposition wird \u00fcber die Anzahl Ziffern links davon wiederhergestellt,\r\n    \/\/ damit auch Korrekturen in der Mitte der Zahl m\u00f6glich bleiben.\r\n    (function () {\r\n      var hy = $(\"ccHypothek\");\r\n      if (!hy) return;\r\n      hy.addEventListener(\"input\", function () {\r\n        var pos    = this.selectionStart;\r\n        var davor  = String(this.value).slice(0, pos).replace(\/\\D\/g, \"\").length;\r\n        var ziffern = String(this.value).replace(\/\\D\/g, \"\").slice(0, 9);\r\n        var out    = ziffern.replace(\/\\B(?=(\\d{3})+(?!\\d))\/g, \"\u2019\");\r\n        if (out === this.value) return;\r\n        this.value = out;\r\n        var i = 0, gezaehlt = 0;\r\n        while (i < out.length && gezaehlt < davor) { if (out.charCodeAt(i) >= 48 && out.charCodeAt(i) <= 57) { gezaehlt++; } i++; }\r\n        try { this.setSelectionRange(i, i); } catch (e) {}\r\n      });\r\n    })();\r\n\r\n    \/\/ ---- Krankenkasse: Titel + Hinweis je nach Haushalt (v2.5.0) ----\r\n    function updateKKHint() {\r\n      var married = [\"2\", \"6\"].indexOf($(\"ccZivil\").value) > -1;\r\n      var kids = (parseInt($(\"ccKinder\").value, 10) || 0) > 0;\r\n      var total = married || kids;\r\n      toggle($(\"ccKKLbl1\"), !total);\r\n      toggle($(\"ccKKLbl2\"), total);\r\n      toggle($(\"ccKKHint\"), !total);\r\n      toggle($(\"ccKKTotalNote\"), total);\r\n    }\r\n\r\n    \/\/ ---- Partner-Logik inkl. Partner ohne Einkommen (v2.5.0) ----\r\n    function updatePartner() {\r\n      var married = [\"2\", \"6\"].indexOf($(\"ccZivil\").value) > -1;\r\n      toggle($(\"ccPartnerIncomeQ\"), married);\r\n      var hatEink = $(\"ccPartnerHatEink\").value === \"Ja\";\r\n      toggle($(\"ccPartnerBlock\"), married && hatEink);\r\n      var showSit = married && !hatEink;\r\n      toggle($(\"ccPartnerSitField\"), showSit);\r\n      var ausland = showSit && $(\"ccPartnerSituation\").value === \"Wohnhaft im Ausland\";\r\n      toggle($(\"ccPartnerAuslandField\"), ausland);\r\n      if (!showSit) { $(\"ccPartnerSituation\").value = \"\"; }\r\n      if (!ausland) { $(\"ccAlimenteInCHF\").value = \"\"; }\r\n    }\r\n    $(\"ccPartnerHatEink\").addEventListener(\"change\", updatePartner);\r\n    $(\"ccPartnerSituation\").addEventListener(\"change\", updatePartner);\r\n    $(\"ccZivil\").addEventListener(\"change\", function () {\r\n      var married = [\"2\", \"6\"].indexOf(this.value) > -1;\r\n      toggle($(\"ccAlimenteField\"), !married);\r\n      updatePartner(); updateKKHint(); updateWohnsit();\r\n    });\r\n    $(\"ccKinder\").addEventListener(\"change\", function () {\r\n      var n = parseInt(this.value, 10) || 0;\r\n      toggle($(\"ccKinderBlock\"), n > 0);\r\n      ROOT.querySelectorAll(\"#ccKinderBlock .cc-kind\").forEach(function (el, i) { toggle(el, i < n); });\r\n      updateKKHint(); updateWohnsit();\r\n    });\r\n    if ($(\"ccKredite\")) $(\"ccKredite\").addEventListener(\"change\", function () { toggle($(\"ccBankBlock\"), this.value === \"Ja\"); });\r\n    if ($(\"ccAddBank\")) $(\"ccAddBank\").addEventListener(\"click\", function () {\r\n      var next = ROOT.querySelector(\".cc-bankrow.cc-hidden\");\r\n      if (next) next.classList.remove(\"cc-hidden\");\r\n      if (!ROOT.querySelector(\".cc-bankrow.cc-hidden\")) this.classList.add(\"cc-hidden\");\r\n    });\r\n\r\n    \/\/ ---- Validierung ----\r\n    function setError(field, msg) { field.classList.add(\"cc-invalid\"); if (msg) { var m = field.querySelector(\".cc-err-msg\"); if (m) m.textContent = msg; } }\r\n    function clearError(field) { if (field) field.classList.remove(\"cc-invalid\"); }\r\n    function isEmail(v) { return \/^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$\/.test(v); }\r\n    function isSwissDate(v) {\r\n      var m = \/^(\\d{2})\\.(\\d{2})\\.(\\d{4})$\/.exec(v);\r\n      if (!m) return null;\r\n      var dd = +m[1], mm = +m[2], yy = +m[3];\r\n      var d = new Date(yy, mm - 1, dd);\r\n      if (d.getFullYear() !== yy || d.getMonth() !== mm - 1 || d.getDate() !== dd) return null;\r\n      return d;\r\n    }\r\n    \/\/ v2.5.0: liefert das Alter, damit Mindest- und H\u00f6chstalter getrennt\r\n    \/\/ gepr\u00fcft und getrennt gemeldet werden k\u00f6nnen.\r\n    function ageFrom(d) {\r\n      var t = new Date(), a = t.getFullYear() - d.getFullYear();\r\n      if (t.getMonth() < d.getMonth() || (t.getMonth() === d.getMonth() && t.getDate() < d.getDate())) a--;\r\n      return a;\r\n    }\r\n    function currentAge() { var d = isSwissDate(geb.value); return d ? ageFrom(d) : null; }\r\n    function reqField(id, ok) {\r\n      var el = $(id), field = el.closest(\".cc-field\");\r\n      if (!el.value.trim()) { setError(field); return false; }\r\n      return ok;\r\n    }\r\n\r\n    \/\/ ==========================================================\r\n    \/\/  INTERNE HINWEISE (v2.5.1)\r\n    \/\/  Nicht sichtbar f\u00fcr den Antragsteller. Der Text geht ausschliesslich\r\n    \/\/  im versteckten Feld cc_hinweise an die Kreditberatung; deshalb fix\r\n    \/\/  Deutsch, unabh\u00e4ngig von der Sprache der Oberfl\u00e4che.\r\n    \/\/  Der Mailer ab v2.4.0 berechnet dieselben Regeln zus\u00e4tzlich\r\n    \/\/  serverseitig \u2013 dieses Feld ist dort nur noch die Reserve.\r\n    \/\/ ==========================================================\r\n    var CC_WARN_TXT = {\r\n      alter_laufzeit:  \"Achtung Alter: Die Laufzeit reicht ueber Alter 65 hinaus - Rueckzahlung sollte bis 65 abgeschlossen sein.\",\r\n      einkommen_tief:  \"Einkommen tief (unter CHF 4'000) - Optimierung wichtig.\",\r\n      ag_kurz:         \"Weniger als 1 Jahr beim gleichen Arbeitgeber - kann das Scoring beeinflussen.\",\r\n      adresse_kurz:    \"Weniger als 1 Jahr an der gleichen Adresse - kann das Scoring beeinflussen.\",\r\n      anstellung:      \"Achtung: Anstellungsverhaeltnis pruefen (temporaer \/ selbstaendig).\",\r\n      ch_kurz:         \"Aufenthalt Schweiz weniger als 2 Jahre - Fall telefonisch im Detail analysieren.\",\r\n      partner_ausland: \"Partner\/in wohnhaft im Ausland - monatliche Unterstuetzungszahlung beruecksichtigen.\",\r\n      wohn_allein:     \"Wohnsituation: alleinerziehend mit Kind(ern).\",\r\n      wohn_partner:    \"Wohnsituation: mit Partner\/in im gleichen Haushalt lebend, mit Kind(ern).\"\r\n    };\r\n\r\n    function ccBuildSummary() {\r\n      var flags = {};\r\n\r\n      \/\/ Laufzeit \u00fcber Alter 65\r\n      var age = currentAge();\r\n      var n = parseInt($(\"ccLaufzeitHidden\").value, 10) || 0;\r\n      if (age !== null && n > 0 && (age + n \/ 12) > CONFIG.MAX_AGE_END) flags.alter_laufzeit = true;\r\n\r\n      \/\/ Einkommen tief\r\n      var ek = ccInt($(\"ccEinkommen\").value);\r\n      if (ek > 0 && ek < CONFIG.MIN_INCOME_HINT) flags.einkommen_tief = true;\r\n\r\n      \/\/ Arbeitgeber \/ Adresse\r\n      var mAG = ccMonthsSince($(\"ccAGJahr\").value, $(\"ccAGMonat\").value);\r\n      if (mAG !== null && mAG >= 0 && mAG < CONFIG.SCORING_MONTHS) flags.ag_kurz = true;\r\n      var mAd = ccMonthsSince($(\"ccAdrJahr\").value, $(\"ccAdrMonat\").value);\r\n      if (mAd !== null && mAd >= 0 && mAd < CONFIG.SCORING_MONTHS) flags.adresse_kurz = true;\r\n\r\n      \/\/ Anstellungsverh\u00e4ltnis\r\n      if (SPECIAL_EMPLOY.indexOf($(\"ccAnstVerh\").value) > -1) flags.anstellung = true;\r\n\r\n      \/\/ Aufenthalt Schweiz\r\n      var mCH = ccChMonths();\r\n      if (mCH !== null && mCH >= 0 && mCH < CONFIG.CH_HINT_MONTHS) flags.ch_kurz = true;\r\n\r\n      \/\/ Partner im Ausland\r\n      if (!isHidden($(\"ccPartnerSitField\")) && $(\"ccPartnerSituation\").value === \"Wohnhaft im Ausland\") flags.partner_ausland = true;\r\n\r\n      \/\/ Wohnsituation (Ledig + Kind)\r\n      if (!isHidden($(\"ccWohnsitField\"))) {\r\n        var w = $(\"ccWohnsituation\").value;\r\n        if (w === \"Alleinerziehend\") flags.wohn_allein = true;\r\n        else if (w) flags.wohn_partner = true;\r\n      }\r\n\r\n      \/\/ v2.5.1: keine Anzeige mehr \u2013 der Text wird nur noch f\u00fcr die\r\n      \/\/ \u00dcbermittlung zusammengesetzt (Reihenfolge = Reihenfolge in CC_WARN_TXT).\r\n      var txt = [];\r\n      for (var k in CC_WARN_TXT) {\r\n        if (Object.prototype.hasOwnProperty.call(CC_WARN_TXT, k) && flags[k]) { txt.push(CC_WARN_TXT[k]); }\r\n      }\r\n      if ($(\"ccHinweise\")) $(\"ccHinweise\").value = txt.join(\"\\n\");\r\n      return txt;\r\n    }\r\n\r\n    \/\/ Validierung je Schritt (Index 0\u20135)\r\n    function validateStep(i) {\r\n      var ok = true;\r\n      var stepEl = STEPS[i];\r\n      stepEl.querySelectorAll(\".cc-invalid\").forEach(function (f) { clearError(f); });\r\n\r\n      if (i === 0) { \/\/ Kreditwunsch\r\n        if (!$(\"ccZweck\").value) { setError($(\"ccZweck\").closest(\".cc-field\")); ok = false; }\r\n      }\r\n      else if (i === 1) { \/\/ Pers\u00f6nliche Angaben\r\n        if (!$(\"ccAnrede\").value.trim()) { setError($(\"ccAnrede\").closest(\".cc-field\")); ok = false; }\r\n        if (!$(\"ccVorname\").value.trim()) { setError($(\"ccVorname\").closest(\".cc-field\")); ok = false; }\r\n        if (!$(\"ccNachname\").value.trim()) { setError($(\"ccNachname\").closest(\".cc-field\")); ok = false; }\r\n        if (!$(\"ccStrasse\").value.trim()) { setError($(\"ccStrasse\").closest(\".cc-field\")); ok = false; }\r\n        if (!$(\"ccStrasseNr\").value.trim()) { setError($(\"ccStrasseNr\").closest(\".cc-field\")); ok = false; }\r\n        if (!\/^\\d{4,5}$\/.test($(\"ccPLZ\").value)) { setError($(\"ccPLZ\").closest(\".cc-field\")); ok = false; }\r\n        if (!$(\"ccOrt\").value.trim()) { setError($(\"ccOrt\").closest(\".cc-field\")); ok = false; }\r\n        \/\/ v2.5.3: Alter 18\u201368, gleiche Funktion wie die Sofortpr\u00fcfung\r\n        if ( !ccCheckGeb( true ) ) { ok = false; }\r\n        if (!$(\"ccAdrMonat\").value || !$(\"ccAdrJahr\").value) { setError($(\"ccAdrMonat\").closest(\".cc-field\")); ok = false; }\r\n        if (!natSel.value) { setError(natSel.closest(\".cc-field\")); ok = false; }\r\n        var auslShown = !$(\"ccAuslBlock\").classList.contains(\"cc-hidden\");\r\n        var inCHShown = auslShown && !$(\"ccInCHBlock\").classList.contains(\"cc-hidden\");\r\n        if (inCHShown) {\r\n          if (!$(\"ccInCHTag\").value || !$(\"ccInCHMonat\").value || !$(\"ccInCHJahr\").value) { setError($(\"ccInCHBlock\")); ok = false; }\r\n          else {\r\n            \/\/ v2.5.0: weniger als 1 Jahr in der Schweiz -> kein Kredit m\u00f6glich\r\n            updateChNotes();\r\n            var mo = ccChMonths();\r\n            if (mo !== null && mo >= 0 && mo < CONFIG.CH_STOP_MONTHS) {\r\n              ok = false;\r\n              $(\"ccChStop\").scrollIntoView({ behavior: \"smooth\", block: \"center\" });\r\n            }\r\n          }\r\n        }\r\n      }\r\n      else if (i === 2) { \/\/ Kontakt + Zustimmung\r\n        if (!phoneValid()) { setError(telNum.closest(\".cc-field\")); ok = false; }\r\n        if (!isEmail($(\"ccEmail\").value.trim())) { setError($(\"ccEmail\").closest(\".cc-field\")); ok = false; }\r\n        if (!$(\"ccRecht\").checked) { setError($(\"ccConsentField\")); ok = false; }\r\n      }\r\n      else if (i === 3) { \/\/ Wohnen & Familie\r\n        if (!$(\"ccMietStatus\").value) { setError($(\"ccMietStatus\").closest(\".cc-field\")); ok = false; }\r\n        if ($(\"ccMietStatus\").value !== \"Eigentum\" && !$(\"ccMiete\").value.trim()) { setError($(\"ccMiete\").closest(\".cc-field\")); ok = false; }\r\n        if (!$(\"ccKK\").value.trim()) { setError($(\"ccKK\").closest(\".cc-field\")); ok = false; }\r\n        if (!$(\"ccZivil\").value) { setError($(\"ccZivil\").closest(\".cc-field\")); ok = false; }\r\n        \/\/ v2.5.0: Wohnsituation bei Ledig + Kind\r\n        if (!isHidden($(\"ccWohnsitField\")) && !$(\"ccWohnsituation\").value) { setError($(\"ccWohnsitField\")); ok = false; }\r\n      }\r\n      else if (i === 4) { \/\/ Einkommen\r\n        if (!$(\"ccAnstVerh\").value) { setError($(\"ccAnstVerh\").closest(\".cc-field\")); ok = false; }\r\n        if (!$(\"ccAGMonat\").value || !$(\"ccAGJahr\").value) { setError($(\"ccAGMonat\").closest(\".cc-field\")); ok = false; }\r\n        if (!$(\"ccTransport\").value) { setError($(\"ccTransport\").closest(\".cc-field\")); ok = false; }\r\n        var _ek = parseInt(($(\"ccEinkommen\").value || \"\").replace(\/\\D\/g, \"\"), 10) || 0;\r\n        if (_ek < CONFIG.MIN_INCOME) { setError($(\"ccEinkommen\").closest(\".cc-field\")); ok = false; }\r\n        \/\/ v2.5.0: Partner ohne Einkommen -> Situation (und ggf. Unterst\u00fctzung)\r\n        if (!isHidden($(\"ccPartnerSitField\"))) {\r\n          if (!$(\"ccPartnerSituation\").value) { setError($(\"ccPartnerSitField\")); ok = false; }\r\n          if (!isHidden($(\"ccPartnerAuslandField\")) && $(\"ccAlimenteInCHF\").value.trim() === \"\") {\r\n            setError($(\"ccPartnerAuslandField\")); ok = false;\r\n          }\r\n        }\r\n        if (!$(\"ccPartnerBlock\").classList.contains(\"cc-hidden\")) {\r\n          if (!$(\"ccPartnerVerh\").value) { setError($(\"ccPartnerVerh\").closest(\".cc-field\")); ok = false; }\r\n          if (!$(\"ccPartnerMonat\").value || !$(\"ccPartnerJahr\").value) { setError($(\"ccPartnerMonat\").closest(\".cc-field\")); ok = false; }\r\n          if ((parseInt(($(\"ccPartnerEinkommen\").value || \"\").replace(\/\\D\/g, \"\"), 10) || 0) <= 0) { setError($(\"ccPartnerEinkommen\").closest(\".cc-field\")); ok = false; }\r\n        }\r\n        if ($(\"ccKredite\") && $(\"ccKredite\").value === \"Ja\") {\r\n          if (!$(\"ccBank1\").value.trim())  { setError($(\"ccBank1\").closest(\".cc-field\"));  ok = false; }\r\n          if (!$(\"ccSaldo1\").value.trim()) { setError($(\"ccSaldo1\").closest(\".cc-field\")); ok = false; }\r\n        }\r\n      }\r\n      else if (i === 5) { \/\/ Versicherung & Mitteilung: bei \"Ja\" muss ein Produkt gew\u00e4hlt sein\r\n        if ($(\"ccVers\") && $(\"ccVers\").value === \"1\" && !$(\"ccVersProd\").value) { $(\"ccVersOptions\").classList.add(\"cc-invalid\"); ok = false; }\r\n      }\r\n      if (!ok) { var first = stepEl.querySelector(\".cc-invalid\"); if (first) first.scrollIntoView({ behavior: \"smooth\", block: \"center\" }); }\r\n      return ok;\r\n    }\r\n\r\n    form.addEventListener(\"input\", function (e) { var f = e.target.closest(\".cc-field, .cc-consent\"); if (f) clearError(f); });\r\n    $(\"ccRecht\").addEventListener(\"change\", function () { if (this.checked) clearError($(\"ccConsentField\")); schedulePartial(); });\r\n\r\n    \/\/ ---- v2.5.3: Geburtsdatum sofort pr\u00fcfen (Alter 18\u201368) ----\r\n    \/\/ strict = true  -> beim Klick auf \"Weiter\": unvollst\u00e4ndige Eingabe ist ein Fehler\r\n    \/\/ strict = false -> w\u00e4hrend der Eingabe: erst ab 10 Zeichen (TT.MM.JJJJ) pr\u00fcfen\r\n    function ccCheckGeb( strict ) {\r\n      var field = geb.closest(\".cc-field\");\r\n      \/\/ v3.10.0: beim strengen Pruefen (Weiter\/Absenden) auf TT.MM.JJJJ auffuellen,\r\n      \/\/ damit z. B. 1.5.1967 als 01.05.1967 akzeptiert wird.\r\n      if ( strict ) { geb.value = padDate( geb.value ); }\r\n      var raw   = geb.value.trim();\r\n      if ( raw.length < 10 ) {\r\n        if ( strict ) { setErrorVariant( field, \"format\" ); return false; }\r\n        clearError( field ); return true;\r\n      }\r\n      var d = isSwissDate( raw );\r\n      if ( !d ) { setErrorVariant( field, \"format\" ); return false; }\r\n      var a = ageFrom( d );\r\n      if ( a < CONFIG.MIN_AGE ) { setErrorVariant( field, \"min\" ); return false; }\r\n      if ( a > CONFIG.MAX_AGE ) { setErrorVariant( field, \"max\" ); return false; }\r\n      clearError( field );\r\n      return true;\r\n    }\r\n    \/\/ WICHTIG: erst hier registriert, damit die Meldung nicht vom\r\n    \/\/ clearError-Listener oberhalb wieder entfernt wird (Formular-Listener\r\n    \/\/ laufen nach den Listenern am Feld selbst).\r\n    form.addEventListener(\"input\", function (e) { if (e.target === geb) { ccCheckGeb(false); } });\r\n    geb.addEventListener(\"blur\", function () { geb.value = padDate(geb.value); ccCheckGeb(false); });\r\n\r\n    \/\/ ---- Payload ----\r\n    function buildPayload(stage) {\r\n      ccBuildSummary(); \/\/ v2.5.0: cc_hinweise immer aktuell halten\r\n      var fd = new FormData(form), payload = {};\r\n      fd.forEach(function (v, k) { payload[k] = v; });\r\n      if ( payload.Geburtsdatum ) { payload.Geburtsdatum = padDate( payload.Geburtsdatum ); }\r\n      payload.rechtliche_hinweise = $(\"ccRecht\").checked ? \"ja\" : \"nein\";\r\n      payload.Werbung = $(\"ccWerbung\").checked ? \"ja\" : \"nein\";\r\n      payload.Monatslohn13 = $(\"ccM13\").checked ? \"ja\" : \"nein\";\r\n      payload.PartnerMonatslohn13 = $(\"ccPM13\").checked ? \"ja\" : \"nein\";\r\n      payload.Betreibungen = ($(\"ccBetr\") && $(\"ccBetr\").checked) ? \"ja\" : \"nein\";\r\n      payload.kontakt_email = $(\"ccKontaktEmail\").checked ? \"ja\" : \"nein\";\r\n      payload.kontakt_whatsapp = $(\"ccKontaktWhatsapp\").checked ? \"ja\" : \"nein\";\r\n      payload.kontakt_sms = $(\"ccKontaktSms\").checked ? \"ja\" : \"nein\";\r\n      payload.kontakt_telefon = $(\"ccKontaktTelefon\").checked ? \"ja\" : \"nein\";\r\n      payload.phonenumber = composePhone();\r\n      payload.lead_uid = LEAD_UID;\r\n      payload.cc_stage = stage;\r\n      \/\/ v2.6.0: l\u00f6st im Mailer die Info-Mail zum Teil-Save aus. Mehrfachversand\r\n      \/\/ verhindert der Mailer serverseitig per Transient (1 Std. pro lead_uid).\r\n      if (stage === \"partial\") { payload.cc_notify = \"1\"; }\r\n      \/\/ v2.5.0: nicht sichtbare Zusatzfelder nicht mitsenden\r\n      if (isHidden($(\"ccWohnsitField\"))) delete payload.Wohnsituation;\r\n      if (isHidden($(\"ccPartnerSitField\"))) { delete payload.PartnerSituation; delete payload.AlimenteInCHF; }\r\n      else if (isHidden($(\"ccPartnerAuslandField\"))) { delete payload.AlimenteInCHF; }\r\n      return payload;\r\n    }\r\n\r\n    \/\/ ---- Teil-Save (partial) ----\r\n    \/\/ Ausl\u00f6ser: rechtliche Hinweise akzeptiert UND alle Pflichtdaten g\u00fcltig.\r\n    function partialReady() {\r\n      if (!$(\"ccRecht\").checked) return false;\r\n      var must = [\"ccAnrede\", \"ccVorname\", \"ccNachname\", \"ccStrasse\", \"ccStrasseNr\", \"ccOrt\"];\r\n      for (var i = 0; i < must.length; i++) { if (!$(must[i]).value.trim()) return false; }\r\n      if (!\/^\\d{4,5}$\/.test($(\"ccPLZ\").value)) return false;\r\n      if (!phoneValid()) return false;\r\n      if (!isEmail($(\"ccEmail\").value.trim())) return false;\r\n      return true;\r\n    }\r\n    var lastPartialHash = \"\", partialTimer = null, finalizing = false;\r\n    function sendPartial() {\r\n      if (finalizing || !partialReady()) return;\r\n      var payload = buildPayload(\"partial\");\r\n      var hash = JSON.stringify(payload);\r\n      if (hash === lastPartialHash) return;\r\n      lastPartialHash = hash;\r\n      try {\r\n        fetch(CONFIG.ENDPOINT, {\r\n          method: \"POST\",\r\n          headers: { \"Content-Type\": \"application\/json\", \"Accept\": \"application\/json\" },\r\n          body: JSON.stringify(payload), keepalive: true\r\n        }).catch(function () {});\r\n      } catch (e) {}\r\n    }\r\n    function schedulePartial() {\r\n      if (finalizing || !partialReady()) return;\r\n      clearTimeout(partialTimer); partialTimer = setTimeout(sendPartial, 800);\r\n    }\r\n    form.addEventListener(\"input\", schedulePartial);\r\n    form.addEventListener(\"change\", schedulePartial);\r\n    window.addEventListener(\"pagehide\", function () { if (!finalizing && partialReady()) sendPartial(); });\r\n\r\n    \/\/ ==========================================================\r\n    \/\/  WIZARD-STEUERUNG\r\n    \/\/ ==========================================================\r\n    var STEPS = Array.prototype.slice.call(form.querySelectorAll(\".cc-step\"));\r\n    \/\/ v3.2.0: Titel & Schrittw\u00f6rter aus dem (von TranslatePress \u00fcbersetzten) HTML lesen,\r\n    \/\/ statt aus fest verdrahteten JS-Strings. So sind sie ab dem ersten Rendern \u00fcbersetzt.\r\n    var TITLE_FALLBACK = [\"Kreditwunsch\",\"Pers\u00f6nliche Angaben\",\"Kontakt & Zustimmung\",\"Wohnen & Familie\",\"Einkommen & Besch\u00e4ftigung\",\"\u00dcbersicht & Absenden\"];\r\n    var TITLES = Array.prototype.map.call(\r\n      document.querySelectorAll(\"#ccStepTitleSrc > div\"),\r\n      function (el) { return (el.textContent || \"\").trim(); }\r\n    ).filter(function (t) { return t !== \"\"; });\r\n    if (TITLES.length < STEPS.length) { TITLES = TITLE_FALLBACK; }\r\n    var STEP_WORDS = Array.prototype.map.call(\r\n      document.querySelectorAll(\"#ccStepWordSrc > div\"),\r\n      function (el) { return (el.textContent || \"\").trim(); }\r\n    );\r\n    var WORD_STEP = (STEP_WORDS[0] && STEP_WORDS[0] !== \"\") ? STEP_WORDS[0] : \"Schritt\";\r\n    var WORD_VON  = (STEP_WORDS[1] && STEP_WORDS[1] !== \"\") ? STEP_WORDS[1] : \"von\";\r\n    var cur = 0;\r\n    var back = $(\"ccBack\"), next = $(\"ccNext\"), submit = $(\"ccSubmit\"), progressFill = $(\"ccProgressFill\");\r\n\r\n    function renderStep() {\r\n      STEPS.forEach(function (s, idx) { s.classList.toggle(\"cc-active\", idx === cur); });\r\n      $(\"ccStepLabel\").textContent = WORD_STEP + \" \" + (cur + 1) + \" \" + WORD_VON + \" \" + STEPS.length;\r\n      $(\"ccStepTitle\").textContent = TITLES[cur] || \"\";\r\n      progressFill.style.width = Math.round(((cur + 1) \/ STEPS.length) * 100) + \"%\";\r\n      back.style.visibility = cur === 0 ? \"hidden\" : \"visible\";\r\n      var last = cur === STEPS.length - 1;\r\n      toggle(next, !last);\r\n      toggle(submit, last);\r\n      $(\"ccFormMsg\").classList.remove(\"show\");\r\n    }\r\n    function goTo(i) { cur = Math.max(0, Math.min(i, STEPS.length - 1)); renderStep(); form.scrollIntoView({ behavior: \"smooth\", block: \"start\" }); }\r\n\r\n    next.addEventListener(\"click\", function () {\r\n      if (!validateStep(cur)) return;\r\n      sendPartial();           \/\/ Upsert nach jedem Schritt (sofern bereit)\r\n      goTo(cur + 1);\r\n    });\r\n    back.addEventListener(\"click\", function () { goTo(cur - 1); });\r\n\r\n    \/\/ ---- Finaler Submit ----\r\n    var submitting = false;\r\n    form.addEventListener(\"submit\", function (e) {\r\n      e.preventDefault();\r\n      if (submitting) return;\r\n      \/\/ Alle Schritte pr\u00fcfen; beim ersten Fehler dorthin springen.\r\n      for (var i = 0; i < STEPS.length; i++) {\r\n        if (!validateStep(i)) { goTo(i); return; }\r\n      }\r\n      finalizing = true;\r\n      submitting = true; submit.disabled = true; submit.classList.add(\"is-loading\");\r\n      ccSendingLabel(submit.querySelector(\".cc-submit-label\"));\r\n      var payload = buildPayload(\"final\");\r\n      fetch(CONFIG.ENDPOINT, {\r\n        method: \"POST\",\r\n        headers: { \"Content-Type\": \"application\/json\", \"Accept\": \"application\/json\" },\r\n        body: JSON.stringify(payload)\r\n      })\r\n      .then(function (r) { return r.json().catch(function () { return { success: r.ok }; }); })\r\n      .then(function (data) {\r\n        if (data && data.success) { window.location.href = (CONFIG.THANKYOU_URLS && CONFIG.THANKYOU_URLS[CC_LANG]) || CONFIG.THANKYOU_URL; }\r\n        else { throw new Error((data && data.message) || ccT(\"submitFailed\")); }\r\n      })\r\n      .catch(function (err) {\r\n        finalizing = false; submitting = false; submit.disabled = false; submit.classList.remove(\"is-loading\");\r\n        ccResetLabel(submit.querySelector(\".cc-submit-label\"));\r\n        var msgBox = $(\"ccFormMsg\");\r\n        msgBox.textContent = ccT(\"error\") + \" (\" + err.message + \")\";\r\n        msgBox.classList.add(\"show\");\r\n        msgBox.scrollIntoView({ behavior: \"smooth\", block: \"center\" });\r\n      });\r\n    });\r\n\r\n    \/\/ ---- Prefill aus URL (u. a. \u00dcbergabe vom Budget-Rechner) ----\r\n    (function () {\r\n      var p = new URLSearchParams(window.location.search);\r\n      function has(n){ var v=p.get(n); return v!==null && v.trim()!==\"\"; }\r\n      function val(n){ var v=p.get(n); return v===null?\"\":v.trim(); }\r\n      function fire(el,ev){ el.dispatchEvent(new Event(ev,{bubbles:true})); }\r\n      function setField(name){ if(!has(name))return; var el=form.querySelector('[name=\"'+name+'\"]'); if(!el)return; el.value=val(name); fire(el,\"input\"); fire(el,\"change\"); }\r\n\r\n      [\"Verwendungszweck\",\"vorname\",\"nachname\",\"Geburtsdatum\",\"Strasse\",\"Strassennr\",\r\n       \"email\",\"Krankenkasse\",\"Einkommen\",\r\n       \/\/ v3.3.1: MM\/JJJJ-Dropdowns (Werte sind einfache Zahlen -> setField gen\u00fcgt)\r\n       \"SeitwannadresseMonat\",\"SeitwannadresseJahr\",\r\n       \"SeitWannInCHTag\",\"SeitWannInCHMonat\",\"SeitWannInCH\",\r\n       \"SeitwannAGMonat\",\"SeitwannAGJahr\",\r\n       \"PartnerSeitwannAngestelltMonat\",\"PartnerSeitwannAngestelltCHJahr\"].forEach(setField);\r\n\r\n      if(has(\"PLZ\")){ $(\"ccPLZ\").value=val(\"PLZ\").replace(\/\\D\/g,\"\"); fire($(\"ccPLZ\"),\"input\"); }\r\n      if(has(\"Ort\")){ $(\"ccOrt\").value=val(\"Ort\"); }\r\n      if(has(\"Kanton\")){ $(\"ccKanton\").value=val(\"Kanton\").toUpperCase().replace(\/[^A-Z]\/g,\"\"); }\r\n\r\n      if(has(\"Nation\")){ natSel.value=val(\"Nation\"); fire(natSel,\"change\"); }\r\n      if(has(\"AuslaenderAusweis\")){ var aw=$(\"ccAusweis\"); if(aw){ aw.value=val(\"AuslaenderAusweis\"); fire(aw,\"change\"); } }\r\n\r\n      if(has(\"Zivilstand\")){ $(\"ccZivil\").value=val(\"Zivilstand\"); fire($(\"ccZivil\"),\"change\"); }\r\n      if(has(\"MietStatus\")){ $(\"ccMietStatus\").value=val(\"MietStatus\"); fire($(\"ccMietStatus\"),\"change\"); }\r\n      if(has(\"Miete\")){ $(\"ccMiete\").value=val(\"Miete\").replace(\/\\D\/g,\"\"); }\r\n      if(has(\"Alimente\")){ $(\"ccAlimente\").value=val(\"Alimente\").replace(\/\\D\/g,\"\"); }\r\n\r\n      if(has(\"Kinder\")){ $(\"ccKinder\").value=String(parseInt(val(\"Kinder\"),10)||0); fire($(\"ccKinder\"),\"change\");\r\n        [1,2,3,4].forEach(function(i){ if(has(\"kind_\"+i)){ var k=form.querySelector('[name=\"kind_'+i+'\"]'); if(k) k.value=val(\"kind_\"+i); } });\r\n      }\r\n\r\n      if(val(\"Monatslohn13\")===\"ja\"){ $(\"ccM13\").checked=true; }\r\n      if(has(\"PartnerEinkommen\")){ $(\"ccPartnerHatEink\").value=\"Ja\"; fire($(\"ccPartnerHatEink\"),\"change\"); $(\"ccPartnerEinkommen\").value=val(\"PartnerEinkommen\").replace(\/\\D\/g,\"\"); }\r\n      if(val(\"PartnerMonatslohn13\")===\"ja\"){ $(\"ccPM13\").checked=true; }\r\n      if(has(\"Transport\")){ $(\"ccTransport\").value=val(\"Transport\"); }\r\n\r\n      if(has(\"Anrede\")){ var wanted=\/^f\/i.test(val(\"Anrede\"))?\"Frau\":\"Herr\"; var b=seg.querySelector('button[data-val=\"'+wanted+'\"]'); if(b) b.click(); }\r\n\r\n      if(has(\"phonenumber\")||has(\"mob\")){\r\n        var tel=(val(\"phonenumber\")||val(\"mob\")).replace(\/\\s+\/g,\"\"); var dial=\"41\";\r\n        if(tel.charAt(0)===\"+\"){ [\"41\",\"423\",\"49\",\"33\",\"39\"].some(function(cc){ if(tel.indexOf(\"+\"+cc)===0){dial=cc;tel=tel.slice(1+cc.length);return true;} return false; }); }\r\n        else { tel=tel.replace(\/^00\/,\"\"); }\r\n        var natn=tel.replace(\/\\D\/g,\"\").replace(\/^0+\/,\"\");\r\n        telCountry.value=dial; fire(telCountry,\"change\");\r\n        if(natn){ telNum.value=natn; fire(telNum,\"input\"); }\r\n      }\r\n    })();\r\n\r\n    \/\/ ---- v3.0.0: Rechtliche Links aus der PHP-Konfiguration setzen ----\r\n    (function () {\r\n      var a1 = form.querySelector('.cc-legal-link[data-l=\"legal\"]');\r\n      var a2 = form.querySelector('.cc-legal-link[data-l=\"privacy\"]');\r\n      var _legal   = (CONFIG.LEGAL_URLS   && CONFIG.LEGAL_URLS[CC_LANG])   || CONFIG.LEGAL_URL;\r\n      var _privacy = (CONFIG.PRIVACY_URLS && CONFIG.PRIVACY_URLS[CC_LANG]) || CONFIG.PRIVACY_URL;\r\n      if (a1 && _legal)   { a1.setAttribute(\"href\", _legal); }\r\n      if (a2 && _privacy) { a2.setAttribute(\"href\", _privacy); }\r\n    })();\r\n\r\n    \/\/ ---- Rechtliche Links als Popup (iframe-Modal) ----\r\n    (function () {\r\n      var modal = $(\"ccModal\"), frame = $(\"ccModalFrame\"), cbtn = $(\"ccModalClose\");\r\n      if (!modal || !frame) return;\r\n      function openM(url) { frame.src = url; modal.classList.add(\"open\"); modal.setAttribute(\"aria-hidden\", \"false\"); document.body.style.overflow = \"hidden\"; }\r\n      function closeM() { modal.classList.remove(\"open\"); modal.setAttribute(\"aria-hidden\", \"true\"); frame.src = \"about:blank\"; document.body.style.overflow = \"\"; }\r\n      function legalUrl(url) { if (CC_LANG !== \"fr\" && CC_LANG !== \"it\") return url; return url.replace(\/^(https?:\\\/\\\/[^\\\/]+)\\\/\/, \"$1\/\" + CC_LANG + \"\/\"); }\r\n      ROOT.querySelectorAll(\".cc-legal-link\").forEach(function (a) {\r\n        a.addEventListener(\"click\", function (e) { e.preventDefault(); openM(legalUrl(a.getAttribute(\"href\"))); });\r\n      });\r\n      if (cbtn) cbtn.addEventListener(\"click\", closeM);\r\n      modal.addEventListener(\"click\", function (e) { if (e.target === modal) closeM(); });\r\n      document.addEventListener(\"keydown\", function (e) { if (e.key === \"Escape\") closeM(); });\r\n    })();\r\n\r\n    \/\/ ---- Start: abh\u00e4ngige Anzeigen einmalig setzen (v2.5.0) ----\r\n    updateKKHint();\r\n    updateWohnsit();\r\n    updatePartner();\r\n    updateAnstNotes();\r\n    updateAGNotes();\r\n    updateChNotes();\r\n    ccBuildSummary();\r\n\r\n    renderStep();\r\n  })();\r\n  <\/script>\r\n<\/div>\r\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-df83d2a e-flex e-con-boxed e-con e-parent\" data-id=\"df83d2a\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5afc01a elementor-widget elementor-widget-spacer\" data-id=\"5afc01a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"spacer.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3a0def7 elementor-widget elementor-widget-html\" data-id=\"3a0def7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!--\r\n  ===================================================================\r\n  Best Finance \u2013 Hilfe-Block \"Sie kommen nicht weiter?\"\r\n  Version 1.3.0\r\n  Stand   2026-07-27\r\n  ===================================================================\r\n  ZWECK\r\n    Blockt unter der Kreditanfrage: Kunde kann anrufen oder per\r\n    WhatsApp schreiben. Die zustaendige Filiale richtet sich nach\r\n    der Sprache bzw. dem Kampagnenparameter fo.\r\n\r\n  EINBAU\r\n    Elementor -> Widget \"HTML\" (Custom HTML), unterhalb des\r\n    Kreditanfrage-Formulars. Alles (CSS\/HTML\/JS) in einem Block.\r\n\r\n  DATENQUELLE\r\n    Alle Stammdaten kommen aus window.CC_CALC\r\n    (cc-calc-werte.php ab 2.1.0, wp_head Prioritaet 1).\r\n    Es wird NICHTS hart eingetragen; die Werte in BFH_FALLBACK\r\n    greifen nur, falls CC_CALC fehlt oder ein Feld leer ist.\r\n\r\n      Aarau (AA)              Lausanne (LS)\r\n      ----------------------  ----------------------\r\n      firma_name              fil_firmenname\r\n      firma_plzort            fil_plzort\r\n      firma_telefon           fil_festnetz\r\n      firma_telefon_link      fil_festnetz_link\r\n      firma_whatsapp          fil_whatsapp\r\n      firma_whatsapp_link     fil_whatsapplink\r\n\r\n    Optional, sobald in cc-calc-werte.php vorhanden \u2013 sonst greifen\r\n    die Standardzeiten weiter unten:\r\n      firma_zeit_von \/ firma_zeit_bis\r\n      fil_zeit_von   \/ fil_zeit_bis\r\n\r\n  ZUORDNUNG\r\n    Filiale:  ?fo=AA|LS  ->  sessionStorage 'bf_fo'  ->  aus Sprache\r\n    Sprache:  ?sp=D|F|I|P|E|U  ->  sessionStorage 'bf_sp'\r\n              ->  URL-Pfad \/fr\/ \/pt\/ ...  ->  <html lang>\r\n    Sprache F oder P  =>  Lausanne, sonst Aarau.\r\n\r\n  TRANSLATEPRESS\r\n    notranslate + data-no-translation + translate=\"no\" am Container.\r\n\r\n  GTM\r\n    event:'bf_kontakt_klick', kanal, filiale, sprache, quelle\r\n\r\n  PRUEFEN\r\n    Konsole:  window.CC_CALC.firma_telefon\r\n              window.BFHilfe        -> Filiale, Sprache, Quelle\r\n  ===================================================================\r\n-->\r\n\r\n<div id=\"bfh-root\" class=\"bfh notranslate\" data-no-translation translate=\"no\">\r\n  <div class=\"bfh-card\">\r\n\r\n    <div class=\"bfh-glow\" aria-hidden=\"true\"><\/div>\r\n\r\n    <div class=\"bfh-head\">\r\n      <span class=\"bfh-eyebrow\" data-bfh=\"eyebrow\"><\/span>\r\n      <h3 class=\"bfh-title\" data-bfh=\"title\"><\/h3>\r\n      <p class=\"bfh-lead\" data-bfh=\"lead\"><\/p>\r\n    <\/div>\r\n\r\n    <div class=\"bfh-actions\">\r\n      <a class=\"bfh-btn bfh-btn--call\" id=\"bfh-call\" href=\"#\">\r\n        <span class=\"bfh-ico\" aria-hidden=\"true\">\r\n          <svg viewBox=\"0 0 24 24\" width=\"22\" height=\"22\" fill=\"none\"\r\n               stroke=\"currentColor\" stroke-width=\"1.9\"\r\n               stroke-linecap=\"round\" stroke-linejoin=\"round\">\r\n            <path d=\"M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.1 1 .4 1.9.7 2.8a2 2 0 0 1-.5 2.1L8.1 9.9a16 16 0 0 0 6 6l1.3-1.3a2 2 0 0 1 2.1-.4c.9.3 1.8.6 2.8.7a2 2 0 0 1 1.7 2z\"\/>\r\n          <\/svg>\r\n        <\/span>\r\n        <span class=\"bfh-btn-txt\">\r\n          <span class=\"bfh-btn-label\" data-bfh=\"callLabel\"><\/span>\r\n          <span class=\"bfh-btn-sub\" id=\"bfh-tel-display\"><\/span>\r\n        <\/span>\r\n        <span class=\"bfh-arrow\" aria-hidden=\"true\">\r\n          <svg viewBox=\"0 0 24 24\" width=\"16\" height=\"16\" fill=\"none\"\r\n               stroke=\"currentColor\" stroke-width=\"2.2\"\r\n               stroke-linecap=\"round\" stroke-linejoin=\"round\">\r\n            <path d=\"M5 12h14M13 6l6 6-6 6\"\/>\r\n          <\/svg>\r\n        <\/span>\r\n      <\/a>\r\n\r\n      <a class=\"bfh-btn bfh-btn--wa\" id=\"bfh-wa\" href=\"#\" target=\"_blank\" rel=\"noopener nofollow\">\r\n        <span class=\"bfh-ico\" aria-hidden=\"true\">\r\n          <svg viewBox=\"0 0 24 24\" width=\"22\" height=\"22\" fill=\"currentColor\">\r\n            <path d=\"M12.04 2C6.58 2 2.13 6.45 2.13 11.91c0 1.75.46 3.46 1.32 4.96L2 22l5.25-1.38a9.9 9.9 0 0 0 4.79 1.22h.01c5.46 0 9.91-4.45 9.91-9.91 0-2.65-1.03-5.14-2.9-7.01A9.82 9.82 0 0 0 12.04 2zm0 18.15h-.01a8.2 8.2 0 0 1-4.19-1.15l-.3-.18-3.12.82.83-3.04-.2-.31a8.2 8.2 0 0 1-1.26-4.38c0-4.54 3.7-8.24 8.25-8.24 2.2 0 4.27.86 5.83 2.42a8.2 8.2 0 0 1 2.41 5.83c0 4.54-3.7 8.23-8.24 8.23zm4.52-6.17c-.25-.12-1.47-.72-1.69-.81-.23-.08-.39-.12-.56.13-.16.24-.64.8-.79.97-.14.16-.29.18-.54.06-.25-.12-1.05-.39-1.99-1.23-.74-.66-1.23-1.47-1.38-1.72-.14-.25-.01-.38.11-.5.11-.11.25-.29.37-.43.13-.15.17-.25.25-.41.08-.17.04-.31-.02-.43-.06-.12-.56-1.34-.76-1.84-.2-.48-.41-.42-.56-.43h-.48c-.16 0-.43.06-.65.31-.22.25-.85.84-.85 2.04s.87 2.37.99 2.53c.12.17 1.71 2.61 4.14 3.66.58.25 1.03.4 1.38.51.58.19 1.11.16 1.53.1.47-.07 1.47-.6 1.68-1.18.21-.58.21-1.08.14-1.18-.06-.11-.22-.17-.47-.29z\"\/>\r\n          <\/svg>\r\n        <\/span>\r\n        <span class=\"bfh-btn-txt\">\r\n          <span class=\"bfh-btn-label\" data-bfh=\"waLabel\"><\/span>\r\n          <span class=\"bfh-btn-sub\" data-bfh=\"waSub\"><\/span>\r\n        <\/span>\r\n        <span class=\"bfh-arrow\" aria-hidden=\"true\">\r\n          <svg viewBox=\"0 0 24 24\" width=\"16\" height=\"16\" fill=\"none\"\r\n               stroke=\"currentColor\" stroke-width=\"2.2\"\r\n               stroke-linecap=\"round\" stroke-linejoin=\"round\">\r\n            <path d=\"M5 12h14M13 6l6 6-6 6\"\/>\r\n          <\/svg>\r\n        <\/span>\r\n      <\/a>\r\n    <\/div>\r\n\r\n    <div class=\"bfh-foot\">\r\n      <span class=\"bfh-status\">\r\n        <span class=\"bfh-dot\" id=\"bfh-dot\"><\/span>\r\n        <span id=\"bfh-status-txt\"><\/span>\r\n      <\/span>\r\n      <span class=\"bfh-sep\" aria-hidden=\"true\">\u00b7<\/span>\r\n      <span class=\"bfh-branch\" id=\"bfh-branch\"><\/span>\r\n    <\/div>\r\n\r\n  <\/div>\r\n<\/div>\r\n\r\n<style>\r\n\/* ---------- Best Finance Hilfe-Block ---------- *\/\r\n#bfh-root{\r\n  --bfh-navy:#1e3a5c;\r\n  --bfh-navy-2:#2b5183;\r\n  --bfh-blue:#3b82f6;\r\n  --bfh-wa:#1fae54;\r\n  --bfh-wa-2:#25d366;\r\n  --bfh-ink:#1b2b3d;\r\n  --bfh-muted:#64748b;\r\n  --bfh-line:#e3eaf3;\r\n  --bfh-bg:#ffffff;\r\n  font-family:inherit;\r\n  color:var(--bfh-ink);\r\n  max-width:760px;\r\n  margin:0 auto;\r\n}\r\n#bfh-root *,#bfh-root *::before,#bfh-root *::after{box-sizing:border-box;}\r\n\r\n#bfh-root .bfh-card{\r\n  position:relative;\r\n  overflow:hidden;\r\n  background:var(--bfh-bg);\r\n  border:1px solid var(--bfh-line);\r\n  border-radius:18px;\r\n  padding:32px 30px 24px;\r\n  box-shadow:0 10px 30px -18px rgba(30,58,92,.35);\r\n}\r\n#bfh-root .bfh-card::before{\r\n  content:\"\";\r\n  position:absolute;left:0;top:0;bottom:0;width:5px;\r\n  background:linear-gradient(180deg,var(--bfh-navy) 0%,var(--bfh-blue) 100%);\r\n}\r\n#bfh-root .bfh-glow{\r\n  position:absolute;right:-90px;top:-110px;\r\n  width:280px;height:280px;border-radius:50%;\r\n  background:radial-gradient(circle,rgba(59,130,246,.13) 0%,rgba(59,130,246,0) 70%);\r\n  pointer-events:none;\r\n}\r\n\r\n#bfh-root .bfh-head{position:relative;margin-bottom:22px;}\r\n#bfh-root .bfh-eyebrow{\r\n  display:inline-block;\r\n  font-size:12px;font-weight:700;letter-spacing:.10em;text-transform:uppercase;\r\n  color:var(--bfh-blue);margin-bottom:8px;\r\n}\r\n#bfh-root .bfh-title{\r\n  margin:0 0 8px;\r\n  font-size:24px;line-height:1.25;font-weight:700;color:var(--bfh-navy);\r\n}\r\n#bfh-root .bfh-lead{\r\n  margin:0;font-size:15.5px;line-height:1.6;color:var(--bfh-muted);max-width:52ch;\r\n}\r\n\r\n#bfh-root .bfh-actions{\r\n  position:relative;\r\n  display:grid;grid-template-columns:1fr 1fr;gap:14px;\r\n}\r\n#bfh-root .bfh-btn{\r\n  display:flex;align-items:center;gap:13px;\r\n  padding:15px 16px;border-radius:12px;\r\n  text-decoration:none!important;color:#fff!important;\r\n  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;\r\n}\r\n#bfh-root .bfh-btn:hover{transform:translateY(-2px);filter:saturate(1.05);}\r\n#bfh-root .bfh-btn:focus-visible{outline:3px solid var(--bfh-blue);outline-offset:3px;}\r\n#bfh-root .bfh-btn--call{\r\n  background:linear-gradient(135deg,var(--bfh-navy) 0%,var(--bfh-navy-2) 100%);\r\n  box-shadow:0 8px 20px -12px rgba(30,58,92,.9);\r\n}\r\n#bfh-root .bfh-btn--call:hover{box-shadow:0 14px 26px -12px rgba(30,58,92,.95);}\r\n#bfh-root .bfh-btn--wa{\r\n  background:linear-gradient(135deg,var(--bfh-wa) 0%,var(--bfh-wa-2) 100%);\r\n  box-shadow:0 8px 20px -12px rgba(31,174,84,.9);\r\n}\r\n#bfh-root .bfh-btn--wa:hover{box-shadow:0 14px 26px -12px rgba(31,174,84,.95);}\r\n\r\n#bfh-root .bfh-ico{\r\n  flex:0 0 auto;display:flex;align-items:center;justify-content:center;\r\n  width:42px;height:42px;border-radius:11px;\r\n  background:rgba(255,255,255,.16);\r\n}\r\n#bfh-root .bfh-btn-txt{display:flex;flex-direction:column;min-width:0;flex:1 1 auto;}\r\n#bfh-root .bfh-btn-label{font-size:15.5px;font-weight:700;line-height:1.25;}\r\n#bfh-root .bfh-btn-sub{\r\n  font-size:13px;line-height:1.35;opacity:.82;margin-top:2px;\r\n  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;\r\n}\r\n#bfh-root .bfh-arrow{flex:0 0 auto;opacity:.6;transition:transform .18s ease;}\r\n#bfh-root .bfh-btn:hover .bfh-arrow{transform:translateX(3px);opacity:1;}\r\n\r\n#bfh-root .bfh-foot{\r\n  display:flex;align-items:center;flex-wrap:wrap;gap:8px;\r\n  margin-top:20px;padding-top:16px;border-top:1px solid var(--bfh-line);\r\n  font-size:13.5px;color:var(--bfh-muted);\r\n}\r\n#bfh-root .bfh-status{display:inline-flex;align-items:center;gap:7px;}\r\n#bfh-root .bfh-dot{width:9px;height:9px;border-radius:50%;background:#cbd5e1;flex:0 0 auto;}\r\n#bfh-root .bfh-dot.is-open{\r\n  background:#22c55e;\r\n  box-shadow:0 0 0 0 rgba(34,197,94,.55);\r\n  animation:bfh-pulse 2.2s infinite;\r\n}\r\n@keyframes bfh-pulse{\r\n  70%{box-shadow:0 0 0 9px rgba(34,197,94,0);}\r\n  100%{box-shadow:0 0 0 0 rgba(34,197,94,0);}\r\n}\r\n#bfh-root .bfh-sep{opacity:.45;}\r\n#bfh-root .bfh-branch{font-weight:600;color:var(--bfh-navy);}\r\n\r\n@media (max-width:700px){\r\n  #bfh-root .bfh-card{padding:26px 20px 20px;border-radius:16px;}\r\n  #bfh-root .bfh-title{font-size:21px;}\r\n  #bfh-root .bfh-actions{grid-template-columns:1fr;}\r\n}\r\n@media (prefers-reduced-motion:reduce){\r\n  #bfh-root .bfh-btn,#bfh-root .bfh-arrow{transition:none;}\r\n  #bfh-root .bfh-dot.is-open{animation:none;}\r\n}\r\n<\/style>\r\n\r\n<script>\r\n(function(){\r\n  \"use strict\";\r\n\r\n  \/* ================================================================\r\n     1) Werte aus window.CC_CALC\r\n     ================================================================ *\/\r\n  var CC = (window.CC_CALC && typeof window.CC_CALC === \"object\") ? window.CC_CALC : {};\r\n\r\n  \/* Nur Notnagel, falls CC_CALC nicht geladen ist oder ein Feld leer.\r\n     Diese Werte sollen NICHT gepflegt werden \u2013 die Pflege laeuft ueber\r\n     Einstellungen -> Kreditrechner.                                   *\/\r\n  var BFH_FALLBACK = {\r\n    firma_name:\"bestfinance.ch\", firma_plzort:\"5001 Aarau\",\r\n    firma_telefon:\"+41 (62) 823 08 03\", firma_telefon_link:\"tel:+41628230803\",\r\n    firma_whatsapp:\"41794505545\", firma_whatsapp_link:\"https:\/\/wa.me\/41794505545\",\r\n    fil_firmenname:\"Best-Finance Sarl\", fil_plzort:\"1004 Lausanne\",\r\n    fil_festnetz:\"021 624 55 45\", fil_festnetz_link:\"tel:0216245545\",\r\n    fil_whatsapp:\"41798167180\", fil_whatsapplink:\"https:\/\/wa.me\/41798167180\"\r\n  };\r\n\r\n  \/* Oeffnungszeiten: erst CC_CALC, sonst diese Standardwerte.\r\n     Sobald firma_zeit_von usw. in cc-calc-werte.php existieren,\r\n     greifen sie automatisch.                                          *\/\r\n  var BFH_ZEIT_STANDARD = { von:\"08:00\", bis:\"17:30\" };\r\n  var BFH_ARBEITSTAGE   = [1,2,3,4,5];   \/* Mo=1 ... Fr=5 *\/\r\n\r\n  \/* V('firma_telefon') -> Wert aus CC_CALC, sonst Fallback *\/\r\n  function V(name, standard){\r\n    var w = CC[name];\r\n    if (w === undefined || w === null || String(w).trim() === \"\"){\r\n      w = (standard !== undefined) ? standard : BFH_FALLBACK[name];\r\n    }\r\n    return (w === undefined || w === null) ? \"\" : String(w).trim();\r\n  }\r\n\r\n  \/* ================================================================\r\n     2) Werte aufbereiten\r\n     ================================================================ *\/\r\n\r\n  \/* CC_CALC liefert bereits \"tel:+41628230803\". Falls leer, aus der\r\n     Anzeigenummer bauen.                                              *\/\r\n  function telZiel(link, anzeige){\r\n    var q = link || anzeige;\r\n    q = q.replace(\/^tel:\/i,\"\");\r\n    var plus = (q.charAt(0) === \"+\") ? \"+\" : \"\";\r\n    q = q.replace(\/\\D\/g,\"\");\r\n    return q ? \"tel:\" + plus + q : \"#\";\r\n  }\r\n\r\n  \/* CC_CALC liefert bereits \"https:\/\/wa.me\/41794505545\". Falls leer,\r\n     aus der Nummer bauen. Der Nachrichtentext wird angehaengt.        *\/\r\n  function waZiel(link, nummer, text){\r\n    var url = link;\r\n    if (!url){\r\n      var n = String(nummer).replace(\/\\D\/g,\"\");\r\n      if (!n){ return \"#\"; }\r\n      url = \"https:\/\/wa.me\/\" + n;\r\n    }\r\n    if (url.indexOf(\"text=\") === -1){\r\n      url += (url.indexOf(\"?\") === -1 ? \"?\" : \"&\") + \"text=\" + encodeURIComponent(text);\r\n    }\r\n    return url;\r\n  }\r\n\r\n  \/* \"5001 Aarau\" -> \"Aarau\" *\/\r\n  function ortAusPlzOrt(s){\r\n    var t = s.replace(\/^\\s*(CH-)?\\d{4}\\s*\/i,\"\").trim();\r\n    return t || s;\r\n  }\r\n\r\n  \/* Stammdaten der gewaehlten Filiale *\/\r\n  function filialDaten(code){\r\n    if (code === \"LS\"){\r\n      return {\r\n        code:\"LS\",\r\n        firma:      V(\"fil_firmenname\"),\r\n        ort:        ortAusPlzOrt(V(\"fil_plzort\")),\r\n        telAnzeige: V(\"fil_festnetz\"),\r\n        telLink:    V(\"fil_festnetz_link\"),\r\n        waNummer:   V(\"fil_whatsapp\"),\r\n        waLink:     V(\"fil_whatsapplink\"),\r\n        zeitVon:    V(\"fil_zeit_von\", BFH_ZEIT_STANDARD.von),\r\n        zeitBis:    V(\"fil_zeit_bis\", BFH_ZEIT_STANDARD.bis)\r\n      };\r\n    }\r\n    return {\r\n      code:\"AA\",\r\n      firma:      V(\"firma_name\"),\r\n      ort:        ortAusPlzOrt(V(\"firma_plzort\")),\r\n      telAnzeige: V(\"firma_telefon\"),\r\n      telLink:    V(\"firma_telefon_link\"),\r\n      waNummer:   V(\"firma_whatsapp\"),\r\n      waLink:     V(\"firma_whatsapp_link\"),\r\n      zeitVon:    V(\"firma_zeit_von\", BFH_ZEIT_STANDARD.von),\r\n      zeitBis:    V(\"firma_zeit_bis\", BFH_ZEIT_STANDARD.bis)\r\n    };\r\n  }\r\n\r\n  \/* ================================================================\r\n     3) Sprache und Filiale\r\n     ================================================================ *\/\r\n  var BFH_SPRACHCODES = {\r\n    \"D\":\"D\",\"DE\":\"D\",\"DE-CH\":\"D\",\r\n    \"F\":\"F\",\"FR\":\"F\",\"FR-CH\":\"F\",\r\n    \"I\":\"I\",\"IT\":\"I\",\"IT-CH\":\"I\",\r\n    \"P\":\"P\",\"PT\":\"P\",\"PT-PT\":\"P\",\r\n    \"E\":\"E\",\"ES\":\"E\",\"ES-ES\":\"E\",\r\n    \"U\":\"U\",\"EN\":\"U\",\"EN-GB\":\"U\",\"EN-US\":\"U\"\r\n  };\r\n  var BFH_SPRACHE_ZU_FILIALE = { D:\"AA\", I:\"AA\", E:\"AA\", U:\"AA\", F:\"LS\", P:\"LS\" };\r\n  var BFH_FILIALEN_BEKANNT   = { AA:1, LS:1 };\r\n  var BFH_FILIALE_FALLBACK   = \"AA\";\r\n\r\n  function urlVar(name){\r\n    var tr = (window.location.search || \"\").match(new RegExp(\"[?&]\"+name+\"=([^&#]*)\",\"i\"));\r\n    return tr ? decodeURIComponent(tr[1].replace(\/\\+\/g,\" \")).trim() : \"\";\r\n  }\r\n  function merken(k,w){ try{ if(w){ window.sessionStorage.setItem(k,w); } }catch(e){} }\r\n  function gemerkt(k){ try{ return window.sessionStorage.getItem(k) || \"\"; }catch(e){ return \"\"; } }\r\n\r\n  function ermittleSprache(){\r\n    var roh = urlVar(\"sp\").toUpperCase();\r\n    if (BFH_SPRACHCODES[roh]){ merken(\"bf_sp\", BFH_SPRACHCODES[roh]); return BFH_SPRACHCODES[roh]; }\r\n\r\n    var ges = gemerkt(\"bf_sp\").toUpperCase();\r\n    if (BFH_SPRACHCODES[ges]){ return BFH_SPRACHCODES[ges]; }\r\n\r\n    var p = (window.location.pathname || \"\").toLowerCase().match(\/^\\\/(fr|pt|it|es|en)(\\\/|$)\/);\r\n    if (p){ return BFH_SPRACHCODES[p[1].toUpperCase()]; }\r\n\r\n    var lang = (document.documentElement.getAttribute(\"lang\") || \"de\").toUpperCase();\r\n    if (BFH_SPRACHCODES[lang]){ return BFH_SPRACHCODES[lang]; }\r\n    if (BFH_SPRACHCODES[lang.split(\"-\")[0]]){ return BFH_SPRACHCODES[lang.split(\"-\")[0]]; }\r\n\r\n    return \"D\";\r\n  }\r\n\r\n  function ermittleFiliale(sprache){\r\n    var roh = urlVar(\"fo\").toUpperCase();\r\n    if (roh){\r\n      merken(\"bf_fo\", roh);\r\n      return { code: BFH_FILIALEN_BEKANNT[roh] ? roh : BFH_FILIALE_FALLBACK, quelle:\"url\" };\r\n    }\r\n    var ges = gemerkt(\"bf_fo\").toUpperCase();\r\n    if (ges){\r\n      return { code: BFH_FILIALEN_BEKANNT[ges] ? ges : BFH_FILIALE_FALLBACK, quelle:\"session\" };\r\n    }\r\n    return { code: BFH_SPRACHE_ZU_FILIALE[sprache] || BFH_FILIALE_FALLBACK, quelle:\"sprache\" };\r\n  }\r\n\r\n  \/* ================================================================\r\n     4) Texte\r\n     ================================================================ *\/\r\n  var BFH_TEXTE = {\r\n    D:{ eyebrow:\"Pers\u00f6nliche Hilfe\",\r\n        title:\"Kommen Sie nicht weiter?\",\r\n        lead:\"Kein Problem \u2013 unsere Kreditberater helfen Ihnen beim Ausf\u00fcllen. Rufen Sie uns an oder schreiben Sie uns kurz per WhatsApp.\",\r\n        callLabel:\"Jetzt anrufen\", waLabel:\"Per WhatsApp schreiben\",\r\n        waSub:\"Antwort meist in wenigen Minuten\",\r\n        open:\"Jetzt erreichbar\", closed:\"Aktuell geschlossen \u2013 wir melden uns\",\r\n        branch:\"Filiale\",\r\n        waText:\"Guten Tag, ich habe eine Frage zu meiner Kreditanfrage auf bestfinance.ch.\" },\r\n\r\n    F:{ eyebrow:\"Aide personnalis\u00e9e\",\r\n        title:\"Vous \u00eates bloqu\u00e9 ?\",\r\n        lead:\"Pas de souci \u2013 nos conseillers vous accompagnent dans votre demande. Appelez-nous ou \u00e9crivez-nous simplement par WhatsApp.\",\r\n        callLabel:\"Appeler maintenant\", waLabel:\"\u00c9crire sur WhatsApp\",\r\n        waSub:\"R\u00e9ponse en quelques minutes\",\r\n        open:\"Disponible maintenant\", closed:\"Actuellement ferm\u00e9 \u2013 nous vous rappelons\",\r\n        branch:\"Succursale\",\r\n        waText:\"Bonjour, j'ai une question concernant ma demande de cr\u00e9dit sur bestfinance.ch.\" },\r\n\r\n    I:{ eyebrow:\"Assistenza personale\",\r\n        title:\"Non riesce a proseguire?\",\r\n        lead:\"Nessun problema \u2013 i nostri consulenti la aiutano a compilare la richiesta. Ci chiami o ci scriva su WhatsApp.\",\r\n        callLabel:\"Chiami ora\", waLabel:\"Scrivere su WhatsApp\",\r\n        waSub:\"Risposta in pochi minuti\",\r\n        open:\"Disponibili ora\", closed:\"Al momento chiuso \u2013 la richiamiamo\",\r\n        branch:\"Filiale\",\r\n        waText:\"Buongiorno, ho una domanda sulla mia richiesta di credito su bestfinance.ch.\" },\r\n\r\n    P:{ eyebrow:\"Ajuda personalizada\",\r\n        title:\"Precisa de ajuda?\",\r\n        lead:\"Sem problema \u2013 os nossos consultores ajudam-no a preencher o pedido. Ligue-nos ou escreva-nos pelo WhatsApp.\",\r\n        callLabel:\"Ligar agora\", waLabel:\"Escrever pelo WhatsApp\",\r\n        waSub:\"Resposta em poucos minutos\",\r\n        open:\"Dispon\u00edvel agora\", closed:\"De momento fechado \u2013 entramos em contacto\",\r\n        branch:\"Filial\",\r\n        waText:\"Bom dia, tenho uma quest\u00e3o sobre o meu pedido de cr\u00e9dito em bestfinance.ch.\" },\r\n\r\n    E:{ eyebrow:\"Ayuda personal\",\r\n        title:\"\u00bfNecesita ayuda?\",\r\n        lead:\"Sin problema \u2013 nuestros asesores le ayudan a completar la solicitud. Ll\u00e1menos o escr\u00edbanos por WhatsApp.\",\r\n        callLabel:\"Llamar ahora\", waLabel:\"Escribir por WhatsApp\",\r\n        waSub:\"Respuesta en pocos minutos\",\r\n        open:\"Disponible ahora\", closed:\"Cerrado por ahora \u2013 le contactamos\",\r\n        branch:\"Sucursal\",\r\n        waText:\"Buenos d\u00edas, tengo una consulta sobre mi solicitud de cr\u00e9dito en bestfinance.ch.\" },\r\n\r\n    U:{ eyebrow:\"Personal support\",\r\n        title:\"Stuck with your application?\",\r\n        lead:\"No problem \u2013 our credit advisors will help you complete it. Give us a call or send us a quick WhatsApp message.\",\r\n        callLabel:\"Call us now\", waLabel:\"Message on WhatsApp\",\r\n        waSub:\"Usually answered within minutes\",\r\n        open:\"Available now\", closed:\"Currently closed \u2013 we'll get back to you\",\r\n        branch:\"Branch\",\r\n        waText:\"Hello, I have a question about my credit application on bestfinance.ch.\" }\r\n  };\r\n\r\n  \/* ================================================================\r\n     5) Oeffnungszeiten, Zeitzone Europe\/Zurich\r\n     ================================================================ *\/\r\n  function istOffen(von, bis){\r\n    try{\r\n      var f = new Intl.DateTimeFormat(\"de-CH\",{\r\n        timeZone:\"Europe\/Zurich\", hour:\"2-digit\", minute:\"2-digit\",\r\n        weekday:\"short\", hour12:false\r\n      });\r\n      var teile = {}, alle = f.formatToParts(new Date()), i;\r\n      for (i=0;i<alle.length;i++){ teile[alle[i].type] = alle[i].value; }\r\n      var wt = {\"So\":0,\"Mo\":1,\"Di\":2,\"Mi\":3,\"Do\":4,\"Fr\":5,\"Sa\":6};\r\n      var tag = wt[(teile.weekday||\"\").replace(\".\",\"\").substring(0,2)];\r\n      if (typeof tag === \"undefined\" || BFH_ARBEITSTAGE.indexOf(tag) === -1){ return false; }\r\n      function inMin(s){ var t = String(s).split(\":\"); return parseInt(t[0],10)*60 + parseInt(t[1]||\"0\",10); }\r\n      var jetzt = parseInt(teile.hour,10)*60 + parseInt(teile.minute,10);\r\n      return jetzt >= inMin(von) && jetzt < inMin(bis);\r\n    }catch(e){ return true; }\r\n  }\r\n\r\n  \/* ================================================================\r\n     6) Aufbau\r\n     ================================================================ *\/\r\n  function init(){\r\n    var wurzel = document.getElementById(\"bfh-root\");\r\n    if (!wurzel){ return; }\r\n\r\n    var sprache = ermittleSprache();\r\n    var t = BFH_TEXTE[sprache] || BFH_TEXTE.D;\r\n\r\n    var wahl = ermittleFiliale(sprache);\r\n    var f = filialDaten(wahl.code);\r\n\r\n    \/* Texte *\/\r\n    var felder = wurzel.querySelectorAll(\"[data-bfh]\"), i, k;\r\n    for (i=0;i<felder.length;i++){\r\n      k = felder[i].getAttribute(\"data-bfh\");\r\n      if (t[k]){ felder[i].textContent = t[k]; }\r\n    }\r\n\r\n    \/* Telefon *\/\r\n    var call = document.getElementById(\"bfh-call\");\r\n    call.setAttribute(\"href\", telZiel(f.telLink, f.telAnzeige));\r\n    document.getElementById(\"bfh-tel-display\").textContent = f.telAnzeige;\r\n\r\n    \/* WhatsApp *\/\r\n    var wa = document.getElementById(\"bfh-wa\");\r\n    wa.setAttribute(\"href\", waZiel(f.waLink, f.waNummer, t.waText));\r\n\r\n    \/* Status + Filiale *\/\r\n    var offen = istOffen(f.zeitVon, f.zeitBis);\r\n    if (offen){ document.getElementById(\"bfh-dot\").className = \"bfh-dot is-open\"; }\r\n    document.getElementById(\"bfh-status-txt\").textContent = offen ? t.open : t.closed;\r\n    document.getElementById(\"bfh-branch\").textContent = t.branch + \" \" + f.ort;\r\n\r\n    \/* Fuer andere Skripte \/ Debugging *\/\r\n    wurzel.setAttribute(\"data-fo\", f.code);\r\n    wurzel.setAttribute(\"data-sp\", sprache);\r\n    window.BFHilfe = {\r\n      filiale:f.code,\r\n      sprache:sprache,\r\n      zuordnung:wahl.quelle,\r\n      ccCalc: (window.CC_CALC ? (CC.cc_calc_version || \"geladen\") : \"FEHLT \u2013 Fallback aktiv\")\r\n    };\r\n\r\n    \/* GTM *\/\r\n    function track(kanal){\r\n      window.dataLayer = window.dataLayer || [];\r\n      window.dataLayer.push({\r\n        event:\"bf_kontakt_klick\",\r\n        kanal:kanal, filiale:f.code, sprache:sprache, quelle:wahl.quelle\r\n      });\r\n    }\r\n    call.addEventListener(\"click\", function(){ track(\"telefon\"); });\r\n    wa.addEventListener(\"click\", function(){ track(\"whatsapp\"); });\r\n  }\r\n\r\n  if (document.readyState === \"loading\"){\r\n    document.addEventListener(\"DOMContentLoaded\", init);\r\n  } else {\r\n    init();\r\n  }\r\n})();\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4653619 elementor-widget elementor-widget-spacer\" data-id=\"4653619\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"spacer.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-233a2359 e-grid e-con-boxed e-con e-parent\" data-id=\"233a2359\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-4924f851 elementor-widget elementor-widget-image\" data-id=\"4924f851\" data-element_type=\"widget\" data-e-type=\"widget\" data-no-translation=\"\" data-widget_type=\"image.default\">\n\t\t\t\t\t<style>.elementor-element-4924f851{display:none !important}<\/style>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6f590f72 elementor-widget elementor-widget-image\" data-id=\"6f590f72\" data-element_type=\"widget\" data-e-type=\"widget\" data-no-translation=\"\" data-widget_type=\"image.default\">\n\t\t\t\t\t<style>.elementor-element-6f590f72{display:none !important}<\/style>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-207c8a87 elementor-widget elementor-widget-image\" data-id=\"207c8a87\" data-element_type=\"widget\" data-e-type=\"widget\" data-no-translation=\"\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"750\" height=\"142\" src=\"https:\/\/www.bestfinance.ch\/wp-content\/uploads\/2024\/10\/zertifikat-it-1024x194.png\" class=\"attachment-large size-large wp-image-196438\" alt=\"Schweizer Zertifikatslogo mit Text\" srcset=\"https:\/\/www.bestfinance.ch\/wp-content\/uploads\/2024\/10\/zertifikat-it-1024x194.png 1024w, https:\/\/www.bestfinance.ch\/wp-content\/uploads\/2024\/10\/zertifikat-it-300x57.png 300w, https:\/\/www.bestfinance.ch\/wp-content\/uploads\/2024\/10\/zertifikat-it-768x145.png 768w, https:\/\/www.bestfinance.ch\/wp-content\/uploads\/2024\/10\/zertifikat-it-18x3.png 18w, https:\/\/www.bestfinance.ch\/wp-content\/uploads\/2024\/10\/zertifikat-it.png 1164w\" sizes=\"(max-width: 750px) 100vw, 750px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30de48b8 elementor-widget elementor-widget-image\" data-id=\"30de48b8\" data-element_type=\"widget\" data-e-type=\"widget\" data-no-translation=\"\" data-widget_type=\"image.default\">\n\t\t\t\t\t<style>.elementor-element-30de48b8{display:none !important}<\/style>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-70f4559f elementor-widget elementor-widget-image\" data-id=\"70f4559f\" data-element_type=\"widget\" data-e-type=\"widget\" data-no-translation=\"\" data-widget_type=\"image.default\">\n\t\t\t\t\t<style>.elementor-element-70f4559f{display:none !important}<\/style>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-430bfa5d elementor-widget elementor-widget-image\" data-id=\"430bfa5d\" data-element_type=\"widget\" data-e-type=\"widget\" data-no-translation=\"\" data-widget_type=\"image.default\">\n\t\t\t\t\t<style>.elementor-element-430bfa5d{display:none !important}<\/style>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>\u00b7<\/p>","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"_seopress_titles_title":"Kredit Schweiz: Schnell und Unverbindlich Anfragen!","_seopress_titles_desc":"Beantragen Sie Ihren Kredit unverbindlich und kostenlos in der Schweiz. Transparenter Prozess, schnelle Entscheidung!","_seopress_robots_index":"","_seopress_robots_follow":"","_seopress_robots_imageindex":"","_seopress_robots_snippet":"","_seopress_robots_primary_cat":"","_seopress_robots_breadcrumbs":"","_seopress_robots_freeze_modified_date":"","_seopress_robots_custom_modified_date":"","_seopress_robots_canonical":"","_seopress_social_fb_title":"bestfinance.ch - Ihr Schweizer Kredit Experte","_seopress_social_fb_desc":"Manchmal fehlt wenig um Ideen schnell und und einfach zu realisieren. Deshalb gibt es den passenden und g\u00fcnstigen Kredit von bestfinance.ch.","_seopress_social_fb_img":"https:\/\/www.bestfinance.ch\/wp-content\/uploads\/2024\/04\/depositphotos_207376390_s.jpg","_seopress_social_fb_img_attachment_id":0,"_seopress_social_fb_img_width":0,"_seopress_social_fb_img_height":0,"_seopress_social_twitter_title":"bestfinance.ch - Ihr Schweizer Kredit Experte","_seopress_social_twitter_desc":"Manchmal fehlt wenig um Ideen schnell und und einfach zu realisieren. Deshalb gibt es den passenden und g\u00fcnstigen Kredit von bestfinance.ch.","_seopress_social_twitter_img":"https:\/\/www.bestfinance.ch\/wp-content\/uploads\/2024\/04\/depositphotos_207376390_s.jpg","_seopress_social_twitter_img_attachment_id":0,"_seopress_social_twitter_img_width":0,"_seopress_social_twitter_img_height":0,"_seopress_redirections_value":"","_seopress_redirections_enabled":"","_seopress_redirections_enabled_regex":"","_seopress_redirections_logged_status":"","_seopress_redirections_param":"","_seopress_redirections_type":301,"_seopress_analysis_target_kw":"Kredit,kredit beantragen,kredit schweiz,kreditrechner,kredit aufnehmen schweiz, kredit beantragen","_seopress_news_disabled":"","_seopress_video_disabled":"","_seopress_video":[{"url":"","title":"","desc":"","thumbnail":"","duration":"","rating":"","view_count":"","tag":"","cat":""}],"_seopress_pro_schemas_manual":[],"_seopress_pro_rich_snippets_disable_all":"","_seopress_pro_rich_snippets_disable":[],"_seopress_pro_schemas":[],"_eb_attr":"","site-sidebar-layout":"no-sidebar","site-content-layout":"page-builder","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"disabled","ast-breadcrumbs-content":"","ast-featured-img":"disabled","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"default","adv-header-id-meta":"","stick-header-meta":"default","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-17132","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.bestfinance.ch\/it\/wp-json\/wp\/v2\/pages\/17132","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.bestfinance.ch\/it\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.bestfinance.ch\/it\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.bestfinance.ch\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bestfinance.ch\/it\/wp-json\/wp\/v2\/comments?post=17132"}],"version-history":[{"count":152,"href":"https:\/\/www.bestfinance.ch\/it\/wp-json\/wp\/v2\/pages\/17132\/revisions"}],"predecessor-version":[{"id":204588,"href":"https:\/\/www.bestfinance.ch\/it\/wp-json\/wp\/v2\/pages\/17132\/revisions\/204588"}],"wp:attachment":[{"href":"https:\/\/www.bestfinance.ch\/it\/wp-json\/wp\/v2\/media?parent=17132"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}