:root{--navy:#0b3154;--blue:#145980;--sky:#dff3f8;--orange:#e98220;--ink:#162636;--muted:#617080;--line:#d7e1e8;--paper:#fff;--bg:#f3f7f9;--danger:#ad2b2b;--shadow:0 18px 60px rgba(15,45,70,.12)}
*{box-sizing:border-box}html{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}body{margin:0;min-height:100vh;background:linear-gradient(180deg,#e8f4f7 0,#f3f7f9 420px)}button,input{font:inherit}.site-header{height:76px;padding:0 max(24px,calc((100vw - 1160px)/2));display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.94);border-bottom:1px solid rgba(11,49,84,.1)}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--navy)}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--navy);color:white;font-weight:900;letter-spacing:-.05em}.brand strong,.brand small{display:block}.brand strong{font-size:1rem}.brand small{font-size:.78rem;color:var(--muted);margin-top:2px}.help-link{font-weight:700;color:var(--blue);text-decoration:none}.shell{width:min(1120px,calc(100% - 32px));margin:0 auto 64px}.intro{padding:58px 0 32px;max-width:680px}.eyebrow{margin:0 0 8px;text-transform:uppercase;letter-spacing:.14em;color:var(--orange);font-weight:800;font-size:.78rem}.intro h1{margin:0;color:var(--navy);font-size:clamp(2rem,5vw,3.45rem);line-height:1.04;letter-spacing:-.04em}.intro>p:last-child{font-size:1.05rem;line-height:1.6;color:var(--muted);margin:16px 0 0}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:18px}.step{display:flex;align-items:center;gap:10px;padding:13px 16px;border:0;border-radius:12px;background:rgba(255,255,255,.68);color:#71808e;text-align:left}.step span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#e4ebef;font-weight:800}.step b{font-size:.9rem}.step.is-active{background:var(--navy);color:#fff}.step.is-active span{background:var(--orange)}.step.is-complete{color:var(--navy)}.step.is-complete span{background:#b9e4d2}.panel{padding:clamp(24px,4vw,48px);background:var(--paper);border:1px solid rgba(11,49,84,.08);border-radius:20px;box-shadow:var(--shadow)}.panel-heading{display:flex;gap:18px;align-items:flex-start;margin-bottom:32px}.section-number{font-size:.75rem;font-weight:900;color:var(--orange);letter-spacing:.12em;padding-top:7px}.panel-heading h2{margin:0;color:var(--navy);font-size:clamp(1.4rem,3vw,2rem)}.panel-heading p{margin:7px 0 0;color:var(--muted);line-height:1.5}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.form-grid label,.upload-grid label{font-size:.88rem;font-weight:700;color:#33495b}.form-grid input{display:block;width:100%;margin-top:8px;padding:13px 14px;border:1px solid var(--line);border-radius:10px;background:#fbfdfe;color:var(--ink);min-height:48px}.form-grid input:focus,.upload-box:focus-within{outline:3px solid rgba(20,89,128,.16);border-color:var(--blue)}.full{grid-column:1/-1}.actions{display:flex;justify-content:space-between;gap:12px;margin-top:34px}.primary,.secondary{min-height:48px;border-radius:10px;padding:0 22px;font-weight:800;cursor:pointer}.primary{border:0;background:var(--orange);color:#1f2630}.primary:hover{background:#f19a43}.primary:disabled{opacity:.6;cursor:wait}.secondary{border:1px solid var(--line);background:white;color:var(--navy)}.vehicle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;border:0;padding:0;margin:0}.vehicle-card{position:relative;border:2px solid transparent;border-radius:15px;background:#f5f8fa;overflow:hidden;cursor:pointer;transition:.18s ease}.vehicle-card:has(input:checked){border-color:var(--orange);box-shadow:0 0 0 4px rgba(233,130,32,.13)}.vehicle-card input{position:absolute;top:12px;right:12px;width:20px;height:20px;accent-color:var(--orange);z-index:2}.vehicle-photo{display:block;aspect-ratio:16/9;background:linear-gradient(135deg,#bdd6df,#e7f1f4);overflow:hidden}.vehicle-photo img{width:100%;height:100%;object-fit:cover}.vehicle-photo img:not([src]),.vehicle-photo img[src=""]{display:none}.vehicle-copy{display:block;padding:15px 16px}.vehicle-copy strong,.vehicle-copy small{display:block}.vehicle-copy strong{color:var(--navy)}.vehicle-copy small{color:var(--muted);margin-top:5px;font-size:.8rem}.upload-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.upload-box{display:grid;grid-template-columns:auto 1fr;gap:2px 14px;align-items:center;padding:20px;border:1.5px dashed #9eb6c5;border-radius:14px;background:#f9fcfd;cursor:pointer}.upload-icon{grid-row:1/3;display:grid;place-items:center;width:42px;height:42px;border-radius:10px;background:var(--sky);color:var(--blue);font-weight:900}.upload-box small{color:var(--muted);font-weight:500}.upload-box input{grid-column:1/-1;margin-top:12px;width:100%;font-size:.8rem}.security-note{padding:14px 16px;border-left:3px solid var(--blue);background:#edf7fa;color:#405668;line-height:1.5}.summary{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.summary-item{padding:15px;border-radius:11px;background:#f4f7f9}.summary-item span,.summary-item strong{display:block}.summary-item span{font-size:.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.summary-item strong{margin-top:5px;color:var(--navy)}.deposit-card{margin-top:18px;padding:22px;border-radius:14px;background:var(--navy);color:white}.deposit-card div{display:flex;align-items:center;justify-content:space-between;gap:20px}.deposit-card strong{color:#ffc477}.deposit-card p{margin:12px 0 0;color:#d5e4ed;line-height:1.5;font-size:.9rem}.check{display:flex;gap:10px;align-items:flex-start;margin-top:22px;line-height:1.45}.check input{margin-top:4px;accent-color:var(--orange)}.check a{color:var(--blue)}.notice{margin-bottom:16px;padding:14px 18px;border-radius:10px;background:#fff0da;color:#70410d;border:1px solid #f2c98d}.field-error{border-color:var(--danger)!important;box-shadow:0 0 0 3px rgba(173,43,43,.1)}footer{text-align:center;color:var(--muted);font-size:.82rem;padding:0 20px 32px}.legal-panel{margin-top:48px;max-width:780px;line-height:1.65}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:760px){.site-header{height:66px;padding:0 16px}.help-link{font-size:.82rem}.shell{width:min(100% - 20px,1120px)}.intro{padding:34px 8px 24px}.steps{gap:4px}.step{display:grid;place-items:center;padding:9px 3px;gap:4px}.step b{font-size:.7rem}.form-grid,.upload-grid,.summary{grid-template-columns:1fr}.vehicle-grid{grid-template-columns:repeat(2,1fr)}.panel{border-radius:15px;padding:24px 18px}.actions{align-items:stretch}.actions button{flex:1;padding:0 10px}.deposit-card div{display:block}.deposit-card strong{display:block;margin-top:6px}}
.brand-mark{display:block;width:52px;height:52px;border-radius:12px;object-fit:cover;background:transparent;color:var(--navy);font-weight:900;letter-spacing:-.05em}
@media(max-width:450px){.brand small{display:none}.vehicle-grid{grid-template-columns:1fr}.panel-heading{gap:10px}.step span{width:25px;height:25px}}

/* Dos vías de aportación por documento: cámara o archivo existente. */
.upload-box{cursor:default}
.upload-box>strong{font-size:.9rem;color:#33495b}
.upload-box>small{color:var(--muted);font-weight:500;font-size:.8rem}
.upload-actions{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-top:16px}
.upload-action{display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px 10px;border-radius:9px;font-size:.82rem!important;font-weight:800!important;text-align:center;cursor:pointer}
.camera-action{background:var(--blue);color:#fff!important}
.file-action{background:#fff;color:var(--navy)!important;border:1px solid var(--line)}
.upload-action:focus-within{outline:3px solid rgba(20,89,128,.2)}
.upload-action input{position:absolute!important;width:1px!important;height:1px!important;margin:0!important;opacity:0;pointer-events:none}
.selected-file{grid-column:1/-1;margin-top:9px;color:var(--muted);font-size:.78rem;overflow-wrap:anywhere}
.upload-box.field-error{background:#fff8f8}
@media(max-width:450px){.upload-actions{grid-template-columns:1fr}}
:root{--discount-bg:#fff3df}
.security-note>div+div{margin-top:10px;padding-top:10px;border-top:1px solid rgba(20,89,128,.18)}
.discount-price{color:#9a520f}.discount-price strong{color:#7d3f08}
.upload-preview{grid-column:1/-1;max-width:180px;max-height:110px;margin-top:10px;border-radius:8px;object-fit:cover}.upload-progress{grid-column:1/-1;color:var(--blue);font-size:.78rem;margin-top:6px}
.payment-result{max-width:760px;margin:32px auto}.payment-result .panel-heading{margin-bottom:16px}.payment-result>p{color:var(--muted);line-height:1.6}.payment-reference{font-weight:700;color:var(--navy)!important}.payment-back{display:inline-flex;align-items:center;text-decoration:none;margin-top:14px}
