/* Shared header only. Section headers keep their normal document flow. */
:root { --nav-height: 84px; }
.navbar {
  position: fixed;
  inset: 0 0 auto;
  width: 100%;
  min-height: var(--nav-height);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 10px 4.5%;
  background: rgba(248,245,238,.94);
  border-bottom: 1px solid rgba(76,83,57,.12);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  z-index: 1000;
  transition: background .25s, box-shadow .25s;
}
.navbar.scrolled { background: rgba(248,245,238,.98); box-shadow: 0 6px 22px rgba(27,31,24,.07); }
.navbar .logo { flex: 0 0 auto; padding: 0; margin: 0; }
.navbar .logo-link { display: flex; align-items: center; text-decoration: none; }
.navbar .logo img { display: block; width: 72px; height: 63px; object-fit: contain; max-width: 72px; }
.navbar .nav-links { display: flex; align-items: center; gap: clamp(14px,1.6vw,24px); min-width: 0; flex: 0 1 auto; }
.navbar .nav-links a, .navbar .nav-dropdown-toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 44px;
  padding: 8px 0;
  margin: 0;
  font: inherit;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: .75px;
  text-decoration: none;
  color: #30382b;
  border: 0;
  background: transparent;
  cursor: pointer;
  position: relative;
  white-space: nowrap;
  transition: color .2s;
}
.navbar .nav-links > a::after, .navbar .nav-dropdown-toggle::after {
  content: '';
  position: absolute;
  inset: auto 0 4px;
  height: 1px;
  background: var(--verde-escuro);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .25s;
}
.navbar .nav-links > a:hover::after, .navbar .nav-links > a[aria-current="page"]::after,
.navbar .nav-dropdown.open .nav-dropdown-toggle::after,
.navbar .nav-dropdown[data-current-child="true"] .nav-dropdown-toggle::after { transform: scaleX(1); }
.navbar .nav-highlight { color: var(--verde-escuro); }
.navbar .nav-item { position: relative; }
.navbar .nav-dropdown-arrow { font-size: 11px; transition: transform .25s; }
.navbar .nav-dropdown.open .nav-dropdown-arrow { transform: rotate(180deg); }
.navbar .nav-dropdown-menu {
  position: absolute;
  top: calc(100% + 8px);
  left: -16px;
  width: 260px;
  max-width: calc(100vw - 40px);
  max-height: calc(100dvh - var(--nav-height) - 24px);
  overflow-y: auto;
  overscroll-behavior: contain;
  min-width: 0;
  display: flex;
  flex-direction: column;
  padding: 12px;
  border: 1px solid rgba(76,83,57,.14);
  border-radius: 12px;
  background: #f8f5ee;
  box-shadow: 0 16px 36px rgba(27,31,24,.12);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(6px);
  transition: opacity .2s, transform .2s, visibility .2s;
}
.navbar .nav-dropdown.open .nav-dropdown-menu { opacity: 1; visibility: visible; pointer-events: auto; transform: none; }
.navbar .nav-dropdown-menu a { justify-content: flex-start; padding: 12px; font-size: 12px; letter-spacing: 0; white-space: normal; overflow-wrap: anywhere; border-radius: 6px; }
.navbar .nav-dropdown-menu a:hover, .navbar .nav-dropdown-menu a[aria-current="page"] { background: rgba(124,133,95,.12); }
.navbar .nav-toggle {
  display: none;
  width: 46px;
  height: 46px;
  padding: 0;
  border: 1px solid rgba(76,83,57,.18);
  border-radius: 12px;
  background: #f8f5ee;
  color: #30382b;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
}
.nav-toggle .ham { width: 43px; height: 43px; transition: transform 400ms cubic-bezier(.65,0,.35,1); }
.nav-toggle .hamRotate.active { transform: rotate(45deg); }
.nav-toggle .line { fill: none; stroke: currentColor; stroke-width: 5; stroke-linecap: round; transition: stroke-dasharray 400ms, stroke-dashoffset 400ms; }
.nav-toggle .ham4 .top { stroke-dasharray: 40 121; }
.nav-toggle .ham4 .bottom { stroke-dasharray: 40 121; }
.nav-toggle .ham4.active .top { stroke-dashoffset: -68px; }
.nav-toggle .ham4.active .bottom { stroke-dashoffset: -68px; }
.navbar .nav-backdrop { display: none; }
.skip-link { position: fixed; top: 8px; left: 16px; transform: translateY(-160%); z-index: 6000; padding: 12px 18px; color: #fff; background: #30382b; border-radius: 4px; text-decoration: none; }
.skip-link:focus { transform: none; }
@media (min-width: 1440px) { .navbar .nav-links a, .navbar .nav-dropdown-toggle { font-size: 12px; } }
@media (max-width: 1280px) {
  :root { --nav-height: 76px; }
  .navbar { padding: 6px 24px; backdrop-filter: none; -webkit-backdrop-filter: none; }
  .navbar .logo img { width: 70px; height: 63px; max-width: 70px; }
  .navbar .nav-toggle { display: flex; position: relative; flex: 0 0 auto; z-index: 1003; transition: color .25s, background .25s; }
  .navbar .nav-links {
    position: fixed;
    inset: 0 0 0 auto;
    width: min(390px,calc(100vw - 28px));
    height: 100vh;
    height: 100dvh;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: max(94px,calc(env(safe-area-inset-top) + 80px)) 28px max(32px,env(safe-area-inset-bottom));
    background: #f8f5ee;
    border-left: 1px solid rgba(76,83,57,.16);
    box-shadow: -20px 0 50px rgba(27,31,24,.1);
    transform: translateX(105%);
    visibility: hidden;
    pointer-events: none;
    transition: transform .32s cubic-bezier(.22,.8,.24,1), visibility .32s;
    z-index: 1002;
  }
  .navbar .nav-links > *, .navbar .nav-dropdown-menu > * { flex-shrink: 0; }
  .navbar .nav-links::before { content: 'REGIÃO DOS LAGOS'; font-size: 9px; font-weight: 600; letter-spacing: 2px; color: #727763; padding-bottom: 22px; }
  .navbar .nav-links > a, .navbar .nav-dropdown-toggle { width: 100%; min-height: 54px; justify-content: flex-start; padding: 16px 0; font-size: 12px; letter-spacing: .8px; white-space: normal; border-bottom: 1px solid rgba(76,83,57,.14); }
  .navbar .nav-links > a::after, .navbar .nav-dropdown-toggle::after { display: none; }
  .navbar .nav-links > a[aria-current="page"] { color: #55633c; font-weight: 700; }
  .navbar .nav-dropdown-toggle { justify-content: space-between; }
  .navbar .nav-dropdown-menu { position: static; display: none; width: 100%; max-width: none; max-height: none; overflow: visible; min-width: 0; padding: 8px 0 12px 14px; border: 0; border-radius: 0; background: transparent; box-shadow: none; transform: none; transition: none; }
  .navbar .nav-dropdown.open .nav-dropdown-menu { display: flex; }
  .navbar .nav-dropdown-menu a { min-height: 44px; }
  .navbar .nav-dropdown[data-current-child="true"] .nav-dropdown-toggle { color: #55633c; font-weight: 700; }
  .navbar .nav-backdrop { display: block; position: fixed; inset: 0; background: rgba(17,25,21,.48); opacity: 0; visibility: hidden; pointer-events: none; z-index: 1001; transition: opacity .32s, visibility .32s; }
  body.menu-open .navbar .nav-links { transform: none; visibility: visible; pointer-events: auto; }
  body.menu-open .navbar .nav-backdrop { opacity: 1; visibility: visible; pointer-events: auto; }
  body.menu-open .navbar .nav-toggle { color: #f8f5ee; background: #30382b; }
  html.menu-open, body.menu-open { overflow: hidden; }
}
@media (max-width: 480px) { .navbar { padding-inline: 20px; } }
