.app-layout{min-height:100vh;display:flex;flex-direction:column}.app-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 2.5rem;border-bottom:1px solid var(--border);background:var(--cream);position:sticky;top:0;z-index:10}.logo{font-family:var(--font-body);font-weight:400;font-size:13px;letter-spacing:.18em;color:var(--ink);text-decoration:none}.header-label{font-size:12px;color:var(--ink-xlight);letter-spacing:.08em;font-weight:300}.app-main{flex:1;display:flex;align-items:flex-start;justify-content:center;padding:4rem 1.5rem}.calculator-wrap{width:100%;max-width:520px}.app-footer{display:flex;justify-content:space-between;padding:1.25rem 2.5rem;border-top:1px solid var(--border);font-size:11px;color:var(--ink-xlight);letter-spacing:.06em}.step-indicator{display:flex;gap:6px;align-items:center;margin-bottom:2.5rem}.step-dot-wrap{display:flex;flex-direction:column;align-items:center;gap:6px;position:relative}.step-dot-wrap:not(:last-child):after{content:"";position:absolute;top:5px;left:calc(100% + 3px);width:18px;height:1px;background:var(--border)}.step-dot-wrap.done:after{background:var(--ink)}.step-dot{width:10px;height:10px;border-radius:50%;border:1px solid var(--border-strong);background:transparent;transition:all .25s var(--ease-out)}.step-dot-wrap.active .step-dot,.step-dot-wrap.done .step-dot{background:var(--ink);border-color:var(--ink)}.step-dot-label{font-size:10px;letter-spacing:.08em;color:var(--ink-xlight);font-weight:400}.step-dot-wrap.active .step-dot-label,.step-dot-wrap.done .step-dot-label{color:var(--ink-light)}.slide{animation:fadeUp .4s var(--ease-out) both}.eyebrow{font-size:11px;letter-spacing:.12em;color:var(--ink-xlight);font-weight:400;margin-bottom:.5rem;text-transform:uppercase}.step-title{font-family:var(--font-display);font-size:36px;font-weight:300;line-height:1.15;color:var(--ink);margin-bottom:.75rem;letter-spacing:-.01em}.resultado-title{font-style:italic}.step-desc{font-size:14px;color:var(--ink-light);margin-bottom:2rem;line-height:1.6;font-weight:300}.step-desc strong{color:var(--ink);font-weight:400}.form-grid{display:flex;flex-direction:column;gap:1.25rem;margin-bottom:2rem}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:12px;letter-spacing:.06em;color:var(--ink-light);font-weight:400}.field input,.field select{padding:11px 14px;border:1px solid var(--border);border-radius:0;background:var(--white);color:var(--ink);font-size:14px;font-weight:300;outline:none;transition:border-color .15s;-moz-appearance:none;appearance:none;-webkit-appearance:none}.field select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%236B6860' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:36px}.field input:focus,.field select:focus{border-color:var(--ink)}.field input.has-error,.field select.has-error{border-color:var(--error)}.field-error{font-size:11px;color:var(--error);letter-spacing:.04em}.field-hint{font-size:11px;color:var(--ink-xlight)}.input-with-unit{position:relative;display:flex;align-items:center}.input-with-unit input{flex:1;padding-right:48px}.unit-badge{position:absolute;right:14px;font-size:12px;color:var(--ink-xlight);letter-spacing:.06em;pointer-events:none}.service-list{display:flex;flex-direction:column;gap:8px;margin-bottom:2rem}.service-card{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border:1px solid var(--border);background:var(--white);cursor:pointer;text-align:left;transition:border-color .15s,background .15s;border-radius:0;gap:12px}.service-card:hover{border-color:var(--border-strong)}.service-card.selected{border-color:var(--ink);background:var(--cream)}.service-card-inner{display:flex;flex-direction:column;gap:3px}.service-name{font-size:14px;font-weight:400;color:var(--ink);letter-spacing:.02em}.service-desc{font-size:12px;color:var(--ink-light);font-weight:300}.service-check{font-size:14px;color:var(--ink);min-width:16px;text-align:right}.btn-row{display:flex;gap:10px;align-items:center;margin-top:.5rem}.btn-primary{display:inline-flex;align-items:center;gap:8px;padding:11px 24px;background:var(--ink);color:var(--cream);border:1px solid var(--ink);font-size:13px;font-weight:400;letter-spacing:.08em;cursor:pointer;text-decoration:none;transition:opacity .15s;border-radius:0}.btn-primary:hover{opacity:.8}.btn-secondary{display:inline-flex;align-items:center;gap:6px;padding:11px 20px;background:transparent;color:var(--ink-light);border:1px solid var(--border);font-size:13px;font-weight:300;letter-spacing:.06em;cursor:pointer;transition:border-color .15s,color .15s;border-radius:0}.btn-secondary:hover{border-color:var(--border-strong);color:var(--ink)}.btn-arrow{font-size:14px;line-height:1}.btn-link{text-decoration:none}.result-hero{display:flex;align-items:stretch;gap:0;border:1px solid var(--border);background:var(--white);margin-bottom:1.5rem;overflow:hidden}.result-hero-uf{flex:1;padding:1.75rem 1.5rem;display:flex;flex-direction:column;gap:4px}.result-big{font-family:var(--font-display);font-size:42px;font-weight:300;color:var(--ink);line-height:1;letter-spacing:-.02em}.result-range{font-size:11px;color:var(--ink-xlight);letter-spacing:.08em;text-transform:uppercase}.result-divider{width:1px;background:var(--border)}.result-hero-pesos{flex:1;padding:1.75rem 1.5rem;display:flex;flex-direction:column;gap:4px;justify-content:center}.result-pesos-label{font-size:11px;color:var(--ink-xlight);letter-spacing:.08em;text-transform:uppercase}.result-pesos-val{font-size:20px;font-weight:400;color:var(--ink);letter-spacing:-.01em}.result-pesos-uf{font-size:11px;color:var(--ink-xlight)}.breakdown{border:1px solid var(--border);background:var(--white);margin-bottom:1rem}.breakdown-header{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;border-bottom:1px solid var(--border);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-xlight)}.breakdown-header-cols{display:flex;gap:60px}.breakdown-row{display:flex;align-items:center;padding:10px 16px;border-bottom:1px solid var(--border);font-size:13px;gap:8px}.breakdown-row:last-child{border-bottom:none}.breakdown-row.muted .br-label,.breakdown-row.muted .br-uf,.breakdown-row.muted .br-pesos{color:var(--ink-light)}.total-row{background:var(--cream);font-weight:400}.br-label{flex:1;color:var(--ink-light);font-weight:300}.total-row .br-label{color:var(--ink);font-weight:400;letter-spacing:.04em}.br-uf{min-width:70px;text-align:right;color:var(--ink);font-weight:400;font-size:13px}.br-pesos{min-width:110px;text-align:right;color:var(--ink-light);font-size:12px;font-weight:300}.piso-note{font-size:11px;color:var(--ink-xlight);margin-bottom:.75rem;letter-spacing:.04em}.disclaimer{font-size:11px;color:var(--ink-xlight);line-height:1.6;padding:12px 16px;border:1px solid var(--border);margin-bottom:1.5rem;letter-spacing:.02em}.resultado-btns{margin-top:0}.redirect-wrap{text-align:center;padding:2rem 0;animation:fadeUp .4s var(--ease-out) both}.redirect-icon{color:var(--ink-xlight);margin-bottom:1.5rem;display:flex;justify-content:center}@media (max-width: 600px){.app-header{padding:1.25rem}.header-label{display:none}.app-main{padding:2.5rem 1.25rem}.app-footer{padding:1rem 1.25rem;flex-direction:column;gap:4px;text-align:center}.step-title{font-size:28px}.result-big{font-size:32px}.result-hero{flex-direction:column}.result-divider{width:auto;height:1px}.br-pesos{display:none}.breakdown-header-cols span:last-child{display:none}.btn-row{flex-direction:column-reverse;align-items:stretch}.btn-primary,.btn-secondary{justify-content:center}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--cream: #F8F6F1;--ink: #1A1815;--ink-light: #6B6860;--ink-xlight: #B0ADA6;--border: #E2DED7;--border-strong: #C8C4BC;--accent: #1A1815;--white: #FFFFFF;--error: #C0392B;--font-display: "Cormorant Garamond", Georgia, serif;--font-body: "Jost", sans-serif;--ease-out: cubic-bezier(.16, 1, .3, 1)}html,body{background:var(--cream);color:var(--ink);font-family:var(--font-body);font-weight:300;font-size:15px;line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased}#root{min-height:100vh;display:flex;flex-direction:column}input,select,button{font-family:var(--font-body)}::selection{background:var(--ink);color:var(--cream)}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes lineGrow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}
