@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Karla:wght@400;700&display=swap");
*:not(i), *:not(i)::before, *:not(i)::after {
  margin: 0;
  padding: 0;
  border: none;
  box-sizing: border-box; }

html {
  -webkit-text-size-adjust: 100%;
  /* Prevent font scaling in landscape while allowing user zoom */ }

article, aside, details, figcaption, figure,
footer, header, main, menu, nav, section, summary {
  display: block; }

::-moz-selection {
  background: #50c6c1;
  color: black; }

::selection {
  background: #50c6c1;
  color: black; }

body:not(.user-is-tabbing) button:focus,
body:not(.user-is-tabbing) input:focus,
body:not(.user-is-tabbing) select:focus,
body:not(.user-is-tabbing) textarea:focus {
  outline: none; }

button,
input,
optgroup,
select,
textarea, html input[type="button"],
input[type="reset"],
input[type="submit"], button[disabled],
html input[disabled], button::-moz-focus-inner,
input::-moz-focus-inner, input[type="checkbox"],
input[type="radio"], input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button, input[type="search"], input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  border: none;
  background-image: none;
  background-color: transparent !important;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none; }

html body input:-internal-autofill-selected {
  background-color: transparent !important;
  background-image: none !important;
  color: -internal-light-dark-color(black, white) !important; }

@font-face {
  font-family: Sabon;
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/sabon/SabonMTStd-Regular.otf") format("opentype"); }
@font-face {
  font-family: Sabon;
  font-style: italic;
  font-weight: 600;
  src: url("../fonts/sabon/SabonLTStd-BoldItalic.otf") format("opentype"); }
@font-face {
  font-family: Sabon;
  font-style: normal;
  font-weight: 600;
  src: url("../fonts/sabon/SabonMTStd-Semibold.otf") format("opentype"); }
.font-serif-xl {
  font-family: "Sabon", serif;
  font-size: 30px;
  letter-spacing: 0;
  line-height: 1.3em;
  font-weight: 600;
  font-style: normal;
  font-stretch: normal; }
  @media (min-width: 576px) {
    .font-serif-xl {
      font-size: 36px; } }
  @media (min-width: 768px) {
    .font-serif-xl {
      font-size: 40px; } }
  @media (min-width: 992px) {
    .font-serif-xl {
      font-size: 40px; } }
  @media (min-width: 1200px) {
    .font-serif-xl {
      font-size: 40px; } }

.font-serif-l {
  font-family: "Sabon", serif;
  font-size: 21px;
  letter-spacing: 0;
  line-height: 1.3em;
  font-weight: 600;
  font-style: normal;
  font-stretch: normal; }
  @media (min-width: 576px) {
    .font-serif-l {
      font-size: 21px; } }
  @media (min-width: 768px) {
    .font-serif-l {
      font-size: 22px; } }
  @media (min-width: 992px) {
    .font-serif-l {
      font-size: 22px; } }
  @media (min-width: 1200px) {
    .font-serif-l {
      font-size: 22px; } }

.font-serif-m {
  font-family: "Sabon", serif;
  font-size: 18px;
  letter-spacing: 0;
  line-height: 1.2em;
  font-weight: 600;
  font-style: normal;
  font-stretch: normal; }
  @media (min-width: 576px) {
    .font-serif-m {
      font-size: 18px; } }
  @media (min-width: 768px) {
    .font-serif-m {
      font-size: 18px; } }
  @media (min-width: 992px) {
    .font-serif-m {
      font-size: 18px; } }
  @media (min-width: 1200px) {
    .font-serif-m {
      font-size: 18px; } }

.font-body {
  font-family: "Sabon", serif;
  font-size: 18px;
  letter-spacing: 0;
  line-height: 1.2em;
  font-weight: 400;
  font-style: normal;
  font-stretch: normal; }
  @media (min-width: 576px) {
    .font-body {
      font-size: 18px; } }
  @media (min-width: 768px) {
    .font-body {
      font-size: 18px; } }
  @media (min-width: 992px) {
    .font-body {
      font-size: 18px; } }
  @media (min-width: 1200px) {
    .font-body {
      font-size: 18px; } }

.font-small {
  font-family: "Karla", sans-serif;
  font-size: 13px;
  letter-spacing: 0;
  line-height: 1.3em;
  font-weight: 400;
  font-style: normal;
  font-stretch: normal; }
  @media (min-width: 576px) {
    .font-small {
      font-size: 13px; } }
  @media (min-width: 768px) {
    .font-small {
      font-size: 13px; } }
  @media (min-width: 992px) {
    .font-small {
      font-size: 13px; } }
  @media (min-width: 1200px) {
    .font-small {
      font-size: 13px; } }

.font-small-bold {
  font-family: "Karla", sans-serif;
  font-size: 13px;
  letter-spacing: 0;
  line-height: 1.3em;
  font-weight: 700;
  font-style: normal;
  font-stretch: normal; }
  @media (min-width: 576px) {
    .font-small-bold {
      font-size: 13px; } }
  @media (min-width: 768px) {
    .font-small-bold {
      font-size: 13px; } }
  @media (min-width: 992px) {
    .font-small-bold {
      font-size: 13px; } }
  @media (min-width: 1200px) {
    .font-small-bold {
      font-size: 13px; } }

.font-small-stories {
  font-family: "Karla", sans-serif;
  font-size: 13px;
  letter-spacing: 0;
  line-height: 1.3em;
  font-weight: 400;
  font-style: normal;
  font-stretch: normal;
  text-transform: uppercase; }
  @media (min-width: 576px) {
    .font-small-stories {
      font-size: 13px; } }
  @media (min-width: 768px) {
    .font-small-stories {
      font-size: 13px; } }
  @media (min-width: 992px) {
    .font-small-stories {
      font-size: 13px; } }
  @media (min-width: 1200px) {
    .font-small-stories {
      font-size: 13px; } }
  .font-small-stories, .font-small-stories tspan {
    color: #E75F52;
    fill: #E75F52; }

.font-body-l {
  font-family: "Sabon", serif;
  font-size: 21px;
  letter-spacing: 0;
  line-height: 1.3em;
  font-weight: 600;
  font-style: normal;
  font-stretch: normal;
  font-weight: 400; }
  @media (min-width: 576px) {
    .font-body-l {
      font-size: 21px; } }
  @media (min-width: 768px) {
    .font-body-l {
      font-size: 22px; } }
  @media (min-width: 992px) {
    .font-body-l {
      font-size: 22px; } }
  @media (min-width: 1200px) {
    .font-body-l {
      font-size: 22px; } }

.font-small-light {
  font-family: "Karla", sans-serif;
  font-size: 13px;
  letter-spacing: 0;
  line-height: 1.3em;
  font-weight: 400;
  font-style: normal;
  font-stretch: normal;
  opacity: 0.3; }
  @media (min-width: 576px) {
    .font-small-light {
      font-size: 13px; } }
  @media (min-width: 768px) {
    .font-small-light {
      font-size: 13px; } }
  @media (min-width: 992px) {
    .font-small-light {
      font-size: 13px; } }
  @media (min-width: 1200px) {
    .font-small-light {
      font-size: 13px; } }

p.font-body-l {
  margin-bottom: 0.8em; }

p.font-body {
  margin-bottom: 0.8em; }

h2.font-serif-subtitle {
  font-family: "Sabon", serif;
  font-size: 18px;
  letter-spacing: 0;
  line-height: 1.2em;
  font-weight: 400;
  font-style: normal;
  font-stretch: normal;
  font-size: 2vw !important; }
  @media (min-width: 576px) {
    h2.font-serif-subtitle {
      font-size: 18px; } }
  @media (min-width: 768px) {
    h2.font-serif-subtitle {
      font-size: 18px; } }
  @media (min-width: 992px) {
    h2.font-serif-subtitle {
      font-size: 18px; } }
  @media (min-width: 1200px) {
    h2.font-serif-subtitle {
      font-size: 18px; } }

/* USAGE 
@include keyframes(slide-down) {
  0% { opacity: 1; }
  90% { opacity: 0; }
}

.element {
  width: 100px;
  height: 100px;
  background: black;
  @include animation('slide-down 5s 3');
}
*/
@keyframes blink {
  33% {
    opacity: 0.15; }
  66% {
    opacity: 0.7; } }
body {
  background-color: #E6E7E7; }

* {
  color: black; }

a {
  cursor: pointer;
  color: inherit;
  text-decoration: none; }
  a:hover {
    color: inherit;
    text-decoration: none; }

a.btn {
  display: inline-flex;
  align-items: center;
  height: 35px;
  padding: 0 45px;
  border-radius: 20px;
  text-transform: uppercase;
  position: relative;
  font-family: "Karla", sans-serif;
  font-size: 13px;
  letter-spacing: 0;
  line-height: 1.3em;
  font-weight: 700;
  font-style: normal;
  font-stretch: normal;
  -webkit-transition: background-color 200ms, padding 200ms;
  -moz-transition: background-color 200ms, padding 200ms;
  -ms-transition: background-color 200ms, padding 200ms;
  -o-transition: background-color 200ms, padding 200ms;
  transition: background-color 200ms, padding 200ms; }
  @media (min-width: 576px) {
    a.btn {
      font-size: 13px; } }
  @media (min-width: 768px) {
    a.btn {
      font-size: 13px; } }
  @media (min-width: 992px) {
    a.btn {
      font-size: 13px; } }
  @media (min-width: 1200px) {
    a.btn {
      font-size: 13px; } }
  a.btn:not(.no-arrow):hover {
    padding: 0 52px 0 38px; }
    a.btn:not(.no-arrow):hover::after {
      opacity: 1;
      right: 29px; }
  a.btn:not(.no-arrow)::after {
    content: "↗";
    padding-left: 9px;
    position: absolute;
    top: 9px;
    right: 22px;
    font-size: 11px;
    opacity: 0;
    -webkit-transition: opacity 200ms, right 200ms;
    -moz-transition: opacity 200ms, right 200ms;
    -ms-transition: opacity 200ms, right 200ms;
    -o-transition: opacity 200ms, right 200ms;
    transition: opacity 200ms, right 200ms; }
  a.btn.arrow-right::after {
    content: "→"; }
  a.btn.coral {
    color: white;
    background-color: #E75F52; }
    a.btn.coral:hover {
      background-color: #e44a3c; }
  a.btn.white {
    color: #E75F52;
    background-color: white; }
  a.btn.green {
    color: white;
    background-color: #072442; }
    a.btn.green:hover {
      background-color: #05172b; }
  a.btn.nav-arrow, a.btn.nav-arrow:hover {
    padding: 0;
    padding-left: 12px;
    width: 35px; }
    a.btn.nav-arrow::after, a.btn.nav-arrow:hover::after {
      display: none; }

.responsive-padding {
  padding-left: 20px;
  padding-right: 20px; }
  @media (min-width: 576px) {
    .responsive-padding {
      padding-left: 45px;
      padding-right: 45px; } }

.responsive-margin {
  margin-left: 20px;
  margin-right: 20px; }
  @media (min-width: 576px) {
    .responsive-margin {
      margin-left: 45px;
      margin-right: 45px; } }

.container-fluid.max {
  max-width: 1000px; }

.container-fluid.full-w {
  padding-left: 0;
  padding-right: 0; }

#header a.item, #header a.item span {
  -webkit-transition: color 400ms;
  -moz-transition: color 400ms;
  -ms-transition: color 400ms;
  -o-transition: color 400ms;
  transition: color 400ms; }
#header a.item.active, #header a.item.active span, #header a.item:hover, #header a.item:hover span {
  color: #E75F52; }

#to-top {
  position: absolute;
  top: 0;
  right: 45px; }
  @media (max-width: 767.98px) {
    #to-top {
      right: 20px; } }

section {
  padding-left: 30px;
  padding-right: 30px; }
  @media (max-width: 767.98px) {
    section {
      padding-left: 5px;
      padding-right: 5px; } }

p.log {
  display: none; }

#top {
  position: fixed;
  top: 0; }

#fill-window {
  position: relative;
  overflow: hidden;
  height: 100vh;
  -webkit-transition: height 400ms;
  -moz-transition: height 400ms;
  -ms-transition: height 400ms;
  -o-transition: height 400ms;
  transition: height 400ms; }
  @media (max-width: 991.98px) {
    body.home #fill-window {
      height: calc(113vw + 120px * 3); }
    body.story #fill-window {
      height: 90px; } }
  #fill-window #container {
    height: calc(100% - 90px);
    width: 100%;
    position: relative;
    background-color: #E6E7E7; }
    #fill-window #container .legend-cta {
      z-index: 2;
      opacity: 0;
      position: absolute;
      top: 0;
      pointer-events: none;
      -webkit-transition: opacity 600ms;
      -moz-transition: opacity 600ms;
      -ms-transition: opacity 600ms;
      -o-transition: opacity 600ms;
      transition: opacity 600ms;
      left: calc(50vw - 160px);
      right: calc(50vw - 160px); }
      body.home.legend #fill-window #container .legend-cta {
        pointer-events: all;
        opacity: 1; }
    #fill-window #container #story-title-lg {
      display: none;
      pointer-events: none;
      position: absolute;
      width: 50%;
      padding-left: 10%;
      padding-right: 10%;
      text-align: center;
      top: 70%;
      z-index: 2;
      /* >>>> */
      margin-top: 4vh;
      -webkit-transition: opacity 200ms;
      -moz-transition: opacity 200ms;
      -ms-transition: opacity 200ms;
      -o-transition: opacity 200ms;
      transition: opacity 200ms; }
      #fill-window #container #story-title-lg.loading {
        opacity: 0; }
      @media (min-width: 992px) {
        body.story #fill-window #container #story-title-lg {
          display: block; } }
  #fill-window #header {
    height: 90px;
    min-height: 90px;
    width: 100%;
    position: relative; }
    #fill-window #header .wrapper-menu-home, #fill-window #header .wrapper-menu-full {
      position: absolute;
      background-color: white;
      top: 0;
      left: 0;
      bottom: 0;
      right: 0;
      padding: 0 45px; }
      @media (max-width: 767.98px) {
        #fill-window #header .wrapper-menu-home, #fill-window #header .wrapper-menu-full {
          padding: 20px; } }
      #fill-window #header .wrapper-menu-home .logo, #fill-window #header .wrapper-menu-full .logo {
        cursor: pointer; }
        #fill-window #header .wrapper-menu-home .logo img.odi-logo, #fill-window #header .wrapper-menu-full .logo img.odi-logo {
          position: relative;
          top: 2px;
          height: 30px;
          margin-right: 30px; }
          @media (max-width: 991.98px) {
            #fill-window #header .wrapper-menu-home .logo img.odi-logo, #fill-window #header .wrapper-menu-full .logo img.odi-logo {
              top: -2px; } }
          @media (max-width: 767.98px) {
            #fill-window #header .wrapper-menu-home .logo img.odi-logo, #fill-window #header .wrapper-menu-full .logo img.odi-logo {
              height: 24px;
              margin-right: 24px; } }
          @media (max-width: 575.98px) {
            #fill-window #header .wrapper-menu-home .logo img.odi-logo, #fill-window #header .wrapper-menu-full .logo img.odi-logo {
              top: 2px; } }
        #fill-window #header .wrapper-menu-home .logo, #fill-window #header .wrapper-menu-home .logo h1, #fill-window #header .wrapper-menu-full .logo, #fill-window #header .wrapper-menu-full .logo h1 {
          white-space: nowrap; }
        #fill-window #header .wrapper-menu-home .logo .subtitle, #fill-window #header .wrapper-menu-full .logo .subtitle {
          border-left: 1px solid black;
          margin-left: 2.3vw;
          padding-left: 2.3vw;
          padding-top: 1vw; }
          @media (min-width: 576px) {
            #fill-window #header .wrapper-menu-home .logo .subtitle, #fill-window #header .wrapper-menu-full .logo .subtitle {
              padding-top: 3px; } }
          @media (min-width: 992px) {
            #fill-window #header .wrapper-menu-home .logo .subtitle, #fill-window #header .wrapper-menu-full .logo .subtitle {
              margin-left: 17px;
              padding-left: 17px;
              padding-top: 6px;
              font-size: 24px !important; } }
      #fill-window #header .wrapper-menu-home a.item, #fill-window #header .wrapper-menu-full a.item {
        margin-left: 20px; }
    #fill-window #header .wrapper-menu-full {
      display: flex;
      justify-content: space-between;
      align-items: center; }
      @media (min-width: 1200px) {
        #fill-window #header .wrapper-menu-full .logo {
          width: 33%;
          overflow: visible; } }
      #fill-window #header .wrapper-menu-full .center {
        flex-grow: 1;
        white-space: nowrap;
        text-align: right; }
        @media (min-width: 1200px) {
          #fill-window #header .wrapper-menu-full .center {
            width: 33%;
            text-align: center;
            overflow: visible; } }
      #fill-window #header .wrapper-menu-full .right {
        text-align: right;
        white-space: nowrap;
        pointer-events: none; }
        @media (min-width: 1200px) {
          #fill-window #header .wrapper-menu-full .right {
            width: 33%;
            overflow: visible; } }
        #fill-window #header .wrapper-menu-full .right a {
          pointer-events: all; }
    #fill-window #header .wrapper-menu-home {
      opacity: 1;
      pointer-events: all; }
    #fill-window #header .wrapper-menu-full {
      opacity: 0;
      pointer-events: none; }
    @media (min-width: 992px) {
      body.home #fill-window #header .wrapper-menu-home {
        opacity: 1;
        pointer-events: all;
        background-color: rgba(0, 0, 0, 0); }
      body.home #fill-window #header .wrapper-menu-full {
        opacity: 0;
        pointer-events: none; }
      body.area #fill-window #header .wrapper-menu-home, body.story #fill-window #header .wrapper-menu-home {
        opacity: 0;
        pointer-events: none; }
      body.area #fill-window #header .wrapper-menu-full, body.story #fill-window #header .wrapper-menu-full {
        opacity: 1;
        pointer-events: all; } }
    #fill-window #header.north-america a[data-value="north-america"] {
      color: #E75F52; }
    #fill-window #header.latin-america a[data-value="latin-america"] {
      color: #E75F52; }
    #fill-window #header.europe a[data-value="europe"] {
      color: #E75F52; }
    #fill-window #header.africa a[data-value="africa"] {
      color: #E75F52; }
    #fill-window #header.asia-oceania a[data-value="asia-oceania"] {
      color: #E75F52; }

#content {
  overflow: hidden; }
  #content #content-wrapper {
    padding-left: 20px;
    padding-right: 20px;
    -webkit-transition: opacity 200ms;
    -moz-transition: opacity 200ms;
    -ms-transition: opacity 200ms;
    -o-transition: opacity 200ms;
    transition: opacity 200ms; }
    @media (min-width: 576px) {
      #content #content-wrapper {
        padding-left: 45px;
        padding-right: 45px; } }
    #content #content-wrapper.loading {
      opacity: 0.2; }
  @media (max-width: 991.98px) {
    #content {
      background-color: #E6E7E7; }
      body.home #content {
        height: 0; }
      body.area #content, body.story #content {
        min-height: 38vh; } }
  @media (min-width: 992px) {
    #content {
      position: fixed;
      left: 50%;
      right: 0;
      top: 90px;
      bottom: 0;
      pointer-events: none;
      -webkit-transition: opacity 600ms;
      -moz-transition: opacity 600ms;
      -ms-transition: opacity 600ms;
      -o-transition: opacity 600ms;
      transition: opacity 600ms; }
      body.home #content {
        opacity: 0; }
        body.home #content #content-wrapper {
          pointer-events: none; }
      #content #content-wrapper {
        position: absolute;
        left: 15px;
        right: 0px;
        top: 0;
        bottom: 0;
        padding: 0 45px 0 30px;
        pointer-events: all;
        overflow-y: scroll; } }
  #content #stiky-placeholder {
    display: block; }
    #content #stiky-placeholder.stick {
      height: 59px; }
  #content #story-previews-header {
    z-index: 2;
    background-color: #E6E7E7;
    padding-top: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.15);
    position: relative;
    height: 59px; }
    #content #story-previews-header.stick {
      left: calc(50% + 45px);
      width: calc(50% - 90px); }
      @media (max-width: 991.98px) {
        #content #story-previews-header.stick {
          left: 0;
          width: calc(100% - 90px);
          margin-left: 45px;
          margin-right: 45px; } }
      @media (max-width: 767.98px) {
        #content #story-previews-header.stick {
          left: 0;
          width: calc(100% - 40px);
          margin-left: 20px;
          margin-right: 20px; } }
  #content .story-previews .reset-filters {
    display: none; }
  #content .story-previews .story-preview .map-wrapper-outer {
    max-width: 50%;
    position: relative; }
    #content .story-previews .story-preview .map-wrapper-outer .map-wrapper {
      width: 100%;
      padding-bottom: 66%;
      position: relative; }
      #content .story-previews .story-preview .map-wrapper-outer .map-wrapper img {
        position: absolute;
        top: 0;
        left: 0;
        max-width: 100%;
        max-height: 100%; }
  #content .area-stats .stat-wrapper {
    cursor: pointer;
    -webkit-transition: opacity 400ms;
    -moz-transition: opacity 400ms;
    -ms-transition: opacity 400ms;
    -o-transition: opacity 400ms;
    transition: opacity 400ms; }
    #content .area-stats .stat-wrapper.deselected {
      opacity: 0.5; }
    #content .area-stats .stat-wrapper.selected, #content .area-stats .stat-wrapper:hover {
      opacity: 1; }
      #content .area-stats .stat-wrapper.selected .stat .circle, #content .area-stats .stat-wrapper:hover .stat .circle {
        opacity: 1; }
    #content .area-stats .stat-wrapper .stat {
      display: flex;
      align-items: center;
      justify-content: center;
      height: 100px;
      position: relative;
      z-index: 1;
      pointer-events: none; }
      #content .area-stats .stat-wrapper .stat .circle {
        border-radius: 300px;
        background-color: #3EBFB9;
        cursor: pointer;
        pointer-events: all;
        opacity: 0.25;
        -webkit-transition: opacity 400ms;
        -moz-transition: opacity 400ms;
        -ms-transition: opacity 400ms;
        -o-transition: opacity 400ms;
        transition: opacity 400ms; }
      #content .area-stats .stat-wrapper .stat .number {
        position: absolute;
        top: 50%;
        width: 100%;
        margin-top: -9px;
        text-align: center;
        overflow: visible;
        pointer-events: none; }
    #content .area-stats .stat-wrapper .copy {
      position: relative;
      text-align: center;
      z-index: 2; }
  #content .area-stats .area-map img {
    width: 50vh;
    max-width: 100%;
    height: auto;
    max-height: 50vh; }
  #content .story-nav {
    padding: 0; }
  #content .story {
    margin-top: 40px;
    padding-left: 0;
    padding-right: 0; }
    #content .story .story-data {
      border-left: 1px solid rgba(0, 0, 0, 0.15);
      left: -5px;
      padding-left: 10px;
      padding-right: 5px; }
    #content .story .map-wrapper {
      width: 90%;
      padding-bottom: 66%;
      position: relative; }
      #content .story .map-wrapper img {
        position: absolute;
        top: 0;
        left: 0;
        max-width: 100%;
        max-height: 100%; }
    #content .story .story-body p {
      margin-bottom: 22px; }
    #content .story .story-body .bar {
      width: 100%;
      height: 10px;
      background-color: white;
      position: relative; }
      #content .story .story-body .bar > div {
        background-color: #3EBFB9;
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0; }
    #content .story .story-body .stat {
      width: 100%; }
    #content .story .story-body .source {
      padding: 0 calc(50% - 110px); }
    @media (max-width: 991.98px) {
      #content .story {
        margin-top: 60px;
        margin-bottom: 80px; } }

#ui-left {
  pointer-events: none;
  -webkit-transition: opacity 600ms;
  -moz-transition: opacity 600ms;
  -ms-transition: opacity 600ms;
  -o-transition: opacity 600ms;
  transition: opacity 600ms;
  position: fixed;
  left: 0;
  right: 50%;
  top: 90px;
  bottom: 0; }
  body.home #ui-left {
    opacity: 0; }
  @media (max-width: 991.98px) {
    #ui-left {
      position: absolute; } }
  @media (max-width: 991.98px) {
    #ui-left {
      right: 0; } }
  #ui-left .top {
    padding: 30px 45px; }
    @media (max-width: 767.98px) {
      #ui-left .top {
        padding: 0px 20px 20px 20px; } }
    #ui-left .top #nav-back {
      pointer-events: all; }
      @media (max-width: 991.98px) {
        body.story #ui-left .top #nav-back {
          display: none; } }
      body.area #ui-left .top #nav-back::after {
        content: "← ALL GEOGRAPHIES"; }
      body.story #ui-left .top #nav-back::after {
        content: "← GEOGRAPHY OVERVIEW"; }
  #ui-left .bottom {
    padding: 45px;
    pointer-events: none;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%; }
    #ui-left .bottom div {
      pointer-events: all; }
    body.area #ui-left .bottom {
      opacity: 0; }
      body.area #ui-left .bottom div {
        pointer-events: all; }
    @media (max-width: 991.98px) {
      #ui-left .bottom {
        display: none; } }

#about {
  position: relative;
  background-color: white;
  overflow: hidden;
  -webkit-transition: max-height 400ms;
  -moz-transition: max-height 400ms;
  -ms-transition: max-height 400ms;
  -o-transition: max-height 400ms;
  transition: max-height 400ms; }
  body.home #about {
    max-height: 10000px; }
  body.area #about, body.story #about {
    max-height: 0; }
  #about .about-legend img {
    max-width: 75px; }

#footer {
  overflow: hidden;
  -webkit-transition: max-height 400ms;
  -moz-transition: max-height 400ms;
  -ms-transition: max-height 400ms;
  -o-transition: max-height 400ms;
  transition: max-height 400ms;
  background-color: #072442;
  color: white; }
  body.home #footer {
    max-height: 500px; }
  @media (min-width: 992px) {
    body.area #footer, body.story #footer {
      max-height: 0; } }
  #footer a, #footer p {
    color: white; }
  #footer p {
    margin-bottom: 0.5em; }
  #footer .copy {
    color: white; }
    #footer .copy a:hover {
      text-decoration: underline; }
    #footer .copy.alpha {
      opacity: 0.5; }
  #footer img#footer-logo {
    max-width: 115px; }

#reloading {
  opacity: 0;
  display: none;
  pointer-events: none;
  -webkit-transition: opacity 400ms;
  -moz-transition: opacity 400ms;
  -ms-transition: opacity 400ms;
  -o-transition: opacity 400ms;
  transition: opacity 400ms; }
  body.will-reload #reloading {
    display: flex;
    align-items: center;
    justify-content: center;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: rgba(230, 231, 231, 0.95);
    opacity: 1; }

#cookies {
  background-color: #BDDDDC;
  position: fixed;
  z-index: 2;
  width: 300px;
  bottom: 20px;
  left: 20px;
  border-radius: 10px;
  padding: 18px 22px;
  opacity: 0;
  pointer-events: none; }
  body.banner #cookies {
    opacity: 1;
    pointer-events: all; }
  #cookies .s {
    font-size: 12px;
    opacity: 0.5; }
    #cookies .s a {
      text-decoration: underline; }
  #cookies .font-small-bold {
    opacity: 1; }

svg.artboard {
  position: absolute;
  left: 0;
  top: 0; }
  svg.artboard.hide-first * {
    opacity: 0; }
  svg.artboard g.tree {
    cursor: pointer;
    -webkit-transition: opacity 400ms;
    -moz-transition: opacity 400ms;
    -ms-transition: opacity 400ms;
    -o-transition: opacity 400ms;
    transition: opacity 400ms; }
    svg.artboard g.tree.hide:not(.selected) {
      pointer-events: none;
      opacity: 0; }
    svg.artboard g.tree .branch-g:not(.branch-story) {
      pointer-events: none; }
    svg.artboard g.tree path.branch-path {
      stroke: black;
      stroke-linecap: round;
      fill: none; }
      svg.artboard g.tree path.branch-path.branch-area, svg.artboard g.tree path.branch-path.branch-level {
        stroke-width: 1.5; }
        @media (max-width: 991.98px) {
          svg.artboard g.tree path.branch-path.branch-area, svg.artboard g.tree path.branch-path.branch-level {
            stroke-width: 1.2; } }
      svg.artboard g.tree path.branch-path.branch-sector {
        stroke-width: 0.7; }
      svg.artboard g.tree path.branch-path.branch-story {
        stroke-width: 0.5;
        stroke: #E75F52; }
    svg.artboard g.tree circle.story-count {
      -webkit-transition: opacity 400ms;
      -moz-transition: opacity 400ms;
      -ms-transition: opacity 400ms;
      -o-transition: opacity 400ms;
      transition: opacity 400ms; }
      svg.artboard g.tree circle.story-count:hover {
        opacity: 0.5; }
    svg.artboard g.tree text.area-name:hover {
      text-decoration: underline; }
    svg.artboard g.tree g.tree-label {
      -webkit-transition: opacity 400ms;
      -moz-transition: opacity 400ms;
      -ms-transition: opacity 400ms;
      -o-transition: opacity 400ms;
      transition: opacity 400ms; }
      body.story svg.artboard g.tree g.tree-label {
        opacity: 0; }
    svg.artboard g.tree .branch-g {
      -webkit-transition: opacity 400ms;
      -moz-transition: opacity 400ms;
      -ms-transition: opacity 400ms;
      -o-transition: opacity 400ms;
      transition: opacity 400ms; }
      svg.artboard g.tree .branch-g.selected, svg.artboard g.tree .branch-g.hovered {
        opacity: 1 !important; }
      body.legend svg.artboard g.tree .branch-g.branch-story {
        pointer-events: none; }
      svg.artboard g.tree .branch-g.branch-story:hover .selection-circle, svg.artboard g.tree .branch-g.branch-story.selected .selection-circle, svg.artboard g.tree .branch-g.branch-story.hovered .selection-circle {
        opacity: 1; }
    svg.artboard g.tree .circle-blink {
      -webkit-animation: blink 2s linear infinite;
      -moz-animation: blink 2s linear infinite;
      -ms-animation: blink 2s linear infinite;
      -o-animation: blink 2s linear infinite;
      animation: blink 2s linear infinite; }
    svg.artboard g.tree.faded {
      opacity: 0.25;
      pointer-events: none; }
      @media (max-width: 991.98px) {
        svg.artboard g.tree.faded {
          opacity: 0.1; } }
      svg.artboard g.tree.faded .tree-label {
        opacity: 0; }
  svg.artboard g.timeline {
    opacity: 1;
    -webkit-transition: opacity 400ms;
    -moz-transition: opacity 400ms;
    -ms-transition: opacity 400ms;
    -o-transition: opacity 400ms;
    transition: opacity 400ms; }
    svg.artboard g.timeline.hide {
      opacity: 0;
      pointer-events: none; }
    svg.artboard g.timeline.hide-points .points {
      opacity: 0;
      pointer-events: none; }
    svg.artboard g.timeline .points {
      -webkit-transition: opacity 400ms;
      -moz-transition: opacity 400ms;
      -ms-transition: opacity 400ms;
      -o-transition: opacity 400ms;
      transition: opacity 400ms; }
      svg.artboard g.timeline .points circle.point {
        -webkit-transition: fill 200ms;
        -moz-transition: fill 200ms;
        -ms-transition: fill 200ms;
        -o-transition: fill 200ms;
        transition: fill 200ms;
        fill: #bbb;
        stroke: #E6E7E7;
        stroke-width: 1px; }
      svg.artboard g.timeline .points g.point {
        cursor: pointer; }
        svg.artboard g.timeline .points g.point circle.point {
          pointer-events: none; }
        svg.artboard g.timeline .points g.point.selected circle.point, svg.artboard g.timeline .points g.point:hover circle.point {
          fill: black; }
    svg.artboard g.timeline .point-selection, svg.artboard g.timeline .point-date {
      pointer-events: none;
      -webkit-transition: opacity 400ms;
      -moz-transition: opacity 400ms;
      -ms-transition: opacity 400ms;
      -o-transition: opacity 400ms;
      transition: opacity 400ms; }
      svg.artboard g.timeline .point-selection.hide, svg.artboard g.timeline .point-date.hide {
        opacity: 0;
        pointer-events: none; }
    svg.artboard g.timeline .point-date {
      font-size: 12px !important; }
    svg.artboard g.timeline .point-selection {
      fill: none;
      stroke: black;
      stroke-width: 1px; }
    svg.artboard g.timeline line.timeline-skeleton {
      stroke: black;
      stroke-width: 1px;
      opacity: 0.15; }
    svg.artboard g.timeline line.timeline-skeleton-sensi {
      stroke: rgba(0, 0, 0, 0);
      stroke-width: 28px; }

.color-white {
  color: white; }

.color-coral {
  color: #E75F52; }

.color-green {
  color: #072442; }

.cursor-pointer {
  cursor: pointer; }

.b-top {
  border-top: 1px solid rgba(0, 0, 0, 0.15); }

.b-bottom {
  border-bottom: 1px solid rgba(0, 0, 0, 0.15); }

.text-itlaic {
  font-style: italic; }

/*# sourceMappingURL=index.css.map */
