/* Keep the site header in the normal page flow, even if the theme script
 * momentarily adds its fixed-state class while scrolling. */
body:not(.header-fixed) > header.header,
body:not(.header-fixed) header.header.fixed {
	position: relative !important;
	top: auto !important;
	right: auto !important;
	left: auto !important;
	transform: none !important;
	animation: none !important;
}

body:not(.header-fixed) header.header.fixed {
	box-shadow: none !important;
}

/* Keep the guest account actions clean and evenly spaced. */
#j-user-wrap {
	display: flex;
	align-items: center;
	gap: 16px;
}

#j-user-wrap > a.login {
	display: inline-flex;
	align-items: center;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

#j-user-wrap > a.login::before,
#j-user-wrap > a.login::after {
	display: none !important;
	content: none !important;
}

/* Rich-text course introductions must never push beyond their content card. */
.yst-course-intro-copy {
	min-width: 0;
	overflow-wrap: anywhere;
}

.yst-course-intro-copy img {
	display: block;
	max-width: 100% !important;
	height: auto !important;
}

.yst-course-intro-copy figure,
.yst-course-intro-copy .wp-caption,
.yst-course-intro-copy video,
.yst-course-intro-copy audio,
.yst-course-intro-copy iframe,
.yst-course-intro-copy embed,
.yst-course-intro-copy object {
	max-width: 100% !important;
}

.yst-course-intro-copy figure,
.yst-course-intro-copy .wp-caption {
	width: auto !important;
}

.yst-course-intro-copy table {
	display: block;
	max-width: 100%;
	overflow-x: auto;
}

.yst-course-intro-copy pre {
	max-width: 100%;
	overflow-x: auto;
}
