/* Floating Apply Now Button */
.floating-apply {
  position: fixed;
  bottom: 30px;
  right: 30px;
  background: linear-gradient(45deg, #e74c3c, #c0392b);
  color: white;
  padding: 18px 28px;
  border-radius: 50px;
  text-decoration: none;
  font-weight: bold;
  font-size: 16px;
  box-shadow: 0 6px 20px rgba(231, 76, 60, 0.4);
  z-index: 1000;
  transition: all 0.3s ease;
  border: none;
  cursor: pointer;
}

.floating-apply:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 25px rgba(231, 76, 60, 0.6);
  text-decoration: none;
  color: white;
}

.floating-apply:active {
  transform: translateY(-1px);
}

/* Hidden state for floating button - STRONGER RULES */
.floating-apply.hidden {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translateY(10px) !important;
}

/* DEBUG - remove after testing */
.floating-apply.hidden {
  background: red !important; /* Should turn red when "hidden" */
  opacity: 0.3 !important;    /* Should become transparent */
  visibility: hidden !important;
  pointer-events: none !important;
}


/* Page-specific button styling */
.blog .floating-apply {
  background: linear-gradient(45deg, #27ae60, #2ecc71);
  box-shadow: 0 6px 20px rgba(39, 174, 96, 0.4);
}

.blog .floating-apply:hover {
  box-shadow: 0 8px 25px rgba(39, 174, 96, 0.6);
}

/* Mobile responsiveness */
@media (max-width: 768px) {
  .floating-apply {
    bottom: 20px;
    right: 20px;
    padding: 15px 22px;
    font-size: 14px;
  }
}

@media (max-width: 480px) {
  .floating-apply {
    bottom: 15px;
    right: 15px;
    padding: 12px 18px;
    font-size: 13px;
  }
}

/* Ensure button stays above other elements */
.floating-apply {
  z-index: 9999 !important;
}

/* Smooth scroll behavior for entire site */
html {
  scroll-behavior: smooth;
}

/* Additional utility classes you might need */
.text-center {
  text-align: center;
}

.mt-4 {
  margin-top: 2rem;
}

.mb-4 {
  margin-bottom: 2rem;
}