/* Brand polish: browser icon, lively Countries marker and more comfortable navigation spacing. */
.countries-globe-wrap {
  position: relative;
  display: inline-flex;
  flex: 0 0 1.28rem;
  width: 1.28rem;
  height: 1.28rem;
  align-items: center;
  justify-content: center;
  overflow: visible;
  perspective: 3.5rem;
}

.site-nav-pills .country-nav-toggle {
  gap: 0.42rem;
}

.countries-nav-icon {
  display: inline-block;
  transform-origin: center;
  animation: countries-globe-rotate 5.2s linear infinite,
             countries-globe-glow 1.65s ease-in-out infinite;
  will-change: transform, filter;
}

.countries-icon-sparkle {
  position: absolute;
  top: -0.2rem;
  right: -0.19rem;
  z-index: 1;
  color: #f4b536;
  font-size: 0.48rem;
  line-height: 1;
  filter: drop-shadow(0 0 0.18rem rgba(244, 181, 54, 0.78));
  transform-origin: center;
  animation: countries-sparkle-twinkle 1.25s ease-in-out infinite;
}

.countries-globe-wrap:hover .countries-nav-icon,
.country-nav-toggle[aria-expanded="true"] .countries-nav-icon {
  animation-duration: 1.6s, 0.85s;
}

@keyframes countries-globe-rotate {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

@keyframes countries-globe-glow {
  0%, 100% { filter: drop-shadow(0 0 0.08rem rgba(20, 134, 232, 0.15)); }
  50% { filter: drop-shadow(0 0 0.26rem rgba(33, 183, 134, 0.78)) drop-shadow(0 0 0.35rem rgba(245, 182, 56, 0.35)); }
}

@keyframes countries-sparkle-twinkle {
  0%, 100% { opacity: 0.55; transform: scale(0.78) rotate(0deg); }
  50% { opacity: 1; transform: scale(1.28) rotate(22deg); }
}

/* Add a little breathing room to each desktop nav pill without squeezing the tablet layout. */
@media (min-width: 1200px) {
  .site-nav-pills .nav-link {
    padding-inline: 1.04rem;
  }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
  .site-nav-pills .nav-link {
    padding-inline: 0.67rem;
  }
}

@media (max-width: 991.98px) {
  .site-nav-pills .nav-link {
    padding-inline: 1.05rem;
  }
  .site-nav-pills .country-nav-toggle {
    gap: 0.55rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .countries-nav-icon,
  .countries-icon-sparkle {
    animation: none !important;
    will-change: auto;
  }
}
