 * {
   margin: 0;
   padding: 0;
   box-sizing: border-box;
   font-family: "Fredoka", sans-serif ;
 }

 body {
   padding-top: 80px;
   /* Para compensar el header fijo */
   background-color: #f5f5f5;
 }

 .navbar {
   position: fixed;
   top: 0;
   left: 0;
   right: 0;
   background: linear-gradient(180deg, rgba(77, 184, 168, 0.95) 0%, rgba(61, 155, 155, 0.85) 100%);
   padding: 1rem 2rem;
   z-index: 1000;
   box-shadow: 0 4px 20px var(--shadow), 0 2px 10px var(--glow-teal);
   backdrop-filter: blur(10px);
   display: flex;
   align-items: center;
   justify-content: space-between; /* Cambiado de space-evenly a space-between */
   gap: 2rem; /* Agregado para espaciado consistente */
 }

 .navContainer {
   flex: 0 0 auto;
 }

 .logo {
   width: 100%;
 }

 .logo img {
   width: 100%;
   height: 60px;
   border-radius: 0%;
   object-fit: cover;
   box-shadow: 0 0 15px var(--glow-teal);
   transition: transform 0.3s ease;
 }

 .logo img:hover {
   transform: scale(1.1);
 }

 .nav-menu {
   flex: 1;
   display: flex;
   justify-content: center;
   list-style: none;
   margin: 0;
   padding: 0;
 }

 .nav-menu li {
   display: flex;
   gap: 2rem;
 }

 .nav-menu a {
   color: var(--text-light);
   text-decoration: none;
   font-size: 1.2rem;
   font-weight: 500;
   transition: all 0.3s ease;
   position: relative;
   padding: 0.5rem 0;
 }

 .nav-menu a::after {
   content: "";
   position: absolute;
   bottom: 0;
   left: 0;
   width: 0;
   height: 2px;
   background: linear-gradient(90deg, var(--accent-orange), var(--accent-green));
   transition: width 0.3s ease;
   box-shadow: 0 0 8px var(--glow-orange);
 }

 .nav-menu a:hover::after,
 .nav-menu a.active::after {
   width: 100%;
 }

 .nav-menu a:hover {
   color: var(--accent-green);
   text-shadow: 0 0 10px var(--glow-green);
 }

 /* ========== SELECTOR DE IDIOMAS CORREGIDO ========== */
 .language-dropdown {
   position: relative;
   display: flex;
   align-items: center;
 }

 #language-btn {
   background: rgba(255, 255, 255, 0.15);
   border: 2px solid rgba(255, 255, 255, 0.3);
   color: white;
   padding: 8px 16px;
   border-radius: 8px;
   cursor: pointer;
   font-size: 14px;
   font-weight: 600;
   transition: all 0.3s ease;
   display: flex;
   align-items: center;
   gap: 5px;
   min-width: 70px;
   justify-content: center;
 }

 #language-btn:hover {
   background: rgba(255, 255, 255, 0.25);
   border-color: rgba(255, 255, 255, 0.6);
   transform: translateY(-2px);
   box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
 }

 .language-options {
   position: absolute;
   top: 100%;
   right: 0;
   background: white;
   border: 1px solid #ddd;
   border-radius: 8px;
   box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
   min-width: 90px;
   z-index: 1100; /* Mayor z-index */
   display: none;
   margin-top: 5px;
   overflow: hidden;
 }

 .language-options.show {
   display: block;
   animation: fadeInDown 0.3s ease;
 }

 @keyframes fadeInDown {
   from {
     opacity: 0;
     transform: translateY(-10px);
   }
   to {
     opacity: 1;
     transform: translateY(0);
   }
 }

 .language-options div {
   padding: 12px 16px;
   cursor: pointer;
   color: #333;
   font-weight: 500;
   transition: all 0.2s ease;
   border-bottom: 1px solid #f0f0f0;
 }

 .language-options div:last-child {
   border-bottom: none;
 }

 .language-options div:hover {
   background: linear-gradient(135deg, #4db8a8, #3d9b9b);
   color: white;
   transform: translateX(5px);
 }

 /* Selector de idioma en login */
 .language-dropdown-login {
   position: relative;
   display: flex;
   justify-content: center;
   margin-top: 20px;
 }

 #login-lang-btn {
   background: rgba(255, 255, 255, 0.1);
   border: 1px solid rgba(255, 255, 255, 0.3);
   color: white;
   padding: 10px 20px;
   border-radius: 8px;
   cursor: pointer;
   font-size: 14px;
   font-weight: 600;
   transition: all 0.3s ease;
   display: flex;
   align-items: center;
   gap: 8px;
   min-width: 80px;
   justify-content: center;
 }

 #login-lang-btn:hover {
   background: rgba(255, 255, 255, 0.2);
   border-color: rgba(255, 255, 255, 0.5);
   transform: translateY(-2px);
 }

 /* ========== BOTÓN LOGIN ========== */
 .button {
   background: linear-gradient(135deg, var(--accent-green), var(--dark-green));
   color: var(--text-light);
   border: none;
   padding: 0.8rem 1.8rem;
   border-radius: 10px;
   cursor: pointer;
   font-size: 1rem;
   font-weight: 600;
   transition: all 0.3s ease;
   box-shadow: 0 4px 15px var(--glow-green);
   text-decoration: none;
   display: inline-flex;
   align-items: center;
   gap: 8px;
 }

 .button:hover {
   background: linear-gradient(135deg, var(--dark-green), var(--accent-green));
   transform: translateY(-3px);
   box-shadow: 0 6px 20px var(--glow-green);
 }

 /* ========== HAMBURGER MENU ========== */
 .hamburger {
   display: none;
   flex-direction: column;
   background: transparent;
   border: none;
   cursor: pointer;
   padding: 0;
   width: 30px;
   height: 21px;
   position: relative;
 }

 .hamburger span {
   display: block;
   height: 3px;
   width: 100%;
   background-color: var(--text-light);
   border-radius: 3px;
   transition: all 0.3s ease;
   position: absolute;
 }

 .hamburger span:nth-child(1) {
   top: 0;
 }

 .hamburger span:nth-child(2) {
   top: 9px;
 }

 .hamburger span:nth-child(3) {
   top: 18px;
 }

 /* ========== RESPONSIVE DESIGN ========== */
 @media (max-width: 768px) {
   .navbar {
     padding: 1rem;
     flex-wrap: wrap;
     gap: 1rem;
   }

   .hamburger {
     display: flex;
     order: 2;
   }

   .nav-menu {
     display: none;
     width: 100%;
     order: 4;
     margin-top: 1rem;
   }

   .nav-menu.active {
     display: flex;
   }

   .nav-menu li {
     flex-direction: column;
     width: 100%;
     text-align: center;
     gap: 1rem;
  
   }

   .language-dropdown {
     order: 3;
     margin-left: auto;
   }

   .button {
     order: 1;
   }

   /* Ajustes específicos para móviles */
   #language-btn, #login-lang-btn {
     padding: 10px 15px;
     font-size: 13px;
     min-width: 65px;
   }

   .language-options {
     right: 0;
     left: auto;
     min-width: 80px;
   }
 }

 @media (max-width: 480px) {
   .navbar {
     padding: 0.8rem;
   }

   .logo img {
     width: 100%;
     height: 50px;
   }

   #language-btn, .button {
     padding: 0.6rem 1rem;
     font-size: 0.9rem;
   }

   .language-options {
     min-width: 70px;
   }

   .language-options div {
     padding: 10px 12px;
     font-size: 13px;
   }
 }

 /* Estados activos para hamburger */
 .hamburger.active span:nth-child(1) {
   transform: rotate(45deg);
   top: 9px;
 }

 .hamburger.active span:nth-child(2) {
   opacity: 0;
 }

 .hamburger.active span:nth-child(3) {
   transform: rotate(-45deg);
   top: 9px;
 }