#favCity {
	display:inline-block;
	position:relative;
	top:4px;
	width:29px;
	height:28px;
	background:url("/img/fav.png");
}

.faved { background-position:-29px 0 !important; }

.city-page-main { min-width:0; }

.ci-loc-title > .depot-localname-secondary-compact {
	margin-left:.25em;
}

.city-page-sidebar {
	box-sizing:border-box;
	width:264px;
	padding-top:0;
}

.city-page-layout .city-page-sidebar { padding-top:18px; }

.city-hero {
	display:grid;
	grid-template-columns:max-content minmax(0, 1fr);
	align-items:flex-start;
	column-gap:12px;
	position:relative;
	box-sizing:border-box;
	margin:26px 0 14px;
	padding:0;
	border:0;
	background:transparent;
	box-shadow:none;
}

.city-hero--no-flag {
	grid-template-columns:minmax(0, 1fr);
	padding-top:0;
}

.city-hero__flag {
	display:block;
	align-self:end;
	width:max-content;
	height:48px;
	margin:0 0 5px;
}

.city-hero__flag img {
	display:block;
	width:auto;
	height:48px;
}

.city-hero__content {
	display:block;
	grid-column:2;
	min-width:0;
}

.city-hero--no-flag .city-hero__content { grid-column:1; }

.city-hero__heading {
	display:flex;
	flex-wrap:wrap;
	align-items:baseline;
	gap:2px 12px;
}

.city-hero__title {
	margin:0;
	font-size:clamp(34px, 3.7vw, 56px);
	font-weight:bold;
	line-height:1.02;
	letter-spacing:-.02em;
	overflow-wrap:anywhere;
}

.city-hero__heading > #favCity {
	align-self:center;
	flex:0 0 29px;
	top:0;
	margin-left:0;
}

.city-hero__localname {
	margin:0;
	color:#555;
	font-family:var(--narrow-font);
	font-size:25px;
	line-height:1.2;
}

.city-hero__lead {
	grid-column:1 / -1;
	margin-top:9px;
	font-family:var(--narrow-font);
	font-size:21px;
	line-height:1.25;
}

.city-hero__meta {
	grid-column:2;
	position:absolute;
	right:0;
	bottom:0;
	display:flex;
	flex-direction:column;
	align-items:flex-end;
	gap:3px;
	max-width:50%;
	text-align:right;
}

.city-hero--no-flag .city-hero__meta { grid-column:1; }

.city-hero__place,
.city-hero__editors {
	margin:0;
	font-size:12px;
	line-height:18px;
}

.city-hero__editors {
	max-width:100%;
	white-space:normal;
}

.city-hero__editors b { white-space:nowrap; }

.city-hero__place { color:#777; }

.city-hero__place a { font-weight:bold; }

.city-hero__place-line {
	display:flex;
	align-items:center;
	justify-content:flex-end;
	gap:8px;
}

.city-hero__db-update { white-space:nowrap; }

.city-newest { margin-bottom:10px; }

.city-searches {
	display:flex;
	flex-direction:row;
	flex-wrap:nowrap;
	gap:10px;
	min-width:0;
}

.city-location-actions {
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	column-gap:10px;
	row-gap:6px;
	margin:11px 0 16px;
}

.city-action-item,
.city-action-separator,
.city-location-toggle {
	display:inline-flex;
	align-items:center;
	font-weight:normal;
	line-height:18px;
}

.city-location-toggle .ci-loc-open-all,
.city-location-toggle .ci-loc-hide-all { font-weight:normal; }

.city-action-item--strong { font-weight:bold; }

.city-news__details > summary {
	cursor:pointer;
	list-style:none;
}

.city-news__details > summary::-webkit-details-marker { display:none; }
.city-news__details > summary::marker { content:''; }

.city-news__summary-content {
	display:block;
}

.city-news__details:not([open]) .city-news__summary-content {
	display:-webkit-box;
	-webkit-box-orient:vertical;
	-webkit-line-clamp:3;
	overflow:hidden;
}

.city-news__details:not([open]) .city-news__summary-content--blank-third-line {
	display:block;
	-webkit-line-clamp:unset;
}

.city-news__details[open] .city-news__summary-content--blank-third-line {
	max-height:none !important;
}

.city-news__toggle {
	display:block;
	margin-top:4px;
	color:#777;
}

.city-news__collapse-label { display:none; }

.city-news__details[open] .city-news__expand-label { display:none; }
.city-news__details[open] .city-news__collapse-label { display:inline; }

.city-action-separator {
	margin:0;
	color:#777;
}

@media screen and (max-width: 1100px) {
	.city-hero__flag { align-self:start; }

	.city-hero__heading > #favCity { order:2; }

	.city-hero__localname {
		order:3;
		flex:0 0 100%;
		overflow-wrap:anywhere;
	}

	.city-hero__meta {
		position:static;
		align-items:flex-start;
		max-width:none;
		margin-top:8px;
		text-align:left;
	}

	.city-hero__place-line { justify-content:flex-start; }
}

@media screen and (max-width: 700px) {
	html,
	body {
		max-width:100%;
		overflow-x:hidden;
	}

	.city-page-layout,
	.city-page-layout > tbody,
	.city-page-layout > tbody > tr,
	.city-page-layout > tbody > tr > .city-page-main {
		display:block;
		box-sizing:border-box;
		width:100%;
		max-width:100%;
	}

	.city-page-layout { table-layout:fixed; }

	.main > .tools { margin-left:-5px; }

	.city-hero {
		grid-template-columns:max-content minmax(0, 1fr);
		column-gap:12px;
		margin:12px 3px 0;
		padding:0;
	}

	.city-hero__flag {
		align-self:start;
		width:max-content;
		max-width:19vw;
		height:36px;
		margin-top:calc(clamp(30px, 9vw, 42px) - 17px);
		margin-bottom:0;
	}

	.city-hero__flag img {
		width:auto;
		max-width:100%;
		height:36px;
		object-fit:contain;
		object-position:left bottom;
	}

	.city-hero--no-localname .city-hero__flag {
		align-self:center;
		margin-top:0;
	}

	.city-hero--no-localname .city-hero__content { align-self:center; }

	.city-hero__title {
		font-size:clamp(30px, 9vw, 42px);
		line-height:1;
	}

	.city-hero__heading--favorite {
		position:relative;
		display:block;
		box-sizing:border-box;
		width:100%;
		max-width:100%;
		min-width:0;
	}

	.city-hero__heading--favorite .city-hero__title {
		box-sizing:border-box;
		width:100%;
		padding-right:44px;
	}

	.city-hero__heading--favorite > #favCity {
		position:absolute;
		top:0;
		right:14px;
		width:24px;
		height:clamp(30px, 9vw, 42px);
		margin:0;
		background-size:48px 23px;
		background-repeat:no-repeat;
		background-position:0 center;
	}

	.city-hero__heading--favorite > #favCity.faved {
		background-position:-24px center !important;
	}

	.city-hero__localname {
		font-size:22px;
		line-height:1.15;
	}

	.city-hero__meta,
	.city-hero--no-flag .city-hero__meta {
		grid-column:1 / -1;
		display:grid;
		grid-template-columns:minmax(0, 1fr);
		align-items:start;
		gap:2px;
		width:100%;
		margin-top:10px;
	}

	.city-hero__editors {
		grid-column:1;
		grid-row:1;
		min-width:0;
		font-size:13px;
		line-height:19px;
		overflow-wrap:anywhere;
	}

	.city-hero__editors b { white-space:normal; }

	.city-hero__place {
		grid-column:1;
		grid-row:2;
		align-self:start;
	}

	.city-hero__place > br,
	.city-hero__place > a,
	.city-hero__place-line > span,
	.city-hero__place-line > a:not(.city-hero__db-update) {
		display:none;
	}

	.city-hero__place-line {
		display:block;
		white-space:nowrap;
	}

	.city-hero__db-update {
		display:inline-block;
		font-size:13px;
		font-weight:bold;
		text-align:left;
	}

	.city-newest { margin:0 0 7px; }

	.city-hero--no-editors + .city-newest { margin-top:10px; }

	.city-newest h4 {
		margin:0 3px 6px;
		font-size:20px;
	}

	.city-newest__photos {
		scrollbar-width:thin;
		overscroll-behavior-inline:contain;
		-webkit-overflow-scrolling:touch;
	}

	.city-location-actions {
		column-gap:7px;
		row-gap:2px;
		margin:7px 3px;
	}

	.city-action-primary {
		display:contents;
	}

	.city-action-item--db {
		max-width:100%;
		white-space:normal;
	}

	.city-action-primary + .city-action-separator { display:none; }

	.city-action-item {
		min-width:0;
		overflow-wrap:anywhere;
	}

	.city-searches {
		display:grid;
		grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
		box-sizing:border-box;
		gap:7px 6px;
		width:calc(100vw - 10px);
		max-width:calc(100vw - 10px);
		margin-bottom:8px;
	}

	.city-search {
		display:flex;
		position:relative;
		box-sizing:border-box;
		width:100%;
		max-width:100%;
		min-width:0;
	}

	.city-search > input[type="text"] {
		box-sizing:border-box;
		width:0 !important;
		min-width:0;
		height:31px !important;
		flex:1 1 0;
		font-size:14px;
	}

	.city-search > input[type="submit"] {
		box-sizing:border-box;
		height:31px !important;
		padding:0 8px !important;
		flex:0 0 auto;
	}

	.city-search--number > div {
		position:absolute !important;
		left:0;
		top:100%;
		z-index:1001;
		width:0;
	}

	#cars_list {
		box-sizing:border-box;
		width:calc(100vw - 10px);
		max-width:calc(100vw - 10px);
		overflow-wrap:anywhere;
	}

	#dname {
		grid-column:1 / -1;
		box-sizing:border-box;
		width:100% !important;
		max-width:100%;
		min-width:0;
		height:31px;
		font-size:14px;
	}

	.ui-autocomplete {
		box-sizing:border-box;
		max-width:calc(100vw - 10px);
		overflow-wrap:anywhere;
	}

	.ui-autocomplete.city-route-autocomplete {
		box-sizing:border-box;
	}

	.ui-autocomplete.city-route-autocomplete .ui-menu-item > a {
		padding:5px 8px !important;
		font-size:14px;
		line-height:18px !important;
	}

	.ci-location {
		position:relative;
		left:-5px;
		box-sizing:border-box;
		width:100vw;
		max-width:100vw;
		margin-right:0;
		margin-left:0;
	}

	.ci-location-inventory { display:none; }

	.ci-loc-header {
		display:flex;
		box-sizing:border-box;
		align-items:center;
		gap:6px;
		width:100%;
		min-height:52px;
		padding:15px 14px;
		font-size:19px;
		line-height:1.15;
		overflow-wrap:anywhere;
	}

	.ci-loc-header > a {
		flex:1 1 auto;
		min-width:0;
		overflow-wrap:anywhere;
		pointer-events:none;
	}

	.ci-loc-header > .ci-loc-title {
		flex:1 1 auto;
		min-width:0;
	}

	.ci-loc-header > a > .ci-loc-title { pointer-events:auto; }

	.ci-loc-plus {
		order:2;
		flex:0 0 24px;
		margin-right:0;
		margin-left:auto;
		background-color:transparent;
	}

	.ci-loc-plus::before {
		position:relative;
		left:0;
	}

	.ci-loc-header:hover .ci-loc-plus,
	.ci-loc-header:active .ci-loc-plus,
	.ci-loc-header:focus .ci-loc-plus,
	.ci-loc-header:focus-within .ci-loc-plus {
		background-color:transparent;
	}

	.ci-loc-content,
	.ci-loc-content table {
		box-sizing:border-box;
		width:100%;
		max-width:100%;
	}

	.ci-loc-content tr {
		display:grid;
		grid-template-columns:7px minmax(0, 1fr);
	}

	.ci-loc-content tr > td:first-of-type {
		grid-column:1;
		grid-row:1 / span 2;
	}

	.ci-loc-content td.d {
		grid-column:2;
		grid-row:1;
		min-width:0;
		padding:7px 5px 7px 32px !important;
		white-space:normal;
		text-indent:-14px !important;
		overflow-wrap:anywhere;
	}

	.ci-loc-content td.rs {
		display:flex;
		grid-column:2;
		grid-row:2;
		flex-wrap:wrap;
		align-items:center;
		justify-content:flex-start;
		gap:4px 12px;
		box-sizing:border-box;
		width:auto;
		padding:0 7px 8px 32px !important;
		white-space:normal;
		text-align:left;
		overflow-wrap:anywhere;
	}

	.ci-loc-content td.rs br { display:none; }

	.city-all-vehicles tr { display:block; }

	.city-all-vehicles td.c { display:none; }

	.city-all-vehicles td.d {
		display:block;
		box-sizing:border-box;
		width:100%;
		padding:8px 12px 4px !important;
		text-align:left;
	}

	.city-all-vehicles td.rs {
		display:flex;
		box-sizing:border-box;
		flex-wrap:wrap;
		align-items:center;
		justify-content:flex-start;
		gap:4px 12px;
		width:100%;
		padding:0 12px 9px !important;
		white-space:normal;
		text-align:left;
	}

	.city-all-vehicles td.rs br { display:none; }

	.ci-loc-content .depot-localname,
	.ci-loc-content .depot-previous-names,
	.ci-loc-content .sm {
		white-space:normal;
		overflow-wrap:anywhere;
	}

	.city-page-main > .p20,
	.city-page-main > .p20a,
	.city-page-main > .p20p,
	.city-page-main > .p20w,
	.city-page-main > .p0 {
		box-sizing:border-box;
		max-width:100%;
		overflow-wrap:anywhere;
	}

	.city-page-main > .city-all-vehicles,
	.city-page-main > .city-all-vehicles ~ .p20 {
		width:calc(100% + 5px);
		max-width:calc(100% + 5px);
		margin-left:-5px;
	}

	.ci-location,
	.city-page-main > .city-all-vehicles,
	.city-page-main > .city-all-vehicles ~ .p20 {
		border-left:0;
	}

	.city-page-main td.nw { white-space:normal; }

	.city-page-main > .p20 > table,
	.city-page-main > .p20a > table,
	.city-page-main > .p20p > table,
	.city-page-main > .p20w > table,
	.city-page-main > .p0 > table {
		box-sizing:border-box;
		width:100%;
		max-width:100%;
		table-layout:fixed;
	}

	.city-page-main .sm,
	.city-page-main td,
	.city-page-main a {
		overflow-wrap:anywhere;
	}

	.city-page-main > .p20 img,
	.city-page-main > .p20a img,
	.city-page-main > .p20p img,
	.city-page-main > .p20w img,
	.city-page-main > .p0 img {
		max-width:100%;
		height:auto;
	}

	.city-page-main iframe,
	.city-page-main video { max-width:100%; }

	ul.city-gallery-list > li {
		padding-left:0;
		background:none;
	}

	ul.city-gallery-list > li + li { margin-top:8px; }

	.city-links td.c { display:none; }

	.city-links td:not(.c) { width:100%; }

	.city-stat-block {
		display:flex;
		flex-direction:column;
		min-width:0;
	}

	.city-stat-block > h4 {
		order:1;
		margin-bottom:4px;
	}

	.city-stat-switcher {
		order:2;
		float:none !important;
		margin-bottom:10px;
		text-align:left;
	}

	.city-stat-switcher br { display:none; }

	.city-stat-block > .ci-updates-wrapper,
	.city-stat-block > .ci-top-authors-wrapper {
		order:3;
		min-width:0;
	}

	.city-news table {
		display:block;
		width:100%;
		table-layout:fixed;
	}

	.city-news col { display:none; }

	.city-news tbody,
	.city-news tr,
	.city-news td {
		display:block;
		box-sizing:border-box;
		width:100%;
	}

	.city-news .city-news__date {
		width:100%;
		padding:8px 20px 0 !important;
	}

	.city-news .city-news__body {
		padding:4px 20px 8px !important;
	}

	.city-news__archive-row > td:first-child { display:none; }

	.city-news .city-news__archive {
		padding:8px 20px !important;
	}

	.city-mobile-lead {
		font-family:var(--narrow-font);
		font-size:19px;
		line-height:1.3;
	}
}

@media screen and (max-width: 480px) {
	.city-hero--no-flag { padding-top:0; }
}
