.color-white {
  color: #ffffff !important;
}

.color-success {
  color: var(--primary-success-color);
}

.bg-white {
  background-color: #ffffff;
}

.bg-transparent::placeholder {
  color: #ffffff;
  opacity: 1;
}

.object-fit-cover {
  object-fit: cover;
}

.themed-backdrop {
  width: fit-content;
  background-color: var(--primary-theme-color);
  border-left: 10px solid var(--secondary-theme-color);
  padding-left: 10px;
  padding-right: 10px;
}

.dropdown button {
  background-color: #d9d9d9;
}

.dropdown-toggle::after {
  display: none;
}

.dropdown-item:focus,
.dropdown-item:hover {
  color: var(--secondary-text-color) !important;
  background-color: transparent !important;
}

.no-underline {
  text-decoration: none;
}

.no-border-radius {
  border-radius: 0 !important;
}

.shaped-border-radius {
  border-radius: 0px 60px;
}

.no-list-style {
  list-style: none;
}

.minus-top-50 {
  top: -50px;
}

.bold-border-white {
  border: 10px solid #ffffff;
}

.common-size-12 {
  font-size: 12px;
}

.common-size-14 {
  font-size: 14px !important;
}

.common-size-16 {
  font-size: 16px;
}
@media (max-width: 500px) {
  .common-size-16 {
  font-size: 10px;
}
}
.common-size-18 {
  font-size: 18px;
}

.common-size-20 {
  font-size: 20px;
}

@media (max-width: 991px) {
  .common-size-20 {
    font-size: 18px;
  }
}

@media (min-width: 992px) {
  .common-size-30 {
    font-size: 30px;
  }
  .common-size-25 {
    font-size: 25px;
  }
}

.common-size-42 {
  font-size: 42px;
}

@media (max-width: 991px) {
  .common-size-42 {
    font-size: 22px;
  }
}

.common-weight-normal {
  font-weight: normal;
}

.common-weight-600 {
  font-weight: 600;
}

.common-weight-800 {
  font-weight: 800;
}

.common-mt-20 {
  margin-top: 20px !important;
}

.common-mt-50 {
  margin-top: 50px !important;
}

.common-mb-50 {
  margin-bottom: 50px !important;
}

.common-pt-50 {
  padding-top: 50px;
}

.custom-bottom-20 {
  bottom: 20px;
}

.common-sized-icon-small {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  background-color: var(--secondary-text-color);
}

.common-sized-icon-big {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  background-color: var(--secondary-text-color);
}

/* Full-screen overlay */
.spinner-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5); /* Semi-transparent black */
  display: none; /* Hidden by default */
  justify-content: center;
  align-items: center;
  z-index: 9999; /* Ensures it appears above other content */
}

/* Container for the spinner */
.spinner-container {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%; /* Ensures the spinner is centered vertically */
}

#customAlert {
  position: fixed; /* Make the alert fixed on the screen */
  top: 0; /* Position it at the top of the screen */
  left: 0; /* Position it at the left edge */
  width: 100%; /* Make it span the full width of the screen */
  height: 100vh; /* Make it cover the full height of the screen */
  background: rgba(
    0,
    0,
    0,
    0.5
  ); /* Semi-transparent background to dim the content */
  display: none; /* Hide it by default */
  justify-content: center; /* Center the alert content horizontally */
  align-items: center; /* Center the alert content vertically */
  z-index: 9999; /* Ensure it appears on top of all other content */
}

.alert-content {
  background-color: white; /* Background color for the alert box */
  padding: 20px;
  border-radius: 8px; /* Rounded corners */
  max-width: 500px; /* Limit the width of the alert */
  width: 100%;
}

#alert-icon {
  font-size: 24px; /* Icon size */
  margin-bottom: 20px; /* Space below the icon */
}

#closeAlert {
  width: 100%;
}
@media (max-width: 992px) {
  .common-size-16 {
  font-size: 10px;
  }
}
@media (min-width: 992px) {
  .common-size-16 {
  font-size: 14px;
}
  .common-section-padding {
    padding-left: 2rem !important;
    padding-right: 2rem !important;
  }
  .common-top-bottom-padding {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .common-p-5 {
    padding: 3rem !important;
  }
  .common-mt-5 {
    margin-top: 3rem !important;
  }
  .common-pt-5 {
    padding-top: 2rem !important;
  }
  .common-gap-5 {
    gap: 3rem !important;
  }
  .justify-content-desktop {
    justify-content: center;
  }
  .full-width-desktop {
    width: 100%;
  }
  .width-90-desktop {
    width: 40%;
  }
  .three-quaters-width-desktop {
    width: 75%;
  }
  .half-width-desktop {
    width: 50%;
  }
  .quater-width-desktop {
    width: 25%;
  }
  .text-center-desktop {
    text-align: center;
  }
  .text-end-desktop {
    text-align: end;
  }
  .justify-end-desktop {
    justify-content: end;
    display: flex;
  }
  .mb-20-desktop {
    margin-bottom: 20px;
  }
  .only-mobile {
    display: none !important;
  }
  .padding-top50-desktop {
    padding-top: 50px;
  }
  .pos-absolute-desktop {
    position: absolute;
  }
}

@media (max-width: 991px) {
  .common-section-padding {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }
  .common-top-bottom-padding {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .common-p-5 {
    padding: 1rem !important;
  }
  .common-mt-5 {
    margin-top: 1rem !important;
  }
  .common-pt-5 {
    padding-top: 1rem !important;
  }
  .common-gap-5 {
    gap: 1rem !important;
  }
  .half-width-mobile {
    width: 50% !important;
  }
  .width-90-mobile {
    width: 90%;
  }
  .flex-column-mobile {
    flex-direction: column;
  }
  .rounded-4-mobile {
    border-radius: 1rem !important;
  }

  .element.style {
  }
  .mb-3 {
    margin-bottom: 0rem !important;
}
  }

  .nav-link {
    font-size: 16px;
  }
  .small-text-mobile {
    font-size: 16px;
  }
  @media (max-width: 500px) {
    .small-text-mobile {
    font-size: 11px;
  }
    .nav-link {
    font-size: 11px;
  }
}

  .medium-text-mobile {
    font-size: 14px;
  }
  .mt-5 {
    margin-top: 0.5rem !important
  }
  .display-flex-mobile {
    display: flex !important;
  }
  .full-width-mobile {
    width: 100% !important;
    max-width: 100% !important;
  }
  .medium-container-mobile {
    width: 75%;
    margin: 0 auto;
  }
  .only-desktop {
    display: none !important;
  }
  .column-reverse-mobile {
    flex-direction: row;
  }
  @media only screen and (max-width: 400px) {
    .column-reverse-mobile {
    flex-direction: column-reverse;
  }
  }
  .margin-0-mobile {
    margin: 0 !important;
  }
  .margin-top-mobile {
    margin-top: 15px !important;
  }
  .margin-left-mobile {
    margin-left: 15px;
  }
  .padding-10-mobile {
    padding: 0 10px;
  }
  .padding-top-mobile {
    padding-top: 50px;
  }
  .text-center-mobile {
    text-align: center;
  }
  .justify-center-mobile {
    justify-content: center;
  }
    .justify-left-mobile {
    justify-content: flex-start;
  }
  .justify-even-mobile {
    justify-content: space-evenly;
  }
  .justify-between-mobile {
    justify-content: space-between;
  }
  .right-0-mobile {
    right: 0 !important;
  }
  .vertical-center-mobile {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }


@media (min-width: 992px) {
  .default-container {
    margin-top: 150px;
    min-height: 60vh;
  }
}

@media (max-width: 991px) {
  .default-container {
    margin-top: 110px;
  }
}

.overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000;
  opacity: 50%;
  z-index: 1;
}

.round-btn {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: transparent;
  border: 1px solid #ffffff;
}

.cta-btn {
  height: 40px;
  /* width: 105px; */
  font-family: "Poppins", sans-serif;
  font-size: 14px;
  color: var(--primary-text-color);
  background: transparent;
  border: 1px solid #cccccc;
  border-radius: 5px;
  cursor: pointer;
}

@media (min-width: 992px) {
  .cta-btn {
    width: 150px;
  }
}

.fill-btn {
  background-color: var(--secondary-text-color);
  color: var(--text-color-light);
  border: 1px solid var(--secondary-text-color);
}

.float-right {
  float: right;
}

.common-border {
  border: 1px solid #cbdcff;
  border-radius: 25px;
}

.secondary-bg {
  background-color: var(--secondary-background-color) !important;
}

.primary-theme-bg {
  background-color: var(--primary-theme-color) !important;
}

.secondary-theme-bg {
  background-color: var(--secondary-theme-color) !important;
}

.primary-text {
  color: var(--primary-text-color) !important;
}

.secondary-text {
  color: var(--secondary-text-color);
}

.grey-text {
  color: var(--text-color-grey);
}

.themed-line-left,
.themed-line-right {
  width: 94px;
  height: 5px;
}

.themed-line-left {
  border-radius: 20px 0 0 20px;
}

.themed-line-right {
  border-radius: 0 20px 20px 0;
}

.width-fit-content {
  width: fit-content;
}

.custom-heading-underline,
.custom-heading-underline-start {
  position: relative;
  text-align: center;
}

.custom-heading-underline::after {
  content: "";
  position: absolute;
  bottom: -5px;
  left: 50%;
  transform: translateX(-50%);
  width: 10%;
  height: 3px;
  background-color: #2e3192;
  border-radius: 15px;
}

.custom-heading-underline-start::after {
  content: "";
  position: absolute;
  bottom: -5px;
  left: 50%;
  transform: translateX(-50%);
  width: 50%;
  height: 3px;
  background-color: #2e3192;
  border-radius: 15px;
}

.vertical-center {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.bounce-in-top {
  animation: bounceInTop 2s ease 0s 1 normal forwards;
}

@keyframes bounceInTop {
  0% {
    animation-timing-function: ease-in;
    opacity: 0;
    transform: translateY(-250px);
  }

  38% {
    animation-timing-function: ease-out;
    opacity: 1;
    transform: translateY(0);
  }

  55% {
    animation-timing-function: ease-in;
    transform: translateY(-65px);
  }

  72% {
    animation-timing-function: ease-out;
    transform: translateY(0);
  }

  81% {
    animation-timing-function: ease-in;
    transform: translateY(-28px);
  }

  90% {
    animation-timing-function: ease-out;
    transform: translateY(0);
  }

  95% {
    animation-timing-function: ease-in;
    transform: translateY(-8px);
  }

  100% {
    animation-timing-function: ease-out;
    transform: translateY(0);
  }
}

.bounce-bottom {
  animation: bounceBottom 2s ease 0s 1 normal forwards;
}

@keyframes bounceBottom {
  0% {
    animation-timing-function: ease-in;
    opacity: 1;
    transform: translateY(45px);
  }

  24% {
    opacity: 1;
  }

  40% {
    animation-timing-function: ease-in;
    transform: translateY(24px);
  }

  65% {
    animation-timing-function: ease-in;
    transform: translateY(12px);
  }

  82% {
    animation-timing-function: ease-in;
    transform: translateY(6px);
  }

  93% {
    animation-timing-function: ease-in;
    transform: translateY(4px);
  }

  25%,
  55%,
  75%,
  87% {
    animation-timing-function: ease-out;
    transform: translateY(0px);
  }

  100% {
    animation-timing-function: ease-out;
    opacity: 1;
    transform: translateY(0px);
  }
}

.bounce-left {
  animation: bounceLeft 2s ease 0s 1 normal forwards;
}

@keyframes bounceLeft {
  0% {
    animation-timing-function: ease-in;
    opacity: 1;
    transform: translateX(-48px);
  }

  24% {
    opacity: 1;
  }

  40% {
    animation-timing-function: ease-in;
    transform: translateX(-26px);
  }

  65% {
    animation-timing-function: ease-in;
    transform: translateX(-13px);
  }

  82% {
    animation-timing-function: ease-in;
    transform: translateX(-6.5px);
  }

  93% {
    animation-timing-function: ease-in;
    transform: translateX(-4px);
  }

  25%,
  55%,
  75%,
  87%,
  98% {
    animation-timing-function: ease-out;
    transform: translateX(0px);
  }

  100% {
    animation-timing-function: ease-out;
    opacity: 1;
    transform: translateX(0px);
  }
}

.slide-left {
  animation: slideLeft 2s ease 0s 1 normal forwards;
}

@keyframes slideLeft {
  0% {
    opacity: 0;
    transform: translateX(-250px);
  }

  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

.wobble-left {
  animation: WobbleLeft 2s ease 0s 1 normal forwards;
}

@keyframes WobbleLeft {
  0%,
  100% {
    transform: translateY(0) rotate(0);
    transform-origin: 50% 50%;
  }

  15% {
    transform: translateY(-30px) rotate(-6deg);
  }

  30% {
    transform: translateY(15px) rotate(6deg);
  }

  45% {
    transform: translateY(-15px) rotate(-3.6deg);
  }

  60% {
    transform: translateY(9px) rotate(2.4deg);
  }

  75% {
    transform: translateY(-6px) rotate(-1.2deg);
  }
}
