body.single-guide,
body.post-type-archive-guide {
	--hp-guide-nav: 272px;
	background: #fff;
	font-family: Montserrat, sans-serif;
	line-height: 1.6em;
	color: #373737;
}

body.single-guide #page.site,
body.post-type-archive-guide #page.site,
body.single-guide #main,
body.post-type-archive-guide #main {
	display: block;
	min-height: 0;
	flex: none;
	background: #fff;
}

body.single-guide #page.site,
body.post-type-archive-guide #page.site {
	max-width: 1480px;
	margin: 0 auto;
	min-height: 100vh;
	border-left: 1px solid #e2e2e3;
	border-right: 1px solid #e2e2e3;
}

body.single-guide #primary.hp-guide-content,
body.post-type-archive-guide #primary.hp-guide-content {
	display: block;
	min-height: 0;
	flex: 1 1 auto;
	width: auto;
	background: #fff;
}

.hp-guide-top {
	position: sticky;
	top: 0;
	z-index: 20;
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 64px;
	padding-right: 28px;
	background: #fff;
	border-bottom: 1px solid #e2e2e3;
}

.admin-bar .hp-guide-top {
	top: 32px;
}

.hp-guide-brand {
	display: flex;
	align-items: center;
	gap: 8px;
	box-sizing: border-box;
	width: var(--hp-guide-nav);
	flex: 0 0 var(--hp-guide-nav);
	padding-left: 24px;
	color: #3c3c43;
	font-size: 16px;
	font-weight: 700;
	text-decoration: none;
}

.hp-guide-brand img {
	display: block;
	width: 22px;
	height: 22px;
}

.hp-guide-top-links {
	display: flex;
	align-items: center;
	gap: 22px;
}

.hp-guide-top-links a {
	color: #3c3c43;
	font-size: 14px;
	font-weight: 500;
	text-decoration: none;
}

.hp-guide-top-links a:hover {
	color: #206ea7;
}

#content.site-content.hp-guide-screen {
	display: block;
	flex: none;
	padding: 0;
}

.hp-guide-frame {
	display: flex;
	align-items: stretch;
	min-height: calc(100vh - 64px);
	background: linear-gradient(to right, #f6f6f7 var(--hp-guide-nav), #fff var(--hp-guide-nav));
}

.hp-guide-nav-col,
.hp-guide-content {
	box-sizing: border-box;
}

.hp-guide-nav-col {
	position: sticky;
	top: 64px;
	flex: 0 0 var(--hp-guide-nav);
	width: var(--hp-guide-nav);
	height: calc(100vh - 64px);
	overflow: auto;
	padding: 16px 16px 48px 20px;
	background: #f6f6f7;
	/* border-right: 1px solid #e2e2e3; */
}

.admin-bar .hp-guide-nav-col {
	top: 96px;
	height: calc(100vh - 96px);
}

.hp-guide-content {
	flex: 1;
	min-width: 0;
	padding: 20px;
}

.hp-guide-content .entry-header,
.hp-guide-content .entry-content,
.hp-guide-content .hp-guide-pager,
.hp-guide-content .hp-guide-edit {
	width: 100%;
	/* max-width: 740px; */
	margin-left: auto;
	margin-right: auto;
}

.hp-guide-content .wp-block-embed__wrapper {
	position: relative;
	aspect-ratio: 16 / 9;
}

.hp-guide-content .wp-block-embed.wp-embed-aspect-4-3 .wp-block-embed__wrapper {
	aspect-ratio: 4 / 3;
}

.hp-guide-content .wp-block-embed__wrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.hp-guide-content .wp-block-image {
	margin: 1.25rem 0;
}

.hp-guide-content .wp-block-image img,
.hp-guide-content img {
	display: block;
	max-width: 100%;
	height: auto;
}

.hp-guide-content .wp-block-table {
	margin: 1.25rem 0;
}

.hp-guide-content .wp-block-table table {
	width: 100%;
	border-collapse: collapse;
}

.hp-guide-content .wp-block-table th,
.hp-guide-content .wp-block-table td {
	padding: 8px 10px;
	border: 0;
	border-bottom: 1px solid #e2e2e3;
	background: transparent;
	text-align: left;
	vertical-align: top;
}

.hp-guide-content .wp-block-table thead {
	border: 0;
}

.hp-guide-content .wp-block-table th {
	border-bottom: 2px solid #e2e2e3;
	font-weight: 600;
	color: #24292e;
}

.hp-guide-content .wp-block-table code {
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: inherit;
	font-size: 0.92em;
}

.hp-guide-outline {
	position: sticky;
	top: 88px;
	flex: 0 0 220px;
	width: 220px;
	align-self: flex-start;
	max-height: calc(100vh - 110px);
	overflow: auto;
	padding: 0 0 0 12px;
	box-sizing: border-box;
	border-left: 1px solid #e2e2e3;
}

.admin-bar .hp-guide-outline {
	top: 120px;
	max-height: calc(100vh - 142px);
}

.hp-guide-outline-label {
	margin: 0 0 8px;
	color: #6a737d;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.hp-guide-outline ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.hp-guide-outline a {
	display: block;
	padding: 4px 10px;
	border-left: 2px solid transparent;
	color: #6a737d;
	font-size: 13px;
	line-height: 1.4;
	text-decoration: none;
}

.hp-guide-outline .is-sub a {
	padding-left: 20px;
}

.hp-guide-outline a:hover,
.hp-guide-outline .is-current a {
	color: #206ea7;
}

.hp-guide-outline .is-current a {
	border-left-color: #206ea7;
	font-weight: 600;
}

.hp-guide-content .entry-content h1,
.hp-guide-content h2,
.hp-guide-content h3 {
	scroll-margin-top: 200px;
}

.hp-guide-content .hp-guide-section {
	margin: 0 0 4px;
	padding: 4px 12px 2px;
	border-left: 3px solid transparent;
}

.hp-guide-content .hp-guide-section.is-current {
	background: #f4f8fb;
	border-left-color: #206ea7;
}

.hp-guide-content h1.entry-title {
	margin-top: 0;
	padding-bottom: 0;
	border-bottom: 0;
	font-size: 32px;
	line-height: 1.3;
	display: none;
}

.hp-guide-nav ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.hp-guide-nav a {
	display: block;
	padding: 5px 12px;
	border-left: 2px solid transparent;
	color: #3c3c43;
	font-size: 14px;
	line-height: 1.45;
	text-decoration: none;
}

.hp-guide-nav > ul > li > a {
	margin-top: 16px;
}

.hp-guide-nav .hp-guide-heading {
	margin: 18px 0 4px;
	padding: 4px 12px;
	color: #24292e;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.4;
}

.hp-guide-nav ul ul a {
	padding-left: 16px;
}

.hp-guide-nav a:hover {
	color: #206ea7;
}

.hp-guide-nav .is-current > a {
	border-left-color: #206ea7;
	color: #206ea7;
	font-weight: 600;
}

.hp-guide-pager {
	display: flex;
	justify-content: space-between;
	gap: 16px;
	margin-top: 48px;
	padding-top: 16px;
	border-top: 1px solid #e2e2e3;
}

.hp-guide-pager a {
	display: flex;
	flex-direction: column;
	gap: 4px;
	max-width: 48%;
	color: #206ea7;
	text-decoration: none;
}

.hp-guide-pager-next {
	margin-left: auto;
	text-align: right;
}

.hp-guide-pager span {
	color: #6a737d;
	font-size: 12px;
	font-weight: 600;
}

.hp-guide-pager strong {
	color: #24292e;
	font-size: 15px;
	font-weight: 600;
}

.hp-guide-edit {
	margin-top: 24px;
	font-size: 13px;
}

.hp-guide-edit a {
	color: #6a737d;
}

@media (max-width: 960px) {
	.hp-guide-frame {
		flex-direction: column;
	}

	body.single-guide #page.site,
	body.post-type-archive-guide #page.site {
		max-width: none;
		border: 0;
	}

	.hp-guide-frame {
		background: #fff;
	}

	.hp-guide-brand {
		width: auto;
		flex: 1 1 auto;
	}

	.hp-guide-nav-col {
		position: relative;
		top: 0;
		width: 100%;
		height: auto;
		border-right: 0;
		border-bottom: 1px solid #e2e2e3;
	}

	.admin-bar .hp-guide-nav-col {
		top: 0;
		height: auto;
	}

	.hp-guide-content {
		padding: 24px 20px 64px;
	}

	.hp-guide-outline {
		display: none;
	}
}

@media (max-width: 782px) {
	.admin-bar .hp-guide-top {
		top: 46px;
	}
}
