.team {
    align-items: stretch;
    padding: 0 0 2rem;
    background: var(--color-page);
    overflow-x: clip;
    overflow-y: visible;

}
.team.block__inner {
    margin-top: 0;
}
.team__inner {
    grid-column: 1;

    display: flex;
    align-items: flex-start;
    gap: 2rem;

    margin-left: var(--margin-left-title);
    margin-right: var(--layout-gutter);

    border-right: var(--border-2);
    box-sizing: border-box;
    overflow: visible;
}

.team__intro {
    flex: 1 1 auto;
    min-width: 0;
    padding-top: var(--padding-inline);
}

.team__title {
    margin: 0 0 2rem;
  
}

.team__slider {
    --team-card-width: 10rem;
    --team-slider-width: 30rem;

    position: relative;

    flex: 0 0 var(--team-slider-width);

    width: var(--team-slider-width);
    max-width: var(--team-slider-width);
    min-width: 0;

    overflow: visible;
}

.team__slider--columns-1 {
    --team-slider-width: 10rem;
}

.team__slider--columns-2 {
    --team-slider-width: 20rem;
}

.team__viewport {
    width: var(--team-slider-width);
    max-width: var(--team-slider-width);

    overflow-x: clip;
    overflow-y: visible;
}

.team__cards {
    display: flex;
    align-items: flex-start;

    width: max-content;

    transform: translate3d(0, 0, 0);
    transition: transform 0.35s ease;
    will-change: transform;
}

.team__card {
    flex: 0 0 var(--team-card-width);

    width: var(--team-card-width);
    min-width: var(--team-card-width);
    max-width: var(--team-card-width);

    padding: 2rem 0.5rem 7rem;

    border: 0;
    box-sizing: border-box;
}

/* Неподвижные линии между видимыми карточками */
.team__slider::before,
.team__slider::after {
    content: "";
    position: absolute;
    z-index: 10;
    top: -5rem;
    bottom: 0;
    left: var(--team-card-width);

    width: 0;
    border-right: var(--border-2);

    pointer-events: none;
}

.team__slider::after {
    left: calc(var(--team-card-width) + var(--team-card-width));
}

.team__slider--columns-1::before,
.team__slider--columns-1::after,
.team__slider--columns-2::after {
    display: none;
}

/* Кнопки стоят на границе второй и третьей видимых карточек */
.team__controls {
    position: absolute;
    z-index: 20;

    top: -3.4rem;
    left: calc(var(--team-card-width) + var(--team-card-width));
    transform: translateX(-50%);

    display: flex;
    align-items: center;
    gap: .75rem;
}

.team__arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    padding: 0;
    color: var(--color-accent-variables-2);
    background: var(--color-page);
    border: 1px solid var(--color-accent-variables-2);
    border-radius: .17rem;
    font-size: 1.65rem;
    font-weight: 300;
    line-height: 1;
    cursor: pointer;
    transition:
            color 0.2s ease,
            background-color 0.2s ease,
            opacity 0.2s ease;
}

.team__arrow:hover:not(:disabled) {
    color: var(--color-page);
    background: var(--color-accent-variables-2);
}

.team__arrow:disabled {
    opacity: 0.3;
    cursor: default;
}

.team__photo {
    display: block;

    width: 100%;
    aspect-ratio: 9 / 10;
    margin-bottom: 0.75rem;

    object-fit: cover;
}

.team__name {
    margin: 0 0 0.45rem;

    font-family: var(--font-body);
    font-weight: 700;

    color: #000000;
}

.team__role {
    margin: 0 0 1rem;

    font-family: var(--font-body);
    font-size: 0.9em;
    font-weight: 700;

    color: var(--color-accent-variables-2);
}

.team__bio {
    font-family: var(--font-body);
    font-size: 0.79em;
}

.team__bio p {
    margin: 0;
}
.team__arrow-icon {
    display: block;
    width: 1.25rem;
    height: auto;

    fill: none;
    stroke: currentColor;
    stroke-width: 1.4;
    stroke-linecap: square;
    stroke-linejoin: miter;
}
