.vc-hero{
  display:flex;align-items:center;gap:16px;margin:0 0 14px;
  background:linear-gradient(135deg, rgba(0,78,140,.08), rgba(0,78,140,.02));
  border:1px solid #eef2f6;border-radius:14px;padding:14px 16px
}
.vc-hero__icon{
  flex:0 0 48px;width:48px;height:48px;border-radius:12px;
  display:grid;place-items:center;color:#fff;
  background:linear-gradient(180deg,#004e8c,#0b4a7a);
  box-shadow:0 8px 16px rgba(0,78,140,.22)
}
.vc-hero__icon svg{width:26px;height:26px}
.vc-hero__eyebrow{margin:0 0 2px;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:#5b6572}
.vc-hero__title{margin:0;line-height:1.15;color:#004e8c;font-weight:800;font-size:28px}
@media (max-width:768px){ .vc-hero__title{font-size:22px} }
.vc-hero__desc{margin:.2rem 0 0;color:#5b6572}

/* CARD form con top accent */
.vc-card--form{position:relative;overflow:hidden}
.vc-card--form::before{
  content:"";position:absolute;left:0;top:0;right:0;height:4px;
  background:linear-gradient(90deg,#004e8c,#37a6ff 60%, #0b4a7a);
}

/* Form en columnas con FLEX (no grid) */
.vc-form--cols{display:flex;flex-wrap:wrap;margin:-6px}
.vc-form--cols .vc-field,
.vc-form--cols .vc-actions{padding:6px;width:100%;box-sizing:border-box}

@media (min-width:901px){
  .vc-form--cols .vc-field:nth-child(1){width:50%}       /* 6/12 */
  .vc-form--cols .vc-field:nth-child(2){width:33.333%}   /* 4/12 */
  .vc-form--cols .vc-field:nth-child(3){width:50%}       /* 6/12 */
  .vc-form--cols .vc-actions{width:100%}
}

/* Inputs “premium” */
.vc-form input[type="email"], .vc-form input[type="text"]{
  background:#fff;border:1px solid #d9e1ea;border-radius:12px;padding:13px 14px;font-size:15px;
  transition:border-color .2s cubic-bezier(.2,.6,.2,1), box-shadow .2s cubic-bezier(.2,.6,.2,1), transform .15s cubic-bezier(.2,.6,.2,1)
}
.vc-form input:focus{
  border-color:#004e8c;
  box-shadow:0 0 0 4px rgba(0,78,140,.12), 0 10px 20px rgba(0,0,0,.04);
  transform:translateY(-1px)
}

/* Botón XL + icono + spinner */
.vc-btn--xl{min-height:48px;font-size:15px;padding:12px 18px}
.vc-btn__icon{width:18px;height:18px;margin-right:6px}
.vc-btn.is-loading .vc-spinner{display:inline-block}
.vc-spinner{display:none;width:16px;height:16px;border-radius:50%;
  border:2px solid rgba(255,255,255,.55);border-top-color:#fff;animation:vc-spin 1s linear infinite;margin-left:10px}

/* Barra de seguridad */
.vc-safe{display:flex;align-items:center;gap:8px;margin-left:14px;color:#5b6572}
.vc-safe__lock{
  width:18px;height:18px;display:inline-block;border-radius:4px;
  background:linear-gradient(180deg,#004e8c,#0b4a7a);
  -webkit-mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="white" d="M12 1a5 5 0 00-5 5v3H6a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2v-8a2 2 0 00-2-2h-1V6a5 5 0 00-5-5zm-3 8V6a3 3 0 016 0v3H9z"/></svg>') center / 18px 18px no-repeat;
          mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="white" d="M12 1a5 5 0 00-5 5v3H6a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2v-8a2 2 0 00-2-2h-1V6a5 5 0 00-5-5zm-3 8V6a3 3 0 016 0v3H9z"/></svg>') center / 18px 18px no-repeat;
}

/* ================================
   HERO “aduanera” + formulario pro
   (compat: sin var() ni grid)
   ================================ */

/* Hero banner */
.vc-hero{
  position:relative;
  overflow:hidden;
  margin:0 0 22px;
  border-radius:18px;
  padding:56px 22px;
  color:#fff;
  background:#0b1f3a;                  /* fallback si no hay imagen */
  box-shadow:0 18px 50px rgba(0,0,0,.12);
}
.vc-hero::before{
  content:"";
  position:absolute; inset:0;
  background:url("../img/hero-aduanas.jpg") center/cover no-repeat; /* cambia la ruta si usas otra imagen */
  opacity:.35;                         /* foto sutil debajo */
}
.vc-hero::after{
  content:"";
  position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(7,25,48,.55), rgba(7,25,48,.75));
}
.vc-hero > *{ position:relative; z-index:1; } /* eleva contenido sobre overlays */

.vc-hero__icon{
  width:56px;height:56px;border-radius:14px;
  display:grid;place-items:center;margin-right:12px;
  background:rgba(255,255,255,.12);
  box-shadow:0 10px 24px rgba(0,0,0,.25)
}
.vc-hero__icon svg{width:28px;height:28px}

.vc-hero__eyebrow{
  margin:0 0 6px;
  font-size:12px;letter-spacing:.08em;text-transform:uppercase;
  color:#c7d6ea
}
.vc-hero__title{
  margin:0;
  font-weight:800;
  line-height:1.1;
  color:#fff;
  font-size:clamp(26px,4.5vw,44px)
}
.vc-hero__desc{
  margin:6px 0 0;
  color:#e6eef8;
  font-size:15px
}

/* Card del formulario: “flotante” bajo el hero */
.vc-card.vc-card--form{
  background:#fff;
  border:1px solid #e8edf3;
  border-radius:16px;
  padding:18px;
  box-shadow:0 20px 50px rgba(0,0,0,.12);
  margin-top:-28px;                    /* se monta ligeramente sobre el hero */
}

/* Inputs “premium” (mejor contraste y foco) */
.vc-form label{font-weight:700;color:#004e8c}
.vc-form input[type="email"],
.vc-form input[type="text"]{
  background:#fff;
  border:1px solid #d9e1ea;
  border-radius:12px;
  padding:13px 14px;
  font-size:15px;
  width:100%;
  transition:border-color .2s ease, box-shadow .2s ease, transform .15s ease
}
.vc-form input:focus{
  outline:none;
  border-color:#0a4e8c;
  box-shadow:0 0 0 4px rgba(10,78,140,.15), 0 10px 20px rgba(0,0,0,.05);
  transform:translateY(-1px)
}

/* Botón grande con icono y spinner */
.vc-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px}
.vc-btn{
  display:inline-flex;align-items:center;gap:10px;
  background:linear-gradient(180deg,#004e8c,#0b4a7a);
  color:#fff;border:0;border-radius:12px;
  padding:12px 18px;font-weight:700;cursor:pointer;
  min-height:48px;font-size:15px;
  transition:transform .15s ease, filter .15s ease, box-shadow .15s ease
}
.vc-btn:hover{transform:translateY(-2px);filter:brightness(.98);box-shadow:0 10px 24px rgba(0,78,140,.22)}
.vc-btn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}
.vc-btn__icon{width:18px;height:18px}
.vc-spinner{display:none;width:16px;height:16px;border-radius:50%;
  border:2px solid rgba(255,255,255,.55);border-top-color:#fff;animation:vc-spin 1s linear infinite;margin-left:8px}
.vc-btn.is-loading .vc-spinner{display:inline-block}
@keyframes vc-spin{to{transform:rotate(360deg)}}

/* “Consulta protegida” */
.vc-safe{display:flex;align-items:center;gap:8px;margin-left:6px;color:#5b6572}
.vc-safe__lock{
  width:18px;height:18px;border-radius:4px;background:#0b4a7a;
  -webkit-mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="white" d="M12 1a5 5 0 00-5 5v3H6a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2v-8a2 2 0 00-2-2h-1V6a5 5 0 00-5-5zm-3 8V6a3 3 0 016 0v3H9z"/></svg>') center/18px 18px no-repeat;
          mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="white" d="M12 1a5 5 0 00-5 5v3H6a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2v-8a2 2 0 00-2-2h-1V6a5 5 0 00-5-5zm-3 8V6a3 3 0 016 0v3H9z"/></svg>') center/18px 18px no-repeat;
}

/* Tipografía & ayudas dentro de “help” */
.vc-help h3{font-weight:800;color:#004e8c}
.vc-note{color:#5b6572}

/* Responsive fino */
@media (min-width:900px){
  /* más aire en escritorio */
  .vc-hero{padding:68px 28px}
  .vc-card.vc-card--form{padding:22px}
}


/* Pequeños realces */
.vc-card h3{font-weight:800;color:#004e8c}


