
        body { background-color: #f7f9fc; }
.journey-step-hero {
  background:
    linear-gradient(135deg, rgba(13, 125, 150, 0.08), rgba(255, 255, 255, 0) 44%),
    var(--color-surface-container-low, #f6f9fc);
}

.journey-step-card {
  border-radius: 1.5rem;
}

.journey-step-image,
.journey-step-note,
.journey-step-mini,
.journey-step-alt {
  box-shadow: 0 14px 36px rgba(15, 23, 42, 0.05);
}

.journey-step-image {
  border-radius: 1.25rem;
  border: 1px solid rgba(148, 163, 184, 0.28);
}

.journey-step-cta:focus-visible {
  outline: 3px solid rgba(13, 125, 150, 0.28);
  outline-offset: 3px;
}

.journey-step-mini,
.journey-step-note {
  border-radius: 0.9rem;
}

.journey-step-alt {
  border-radius: 1.25rem;
}

.journey-step-cta {
  min-height: 2.8rem;
  line-height: 1.2;
  text-align: center;
}

@media (max-width: 767px) {
  .journey-step-card {
    padding-block: 3rem;
  }

  .journey-step-image {
    height: 18rem;
  }

  .journey-step-cta {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .reveal-element,
  .journey-step-cta {
    transition: none;
  }

  .reveal-element {
    opacity: 1;
    transform: none;
  }
}
        .timeline-line {
            width: 2px;
            background: linear-gradient(to bottom, transparent, #0c1d2c 10%, #0c1d2c 90%, transparent);
            position: absolute;
            left: 50%;
            transform: translateX(-50%);
            top: 0;
            bottom: 0;
            z-index: 0;
        }
        @media (max-width: 768px) {
            .timeline-line { left: 24px; transform: none; }
        }
        .reveal-element {
            opacity: 0;
            transform: translateY(30px);
            transition: all 0.8s cubic-bezier(0.16, 1, 0.3, 1);
        }
        .reveal-element.active {
            opacity: 1;
            transform: translateY(0);
        }

        /* Page-scoped refinements for the interactive journey timeline. */
        .journey-page {
            scroll-behavior: smooth;
        }

        .journey-page .dest-hero {
            min-height: clamp(32rem, 58vw, 42rem);
        }

        .journey-page .journey-step-card {
            min-width: 0;
            border-radius: 1.5rem;
            scroll-margin-top: 6rem;
        }

        .journey-page .journey-step-cta:focus-visible {
            outline: 3px solid rgba(13, 125, 150, 0.42);
            outline-offset: 4px;
        }

        .journey-page .journey-step-card h2,
        .journey-page .journey-step-card p,
        .journey-page .journey-step-mini,
        .journey-page .journey-step-note {
            overflow-wrap: anywhere;
        }

        .journey-page .journey-step-image {
            min-width: 0;
        }

        .journey-page .journey-step-note,
        .journey-page .journey-step-mini,
        .journey-page .journey-step-alt {
            border-color: rgba(148, 163, 184, 0.45);
        }

        @media (max-width: 767px) {
            .journey-page .dest-hero {
                min-height: 34rem;
            }

            .journey-page .journey-step-card {
                padding-block: 3.5rem;
                border-radius: 1rem;
            }

            .journey-page .journey-step-image {
                height: 16rem;
                border-radius: 1rem;
            }

            .journey-page .journey-step-note,
            .journey-page .journey-step-mini {
                padding: 1rem;
            }
        }

        @media (prefers-reduced-motion: reduce) {
            .journey-page {
                scroll-behavior: auto;
            }

            .journey-page .journey-step-cta,
            .journey-page .journey-step-image img {
                transition: none !important;
            }
        }
    
