  .intro{color:var(--muted);font-size:1.1rem;margin:0 0 32px}
  fieldset{border:1px solid var(--line);border-radius:16px;background:#fff;padding:24px 24px 8px;margin:0 0 24px}
  legend{font-weight:800;font-size:1.15rem;padding:0 8px;letter-spacing:-.01em}
  .f{margin:0 0 20px}
  .f>label,.f>.q{display:block;font-weight:700;margin-bottom:6px}
  .help{display:block;font-weight:400;color:var(--muted);font-size:.9rem;margin-top:-2px;margin-bottom:6px}
  input[type=text],input[type=email],input[type=date],input[type=number],select,textarea{width:100%;font:inherit;color:var(--ink);background:var(--paper);border:1.5px solid var(--line);border-radius:10px;padding:11px 12px}
  textarea{min-height:110px;resize:vertical}
  input:focus,select:focus,textarea:focus{outline:2px solid var(--saffron);outline-offset:1px;border-color:var(--green)}
  .row2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
  .opts label{display:flex;gap:10px;align-items:flex-start;font-weight:500;margin:6px 0;cursor:pointer}
  .opts input{margin-top:5px;accent-color:var(--green);width:18px;height:18px;flex:none}
  input[type=file]{font:inherit;width:100%;padding:10px;border:1.5px dashed var(--line);border-radius:10px;background:var(--paper)}
  .req{color:#B3541E}
  .hp{position:absolute;left:-9999px}
  button.submit{font:inherit;font-weight:800;font-size:1.05rem;background:var(--green);color:var(--cream);border:0;border-radius:999px;padding:16px 30px;cursor:pointer}
  button.submit[disabled]{opacity:.6}
  .small{font-size:.9rem;color:var(--muted)}
  [hidden]{display:none!important}
  @media (max-width:700px){.row2{grid-template-columns:1fr}fieldset{padding:18px 16px 4px}}
