/* The Studio canonical footer. Shared by every page on thestudio.io.
   One source of truth: edit here and the footer updates site-wide. */
footer {
  position: relative;
  padding: 70px 24px 46px;
  text-align: center;
  background: #ffffff;
  border-top: 1px solid #e8e8ed;
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Helvetica Neue", Arial, sans-serif;
}

/* Language switcher: flag pinned to the footer's bottom-right corner. */
footer .lang-switch {
  position: absolute;
  right: 22px;
  bottom: 18px;
  font-size: 24px;
  line-height: 1;
  text-decoration: none;
  background: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  transition: transform 0.15s ease;
}
footer .lang-switch:hover { transform: scale(1.15); }
@media (max-width: 520px) {
  footer .lang-switch { right: 14px; bottom: 14px; font-size: 21px; }
}

footer .foot-brand {
  font-size: 22px;
  font-weight: 700;
  letter-spacing: -0.02em;
  margin-bottom: 18px;
  color: #1d1d1f;
}

footer nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px 26px;
  max-width: 560px;
  margin: 0 auto 30px;
}

footer nav a {
  color: #6e6e73;
  font-size: 14px;
  text-decoration: none;
}

footer nav a:hover { color: #1d1d1f; }

footer nav a.hiring-link {
  color: #b58520;
  font-weight: 700;
}
footer nav a.hiring-link:hover {
  color: #b58520;
  text-decoration: underline;
}

footer small {
  color: #aeaeb2;
  font-size: 13px;
}

/* Small provenance note some pages keep above the uniform footer
   (snapshot dates, data sources). */
.colophon-note {
  text-align: center;
  color: #6e6e73;
  font-size: 13px;
  line-height: 1.6;
  max-width: 660px;
  margin: 0 auto;
  padding: 0 24px 10px;
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Helvetica Neue", Arial, sans-serif;
}

/* Pulsing "live" dot used by the Mega Dashboard links (footer + navs). */
.live-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #34c759;
  display: inline-block;
  position: relative;
  flex: 0 0 auto;
  margin-right: 7px;
}
.live-dot::after {
  content: "";
  position: absolute;
  inset: -4px;
  border-radius: 50%;
  border: 2px solid #34c759;
  opacity: 0;
  animation: live-pulse 1.6s ease-out infinite;
}
@keyframes live-pulse {
  0% { transform: scale(0.5); opacity: 0.9; }
  70% { transform: scale(1.1); opacity: 0; }
  100% { transform: scale(1.1); opacity: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .live-dot::after { animation: none; }
}
