/* "Get a demo" form. Uses the variables from style.css; no external fonts or images. */
.demo-grid{display:grid;gap:2.5rem;align-items:start}
@media(min-width:960px){.demo-grid{grid-template-columns:5fr 6fr;gap:4rem}}
.demo-points{list-style:none;padding:0;margin:1.25rem 0 0;display:grid;gap:.6rem}
.demo-points li{position:relative;padding-left:1.6rem;color:var(--muted-fg)}
.demo-points li::before{content:"";position:absolute;left:0;top:.45em;width:.8rem;height:.45rem;border-left:2px solid var(--brand-600);border-bottom:2px solid var(--brand-600);transform:rotate(-45deg)}
.demo-card{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:1.5rem;box-shadow:0 30px 60px -30px rgba(80,20,10,.25)}
@media(min-width:600px){.demo-card{padding:2rem}}
.tf-lead{display:grid;gap:1rem;position:relative}
.tf-row{display:grid;gap:1rem}
@media(min-width:600px){.tf-row{grid-template-columns:1fr 1fr}}
.tf-field{display:grid;gap:.35rem}
.tf-field label{font-weight:600;font-size:.95rem;color:var(--fg)}
.tf-field .opt{font-weight:400;color:var(--muted-fg);font-size:.85rem}
.tf-lead .hint{font-size:.8rem;color:var(--muted-fg);margin:0}
.tf-lead input,.tf-lead select,.tf-lead textarea{font:inherit;font-size:1rem;color:var(--fg);background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:.7rem .8rem;width:100%;min-height:48px;box-sizing:border-box}
.tf-lead textarea{min-height:6.5rem;resize:vertical}
.tf-lead select{appearance:auto}
.tf-lead input:focus,.tf-lead select:focus,.tf-lead textarea:focus{outline:2px solid var(--brand-500);outline-offset:1px;border-color:var(--brand-500)}
.tf-lead [aria-invalid="true"]{border-color:var(--brand-600);background:var(--brand-50)}
.tf-err{font-size:.85rem;color:var(--brand-700);margin:0;min-height:0}
.tf-err:empty{display:none}
.tf-submit{display:grid;gap:.75rem}
.tf-submit .btn{width:100%;border:0;cursor:pointer;white-space:normal}
@media(min-width:600px){.tf-submit .btn{width:auto;justify-self:start}}
.tf-submit .btn[disabled]{opacity:.7;cursor:progress}
.tf-consent{font-size:.85rem;color:var(--muted-fg);margin:0}
.tf-lead-status{font-size:.95rem;font-weight:600;color:var(--brand-700);margin:0}
.tf-lead-status:empty{display:none}
.tf-thanks{text-align:left}
.tf-thanks:focus{outline:none}
.tf-thanks h3{font-size:1.4rem;margin:0 0 .5rem}
.tf-thanks p{color:var(--muted-fg);margin:.25rem 0 0}
.tf-thanks button{margin-top:1.25rem;cursor:pointer}
.demo-page{padding:3rem 0 4.5rem}
.demo-page h1{font-size:clamp(2rem,4.5vw,3rem)}
