
/* ==========================================================
   HOUSE OF VALE — FINAL OPENING FILM POLISH
   ========================================================== */

.vale-hero,
.hov-hero,
.home-hero,
.vale-cinematic-hero {
    position: relative;
    background: #111011 !important;
}

/* Preserve Orion's face: desktop favors the upper source area. */
.vale-hero-video {
    object-fit: cover !important;
    object-position: 50% 10% !important;
    background: #111011;
}

/* Gentle top shade keeps navigation readable as frames change. */
.vale-hero::after,
.hov-hero::after,
.home-hero::after,
.vale-cinematic-hero::after {
    content: "";
    position: absolute;
    z-index: 5;
    inset: 0 0 auto 0;
    height: 150px;
    pointer-events: none;
    background: linear-gradient(to bottom,
        rgba(17,16,17,.62) 0%,
        rgba(17,16,17,.28) 52%,
        rgba(17,16,17,0) 100%);
}

/* Brand reveal remains crisp HTML, not baked into video. */
.vale-hero-brand-reveal {
    z-index: 8 !important;
}

/* Once the opening finishes, hold HOUSE OF VALE on screen. */
.vale-hero-brand-reveal.is-settled {
    animation: none !important;
    opacity: 1 !important;
    transform: translateY(0) !important;
}

/* Minimal architectural scroll cue. */
.vale-hero-scroll-cue {
    position: absolute;
    z-index: 9;
    left: 50%;
    bottom: 24px;
    width: 30px;
    height: 38px;
    transform: translateX(-50%);
    opacity: 0;
    pointer-events: none;
    transition: opacity .9s ease;
}

.vale-hero-scroll-cue.is-visible {
    opacity: .9;
    pointer-events: auto;
}

.vale-hero-scroll-cue span {
    position: absolute;
    left: 50%;
    top: 2px;
    width: 1px;
    height: 25px;
    background: linear-gradient(to bottom, rgba(181,151,99,.2), #B59763);
    transform: translateX(-50%);
}

.vale-hero-scroll-cue span::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -1px;
    width: 7px;
    height: 7px;
    border-right: 1px solid #B59763;
    border-bottom: 1px solid #B59763;
    transform: translateX(-50%) rotate(45deg);
}

/* Smooth destination when visitor follows the cue. */
html { scroll-behavior: smooth; }

/* Mobile: preserve face rather than aggressively filling the viewport. */
@media (max-width: 767px) {
    .vale-hero-video {
        object-fit: contain !important;
        object-position: center top !important;
        background: #111011 !important;
    }

    .vale-hero,
    .hov-hero,
    .home-hero,
    .vale-cinematic-hero {
        background: #111011 !important;
    }

    .vale-hero-scroll-cue {
        bottom: 18px;
    }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    .vale-hero-scroll-cue { transition: none; }
}
