/* Site footer — clean industrial */
.site-footer {
  --ft-bg: #0c2d4a;
  --ft-bar: #081f35;
  --ft-text: rgba(248, 250, 252, 0.9);
  --ft-muted: rgba(203, 213, 225, 0.78);
  --ft-accent: #38bdf8;
  --ft-line: rgba(255, 255, 255, 0.1);
  background: var(--ft-bg);
  color: var(--ft-text);
  font-family: 'DM Sans', 'Segoe UI', sans-serif;
  text-align: center;
  margin-top: 0;
  padding: 0;
}

.site-footer a {
  color: var(--ft-text);
  text-decoration: none;
  transition: color 0.22s ease, opacity 0.22s ease;
}

.site-footer a:hover,
.site-footer a:focus {
  color: var(--ft-accent);
  text-decoration: none;
}

.site-footer .copyright {
  line-height: inherit;
  padding: 0;
  background: transparent;
}

.site-footer__main {
  padding: 20px 16px 16px;
  border-bottom: 1px solid var(--ft-line);
}

.site-footer .container {
  max-width: 1200px;
}

.site-footer .foot_icons {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 8px;
  margin: 0 0 14px;
}

.site-footer .foot_icons a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  padding: 0;
  border-radius: 10px;
  color: rgba(248, 250, 252, 0.88);
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.08);
  transform: none;
}

.site-footer .foot_icons a:hover {
  color: #fff;
  background: rgba(14, 165, 233, 0.22);
  border-color: rgba(56, 189, 248, 0.35);
  transform: translateY(-2px);
}

.site-footer .foot_icons i {
  font-size: 15px;
  width: auto;
  height: auto;
  line-height: 1;
}

.site-footer .foot_icons .icon-x {
  display: block;
  width: 16px;
  height: 16px;
  fill: currentColor;
}

/* Contact block */
.site-footer__contact {
  max-width: 920px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 10px;
  text-align: left;
}

.site-footer__contact-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 4px 0;
  width: 100%;
}

.site-footer__item {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--ft-text);
}

.site-footer__item--address {
  justify-content: flex-start;
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 0;
  font-size: 12px;
  line-height: 1.5;
  color: var(--ft-muted);
}

.site-footer__item--address .site-footer__item-icon {
  align-self: flex-start;
  margin-top: 2px;
}

.site-footer__item--address .site-footer__item-text {
  flex: 1;
  min-width: 0;
  text-align: left;
  word-break: break-word;
}

@media screen and (min-width: 992px) {
  .site-footer__item--address {
    justify-content: center;
  }

  .site-footer__item--address .site-footer__item-text {
    flex: 0 1 auto;
    text-align: center;
  }
}

.site-footer__item--card {
  padding: 0 14px;
  background: none;
  border: none;
  border-radius: 0;
}

.site-footer__item--card:not(:last-child) {
  border-right: 1px solid var(--ft-line);
}

.site-footer__item--card .site-footer__item-icon {
  width: 22px;
  height: 22px;
  border-radius: 5px;
  background: rgba(255, 255, 255, 0.06);
  font-size: 11px;
}

.site-footer__item--card .site-footer__item-icon i {
  font-size: 11px;
}

.site-footer__item--card .site-footer__item-text {
  flex: 1;
  min-width: 0;
  text-align: left;
  font-size: 12px;
  line-height: 1.4;
  white-space: nowrap;
  word-break: break-word;
}

.site-footer__item-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border-radius: 6px;
  background: rgba(56, 189, 248, 0.12);
  color: var(--ft-accent);
  font-size: 12px;
  flex-shrink: 0;
}

.site-footer__item-icon i {
  display: inline-block;
  font-size: 12px;
  line-height: 1;
  width: auto;
  height: auto;
}

.site-footer__item-text {
  text-align: left;
}

.site-footer__bar {
  padding: 10px 16px;
  background: var(--ft-bar);
}

.site-footer__copy {
  margin: 0;
  font-size: 12px;
  line-height: 1.45;
  color: var(--ft-muted);
}

.site-footer__copy p {
  display: inline;
  margin: 0;
}

.site-footer__copy a {
  color: rgba(248, 250, 252, 0.85);
  margin-left: 6px;
}

.site-footer__copy a:hover {
  color: var(--ft-accent);
}

@media screen and (max-width: 991px) {
  .site-footer__contact {
    max-width: 360px;
  }

  .site-footer__contact-grid {
    flex-direction: column;
    align-items: stretch;
    gap: 8px;
  }

  .site-footer__item--card {
    width: 100%;
    padding: 0;
    justify-content: flex-start;
  }

  .site-footer__item--card:not(:last-child) {
    border-right: none;
  }

  .site-footer__item--card .site-footer__item-text {
    white-space: normal;
  }
}

@media screen and (max-width: 768px) {
  .site-footer__main {
    padding: 16px 12px 14px;
  }

  .site-footer .foot_icons {
    margin-bottom: 12px;
  }

  .site-footer .foot_icons a {
    width: 32px;
    height: 32px;
  }

  .site-footer__contact {
    max-width: 100%;
    padding: 0 4px;
    gap: 8px;
  }

  .site-footer__item {
    gap: 8px;
  }

  .site-footer__item-icon {
    width: 22px;
    height: 22px;
    font-size: 11px;
  }

  .site-footer {
    padding-bottom: 56px;
  }
}
