/* ============================================================
   CAPTACIÓN / VALUACIÓN — funnel multi-paso
   Hereda tokens de tokens.css (oro, glass, serif/sans).
   No depende de styles.css salvo .container/.faux-glass/.btn-*.
   ============================================================ */

/* Sección */
.valuacion{padding:clamp(80px,12vw,150px) 0;position:relative}
.valuacion::before{
  content:'';position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(ellipse 60% 55% at 85% 0%,rgba(193,154,91,.12),transparent 60%)
}
.valuacion .container{position:relative;z-index:1}

/* Layout: imán (izq) + tarjeta form (der) */
.val-grid{
  display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(28px,4vw,64px);align-items:start
}
@media(max-width:900px){.val-grid{grid-template-columns:1fr;gap:36px}}

/* Columna imán / promesa */
.val-magnet{max-width:520px}
.val-magnet h2{
  font-family:var(--font-serif);font-size:clamp(2rem,3.8vw,3rem);font-weight:600;
  line-height:1.12;margin-bottom:1.2rem
}
.val-magnet .val-lead{font-size:1.05rem;color:var(--text-dim);line-height:1.8;margin-bottom:var(--sp-4)}
.val-bullets{list-style:none;display:flex;flex-direction:column;gap:14px;margin-bottom:var(--sp-4)}
.val-bullets li{display:flex;align-items:flex-start;gap:12px;color:#e9e3d8;font-size:.97rem;line-height:1.5}
.val-bullets svg{flex-shrink:0;color:var(--gold);margin-top:2px}
.val-trust{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding-top:var(--sp-2);border-top:1px solid rgba(193,154,91,.18)}
.val-trust-item{display:flex;align-items:center;gap:9px;color:var(--text-dim);font-size:.82rem}
.val-trust-item strong{color:#f5f1ea;font-family:var(--font-serif);font-size:1.5rem;font-weight:600;line-height:1}
.val-trust svg{color:var(--gold);flex-shrink:0}

/* Tarjeta del formulario */
.val-card{padding:clamp(26px,3.4vw,44px);border-radius:var(--radius-lg)}

/* Barra de progreso */
.vprogress{margin-bottom:var(--sp-3)}
.vprogress-top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}
.vprogress-step{font-size:.7rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.vprogress-title{font-size:.82rem;color:var(--text-dim)}
.vprogress-track{height:4px;border-radius:4px;background:rgba(255,255,255,.08);overflow:hidden}
.vprogress-fill{height:100%;width:33%;border-radius:4px;background:linear-gradient(90deg,var(--gold-dark),var(--gold-light));transition:width .5s var(--ease)}

/* Pasos */
.vstep{display:none;flex-direction:column;gap:var(--sp-3);animation:vstepIn .4s var(--ease) both}
.vstep.active{display:flex}
@keyframes vstepIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.vstep{animation:none}.vprogress-fill{transition:none}}

.vstep-q{font-family:var(--font-serif);font-size:1.45rem;font-weight:600;line-height:1.25}
.vstep-hint{font-size:.85rem;color:var(--text-dim);margin-top:-8px}

/* Choice cards (radio accesible) */
.vchoices{display:grid;gap:12px}
.vchoices.cols-2{grid-template-columns:1fr 1fr}
@media(max-width:480px){.vchoices.cols-2{grid-template-columns:1fr}}
.vchoice{position:relative}
.vchoice input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.vchoice label{
  display:flex;align-items:center;gap:13px;cursor:pointer;
  padding:16px 18px;min-height:58px;border-radius:var(--radius);
  background:rgba(255,255,255,.04);border:1px solid rgba(193,154,91,.25);
  color:#e9e3d8;font-size:.96rem;font-weight:500;line-height:1.3;
  transition:border-color .3s var(--ease),background .3s var(--ease),transform .2s var(--ease)
}
.vchoice label .vchoice-ico{
  flex-shrink:0;width:34px;height:34px;display:grid;place-items:center;border-radius:7px;
  background:rgba(193,154,91,.12);color:var(--gold);transition:background .3s var(--ease)
}
.vchoice label:hover{border-color:rgba(193,154,91,.5);background:rgba(255,255,255,.06)}
.vchoice input:checked + label{
  border-color:var(--gold);background:rgba(193,154,91,.12);
  box-shadow:inset 0 0 0 1px var(--gold)
}
.vchoice input:checked + label .vchoice-ico{background:var(--gold);color:#0a0a0a}
.vchoice input:focus-visible + label{outline:2px solid var(--gold);outline-offset:3px}
.vchoice .vchoice-check{margin-left:auto;opacity:0;color:var(--gold);transition:opacity .25s var(--ease)}
.vchoice input:checked + label .vchoice-check{opacity:1}

/* Inputs de texto (reusa look de .form) */
.vfield{display:flex;flex-direction:column;gap:8px}
.vfield label{font-size:.7rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.vfield .req{color:var(--gold);margin-left:2px}
.vfield input{
  width:100%;min-height:48px;padding:13px 15px;
  background:rgba(255,255,255,.04);border:1px solid rgba(193,154,91,.25);border-radius:var(--radius);
  color:#f5f1ea;font-family:var(--font-sans);font-size:1rem;line-height:1.5;
  transition:border-color .35s var(--ease),background .35s var(--ease)
}
.vfield input::placeholder{color:var(--text-faint)}
.vfield input:hover{border-color:rgba(193,154,91,.4)}
.vfield input:focus{outline:none;border-color:var(--gold);background:rgba(255,255,255,.06)}
.vfield input[aria-invalid="true"]{border-color:#e0726b}
.vfield-error{color:#e0726b;font-size:.8rem}
.vchoice-error{color:#e0726b;font-size:.8rem;margin-top:-4px}

/* Navegación de pasos */
.vnav{display:flex;align-items:center;gap:14px;margin-top:6px}
.vnav .btn-gold,.vnav .vback{flex-shrink:0}
.vnav .btn-gold{flex:1;justify-content:center}
.vback{
  display:inline-flex;align-items:center;gap:8px;background:none;border:none;cursor:pointer;
  color:var(--text-dim);font-family:var(--font-sans);font-size:.78rem;font-weight:500;
  letter-spacing:.12em;text-transform:uppercase;padding:10px 4px;min-height:44px;
  transition:color .3s var(--ease)
}
.vback:hover{color:var(--gold)}
.vback svg{transition:transform .3s var(--ease)}
.vback:hover svg{transform:translateX(-3px)}

/* Reaseguro bajo el form */
.val-reassure{
  display:flex;align-items:center;justify-content:center;gap:9px;margin-top:var(--sp-2);
  color:var(--text-faint);font-size:.78rem;text-align:center
}
.val-reassure svg{color:var(--gold);flex-shrink:0}

/* Estado de envío */
.vstatus{margin-top:var(--sp-2)}
.vsuccess{
  display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center;padding:18px 16px;
  border:1px solid rgba(193,154,91,.35);border-radius:var(--radius);background:rgba(193,154,91,.08)
}
.vsuccess .vsuccess-ico{
  width:56px;height:56px;display:grid;place-items:center;border-radius:50%;
  background:rgba(193,154,91,.16);color:var(--gold)
}
.vsuccess h4{font-family:var(--font-serif);font-size:1.4rem;font-weight:600;color:#f5f1ea}
.vsuccess p{color:var(--text-dim);font-size:.92rem;line-height:1.6;max-width:360px}

/* Bloque de estimado preliminar (Capa 1) */
.vest{
  width:100%;margin:4px 0 2px;padding:18px 20px;border-radius:var(--radius);
  background:linear-gradient(180deg,rgba(193,154,91,.14),rgba(193,154,91,.05));
  border:1px solid rgba(193,154,91,.4);text-align:center
}
.vest-lbl{font-size:.66rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:8px}
.vest-range{font-family:var(--font-serif);font-size:clamp(1.7rem,4.5vw,2.3rem);font-weight:600;color:#f5f1ea;line-height:1.1}
.vest-range span{color:var(--gold);font-style:italic;margin:0 4px}
.vest-range small{font-family:var(--font-sans);font-size:.9rem;color:var(--text-dim);font-weight:400}
.vest-range--sm{font-size:clamp(1.4rem,3.6vw,1.8rem)}
.vest-note{color:var(--text-faint);font-size:.78rem;line-height:1.5;margin-top:8px;max-width:none}
.verror-box{
  border:1px solid rgba(224,114,107,.45);border-radius:var(--radius);
  background:rgba(224,114,107,.08);padding:16px 18px;text-align:center
}
.verror-box p{color:#f0b7b2;font-size:.9rem;margin-bottom:14px}

/* ============================================================
   Landing dedicada /vender — variantes mínimas
   ============================================================ */
.vender-hero{
  position:relative;padding:clamp(120px,16vw,180px) 0 clamp(60px,8vw,90px);overflow:hidden;background:#070707
}
.vender-hero::before{
  content:'';position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(ellipse 70% 60% at 50% -10%,rgba(193,154,91,.14),transparent 62%)
}
.vender-hero .container{position:relative;z-index:1}
.vender-hero .val-grid{align-items:center}
.vender-tag{
  display:inline-block;font-size:.7rem;font-weight:600;letter-spacing:.24em;text-transform:uppercase;
  color:var(--gold);padding:8px 16px;border:1px solid rgba(193,154,91,.35);border-radius:40px;margin-bottom:var(--sp-3)
}
.vender-mini-nav{
  position:absolute;top:0;left:0;right:0;z-index:10;padding:20px 0
}
.vender-mini-nav .container{display:flex;align-items:center;justify-content:space-between}
.vender-mini-nav .logo-img{height:42px;width:auto;border-radius:3px}
.vender-mini-nav a.vender-wa{
  display:inline-flex;align-items:center;gap:8px;color:var(--gold);text-decoration:none;
  font-size:.78rem;font-weight:600;letter-spacing:.1em
}
/* Franja de prueba social en /vender */
.vender-proof{padding:clamp(50px,7vw,80px) 0;border-top:1px solid rgba(193,154,91,.14)}
.vender-proof-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
@media(max-width:760px){.vender-proof-grid{grid-template-columns:1fr}}
.vender-proof-card{padding:26px;border-radius:var(--radius-lg)}
.vender-proof-card p{color:var(--text-dim);font-size:.95rem;line-height:1.7;font-style:italic;margin-bottom:14px}
.vender-proof-card .vpc-name{color:#f5f1ea;font-weight:600;font-size:.9rem}
.vender-proof-card .vpc-zone{color:var(--gold);font-size:.78rem;letter-spacing:.08em}
.vender-stars{display:flex;gap:3px;margin-bottom:12px;color:var(--gold)}
