/* MATVII PISTUN — EXCLUSIVE INTERVIEW ENTRY */

body{
    animation:matviiBodyLock 2.86s step-end;
}

.matvii-entry{
    position:fixed;
    inset:0;
    z-index:100000;
    overflow:hidden;
    color:#fff;
    background:#b00005;
    pointer-events:auto;
    will-change:transform,visibility;
    animation:
        matviiEntryExit .86s cubic-bezier(.76,0,.24,1) 1.92s forwards,
        matviiEntryHide .01s linear 2.82s forwards;
}

.matvii-entry__media,
.matvii-entry__image{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
}

.matvii-entry__image{
    display:block;
    max-width:none;
    object-fit:cover;
    object-position:center;
    filter:saturate(1.08) contrast(1.03);
    transform:scale(1.075);
    animation:matviiImageSettle 2.5s cubic-bezier(.16,1,.3,1) forwards;
}

.matvii-entry::before{
    position:absolute;
    z-index:1;
    inset:0;
    content:"";
    background:
        linear-gradient(90deg,rgba(28,0,0,.72) 0%,rgba(50,0,0,.46) 34%,rgba(38,0,0,.1) 66%,rgba(20,0,0,.2) 100%),
        linear-gradient(0deg,rgba(16,0,0,.42) 0%,transparent 38%,rgba(12,0,0,.14) 100%);
}

.matvii-entry::after{
    position:absolute;
    z-index:2;
    inset:18px;
    border:1px solid rgba(255,255,255,.25);
    content:"";
    opacity:0;
    transform:scale(.985);
    animation:matviiFrameIn .7s ease .14s forwards;
}

.matvii-entry__topline{
    position:absolute;
    z-index:3;
    top:42px;
    right:52px;
    left:52px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    font-family:Arial,sans-serif;
    font-size:11px;
    font-weight:600;
    letter-spacing:.38em;
    text-transform:uppercase;
    opacity:0;
    transform:translateY(-12px);
    animation:matviiToplineIn .55s cubic-bezier(.22,1,.36,1) .12s forwards;
}

.matvii-entry__topline span:last-child{
    color:rgba(255,255,255,.66);
}

.matvii-entry__copy{
    position:absolute;
    z-index:3;
    top:50%;
    left:clamp(50px,7vw,112px);
    width:min(63vw,890px);
    transform:translateY(-47%);
}

.matvii-entry__kicker{
    display:block;
    margin-bottom:clamp(24px,4vh,42px);
    font-family:Arial,sans-serif;
    font-size:clamp(10px,1vw,13px);
    font-weight:600;
    letter-spacing:.42em;
    text-transform:uppercase;
    opacity:0;
    transform:translateY(18px);
    animation:matviiCopyIn .65s cubic-bezier(.16,1,.3,1) .25s forwards;
}

.matvii-entry__title{
    display:block;
    white-space:nowrap;
}

.matvii-entry__title-word{
    display:block;
    font-family:"Times New Roman",serif;
    font-size:clamp(78px,8vw,128px);
    font-weight:400;
    line-height:.76;
    letter-spacing:-.075em;
    opacity:0;
    transform:translateY(48px) scale(.96);
    transform-origin:left bottom;
    animation:matviiNumberIn .88s cubic-bezier(.16,1,.3,1) .31s forwards;
}

.matvii-entry__name{
    display:flex;
    align-items:center;
    gap:20px;
    margin-top:clamp(30px,5vh,54px);
    font-family:Arial,sans-serif;
    font-size:clamp(11px,1.15vw,15px);
    font-weight:600;
    letter-spacing:.48em;
    text-transform:uppercase;
    opacity:0;
    transform:translateY(18px);
    animation:matviiCopyIn .7s cubic-bezier(.16,1,.3,1) .7s forwards;
}

.matvii-entry__name::before{
    width:clamp(34px,5vw,76px);
    height:1px;
    flex:0 0 auto;
    content:"";
    background:rgba(255,255,255,.8);
}

.matvii-entry__progress{
    position:absolute;
    z-index:3;
    right:52px;
    bottom:42px;
    left:52px;
    height:1px;
    overflow:hidden;
    background:rgba(255,255,255,.28);
}

.matvii-entry__progress::after{
    display:block;
    width:100%;
    height:100%;
    content:"";
    background:#fff;
    transform:scaleX(0);
    transform-origin:left;
    animation:matviiProgress 1.65s cubic-bezier(.65,0,.35,1) .2s forwards;
}

body > header{
    animation:matviiPageHeaderIn .65s cubic-bezier(.22,1,.36,1) 2.08s both;
}

.hero .hero-image{
    animation:matviiPageImageIn .9s cubic-bezier(.16,1,.3,1) 2.12s both;
}

.hero .hero-info{
    animation:matviiPageCopyIn .82s cubic-bezier(.16,1,.3,1) 2.2s both;
}

@keyframes matviiBodyLock{
    0%,99.9%{ overflow-y:hidden; }
    100%{ overflow-y:visible; }
}

@keyframes matviiEntryExit{
    to{ transform:translateY(-100%); }
}

@keyframes matviiEntryHide{
    to{ opacity:0; visibility:hidden; pointer-events:none; }
}

@keyframes matviiImageSettle{
    to{ transform:scale(1); }
}

@keyframes matviiFrameIn{
    to{ opacity:1; transform:scale(1); }
}

@keyframes matviiToplineIn{
    to{ opacity:1; transform:translateY(0); }
}

@keyframes matviiCopyIn{
    to{ opacity:1; transform:translateY(0); }
}

@keyframes matviiNumberIn{
    to{ opacity:1; transform:translateY(0) scale(1); }
}

@keyframes matviiProgress{
    to{ transform:scaleX(1); }
}

@keyframes matviiPageHeaderIn{
    from{ opacity:0; transform:translateY(-18px); }
    to{ opacity:1; transform:translateY(0); }
}

@keyframes matviiPageImageIn{
    from{ opacity:0; transform:translateY(30px) scale(.96); clip-path:inset(15% 0 0 0); }
    to{ opacity:1; transform:translateY(0) scale(1); clip-path:inset(0 0 0 0); }
}

@keyframes matviiPageCopyIn{
    from{ opacity:0; transform:translateX(34px); }
    to{ opacity:1; transform:translateX(0); }
}

@media(max-width:700px){
    .matvii-entry__image{
        object-position:center;
    }

    .matvii-entry::before{
        background:
            linear-gradient(0deg,rgba(25,0,0,.72) 0%,rgba(35,0,0,.2) 60%,rgba(18,0,0,.28) 100%),
            linear-gradient(90deg,rgba(32,0,0,.42),transparent 78%);
    }

    .matvii-entry::after{
        inset:12px;
    }

    .matvii-entry__topline{
        top:30px;
        right:28px;
        left:28px;
        font-size:9px;
        letter-spacing:.26em;
    }

    .matvii-entry__copy{
        top:auto;
        right:26px;
        bottom:92px;
        left:26px;
        width:auto;
        transform:none;
    }

    .matvii-entry__kicker{
        margin-bottom:24px;
        font-size:9px;
        letter-spacing:.32em;
    }

    .matvii-entry__title-word{
        font-size:clamp(38px,10.5vw,48px);
        line-height:.84;
    }

    .matvii-entry__name{
        gap:12px;
        margin-top:28px;
        font-size:10px;
        letter-spacing:.32em;
    }

    .matvii-entry__name::before{
        width:30px;
    }

    .matvii-entry__progress{
        right:28px;
        bottom:34px;
        left:28px;
    }
}

@media(max-width:390px){
    .matvii-entry__topline span:last-child{
        display:none;
    }

    .matvii-entry__title-word{
        font-size:41px;
    }
}

@media(prefers-reduced-motion:reduce){
    body,
    body > header,
    .hero .hero-image,
    .hero .hero-info{
        animation:none;
    }

    .matvii-entry{
        display:none;
    }
}
