.cs-reporte,
.cs-reporte * { box-sizing: border-box; }
.cs-reporte { background:#fff; color:#16243D; font-family:"Montserrat",Arial,sans-serif; -webkit-font-smoothing:antialiased; width:100%; }
.cs-reporte a { text-decoration:none; }
.cs-container { width:min(1200px, calc(100% - 48px)); margin:0 auto; }
.cs-hero { background:#F2F5F9; padding:64px 0 72px; }
.cs-hero-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:48px; align-items:center; }
.cs-eyebrow { display:inline-block; font-size:12px; line-height:1; font-weight:600; letter-spacing:.12em; color:#2E3192; background:#fff; border:1px solid #D8E2EF; border-radius:100px; padding:9px 16px; margin-bottom:22px; }
.cs-hero h1 { font-size:46px; line-height:1.15; font-weight:700; color:#16243D; margin:0 0 20px; letter-spacing:-.02em; }
.cs-hero h1 span,.cs-form-aside h2 span,.cs-form-aside p span { color:#2E3192; }
.cs-hero-copy { font-size:17px; line-height:1.7; color:#696E77; margin:0 0 30px; max-width:52ch; }
.cs-benefits { display:flex; flex-direction:column; gap:14px; margin-bottom:34px; }
.cs-benefit { display:flex; align-items:center; gap:12px; font-size:15px; line-height:1.4; font-weight:500; color:#16243D; }
.cs-benefit svg { flex:none; }
.cs-before-card { background:#16243D; border-radius:8px; padding:40px; }
.cs-before-card h2 { color:#fff; font-size:22px; line-height:1.3; font-weight:600; margin:0 0 8px; }
.cs-before-card > p { font-size:14px; line-height:1.6; color:#9FADC2; margin:0 0 26px; }
.cs-before-list { display:flex; flex-direction:column; gap:20px; }
.cs-before-item { display:flex; gap:16px; }
.cs-before-item > span { flex:none; width:30px; height:30px; border-radius:50%; background:#2E3192; color:#fff; font-size:13px; line-height:30px; font-weight:600; text-align:center; }
.cs-before-item p { font-size:14px; line-height:1.65; color:#DDE4EE; margin:0; }
.cs-before-item strong { color:#fff; font-weight:600; }
.cs-btn { display:inline-flex; align-items:center; justify-content:center; gap:10px; border-radius:4px; border:0; padding:16px 30px; font-family:inherit; font-size:15px; line-height:1; font-weight:500; cursor:pointer; transition:.22s ease; text-decoration:none !important; }
.cs-btn-primary { color:#fff !important; background:#2E3192; }
.cs-btn-primary:hover { background:#16243D; color:#fff !important; }
.cs-btn-primary:disabled { opacity:.65; cursor:wait; }
.cs-btn-outline { color:#2E3192 !important; background:#fff; border:1px solid #D8E2EF; }
.cs-btn-outline:hover { border-color:#2E3192; color:#2E3192 !important; }
.cs-btn-whatsapp { background:#29A9E0; color:#fff !important; padding:14px 22px; font-size:14px; }
.cs-btn-whatsapp:hover { background:#16243D; color:#fff !important; }
.cs-form-section { background:#fff; padding:76px 0 88px; scroll-margin-top:0; }
.cs-form-layout { display:grid; grid-template-columns:minmax(250px,340px) minmax(0,1fr); gap:44px; align-items:start; }
.cs-form-aside { position:sticky; top:24px; display:flex; flex-direction:column; gap:24px; max-width:340px; }
.cs-form-aside h2 { font-size:30px; line-height:1.25; font-weight:700; color:#16243D; margin:0 0 14px; }
.cs-form-aside > div:first-child p { font-size:15px; line-height:1.7; color:#696E77; margin:0; }
.cs-progress-wrap { display:flex; flex-direction:column; gap:18px; }
.cs-progress-track { height:6px; border-radius:100px; background:#E9EEF5; overflow:hidden; }
.cs-progress-bar { height:100%; width:17%; border-radius:100px; background:#29A9E0; transition:width .4s ease; }
.cs-step-nav { display:flex; flex-direction:column; gap:2px; }
.cs-step-nav-item { display:flex; align-items:center; gap:14px; padding:11px 12px; border-radius:6px; border:0; text-align:left; width:100%; background:transparent; cursor:pointer; font-family:inherit; }
.cs-step-nav-item:disabled { cursor:default; opacity:1; }
.cs-step-nav-number { flex:none; width:28px; height:28px; border-radius:100px; font-size:12px; line-height:28px; font-weight:600; text-align:center; background:#E9EEF5; color:#A8B2C1; }
.cs-step-nav-label { font-size:14px; line-height:1.4; font-weight:500; color:#A8B2C1; }
.cs-step-nav-item.is-active { background:#F2F5F9; }
.cs-step-nav-item.is-active .cs-step-nav-number { background:#2E3192; color:#fff; }
.cs-step-nav-item.is-active .cs-step-nav-label { color:#16243D; font-weight:600; }
.cs-step-nav-item.is-done .cs-step-nav-number { background:#29A9E0; color:#fff; }
.cs-step-nav-item.is-done .cs-step-nav-label { color:#16243D; }
.cs-help-card { background:#F2F5F9; border-radius:8px; padding:26px; }
.cs-help-card h3 { font-size:16px; line-height:1.4; font-weight:600; color:#16243D; margin:0 0 8px; }
.cs-help-card p { font-size:14px; line-height:1.6; color:#696E77; margin:0 0 18px; }
.cs-form-main { min-width:0; }
.cs-form { display:flex; flex-direction:column; gap:22px; }
.cs-step { border:1px solid #E6EBF3; border-radius:8px; padding:36px; scroll-margin-top:24px; }
.cs-step[hidden] { display:none !important; }
.cs-step-heading { display:flex; align-items:center; gap:14px; margin-bottom:28px; }
.cs-step-heading > span { flex:none; width:34px; height:34px; border-radius:100px; background:#F2F5F9; color:#2E3192; font-size:14px; line-height:34px; font-weight:600; text-align:center; }
.cs-step-heading h3 { font-size:20px; line-height:1.3; font-weight:600; color:#16243D; margin:0; }
.cs-grid-2 { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.cs-field { display:flex; flex-direction:column; gap:9px; min-width:0; }
.cs-field-full { margin-top:22px; }
.cs-field label { font-size:13px; line-height:1.3; font-weight:600; color:#16243D; }
.cs-field label span { color:#2E3192; }
.cs-field input,.cs-field textarea { width:100%; border:1px solid #D9E1EC; border-radius:4px; padding:13px 14px; font-family:inherit; font-size:15px; line-height:1.4; font-weight:400; color:#16243D; background:#fff; outline:none; transition:border-color .2s,box-shadow .2s; }
.cs-field textarea { resize:vertical; min-height:138px; }
.cs-field input::placeholder,.cs-field textarea::placeholder { color:#A8B2C1; opacity:1; }
.cs-field input:focus,.cs-field textarea:focus { border-color:#2E3192; box-shadow:0 0 0 3px rgba(46,49,146,.12); }
.cs-subtitle { font-size:12px; line-height:1; font-weight:500; letter-spacing:.1em; color:#8E96A3; margin:0 0 18px; }
.cs-subtitle-spaced { margin-top:30px; }
.cs-intro { font-size:14px; line-height:1.6; color:#696E77; margin:-10px 0 26px; }
.cs-step-actions { display:flex; flex-wrap:wrap; align-items:center; gap:14px; margin-top:30px; padding-top:26px; border-top:1px solid #EDF1F7; }
.cs-step-label { font-size:13px; line-height:1.6; font-weight:400; color:#8E96A3; }
.cs-upload { display:flex; flex-direction:column; align-items:center; gap:8px; text-align:center; border:1px dashed #B9C6D8; border-radius:6px; background:#F8FAFD; padding:34px; cursor:pointer; transition:border-color .2s,background .2s; }
.cs-upload:hover { border-color:#2E3192; background:#F2F5F9; }
.cs-upload input { display:none; }
.cs-upload-title { font-size:15px; line-height:1.4; font-weight:600; color:#16243D; }
.cs-upload-copy { font-size:13px; line-height:1.5; font-weight:400; color:#8E96A3; }
.cs-file-list { display:flex; flex-direction:column; gap:10px; margin-top:12px; }
.cs-file-row { display:flex; align-items:center; gap:10px; font-size:14px; line-height:1.4; color:#16243D; overflow-wrap:anywhere; }
.cs-file-row svg { flex:none; }
.cs-consent { display:flex; align-items:flex-start; gap:12px; margin-top:30px; cursor:pointer; }
.cs-consent input { width:19px; height:19px; margin:2px 0 0; accent-color:#2E3192; flex:none; cursor:pointer; }
.cs-consent span { font-size:14px; line-height:1.6; color:#696E77; }
.cs-success-card { border:1px solid #E6EBF3; border-top:4px solid #29A9E0; border-radius:8px; padding:48px; box-shadow:0 12px 32px rgba(22,36,61,.06); }
.cs-success-icon { display:block; margin-bottom:22px; }
.cs-success-card h2 { font-size:30px; line-height:1.25; font-weight:700; color:#16243D; margin:0 0 14px; }
.cs-success-card > p { font-size:16px; line-height:1.7; color:#696E77; margin:0 0 26px; max-width:56ch; }
.cs-success-meta { display:flex; flex-wrap:wrap; gap:16px; margin-bottom:32px; }
.cs-success-meta > div { background:#F2F5F9; border-radius:6px; padding:20px 26px; min-width:200px; }
.cs-success-meta span { display:block; font-size:12px; line-height:1; font-weight:500; letter-spacing:.1em; color:#8E96A3; margin-bottom:8px; }
.cs-success-meta strong { font-size:18px; line-height:1.2; font-weight:600; color:#16243D; }
.cs-actions { display:flex; flex-wrap:wrap; gap:14px; }
.cs-info-section { background:#F2F5F9; padding:64px 0; }
.cs-info-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:36px; }
.cs-info-grid h3 { font-size:18px; line-height:1.4; font-weight:600; color:#16243D; margin:0 0 10px; }
.cs-info-grid p { font-size:15px; line-height:1.7; font-weight:400; color:#696E77; margin:0; }
.cs-alert { border-radius:6px; padding:14px 18px; margin-bottom:18px; font-size:14px; line-height:1.55; }
.cs-alert-error { color:#8A1C1C; background:#FFF3F3; border:1px solid #F0CACA; }
.cs-hp { position:absolute !important; left:-99999px !important; width:1px !important; height:1px !important; overflow:hidden !important; }

@media (max-width:900px) {
  .cs-hero-grid { grid-template-columns:1fr; }
  .cs-form-layout { grid-template-columns:1fr; }
  .cs-form-aside { position:static; max-width:none; }
  .cs-info-grid { grid-template-columns:1fr; gap:28px; }
}
@media (max-width:640px) {
  .cs-container { width:min(100% - 32px,1200px); }
  .cs-hero { padding:44px 0 52px; }
  .cs-hero h1 { font-size:36px; }
  .cs-before-card { padding:28px 24px; }
  .cs-form-section { padding:52px 0 64px; }
  .cs-grid-2 { grid-template-columns:1fr; }
  .cs-step { padding:26px 20px; }
  .cs-form-aside h2,.cs-success-card h2 { font-size:26px; }
  .cs-success-card { padding:32px 22px; }
  .cs-btn { width:100%; }
  .cs-step-label { width:100%; }
  .cs-success-meta > div { width:100%; }
}
