/* ── OUR TEAM PAGE ─────────────────────────────────────────────── */
.andean-team-page .andean-team-wrap { max-width: 1100px; margin: 0 auto; padding: 2rem 1rem 4rem; }
.andean-team-intro { margin-bottom: 2.5rem; line-height: 1.7; }
.andean-team-intro img { width: 100%; height: auto; display: block; margin-top: 1.5rem; border-radius: 6px; }
.andean-team-category { margin-bottom: 3.5rem; }
.andean-team-cat-title {
    text-align: center;
    font-size: 1.95rem;
    font-weight: 700;
    /* letter-spacing: .1em; */
    color: var(--blue);
    border-bottom: 2px solid var(--red);
    padding-bottom: .5rem;
    margin-bottom: 2rem;
}
.andean-team-members {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 2.5rem;
}

/* ── CARD ─────────────────────────────────────────────────────── */
.andean-team-member {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 280px;
    text-align: center;
    gap: .5rem;
    cursor: pointer;
    transition: transform .2s, box-shadow .2s;
    border-radius: 8px;
    padding: 1.6rem;
}
.andean-team-member:hover { transform: translateY(-4px); box-shadow: 0 8px 24px rgba(0,0,0,.1); }
.andean-team-photo-wrap { width: 160px; height: 160px; flex-shrink: 0; }
.andean-team-photo {
    width: 160px;
    height: 160px;
    border-radius: 50%;
    object-fit: cover;
    object-position: top center;
    display: block;
}
.andean-team-photo--placeholder {
    width: 160px;
    height: 160px;
    border-radius: 50%;
    background: var(--off-white);
}
.andean-team-name {font-size: 1.8rem;font-weight: 700;color: var(--blue);margin: 0;}
.andean-team-role {font-size: 1.4rem;color: var(--red);font-weight: 600;margin: 0;}
/* Bio y social ocultos en card — solo visibles en lightbox */
.andean-team-bio { display: none; }
.andean-team-social { display: none; }

/* ── LIGHTBOX ─────────────────────────────────────────────────── */
#atm-overlay {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.75);
    z-index: 99998;
    align-items: center;
    justify-content: center;
    padding: 1rem;
}
#atm-overlay.is-open { display: flex; }
#atm-modal {
    background: #fff;
    border-radius: 10px;
    max-width: 640px;
    width: 100%;
    max-height: 90vh;
    overflow-y: auto;
    position: relative;
    padding: 2rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: .6rem;
    animation: atm-in .2s ease;
}
@keyframes atm-in { from { opacity: 0; transform: scale(.95); } to { opacity: 1; transform: scale(1); } }
#atm-close {
    position: absolute;
    top: .8rem;
    right: 1rem;
    background: none;
    border: none;
    font-size: 1.6rem;
    line-height: 1;
    cursor: pointer;
    color: #888;
    transition: color .15s;
}
#atm-close:hover { color: var(--blue); }
#atm-modal img { width: 180px; height: 180px; border-radius: 50%; object-fit: cover; object-position: top center; }
#atm-modal .atm-name { font-size: 1.3rem; font-weight: 700; color: var(--blue); margin: 0; }
#atm-modal .atm-role { font-size: .9rem; color: var(--yellow); font-weight: 600; margin: 0; }
#atm-modal .atm-bio { font-size: .88rem; color: #444; line-height: 1.7; text-align: left; margin-top: .5rem; }
#atm-modal .atm-bio p { margin-bottom: .6rem; }
#atm-modal .atm-social { display: flex; gap: .8rem; justify-content: center; margin-top: .5rem; }
#atm-modal .atm-social a { color: var(--blue); transition: color .2s; }
#atm-modal .atm-social a:hover { color: var(--yellow); }

/* ── RESPONSIVE ───────────────────────────────────────────────── */
@media (max-width: 768px) {
    .andean-team-members { gap: 1.5rem; }
    .andean-team-member { width: 240px; }
}
@media (max-width: 480px) {
    .andean-team-members { flex-direction: column; align-items: center; }
    .andean-team-member { width: 100%; max-width: 340px; }
    .andean-team-bio { -webkit-line-clamp: unset; overflow: visible; }
    #atm-modal { padding: 1.2rem; }
    #atm-modal img { width: 130px; height: 130px; }
}
