h1, h2 {
	margin: 0;
}

.bg_main { background: linear-gradient( 90deg, #EEE 0%, #CCC 100%); }
.bg_section_heading { background: linear-gradient( 90deg, #CBB 0%, #A88 100%); }

.text_hero { color: black; }
.text_hero_sub { color: black; }
.text_hero_super { color: black; }
.text_section { color: black; }

.documents_ul { line-height: 2; }

.menu_item {
	/*height: 24pt; padding: 8pt;*/
	font-size: large;
	display: flex; align-items: center; justify-content: center;
}

.header {
	height: 64px;

	display: flex;
	align-items: center;
	/*justify-content: space-between;*/
	justify-content: flex-end;

	user-select: none;
}

#hero_layer {
	display: flex;
	align-items: start;
	justify-content: center;

	pointer-events: none;

	transition: opacity 0.25s ease-in;
}

#hero_section {
	height: 100%;
	width: 100%;
	display: flex;
}

#hero_text_content {
	flex: 1;

	/*background-color: rgba( 0, 0, 0, 0.5 );*/
	/*background: linear-gradient( 90deg, #A88 0%, #DCC 100%);*/
	/*color: black;*/

	font-size: large;
	padding: 8pt;

	display: flex;
	flex-direction: column;
	align-items: center;
	/*justify-content: center;*/
	justify-content: space-evenly;

	user-select: none;
}

#hero_title {
	font-size: 48pt;
}

#hero_title_super, #hero_title_sub {
	text-align: center;
	font-size: large;
}

#hero_leader_text {
	max-width: 80%;
	text-align: center;
	line-height: 1.5;
}

#hero_button {
	display: inline-block;
	padding-top: 1pt;
	padding-bottom: 1pt;
	padding-left: 4pt;
	padding-right: 4pt;
	border-radius: 6pt;
	/*position: absolute;
	top: 128pt;
	left: 50%;*/
	background-color: white;
	/*color: black;*/

	pointer-events: all;

	box-shadow: 0px 0px 3px rgba(0, 0, 0, 1);
}

#map_scrollable_container {
	overflow: hidden;
	height: 100%;
	display: flex;
	flex-direction: column;
	align-items: end;
}

#hero_map {
	position: relative;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	height: 100%;
	flex: 2;
}

#hero_map_inset {
	position: relative;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	height: 100%;
	box-sizing: border-box;
	padding: 16pt;
}


#content_sections {
	pointer-events: none;
}

.content_section_container {
	user-select: none;
}

.content_section_heading {
	/*padding: 8pt;
	padding-bottom: 4pt; allow dipping letters to drop below baseline */

	padding: 4pt;
	padding-left: 8pt;

	border-top: 1px solid black;
	border-bottom: 1px solid black;

	/* ensure that the box-shadow is over top of the content that follows */
	position: relative;
	z-index: 1;
	box-shadow: 0px 0px 12px black;

	text-shadow: 0 0 4px white;
}

.content_section {
	pointer-events: all;
	padding: 8pt;

	/*box-shadow: 0px 0px 16px rgba(0, 0, 0, 1);*/

	position: relative;
	z-index: 0;

	font-size: large;
}

#amenity_list {
	columns: 2;
}

.photo_container {
	/*width: 100%;*/
	margin: 8pt;
}

.photo {
	display: block;
	max-width: 100%;
	height: 100%;
	/*aspect-ratio: 1;*/

	/*margin: 0;
	padding: 0;*/
	background-color: rgba( 0, 0, 0, 0.25 );

	box-sizing: border-box;
	border: 1px solid black;
}

#sticky_header {
	position: absolute;
	z-index: 2;
	top: 0;
	left: 0;
	right: 0;
	/*height: 64px;*/

	transition: background-color 0.1s ease-in;
}

#menu_container {
	/*display: flex;
	flex-direction: column;
	align-items: center;*/

	position: absolute;
	z-index: 2;
	top: 0;
	left: 50%;
	right: 0;
	bottom: 0;
	padding: 8pt;
	background-color: white;
	color: black;

	display: flex;
	flex-direction: column;
	align-items: center;
	user-select: none;

	box-shadow: 0px 0px 12px black;

	transition: opacity 150ms ease-in;
}

#menu_items {
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: space-around;
}

.box_shadow_menu_button {
	box-shadow: 0px 0px 12px black;
}

#menu_button {
	/*font-size: 36pt;*/
	height: 28pt;
	width: 28pt;

	position: relative;
	z-index: 3;

	/*margin-left: 8px;*/
	margin-right: 8px;

	border-radius: 8px;

	display: flex;
	align-items: center;
	justify-content: center;
}


#contact_block {
	display: flex;
	justify-content: space-between;
}

.contact_item {
	/*margin-right: 16pt;*/
	display: flex;
	flex-direction: column;
}

.contact_heading {
	font-style: italic;
	margin-bottom: 4pt;
	text-align: center;
}

.contact_details {
	background-color: white;
	border: 1px dotted black;
	padding: 8pt;
	font-weight: bold;
	overflow: hidden;
}

.contact_selectall {
	user-select: all;
}


@media screen and ( orientation: portrait ) {
	#hero_section {
		flex-direction: column;
	}
	#hero_leader_text {
		max-width: 60%;
	}
	#menu_container {
		left: 0;
		bottom: 50%;
	}
	#contact_block {
		flex-direction: column;
	}
	.contact_item {
		margin-bottom: 16pt;
		margin-right: 0;
	}
	.contact_heading {
		text-align: left;
	}
}

@media screen and ( max-width: 800px ) {
	#hero_title {
		font-size: 36pt;
	}
	#hero_text_content {
		font-size: medium;
	}
	#hero_leader_text {
		margin-top: 12pt;
	}
	#hero_title_super, #hero_title_sub {
		font-size: small;
	}
	#amenity_list {
		columns: 1;
	}	
}

@media screen and ( min-width: 800px ) {
	.gutters {
		padding-left: 64pt;
		padding-right: 64pt;
	}
	#hero_title {
		font-size: 48pt;
	}
	#hero_text_content {
		font-size: 16pt;
	}
	#hero_title_super, #hero_title_sub {
		font-size: 16pt;
	}
}

@media screen and ( max-width: 640px ) {
	#contact_block {
		flex-direction: column;
	}
	.contact_item {
		margin-bottom: 16pt;
	}
	.contact_heading {
		text-align: left;
	}
}
