/* ============================================
  Archivo: header.css
  Descripción: Estilos para el header y barra de navegación del sistema web Ecorut@s.
============================================ */

/* =========================
  1. VARIABLES DE COLOR
========================= */
:root {
  --navbar-bg-color: #001F33F3; /* Fondo navbar con transparencia */
  --primary-color: #1F618D;      /* Color principal para acentos */
  --color-negro: black;           /* Negro base */
  --color-blanco: white;          /* Blanco base */
}

/* =========================
  2. ESTILOS IMAGEN DE PORTADA
========================= */
.imagen-portada {
  object-fit: cover;
  transition: transform 0.5s ease, filter 0.5s ease;
}
.imagen-portada:hover {
  transform: scale(1.1);
  filter: hue-rotate(7deg) brightness(0.8);
}

/* =========================
  3. BARRA DE NAVEGACIÓN
========================= */
.navbar-custom {
  background-color: var(--navbar-bg-color);
  font-size: 14px;
  font-weight: bold;
  transition: background-color 0.3s ease;
}

/* Botón hamburguesa */
.navbar-custom .navbar-toggler {
  color: var(--color-blanco);
  border: 1px solid var(--color-blanco);
}
.navbar-custom .navbar-toggler-icon {
  filter: invert(1);
}

/* Nav items y brand */
.navbar-custom .navbar-nav {
  flex-grow: 1;
}

.navbar-custom .navbar-brand {
  color: var(--color-blanco);
  text-decoration: none;
  margin-right: 20px;
  display: flex;
  align-items: center;
}

/* Iconos dentro del brand con animación */
.navbar-custom .navbar-brand i {
  transition: transform 0.3s ease;
}
.navbar-custom .navbar-brand i:hover {
  transform: scale(1.5);
  color: var(--primary-color);
}

/* Ítems del menú */
.navbar-custom .nav-item {
  margin: 0 5px;
}

.navbar-custom .nav-item .nav-link {
  color: var(--color-blanco);
  transition: background-color 0.3s ease, color 0.3s ease;
  padding: 7px 8px;
}

/* Estado activo del ítem */
.navbar-custom .nav-item.active .nav-link {
  background-color: var(--primary-color);
  color: var(--color-blanco);
  text-transform: uppercase;
}

/* Hover sobre enlaces */
.navbar-custom .nav-link:hover {
  background-color: var(--color-blanco);
  color: var(--color-negro);
}

/* =========================
  4. MENÚS DESPLEGABLES
========================= */
.navbar-custom .dropdown-menu {
  background-color: var(--navbar-bg-color);
  border-radius: 5px;
  border: 1px solid rgba(255, 255, 255, 0.2);
}

.navbar-custom .dropdown-item {
  color: var(--color-blanco);
  transition: background-color 0.3s ease, color 0.3s ease;
  font-size: 13px;
  font-weight: bold;
}

.navbar-custom .dropdown-item.active {
  background-color: var(--primary-color);
  color: var(--color-blanco);
  text-transform: uppercase;
}

.navbar-custom .dropdown-item:hover {
  background-color: var(--color-blanco);
  color: var(--color-negro);
}

/* =========================
  5. SUBMENÚS
========================= */
.dropdown-submenu {
  position: relative;
}

.dropdown-submenu .dropdown-menu {
  top: 0;
  left: 100%;
  margin-top: -1px;
  border-radius: 5px;
  display: none;
  opacity: 0;
  transition: opacity 0.3s ease, transform 0.3s ease;
  transform: translateX(10px);
}

.dropdown-submenu .dropdown-menu.show {
  display: block;
  opacity: 1;
  transform: translateX(0);
}

/* =========================
  6. MEDIA QUERIES (RESPONSIVO)
========================= */
@media screen and (max-width: 768px) {
  .navbar-custom {
    font-size: 14px;
  }
  .navbar-custom .dropdown-item,
  .navbar-custom .dropdown-submenu .dropdown-item {
    font-size: 13px;
  }
}

@media screen and (max-width: 576px) {
  .navbar-custom {
    font-size: 14px;
  }
  .navbar-custom .dropdown-item,
  .navbar-custom .dropdown-submenu .dropdown-item {
    font-size: 13px;
  }
}

/* Ajustes específicos para imagen portada en pantallas muy pequeñas */
@media screen and (max-width: 561px) {
  .imagen-portada {
    height: 65px;
    object-position: 62%;
  }
}