/* Team Member Layout */
.awd-team-wrapper { display: flex; flex-wrap: wrap; gap: 2.5em 1em; margin: 2rem auto; max-width: 1300px; }
.awd-team-grid .awd-team-member { width: calc(33.333% - 1.33rem); }
.awd-team-list { flex-direction: column; }
.awd-team-list .awd-team-member { display: flex; align-items: center; gap: 1.5rem; }
.awd-team-member { border-radius: 16px; overflow: hidden; position: relative; }
p.no-posts { text-align: center; font-size: 28px; font-style: italic; }

/* Image */
.team-image { position: relative; overflow: hidden; }
.awd-team-member .team-image img { width: 100%; height: auto; object-fit: cover; aspect-ratio: 2 / 3; transform: scale(1); transition: transform 0.4s ease; transform-origin: center; will-change: transform; }
a.team-cta-link:hover img { transform: scale(1.03); }
a.team-cta-link:hover .awd-card-icon svg { transform: rotate(45deg); }

/* Info */
.team-info { position: absolute; bottom: 0; left: 0; right: 0; padding: 30px 70px 30px 30px; background: linear-gradient(to top, rgba(0, 0, 0, 0.78) 0%, rgba(0, 0, 0, 0.12) 80%, rgba(0, 0, 0, 0) 100%); display: block; z-index: 1; }
.team-info .team-name { font-size: 32px; color: #fff; text-align: left; margin: 0 0 0.25rem; font-weight: 600; }
.team-info .team-title { font-size: 15px; color: #fff; text-align: left; opacity: 0.85; line-height: 1.15; }
.team-info .awd-card-icon { position: absolute; right: 24px; bottom: 32px; width: 48px; height: 48px; border: 1px solid rgba(255, 255, 255, 0.35); border-radius: 999px; display: flex; align-items: center; justify-content: center; backdrop-filter: blur(4px); background: rgba(255, 255, 255, 0.06); transition: background 0.3s ease, border-color 0.3s ease, transform 0.3s ease; }
.team-info .awd-card-icon svg { width: 22px; height: 22px; fill: #fff; transform: rotate(-45deg); transition: transform 0.3s ease; transform-origin: center; }
a.team-cta-link:hover .awd-card-icon { background: rgba(255, 255, 255, 0.12); border-color: rgba(255, 255, 255, 0.6); }
a.team-cta-link:hover .awd-card-icon svg { transform: rotate(0deg); }

/* Modal */
.modal-inner { display: flex; max-width: 767px; gap: 2rem; align-items: center; }
.modal-image { flex: 0 0 33%; text-align: center; }
.modal-info { flex: 1 1 auto; }
.modal-title { font-size: 18px; font-weight: 500; }
.modal-info h3 { margin-bottom: 2px; font-weight: 600; line-height: 1; }
.modal-content { padding-top: 15px; }
.modal-contact-heading { margin-bottom: 2px; font-weight: 500; font-size: 16px; line-height: 1; letter-spacing: .01em; }
.modal-contact-item--linkedin { margin-top: 1rem; }
.linkedin-icon-link { display: inline-flex; align-items: center; justify-content: center; width: 42px; height: 42px; border-radius: 50%; color: #fff; transition: transform .3s ease, background-color .3s ease; transform: translateZ(0); }
.linkedin-icon-link svg { width: 24px; height: 24px; fill: currentColor; transition: transform .3s ease; }
.linkedin-icon-link:hover { transform: scale(1.12); }
.linkedin-icon-link:hover svg { transform: scale(1.05); }
.modal-contact-item.modal-contact-item--linkedin { margin: 0; position: absolute; right: 0; bottom: 0; background: #006838; }
.linkedin-icon-link:hover { transform: scale(1.12) rotate(3deg); color: #fff; }
.modal-contact {
    margin-top: 1.5rem;
}

.team-modal-content.no-bio .modal-contact {
    margin-top: 2rem;
}

.team-modal-content.has-bio .modal-contact {
    margin-top: 1.25rem;
}

.team-modal-content.no-bio .modal-title {
    margin-bottom: 1.5rem;
}

.team-modal-content.has-bio .modal-content {
    padding-top: 1rem;
}
/* Fancybox v6 Team Modal - remove bounce/flash */
.fancybox__container, .fancybox__backdrop, .fancybox__slide, .fancybox__content { transform: none !important; }
.fancybox__content { animation: none !important; transition: opacity 0.2s ease !important; }
.modal-image img { transform: none !important; transition: none !important; will-change: auto !important; }
