:root {
  background: black;
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  padding: 3em 1em 1em 1em;
}

.container {
  color: white;
}
div.title {
  font-weight: bold;
  font-size: 2em;
}
div.subtitle {
  font-size: 1.5em;
}

a {
  color: white;
  text-decoration: none;
}

.links {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 2em;
  margin-top: 2em;
}
.link-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2em 1em;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  min-width: 100px;
  background: #111;
  padding: 1em;
  border-radius: 2em;
  cursor: default;
}
a.link-container {
  cursor: pointer;
}
.link-container:hover {
  background: #222;
}
.link-icon {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  width: 3em;
}
.link-title {
  font-size: 1.5em;
  font-weight: bolder;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: .25em;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.country {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: .75em;
  background: rgba(255, 255, 255, .1);
  font-size: .5em;
  padding: .5em;
  border-radius: .5em;
}

.contact {
  margin-top: 2em;
}

.link-desc,
.hidden-data {
  -webkit-transition: opacity 0.2s;
  -o-transition: opacity 0.2s;
  transition: opacity 0.2s;
}

.hidden-data {
  position: absolute;
  left: 4em;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  opacity: 0;
  pointer-events: none;
  white-space: nowrap;
  font-size: 1.25em;
  font-weight: bolder;
}

div.link-container:hover .link-desc {
  opacity: 0;
}

div.link-container:hover .hidden-data {
  opacity: 1;
}

.text-icon {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  height: .75em;
  width: 1.25em;
  margin-right: .25em;
  -webkit-box-pack: end;
  -webkit-justify-content: end;
      -ms-flex-pack: end;
          justify-content: end;
}