/* Full-width photo: 70% at rest, full card on reveal. */
.custom-expeditions--orbit { background: #e8effa; }
.custom-expeditions--orbit::before { background: radial-gradient(ellipse at 15% 45%, #fff 0, transparent 50%), radial-gradient(ellipse at 90% 10%, #c1d6f0, transparent 48%); }
.custom-expeditions--orbit .custom-expeditions__layout { grid-template-columns: minmax(0, 1fr); }
.custom-expeditions--orbit .custom-expeditions__title { max-width: 900px; margin-inline: auto; text-align: center; }
.custom-expeditions--orbit .custom-expeditions__title em { display: inline; color: #405c94; }
.custom-expeditions--orbit .custom-expeditions__intro { max-width: 550px; margin-inline: auto; padding: 0; border: 0; text-align: center; }
.custom-expeditions--orbit .custom-expeditions__routes.swiper { padding: 18px 10px 36px; }
.custom-expeditions--orbit .custom-route-card {
  width: min(370px, calc(100vw - 72px)); max-width: 370px;
  border: 1px solid #bed0dc; border-radius: 12px;
  background: linear-gradient(145deg, #ffffffba, #f7fbff70);
  box-shadow: inset 0 1px 0 #fff, 0 12px 30px #2a477214;
}
.custom-expeditions--orbit .custom-route-card.has-reveal {
  display: grid; grid-template-columns: minmax(0, 1fr); height: auto;
  position: relative; isolation: isolate; overflow: hidden; cursor: pointer;
  transition: transform 350ms ease, box-shadow 350ms ease, background-color 350ms ease;
}
.custom-expeditions--orbit .has-reveal::after {
  content: ''; position: absolute; inset: 0; z-index: 1; pointer-events: none;
  background: linear-gradient(180deg, rgb(8 28 44 / 48%), rgb(8 28 44 / 80%) 50%, rgb(8 28 44 / 96%));
  opacity: 0; transition: opacity 350ms ease;
}
.custom-expeditions--orbit .has-reveal > .custom-route-card__visual {
  position: absolute; z-index: 0; top: 0; left: 0;
  width: 100%; height: 70%; aspect-ratio: auto; border-radius: 0;
  border: 0; box-shadow: none;
  transition: top 400ms ease, left 400ms ease, width 400ms ease, height 400ms ease, border-radius 400ms ease, opacity 400ms ease;
}
.custom-expeditions--orbit .has-reveal > .custom-route-card__visual img { width: 100%; height: 100%; object-fit: cover; transform: none; }
.custom-expeditions--orbit .custom-route-card__front {
  grid-area: 1 / 1; position: relative; z-index: 2; padding: 0;
  display: grid; grid-template-rows: minmax(0, 7fr) minmax(min-content, 3fr);
  border: 0; border-radius: 0; background: transparent; box-shadow: none;
  transform: none; backface-visibility: visible; pointer-events: none;
  transition: opacity 240ms ease;
}
.custom-route-card__photo-space { width: 100%; min-height: 0; aspect-ratio: auto; }
.custom-expeditions--orbit .custom-route-card__summary {
  margin: 0; padding: 18px 20px; min-height: var(--route-summary-height, 0px);
  border: 0; border-radius: 0; background: transparent; text-align: center;
}
.custom-expeditions--orbit .custom-route-card__summary h3 { font-family: var(--sans); font-size: 25px; font-weight: 600; line-height: 1.2; letter-spacing: -.035em; color: #133d52; }
.custom-expeditions--orbit .custom-route-card__tags { justify-content: center; margin-bottom: 18px; }
.custom-expeditions--orbit .custom-route-card__tags span { border-radius: 8px; background: #ffffff80; color: #476577; border: 1px solid #bed0dc; font: 400 12px/1.4 var(--sans); }
.custom-expeditions--orbit .custom-route-card__summary .custom-route-card__level {
  position: static; transform: none; width: fit-content; max-width: 100%;
  margin: auto auto 0; padding: 7px 12px; border: 1px solid var(--difficulty-border, #cbd5df);
  border-radius: 10px; background: var(--difficulty-bg, #e9eef3); color: var(--difficulty-ink, #47596a); font: 500 12px/1.4 var(--sans);
}
.custom-route-card__reveal-target { position: absolute; inset: 0; z-index: 3; width: 100%; height: 100%; border: 0; padding: 0; border-radius: inherit; background: transparent; cursor: pointer; }
.custom-expeditions--orbit .has-reveal > .custom-route-card__content {
  grid-area: 1 / 1; position: relative; z-index: 4; align-self: stretch;
  padding: 28px 24px 24px; border: 0; border-radius: 0; background: transparent;
  color: #fff; box-shadow: none; transform: none; backface-visibility: visible;
  opacity: 0; visibility: hidden; pointer-events: none;
  transition: opacity 300ms ease, visibility 300ms ease;
}
.custom-expeditions--orbit .has-reveal .custom-route-card__overlay h3 { margin-right: 0; margin-bottom: 18px; font-family: var(--sans); font-size: 25px; font-weight: 600; letter-spacing: -.035em; color: #fff; }
.custom-expeditions--orbit .has-reveal .custom-route-card__overlay p { font-size: 14px; line-height: 1.6; color: #eff6fb; }
.custom-expeditions--orbit .has-reveal .custom-route-card__body > p { font-size: 13px; color: #d4e4ee; }
.custom-expeditions--orbit .has-reveal .custom-route-card__body > p strong { color: #fff; }
.custom-expeditions--orbit .has-reveal .custom-route-card__facts { gap: 12px 18px; padding: 16px 0; margin: 6px 0 24px; border-block: 1px solid #bed9e54d; }
.custom-expeditions--orbit .has-reveal .custom-route-card__facts > div { padding: 0; border: 0; border-radius: 0; background: transparent; }
.custom-expeditions--orbit .has-reveal .custom-route-card__facts dt { font-size: 11px; color: #b9d7e9; }
.custom-expeditions--orbit .has-reveal .custom-route-card__facts dd { font-size: 15px; color: #fff; }
.custom-expeditions--orbit .has-reveal .custom-route-card__body > a {
  min-height: 46px; margin-top: auto; padding: 12px 16px; border: 1px solid #bed9e580;
  justify-content: center; text-align: center;
  border-radius: 8px; background: #133d52; color: #eff6fb; font: 500 13px/1.4 var(--sans);
  transition: background 160ms ease, border-color 160ms ease;
}
.custom-expeditions--orbit .has-reveal .custom-route-card__body > a:hover { background: #1d4b63; border-color: #bed9e5; }
.custom-expeditions--orbit .has-reveal .custom-route-card__body > a:focus-visible { outline: 2px solid #eff6fb; outline-offset: 3px; }
.custom-expeditions--orbit .has-reveal.is-revealed { z-index: 5; background-color: #0b2738; box-shadow: 0 18px 38px #1e3f6830; }
.custom-expeditions--orbit .has-reveal.is-revealed::after { opacity: 1; }
.custom-expeditions--orbit .has-reveal.is-revealed > .custom-route-card__visual { top: 0; left: 0; width: 100%; height: 100%; aspect-ratio: auto; border: 0; border-radius: 0; opacity: .85; }
.custom-expeditions--orbit .has-reveal.is-revealed .custom-route-card__front { opacity: 0; visibility: hidden; }
.custom-expeditions--orbit .has-reveal.is-revealed .custom-route-card__reveal-target { pointer-events: none; }
.custom-expeditions--orbit .has-reveal.is-revealed > .custom-route-card__content { opacity: 1; visibility: visible; pointer-events: auto; }
.custom-expeditions--orbit .has-reveal:focus-within { outline: 2px solid #397eb0; outline-offset: 3px; }
@media (hover: hover) and (pointer: fine) {
  .custom-expeditions--orbit .has-reveal.is-revealed { transform: scale(1.025); }
}
@media (max-width: 700px) {
  .custom-expeditions--orbit .custom-route-card__summary h3 { font-size: 24px; }
  .custom-expeditions--orbit .has-reveal > .custom-route-card__content { padding: 26px 20px 20px; }
}
@media (prefers-reduced-motion: reduce) {
  .custom-expeditions--orbit .has-reveal,
  .custom-expeditions--orbit .has-reveal::after,
  .custom-expeditions--orbit .has-reveal > .custom-route-card__visual,
  .custom-expeditions--orbit .has-reveal > .custom-route-card__front,
  .custom-expeditions--orbit .has-reveal > .custom-route-card__content { transition: none; transform: none; }
}

/* Muted difficulty palette; the original label always remains visible. */
.custom-route-card[data-difficulty="very-easy"] { --difficulty-bg: #e6f3ec; --difficulty-border: #c4dfcf; --difficulty-ink: #365d47; }
.custom-route-card[data-difficulty="easy"] { --difficulty-bg: #e0f0ee; --difficulty-border: #badbd5; --difficulty-ink: #2e5f58; }
.custom-route-card[data-difficulty="moderate"] { --difficulty-bg: #e7edf8; --difficulty-border: #c4d1e8; --difficulty-ink: #3d577e; }
.custom-route-card[data-difficulty="somewhat-hard"] { --difficulty-bg: #f5efdf; --difficulty-border: #e2d5b7; --difficulty-ink: #725d30; }
.custom-route-card[data-difficulty="hard"] { --difficulty-bg: #f6e8e4; --difficulty-border: #e6c9c0; --difficulty-ink: #875249; }
.custom-route-card[data-difficulty="very-hard"] { --difficulty-bg: #efe6f2; --difficulty-border: #d9c5e0; --difficulty-ink: #70517e; }
.custom-route-card[data-difficulty="unknown"] { --difficulty-bg: #e9eef3; --difficulty-border: #cbd5df; --difficulty-ink: #47596a; }
.custom-expeditions--orbit .has-reveal .custom-route-card__facts dd.custom-route-card__difficulty {
  width: fit-content; padding: 5px 9px; border-radius: 10px;
  border: 1px solid var(--difficulty-border); background: var(--difficulty-bg); color: var(--difficulty-ink);
}
