.question-page .question-opening { padding: 32px; border: 4px solid var(--ink); background: var(--mark); box-shadow: 8px 8px 0 var(--ink); }
.question-page .question-opening h1 { max-width: 18ch; }
.question-page .question-answer { max-width: 72ch; margin-top: 48px; padding-bottom: 32px; border-bottom: 3px solid var(--ink); }
.question-page .location-strip { margin: 32px 0 0 16px; padding: 32px; max-width: 80ch; border: 4px solid var(--ink); border-left: 16px solid var(--link); }
.question-page .question-list { border-left: 8px solid var(--ink); padding-left: 32px; }
.question-page .cost-file { margin-top: 48px; border: 4px solid var(--ink); padding: 32px; }
.question-page .cost-file h2 { max-width: 26ch; }
.question-page .cost-file h3 { margin-top: 32px; }
.question-page .bill-questions { max-width: 80ch; margin-bottom: 0; border: 3px solid var(--ink); }
.question-page .bill-questions > div { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 3fr); }
.question-page .bill-questions > div + div { border-top: 3px solid var(--ink); }
.question-page .bill-questions dt { padding: 16px; background: var(--ink); color: var(--paper); font-weight: 700; font-size: 16px; }
.question-page .bill-questions dd { margin: 0; padding: 16px 24px; }

@media (max-width: 680px) {
  .question-page .question-opening, .question-page .cost-file { padding: 24px 16px; }
  .question-page .location-strip { margin-left: 0; padding: 24px 16px; border-left-width: 8px; }
  .question-page .bill-questions > div { grid-template-columns: 1fr; }
  .question-page .bill-questions dt { padding: 8px 16px; }
  .question-page .bill-questions dd { padding: 16px; }
}

@media print {
  .question-page .question-opening { box-shadow: none; }
}
