.contact-information-grid-module {
    display: flex;
    flex-direction: column;
    gap: var(--Content-Spacing-Vertical);
}

.contact-information-grid-module h2 {
    padding: 0;
    margin-bottom: 40px;
}

.contact-information-grid-module .contact-grid {
	display: grid;
    grid-template-columns: repeat(auto-fill, minmax(max(240px, calc((100% - 3* 40px) / 4)), 1fr));
    gap: var(--Gutter-Width, 40px)
}

.contact-information-grid-module .person-card, 
.contact-information-grid-module .content-container {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.contact-information-grid-module .content-container {
    gap: 10px;
    height: 100%;
    flex-grow: 1;
}
.contact-information-grid-module .content-container * {
    margin-bottom: 0;
}
.contact-information-grid-module .person-card.hidden {
	width: 0;
	height: 0;
	overflow: hidden;
	display: none;
}

.contact-information-grid-module .person-card img {
    object-fit: cover;
    max-width: 100%;
    min-width 80px;
    height: auto;
    border-radius: 5px;
    box-shadow: 0 0 20px rgba(0, 0, 0, .15);
    aspect-ratio: 1/1;
}
.contact-information-grid-module .person-card .person-links {
    padding-tip: var(--Content-Spacing-Vertical);
    border-top: 1px solid var(--Light-Gray);
}
.contact-information-grid-module .person-card .person-name,
.contact-information-grid-module .person-card .person-title {
    padding-bottom: 0;
}
.contact-information-grid-module .person-card .person-phone {
  margin-top: auto;
  display: flex;
  gap: 10px;
}
.contact-information-grid-module .person-card .person-phone a {
  text-decoration: none;
  color: #000000;
}

.contact-information-grid-module .person-card .person-email,
.contact-information-grid-module .person-card .person-linkedin,
.contact-information-grid-module .person-card .person-behance {
  font-size: 1.2em;
  margin-right: 0.6em;
}

.contact-information-grid-module .person-card .person-email:hover i,
.contact-information-grid-module .person-card .person-linkedin:hover i,
.contact-information-grid-module .person-card .person-behance:hover i {
  transform: scale(1.15);
}

.contact-information-grid-module .person-card i {
    width: 24px;
    font-size: 24px;
    display: inline-block;
    color: #660009;
}
.contact-information-grid-module .person-card .icon-link-text {
    display: inline-block;
    max-width: calc(100% - 34px);
    font-weight: normal;
}

.contact-information-grid-module .person-card a.icon-link {
    display: flex;
    align-items: flex-start;
    gap: 10px;
} 

.contact-information-grid-module .person-card svg {
    fill: var(--Purple);
}

@media (max-width: 559px) {
    .contact-information-grid-module .contact-grid .person-card {
        flex-direction: row;
    }
    .contact-information-grid-module .contact-grid .image-container {
        min-width: 100px;
        max-width: 100px;
    }
}
