.site-skip-link {
      position: fixed;
      z-index: 1000;
      inset: 10px auto auto 10px;
      padding: 10px 14px;
      border: 2px solid var(--color-accent);
      background: var(--color-surface);
      color: var(--color-primary);
      font-weight: 700;
      transform: translateY(-160%);
    }
    .site-skip-link:focus { transform: translateY(0); }

    .site-header {
      position: sticky;
      z-index: 50;
      top: 0;
      border-bottom: 1px solid var(--color-border);
      background: color-mix(in srgb, var(--color-surface) 96%, transparent);
      backdrop-filter: blur(12px);
    }
    .site-header__bar {
      min-height: 72px;
      display: flex;
      align-items: center;
      gap: 24px;
    }
    .site-brand {
      display: inline-flex;
      align-items: center;
      gap: 11px;
      min-width: 220px;
      color: var(--color-primary);
      font-family: var(--font-heading);
      font-size: 1rem;
      font-weight: 700;
      line-height: 1.2;
    }
    .site-brand__mark {
      position: relative;
      flex: 0 0 34px;
      width: 34px;
      height: 34px;
      border: 2px solid var(--color-primary);
    }
    .site-brand__mark::before,
    .site-brand__mark::after {
      content: "";
      position: absolute;
      left: 6px;
      right: 6px;
      height: 2px;
      background: var(--color-accent);
      transform: skewX(-24deg);
    }
    .site-brand__mark::before { top: 10px; }
    .site-brand__mark::after { bottom: 10px; }
    .site-nav {
      display: flex;
      align-items: stretch;
      justify-content: flex-end;
      gap: 4px;
      margin-left: auto;
    }
    .site-nav a {
      position: relative;
      display: inline-flex;
      align-items: center;
      min-height: 44px;
      padding: 4px 10px;
      color: var(--color-muted);
      font-size: .87rem;
      font-weight: 650;
    }
    .site-nav a:hover,
    .site-nav a:focus-visible { color: var(--color-primary); }
    .site-nav a[aria-current="page"] {
      color: var(--color-primary);
      background: var(--color-surface2);
      box-shadow: inset 0 -3px 0 var(--color-accent);
      font-weight: 800;
    }
    .site-nav a:focus-visible,
    .site-language-switch :is(a, button):focus-visible,
    .site-menu__toggle:focus-visible {
      outline: 3px solid var(--color-accent);
      outline-offset: 2px;
    }
    .site-language-switch {
      display: flex;
      align-items: center;
      gap: 5px;
      min-height: 38px;
      padding-left: 12px;
      border-left: 1px solid var(--color-border);
    }
    .site-language-switch__current,
    .site-language-switch__link {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 34px;
      padding: 5px 9px;
      border: 1px solid var(--color-border);
      color: var(--color-primary);
      background: var(--color-surface);
      font-size: .78rem;
      font-weight: 750;
    }
    .site-language-switch__link:hover,
    .site-language-switch__link[aria-current="page"],
    .site-language-switch__current[aria-current="page"] {
      border-color: var(--color-accent);
      color: var(--color-accent);
    }
    .site-menu { display: none; margin-left: auto; }
    .site-menu__toggle {
      display: inline-flex;
      align-items: center;
      gap: 9px;
      min-height: 44px;
      padding: 8px 12px;
      border: 1px solid var(--color-border);
      color: var(--color-primary);
      background: var(--color-surface);
      font-weight: 750;
      cursor: pointer;
      list-style: none;
    }
    .site-menu__toggle::-webkit-details-marker { display: none; }
    .site-menu__icon,
    .site-menu__icon::before,
    .site-menu__icon::after {
      display: block;
      width: 20px;
      height: 2px;
      background: var(--color-primary);
    }
    .site-menu__icon { position: relative; }
    .site-menu__icon::before,
    .site-menu__icon::after { content: ""; position: absolute; left: 0; }
    .site-menu__icon::before { top: -6px; }
    .site-menu__icon::after { top: 6px; }
    .site-menu[open] .site-menu__icon { background: transparent; }
    .site-menu[open] .site-menu__icon::before { top: 0; transform: rotate(45deg); }
    .site-menu[open] .site-menu__icon::after { top: 0; transform: rotate(-45deg); }
    .site-menu__panel {
      position: absolute;
      inset: 72px 0 auto;
      padding: 16px 20px 22px;
      border-bottom: 1px solid var(--color-border);
      background: var(--color-surface);
    }
    .site-menu__nav { display: grid; }
    .site-menu__nav a {
      padding: 13px 4px;
      border-bottom: 1px solid var(--color-border);
      color: var(--color-primary);
      font-weight: 700;
    }
    .site-menu__nav a[aria-current="page"] {
      padding-left: 12px;
      border-left: 3px solid var(--color-accent);
      background: var(--color-surface2);
    }
    .site-menu__panel .site-language-switch {
      margin-top: 16px;
      padding: 0;
      border-left: 0;
    }

    .site-footer {
      border-top: 1px solid color-mix(in srgb, var(--color-border) 48%, transparent);
      background: var(--color-primary);
      color: var(--color-primary-contrast);
    }
    .site-footer__main {
      display: grid;
      grid-template-columns: minmax(220px, .8fr) minmax(0, 1.2fr);
      gap: 52px;
      padding-block: 48px 34px;
    }
    .site-footer .site-brand { color: var(--color-primary-contrast); }
    .site-footer .site-brand__mark { border-color: var(--color-primary-contrast); }
    .site-footer__nav {
      display: grid;
      grid-template-columns: repeat(3, minmax(120px, 1fr));
      gap: 8px 22px;
    }
    .site-footer__nav a {
      padding: 7px 0;
      color: color-mix(in srgb, var(--color-primary-contrast) 80%, var(--color-primary));
      font-size: .9rem;
    }
    .site-footer__nav a:hover,
    .site-footer__nav a:focus-visible,
    .site-footer__nav a[aria-current="page"] { color: var(--color-primary-contrast); }
    .site-footer__nav a[aria-current="page"] { text-decoration: underline 2px var(--color-accent); text-underline-offset: 5px; }
    .site-footer__bottom {
      min-height: 60px;
      display: flex;
      align-items: center;
      border-top: 1px solid color-mix(in srgb, var(--color-primary-contrast) 18%, transparent);
      color: color-mix(in srgb, var(--color-primary-contrast) 68%, var(--color-primary));
      font-size: .82rem;
    }

    @media (max-width: 1080px) {
      .site-nav,
      .site-header__bar > .site-language-switch { display: none; }
      .site-menu { display: block; }
    }
    @media (max-width: 700px) {
      .site-header__bar { min-height: 64px; }
      .site-brand { min-width: 0; max-width: calc(100% - 96px); }
      .site-menu__panel { inset-block-start: 64px; }
      .site-footer__main { grid-template-columns: 1fr; gap: 30px; }
      .site-footer__nav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    }