* {
  margin: 0;
  padding: 0; }

h1, h2, h3, p, text {
  color: #969696;
  fill: #969696;
  font-family: "Adelle Sans", "Helvetica", "Arial", "Verdana", sans-serif;
  font-size: 11px;
  font-weight: 400;
  line-height: 100%; }

header {
  background-color: #323232;
  margin: 0 auto 0 auto;
  padding-top: 5px;
  padding-bottom: 5px;
  width: 500px;
  height: 25px; }
  header h1 {
    color: white;
    font-size: 25px;
    font-weight: 800;
    margin-left: 5px; }

table {
  border: none;
  border-collapse: collapse;
  margin: 0 auto;
  width: 500px;
  height: 200px; }
  table tr {
    width: 500px;
    height: 100px; }
    table tr td {
      background-color: #323232;
      border: none;
      cursor: pointer;
      position: relative;
      width: 166px;
      height: 100px; }
      table tr td:hover {
        background-color: #191919; }
      table tr td.faded {
        opacity: .25; }
      table tr td h2 {
        color: white;
        position: absolute;
        bottom: 5px;
        left: 0;
        text-align: center;
        text-transform: uppercase;
        width: 100%;
        height: 12px; }
      table tr td h1 {
        color: white;
        font-size: 44px;
        line-height: 100px;
        position: absolute;
        top: 0;
        left: 0;
        text-align: center;
        width: 100%;
        height: 100%; }
      table tr td svg {
        display: block;
        margin-top: 0;
        margin-left: auto;
        margin-right: auto;
        width: 100%;
        height: 60px; }
    table tr:first-child td svg {
      margin-top: 0px; }
    table tr:last-child td svg {
      margin-top: -10px; }

.svg-wrapper {
  border-right: 1px solid #969696;
  border-left: 1px solid #969696;
  display: block;
  margin: 0 auto;
  overflow: hidden;
  padding-top: 11px;
  position: relative;
  width: 498px;
  height: 300px; }
  .svg-wrapper svg {
    cursor: pointer;
    display: block; }
    .svg-wrapper svg .axis text {
      font-size: 10px;
      stroke: 0;
      text-transform: uppercase; }
    .svg-wrapper svg .axis line {
      stroke-width: 0.5px;
      stroke: rgba(0, 0, 0, 0.5); }
    .svg-wrapper svg .axis path.domain {
      display: none; }
    .svg-wrapper svg path {
      fill: none;
      stroke-width: 2px; }
    .svg-wrapper svg g.country-circles.faded {
      opacity: 0.25; }
    .svg-wrapper svg g.country-line.faded {
      opacity: 0.25; }
    .svg-wrapper svg circle {
      fill: white;
      stroke-width: 2px; }
  .svg-wrapper .svg-line {
    background-color: black;
    cursor: pointer;
    display: block;
    position: absolute;
    top: 11px;
    left: 0;
    width: 1px;
    height: calc(100% - 33px - 11px);
    z-index: 10; }
    .svg-wrapper .svg-line .slider {
      background-image: url("../images/slider.png");
      background-size: 100% 100%;
      background-repeat: no-repeat;
      position: absolute;
      bottom: -30.75px;
      left: -11.875px;
      width: 24.75px;
      height: 36.75px; }
  .svg-wrapper .axis-label {
    position: absolute;
    text-align: center;
    text-transform: uppercase;
    height: 11px; }
    .svg-wrapper .axis-label.x-axis-label {
      width: 100%;
      bottom: 0; }
    .svg-wrapper .axis-label.y-axis-label {
      left: 5px;
      top: 250px;
      width: 250px;
      -webkit-transform: rotate(-90deg);
      transform: rotate(-90deg);
      -webkit-transform-origin: 0% 0%;
      transform-origin: 0% 0%; }

footer {
  border-bottom: 1px solid #969696;
  border-left: 1px solid #969696;
  border-right: 1px solid #969696;
  color: #c8c8c8;
  font-family: "Adelle Sans", "Helvetica", "Arial", "Verdana", sans-serif;
  font-size: 11px;
  font-weight: 400;
  letter-spacing: 0.5px;
  margin: 0 auto;
  padding-bottom: 11px;
  position: relative;
  text-transform: uppercase;
  width: 498px;
  height: 11px; }
  footer .year-marker {
    position: absolute;
    bottom: 5px;
    right: 5px;
    height: 11px; }
  footer .data-attribution {
    position: absolute;
    bottom: 5px;
    left: 5px;
    height: 11px; }

@media all and (max-width: 520px) {
  header {
    width: 320px; }
    header h1 {
      font-size: 17.5px; }

  .svg-wrapper {
    width: 318px; }

  table {
    width: 320px; }
    table tr {
      width: 320px; }
      table tr td {
        width: 106.66px; }

  footer {
    width: 318px; } }
@media all and (max-width: 320px) {
  header {
    width: 100%; }

  .svg-wrapper {
    border: none;
    width: 100%; }

  table {
    width: 100%; }
    table tr {
      width: 100%; }
      table tr td {
        width: 33.33%; }

  footer {
    border: none;
    width: 100%; } }
