html {
  font-family: "Rubik";
}

body {
  margin: 0;
}

.top-section {
  display: flex;
  align-items: center;
  flex-direction: column;
  width: 100%;
  height: 267px;
  background: url("./images/pattern-bg-desktop.png");
  background-attachment: fixed;
  background-size: cover;
  background-position: center;
  position: relative;
  padding-top: 13px;
}
.top-section h1 {
  color: white;
}
.top-section .ip-address {
  display: flex;
  flex-direction: row;
  align-items: center;
  border-radius: 15px;
  height: 58px;
  width: 87.2%;
  max-width: 548px;
  background-color: white;
  overflow: hidden;
}
.top-section .ip-address .ip-address-input {
  margin: auto;
  width: 80%;
  font-size: 18px;
  border: none;
  height: 100%;
}
.top-section .ip-address .ip-address-input:focus {
  outline: none;
}
.top-section .ip-address .ip-address-input:hover {
  cursor: pointer;
}
.top-section .ip-address .ip-address-submit {
  background-color: hsl(0, 0%, 17%);
  height: 102%;
  width: 58px;
  border: none;
}
.top-section .ip-address .ip-address-submit:hover {
  cursor: pointer;
  background-color: hsl(0, 0%, 59%);
}
.top-section .info-panel {
  position: absolute;
  bottom: -80px;
  height: 160px;
  background-color: white;
  z-index: 5;
  width: 1110px;
  display: grid;
  grid-template-columns: 24% 1px 24% 1px 24% 1px 24%;
  border-radius: 15px;
  max-width: 87.2%;
  align-items: center;
}
.top-section .info-panel .info-box {
  padding: 38px 2% 0 15%;
  min-width: 145px;
  height: 100%;
}
.top-section .info-panel .info-box h2 {
  color: hsl(0, 0%, 17%);
}
.top-section .info-panel .info-box p {
  font-weight: 700;
  font-size: 14px;
  text-transform: uppercase;
  color: hsl(0, 0%, 59%);
}
.top-section .info-panel .break {
  height: 50%;
  background-color: hsl(0, 0%, 59%);
}

.map {
  z-index: 1;
  width: 100%;
  height: calc(100vh - 280px);
  min-height: 520px;
}

@media screen and (max-width: 1000px) {
  .top-section {
    background-image: url("./images/pattern-bg-mobile.png");
    padding-top: 30px;
    height: 250px;
  }
  .top-section .ip-address-input {
    padding-left: 28px;
  }
  .top-section .ip-address-input::placeholder {
    font-size: 14px;
  }
  .top-section .info-panel {
    grid-template-columns: auto;
    min-height: 320px;
    bottom: -290px;
    padding: 20px 0 35px;
    justify-items: center;
  }
  .top-section .info-panel h2,
  .top-section .info-panel p {
    text-align: center;
    margin: 10px;
  }
  .top-section .info-panel .break {
    display: none;
  }
  .top-section .info-panel .info-box {
    min-height: 40px;
    padding: 20px;
  }
}
.attribution {
  font-size: 11px;
  text-align: center;
}
.attribution a {
  color: hsl(228, 45%, 44%);
}/*# sourceMappingURL=style.css.map */