/* Homepage-only cinematic artwork. Brand/logo configuration stays in includes/brand.php. */
body.pmf-heritage .pmf-home-hero-cinematic {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: 0;
    background: #111820;
}
.pmf-home-hero-cinematic .pmf-hero-scene {
    position: absolute;
    inset: 0;
    /* Match the inner edges of the lower Bootstrap container-xl sections. */
    width: calc(100% - 1.5rem);
    margin-inline: auto;
    z-index: -1;
    pointer-events: none;
}
.pmf-hero-scene img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 72% center;
}
.pmf-home-hero-cinematic .pmf-hero-scene::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(270deg, #111820 0%, #11182000 7%),
                linear-gradient(90deg, #111820 0%, #111820f5 23%, #111820c7 39%, #11182038 59%, #11182000 76%),
                linear-gradient(0deg, #111820 0%, #11182000 18%, #11182000 85%, #11182038 100%);
}
.pmf-home-hero-cinematic .pmf-heritage-hero-grid {
    display: flex;
    align-items: center;
    min-height: clamp(620px, 47vw, 760px);
    padding-block: 4rem;
}
.pmf-home-hero-cinematic .pmf-heritage-hero-copy {
    width: 56%;
    padding: 0;
}
body.pmf-heritage .pmf-home-hero-cinematic .pmf-home-title {
    font-size: clamp(3rem, 5.1vw, 5.3rem);
}
.pmf-home-hero-cinematic .pmf-heritage-intro { max-width: 27rem; }
.pmf-home-hero-cinematic .btn-outline-secondary { background: #11182080; }
@media (min-width: 1200px) {
    .pmf-home-hero-cinematic .pmf-hero-scene { max-width: calc(1140px - 1.5rem); }
}
@media (min-width: 1400px) {
    .pmf-home-hero-cinematic .pmf-hero-scene { max-width: calc(1320px - 1.5rem); }
}
@media (min-width: 1800px) {
    .pmf-hero-scene img { object-position: center 48%; }
}
@media (max-width: 991.98px) {
    .pmf-home-hero-cinematic .pmf-heritage-hero-copy { width: 65%; }
    .pmf-home-hero-cinematic .pmf-heritage-hero-grid { min-height: 650px; }
}
@media (max-width: 767.98px) {
    .pmf-home-hero-cinematic .pmf-heritage-hero-grid {
        min-height: 0;
        padding: 2.5rem 1.25rem 0;
    }
    .pmf-home-hero-cinematic .pmf-heritage-hero-copy { width: 100%; }
    body.pmf-heritage .pmf-home-hero-cinematic .pmf-home-title {
        font-size: clamp(2.6rem, 9.8vw, 4.5rem);
    }
    .pmf-home-hero-cinematic .pmf-hero-scene {
        position: relative;
        width: calc(100% - 2.5rem);
        height: clamp(290px, 67vw, 470px);
        margin-top: -1rem;
    }
    /* Place the photograph below the copy, with a continuous navy fade. */
    body.pmf-heritage .pmf-home-hero-cinematic { display: flex; flex-direction: column; }
    .pmf-home-hero-cinematic .pmf-heritage-hero-grid { order: -1; }
    .pmf-hero-scene img { object-position: 85% center; }
    .pmf-home-hero-cinematic .pmf-hero-scene::after {
        background: linear-gradient(180deg, #111820 0%, #11182033 25%, #11182000 45%, #11182026 80%, #111820 100%),
                    linear-gradient(90deg, #11182080, #11182000 45%);
    }
    .pmf-home-hero-cinematic .pmf-heritage-hero-note { margin-bottom: 1.25rem; }
}
@media (max-width: 399.98px) {
    .pmf-home-hero-cinematic .btn { width: 100%; }
}
