 :root {
  --primary: #ff9100;
  --dark-blue: #002366;
  --red: #d62828;
  --blue: #003f88;
  --light: #ffffff;
  --gray: #f5f5f5;
  --text: #333;
  --font-main: "Inter", sans-serif;
}

body {
  font-family: var(--font-main);
  background: var(--light);
  color: var(--text);
  margin: 0px;
  padding: 0px;
  overflow: hidden;
}

.navbar {
  background: linear-gradient(135deg, #1e3c72, #2a5298);
  padding: 0.8rem 0;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

.navbar-brand {
  font-weight: 800;
  font-size: 1.4rem;
}

.hero {
    background: linear-gradient(135deg, #1e3c72, #2a5298, #ff6b6b);
    color: var(--light);
    position: relative;
    min-height: 100vh;
    overflow: scroll;
}

.hero-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.hero-bg-image {
    width: 100%;
    height: 100%;

}

.hero-content {
    position: relative;
    z-index: 2;
    padding: 2rem 0;
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

@media (max-width: 768px) {
  .hero-content {
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 100%;
  }

  .loan-card{
    background: linear-gradient(90deg,rgba(245, 48, 33, 1) 0%, rgba(250, 91, 66, 1) 50%, rgba(253, 120, 89, 1) 100%);
    max-height: 150px;
    width: auto;
    padding-right: 5px;
  }

  .zero-image img{
    width: 250px !important;
    margin-top: 10% !important;
    margin-left: -50% !important;
    /* max-height: 400px !important; */
  }

  .loan-amount{
    font-size: 30px !important;
    color: ivory;
    min-width: 100% !important;
    margin-left: 8% !important;
    margin-top: -10px;
  }

  .loan-condition{
    font-size: 20px !important;
    min-width: 100% !important;
    margin-left: 8% !important;
  }

  .image-container img{
    width: 100% !important;
  }
  
}

@media (max-width: 576px) {
  .hero-background{
    padding: 0px !important;
    overflow-y: hidden !important;
  }

  .responsive-swal-popup {
    width: 80% !important;
    /* max-width: 100% !important; */
    border-radius: 1rem !important;
    overflow-y: hidden !important;
  }

  .swal2-title {
    font-size: 1.2rem !important;
  }

  .swal2-html-container {
    font-size: 0.9rem !important;
    overflow-y: hidden !important;
  }

  .swal2-confirm, .swal2-cancel {
    font-size: 0.9rem !important;
    padding: 0.5rem 1rem !important;
  }

  .image-container img{
    width: 100%;
  }

  .image-container .overlay-button{
    width: 70%;
  }

  .loan-card{
    background: linear-gradient(90deg,rgba(245, 48, 33, 1) 0%, rgba(250, 91, 66, 1) 50%, rgba(253, 120, 89, 1) 100%);
    max-height: 110px;
    width: auto;
    padding-right: 5px;
  }

  .zero-image img{
    max-width: 90% !important;
    margin-top: 5% !important;
    margin-left: -30% !important;
    max-height: 400px !important;
  }

  .loan-amount{
    font-size: 13px !important;
    color: ivory;
    min-width: 100% !important;
    margin-left: -140px !important;
    margin-top: -10px;
  }

  .loan-condition{
    font-size: 10px !important;
    min-width: 100% !important;
    margin-left: -140px !important;
  }

  .loan-monitor{
    height: 100px !important;
  }

  .loan-monitor-container{
    height: 100px;
    width: 100%;
    margin-top: -15px;
  }
  
  .step-icon button{
    height: 35px;
    width: 35px;
  }

  .processIcon{
    border-radius: 50% !important;
    margin-left: -5px !important;
  }

  .step-label{
    font-size: 12px;
  }

  .line-on-media{
    display: none !important;
  }

  .progress-line{
    background-color: gray;
    margin-top: -30px !important;
    width: 16px !important;
    height: 5px !important;
    border-radius: 10px !important;
    padding: 0px !important;
  }
  
  .progress-line-hidden{
    background: transparent;
    margin-top: -30px !important;
    width: 16px !important;
    height: 5px !important;
    border-radius: 10px !important;
    padding: 0px !important;
  }

  .progress-line:first{
    margin-left: -10px !important;
  }

  .progress-line:nth-child(n + 2) {
    margin-left: 10px !important;
  }

  .nav-link{
    font-size: 13px !important;
  }

  

}

.primaryBtn {
    background-color: #ff9c00;
    color: white;
}

.input-group .form-floating > .form-control {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.input-group .form-floating > label {
  left: 0.75rem; /* align label inside the input */
}

.input-group-text button {
  border: none;
  background: transparent;
  padding: 0;
}

.image-container {
  position: relative; /* Essential for containing the absolute button */
  display: flex; /* Allows the container to wrap around the image's size */
  justify-content: center;
  align-items: center;
}

.image-container img {
  display: block; /* Removes any extra space below the image */
  width: 30%; /* Makes the image take up the full width of the container */
  align-items: center;
  height: auto;
  border-radius: 10px;
}

.overlay-button {
  position: absolute; /* Essential for overlaying */
  top: 100%; /* Moves the top edge to the vertical center */
  left: 50%; /* Moves the left edge to the horizontal center */
  transform: translate(-50%, -50%); /* Shifts the button back by half its own width/height to perfectly center it */
  border-radius: 15px;
  /* Additional styling for the button */
  padding: 10px 20px;
  background-color: #3971bf;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  color: white;
  border: none;
  cursor: pointer;
  z-index: 10; /* Ensures the button is above the image (optional, but good practice) */
  /* font-weight: bold; */
}

#referralSteps{
  color: black;
}

.howItWorks{
  margin-top: 10%;
}

.hiwList{
  margin-left: 20px;
}

.hiwlSpan{
  color: #d62828;
}

.wr li{
  margin-bottom: -7px;
  margin-left: 15px;
}

.extraBonus{
  display: flex;
  justify-content: center;
  align-items: center;
}

.extraBonus img{
  width: 70%;
}

.stepHeader h3 {
  font-weight: 700;
  margin-bottom: 0.5rem;
}

#referralSteps p{
  font-size: 0.8rem;
  color: #555;
}

.app-container{
  padding-left: 2%;
  padding-right: 2%;
}

.loan-card{
  border-radius: 50px;
  background: linear-gradient(90deg,rgba(245, 48, 33, 1) 0%, rgba(250, 91, 66, 1) 50%, rgba(253, 120, 89, 1) 100%);
  margin-bottom: 2%;
}

.zero-image img{
  width: 100%;
  margin-top: 5%;
  margin-left: -20%;
}

.loan-amount{
  font-size: 50px;
  color: ivory;
  font-weight: 700;
  margin-left: -20%;
}

.loan-condition{
  font-size: 25px;
  margin-left: -20%;
  color: ivory;
}

/* section 2 */
.section2 .container {
    width: 100%;
    padding: 0px;
}

.item-container{
    display: flex;
    justify-content: center;
    align-items: center;
  }

.processBtn{
  border-radius: 60% !important;
}

.progress-line{
  background-color: gray;
  margin-top: -30px;
  width: 5%;
  height: 5px;
  border-radius: 10px;
  padding: 0px;
}

.progress-line:nth-child(n + 2) {
  margin-left: 10px;
}

.nav-tabs .nav-link.active {
    /* Removes the default top, left, and right borders */
    border-color: transparent; 
    
    /* Removes the default light gray bottom border on the active tab itself */
    border-bottom: 2px solid var(--primary) !important; 
    
    /* Ensure the text color is distinct */
    color: var(--primary); 
    
    /* Remove the default background color */
    background-color: transparent;
}

/* 2. Ensure the main container (nav-tabs) border doesn't show under the active tab */
.nav-tabs {
    /* Removes the single continuous light gray line under the whole nav */
    border-bottom: 1px solid #dee2e6; /* You can change this to 'none' if you want no line at all */
}

/* 3. Style for inactive tabs */
.nav-tabs .nav-link {
    border: none; /* Removes borders from inactive tabs */
    color: var(--text); /* Set default color for inactive text */
}

/* Optional: Add hover effect */
.nav-tabs .nav-link:hover {
    border-color: transparent;
    color: var(--primary);
}

.appPreviewText{
  border: none !important;
}

.form-control:focus{
  box-shadow: none !important;
  border-color: #ced4da !important;
}

.btnApp{
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  height: 20px !important; 
  width: 20px !important; 
  border-radius: 50% !important;
  margin-top: 10px !important;
}

.section4{
  width: 100%;
  padding: 0px;
}