/* === Estilos de cabecera / menú === */

/* NAV principal */
.nav{
  background:var(--dark);
  color:#fff;
  border-radius:20px;
  padding:12px 16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  position:relative; /* necesario para el menú flotante en móvil */
  z-index:40;        /* 🔹 por encima de las cards */
}

.brand{
  display:flex;
  align-items:center;
  gap:10px;
  color:#fff;
}

.brand strong{
  font-weight:800;
  letter-spacing:.02em;
}

.brand-accent{
  color:var(--primary);
  font-weight:800;
  letter-spacing:.02em;
}

/* Escudo más grande (coordinado con tu estilo original) */
.brand svg{
  width:54px;
  height:54px;
}

/* Zoom a la imagen interna del escudo */
.brand svg image{
  transform-box:fill-box;
  transform-origin:50% 50%;
  transform:scale(1.12);
}

/* Menú horizontal (desktop) */
.menu{
  display:flex;
  gap:18px;
  z-index:45; /* 🔹 menú sobre la nav y las cards */
}

.menu a{
  color:#e5eef3;
  font-weight:600;
  font-size:.98rem;
  padding:6px 4px;
  border-radius:10px;
}

.menu a:hover{
  background:rgba(148,163,184,.22);
}

.menu a.active{
  color:#fff;
  background:rgba(148,163,184,.35);
}

/* Botón hamburguesa (oculto en desktop) */
.nav-toggle{
  display:none;                 /* se muestra solo en móvil */
  width:40px;
  height:40px;
  border-radius:12px;
  border:1px solid rgba(148,163,184,.6);
  background:rgba(15,23,42,.9);
  padding:8px;
  margin-left:auto;
  cursor:pointer;
  align-items:center;
  justify-content:center;
}

.nav-toggle span{
  display:block;
  width:18px;
  height:2px;
  border-radius:999px;
  background:#e5eef3;
  transition:transform .18s ease, opacity .18s ease;
}

/* ===== Responsivo cabecera ===== */

@media (max-width:720px){
  /* Mostrar botón hamburguesa */
  .nav-toggle{
    display:inline-flex;
  }

  /* Menú se convierte en panel desplegable */
  .menu{
    position:absolute;
    top:100%;
    right:16px;
    left:16px;
    margin-top:8px;
    padding:10px 0;
    background:rgba(15,23,42,.98);
    border-radius:16px;
    flex-direction:column;
    gap:4px;
    box-shadow:0 18px 40px rgba(15,23,42,.45);
    opacity:0;
    transform:translateY(-8px);
    pointer-events:none;
    transition:opacity .18s ease, transform .18s ease;
    z-index:45; /* sigue por encima cuando es panel */
  }

  .menu a{
    padding:8px 14px;
  }

  /* Cuando la nav está abierta (clase is-open se aplica desde JS) */
  .nav.is-open .menu{
    opacity:1;
    transform:translateY(0);
    pointer-events:auto;
  }

  /* Icono hamburguesa → X */
  .nav.is-open .nav-toggle span:nth-child(1){
    transform:translateY(4px) rotate(45deg);
  }
  .nav.is-open .nav-toggle span:nth-child(2){
    opacity:0;
  }
  .nav.is-open .nav-toggle span:nth-child(3){
    transform:translateY(-4px) rotate(-45deg);
  }
}
