@import url(https://fonts.googleapis.com/css?family=Montserrat:400,700|Source+Sans+Pro:300,400,700); 
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6,
p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn,
em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var,
b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas,
details, embed, figure, figcaption, footer, header, hgroup, menu, nav,
output, ruby, section, summary, time, mark, audio, video {
  border: 0;
  margin: 0;
  padding: 0;
  vertical-align: top; }

  blockquote, q {
    quotes: none; }

    blockquote:before, blockquote:after, q:before, q:after {
      content: '';
      content: none; }

      table {
        border-collapse: collapse;
        border-spacing: 0; }

        a {
          outline: 0; }

          ul {
            list-style-type: none;
            padding: 0px; }
body {
  background-color: #212831;
  color: #fff;
  font-family: "Source Sans Pro", "Helvetica Neue", "Helvetica", "Arial", sans-serif; }
  body.frozen {
    overflow: hidden; }
    body.error {
      overflow: hidden; }
      body .fa-angle-left:before {
        content: "\f104"; }
        body .fa-angle-right:before {
          content: "\f105"; }

@media screen and (max-device-width: 480px) {
  body {
    -webkit-text-size-adjust: none;   }
}

.wordwrap {
  overflow-wrap: break-word;
  word-wrap: break-word;
  -ms-word-break: break-all;
  word-break: break-word;
  white-space: initial !important; }

  h1, h2, h3, h4 {
    -webkit-margin-before: 0em;
    -webkit-margin-after: 0em; }

    h1, h2, h4 {
      font-family: "Source Sans Pro", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
      font-weight: 300; }

      h3 {
        font-family: "Montserrat", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
        font-weight: 400;
        font-size: 26px;
        letter-spacing: 1px;
        line-height: 1.15;
        text-transform: uppercase; }

        h1 {
          font-size: 40px;
          line-height: 1.25; }

          h2 {
            font-size: 30px;
            line-height: 1.3; }

            h4 {
              font-size: 25px;
              line-height: 1.4; }

              p {
                color: white;
                font-family: "Source Sans Pro", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
                font-size: 16px;
                font-weight: 400;
                letter-spacing: 0.01em;
                line-height: 26px;
                margin: 0 0 25px 0 !important;
                text-align: left; }
                p:last-child {
                  margin-bottom: 0; }
                  p sup {
                    display: inline-block;
                    margin: 2px 2px 2px 2px ;
                    margin-top: -5px; }
                    p a {
                      -webkit-transition: border-bottom 0.1s;
                      -moz-transition: border-bottom 0.1s;
                      -ms-transition: border-bottom 0.1s;
                      -o-transition: border-bottom 0.1s;
                      transition: border-bottom 0.1s;
                      border-bottom: 1px solid transparent;
                      color: #99BCD1;
                      text-decoration: none; }
                      p a:hover {
                        border-bottom: 1px solid #99BCD1; }

a {
  color: white;
  position: relative;
  text-decoration: none; }
  a.anchor:before {
    content: "";
    left: 0;
    position: absolute;
    top: -75px; }

table {
  -webkit-box-shadow: 0 2px 2px rgba(0, 0, 0, 0.5);
  -moz-box-shadow: 0 2px 2px rgba(0, 0, 0, 0.5);
  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.5);
  background-color: white;
  color: #333;
  margin-bottom: 20px;
  width: 100%; }
  table tr {
    border-bottom: 1px solid #63737f;
    font-family: "Source Sans Pro", "Helvetica Neue", "Helvetica", "Arial", sans-serif; }
    table tr:last-child {
      border-bottom: none; }
      table tr th, table tr td {
        font-size: 15px;
        line-height: 20px;
        padding: 10px 10px 10px 10px ; }
        table tr th {
          text-align: left; }
          table tr a {
            color: #212831; }
            table tr a:hover {
              border-bottom: 1px solid #212831; }

ol {
  font-family: "Source Sans Pro", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-size: 14px;
  line-height: 20px;
  margin: 35px 35px 35px 35px ;
  padding: 10px 0 20px 0 ; }
  ol li {
    padding: 5px 0 5px 0 ; }

pre {
  -webkit-box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.25);
  -moz-box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.25);
  box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.25);
  background-color: #3f464f;
  color: #eee;
  margin: 10px 0 20px 0 ;
  overflow-x: scroll;
  padding: 20px 0 20px 0 ;
  width: 100%; }

  blockquote {
    font-family: "Source Sans Pro", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
    font-style: italic;
    padding: 0px 30px 0px 30px ;
    margin-bottom: 20px; }
    blockquote p {
      font-size: 13px;
      font-style: normal;
      line-height: 15px;
      margin-top: 5px;
      text-align: right; }

section .columns {
  -webkit-column-count: 3;
  -moz-column-count: 3;
  column-count: 3;
  -webkit-column-gap: 20px;
  -moz-column-gap: 20px;
  column-gap: 20px;
  max-width: 1600px; }
  @media all and (max-width: 1400px) {
    section .columns {
      -webkit-column-count: 2;
      -moz-column-count: 2;
      column-count: 2;
      -webkit-column-gap: 20px;
      -moz-column-gap: 20px;
      column-gap: 20px;   }
}
    @media all and (max-width: 1000px) {
      section .columns {
        -webkit-column-count: 1;
        -moz-column-count: 1;
        column-count: 1;
        -webkit-column-gap: 20px;
        -moz-column-gap: 20px;
        column-gap: 20px;   }
}
nav ul.navLinks {
  margin-right: 19px ; }
  nav ul.navLinks #country a, nav ul.navLinks #product a, nav ul.navLinks #explore a,
  nav ul.navLinks #publications a, nav ul.navLinks #api a {
    padding: 25px 10px 25px 10px ; }

ul.navLinks {
  -webkit-font-smoothing: antialiased;
  -moz-font-smoothing: antialiased;
  font-smoothing: antialiased;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  justify-content: center;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  list-style: none; }
  ul.navLinks li {
    font-family: "Montserrat", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
    font-size: 12px;
    font-weight: 400;
    letter-spacing: 1px;
    opacity: 0.7;
    padding: 5px 10px 5px 10px ;
    position: relative;
    text-transform: uppercase; }
    ul.navLinks li.active {
      opacity: 1; }
      ul.navLinks li:hover {
        cursor: pointer;
        opacity: 1; }
        ul.navLinks li a {
          color: white; }
          ul.navLinks li .sub_menu {
            background-color: #212831;
            display: none;
            left: -5px;
            padding: 0 0 5px 5px ;
            position: absolute;
            top: 25px;
            width: 125%;
            z-index: 1000; }
            ul.navLinks li .sub_menu.open {
              display: block; }
              ul.navLinks li .sub_menu ul {
                display: block; }
                ul.navLinks li .sub_menu ul li {
                  display: block;
                  font-size: 11px;
                  padding: 5px 10px 5px 10px ; }
                  ul.navLinks li .sub_menu ul li:hover {
                    opacity: 0.9; }
                    ul.navLinks li .sub_menu ul li:hover:before {
                      content: "\f0da";
                      font-family: FontAwesome;
                      opacity: 0.4;
                      position: absolute;
                      margin-top: 2px;
                      margin-left: -10px ; }
                      ul.navLinks li .sub_menu ul li.active:before {
                        content: "\f0da";
                        font-family: FontAwesome;
                        position: absolute;
                        margin-top: 2px;
                        margin-left: -10px ; }

#logo {
  margin: 0px 0px 0px 0px ;
  padding: 5px 0 5px 0 ;
  position: relative;
  left: 17px;
  text-decoration: none; }
  @media all and (max-width: 950px) {
    #logo {
      left: 0;   }
}

nav {
  -webkit-justify-content: center;
  -moz-justify-content: center;
  justify-content: center;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row;
  -moz-flex-direction: row;
  flex-direction: row;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
  background-color: #212831;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 20;
  padding: 15px 0 15px 0 ; }
  nav .navLinks {
    -webkit-flex-direction: row;
    -moz-flex-direction: row;
    flex-direction: row; }
    @media all and (max-width: 950px) {
      nav .navLinks {
        display: none !important;   }
}
  nav #search_button {
    cursor: pointer;
    margin: -15px 0 -15px 0 ;
    padding: 15px 15px 15px 15px ; }
    nav #search_button img {
      -webkit-transition: opacity 0.1s, transform 0.5s;
      -moz-transition: opacity 0.1s, transform 0.5s;
      -ms-transition: opacity 0.1s, transform 0.5s;
      -o-transition: opacity 0.1s, transform 0.5s;
      transition: opacity 0.1s, transform 0.5s;
      opacity: 0.7;
      height: 22px;
      width: 22px; }
      nav #search_button :hover {
        cursor: pointer;
        opacity: 1; }
        nav #search_button.open img {
          -webkit-transform: rotate(180deg);
          -ms-transform: rotate(180deg);
          transform: rotate(180deg); }

#mobileNav {
  -webkit-transition: left 0.25s 0.2s, right 0.25s 0.2s;
  -moz-transition: left 0.25s 0.2s, right 0.25s 0.2s;
  -ms-transition: left 0.25s 0.2s, right 0.25s 0.2s;
  -o-transition: left 0.25s 0.2s, right 0.25s 0.2s;
  transition: left 0.25s 0.2s, right 0.25s 0.2s;
  background-color: #3f464f;
  bottom: 0;
  display: block;
  left: -400px;
  overflow-y: scroll;
  position: fixed;
  top: 0;
  width: 400px;
  z-index: 31; }
  #mobileNav.open {
    left: 0; }
    #mobileNav .navLinks {
      -webkit-flex-direction: column;
      -moz-flex-direction: column;
      flex-direction: column;
      padding: 16px 14px 70px 40px ; }
      #mobileNav .navLinks li {
        margin: 3px 0 3px 0 ; }
        #mobileNav .navLinks li .sub_menu {
          background-color: transparent;
          display: block;
          margin: 10px 0 0 0 ;
          padding-bottom: 0;
          position: static;
          width: auto; }
          #mobileNav .navLinks li .sub_menu ul > li {
            margin: 2px 0 2px 0 ; }
            #mobileNav .navLinks li .sub_menu li:last-child {
              margin-bottom: 0;
              padding-bottom: 0; }
        #mobileNav .navLinks li a:focus:after, #mobileNav .navLinks li a:active:after {
          -webkit-animation: spin-right 1.5s linear infinite;
          -moz-animation: spin-right 1.5s linear infinite;
          -o-animation: spin-right 1.5s linear infinite;
          animation: spin-right 1.5s linear infinite;
          content: "";
          background-repeat: no-repeat;
          background-image: url("/static/img/nav/spinner.png");
          background-size: cover;
          display: inline-block;
          cursor: pointer;
          margin-left: 7px ;
          top: 1px;
          width: 12px;
          height: 12px;
          position: relative; }
  #mobileNav .modal_close {
    cursor: pointer;
    display: block;
    margin: -15px 0 -15px 0 ;
    padding: 15px 15px 15px 15px ;
    position: absolute;
    top: 23px;
    width: 17px; }
    #mobileNav .modal_close img {
      -webkit-transition: opacity 0.1s, transform 0.5s 0.1s;
      -moz-transition: opacity 0.1s, transform 0.5s 0.1s;
      -ms-transition: opacity 0.1s, transform 0.5s 0.1s;
      -o-transition: opacity 0.1s, transform 0.5s 0.1s;
      transition: opacity 0.1s, transform 0.5s 0.1s;
      -webkit-transform: rotate(-180deg);
      -ms-transform: rotate(-180deg);
      transform: rotate(-180deg);
      opacity: 1;
      height: 16px;
      width: 16px; }
      #mobileNav .modal_close img:hover, #mobileNav .modal_close img:focus {
        opacity: 0.7; }
  #mobileNav.open .modal_close img {
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg); }
body.home {
  background: #272f38 url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAKElEQVQIW2NkQAOZxU3GjMhiIIHpvXVn4YIwAZAisCCyAFgQXQAkCAAiqRGXMgseLwAAAABJRU5ErkJggg==) repeat;
  -webkit-font-smoothing: antialiased;
  -moz-font-smoothing: antialiased;
  font-smoothing: antialiased; }
  body.home nav {
    background: none; }
    body.home nav #logo {
      visibility: hidden; }
  body.home #container {
    height: 100vh;
    margin-top: 0;
    overflow: hidden; }
    body.home footer {
      bottom: 0;
      left: 0;
      position: fixed;
      right: 0; }
      @media all and (max-width: 768px) {
        body.home footer {
          position: static;   }
}

.bg-frame {
  height: 600px;
  margin: 75px auto 20px auto ;
  position: relative;
  width: 600px; }
  .bg-frame .ring-pulse {
    -webkit-animation: pulse 8s ease-in infinite;
    -moz-animation: pulse 8s ease-in infinite;
    -o-animation: pulse 8s ease-in infinite;
    animation: pulse 8s ease-in infinite;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    border: 1px solid #fff;
    height: 100%;
    position: absolute;
    width: 100%;
    z-index: -5; }
    .bg-frame .echo-ring {
      -webkit-animation: pulse 8s ease-in 4s infinite;
      -moz-animation: pulse 8s ease-in 4s infinite;
      -o-animation: pulse 8s ease-in 4s infinite;
      animation: pulse 8s ease-in 4s infinite; }
      .bg-frame #ring {
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        border-radius: 50%;
        background-color: #212831;
        border: 1px solid #99BCD1;
        height: 100%;
        overflow: hidden;
        position: relative;
        width: 100%;
        -webkit-mask-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAA5JREFUeNpiYGBgAAgwAAAEAAGbA+oJAAAAAElFTkSuQmCC); }
        .bg-frame #ring .star-rotate {
          -webkit-animation: spin-right 120s linear infinite;
          -moz-animation: spin-right 120s linear infinite;
          -o-animation: spin-right 120s linear infinite;
          animation: spin-right 120s linear infinite;
          left: 68%;
          margin-left: -75% ;
          margin-top: -75%;
          opacity: 0.4;
          position: absolute;
          top: 64%;
          width: 150%;
          z-index: 0; }
          .bg-frame #ring #big_logo {
            left: 13%;
            position: absolute;
            top: 23%;
            width: 38%; }
            .bg-frame #ring #observatory {
              left: 8%;
              position: absolute;
              top: 14%;
              width: 100%; }
              .bg-frame #ring #info {
                color: white;
                display: block;
                font-family: "Source Sans Pro", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
                font-size: 17.14286px;
                font-weight: 300;
                line-height: 1.4;
                position: absolute;
                -webkit-text-shadow: -2px 0 5px #212831;
                -moz-text-shadow: -2px 0 5px #212831;
                text-shadow: -2px 0 5px #212831;
                text-align: center ;
                bottom: 18%;
                right: 14%; }
                .bg-frame #ring #info a {
                  -webkit-transition: color 1s, opacity 0.5s;
                  -moz-transition: color 1s, opacity 0.5s;
                  -ms-transition: color 1s, opacity 0.5s;
                  -o-transition: color 1s, opacity 0.5s;
                  transition: color 1s, opacity 0.5s;
                  border-bottom: 1px solid transparent;
                  color: #99BCD1;
                  display: inline-block;
                  font-family: "Montserrat", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
                  font-weight: 400;
                  font-size: 75%;
                  margin: 2% 2% 2% 2% ;
                  opacity: 0.8;
                  text-transform: uppercase; }
                  .bg-frame #ring #info a:hover {
                    opacity: 1;
                    color: #6297cb; }
        .bg-frame #ring #launch_vid {
          -webkit-transition: opacity 0.5s;
          -moz-transition: opacity 0.5s;
          -ms-transition: opacity 0.5s;
          -o-transition: opacity 0.5s;
          transition: opacity 0.5s;
          cursor: pointer;
          position: absolute;
          bottom: 17%;
          opacity: 0.6;
          right: 22%; }
          .bg-frame #ring #launch_vid:hover {
            opacity: 1; }
            .bg-frame #ring #launch_vid img {
              -webkit-transition: opacity 1s;
              -moz-transition: opacity 1s;
              -ms-transition: opacity 1s;
              -o-transition: opacity 1s;
              transition: opacity 1s;
              width: 21.42857px;
              height: 21.42857px;
              display: inline-block;
              margin: 0 5px 0 auto ; }
              .bg-frame #ring #launch_vid span {
                font-size: 13.33333px;
                vertical-align: middle; }
        .bg-frame #ring #search_home {
          -webkit-transition: text-shadow 0.75s, opacity 1.5s;
          -moz-transition: text-shadow 0.75s, opacity 1.5s;
          -ms-transition: text-shadow 0.75s, opacity 1.5s;
          -o-transition: text-shadow 0.75s, opacity 1.5s;
          transition: text-shadow 0.75s, opacity 1.5s;
          -webkit-border-radius: 2px;
          -moz-border-radius: 2px;
          border-radius: 2px;
          bottom: 10%;
          border-bottom: 1px solid #63737f;
          color: #fff;
          cursor: pointer;
          display: block;
          font-family: "Source Sans Pro", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
          font-size: 18.75px;
          font-weight: 300;
          left: 33%;
          opacity: 0.8;
          padding-bottom: 3px;
          position: absolute;
          width: 37%; }
          .bg-frame #ring #search_home:hover {
            -webkit-text-shadow: 0 0 2px #eee;
            -moz-text-shadow: 0 0 2px #eee;
            text-shadow: 0 0 2px #eee;
            opacity: 1; }
            .bg-frame #ring #search_home img {
              margin-bottom: -5px;
              margin-right: 0 ;
              margin-top: 5px;
              padding-right: 3px ;
              position: relative;
              top: 0;
              width: 6%; }

#launch {
  background-color: rgba(63, 70, 79, 0.8); }
  #launch iframe {
    -webkit-box-shadow: 0 0 200px rgba(0, 0, 0, 0.6);
    -moz-box-shadow: 0 0 200px rgba(0, 0, 0, 0.6);
    box-shadow: 0 0 200px rgba(0, 0, 0, 0.6); }

@-webkit-keyframes pulse {
  0% {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    opacity: 0.1;   }
    100% {
      -webkit-transform: scale(2);
      -ms-transform: scale(2);
      transform: scale(2);
      opacity: 0;   }
}

@-moz-keyframes pulse {
  0% {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    opacity: 0.1;   }
    100% {
      -webkit-transform: scale(2);
      -ms-transform: scale(2);
      transform: scale(2);
      opacity: 0;   }
}

@-o-keyframes pulse {
  0% {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    opacity: 0.1;   }
    100% {
      -webkit-transform: scale(2);
      -ms-transform: scale(2);
      transform: scale(2);
      opacity: 0;   }
}

@keyframes pulse {
  0% {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    opacity: 0.1;   }
    100% {
      -webkit-transform: scale(2);
      -ms-transform: scale(2);
      transform: scale(2);
      opacity: 0;   }
}

@-webkit-keyframes spin-right {
  0% {
    opacity: 0.2;   }
    20% {
      opacity: 0.6;   }
      50% {
        opacity: 0.3;   }
        90% {
          opacity: 0.5;   }
          100% {
            -webkit-transform: rotate(360deg);
            -ms-transform: rotate(360deg);
            transform: rotate(360deg);
            opacity: 0.2;   }
}

@-moz-keyframes spin-right {
  0% {
    opacity: 0.2;   }
    20% {
      opacity: 0.6;   }
      50% {
        opacity: 0.3;   }
        90% {
          opacity: 0.5;   }
          100% {
            -webkit-transform: rotate(360deg);
            -ms-transform: rotate(360deg);
            transform: rotate(360deg);
            opacity: 0.2;   }
}

@-o-keyframes spin-right {
  0% {
    opacity: 0.2;   }
    20% {
      opacity: 0.6;   }
      50% {
        opacity: 0.3;   }
        90% {
          opacity: 0.5;   }
          100% {
            -webkit-transform: rotate(360deg);
            -ms-transform: rotate(360deg);
            transform: rotate(360deg);
            opacity: 0.2;   }
}

@keyframes spin-right {
  0% {
    opacity: 0.2;   }
    20% {
      opacity: 0.6;   }
      50% {
        opacity: 0.3;   }
        90% {
          opacity: 0.5;   }
          100% {
            -webkit-transform: rotate(360deg);
            -ms-transform: rotate(360deg);
            transform: rotate(360deg);
            opacity: 0.2;   }
}
#search {
  background-color: #212831; }

  #search, #launch {
    -webkit-justify-content: center;
    -moz-justify-content: center;
    justify-content: center;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: center;
    align-items: center;
    -webkit-transition: opacity 0.5s;
    -moz-transition: opacity 0.5s;
    -ms-transition: opacity 0.5s;
    -o-transition: opacity 0.5s;
    transition: opacity 0.5s;
    bottom: 0;
    left: 0;
    opacity: 0;
    position: fixed;
    right: 0;
    top: 0;
    visibility: hidden;
    z-index: 40; }
    #search.visible, #launch.visible {
      opacity: 1; }
      #search #search_close img, #launch #search_close img {
        background-color: #212831; }
        #search #search_close, #search .modal_close, #launch #search_close,
        #launch .modal_close {
          cursor: pointer;
          padding: 15px 15px 15px 15px ;
          position: absolute;
          margin: 8px 0 0 -5px ;
          right: 0;
          top: 0; }
          #search #search_close img, #search .modal_close img, #launch #search_close img,
          #launch .modal_close img {
            -webkit-transition: opacity 0.1s, transform 0.5s;
            -moz-transition: opacity 0.1s, transform 0.5s;
            -ms-transition: opacity 0.1s, transform 0.5s;
            -o-transition: opacity 0.1s, transform 0.5s;
            transition: opacity 0.1s, transform 0.5s;
            -webkit-transform: rotate(-180deg);
            -ms-transform: rotate(-180deg);
            transform: rotate(-180deg);
            opacity: 1;
            height: 16px;
            width: 16px; }
            #search #search_close img:hover, #search #search_close img:focus,
            #search .modal_close img:hover, #search .modal_close img:focus,
            #launch #search_close img:hover, #launch #search_close img:focus,
            #launch .modal_close img:hover, #launch .modal_close img:focus {
              opacity: 0.7; }
          #search #search_close.open img, #search .modal_close.open img,
          #launch #search_close.open img, #launch .modal_close.open img {
            -webkit-transform: rotate(0deg);
            -ms-transform: rotate(0deg);
            transform: rotate(0deg); }
            #search #search_close div, #search .modal_close div, #launch #search_close div,
            #launch .modal_close div {
              -webkit-transition: opacity 1s 2s;
              -moz-transition: opacity 1s 2s;
              -ms-transition: opacity 1s 2s;
              -o-transition: opacity 1s 2s;
              transition: opacity 1s 2s;
              font-size: 9px;
              margin: 1px 0 0 -4px ;
              opacity: 0.4;
              position: absolute;
              text-transform: uppercase; }
    #search .modal_body, #launch .modal_body {
      padding: 50px 35px 50px 35px ;
      text-align: center ; }
      #search #search_div, #launch #search_div {
        padding: 50px 35px 0 35px ;
        text-align: left ;
        width: 93%; }
        #search #search_div #search_input, #launch #search_div #search_input {
          background-color: transparent;
          border: 0;
          border-bottom: 1px solid #63737f;
          font-family: "Source Sans Pro", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
          font-size: 30px;
          font-weight: 300;
          color: white;
          margin-bottom: 15px;
          width: 100%; }
          #search #search_div #search_input:focus, #launch #search_div #search_input:focus {
            -webkit-box-shadow: none;
            -moz-box-shadow: none;
            box-shadow: none;
            outline: none; }
            #search #search_div #search_input::-webkit-input-placeholder,
            #launch #search_div #search_input::-webkit-input-placeholder {
              font-family: "Source Sans Pro", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
              font-weight: 300;
              color: #63737f; }
              #search #search_div #search_input:-moz-placeholder,
              #launch #search_div #search_input:-moz-placeholder {
                font-family: "Source Sans Pro", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
                font-weight: 300;
                color: #63737f; }
                #search #search_div #search_input::-moz-placeholder,
                #launch #search_div #search_input::-moz-placeholder {
                  font-family: "Source Sans Pro", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
                  font-weight: 300;
                  color: #63737f; }
                  #search #search_div #search_input:-ms-input-placeholder,
                  #launch #search_div #search_input:-ms-input-placeholder {
                    font-family: "Source Sans Pro", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
                    font-weight: 300;
                    color: #63737f; }
        #search #search_div #search_modes, #launch #search_div #search_modes {
          text-align: center ;
          -webkit-font-smoothing: antialiased;
          -moz-font-smoothing: antialiased;
          font-smoothing: antialiased; }
          #search #search_div #search_modes .d3plus_toggle > *,
          #launch #search_div #search_modes .d3plus_toggle > * {
            margin: 0 5px 0 5px !important; }
            @media all and (max-width: 480px) {
              #search #search_div #search_modes .d3plus_toggle > *,
              #launch #search_div #search_modes .d3plus_toggle > * {
                margin: 0 3px 0 3px !important;   }
}
          #search #search_div #search_modes .d3plus_node,
          #launch #search_div #search_modes .d3plus_node {
            -webkit-transition: color 1.5s;
            -moz-transition: color 1.5s;
            -ms-transition: color 1.5s;
            -o-transition: color 1.5s;
            transition: color 1.5s;
            background-color: transparent !important;
            border: 0 !important;
            color: #bbbdc0 !important;
            border-bottom: 1px solid #bbbdc0 !important; }
            #search #search_div #search_modes .d3plus_node:hover,
            #launch #search_div #search_modes .d3plus_node:hover {
              color: #fff !important; }
              #search #search_div #search_modes .d3plus_node.d3plus_button_active,
              #launch #search_div #search_modes .d3plus_node.d3plus_button_active {
                color: white !important;
                border-bottom: 1px solid #6297cb !important; }
                #search #search_div #search_modes .d3plus_node.d3plus_button_active .d3plus_button_label,
                #launch #search_div #search_modes .d3plus_node.d3plus_button_active .d3plus_button_label {
                  opacity: 1;
                  text-transform: uppercase; }
                  #search #search_div #search_modes .d3plus_node.d3plus_button_active .d3plus_button_label:hover,
                  #launch #search_div #search_modes .d3plus_node.d3plus_button_active .d3plus_button_label:hover {
                    opacity: 0.8 !important; }
          #search #search_div #search_modes .d3plus_button_label,
          #launch #search_div #search_modes .d3plus_button_label {
            font-family: "Montserrat", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
            font-size: 13px;
            font-weight: 400;
            letter-spacing: 1px;
            opacity: 1;
            padding: 6px 10px 6px 10px !important;
            text-transform: uppercase; }
            @media all and (max-width: 480px) {
              #search #search_div #search_modes .d3plus_button_label,
              #launch #search_div #search_modes .d3plus_button_label {
                font-size: 11px;
                padding: 6px 0 6px 0 !important;   }
}
              #search #search_div #search_modes .d3plus_button_label:hover,
              #launch #search_div #search_modes .d3plus_button_label:hover {
                opacity: 0.7 !important; }
    #search #search_results, #launch #search_results {
      -webkit-justify-content: center;
      -moz-justify-content: center;
      justify-content: center;
      display: -webkit-box;
      display: -moz-box;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-direction: row;
      -moz-flex-direction: row;
      flex-direction: row;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-align-content: flex-start;
      align-content: flex-start;
      margin-top: 35px;
      overflow-x: hidden;
      overflow-y: scroll;
      width: 93%;
      height: 100%; }
      #search #search_results h1, #launch #search_results h1 {
        -webkit-box-flex: 1;
        -moz-box-flex: 1;
        -webkit-flex: 1;
        -ms-flex: 1;
        flex: 1; }
        #search #search_results .search-loading, #search #search_results .search-error,
        #launch #search_results .search-loading, #launch #search_results .search-error {
          font-size: 30px;
          line-height: 30px;
          text-align: center ;
          padding-top: 21vh; }
          #search #search_results .search_group, #launch #search_results .search_group {
            -webkit-box-flex: 1;
            -moz-box-flex: 1;
            -webkit-flex: 1;
            -ms-flex: 1;
            flex: 1;
            margin: 0 10px 0 10px ;
            text-align: center ; }
            #search #search_results .search_group > h1,
            #launch #search_results .search_group > h1 {
              color: #63737f;
              font-family: "Montserrat", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
              font-weight: 400;
              font-size: 20px;
              letter-spacing: 1px;
              line-height: 1.15;
              margin-bottom: -10px;
              text-transform: uppercase; }
              #search #search_results .search_group .result,
              #launch #search_results .search_group .result {
                margin: 25px auto 25px auto ; }
      #search #search_results .result, #launch #search_results .result {
        -webkit-justify-content: center;
        -moz-justify-content: center;
        justify-content: center;
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-box-flex: 1;
        -moz-box-flex: 1;
        -webkit-flex: 1;
        -ms-flex: 1;
        flex: 1;
        -webkit-flex-direction: row;
        -moz-flex-direction: row;
        flex-direction: row;
        -webkit-justify-content: flex-start;
        -moz-justify-content: flex-start;
        justify-content: flex-start;
        -webkit-align-items: center;
        align-items: center;
        background-attachment: center center;
        background-position: fixed;
        background-repeat: no-repeat;
        -webkit-background-size: cover;
        -moz-background-size: cover;
        -o-background-size: cover;
        background-size: cover;
        margin: 25px 25px 25px 25px ;
        height: 90px;
        min-width: 250px;
        max-width: 500px;
        overflow: hidden;
        position: relative;
        text-align: left ;
        z-index: 0; }
        @media all and (max-width: 480px) {
          #search #search_results .result, #launch #search_results .result {
            -webkit-box-flex: initial;
            -moz-box-flex: initial;
            -webkit-flex: initial;
            -ms-flex: initial;
            flex: initial;
            margin: 10px 10px 10px 10px ;
            height: 80px;   }
}
          @media all and (max-width: 768px) {
            #search #search_results .result, #launch #search_results .result {
              min-width: auto;
              max-width: auto;   }
}
            #search #search_results .result .button_cover,
            #launch #search_results .result .button_cover {
              -webkit-box-sizing: border-box;
              -moz-box-sizing: border-box;
              box-sizing: border-box;
              background-color: #272f38;
              border: 1px solid #63737f;
              height: 100%;
              left: 0;
              opacity: 0.7;
              position: absolute;
              top: 0;
              width: 100%; }
              #search #search_results .result .icon, #launch #search_results .result .icon {
                margin: 0 15px 0 15px ;
                max-height: 40px;
                max-width: 40px;
                min-height: 40px;
                min-width: 40px;
                z-index: 2;
                -webkit-filter: drop-shadow(0 2px 2px rgba(0, 0, 0, 0.5));
                filter: drop-shadow(0 2px 2px rgba(0, 0, 0, 0.5)); }
                #search #search_results .result h1, #launch #search_results .result h1 {
                  color: #ddd;
                  font-size: 20px;
                  font-weight: 400;
                  line-height: 25px;
                  margin-bottom: 0;
                  margin-right: 15px ;
                  text-shadow: 0 2px 2px rgba(0, 0, 0, 0.5);
                  z-index: 2; }
                  #search #search_results .result:hover, #search #search_results .result:focus,
                  #launch #search_results .result:hover, #launch #search_results .result:focus {
                    -webkit-box-shadow: 0 2px 0 #6297cb;
                    -moz-box-shadow: 0 2px 0 #6297cb;
                    box-shadow: 0 2px 0 #6297cb;
                    border-bottom: none; }
                    #search #search_results .result:active h1:after,
                    #launch #search_results .result:active h1:after {
                      -webkit-animation: spin-right 1.5s linear infinite;
                      -moz-animation: spin-right 1.5s linear infinite;
                      -o-animation: spin-right 1.5s linear infinite;
                      animation: spin-right 1.5s linear infinite;
                      content: "";
                      background-repeat: no-repeat;
                      background-image: url("/static/img/nav/spinner.png");
                      background-size: cover;
                      display: inline-block;
                      cursor: pointer;
                      margin-left: 5px ;
                      top: 3px;
                      width: 20px;
                      height: 20px;
                      position: relative; }
    #search #explore .result, #launch #explore .result {
      background-color: #3f464f !important; }
#container {
  margin-top: 65px; }
  #container #content {
    margin: 0 auto 0 auto ; }
    #container #content header {
      min-height: 150px;
      overflow: hidden;
      position: relative;
      -webkit-transform: translateZ(0);
      width: 100%;
      z-index: 5; }
      @media all and (max-width: 768px) {
        #container #content header {
          -webkit-flex-direction: column;
          -moz-flex-direction: column;
          flex-direction: column;   }
}
        #container #content header h1 {
          color: #fff;
          position: relative;
          width: 100%; }
          @media all and (max-width: 768px) {
            #container #content header h1 {
              font-size: 35px;
              width: auto;
              ,;   }
}
      #container #content header .header_image {
        background: -moz-linear-gradient(top, #212831 0%, rgba(33, 40, 49, 0) 100%);
        background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #212831),
                color-stop(100%, rgba(33, 40, 49, 0)));
        background: -webkit-linear-gradient(top, #212831 0%, rgba(33, 40, 49, 0) 100%);
        background: -o-linear-gradient(top, #212831 0%, rgba(33, 40, 49, 0) 100%);
        background: -ms-linear-gradient(top, #212831 0%, rgba(33, 40, 49, 0) 100%);
        background: linear-gradient(to bottom, #212831, rgba(33, 40, 49, 0));
        left: 0;
        position: absolute;
        top: 0;
        min-height: 150px;
        width: 100%; }
        #container #content header .header_image img {
          -webkit-transition: opacity 0.25s;
          -moz-transition: opacity 0.25s;
          -ms-transition: opacity 0.25s;
          -o-transition: opacity 0.25s;
          transition: opacity 0.25s;
          display: block;
          opacity: 0;
          position: relative;
          z-index: -1; }
          #container #content header .header_image img.loaded {
            opacity: 1; }
    #container #content section {
      -webkit-justify-content: center;
      -moz-justify-content: center;
      justify-content: center;
      display: -webkit-box;
      display: -moz-box;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-direction: row;
      -moz-flex-direction: row;
      flex-direction: row; }
      @media all and (max-width: 768px) {
        #container #content section {
          -webkit-flex-direction: column;
          -moz-flex-direction: column;
          flex-direction: column;   }
}
        #container #content section aside {
          margin: 0 30px 0 30px ;
          width: 250px; }
          @media all and (max-width: 768px) {
            #container #content section aside {
              width: auto !important;   }
}
      #container #content section content {
        -webkit-box-flex: 1;
        -moz-box-flex: 1;
        -webkit-flex: 1;
        -ms-flex: 1;
        flex: 1;
        margin: 0 30px 20px 0 ; }
        @media all and (max-width: 768px) {
          #container #content section content {
            margin: 0 30px 0 30px ;   }
}
          #container #content section content ul {
            margin: 20px 0 20px 0 ; }
            #container #content section content ul li {
              margin-left: 30px ;
              padding: 5px 0 5px 0 ; }
        #container #content section content .viz {
          display: block;
          height: 450px;
          width: 100%; }
  #container footer {
    color: #d1d2d4;
    font-size: 10px;
    margin: 65px auto 5px auto ;
    text-align: center ; }
    @media all and (max-width: 768px) {
      #container footer {
        margin-top: 30px !important;   }
}
      #container footer a {
        color: #99BCD1; }
        #container footer a:hover {
          -webkit-text-shadow: 0 0, 1px, #fff;
          -moz-text-shadow: 0 0, 1px, #fff;
          text-shadow: 0 0, 1px, #fff;
          -webkit-transition: text-shadow, 1s;
          -moz-transition: text-shadow, 1s;
          -ms-transition: text-shadow, 1s;
          -o-transition: text-shadow, 1s;
          transition: text-shadow, 1s;
          color: #fff; }
    #container footer #mc {
      display: inline-block;
      margin-bottom: -5px; }
      #container footer img, #container footer a {
        -webkit-transition: opacity 1.5s;
        -moz-transition: opacity 1.5s;
        -ms-transition: opacity 1.5s;
        -o-transition: opacity 1.5s;
        transition: opacity 1.5s;
        opacity: 0.8; }
        #container footer img :hover, #container footer a :hover {
          opacity: 1; }
    #container footer div {
      max-width: 770px;
      margin: 0 auto 0 auto ;
      padding: 0 20px 0 20px ; }
      #container footer ul {
        margin-top: 10px; }
        #container footer ul li {
          display: inline-block;
          margin: 1px 5px 1px 5px ; }
#hamburger {
  cursor: pointer;
  display: none;
  cursor: pointer;
  margin: -15px 5px -15px 0 ;
  padding: 15px 15px 15px 15px ;
  z-index: 8; }
  @media all and (max-width: 950px) {
    #hamburger {
      display: block;   }
}
    #hamburger img {
      -webkit-transition: opacity 0.1s, height 0.2s, transform 0.4s 0.1s;
      -moz-transition: opacity 0.1s, height 0.2s, transform 0.4s 0.1s;
      -ms-transition: opacity 0.1s, height 0.2s, transform 0.4s 0.1s;
      -o-transition: opacity 0.1s, height 0.2s, transform 0.4s 0.1s;
      transition: opacity 0.1s, height 0.2s, transform 0.4s 0.1s;
      opacity: 0.7;
      width: 17px;
      height: 12px;
      margin-top: 4px; }
      #hamburger img.open {
        -webkit-transform: rotate(360deg);
        -ms-transform: rotate(360deg);
        transform: rotate(360deg);
        height: 2px; }
        #hamburger img:hover {
          opacity: 1; }

#mask {
  background-color: transparent;
  bottom: 0;
  cursor: pointer;
  display: none;
  left: 0;
  opacity: 1;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 30; }
  #mask.visible {
    display: block; }
body.profile.frozen h1 {
  margin: 0 0 0 0 ;
  padding-top: 0; }

body.profile {
  background-color: #212831; }
  body.profile h1 {
    line-height: 1;
    margin: 0 30px -5px 30px ;
    padding-top: 40px; }
    @media all and (max-width: 768px) {
      body.profile h1 {
        margin: 0px 30px 0px 30px ;   }
}
  body.profile h2 {
    margin-bottom: 20px;
    line-height: 1.1; }
    body.profile article aside {
      margin: 30px 30px 30px 30px !important; }
      body.profile article aside a.deep-link {
        -webkit-transition: color 1s;
        -moz-transition: color 1s;
        -ms-transition: color 1s;
        -o-transition: color 1s;
        transition: color 1s;
        color: #6297cb !important;
        border-bottom: none !important; }
        body.profile article aside a.deep-link:hover {
          border-bottom: none !important;
          color: #fff !important; }
      body.profile article aside .fa-external-link {
        font-size: 13px;
        vertical-align: middle;
        margin-left: 3px ; }
        @media all and (max-width: 768px) {
          body.profile article aside p.explore_link {
            margin-bottom: 13px !important;   }
}
      body.profile article aside .share_container {
        -webkit-justify-content: center;
        -moz-justify-content: center;
        justify-content: center;
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: space-between;
        -moz-justify-content: space-between;
        justify-content: space-between;
        -webkit-align-items: center;
        align-items: center; }
        @media all and (max-width: 768px) {
          body.profile article aside .share_container {
            margin: 0 0 20px 0 ;   }
}
          body.profile article aside .share_container .share_icons_container {
            -webkit-box-flex: 1;
            -moz-box-flex: 1;
            -webkit-flex: 1;
            -ms-flex: 1;
            flex: 1;
            -webkit-justify-content: center;
            -moz-justify-content: center;
            justify-content: center;
            display: -webkit-box;
            display: -moz-box;
            display: -ms-flexbox;
            display: -webkit-flex;
            display: flex;
            -webkit-justify-content: space-between;
            -moz-justify-content: space-between;
            justify-content: space-between;
            -webkit-align-items: center;
            align-items: center; }
            body.profile article aside .share_container .share_icons_container a {
              -webkit-transition: color 0.5s;
              -moz-transition: color 0.5s;
              -ms-transition: color 0.5s;
              -o-transition: color 0.5s;
              transition: color 0.5s;
              color: #99BCD1;
              cursor: pointer;
              height: 23px;
              margin: 2px 0 2px 0 ; }
              body.profile article aside .share_container .share_icons_container a:hover {
                color: #fff; }
        body.profile article aside .share_container .share_input_container {
          -webkit-box-flex: 2;
          -moz-box-flex: 2;
          -webkit-flex: 2;
          -ms-flex: 2;
          flex: 2;
          margin-top: -4px; }
          body.profile article aside .share_container .share_input_container .share_input {
            background-color: #3f464f;
            border: 0;
            color: white;
            margin-left: 10px ;
            padding: 5px 7px 5px 7px; }
            @media all and (max-width: 768px) {
              body.profile article aside .share_container .share_input_container .share_input {
                width: 84%;
                margin-left: 11% ;   }
}
              body.profile article aside .share_container .share_input_container .share_input.share_embed_url {
                display: none; }
    body.profile article content {
      margin: 30px 30px 30px 30px !important; }
      body.profile article.intro-article {
        background-color: white;
        color: #333; }
        body.profile article.intro-article p {
          color: #333;
          text-align: left ; }
          body.profile article.intro-article p a {
            color: #5083b5; }
            body.profile article.intro-article p a:hover {
              border-bottom: 1px solid #5083b5; }
    body.profile article.titled-section, body.profile article.viz-article {
      background-color: #212831;
      color: white; }
      body.profile article.titled-section p, body.profile article.viz-article p {
        color: white; }
        body.profile article.titled-section p a, body.profile article.viz-article p a {
          color: #99BCD1; }
          body.profile article.titled-section p a:hover,
          body.profile article.viz-article p a:hover {
            border-bottom: 1px solid #99BCD1; }
  body.profile article.viz-article,
  body.profile article.viz-article + article.titled-section,
  body.profile article .profile_header {
    -webkit-font-smoothing: antialiased;
    -moz-font-smoothing: antialiased;
    font-smoothing: antialiased; }
    body.profile article .profile_header p img {
      -webkit-box-shadow: none;
      -moz-box-shadow: none;
      box-shadow: none;
      border: none;
      margin: 10px 0 0 0 ;
      width: 100%; }
      body.profile article .profile_header #title {
        -webkit-justify-content: center;
        -moz-justify-content: center;
        justify-content: center;
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-flex-direction: row;
        -moz-flex-direction: row;
        flex-direction: row;
        margin: 20px 10px 20px 10px ; }
        @media all and (max-width: 768px) {
          body.profile article .profile_header #title {
            -webkit-justify-content: center;
            -moz-justify-content: center;
            justify-content: center;   }
}
          body.profile article .profile_header #title .icon {
            -webkit-box-flex: none;
            -moz-box-flex: none;
            -webkit-flex: none;
            -ms-flex: none;
            flex: none;
            height: 80px;
            margin: 0 20px 0 0 ;
            width: 80px;
            z-index: 10; }
            @media all and (max-width: 768px) {
              body.profile article .profile_header #title .icon {
                height: 60px;
                width: 60px;   }
}
        body.profile article .profile_header #title h1 {
          font-size: 65px;
          margin: 0 0 0 0 ;
          padding: 0 0 0 0 ; }
          body.profile article .profile_header #title h1:hover {
            cursor: pointer; }
            body.profile article .profile_header #title h1 i {
              opacity: 0.5; }
              body.profile article .profile_header #title h1 sub {
                color: white;
                display: block;
                font-size: 11px;
                text-shadow: 0 2px 2px rgba(0, 0, 0, 0.5); }
                body.profile article .profile_header #title h1:after {
                  content: url('/static/img/nav/search.png');
                  -webkit-transition: opacity 1s;
                  -moz-transition: opacity 1s;
                  -ms-transition: opacity 1s;
                  -o-transition: opacity 1s;
                  transition: opacity 1s;
                  opacity: 0;
                  position: absolute;
                  margin-left: 15px ;
                  margin-top: 2px;
                  cursor: pointer; }
                  @media all and (max-width: 768px) {
                    body.profile article .profile_header #title h1:after {
                      display: none;   }
}
          body.profile article .profile_header #title h1:hover:after {
            opacity: 0.9; }
    body.profile article .profile_header .author {
      -webkit-transition: opacity 0.5s;
      -moz-transition: opacity 0.5s;
      -ms-transition: opacity 0.5s;
      -o-transition: opacity 0.5s;
      transition: opacity 0.5s;
      bottom: 3px;
      color: white;
      font-size: 9px;
      font-weight: 400;
      opacity: 0;
      position: absolute;
      right: 7px;
      text-shadow: 0 2px 2px rgba(0, 0, 0, 0.5); }
      body.profile article .profile_header .author i {
        display: inline-block;
        margin: 2px 5px 0 5px ; }
        body.profile article .profile_header .author a {
          color: white; }
          body.profile article .profile_header .author a:hover {
            border-color: transparent; }
    body.profile article .profile_header .share {
      position: absolute;
      right: 3px;
      top: 0;
      padding: 13px 13px 13px 13px ;
      margin: -13px 0 -13px 0 ;
      cursor: pointer;
      height: 22px;
      width: 22px; }
      body.profile article .profile_header .share img {
        -webkit-transition: opacity 0.5s, transform 0.5s;
        -moz-transition: opacity 0.5s, transform 0.5s;
        -ms-transition: opacity 0.5s, transform 0.5s;
        -o-transition: opacity 0.5s, transform 0.5s;
        transition: opacity 0.5s, transform 0.5s;
        opacity: 0.7;
        height: 22px;
        width: 22px; }
        body.profile article .profile_header .share:hover img {
          opacity: 1; }
          body.profile article .profile_header .share .drawer {
            height: auto;
            margin: 18px 8px 15px 0 ;
            overflow: hidden;
            position: absolute;
            top: 0;
            right: 30px;
            width: 55px; }
            body.profile article .profile_header .share .drawer-content {
              -webkit-transition: right 1s, opacity 1s 0.25s;
              -moz-transition: right 1s, opacity 1s 0.25s;
              -ms-transition: right 1s, opacity 1s 0.25s;
              -o-transition: right 1s, opacity 1s 0.25s;
              transition: right 1s, opacity 1s 0.25s;
              opacity: 0;
              position: relative;
              right: -50px;
              top: 0; }
              body.profile article .profile_header .share .drawer-content i {
                -webkit-transition: opacity 0.5s;
                -moz-transition: opacity 0.5s;
                -ms-transition: opacity 0.5s;
                -o-transition: opacity 0.5s;
                transition: opacity 0.5s;
                display: inline-block;
                font-size: 17px;
                opacity: 0.7;
                text-align: center ;
                width: 25px;
                height: 25px; }
                body.profile article .profile_header .share .drawer-content i:hover {
                  opacity: 1; }
      body.profile article .profile_header .share.open img {
        opacity: 1; }
        body.profile article .profile_header .share.open .drawer-content {
          opacity: 1;
          right: 0; }
      @media all and (min-width: 769px) {
        body.profile article .profile_header .share img {
          display: none;   }
          body.profile article .profile_header .share .drawer {
            margin-top: 13px;
            right: 4px;
            width: 25px;   }
            body.profile article .profile_header .share .drawer-content {
              opacity: 1;
              right: 0;   }
              body.profile article .profile_header .share .drawer-content i {
                display: block;
                font-size: 20px;
                margin-bottom: 5px;   }
}
    body.profile article .profile_header #stats {
      -webkit-justify-content: center;
      -moz-justify-content: center;
      justify-content: center;
      display: -webkit-box;
      display: -moz-box;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-direction: row;
      -moz-flex-direction: row;
      flex-direction: row;
      -webkit-align-items: flex-start;
      align-items: flex-start;
      -webkit-justify-content: space-between;
      -moz-justify-content: space-between;
      justify-content: space-between;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap;
      position: relative; }
      body.profile article .profile_header #stats {
        margin: 20px 20px 20px 20px ; }
        @media all and (max-width: 600px) {
          body.profile article .profile_header #stats {
            margin: 0 10px 0 10px !important;   }
}
    body.profile article .profile_header.country #title,
    body.profile article .profile_header.country #stats {
      margin-left: 310px ; }
      @media all and (max-width: 768px) {
        body.profile article .profile_header.country #title,
        body.profile article .profile_header.country #stats {
          margin-left: 10px ;   }
}
    body.profile article .profile_header:hover .author {
      opacity: 1; }
      body.profile article .profile_header:hover .coords {
        fill: white;
        opacity: 0.25;
        stroke: #212831; }
        body.profile article .profile_header:hover .coords.focus {
          opacity: 1; }
    body.profile article .profile_header .stat {
      -webkit-box-flex: 1;
      -moz-box-flex: 1;
      -webkit-flex: 1;
      -ms-flex: 1;
      flex: 1;
      -webkit-justify-content: center;
      -moz-justify-content: center;
      justify-content: center;
      display: -webkit-box;
      display: -moz-box;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-direction: column;
      -moz-flex-direction: column;
      flex-direction: column;
      color: white;
      margin-right: 30px ;
      margin-top: 20px; }
      body.profile article .profile_header .stat:last-child {
        margin-right: 0 ; }
        @media all and (max-width: 1024px) {
          body.profile article .profile_header .stat {
            margin: 10px 10px 10px 10px !important ;   }
}
          @media all and (max-width: 600px) {
            body.profile article .profile_header .stat {
              -webkit-box-flex: 1 1 40%;
              -moz-box-flex: 1 1 40%;
              -webkit-flex: 1 1 40%;
              -ms-flex: 1 1 40%;
              flex: 1 1 40%;
              margin: 0 0 10px 0 !important;
              min-width: 40%;   }
}
            body.profile article .profile_header .stat .stat_text {
              -webkit-justify-content: center;
              -moz-justify-content: center;
              justify-content: center;
              display: -webkit-box;
              display: -moz-box;
              display: -ms-flexbox;
              display: -webkit-flex;
              display: flex;
              -webkit-flex-direction: row;
              -moz-flex-direction: row;
              flex-direction: row;
              -webkit-align-items: center;
              align-items: center;
              -webkit-justify-content: center;
              -moz-justify-content: center;
              justify-content: center; }
              @media all and (max-width: 1024px) {
                body.profile article .profile_header .stat .stat_text {
                  -webkit-flex-direction: column;
                  -moz-flex-direction: column;
                  flex-direction: column;
                  -webkit-justify-content: center;
                  -moz-justify-content: center;
                  justify-content: center;
                  text-align: center ;   }
                  body.profile article .profile_header .stat .stat_text h3 {
                    margin: 0 10px 0 0 !important;   }
                    body.profile article .profile_header .stat .stat_text h3 .suffix {
                      display: inline !important;
                      vertical-align: middle;   }
}
              @media all and (max-width: 600px) {
                body.profile article .profile_header .stat .stat_text h3 {
                  font-size: 20px !important;
                  margin: 0 10px 0 10px !important;   }
                  body.profile article .profile_header .stat .stat_text sub {
                    font-size: 12px !important;   }
}
              body.profile article .profile_header .stat .stat_text h3 {
                -webkit-box-flex: none;
                -moz-box-flex: none;
                -webkit-flex: none;
                -ms-flex: none;
                flex: none;
                font-family: "Source Sans Pro", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
                font-size: 32px;
                font-weight: 300;
                text-align: right ; }
                body.profile article .profile_header .stat .stat_text h3 .suffix {
                  display: block;
                  font-size: 12px;
                  font-weight: 400;
                  max-width: 90px; }
              body.profile article .profile_header .stat .stat_text sub {
                -webkit-box-flex: none;
                -moz-box-flex: none;
                -webkit-flex: none;
                -ms-flex: none;
                flex: none;
                font-family: "Montserrat", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
                font-size: 14px;
                font-weight: 700;
                text-transform: uppercase; }
                body.profile article .profile_header .stat .stat_text sub .rank {
                  display: block;
                  font-size: 10px;
                  font-weight: 400;
                  white-space: nowrap; }
      body.profile article .profile_header .stat .sparkline {
        height: 35px;
        margin: 10px 0 10px 0 ; }
        @media all and (max-width: 600px) {
          body.profile article .profile_header .stat .sparkline {
            display: none;   }
}
          body.profile article .profile_header .stat .sparkline .sparkpath {
            fill: none;
            stroke: white;
            stroke-width: 2px; }
      body.profile article .profile_header .stat .years {
        -webkit-justify-content: center;
        -moz-justify-content: center;
        justify-content: center;
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-direction: row;
        -moz-flex-direction: row;
        flex-direction: row;
        -webkit-justify-content: space-between;
        -moz-justify-content: space-between;
        justify-content: space-between; }
        @media all and (max-width: 600px) {
          body.profile article .profile_header .stat .years {
            display: none;   }
}
      body.profile article .profile_header .stat .year {
        font-size: 11px;
        font-weight: 700;
        opacity: 0.9; }
        body.profile article .profile_header .stat .stat_flag {
          text-align: center ; }
          body.profile article .profile_header .stat .stat_flag img {
            height: 60px;
            width: 60px; }
            @media all and (max-width: 600px) {
              body.profile article .profile_header .stat .stat_flag {
                display: none;   }
}
  body.profile .stat {
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    justify-content: center;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    flex-direction: column;
    color: white;
    margin-right: 35px ;
    margin-top: 20px; }
    body.profile .stat .stat_text {
      -webkit-justify-content: center;
      -moz-justify-content: center;
      justify-content: center;
      display: -webkit-box;
      display: -moz-box;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-direction: row;
      -moz-flex-direction: row;
      flex-direction: row;
      -webkit-align-items: center;
      align-items: center;
      -webkit-justify-content: center;
      -moz-justify-content: center;
      justify-content: center; }
      body.profile .stat .stat_text h3 {
        -webkit-box-flex: none;
        -moz-box-flex: none;
        -webkit-flex: none;
        -ms-flex: none;
        flex: none;
        font-family: "Source Sans Pro", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
        font-size: 32px;
        font-weight: 300;
        margin: 0 10px 0 0 !important; }
        body.profile .stat .stat_text sub {
          font-family: "Montserrat", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
          font-size: 14px;
          font-weight: 700;
          text-transform: uppercase; }
          body.profile .stat .stat_text sub .rank {
            display: block;
            font-size: 10px;
            font-weight: 400;
            white-space: nowrap; }
    body.profile .stat .sparkline {
      height: 35px;
      margin: 10px 0 10px 0 ;
      width: 100%; }
      body.profile .stat .sparkline .sparkpath {
        fill: none;
        stroke: white;
        stroke-width: 2px; }
    body.profile .stat .years {
      -webkit-justify-content: center;
      -moz-justify-content: center;
      justify-content: center;
      display: -webkit-box;
      display: -moz-box;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-direction: row;
      -moz-flex-direction: row;
      flex-direction: row;
      -webkit-justify-content: space-between;
      -moz-justify-content: space-between;
      justify-content: space-between; }
      body.profile .stat .year {
        font-size: 11px;
        font-weight: 700;
        opacity: 0.9; }
        body.profile .stat#eci {
          color: #333;
          width: 100%; }
          body.profile .stat#eci .stat_text h3 {
            -webkit-box-flex: none;
            -moz-box-flex: none;
            -webkit-flex: none;
            -ms-flex: none;
            flex: none;
            font-size: 70px;
            font-weight: 300; }
            body.profile .stat#eci .stat_text sub {
              font-size: 15px;
              line-height: 18px;
              margin-top: 3px; }
              body.profile .stat#eci .stat_text sub .rank {
                font-size: 12px; }
          body.profile .stat#eci .sparkline {
            height: 50px;
            margin: 10px 0 10px 0 ;
            width: 100%; }
            body.profile .stat#eci .sparkline .sparkpath {
              fill: none;
              stroke: #212831;
              stroke-width: 2px; }
          body.profile .stat#eci .years {
            width: 100%; }
  body.profile .viz #d3plus_drawer {
    margin-bottom: -15px; }
    body.profile .viz #d3plus_drawer .d3plus_title {
      font-family: "Montserrat", "Helvetica Neue", "Helvetica", "Arial", sans-serif !important;
      font-size: 12px !important;
      font-weight: 400 !important;
      text-transform: uppercase; }
  body.profile article.intro-article content {
    margin: 45px 30px 30px 0 !important; }
    @media all and (max-width: 768px) {
      body.profile article.intro-article content {
        margin: 0 30px 30px 30px !important;   }
}
  body.profile article.intro-article aside {
    margin-top: 43px !important; }
    @media all and (max-width: 768px) {
      body.profile article.intro-article aside {
        margin-top: 30px !important;   }
}
  body.profile article.intro-article div.columns p {
    text-align: justify ; }
    @media all and (max-width: 768px) {
      body.profile article.intro-article div.columns p {
        text-align: left ;   }
}
  body.profile #topojson {
    -webkit-box-flex: none;
    -moz-box-flex: none;
    -webkit-flex: none;
    -ms-flex: none;
    flex: none;
    background-color: rgba(255, 255, 255, 0.2);
    border: 1px solid #aaa;
    height: 250px;
    left: 35px;
    opacity: 1;
    position: absolute;
    top: 100px;
    width: 250px;
    z-index: 10; }
    body.profile #topojson .coords {
      fill: white;
      opacity: 0.25;
      stroke: #63737f; }
      body.profile #topojson .coords.focus {
        opacity: 1; }
    body.profile #topojson #topojson-xxwld .coords {
      stroke: white !important; }
      @media all and (max-width: 768px) {
        body.profile #topojson {
          display: none;   }
}
  body.profile article.product ~ article.titled-section h1 {
    border-top: 0; }
  body.profile article.viz-article p {
    text-align: left ; }
    body.profile article.viz-article content {
      margin: 30px 30px 30px 0 !important; }
      @media all and (max-width: 768px) {
        body.profile article.viz-article content {
          margin: -30px 0 45px 0 !important;   }
}
  body.profile article.titled-section h1 {
    border-top: 1px solid #63737f;
    font-family: "Montserrat", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
    font-size: 32px;
    font-weight: 400;
    text-transform: uppercase; }
    @media all and (max-width: 768px) {
      body.profile article.titled-section h1 {
        border-top: 0;   }
}
  body.profile article.titled-section p {
    text-align: left ; }
    body.profile article.titled-section p img {
      -webkit-box-shadow: none;
      -moz-box-shadow: none;
      box-shadow: none;
      border: none;
      margin: 20px 0 0 0 ;
      width: 100%; }
      @media all and (max-width: 768px) {
        body.profile article.titled-section p img {
          width: 50%;
          margin: 20px 25% 20px 25% ;   }
}
  body.profile article.titled-section content {
    margin: 30px 30px 30px 0 !important; }
    @media all and (max-width: 768px) {
      body.profile article.titled-section content {
        margin: -30px 0 45px 0 !important;   }
}
  @media all and (max-width: 768px) {
    body.profile article.titled-section section.subtitle-section aside {
      margin: 0 30px 0 30px !important;   }
}
  body.profile article.titled-section section.subtitle-section content {
    margin: 30px 0 30px 0 !important; }
    body.profile article.titled-section section.subtitle-section content p {
      margin-bottom: 0 !important; }
  body.profile article .prof-nav {
    width: 100%; }
    body.profile article .prof-nav a.profile_button {
      -webkit-justify-content: center;
      -moz-justify-content: center;
      justify-content: center;
      display: -webkit-box;
      display: -moz-box;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-direction: row;
      -moz-flex-direction: row;
      flex-direction: row;
      -webkit-align-items: center;
      align-items: center;
      background: -moz-linear-gradient(top, transparent 0%, #212831 100%);
      background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, transparent),
            color-stop(100%, #212831));
      background: -webkit-linear-gradient(top, transparent 0%, #212831 100%);
      background: -o-linear-gradient(top, transparent 0%, #212831 100%);
      background: -ms-linear-gradient(top, transparent 0%, #212831 100%);
      background: linear-gradient(to bottom, transparent, #212831);
      background-attachment: center center;
      background-position: fixed;
      background-repeat: no-repeat;
      -webkit-background-size: cover;
      -moz-background-size: cover;
      -o-background-size: cover;
      background-size: cover;
      height: 150px;
      margin-top: 6px;
      overflow: hidden;
      position: relative;
      width: 50%; }
      @media all and (max-width: 768px) {
        body.profile article .prof-nav a.profile_button {
          width: 100%;   }
}
        body.profile article .prof-nav a.profile_button .button_cover {
          background-color: rgba(0, 0, 0, 0.5);
          height: 100%;
          left: 0;
          position: absolute;
          top: 0;
          width: 100%; }
          body.profile article .prof-nav a.profile_button i {
            -webkit-box-flex: none;
            -moz-box-flex: none;
            -webkit-flex: none;
            -ms-flex: none;
            flex: none;
            font-size: 35px;
            margin: 6px 10px 0 10px ;
            opacity: 0.8;
            z-index: 1; }
            body.profile article .prof-nav a.profile_button h1 {
              font-size: 50px;
              line-height: 50px;
              margin: 0 0 0 0 ;
              opacity: 0.8;
              padding: 0 0 0 0 ;
              -webkit-text-shadow: 1px 1px, 6px, #212831;
              -moz-text-shadow: 1px 1px, 6px, #212831;
              text-shadow: 1px 1px, 6px, #212831;
              z-index: 1; }
              body.profile article .prof-nav a.profile_button .icon {
                -webkit-box-flex: none;
                -moz-box-flex: none;
                -webkit-flex: none;
                -ms-flex: none;
                flex: none;
                margin: 3px 15px 0 15px ;
                max-height: 50px;
                z-index: 1; }
                body.profile article .prof-nav a.profile_button:hover i,
                body.profile article .prof-nav a.profile_button:hover h1 {
                  opacity: 1; }
      body.profile article .prof-nav a.profile_button.prev {
        -webkit-justify-content: flex-start;
        -moz-justify-content: flex-start;
        justify-content: flex-start;
        margin-right: 3px ;
        text-align: left ; }
        body.profile article .prof-nav a.profile_button.prev i {
          padding-left: 20px ; }
          @media all and (max-width: 768px) {
            body.profile article .prof-nav a.profile_button.prev {
              margin-right: 0 ;   }
}
      body.profile article .prof-nav a.profile_button.next {
        -webkit-justify-content: flex-end;
        -moz-justify-content: flex-end;
        justify-content: flex-end;
        margin-left: 3px ;
        text-align: right ; }
        body.profile article .prof-nav a.profile_button.next i {
          padding-right: 20px ; }
          @media all and (max-width: 768px) {
            body.profile article .prof-nav a.profile_button.next {
              margin-left: 0 ;   }
}
  body.profile ul.hierarchy.contents {
    border: 0;
    padding-left: 0 ; }
    body.profile ul.hierarchy.contents li a {
      color: #6297cb; }
  body.profile ul.hierarchy {
    border: 1px solid #BBBDC0;
    color: #212831;
    display: block;
    font-family: "Source Sans Pro", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 17px;
    list-style-type: none;
    padding: 0 20px 0 15px ; }
    body.profile ul.hierarchy li {
      padding: 3px 0 3px 0 ; }
      body.profile ul.hierarchy li a {
        color: #5083b5;
        font-size: 16px;
        line-height: 1.3; }
        body.profile ul.hierarchy li a:hover {
          opacity: 0.7; }
          body.profile ul.hierarchy li a span {
            font-weight: 700; }
    body.profile ul.hierarchy .depth2 {
      font-size: 22px;
      line-height: 35px; }
      body.profile ul.hierarchy .depth6 {
        margin-left: 10px ; }
        body.profile ul.hierarchy .depth8 {
          margin-left: 20px ; }
  body.profile article.sisters {
    background-color: #81919d;
    background: -moz-linear-gradient(top, #212831 0%, #5c656f 95%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #212831),
        color-stop(100%, #5c656f));
    background: -webkit-linear-gradient(top, #212831 0%, #5c656f 95%);
    background: -o-linear-gradient(top, #212831 0%, #5c656f 95%);
    background: -ms-linear-gradient(top, #212831 0%, #5c656f 95%);
    background: linear-gradient(to bottom, #212831, #5c656f 95%); }
    body.profile article.sisters h1 {
      border-top: 0;
      padding-bottom: 30px; }
  body.profile article.pantheon h1, body.profile article.dataviva h1 {
    border-top: 0; }
    body.profile article.pantheon h1 img:hover,
    body.profile article.dataviva h1 img:hover {
      opacity: 0.7; }
    @media all and (max-width: 768px) {
      body.profile article.pantheon h1, body.profile article.dataviva h1 {
        text-align: center;   }
}
  body.profile article.dataviva {
    background-color: #81919d;
    background-image: url('/static/img/dataviva.png'), linear-gradient(to bottom, #5c656f, #81919d 5%,
        rgba(255, 255, 255, 0) 20%),
        url('http://en.dataviva.info/static/img/bgs/city_small.jpg');
    background-attachment: local, local, fixed;
    background-repeat: repeat-x, no-repeat;
    background-position: bottom, 50% 50%, left;
    background-size: auto, auto, cover;
    color: #333;
    padding-bottom: 30px; }
    body.profile article.dataviva p {
      color: #333; }
      body.profile article.dataviva section aside {
        background-color: rgba(255, 255, 255, 0.8);
        padding: 15px 15px 15px 15px ;
        margin: 30px 20px 30px 20px !important; }
        body.profile article.dataviva section aside a {
          color: #af1f24; }
          body.profile article.dataviva section aside a:hover {
            border-bottom: 1px solid #af1f24; }
      @media all and (max-width: 768px) {
        body.profile article.dataviva section content {
          margin: 0 0 20px 0 !important;   }
}
    body.profile article.dataviva h1 img {
      width: 250px; }
      @media all and (max-width: 768px) {
        body.profile article.dataviva h1 img {
          padding-top: 0;   }
}
  body.profile article.pantheon {
    background-color: #F9F6E3;
    color: #333; }
    body.profile article.pantheon p {
      color: #333; }
      body.profile article.pantheon content {
        overflow: hidden; }
        body.profile article.pantheon h1 img {
          width: 370px;
          padding-bottom: 20px; }
          body.profile article.pantheon section aside a {
            color: black;
            text-transform: uppercase;
            letter-spacing: 0.1em; }
            body.profile article.pantheon section aside a:hover {
              border-bottom: 1px solid black; }
body.embed {
  background-color: transparent; }

  body.visualize {
    -webkit-font-smoothing: antialiased;
    -moz-font-smoothing: antialiased;
    font-smoothing: antialiased; }
    body.visualize #content > section {
      position: relative; }
      body.visualize nav {
        padding-bottom: 0px; }
        @media all and (max-width: 768px) {
          body.visualize nav {
            padding-bottom: 5px;   }
}
    body.visualize #container {
      margin-top: 65px; }
      @media all and (max-width: 768px) {
        body.visualize #container {
          margin-top: 55px;
          padding-top: 15px;   }
}
    body.visualize #explorer.small ~ #main_viz {
      margin: 0 20px 0 5px !important; }
      @media all and (max-width: 768px) {
        body.visualize #explorer.small ~ #main_viz {
          margin: 0 0 0 0 !important;   }
}
    body.visualize #content #main_viz {
      margin: 0 20px 0 -5px !important; }
      @media all and (max-width: 768px) {
        body.visualize #content #main_viz {
          margin: 0 0 0 0 !important;   }
}
        body.visualize #content #main_viz .nav-section {
          -webkit-justify-content: center;
          -moz-justify-content: center;
          justify-content: center;
          display: -webkit-box;
          display: -moz-box;
          display: -ms-flexbox;
          display: -webkit-flex;
          display: flex;
          -webkit-flex-direction: row;
          -moz-flex-direction: row;
          flex-direction: row;
          -webkit-justify-content: space-between;
          -moz-justify-content: space-between;
          justify-content: space-between;
          -webkit-align-items: baseline;
          align-items: baseline;
          padding: 10px 0 10px 0 ;
          margin: 0 0 0 0 !important; }
          @media all and (max-width: 768px) {
            body.visualize #content #main_viz .nav-section {
              padding: 0 0 10px 0 ;   }
}
            body.visualize #content #main_viz .nav-section aside {
              width: auto !important;
              margin: 0 0 0 0 ; }
              body.visualize #content #main_viz .nav-section aside a {
                color: #99BCD1; }
                body.visualize #content #main_viz .nav-section aside a i {
                  margin-top: 3px; }
                  body.visualize #content #main_viz .nav-section aside a h2.year-nav {
                    -webkit-transition: opacity 0.5s;
                    -moz-transition: opacity 0.5s;
                    -ms-transition: opacity 0.5s;
                    -o-transition: opacity 0.5s;
                    transition: opacity 0.5s;
                    font-weight: 400;
                    font-size: 26px;
                    opacity: 0.6;
                    padding: 0 10px 0 10px ; }
                    body.visualize #content #main_viz .nav-section aside a h2.year-nav:hover {
                      opacity: 1; }
                      @media all and (min-width: 860px) and (max-width: 960px) {
                        body.visualize #content #main_viz .nav-section aside a h2.year-nav {
                          font-size: 22px;   }
}
                        @media all and (min-width: 501px) and (max-width: 859px) {
                          body.visualize #content #main_viz .nav-section aside a h2.year-nav {
                            font-size: 18px;   }
}
                          @media all and (max-width: 768px) {
                            body.visualize #content #main_viz .nav-section aside a h2.year-nav {
                              padding: 0 5px 0 5px ;   }
}
                            @media all and (max-width: 500px) {
                              body.visualize #content #main_viz .nav-section aside a h2.year-nav {
                                font-size: 16px;   }
}
          body.visualize #content #main_viz .nav-section content {
            margin: 0 0 0 0 ; }
            body.visualize #content #main_viz .nav-section content h1 {
              text-align: center ; }
              @media all and (min-width: 920px) and (max-width: 1090px) {
                body.visualize #content #main_viz .nav-section content h1 {
                  font-size: 30px;   }
}
                @media all and (min-width: 860px) and (max-width: 919px) {
                  body.visualize #content #main_viz .nav-section content h1 {
                    font-size: 26px;   }
}
                  @media all and (min-width: 501px) and (max-width: 859px) {
                    body.visualize #content #main_viz .nav-section content h1 {
                      font-size: 22px;   }
}
                    @media all and (max-width: 500px) {
                      body.visualize #content #main_viz .nav-section content h1 {
                        font-size: 18px;   }
}
    body.visualize #explorer.small ~ #visualize_share {
      left: 49%; }
      body.visualize #visualize_share {
        -webkit-transition: left 0.5s, right 0.5s;
        -moz-transition: left 0.5s, right 0.5s;
        -ms-transition: left 0.5s, right 0.5s;
        -o-transition: left 0.5s, right 0.5s;
        transition: left 0.5s, right 0.5s;
        -webkit-justify-content: center;
        -moz-justify-content: center;
        justify-content: center;
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-direction: row;
        -moz-flex-direction: row;
        flex-direction: row;
        position: fixed;
        top: 45px;
        left: 60%;
        z-index: 19; }
        @media all and (max-width: 768px) {
          body.visualize #visualize_share {
            display: none;   }
}
          body.visualize #visualize_share a {
            color: #6297cb;
            cursor: pointer;
            font-size: 15px;
            padding: 15px 8px 15px 8px ;
            margin: 0px 0px 0px 0px ;
            text-align: center; }
            body.visualize #visualize_share a i {
              -webkit-transition: opacity 0.1s;
              -moz-transition: opacity 0.1s;
              -ms-transition: opacity 0.1s;
              -o-transition: opacity 0.1s;
              transition: opacity 0.1s;
              opacity: 0.7; }
              body.visualize #visualize_share a:hover i {
                opacity: 1; }
    body.visualize #collapse-container {
      position: relative;
      top: 30px; }
      @media all and (max-width: 768px) {
        body.visualize #collapse-container {
          -webkit-justify-content: center;
          -moz-justify-content: center;
          justify-content: center;
          display: -webkit-box;
          display: -moz-box;
          display: -ms-flexbox;
          display: -webkit-flex;
          display: flex;
          -webkit-justify-content: flex-start;
          -moz-justify-content: flex-start;
          justify-content: flex-start;
          -webkit-flex-direction: row-reverse;
          -moz-flex-direction: row-reverse;
          flex-direction: row-reverse;
          top: -10px;
          right: 20px;   }
}
    body.visualize #collapse {
      -webkit-transition: opacity 0.1s;
      -moz-transition: opacity 0.1s;
      -ms-transition: opacity 0.1s;
      -o-transition: opacity 0.1s;
      transition: opacity 0.1s;
      color: white;
      font-size: 12px;
      opacity: 0.7;
      top: 0;
      left: 0px;
      z-index: 18;
      height: 100%;
      width: 30px; }
      @media all and (min-width: 769px) {
        body.visualize #collapse {
          position: absolute;   }
}
        body.visualize #collapse:hover {
          cursor: pointer;
          opacity: 1; }
          body.visualize #collapse .viz_menu {
            -webkit-transition: background-position 0.5s, opacity 2s;
            -moz-transition: background-position 0.5s, opacity 2s;
            -ms-transition: background-position 0.5s, opacity 2s;
            -o-transition: background-position 0.5s, opacity 2s;
            transition: background-position 0.5s, opacity 2s;
            opacity: 0; }
            body.visualize #collapse i {
              color: #99BCD1;
              -webkit-transition: left 0.5s, right 0.5s;
              -moz-transition: left 0.5s, right 0.5s;
              -ms-transition: left 0.5s, right 0.5s;
              -o-transition: left 0.5s, right 0.5s;
              transition: left 0.5s, right 0.5s;
              font-size: 16px;
              position: absolute; }
              body.visualize #collapse .fa-toggle-on {
                left: 250px; }
                body.visualize #collapse .fa-toggle-on ~ .viz_menu {
                  background-position: left -10px top 128px, left -10px top 160px, left -10px top 192px,
                                    left -10px top 224px, left -10px top 256px, left -10px top 288px,
                                    left -10px top 320px; }
      body.visualize #collapse .fa-toggle-off {
        left: 0px;
        padding: 0 6px 6px 6px ;
        background-color: #212831; }
        body.visualize #collapse .fa-toggle-off ~ .viz_menu {
          background-image: url('/static/img/icons/app/app_tree_map.png'),
                    url('/static/img/icons/app/app_stacked.png'),
                    url('/static/img/icons/app/app_network.png'),
                    url('/static/img/icons/app/app_rings.png'),
                    url('/static/img/icons/app/app_geo_map.png'),
                    url('/static/img/icons/app/app_line.png'),
                    url('/static/img/icons/app/app_scatter.png');
          background-attachment: fixed;
          background-repeat: no-repeat;
          background-position: left 8px top 128px, left 8px top 160px, left 8px top 192px, left 8px top 224px,
                    left 8px top 256px, left 8px top 288px, left 8px top 320px;
          background-size: 15px 15px;
          opacity: 1;
          width: 30px;
          height: 100%; }
      @media all and (max-width: 768px) {
        body.visualize #collapse {
          top: 0;
          height: 20px;
          left: 0px;   }
          body.visualize #collapse i {
            left: 0 !important;
            background-color: transparent !important;
            -webkit-transform: rotate(90deg);
            -ms-transform: rotate(90deg);
            transform: rotate(90deg);
            padding: 0px 15px 17px 0 !important;   }
            body.visualize #collapse .viz_menu {
              display: none;   }
}
    body.visualize #collapse-text-container {
      left: 13px;
      cursor: pointer;
      top: 0;
      height: 17px;
      opacity: 0.7;
      overflow: hidden; }
      body.visualize #collapse-text-container:hover {
        opacity: 1; }
        body.visualize #collapse-text-container .collapse-text {
          -webkit-transition: top 0.25s ease-in-out;
          -moz-transition: top 0.25s ease-in-out;
          -ms-transition: top 0.25s ease-in-out;
          -o-transition: top 0.25s ease-in-out;
          transition: top 0.25s ease-in-out;
          color: #81919d;
          display: block;
          font-size: 13px;
          text-align: right ;
          text-transform: uppercase;
          letter-spacing: 0.05em;
          font-weight: 400;
          position: relative;
          top: -17px; }
          @media all and (min-width: 769px) {
            body.visualize #collapse-text-container {
              display: none;
              position: absolute;   }
}
            @media all and (max-width: 768px) {
              body.visualize #collapse-text-container {
                display: inline-block;   }
}
              body.visualize #collapse-text-container.to-open .collapse-text {
                top: 0px; }
    body.visualize aside#explorer {
      -webkit-transition: margin-left, 0.5s, height 3s;
      -moz-transition: margin-left, 0.5s, height 3s;
      -ms-transition: margin-left, 0.5s, height 3s;
      -o-transition: margin-left, 0.5s, height 3s;
      transition: margin-left, 0.5s, height 3s;
      margin: 0 25px 0 20px !important;
      position: relative;
      top: 60px; }
      body.visualize aside#explorer.small {
        margin-left: -250px !important ; }
        @media all and (max-width: 768px) {
          body.visualize aside#explorer {
            margin: 0 20px 0 20px !important;
            top: 0;
            height: auto;   }
            body.visualize aside#explorer.small {
              display: none;
              height: 0;
              margin-left: 20px !important ;   }
}
      body.visualize aside#explorer .app_button_group {
        -webkit-justify-content: center;
        -moz-justify-content: center;
        justify-content: center;
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex; }
        body.visualize aside#explorer .app_button_group .app_button {
          -webkit-box-flex: 1;
          -moz-box-flex: 1;
          -webkit-flex: 1;
          -ms-flex: 1;
          flex: 1;
          -webkit-transition: opacity 0.5s;
          -moz-transition: opacity 0.5s;
          -ms-transition: opacity 0.5s;
          -o-transition: opacity 0.5s;
          transition: opacity 0.5s;
          border-color: transparent;
          border-style: solid;
          border-width: 1px;
          display: inline-block;
          font-family: "Montserrat", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
          font-size: 13px;
          padding: 2px 5px 2px 5px ;
          opacity: 0.7;
          text-transform: uppercase; }
          body.visualize aside#explorer .app_button_group .app_button img {
            margin-right: 3px ;
            width: 15px; }
            body.visualize aside#explorer .app_button_group .app_button:hover {
              cursor: pointer;
              opacity: 0.9; }
              body.visualize aside#explorer .app_button_group .app_button.open {
                background-color: #212831;
                border-color: rgba(255, 255, 255, 0.4) rgba(255, 255, 255, 0.4) rgba(255, 255, 255, 0) rgba(255,
                                255, 255, 0.4);
                opacity: 1;
                border-style: solid; }
      body.visualize aside#explorer .app_menu {
        border-color: rgba(255, 255, 255, 0.4);
        border-style: solid;
        border-width: 1px;
        display: none;
        margin-top: -1px;
        margin-bottom: 5px;
        padding: 10px 10px 10px 10px ; }
        body.visualize aside#explorer .app_menu.open {
          display: block; }
          body.visualize aside#explorer .app_menu h3 {
            font-size: 16px;
            margin: 35px 0 20px 0 ; }
            body.visualize aside#explorer .app_menu h4 {
              color: #81919d;
              font-size: 13px;
              font-weight: 400;
              margin: 0 0 10px 0 ;
              display: none; }
              body.visualize aside#explorer .app_menu .build_header {
                margin-left: -5px ; }
                body.visualize aside#explorer .app_menu .build_header li {
                  color: #bbbdc0;
                  font-size: 8px;
                  text-transform: uppercase;
                  font-weight: 700;
                  display: inline-block;
                  width: 32px;
                  text-align: center ; }
        body.visualize aside#explorer .app_menu .build {
          -webkit-justify-content: center;
          -moz-justify-content: center;
          justify-content: center;
          display: -webkit-box;
          display: -moz-box;
          display: -ms-flexbox;
          display: -webkit-flex;
          display: flex;
          font-family: "Source Sans Pro", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
          font-size: 12px;
          font-weight: 400;
          margin: 0 0 10px 0 ; }
          body.visualize aside#explorer .app_menu .build:last-child {
            margin-bottom: 0; }
            body.visualize aside#explorer .app_menu .build .build_title {
              -webkit-box-flex: 1;
              -moz-box-flex: 1;
              -webkit-flex: 1;
              -ms-flex: 1;
              flex: 1;
              cursor: default;
              display: inline-block;
              font-size: 13px;
              letter-spacing: 0.05em;
              line-height: 1.1;
              text-transform: uppercase;
              opacity: 0.7; }
              body.visualize aside#explorer .app_menu .build .build_title.active {
                font-weight: 700;
                opacity: 1; }
          body.visualize aside#explorer .app_menu .build .build_list {
            -webkit-box-flex: 1;
            -moz-box-flex: 1;
            -webkit-flex: 1;
            -ms-flex: 1;
            flex: 1;
            display: inline-block;
            line-height: 1.5; }
            body.visualize aside#explorer .app_menu .build .build_list .build_link {
              display: block;
              opacity: 0.7; }
              body.visualize aside#explorer .app_menu .build .build_list .build_link.active {
                font-weight: 700;
                opacity: 1; }
                body.visualize aside#explorer .app_menu .build .build_list .build_link.active:before {
                  content: "\f0da";
                  font-family: FontAwesome;
                  position: absolute;
                  margin-top: 0px;
                  margin-left: -10px ; }
              body.visualize aside#explorer .app_menu .build .build_list .build_link:hover {
                opacity: 0.9; }
                body.visualize aside#explorer .app_menu .build .build_list .build_link:hover:before {
                  content: "\f0da";
                  font-family: FontAwesome;
                  opacity: 0.7;
                  position: absolute;
                  margin-top: 0px;
                  margin-left: -10px ; }
          body.visualize aside#explorer .app_menu .build.new {
            -webkit-justify-content: flex-start;
            -moz-justify-content: flex-start;
            justify-content: flex-start;
            -webkit-align-items: center;
            align-items: center;
            margin: 0 0 12px 0 !important; }
            body.visualize aside#explorer .app_menu .build.new .build_link {
              color: #bbbdc0;
              font-size: 13px; }
              body.visualize aside#explorer .app_menu .build.new .build_link:hover {
                color: white; }
            body.visualize aside#explorer .app_menu .build.new .build_link.active {
              font-weight: 700;
              color: white; }
              body.visualize aside#explorer .app_menu .build.new:hover .build_link:before {
                content: "\f0da";
                font-family: FontAwesome;
                opacity: 0.4;
                position: absolute;
                margin-top: 2px;
                margin-left: -10px ; }
            body.visualize aside#explorer .app_menu .build.new .build_icons {
              margin-left: -5px ;
              margin-right: 8px ;
              min-width: 103px; }
              body.visualize aside#explorer .app_menu .build.new .build_icons .build_icon {
                height: 13px;
                display: inline-block;
                margin: 0 auto 0 auto ;
                position: relative;
                text-align: center ;
                width: 32px; }
                body.visualize aside#explorer .app_menu .build.new .build_icons .build_icon.show:before {
                  color: #fff;
                  border: 1px solid #20a898;
                  border-radius: 50%;
                  padding: 4px 4px 4px 4px ; }
                body.visualize aside#explorer .app_menu .build.new .build_icons .build_icon.all:before {
                  color: #535a63; }
                body.visualize aside#explorer .app_menu .build.new .build_icons .build_icon.id:before {
                  color: #fff; }
                body.visualize aside#explorer .app_menu .build.new .build_icons .build_icon.origin:before {
                  font-family: FontAwesome;
                  font-size: 13px; }
                  body.visualize aside#explorer .app_menu .build.new .build_icons .build_icon.origin.show:before {
                    content: "\f0ac"; }
                body.visualize aside#explorer .app_menu .build.new .build_icons .build_icon.origin.all:before {
                  content: "\f0ac";
                  font-size: 15px; }
                body.visualize aside#explorer .app_menu .build.new .build_icons .build_icon.origin.id:before {
                  content: "\f0ac"; }
                body.visualize aside#explorer .app_menu .build.new .build_icons .build_icon.dest:before {
                  font-family: FontAwesome;
                  font-size: 13px; }
                  body.visualize aside#explorer .app_menu .build.new .build_icons .build_icon.dest.show:before {
                    ,   content: "\f0ac"; }
                body.visualize aside#explorer .app_menu .build.new .build_icons .build_icon.dest.all:before {
                  content: "\f0ac";
                  font-size: 15px; }
                body.visualize aside#explorer .app_menu .build.new .build_icons .build_icon.dest.id:before {
                  content: "\f0ac"; }
                body.visualize aside#explorer .app_menu .build.new .build_icons .build_icon.prod:before {
                  font-family: FontAwesome;
                  font-size: 13px; }
                  body.visualize aside#explorer .app_menu .build.new .build_icons .build_icon.prod.show:before {
                    content: "\f0d1"; }
                body.visualize aside#explorer .app_menu .build.new .build_icons .build_icon.prod.all:before {
                  content: "\f0d1"; }
                body.visualize aside#explorer .app_menu .build.new .build_icons .build_icon.prod.id:before {
                  content: "\f0d1"; }
              body.visualize aside#explorer .app_menu .build.new .build_icons.export > .build_icon.show:before {
                border: 1px solid cornflowerblue; }
              body.visualize aside#explorer .app_menu .build.new .build_icons.export > .origin.id + .prod.show:after {
                -webkit-transform: scaleX(-1);
                -ms-transform: scaleX(-1);
                transform: scaleX(-1);
                background-image: url('/static/img/visualize/one_many_exp.png');
                right: -8px; }
                body.visualize aside#explorer .app_menu .build.new .build_icons.export > .origin.id + .prod.show + .dest.all:after {
                  left: -8px; }
              body.visualize aside#explorer .app_menu .build.new .build_icons.export > .origin.id + .prod.id:after,
              body.visualize aside#explorer .app_menu .build.new .build_icons.export > .origin.id + .prod.all:after {
                background-image: url('/static/img/visualize/one_one_exp.png');
                right: -8px; }
                body.visualize aside#explorer .app_menu .build.new .build_icons.export > .origin.id + .prod.id + .dest.show:after,
                body.visualize aside#explorer .app_menu .build.new .build_icons.export > .origin.id + .prod.all + .dest.show:after {
                  background-image: url('/static/img/visualize/one_many_exp.png') !important;
                  left: -8px; }
              body.visualize aside#explorer .app_menu .build.new .build_icons.export > .origin.id ~ .dest.id:after {
                background-image: url('/static/img/visualize/one_one_exp.png') !important;
                left: -8px; }
                body.visualize aside#explorer .app_menu .build.new .build_icons.export > .origin.id ~ .dest.id ~ .prod.show:after {
                  background-image: url('/static/img/visualize/one_one_exp.png') !important;
                  left: -8px; }
              body.visualize aside#explorer .app_menu .build.new .build_icons.export > .origin.show + .prod.id:after {
                -webkit-transform: scaleX(-1);
                -ms-transform: scaleX(-1);
                transform: scaleX(-1);
                background-image: url('/static/img/visualize/many_one_exp.png');
                right: -8px; }
                body.visualize aside#explorer .app_menu .build.new .build_icons.export > .origin.show + .prod.id + .dest.all:after {
                  background-image: url('/static/img/visualize/one_one_exp.png') !important;
                  left: -8px; }
              body.visualize aside#explorer .app_menu .build.new .build_icons.export > .prod {
                -webkit-transform: scaleX(-1);
                -ms-transform: scaleX(-1);
                transform: scaleX(-1); }
              body.visualize aside#explorer .app_menu .build.new .build_icons.import > .build_icon.show:before {
                border: 1px solid salmon; }
              body.visualize aside#explorer .app_menu .build.new .build_icons.import > .origin.id + .prod.show:after {
                background-image: url('/static/img/visualize/one_many_imp.png');
                left: -8px; }
                body.visualize aside#explorer .app_menu .build.new .build_icons.import > .origin.id + .prod.show + .dest.all:after {
                  left: -8px; }
              body.visualize aside#explorer .app_menu .build.new .build_icons.import > .origin.id + .prod.id:after,
              body.visualize aside#explorer .app_menu .build.new .build_icons.import > .origin.id + .prod.all:after {
                background-image: url('/static/img/visualize/one_one_imp.png');
                left: -8px; }
                body.visualize aside#explorer .app_menu .build.new .build_icons.import > .origin.id + .prod.id + .dest.show:after,
                body.visualize aside#explorer .app_menu .build.new .build_icons.import > .origin.id + .prod.all + .dest.show:after {
                  background-image: url('/static/img/visualize/one_many_imp.png') !important;
                  left: -8px; }
              body.visualize aside#explorer .app_menu .build.new .build_icons.import > .origin.id ~ .dest.id:after {
                background-image: url('/static/img/visualize/one_one_imp.png') !important;
                left: -8px; }
                body.visualize aside#explorer .app_menu .build.new .build_icons.import > .origin.id ~ .dest.id ~ .prod.show:after {
                  background-image: url('/static/img/visualize/one_one_imp.png') !important;
                  left: -8px; }
              body.visualize aside#explorer .app_menu .build.new .build_icons.import > .origin.show + .prod.id:after {
                background-image: url('/static/img/visualize/many_one_imp.png');
                left: -8px; }
                body.visualize aside#explorer .app_menu .build.new .build_icons.import > .origin.show + .prod.id + .dest.all:after {
                  background-image: url('/static/img/visualize/one_one_imp.png') !important;
                  left: -8px; }
      body.visualize aside#explorer #changers {
        -webkit-justify-content: center;
        -moz-justify-content: center;
        justify-content: center;
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: space-between;
        -moz-justify-content: space-between;
        justify-content: space-between;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-top: 5px; }
        body.visualize aside#explorer #changers h2 {
          font-size: 28px;
          margin-bottom: 28px; }
          body.visualize aside#explorer #changers h3 {
            font-size: 16px;
            margin: 25px 0 5px 0 ; }
            body.visualize aside#explorer #changers h4 {
              font-family: "Montserrat", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
              font-size: 12px;
              margin-bottom: 5px;
              margin-top: -5px;
              text-transform: uppercase; }
              body.visualize aside#explorer #changers .ui {
                margin: 12px 0 0 0 ; }
                body.visualize aside#explorer #changers .ui .d3plus_node {
                  border-color: rgba(255, 255, 255, 0.4) !important; }
        body.visualize aside#explorer #changers .ui#product .d3plus_node:not(.d3plus_button_active) {
          color: #fff !important; }
          body.visualize aside#explorer #changers #build {
            -webkit-user-select: none;
            -webkit-appearance: none;
            -webkit-tap-highlight-color: transparent;
            background-color: #63737f;
            border: 0;
            border-radius: 2px;
            color: white;
            cursor: pointer;
            display: block;
            font-family: "Montserrat", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
            font-size: 13px;
            margin: 10px 0 20px 0 ;
            padding: 9px 10px 9px 10px ;
            outline: none;
            position: relative;
            text-align: center ;
            -webkit-text-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
            -moz-text-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
            text-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
            text-transform: uppercase;
            width: 100%; }
            body.visualize aside#explorer #changers #build:after {
              position: absolute;
              content: "";
              top: 0;
              right: 0;
              bottom: 0;
              left: 0;
              border-radius: 2px; }
              body.visualize aside#explorer #changers #build:hover:after {
                box-shadow: inset 0 -2px rgba(0, 0, 0, 0.3); }
                body.visualize aside#explorer #changers #build:active:after {
                  box-shadow: inset 0 2px 1px rgba(0, 0, 0, 0.2); }
    body.visualize .d3plus_drop_search input {
      background-color: #3f464f !important;
      color: white; }
      body.visualize .d3plus_button_active {
        font-weight: 700 !important; }
        body.visualize .d3plus_tooltip {
          font-family: "Source Sans Pro", "Helvetica Neue", "Helvetica", "Arial", sans-serif !important;
          font-weight: 400 !important; }
          body.visualize .d3plus_tooltip .d3plus_tooltip_data_value {
            font-weight: 700 !important; }
    body.visualize .d3plus_tooltip_title, body.visualize .d3plus_tooltip_footer {
      font-family: "Montserrat", "Helvetica Neue", "Helvetica", "Arial", sans-serif !important;
      font-weight: 700 !important;
      text-transform: uppercase !important; }
      body.visualize .d3plus_tooltip_container {
        font-family: "Source Sans Pro", "Helvetica Neue", "Helvetica", "Arial", sans-serif !important;
        font-weight: 400 !important; }
        body.visualize .d3plus_tooltip_container a.related,
        body.visualize .d3plus_tooltip_container a.profile {
          -webkit-transition: opacity 0.5s;
          -moz-transition: opacity 0.5s;
          -ms-transition: opacity 0.5s;
          -o-transition: opacity 0.5s;
          transition: opacity 0.5s;
          color: #fff;
          display: block;
          margin: 10px 0 0 0 ;
          opacity: 0.75;
          padding: 14px 24px 6px 4px ;
          position: relative;
          text-decoration: none;
          font-size: 13px;
          line-height: 1.3; }
          body.visualize .d3plus_tooltip_container a.related:hover,
          body.visualize .d3plus_tooltip_container a.profile:hover {
            opacity: 0.6; }
            body.visualize .d3plus_tooltip_container a.related:after,
            body.visualize .d3plus_tooltip_container a.profile:after {
              bottom: 2px;
              content: "\f105";
              display: block;
              font-family: FontAwesome;
              font-size: 20px;
              -webkit-font-smoothing: antialiased;
              font-style: normal;
              font-weight: normal;
              line-height: 38px;
              position: absolute;
              right: 12px;
              text-decoration: inherit; }
    body.visualize .d3plus_tooltip_container a.related {
      padding: 6px 24px 6px 40px ; }
      body.visualize .d3plus_tooltip_container a.related:before {
        font-size: 12px;
        line-height: 38px;
        background-position: 50%;
        background-repeat: no-repeat;
        background-size: 80%;
        content: "";
        display: block;
        height: 100%;
        left: 0px;
        position: absolute;
        text-align: center ;
        text-decoration: none;
        top: 0px;
        width: 38px; }
    body.visualize .d3plus_tooltip_container a.profile {
      color: white !important; }
      body.visualize .d3plus_tooltip_container a.profile img {
        width: 30px;
        margin: -8px 6px 0 0 ; }

#d3plus_drawer .d3plus_drawer_ui:nth-last-child(2) .d3plus_node {
  border: 0 !important;
  background-color: transparent !important; }
  #d3plus_drawer .d3plus_drawer_ui:nth-last-child(2) + .d3plus_drawer_ui .d3plus_node {
    border: 0 !important;
    background-color: transparent !important; }

.d3plus_node img {
  height: 17px;
  width: 17px; }
  .d3plus_node img:hover {
    opacity: 0.6; }

.d3plus_tooltip_curtain {
  opacity: 0.4 !important; }

  .d3plus_tooltip_small .d3plus_tooltip_title {
    padding: 10px 6px 10px 6px !important; }
    .d3plus_tooltip_small .d3plus_tooltip_container {
      padding: 3px 3px 3px 5px !important ; }

#d3plus_tooltip_id_tree_map.d3plus_tooltip_large .d3plus_tooltip_container {
  padding: 0 0 0 0 !important; }
  #d3plus_tooltip_id_tree_map.d3plus_tooltip_large .d3plus_tooltip_body {
    padding: 0 7px 0 7px !important; }

.d3plus_tooltip_large, .d3plus_tooltip_small {
  -webkit-font-smoothing: antialiased;
  -moz-font-smoothing: antialiased;
  font-smoothing: antialiased;
  color: #ccc !important;
  font-family: "Source Sans Pro", "Helvetica Neue", "Helvetica", "Arial", sans-serif !important; }
  .d3plus_tooltip_large .d3plus_tooltip_arrow,
  .d3plus_tooltip_small .d3plus_tooltip_arrow {
    background-color: #63737f !important;
    border: 1px solid #63737f; }
    .d3plus_tooltip_large .d3plus_tooltip_container,
    .d3plus_tooltip_small .d3plus_tooltip_container {
      background-color: #272f38 !important;
      border: 1px solid #63737f;
      color: #ccc;
      line-height: 1.4; }
      .d3plus_tooltip_large .d3plus_tooltip_container h3.related_viz,
      .d3plus_tooltip_small .d3plus_tooltip_container h3.related_viz {
        color: #81919d;
        font-size: 12px;
        padding: 15px 0px 10px 0 ; }
        .d3plus_tooltip_large .d3plus_tooltip_container a.profile,
        .d3plus_tooltip_small .d3plus_tooltip_container a.profile {
          -webkit-justify-content: center;
          -moz-justify-content: center;
          justify-content: center;
          display: -webkit-box;
          display: -moz-box;
          display: -ms-flexbox;
          display: -webkit-flex;
          display: flex;
          -webkit-flex-direction: row;
          -moz-flex-direction: row;
          flex-direction: row;
          -webkit-align-items: center;
          align-items: center;
          -webkit-justify-content: flex-start;
          -moz-justify-content: flex-start;
          justify-content: flex-start; }
          .d3plus_tooltip_large .d3plus_tooltip_container a.profile h3,
          .d3plus_tooltip_small .d3plus_tooltip_container a.profile h3 {
            font-size: 16px;
            display: inline-block;
            line-height: 1.2;
            vertical-align: middle;
            width: auto; }
            .d3plus_tooltip_large .d3plus_tooltip_container a.profile h3:after,
            .d3plus_tooltip_small .d3plus_tooltip_container a.profile h3:after {
              font-family: FontAwesome;
              padding-left: 7px ;
              position: absolute;
              content: "\f105"; }
          .d3plus_tooltip_large .d3plus_tooltip_container a.profile:hover,
          .d3plus_tooltip_small .d3plus_tooltip_container a.profile:hover {
            opacity: 0.8; }
  .d3plus_tooltip_large .d3plus_tooltip_body,
  .d3plus_tooltip_small .d3plus_tooltip_body {
    height: 100%;
    background-color: #3f464f;
    padding-right: 0 !important ; }
    .d3plus_tooltip_large .d3plus_tooltip_body .d3plus_tooltip_header,
    .d3plus_tooltip_small .d3plus_tooltip_body .d3plus_tooltip_header {
      padding-top: 5px; }
      .d3plus_tooltip_large .d3plus_tooltip_body .d3plus_tooltip_header .d3plus_tooltip_icon,
      .d3plus_tooltip_small .d3plus_tooltip_body .d3plus_tooltip_header .d3plus_tooltip_icon {
        display: none !important; }
        .d3plus_tooltip_large .d3plus_tooltip_body .d3plus_tooltip_header .d3plus_tooltip_title,
        .d3plus_tooltip_small .d3plus_tooltip_body .d3plus_tooltip_header .d3plus_tooltip_title {
          width: 100% !important;
          max-width: 100% !important; }
  .d3plus_tooltip_large .d3plus_tooltip_html,
  .d3plus_tooltip_small .d3plus_tooltip_html {
    padding: 0 0 0 0 !important;
    word-wrap: break-word;
    overflow: scroll; }
    .d3plus_tooltip_large .d3plus_tooltip_icon,
    .d3plus_tooltip_small .d3plus_tooltip_icon {
      vertical-align: middle !important; }
      .d3plus_tooltip_large .d3plus_tooltip_title,
      .d3plus_tooltip_small .d3plus_tooltip_title {
        color: #fff !important;
        font-size: 20px !important;
        font-weight: 400;
        line-height: 1.2 !important;
        vertical-align: middle !important;
        padding: 10px 6px 10px 6px !important; }
        .d3plus_tooltip_large .d3plus_tooltip_data_title,
        .d3plus_tooltip_small .d3plus_tooltip_data_title {
          color: #81919d;
          font-family: "Montserrat", "Helvetica Neue", "Helvetica", "Arial", sans-serif !important;
          font-weight: 400 !important;
          letter-spacing: 1px;
          line-height: 1.15;
          padding: 15px 0px 10px 0 !important;
          text-transform: uppercase; }
          .d3plus_tooltip_large .d3plus_tooltip_focus_link,
          .d3plus_tooltip_small .d3plus_tooltip_focus_link {
            font-size: 14px;
            line-height: 1.2;
            width: 100%;
            padding-left: 27px !important ; }
            .d3plus_tooltip_large .d3plus_tooltip_focus_link div,
            .d3plus_tooltip_small .d3plus_tooltip_focus_link div {
              height: 16px !important;
              width: 16px !important; }
              .d3plus_tooltip_large .d3plus_tooltip_focus_link:hover,
              .d3plus_tooltip_small .d3plus_tooltip_focus_link:hover {
                color: #fff; }
  .d3plus_tooltip_large .d3plus_tooltip_data_block,
  .d3plus_tooltip_small .d3plus_tooltip_data_block {
    color: #ccc !important;
    font-size: 14px !important;
    padding: 5px 6px 5px 6px !important; }
    .d3plus_tooltip_large .d3plus_tooltip_data_block .d3plus_tooltip_data_name,
    .d3plus_tooltip_small .d3plus_tooltip_data_block .d3plus_tooltip_data_name {
      font-weight: 700; }
      .d3plus_tooltip_large .d3plus_tooltip_data_block .d3plus_tooltip_data_name .d3plus_tooltip_focus_link:hover:after,
      .d3plus_tooltip_small .d3plus_tooltip_data_block .d3plus_tooltip_data_name .d3plus_tooltip_focus_link:hover:after {
        font-family: FontAwesome;
        padding-left: 5px ;
        position: absolute;
        content: "\f105"; }
    .d3plus_tooltip_large .d3plus_tooltip_data_block ~ div img,
    .d3plus_tooltip_small .d3plus_tooltip_data_block ~ div img {
      display: inline-block;
      vertical-align: middle;
      width: 25px;
      margin: 0 5px 0 0 ; }
      .d3plus_tooltip_large .d3plus_tooltip_data_block ~ div a,
      .d3plus_tooltip_small .d3plus_tooltip_data_block ~ div a {
        display: block;
        width: 100%; }
        .d3plus_tooltip_large .d3plus_tooltip_data_block ~ div a.profile,
        .d3plus_tooltip_small .d3plus_tooltip_data_block ~ div a.profile {
          padding: 0 0 2px 3px ;
          width: 98%;
          background-color: transparent !important;
          font-size: 18px;
          font-weight: 400;
          margin: 10px 0 10px 0 ; }
          .d3plus_tooltip_large .d3plus_tooltip_data_block ~ div a.profile:before,
          .d3plus_tooltip_small .d3plus_tooltip_data_block ~ div a.profile:before {
            display: none; }
        .d3plus_tooltip_large .d3plus_tooltip_data_block ~ div a ~ h3.related_viz,
        .d3plus_tooltip_small .d3plus_tooltip_data_block ~ div a ~ h3.related_viz {
          padding: 5px 0 10px 0 ; }
          .d3plus_tooltip_large .d3plus_tooltip_data_block ~ div a.related,
          .d3plus_tooltip_small .d3plus_tooltip_data_block ~ div a.related {
            -webkit-transition: opacity 0.5s;
            -moz-transition: opacity 0.5s;
            -ms-transition: opacity 0.5s;
            -o-transition: opacity 0.5s;
            transition: opacity 0.5s;
            color: #fff;
            font-size: 14px;
            line-height: 1.3;
            padding: 6px 0 6px 0 ; }
            .d3plus_tooltip_large .d3plus_tooltip_data_block ~ div a.related:hover,
            .d3plus_tooltip_small .d3plus_tooltip_data_block ~ div a.related:hover {
              opacity: 0.8; }
              .d3plus_tooltip_large .d3plus_tooltip_data_block ~ div a.related:hover:after,
              .d3plus_tooltip_small .d3plus_tooltip_data_block ~ div a.related:hover:after {
                font-family: FontAwesome;
                padding-left: 5px ;
                position: absolute;
                content: "\f105"; }
        .d3plus_tooltip_large .d3plus_tooltip_data_block ~ div a.tree_map:before,
        .d3plus_tooltip_small .d3plus_tooltip_data_block ~ div a.tree_map:before {
          background-image: url("/static/img/icons/app/app_tree_map.png"); }
          .d3plus_tooltip_large .d3plus_tooltip_data_block ~ div a.stacked:before,
          .d3plus_tooltip_small .d3plus_tooltip_data_block ~ div a.stacked:before {
            background-image: url("/static/img/icons/app/app_stacked.png"); }
            .d3plus_tooltip_large .d3plus_tooltip_data_block ~ div a.network:before,
            .d3plus_tooltip_small .d3plus_tooltip_data_block ~ div a.network:before {
              background-image: url("/static/img/icons/app/app_network.png"); }
              .d3plus_tooltip_large .d3plus_tooltip_data_block ~ div a.rings:before,
              .d3plus_tooltip_small .d3plus_tooltip_data_block ~ div a.rings:before {
                background-image: url("/static/img/icons/app/app_rings.png"); }
                .d3plus_tooltip_large .d3plus_tooltip_data_block ~ div a.geo_map:before,
                .d3plus_tooltip_small .d3plus_tooltip_data_block ~ div a.geo_map:before {
                  background-image: url("/static/img/icons/app/app_geo_map.png"); }
                  .d3plus_tooltip_large .d3plus_tooltip_data_block ~ div a.compare:before,
                  .d3plus_tooltip_small .d3plus_tooltip_data_block ~ div a.compare:before {
                    background-image: url("/static/img/icons/app/app_compare.png"); }
                    .d3plus_tooltip_large .d3plus_tooltip_data_block ~ div a.scatter:before,
                    .d3plus_tooltip_small .d3plus_tooltip_data_block ~ div a.scatter:before {
                      background-image: url("/static/img/icons/app/app_scatter.png"); }
                      .d3plus_tooltip_large .d3plus_tooltip_data_block ~ div a:before,
                      .d3plus_tooltip_small .d3plus_tooltip_data_block ~ div a:before {
                        background-repeat: no-repeat;
                        background-size: 15px 15px;
                        content: "";
                        display: inline-block;
                        margin-right: 6px ;
                        left: 0px;
                        width: 13px;
                        height: 14px;
                        position: relative;
                        top: 1px; }
  .d3plus_tooltip_large .d3plus_tooltip_data_seperator,
  .d3plus_tooltip_small .d3plus_tooltip_data_seperator {
    background-color: #63737f !important; }
    .d3plus_tooltip_large .d3plus_tooltip_html,
    .d3plus_tooltip_small .d3plus_tooltip_html {
      margin: 15px 12px 6px 12px ;
      padding-right: 0px !important ;
      height: 87% !important; }
      .d3plus_tooltip_large .d3plus_tooltip_html img,
      .d3plus_tooltip_small .d3plus_tooltip_html img {
        display: inline-block;
        vertical-align: middle;
        width: 25px;
        margin: 0 5px 0 0 ; }
        .d3plus_tooltip_large .d3plus_tooltip_html a.related,
        .d3plus_tooltip_small .d3plus_tooltip_html a.related {
          -webkit-transition: opacity 0.1s;
          -moz-transition: opacity 0.1s;
          -ms-transition: opacity 0.1s;
          -o-transition: opacity 0.1s;
          transition: opacity 0.1s;
          color: #fff;
          display: block;
          position: relative;
          left: 15px;
          width: 97%;
          font-size: 14px;
          line-height: 1.3;
          padding: 6px 0 6px 3px ; }
          .d3plus_tooltip_large .d3plus_tooltip_html a.related:hover,
          .d3plus_tooltip_small .d3plus_tooltip_html a.related:hover {
            opacity: 0.8; }
            .d3plus_tooltip_large .d3plus_tooltip_html a.related:hover:after,
            .d3plus_tooltip_small .d3plus_tooltip_html a.related:hover:after {
              font-family: FontAwesome;
              padding-left: 5px ;
              position: absolute;
              content: "\f105"; }
          .d3plus_tooltip_large .d3plus_tooltip_html a.related.tree_map:before,
          .d3plus_tooltip_small .d3plus_tooltip_html a.related.tree_map:before {
            background-image: url("/static/img/icons/app/app_tree_map.png"); }
            .d3plus_tooltip_large .d3plus_tooltip_html a.related.stacked:before,
            .d3plus_tooltip_small .d3plus_tooltip_html a.related.stacked:before {
              background-image: url("/static/img/icons/app/app_stacked.png"); }
              .d3plus_tooltip_large .d3plus_tooltip_html a.related.network:before,
              .d3plus_tooltip_small .d3plus_tooltip_html a.related.network:before {
                background-image: url("/static/img/icons/app/app_network.png"); }
                .d3plus_tooltip_large .d3plus_tooltip_html a.related.rings:before,
                .d3plus_tooltip_small .d3plus_tooltip_html a.related.rings:before {
                  background-image: url("/static/img/icons/app/app_rings.png"); }
                  .d3plus_tooltip_large .d3plus_tooltip_html a.related.geo_map:before,
                  .d3plus_tooltip_small .d3plus_tooltip_html a.related.geo_map:before {
                    background-image: url("/static/img/icons/app/app_geo_map.png"); }
                    .d3plus_tooltip_large .d3plus_tooltip_html a.related.compare:before,
                    .d3plus_tooltip_small .d3plus_tooltip_html a.related.compare:before {
                      background-image: url("/static/img/icons/app/app_compare.png"); }
                      .d3plus_tooltip_large .d3plus_tooltip_html a.related.scatter:before,
                      .d3plus_tooltip_small .d3plus_tooltip_html a.related.scatter:before {
                        background-image: url("/static/img/icons/app/app_scatter.png"); }
                        .d3plus_tooltip_large .d3plus_tooltip_html a.related:before,
                        .d3plus_tooltip_small .d3plus_tooltip_html a.related:before {
                          background-repeat: no-repeat;
                          background-size: 15px 15px;
                          content: "";
                          display: block;
                          margin-right: 8px ;
                          left: -15px;
                          width: 15px;
                          height: 15px;
                          position: absolute;
                          top: 8px; }
                          .d3plus_tooltip_large .d3plus_tooltip_html a.related.profile,
                          .d3plus_tooltip_small .d3plus_tooltip_html a.related.profile {
                            background-color: transparent !important;
                            font-size: 18px;
                            font-weight: 400;
                            margin-bottom: 10px; }

.d3plus_tooltip_close {
  top: 15px !important;
  right: 10px !important;
  color: #ccc !important;
  font-size: 35px !important;
  font-weight: 300 !important;
  background-color: transparent !important;
  box-shadow: none !important; }
  .d3plus_tooltip_close:hover {
    opacity: 0.6 !important; }

#d3plus_back_button {
  -webkit-transition: opacity 0.5s;
  -moz-transition: opacity 0.5s;
  -ms-transition: opacity 0.5s;
  -o-transition: opacity 0.5s;
  transition: opacity 0.5s;
  text-transform: uppercase;
  letter-spacing: 0.1em; }
  #d3plus_back_button:hover {
    opacity: 0.7 !important; }

.viz_loader {
  -webkit-animation: viz_loader 3s cubic-bezier(0.91, 0, 0.8, 0.51) infinite;
  -moz-animation: viz_loader 3s cubic-bezier(0.91, 0, 0.8, 0.51) infinite;
  -o-animation: viz_loader 3s cubic-bezier(0.91, 0, 0.8, 0.51) infinite;
  animation: viz_loader 3s cubic-bezier(0.91, 0, 0.8, 0.51) infinite;
  display: none;
  height: 2px;
  left: 0;
  margin: -1px 2px 0 2px ;
  opacity: 0.5;
  overflow: hidden;
  position: absolute;
  text-align: left ;
  top: 0;
  z-index: 3; }
  .viz_loader.visible {
    display: block; }

@-webkit-keyframes viz_loader {
  0% {
    width: 0%;   }
    100% {
      width: 100%;   }
}

@-moz-keyframes viz_loader {
  0% {
    width: 0%;   }
    100% {
      width: 100%;   }
}

@-o-keyframes viz_loader {
  0% {
    width: 0%;   }
    100% {
      width: 100%;   }
}

@keyframes viz_loader {
  0% {
    width: 0%;   }
    100% {
      width: 100%;   }
}
body.rankings {
  -webkit-font-smoothing: antialiased;
  -moz-font-smoothing: antialiased;
  font-smoothing: antialiased; }
  body.rankings #container #content .nav-section {
    -webkit-justify-content: center;
    -moz-justify-content: center;
    justify-content: center;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -moz-flex-direction: row;
    flex-direction: row;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: baseline;
    align-items: baseline;
    padding: 30px 0 10px 0 ;
    margin: 0 30px 0 30px !important; }
    @media all and (min-width: 1100px) {
      body.rankings #container #content .nav-section {
        max-width: 1058px;
        margin: 0 auto 0 auto !important;   }
}
      @media all and (max-width: 550px) {
        body.rankings #container #content .nav-section {
          padding: 30px 0 30px 0 ;
          margin: 0 15px 0 15px !important;   }
}
        @media all and (max-width: 768px) {
          body.rankings #container #content .nav-section {
            -webkit-flex-direction: row;
            -moz-flex-direction: row;
            flex-direction: row;   }
}
          body.rankings #container #content .nav-section aside {
            width: auto !important;
            margin: 0 0 0 0 ; }
            body.rankings #container #content .nav-section aside a {
              color: #99BCD1; }
              body.rankings #container #content .nav-section aside a i {
                margin-top: 3px; }
                body.rankings #container #content .nav-section aside a h2.year-nav {
                  -webkit-transition: opacity 0.6s;
                  -moz-transition: opacity 0.6s;
                  -ms-transition: opacity 0.6s;
                  -o-transition: opacity 0.6s;
                  transition: opacity 0.6s;
                  font-weight: 400;
                  font-size: 26px;
                  opacity: 0.6; }
                  body.rankings #container #content .nav-section aside a h2.year-nav:hover {
                    opacity: 1; }
                    @media all and (min-width: 769px) and (max-width: 955px) {
                      body.rankings #container #content .nav-section aside a h2.year-nav {
                        font-size: 23px;   }
}
                      @media all and (max-width: 768px) {
                        body.rankings #container #content .nav-section aside a h2.year-nav {
                          font-size: 17px;   }
}
            body.rankings #container #content .nav-section aside:last-child {
              text-align: right ; }
    body.rankings #container #content .nav-section content {
      text-align: center ; }
      body.rankings #container #content .nav-section content h1 a.complexity_switch {
        border-bottom: 1px solid #3f464f;
        padding-bottom: 2px; }
        body.rankings #container #content .nav-section content h1 a.complexity_switch:before {
          position: absolute;
          color: #3f464f;
          content: "\f074";
          font-family: FontAwesome;
          font-size: 20px;
          top: 15px;
          left: -25px; }
          body.rankings #container #content .nav-section content h1 a.complexity_switch:hover {
            color: #99BCD1; }
            body.rankings #container #content .nav-section content h1 a.complexity_switch:hover:before {
              color: #99BCD1; }
        body.rankings #container #content .nav-section content h1 a.complexity_switch:focus,
        body.rankings #container #content .nav-section content h1 a.complexity_switch:active {
          color: #99BCD1;
          border-bottom: 1px solid #bbbdc0; }
      @media all and (min-width: 769px) and (max-width: 955px) {
        body.rankings #container #content .nav-section content h1 {
          font-size: 30px;   }
          body.rankings #container #content .nav-section content h1 a.complexity_switch:before {
            color: #3f464f;
            font-size: 16px;
            top: 10px;
            left: -21px;   }
}
      @media all and (max-width: 768px) {
        body.rankings #container #content .nav-section content h1 {
          font-size: 20px;
          font-weight: 400;   }
          body.rankings #container #content .nav-section content h1 a.complexity_switch:before {
            color: #63737f;
            font-size: 10px;
            top: 8px;
            left: -15px;   }
}
  body.rankings #container aside {
    width: 150px !important; }
    body.rankings #container #explorer {
      margin-left: -155px ; }
      @media all and (max-width: 1175px) {
        body.rankings #container #explorer {
          margin: 0 30px 20px 30px ;   }
}
        body.rankings #container #explorer ~ content {
          max-width: 695px; }
          body.rankings #container #explorer #rank_changers {
            margin-top: 0; }
            body.rankings #container #explorer #rank_changers h3 {
              font-size: 16px;
              margin: 13px 0 6px 0 ; }
              body.rankings #container #explorer #rank_changers .change_dataset {
                margin-bottom: 15px; }
                body.rankings #container #explorer #rank_changers .change_dataset .active {
                  color: #333 !important;
                  display: inline-block;
                  font-weight: bold;
                  margin-top: -1px; }
                  body.rankings #container #explorer #rank_changers .change_dataset .active:hover {
                    border-color: #333 !important; }
            body.rankings #container #explorer #rank_changers .download {
              border: 1px solid white;
              color: white;
              display: block;
              font-size: 12px;
              font-weight: 200;
              height: 15px;
              margin: 0 0 15px 0 ;
              padding: 5px 5px 5px 5px ;
              top: 19px;
              position: relative; }
              body.rankings #container #explorer #rank_changers .download:hover {
                background-color: white;
                color: #212831; }
                body.rankings #container #explorer #rank_changers .download i {
                  margin-right: 2px ;
                  margin-top: 1px; }
            @media all and (max-width: 426px) {
              body.rankings #container #explorer #rank_changers.pci-changer .download {
                margin-top: 0px;   }
}
  body.rankings #container table {
    background-color: #272f38;
    color: #ccc;
    border: 1px solid #63737f;
    margin-bottom: 20px; }
    body.rankings #container table a {
      margin-left: 7px ;
      color: white;
      font-weight: 700; }
      body.rankings #container table a:hover {
        border-bottom: 0; }
        body.rankings #container table a:hover:after {
          content: "\f105";
          font-family: FontAwesome;
          padding-left: 7px ; }
    body.rankings #container table th[data-sortable] {
      display: table-cell !important; }
      body.rankings #container table th[data-sortable] i {
        -webkit-transition: opacity 0.1s;
        -moz-transition: opacity 0.1s;
        -ms-transition: opacity 0.1s;
        -o-transition: opacity 0.1s;
        transition: opacity 0.1s;
        display: inline-block;
        margin-left: 5px ;
        padding-top: 3px;
        opacity: 0.5; }
        body.rankings #container table th[data-sortable] i.fa-sort-down,
        body.rankings #container table th[data-sortable] i.fa-sort-up {
          opacity: 1; }
          body.rankings #container table th[data-sortable] i.fa-sort-down {
            margin-top: -3px; }
            body.rankings #container table th[data-sortable] i.fa-sort-up {
              margin-top: 3px; }
      body.rankings #container table th[data-sortable]:hover {
        cursor: pointer; }
        body.rankings #container table th[data-sortable]:hover i {
          opacity: 1; }
      @media all and (max-width: 500px) {
        body.rankings #container table th[data-sortable].delta,
        body.rankings #container table th[data-sortable].id {
          display: none !important;   }
}
    body.rankings #container table .rank {
      font-weight: bold;
      text-align: center ;
      width: 50px; }
      body.rankings #container table .delta {
        text-align: left ;
        width: 50px; }
        body.rankings #container table .delta .fa-caret-up {
          color: #20a898; }
          body.rankings #container table .delta .fa-caret-down {
            color: #f9a17a; }
    body.rankings #container table .id {
      text-align: center ;
      width: 50px; }
      body.rankings #container table .country, body.rankings #container table .product {
        -webkit-justify-content: center;
        -moz-justify-content: center;
        justify-content: center;
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: flex-start;
        -moz-justify-content: flex-start;
        justify-content: flex-start; }
        body.rankings #container table .country img,
        body.rankings #container table .product img {
          margin-right: 5px ;
          width: 20px; }
    body.rankings #container table .eci, body.rankings #container table .pci {
      width: 50px; }
      @media all and (max-width: 500px) {
        body.rankings #container table .delta, body.rankings #container table .id {
          display: none;   }
}
body.about, body.resources, body.permissions, body.eci {
  -webkit-font-smoothing: antialiased;
  -moz-font-smoothing: antialiased;
  font-smoothing: antialiased; }
  body.about #container #content, body.resources #container #content,
  body.permissions #container #content, body.eci #container #content {
    max-width: 695px;
    padding-top: 20px; }
    body.about #container #content a, body.resources #container #content a,
    body.permissions #container #content a, body.eci #container #content a {
      color: #99BCD1;
      text-decoration: none; }
      body.about #container #content a:hover, body.resources #container #content a:hover,
      body.permissions #container #content a:hover, body.eci #container #content a:hover {
        border-bottom: 1px solid #99BCD1; }
  body.about h1, body.resources h1, body.permissions h1, body.eci h1 {
    line-height: 1;
    margin-bottom: 20px; }
    body.about h2, body.resources h2, body.permissions h2, body.eci h2 {
      color: #6297cb;
      font-size: 34px;
      line-height: 1.1;
      margin-bottom: 15px; }
      body.about h4, body.resources h4, body.permissions h4, body.eci h4 {
        color: #bbbdc0;
        line-height: 1.3;
        font-size: 22px;
        margin: 15px 0 15px 0 ; }
        body.about ol, body.resources ol, body.permissions ol, body.eci ol {
          margin-left: 20px ;
          margin-top: 0; }
          body.about blockquote, body.resources blockquote, body.permissions blockquote,
          body.eci blockquote {
            margin: 25px 0 25px 0 ; }
            body.about p, body.resources p, body.permissions p, body.eci p {
              opacity: 0.8; }

body.about h3 {
  line-height: 1.3;
  margin: 20px 0 20px 0 ;
  font-size: 24px;
  opacity: 0.8; }

body.resources h3 {
  color: #6297cb;
  line-height: 1.3;
  margin: 25px 0 10px 0 ;
  font-size: 16px;
  font-weight: 400;
  opacity: 0.8; }

body.eci h1 {
  color: #6297cb;
  margin: 20px 0 20px 0 ; }
  body.eci h4 {
    color: #81919d;
    font-size: 26px; }
    body.eci ol {
      opacity: 0.9; }
      body.eci li span.calc {
        color: #fff; }
        body.eci .calc {
          position: relative;
          top: 3px; }

.member {
  margin: 50px 0 50px 0 ;
  min-height: 150px;
  padding-left: 180px ;
  padding-top: 0;
  position: relative; }
  .member:before {
    -webkit-filter: saturate(10%);
    -moz-filter: saturate(10%);
    -o-filter: saturate(10%);
    filter: saturate(10%);
    -webkit-border-radius: 150px;
    -moz-border-radius: 150px;
    border-radius: 150px;
    border: 2px solid white;
    background-position: center;
    background-repeat: no-repeat;
    background-size: 150px;
    content: "";
    display: block;
    height: 150px;
    margin-left: 0 ;
    left: 0;
    position: absolute;
    top: 0;
    width: 150px; }
    .member h3 {
      color: #99BCD1 !important;
      font-size: 18px !important; }
      .member h3, .member h4 {
        margin: 0 0 0 0 !important; }
        @media all and (max-width: 500px) {
          .member {
            padding-left: 0 ;
            padding-top: 180px;   }
            .member:before {
              margin-left: -75px ;
              left: 50%;   }
}
  .member h3 a {
    -webkit-transition: text-shadow 0.1s;
    -moz-transition: text-shadow 0.1s;
    -ms-transition: text-shadow 0.1s;
    -o-transition: text-shadow 0.1s;
    transition: text-shadow 0.1s;
    color: #6297cb !important;
    font-size: 18px;
    margin: 0 5px 0 5px ;
    opacity: 0.6; }
    .member h3 a:hover {
      border-bottom: 0 !important;
      opacity: 1;
      text-shadow: 0 2px 2px rgba(0, 0, 0, 0.5); }

#past {
  -webkit-justify-content: center;
  -moz-justify-content: center;
  justify-content: center;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap; }
  #past .member {
    margin: 30px 0 0 0 ;
    min-width: 80%;
    min-height: 100px;
    padding-left: 130px ;
    padding-right: 15px ; }
    #past .member:before {
      -webkit-border-radius: 100px;
      -moz-border-radius: 100px;
      border-radius: 100px;
      background-size: 100px;
      height: 100px;
      width: 100px; }
      @media all and (max-width: 768px) and (max-width: 500px) {
        #past .member {
          max-width: 100%;
          padding-left: 115px ;
          padding-right: 0 ;
          padding-top: 0;   }
          #past .member:before {
            left: 0;
            margin-left: 0 ;   }
}

#alexander_simoes:before {
  background-image: url("/static/img/about/alexander_simoes.png"); }

#dave_landry:before {
  background-image: url("/static/img/about/dave_landry.png"); }

#cesar_hidalgo:before {
  background-image: url("/static/img/about/cesar_hidalgo.png"); }

#melissa_teng:before {
  background-image: url("/static/img/about/melissa_teng.png"); }

#eric_franco:before {
  background-image: url("/static/img/about/eric_franco.png"); }

#crystal_noel:before {
  background-image: url("/static/img/about/crystal_noel.png"); }

#ali_almossawi:before {
  background-image: url("/static/img/about/ali_almossawi.png"); }

#sarah_chung:before {
  background-image: url("/static/img/about/sarah_chung.png"); }
body.publications {
  background-color: #212831; }
  body.publications p, body.publications h3 a {
    color: #333;
    margin: 0 0 0 0 !important; }
    body.publications article {
      padding: 70px 5% 70px 5% ;
      color: #333; }
      body.publications article section {
        padding: 30px 30px 30px 30px ;
        max-width: 1054px;
        margin: 0 auto 0 auto ; }
        body.publications article section content {
          margin: 0 0 0 0 !important; }
          body.publications article section content p {
            font-size: 18px;
            line-height: 1.5; }
            body.publications article section content div {
              display: inline-block;
              overflow: hidden; }
        body.publications article section .columns {
          -webkit-column-count: 2;
          -moz-column-count: 2;
          column-count: 2;
          -webkit-column-gap: 20px;
          -moz-column-gap: 20px;
          column-gap: 20px; }
      body.publications article h3 {
        font-size: 40px;
        letter-spacing: 0;
        font-weight: 700; }
        body.publications article h3 a:hover {
          opacity: 0.7; }
      body.publications article h4 {
        line-height: 1.3;
        margin-top: 20px; }
        @media all and (max-width: 768px) {
          body.publications article h2 {
            font-size: 22px;   }
            body.publications article h3 {
              font-size: 30px;
              margin-bottom: 8px;   }
              body.publications article h4 {
                font-size: 20px;   }
                body.publications article p {
                  font-size: 14px;   }
}
      @media all and (min-width: 769px) and (max-width: 1024px) {
        body.publications article h2 {
          font-size: 26px;   }
          body.publications article p {
            font-size: 16px;   }
}
      body.publications article.why-info-grows {
        background: #3b9343 url('/static/img/publications/books/information-bg.png') repeat 50% 0% fixed; }
        body.publications article.why-info-grows section {
          background-color: #fff; }
          body.publications article.why-info-grows section content div:first-child {
            display: block;
            width: 100%; }
            body.publications article.why-info-grows section content div:first-child h3,
            body.publications article.why-info-grows section content div:first-child h4 {
              display: inline-block; }
              body.publications article.why-info-grows section content div:first-child h3 {
                margin-right: 8px ; }
                body.publications article.why-info-grows section content div:first-child h4 {
                  margin-top: 10px;
                  margin-bottom: 20px; }
                  @media all and (max-width: 768px) {
                    body.publications article.why-info-grows section content div:first-child h4 {
                      margin-top: 5px;
                      margin-bottom: 10px;   }
}
          body.publications article.why-info-grows section content div:nth-child(2) {
            float: left ;
            width: 16%;
            margin-right: 5% ; }
            @media all and (min-width: 769px) and (max-width: 1024px) {
              body.publications article.why-info-grows section content div:nth-child(2) {
                margin-right: 3% ;   }
                body.publications article.why-info-grows section content div:nth-child(2) h2 {
                  font-size: 26px;   }
}
            @media all and (max-width: 768px) {
              body.publications article.why-info-grows section content div:nth-child(2) {
                margin-right: 0 ;
                width: 100%;   }
                body.publications article.why-info-grows section content div:nth-child(2) h2 {
                  font-size: 24px;
                  margin-bottom: 10px;   }
}
          body.publications article.why-info-grows section content div:last-child {
            width: 60%; }
            @media all and (min-width: 769px) and (max-width: 1024px) {
              body.publications article.why-info-grows section content div:last-child {
                width: 64%;   }
                body.publications article.why-info-grows section content div:last-child p {
                  font-size: 16px;   }
}
            @media all and (max-width: 768px) {
              body.publications article.why-info-grows section content div:last-child {
                width: 78%;   }
                body.publications article.why-info-grows section content div:last-child p {
                  font-size: 13px;   }
}
          body.publications article.why-info-grows section content div:nth-child(3) {
            width: 13%;
            float: right ;
            margin-left: 3% ; }
            @media all and (max-width: 768px) {
              body.publications article.why-info-grows section content div:nth-child(3) {
                width: 17%;
                float: left ;
                margin-left: 0 ;
                margin-right: 4% ;   }
}
        body.publications article.why-info-grows h2,
        body.publications article.why-info-grows h3 a,
        body.publications article.why-info-grows h4,
        body.publications article.why-info-grows a {
          color: #3b9343; }
          body.publications article.why-info-grows h2:hover,
          body.publications article.why-info-grows h3 a:hover,
          body.publications article.why-info-grows h4:hover,
          body.publications article.why-info-grows a:hover {
            border-bottom: 0; }
        body.publications article.why-info-grows a:hover {
          border-bottom: 1px solid #3b9343; }
      body.publications article.atlas {
        background: #212831 url('/static/img/publications/books/atlas-bg.png') repeat 50% 50%; }
        body.publications article.atlas section {
          background-color: rgba(255, 255, 255, 0.9); }
          body.publications article.atlas section content div:nth-child(2) {
            width: 55%; }
            body.publications article.atlas section content div:nth-child(2) blockquote {
              font-size: 18px;
              margin-top: 20px; }
              @media all and (max-width: 768px) {
                body.publications article.atlas section content div:nth-child(2) {
                  width: 100%;   }
                  body.publications article.atlas section content div:nth-child(2) h4 {
                    font-size: 18px;   }
}
          body.publications article.atlas section content div:last-child {
            width: 40%;
            margin-left: 4% ; }
            body.publications article.atlas section content div:last-child h4 {
              margin-top: 0; }
              body.publications article.atlas section content div:last-child ul li {
                padding-left: 0 !important ;
                margin-left: 0 !important ;
                color: #5083b5; }
                body.publications article.atlas section content div:last-child ul li a {
                  color: #5083b5;
                  font-weight: 700; }
                  body.publications article.atlas section content div:last-child ul li a:hover {
                    opacity: 0.7; }
            @media all and (max-width: 768px) {
              body.publications article.atlas section content div:last-child {
                width: 100%;
                margin-top: 4%;
                margin-left: 0 ;   }
}
          body.publications article.atlas section content img.book {
            width: 99%;
            border: 1px solid #333; }
      body.publications article.papers {
        background: #d1d2d4;
        padding: 40px 5% 40px 5% ; }
        body.publications article.papers aside {
          width: 225px !important; }
          @media all and (max-width: 768px) {
            body.publications article.papers aside {
              display: none;   }
}
        body.publications article.papers section {
          padding: 30px 0 30px 0 ; }
          body.publications article.papers section content div:nth-child(2) {
            width: 19%; }
            @media all and (max-width: 768px) {
              body.publications article.papers section content div:nth-child(2) {
                width: 100%;   }
}
          body.publications article.papers section content div:last-child {
            width: 80%; }
            @media all and (max-width: 768px) {
              body.publications article.papers section content div:last-child {
                width: 100%;   }
}
        body.publications article.papers h3 {
          font-size: 28px;
          line-height: 1.2;
          margin-bottom: 0; }
          @media all and (max-width: 768px) {
            body.publications article.papers h3 {
              font-size: 24px;   }
}
            body.publications article.papers h3 a {
              color: #6d6e70; }
        body.publications article.papers h4 {
          margin-top: 10px; }
          @media all and (max-width: 768px) {
            body.publications article.papers h4 {
              font-size: 22px;
              margin-top: 5px;   }
}
        body.publications article.papers p {
          color: #333; }
          body.publications article.papers p a {
            color: #5083b5; }
            body.publications article.papers p a:hover {
              border-bottom: 1px solid #5083b5; }

.book {
  width: 100%; }
body.api {
  -webkit-font-smoothing: antialiased;
  -moz-font-smoothing: antialiased;
  font-smoothing: antialiased; }
  body.api #container #content {
    max-width: 1200px; }
    body.api #container #content a {
      color: #99BCD1;
      text-decoration: none; }
      body.api #container #content a:hover {
        padding-bottom: 2px;
        border-bottom: 1px dotted #99BCD1; }
    body.api #container #content p {
      opacity: 0.9;
      margin: 5px 0 5px 0 ; }
      body.api #container #content section aside {
        width: 180px; }
        body.api #container #content section aside p {
          color: #81919d;
          text-align: left ; }
    body.api #container #content h2 {
      line-height: 1.1;
      margin: 20px 0 20px 0 ; }
      body.api #container #content h3 {
        font-size: 16px;
        margin-bottom: 10px;
        opacity: 0.8;
        color: #6297cb; }
        body.api #container #content h4 {
          line-height: 1.3; }
          body.api #container #content table {
            background-color: #272f38;
            color: #ccc;
            border: 1px solid #63737f;
            margin-bottom: 20px; }
            body.api #container #content table input {
              padding: 5px 7px 5px 7px ;
              background-color: #3f464f;
              color: white;
              border: 0; }
              body.api #container #content table code {
                color: white; }
                @media all and (max-width: 480px) {
                  body.api #container #content table code {
                    font-size: 12px;   }
}
    body.api #container #content pre {
      padding: 7px 0 7px 0 ;
      margin-bottom: 7px; }
      body.api #container #content code {
        background-color: #3f464f;
        color: white;
        display: inline-block;
        font-size: 14px;
        letter-spacing: 1px;
        margin-top: 0px;
        margin-bottom: 7px;
        padding: 1px 4px 1px 4px ;
        white-space: nowrap; }
        body.api #container #content code a {
          color: #54a6f2; }
          body.api #container #content code a:hover {
            opacity: 1;
            border-bottom: 1px dotted #54a6f2 !important; }
    body.api #container #content td.code {
      width: 120px; }
#share a.share_button {
  -webkit-transition: opacity 0.1s;
  -moz-transition: opacity 0.1s;
  -ms-transition: opacity 0.1s;
  -o-transition: opacity 0.1s;
  transition: opacity 0.1s;
  color: #0085BF;
  display: inline-block;
  margin: 10px 20px 0 0 ;
  opacity: 0.8;
  text-align: center ;
  width: 20px; }
  #share a.share_button:hover {
    opacity: 1; }
#share i {
  display: inline-block;
  font-size: 20px; }

#short {
  display: none; }

  .btn-close {
    color: #aaaaaa;
    font-size: 30px;
    font-weight: 100;
    text-decoration: none;
    position: absolute;
    right: 10px;
    top: 2px; }
    .btn-close:hover {
      color: #919191; }

.modal#download .modal-body {
  text-align: center ; }
.modal .modal-dialog {
  -webkit-transform: translate(0, -500%);
  -ms-transform: translate(0, -500%);
  transform: translate(0, -500%);
  -webkit-box-shadow: 0 2px 2px rgba(0, 0, 0, 0.5);
  -moz-box-shadow: 0 2px 2px rgba(0, 0, 0, 0.5);
  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.5);
  background-color: white;
  left: 50%;
  margin-left: -200px ;
  position: fixed;
  top: -100%;
  width: 400px;
  z-index: 31;
  -webkit-transition: -webkit-transform 0.3s ease-out;
  -moz-transition: -moz-transform 0.3s ease-out;
  -o-transition: -o-transform 0.3s ease-out;
  transition: transform 0.3s ease-out; }
  @media all and (max-width: 480px) {
    .modal .modal-dialog {
      margin-left: -125px ;
      width: 250px;   }
}
.modal.active:before {
  display: block; }
  .modal.active .modal-dialog {
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
    top: 30%; }

.modal-header {
  padding: 10px 20px 0 20px ; }
  .modal-header h2 {
    color: #0085BF; }

.modal-body {
  padding: 10px 20px 20px 20px ; }
  .modal-body h3 {
    color: #212831;
    font-size: 16px;
    margin: 10px 0 5px 0 ; }
    .modal-body h3:first-child {
      margin: 0 0 0 0 ; }
  .modal-body input {
    border: solid 1px, #ececec;
    color: #888;
    font-size: 12px;
    letter-spacing: 1px;
    margin: 5px 0 5px 0 ;
    overflow: hidden;
    padding: 3px 3px 3px 3px ;
    width: 100%; }
    .modal-body input:focus {
      color: #444;
      outline: 0; }
  .modal-body .download_button {
    -webkit-transition: opacity 0.1s;
    -moz-transition: opacity 0.1s;
    -ms-transition: opacity 0.1s;
    -o-transition: opacity 0.1s;
    transition: opacity 0.1s;
    color: black;
    display: inline-block;
    font-size: 20px;
    margin: 20px 20px 10px 16px ;
    opacity: 0.8;
    text-decoration: none; }
    .modal-body .download_button:hover {
      opacity: 1; }
body.error {
  background: #272f38 url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAKElEQVQIW2NkQAOZxU3GjMhiIIHpvXVn4YIwAZAisCCyAFgQXQAkCAAiqRGXMgseLwAAAABJRU5ErkJggg==) repeat;
  -webkit-font-smoothing: antialiased;
  -moz-font-smoothing: antialiased;
  font-smoothing: antialiased; }
  body.error nav {
    background: none;
    position: static; }
    body.error #container {
      margin-top: 0; }
      body.error footer {
        bottom: 0;
        left: 0;
        position: fixed;
        right: 0; }
        @media all and (max-width: 768px) {
          body.error footer {
            position: static;   }
}
  body.error .bg-frame #ring .star-rotate {
    -webkit-animation: spin-right 300s linear infinite;
    -moz-animation: spin-right 300s linear infinite;
    -o-animation: spin-right 300s linear infinite;
    animation: spin-right 300s linear infinite;
    left: 50%;
    top: 50%; }
    body.error .bg-frame #ring #observatory {
      -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
      transform: rotate(180deg);
      left: 8%;
      position: absolute;
      top: -5%;
      width: 100%; }
      body.error .bg-frame #ring h1 {
        display: block;
        font-family: "Source Sans Pro", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
        font-size: 40px;
        font-weight: 300;
        line-height: 1.4;
        position: absolute;
        text-align: center ;
        top: 15%;
        left: 30%; }

@-webkit-keyframes spin-right {
  100% {
    -webkit-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    transform: rotate(360deg);   }
}

@-moz-keyframes spin-right {
  100% {
    -webkit-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    transform: rotate(360deg);   }
}

@-o-keyframes spin-right {
  100% {
    -webkit-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    transform: rotate(360deg);   }
}

@keyframes spin-right {
  100% {
    -webkit-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    transform: rotate(360deg);   }
}
