/* =========================
   Our Team Page CSS
   Namespace: .team-*
   Notes:
   - No background-color / no color
   - px units only
   - no CSS variables
========================= */

.team-page {
    /* base */
}
    .team-page .mb-team {
        background-image: url('https://static.yuhezhizao.com/yuhezhizao/images/the-tomorrow-together.webp');
        height: 450px;
    }
        .team-page .mb-team .content h1 {
            font-size: 2rem;
        }
        .team-page .mb-team .content-container {
            padding: 0px 50px;
        }
    /* layout container */
    .team-page .team-hero,
    .team-page .team-section {
        max-width: 1480px; /* 92.5rem */
        margin: 0 auto;
        padding: 80px 50px;
    }

    /* typography */
    .team-page .team-h1 {
        font-size: 36px;
        line-height: 1.15;
        margin: 0 0 16px 0;
        letter-spacing: -0.02em;
    }

    .team-page .team-h2 {
        font-size: 28px;
        line-height: 1.2;
        margin: 0 0 13px 0;
        letter-spacing: -0.01em;
    }

    .team-page .team-h3 {
        font-size: 18px;
        line-height: 1.25;
        margin: 0 0 10px 0;
    }

    .team-page .about-seo-hidden {
        display: none;
    }

    .team-page .team-lead {
        font-size: 17px;
        line-height: 1.65;
        margin: 0 0 20px 0;
    }

    .team-page .team-subtitle {
        font-size: 0.875rem;
        line-height: 1.65;
        margin: 0 0 24px 0;
    }

    .team-page .team-p {
        font-size: 0.875rem;
        line-height: 1.65;
        margin: 0 0 14px 0;
    }

    .team-page .team-ul {
        margin: 0;
        padding-left: 18px;
        font-size: 0.875rem;
        line-height: 1.65;
    }

        .team-page .team-ul li {
            margin: 6px 0;
        }

    /* ===== HERO ===== */
    .team-page .team-hero {
        padding-top: 40px;
        padding-bottom: 40px;
    }

    .team-page .team-hero__inner {
        display: grid;
        grid-template-columns: 1.2fr 0.8fr;
        gap: 28px;
        align-items: stretch;
    }

    .team-page .team-hero__right {
        display: flex;
        min-height: 288px; /* 18rem */
    }

    .team-page .team-hero__media {
        width: 100%;
        border-radius: 20px;
        border: 1px solid #d0d0d0;
        box-shadow: 0 6px 18px rgba(0,0,0,.06);
        /* Image slot:
       set background-image via inline style or CSS elsewhere */
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
    }

    .team-page .team-hero__pillars {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
        margin: 0 0 20px 0;
    }

    .team-page .team-pillar {
        border: 1px solid #d0d0d0;
        padding: 14px 16px;
        box-shadow: 0 6px 18px rgba(0,0,0,.06);
    }

    .team-page .team-pillar__t {
        display: block;
        font-size: 0.875rem;
        line-height: 1.2;
        margin-bottom: 6px;
    }

    .team-page .team-pillar__d {
        display: block;
        font-size: 0.875rem;
        line-height: 1.45;
    }

    /* CTA */
    .team-page .team-hero__cta {
        display: flex;
        flex-wrap: wrap;
        gap: 12px;
        margin: 0 0 16px 0;
    }

    /* meta list */
    .team-page .team-hero__meta {
        list-style: disc;
        padding-left: 18px;
        margin: 0;
        font-size: 15.2px;
        line-height: 1.65;
    }

    /* ===== GRID / CARDS ===== */
    .team-page .team-grid {
        display: grid;
        gap: 20px;
    }

    .team-page .team-grid--4 {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .team-page .team-grid--3 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .team-page .team-card {
        border: 1px solid #d0d0d0;
        padding: 15px;
        overflow: hidden;
    }

    .team-page .team-tag {
        margin-top: 16px;
        padding-top: 14px;
        border-top: 1px dashed #d0d0d0;
        font-size: 0.875rem;
        line-height: 1.4;
    }

    /* ===== ROLE & SCALE ===== */
    .team-page .team-role-grid {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px;
    }

    .team-page .team-role-card {
        border: 1px solid #d0d0d0;
        padding: 15px;
    }

    .team-page .team-role-meta {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        margin-top: 14px;
    }

    .team-page .team-chip {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        padding: 6px 10px;
        border: 1px solid #d0d0d0;
        font-size: 0.8rem;
        line-height: 1.2;
    }

    .team-page .team-role-note {
        margin-top: 20px;
        border: 1px solid #d0d0d0;
        border-radius: 20px;
        padding: 16px 18px;
        box-shadow: 0 6px 18px rgba(0,0,0,.06);
        font-size: 15.2px;
        line-height: 1.65;
    }

    /* ===== COLLAB ===== */
    .team-page .team-collab {
        display: grid;
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .team-page .team-collab__grid {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px;
    }

    .team-page .team-collab-card,
    .team-page .team-collab__ctaCard {
        border: 1px solid #d0d0d0;
        padding: 15px;
    }

    /* ===== Button compatibility (if site has btn styles already, these are harmless) ===== */
    .team-page .btn {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        padding: 12px 17px;
        border-radius: 14px;
        border: 1px solid rgba(0,0,0,.12);
        text-decoration: none;
        font-size: 15.2px;
        line-height: 1.2;
        cursor: pointer;
    }

        .team-page .btn.btn-primary,
        .team-page .btn.btn-outline {
            /* intentionally no background-color / no color */
        }

/* ===== Responsive ===== */
@media (max-width: 1100px) {
    .team-page .team-hero__inner {
        grid-template-columns: 1fr;
    }

    .team-page .team-hero__right {
        min-height: 256px;
    }

    .team-page .team-grid--4 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .team-page .team-collab__grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .team-page .mb-team {
        padding: 50px 20px 20px 20px;
    }
    .team-page .mb-team .content-container {
        padding: 0px;
    }
    .team-page .team-h1 {
        font-size: 29.6px; /* 1.85rem */
    }

    .team-page .team-h2 {
        font-size: 23.2px; /* 1.45rem */
    }

    .team-page .team-hero__pillars {
        grid-template-columns: 1fr;
    }

    .team-page .team-grid--4,
    .team-page .team-grid--3,
    .team-page .team-role-grid {
        grid-template-columns: 1fr;
    }

    .team-page .team-section {
        padding: 50px 20px;
    }
}
