footer { background: #f5f7f9; color: #526076; }
.portal-footer-bar { display: grid; grid-template-columns: 120px minmax(0,1fr) auto; align-items: center; gap: 24px; padding-top: 20px; padding-bottom: 20px; }
.portal-footer-brand { display: block; line-height: 0; }
.portal-footer-brand img { width: 104px; height: 38px; object-fit: contain; object-position: left center; }
.portal-footer-bar nav { display: flex; justify-content: center; flex-wrap: wrap; gap: 10px 20px; }
.portal-footer-bar nav a,.portal-footer-bar nav button { color: #748094; font: inherit; font-size: 12px; text-decoration: none; }
.portal-footer-bar nav button { display: inline-flex; align-items: center; gap: 4px; padding: 0; background: none; border: 0; cursor: pointer; }
.portal-footer-bar nav :is(a,button):hover { color: var(--storm-red); }
.portal-footer-link-icon { display: none; }
.portal-footer-copyright { display: flex; flex-direction: column; gap: 4px; max-width: 240px; color: #748094; font-size: 11px; text-align: right; }
.portal-footer-copyright a { color: inherit; }
@media (max-width: 1199px) { .portal-footer-bar { grid-template-columns: 104px minmax(0,1fr); } .portal-footer-copyright { grid-column: 2; max-width: none; text-align: right; } .portal-footer-bar nav { justify-content: flex-end; } }
@media (max-width: 639px) {
  .portal-footer-bar { grid-template-columns: 1fr; gap: 16px; }
  .portal-footer-brand { display: none; }
  .portal-footer-bar nav { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
  .portal-footer-bar nav a { display: flex; align-items: center; gap: 6px; min-height: 48px; box-sizing: border-box; padding: 8px; border: 2px solid #f2f5f8; border-radius: 10px; background: #fff; color: #182233; font-size: 11px; overflow-wrap: anywhere; }
  .portal-footer-bar nav button { grid-column: 1/-1; min-height: 44px; justify-content: center; }
  .portal-footer-link-icon { display: inline-flex; flex: 0 0 20px; }
  .portal-footer-copyright { grid-column: 1; text-align: left; }
}
footer .footer-center { padding-top: 34px; padding-bottom: 30px; }
footer .footer-center > .uk-grid { display: grid; grid-template-columns: 1.25fr repeat(3, minmax(0, 1fr)); gap: 28px; margin: 0; }
footer .footer-center > .uk-grid > div { width: auto; min-width: 0; padding: 0; }
footer .footer-h4 { margin: 0 0 14px; color: #182233; font-size: 14px; font-weight: 800; }
footer .footer-ul { margin: 0; padding: 0; list-style: none; }
footer .footer-ul li { margin: 5px 0; }
footer .footer-ul a,
footer .footer-contacts,
footer .footer-contacts a { color: #526076; font-size: 12px; line-height: 1.45; text-decoration: none; }
footer .footer-ul a:hover,
footer .footer-contacts a:hover { color: #182233; }
footer .footer-contacts .logo-block { display: inline-flex; margin: 20px 0 12px; }
footer .footer-contacts .logo-block img { width: 110px; height: auto; }
footer .ofertaclass { max-width: 340px; color: #8f969e; font-size: 10px; line-height: 1.5; }
footer input[type="text"],
footer input[type="email"] { height: 38px; border: 1px solid #353b42; border-radius: 10px; background: #fff; }
footer input[type="submit"],
footer button { border-radius: 10px; }


@media (max-width: 959px) {
  footer .footer-center { padding-top: 26px; padding-bottom: 24px; }
  footer .footer-center > .uk-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px 18px; }
  footer .footer-center > .uk-grid > div:first-child,
  footer .footer-center > .uk-grid > div:last-child { grid-column: 1 / -1; }
  footer .footer-contacts .ofertaclass { max-width: none; }}
