.home-journey { scroll-margin-top: 6rem; }
.home-journey > .section-heading { max-width: none; width: 100%; }
.home-journey-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; align-items: stretch; }
.home-journey-step { display: flex; flex-direction: column; min-width: 0; padding: 1.25rem; border: 1px solid var(--cv-border-strong); border-radius: 20px; background: linear-gradient(135deg, #151821, #101116); }
.home-journey-step-heading { display: flex; align-items: flex-start; gap: .8rem; min-height: 4rem; }
.home-journey-number { display: grid; place-items: center; flex: 0 0 2.2rem; height: 2.2rem; border-radius: .7rem; color: var(--cv-accent); background: rgba(125,189,255,.1); font-weight: 700; }
.home-journey-kicker { display: block; color: var(--cv-accent); font-size: .72rem; font-weight: 700; letter-spacing: .04em; margin-bottom: .25rem; }
.home-journey-step h3 { margin: 0; font-size: 1.2rem; line-height: 1.3; }
.home-journey-video { position: relative; aspect-ratio: 16 / 9; overflow: hidden; border-radius: 13px; background: #08090c; margin: .9rem 0; }
.home-journey-video iframe, .home-journey-play { width: 100%; height: 100%; border: 0; position: absolute; inset: 0; }
.home-journey-play { padding: 0; background: #08090c; color: white; cursor: pointer; }
.home-journey-play img { width: 100%; height: 100%; object-fit: cover; }
.home-journey-play-caption { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; gap: .75rem; background: linear-gradient(transparent, rgba(0,0,0,.85)); font-size: .9rem; font-weight: 600; text-shadow: 0 1px 5px #000; }
.home-journey-play-caption small { display: block; font-size: .75rem; font-weight: 400; margin-top: .2rem; }
.home-journey-play-icon { display: grid; place-items: center; width: 3rem; height: 3rem; border-radius: 50%; background: var(--cv-accent); color: #0c1520; font-size: 1rem; text-shadow: none; }
.home-journey-step > p { color: var(--cv-text-soft); font-size: .92rem; line-height: 1.6; margin: 0 0 1rem; }
.home-journey-link { color: var(--cv-accent); font-size: .9rem; text-underline-offset: .25rem; margin-top: auto; }
.home-journey-link i { margin-left: .35rem; }
.home-journey-demo-link { margin-left: auto; display: inline-flex; align-items: center; gap: .3rem; padding: .3rem .5rem; border: 1px solid rgba(125,189,255,.45); border-radius: .5rem; color: var(--cv-accent); font-size: .75rem; font-weight: 600; line-height: 1; text-decoration: none; white-space: nowrap; }
.home-journey-demo-link:hover { background: rgba(125,189,255,.1); color: var(--cv-accent); }
.home-journey :focus-visible { outline: 3px solid var(--cv-accent); outline-offset: 3px; }
.home-journey-play:focus-visible { outline-offset: -4px; }
@media (max-width: 991.98px) { .home-journey-steps { gap: .8rem; } .home-journey-step { padding: 1rem; } }
@media (max-width: 767.98px) { .home-journey-steps { grid-template-columns: 1fr; gap: 1rem; } .home-journey-step { padding: 1.15rem; } .home-journey-step-heading { min-height: auto; } .home-journey-video { margin: 1rem 0; } }