@charset "utf-8";

body {
	font-family: 'Open Sans', sans-serif;
	color: #363636;
	margin: 0;
}

.section-header-visit,
.section-header-guidedtours,
.section-header-schoolgroups,
.section-header-hoc,
.section-header-senate,
.section-header-planning,
.section-header-eastblock,
.section-header-debatesandcommittees,
.section-header-media{
    background: url(/staticfiles/PublicWebsite/assets/images/Common/bg-misc-option-A.jpg) center center no-repeat;    
	background-size: 100% 162px;
}


.vp_container { 
	max-width: 1150px; 
	margin: 0 auto;
	padding: 0 16px;
}

#visit a:not(.vp_mapLocation, .mapLocation) { color: #2c8888; }
#visit a:hover:not(.vp_mapLocation, .mapLocation)
{ 
	color: #9a7f49; 
}
#visit a.vp_mapLocation:hover { text-decoration: none; }

	#vp_main a.external::after {
		content: '\f360';
		font-family: 'Font Awesome 5 Free';
		margin-left: 5px;
		font-weight: 600;
		vertical-align: middle;
		/* display: inline-block; /* to avoid text-decoration including this element */
	}

h1,h2,h3,h4,h5,h6 {
	font-weight: 300;
}

h1 { font-size: 48px }
	.vp_home h1 { 
		text-align: center; 
		transition: font-size 0.25s, margin-top 0.25s;
	}
h2 { font-size: 36px; transition: font-size 0.25s; }
	h2.mixed { 
		font-weight: 400; 
		line-height: 0.875em; 
	}
		h2.mixed > span { font-size: 0.667em; }
h3 { 
	font-size: 24px; 
	font-weight: 600;
	margin: 2em 0 1em;
	color:inherit;
}

#visit p {
	line-height: 1.5em;
	margin: 1.25em 0;
}

strong { font-weight: 600; }
		
button {
	font-family: 'Open Sans', sans-serif;
	font-size: 24px;
	font-weight: 300;
	background-color: rgb(154,127,73);
	color: white;
	border: none;
	padding: 0.375em 1em;
	cursor: pointer;
	border: 2px solid rgb(154,127,73);
	transition: background-color 0.25s, color 0.25s, font-size 0.25s;
}

	button:hover {
		color: rgb(154,127,73);
		background-color: white;
		transition: background-color 0.25s, color 0.25s;
	}

	button i.fal { 
		font-size: 1.25em; 
		vertical-align: middle;
		margin-top: -2px;
		font-weight: 600;
    	font-family: 'Font Awesome 5 Free';
	}

	button.reserve { 
		float: right;
		margin: 0 0 0.5em 0.5em;
	}

#search-bar {
	background-color: rgb(242,242,242);
	color: rgb(51,122,183);
	font-size: 15px;
}

	#search-bar::after {
		content: '';
		display: table;
		clear: both;
	}

	#search-bar h2 { 
		float: left; 
		line-height: 60px;
		margin: 0;
	}

	#search-bar a { 
		color: rgb(51,122,183);
		text-decoration: none;
	}

	#search-bar ul {
		list-style: none;
		text-align: right;
		margin: 0;
	}

		#search-bar li {
			display: inline-block;
		}

			#search-bar li a {
				padding: 18px;
				display: inline-block;
				transition: padding 0.25s;
			}
			
				#search-bar li a.current { font-weight: 700; }

			#search-bar li i {
				font-size: 1.5em;
				vertical-align: middle;
				margin: 0 4px;
			}


#vp_main {
	/*
	padding-top: 0.5em;
	padding-bottom: 1em;
	*/
	font-size: 20px;
	transition: font-size 0.25s;
}

.vp_container > p:first-child { margin-top: 0; }

.vp_block {}

	#vp_main > section:nth-of-type(4n+1) { background-color: white; }
	#vp_main > section:nth-of-type(4n+2), 
	#vp_main > section:nth-of-type(4n+2) h2  
	{
		background-color: rgb(108,111,119);
		color: white;
	}
	#vp_main > section:nth-of-type(4n+2) a { color: rgb(233,192,110); }
	#vp_main > section:nth-of-type(4n+2) a:hover { color: rgb(73,224,224); }
	#vp_main > section:nth-of-type(4n+3) { background-color: rgb(230,232,240); }
	#vp_main > section:nth-of-type(4n+4) { background-color: rgb(219,219,219); }

	.vp_home #vp_main > section:nth-of-type(4n+1) { background-color: white; }
	.vp_home #vp_main > section:nth-of-type(4n+2) { background-color: rgb(129,136,146); color: white; }
	.vp_home #vp_main > section:nth-of-type(4n+3) { background-color: rgb(78,81,88); color: white; }	
	.vp_home #vp_main > section:nth-of-type(4n+2) h2,
	.vp_home #vp_main > section:nth-of-type(4n+2) h3, 	
	.vp_home #vp_main > section:nth-of-type(4n+2) p, 
	.vp_home #vp_main > section:nth-of-type(4n+3) h2,
	.vp_home #vp_main > section:nth-of-type(4n+3) h3, 	
	.vp_home #vp_main > section:nth-of-type(4n+3) p 	
		{color: white; 
		background-color: inherit;}	
	.vp_home #vp_main > section:nth-of-type(4n+3) a { color: rgb(233,192,110); }
	.vp_home #vp_main > section:nth-of-type(4n+3) a:hover { color: rgb(73,224,224); }
	.vp_home #vp_main > section:nth-of-type(4n+4) { background-color: rgb(219,219,219); }
	

	#vp_main > section .vp_container {
		padding-top: 2em;
		padding-bottom: 1em;
	}

		#vp_main > section .vp_container::after {
			content: '';
			display: table;
			clear: both;
		}

	#vp_main > section h2 { 
		margin-top: -0.25em;
		margin-bottom: 0.25em;
		transition: margin 0.25s;
	}
	#vp_main > section h2.mixed { 
		margin-top: 0 !important;
		margin-bottom: 0.9375em;
	}

	#vp_main > section.vp_compact .vp_container { padding-top: 1.75em; }

	#vp_main > section.vp_compact h2 {
		float: left;
		margin-right: 1.25em;
		margin-top: 0;
	}
	#vp_main > section.vp_compact h2 + p { margin-top: 0; }

	#vp_main > .vp_intro {
		background-image: url("/staticfiles/Visit/assets/images/banner-visit-homePage.jpg");
		background-size: cover;
		background-position: top center;
		border-color: transparent;
		border-style: solid;
		border-width: 1px 0;
	}

		#vp_main .vp_introBox {
			background-color: rgba(62,64,71,0.9);
			color: white;
			text-align: center;
			margin: 140px auto 215px;
			transition: margin 0.25s
		}

			#vp_main .vp_introBox h2 { 
				position: relative;
				background-color: #9a7f49; 
				color: white;
				padding: 0.5em 0.25em 0.25em;
				margin: 0 0 40px;
				transition: padding-top 0.25s, margin-bottom 0.25s;
			}

			#vp_main .vp_introBox h2 svg {
				position: absolute;
				height: 40px;
				width: 100%;
				top: 100%;
				left: 0;
				margin-top: -0.5px; /* to prevent a partial-pixel gap at some window sizes */
				transition: height 0.25s;
			}
					#vp_main .vp_introBox h2 svg polygon { fill: #9a7f49; }

			/*
			#vp_main .vp_introBox h2::after { 
				position: absolute;
				top: 100%;
				left: 50%;
				margin-left: -575px;
				content: '';
				width: 0; 
				height: 0; 
				border-left: 575px solid transparent; 
				border-right: 575px solid transparent; 
				border-top: 40px solid #9a7f49; 
			}	
			*/

			#vp_main .vp_introBox p {
				display: inline-block;
				margin: 0.5em 1em 1.5em;
				max-width: 740px;
				text-align: left;
				transition: margin 0.25s;
			}

			#vp_main .vp_introBox p a { color: #9a7f49; }
			#vp_main .vp_introBox p a:hover { color: #2c8888; }				

			#vp_main .vp_introBox nav { margin-top: 0; }

		#visit #vp_main .vp_planBox {
			display: flex;
			align-items: stretch;
			flex-direction: row;
			background-color: rgba(112,116,124,0.9);
			color: white;
			margin-bottom: 80px;
			text-decoration: none;
			transition: background-color 0.5s, box-shadow 0.5s;
			box-shadow: 0 0 0 rgba(0,0,0,0);
		}

			#vp_main .vp_planBox:hover { 
				background-color: rgba(125,129,138,1); 
				box-shadow: 0 0 1em rgba(0,0,0,0.35);				
			}

			#vp_main .vp_planBox h2 { 
				display: flex;
				flex-direction: column;
				justify-content: center;
				position: relative;
				background-color: #339d9d; 
				color: white;
				padding: 1em;
				margin: 0 50px 0 0;
				white-space: nowrap;
				transition: padding 0.25s;
			}

			#vp_main .vp_planBox h2 svg {
				position: absolute;
				height: 100%;
				width: 50px;
				left: 100%;
				top: 0;
				margin-left: -0.5px; /* to prevent a partial-pixel gap at some window sizes */
			}
					#vp_main .vp_planBox h2 svg polygon { fill: #339d9d; }

			#vp_main .vp_planBox > div { 
				margin: 15px 1.5em;
				transition: margin 0.25s;
				display: flex;
				justify-content: center;
				flex-direction: column;

				width: 100%; /* for IE11 */
			}

	#vp_main .vp_homeNews .vp_container {
		display: flex;
		padding-top: 2em;
		padding-bottom: 2em;
		transition: padding 0.25s;
	}

		.vp_homeNews .vp_container > div {
			display: flex;
			flex-basis: 50%;
			justify-content: center;
			flex-direction: column;
		}

			.vp_homeNews .vp_container > div:last-child {
				padding-left: 2em;
				border-left: 1px solid rgb(54,54,54);
				transition: padding 0.25s;
			}


		.vp_homeNews .vp_container > div > *:first-child { margin-top: 0; }
		.vp_homeNews .vp_container > div > *:last-child { margin-bottom: 0; }

		.vp_homeNews article { 
			padding: 1.5em 2em 1.5em 0;
			border-bottom: 1px solid rgb(54,54,54);
			transition: padding 0.25s;
		}

			.vp_homeNews article:first-child { padding-top: 0; }
			.vp_homeNews article:last-child { 
				padding-bottom: 0; 
				border-bottom: none;
			}

			.vp_homeNews article > *:first-child { margin-top: 0; }
			.vp_homeNews article > *:last-child { margin-bottom: 0; }

			.vp_homeNews .vp_homeVideo { max-width: 100%; }


	#vp_main .vp_photoBox {
		background-color: rgba(0,0,0,0.2);
		background-size: cover;
		background-position: center center;
		height: 415px;
		box-sizing: border-box;
		position: relative;
		margin-bottom: 1em;
		margin-top: 1.25em;
		transition: height 0.25s;
		
		display: block;
		color: inherit !important;
		text-decoration: none;
	}

		#vp_main .vp_photoBox::after {
			content: '';
			position: absolute;
			width: 100%;
			height: 100%;
			top: 0;
			left: 0;
			pointer-events: none;
			z-index: 1;
			background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0) 50%,rgba(0,0,0,0.95) 95%,rgba(0,0,0,0.95) 100%);
		}

			#vp_main .vp_photoBox > div {
				position: absolute;
				bottom: 0;
				left: 0;
				width: 100%;
				z-index: 2;
			}

				#vp_main .vp_photoBox > div > * {
					margin: 15px;
				}

				#vp_main .vp_photoBox a {
				}

				#vp_main .vp_photoBox h3 {
					font-size: 30px;
					/* white-space: nowrap; */
					line-height: 1.125em;
					transition: font-size 0.25s;
				}

				#vp_main .vp_photoBox p {
					line-height: 1.125em;
				}

	#vp_main .vp_split .vp_container > div {
		display: flex;
	}

		#vp_main .vp_split .vp_splitCol {
			flex: 50%;
			margin: 0.8em 1em 1em;
			transition: margin 0.25s;
		}

			#vp_main .vp_split .vp_splitCol:first-child { margin-left: 0; }
			#vp_main .vp_split .vp_splitCol:last-child { margin-right: 0; }

			#vp_main .vp_split .vp_debates { background-image: url("/staticfiles/Visit/assets/images/homepageLiveDebates.jpg"); }
			#vp_main .vp_split .vp_business { background-image: url("/staticfiles/Visit/assets/images/homepageBusinessVisits.jpg"); }

			#vp_main .vp_split .vp_debatesSenate { background-image: url("/staticfiles/Visit/assets/images/debateSenate.jpg"); }
			#vp_main .vp_split .vp_debatesCommons { background-image: url("/staticfiles/Visit/assets/images/debateHouse.jpg"); }

			#vp_main .vp_split .vp_splitCol .vp_photoBox { margin-top: 0; }

			/*#vp_main .vp_split .vp_photoBox > div {
				display: flex;
				align-items: flex-end;
			}
			
				#vp_main .vp_split .vp_container .vp_splitCol > div > * {
					/* min-height: 42px; *//*
					min-height: 67.5px;	/* 2 h3 lines tall *//*
					display: flex;
					justify-content: center;
					flex-direction: column;

					max-width: 70%;
					min-width: 40%; 
					
				}

					#vp_main .vp_split .vp_container .vp_splitCol > div > h3 { min-width: 40%; } /* for IE11 *//*

					#vp_main .vp_split .vp_container .vp_splitCol > div > p { wixdth: 60%; }*/ /* for IE11 */

			#vp_main .vp_split .vp_photoBox > div {
				display: table;
			}
			
				#vp_main .vp_split .vp_container .vp_splitCol > div > * {
					display: table-cell;
					vertical-align: bottom;
				}

					#vp_main .vp_split .vp_container .vp_splitCol > div > h3 { padding: 15px 10px 15px 15px; } /* for IE11 */

					#vp_main .vp_split .vp_container .vp_splitCol > div > p { padding: 15px 15px 17px 10px; } /* for IE11 */

			#vp_main .vp_split.vp_debatesAndCommittees .vp_photoBox > div {
				display: block;
				align-items: unset;
			}
			
				#vp_main .vp_split.vp_debatesAndCommittees .vp_container .vp_photoBox > div > * {
					min-height: 0;
					display: block;
					justify-content: unset;
					flex-direction: unset;
				}

					#vp_main .vp_debatesAndCommittees .vp_photoBox h3 { white-space: normal; }

	#vp_main .vp_photoBox.vp_boutique { background-image: url("/staticfiles/Visit/assets/images/homepageBoutique.jpg"); }

	#vp_main .vp_photos { 
		width: 100%; 
		margin-bottom: 1em;
	}

.vp_events .vp_container { 
	display: flex; 
	flex-wrap: wrap;
	margin-bottom: 1em;\
}

.vp_events .vp_container > h2 { flex: 100%; }
.vp_events article { 
	/* flex: 50%; */
	width: 50%; /* instead of the 'flex' declaration above, for IE11 */
	box-sizing: border-box;
	padding-top: 2em;
	padding-bottom: 2em;
	padding-left: 166px;
	border-top: 1px solid rgb(54,54,54);
	position: relative;
	min-height: 234px;
	transition: padding 0.25s, min-height 0.25s;
}
.vp_events article:nth-of-type(1),
.vp_events article:nth-of-type(2) { 
	padding-top: 0; 
	border-top: none; 
	min-height: 194px;
}
.vp_events article:nth-of-type(1) img:first-of-type,
.vp_events article:nth-of-type(2) img:first-of-type { top: 0; }
.vp_events article:nth-of-type(2n) { padding-left: 206px; }
.vp_events article:nth-of-type(2n) img:first-of-type { margin-left: 2em; }
.vp_events article:nth-of-type(2n+1) { 
	border-right: 1px solid rgb(54,54,54); 
	padding-right: 1.75em;
}
.vp_events article:last-of-type {
	border-right: none;
	padding-right: 0;
}	
.vp_events article img:first-of-type { 
	position: absolute;
	left: 0;
	top: 40px;
	margin-top: 0.375em;
	transition: margin 0.25s, top 0.25s;
 }
.vp_events article h3 { 
	margin: 0 0 0.25em; 
	line-height: 1.25em;
	transition: margin 0.25s;
}
#visit .vp_events article p:first-of-type { margin-top: 0; }
#visit .vp_events article p { 
	font-size: 18px; 
	line-height: 1.25em;
	transition: font-size 0.25s
}
#visit .vp_events article a { color: #737373; }
#visit .vp_events article a:hover { color: #2c8888; }
#visit .vp_events article *:last-child { margin-bottom: 0; }

#vp_main nav { 
	display: table; 
	width: 100%;
	margin: -2em 0 1.5em;
	overflow: hidden;
}
#visit #vp_main nav > a{
	display: table-cell;
	padding: 0.75em 0.5em;
	font-size: 24px;
	text-align: center;
	vertical-align: middle;
	width: 25%;
	color: black;
	text-decoration: none;
	line-height: 1.25em;
	position: relative;
	transition: font-size 0.25s, width 0.25s;
}
#vp_main nav > a:nth-child(1) { background-color: rgb(192,192,192); }
#vp_main nav > a:nth-child(2) { background-color: rgb(209,209,209); }
#vp_main nav > a:nth-child(3) { background-color: rgb(239,239,239); }
#vp_main nav > a:nth-child(4) { background-color: rgb(251,251,251); }

#vp_main nav > a::before {
	content: '';
	position: absolute;
	top: 0;
	left: 50%;
	width: 27px;
	height: 11px;
	margin-left: -13px;
	background: url('/staticfiles/Visit/assets/images/subNavTick.png') no-repeat;
	top: -11px;
	transition: top 0.25s;
}
#vp_main nav > a:hover::before,
#vp_main nav:not(:hover) > a.vp_selected::before {
	top: 0;
}


#vp_main div.vp_banner {
	width: 100%;
	height: 350px;
	background-size: cover;
	background-repeat:no-repeat;		
}

/*Default Positionning*/
#vp_main div.vp_banner.vp_senateTour {
	background-position: 0px -700px;
}
#vp_main div.vp_banner.vp_houseTour {
	background-position: 0px -500px;
}
#vp_main div.vp_banner.vp_eastblockTour {
	background-position: 0px -800px;
}
#vp_main div.vp_banner.vp_schoolTour {
	background-position: 0px -500px;
}	

	#vp_main div.vp_banner.vp_senateTour { background-image: url('/staticfiles/Visit/assets/images/banner-visit-tourSenate.jpg') }
	#vp_main div.vp_banner.vp_houseTour { background-image: url('/staticfiles/Visit/assets/images/banner-visit-tourCommons.jpg') }
	#vp_main div.vp_banner.vp_eastblockTour { background-image: url('/staticfiles/Visit/assets/images/banner-visit-tourEastblock.jpg') }
	#vp_main div.vp_banner.vp_schoolTour { background-image: url('/staticfiles/Visit/assets/images/banner-visit-tourSchools.jpg') }
	#vp_main div.vp_banner.vp_visits { background-image: url('/staticfiles/Visit/assets/images/banner-visit-debatePage.jpg') }


	/*Positionning for small devices*/
@media screen and (max-width: 768px) and (min-width: 300px) {

	#vp_main div.vp_banner.vp_senateTour {
		background-position: center center;
	}
	#vp_main div.vp_banner.vp_houseTour {
		background-position: center center;
	}
	#vp_main div.vp_banner.vp_eastblockTour {
		background-position: center center;
	}
	#vp_main div.vp_banner.vp_schoolTour {
		background-position: center center;
	}	
		
}

	/*Positionning for Mediums devices*/
@media screen and (max-width: 1099px) and (min-width: 769px) {

	#vp_main div.vp_banner.vp_senateTour {
		background-position: 0px -110px;
	}
	#vp_main div.vp_banner.vp_houseTour {
		background-position: 0px -50px;
	}
	#vp_main div.vp_banner.vp_eastblockTour {
		background-position: 0px -170px;
	}
	#vp_main div.vp_banner.vp_schoolTour {
		background-position: 0px -150px;
	}
		
}

	/*Positionning for Mediums large devices*/
@media screen and (max-width: 1300px) and (min-width: 1100px) {

	#vp_main div.vp_banner.vp_senateTour {
		background-position: 0px -250px;
	}
	#vp_main div.vp_banner.vp_houseTour {
		background-position: 0px -220px;
	}
	#vp_main div.vp_banner.vp_eastblockTour {
		background-position: 0px -300px;
	}
	#vp_main div.vp_banner.vp_schoolTour {
		background-position: 0px -200px;
	}
		
}

	/*Positionning for Desktop*/
@media screen and (max-width: 1900px) and (min-width: 1301px) {

	#vp_main div.vp_banner.vp_senateTour {
		background-position: 0px /*-400px;*/ -370px;
	}
	#vp_main div.vp_banner.vp_houseTour {
		background-position: 0px /*-400px;*/  -300px;
	}
	#vp_main div.vp_banner.vp_eastblockTour {
		background-position: 0px -500px;
	}
	#vp_main div.vp_banner.vp_schoolTour {
		background-position: 0px -250px;
	}
		
}

	#vp_main div.vp_banner button.reserve {
		margin: 0.5em;
		display: none;
	}



.vp_map {
	float: right;
	margin: 0 0 1em 1em;
	transition: width 0.25s, margin 0.25s;
	width: 564px;
	height: 327px;
}

.vp_mapInfoWindow { 
	font-family: 'Open Sans', sans-serif; 
	font-size: 14px;
	font-weight: 400;
}

	.vp_mapInfoWindow h4 {
		text-transform: uppercase;
		font-size: 18px;
		font-weight: 400;
		margin: 0;
	}

	.vp_mapInfoWindow h5 {
		text-transform: uppercase;
		font-size: 14px;
		font-weight: 400;
		margin: 0;
	}

	.vp_mapInfoWindow .directions_link {
		display: block;
		text-align: right;
		margin-top: 1em;
	}

		.vp_mapInfoWindow .directions_link::after { content: ' >'; }

.vp_news .vp_container { 
	display: flex; 
	flex-wrap: wrap;
	margin-bottom: 1em;
}

.vp_news .vp_container > h2 { 
	/* flex: 100%; */
	width: 100%; /* instead of the 'flex' declaration above, for IE11 */
}
.vp_news article { 
	/* flex: 50%; */
	width: 50%; /* instead of the 'flex' declaration above, for IE11 */
	box-sizing: border-box;
	padding-top: 1em;
}
.vp_news article:nth-of-type(1),
.vp_news article:nth-of-type(2) { padding-top: 0; }
.vp_news article:nth-of-type(2n) { padding-left: 1.5em; }
.vp_news article:nth-of-type(2n+1) { 
	border-right: 1px solid rgb(54,54,54); 
	padding-right: 1.25em;
}
.vp_news article:last-of-type {
	border-right: none;
	padding-right: 0;
}
.vp_news article *:first-child { margin-top: 0; }
.vp_news article *:last-child { margin-bottom: 0; }
.vp_news i.fas,
.vp_homeNews i.fas { margin-right: 5px; }
.vp_news i.fas:first-child,
.vp_homeNews i.fas:first-child { font-size: 24px; vertical-align: baseline; }

.vp_mapArea { position: relative; }
.vp_mapArea .vp_mapSidebar { 
	position: absolute;
	top: 0;
	right: 0;
}
.vp_planmap { height: 490px; margin-right: 336px; }

.vp_planIntro button.reserve {
	float: none;
	margin: 0;
}

.vp_mapLocation {
	background-color: rgb(245,245,245);
	padding: 0.5em 0 0.5em 4em;
	color: rgb(54,54,54);
	margin: 1em 0 2em;
	font-size: 14px;
	position: relative;
	width: 260px;
	min-height: 66px;
	cursor: pointer;

	display: flex;
	flex-direction: column;
	justify-content: center;

	transition: background-color 0.25s;
}
	.vp_mapLocation:first-of-type { margin-top: 2em; }

	.vp_mapLocation:hover {
		background-color: rgb(219,219,219);
		color: black;
	}
	.vp_mapLocation::before {
		content: '\f3c5';
		font-family: 'Font Awesome 5 Free';
		font-weight: 900;
		position: absolute;
		left: 0.375em;
		font-size: 36px;
	}
		.vp_mapLocation.vp_senate::before { color: #642b2b; }
		.vp_mapLocation.vp_commons::before { color: #4a682e; }
		.vp_mapLocation.vp_eastblock::before { color: #949292; }
		.vp_mapLocation:hover::before {
			text-shadow: 0 0 7px rgba(255,255,255,0.5);
		}

	.vp_mapLocation h4,
	.vp_mapLocation h5 {
		font-weight: 400;
		color: inherit;
		margin: 0;
		text-transform: uppercase;
	}
	.vp_mapLocation h4 { font-size: 18px; }
	.vp_mapLocation h5 { font-size: 14px; }


#photoGalleries {
	margin: 0 -5px;
}

	#photoGalleries div {
		background-size: cover;
		background-position: center;
		border: 5px solid white;
		box-sizing: border-box;
	}

		#photoGalleries div::after {
			content: '';
			position: absolute;
			width: 100%;
			height: 100%;
			top: 0;
			left: 0;
			pointer-events: none;
			z-index: 1;
			background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0) 50%,rgba(0,0,0,0.95) 95%,rgba(0,0,0,0.95) 100%);
		}	

		#visit #photoGalleries div a {
			display: block;
			position: absolute;
			width: 100%;
			height: 100%;
			display: flex;	
			box-sizing: border-box;
			padding: 0.5em 0.75em;	
			color: white;
			text-decoration: none;
			line-height: 1.25em;
			font-size: 18px;
			text-shadow: 0 0 4px rgba(0,0,0,0.6);
			z-index: 2;
		}

		#photoGalleries div a span { align-self: flex-end; }

		#photoGalleries div:nth-child(odd) {
			width:20%;
			height:300px;
		}
		#photoGalleries div:nth-child(even) {
			width:40%;
			height:200px;
		}


.vp_youTube {
	padding-bottom: 56.25%;
	height: 0;
	position: relative;
}

	.vp_youTube iframe {
		position: absolute;
		width: 100%;
		height: 100%;
	}

.vp_vidThumbs ul {
	padding: 0;
	margin: 0.5em -0.5em;
	display: flex;
	flex-wrap: wrap;
	list-style: none;
}

	.vp_vidThumbs ul li {
		/* flex-basis: calc(100%/6); */
		width: 16.666%; /* instead of the 'flex-basis' declaration above, for IE11 */
		                /* also rounded to 16.666% instead of the calc() for IE11, where 6*100%/6 was sometimes > 100% */
		box-sizing: border-box;
		padding: 0.5em;
		position: relative;
	}

		#vp_main .vp_vidThumbs ul li a {
			color: white;
			text-decoration: none;
		}

		.vp_vidThumbs ul li img {
			max-width: 100%;
			display: block;
		}

		.vp_vidThumbs ul li span {
			font-size: 16px;
			padding: 0.25em;
			line-height: 1.25em;
			display: block;
		}

 .vp_virtualTour img {
 	float: left;
 	margin-right: 1em;
 	margin-bottom: 0.75em;
 	max-width: 100%;
 }



	@media screen and (max-width: 920px) {

		#search-bar li,
		#search-bar li span { display: none; }
		#search-bar li:nth-last-child(1),
		#search-bar li:nth-last-child(2) { display: inline-block; }
		#search-bar li a { padding: 18px 10px; }

		.vp_map {
			float: none;
			width: 100%;
			margin: 1.25em 0 1em;
		}

 		.vp_virtualTour img {
 			float: none;
 			margin: 1.25em 0 0;
 		}

	}

	@media screen and (max-width: 768px) {

		#visit html[lang="fr-CA"] #vp_main .vp_planBox h2 { 
			white-space: normal; 
			-ms-flex: 50%; /* for IE11, so text will wrap */
		}

		#visit #vp_main .vp_homeNews .vp_container { flex-direction: column; }
		#visit .vp_homeNews .vp_container > div { /* Safari <=10 workaround; https://github.com/philipwalton/flexbugs#flexbug-1 */
			flex-shrink: 0;
			flex-basis: auto;
		}
		#visit .vp_homeNews article {
			padding-left: 0;
			padding-right: 0;
		}
		#visit .vp_homeNews article:last-child { padding-bottom: 1.5em; }
		#visit .vp_homeNews .vp_container > div:last-child {
			border-left: none;
			border-top: 1px solid rgb(54,54,54);
			padding: 1.5em 0;
		}

		#visit #vp_main .vp_split .vp_container > div { display: block; }
		#visit #vp_main .vp_split .vp_splitCol { margin-left: 0; margin-right: 0; }

		#visit #vp_main .vp_split.vp_debatesAndCommittees .vp_splitCol { 
			margin-bottom: 2em;
			padding-bottom: 1em;
			border-bottom: 1px solid white;
		}
		/*
		#vp_main .vp_split.vp_debatesAndCommittees .vp_splitCol:last-child { 
			border-bottom: none;
			margin-bottom: 0;
		}
		*/

		#visit .vp_events .vp_container { display: block; }
		#visit #vp_main > .vp_events .vp_container > h2 { margin-bottom: 0.278em; }
		#visit #vp_main > section:not(.vp_compact) h2 { margin-bottom: 0.5em; }
		#visit #vp_main > section.vp_virtualTour h2 { margin-bottom: 0; }
		#visit .vp_events article {
			width: auto; /* to compensate for the 'width: 50%' declared for IE11 */
			padding: 1em 0 1em 160px !important;
			border-right: none !important;
			border-left: none !important;
			min-height: 194px;
		}
		#visit .vp_events article:nth-of-type(2) { border-top: 1px solid rgb(54,54,54); }
		#visit .vp_events article:nth-of-type(2n) img:first-of-type { margin-left: 0; }
		#visit .vp_events article img:first-of-type { top: 18px !important; }

		#visit .vp_planmap { margin-right: 0; }
		#visit .vp_mapArea .vp_mapSidebar {
			position: relative;
			top: auto;
			right: auto;
			text-align: center;
		}
		#visit .vp_mapLocation { 
			width: auto; 
			margin: 1em 0;
			text-align: left;
		}
		#visit .vp_mapLocation:first-of-type { margin-top: 1em; }

		#photoGalleries div:nth-child(odd) {
			width:25%;
			height:300px;
		}
		#visit #photoGalleries div:nth-child(even) {
			width:50%;
			height:200px;
		}
		#visit #photoGalleries div a { font-size: 16px; }

		#visit .vp_vidThumbs ul li { flex-basis: calc(100%/5); }	

	}

	@media screen and (max-width: 640px) {

		#visit button { font-size: 18px; }

		#visit html[lang="fr-CA"] #vp_main .vp_planBox h2 { 
			white-space: nowrap; 
			-ms-flex: auto; /* for IE11, so text will wrap */
		}

		#visit #vp_main .vp_introBox { margin-top: 40px; margin-bottom: 70px; }
		#visit #top-navbar { padding-bottom: 10px; }
		#visit #top-navbar h1 { font-size: 28px; margin-top: 35px; }
		#visit h2 { font-size: 24px; }
		#visit h2.mixed > span { font-size: 0.75em; }
		#visit h3 { font-size: 18px; }
		#visit #vp_main { font-size: 16px; }
		#visit #vp_main .vp_introBox h2 { padding-top: 0.25em; margin-bottom: 35px;}
		#visit #vp_main .vp_introBox h2 svg { height: 25px; }
		#visit #vp_main .vp_introBox p { margin: 0 1em 0.875em; }
		#visit #vp_main nav {
			display: flex;
			flex-wrap: wrap;
		}
		#visit #vp_main nav > a {
			display: flex;
			align-items: center;
			justify-content: center;
			width: 50%;
			box-sizing: border-box;
			font-size: 16px;
			/* height: 44px;
			float: left; */
			overflow: hidden;
		}
		#visit #vp_main .vp_planBox > div { margin: 0 1em; }

		#visit #vp_main .vp_photoBox { height: 245px; }
		#visit #vp_main .vp_photoBox h3 { font-size: 18px; white-space: normal; }
		#visit #vp_main .vp_split .vp_container .vp_splitCol > div > * { min-height: 40.5px; }	/* 2 h3 lines tall */

		#visit #vp_main .vp_split .vp_splitCol { margin-top: 1.125em; }		

		#visit .vp_events article { 
			min-height: 0 !important;
			padding: 1em 0 !important;
		}
		#visit .vp_events article::after { 
			content: '';
			display: table;
			clear: both;
		}
		#visit .vp_events article h3 { margin-bottom: 10px; }
		#visit .vp_events article p { font-size: 16px; } 
		#visit .vp_events article img:first-of-type { 
			float: left;
			position: relative;
			margin: 0 0.75em 0.75em 0;
			top: 0 !important;
		}

		#visit #vp_main .vp_tourIntro button.reserve { display: none; }
		#visit #vp_main div.vp_banner button.reserve { display: block; }

		#visit #vp_main > section.vp_compact h2 {
			float: none;
			margin-right: 0;
		}

		#visit .vp_mapLocation h4 { font-size: 14px; }
		#visit .vp_mapLocation h5 { font-size: 12px; }

		#visit .vp_news .vp_container { flex-direction: column; }
		#visit .vp_news article {
			width: auto; /* to compensate for the 'width: 50%' declared for IE11 */
			padding: 1em 0 !important;
			border-right: none !important;
			border-bottom: 1px solid rgb(54,54,54);
		}
		#visit .vp_news article:last-child { border-bottom: none; }

		#visit #photoGalleries div:nth-child(odd) {
			width: calc(100%/3);
			height: 300px;
		}
		#visit #photoGalleries div:nth-child(even) {
			width: calc(200%/3);
			height: 200px;
		}
		#photoGalleries div a { font-size: 16px; }

		#visit .vp_vidThumbs ul li { flex-basis: calc(100%/4); }
		#visit .vp_vidThumbs ul li span { font-size: 14px; }

	}

	@media screen and (max-width: 480px) {

		#visit #vp_main .vp_planBox h2,
		#visit html[lang="fr-CA"] #vp_main .vp_planBox h2 { 
			white-space: normal; 
			padding-right: 0;
			-ms-flex: 100%; /* for IE11, so text will wrap */
		}
		#visit #vp_main nav > a:hover::before,
		#visit #vp_main nav:not(:hover) > a.vp_selected::before { top: -2px; }

		#visit .vp_planmap { height: 320px; }

		#visit .vp_mapInfoWindow h5 { max-width: 200px; }

		#visit #photoGalleries div:nth-child(3n+1),
		#visit #photoGalleries div:nth-child(3n+2) {
			width: 50%;
			height: 300px;
		}
		#visit #photoGalleries div:nth-child(3n) {
			width: 100%;
			height: 200px;
		}

		#visit .vp_vidThumbs ul li { flex-basis: calc(100%/3); }
	
	}

	@media screen and (max-width: 359px) {

		#visit #vp_main nav > a { 
			font-size: 14px; 
			/* height: 38px; */
		}
		#visit #vp_main nav > a:hover::before,
		#visit #vp_main nav:not(:hover) > a.vp_selected::before { top: -4px; }
	}