.px-banner {
  position: relative;
  height: 700px;
  max-height: 70vh;
  display: flex;
  align-items: flex-end;
  margin-bottom: clamp(1.5rem, 0.7250922509rem + 3.6900369004vw, 3.5rem);
}
@media screen and (max-width: 768px) {
  .px-banner:not(.large-height):not(.new-banner) {
    max-height: 50vh;
  }
}
@media screen and (max-width: 470px) {
  .px-banner:not(.large-height):not(.new-banner) {
    max-height: 25vh;
  }
}
.px-banner .polygon {
  position: absolute;
  right: 0;
  width: fit-content;
  top: 100%;
  right: -350px;
  width: 847px;
  height: 1546px;
  transform: rotate(23.9deg);
  z-index: -1;
  opacity: 0.35;
}
@media screen and (max-width: 768px) {
  .px-banner .polygon {
    display: none;
  }
}
.px-banner.large-height {
  margin-bottom: 0;
  min-height: 786px;
}
@media screen and (max-width: 470px) {
  .px-banner.large-height {
    min-height: unset;
    max-height: 90vh;
  }
}
.px-banner.large-height h1 {
  color: #fff;
  font-size: clamp(1.65rem, 0.797601476rem + 4.0590405904vw, 3.85rem);
  font-style: normal;
  font-weight: 600;
  line-height: normal;
}
.px-banner.large-height h1 span {
  color: var(--secondColor);
  font-size: clamp(3.85rem, 1.505904059rem + 11.1623616236vw, 9.9rem);
  font-style: normal;
  font-weight: 600;
  line-height: 85%;
  display: block;
}
@media screen and (min-width: 1200px) {
  .px-banner.large-height h1 {
    margin-bottom: 0;
  }
}
.px-banner.large-height .text {
  max-width: 1652px;
  width: var(--baseWidth);
  margin: 0 auto;
  margin-bottom: clamp(1rem, -0.3560885609rem + 6.4575645756vw, 4.5rem);
}
.px-banner.large-height .text .subtext {
  font-size: clamp(0.9rem, 0.7643911439rem + 0.6457564576vw, 1.25rem);
  color: #fff;
  font-weight: 600;
  margin-bottom: clamp(1rem, -0.1623616236rem + 5.5350553506vw, 4rem);
}
.px-banner.large-height .text .subtext .yellow {
  font-size: clamp(1.1rem, 0.7512915129rem + 1.6605166052vw, 2rem);
  color: var(--secondColor);
}
.px-banner.large-height .text .buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 9px 14px;
  max-width: 600px;
}
@media screen and (max-width: 600px) {
  .px-banner.large-height .text .buttons {
    display: none;
  }
}
.px-banner.large-height .text a.btn {
  padding: 10px 15px;
  border-radius: 11px;
  position: relative;
  overflow: hidden;
}
.px-banner.large-height .text a.btn::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: #fff;
  opacity: 0.3;
  overflow: hidden;
  width: 0;
  height: 100%;
  transition: 0.5s ease;
}
.px-banner.large-height .text a.btn:hover {
  scale: 1;
}
.px-banner.large-height .text a.btn:hover::before {
  width: 100%;
  left: 100%;
}
.px-banner.large-height .image::after, .px-banner.large-height .video::after {
  content: "";
  background: linear-gradient(90deg, black 0%, rgba(0, 0, 0, 0) 51%);
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}
.px-banner.new-banner {
  display: flex;
  flex-direction: row-reverse;
  max-width: var(--maxWidthBig);
  width: var(--baseWidth);
  margin: auto;
  gap: clamp(1.5rem, -0.8247232472rem + 11.0701107011vw, 7.5rem);
  align-items: center;
  height: unset;
  margin-top: clamp(2.5rem, 1.5313653137rem + 4.6125461255vw, 5rem);
}
.px-banner.new-banner .btn {
  text-transform: none;
  margin-top: clamp(0.5rem, 0.3062730627rem + 0.9225092251vw, 1rem);
}
.px-banner.new-banner .image, .px-banner.new-banner .video {
  position: relative;
  width: 40%;
  height: auto;
}
.px-banner.new-banner .image img, .px-banner.new-banner .video img {
  aspect-ratio: 1;
  border-radius: 10px;
  height: auto;
  position: relative;
  z-index: 2;
}
.px-banner.new-banner .image::after, .px-banner.new-banner .video::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background-color: var(--secondColor);
  border-radius: 10px;
  transform: rotate(3deg);
}
.px-banner.new-banner .text {
  width: 60%;
}
.px-banner.new-banner .text .subtext {
  margin-bottom: clamp(0.75rem, 0.4594095941rem + 1.3837638376vw, 1.5rem);
}
.px-banner.new-banner h1 span {
  color: #000;
}
@media screen and (max-width: 768px) {
  .px-banner.new-banner {
    flex-direction: column;
    width: 100%;
    margin-top: 0;
    max-height: unset;
  }
  .px-banner.new-banner .image, .px-banner.new-banner .video {
    width: 100%;
  }
  .px-banner.new-banner .image img, .px-banner.new-banner .video img {
    aspect-ratio: unset;
    border-radius: 0px;
    height: 50vh;
  }
  .px-banner.new-banner .image::after, .px-banner.new-banner .video::after {
    display: none;
  }
  .px-banner.new-banner .text {
    width: 92%;
  }
}
.px-banner .image, .px-banner .video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.px-banner .image img, .px-banner .image video, .px-banner .video img, .px-banner .video video {
  height: 100%;
  width: 100%;
  object-fit: cover;
}
.px-banner .image .img_small, .px-banner .video .img_small {
  position: absolute;
  height: clamp(3.75rem, 1.5221402214rem + 10.6088560886vw, 9.5rem);
  object-fit: cover;
  bottom: 44px;
  right: clamp(0.5rem, -1.9215867159rem + 11.5313653137vw, 6.75rem);
}
.px-banner .image .img_small img, .px-banner .video .img_small img {
  width: auto;
}
.px-banner .image .rating, .px-banner .video .rating {
  position: absolute;
  top: 41px;
  right: 38px;
  display: none;
  z-index: 1;
}
.px-banner .image .rating .face, .px-banner .video .rating .face {
  position: absolute;
  top: 0;
  left: 0;
}
.px-banner .image .rating .face img, .px-banner .video .rating .face img {
  width: 50px;
  height: 50px;
  object-fit: cover;
  border-radius: 50%;
  border: 2px solid #0B7077;
}
.px-banner .image .rating .face:nth-of-type(2), .px-banner .video .rating .face:nth-of-type(2) {
  left: 37px;
}
.px-banner .image .rating .face:nth-of-type(3), .px-banner .video .rating .face:nth-of-type(3) {
  left: 74px;
}
.px-banner .image .rating .review, .px-banner .video .rating .review {
  color: #fff;
  font-size: 12px;
  font-style: normal;
  font-weight: 600;
  line-height: 165%;
  white-space: nowrap;
}
.px-banner .image .rating .review .stars, .px-banner .video .rating .review .stars {
  width: 97px;
  height: auto;
  object-fit: cover;
}
@media screen and (max-width: 768px) {
  .px-banner .image .rating, .px-banner .video .rating {
    left: 18px;
  }
}
@media screen and (max-width: 470px) {
  .px-banner .image .rating, .px-banner .video .rating {
    top: 18px;
  }
  .px-banner .image .rating .review, .px-banner .video .rating .review {
    margin-left: 0;
  }
}
.px-banner .text {
  position: relative;
}
.home .px-banner .rating, .page-id-1430 .px-banner .rating {
  display: block;
}
.banner-filter-overlay {
  padding: 20px 20px;
  position: absolute;
  top: 50%;
  left: 50%;
  color: #fff;
  transform: translate(-50%, -50%);
  background: #00000080;
  border-radius: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 10;
  width: 100%;
  max-width: 100%;
  height: 100%;
}
.banner-filter-overlay .college-filter {
  background: rgba(255, 255, 255, 0.9);
  /* semi-transparent for modern look */
  padding: 18px 25px;
  border-radius: 50px;
  /* smooth pill shape */
  box-shadow: 0px 8px 30px rgba(0, 0, 0, 0.25);
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  transition: all 0.3s ease;
}
.banner-filter-overlay .college-filter input {
  flex: 1;
  border: none;
  outline: none;
  font-size: 16px;
  padding: 12px 15px;
  border-radius: 40px;
  background: #f7f7f7;
  transition: all 0.3s ease;
}
.banner-filter-overlay .college-filter input:focus {
  background: #fff;
  box-shadow: 0px 0px 8px rgba(0, 119, 255, 0.4);
}
.banner-filter-overlay .college-filter button {
  background: linear-gradient(135deg, #007bff, #00d4ff);
  border: none;
  color: #fff;
  padding: 12px 20px;
  border-radius: 40px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
}
.banner-filter-overlay .college-filter button:hover {
  background: linear-gradient(135deg, #0056d2, #00aaff);
  transform: scale(1.05);
}
