/* =======================
   Base styling
   ======================= */
.select2-container .select2-selection--single {
  background-color: var(--bs-body-bg, #000) !important;
  color: var(--bs-body-color, #fff) !important;
  border: 1px solid #444 !important;
  border-radius: 0 !important;
  height: 42px !important;
  display: flex;
  align-items: center;
}

/* Text inside single select */
.select2-container--default .select2-selection--single .select2-selection__rendered {
  color: var(--bs-body-color, #fff) !important;
  line-height: 42px !important;
  padding-left: 10px;
}

/* Dropdown arrow */
.select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 100%;
}

/* =======================
   Multi-select box
   ======================= */
.select2-container--default .select2-selection--multiple {
  background-color: var(--bs-body-bg, #000) !important;
  color: var(--bs-body-color, #fff) !important;
  border: 1px solid #444 !important;
  border-radius: 0 !important;
  min-height: 42px !important;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  padding: 2px 4px;
}

/* Selected tag (choice) */
.select2-container--default .select2-selection--multiple .select2-selection__choice {
  background-color: var(--bs-body-bg, #000) !important;
  color: var(--bs-body-color, #fff) !important;
  border: 1px solid #444 !important;
  border-radius: 0 !important;
  padding: 2px 8px 2px 20px !important; /* space for X */
  margin: 3px 4px 3px 0;
  position: relative;
}

/* Remove button (X) inside tag */
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
  position: absolute;
  left: 5px;
  color: green !important;
  font-weight: bold;
  font-size: 14px;
  cursor: pointer;
}

/* =======================
   Dropdown menu
   ======================= */
.select2-container--default .select2-results > .select2-results__options {
  background-color: var(--bs-body-bg, #000) !important;
  color: var(--bs-body-color, #fff) !important;
  max-height: 200px;
  overflow-y: auto;
}

/* Each option */
.select2-container--default .select2-results__option {
  background-color: var(--bs-body-bg, #000) !important;
  color: var(--bs-body-color, #fff) !important;
  padding: 8px 12px;
}

/* Hovered option */
.select2-container--default .select2-results__option--highlighted[aria-selected] {
  background-color: #222 !important;
  color: #fff !important;
}




.hero {
  position: relative;
  width: 100%;
  height: 500px; /* adjust as needed */
  overflow: hidden;
}

.hero img {
  width: 100%;
  height: 100%;
  object-fit: cover; /* keeps aspect ratio and covers area */
}

.hero-text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); /* perfect centering */
  text-align: center;
  color: white; /* contrast against image */
}

.hero-text h1 {
  font-size: 3rem; /* adjust size */
  margin: 0;
}

.hero-text h2 {
  font-size: 1.5rem;
  font-weight: normal;
  margin: 10px 0 0;
}


.head-title-h1 {
    font-size: 60px !important;
}


.head-title-h2 {
    font-size: 40px !important;
}

.head-title-h3 {
    font-size: 35px !important;
    padding-bottom: 0px !important;
}

.head-title-h4 {
    font-size: 20px !important;
    padding-top: 0px !important;
}

.brand-partner-logo {
  /* position: absolute;
  top: 40px;
  left: 100px; */
  max-width: 18%; /* logo resizes relative to banner width */
  height: auto;
  margin-bottom: 100px;
}


.bg-custom-image {
  height: 100vh !important;
}







/* Medium screens */
@media (max-width: 1024px) {
    .head-title-h1 {
        font-size: 40px !important;
    }

    .head-title-h2 {
        font-size: 35px !important;
    }
    .head-title-h3 {
        font-size: 26px !important;
        padding-bottom: 0px !important;
    }

    .head-title-h4 {
      font-size: 20px !important;
      padding-top: 0px !important;
    }

    .brand-partner-logo {
      max-width: 20%; /* logo resizes relative to banner width */
      margin-bottom: 60px !important;
    }

    .bg-custom-image {
      height: 45vh !important;
    }
}


@media (max-width: 920px) {
    .head-title-h1 {
        font-size: 36px !important;
    }

    .head-title-h2 {
        font-size: 32px !important;
    }
    .head-title-h3 {
        font-size: 24px !important;
        padding-bottom: 0px !important;
    }

    .head-title-h4 {
      font-size: 18px !important;
      padding-top: 0px !important;
    }

    .brand-partner-logo {
      max-width: 20%; /* logo resizes relative to banner width */
      margin-bottom: 60px !important;
    }

     .bg-custom-image {
      height: 40vh !important;
    }
}

@media (max-width: 820px) {
    .head-title-h1 {
        font-size: 35px !important;
    }

    .head-title-h2 {
        font-size: 30px !important;
    }
    .head-title-h3 {
        font-size: 22px !important;
        padding-bottom: 0px !important;
    }

    .head-title-h4 {
      font-size: 18px !important;
      padding-top: 0px !important;
    }

    .brand-partner-logo {
      max-width: 20%; /* logo resizes relative to banner width */
      margin-bottom: 20px !important;
    }

    .bg-custom-image {
      height: 43vh !important;
    }
}

/* Small screens */
@media (max-width: 768px) {
    .head-title-h1 {
      font-size: 30px !important;
    }
    .head-title-h2 {
      font-size: 30px !important;
    }
    .head-title-h3 {
      font-size: 22px !important;
      padding-bottom: 0px !important;
    }
    .head-title-h4 {
      font-size: 18px !important;
      padding-top: 0px !important;
    }
    .brand-partner-logo {
      max-width: 25%; /* logo resizes relative to banner width */
      margin-bottom: 40px !important;
    }

    
  .bg-custom-image {
    height: 44vh !important;
  }
}

/* Small screens */
@media (max-width: 540px) {
    .head-title-h1 {
      font-size: 28px !important;
    }
    .head-title-h2 {
      font-size: 25px !important;
    }
    .head-title-h3 {
      font-size: 20px !important;
      padding-bottom: 0px !important;
    }
    .head-title-h4 {
      font-size: 16px !important;
      padding-top: 0px !important;
    }
    .brand-partner-logo {
      max-width: 20%; /* logo resizes relative to banner width */
      margin-bottom: 25px !important;
    }

    
  .bg-custom-image {
    height: 55vh !important;
  }
}

/* Extra small screens */
@media (max-width: 480px) {
    .head-title-h1 {
      font-size: 24px !important;
    }
    .head-title-h2 {
      font-size: 20px !important;
    }
    .head-title-h3 {
      font-size: 16px !important;
      padding-bottom: 0px !important;
    }
    .head-title-h4 {
      font-size: 14px !important;
      padding-top: 0px !important;
    }
    .brand-partner-logo {
      max-width: 35%; /* logo resizes relative to banner width */
      margin-bottom: 20px !important;
    }
}

/* Extra small screens */
@media (max-width: 375px) {
    .head-title-h1 {
      font-size: 24px !important;
    }
    .head-title-h2 {
      font-size: 20px !important;
    }
    .head-title-h3 {
      font-size: 16px !important;
      padding-bottom: 0px !important;
    }
    .head-title-h4 {
      font-size: 14px !important;
      padding-top: 0px !important;
    }
    .brand-partner-logo {
      max-width: 35%; /* logo resizes relative to banner width */
      margin-bottom: 20px !important;
    }
}