/* DEMO family: the Request a demo form and its thank-you page. Scoped under .t-demo. */
.t-demo .d-grid{display:grid;gap:clamp(32px,5vw,72px);grid-template-columns:minmax(0,1fr);align-items:start;padding-block:clamp(48px,7vw,96px)}
@media (min-width:920px){.t-demo .d-grid{grid-template-columns:minmax(0,1fr) minmax(0,480px)}}
.t-demo .d-intro{display:flex;flex-direction:column;gap:16px}
.t-demo .d-intro h1{font:600 clamp(36px,4.3vw,56px)/1.06 var(--display);letter-spacing:-.035em;text-wrap:pretty;margin:0}
.t-demo .d-card{background:#fff;border-radius:20px;box-shadow:var(--shadow-card);padding:clamp(24px,3vw,36px)}
.t-demo .d-form{display:flex;flex-direction:column;gap:18px}
.t-demo .d-row{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
.t-demo .d-field{display:flex;flex-direction:column;gap:6px;min-width:0}
.t-demo .d-field label{font:500 14px/1.3 var(--sans);color:var(--ink)}
.t-demo .d-field input{font:400 16px/1.3 var(--sans);color:var(--ink);background:#fff;border:1px solid var(--g200);border-radius:10px;height:46px;padding:0 14px;width:100%}
.t-demo .d-field input:hover{border-color:var(--g500)}
.t-demo .d-field input:focus-visible{outline:2px solid var(--ink);outline-offset:1px;border-color:var(--ink)}
.t-demo .d-submit{align-self:flex-start}
.t-demo .d-submit:disabled{opacity:.4;cursor:not-allowed}
.t-demo .d-note{font-size:13.5px;color:var(--muted);margin:0}
.t-demo .d-note a{color:var(--ink);text-underline-offset:3px}
@media (max-width:480px){.t-demo .d-submit{align-self:stretch}}
.t-demo .d-req{color:var(--ink);margin-left:3px;font-weight:600}
.t-demo .d-reqnote{margin:0}
.t-demo .d-field input:user-invalid{border-color:var(--bad)}
