.client-form,.consent-reading,.form-success { max-width: 880px; margin-inline: auto; }
.form-section { border-top: 1px solid var(--line); margin-top: 2.8rem; padding-top: 2rem; }
.form-section h2 { font: 400 clamp(1.6rem,3vw,2.1rem)/1.2 var(--serif); margin-bottom: 1.5rem; }
.form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.5rem 2rem; }
.form-field { display:flex; flex-direction:column; gap:.6rem; font:500 .95rem/1.5 var(--sans); min-width:0; }
.full,.consent-option { grid-column:1/-1; }
.form-field input,.form-field select,.form-field textarea { width:100%; min-width:0; background:var(--paper); border:1px solid #748a7f; border-radius:2px; padding:.85rem; font:400 1rem/1.5 var(--sans); color:var(--ink); }
.form-field select {
  -webkit-appearance:none;
  appearance:none;
  padding-right:3rem;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='m5 7.5 5 5 5-5' stroke='%2317342f' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 1rem center;
  background-size:1.1rem 1.1rem;
}
@media(forced-colors:active) { .form-field select { -webkit-appearance:auto; appearance:auto; background-image:none; } }
.form-field textarea { resize:vertical; min-height:130px; }
.form-field input:focus,.form-field textarea:focus,.form-field select:focus,.signature-pad:focus { outline:2px solid var(--moss); outline-offset:3px; }
.check-option { display:flex; gap:.7rem; align-items:flex-start; font:400 .97rem/1.65 var(--sans); cursor:pointer; }
.check-option input { flex:0 0 auto; width:1.15rem; height:1.15rem; margin-top:.25rem; accent-color:var(--ink); }
.choice-group { border:0; padding:0; min-width:0; }
.choice-group legend { padding:0 0 .8rem; font:500 1rem/1.5 var(--sans); }
.choices { display:grid; gap:.8rem; }
.concern-choices { grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem 1.8rem; }
.signature-pad { display:block; width:100%; height:180px; border:1px solid #748a7f; background:var(--paper); touch-action:none; }
.signature-clear { font:.9rem var(--sans); border:0; background:none; padding:.7rem 0 1.2rem; text-decoration:underline; cursor:pointer; }
.submit-row { display:flex; align-items:center; gap:1.3rem; margin-top:2rem; flex-wrap:wrap; }
.submit-row button:disabled { opacity:.5; cursor:wait; }
.form-connection-status { font:.88rem/1.6 var(--sans); max-width:30rem; }
.form-alert { padding:1.2rem; border:1px solid #9d4d31; background:#fff8ee; color:#70331f; margin:1.5rem 0; }
.form-alert[hidden],.form-success[hidden] { display:none; }
.form-success { padding:3rem 0; }
.form-success h2 { font:400 2.6rem var(--serif); }
.form-success p { margin:1rem 0 2rem; }
.consent-reading ol { margin:1.5rem 0 1.5rem 1.4rem; line-height:1.9; }
.bot-trap { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.turnstile-container { margin-top:1.5rem; }
@media(max-width:650px) { .form-grid,.concern-choices { grid-template-columns:1fr; } .form-section { margin-top:2rem; } }
@media print { .site-header,footer,.submit-row,.signature-clear { display:none; } .info-main { padding:1rem; } .form-section { break-inside:avoid; } }
