:root{
  --bg:#eef3fb;
  --bg2:#f7f9fd;
  --card:#ffffff;
  --text:#122033;
  --muted:#5f6f85;
  --border:#d9e3f2;
  --brand:#0d47c9;
  --brand-dark:#0a2f85;
  --brand-soft:#e7efff;
  --inputbg:#f8fbff;
  --ok-bg:#ecfdf3;
  --ok-border:#a7f3d0;
  --ok-text:#065f46;
  --err-bg:#fff2f2;
  --err-border:#fecaca;
  --err-text:#991b1b;
  --shadow:0 18px 50px rgba(13,33,89,.10);
  --radius:22px;
  --radius-sm:14px;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  min-height:100vh;
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at top left, rgba(13,71,201,.12), transparent 24%),
    radial-gradient(circle at top right, rgba(58,119,255,.10), transparent 22%),
    linear-gradient(180deg, #edf3ff 0%, #f8faff 38%, #edf2fb 100%);
}
.container{width:min(1120px,calc(100% - 32px));margin:0 auto}
.topbar{
  position:sticky;top:0;z-index:10;
  background:linear-gradient(90deg,var(--brand-dark),var(--brand));
  box-shadow:0 10px 24px rgba(8,38,112,.22);
}
.topbar__inner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 0}
.brand{display:flex;align-items:center;gap:16px;min-width:0}
.brand__img{width:min(320px,45vw);height:auto;display:block}
.brand__text{display:flex;flex-direction:column;gap:2px;color:#fff}
.brand__eyebrow{font-size:12px;letter-spacing:.12em;text-transform:uppercase;opacity:.86}
.brand__title{font-size:22px;font-weight:800;line-height:1.05}
.brand__subtitle{font-size:13px;opacity:.92}
.topbar__pill{
  color:#fff;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);
  padding:10px 14px;border-radius:999px;font-size:13px;font-weight:700;white-space:nowrap
}
.page-shell{padding:34px 0 24px}
.hero-panel{
  display:flex;align-items:stretch;justify-content:space-between;gap:18px;
  background:linear-gradient(135deg, rgba(255,255,255,.92), rgba(235,243,255,.96));
  border:1px solid rgba(217,227,242,.95);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  padding:24px;
  margin-bottom:22px;
}
.hero-copy h1{margin:0 0 10px;font-size:clamp(30px,4vw,42px);line-height:1.02;color:var(--brand-dark)}
.hero-copy p{margin:0;max-width:720px;color:var(--muted);font-size:15px;line-height:1.6}
.hero-badge{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--brand-soft);color:var(--brand-dark);
  border:1px solid #c7d9ff;border-radius:999px;padding:8px 12px;
  font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin-bottom:14px
}
.hero-side{display:grid;grid-template-columns:1fr;gap:12px;min-width:240px}
.hero-kpi{
  background:#fff;border:1px solid var(--border);border-radius:18px;padding:16px 18px;
  display:flex;flex-direction:column;justify-content:center;min-height:92px
}
.hero-kpi strong{font-size:18px;color:var(--brand-dark)}
.hero-kpi span{margin-top:6px;color:var(--muted);font-size:13px}
.card{
  background:rgba(255,255,255,.96);
  border:1px solid var(--border);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  padding:28px;
}
.card--form{backdrop-filter:blur(10px)}
.section-title{display:flex;justify-content:space-between;gap:16px;align-items:end;margin-bottom:22px}
.section-title h2{margin:0;color:var(--brand-dark);font-size:28px}
.section-title p{margin:0;color:var(--muted);font-size:14px}
.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 18px}
.field{display:flex;flex-direction:column;gap:8px;min-width:0}
.field--full{grid-column:1/-1}
label{font-size:14px;font-weight:800;color:#0f2444}
input,select,textarea{
  width:100%;appearance:none;
  border:1px solid #cad7ee;border-radius:14px;
  background:var(--inputbg);color:var(--text);
  padding:14px 15px;font-size:15px;outline:none;
  transition:border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
select{padding-right:44px;background-image:linear-gradient(45deg,transparent 50%,#4b5f82 50%),linear-gradient(135deg,#4b5f82 50%,transparent 50%);background-position:calc(100% - 20px) calc(50% - 3px),calc(100% - 14px) calc(50% - 3px);background-size:6px 6px,6px 6px;background-repeat:no-repeat}
textarea{resize:vertical;min-height:150px}
input::placeholder,textarea::placeholder{color:#7988a1}
input:focus,select:focus,textarea:focus{border-color:#6f98ff;box-shadow:0 0 0 4px rgba(90,129,255,.16);background:#fff}
input[aria-invalid="true"],select[aria-invalid="true"],textarea[aria-invalid="true"]{border-color:#ef4444;box-shadow:0 0 0 4px rgba(239,68,68,.12)}
.hint{font-size:12px;color:var(--muted);line-height:1.4}
code{background:#eff4ff;padding:2px 6px;border-radius:7px;color:var(--brand-dark)}
.consent{
  display:flex;align-items:flex-start;gap:12px;padding:14px 16px;
  border:1px solid var(--border);border-radius:16px;background:#fff
}
.consent--legal{position:relative;cursor:pointer;transition:border-color .18s ease, box-shadow .18s ease, background .18s ease}
.consent--legal:hover{border-color:#b7caf0;background:#fbfdff}
.consent__check{
  position:absolute;opacity:0;pointer-events:none;width:1px;height:1px;margin:0
}
.consent__box{
  width:22px;height:22px;flex:0 0 22px;margin-top:1px;
  border:2px solid var(--brand);border-radius:7px;background:#fff;
  display:inline-flex;align-items:center;justify-content:center;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
  transition:all .18s ease;
}
.consent__box::after{
  content:"";width:6px;height:11px;border:solid #fff;border-width:0 3px 3px 0;
  transform:rotate(45deg) scale(.65);opacity:0;transition:all .16s ease;margin-top:-2px
}
.consent__check:checked + .consent__box{background:linear-gradient(135deg,var(--brand),var(--brand-dark));border-color:var(--brand-dark);box-shadow:0 8px 16px rgba(13,71,201,.22)}
.consent__check:checked + .consent__box::after{opacity:1;transform:rotate(45deg) scale(1)}
.consent__check:focus-visible + .consent__box{outline:0;box-shadow:0 0 0 4px rgba(90,129,255,.18)}
.consent__check[aria-invalid="true"] + .consent__box{border-color:#ef4444;box-shadow:0 0 0 4px rgba(239,68,68,.10)}
.consent__text{font-size:14px;line-height:1.5;font-weight:700;color:#193050}
.consent__text a{color:var(--brand);text-decoration:none}
.consent__text a:hover{text-decoration:underline}
.actions{display:flex;gap:12px;align-items:center;justify-content:space-between;margin-top:22px;flex-wrap:wrap}
.actions--center{justify-content:center}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  min-width:172px;min-height:50px;padding:0 18px;border:0;border-radius:14px;
  background:linear-gradient(135deg,var(--brand),var(--brand-dark));color:#fff;
  font-weight:800;font-size:15px;cursor:pointer;text-decoration:none;
  box-shadow:0 14px 26px rgba(13,71,201,.20);transition:transform .16s ease,opacity .16s ease,box-shadow .16s ease
}
.btn:hover{transform:translateY(-1px);box-shadow:0 16px 30px rgba(13,71,201,.24)}
.btn:disabled{opacity:.65;cursor:not-allowed;transform:none;box-shadow:none}
.btn--ghost{background:#fff;color:var(--brand-dark);border:1px solid #c4d5f7;box-shadow:none}
.status{margin-top:18px;padding:0;border-radius:14px;font-weight:700;min-height:0;line-height:1.45}
.status:not(:empty){padding:14px 16px;border:1px solid transparent}
.status--ok{background:var(--ok-bg);border-color:var(--ok-border);color:var(--ok-text)}
.status--err{background:var(--err-bg);border-color:var(--err-border);color:var(--err-text)}
.card--result{text-align:center;padding:34px}
.result__icon{
  width:74px;height:74px;border-radius:50%;margin:0 auto 16px;
  display:grid;place-items:center;font-size:34px;font-weight:900;
  color:var(--ok-text);background:var(--ok-bg);border:1px solid var(--ok-border)
}
.card--result h2{margin:0 0 10px;color:var(--brand-dark)}
.card--result p{margin:0 0 14px;color:var(--muted)}
.radicado{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:180px;padding:14px 18px;background:#f3f7ff;border:1px solid #c8d8fb;
  border-radius:16px;font-size:26px;font-weight:900;color:var(--brand-dark);letter-spacing:.03em
}
.footer{padding:20px 16px 36px;text-align:center;color:#607089;font-size:13px}
.hidden{display:none!important}

@media (max-width: 980px){
  .hero-panel{flex-direction:column}
  .hero-side{grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}
}
@media (max-width: 760px){
  .container{width:min(100% - 18px,1120px)}
  .topbar__inner{padding:14px 0;align-items:flex-start;flex-direction:column}
  .brand{align-items:flex-start}
  .brand__img{width:min(280px,70vw)}
  .brand__title{font-size:20px}
  .topbar__pill{display:none}
  .page-shell{padding-top:16px}
  .hero-panel,.card{padding:18px}
  .section-title{flex-direction:column;align-items:flex-start}
  .grid{grid-template-columns:1fr;gap:16px}
  .actions{flex-direction:column}
  .btn{width:100%}
  .hero-side{grid-template-columns:1fr}
}


.topbar__pill--link{text-decoration:none}
.hero-panel--single{justify-content:flex-start}
.hero-followup{margin-top:10px;font-weight:600;color:var(--brand-dark)}
.hero-followup a{color:var(--brand);text-decoration:none}
.hero-followup a:hover{text-decoration:underline}
.result__followup{margin:14px auto 0;max-width:540px;color:var(--muted)}
.result__followup a{color:var(--brand);font-weight:700;text-decoration:none}
.result__followup a:hover{text-decoration:underline}
