.mtt3 {
    .container {
        width: 100%;
        padding: 0;
    }

    .section-header {
        padding: 0 var(--header-pad-x, 2rem);
    }

    .mtt-nav-btn {
        display: flex;
        align-items: center;
        justify-content: center;
        width: clamp(2.5rem, 4vw, 3rem);
        height: clamp(2.5rem, 4vw, 3rem);
        border-radius: 50%;
        border: 2px solid var(--medium);
        background: var(--medium);
        color: var(--dark);
        cursor: pointer;
        transition: background 0.25s ease, color 0.25s ease;
        flex-shrink: 0;

        &:hover,
        &:focus-visible {
            background: var(--dark);
            color: var(--white);
            border-color: var(--dark);
        }
    }
}

.mtt3-ticker {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: calc(var(--item-gap) * .44);
    overflow: hidden;
    max-width: 100%;
}

.mtt3-ticker__row {
    overflow: hidden;
    width: 100%;
    margin-left: 0;
}

.mtt3-ticker__track {
    display: flex;
    gap: calc(var(--item-gap) * .44);
    width: max-content;
    user-select: none;
    touch-action: pan-y;
}

.mtt3-card {
    position: relative;
    border-radius: var(--radius-sm);
    overflow: hidden;
    flex-shrink: 0;
    width: calc((100vw - var(--header-pad-x, 2rem) * 2 - 10px * 0.5) / 1.5);
    height: 300px;
    outline: 3px solid transparent;
    outline-offset: 2px;
    transition: outline-color var(--trans-fast);
    border: none;
    background: none;
    padding: 0;
    cursor: pointer;
    text-align: left;

    &:focus-visible {
        outline-color: var(--focus-ring-color);
    }

    img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .mtt3-card__image--hover {
        position: absolute;
        inset: 0;
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
        opacity: 0;
        transition: opacity var(--trans-normal);
    }

    &:hover,
    &:focus-within,
    &[data-expanded="true"] {
        .mtt3-card__info {
            opacity: 0;
        }

        .mtt3-card__hover {
            opacity: 1;
        }

        .mtt3-card__image--hover {
            opacity: 1;
        }
    }

    &[data-expanded="true"] .mtt3-card__hover {
        pointer-events: auto;
    }

    @media (min-width: 1024px) {
        width: calc((var(--content-width, 1200px) - clamp(0.75rem, 2vw, 1.25rem) * 2) / 2.5);
        height: 400px;

        .mtt3-card {
            width: calc((var(--content-width, 1200px) - clamp(calc(var(--item-gap) * .56), 2vw, calc(var(--item-gap) * .94)) * 2) / 2.5);
        }
    }
}

.mtt3-card__info {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: var(--item-gap);
    background: linear-gradient(to top, rgba(var(--black-rgb), 0.75), transparent);
    transition: opacity var(--trans-normal);
    z-index: 1;

    &>* {
        margin: 0;
    }
}

.mtt3-card__hover {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
    padding: clamp(calc(var(--item-gap) * .75), 3vw, calc(var(--item-gap) * 1.13));
    background: linear-gradient(to top, rgba(var(--black-rgb), 0.9) 0%, rgba(var(--black-rgb), 0.5) 60%, rgba(var(--black-rgb), 0.15) 100%);
    color: var(--white);
    opacity: 0;
    transition: opacity var(--trans-normal);
    z-index: 2;
    pointer-events: none;
}

.mtt3-card__btn {
    align-self: flex-start;
    font-size: var(--text-xs);
    margin-top: auto;
}

.mtt3-nav {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: var(--item-gap);
    z-index: 3;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}