* { box-sizing: border-box; }
body {
  margin: 0;
  background: #fff;
  color: #252525;
  font-family: Arial, Helvetica, sans-serif;
  line-height: 1.65;
}
.page { width: min(100% - 40px, 920px); margin: 0 auto; }
header { padding: 48px 0 32px; border-bottom: 1px solid #ddd; }
.logo { display: block; width: min(100%, 620px); height: auto; margin: 0 auto; }
main { max-width: 680px; margin: 0 auto; padding: 52px 0 64px; }
h1 { margin: 0 0 20px; font-size: clamp(25px, 4vw, 34px); line-height: 1.3; font-weight: 600; }
p { margin: 0 0 18px; }
a { color: #005c91; text-underline-offset: 3px; overflow-wrap: anywhere; }
a:hover { text-decoration-thickness: 2px; }
a:focus-visible { outline: 2px solid #005c91; outline-offset: 6px; }
footer { border-top: 1px solid #ddd; padding: 28px 0 40px; }
.partners-heading { text-align: center; color: #555; font-size: 14px; }
.partners { display: flex; align-items: center; justify-content: center; gap: 40px; margin-top: 28px; }
.partners a { display: block; flex: 1; max-width: 240px; }
.partners img { display: block; width: 100%; height: auto; }
@media (max-width: 600px) {
  header { padding: 32px 0 24px; }
  main { padding: 36px 0 40px; }
  .partners { flex-direction: column; gap: 28px; }
  .partners a { width: 210px; flex: none; }
}
