/* Estilos de formularios de AgenciaPro (prop-, campo, ct-, pr-) con colores de Astra */
:root{--primario:#2F39BF;--primario-d:#19207F;--primario-950:#071030;--primario-900:#091E42;--primario-50:#EEEEFF;--acento-claro:#8C93FF;--tinta:#091E42;--texto:#253858;--gris:#5E6C84;--neutral-100:#F4F5F7;--linea:#DFE1E6;--r-card:12px;--r-big:16px;--r-btn:4px;
  
  --primario:#091E42;        
  --primario-d:#1b2a68;      
  --primario-950:#091E42;    
  --primario-900:#091E42;    
  --primario-50:#e6eff7;     
  --acento-claro:#56bcf6;    
  --hero-bg:#f4f8fd;         

  --tinta:#18181a;           
  --texto:#222225;           
  --gris:#6d6d76;
  --neutral-50:#fafafa;
  --neutral-100:#f3f7fa;     
  --neutral-800:#2f2f36;
  --linea:#e5e5e8;
  --linea-osc:rgba(255,255,255,.14);

  
  --r-btn:8px;
  --r-card:16px;
  --r-big:24px;
  --r-pill:30px;

  
  --ancho:1280px;
  --pad-lat:24px;

  --font:'Poppins',-apple-system,system-ui,'Segoe UI',Arial,sans-serif;
  --ease:cubic-bezier(.22,.61,.36,1);
}
.prop{background:var(--hero-bg)}
.prop-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(1rem,2vw,1.5rem);align-items:start}
.prop-form{background:#fff;border:1px solid var(--linea);border-radius:var(--r-big);
  padding:clamp(1.5rem,3vw,2.25rem)}
.prop-form h1{font-size:clamp(1.75rem,3.2vw,2.25rem);margin-bottom:.65rem}
.prop-form .lead{font-size:1rem;color:var(--gris);margin-bottom:1.5rem}
.prop-o{display:flex;align-items:center;gap:.85rem;margin:1.15rem 0;color:var(--gris);font-size:.8125rem}
.prop-o::before,.prop-o::after{content:"";flex:1;height:1px;background:var(--linea)}
.campo{display:block;margin-bottom:1rem}
.campo[hidden]{display:none}
.campo>span,.campo-lbl{display:block;font-size:.875rem;font-weight:600;color:var(--tinta);margin-bottom:.4rem}
.campo input{width:100%;padding:12px 14px;border:1px solid var(--linea);border-radius:var(--r-btn);
  font:inherit;font-size:.9375rem;color:var(--texto);background:#fff;transition:border-color .2s}
.campo input:focus{outline:none;border-color:var(--acento-claro)}
.prop-enviar{width:100%;margin-top:.25rem}
.prop-alt{display:block;width:100%;margin-top:.75rem;background:none;font-size:.875rem;
  color:var(--gris);text-decoration:underline;text-underline-offset:3px}
.prop-alt:hover{color:var(--primario)}
.prop-nota{margin-top:1rem;font-size:.8125rem;color:var(--gris);text-align:center}
.prop-side{position:sticky;top:96px}
.prop-pasos{background:#fff;border:1px solid var(--linea);border-radius:var(--r-big);padding:clamp(1.5rem,3vw,2rem)}
.prop-pasos h2{font-size:1.25rem;margin-bottom:1.25rem}
.prop-pasos ol{list-style:none;margin:0;padding:0;counter-reset:paso}
.prop-pasos li{counter-increment:paso;position:relative;padding-left:2.75rem;padding-bottom:1.25rem}
.prop-pasos li::before{content:counter(paso);position:absolute;left:0;top:0;width:28px;height:28px;
  border-radius:50%;display:grid;place-items:center;background:var(--primario-50);color:var(--primario);
  font-size:.8125rem;font-weight:700}
.prop-pasos li b{display:block;font-size:.9375rem;color:var(--tinta);margin-bottom:.15rem}
.prop-pasos li span{font-size:.875rem;line-height:1.55;color:var(--gris)}
.prop-garantia{font-size:.875rem;line-height:1.55;color:var(--gris);background:var(--primario-50);
  border-radius:var(--r-card);padding:.9rem 1rem}
.prop-garantia b{color:var(--primario)}
.prop-mas{display:inline-block;margin-top:1rem;font-size:.875rem;color:var(--primario);font-weight:600}
@media (max-width:960px){.prop-grid{grid-template-columns:1fr}.prop-side{position:static}}
.prop-plantilla{background:var(--primario-50);border-radius:var(--r-card);padding:.7rem .9rem;
  font-size:.875rem;color:var(--texto);margin-bottom:1.15rem}
.prop-plantilla[hidden]{display:none}
.prop-plantilla a{color:var(--primario);text-decoration:underline;text-underline-offset:3px}
.prop-plantilla{display:flex;gap:.9rem;align-items:center}
.prop-plantilla-shot{flex:none;width:78px;aspect-ratio:4/5;border-radius:10px;overflow:hidden;
  border:1px solid var(--linea);background:#fff}
.prop-plantilla-shot img{width:100%;height:auto;display:block}
.prop-plantilla-txt b{display:block;font-size:.9375rem;color:var(--tinta)}
.prop-plantilla-txt>span{display:block;font-size:.8125rem;color:var(--gris);margin:.1rem 0 .3rem}
.prop-plantilla-txt a{font-size:.8125rem}
.prop-hp{position:absolute;left:-9999px;top:-9999px;height:0;overflow:hidden}
.prop-material{margin:1.25rem 0 .5rem;padding-top:1.25rem;border-top:1px solid var(--linea)}
.prop-material .campo-lbl em{font-style:normal;font-weight:400;color:var(--gris)}
.prop-mat-sub{font-size:.85rem;color:#4a5568;margin:-.1rem 0 .9rem;line-height:1.5}
.prop-cajas{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1rem}
.prop-caja{border:1px dashed #cbd5e1;border-radius:12px;padding:.8rem .9rem;background:#f8fafc}
.prop-caja[hidden]{display:none}
.prop-caja label{display:block;font-weight:600;font-size:.875rem;color:var(--tinta);margin:0 0 .15rem}
.prop-caja small{display:block;font-size:.78rem;color:#4a5568;line-height:1.4;margin:0 0 .5rem}
.prop-caja small a{color:var(--primario);font-weight:600}
.prop-caja input[type=file]{width:100%;font-size:.82rem;color:var(--tinta)}
.prop-caja input[type=file]::file-selector-button{font:inherit;font-size:.82rem;font-weight:600;color:var(--primario);background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:.4rem .7rem;margin-right:.6rem;cursor:pointer}
.prop-drive small,.campo small{display:block;font-size:.78rem;color:#4a5568;line-height:1.4;margin-top:.35rem}
.campo textarea{width:100%;font:inherit;font-size:.9375rem;padding:.7rem .85rem;border:1px solid var(--linea);border-radius:10px;background:#fff;color:var(--tinta);resize:vertical;min-height:64px}
.campo textarea:focus{outline:none;border-color:var(--acento-claro)}
.campo textarea::placeholder,.campo input::placeholder{color:#6b7280;opacity:1}
.prop-progress{margin:.75rem 0 .25rem}
.prop-bar{height:8px;background:#e6ebf4;border-radius:8px;overflow:hidden}
.prop-bar span{display:block;height:100%;width:0;background:var(--acento-claro);transition:width .2s}
.prop-progress small{font-size:.78rem;color:#4a5568}
.prop-err{background:#fdecec;border:1px solid #f3b4b4;color:#8a1f1f;border-radius:10px;padding:.7rem .9rem;font-size:.875rem;margin:.75rem 0 0}
.prop-ok h2{font-size:1.4rem;margin:0 0 .6rem}
.prop-ok p{color:#4a5568;line-height:1.6}
@media(max-width:640px){.prop-cajas{grid-template-columns:1fr}}
.prop-caja.prop-drive input[type=url]{width:100%;font:inherit;font-size:.875rem;padding:.55rem .7rem;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:var(--tinta)}
.prop-cajas:has(.prop-tienda:not([hidden])) .prop-drive{grid-column:1/-1}
.prop-req{display:inline-block;margin-left:5px;font-size:.66rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--primario);background:var(--primario-50);border-radius:6px;padding:2px 6px;vertical-align:middle}
.prop-dl{display:inline-block;font-size:.78rem;font-weight:600;color:var(--primario);text-decoration:none;border:1px solid #cbd5e1;background:#fff;border-radius:8px;padding:.35rem .65rem;margin:0 0 .5rem}
.prop-dl:hover{border-color:var(--primario)}