/* VG7 Hoverdots Bloques: formulario de consulta (compartido). Generado del prototipo aprobado. */
.copy-btn{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 12px;border:1px solid var(--line);border-radius:999px;background:#fff;font:500 .75rem/1 var(--f-mono);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:transform 160ms var(--ease-out),background-color 200ms ease}
.copy-btn:active{transform:scale(.97)}
.copy-btn .ico{width:14px;height:14px}
@media (hover:hover) and (pointer:fine){
.copy-btn:hover{background:var(--lilac)}
}
.form{display:grid;gap:18px;padding:clamp(24px,3vw,40px);border-radius:28px;background:var(--lilac)}
.form h3{font:600 clamp(1.5rem,1.2rem + 1vw,2rem)/1.15 var(--f-display);letter-spacing:-.03em}
.form-sub{margin-top:-8px;color:var(--muted)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.field{display:grid;align-content:start;gap:8px}
.field label{font-weight:600;font-size:.9375rem}
.field label span{font-weight:400;color:var(--muted)}
.input{width:100%;min-height:52px;padding:12px 16px;border:1px solid var(--line);border-radius:14px;background:#fff;font-size:1rem;transition:border-color 200ms ease,box-shadow 200ms ease}
.input:focus{outline:none;border-color:var(--violet);box-shadow:0 0 0 3px rgba(114,67,242,.22)}
textarea.input{min-height:128px;resize:vertical}
select.input{appearance:none;-webkit-appearance:none;padding-right:44px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%231D1729' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;cursor:pointer}
.input[aria-invalid="true"]{border-color:var(--error)}
.err{display:flex;align-items:center;gap:8px;color:var(--error);font-size:.875rem;font-weight:500}
.err::before{content:"!";display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:var(--error);color:#fff;font:700 .75rem/1 var(--f-body);flex:none}
.form-done{display:grid;gap:14px;padding:20px;border-radius:18px;background:#fff}
.form-done h4{margin:0;font:600 1.125rem/1.3 var(--f-display);letter-spacing:-.02em}
.form-done pre{margin:0;padding:14px;border-radius:12px;background:var(--lilac);font:400 .875rem/1.5 var(--f-body);white-space:pre-wrap;overflow-wrap:anywhere;color:var(--ink)}
.form-done-actions{display:flex;flex-wrap:wrap;gap:10px}
.link-btn{border:0;background:none;padding:0 6px;min-height:48px;font-weight:600;color:var(--violet);cursor:pointer;text-decoration:underline;text-underline-offset:4px}
@media (max-width:720px){
.form-row{grid-template-columns:1fr}
}
.form :is(h2,h3){font:600 clamp(1.5rem,1.2rem + 1vw,2rem)/1.15 var(--f-display);letter-spacing:-.03em}
.form-done h3{margin:0;font:600 1.125rem/1.3 var(--f-display);letter-spacing:-.02em}
.form-done-actions{align-items:center}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.err-form{padding:12px 14px;border-radius:12px;background:#fff}
.hero .form{padding:clamp(22px,2.6vw,36px);border-radius:26px;color:var(--ink)}
.hero .form textarea.input{min-height:120px}
@media (prefers-reduced-motion:reduce){.form .btn:disabled{opacity:.7}}
