/* Office photographs belong beside the address, not above the location heading. */
.crystal-contact-office-intro {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
	align-items: stretch;
	gap: clamp(1rem, 1.6vw, 1.4rem);
	margin: 0;
}
.crystal-contact-office-intro > * { min-width: 0; margin-block: 0; }
.crystal-contact-office-heading { align-self: center; }
.crystal-contact-office-heading .crystal-eyebrow { margin-top: 0; }
.crystal-contact-office-heading h2 { margin-block: .55rem .8rem; }
.crystal-contact-office-heading .crystal-contact-address { margin-block: 0; font-size: 1rem; }
.crystal-contact-office-intro .crystal-contact-office-photo { position: relative; margin: 0; min-height: 188px; }
.crystal-contact-office-intro .crystal-contact-office-photo img {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	min-height: 188px;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	border-radius: .85rem;
}
.crystal-contact-office .crystal-contact-map { display: block; min-width: 0; }
.crystal-contact-office .crystal-contact-map iframe {
	display: block;
	width: 100%;
	height: 280px;
	border: 0;
}
@media (min-width: 601px) and (max-width: 1023px) {
	.crystal-contact-grid { grid-template-columns: minmax(0, 1fr); }
	.crystal-contact-office-intro { grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); }
	.crystal-contact-office-intro .crystal-contact-office-photo img { max-height: 260px; }
}
@media (max-width: 600px) {
	.crystal-contact-office-intro { grid-template-columns: minmax(0, 1fr); gap: 1.25rem; }
	.crystal-contact-office-intro .crystal-contact-office-photo { min-height: 0; aspect-ratio: 16 / 9; }
	.crystal-contact-office-intro .crystal-contact-office-photo img { height: 100%; min-height: 0; aspect-ratio: auto; }
	.crystal-contact-office .crystal-contact-map iframe { height: 250px; }
}
