/* =========================================================
   HERO DAS PÁGINAS INTERNAS
   PORTFÓLIO / EVENTOS / CONTATO
   PARALLAX REAL VIA JS
   ========================================================= */

main.inner-page{
    padding-top:0 !important;
}

.internal-hero{
    position:relative;
    width:100%;
    height:440px;
    min-height:440px;
    margin-bottom:58px;
    overflow:hidden;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#070707;
    isolation:isolate;
}

/* A camada da foto é propositalmente maior que o hero.
   É ela que se move no scroll. */
.internal-hero-media{
    position:absolute;
    left:-3%;
    top:-150px;
    width:106%;
    height:calc(100% + 300px);
    z-index:0;

    background-position:center center;
    background-size:cover;
    background-repeat:no-repeat;

    transform:translate3d(0,0,0) scale(1.12);
    transform-origin:center center;
    will-change:transform;
    backface-visibility:hidden;
}

/* Overlay escuro, mas sem matar a leitura da fotografia */
.internal-hero-overlay{
    position:absolute;
    inset:0;
    z-index:1;
    pointer-events:none;
    background:
        linear-gradient(
            180deg,
            rgba(0,0,0,.58) 0%,
            rgba(0,0,0,.42) 46%,
            rgba(0,0,0,.66) 100%
        ),
        linear-gradient(
            90deg,
            rgba(0,0,0,.16) 0%,
            transparent 45%,
            rgba(0,0,0,.18) 100%
        );
}

.internal-hero-content{
    position:relative;
    z-index:2;
    width:100%;
    padding-top:150px;
    padding-bottom:18px;
    text-align:center;
}

.internal-hero-title{
    margin:0;
    color:#fff;
    font-family:'Playfair Display',serif;
    font-size:clamp(3.8rem,6.2vw,6.25rem);
    font-weight:500;
    line-height:.94;
    letter-spacing:-.045em;
    text-shadow:0 6px 34px rgba(0,0,0,.48);
}

.internal-hero-breadcrumb{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:.55rem;
    margin-top:1.15rem;
    color:rgba(255,255,255,.92);
    font-family:'Roboto',sans-serif;
    font-size:.75rem;
    font-weight:300;
    letter-spacing:.07em;
}

.internal-hero-breadcrumb a{
    color:#fff;
    text-decoration:none;
}

.internal-hero-breadcrumb a:hover{
    color:var(--accent);
}

/* deixa a foto correr atrás do menu */
@media (min-width:992px){
    .site-header:not(.scrolled){
        background:transparent !important;
        border-bottom-color:transparent !important;
        backdrop-filter:none !important;
    }
}

/* Tablet/mobile: evita travamentos e mantém o enquadramento */
@media (max-width:991.98px){
    .internal-hero{
        height:380px;
        min-height:380px;
        margin-bottom:45px;
    }

    .internal-hero-media{
        left:0;
        top:-35px;
        width:100%;
        height:calc(100% + 70px);
        transform:translate3d(0,0,0) scale(1.08) !important;
        background-position:center center;
    }

    .internal-hero-content{
        padding-top:112px;
    }
}

@media (max-width:575.98px){
    .internal-hero{
        height:340px;
        min-height:340px;
        margin-bottom:34px;
    }

    .internal-hero-title{
        font-size:clamp(3.2rem,15vw,4.8rem);
    }

    .internal-hero-media{
        top:-25px;
        height:calc(100% + 50px);
    }
}
