/* Estilos comunes de los formularios Kalli (/cotiza, /soporte) */
:root{--tinta:#0F172A;--fondo:#F8FAFC;--blanco:#FFF;--azul:#2563EB;--azul-o:#1D4ED8;--naranja:#F97316;--naranja-o:#C2410C;--gris:#475569;--linea:#E2E8F0}
*{box-sizing:border-box}
body{margin:0;background:var(--fondo);color:var(--tinta);font:400 17px/1.5 Inter,system-ui,sans-serif}
header{padding:20px 16px;text-align:center}
header img{height:52px}
main{max-width:680px;margin:0 auto;padding:0 16px 64px}
h1{font-weight:800;font-size:1.7rem;margin:.2em 0}
.intro{color:var(--gris);margin-bottom:24px}
fieldset{border:1px solid var(--linea);background:var(--blanco);border-radius:16px;padding:20px 18px;margin:0 0 20px}
legend{font-weight:800;font-size:1.15rem;padding:0 6px}
.preg{margin:16px 0}
.preg>label,.preg>.t{display:block;font-weight:600;margin-bottom:6px}
.ob{color:var(--naranja-o)}
input[type=text],input[type=tel],input[type=email],input[type=url],input[type=number],textarea,select{width:100%;padding:11px 12px;border:1px solid var(--linea);border-radius:10px;font:inherit;background:var(--fondo);color:var(--tinta)}
textarea{min-height:96px;resize:vertical}
input:focus,textarea:focus,select:focus{outline:2px solid var(--azul);outline-offset:1px}
.ops label{display:flex;gap:10px;align-items:flex-start;padding:7px 0;font-weight:400;cursor:pointer}
.ops input{margin-top:5px;accent-color:var(--azul);width:18px;height:18px;flex:none}
.nota{font-size:.9rem;color:var(--gris);background:var(--fondo);border-radius:10px;padding:10px 12px}
.err{outline:2px solid var(--naranja-o);border-radius:10px;padding:6px 8px}
.msgerr{color:var(--naranja-o);font-size:.9rem;margin-top:4px}
button{background:var(--azul);color:var(--blanco);border:0;border-radius:999px;padding:14px 28px;font:800 1.05rem Inter,system-ui,sans-serif;cursor:pointer;width:100%}
button:hover{background:var(--azul-o)}
button:disabled{opacity:.6;cursor:wait}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
#estado{margin-top:14px;font-weight:600}
.ok{background:var(--blanco);border:1px solid var(--linea);border-radius:16px;padding:28px 20px;text-align:center}
footer{text-align:center;color:var(--gris);font-size:.9rem;padding:24px 16px}
