html {
	background-color: #FAFAFA;
}

body {
	width: 1200px;
	margin: auto;
	background-color: #FFF;
	border: 1px solid #EBEBEB;
	border-top: 0;
	border-bottom: 0;
	box-shadow: 0 0 20px rgba(0,0,0,.1);
}

.print_logo {
	margin: 0;
	margin-bottom: 2em;
}

section.subpage .print_logo {
	display: none;
}

.branding img {
	display: inline-block;
	vertical-align: middle;
	height: 20px;
	margin-top: -2px;
}

h2 {
	margin-bottom: 1em;
}

.listing_table i.fa-caret-down,
.listing_table i.fa-caret-up {
	margin-left: .25em;
}

.google_location .details .categories {
	font-size: .8em;
    color: rgba(0,0,0,.5);
    font-style: italic;
    text-transform: uppercase;
    margin-top: .25em;
}

.google_location .details .categories .far {
	vertical-align: middle;
	margin-top: -2px;
}

.google_location .details .categories span {
	display: inline;
}

.google_location .details .categories .all {
	display: none;
}

.google_location .details .categories.show .all {
	display: inline;
}

.google_location .details .categories .show_all {
	margin-left: .5em;
}

.google_location .details .categories.show .show_all {
	display: none;
}

section.sectionless {
	padding: 0;
}

*[classname="internal-hide-text"],
.internal-hide-text {
	display: none;
}

@media print {
	
	html {
		background-color: transparent;
		
	}
	
	body { 
		border: 0;
		box-shadow: none;
		width: 100%;
		font-size: 0.82em;
		line-height: 1em
	}
	
	.no_print {
		display: none;
	}
	
	.no_wrap {
		white-space: nowrap;
	}

	section.page,
	section.subpage {
		page-break-before: always;
		padding: 0 2em;
	}
	
	section.page.carry,
	section.subpage.carry {
		page-break-before: auto;
		padding: 2em;
	}

	section.page {
		position: relative;
		width: 100vw;
		min-height: 100vh;
		border: 0;
	}

	section.subpage .print_logo {
		display: block;
	}
	
	.print_logo img {
		max-width: 300px;
		max-height: 130px;
	}

	.cover .print_logo img {
		max-width: 450px;
		max-height: 200px;
	}

	.cv {
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
	}

	.ch {
		position: absolute;
		white-space: nowrap;
		left: 50%;
		transform: translateX(-50%);
	}

	.cv.ch {
		transform: translate(-50%,-50%);
	}
	
	tr.print_only {
		display: table-row;
	}
	
	td.print_only {
		display: table-cell;
	}
	
}

@media screen and (max-width: 1225px){
	body { width: auto; }
}
			
.listing_container .listing_table { page-break-inside: auto; }
.listing_container .listing_table tbody tr { page-break-inside: avoid; page-break-after: auto; }
.branding { page-break-inside: avoid; page-break-after: auto; }