@import "https://fonts.googleapis.com/css2?family=Noto+Sans:wght@400;500;600;700&display=swap";*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--txt:#002236;--muted:#5a6b75;--accent:#eb0f20;--border:#e9eef2;--border2:#d9d9d9;--bg:#f3f6f8;--ok:#23c16b;--white:#fff}body{color:var(--txt);background:var(--bg);-webkit-font-smoothing:antialiased;font-family:Noto Sans,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:1rem;line-height:1.5}#root{flex-direction:column;min-height:100vh;display:flex}a{color:inherit;text-decoration:none}.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.calc-page{background:var(--bg);min-height:calc(100vh - 73px);padding:2rem 0}.stepper{background:var(--white);border:1px solid var(--border);border-radius:12px;align-items:flex-start;width:100%;margin-bottom:1.5rem;padding:1rem 1.5rem;display:flex}.stepper__item{flex-direction:column;align-items:center;gap:.25rem;width:60px;display:flex}.stepper__num{border:2px solid var(--border2);width:2.2rem;height:2.2rem;color:var(--muted);border-radius:50%;justify-content:center;align-items:center;font-size:.95rem;font-weight:700;display:flex}.stepper__lbl{color:var(--muted);white-space:nowrap;font-size:.85rem;font-weight:600}.stepper__item.active .stepper__num{background:var(--accent);border-color:var(--accent);color:#fff}.stepper__item.active .stepper__lbl{color:var(--accent);font-weight:700}.stepper__item.done .stepper__num{background:var(--ok);border-color:var(--ok);color:#fff}.stepper__item.done .stepper__lbl{color:var(--ok);font-weight:700}.stepper__sep{background:var(--border2);border-radius:2px;flex:1;height:2px;margin:1.1rem 1rem 0}.stepper__sep.done{background:var(--ok)}.calc-card{background:var(--white);border:1px solid var(--border);border-radius:18px;width:100%;padding:2rem}.form-section{margin-bottom:1.5rem}.form-section__title{color:var(--txt);margin-top:.5rem;margin-bottom:.75rem;font-size:1rem;font-weight:700}.grid-2{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.grid-3{grid-template-columns:1fr 1fr 1fr;gap:1rem;display:grid}@media (width<=580px){.grid-2,.grid-3{grid-template-columns:1fr}}.field{flex-direction:column;gap:.4rem;display:flex}.field label{color:var(--txt);font-size:.9rem;font-weight:600}.field label .req{color:var(--accent);margin-left:2px}.field input[type=text],.field input[type=date],.field input[type=tel],.field input[type=email],.field input[type=number],.field select{border:1px solid var(--border2);background:var(--white);width:100%;color:var(--txt);border-radius:12px;padding:.8rem 1rem;font-family:inherit;font-size:1rem;transition:box-shadow .15s}.field input:focus,.field select:focus{outline:none;box-shadow:0 0 0 3px #00223614}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}50%{transform:translate(5px)}75%{transform:translate(-5px)}}.field input.err,.field select.err{border-color:var(--accent);animation:.4s ease-in-out shake}@keyframes slideDown{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.field__error{color:var(--accent);font-size:.8rem;animation:.3s ease-out slideDown}.field input:disabled{background:var(--bg);color:#aaa;cursor:not-allowed}.field select{appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23002236' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");background-position:right .75rem center;background-repeat:no-repeat;padding-right:2.5rem}.radio-group{flex-wrap:wrap;gap:.5rem;display:flex}.radio-btn{border:1px solid var(--border2);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:10px;align-items:center;gap:.5rem;padding:.6rem 1rem;font-size:.9rem;transition:border-color .15s,background .15s;display:inline-flex}.radio-btn input{display:none}.radio-btn.sel{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.radio-dot{cursor:pointer;align-items:center;gap:.5rem;font-size:.9rem;display:inline-flex}.radio-dot input[type=radio]{border:2px solid var(--border2);appearance:none;background:var(--white);border-radius:50%;flex-shrink:0;width:1.15rem;min-width:1.15rem;height:1.15rem;position:relative}.radio-dot input[type=radio]:checked{border-color:var(--accent)}.radio-dot input[type=radio]:checked:after{content:"";background:var(--accent);border-radius:50%;position:absolute;inset:3px}.check-label{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--txt);align-items:flex-start;gap:.75rem;font-size:.925rem;line-height:1.5;display:inline-flex}.check-label input[type=checkbox]{border:1px solid var(--border2);appearance:none;background:var(--white);border-radius:4px;flex-shrink:0;width:1.1rem;min-width:1.1rem;height:1.1rem;margin-top:.15rem;position:relative}.check-label input[type=checkbox]:checked{background:#f2fbf4;border-color:#b9e2c4}.check-label input[type=checkbox]:checked:after{content:"";border:2px solid var(--ok);border-top:none;border-left:none;position:absolute;inset:2px 3px 3px 2px;transform:rotate(45deg)}.ins-types{flex-wrap:wrap;gap:.5rem;display:flex}.ins-badge{border:1.5px solid var(--border2);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:10px;align-items:center;gap:.5rem;padding:.6rem 1.25rem;font-size:.95rem;font-weight:700;transition:all .15s;display:inline-flex}.ins-badge input{display:none}.ins-badge.sel{border-color:var(--accent);color:var(--accent);background:#fff0f0}.consents-box{border:1px solid var(--border);background:#f7f9fb;border-radius:12px;flex-direction:column;gap:1.1rem;padding:1.25rem 1.5rem;display:flex}.sep{border:none;border-top:1px solid var(--border);margin:1.25rem 0}.btn{cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:.85rem 1.75rem;font-family:inherit;font-size:1rem;font-weight:600;transition:opacity .15s;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){opacity:.9}.btn-secondary{color:var(--txt);border:1.5px solid var(--border2);background:0 0}.btn-secondary:hover{background:var(--bg)}.btn-full{width:100%}.form-nav{flex-wrap:wrap;justify-content:flex-end;gap:1rem;padding-top:1rem;display:flex}.subsection{background:var(--bg);border-radius:12px;margin-top:.75rem;padding:1rem}.subsection__title{color:var(--txt);margin-bottom:.75rem;font-size:.875rem;font-weight:700}.alert{border-radius:10px;margin-bottom:1rem;padding:.875rem 1rem;font-size:.9rem}.alert-error{color:#c0392b;background:#fff0f0;border:1px solid #f5c6cb}.spinner{border:2px solid #fff6;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.offers-page{background:var(--bg);min-height:calc(100vh - 73px);padding:2rem 1rem}.offer-card{background:var(--white);border:1px solid var(--border);border-radius:18px;max-width:100%;margin:0 auto;padding:1.75rem}.offer-top{border-bottom:2px solid var(--accent);justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem;padding-bottom:1rem;display:flex}.offer-company{align-items:center;gap:.75rem;display:flex}.offer-company img{height:36px}.offer-company span{color:var(--txt);font-size:1.05rem;font-weight:700}.offer-price{color:var(--accent);font-size:2.2rem;font-weight:800}.offer-price small{color:var(--muted);font-size:.875rem;font-weight:400}.offer-info{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;margin-bottom:1.25rem;display:grid}.offer-info-item__label{color:var(--muted);text-transform:uppercase;letter-spacing:.3px;font-size:.78rem;font-weight:600}.offer-info-item__value{color:var(--txt);margin-top:2px;font-size:.95rem}.badges{flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;display:flex}.badge{background:var(--bg);color:var(--txt);border-radius:20px;align-items:center;gap:5px;padding:.35rem .875rem;font-size:.82rem;font-weight:600;display:flex}.badge:before{content:"✓";color:var(--ok);margin-right:2px;font-weight:800}.offer-actions{flex-wrap:wrap;gap:.75rem;display:flex}.offer-actions .btn{flex:1;min-width:160px}.calc-data-box{background:var(--bg);border-radius:12px;margin-bottom:1.5rem;padding:1.1rem}.calc-data-box__title{color:var(--muted);text-transform:uppercase;letter-spacing:.4px;margin-bottom:.75rem;font-size:.78rem;font-weight:700}.calc-data-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.5rem 1.5rem;display:grid}.calc-data-item{gap:6px;font-size:.875rem;display:flex}.calc-data-item__label{color:var(--muted);flex-shrink:0;font-weight:600}.modal-overlay{z-index:9999;background:#00000080;justify-content:center;align-items:flex-start;padding:2rem 1rem;display:flex;position:fixed;inset:0;overflow-y:auto}.modal{background:var(--white);border-radius:18px;width:100%;max-width:580px;margin:auto;padding:2rem;position:relative;box-shadow:0 8px 40px #00000026}.modal__close{cursor:pointer;color:var(--muted);background:0 0;border:none;font-size:1.5rem;line-height:1;position:absolute;top:.875rem;right:1rem}.modal__title{color:var(--txt);border-bottom:2px solid var(--accent);margin-bottom:1.25rem;padding-bottom:.5rem;font-size:1.2rem;font-weight:700}.modal__summary{background:var(--bg);border-radius:10px;margin-bottom:1.25rem;padding:.875rem 1rem;font-size:.875rem}.success-icon{text-align:center;color:var(--ok);margin-bottom:.5rem;font-size:2.5rem}.policy-details{background:var(--bg);border-radius:10px;margin:1rem 0;padding:1.1rem}.policy-row{border-bottom:1px solid var(--border);justify-content:space-between;padding:.4rem 0;font-size:.875rem;display:flex}.policy-row:last-child{border:none}.policy-row__label{color:var(--muted);font-weight:600}.policy-row__value{color:var(--txt);font-family:monospace;font-weight:700}.order-success{text-align:center}.success-icon-wrapper{margin-bottom:1rem}.success-icon{color:var(--ok);font-size:3rem;line-height:1}.success-title{color:var(--txt);margin-bottom:.5rem;font-size:1.5rem;font-weight:800}.success-subtitle{color:var(--muted);margin-bottom:1.5rem;font-size:.95rem}.policy-details-card{background:var(--bg);text-align:left;border:1px solid var(--border);border-radius:16px;margin-bottom:1.5rem;padding:1.5rem}.policy-detail-item{flex-direction:column;gap:4px;margin-bottom:1.25rem;display:flex}.policy-detail-item:last-child{margin-bottom:0}.detail-label{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;font-size:.75rem;font-weight:700}.detail-value{color:var(--txt);font-size:1rem;font-weight:700}.detail-value.highlighted{color:var(--accent);font-family:monospace;font-size:1.25rem}.detail-value.account-number{letter-spacing:.5px;border:1px solid var(--border);background:#fff;border-radius:8px;padding:8px 12px;font-family:monospace;font-size:.85rem}.installments-section{border-top:1px solid var(--border2);flex-direction:column;gap:1rem;margin-top:.5rem;padding-top:1.25rem;display:flex}.installment{margin-bottom:0}.due-date{color:var(--muted);margin-left:10px;font-size:.8rem;font-weight:400}.next-steps-info{text-align:left;border-left:4px solid var(--accent);background:#fff8f8;border-radius:0 12px 12px 0;padding:1.25rem}.next-steps-info h3{color:var(--txt);margin-bottom:.75rem;font-size:1rem;font-weight:700}.next-steps-info ul{color:var(--muted);padding-left:1.25rem;font-size:.9rem}.next-steps-info li{margin-bottom:.5rem}.next-steps-info strong{color:var(--txt)}
