/* The homepage season stop uses the dedicated S1 poster without cropping either character. */
body.entry-snap-mode .season-entry {
  background: #0d202a !important;
}

body.entry-snap-mode .season-entry .entry-poster {
  background:
    radial-gradient(circle at 72% 36%, rgba(84, 148, 149, .18), transparent 28rem),
    #0d202a;
}

body.entry-snap-mode .season-entry .entry-media img {
  object-fit: contain !important;
  object-position: center !important;
}

body.entry-snap-mode .season-entry .entry-poster::after {
  background:
    linear-gradient(90deg, rgba(9, 28, 37, .98) 0%, rgba(9, 28, 37, .9) 28%, rgba(9, 28, 37, .42) 49%, rgba(9, 28, 37, .04) 72%),
    linear-gradient(180deg, rgba(9, 28, 37, .12), rgba(9, 28, 37, .18));
}

body.entry-snap-mode .season-entry .entry-kicker { color: #91d4ca; }
body.entry-snap-mode .season-entry .entry-copy h2 { color: #edf7f5; }
body.entry-snap-mode .season-entry .entry-copy > p:not(.entry-kicker) { color: rgba(226, 240, 237, .82); }

body.entry-snap-mode .season-entry .entry-button {
  border-color: #91d4ca;
  background: #91d4ca;
  color: #102722 !important;
  box-shadow: 0 16px 34px rgba(5, 17, 22, .3);
}

body.entry-snap-mode .season-entry .entry-button:hover {
  background: #acdcd5;
  box-shadow: 0 20px 40px rgba(5, 17, 22, .36);
}

body.entry-snap-mode .home-section .hero-routes {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  max-width: 45rem;
}

body.entry-snap-mode .main-nav .nav-container { max-width: 1560px; }
body.entry-snap-mode .main-nav .nav-links { gap: clamp(.35rem, .8vw, .85rem); }
body.entry-snap-mode .main-nav .nav-links a { padding-inline: clamp(.45rem, .8vw, .75rem); font-size: clamp(.72rem, .92vw, .88rem); white-space: nowrap; }

@media (max-width: 1180px) {
  body.entry-snap-mode .main-nav .nav-links { display: none !important; }
}

@media (max-width: 768px) {
  /* The desktop four-column route strip was overriding the mobile hide rule and
     squeezing Chinese labels into vertical columns. Keep the first screen focused. */
  body.entry-snap-mode .home-section .hero-routes {
    display: none !important;
  }

  body.entry-snap-mode .home-section .hero-content {
    gap: 0;
    padding-inline: clamp(1.25rem, 6vw, 1.75rem);
  }

  body.entry-snap-mode .home-section .hero-title-wrapper {
    width: min(100%, 22rem);
  }

  body.entry-snap-mode .home-section .hero-title,
  body.entry-snap-mode .home-section .hero-subtitle {
    overflow-wrap: normal;
    word-break: keep-all;
  }

  body.entry-snap-mode .season-entry .entry-media {
    inset: 0;
    height: 100% !important;
  }

  body.entry-snap-mode .season-entry .entry-media img {
    object-fit: cover !important;
    object-position: center top !important;
  }

  body.entry-snap-mode .season-entry .entry-poster::after {
    background:
      linear-gradient(180deg, rgba(9, 28, 37, .01) 0%, rgba(9, 28, 37, .06) 48%, rgba(9, 28, 37, .76) 69%, #0d202a 90%);
  }

  body.entry-snap-mode .season-entry .entry-copy {
    bottom: calc(var(--qjs-filing-clearance, 3.15rem) + 1rem + env(safe-area-inset-bottom)) !important;
  }

  body.entry-snap-mode .season-entry .entry-copy h2 {
    max-width: 9ch;
    font-size: clamp(2.45rem, 12vw, 3.45rem);
  }

  body.entry-snap-mode .season-entry .entry-copy > p:not(.entry-kicker) {
    max-width: 22rem;
    color: rgba(226, 240, 237, .88);
  }
}

@media (max-width: 380px) {
  body.entry-snap-mode .home-section .hero-buttons {
    width: 100%;
  }

  body.entry-snap-mode .home-section .hero-buttons .btn-primary {
    min-width: 0;
    padding-inline: .55rem;
    font-size: .82rem;
  }

  body.entry-snap-mode .season-entry .entry-copy h2 { font-size: 2.28rem; }
}

@media (prefers-reduced-motion: reduce) {
  body.entry-snap-mode .season-entry .entry-button { transition: none; }
}
