.site-header {
  background: rgba(244, 245, 239, .94);
  border-bottom-color: rgba(16, 32, 26, .09);
  backdrop-filter: blur(14px);
}

@media (min-width: 1081px) {
  .site-header__inner {
    min-height: 78px;
    gap: clamp(24px, 3vw, 42px);
  }

  .site-brand-wrap {
    flex: 0 0 auto;
  }

  .etb-nav {
    flex: 1;
    min-width: 0;
    justify-content: space-between;
    gap: clamp(20px, 2vw, 32px);
  }

  .etb-nav__list {
    flex: 1;
    justify-content: center;
    gap: clamp(18px, 2vw, 30px);
  }

  .etb-nav__list > li > a {
    position: relative;
    display: flex;
    min-height: 78px;
    align-items: center;
    white-space: nowrap;
    line-height: 1.2;
    transition: color .2s ease;
  }

  .etb-nav__list > li > a::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 16px;
    left: 0;
    height: 2px;
    border-radius: 999px;
    background: var(--lime-dark, #a9e12d);
    transform: scaleX(0);
    transform-origin: center;
    transition: transform .2s ease;
  }

  .etb-nav__list > li > a:hover::after,
  .etb-nav__list > .current-menu-item > a::after {
    transform: scaleX(1);
  }

  .etb-nav > .button.button--small {
    flex: 0 0 auto;
    min-height: 44px;
    padding: 10px 20px;
    white-space: nowrap;
    box-shadow: 0 10px 24px rgba(16, 32, 26, .12);
  }
}

@media (min-width: 1081px) and (max-width: 1240px) {
  .site-header__inner {
    gap: 22px;
  }

  .etb-nav {
    gap: 18px;
  }

  .etb-nav__list {
    gap: 16px;
  }

  .etb-nav__list a {
    font-size: 13px;
  }

  .etb-nav > .button.button--small {
    padding-inline: 16px;
  }
}

/* The directory adds two direct destinations without turning the header into
   a second row. Keep the desktop rhythm compact before switching to mobile. */
@media (min-width: 1081px) and (max-width: 1480px) {
  .site-header__inner {
    gap: 16px;
  }

  .etb-nav,
  .etb-nav__list {
    gap: 12px;
  }

  .etb-nav__list > li > a {
    font-size: 12.5px;
  }

  .etb-nav > .button.button--small {
    padding-inline: 14px;
    font-size: 12.5px;
  }
}

@media (max-width: 1080px) {
  .nav-toggle {
    display: block;
  }

  .etb-nav {
    position: fixed;
    inset: 82px 0 0;
    display: none;
    overflow-y: auto;
    align-items: stretch;
    flex-direction: column;
    gap: 24px;
    padding: 28px max(20px, calc((100vw - 1040px) / 2));
    background: var(--paper, #f4f5ef);
  }

  .etb-nav.is-open {
    display: flex;
  }

  .etb-nav__list {
    align-items: stretch;
    flex-direction: column;
    gap: 0;
  }

  .etb-nav__list a {
    display: block;
    padding: 15px 0;
    border-bottom: 1px solid var(--line, rgba(16, 32, 26, .15));
    font-size: 19px;
    white-space: nowrap;
  }

  .etb-nav > .button.button--small {
    align-self: flex-start;
    min-height: 46px;
    padding: 10px 20px;
    white-space: nowrap;
  }
}

@media (max-width: 760px) {
  .etb-nav {
    inset: 70px 0 0;
  }
}
