/* Free-trial signup form. Linked only from /signup/. */
.signup .field{margin:0 0 1rem}
.signup label{display:block;font-weight:600;margin:0 0 .3rem}
.signup .opt{font-weight:400;color:var(--muted)}
.signup input[type=text],.signup input[type=email],.signup input[type=tel],.signup input[type=number],.signup select,.signup textarea{width:100%;min-height:48px;padding:.6rem .75rem;border:1px solid var(--border);border-radius:8px;font:inherit;color:var(--ink);background:#fff}
.signup input[type=number]{max-width:8rem}
.signup input:focus,.signup select:focus,.signup textarea:focus{border-color:var(--teal);outline:3px solid var(--sun);outline-offset:1px}
.signup .h-sm{font-size:1.2rem;margin:1.5rem 0 .75rem}
.signup .h-sm:first-of-type{margin-top:0}
.signup h3.h-sm{font-size:1.02rem;margin:1.1rem 0 .5rem}
.signup .terms-summary{margin-bottom:.5rem}
.signup .consent{display:grid;grid-template-columns:auto 1fr;gap:.75rem;align-items:start;background:var(--cloud);border:1px solid var(--border);border-radius:8px;padding:.9rem 1rem;margin:0 0 .75rem}
.signup .consent input{width:1.35rem;height:1.35rem;margin:.2rem 0 0;accent-color:var(--teal)}
.signup .consent label{font-weight:400;margin:0;font-size:.97rem}
.signup .hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.receipt{font-size:.93rem;background:var(--cloud);border:1px solid var(--border);border-radius:8px;padding:1rem;overflow-x:auto;white-space:pre-wrap;word-break:break-word}
.warn{background:#FFF7E6;border:2px solid var(--sun);border-radius:var(--radius);padding:1rem 1.2rem;margin:0 0 1.5rem}
