/* forma-demo.css — El formulario «Solicita una demo» (assets/js/comun/forma-demo.js). Lo usan la página principal
   y /demo: un solo componente, un solo estilo. Va sobre fondo oscuro. */
.fd { display: grid; gap: 14px; }
.fd, .fd * { box-sizing: border-box; }
.fd__fila { display: grid; gap: 12px; grid-template-columns: 1fr 1fr; }
@media (max-width: 480px) { .fd__fila { grid-template-columns: 1fr; } }
.fd__campo { display: flex; flex-direction: column; gap: 6px; font-size: 13px; font-weight: 600; min-width: 0; }
.fd__campo i { font-style: normal; font-weight: 400; color: var(--tenue, #B9B4AB); }
.fd__control { width: 100%; min-height: 46px; padding: 10px 12px; border-radius: 10px; border: 1px solid rgba(255, 255, 255, .16); background: rgba(255, 255, 255, .06);
    color: inherit; font: inherit; font-size: 15px; font-weight: 400; }
.fd__control:focus { outline: none; border-color: #6FC3A0; box-shadow: 0 0 0 3px rgba(111, 195, 160, .22); }
textarea.fd__control { resize: vertical; min-height: 78px; }
select.fd__control option { color: #1C1B19; }
.fd__casilla { display: flex; align-items: flex-start; gap: 10px; font-size: 13.5px; line-height: 1.45; color: var(--tenue, #B9B4AB); cursor: pointer; }
.fd__casilla a { color: #8FD3B5; text-underline-offset: 3px; }
.fd__casilla input { -webkit-appearance: none; appearance: none; width: 18px; height: 18px; margin: 1px 0 0; flex: none; cursor: pointer;
    border: 1.5px solid rgba(255, 255, 255, .34); border-radius: 5px; background: rgba(255, 255, 255, .06) center / 12px no-repeat; }
.fd__casilla input:checked { background-color: #0E9F6E; border-color: #0E9F6E;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 6.3l2.3 2.3 4.7-5' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.fd__trampa { position: absolute !important; left: -10000px !important; width: 1px; height: 1px; overflow: hidden; }
.fd__aviso { border-radius: 10px; padding: 11px 13px; font-size: 14px; line-height: 1.45; background: rgba(217, 119, 6, .14); border: 1px solid rgba(217, 119, 6, .4); color: #F6D9B4; }
.fd__aviso[hidden] { display: none; }
.fd__boton { min-height: 52px; border: 0; border-radius: 12px; background: #0E9F6E; color: #fff; font: inherit; font-size: 15.5px; font-weight: 600; cursor: pointer;
    box-shadow: 0 10px 24px -10px rgba(14, 159, 110, .8); transition: background .15s ease; }
.fd__boton:hover { background: #0B7A53; }
.fd__boton[disabled] { opacity: .65; cursor: wait; }
.fd__listo { display: grid; gap: 12px; justify-items: start; padding: 12px 0; }
.fd__listo h3 { margin: 0; font-size: 24px; line-height: 1.2; letter-spacing: -.02em; }
.fd__listo p { margin: 0; color: var(--tenue, #B9B4AB); }
.fd__listo-ico { width: 52px; height: 52px; border-radius: 50%; display: grid; place-items: center; background: rgba(14, 159, 110, .18); }
.fd__listo-ico svg { width: 26px; height: 26px; fill: none; stroke: #8FD3B5; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
