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

@media (max-width: 800px) {
	.home-top,
	.story-top,
	.sections {
		grid-template-columns: 1fr;
	}

	.home-main,
	.story-main {
		display: contents;
	}

	.home-top .lead,
	.story-top .story {
		order: 1;
	}

	.home-top > .rail,
	.story-top > .rail {
		grid-column: 1;
		order: 2;
	}

	.home-top .sections,
	.story-top .related {
		order: 3;
	}

	.rail {
		padding-left: 0;
		border-left: 0;
	}

	.lead-title,
	.story-title {
		font-size: 1.75rem;
	}
}

@media (max-width: 1020px) {
	.masthead-row {
		grid-template-columns: minmax(0, 1fr);
		justify-items: start;
	}

	.banner-slot {
		justify-self: stretch;
		width: 100%;
	}
}

@media (max-width: 680px) {
	.nav-toggle {
		display: inline-flex;
	}

	.nav-bar {
		flex-wrap: wrap;
		padding: 0.45rem 0;
	}

	.nav-list {
		display: none;
		flex-basis: 100%;
		order: 3;
	}

	.nav-list.is-open {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
	}

	.nav-list.is-open .sub-menu {
		display: block;
		position: static;
		min-width: 0;
		padding: 0 0 0.2rem 1rem;
		border: 0;
	}

	.nav-list.is-open .sub-menu .sub-menu {
		top: auto;
		left: auto;
	}

	.nav-search {
		margin-left: auto;
	}

	.nav-search input {
		width: 9.5rem;
	}
}
