.site-footer {
  position: relative;
  z-index: 1;
  padding: clamp(40px, 5vw, 72px) clamp(20px, 2vw, 40px) 12px;
  background: #000;
  color: #fff;
  font-family: Inter, system-ui, sans-serif;
}

.embed .site-footer { display: none; }

.footer-main {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 28px;
}

.footer-main h2 {
  font-family: Archivo, 'Arial Black', sans-serif;
  font-size: clamp(2.6rem, 4.8vw, 5.25rem);
  font-weight: 900;
  line-height: .92;
  letter-spacing: -.04em;
  text-transform: uppercase;
}

.footer-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin-inline-start: auto;
}

.footer-signin {
  display: inline-grid;
  place-items: center;
  min-height: 40px;
  padding: 0 20px;
  border-radius: 999px;
  background: #fff;
  color: #000;
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-decoration: none;
  text-transform: uppercase;
  white-space: nowrap;
}

.footer-badge { display: block; }
.footer-badge img { display: block; }

.footer-google-play {
  position: relative;
  width: 135px;
  height: 40px;
}

.footer-google-play img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 155px;
  height: auto;
  transform: translate(-50%, -50%);
}

.footer-actions a:hover { opacity: .8; }
.footer-actions a:focus-visible { outline: 2px solid #fff; outline-offset: 4px; }

.footer-regions {
  margin-top: clamp(42px, 5vw, 70px);
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.site-footer small {
  display: block;
  margin-top: 36px;
  color: #aaa;
  font-size: .8rem;
}

@media (max-width: 640px) {
  .footer-actions { display: grid; grid-template-columns: 120px 135px; margin-inline-start: 0; }
  .footer-signin { grid-column: 1 / -1; justify-self: start; }
}
