/* ============ Site Footer (shared by index/about/cases/...) ============ */
.footer {
  background: var(--dark, #003e43);
  color: #c4d8d7;
  padding: 42px 0 25px;
}
.footer-inner {
  display: flex;
  align-items: center;
  gap: 75px;
}
.footer-company { margin-right: auto; }
.footer-company > a {
  display: block;
  width: 86px;
  margin-bottom: 10px;
}
.footer-company p {
  font-size: 15px;
  line-height: 1.85;
}
.footer-nav {
  display: flex;
  flex-direction: column;
  gap: 5px;
  min-width: 180px;
  font-size: 15px;
}
.footer a:hover { color: #fff; }
.footer-badge { width: 190px; height: auto; }
.footer-bottom {
  border-top: 1px solid #ffffff1c;
  margin-top: 23px;
  padding-top: 17px;
  display: flex;
  justify-content: space-between;
  gap: 20px;
  font-size: 13px;
  color: #91afae;
}

/* ============ Responsive: <= 1599px ============ */
@media (max-width: 1599px) {
  .footer-inner { gap: 40px; }
  .footer-company p { font-size: 13px; }
  .footer-nav { min-width: 100px; font-size: 13px; }
  .footer-badge { width: 175px; }
}

/* ============ Responsive: <= 959px (tablet) ============ */
@media (max-width: 959px) {
  .footer-inner { gap: 30px; }
  .footer-nav { min-width: 90px; font-size: 13px; }
  .footer-badge { width: 145px; }
}

/* ============ Responsive: <= 639px (mobile) ============ */
@media (max-width: 639px) {
  .footer { padding: 28px 0 20px; }
  .footer-inner { gap: 20px; align-items: flex-start; flex-wrap: wrap; position: relative; }
  .footer-company { width: 100%; padding-right: 108px; }
  .footer-company > a { width: 62px; margin-bottom: 8px; }
  .footer-company p { font-size: 11px; }
  .footer-company p br { display: none; }
  .footer-nav { flex-direction: row; flex-wrap: wrap; width: 100%; gap: 6px 17px; font-size: 11px; }
  .footer-badge { position: absolute; right: 0; top: 12px; width: 95px; }
  .footer-bottom { font-size: 10px; margin-top: 20px; padding-top: 14px; flex-wrap: wrap; gap: 7px; }
}
