html,body   {           
font-family: "Poppins" !important;
}



.swiper-pagination {
    --si-carousel-pagination-bullet-width: 0.3125rem;
    --si-carousel-pagination-bullet-height: 0.3125rem;
    --si-carousel-pagination-bullet-spacer: 0.875rem;
    --si-carousel-pagination-bullet-border-radius: 50rem;
    --si-carousel-pagination-bullet-bg: #fce7a0; /* light gold for inactive dots */
    --si-carousel-pagination-bullet-active-width: 1.5rem;
    --si-carousel-pagination-bullet-active-bg: #F7A604 !important; /* bright gold for active dot */
    --si-carousel-pagination-progressbar-height: 0.1875rem;
    --si-carousel-pagination-progressbar-bg: #fff3d9; /* subtle gold tint for progress background */
    --si-carousel-pagination-progressbar-fill-bg: #F7A604; /* gold fill for progress */
    align-items: center;
    bottom: 1.25rem;
    display: flex;
    justify-content: center;
}
.btn-next, .btn-prev {
    --si-carousel-nav-btn-border-radius: 50%;
    --si-carousel-nav-btn-bg: #fff; /* keep white for default background */
    --si-carousel-nav-btn-color: #33354d; /* dark icon color by default */
    --si-carousel-nav-btn-box-shadow: 
        0 0.275rem 0.75rem -0.0625rem rgba(11, 15, 25, .06), 
        0 0.125rem 0.4rem -0.0625rem rgba(11, 15, 25, .03);
    --si-carousel-nav-btn-hover-bg: #F7A604; /* gold background on hover */
    --si-carousel-nav-btn-hover-color: #fff; /* white icon on hover for contrast */
    --si-carousel-nav-btn-hover-box-shadow: 
        0 0.5rem 1.125rem -0.5rem rgba(247, 166, 4, .7); /* warm gold shadow on hover */
    --si-carousel-nav-btn-disabled-color: rgba(191, 168, 111, .5); /* muted gold for disabled */
    --si-carousel-nav-btn-font-size: 1rem;

    border: 0;
    border-radius: var(--si-carousel-nav-btn-border-radius);
    color: var(--si-carousel-nav-btn-color) !important;
    font-size: var(--si-carousel-nav-btn-font-size);
    transition: color .2s ease-in-out, 
                background-color .2s ease-in-out, 
                border-color .2s ease-in-out, 
                box-shadow .2s ease-in-out, 
                opacity .2s ease-in-out;
}

/* page loading script*/
.page-loading {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: all 0.4s ease-in-out;
  background-color: #0b0f19;
  opacity: 0;
  visibility: hidden;
  z-index: 9999;
}

.page-loading.active {
  opacity: 1;
  visibility: visible;
}

.page-loading-inner {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  transition: opacity 0.2s ease-in-out;
  opacity: 0;
}

.page-loading.active > .page-loading-inner {
  opacity: 1;
}

.page-loading-inner > span {
  display: block;
  font-size: 1.2rem;
  font-weight: normal;
  color: #ffffff;
  opacity: 0.8;
  margin-top: 1rem;
}

.page-spinner {
  display: inline-block;
  width: 2.75rem;
  height: 2.75rem;
  margin-bottom: 0.75rem;
  vertical-align: text-bottom;
  border: 0.15em solid rgba(255, 255, 255, 0.3);
  border-right-color: #6366f1;
  border-radius: 50%;
  animation: spinner 0.75s linear infinite;
}

@keyframes spinner {
  100% {
    transform: rotate(360deg);
  }
}

/* Ensure body content is visible */
body {
  min-height: 100vh;
}

/* Make sure main content is visible when preloader is removed */
.page-wrapper {
  opacity: 1;
  transition: opacity 0.3s ease-in-out;
}
.text-gradient-secondary {
    background: linear-gradient(90deg, #1E3A8A, #2563EB 40%, #F97316);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.accordion {
    --si-accordion-color: var(--si-body-color);
    --si-accordion-btn-font-weight: 600;
    --si-accordion-btn-color: var(--si-heading-color);
    --si-accordion-btn-icon-box-size: 2.25rem;
    --si-accordion-btn-icon-box-border-radius: 50%;
    --si-accordion-btn-icon-box-bg: #f2d293;
    --si-accordion-btn-icon-box-active-bg: #F7A604;
    --si-accordion-btn-icon-box-active-shadow: 0 -0.5rem 1.125rem -0.5rem rgba(99, 102, 241, .9);
}
 
/* 
        /* Individual step */
        .step {
          position: relative;
          display: flex;
          flex-direction: column;
          padding: var(--si-steps-padding-y) var(--si-steps-padding-x);
        }

        /* Step number container */
        .step-number {
          position: relative;
          z-index: 5;
          display: flex;
          align-items: center;
          justify-content: center;
          flex-shrink: 0;
          width: var(--si-steps-number-size-sm);
          height: var(--si-steps-number-size-sm);
          margin: 0 auto 1rem;
          border-radius: var(--si-steps-number-border-radius);
          background-color: var(--si-steps-number-bg);
        }

        /* Step number inner circle */
        .step-number-inner {
          display: flex;
          align-items: center;
          justify-content: center;
          width: var(--si-steps-number-inner-size-sm);
          height: var(--si-steps-number-inner-size-sm);
          border-radius: var(--si-steps-number-border-radius);
          background-color: var(--si-steps-number-inner-bg);
          box-shadow: var(--si-steps-number-inner-box-shadow);
        }

        /* Step body text */
        .step-body {
          text-align: center;
        }

        /* Horizontal layout on medium screens and up */
        @media (min-width: 768px) {
          .steps-horizontal-md {
            flex-direction: row;
            align-items: flex-start;
          }

          .steps-horizontal-md .step {
            flex: 1;
            text-align: center;
            position: relative;
          }

          /* Connector line between steps */
          .steps-horizontal-md .step::after {
            content: "";
            position: absolute;
            top: calc(var(--si-steps-number-size) / 2);
            left: 50%;
            width: 100%;
            height: var(--si-steps-connect-width);
            background-color: var(--si-steps-connect-color);
            z-index: 1;
          }

          /* Remove line after last step */
          .steps-horizontal-md .step:last-child::after {
            display: none;
          }

          /* Larger circles on desktop */
          .step-number {
            width: var(--si-steps-number-size);
            height: var(--si-steps-number-size);
            margin-bottom: 1.5rem;
          }

          .step-number-inner {
            width: var(--si-steps-number-inner-size);
            height: var(--si-steps-number-inner-size);
          }
        }

        /* Mobile: Vertical layout with left-aligned connector */
        @media (max-width: 767px) {
          .step {
            flex-direction: row;
            text-align: left;
            padding-left: 0;
          }

          .step-number {
            margin: 0 1rem 0 0;
          }

          .step-body {
            text-align: left;
            flex: 1;
          }

          /* Vertical connector line on mobile */
          .step::before {
            content: "";
            position: absolute;
            left: calc(var(--si-steps-number-size-sm) / 2);
            top: calc(var(--si-steps-number-size-sm) + var(--si-steps-padding-y));
            width: var(--si-steps-connect-width);
            height: calc(100% - var(--si-steps-number-size-sm));
            background-color: var(--si-steps-connect-color);
            z-index: 1;
          }

          /* Remove line after last step on mobile */
          .step:last-child::before {
            display: none;
          } 

/* Header base styles - transparent by default */
.header.navbar {
  background-color: transparent !important;
  transition: all 0.3s ease !important;
}

/* When scrolled/stuck - SOLID background and fixed position */
.header.navbar-stuck {
  background-color: #0b0f19 !important;  /* Fully solid dark background */
  backdrop-filter: blur(10px);
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.35);
}

/* Override navbar-dark background */
.navbar-dark.header {
  background-color: transparent !important;
}

.navbar-dark.header.navbar-stuck {
  background-color: #0b0f19 !important;  /* Fully solid, no transparency */
}