@font-face {
  font-family: sogLanderTitle;
  src: url("/media/fonts/LilitaOne-Regular.woff2");
  font-display: swap;
}
@font-face {
  font-family: sogLanderBody;
  src: url("/media/fonts/SanukRound-Bold.woff2");
  font-display: swap;
}
#SOG-mobile-app-bar,
#SOG-mobile-game-hero,
#SOG-mobile-games {
  display: none;
}

@keyframes SOGAppHeroSlide {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}
html.sog-mobile-gate #SOG-rail-holder,
html.sog-mobile-gate #SOG-command-bar,
html.sog-mobile-gate #SOG-command-scrim,
html.sog-mobile-gate #speech-loading-indicator,
html.sog-mobile-gate #SOG-suggestion-chips,
html.sog-mobile-gate #SOG-choose-team-section,
html.sog-mobile-gate #SOG-lobby-section,
html.sog-mobile-gate #SOG-play-section-games-list,
html.sog-mobile-gate #SOG-game-container-import,
html.sog-mobile-gate #SOG-game-locked,
html.sog-mobile-gate .game-live-challenge {
  display: none !important;
}
html.sog-mobile-gate #SOG-play-section {
  margin-top: 0 !important;
}
html.sog-mobile-gate #SOG-game-container {
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  padding: 0 !important;
  margin: 0 !important;
  background: none !important;
  border: 0 !important;
  box-shadow: none !important;
}
html.sog-mobile-gate #SOG-app,
html.sog-mobile-gate #SOG-app.has-sog-rail {
  min-height: 0;
  padding: 22px 12px var(--footer-gap);
}
html.sog-mobile-gate .SOG-app-hero {
  --sq: clamp(118px, calc((100vw - 52px) / 2), 168px);
  position: relative;
  display: block;
  overflow: hidden;
  font-family: sogLanderBody, -apple-system, BlinkMacSystemFont, sans-serif;
  letter-spacing: normal;
  color: #fff;
  text-align: center;
  background: radial-gradient(130% 70% at 50% 0%, #0d5a96 0%, #073a66 45%, #031c35 100%);
}
html.sog-mobile-gate .SOG-app-hero-backdrop {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
}
html.sog-mobile-gate .SOG-app-hero-wall {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1400px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  transform: translate(-50%, -50%) rotate(-12deg);
}
html.sog-mobile-gate .SOG-app-hero-row {
  display: flex;
  width: max-content;
  animation: SOGAppHeroSlide 46s linear infinite;
  will-change: transform;
}
html.sog-mobile-gate .SOG-app-hero-row:nth-child(2) {
  animation-duration: 58s;
  animation-direction: reverse;
}
html.sog-mobile-gate .SOG-app-hero-row:nth-child(3) {
  animation-duration: 52s;
}
html.sog-mobile-gate .SOG-app-hero-row img {
  display: block;
  flex: 0 0 auto;
  width: 180px;
  height: 101px;
  margin: 0 14px 0 0;
  border-radius: 14px;
  object-fit: cover;
  background: #0a4a7e;
  box-shadow: 0 0 0 1.5px rgba(100, 210, 255, 0.28), 0 8px 18px rgba(0, 0, 0, 0.45);
}
html.sog-mobile-gate .SOG-app-hero-cover {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.06);
  filter: blur(2px) saturate(1.15);
}
html.sog-mobile-gate .SOG-app-hero-shade {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(3, 28, 53, 0.88) 0%, rgba(3, 28, 53, 0.5) 34%, rgba(3, 28, 53, 0.5) 70%, rgba(3, 28, 53, 0.94) 100%);
}
html.sog-mobile-gate .SOG-app-hero-content {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 18px 16px 24px;
}
html.sog-mobile-gate .SOG-app-hero-intro {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  max-width: 340px;
  margin: 0 0 16px;
  text-wrap: balance;
  text-shadow: 0 2px 0 rgba(3, 28, 53, 0.85), 0 0 18px rgba(3, 28, 53, 0.95);
}
html.sog-mobile-gate .SOG-app-hero-intro span {
  font-size: 15px;
  line-height: 20px;
  color: #64d2ff;
}
html.sog-mobile-gate .SOG-app-hero-intro strong {
  font-family: sogLanderTitle, sans-serif;
  font-weight: normal;
  font-size: 23px;
  line-height: 27px;
  letter-spacing: 0.3px;
  color: #fff;
}
html.sog-mobile-gate .SOG-app-stores {
  display: flex;
  justify-content: center;
  gap: 16px;
}
html.sog-mobile-gate .SOG-app-store {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: calc(var(--sq) * 0.09);
  width: var(--sq);
  height: var(--sq);
  border-radius: calc(var(--sq) * 0.17);
  text-decoration: none;
  color: #fff;
  background: linear-gradient(180deg, #232a35 0%, #0b0f15 100%);
  box-shadow: inset 0 0 0 2px rgba(100, 210, 255, 0.35), inset 0 2px 0 rgba(255, 255, 255, 0.12), 0 6px 0 #01080f, 0 18px 36px rgba(0, 0, 0, 0.55);
  transition: transform 0.12s ease-out, box-shadow 0.12s ease-out, filter 0.2s;
  -webkit-tap-highlight-color: transparent;
}
html.sog-mobile-gate .SOG-app-store:hover {
  color: #fff;
  text-decoration: none;
  filter: brightness(1.12);
}
html.sog-mobile-gate .SOG-app-store:active {
  transform: translateY(5px);
  box-shadow: inset 0 0 0 2px rgba(100, 210, 255, 0.35), inset 0 2px 0 rgba(255, 255, 255, 0.12), 0 1px 0 #01080f, 0 8px 18px rgba(0, 0, 0, 0.5);
}
html.sog-mobile-gate .SOG-app-store svg {
  display: block;
  width: auto;
  height: calc(var(--sq) * 0.4);
  filter: drop-shadow(0 3px 3px rgba(0, 0, 0, 0.4));
}
html.sog-mobile-gate .SOG-app-store span {
  font-size: clamp(14px, var(--sq) * 0.1, 18px);
  line-height: 1;
  white-space: nowrap;
  text-shadow: 0 2px 0 rgba(0, 0, 0, 0.35);
}
html.sog-mobile-gate #SOG-mobile-app-bar {
  display: block;
  margin-top: var(--header-height);
  border-bottom: 2px solid rgba(100, 210, 255, 0.35);
}
html.sog-mobile-gate #SOG-mobile-game-hero {
  display: block;
  margin: 0 -12px 22px;
  border-bottom: 2px solid rgba(100, 210, 255, 0.35);
}
html.sog-mobile-gate body:has(#SOG-mobile-game-hero) #SOG-mobile-app-bar {
  display: none;
}
html.sog-mobile-gate body:has(#SOG-mobile-game-hero) #SOG-app,
html.sog-mobile-gate body:has(#SOG-mobile-game-hero) #SOG-app.has-sog-rail {
  padding-top: var(--header-height);
}
html.sog-mobile-gate #SOG-mobile-games {
  display: block;
}
html.sog-mobile-gate #SOG-mobile-games h2 {
  margin: 0 2px 14px;
  font-family: sogLanderTitle, sans-serif;
  font-weight: normal;
  font-size: 24px;
  line-height: 1.2;
  color: #fff;
}
html.sog-mobile-gate .SOG-mobile-games-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px 12px;
}
@media (min-width: 600px) {
  html.sog-mobile-gate .SOG-mobile-games-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
html.sog-mobile-gate .SOG-mobile-game-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 7px;
  color: #fff;
  text-decoration: none;
  -webkit-tap-highlight-color: transparent;
}
html.sog-mobile-gate .SOG-mobile-game-card img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
  object-fit: cover;
  border-radius: 14px;
  background: #0a4a7e;
  box-shadow: 0 0 0 1.5px rgba(100, 210, 255, 0.28), 0 6px 14px rgba(0, 0, 0, 0.45);
  transition: transform 0.12s ease-out;
}
html.sog-mobile-gate .SOG-mobile-game-card:active img {
  transform: scale(0.97);
}
html.sog-mobile-gate .SOG-mobile-game-name {
  padding: 0 2px;
  font-family: sogLanderBody, sans-serif;
  font-size: 14px;
  line-height: 1.25;
}
html.sog-mobile-gate .SOG-mobile-game-badge {
  position: absolute;
  top: 6px;
  left: 6px;
  padding: 3px 8px;
  border-radius: 999px;
  background: #19b35a;
  box-shadow: 0 2px 0 #0b5e2d;
  font-family: sogLanderBody, sans-serif;
  font-size: 11px;
  line-height: 1.2;
  color: #fff;
}

@media (prefers-reduced-motion: reduce) {
  html.sog-mobile-gate .SOG-app-hero-row {
    animation: none;
  }
}
@supports not (scale: min(1, tan(atan2(100vw - 32px, 780px)))) {
  footer #footer-forest {
    --footer-scale: 1;
  }
  @media (max-width: 811px) {
    footer #footer-forest {
      --footer-scale: .72;
    }
  }
  @media (max-width: 599px) {
    footer #footer-forest {
      --footer-scale: .5;
    }
  }
  @media (max-width: 419px) {
    footer #footer-forest {
      --footer-scale: .42;
    }
  }
}
@media (max-width: 800px) {
  header #SOG-rail-toggle,
  header #header-buttons {
    display: none !important;
  }
  #SOG-gameInfo .game-share-title-row {
    padding-right: 0 !important;
  }
  #SOG-gameInfo .game-share-title-row .game-badge-sticker {
    display: none !important;
  }
  footer #footer-forest .footer-prowl,
  footer #footer-forest .footer-ghost,
  footer #footer-forest .footer-peek,
  footer #footer-forest .footer-princess,
  footer #footer-forest .footer-blob,
  footer #footer-forest #footer-edges {
    display: none !important;
  }
}
@media (max-width: 700px) {
  footer #footer-content #footer-feedback p {
    max-width: calc(100% - 130px);
  }
  footer #footer-content {
    padding-top: 48px;
    padding-left: 20px;
    padding-right: 20px;
  }
  footer #footer-content #footer-left {
    flex-basis: 100%;
  }
  footer #footer-content #footer-right {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 30px 20px;
    width: 100%;
  }
  footer #footer-content #footer-right > div {
    min-width: 0;
    gap: 14px;
  }
  footer #footer-content #footer-right h3 {
    font-size: 17px;
    letter-spacing: 1.5px;
  }
  footer #footer-content #footer-right ul {
    gap: 11px;
  }
  footer #footer-content #footer-right a {
    white-space: normal;
    line-height: 1.25;
    font-size: 16px;
  }
}
