/* Pricing request pages. Uses the tokens from ui/site.css; no inline style anywhere. */
.pform {
  background: var(--white); color: var(--ink); border-radius: 12px;
  padding: 26px; max-width: 520px; margin-top: 22px; display: grid; gap: 20px;
}
.pfield { display: grid; gap: 6px; }
.pfield label { font-family: var(--font-display); font-weight: 600; font-size: 16px; color: var(--navy); }
.pfield select, .pfield input {
  font: inherit; font-size: 16px; color: var(--ink); background: var(--white);
  border: 2px solid var(--steel); border-radius: 8px; padding: 12px 14px; width: 100%; min-height: 48px;
}
.phint { font-size: 14px; color: var(--text-deep); }
.perr { font-size: 14.5px; font-weight: 600; color: #8A1C1C; }
.perr-label { text-transform: uppercase; letter-spacing: .06em; font-size: 12px; }
[aria-invalid="true"] { border-color: #8A1C1C !important; border-style: dashed !important; }
.pform .act { border: 0; cursor: pointer; justify-content: center; }
.errsum {
  background: var(--white); color: var(--ink); border-left: 8px solid #8A1C1C;
  border-radius: 8px; padding: 16px 20px; max-width: 520px; margin-top: 22px;
}
.errsum h2 { font-family: var(--font-display); font-size: 18px; color: #8A1C1C; margin-bottom: 6px; }
.errsum ul { padding-left: 20px; }
.errsum a { color: var(--navy); font-weight: 600; }
.pnotice, .pconfirm {
  background: var(--white); color: var(--ink); border-radius: 12px; padding: 20px 24px;
  max-width: 560px; margin-top: 22px; font-size: 16px;
}
.pconfirm p { margin-bottom: 12px; }
.pconfirm a:not(.act), .pnote a { color: var(--navy); font-weight: 600; }
.pconfirm .act { display: inline-flex; }
.plines { list-style: none; }
.pnote { margin-top: 18px; font-size: 15px; color: var(--on-dark-soft); }
.pnote a { color: var(--on-dark); }
.phoney { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
#error-summary:focus, #form-notice:focus, #page-heading:focus { outline: 0; box-shadow: none; }
