/* ══════════════════════════════════════════════════════════════
   CCP · FORMULARIO ENTREVISTA (/contacto/) — 25-09-2026 · rev. 28-09
   El idioma del sitio: versalitas DM Sans, títulos en Aboreto, rojo solo
   para lo que se opera. Nada de cajas rellenas.
   🔴 28-09 (Claudio): todo a la vista y sin líneas de escribir al ancho de
   la página — "arma muchos cortes". Los campos cortos van en dos columnas,
   con un marco fino; las partes se separan con aire, no con filetes.
   ══════════════════════════════════════════════════════════════ */
.ent [hidden]{display:none!important}
.ent-intro{margin:0 0 clamp(26px,4vh,40px);max-width:62ch}
.ent-intro p{font-size:15px;line-height:1.75;color:var(--gris);margin:0 0 12px}
.ent-intro .ent-hola{font-family:"Aboreto",serif;font-size:clamp(22px,2.6vw,30px);color:var(--tinta);margin:0 0 14px;line-height:1.2}

.ent{position:relative}
.ent-trampa{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* la ficha: lo que cuesta llenarlo, antes de empezar */
.ent-ficha{display:flex;flex-wrap:wrap;gap:8px 26px;margin:0 0 clamp(34px,6vh,54px);font-family:"DM Sans",sans-serif;
  font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gris)}
.ent-ficha b{font-weight:500;color:var(--tinta);font-size:13px;letter-spacing:.08em;margin-right:2px}
.ent-ficha i{font-style:normal}

.ent-parte{margin:0 0 clamp(44px,7vh,68px)}
.ent-t{display:flex;align-items:baseline;gap:14px;font-family:"Aboreto",serif;font-weight:400;font-size:clamp(20px,2.2vw,26px);
  line-height:1.2;margin:0 0 clamp(20px,3vh,28px);color:var(--tinta)}
.ent-num{font-family:"DM Sans",sans-serif;font-size:11px;letter-spacing:.2em;color:var(--rojo)}

.ent-grilla{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}
.ent-q{border:0;margin:0 0 clamp(24px,3.6vh,34px);padding:0;min-width:0}
.ent-grilla .ent-q{margin-bottom:20px}
.ent-l{display:block;padding:0;margin:0 0 10px;font-family:"Nunito Sans",sans-serif;font-size:16px;line-height:1.5;color:var(--tinta)}
.ent-q-corta .ent-l{font-family:"DM Sans",sans-serif;font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--gris);margin-bottom:7px}
.ent-ob{color:var(--rojo)}
.ent-ayuda{font-size:13.5px;line-height:1.65;color:var(--gris);margin:-4px 0 12px}
.ent-ayuda a{color:var(--tinta);border-bottom:1px solid var(--linea)}
.ent-ayuda a:hover{color:var(--rojo);border-color:var(--rojo)}

/* campos: un marco fino, del ancho de su columna, nunca de la página */
.ent input[type=text],.ent input[type=email],.ent input[type=tel],.ent input[type=date],.ent textarea{
  box-sizing:border-box;display:block;width:100%;max-width:100%;margin:0;border:1px solid var(--linea);border-radius:2px;
  background:#fff;font:400 16px/1.45 "Nunito Sans",system-ui,sans-serif;color:var(--tinta);padding:11px 14px;outline:none;
  transition:border-color .25s var(--e);-webkit-appearance:none;appearance:none}
.ent input[type=date]{min-height:46px}
.ent textarea{min-height:104px;resize:vertical;line-height:1.6}
.ent input:hover,.ent textarea:hover{border-color:#bdbdb8}
.ent input:focus,.ent textarea:focus{border-color:var(--tinta)}
.ent-q-mal input,.ent-q-mal textarea{border-color:var(--rojo)}
.ent-err{margin:7px 0 0;font-size:12.5px;color:var(--rojo)}

/* opciones: píldoras como los filtros de Obras */
.ent-ops{display:flex;flex-wrap:wrap;gap:9px}
.ent-op{position:relative;cursor:pointer}
.ent-op input{position:absolute;opacity:0;pointer-events:none}
.ent-op span{display:inline-block;padding:10px 17px;border:1px solid var(--linea);border-radius:999px;font-family:"DM Sans",sans-serif;
  font-size:13.5px;line-height:1.3;color:var(--tinta);background:#fff;transition:border-color .2s var(--e),background .2s var(--e),color .2s var(--e)}
.ent-op:hover span{border-color:var(--tinta)}
.ent-op input:checked + span{background:var(--tinta);border-color:var(--tinta);color:#fff}
.ent-op input:focus-visible + span{outline:2px solid var(--rojo);outline-offset:2px}
.ent-q-mal .ent-op span{border-color:rgba(227,6,19,.45)}

/* privacidad */
.ent-priv{margin-top:6px}
.ent-priv .ent-ayuda{margin:0 0 12px}
.ent-casilla{display:flex;align-items:flex-start;gap:12px;cursor:pointer;font-size:15px;line-height:1.5;color:var(--tinta)}
.ent-casilla input{position:absolute;opacity:0;pointer-events:none}
.ent-caja{flex:0 0 20px;width:20px;height:20px;border:1px solid var(--tinta);margin-top:1px;position:relative;transition:background .2s var(--e),border-color .2s var(--e)}
.ent-casilla input:checked + .ent-caja{background:var(--rojo);border-color:var(--rojo)}
.ent-casilla input:checked + .ent-caja::after{content:"";position:absolute;left:6px;top:2px;width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.ent-casilla input:focus-visible + .ent-caja{outline:2px solid var(--rojo);outline-offset:2px}

/* estrellas */
.ent-estrellas{display:flex;gap:6px}
.ent-est{position:relative;cursor:pointer;line-height:0}
.ent-est input{position:absolute;opacity:0;pointer-events:none}
.ent-est svg{width:34px;height:34px;fill:none;stroke:var(--tinta);stroke-width:1.2;transition:fill .15s var(--e),stroke .15s var(--e),transform .2s var(--e)}
.ent-est.on svg{fill:var(--rojo);stroke:var(--rojo)}
.ent-est:hover svg{transform:scale(1.08)}
.ent-est input:focus-visible ~ svg{outline:2px solid var(--rojo);outline-offset:2px}
.ent-est-t{margin:10px 0 0;min-height:1.2em;font-family:"DM Sans",sans-serif;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--rojo)}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* archivos */
.ent-drop{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;cursor:pointer;
  padding:24px 18px;border:1px dashed #bdbdb8;border-radius:2px;transition:border-color .2s var(--e),background .2s var(--e)}
.ent-drop:hover,.ent-drop.encima{border-color:var(--rojo);background:rgba(227,6,19,.03)}
.ent-drop input{position:absolute;opacity:0;width:1px;height:1px}
.ent-drop-t{font-size:15px;color:var(--tinta)}
.ent-drop-t b{font-weight:600;color:var(--rojo)}
.ent-drop-s{font-family:"DM Sans",sans-serif;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gris)}
.ent-lista{list-style:none;margin:8px 0 0;padding:0}
.ent-lista li{display:flex;justify-content:space-between;gap:14px;padding:8px 0;font-size:13.5px;color:var(--tinta)}
.ent-lista .n{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ent-lista .e{flex:0 0 auto;font-family:"DM Sans",sans-serif;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--gris)}
.ent-lista .ok .e{color:#2E7D4F}
.ent-lista .mal .e{color:var(--rojo)}

/* envío: cuántas van, si quedó guardado, y el botón */
.ent-nav{position:sticky;bottom:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:18px;
  padding:14px 0 calc(14px + env(safe-area-inset-bottom));background:rgba(255,255,255,.96);
  -webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.ent-estado{display:flex;flex-direction:column;gap:3px;margin:0;font-family:"DM Sans",sans-serif;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gris)}
.ent-estado b{font-weight:500;color:var(--rojo)}
.ent-guardado{letter-spacing:.1em;text-transform:none;font-size:11.5px;color:var(--gris);min-height:1.2em;transition:color .3s var(--e)}
.ent-guardado.ok{color:#2E7D4F}
.ent-guardado.mal{color:var(--rojo)}
.ent-sig[disabled]{opacity:.55;pointer-events:none}
.ent-nota{margin:10px 0 0;font-size:12.5px;color:var(--gris)}
.ent-fin{padding:10px 0 20px}
.ent-fin p{font-size:16px;line-height:1.7;color:var(--gris);margin:0 0 10px}

@media (max-width:620px){
  .ent-grilla{grid-template-columns:1fr}
  .ent-l{font-size:15.5px}
  .ent-op span{padding:10px 14px;font-size:13px}
  .ent-sig{flex:0 0 auto}
}
