/* RESET */
*,
*::before,
*::after {
    box-sizing: border-box;
}

* {
    margin: 0;
    padding: 0;
}

html {
    scroll-behavior: smooth;
}

body {
    font-family: 'Poppins', sans-serif;
    min-height: 100vh;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}

img, picture, video, canvas, svg {
    display: block;
    max-width: 100%;
}

input, button, textarea, select {
    font: inherit;
}

a {
    color: inherit;
    text-decoration: none;
}

ul, ol {
    list-style: none;
}

/* RESET */

:root{
  --nav-w: 1700px;
  --nav-h: 90px;
  --nav-radius-initial: 14px 14px 0 0;
  --nav-radius-sticky: 0 0 14px 14px;
}

#quem-somos,
#areas,
#contato{
  scroll-margin-top: 70px; /* ajuste: nav-h (90) + folga */
}


.nav-wrap{
  position: relative;
  width: 100%;
}

.navbar{
  height: var(--nav-h);
  max-width: var(--nav-w);
  width: calc(100% - 48px);

  display: flex;
  align-items: center;
  padding: 0 24px;

  background: #e5e5e5;
  border-radius: var(--nav-radius-initial);

  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 0;
  z-index: 900;

  transition: background-color .35s ease,
              border-radius .35s ease,
              box-shadow .35s ease,
              transform .35s ease;
  will-change: top;

}

.navbar__logo img{
  height: 70px;
  width: auto;
  display: block;
}

.nav-toggle{
  display: none;
  margin-left: auto;
  background: transparent;
  border: 0;
  font-size: 28px;
  cursor: pointer;
  color: #111;
}

.nav-menu{
  display: block;
  margin-left: auto;
}

.navbar__list{
  display: flex;
  align-items: center;
  gap: 28px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.navbar__list a{
  text-decoration: none;
  color: #111;
  font-weight: 500;
}

.navbar__icons{
  margin-left: 18px;
  display: flex;
  align-items: center;
  gap: 14px;
}

.navbar__icons .icon{
  width: 25px;
  height: 25px;
}

.navbar.is-sticky{
  position: fixed;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  bottom: auto;
  will-change: transform;

  background: #0f0f0f;
  border-radius: var(--nav-radius-sticky);
}

.navbar.is-sticky .navbar__list a{
  color: #fff;
}

.navbar.is-sticky .nav-toggle{
  color: #fff;
}

.logo,
.icon{
  display: none !important;
}

.logo--dark,
.icon--dark{
  display: block !important;
}

.navbar.is-sticky .logo--dark,
.navbar.is-sticky .icon--dark{
  display: none !important;
}

.navbar.is-sticky .logo--light,
.navbar.is-sticky .icon--light{
  display: block !important;
}

/* MOBILE */
@media (max-width: 900px){
  .navbar{
    height: auto;
    padding: 12px 16px;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
  }

  .navbar__logo img{
    height: 40px;
  }

  .nav-toggle{
    display: block;
  }

  .nav-menu{
    display: none;
    width: 100%;
    margin-left: 0;
  }

  .navbar.is-open .nav-menu{
    display: block;
  }

  .navbar__list{
    flex-direction: column;
    align-items:flex-end;
    gap: 14px;
    width: 100%;
    padding-top: 8px;
  }

  .navbar__icons{
    margin-right: 0;
    margin-left: 0;
    margin-top: 8px;
  }

  .navbar__icons a{
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }
}
