/* Shared by the frontend and block editor; intentionally no card background or hatching. */
.wp-block-group.is-layout-flex:has(> .hawk-person-profile) { align-items: flex-start; }
.wp-block-group.is-layout-flex:has(> .hawk-person-profile) > .hawk-person-profile { flex: 1 1 0; }
.wp-block-group.hawk-person-profile {
	width: 100%;
	max-width: 34rem;
	min-width: 0;
	padding: 0;
	border: 0;
	background: transparent;
	font-size: .9375rem;
	line-height: 1.45;
	text-align: left;
}
.hawk-person-profile .wp-block-group.hawk-person-profile__header {
	display: grid;
	grid-template-columns: minmax(0, 7.5rem) minmax(0, 1fr);
	align-items: start;
	gap: 1.5rem;
	margin: 0;
}
.hawk-person-profile .hawk-person-profile__header:not(:has(> .hawk-person-profile__photo)) { grid-template-columns: minmax(0, 1fr); }
.hawk-person-profile .hawk-person-profile__header > *,
.hawk-person-profile .hawk-person-profile__identity > * { min-width: 0; margin: 0; }
.hawk-person-profile .hawk-person-profile__photo { padding: 0; background: none; box-shadow: none; }
.hawk-person-profile .hawk-person-profile__photo::before,
.hawk-person-profile .hawk-person-profile__photo::after { content: none; }
.hawk-person-profile .hawk-person-profile__photo img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	border-radius: 0;
}
.hawk-person-profile .hawk-person-profile__photo figcaption { position: static; color: inherit; background: none; font-size: .75rem; }
.hawk-person-profile .hawk-person-profile__name { margin: .15rem 0 .6rem; font-size: 1rem; font-weight: 600; line-height: 1.4; }
.hawk-person-profile p { font-size: inherit; line-height: inherit; overflow-wrap: anywhere; }
.hawk-person-profile > p { margin: .8rem 0 0; }
.hawk-person-profile a { color: inherit; text-decoration: none; overflow-wrap: anywhere; }
.hawk-person-profile a:hover { color: var(--color-primary, #c90019); text-decoration: underline; text-underline-offset: .2em; }
.hawk-person-profile a:focus-visible { outline: 2px solid var(--color-primary, #c90019); outline-offset: 3px; }
.hawk-person-profile :is(.hawk-person-profile__name, .hawk-person-profile__organisation) a::after {
	content: "";
	display: inline-block;
	width: 1rem;
	height: .75rem;
	margin-left: .5rem;
	background: var(--color-primary, #c90019);
	clip-path: polygon(0 40%, 72% 40%, 45% 5%, 60% 5%, 100% 50%, 60% 95%, 45% 95%, 72% 60%, 0 60%);
}
.hawk-person-profile :is(.hawk-person-profile__email, .hawk-person-profile__phone) { position: relative; padding-left: 2.15rem; min-height: 1.5rem; }
.hawk-person-profile :is(.hawk-person-profile__email, .hawk-person-profile__phone)::before {
	content: "";
	position: absolute;
	left: .45rem;
	top: .2rem;
	width: 1rem;
	height: 1rem;
	background-color: currentColor;
	mask: var(--profile-icon) center / contain no-repeat;
}
.hawk-person-profile__email { --profile-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M2 4h20v16H2z'/%3E%3Cpath d='m2 5 10 8L22 5'/%3E%3C/g%3E%3C/svg%3E"); }
.hawk-person-profile__phone { --profile-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 2 2 5c-1 8 9 18 17 17l3-4-6-4-2 3c-3-1-6-4-7-7l3-2z'/%3E%3C/svg%3E"); }
/* Stack complete profiles, including saved Gutenberg Row groups (is-nowrap).
   Do not change the photo/name layout inside each individual profile. */
@media (max-width: 48rem) {
	.wp-block-group:has(> .hawk-person-profile) {
		flex-direction: column;
		flex-wrap: wrap !important;
		align-items: stretch;
		gap: var(--hawk-component-gap, 2rem);
	}
	.wp-block-group:has(> .hawk-person-profile) > .hawk-person-profile {
		flex: 0 1 auto;
		width: 100%;
		max-width: 100%;
		margin-inline: 0;
	}
	.wp-block-columns.hawk-profile-grid,
	.wp-block-columns:has(> .wp-block-column > .hawk-person-profile) {
		flex-direction: column;
		flex-wrap: wrap !important;
		gap: var(--hawk-component-gap, 2rem);
	}
	.wp-block-columns.hawk-profile-grid > .wp-block-column,
	.wp-block-columns:has(> .wp-block-column > .hawk-person-profile) > .wp-block-column {
		flex-basis: 100% !important;
		width: 100%;
		min-width: 0;
	}
}
@media (max-width: 25rem) {
	.hawk-person-profile .wp-block-group.hawk-person-profile__header { grid-template-columns: minmax(0, 5.5rem) minmax(0, 1fr); gap: 1rem; }
	.hawk-person-profile .hawk-person-profile__header:not(:has(> .hawk-person-profile__photo)) { grid-template-columns: minmax(0, 1fr); }
}
