/* Mobile footer: retain the editable blocks and all links in a shorter layout. */
@media (max-width: 782px) {
	.crystal-footer {
		padding-block: 1.75rem 1.25rem;
	}

	.crystal-footer > .wp-block-columns {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		gap: 1.25rem;
		margin-block: 0;
	}

	.crystal-footer > .wp-block-columns > .wp-block-column {
		min-width: 0;
		margin-block: 0;
	}

	.crystal-footer .crystal-site-title {
		margin: 0;
		font-size: 1.8rem;
		line-height: 1.15;
	}

	.crystal-footer > .wp-block-columns > .wp-block-column:first-child > p + p {
		max-width: 34ch;
		margin: 0.55rem 0 0 !important;
		font-size: 0.9rem !important;
		line-height: 1.5;
	}

	.crystal-footer h3.wp-block-heading {
		margin: 0 0 0.45rem;
		font-size: 0.95rem !important;
		line-height: 1.4;
	}

	.crystal-footer .wp-block-navigation {
		width: 100%;
		margin-block: 0;
	}

	.crystal-footer .wp-block-navigation__container {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		align-items: stretch;
		gap: 0 1rem;
		width: 100%;
	}

	.crystal-footer .wp-block-navigation-item {
		min-width: 0;
		margin: 0;
	}

	.crystal-footer .wp-block-navigation-item__content {
		display: flex;
		box-sizing: border-box;
		align-items: center;
		width: 100%;
		min-height: 2.75rem;
		padding-block: 0.4rem;
		font-size: 0.875rem;
		line-height: 1.35;
		text-decoration-thickness: 1px;
		text-underline-offset: 0.2em;
	}

	/* Each office is a single editable paragraph; the shared heading spans both. */
	.crystal-footer:not(.crystal-footer-signature) > .wp-block-columns > .wp-block-column:last-child {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 1rem;
		row-gap: 0.25rem;
		padding-top: 1rem;
		border-top: 1px solid rgba(255, 255, 255, 0.14);
	}

	.crystal-footer:not(.crystal-footer-signature) > .wp-block-columns > .wp-block-column:last-child > h3 {
		grid-column: 1 / -1;
	}

	.crystal-footer:not(.crystal-footer-signature) > .wp-block-columns > .wp-block-column:last-child > p {
		min-width: 0;
		margin: 0;
		font-size: 0.875rem;
		line-height: 1.55;
	}

	.crystal-footer:not(.crystal-footer-signature) > .wp-block-columns > .wp-block-column:last-child > p strong {
		display: inline-block;
		line-height: 1.4;
	}

	.crystal-footer:not(.crystal-footer-signature) > .wp-block-columns > .wp-block-column:last-child a {
		display: inline-block;
		padding-block: 0.25rem;
	}

	.crystal-footer-bottom {
		display: grid;
		gap: 0.3rem;
		margin-top: 1.25rem !important;
		padding-top: 0.85rem;
	}

	.crystal-footer-bottom > p {
		margin: 0;
		font-size: 0.75rem !important;
		line-height: 1.5;
	}

	.crystal-association-strip {
		padding-block: 1.2rem;
	}

	.crystal-association-label {
		margin-bottom: 0.5rem;
		font-size: 0.69rem;
		letter-spacing: 0.09em;
	}

	.crystal-association-logos {
		gap: 0.75rem;
		margin-top: 0 !important;
	}

	.crystal-association-logo a {
		min-height: 3.25rem;
	}

	.crystal-association-logo img {
		max-height: 3rem;
	}
}
