/*
	Mapbox SCSS
*/
a.back-to-location-page {
  position: fixed;
  right: 0;
  top: 0;
  width: 30px;
  height: 30px;
  z-index: 1000;
  background-color: #222F2B;
  color: white;
  text-indent: -9999px;
  overflow: hidden; }
  @media only screen and (min-width: 1025px) {
    a.back-to-location-page {
      width: 60px;
      height: 60px;
      z-index: 3000; } }
  a.back-to-location-page::before, a.back-to-location-page::after {
    position: absolute;
    width: 70%;
    height: 1px;
    background-color: white;
    display: block;
    content: "";
    left: 50%;
    top: 50%; }
  a.back-to-location-page::before {
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
    -ms-transform: translate(-50%, -50%) rotate(45deg);
    transform: translate(-50%, -50%) rotate(45deg); }
  a.back-to-location-page::after {
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
    -ms-transform: translate(-50%, -50%) rotate(-45deg);
    transform: translate(-50%, -50%) rotate(-45deg); }

.location-map-landing,
.location-map-locations {
  width: 100vw;
  height: 100%;
  position: fixed; }

.map {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  max-height: none; }

.location-menu,
.location-details-in {
  background-color: #222F2B; }

.location-menu {
  -webkit-transform: translateX(-100%);
  -ms-transform: translateX(-100%);
  transform: translateX(-100%);
  -webkit-transition: -webkit-transform 250ms ease-in-out;
  transition: -webkit-transform 250ms ease-in-out;
  -o-transition: transform 250ms ease-in-out;
  transition: transform 250ms ease-in-out;
  transition: transform 250ms ease-in-out, -webkit-transform 250ms ease-in-out; }
  @media only screen and (min-width: 1025px) {
    .location-menu {
      -webkit-transform: translateX(calc(-100% + 39px));
      -ms-transform: translateX(calc(-100% + 39px));
      transform: translateX(calc(-100% + 39px)); } }
  .location-menu.slide-in {
    -webkit-transform: translateX(0%);
    -ms-transform: translateX(0%);
    transform: translateX(0%); }
  @media only screen and (max-width: 1024px) {
    .location-menu {
      z-index: 2000; } }

.transport-filters,
.location-filters,
.location-details {
  opacity: 0;
  -webkit-transition: opacity 500ms ease-in-out;
  -o-transition: opacity 500ms ease-in-out;
  transition: opacity 500ms ease-in-out;
  pointer-events: none; }
  .transport-filters.slide-in,
  .location-filters.slide-in,
  .location-details.slide-in {
    opacity: 1;
    pointer-events: auto; }

.transport-filters {
  position: fixed;
  left: 0;
  top: 0; }

.location-menu {
  width: 100%;
  max-width: 477px;
  height: 100%;
  overflow: auto;
  position: fixed;
  left: 0;
  top: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: white; }

.transport-filters,
.location-filters,
.location-details {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  padding: 40px; }
  @media only screen and (min-width: 1025px) {
    .transport-filters,
    .location-filters,
    .location-details {
      padding: 40px 80px 40px 40px; } }
  .transport-filters h3, .transport-filters h4, .transport-filters p,
  .location-filters h3,
  .location-filters h4,
  .location-filters p,
  .location-details h3,
  .location-details h4,
  .location-details p {
    text-align: center;
    padding: 0;
    font-size: 26px; }
  .transport-filters h3,
  .location-filters h3,
  .location-details h3 {
    line-height: 1; }
  .transport-filters p,
  .location-filters p,
  .location-details p {
    font-size: 16px;
    line-height: 1.25; }
    .transport-filters p.loc-link,
    .location-filters p.loc-link,
    .location-details p.loc-link {
      text-align: center; }
  .transport-filters a,
  .location-filters a,
  .location-details a {
    -webkit-transition: opacity 250ms ease-in-out;
    -o-transition: opacity 250ms ease-in-out;
    transition: opacity 250ms ease-in-out;
    color: white; }
    .transport-filters a.backtolink,
    .location-filters a.backtolink,
    .location-details a.backtolink {
      display: none;
      font-size: 16px;
      position: relative;
      padding: 0 0 0 22px;
      line-height: 1; }
      @media only screen and (min-width: 1025px) {
        .transport-filters a.backtolink,
        .location-filters a.backtolink,
        .location-details a.backtolink {
          display: block; } }
      .transport-filters a.backtolink::before,
      .location-filters a.backtolink::before,
      .location-details a.backtolink::before {
        left: 0;
        top: 0;
        content: "";
        background: url(../../../themes/wardian/mapbox/arrow-left.svg) no-repeat 50%/contain;
        width: 16px;
        height: 13px;
        display: block;
        position: absolute; }
    .transport-filters a.ext-link,
    .location-filters a.ext-link,
    .location-details a.ext-link {
      border-bottom: 1px solid white;
      display: none; }
    .transport-filters a:hover,
    .location-filters a:hover,
    .location-details a:hover {
      opacity: 0.5; }
  .transport-filters .img-detail,
  .location-filters .img-detail,
  .location-details .img-detail {
    padding: 20px 0; }
    @media only screen and (min-width: 1025px) {
      .transport-filters .img-detail,
      .location-filters .img-detail,
      .location-details .img-detail {
        padding: 40px 0; } }
    .transport-filters .img-detail img,
    .location-filters .img-detail img,
    .location-details .img-detail img {
      width: 100%; }
  .transport-filters #pagination,
  .location-filters #pagination,
  .location-details #pagination {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    bottom: 0;
    position: absolute; }
    .transport-filters #pagination .empty,
    .transport-filters #pagination a,
    .location-filters #pagination .empty,
    .location-filters #pagination a,
    .location-details #pagination .empty,
    .location-details #pagination a {
      font-size: 16px;
      text-transform: uppercase;
      width: 50%;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      height: 30px;
      -webkit-box-align: end;
      -ms-flex-align: end;
      align-items: flex-end;
      line-height: 1;
      position: relative; }
      .transport-filters #pagination .empty::before,
      .transport-filters #pagination a::before,
      .location-filters #pagination .empty::before,
      .location-filters #pagination a::before,
      .location-details #pagination .empty::before,
      .location-details #pagination a::before {
        bottom: 3px;
        content: "";
        width: 16px;
        height: 13px;
        display: block;
        position: absolute; }
      .transport-filters #pagination .empty.pagination--prev,
      .transport-filters #pagination a.pagination--prev,
      .location-filters #pagination .empty.pagination--prev,
      .location-filters #pagination a.pagination--prev,
      .location-details #pagination .empty.pagination--prev,
      .location-details #pagination a.pagination--prev {
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        padding: 0 0 0 22px; }
        .transport-filters #pagination .empty.pagination--prev::before,
        .transport-filters #pagination a.pagination--prev::before,
        .location-filters #pagination .empty.pagination--prev::before,
        .location-filters #pagination a.pagination--prev::before,
        .location-details #pagination .empty.pagination--prev::before,
        .location-details #pagination a.pagination--prev::before {
          left: 0;
          background: url(../../../themes/wardian/mapbox/arrow-left.svg) no-repeat 50%/contain; }
      .transport-filters #pagination .empty.pagination--next,
      .transport-filters #pagination a.pagination--next,
      .location-filters #pagination .empty.pagination--next,
      .location-filters #pagination a.pagination--next,
      .location-details #pagination .empty.pagination--next,
      .location-details #pagination a.pagination--next {
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
        padding: 0 22px 0 0; }
        .transport-filters #pagination .empty.pagination--next::before,
        .transport-filters #pagination a.pagination--next::before,
        .location-filters #pagination .empty.pagination--next::before,
        .location-filters #pagination a.pagination--next::before,
        .location-details #pagination .empty.pagination--next::before,
        .location-details #pagination a.pagination--next::before {
          right: 0;
          background: url(../../../themes/wardian/mapbox/arrow-right.svg) no-repeat 50%/contain; }

.location-details-in {
  padding-top: 40px;
  height: 100%;
  position: relative; }
  @media only screen and (min-width: 1025px) {
    .location-details-in {
      padding-top: 0px; } }

@media only screen and (min-width: 1025px) {
  .loc-inner {
    padding: 50px 0; } }

@media only screen and (max-width: 1024px) {
  .loc-inner > * {
    color: white; } }

#short_popup {
  display: none; }

/* BUILDING PIN	*/
.marker-lci {
  background: #222F2B url(../../../themes/wardian/mapbox/icons/WardianLogoW.svg) no-repeat 50% 50%/contain;
  width: 36px;
  height: 36px;
  border: 1px solid #222F2B;
  border-radius: 50%;
  z-index: 2000; }

.location-menu-close {
  display: none; }

html {
  margin: 0;
  padding: 0; }

.pin-icon {
  width: auto;
  max-width: 140px;
  text-align: center;
  height: auto;
  display: block;
  background: none;
  line-height: 1.2;
  text-transform: uppercase;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: opacity 250ms ease-in-out, visibility 250ms ease-in-out, margin 250ms ease-in-out;
  -o-transition: opacity 250ms ease-in-out, visibility 250ms ease-in-out, margin 250ms ease-in-out;
  transition: opacity 250ms ease-in-out, visibility 250ms ease-in-out, margin 250ms ease-in-out;
  z-index: 1000;
  margin: 0; }
  .pin-icon::before {
    content: "";
    width: 30px;
    height: 30px;
    display: block;
    margin: 0 auto 5px;
    background-image: url(../../../themes/wardian/mapbox/img/poi.png);
    background-size: contain;
    background-position: 50%;
    background-repeat: no-repeat; }
  .pin-icon.pin-art-culture::before {
    background: transparent url(../../../themes/wardian/mapbox/icons/ArtCulture02.svg) no-repeat 50% 50%/contain; }
  .pin-icon.pin-bars-pubs::before {
    background: transparent url(../../../themes/wardian/mapbox/icons/Bars02.svg) no-repeat 50% 50%/contain; }
  .pin-icon.pin-businesses::before {
    background: transparent url(../../../themes/wardian/mapbox/icons/Businesses01.svg) no-repeat 50% 50%/contain; }
  .pin-icon.pin-education::before {
    background: transparent url(../../../themes/wardian/mapbox/icons/Education01.svg) no-repeat 50% 50%/contain; }
  .pin-icon.pin-health-fitness::before {
    background: transparent url(../../../themes/wardian/mapbox/icons/Fitnesshealth02.svg) no-repeat 50% 50%/contain; }
  .pin-icon.pin-restaurants-cafes::before {
    background: transparent url(../../../themes/wardian/mapbox/icons/RestaurantsCafes01.svg) no-repeat 50% 50%/contain; }
  .pin-icon.pin-retail::before {
    background: transparent url(../../../themes/wardian/mapbox/icons/retail01.svg) no-repeat 50% 50%/contain; }
  .pin-icon.pin-transport-travel::before {
    background: transparent url(../../../themes/wardian/mapbox/icons/Underground02.svg) no-repeat 50% 50%/contain; }
  .pin-icon.pin-london-landmarks::before {
    background: transparent url(../../../themes/wardian/mapbox/icons/landmarks02.svg) no-repeat 50% 50%/contain; }
  .pin-icon[data-title*="crossrail"]::before {
    background: transparent url(../../../themes/wardian/mapbox/icons/transport02.svg) no-repeat 50% 50%/contain; }
  .pin-icon span {
    -webkit-transition: opacity 250ms ease-in-out;
    -o-transition: opacity 250ms ease-in-out;
    transition: opacity 250ms ease-in-out;
    display: inline; }
  .pin-icon.recommended {
    z-index: 1001; }
  .pin-icon.popup {
    visibility: visible;
    opacity: 1;
    margin: 0; }

.map.show-details-active .popup.pin-icon:not(.hovered) {
  opacity: 0;
  visibility: hidden; }

.map.show-details-active .popup.pin-icon.hovered {
  opacity: 1;
  visibility: visible; }

ul.filters {
  font-size: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  display: flex; }
  ul.filters li {
    width: 50%; }
  ul.filters a {
    display: block;
    position: relative;
    padding: 0 0 0 20px;
    color: white;
    line-height: 1; }
    ul.filters a::before {
      content: "";
      width: 12px;
      height: 12px;
      display: block;
      border-radius: 50%;
      border: 1px solid white;
      position: absolute;
      left: 0;
      top: 2px; }
  ul.filters.view-in-3d li#fly-wardian a::before {
    background-color: #fff; }
  ul.filters.view-in-3d li#fly-topview a::before {
    background-color: transparent; }
  ul.filters:not(.view-in-3d) li#fly-wardian a::before {
    background-color: transparent; }
  ul.filters:not(.view-in-3d) li#fly-topview a::before {
    background-color: #fff; }

/*
.walking-icons {

//	outline: 1px solid red;
	display: none;
	&.show-icon {
		display: block;
//		outline: 1px solid blue;
	}	
}
*/
.marker {
  background-color: white;
  opacity: 0;
  width: auto;
  max-width: 140px;
  text-align: center;
  height: auto;
  display: block;
  background: none;
  line-height: 1.2;
  text-transform: uppercase;
  font-size: 10px;
  width: 100px;
  text-shadow: 1px 1px #FFF; }
  .marker::before {
    content: "";
    width: 30px;
    height: 30px;
    display: block;
    margin: 0 auto 5px;
    background-image: url(../../../themes/wardian/mapbox/img/poi.png);
    background-size: contain;
    background-position: 50%;
    background-repeat: no-repeat; }
  .marker.marker-tube::before, .marker.walking-icons::before, .marker.marker-dlr::before, .marker.marker-clipper::before {
    background-image: url(../../../themes/wardian/mapbox/icons/Underground02.svg); }
  .marker.marker-airport::before, .marker.marker-airport2::before {
    background-image: url(../../../themes/wardian/mapbox/icons/Underground02.svg); }
  .marker.marker-airport3::before {
    background-image: url(../../../themes/wardian/mapbox/icons/Airport01.svg); }
  .marker.marker-crossr::before {
    background-image: url(../../../themes/wardian/mapbox/icons/transport01.svg); }
  .marker.show-marker {
    opacity: 1; }

#travel-transport-toggle .mobile-location-label {
  opacity: 0.5; }

#travel-transport-toggle .button-label-mobile.hide-temporarily {
  display: none; }

.pin-icon.pin-businesses,
.pin-icon.pin-education,
a[data-icon="businesses"].poi-link,
a[data-icon="education"].poi-link {
  pointer-events: none; }

.mapboxgl-ctrl-logo {
  z-index: -9999 !important; }

@media only screen and (min-width: 1025px) {
  ul#poi-filters {
    padding: 50px 0;
    color: white; }
    ul#poi-filters li.pois {
      padding: 0 0 10px;
      margin: 0; }
      ul#poi-filters li.pois h5 {
        text-transform: uppercase; }
        ul#poi-filters li.pois h5 a {
          display: block;
          position: relative;
          padding-left: 20px;
          color: white; }
          ul#poi-filters li.pois h5 a::before {
            content: "";
            width: 12px;
            height: 12px;
            display: block;
            border-radius: 50%;
            border: 1px solid white;
            position: absolute;
            left: 0;
            top: 2px; }
      ul#poi-filters li.pois ul.sub-list {
        width: 100%;
        padding: 5px 0 0 20px;
        display: none; }
        ul#poi-filters li.pois ul.sub-list li {
          margin: 0;
          padding: 0;
          width: 100%;
          font-size: 18px;
          line-height: 1.25;
          position: relative; }
          ul#poi-filters li.pois ul.sub-list li a {
            color: white;
            position: relative;
            display: block;
            padding: 3px 0 3px 26px; }
            ul#poi-filters li.pois ul.sub-list li a::before {
              content: "";
              width: 18px;
              height: 18px;
              display: block;
              position: absolute;
              left: 0;
              top: 3px; }
            ul#poi-filters li.pois ul.sub-list li a[data-icon="art-culture"]::before {
              background: transparent url(../../../themes/wardian/mapbox/icons/ArtCulture01.svg) no-repeat 50% 50%/contain; }
            ul#poi-filters li.pois ul.sub-list li a[data-icon="bars-pubs"]::before {
              background: transparent url(../../../themes/wardian/mapbox/icons/Bars01.svg) no-repeat 50% 50%/contain; }
            ul#poi-filters li.pois ul.sub-list li a[data-icon="businesses"]::before {
              background: transparent url(../../../themes/wardian/mapbox/icons/Businesses02.svg) no-repeat 50% 50%/contain; }
            ul#poi-filters li.pois ul.sub-list li a[data-icon="education"]::before {
              background: transparent url(../../../themes/wardian/mapbox/icons/Education02.svg) no-repeat 50% 50%/contain; }
            ul#poi-filters li.pois ul.sub-list li a[data-icon="health-fitness"]::before {
              background: transparent url(../../../themes/wardian/mapbox/icons/Fitnesshealth01.svg) no-repeat 50% 50%/contain; }
            ul#poi-filters li.pois ul.sub-list li a[data-icon="restaurants-cafes"]::before {
              background: transparent url(../../../themes/wardian/mapbox/icons/RestaurantsCafes02.svg) no-repeat 50% 50%/contain; }
            ul#poi-filters li.pois ul.sub-list li a[data-icon="retail"]::before {
              background: transparent url(../../../themes/wardian/mapbox/icons/retail02.svg) no-repeat 50% 50%/contain; }
            ul#poi-filters li.pois ul.sub-list li a[data-icon="transport-travel"]::before {
              background: transparent url(../../../themes/wardian/mapbox/icons/Underground01.svg) no-repeat 50% 50%/contain; }
            ul#poi-filters li.pois ul.sub-list li a[data-icon="london-landmarks"]::before {
              background: transparent url(../../../themes/wardian/mapbox/icons/landmarks01.svg) no-repeat 50% 50%/contain; }
            ul#poi-filters li.pois ul.sub-list li a[data-poi-title*="crossrail"]::before {
              background: transparent url(../../../themes/wardian/mapbox/icons/transport01.svg) no-repeat 50% 50%/contain; }
            ul#poi-filters li.pois ul.sub-list li a:hover {
              opacity: 0.5; }
      ul#poi-filters li.pois.active-group a::before {
        background-color: white; }
      ul#poi-filters li.pois.active-group ul.sub-list {
        display: block; } }

.transport-content {
  color: white; }
  .transport-content ul {
    padding: 0;
    margin: 0; }
    .transport-content ul li {
      padding: 0;
      margin: 0; }
      .transport-content ul li a {
        color: white; }

.mobile-control-menu {
  position: fixed;
  background-color: #222F2B;
  right: 0;
  bottom: 0;
  left: 0;
  height: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media only screen and (min-width: 1025px) {
    .mobile-control-menu {
      display: none; } }
  .mobile-control-menu ul {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse; }
    .mobile-control-menu ul li {
      width: 100%;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      font-size: 14px;
      text-transform: uppercase; }
      .mobile-control-menu ul li a {
        color: white;
        position: relative; }
        .mobile-control-menu ul li a::after {
          content: "";
          position: absolute;
          left: 0;
          bottom: 3px;
          width: 100%;
          border-top: 1px solid transparent; }
        .mobile-control-menu ul li a span.button-label-desktop {
          display: none; }
          @media only screen and (min-width: 1025px) {
            .mobile-control-menu ul li a span.button-label-desktop {
              display: block; } }
        .mobile-control-menu ul li a span.button-label-mobile {
          display: block; }
          @media only screen and (min-width: 1025px) {
            .mobile-control-menu ul li a span.button-label-mobile {
              display: none; } }
  .mobile-control-menu.travel-transport-active a#travel-transport-toggle::after {
    border-color: white; }
  .mobile-control-menu.selected-locations-active a#selected-locations-toggle::after {
    border-color: white; }

.mobile-locations-menu {
  position: fixed;
  background-color: #EFEBE7;
  right: 0;
  bottom: 40px;
  left: 0;
  height: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  opacity: 0;
  pointer-events: none;
  z-index: 1; }
  .mobile-locations-menu.show {
    opacity: 1;
    pointer-events: auto; }
  @media only screen and (min-width: 1025px) {
    .mobile-locations-menu {
      display: none; } }
  .mobile-locations-menu ul#poi-filters {
    padding: 10px 5px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    -ms-flex-pack: distribute;
    justify-content: space-around; }
    .mobile-locations-menu ul#poi-filters li.pois {
      padding: 0;
      width: 25px;
      height: 25px; }
      .mobile-locations-menu ul#poi-filters li.pois.pois-recommended {
        display: none; }
      .mobile-locations-menu ul#poi-filters li.pois h5 a {
        width: 100%;
        height: 100%;
        display: block;
        text-indent: -9999px;
        overflow: hidden; }
      .mobile-locations-menu ul#poi-filters li.pois.pois-art-culture a.poi-label {
        background: transparent url(../../../themes/wardian/mapbox/icons/ArtCulture01.svg) no-repeat 50% 50%/contain; }
      .mobile-locations-menu ul#poi-filters li.pois.pois-art-culture.active-group a.poi-label {
        background: transparent url(../../../themes/wardian/mapbox/icons/ArtCulture02.svg) no-repeat 50% 50%/contain; }
      .mobile-locations-menu ul#poi-filters li.pois.pois-bars-pubs a.poi-label {
        background: transparent url(../../../themes/wardian/mapbox/icons/Bars01.svg) no-repeat 50% 50%/contain; }
      .mobile-locations-menu ul#poi-filters li.pois.pois-bars-pubs.active-group a.poi-label {
        background: transparent url(../../../themes/wardian/mapbox/icons/Bars02.svg) no-repeat 50% 50%/contain; }
      .mobile-locations-menu ul#poi-filters li.pois.pois-businesses a.poi-label {
        background: transparent url(../../../themes/wardian/mapbox/icons/Businesses02.svg) no-repeat 50% 50%/contain; }
      .mobile-locations-menu ul#poi-filters li.pois.pois-businesses.active-group a.poi-label {
        background: transparent url(../../../themes/wardian/mapbox/icons/Businesses01.svg) no-repeat 50% 50%/contain; }
      .mobile-locations-menu ul#poi-filters li.pois.pois-education a.poi-label {
        background: transparent url(../../../themes/wardian/mapbox/icons/Education02.svg) no-repeat 50% 50%/contain; }
      .mobile-locations-menu ul#poi-filters li.pois.pois-education.active-group a.poi-label {
        background: transparent url(../../../themes/wardian/mapbox/icons/Education01.svg) no-repeat 50% 50%/contain; }
      .mobile-locations-menu ul#poi-filters li.pois.pois-health-fitness a.poi-label {
        background: transparent url(../../../themes/wardian/mapbox/icons/Fitnesshealth01.svg) no-repeat 50% 50%/contain; }
      .mobile-locations-menu ul#poi-filters li.pois.pois-health-fitness.active-group a.poi-label {
        background: transparent url(../../../themes/wardian/mapbox/icons/Fitnesshealth02.svg) no-repeat 50% 50%/contain; }
      .mobile-locations-menu ul#poi-filters li.pois.pois-restaurants-cafes a.poi-label {
        background: transparent url(../../../themes/wardian/mapbox/icons/RestaurantsCafes02.svg) no-repeat 50% 50%/contain; }
      .mobile-locations-menu ul#poi-filters li.pois.pois-restaurants-cafes.active-group a.poi-label {
        background: transparent url(../../../themes/wardian/mapbox/icons/RestaurantsCafes01.svg) no-repeat 50% 50%/contain; }
      .mobile-locations-menu ul#poi-filters li.pois.pois-retail a.poi-label {
        background: transparent url(../../../themes/wardian/mapbox/icons/retail02.svg) no-repeat 50% 50%/contain; }
      .mobile-locations-menu ul#poi-filters li.pois.pois-retail.active-group a.poi-label {
        background: transparent url(../../../themes/wardian/mapbox/icons/retail01.svg) no-repeat 50% 50%/contain; }
      .mobile-locations-menu ul#poi-filters li.pois.pois-transport-travel a.poi-label {
        background: transparent url(../../../themes/wardian/mapbox/icons/transport01.svg) no-repeat 50% 50%/contain; }
      .mobile-locations-menu ul#poi-filters li.pois.pois-transport-travel.active-group a.poi-label {
        background: transparent url(../../../themes/wardian/mapbox/icons/transport02.svg) no-repeat 50% 50%/contain; }
      .mobile-locations-menu ul#poi-filters li.pois.pois-london-landmarks a.poi-label {
        background: transparent url(../../../themes/wardian/mapbox/icons/landmarks01.svg) no-repeat 50% 50%/contain; }
      .mobile-locations-menu ul#poi-filters li.pois.pois-london-landmarks.active-group a.poi-label {
        background: transparent url(../../../themes/wardian/mapbox/icons/landmarks02.svg) no-repeat 50% 50%/contain; }
      .mobile-locations-menu ul#poi-filters li.pois ul.sub-list {
        display: none; }

.mobile-transport-menu {
  position: fixed;
  background-color: #EFEBE7;
  right: 0;
  bottom: 40px;
  left: 0;
  height: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  opacity: 0;
  pointer-events: none; }
  .mobile-transport-menu.show {
    opacity: 1;
    pointer-events: auto; }
  @media only screen and (min-width: 1025px) {
    .mobile-transport-menu {
      display: none; } }
  .mobile-transport-menu ul {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .mobile-transport-menu ul li {
      outline: 1px solid red;
      width: 100%;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      font-size: 14px;
      text-transform: uppercase; }
      .mobile-transport-menu ul li a {
        color: #222F2B; }
  .mobile-transport-menu .swiper-container .swiper-wrapper .swiper-slide a {
    color: #222F2B;
    outline: 1px solid red;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 14px;
    text-transform: uppercase; }
  .mobile-transport-menu .swiper-container .swiper-button-prev,
  .mobile-transport-menu .swiper-container .swiper-button-next {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    margin-top: 0;
    z-index: 10;
    cursor: pointer;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-indent: -999px;
    overflow: hidden; }
  .mobile-transport-menu .swiper-container .swiper-button-prev {
    background: url(../../../themes/wardian/mapbox/arrow-left-dark.svg) no-repeat 50%/contain; }
  .mobile-transport-menu .swiper-container .swiper-button-next {
    background: url(../../../themes/wardian/mapbox/arrow-right-dark.svg) no-repeat 50%/contain; }

#mobile-close {
  position: absolute;
  top: 20px;
  height: 30px;
  right: 20px;
  text-indent: -9999px;
  overflow: hidden;
  -webkit-transition: opacity 250ms ease-in-out;
  -o-transition: opacity 250ms ease-in-out;
  transition: opacity 250ms ease-in-out;
  z-index: 2001;
  width: 30px;
  display: block; }
  @media only screen and (min-width: 1025px) {
    #mobile-close {
      display: none; } }
  #mobile-close::before, #mobile-close::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
    -ms-transform: translate(-50%, -50%) rotate(45deg);
    transform: translate(-50%, -50%) rotate(45deg);
    width: 1px;
    height: 20px;
    background-color: white;
    display: block;
    z-index: 2; }
  #mobile-close::after {
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
    -ms-transform: translate(-50%, -50%) rotate(-45deg);
    transform: translate(-50%, -50%) rotate(-45deg); }

.control-menu {
  border-left: 1px solid white;
  position: absolute;
  left: auto;
  top: 0;
  right: 0;
  bottom: 0;
  width: 40px;
  height: auto;
  display: none;
  z-index: 2000; }
  @media only screen and (min-width: 1025px) {
    .control-menu {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; } }
  .control-menu ul {
    position: absolute;
    top: 50px;
    bottom: 50px;
    left: 0;
    right: 0;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    text-transform: uppercase;
    width: 100%;
    padding: 0;
    margin: 0;
    display: flex;
    width: 100%; }
    .control-menu ul li {
      height: 50%;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center; }
      .control-menu ul li a {
        font-size: 14px;
        -webkit-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
        transform: rotate(180deg);
        -webkit-writing-mode: vertical-lr;
        -ms-writing-mode: tb-lr;
        writing-mode: vertical-lr;
        line-height: 1;
        color: white;
        padding: 30px 5px; }
        .control-menu ul li a span.button-label-desktop {
          display: none; }
          @media only screen and (min-width: 1025px) {
            .control-menu ul li a span.button-label-desktop {
              display: block; } }
        .control-menu ul li a span.button-label-mobile {
          display: block; }
          @media only screen and (min-width: 1025px) {
            .control-menu ul li a span.button-label-mobile {
              display: none; } }
  .control-menu.travel-transport-active a#selected-locations-toggle {
    opacity: 0.5; }
    .control-menu.travel-transport-active a#selected-locations-toggle:hover {
      opacity: 1; }
  .control-menu.selected-locations-active a#travel-transport-toggle {
    opacity: 0.5; }
    .control-menu.selected-locations-active a#travel-transport-toggle:hover {
      opacity: 1; }
  .control-menu a.control-menu-close {
    position: absolute;
    top: 0;
    height: 50px;
    left: 0;
    right: 0;
    text-indent: -9999px;
    overflow: hidden;
    opacity: 0;
    -webkit-transition: opacity 250ms ease-in-out;
    -o-transition: opacity 250ms ease-in-out;
    transition: opacity 250ms ease-in-out; }
    .control-menu a.control-menu-close::before, .control-menu a.control-menu-close::after {
      content: "";
      position: absolute;
      left: 50%;
      top: 50%;
      -webkit-transform: translate(-50%, -50%) rotate(45deg);
      -ms-transform: translate(-50%, -50%) rotate(45deg);
      transform: translate(-50%, -50%) rotate(45deg);
      width: 1px;
      height: 20px;
      background-color: white;
      display: block;
      z-index: 2; }
    .control-menu a.control-menu-close::after {
      -webkit-transform: translate(-50%, -50%) rotate(-45deg);
      -ms-transform: translate(-50%, -50%) rotate(-45deg);
      transform: translate(-50%, -50%) rotate(-45deg); }

.slide-in a.control-menu-close {
  opacity: 1; }

.transport-filters ul {
  padding: 0;
  margin: 50px 0; }
  .transport-filters ul li {
    padding: 0;
    margin: 0;
    height: 41px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    line-height: 1; }
    .transport-filters ul li a {
      height: 40px;
      line-height: 1;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      width: 100%;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      position: relative;
      padding: 3px 0 0;
      border-bottom: 1px solid white; }
      .transport-filters ul li a::after {
        width: 30px;
        height: 30px;
        position: absolute;
        right: 0;
        top: 4px;
        content: "";
        display: block;
        background-position: 50%;
        background-size: contain;
        background-repeat: no-repeat; }
      .transport-filters ul li a#fly-jubilee::after, .transport-filters ul li a#fly-dlr::after, .transport-filters ul li a#fly-clipper::after {
        background-image: url(../../../themes/wardian/mapbox/icons/Underground01.svg); }
      .transport-filters ul li a#fly-bus::after {
        background-image: url(../../../themes/wardian/mapbox/icons/Walking02.svg); }
      .transport-filters ul li a#fly-air::after {
        background-image: url(../../../themes/wardian/mapbox/icons/Airport01.svg); }
      .transport-filters ul li a#fly-crossrail::after {
        background-image: url(../../../themes/wardian/mapbox/icons/transport01.svg); }
    .transport-filters ul li.inactive-route a {
      opacity: 0.3; }
    .transport-filters ul li.active-route a {
      opacity: 1; }
  .transport-filters ul:hover a {
    opacity: 0.3; }
    .transport-filters ul:hover a:hover {
      opacity: 1; }