div.form label.required::before,
form label.required::before {
  content: '*';
  color: red;
  /* Make it red */
  margin-right: 5px;
  /* Add some space between the asterisk and the label */
  vertical-align: middle;
  /* Vertically align with the label text */
  font-size: inherit;
  /* Keep the font size consistent with the label text */
}

.swal2-container {
  z-index: 2001 !important;
  /* Set to your desired z-index value */
}

.btn.btn-no-outline {
  border-color: transparent !important;
  color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 1))
}

button.btn:disabled i {
  color: lightseagreen !important;
}

div.p-datatable-column-header-content {
  display: block !important;
}

.g-recaptcha {
  display: inline-block;
}

button.btn-disguise {
  border: none !important;
}

/* .form-group label.required::after {
    content: '＊';
    color: red; 
} */

input::placeholder {
  font-style: italic;
  /* Optional: Make it italic */
  opacity: 0.5 !important;
  /* Ensure it's fully visible (some browsers default to a lower opacity) */
}

@media (max-width: 576px) {

  /* Mobile */
  .w-sm-100 {
    width: 100% !important;
  }
}

@media (max-width: 768px) {

  /* Tablet */
  .w-md-75 {
    width: 75% !important;
  }
}

@media (min-width: 992px) {

  /* Laptop */
  .w-lg-50 {
    width: 50% !important;
  }
}

.form-check-input-with-text {
  margin-top: 0.75rem;
}

div.form .col-md-12,
div.form .col-md-6,
div.form .col-md-4,
div.form .col-md-3 {
  margin-bottom: 1rem;
}

.anchor-disguise {
  cursor: pointer;
}

img.grayscale {
  filter: grayscale(100%);
}

.sponsor-logo-card {
  position: relative;
  width: 100%;
  padding-top: 100%;
  /* This creates a square aspect ratio */
  overflow: hidden;
}

.sponsor-logo-card img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-width: 100%;
  max-height: 100%;
  object-fit: contain; /* Ensures the image fits within the square */
}