.vw-route-stage {
    position: relative;
    min-height: calc(100vh - 7rem);
}

.vw-home-return-transition {
    position: absolute;
    z-index: 200;
    inset: 0;
    min-height: calc(100vh - 7rem);
    padding: clamp(1.8rem, 2.5vw, 2.7rem) clamp(1rem, 3vw, 3rem) 7rem;
    visibility: hidden;
    background: #f3f6f4;
    opacity: 0;
    pointer-events: none;
    transform: translateY(3px);
    transition: opacity 90ms ease-out, transform 90ms ease-out;
}

html.vw-route-transitioning-home .vw-home-return-transition {
    visibility: visible;
    opacity: 1;
    transform: none;
}

.vw-home-return-transition__inner {
    width: min(100%, 1380px);
    margin-inline: auto;
}

.vw-home-return-transition__title {
    width: min(37rem, 62vw);
    height: clamp(2.75rem, 4vw, 4rem);
    margin-bottom: clamp(1.75rem, 2.4vw, 2.4rem);
    border-radius: 12px;
}

.vw-home-return-transition__signal-row {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(280px, 0.7fr);
    gap: 1.2rem;
    margin-bottom: clamp(2.6rem, 4.2vw, 4rem);
}

.vw-home-return-transition__signal,
.vw-home-return-transition__context,
.vw-home-return-transition__card {
    border: 1px solid rgba(18, 57, 42, 0.13);
    border-radius: 20px;
    background: #ffffff;
    box-shadow: 0 12px 32px rgba(14, 51, 37, 0.05);
}

.vw-home-return-transition__signal {
    min-height: 286px;
    padding: 1.65rem 1.8rem;
}

.vw-home-return-transition__context {
    min-height: 286px;
}

.vw-home-return-transition__kicker,
.vw-home-return-transition__card-kicker {
    width: 8rem;
    height: 0.65rem;
    border-radius: 999px;
}

.vw-home-return-transition__heading {
    width: min(24rem, 72%);
    height: 1.8rem;
    margin-top: 1rem;
    border-radius: 8px;
}

.vw-home-return-transition__metric {
    width: 12rem;
    height: 4rem;
    margin-top: 1.3rem;
    border-radius: 10px;
}

.vw-home-return-transition__chart {
    width: 100%;
    height: 3px;
    margin-top: 1.65rem;
    border-radius: 999px;
}

.vw-home-return-transition__section-title {
    width: 12rem;
    height: 2.2rem;
    margin-bottom: 1.5rem;
    border-radius: 8px;
}

.vw-home-return-transition__cards {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.85rem;
}

.vw-home-return-transition__card {
    min-height: 210px;
    padding: 1.45rem;
}

.vw-home-return-transition__card-title {
    width: 70%;
    height: 1.3rem;
    margin-top: 2rem;
    border-radius: 6px;
}

.vw-home-return-transition__card-copy {
    width: 92%;
    height: 2.8rem;
    margin-top: 0.9rem;
    border-radius: 8px;
}

.vw-home-return-transition__pulse {
    background: linear-gradient(100deg, #eef3f0 25%, #f8faf9 42%, #eef3f0 60%);
    background-size: 260% 100%;
    animation: vw-home-return-pulse 1.35s ease-in-out infinite;
}

@keyframes vw-home-return-pulse {
    0% {
        background-position: 100% 0;
    }
    100% {
        background-position: -100% 0;
    }
}

@media (max-width: 991.98px) {
    .vw-home-return-transition__signal-row {
        grid-template-columns: minmax(0, 1fr);
    }

    .vw-home-return-transition__cards {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575.98px) {
    .vw-home-return-transition__cards {
        grid-template-columns: minmax(0, 1fr);
    }
}

@media (prefers-reduced-motion: reduce) {
    .vw-home-return-transition,
    .vw-home-return-transition__pulse {
        animation: none;
        transition: none;
    }
}
