/* Composición editorial del equipo asociado. */
.team-support {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: clamp(14px, 1.4vw, 22px);
    background: transparent;
    border: 0;
}

.team-support .team-member {
    min-width: 0;
    min-height: 340px;
    padding: clamp(25px, 2.2vw, 34px);
    gap: clamp(22px, 2vw, 32px);
    background: rgba(255, 255, 255, 0.94);
    border: 1px solid rgba(7, 18, 36, 0.1);
}

.team-support .team-member > div:last-child {
    display: flex;
    min-width: 0;
    flex-direction: column;
    align-items: flex-start;
}

.team-support .team-member h3 {
    max-width: 17ch;
}

.team-support .team-member p:not(.team-role) {
    max-width: 52ch;
}

.team-support .team-profile-link {
    margin-top: auto;
    padding-top: 26px;
}

.team-member--leidy {
    grid-column: 1 / span 7;
    grid-row: 1;
    grid-template-columns: minmax(180px, 0.37fr) minmax(0, 0.63fr);
}

.team-member--daniela {
    grid-column: 8 / span 5;
    grid-row: 1;
    grid-template-columns: minmax(140px, 0.36fr) minmax(0, 0.64fr);
}

.team-support__editorial--quote {
    grid-column: 1 / span 3;
    grid-row: 2;
}

.team-member--camila {
    grid-column: 4 / span 9;
    grid-row: 2;
    grid-template-columns: minmax(205px, 0.3fr) minmax(0, 0.7fr);
}

.team-member--karen {
    grid-column: 1 / span 8;
    grid-row: 3;
    grid-template-columns: minmax(195px, 0.34fr) minmax(0, 0.66fr);
}

.team-support__editorial--monogram {
    grid-column: 9 / span 4;
    grid-row: 3;
}

.team-support .team-member__photo {
    min-height: 270px;
    aspect-ratio: 3 / 4;
}

.team-member--leidy .team-member__photo img {
    object-position: 50% 18%;
}

.team-member--daniela .team-member__photo img {
    object-position: 50% 16%;
}

.team-member--camila .team-member__photo img {
    object-position: 50% 17%;
}

.team-member--karen .team-member__photo img {
    object-position: 58% center;
}

.team-support__editorial {
    position: relative;
    min-width: 0;
    min-height: 260px;
    overflow: hidden;
    border: 1px solid rgba(201, 162, 58, 0.22);
}

.team-support__editorial--quote {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: clamp(26px, 3vw, 42px);
    background: var(--gv-cream);
}

.team-support__rule {
    width: 54px;
    height: 1px;
    margin-bottom: 24px;
    background: var(--gv-gold);
}

.team-support__editorial--quote p {
    margin: 0;
    font-family: "Playfair Display", serif;
    font-size: clamp(1.35rem, 2vw, 2.05rem);
    line-height: 1.28;
    color: rgba(10, 47, 87, 0.72);
}

.team-support__editorial--monogram {
    display: grid;
    place-items: center;
    background: var(--gv-navy);
}

.team-support__editorial--monogram::before,
.team-support__editorial--monogram::after {
    content: "";
    position: absolute;
    width: 58%;
    height: 1px;
    background: rgba(216, 185, 92, 0.38);
}

.team-support__editorial--monogram::before {
    top: 28%;
    right: -8%;
}

.team-support__editorial--monogram::after {
    bottom: 28%;
    left: -8%;
}

.team-support__editorial--monogram span {
    font-family: "Playfair Display", serif;
    font-size: clamp(4rem, 7vw, 7.5rem);
    font-style: italic;
    letter-spacing: -0.08em;
    color: rgba(255, 255, 255, 0.09);
}

@media (max-width: 1180px) {
    .team-support {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px;
    }

    .team-support .team-member {
        grid-column: auto;
        grid-row: auto;
        grid-template-columns: minmax(112px, 0.34fr) minmax(0, 0.66fr);
        min-height: 360px;
        padding: 26px;
    }

    .team-support .team-member__photo {
        min-height: 250px;
    }

    .team-support__editorial {
        display: none;
    }
}

@media (max-width: 900px) {
    .team-support .team-member {
        grid-template-columns: 1fr;
        min-height: 0;
    }

    .team-support .team-member__photo {
        width: 100%;
        height: auto;
        min-height: 0;
        aspect-ratio: 4 / 3;
    }
}

@media (max-width: 640px) {
    .team-support {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .team-support .team-member {
        grid-template-columns: 1fr;
        min-height: 0;
        padding: 22px;
        gap: 20px;
    }

    .team-support .team-member__photo {
        width: 100%;
        height: auto;
        min-height: 0;
        aspect-ratio: 4 / 3;
    }

    .team-support .team-member h3 {
        font-size: clamp(1.42rem, 6.5vw, 1.85rem);
    }

    .team-support .team-profile-link {
        padding-top: 22px;
    }
}
