:root { --gutter:clamp(1rem,3vw,2rem); }
html { -webkit-text-size-adjust:100%; text-size-adjust:100%; }
body { min-width:0; }
img { max-width:100%; }
.masthead {
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  gap:.5rem 1.5rem;
  padding:1rem var(--gutter);
}
.masthead a { display:inline-flex; align-items:center; min-height:2.75rem; min-width:0; overflow-wrap:anywhere; }
.wordmark { text-align:center; }
footer {
  grid-template-columns:minmax(0,1fr) minmax(0,2fr);
  gap:1.5rem 2rem;
  padding:2rem var(--gutter);
}
footer .signature,footer nav,footer a { min-width:0; overflow-wrap:anywhere; }
footer nav { grid-column:2; max-width:100%; justify-content:flex-end; }
footer a { min-height:2.75rem; }
@media (max-width:48rem) {
  .masthead { grid-template-columns:repeat(2,minmax(0,1fr)); padding:.65rem var(--gutter); gap:0 1rem; }
  .wordmark { grid-column:1 / -1; grid-row:1; }
  .masthead__left { grid-column:1; grid-row:2; }
  .masthead__right { grid-column:2; grid-row:2; text-align:right; }
  footer { grid-template-columns:minmax(0,1fr); min-height:7rem; padding:1.5rem var(--gutter); gap:1rem; }
  footer .signature,footer nav { grid-column:1; }
  footer nav { justify-self:start; justify-content:flex-start; gap:.5rem 1.5rem; }
}
