body {
  background: #fff;
  color: #333;
  font-family: sans-serif;
  line-height: 1.5;
  font-size: 16px;
  max-width: 40em;
  margin: 0 auto;
  padding: 20px; }
  @media (min-width: 40em) {
    body {
      padding: 60px 30px; } }

a {
  color: rgba(0, 0, 0, 0.7); }
  a:focus, a:hover {
    color: rgba(0, 0, 0, 0.6); }

img {
  max-width: 100%;
  display: block;
  margin: 0 auto; }

li {
  margin: 0.5em 0; }

li img {
  max-height: 1.25em;
  display: inline;
  vertical-align: middle; }

article {
  margin: 50px 0; }
  article:target h3 {
    background: #d4e6f9; }

h1 {
  line-height: 1.2;
  font-size: 26px; }
  @media (min-width: 40em) {
    h1 {
      font-size: 32px; } }

h1 a {
  text-decoration: none; }
  h1 a, h1 a:hover, h1 a:focus {
    color: #0055A4; }
  h1 a:hover {
    border-bottom: 2px solid #ccc; }

h3 .anchor-link {
  display: none;
  text-decoration: underline;
  margin-left: 0.5em; }

h3:hover .anchor-link {
  display: inline;
  opacity: 0.5; }

.page-name-link {
  text-decoration: none;
  border-bottom: 1px solid #ccc; }

p.go-home--top {
  margin-top: -1.2em; }
  p.go-home--top a {
    color: #aaa; }

p.go-home--bottom {
  margin-top: 2em;
  text-align: center; }

hr {
  margin-top: 30px;
  border: 0;
  height: 1px;
  background: #ccc;
  margin-bottom: 30px; }

footer {
  margin-top: 60px;
  opacity: 0.6;
  font-size: 14px; }

blockquote {
  border-left: 3px solid #0055A4;
  margin: 1em 0;
  padding: 0.5em 1em;
  color: #555;
  font-style: italic; }

figcaption {
  text-align: center;
  font-style: italic; }

.hero-image {
  margin: 1.5em -20px 1.5em -20px;
  padding: 0; }
  @media (min-width: 40em) {
    .hero-image {
      margin: 2em -30px; } }
  .hero-image img {
    width: 100%;
    border-radius: 8px;
    display: block; }

.manual-resources {
  background: #f0f6ff;
  border: 1px solid #d0dff0;
  padding: 1em 1.5em;
  margin: 1.5em 0;
  border-radius: 6px; }
  .manual-resources h3 {
    margin-top: 0;
    color: #0055A4; }

.section-image {
  margin: 1.5em 0;
  padding: 0; }
  .section-image img {
    width: 100%;
    border-radius: 6px;
    display: block; }
  .section-image figcaption {
    margin-top: 0.5em;
    font-size: 14px;
    color: #777; }

/* Header with car image */
.site-header {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  margin-bottom: 0.5rem;
}
.header-car {
  width: 180px;
  height: auto;
  flex-shrink: 0;
}
@media (max-width: 600px) {
  .site-header {
    flex-direction: column;
    text-align: center;
  }
  .header-car {
    width: 140px;
  }
}

/* Support/donation link */
.support-link {
  margin-top: 1rem;
  padding: 0.75rem 1rem;
  background: #fff8e1;
  border-radius: 6px;
  border-left: 3px solid #f9a825;
  font-size: 0.95rem;
}
.support-link a {
  color: #0055A4;
  font-weight: 600;
}
