/* Estilo geral do header */
header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 100px;
    background-color: #fff;
    margin: 0;
    padding: 0 20px;
  }
  
  /* Logo */
  header #logo {
    flex: 0 1 200px;
  }
  
  header img {
    height: 80px;
    padding: 5px;
    display: block;
  }
  
  /* Botões do menu mobile */
  #openMenu,
  #closeMenu {
    border: none;
    background: none;
    font-size: 30px;
    font-weight: bold;
    color: #000;
    cursor: pointer;
    display: none;
    padding: 5px;
  }
  
  /* Links padrão */
  a {
    text-decoration: none;
    color: #000;
  }
  
  /* Links de navegação */
  nav a {
    font-size: 18px;
    padding: 20px;
  }
  
  /* Responsivo: tela até 717px */
  @media (max-width: 717px) {
    #openMenu,
    #closeMenu {
      display: block;
    }
  
    #openMenu {
      margin-left: auto;
      margin-right: 15px;
    }
  
    #closeMenu {
      position: fixed;
      right: 20px;
      top: 35px;
      z-index: 10;
    }
  
    nav {
      position: fixed;
      top: 0;
      left: 0;
      width: 100vw;
      height: 100vh;
      background-color: #fff;
      display: none;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      opacity: 0;
      transition: opacity 0.3s ease-in-out;
      z-index: 9;
    }
  
    nav.show {
      display: flex;
      opacity: 1;
    }
  
    nav .links {
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 15px;
      margin-top: 30vh;
    }
  
    nav a {
      color: #000;
    }
  }
  