@layer components {
  .rt-header {
    position: sticky;
    top: 0;
    z-index: 40;
    backdrop-filter: blur(14px);
    background: linear-gradient(to bottom, rgba(247, 243, 233, 0.96), rgba(247, 243, 233, 0.92));
    border-bottom: 1px solid rgba(207, 196, 172, 0.7);
  }

  .rt-header__main {
    border-top: 1px solid rgba(207, 196, 172, 0.6);
    background: radial-gradient(circle at top left, #FDFBF5 0, #F7F3E9 45%, #D6E4E0 100%);
  }

  .rt-header__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-4);
    padding-block: var(--space-3);
  }

  .rt-nav {
    display: flex;
    align-items: center;
  }

  .rt-nav__list {
    display: flex;
    align-items: center;
    gap: var(--space-4);
    font-size: var(--font-size-sm);
    letter-spacing: 0.12em;
    text-transform: uppercase;
  }

  .rt-nav__link {
    position: relative;
    padding-block: 0.4rem;
    color: var(--color-text-secondary);
    white-space: nowrap;
  }

  .rt-nav__link::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 1px;
    transform: scaleX(0);
    transform-origin: center;
    background: linear-gradient(90deg, rgba(31, 90, 77, 0.2), rgba(199, 164, 93, 0.9));
    transition: transform var(--transition-base);
  }

  .rt-nav__link:hover::after,
  .rt-nav__link:focus-visible::after {
    transform: scaleX(1);
  }

  .rt-nav__item--accent .rt-nav__link {
    color: #F7F3E9;
  }

  .rt-nav__link--button {
    padding-inline: 1rem;
    padding-block: 0.55rem;
    border-radius: var(--radius-pill);
    background: var(--color-accent-main);
    border: 1px solid rgba(31, 90, 77, 0.5);
    box-shadow: var(--shadow-soft);
  }

  .rt-nav__link--button::after {
    display: none;
  }

  .rt-nav__link--button:hover {
    background-color: #17483E;
  }

  .nav-toggle {
    display: none;
    justify-content: center;
    align-items: center;
    width: 40px;
    height: 40px;
    border-radius: 999px;
    border: 1px solid rgba(207, 196, 172, 0.9);
    background: rgba(247, 243, 233, 0.9);
    cursor: pointer;
    padding: 0;
    gap: 4px;
  }

  .nav-toggle__bar {
    width: 18px;
    height: 2px;
    border-radius: 999px;
    background-color: var(--color-text-primary);
    transition: transform var(--transition-fast), opacity var(--transition-fast);
  }

  .nav-toggle.is-open .nav-toggle__bar:nth-child(1) {
    transform: translateY(4px) rotate(45deg);
  }

  .nav-toggle.is-open .nav-toggle__bar:nth-child(2) {
    opacity: 0;
  }

  .nav-toggle.is-open .nav-toggle__bar:nth-child(3) {
    transform: translateY(-4px) rotate(-45deg);
  }

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

    .rt-nav__list {
      position: absolute;
      inset-inline: 0;
      top: 100%;
      margin-top: 0.25rem;
      flex-direction: column;
      align-items: flex-start;
      gap: 0;
      padding: var(--space-3) var(--space-4) var(--space-4);
      background: #FAF8F2;
      border-bottom: 1px solid rgba(207, 196, 172, 0.9);
      box-shadow: var(--shadow-soft);
      transform-origin: top;
      transform: scaleY(1);
    }

    .rt-header--menu-closed .rt-nav__list {
      display: none;
    }

    .rt-header--menu-open .rt-nav__list {
      display: flex;
    }

    .rt-nav__item {
      width: 100%;
    }

    .rt-nav__link,
    .rt-nav__link--button {
      display: block;
      width: 100%;
      padding-block: 0.75rem;
    }

    .rt-nav__item--accent .rt-nav__link {
      margin-top: 0.25rem;
      text-align: center;
    }
  }
}

ul { list-style: none !important; }
.nav-toggle { flex-direction: column; }