/* ===========================
   TEAM GS
=========================== */

.section.alt{
    background:#f7f7f7;
}

.team-heading{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px;
    margin-bottom:50px;
    flex-wrap:wrap;
}

.team-count{
    font-size:1rem;
    color:#666;
}

.team-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
    gap:30px;
}

/* ===========================
   CARD
=========================== */

.team-card{
    background:#fff;
    border-radius:18px;
    overflow:hidden;
    transition:.35s;
    border:1px solid #ececec;
    box-shadow:0 12px 35px rgba(0,0,0,.08);
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
    padding:30px 25px;
}

.team-card:hover{
    transform:translateY(-8px);
    box-shadow:0 18px 45px rgba(0,0,0,.16);
}

/* ===========================
   FOTO
=========================== */

.team-photo{
    display:flex;
    justify-content:center;
    margin-bottom:22px;
}

.team-photo-circle{

    width:170px;
    height:170px;

    padding:6px;

    background:#ffd400;

    border:4px solid #000;

    border-radius:20px;

    overflow:hidden;

    box-sizing:border-box;

    box-shadow:0 10px 25px rgba(0,0,0,.20);
}

.team-photo-circle img{

    width:100%;
    height:100%;

    object-fit:cover;

    display:block;

    border-radius:14px;

    border:3px solid #000;
}

/* Fallback */

.team-photo-circle.has-fallback{

    display:flex;
    align-items:center;
    justify-content:center;
}

.team-photo-fallback{

    width:100%;
    height:100%;

    display:flex;
    align-items:center;
    justify-content:center;

    background:#222;
    color:#fff;

    font-size:42px;
    font-weight:bold;

    border-radius:14px;
}

/* ===========================
   TESTO
=========================== */

.team-card-content h3{

    margin:8px 0 12px;
    font-size:1.35rem;
    color:#111;
}

.team-role{

    color:#d8a900;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
    font-size:.82rem;
}

.team-card-content p:last-child{

    color:#555;
    line-height:1.65;
    font-size:.95rem;
}

/* ===========================
   MOBILE
=========================== */

@media(max-width:992px){

.team-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:768px){

.team-grid{

grid-template-columns:1fr;

}

.team-card{

padding:25px 18px;

}

.team-photo-circle{

width:140px;
height:140px;

padding:5px;

border-width:3px;

}

.team-photo-circle img{

border-width:2px;

}

.team-card-content h3{

font-size:1.2rem;

}

}

@media(max-width:480px){

.team-photo-circle{

width:120px;
height:120px;

}

.team-card{

padding:20px 15px;

}

.team-card-content p:last-child{

font-size:.9rem;

}

}