/* =======================
TEAM PAGES
======================= */
.team-page-hero{
background:linear-gradient(135deg,#0f172a 0%,#1e3a5f 100%);
padding:90px 0;
text-align:center;
color:#ffffff;
}

.team-page-hero-inner{
max-width:820px;
}

.team-page-hero h1,
.agent-profile-copy h1{
font-family:'Playfair Display',serif;
font-size:3.6rem;
line-height:1.1;
margin:12px 0 20px;
}

.team-page-hero p{
max-width:720px;
margin:0 auto;
font-size:1.15rem;
color:#dbeafe;
}

.team-section{
background:#f8fafc;
}

.team-section-intro{
max-width:760px;
margin:15px auto 0;
color:#64748b;
}

.team-card-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(280px,360px));
gap:30px;
justify-content:center;
}

.team-member-card{
background:#ffffff;
border:1px solid #e5e7eb;
border-radius:22px;
overflow:hidden;
box-shadow:0 16px 36px rgba(15,23,42,.09);
}

.team-member-photo-link{
display:block;
background:#e2e8f0;
aspect-ratio:4/5;
overflow:hidden;
}

.team-member-photo-link img{
width:100%;
height:100%;
object-fit:cover;
object-position:center top;
display:block;
}

.team-member-content{
padding:30px;
}

.team-member-role{
display:block;
font-size:.78rem;
font-weight:800;
letter-spacing:1.6px;
text-transform:uppercase;
color:#806515;
margin-bottom:8px;
}

.team-member-content h2{
font-family:'Playfair Display',serif;
font-size:2rem;
color:#0f172a;
margin-bottom:12px;
}

.team-member-content p{
color:#64748b;
margin-bottom:25px;
}

.team-member-content .primary-btn{
display:inline-block;
}

.agent-profile-hero{
background:linear-gradient(135deg,#0f172a 0%,#1e3a5f 100%);
padding:90px 0;
}

.agent-profile-grid{
display:grid;
grid-template-columns:minmax(300px,.8fr) 1.2fr;
gap:65px;
align-items:center;
}

.agent-profile-photo{
max-width:470px;
}

.agent-profile-photo img{
width:100%;
aspect-ratio:4/5;
object-fit:cover;
object-position:center top;
display:block;
border-radius:24px;
box-shadow:0 30px 60px rgba(0,0,0,.32);
border:4px solid rgba(255,255,255,.12);
}

.agent-profile-copy{
color:#ffffff;
}

.agent-profile-copy .eyebrow{
color:#f8e7a7;
}

.agent-profile-copy h1{
color:#ffffff;
}

.agent-profile-title{
font-weight:700;
font-size:1.2rem;
color:#f8e7a7;
margin-bottom:18px;
}

.agent-profile-copy > p:not(.agent-profile-title){
color:#dbeafe;
font-size:1.08rem;
max-width:680px;
}

.agent-contact-card{
margin:30px 0 22px;
padding:26px;
border:1px solid rgba(255,255,255,.18);
border-radius:18px;
background:rgba(255,255,255,.08);
}

.agent-contact-card h2{
font-family:'Playfair Display',serif;
font-size:1.7rem;
margin-bottom:12px;
}

.agent-contact-card p{
color:#ffffff;
}

.agent-contact-card .agent-contact-note{
margin-top:9px;
font-size:.95rem;
color:#cbd5e1;
}

.agent-contact-card a{
color:#f8e7a7;
font-weight:700;
text-underline-offset:3px;
}

.contact-coming-soon{
color:#f8e7a7;
}

.secondary-profile-link{
display:inline-block;
color:#ffffff;
font-weight:700;
text-underline-offset:4px;
}


/* TEAM PAGE RESPONSIVE */
@media (max-width: 900px) {
    .agent-profile-grid{
        grid-template-columns:1fr;
        gap:40px;
    }

    .agent-profile-photo{
        margin:0 auto;
    }

    .agent-profile-copy{
        text-align:center;
    }

    .agent-profile-copy > p:not(.agent-profile-title){
        margin-left:auto;
        margin-right:auto;
    }

    .agent-contact-card{
        text-align:left;
    }
}

@media (max-width: 600px) {
    .team-page-hero h1,
    .agent-profile-copy h1{
        font-size:2.45rem;
    }

    .team-page-hero,
    .agent-profile-hero{
        padding:70px 0;
    }

    .team-member-content{
        padding:24px;
    }
}