/* --- Font definitions needed for the banner title --- */
@font-face {
  font-family: "Montserrat-Black";
  src: url("../../font/Montserrat-Black.otf") format("truetype");
}
@font-face {
  font-family: "Montserrat-Bold";
  src: url("../../font/Montserrat-Bold.otf") format("truetype");
}
@font-face {
  font-family: "Montserrat-Regular";
  src: url("../../font/Montserrat-Regular.otf") format("truetype");
}
body {
  font-family: "Montserrat-Regular" !important;
  background-color: #fff;
  /* Added margin: 0; to remove default browser spacing */
  margin: 0;
}

/* --- Banner styles (removed 'main' dependency) --- */
.bg {
  position: relative;
  height: 100vh;
}
.bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.bg .title {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  font-size: 0.78rem;
  color: #fff;
  font-family: "Montserrat-Bold" !important;
  overflow: hidden;
}
.bg .title span {
  transform: translateY(100%);
  opacity: 0;
  transition: all 0.8s;
  display: block;
}
.bg .title .text_down {
  transform: translateY(0%);
  opacity: 1;
}
.bg .brand_banner_line {
  position: absolute;
  width: 100%;
  bottom: 0;
  left: 0;
  overflow: hidden;
}
.bg .brand_banner_line div {
  background-color: rgb(254, 118, 0);
  width: 50%;
  height: 3px;
  margin-top: 0.06rem;
}

/* --- All form, content, and popup styles have been removed --- */


/* --- Responsive styles for the banner --- */
@media (max-width: 768px) {
  .bg {
    height: auto;
  }
  .bg .title {
    font-size: 0.6rem;
  }
}