.top_box_bg {
  background:
    radial-gradient(circle at 10% 8%, rgba(0, 181, 197, 0.12), transparent 35%),
    linear-gradient(180deg, #f5fcff 0%, #f8fdff 52%, #ffffff 100%);
  padding: 200px 0 60px 0;
}

.w1200 {
  width: 1200px;
  margin: 0 auto;
}

.five_title {
  font-family: Poppins-Medium;
  font-size: 38px;
  color: #333333;
  text-align: center;
  margin-top: 88px;
}

.five_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.five_bg {
  margin-bottom: 104px;
}

.five_box {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-right: 65px;
  width: 130px;
  margin-top: 96px;
}

.five_list a:nth-child(6n) .five_box {
  margin-right: 0px;
}

.five_box > div:nth-child(1) {
  width: 71px;
  height: 44px;
  border-radius: 21px;
  overflow: hidden;
  display: flex;
  align-items: center;
}

.five_box img {
  width: 71px;
}

.five_box_name {
  font-size: 16px;
  color: #333333;
  margin-top: 18px;
  margin-bottom: 10px;
}

.five_box_num {
  font-family: Poppins-Medium;
  font-size: 20px;
  color: #333333;
}

.plan_box {
  height: 300px;
  background-color: #1c2635;
  border-radius: 40px;
  border: solid 1px #353f5a;
  display: flex;
  align-items: center;
  justify-content: space-evenly;
  margin-bottom: 250px;
}

.plan_title {
  font-family: Poppins-Medium;
  font-size: 30px;
  color: #ffffff;
}

.plan_txt {
  width: 590px;
  font-size: 16px;
  line-height: 30px;
  color: #adbdcc;
  margin-top: 22px;
  margin-bottom: 30px;
}

.plan_btn {
  width: 203px;
  height: 48px;
  background-color: #ffbd00;
  border-radius: 8px;
  font-family: Poppins-Medium;
  font-size: 18px;
  line-height: 48px;
  color: #1d2436;
  text-align: center;
  cursor: pointer;
}

.all_pay_btn {
  width: 100%;
  min-height: 44px;
  background-color: #f3f8ff;
  border-radius: 8px;
  border: solid 1px #d8e2f1;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 6px;
}

.all_pay_btn > button {
  padding: 0 18px;
  font-family: "Poppins-Medium";
  font-size: 16px;
  color: #4a6173;
  cursor: pointer;
  line-height: 38px;
  border: 0;
  background: transparent;
  border-radius: 8px;
  white-space: nowrap;
}

.all_pay_btn .a {
  background-color: #ffbd00;
  color: #1d2436;
}

.all_title_box {
  margin-top: 40px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.all_list_box {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  grid-gap: 40px 50px;
  margin-top: 60px;
  margin-bottom: 0;
}

.locations-page-grid.locations_farme {
  margin-top: 40px;
}

.locations-all-wrap {
  width: min(1360px, calc(100vw - 40px));
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 120px;
}

.all_country_item {
  display: flex;
  align-items: center;
  color: #333333;
}

.all_country_flag {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 10px;
}

.all_country_flag img {
  width: 70px;
  height: 46px;
  object-fit: cover;
  border-radius: 6px;
}

.all_country_name {
  color: #333333;
  font-size: 16px;
  line-height: 1.4;
}

.top_box {
  display: flex;
}

.top_title {
  font-family: Poppins-Medium;
  font-size: 42px;
  color: #0f2d39;
}

.top_txt {
  width: 550px;
  font-size: 22px;
  line-height: 36px;
  color: #4c6370;
  margin-top: 38px;
  margin-bottom: 12px;
}

.top_box ul li {
  font-size: 18px;
  color: #1d3543;
  margin-top: 20px;
}

.top_box ul li .iconfont {
  font-size: 22px;
  color: #f4b000;
  margin-right: 12px;
}

.top_bg {
  width: 758px;
  height: 372px;
  margin-left: -50px;
  position: relative;
}

.top_d {
  width: 758px;
  height: 372px;
  position: relative;
}

.top_bg_map,
.top_bg_overlay {
  display: block;
  max-width: none;
  position: absolute;
  pointer-events: none;
  user-select: none;
}

.top_bg_map {
  inset: 0;
  width: 758px;
  height: 372px;
}

.top_bg_overlay {
  top: 62px;
  left: 104px;
  width: 583px;
  height: 207px;
}

.circle_box {
  width: 44px;
  height: 37px;
  position: absolute;
  /* transform: rotateX(50deg); */
  cursor: pointer;
}

.circle-dian {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 10px;
  height: 10px;
  margin: auto;
  border-radius: 50%;
  background: #ffbd00;
  opacity: 0.8;
  z-index: 4;
}

.circle-inside {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #ffbd00;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  opacity: 0.2;
  -webkit-transition: width 0.5s ease-out;
  -moz-transition: width 0.5s ease-out;
  -o-transition: width 0.5s ease-out;
  transition: width 0.5s ease-out;
}

.circle-inside {
  animation: circle_inside 4500ms ease-out 500ms infinite;
}

@keyframes circle_inside {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.1, 0.1);
    -moz-transform: scale(0.1, 0.1);
    -ms-transform: scale(0.1, 0.1);
    transform: scale(0.1, 0.1);
  }

  50% {
    opacity: 0.4;
  }

  100% {
    opacity: 0;
    transform: scale(1);
  }
}

.circle-outside {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #ffbd00;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  opacity: 0.1;
  -webkit-transition: width 0.5s ease-out;
  -moz-transition: width 0.5s ease-out;
  -o-transition: width 0.5s ease-out;
  transition: width 0.5s ease-out;
}

.circle-outside {
  animation: circle_outside 4500ms ease-out 3250ms infinite;
}

@keyframes circle_outside {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.1, 0.1);
    -moz-transform: scale(0.1, 0.1);
    -ms-transform: scale(0.1, 0.1);
    transform: scale(0.1, 0.1);
  }

  50% {
    opacity: 0.4;
  }

  100% {
    opacity: 0;
    transform: scale(1);
  }
}

.circle_box:hover > .top_flag_box {
  display: flex;
}

.top_flag_box {
  position: absolute;
  top: -93px;
  left: -62px;
  width: max-content;
  height: 60px;
  background-color: #ffffff;
  border: 1px solid #d6e2ef;
  box-shadow: 0 12px 28px rgba(29, 45, 65, 0.14);
  border-radius: 6px;
  z-index: 9;
  display: none;
  align-items: center;
  justify-content: space-around;
  padding: 0 8px;
}

.top_flag_box img {
  width: 47px;
  background-color: #ffffff;
  border-radius: 10px;
  border: solid 1px #d9d9d9;
  margin-right: 6px;
}

.top_flag_name {
  font-size: 14px;
  color: #0f1524;
}

.top_flag_num {
  font-family: Poppins-Medium;
  font-size: 16px;
  color: #0f1524;
  margin-top: 4px;
}

.now_btn {
  width: 203px;
  height: 50px;
  background-color: #ffbd00;
  border-radius: 8px;
  line-height: 50px;
  text-align: center;
  font-family: Poppins-Medium;
  font-size: 18px;
  color: #1d2436;
  margin-top: 60px;
  cursor: pointer;
}

@media only screen and (max-width: 1200px) {
  .w1200 {
    width: 90%;
  }

  .top_bg,
  .plan_box {
    display: none;
  }

  .top_txt {
    width: 100%;
  }
}

@media only screen and (max-width: 1110px) {
  .all_title_box {
    flex-wrap: nowrap;
  }

  .all_list_box {
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 28px;
  }

  .five_box {
    margin-right: 0;
  }
}

@media only screen and (max-width: 850px) {
  .all_pay_btn {
    overflow-x: auto;
    max-width: 100%;
  }
}

@media only screen and (max-width: 650px) {
  .five_title {
    font-size: 30px;
    margin-top: 64px;
  }

  .locations-all-wrap,
  .five_bg {
    margin-bottom: 72px;
  }

  .all_title_box {
    display: block;
  }

  .all_list_box {
    grid-template-columns: 1fr 1fr;
    grid-gap: 18px 14px;
    margin-top: 34px;
  }

  .all_country_flag img {
    width: 50px;
    height: 32px;
    border-radius: 6px;
  }

  .all_country_name {
    font-size: 15px;
  }
}
