
:root { color-scheme: light; font-family: Georgia, "Times New Roman", serif;
  color: #251d17; background: #f3eddf; line-height: 1.6; }
* { box-sizing: border-box; }
body { margin: 0; }
a { color: #294f36; text-underline-offset: .18em; }
:focus-visible { outline: .22rem solid #1677b8; outline-offset: .2rem; }
.skip-link { position: absolute; left: -10000px; }
.skip-link:focus { left: 1rem; top: 1rem; padding: .6rem; color: white;
  background: #13271d; z-index: 2; }
header { padding: 1rem max(1rem, calc((100vw - 54rem) / 2)); color: white;
  background: #13271d; border-bottom: .3rem solid #e5bd67; }
header a { color: white; }
main { max-width: 54rem; margin: 0 auto; padding: 2rem 1rem 4rem; }
h1, h2 { line-height: 1.15; }
form, .panel { margin: 1.5rem 0; padding: clamp(1rem, 3vw, 2rem);
  background: #fffaf0; border: .12rem solid #a9bc75; border-radius: 1rem; }
.field { margin-bottom: 1rem; }
label, legend { font-weight: bold; }
label { display: block; }
input, select, textarea, button { min-height: 2.8rem; padding: .5rem .65rem;
  font: inherit; }
input, select, textarea { width: min(100%, 30rem); border: .12rem solid #694326;
  border-radius: .3rem; }
button, .button { display: inline-flex; min-height: 2.8rem; align-items: center;
  padding: .6rem 1rem; color: white; background: #294932;
  border: .12rem solid #13271d; border-radius: .35rem; font-weight: bold;
  text-decoration: none; cursor: pointer; }
.error { padding: .8rem 1rem; border-left: .35rem solid #a22d1f;
  background: #fff0eb; }
.error:empty { display: none; }
.notice { padding: .8rem 1rem; border-left: .35rem solid #936237;
  background: #fff7df; }
.quiet { color: #57483c; }
.resource { padding: 1rem 0; border-top: .08rem solid #a9bc75; }
.resource:first-of-type { border-top: 0; }
.resource-choice { display: flex; gap: .65rem; align-items: baseline;
  margin: 0 0 .65rem; }
.resource-choice input { width: auto; min-height: auto; flex: 0 0 auto; }
.resource-choice label { font-weight: normal; }
.checkout-section { min-width: 0; margin: 0 0 1.5rem; padding: 0;
  border: 0; }
.checkout-section legend { margin-bottom: .75rem; }
.checkbox-control { display: grid; grid-template-columns: auto minmax(0, 1fr);
  gap: .65rem; align-items: start; }
.checkbox-control input { width: auto; min-height: auto; margin-top: .35rem; }
.checkbox-control label { font-weight: normal; }
.resource-image { display: block; width: min(100%, 42rem); height: auto;
  margin: 0 0 1rem; border-radius: .6rem; }
.status { font-weight: bold; }
.admin-records { padding: 0; list-style: none; }
.admin-records form { margin: .75rem 0 0; padding: 0; background: transparent;
  border: 0; }
@media (max-width: 32rem) { button, .button { width: 100%; justify-content: center; } }
@media print {
  header, .skip-link, .screen-only, .status { display: none; }
  :root, body { color: #000; background: #fff; }
  main { max-width: none; padding: 0; }
  .panel { border: .08rem solid #000; background: #fff; }
}
