/* Production card polish: use the real schedule waves without dark glass overlays. */
.results .stop-card:not(.cancelled-card),
.results .stop-card.cafe-card:not(.cancelled-card),
.results .stop-card.mobile-card:not(.cancelled-card),
.results .stop-card.upcoming-card:not(.cancelled-card),
.results .stop-card.open-card:not(.cancelled-card),
.results .stop-card.scheduled-card:not(.cancelled-card),
.results .stop-card.coffee-art-card:not(.cancelled-card),
.results .stop-card.holiday-card:not(.cancelled-card),
.stop-card:not(.cancelled-card),
.stop-card.cafe-card:not(.cancelled-card),
.stop-card.mobile-card:not(.cancelled-card),
.stop-card.upcoming-card:not(.cancelled-card),
.stop-card.open-card:not(.cancelled-card),
.stop-card.scheduled-card:not(.cancelled-card),
.stop-card.coffee-art-card:not(.cancelled-card),
.stop-card.holiday-card:not(.cancelled-card) {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
  color: #0c2239 !important;
  border: 2px solid rgba(91, 149, 215, .42) !important;
  background-color: #fff4dc !important;
  background-image:
    linear-gradient(rgba(255, 252, 244, .16), rgba(255, 252, 244, .16)),
    url("assets/schedule-wavy-stripes.webp") !important;
  background-position: center center, center center !important;
  background-size: cover, cover !important;
  background-repeat: no-repeat, no-repeat !important;
  background-blend-mode: normal, normal !important;
  box-shadow:
    0 18px 42px rgba(29, 18, 5, .24),
    inset 0 1px 0 rgba(255,255,255,.78) !important;
}

.results .stop-card:not(.cancelled-card)::before,
.stop-card:not(.cancelled-card)::before {
  display: none !important;
  content: none !important;
  opacity: 0 !important;
  background: none !important;
}

.results .stop-card:not(.cancelled-card) > *,
.stop-card:not(.cancelled-card) > * {
  position: relative !important;
  z-index: 2 !important;
}

.results .stop-card:not(.cancelled-card).coffee-art-card::after,
.results .stop-card:not(.cancelled-card).holiday-card::after,
.stop-card:not(.cancelled-card).coffee-art-card::after,
.stop-card:not(.cancelled-card).holiday-card::after {
  z-index: 1 !important;
}

.results .stop-card:not(.cancelled-card) .stop-name,
.results .stop-card:not(.cancelled-card) h3,
.stop-card:not(.cancelled-card) .stop-name,
.stop-card:not(.cancelled-card) h3 {
  color: #0c2239 !important;
  font-weight: 700 !important;
  text-shadow: 0 1px 0 rgba(255,255,255,.70) !important;
}

.results .stop-card:not(.cancelled-card) .stop-address,
.results .stop-card:not(.cancelled-card) .stop-source,
.results .stop-card:not(.cancelled-card) .card-topline,
.stop-card:not(.cancelled-card) .stop-address,
.stop-card:not(.cancelled-card) .stop-source,
.stop-card:not(.cancelled-card) .card-topline {
  color: rgba(12, 34, 57, .86) !important;
  font-weight: 850 !important;
  text-shadow: 0 1px 0 rgba(255,255,255,.66) !important;
}

.results .stop-card:not(.cancelled-card) .card-topline,
.stop-card:not(.cancelled-card) .card-topline,
#results .stop-card:not(.cancelled-card) .card-topline {
  justify-content: flex-start !important;
}

.day-chip {
  min-height: 27px !important;
  padding: 6px 10px !important;
  display: inline-flex !important;
  align-items: center !important;
  border-radius: 999px !important;
  color: #5a2e12 !important;
  background: linear-gradient(135deg, #fff8e9 0%, #f2cf96 58%, #d49a4f 100%) !important;
  border: 1px solid rgba(129, 73, 24, .28) !important;
  box-shadow:
    0 7px 14px rgba(112, 63, 18, .13),
    inset 0 1px 0 rgba(255,255,255,.72) !important;
  font-size: .72rem !important;
  font-weight: 950 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  text-shadow: 0 1px 0 rgba(255,255,255,.62) !important;
}

.day-chip[hidden] {
  display: none !important;
}

.stop-card .distance-chip {
  margin-left: auto !important;
}

.results .stop-card:not(.cancelled-card) .route-main,
.results .stop-card:not(.cancelled-card) .route-main *,
.stop-card:not(.cancelled-card) .route-main,
.stop-card:not(.cancelled-card) .route-main * {
  color: #ffffff !important;
  text-shadow: none !important;
}

.results .stop-card:not(.cancelled-card) .route-main small,
.stop-card:not(.cancelled-card) .route-main small {
  color: rgba(255,255,255,.78) !important;
}

.results .stop-card.cancelled-card,
.stop-card.cancelled-card {
  background:
    linear-gradient(145deg, rgba(255, 236, 221, .92), rgba(255, 214, 198, .88)) !important;
}

.rb-map-picker-slot {
  background-color: #fff4dc !important;
  background-image:
    linear-gradient(rgba(255, 252, 244, .12), rgba(255, 252, 244, .12)),
    url("assets/schedule-wavy-stripes.webp") !important;
  background-position: center center, center center !important;
  background-size: cover, cover !important;
  background-repeat: no-repeat, no-repeat !important;
  background-blend-mode: normal, normal !important;
  border: 2px solid rgba(91, 149, 215, .42) !important;
  box-shadow:
    0 18px 42px rgba(29, 18, 5, .24),
    inset 0 1px 0 rgba(255,255,255,.78) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.rb-map-picker-slot::before {
  display: none !important;
  content: none !important;
  opacity: 0 !important;
  background: none !important;
}

.rb-map-picker-button,
.rb-map-picker-copy strong {
  color: #0c2239 !important;
  text-shadow: 0 1px 0 rgba(255,255,255,.70) !important;
}

.rb-map-picker-copy .mini-label {
  color: #0788da !important;
  text-shadow: 0 1px 0 rgba(255,255,255,.60) !important;
}

/* Match the closest/featured stop title typography without marker highlights. */
.rb-map-picker-copy strong,
.results .stop-card:not(.cancelled-card) .stop-name,
#results .stop-card:not(.cancelled-card) .stop-name,
.stop-card:not(.cancelled-card) .stop-name {
  display: block !important;
  max-width: 18rem !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  color: #0c2239 !important;
  background: none !important;
  background-image: none !important;
  box-shadow: none !important;
  font-family: inherit !important;
  font-size: clamp(1.55rem, 3.8vw, 2.05rem) !important;
  font-weight: 700 !important;
  line-height: 1.03 !important;
  letter-spacing: -.065em !important;
  text-shadow: 0 1px 0 rgba(255,255,255,.52) !important;
  -webkit-box-decoration-break: slice !important;
  box-decoration-break: slice !important;
}

.rb-map-picker-copy strong {
  max-width: none !important;
}

/* Match the specificity of pin-final-fix.css so the route-card polish wins. */
#results .stop-card:not(.cancelled-card) {
  color: #0c2239 !important;
  border: 2px solid rgba(91, 149, 215, .42) !important;
  background-color: #fff4dc !important;
  background-image:
    linear-gradient(rgba(255, 252, 244, .16), rgba(255, 252, 244, .16)),
    url("assets/schedule-wavy-stripes.webp") !important;
  background-position: center center, center center !important;
  background-size: cover, cover !important;
  background-repeat: no-repeat, no-repeat !important;
  background-blend-mode: normal, normal !important;
  box-shadow:
    0 18px 42px rgba(29, 18, 5, .24),
    inset 0 1px 0 rgba(255,255,255,.78) !important;
}

#results .stop-card:not(.cancelled-card)::before {
  display: none !important;
  content: none !important;
  opacity: 0 !important;
  background: none !important;
}

#results .stop-card:not(.cancelled-card) .stop-name,
#results .stop-card:not(.cancelled-card) h3 {
  color: #0c2239 !important;
  font-weight: 700 !important;
  text-shadow: 0 1px 0 rgba(255,255,255,.70) !important;
}

#results .stop-card:not(.cancelled-card) .stop-address,
#results .stop-card:not(.cancelled-card) .stop-source,
#results .stop-card:not(.cancelled-card) .card-topline {
  color: rgba(12, 34, 57, .86) !important;
  font-weight: 850 !important;
  text-shadow: 0 1px 0 rgba(255,255,255,.66) !important;
}

#results .stop-card:not(.cancelled-card) .route-main,
#results .stop-card:not(.cancelled-card) .route-main * {
  color: #ffffff !important;
  text-shadow: none !important;
}

#results .stop-card:not(.cancelled-card) .route-main small {
  color: rgba(255,255,255,.78) !important;
}

/* Final hero badge polish: use the real pin asset over the map art. */
.inline-brand-logo.hero-brand-logo::before {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: clamp(132px, 22vw, 158px) !important;
  z-index: 6 !important;
  display: block !important;
  width: clamp(98px, 16vw, 116px) !important;
  height: clamp(98px, 16vw, 116px) !important;
  transform: translateX(-50%) !important;
  background: url("assets/roaming-bean-pin-mark.svg?v=10") center / contain no-repeat !important;
  border: 0 !important;
  box-shadow: none !important;
  filter: drop-shadow(0 7px 9px rgba(5, 22, 39, .22)) !important;
  pointer-events: none !important;
}

.inline-brand-logo.hero-brand-logo::after {
  transform: translate(-18px, 34px) !important;
}

body .hero-card > img.hero-award-badge {
  margin-right: 34px !important;
}

@media (max-width: 520px) {
  .inline-brand-logo.hero-brand-logo::after {
    transform: translate(-10px, 25px) !important;
  }

  body .hero-card > img.hero-award-badge {
    margin-right: 0 !important;
  }
}
