/* ====== HAMBURGER RESPONSIVE FIX ====== */
/* This file fixes hamburger X animation issues in responsive mode */

/* ====== RESPONSIVE MODE FIXES ====== */
@media (max-width: 768px) {
  /* Ensure hamburger container has enough space */
  .mobile-nav .hamburger {
    display: flex !important;
    flex-direction: column !important;
    cursor: pointer !important;
    gap: 4px !important;
    padding: 10px !important; /* Increased padding to prevent cutting */
    z-index: 1001 !important;
    position: relative !important;
    width: 45px !important; /* Slightly larger to prevent cutting */
    height: 45px !important; /* Slightly larger to prevent cutting */
    justify-content: center !important;
    align-items: center !important;
    box-sizing: border-box !important;
    overflow: visible !important; /* Allow X to be visible */
  }
  
  /* Ensure hamburger lines have proper spacing */
  .mobile-nav .hamburger div {
    width: 25px !important;
    height: 3px !important;
    background: #123458 !important;
    transition: all 0.3s ease !important;
    border-radius: 2px !important;
    margin: 0 !important;
    transform-origin: center !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    box-sizing: border-box !important;
  }
  
  /* X ANIMATION - Ensure X is not cut off */
  .mobile-nav .hamburger.active div:nth-child(1) {
    transform: rotate(45deg) translate(4px, 4px) !important; /* Reduced translation to prevent cutting */
    transition: all 0.3s ease !important;
    background: #123458 !important;
    opacity: 1 !important;
    visibility: visible !important;
    display: block !important;
  }
  
  .mobile-nav .hamburger.active div:nth-child(2) {
    opacity: 0 !important;
    transition: all 0.3s ease !important;
    visibility: hidden !important;
    display: none !important;
  }
  
  .mobile-nav .hamburger.active div:nth-child(3) {
    transform: rotate(-45deg) translate(6px, -5px) !important; /* Reduced translation to prevent cutting */
    transition: all 0.3s ease !important;
    background: #123458 !important;
    opacity: 1 !important;
    visibility: visible !important;
    display: block !important;
  }
  
  /* HAMBURGER STATE - When not active */
  .mobile-nav .hamburger:not(.active) div:nth-child(1) {
    transform: none !important;
    transition: all 0.3s ease !important;
    background: #123458 !important;
    opacity: 1 !important;
    visibility: visible !important;
    display: block !important;
  }
  
  .mobile-nav .hamburger:not(.active) div:nth-child(2) {
    opacity: 1 !important;
    transition: all 0.3s ease !important;
    background: #123458 !important;
    visibility: visible !important;
    display: block !important;
  }
  
  .mobile-nav .hamburger:not(.active) div:nth-child(3) {
    transform: none !important;
    transition: all 0.3s ease !important;
    background: #123458 !important;
    opacity: 1 !important;
    visibility: visible !important;
    display: block !important;
  }
}

/* ====== EXTRA SMALL SCREENS ====== */
@media (max-width: 480px) {
  .mobile-nav .hamburger {
    padding: 8px !important;
    width: 40px !important;
    height: 40px !important;
  }
  
  .mobile-nav .hamburger div {
    width: 22px !important;
    height: 2px !important;
  }
  
  /* Smaller translations for very small screens */
  .mobile-nav .hamburger.active div:nth-child(1) {
    transform: rotate(45deg) translate(3px, 3px) !important;
  }
  
  .mobile-nav .hamburger.active div:nth-child(3) {
    transform: rotate(-45deg) translate(5px, -4px) !important;
  }
}

/* ====== FORCE OVERRIDE FOR RESPONSIVE ====== */
/* Override any conflicting styles */
.mobile-nav .hamburger {
  overflow: visible !important;
  box-sizing: border-box !important;
}

.mobile-nav .hamburger div {
  box-sizing: border-box !important;
  overflow: visible !important;
}
