* { box-sizing: border-box; }
body { margin: 0; background: #f2eee7; color: #211b16; font: 16px/1.55 system-ui, sans-serif; }
main { max-width: 850px; margin: 40px auto; padding: 40px; background: #fff; border: 1px solid #d5c7b5; }
.brand { color: #70522b; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
h1 { margin: 12px 0; font-size: clamp(28px, 5vw, 38px); line-height: 1.15; }
.instructions, .note { color: #53493d; font-size: 13px; }
.project-fields { margin: 24px 0; }
.blank { display: inline-block; min-width: 40%; min-height: 1em; border-bottom: 1px solid #8a7a66; }
.checklist { padding-left: 0; list-style: none; }
.checklist li { position: relative; margin: 15px 0; padding-left: 29px; break-inside: avoid; }
.checklist li::before { position: absolute; left: 0; top: 5px; width: 15px; height: 15px; border: 1px solid #53493d; content: ''; }
table { width: 100%; border-collapse: collapse; table-layout: fixed; margin: 25px 0; font-size: 13px; }
caption { margin-bottom: 8px; text-align: left; font-weight: 700; }
th, td { border: 1px solid #8a7a66; padding: 8px; text-align: left; overflow-wrap: anywhere; }
td { height: 42px; }
a { color: #674814; }
@media (max-width: 600px) { main { margin: 0; padding: 22px; border: 0; } }
@media print {
  @page { size: auto; margin: 12mm; }
  body { background: #fff; font-size: 10pt; line-height: 1.35; }
  main { max-width: none; margin: 0; padding: 0; border: 0; }
  h1 { font-size: 23pt; }
  .brand { margin-top: 0; }
  .checklist li { margin: 11px 0; }
  .project-fields { margin: 14px 0; }
  table { margin: 16px 0; font-size: 9pt; }
  td { height: 30px; }
  .note { font-size: 8pt; }
  .instructions, .back { display: none; }
}
