/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */

main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */

img {
  border-style: none;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/* Misc
   ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */

template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */

[hidden] {
  display: none;
}
._1b34e2be,._1b34e2be aside,._1b34e2be section {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
  }

  ._1b34e2be {
    height: 100%;
    width: 100%;
  }

  ._1b34e2be aside {
    background: #000;
    flex-shrink: 1;
    padding: 30px 20px;
  }

  ._1b34e2be aside p {
    margin: 0;
    color: #999999;
    font-size: 14px;
    line-height: 24px;
  }

  ._1b34e2be aside a {
    color: #fff;
    text-decoration: none;
  }

  ._1b34e2be section span {
    font-size: 24px;
    font-weight: 500;
    display: block;
    border-bottom: 1px solid #eaeaea;
    text-align: center;
    padding-bottom: 20px;
    width: 100px;
  }

  ._1b34e2be section p {
    font-size: 14px;
    font-weight: 400;
  }

  ._1b34e2be section span + p {
    margin: 20px 0 0 0;
  }

  @media (min-width: 768px) {
    ._1b34e2be section {
      height: 40px;
      flex-direction: row;
    }

    ._1b34e2be section span,._1b34e2be section p {
      height: 100%;
      line-height: 40px;
    }

    ._1b34e2be section span {
      border-bottom: 0;
      border-right: 1px solid #eaeaea;
      padding: 0 20px 0 0;
      width: auto;
    }

    ._1b34e2be section span + p {
      margin: 0;
      padding-left: 20px;
    }

    ._1b34e2be aside {
      padding: 50px 0;
    }

    ._1b34e2be aside p {
      max-width: 520px;
      text-align: center;
    }
  }
._2ec7eca7 {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    width: 100%;
    height: 100%;
  }
  ._2ec7eca7 > div {
    display: inline-block;
    position: relative;
    width: 64px;
    height: 64px;
  }
  ._2ec7eca7 > div > div {
    position: absolute;
    top: 27px;
    width: 11px;
    height: 11px;
    border-radius: 50%;
    background: #fdd;
    animation-timing-function: cubic-bezier(0, 1, 1, 0);
  }
  ._2ec7eca7 > div div:nth-child(1) {
    left: 6px;
    animation: lds-ellipsis1 0.6s infinite;
  }
  ._2ec7eca7 > div div:nth-child(2) {
    left: 6px;
    animation: lds-ellipsis2 0.6s infinite;
  }
  ._2ec7eca7 > div div:nth-child(3) {
    left: 26px;
    animation: lds-ellipsis2 0.6s infinite;
  }
  ._2ec7eca7 > div div:nth-child(4) {
    left: 45px;
    animation: lds-ellipsis3 0.6s infinite;
  }
  @keyframes lds-ellipsis1 {
    0% {
      transform: scale(0);
    }
    100% {
      transform: scale(1);
    }
  }
  @keyframes lds-ellipsis3 {
    0% {
      transform: scale(1);
    }
    100% {
      transform: scale(0);
    }
  }
  @keyframes lds-ellipsis2 {
    0% {
      transform: translate(0, 0);
    }
    100% {
      transform: translate(19px, 0);
    }
  }
._340990b5 {
    max-width: 640px;
    margin: 0 auto;
  }
  h2 {
    margin: 1.2em 0 0.4em 0;
  }
  p {
    margin-top: 0;
  }
@keyframes tdFadeIn {
    0% {
      opacity: 0;
    }
    100% {
      opacity: 1;
    }
  }
  @keyframes tdFadeOut {
    0% {
      opacity: 1;
    }
    100% {
      opacity: 0;
    }
  }
  ._9dc09ced {
    box-shadow: rgba(0, 0, 0, 0.25) 0px 14px 45px,
      rgba(0, 0, 0, 0.22) 0px 10px 18px;
    animation-name: tdFadeIn;
    animation-duration: 0.3s;
    animation-fill-mode: both;
  }
  ._9dc09ced img {
    max-width: 100vw;
    max-height: 100vh;
    display: block;
    background-size: 100% 100%;
  }
  ._9dc09ced .text {
    display: none;
  }
  @media screen and (min-width: 50em) {
    ._9dc09ced .text {
      display: block;
    }
    ._9dc09ced img {
      max-width: 95vw;
      max-height: 95vh;
    }
  }
  @media screen and (min-width: 80em) {
    ._9dc09ced img {
      max-width: 90vw;
      max-height: 90vh;
    }
  }
  ._9dc09ced button {
    background-color: rgba(0, 0, 0, 0.3);
    font-size: 30px;
    color: #ffffff;
    position: absolute;
    right: 0;
    top: 0;
    border: none;
    padding: 0 12px 5px;
    cursor: pointer;
    z-index: 99;
  }
  ._9dc09ced button:hover {
    background-color: rgba(0, 0, 0, 0.5);
    color: #dddddd;
  }
  ._9dc09ced button:focus {
    outline: none;
  }
  ._9dc09ced .text {
    background-color: rgba(0, 0, 0, 0.5);
    max-width: 400px;
    width: 100%;
    padding: 1em;
    color: #eeeeee;
    position: absolute;
    left: 0;
    bottom: 0;
    text-shadow: 1px 1px 1px black;
  }
  ._9dc09ced .text h2 {
    margin: 0 0 0.2em;
  }
  ._9dc09ced .text h3 {
    color: #cccccc;
    margin: 0;
  }
  ._9dc09ced .text p {
    line-height: 1.5;
    margin: 0.75em 0 0.25em 0;
  }
  .closing ._9dc09ced, ._9dc09ced.closing {
    animation-name: tdFadeOut;
  }
._b1f28bc9 {
    height: 0;
    position: relative;
    width: 100%;
  }
  ._b1f28bc9.ratio-4x3 {
    padding-bottom: 75%;
  }
  ._b1f28bc9 > * {
    cursor: pointer;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    background-color: #eeeeee;
  }
  ._b1f28bc9 > *.missing {
    background-size: 66.67%;
    background-color: #eeeeee;
  }
._e5d9f2b8 header {
    padding: 1rem;
  }
  ._e5d9f2b8 .item {
    padding: 0.667rem 1rem;
    display: block;
    width: 100%;
    background: none;
    border: none;
    border-bottom: 1px solid #ccc;
    text-align: left;
  }
  ._e5d9f2b8 .item .image {
    width: 30%;
    float: left;
    margin-right: 0.75em;
  }
  ._e5d9f2b8 .item:hover {
    background-color: #eeeeee;
    cursor: pointer;
  }
  ._e5d9f2b8 .item:focus {
    background-color: #dddddd;
    outline: none;
  }
  ._e5d9f2b8 .item:first-child {
    border-top: 1px solid #ccc;
  }
  ._e5d9f2b8 .missing {
    background-color: #dddddd;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  ._e5d9f2b8 .missing img {
    width: 54px;
    height: 46px;
  }
._625d4558,
  body {
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI',
      'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',
      'Helvetica Neue', sans-serif;
    margin: 0;
    padding: 0;
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
    display: flex;
    font-size: 16px;
  }
  ._625d4558 h1,._625d4558 h2,._625d4558 h3 {
    margin-top: 0;
  }
  ._625d4558 h1 {
    font-size: 1.6rem;
    margin-bottom: 0.1em;
  }
  ._625d4558 h2 {
    font-size: 1.1rem;
    margin-bottom: 0.3em;
  }
  ._625d4558 h3 {
    font-size: 1rem;
    color: #666;
  }
  ._625d4558 p {
    font-size: 14px;
    line-height: 1.5;
    margin: 0.5em 0;
  }
  ._625d4558 img {
    display: block;
  }
  ._625d4558 > .left-column {
    width: 80%;
    max-width: 400px;
    min-width: 300px;
    overflow-y: scroll;
  }
  ._625d4558 > .right-column {
    top: 0;
    bottom: 0;
    transition: transform 200ms;
    transform: translate(0, 0);
    width: 100%;
    overflow: hidden;
    position: absolute;
    box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14),
      0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.4);
  }
  @media screen and (min-width: 50em) {
    ._625d4558 > .left-column {
      flex: 1;
      overflow-y: scroll;
    }
    ._625d4558 > .right-column {
      flex: 2;
      overflow: hidden;
      position: relative;
      box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14),
        0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.4);
    }
  }
._4b6f91b9 {
    position: absolute;
    height: 100%;
    width: 100%;
  }
  .mapboxgl-ctrl-group > button.mapboxgl-ctrl-compass {
    display: none;
  }
._772d4cdc {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M0 0h24v24H0z' fill='none'/%3E%3Cpath d='M3 5v4h2V5h4V3H5c-1.1 0-2 .9-2 2zm2 10H3v4c0 1.1.9 2 2 2h4v-2H5v-4zm14 4h-4v2h4c1.1 0 2-.9 2-2v-4h-2v4zm0-16h-4v2h4v4h2V5c0-1.1-.9-2-2-2z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
  }
@keyframes tdFadeBackgroundIn {
    0% {
      background-color: rgba(0, 0, 0, 0);
    }
    100% {
      background-color: rgba(0, 0, 0, 0.8);
    }
  }
  @keyframes tdFadeBackgroundOut {
    0% {
      background-color: rgba(0, 0, 0, 0.8);
    }
    100% {
      background-color: rgba(0, 0, 0, 0);
    }
  }
  ._2df081ca {
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI',
      'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',
      'Helvetica Neue', sans-serif;
  }
  ._2df081ca.open {
    z-index: 9999;
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    max-height: 100%;
    overflow-y: scroll;
    animation-name: tdFadeBackgroundIn;
    animation-duration: 0.3s;
    animation-fill-mode: both;
  }
  ._2df081ca.closing {
    animation-name: tdFadeBackgroundOut;
    pointer-events: none;
  }
  ._2df081ca > div {
    position: relative;
  }
  ._2df081ca > div:focus {
    outline: none;
  }
._965d4390 {
    position: absolute;
    transform: translate(0, 0);
    top: 0;
    left: 0;
    will-change: transform;
    pointer-events: none;
    width: 300px;
    display: flex;
  }
  ._965d4390.anchor-top,._965d4390.anchor-top-left,._965d4390.anchor-top-right {
    -webkit-flex-direction: column;
    flex-direction: column;
  }
  ._965d4390.anchor-bottom,._965d4390.anchor-bottom-left,._965d4390.anchor-bottom-right {
    -webkit-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
  ._965d4390.anchor-left {
    -webkit-flex-direction: row;
    flex-direction: row;
  }
  ._965d4390.anchor-right {
    -webkit-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
  ._965d4390 .popup-tip {
    cursor: pointer;
    width: 0;
    height: 0;
    border: 10px solid transparent;
    z-index: 1;
  }
  ._965d4390.anchor-top .popup-tip {
    -webkit-align-self: center;
    align-self: center;
    border-top: none;
    border-bottom-color: #fff;
  }
  ._965d4390.anchor-top-left .popup-tip {
    -webkit-align-self: flex-start;
    align-self: flex-start;
    border-top: none;
    border-left: none;
    border-bottom-color: #fff;
  }
  ._965d4390.anchor-top-right .popup-tip {
    -webkit-align-self: flex-end;
    align-self: flex-end;
    border-top: none;
    border-right: none;
    border-bottom-color: #fff;
  }
  ._965d4390.anchor-bottom .popup-tip {
    -webkit-align-self: center;
    align-self: center;
    border-bottom: none;
    border-top-color: #fff;
  }
  ._965d4390.anchor-bottom-left .popup-tip {
    -webkit-align-self: flex-start;
    align-self: flex-start;
    border-bottom: none;
    border-left: none;
    border-top-color: #fff;
  }
  ._965d4390.anchor-bottom-right .popup-tip {
    -webkit-align-self: flex-end;
    align-self: flex-end;
    border-bottom: none;
    border-right: none;
    border-top-color: #fff;
  }
  ._965d4390.anchor-left .popup-tip {
    -webkit-align-self: center;
    align-self: center;
    border-left: none;
    border-right-color: #fff;
  }
  ._965d4390.anchor-right .popup-tip {
    -webkit-align-self: center;
    align-self: center;
    border-right: none;
    border-left-color: #fff;
  }
  ._965d4390 .popup-close-button {
    background-color: rgba(0, 0, 0, 0.3);
    font-size: 20px;
    color: #ffffff;
    position: absolute;
    right: 0;
    top: 0;
    border: none;
    border-radius: 0 3px 0 0;
    cursor: pointer;
    z-index: 99;
  }
  ._965d4390 .popup-close-button:hover {
    background-color: rgba(0, 0, 0, 0.5);
    color: #dddddd;
  }
  ._965d4390 .popup-close-button:focus {
    outline: none;
  }
  ._965d4390 .popup-content {
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23);
    pointer-events: auto;
    background-color: #ffffff;
    position: relative;
  }
  ._965d4390 .popup-text {
    padding: 10px;
  }
._37c08fab {
    box-shadow: rgba(0, 0, 0, 0.25) 0px 14px 45px,
      rgba(0, 0, 0, 0.22) 0px 10px 18px;
    width: 100vw;
    max-width: 500px;
    background-color: white;
    animation-name: tdFadeIn;
    animation-duration: 0.3s;
    animation-fill-mode: both;
    padding: 1.5em;
  }
  .closing ._37c08fab, ._37c08fab.closing {
    animation-name: tdFadeOut;
  }
  ._37c08fab h2 {
    margin-top: 0;
  }
  ._37c08fab p {
    margin-bottom: 0.5em;
    line-height: 1.5;
  }
  ._37c08fab .actions {
    text-align: right;
  }
  ._37c08fab button {
    border: none;
    background: none;
    padding: 0.5em 1em;
    display: inline-block;
    height: 36px;
    padding: 0 16px;
    cursor: pointer;
  }
  ._37c08fab button:hover {
    background-color: #cccccc;
  }
  ._37c08fab button:focus {
    outline: none;
  }
