.vagabond-plus-meet-the-team { }
.team-members-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 20px;
max-width: 900px;
margin: 0 auto;
}
.team-member-placeholder {
display: inline-block;
vertical-align: top;
} .team-member-card {
border: 1px solid #000;
padding: 30px;
position: relative;
cursor: pointer;
overflow: hidden;
transition: all 0.3s ease; background: #fff;
}
.team-member-card.spacer-card {
transform: none;
pointer-events: none;
}
.team-member-card.spacer-card.no-border {
border: none;
}
.wp-block .team-member-card.spacer-card {
pointer-events: all;
}
.team-member-card.spacer-card::after {
display: none;
}
.team-member-card p {
line-height: 1.5;
font-size: 1.275rem;
} .team-member-image {
position: relative;
width: 100%;
aspect-ratio: 1 / 1;
overflow: hidden;
}
.team-member-image img {
width: 100%;
height: 100%;
-o-object-fit: cover;
object-fit: cover;
} .close-label { position: absolute;
right: 10px;
top: 5px;
font-size: 66px;
line-height: 0.5;
cursor: pointer;
font-weight: lighter;
}
.team-member-card.expanded .close-label.screen { display: block; }
.close-label.mobile {
display: none;
position: fixed;
right: 6vw;
top: 15vw;
}
.team-member-card.expanded::before {
top: 0px;
bottom: 0px;
right: 0px;
left: 0px;
content: '';
position: absolute;
border: 1px solid var(--wp--preset--color--va-black);
} .team-member-info {
margin-top: 10px;
position: relative;
}
.team-member-card::after {
content: '\2228';
right: calc(50% - 8px);
bottom: 0;
transform: scaleX(2);
opacity: 0.4;
position: absolute;
}
.team-member-card:hover::after {
opacity: 0.6;
}
.team-member-card.expanded::after {
display: none !important; }  .team-member-details {
max-height: 0;
opacity: 0;
overflow: hidden;
transition:
max-height 0.3s ease,
opacity 0.3s ease;
}
.team-member-card.expanded .team-member-details {
max-height: 500px; opacity: 1;
margin-top: 10px;
z-index: 1020;
}
.team-member-card.expanded .team-member-details::-webkit-scrollbar {
width: 2px; height: 8px; }
.team-member-card.expanded .team-member-details::-webkit-scrollbar-thumb {
background-color: var(--wp--preset--color--va-red);
border-radius: 10px;
}
.team-member-card.expanded .team-member-details::-webkit-scrollbar-track {
background-color: var(--wp--preset--color--va-black);
} .team-member-card.expanded {
margin: 0;
aspect-ratio: unset;
overflow: visible;
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
border: 20px solid white;
}
.team-member-details-container {
padding-left: 2rem;
width: 400px;
}
.team-member-bio {
margin-block-start: 0 !important;
}
.team-member-contact-details {
padding-bottom: 3px;
}
.team-member-website {
border-top: 1px solid var(--wp--preset--color--va-black);
padding-top: 2rem;
}
.team-member-website a {
display: flex;
gap: 0.5rem;
align-items: center;
text-decoration: none;
} .team-member-website a span {
position: relative;
}
.team-member-website a span::after {
position: absolute;
content: '';
bottom: 0;
left: 0;
width: 100%;
height: 1px;
background-color: currentColor;
transition: opacity 0.2s ease;
opacity: 0;
}
.team-member-website a:hover span::after { }
.team-member-website a:hover span.hover-img-container::after {
opacity: 0;
}
.contact a .hover-img-container {
position: relative;
display: inline-block;
width: 30px; height: 30px;
}
.contact a img {
width: 100%;
height: 100%;
transition: filter 0.3s ease;
z-index: 2;
position: relative;
} .contact a .hover-img-container::before {
content: '';
position: absolute;
top: 50%;
left: 50%;
width: 110%;
height: 110%;
background-color: transparent;
border-radius: 50%;
padding: 5%;
transform: translate(-50%, -50%);
z-index: 1;
transition: background-color 0.3s ease;
}
.contact a .hover-img-container:hover::before,
.contact.team-member-website a:hover .hover-img-container::before {
background-color: var(--wp--preset--color--va-blue); }
.contact a .hover-img-container:hover img,
.contact.team-member-website a:hover img {
filter: invert(1); }
.team-overlay {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0);
transition: background 0.3s ease;
pointer-events: none;
z-index: 1000;
}
.team-overlay.visible {
background: rgba(0, 0, 0, 0.5);
pointer-events: all;
}
.wp-block .team-member-card {
aspect-ratio: auto;
display: block;
}
.wp-block .team-member-bio {
padding-left: 0;
width: auto;
}
.wp-block .team-members-grid {
grid-template-columns: repeat(2, 1fr);
}
@media (min-width: 1031px) {
.team-member-card {
display: flex;
flex-direction: row;
justify-content: center;
align-items: flex-start;
transition: all 0.3s ease;
} .team-member-main { }
.team-member-details {
flex: 1; opacity: 0;
transition: opacity 0.3s ease;
}
.team-member-card.expanded .team-member-details {
opacity: 1;
}
}
@media (max-width: 1030px) {
.team-members-grid {
grid-template-columns: repeat(2, 1fr);
}
.team-member-card.spacer-card {
display: none;
}
.team-member-details-container {
width: auto;
padding-left: 0; }
.team-member-website {
padding-top: 1rem;
} .team-member-website a {
gap: 0.3rem;
}
.team-member-card {
padding: 5vw;
}
.team-member-card.expanded {
border: none;
overflow: auto;
max-height: 85vh;
}
.team-member-card.expanded::before {
display: none;
}
.team-member-card .close-label {
position: fixed;
right: 5vw;
top: 8vw;
}
}
@media (max-height: 800px) and (min-width: 1030px) {
.team-member-card.expanded .team-member-main {
width: 360px;
}
.team-member-card.expanded .team-member-details-container {
width: 90%;
}
}