.sign-guide {
  box-sizing: border-box;
  margin: auto;
  max-width: 72rem;
  padding: clamp(1rem, 4vw, 3rem);
  color: #263c30;
  font: 1rem/1.55 system-ui, sans-serif;
}
.sign-guide h1 { line-height: 1.1; font-size: clamp(2rem, 5vw, 3.7rem); }
.sign-guide h2 { margin-block: 0 .6rem; line-height: 1.2; }
.sign-guide p { max-width: 62ch; }
.sign-guide a, .footer a { color: #355440; text-underline-offset: .2em; }
.sign-guide nav ul { display: flex; flex-wrap: wrap; gap: .45rem 1.4rem; list-style: none; padding: 0; }
.sign-guide section { padding: 1.8rem 0; border-top: 1px solid #d5dbd1; }
.sign-guide .cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 17rem), 1fr)); gap: 1rem; padding: 0; list-style: none; }
.sign-guide .cards li { padding: 1rem; border-radius: 1rem; border: 1px solid #d5dbd1; background: #fffdf8; }
.sign-guide .cards h3 { margin: .45rem 0; line-height: 1.3; }
.sign-guide .cards p { margin: 0; }
.sign-guide .cards img { width: 5.5rem; height: 5.5rem; object-fit: contain; }
.sign-guide a:focus-visible { outline: 3px solid #355440; outline-offset: 3px; }
