﻿.hero-title .hero-highlight {
    font-weight: 700; 
}

.hero-base {
    position: relative;
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
    overflow: hidden;
    padding: 0;
}


.hero-header {

    border-bottom-left-radius: 40px;
    border-bottom-right-radius: 40px;
}


.hero-header::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 1;
}

/* Image stays at the bottom layer */
.hero-img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
    position: relative;
    z-index: 0;
}

/* ✅ Overlay is ALWAYS absolute (so it sits ON the image) */
.hero-overlay {
    position: absolute;
    inset: 0;
    z-index: 2; /* above gradient */
    display: flex;
    align-items: flex-end; /* nice bottom placement by default (mobile) */
    justify-content: center;
    pointer-events: none; /* re-enable inside */
}

/* --- Mobile-first: simple stacked content --- */
.hero-overlay-content {
    pointer-events: auto;
    display: block; /* stack: title → text → button */
    width: 100%;
    max-width: 100%;
    padding: 2rem 1.5rem;
    color: #FFFDF7;
}

.hero-copy {
    margin-bottom: 4rem;
    margin-right: 2rem;
}

.hero-cta {
    display: inline-block;
}

@media (max-width: 767px) {

    .hero-copy {
        margin-bottom: 2rem;
        margin-right: 2rem;
    }
    
}


    /* --- MD+ (768px+): switch to row layout --- */
    @media (min-width: 768px) {
        .hero-overlay {
            align-items: center; /* vertical band */
            justify-content: center;
            --overlay-y: 75%;
            top: var(--overlay-y);
            transform: translateY(-50%);
        }

        .hero-overlay-content {
            display: flex;
            align-items: center;
            justify-content: space-between; /* text left, button right */
            gap: 2rem;
            padding: 0 3rem;
            max-width: 1200px;
            width: 100%;
        }

        .hero-copy {
            flex: 1 1 auto;
            min-width: 0;
        }

        .hero-cta {
            white-space: nowrap;
            flex: 0 0 auto;
            margin-bottom: 5.25rem;
        }
    }