.hero-gradient {
    background-image:
        linear-gradient(0deg, rgba(9,20,35,0.55) 0%, rgba(36,57,79,0.55) 100%);
    background-color: #0f2340;
}

.home-hero {
    /* layered background: gradient + right-side illustration */
    background-image:
        linear-gradient(0deg, rgba(9,20,35,0.55) 0%, rgba(36,57,79,0.55) 100%),
        url("../images/memor-e.nobg.png");
    background-repeat: no-repeat, no-repeat;
    background-position: left center, right 6% center;
    background-size: cover, 25%;
    background-color: #0f2340;
    overflow: hidden;
}

/* content sits above backgrounds */
.home-hero > .container,
.home-hero * { position: relative; z-index: 1; }

/* layout tweaks for medium screens */
@media (max-width: 1024px) {
    .home-hero {
        min-height: 460px;
        background-size: cover, 30%;
        background-position: left center, right 8% center;
    }
}

/* mobile: hide/stack illustration, keep gradient for contrast */
@media (max-width: 640px) {
    .home-hero {
        min-height: 360px;
        background-position: left center, bottom 10% center;
        background-size: cover, 40%;
    }
    .home-hero::before { background: linear-gradient(180deg, rgba(15,35,64,0.85), rgba(15,35,64,0.85)); }
}