/* YesConsulta.com — Ecosystem Homologation Landing (serious, imposing) */
:root{
  --bg:#0F1115;
  --panel:#12151C;
  --card:#161A22;
  --ink:#EAECEF;
  --muted:#97A1B2;
  --brand:#EC6E00;
  --danger:#EF4444;
  --ok:#16A34A;
  --ring: rgba(236,110,0,.3);
  --radius:14px;
  --shadow:0 20px 60px rgba(0,0,0,.45);
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, Apple Color Emoji, Segoe UI Emoji;
  background:var(--bg);color:var(--ink);line-height:1.55;
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
}

.no-select{
  -webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;
}

.wrap{width:min(1120px,92vw);margin-inline:auto}

.topbar{position:sticky;top:0;z-index:50;background:linear-gradient(180deg,#0F1115,#0C0E12);
  border-bottom:1px solid rgba(255,255,255,.06);backdrop-filter:saturate(1.1) blur(8px)}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:14px 0}
.brand{display:flex;align-items:center;gap:16px;font-weight:800;letter-spacing:.4px;text-transform:uppercase}
.brand-claim{font-weight:800;color:#fff;opacity:.92}
.divider{height:26px;width:1px;background:rgba(255,255,255,.14)}

.help-link{color:var(--muted);text-decoration:none}
.help-link:hover{color:#fff}

.hero{border-bottom:1px solid rgba(255,255,255,.06);background: radial-gradient(1200px 380px at 50% -10%, rgba(236,110,0,.25), transparent 60%), linear-gradient(180deg,#11141A, #0F1115)}
.hero-inner{padding:58px 0 34px}
h1{font-size:2.4rem;line-height:1.15;margin:0 0 8px;font-weight:800;letter-spacing:.2px}
.lede{color:var(--muted);max-width:920px}
.pills{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 0;padding:0;list-style:none}
.pills li{border:1px solid rgba(255,255,255,.12);background:#0D1016;padding:.35rem .7rem;border-radius:999px;font-size:.9rem;color:#B8C0CF}

.panel{background:linear-gradient(180deg,#0F1115, #0B0D12);padding:24px 0 60px}

.card{
  background:var(--card);
  border:1px solid rgba(255,255,255,.08);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  padding:22px;
  margin:18px 0;
}
legend{font-weight:800;letter-spacing:.3px;padding:0 8px;color:#fff}

.grid.two{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media (max-width:920px){.grid.two{grid-template-columns:1fr}}

.field{display:block}
.field span{display:block;margin-bottom:6px;font-weight:600}
.field input, .field select, .field textarea{
  width:100%;background:#0E1117;color:#EAECEF;
  border:1px solid rgba(255,255,255,.12);
  border-radius:12px;padding:.8rem 1rem;outline:none;
}
.field input:focus,.field select:focus,.field textarea:focus{
  border-color:var(--brand);box-shadow:0 0 0 6px var(--ring)
}
.hint{color:var(--muted);font-size:.85rem}

.muted{color:var(--muted)}
.req{color:#ffb199}

.check-items{display:grid;gap:12px;margin-top:8px}
.check-row{
  display:grid;grid-template-columns:1.4fr .9fr 1fr;gap:12px;
  padding:14px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:#0E1218
}
@media (max-width:920px){.check-row{grid-template-columns:1fr}}
.check-meta strong{font-weight:700}
.tag{display:inline-flex;align-items:center;gap:8px;margin-right:10px}
.notes span{display:block;margin-bottom:6px}
.notes input{width:100%}

.upload-zone{display:flex;align-items:center;gap:12px;justify-content:flex-start;border:1px dashed rgba(255,255,255,.22);
  border-radius:12px;padding:18px;background:#0E1218}
.file-list{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:8px}
.file-item{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#0E1117;border:1px solid rgba(255,255,255,.12);
  border-radius:10px;padding:10px}
.file-meta{display:flex;align-items:center;gap:10px}
.badge{border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:.2rem .5rem;font-size:.8rem;color:#C7CFDC}

.btn{display:inline-flex;align-items:center;gap:10px;border:1px solid var(--brand);background:var(--brand);color:#111;
  font-weight:800;border-radius:12px;padding:.85rem 1.1rem;cursor:pointer;transition:.2s}
.btn.primary{box-shadow:0 10px 30px rgba(236,110,0,.35)}
.btn:hover{transform:translateY(-1px)}
.btn:disabled{opacity:.5;cursor:not-allowed}
.btn.ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.22)}

.actions{display:flex;justify-content:flex-end;margin-top:16px}

.terms{margin-top:18px}
.terms h3{margin:0 0 10px}
.terms-box{
  max-height:220px;overflow:auto;border:1px solid rgba(255,255,255,.12);
  background:#0E1117;border-radius:12px;padding:14px
}
.terms-box.small{max-height:none}
.agree{display:flex;align-items:flex-start;gap:10px;margin-top:10px}

.tiny{font-size:.8rem}

.modal{border:none;border-radius:16px;padding:0;background:transparent}
.modal::backdrop{background:rgba(0,0,0,.65);backdrop-filter:blur(2px)}
.modal-inner{background:#0E1117;border:1px solid rgba(255,255,255,.12);border-radius:16px;min-width:min(880px,92vw)}
.modal-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.08);padding:14px 16px}
.modal-body{padding:16px}
.modal-foot{display:flex;justify-content:flex-end;border-top:1px solid rgba(255,255,255,.08);padding:12px 16px}
.icon-btn{background:transparent;border:1px solid rgba(255,255,255,.18);border-radius:10px;color:#fff;padding:.25rem .6rem;cursor:pointer}

.review-table{width:100%;border-collapse:collapse}
.review-table th,.review-table td{border-bottom:1px solid rgba(255,255,255,.1);padding:10px;vertical-align:top}
.review-table th{width:28%;text-align:left}

.shield{
  position:fixed;inset:0;background:rgba(0,0,0,.6);backdrop-filter:blur(2px) saturate(0.7);
  display:none;z-index:1000
}
.shield.active{display:block}
