/* Package Banner Styles extracted from checkout */
.package-banner {
  width: 100%;
  height: 160px;
  background: linear-gradient(90deg, #d00001 0%, #6a0000 100%);
  position: relative;
  overflow: hidden;
  padding: 25px 35px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  z-index: 1;
  border-radius: 14px;
}

/* Package Gradients */
.package-banner.bg-corporate {
  background: linear-gradient(90deg, #d00001 0%, #6a0000 100%);
}
.package-banner.bg-private {
  background: linear-gradient(254.83deg, #535353 50.75%, #030000 95.82%);
}
.package-banner.bg-tourist {
  background: linear-gradient(262.94deg, #030000 24.76%, #535353 53.84%, #030000 73.79%, #400e07 96.38%);
}
.package-banner.bg-bodyguard {
  background: linear-gradient(268.61deg, #6a0000 31.81%, #d7890e 102.18%);
}
.package-banner.bg-standby {
  background: linear-gradient(269.96deg, #d7890e 4.31%, #913005 21.87%, #6a0000 75.16%, #d7890e 102.67%);
}
.package-banner.bg-sos {
  background: linear-gradient(90deg, #4d4d4d 0%, #b3b3b3 100%);
}
.package-banner.bg-person {
  background: linear-gradient(132.54deg, #170aca 12.92%, #d00001 53.14%, #6a0000 94.13%);
}
.package-banner.bg-cctv {
  background: linear-gradient(147.46deg, #df6500 -1.26%, #000000 66.84%);
}
.package-banner.bg-it {
  background: linear-gradient(258.78deg, #000000 26.54%, #0a8cd7 92.22%);
}

.banner-overlay-ellipse {
  position: absolute;
  aspect-ratio: 1 / 1;
  left: 52%;
  top: -150px;
  background: radial-gradient(54.18% 54.18% at 45.21% 45.82%, #3e0000 0%, #bf0001 100%);
  opacity: 0.6;
  pointer-events: none;
  height: 450px;
  border-radius: 50%;
  z-index: 1;
}

.banner-vector {
  position: absolute;
  pointer-events: none;
  z-index: 2;
  height: 140%;
  width: auto;
}

.banner-vector-3 {
  left: 50%;
}

@media (max-width: 768px) {
  .banner-vector-3 {
    left: 30%;
    height: 100%;
  }
}

.banner-vector-4 {
  left: calc(51.6% + 300px);
}

.banner-sector-badge-ui {
  display: inline-flex;
  padding: 5px 10px;
  background: rgba(255, 255, 255, 0.3);
  border-radius: 10px;
  color: #ffffff;
  font-weight: 700;
  font-size: 12px;
  margin-bottom: 12px;
  width: fit-content;
  position: relative;
  z-index: 4;
}

.banner-text-content {
  display: flex;
  flex-direction: column;
  position: relative;
  z-index: 4;
}

.banner-title-group {
  display: flex;
  flex-direction: column;
}

.banner-title-group h2 {
  color: #fff;
  font-size: 22px;
  font-weight: 700;
  margin: 0;
}

.package-name {
  font-family: "Roboto";
  font-weight: 700;
  font-size: 24px;
  color: #ffffff;
  margin: 0;
  line-height: 1.2;
  text-transform: uppercase;
}

.package-subtitle {
  font-size: 14px;
  font-weight: 600;
  color: #ffffff;
  margin: 4px 0 0 0;
  text-transform: uppercase;
}

.banner-visual {
  position: absolute;
  right: 15%;
  bottom: -10%;
  height: 110%;
  z-index: 3;
  pointer-events: none;
}

.banner-visual img {
  height: 110%;
  width: auto;
  object-fit: contain;
  object-position: right bottom;
}
