/* Small, decorative line icons inherit the established brand and text colors. */
.ildp-ui-icon {
	display: inline-block;
	width: 1.15em;
	height: 1.15em;
	flex: 0 0 auto;
	margin-inline-end: .48em;
	vertical-align: -.17em;
	color: inherit;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.75;
	stroke-linecap: round;
	stroke-linejoin: round;
	pointer-events: none;
}

.ildp-icon-eyebrow > .ildp-ui-icon {
	width: 1.75rem;
	height: 1.75rem;
	padding: .28rem;
	margin-inline-end: .6rem;
	vertical-align: -.56em;
	border: 1px solid currentColor;
	border-radius: .5rem;
}

.ildp-icon-card > .ildp-ui-icon {
	width: 1.25em;
	height: 1.25em;
	vertical-align: -.25em;
}

/* Keep menu labels intact, including submenus and the mobile menu. */
.primary-menu a.ildp-icon-label,
.footer-menu a.ildp-icon-label {
	display: inline-flex;
	align-items: center;
}

.primary-menu a > .ildp-ui-icon {
	width: 17px;
	height: 17px;
	margin-inline-end: 7px;
}

.primary-menu .sub-menu a.ildp-icon-label {
	display: flex;
}

.footer-menu a > .ildp-ui-icon {
	opacity: .85;
}

.site-footer__contact-list li > span.ildp-icon-label {
	display: inline-flex;
	align-items: center;
}

.site-footer__recognition.ildp-icon-label::before {
	display: none;
}

.site-footer__recognition > .ildp-ui-icon {
	width: 18px;
	height: 18px;
	margin-inline-end: 0;
}

.ildp-article-meta time.ildp-icon-label,
.ildp-article-meta > span.ildp-icon-label,
.post-card__meta time.ildp-icon-label,
.ildp-latest-news__meta time.ildp-icon-label,
.post-card__reading-time.ildp-icon-label {
	display: inline-flex;
	align-items: center;
}

.ildp-td .ildp-td-button > .ildp-ui-icon {
	margin-inline-end: 0;
}

.ildp-td .ildp-td-count > .ildp-ui-icon,
.ildp-td .ildp-td-pdf > .ildp-ui-icon {
	width: 1.2em;
	height: 1.2em;
}

@media (min-width: 901px) and (max-width: 1199px) {
	/* The existing navigation switches to its mobile layout at 900px. */
	.primary-menu a > .ildp-ui-icon { width: 15px; height: 15px; margin-inline-end: 5px; }
}

@media (max-width: 767px) {
	.ildp-icon-eyebrow > .ildp-ui-icon {
		width: 1.55rem;
		height: 1.55rem;
		padding: .23rem;
		margin-inline-end: .45rem;
	}
}

/* Icons have no motion; they remain readable in high-contrast/forced-color UI. */
@media (forced-colors: active) {
	.ildp-ui-icon { forced-color-adjust: auto; }
}
