body {
	cursor: default;
	margin: 0;
	padding: 0;
	width: 100vw;
	height: 100vh;
	font-family: 'Muli', Arial, Helvetica, sans-serif;
	font: 12px;
	background: black;
	overflow: hidden;
}

.toggle > body {overflow: hidden;}

/* Prevent overscroll bouncing on touchscreen */
@media (pointer: coarse) {

  html {overflow: hidden; width:100%;}

	/* Removed 'positon: fixed' as solution to main menu not opening on iPhone */
  body {height: 100%;}
}

section > a > h2, section > a > h2:link,
section > a > h2:visited, section > a > h2:hover,
section > a > h2:active,
section > a > h3, section > a > h3:link,
section > a > h3:visited, section > a > h3:hover,
section > a > h3:active {
	color: black;
	font-weight: 900;
	text-decoration: none;
}

section > a > p, section > a > p:link,
section > a > p:visited, section > a > p:hover,
section > a > p:active,
section > p > a,
section > p > a:link,
section > p > a:visited,
section > p > a:hover,
section > p > a:active,
section > a > ul > li, section > a > ul > li:link,
section > a > ul > li:visited, section > a > ul > li:hover,
section > a > ul > li:active {
	color: black;
	font-weight: 900;
	text-decoration: none;
}


section > a, section > a:link,
section > a:visited, section > a:hover,
section > a:active {
  text-decoration: none;
  font-weight: 400;
}

button.threed_rotate::before,
button.labels-button::before,
button.labels-off-button::before,
button.light-style-button::before,
button.dark-style-button::before,
button.satellite-style-button::before {
	font-family: "Material Icons";
	font-feature-settings: 'liga';
	font-size: 20px;
	line-height: 24px;
	vertical-align: middle;
}

button.modal-button::before {
	font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;
	font-feature-settings: 'liga';
	font-size: 20px;
	line-height: 24px;
	vertical-align: middle;
}

button.threed_rotate::before{content: "3d_rotation";}

button.labels-button::before{content: "label";}

button.labels-off-button::before{content: "label_off";}

button.light-style-button::before{content: "brightness_5";}

button.dark-style-button::before{content: "brightness_4";}

button.satellite-style-button::before{content: "satellite";}

button.modal-button::before {content: "?";}

/* Hint labels */
#labelTogglePitch,
#labelToggleLabels,
#labelMapTheme,
#labelMoreInfo,
#labelFlyTo {
	/* REVIEW: Changed from position: absolute to avoid iOS overscroll */
	z-index: 100000;
	position: fixed;
	display: none;
	max-width: 500px;
	height: 30px;
	right: 60px;
	padding: 5px 10px;
	background-color: rgba(255,255,255,1);
	color: black;
	text-align: center;
	border-top-left-radius: 6px;
	border-bottom-left-radius: 6px;
	cursor: default;
}

#labelTogglePitch {top: 110px; width: 87px;}
#labelToggleLabels {top: 150px; width: 99.5px;}
#labelMapTheme {top: 190px; width: 112px;}
#labelMoreInfo {top: 230px; width: 124.5px;}
#labelFlyTo {top: 270px; width: 137px;}

#labelTogglePitch::after,
#labelToggleLabels::after,
#labelMapTheme::after,
#labelMoreInfo::after,
#labelFlyTo::after {
	left: 100%;
	top: 50%;
	content: " ";
	border: solid transparent;
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(255,255,255,0);
	border-left-color: rgba(255,255,255,1);
	border-width: 15px;
	margin-top: -15px;
}

#labelMainMenu,
#labelStoryMenu {
	/* REVIEW: Changed from position: absolute to avoid iOS overscroll */
	z-index: 100000;
	position: fixed;
	display: none;
	max-width: 500px;
	height: 30px;
	left: 175px;
	padding: 5px 10px;
	background-color: rgba(255,255,255,1);
	color: black;
	text-align: center;
	border-top-right-radius: 6px;
	border-bottom-right-radius: 6px;
	cursor: default;
}

#labelMainMenu {top: 42.5px; width: 150px;}
#labelStoryMenu {top: 105px; width: 165.5px;}


#labelMainMenu::after,
#labelStoryMenu::after {
	right: 100%;
	top: 50%;
	content: " ";
	border: solid transparent;
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(255,255,255,0);
	border-right-color: rgba(255,255,255,1);
	border-width: 15px;
	margin-top: -15px;
}

#wrapper, #wrapperFeatures {
	width: 100vw;
	height: 100vh;
	z-index: 10000;
}

#features {
  position: absolute;
  width: 500px;
  height: 100%;
  left: -505px;
  max-width: 50%;
  top: 0;
  overflow-x: hidden;
	overflow-y: auto;
	/* scrollingPrompt */
	scroll-behavior: smooth;
  color: #fff;
  background-color: rgba(255, 255, 255, 0.8);
  padding-left: 35px;
  z-index: 10000;
	-webkit-transition: left 0.2s linear;
	transition: left 0.2s linear;
  cursor: default;
	direction: rtl;
}

#wrapperFeatures.switch>#features {
  pointer-events: none;
}

#wrapperFeatures.toggle>#features {
	left: 0px;
}

#startStopPresentationBtn {
	padding: 10px 20px 10px 0;
	z-index: 1000000;
	top: 66px;
	left: -455px;
	width: 56px;
	height: 56px;
	position: fixed;
	cursor: pointer;
	-webkit-transition: left 0.2s linear;
	transition: left 0.2s linear;
	opacity: 0.9;
}

#wrapperFeatures.toggle>#startStopPresentationBtn {
	left: 10px;
}
#wrapperFeatures.toggle>#startStopPresentationBtn:hover,
#wrapperFeatures.toggle>#startStopPresentationBtn:active {
  opacity: 1;
}

#startStopPresentationBtn > i {
	font-size: 36px;
}

/* Hide scroll prompt when not .active */
#scrollingPrompt {display: none;}

#scrollingPrompt.active {
	display: block;
	z-index: 1000000;
	bottom: 54px;
	left: -455px;
	width: 54px;
	height: 54px;
	position: fixed;
	cursor: pointer;
	background-color: #fff;
	border-radius: 43px;
	box-shadow: 0 2px 8px 2px rgba(0,0,0, 0.3);
	-webkit-transition: left 0.2s linear;
	transition: left 0.2s linear;
	opacity: 0.75;
}

#wrapperFeatures.toggle>#scrollingPrompt.active {
	left: 225px;
}
#wrapperFeatures.toggle>#scrollingPrompt.active:hover,
#wrapperFeatures.toggle>#scrollingPrompt.active:active {
  opacity: 1;
}

#scrollingPrompt.active > i {
	position: absolute;
	font-size: 54px;
  top: 2px;
}

#featuresExpand {display: none;}

section {
	overflow: hidden;
	padding:  50px 20px 0px 20px;
	margin-bottom: 20px;
	opacity: 0.25;
	font-size: 16px;
	direction: ltr;
}
section.active {
  opacity: 1;
}
section:last-child {
  border-bottom: none;
  margin-bottom: 1000px;
}

section > p > a.section-link {
	color: #499ffc;
}

section#home > a > h2,
section#home > a > h3,
section#home > a > p {
	color: #F17221;
}

.lead-sponsors > a > img {
	display: inline-block;
	margin: 10px 30px 10px 0;
}

.associate-sponsors {
	margin: 10px 0;
}

.associate-sponsors > a > img {
	display: inline-block;
	margin: 10px 20px 10px 0;
}

#fairviewLogo {margin: 10px 40px 10px 20px;}

.story-image {
	max-width: 415px;
}

.story-cwl-logo, .story-wlb-logo {
	margin-right: 30px;
	max-width: 140px;
}

.story-wlb-strapline {
	width: 100%;
	max-width: 415px;
}

.credits-wlb-logo {
	max-width: 455px;
}

#img {
  width: 100%;
  display: block;
}

/* Close Features Menu */
#menuClose {
  padding: 10px 10px;
	z-index: 1000000;
	top: 10px;
  left: -455px;
	width: 56px;
	height: 56px;
  position: fixed;
  cursor: pointer;
	-webkit-transition: left 0.2s linear;
	transition: left 0.2s linear;
  opacity: 0.7;
}
#wrapperFeatures.toggle>#menuClose {
	left: 10px;
}
#wrapperFeatures.toggle>#menuClose:hover,
#wrapperFeatures.toggle>#menuClose:active {
  opacity: 0;
}

/* ScrollTop DESKTOP */
#scrollTop {
  padding: 10px 10px;
	z-index: 1000000;
	bottom: 20px;
  left: -455px;
	width: 56px;
	height: 56px;
  position: fixed;
  cursor: pointer;
	-webkit-transition: left 0.2s linear;
	transition: left 0.2s linear;
  opacity: 0.95;
}

img#scroll {
	width: 36px;
	height: 36px;
}

#wrapperFeatures.toggle>div#scrollTop {
	left: 10px;
}

#wrapperFeatures.toggle>div#scrollTop:hover,
#wrapperFeatures.toggle>div#scrollTop:active {
  opacity: 1;
}

#sidebar {
	z-index: 10000;
	position: absolute;
	left: -355px; /* extra 5px to ensure it's not rendered */
	width: 350px;
	top: 0;
	max-width: 90%;
	height: 100%;
	overflow-x: hidden;
	overflow-y: auto;
  direction: rtl;
	color: #333;
  background-color: rgba(255, 255, 255, 0.9);
	border-right: 1px solid #ddd;
	box-shadow: 0 -1px 24px rgba(0, 0, 0, 0.4);

	-webkit-transition: left 0.2s linear;
	transition: left 0.2s linear;
}

#sidebar * {
	direction: ltr;
}

/* Horizontal Scroll Buttons MOBILE */
#nextFeature,
#prevFeature{
  visibility: hidden;
}

.scrollbar-primary::-webkit-scrollbar {
  width: 10px;
	background-color: rgba(0,0,0,0);
}

.scrollbar-primary::-webkit-scrollbar-thumb {
	border-radius: 10px;
  -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0);
  background-color: #ffb300;
}

#wrapper.toggle>#sidebar {
	left: 0;
}

#sidebar label {
	position: relative;
	display: flex;
	align-items: center;
	height: 34px;
	padding: 10px 20px;
	cursor: pointer;
}

#sidebar i {
	margin: 5px 10px;
	width: 24px;
	height: 24px;
}

label.shown {
	color: #535654;
}

body:not(.touch) #sidebar label:hover, #sidebar label.selected {
	opacity: 0.7;
}

#wrapper.toggle>#main {
	opacity: 0.7;
}

#wrapper.toggle>#main * {
	pointer-events: none;
}

#main {
	width: 100%;
	height: 100%;
}

#map {
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	/* For full-screen map on iOS Chrome - min-width: 100vw */
	min-width: 100vw;
	height: 100%;
}

#menu.arrow {
	text-align: center;
	height: 60px;
	margin: -4px 0px 0px -60px ;
	opacity: 0.85;
	cursor: pointer;
}

.wideArrow {
	max-height: 30px;
	margin-top: 8.5px;
	margin-bottom: 8.5px;
}

.narrowArrow {display: none;}

.maintained {
	padding-bottom: 10px;
}

#carouselButtons {
		position: absolute;
		left: 4px;
    bottom: 2px;
		color: white;
		opacity: 0.6;
}

a.right.carousel-control,
a.left.carousel-control {
	height: 90%;
	background-image: none;
	text-shadow: 0 2px 3px rgba(0,0,0,.9);
}

.playpause{
	color: white;
	cursor: pointer;
}

.playpause:hover{
	color: white;
	opacity: 0.9;
	text-decoration: none;
}

#contact {
	width: 85%;
}
.contact{
	float: left;
}

#wlbLogo {
	width: 10%;
  margin-top: 2px;
	float: right;
}

#bwb {
	opacity: 0.8;
	width: 70px;
	height: 41px;
}

#bwb:hover {
	opacity: 1;
}

#deetu {
	opacity: 0.8;
}

#deetu:hover {
	opacity: 1;
}

#explore {
	opacity: 0.8;
	height: 25px;
}

#explore:hover {
	opacity: 1;
}

#sidebarMenu, #menu {
	background-color: rgba(255,255,255, 0.9);
	z-index: 1000;
	color: grey;
	text-decoration: none;
	cursor: pointer;
}

#sidebarMenu {
	position: fixed;
	padding: 15px 10px 5px 20px;
	top: 20px;
	left: 0px;
  border-top-right-radius: 2em;
	width: 155px;
	height: 67px;
}

#sidebarMenu > img {
	margin-right: 0;
	width: 109px;
}

#menu {
	position: absolute;
	padding: 10px 10px 10px 20px;
	bottom: calc(100% - 156px);
	right: calc(100vw - 155px);
  border-bottom-right-radius: 2em;
	width: 155px;
}

.deetu-static {
	position: fixed;
	width: 100px;
	bottom: 10px;
	right: 10px;
	z-index: 10000;
}

#reset {
	display: flex;
	align-items: center;
	justify-content: center;
	color: #555;
	font-size: 0.95em;
	cursor: pointer;
	padding: 5px 10px;
	border: 1px solid #ccc;
	border-radius: 3px;
	background: #eee;
}

#reset>i {
	width: 20px;
	height: 20px;
	font-size: 20px;
	margin: 0;
	margin-right: 10px;
}

label[for="filter__commercial"].shown {
	color: #ec3194;
}

label[for="filter__education"].shown {
	color: #fdc53e;
}

label[for="filter__mixeduse"].shown {
	color: #d1d807;
}

label[for="filter__office"].shown {
	color: #4f5a9a;
}

label[for="filter__residential"].shown {
	color: #ee3f36;
}

label[for="bgBuildings"].shown {
	color: #828282;
}

label[for="business_regions"].shown {
	color: #95122c;
}

label[for="opportunity_areas"].shown {
	color: #fe5200;
}

label[for="greenspaces"].shown {
	color: #95ab00;
}

label[for="partners"].shown {
	color: #000;
}

label[for="heathrow_pin"].shown {
	color: #000;
}

label[for="heathrow_boundary"].shown {
	color: #95122c;
}

label[for="greater_london"].shown {
	color: rgba(77,82,92,0.3);
}

label[for="heathrow_southern"].shown {
	color: #00a661;
}

label[for="west_london_orbital"].shown {
	color: #ff8c00;
}

label[for="overground_line"].shown {
	color: #ff8c00;
}

label[for="crossrail"].shown {
	color: #8664c0;
}

label[for="hs2"].shown {
	color: #3b65cc;
}

label[for="golden_mile_line"].shown {
	color: #00b9f6;
}

.footer {
	padding-bottom: 30px;
	/* Inner flex layout */
	display: flex;
	justify-content: center;
	flex-direction: row;
	align-items: center;
}

.footer>* {
	color: #777;
	text-decoration: none;
	margin: 0 10px;
}

.centrer {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.wlb {
	padding-top: 10pt;
	padding-left: 25pt;
}

.wlb > a > img {
	width: 280px;
}

.wlb > h2 {
	font-weight: 900;
	font-family: 'Muli', Arial, Helvetica, sans-serif;
}

table {
	width: 100%;
}

th {
	text-align: left;
}

ul {
	padding-left: 20px;
}

#sidebar ul {
	padding-left: 0;
}

hr {
	border-color: #ddd transparent transparent transparent;
	border-style: solid;
}

#sidebar li {
	display: flex;
	align-items: center;
}

img {
	margin-right: 10px;
}

svg {
	width: 100%;
	height: 100%;
	stroke: currentColor;
	fill: currentColor;
}

label>span {
	position: relative;
	flex-grow: 1;
}

div.mapboxgl-ctrl-top-right {z-index: 100;}

.mapboxgl-ctrl-group > button.ctrl-button {
  width: 100%;
  padding: 0 5px;
	font-family: 'Arial';
}

.mapboxgl-ctrl-icon.mapboxgl-ctrl-compass > .mapboxgl-ctrl-compass-arrow.dark-ctrl {
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg'%3E %3Cpolygon fill='%23CCCCCC' points='6,9 10,1 14,9'/%3E %3Cpolygon fill='%23484848' points='6,11 10,19 14,11 '/%3E %3C/svg%3E");
}

.mapboxgl-ctrl-icon.mapboxgl-ctrl-zoom-in.dark-ctrl {
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath style='fill:%23CCCCCC;' d='M 10 6 C 9.446 6 9 6.4459904 9 7 L 9 9 L 7 9 C 6.446 9 6 9.446 6 10 C 6 10.554 6.446 11 7 11 L 9 11 L 9 13 C 9 13.55401 9.446 14 10 14 C 10.554 14 11 13.55401 11 13 L 11 11 L 13 11 C 13.554 11 14 10.554 14 10 C 14 9.446 13.554 9 13 9 L 11 9 L 11 7 C 11 6.4459904 10.554 6 10 6 z'/%3E %3C/svg%3E");
}

.mapboxgl-ctrl-icon.mapboxgl-ctrl-zoom-out.dark-ctrl {
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath style='fill:%23CCCCCC;' d='m 7,9 c -0.554,0 -1,0.446 -1,1 0,0.554 0.446,1 1,1 l 6,0 c 0.554,0 1,-0.446 1,-1 0,-0.554 -0.446,-1 -1,-1 z'/%3E %3C/svg%3E");
}

.mapboxgl-ctrl-icon.mapboxgl-ctrl-compass > .mapboxgl-ctrl-compass-arrow.presentation-dark-ctrl {
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg'%3E %3Cpolygon fill='%233d3d3d' points='6,9 10,1 14,9'/%3E %3Cpolygon fill='%23484848' points='6,11 10,19 14,11 '/%3E %3C/svg%3E");
}

.mapboxgl-ctrl-icon.mapboxgl-ctrl-zoom-in.presentation-dark-ctrl {
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath style='fill:%233d3d3d;' d='M 10 6 C 9.446 6 9 6.4459904 9 7 L 9 9 L 7 9 C 6.446 9 6 9.446 6 10 C 6 10.554 6.446 11 7 11 L 9 11 L 9 13 C 9 13.55401 9.446 14 10 14 C 10.554 14 11 13.55401 11 13 L 11 11 L 13 11 C 13.554 11 14 10.554 14 10 C 14 9.446 13.554 9 13 9 L 11 9 L 11 7 C 11 6.4459904 10.554 6 10 6 z'/%3E %3C/svg%3E");
}

.mapboxgl-ctrl-icon.mapboxgl-ctrl-zoom-out.presentation-dark-ctrl {
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath style='fill:%233d3d3d;' d='m 7,9 c -0.554,0 -1,0.446 -1,1 0,0.554 0.446,1 1,1 l 6,0 c 0.554,0 1,-0.446 1,-1 0,-0.554 -0.446,-1 -1,-1 z'/%3E %3C/svg%3E");
}

.mapboxgl-ctrl-icon.mapboxgl-ctrl-compass > .mapboxgl-ctrl-compass-arrow.presentation-light-ctrl {
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg'%3E %3Cpolygon fill='%23adadad' points='6,9 10,1 14,9'/%3E %3Cpolygon fill='%23484848' points='6,11 10,19 14,11 '/%3E %3C/svg%3E");
}

.mapboxgl-ctrl-icon.mapboxgl-ctrl-zoom-in.presentation-light-ctrl {
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath style='fill:%23adadad;' d='M 10 6 C 9.446 6 9 6.4459904 9 7 L 9 9 L 7 9 C 6.446 9 6 9.446 6 10 C 6 10.554 6.446 11 7 11 L 9 11 L 9 13 C 9 13.55401 9.446 14 10 14 C 10.554 14 11 13.55401 11 13 L 11 11 L 13 11 C 13.554 11 14 10.554 14 10 C 14 9.446 13.554 9 13 9 L 11 9 L 11 7 C 11 6.4459904 10.554 6 10 6 z'/%3E %3C/svg%3E");
}

.mapboxgl-ctrl-icon.mapboxgl-ctrl-zoom-out.presentation-light-ctrl {
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath style='fill:%23adadad;' d='m 7,9 c -0.554,0 -1,0.446 -1,1 0,0.554 0.446,1 1,1 l 6,0 c 0.554,0 1,-0.446 1,-1 0,-0.554 -0.446,-1 -1,-1 z'/%3E %3C/svg%3E");
}

.view-button.ctrl-button.dark-view {
	background-color: rgba(77,82,92,1);
	color: white;
	border-top-color: rgba(255, 255, 255, 0.3);
}

/* .mapboxgl-ctrl-group > button.lang-button {
  width: 100%;
  padding: 0;
	font-family: 'Arial';
}

.lang-button-modal {
	background-color: rgba(255,255,255,0);
	border: none;
	outline: none;
	padding: 5px 10px;
	opacity: 0.4;
	width: 115px;
	text-align: left;
}

.lang-button-modal > img {width: 30px;}

.lang-button-modal.active {
	opacity: 1;
}

.lang-button-modal.active > img {opacity: 1;} */

.view-button::before {
	float: left;
	content: "flight_land";
	font-family: "Material Icons";
	line-height: 24px;
	padding-left: 1px;
	padding-right: 6px;
	font-feature-settings: 'liga';
}

.ctrl-icon {
    float: left;
		font-size: 20px;
}

.ctrl-icon-text {
    float: left;
    line-height: 24px;
}

.mapboxgl-ctrl-group {
    border-radius: 4px;
}

.mapboxgl-popup-content {
	 	padding: 10px;
}

.mapboxgl-popup {
	/* Override inline style - Mapbox V1.0.0 */
  max-width: 95% !important;
  z-index: 10;
}

.mapboxgl-popup-close-button {
    font-size: 20px;
    padding: 10px;
}

.popup-title {
    padding: 3px;
    font-size: 14px;
    font-weight: bold;
		font-family: 'Muli', Arial, Helvetica, sans-serif;
    padding-right: 20px;
		/* transform: skewX(7deg); */
}

#popup-video {
	width: 420px;
	height: 280px;
}

.carousel-inner {
	width: 420px;
	height: 280px;
}

.carousel-inner>.item>img,
.carousel-inner>.item>a>img {
	margin-left: 15px;
	margin-right: 15px;
	max-height: 290px;
}

.popup-table {
    font-size: 13px;
    margin-top: 5px;
		/* transform: skewX(7deg); */
}

.popup-table td, .popup-table th {
    padding: 3px;
		font-family: 'Muli', Arial, Helvetica, sans-serif;
}

.popup-table th span a {
    color: #499ffc;
}

.popup-table th span a:hover {
    text-decoration: none;
	  color: #499ffc;
}

.popup-image {
	width: 80vw;
	max-width: 300px;
	margin: 0;
}

/* Modal overrides */
#intro-modal {overflow: hidden;}

.modal {z-index: 10000000; top: 60px;}

.modal.show {overflow-y: hidden;}

.modal .nav {margin-bottom: 15px;}

.modal .nav > li > a {padding: 5px 10px;}

.modal-content {
	border: none;
	border-radius: 4px;
	overflow-x: hidden;
}

.modal-content .nav-tabs.header {
	margin-left: -15px;
	padding-left: 15px;
	margin-right: -15px;
	padding-right: 15px;
	font-weight: bold;
}

.modal-image {
	width: 250px;
	margin-left: calc((100% - 250px)/2);
}

.tab-content {
	overflow-x: hidden;
	overflow-y: auto;
	max-height: calc(100vh - 340px);
	min-height: 80px;
}

.tab-pane {
    overflow-y: auto;
		overflow-x: hidden;
}

#deetuLogo {
	height: 50px;
	margin-top: -40px;
	float: right;
}

.cta-buttons {
	margin-left: auto;
	margin-right: auto;
	width: 140px;
}

.cta-buttons > a > button {
	align-items: center;
	border: none;
	border-radius: 6px;
	cursor: pointer;
	height: 45px;
	margin-bottom: 10px;
	margin-right: 10px;
	transition: all 0.2s cubic-bezier(0.42, 0, 0.58, 1) 0s;
	width: 140px;
}

.cta-buttons > a > button.open-map-btn {
	background-color: rgba(235, 108, 30, 1);
	color: white;
}

.cta-buttons > a > button.open-map-btn:hover {
	background-color: rgba(235, 108, 30, 0);
	border: 1px solid rgba(235, 108, 30, 1);
	color: black;
}


img#langFlag {
	width: 30px;
	height: 20px;
	border-style: none;
	margin: 0;
}

/* Updated attribution with Mapbox GL JS V1.0.0 */
.mapboxgl-ctrl-attrib.mapboxgl-compact {
	background-color: rgba(255,255,255,0.5);
	border-radius: 3px 12px 12px 3px;
	font-size: 12px;
	left: calc(100vw - 430px);
	position: fixed;
	right: 50px;
	top: 6px;
	visibility: hidden;
	z-index: 100;
}
/* Updated attribution with Mapbox GL JS V1.0.0 */
.mapboxgl-ctrl-attrib.mapboxgl-compact:hover {
	padding: 0;
	visibility: visible;
	margin: 10px;
}
/* Updated attribution with Mapbox GL JS V1.0.0 */
.mapboxgl-ctrl-attrib.mapboxgl-compact::after {
  position: fixed;
  top: -2px;
  right: -2px;
	visibility: visible;
}

a.mapboxgl-ctrl-logo {
	position: fixed;
	bottom: 10px;
}

@media only screen and (max-width:440px) {

	/* Features MOBILE */
	#features {
		position: fixed;
		white-space: nowrap;
		width: 100vw;
		max-width: 100vw;
		height: 35%;
		top: 100%;
		left: 0;
		overflow-x: scroll;
		overflow-y: hidden;
		/* scrollingPrompt */
		scroll-behavior: auto;
		box-shadow: 0 2px 5px 2px rgba(0,0,0, 0.2);
		margin-left: 0;
		padding-left: 0;
		direction: ltr;
	}

	/* Various Features Animations/Transitions MOBILE */
	#wrapperFeatures.toggle > #features {
		top: 65%;
		-webkit-transition: top 0.2s linear;
		transition: top 0.2s linear;
	}

	#wrapperFeatures.animate > #features {
		top: 65%;
		animation-name: stretch;
		animation-duration: 0.4s;
		animation-delay: 0;
		animation-direction: normal;
		animation-iteration-count: 1;
		animation-fill-mode: none;
	}

	/* Expand Features across screen */
	#wrapperFeatures.expand > #features {
		height: calc(100vh - 310px);
		top: 310px;
		-webkit-transition: top 0.2s linear;
		transition: top 0.2s linear;
	}

	#wrapperFeatures.notransition > #features {
		-webkit-transition: none !important;
		transition: none !important;
	}

	/* Text Fade Out */
	#wrapperFeatures.animate > #features:before,
	#wrapperFeatures.toggle > #features:before,
	#wrapperFeatures.expand > #features:before {
		content: "";
		width:100%;
		height: 15%;
		position:fixed;
		left:0;
		bottom:0px;
		background: linear-gradient(to top, white, rgba(255,255,255,0));
		pointer-events: none;
	}

	#wrapperFeatures.animate > #features.dark-before:before,
	#wrapperFeatures.toggle > #features.dark-before:before,
	#wrapperFeatures.expand > #features.dark-before:before {
		content: "";
		width:100%;
		height: 15%;
		position:fixed;
		left:0;
		bottom:0px;
		background: linear-gradient(to top, black, rgba(0,0,0,0));
		pointer-events: none;
	}

	@keyframes stretch {
		0% {
			width: 40px;
			height: 40px;
			border-radius: 100%;
			left: 100vw;
			top: 90%;
		}
		45% {
			border-bottom-right-radius: 0%;
		}
		100% {
			transform: scale(1);
		}
	}

	/* Expand Features Menu button */
	#featuresExpand {
		position: fixed;
		z-index: 100000;
		bottom: calc(35% - 50px);
		left: -500px;
		width: 30px;
		height: 30px;
	}

	#collapseMenu,
	#expandMenu {width: 27px; opacity: 0.45;}

	#wrapperFeatures.toggle * #collapseMenu,
	#wrapperFeatures.expand * #expandMenu {display: none;}

	#wrapperFeatures.expand > #featuresExpand {
		display: block;
		top: 330px;
		left: 8px;
		-webkit-transition: top 0.2s linear;
		transition: top 0.2s linear;
	}

	#wrapperFeatures.toggle > #featuresExpand {
		display: block;
		left: 8px;
	}

	section {
		top: 0;
		width: 100vw;
		min-height: 50px;
		height: 100%;
		padding: 50px 53px;
		display: inline-block;
		white-space: normal;
		overflow-y: auto;
	}

	section > a > h2, section > a > h2:link,
	section > a > h2:visited, section > a > h2:hover,
	section > a > h2:active,
	section > a > h3, section > a > h3:link,
	section > a > h3:visited, section > a > h3:hover,
	section > a > h3:active,
	section > a > p, section > a > p:link,
	section > a > p:visited, section > a > p:hover,
	section > a > p:active {
		text-align: left;
	}

	/* Features Menu */
	#menu {
		opacity: 0.85;
		bottom: 20px;
		right: 20px;
		width: 55px;
		height: 55px;
		border-radius: 100%;
		box-shadow: 0 3px 10px 2px rgba(0,0,0, 0.3);
	}

	#sidebarMenu {
	  border-bottom-right-radius: 2em;
	}

  .narrowArrow {
		display: inline;
		position: absolute;
		width: 26px;
		height: 26px;
		left: calc(100% - 40px);
		top: calc(100% - 40px);
		margin: 0;
		opacity: 1.15;
	}

	.wideArrow {display: none;}

	/* Close Features Menu MOBILE */
	#menuClose {
		top: calc(100vh + 50px);
		padding: 0;
		left: calc(100vw - 50px);
		width: 30px;
		height: 30px;
		opacity: 0.45;
	}

	#menuClose.expand {
		top: 330px;
		-webkit-transition: top 0.2s linear;
		transition: top 0.2s linear;
	}

	#wrapperFeatures.toggle>#menuClose {
		top: calc(75% - 50px);
		right: 0;
		left: calc(100vw - 50px);
	}

	#startStopPresentationBtn, #scrollTop, #scrollingPrompt.active {display: none}

	/* Horizontal Scroll Buttons MOBILE */
  #nextFeature,
	#prevFeature {
    visibility: visible;
    z-index: 100000;
    position: fixed;
    top: -100vh;
		padding: 3px;
		width: 30px;
		background-color: white;
		border-radius: 100%;
		box-shadow: 0 2px 8px 2px rgba(0,0,0, 0.3);
  }

	#nextFeature {right: 9px;}

  #prevFeature {left: 9px;}

	#nextFeature.toggle,
	#prevFeature.toggle {top: calc(75% + 35px);}

	#sidebar {
		max-width: 75%;
	}

	.story-image {
		width: 100%;
	}

	.story-wlb-logo {
		position: static;
		width: 90%;
		margin: 10px 0;
	}

	.story-wlb-strapline {
		max-width: 215px;
	}

	.credits-wlb-logo {
		position: static;
		width: 90%;
		margin: 10px 0;
	}

	.wlb > a > img {
	 	width: 90%;
	}

	section#home > a > h3 {
		font-size: 18px;
	}

 	.lead-sponsors > a > img {
		width: 30%;
		margin: 10px 40px 10px 0;
	}

 	.associate-sponsors > a > img {
		margin: 10px 10px 10px 0;
	}

	.associate-sponsors > a > img#deetuSponsorLogo,
	.associate-sponsors > a > img#opdcLogo,
	.associate-sponsors > a > img#stratstoneLogo {margin: 10px 20%;}

	.associate-sponsors > a > img#interlandLogo,
	.associate-sponsors > a > img#londonPartnersLogo {margin: 10px 5%;}

	#popup-video {
		width: calc(90vw - 26px);
		height: calc(0.666*(calc(90vw - 26px)));
	}

	.carousel-inner {
		width: calc(90vw - 26px);
		height: calc(0.666*(calc(90vw - 26px)));
	}

	.carousel-inner>.item>img,
	.carousel-inner>.item>a>img {
		margin-left: 0;
		margin-right: 0;
		max-height: 220px;
	}

	.contact > p { width: 100%;}

	.fly-l, .fly-r {font-size: 9px;}

	.btn-label, .btn-l, .btn-r {
		margin: 0 0 10px 0;
		width: 23%;
	}

	#deetuLogo {float: left; margin: 0 0 0 -10px;}

	.deetu-static {
		bottom: 7px;
		right: calc(100vw - 108px);
	}
	.deetu-static > a > img {width: 85px;}

	a.mapboxgl-ctrl-logo {
		bottom: 2px;
		left: 105px;
	}

	/* Updated attribution with Mapbox GL JS V1.0.0 */
	.mapboxgl-ctrl-attrib.mapboxgl-compact {
		height: 38px;
		left: 18px;
		max-width: calc(100vw - 90px);
		right: 0;
		top: calc(100% - 80px);
	}
	/* Updated attribution with Mapbox GL JS V1.0.0 */
	.mapboxgl-ctrl-attrib.mapboxgl-compact::after {
	  top: 0px;
    left: -23px;
		right: 0px;
	}

}
