.promo {
    padding: 48px 0 80px;
    .wrapper {
        display: flex;
        flex-direction: column;
    }
    .media {
        display: flex;
        flex-direction: column;
        height: 640px;
        padding: 40px;
        background:
            linear-gradient(
                color-mix(in srgb, var(--main-bg) 75%, transparent) 0%,
                transparent 22%,
                transparent 60%,
                color-mix(in srgb, var(--main-bg) 85%, transparent) 100%
            ),
            var(--promo-img) center / cover no-repeat;
    }
    .credits {
        display: flex;
        gap: 40px;
        overflow: hidden;
        span {
            font-size: 12px;
            line-height: 16px;
            font-weight: 500;
            letter-spacing: 0;
            text-transform: uppercase;
            white-space: nowrap;
            &:last-child:not(:first-child) {
                margin-left: auto;
            }
        }
    }
    .text {
        position: relative;
        display: flex;
        flex-direction: column;
        gap: 48px;
        margin-top: -110px;
    }
    h1 {
        font-family: 'Oswald';
        font-size: 180px;
        font-weight: 700;
        line-height: 184px;
        letter-spacing: -1.5px;
        text-transform: uppercase;
        overflow-wrap: anywhere;
    }
    p {
        max-width: 720px;
        font-size: 24px;
        line-height: 28px;
        font-weight: 300;
        letter-spacing: 0;
        color: var(--text-4);
    }
}
.facts {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 64px;
    .item {
        display: flex;
        flex-direction: column;
        gap: 12px;
        min-width: 0;
        padding-right: 40px;
        border-right: 1px solid var(--border-2);
        &:last-child {
            border-right: none;
        }
    }
    span {
        font-family: 'Oswald';
        font-size: 72px;
        font-weight: 700;
        line-height: 76px;
        letter-spacing: 0;
        text-transform: uppercase;
    }
    p {
        font-size: 16px;
        line-height: 24px;
        letter-spacing: 0;
        color: var(--text-4);
    }
}
.member {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    min-width: 0;
    .photo {
        position: relative;
        width: 100%;
        margin-bottom: 24px;
        overflow: hidden;
        img {
            height: 440px;
        }
    }
    .category {
        position: absolute;
        top: 12px;
        right: 12px;
        padding: 10px;
        background: color-mix(in srgb, var(--main-bg) 60%, transparent);
        font-size: 12px;
        line-height: 16px;
        font-weight: 500;
        letter-spacing: 0;
        text-transform: uppercase;
    }
    .role {
        margin-bottom: 16px;
        font-size: 16px;
        line-height: 24px;
        font-weight: 700;
        letter-spacing: 0;
        color: var(--text-11);
    }
    h3 {
        margin-bottom: 8px;
        font-family: 'Oswald';
        font-size: 32px;
        font-weight: 600;
        line-height: 40px;
        letter-spacing: -0.5px;
    }
    .bio {
        font-size: 16px;
        line-height: 24px;
        letter-spacing: 0;
        color: var(--text-4);
    }
    .inst {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        height: 40px;
        margin-top: 24px;
        padding: 0 16px;
        border-radius: 999px;
        background: var(--bg-4);
        font-size: 12px;
        line-height: 16px;
        font-weight: 500;
        letter-spacing: 0;
        transition: background 0.3s;
        &::before {
            content: '\e011';
            font-family: 'icon';
            font-size: 16px;
            color: var(--text-1);
        }
        &::after {
            content: '*';
            margin-left: -8px;
            font-size: inherit;
            color: inherit;
        }
    }
}
@media screen and (max-width: 1759px) {
    .promo {
        padding: 40px 0 64px;
        .wrapper {
            width: calc(100% - 128px);
        }
        .media {
            height: 560px;
            padding: 32px;
        }
        .text {
            gap: 40px;
            margin-top: -64px;
        }
        h1 {
            font-size: 112px;
            line-height: 104px;
        }
        p {
            max-width: 640px;
            font-size: 18px;
        }
    }
    .facts {
        gap: 40px;
        .item {
            padding-right: 32px;
        }
        span {
            font-size: 56px;
            line-height: 60px;
        }
    }
    .member h3 {
        font-size: 28px;
        line-height: 36px;
    }
}
@media screen and (max-width: 1279px) {
    .promo {
        padding: 120px 0 56px;
        .media {
            height: 480px;
        }
        .text {
            gap: 32px;
            margin-top: -80px;
        }
        h1 {
            font-size: 96px;
            line-height: 100px;
        }
        p {
            font-size: 18px;
            line-height: 24px;
        }
    }
    .facts {
        grid-template-columns: repeat(2, 1fr);
        .item:nth-child(2n) {
            border-right: none;
        }
    }
}
@media screen and (max-width: 767px) {
    .promo {
        padding: 100px 0 32px;
        .wrapper {
            width: calc(100% - 40px);
        }
        .media {
            height: 420px;
            padding: 16px;
            background-image:
                linear-gradient(
                    color-mix(in srgb, var(--main-bg) 75%, transparent) 0%,
                    transparent 22%,
                    transparent 60%,
                    color-mix(in srgb, var(--main-bg) 85%, transparent) 100%
                ),
                var(--promo-mob-img, var(--promo-img));
        }
        .credits {
            gap: 16px;
        }
        .text {
            gap: 24px;
            margin-top: -30px;
        }
        h1 {
            font-size: 56px;
            line-height: 56px;
            letter-spacing: -0.5px;
        }
        p {
            font-size: 16px;
            line-height: 20px;
        }
    }
    .facts {
        grid-template-columns: 1fr;
        gap: 32px;
        .item, .item:nth-child(2n), .item:last-child {
            padding-right: 20px;
            border-right: 1px solid var(--border-2);
        }
        span {
            font-size: 32px;
            line-height: 40px;
        }
        p {
            font-size: 12px;
        }
    }
    .member {
        .photo {
            margin-bottom: 16px;
        }
        .role {
            margin-bottom: 12px;
            font-size: 12px;
        }
        h3 {
            font-size: 24px;
            line-height: 32px;
        }
        .bio {
            font-size: 12px;
        }
        .inst {
            margin-top: 16px;
        }
    }
}
@media (prefers-reduced-motion: no-preference) {
    .promo {
        .media {
            animation: promo-zoom 1.6s ease both;
        }
        .text > * {
            animation: promo-rise 0.9s ease 0.3s both;
        }
        .text p {
            animation-delay: 0.45s;
        }
    }
}
@keyframes promo-zoom {
    from {
        opacity: 0;
        scale: 1.04;
    }
}
@keyframes promo-rise {
    from {
        opacity: 0;
        translate: 0 40px;
    }
}
@media (hover: hover) {
    .member .inst:hover {
        background: var(--bg-8);
    }
    .member .photo img {
        transition: scale 0.6s ease;
    }
    .member:hover .photo img {
        scale: 1.05;
    }
}
