.site-footer.footer-blue { padding: 28px 0 20px; background: #071b36; color: #e5effa; font-family: 'Source Sans 3', sans-serif; }
.footer-blue > .container { width: calc(100% - 64px); max-width: 1280px; }
.footer-blue .footer-blue-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)) minmax(0,1.25fr); gap: 26px; }
.footer-blue .footer-blue-column { min-width: 0; }
.footer-blue .footer-blue-column h2 { display: flex; align-items: center; gap: 14px; margin: 0 0 12px; color: #fff; font-family: Sora,sans-serif; font-size: 18px; font-weight: 600; line-height: 1.4; letter-spacing: -.025em; white-space: nowrap; }
.footer-blue .footer-blue-column h2::after { content: ''; flex: 1; height: 1px; background: #567a9e; }
.footer-blue .footer-blue-column ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; }
.footer-blue .footer-blue-column li { min-width: 0; }
.footer-blue .footer-blue-column a { display: flex; align-items: center; gap: 10px; min-height: 36px; color: #e5effa; font-size: 16px; line-height: 1.4; text-decoration: none; }
.footer-blue .footer-blue-column a span { overflow-wrap: anywhere; }
.footer-blue .footer-line-icon { width: 22px; height: 22px; flex: 0 0 22px; fill: none; stroke: #44d9f3; stroke-width: 1.65; stroke-linecap: round; stroke-linejoin: round; }
.footer-blue .footer-line-icon--teal { stroke: #79e5ee; }
.footer-blue .footer-line-icon--violet { stroke: #b88bf5; }
.footer-blue .footer-line-icon--orange { stroke: #ffa644; }
.footer-blue .footer-line-icon--green { stroke: #7af3bd; }
.footer-blue .footer-line-icon--pink { stroke: #f2b3d6; }
.footer-blue .footer-blue-column a:hover { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.footer-blue a:focus-visible { outline: 3px solid #79e5ee; outline-offset: 4px; }
.footer-blue .footer-blue-bottom { display: flex; justify-content: space-between; align-items: center; gap: 24px; margin-top: 22px; padding-top: 16px; border-top: 1px solid #567a9e; }
.footer-blue .footer-brand { width: 192px; flex: 0 0 192px; }
.footer-blue .footer-brand img.footer-brand-original { display: block; width: 192px; height: auto; filter: none; opacity: 1; }
.footer-blue .footer-blue-bottom p { margin: 0; max-width: none; color: #d4e1f1; font-size: 14px; line-height: 1.5; text-align: right; }
@media (max-width: 1000px) {
  .footer-blue .footer-blue-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px 30px; }
}
@media (max-width: 600px) {
  .site-footer.footer-blue { padding-block: 24px 20px; }
  .footer-blue > .container { width: calc(100% - 40px); }
  .footer-blue .footer-blue-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px; }
  .footer-blue .footer-blue-column h2 { font-size: 18px; margin-bottom: 8px; }
  .footer-blue .footer-blue-column ul { gap: 4px; }
  .footer-blue .footer-blue-bottom { flex-direction: column; align-items: flex-start; gap: 14px; margin-top: 20px; }
  .footer-blue .footer-brand { flex-basis: auto; }
  .footer-blue .footer-blue-bottom p { text-align: left; }
}

@media (max-width: 600px) {
  .footer-blue .footer-blue-column a { gap: 8px; min-height: 44px; }
  .footer-blue .footer-line-icon { width: 20px; height: 20px; flex-basis: 20px; }
}
@media (max-width: 379px) {
  .footer-blue .footer-blue-grid { grid-template-columns: 1fr; gap: 18px; }
}
@media (pointer: coarse) {
  .footer-blue .footer-blue-column a { min-height: 44px; }
}
