:is(.elementor-widget-eustis-profile-card, .elementor-widget-eustis-profile-loop) .eustis-profile-card-wrap {
	display: flex !important;
	position: static !important;
	min-width: 0;
	width: 100%;
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	justify-content: center;
	align-items: flex-start !important;
}

:is(.elementor-widget-eustis-profile-card, .elementor-widget-eustis-profile-loop) .eustis-profile-card {
	--eustis-profile-image-bg: #eeeeee;
	display: block !important;
	position: relative !important;
	width: min(360px, 100%);
	max-width: 100%;
	min-width: 0;
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden;
	border: 2px solid #454545;
	background: #ffffff;
	box-sizing: border-box;
	justify-content: initial !important;
	align-items: initial !important;
	transition-property: transform, border-color, background-color, box-shadow;
	transition-duration: 250ms;
	transition-timing-function: ease;
}

:is(.elementor-widget-eustis-profile-card, .elementor-widget-eustis-profile-loop) .eustis-profile-card--clickable {
	cursor: pointer;
}

:is(.elementor-widget-eustis-profile-card, .elementor-widget-eustis-profile-loop) .eustis-profile-card--clickable:focus-visible {
	outline: 3px solid rgb(0 135 123 / 35%);
	outline-offset: 3px;
}

:is(.elementor-widget-eustis-profile-card, .elementor-widget-eustis-profile-loop) .eustis-profile-card__media {
	display: block !important;
	position: relative !important;
	width: 100% !important;
	height: auto;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	background-color: var(--eustis-profile-image-bg) !important;
	border: 0 !important;
	border-bottom: inherit !important;
	border-radius: 0;
	overflow: hidden !important;
	box-sizing: border-box;
	line-height: 0 !important;
}

:is(.elementor-widget-eustis-profile-card, .elementor-widget-eustis-profile-loop) .eustis-profile-card__image-layer {
	display: block !important;
	position: relative !important;
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	object-fit: cover;
	object-position: center center;
	transition: transform 250ms ease;
}

:is(.elementor-widget-eustis-profile-card, .elementor-widget-eustis-profile-loop) .eustis-profile-card__media--fixed {
	height: 360px;
}

:is(.elementor-widget-eustis-profile-card, .elementor-widget-eustis-profile-loop) .eustis-profile-card__media--fixed .eustis-profile-card__image-layer {
	position: absolute !important;
	inset: 0 !important;
	height: 100% !important;
}

:is(.elementor-widget-eustis-profile-card, .elementor-widget-eustis-profile-loop) .eustis-profile-card__content {
	display: block !important;
	position: static !important;
	float: none !important;
	inset: auto !important;
	width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	margin: 0 !important;
	padding: 16px 16px 15px;
	background: #ffffff;
	box-sizing: border-box;
	transform: none !important;
	clear: both !important;
}

.elementor-widget-eustis-profile-loop .eustis-profile-loop {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	column-gap: 24px;
	row-gap: 24px;
	width: 100%;
	min-width: 0;
}

.elementor-widget-eustis-profile-loop .eustis-profile-loop > .eustis-profile-card-wrap {
	height: 100% !important;
}

.elementor-widget-eustis-profile-loop .eustis-profile-loop > .eustis-profile-card-wrap > .eustis-profile-card {
	height: 100% !important;
}

.eustis-profile-loop__empty {
	margin: 0;
}

.eustis-profile-card__role {
	margin: 0 0 6px;
	color: #00877b;
	font-size: 13px;
	line-height: 1.3;
	text-transform: none;
}

.eustis-profile-card__name {
	margin: 0 0 12px;
	color: #3d3d3d;
	font-size: 25px;
	font-weight: 800;
	line-height: 1.05;
	text-transform: none;
}

.eustis-profile-card__button {
	display: inline-block;
	padding: 4px 7px;
	border: 2px solid #00877b;
	background: transparent;
	color: #00877b;
	cursor: pointer;
	font-family: inherit;
	font-size: 11px;
	font-weight: 800;
	line-height: 1;
	text-decoration: none;
	text-transform: none;
	transition: color 160ms ease, background-color 160ms ease, border-color 160ms ease;
}

.eustis-profile-card__button:hover,
.eustis-profile-card__button:focus-visible,
.eustis-profile-card--clickable:hover .eustis-profile-card__button,
.eustis-profile-card--clickable:focus-visible .eustis-profile-card__button {
	background: #00877b;
	color: #ffffff;
}

.eustis-profile-card__button:focus-visible,
.eustis-profile-modal__close:focus-visible {
	outline: 3px solid rgb(0 135 123 / 35%);
	outline-offset: 3px;
}

.eustis-profile-modal {
	box-sizing: border-box;
	width: 1000px;
	height: 580px;
	max-width: calc(100vw - 32px);
	max-height: calc(100vh - 32px);
	margin: auto;
	padding: 0;
	overflow: hidden;
	border: 2px solid #2f2f2f;
	background: #ffffff;
	color: #414141;
}

/* Elementor editor/theme resets can make a closed native dialog visible. */
.eustis-profile-modal:not([open]) {
	display: none !important;
}

.eustis-profile-modal[open] {
	display: block !important;
	animation: eustis-profile-modal-in 180ms ease-out;
}

.eustis-profile-modal::backdrop {
	background: rgb(0 0 0 / 62%);
	backdrop-filter: blur(2px);
}

.eustis-profile-modal__layout {
	display: grid;
	grid-template-columns: minmax(205px, 0.78fr) minmax(0, 2fr);
	gap: 60px;
	height: 100%;
	min-height: 0;
	padding: 86px 58px 58px;
	overflow: hidden;
}

.eustis-profile-modal__details {
	align-self: start;
	padding-bottom: 22px;
	border-bottom: 3px solid #00877b;
}

.eustis-profile-modal__name {
	margin: 0 0 7px;
	color: #3d3d3d;
	font-size: 35px;
	font-weight: 800;
	line-height: 1;
}

.eustis-profile-modal__role {
	margin: 0;
	color: #00877b;
	font-size: 16px;
	font-weight: 800;
	line-height: 1.35;
}

.eustis-profile-modal__contact {
	display: grid;
	gap: 4px;
	margin-top: 24px;
	font-size: 15px;
	font-style: normal;
	line-height: 1.35;
}

.eustis-profile-modal__contact a {
	color: #555555;
	text-decoration: none;
	overflow-wrap: anywhere;
}

.eustis-profile-modal__contact a:hover {
	text-decoration: underline;
}

.eustis-profile-modal__bio {
	min-width: 0;
	min-height: 0;
	padding-right: 12px;
	overflow-y: auto;
	overscroll-behavior: contain;
	scrollbar-color: #00877b #e5e5e5;
	scrollbar-width: thin;
	font-size: 15px;
	line-height: 1.4;
}

.eustis-profile-modal__bio > :first-child {
	margin-top: 0;
}

.eustis-profile-modal__bio > :last-child {
	margin-bottom: 0;
}

.eustis-profile-modal__bio::-webkit-scrollbar {
	width: 7px;
}

.eustis-profile-modal__bio::-webkit-scrollbar-track {
	background: #e5e5e5;
}

.eustis-profile-modal__bio::-webkit-scrollbar-thumb {
	background: #00877b;
	border-radius: 999px;
}

.eustis-profile-modal__close {
	position: absolute;
	z-index: 2;
	top: 32px;
	right: 34px;
	width: 34px;
	height: 34px;
	padding: 0;
	border: 2px solid #00877b;
	background: #ffffff;
	color: #00877b;
	cursor: pointer;
}

.eustis-profile-modal__close::before,
.eustis-profile-modal__close::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 68%;
	height: 2px;
	background: currentColor;
}

.eustis-profile-modal__close::before {
	transform: translate(-50%, -50%) rotate(45deg);
}

.eustis-profile-modal__close::after {
	transform: translate(-50%, -50%) rotate(-45deg);
}

.eustis-profile-modal__close:hover {
	filter: brightness(0.94);
}

.eustis-profile-modal__back {
	display: none;
}

@keyframes eustis-profile-modal-in {
	from {
		opacity: 0;
		transform: translateY(10px) scale(0.985);
	}
	to {
		opacity: 1;
		transform: translateY(0) scale(1);
	}
}

@media (max-width: 700px) {
	.elementor-widget-eustis-profile-loop .eustis-profile-loop {
		grid-template-columns: minmax(0, 1fr);
	}

	.eustis-profile-modal {
		max-width: calc(100vw - 24px);
		max-height: calc(100vh - 24px);
	}

	.eustis-profile-modal__layout {
		display: block;
		padding: 74px 25px 30px;
		overflow-x: hidden;
		overflow-y: auto;
	}

	.eustis-profile-modal__close {
		top: 20px;
		right: 20px;
	}

	.eustis-profile-modal__details {
		margin-bottom: 18px;
	}

	.eustis-profile-modal__bio {
		padding-right: 0;
		overflow: visible;
	}

	.eustis-profile-modal__back {
		display: inline-block;
		margin-top: 16px;
		padding: 3px 5px;
		border: 2px solid #00877b;
		background: transparent;
		color: #00877b;
		cursor: pointer;
		font: inherit;
		font-size: 11px;
		font-weight: 800;
		line-height: 1;
		text-transform: uppercase;
	}

	.eustis-profile-modal__back:hover,
	.eustis-profile-modal__back:focus-visible {
		background: #00877b;
		color: #ffffff;
	}
}

@media (prefers-reduced-motion: reduce) {
	.eustis-profile-modal[open] {
		animation: none;
	}
}
