@layer overrides {
  html body .site-header {
    position: sticky;
    inset-block-start: 1rem;
    inline-size: min(calc(100% - 2rem), 85rem);
    margin: 1.5rem auto 0;
    background: #fff !important;
    border: 0 !important;
    border-radius: 1rem;
    box-shadow: 7px 8px 0 rgba(26, 47, 80, 0.22);
    backdrop-filter: none;
  }

  html body .site-header .header-inner {
    inline-size: 100%;
    min-block-size: 7.15rem;
    padding: 1rem 1.75rem;
  }

  html body .site-header .brand {
    flex: 0 0 auto;
  }

  html body .site-header .brand img {
    inline-size: 5rem;
    block-size: 5rem;
    object-fit: contain;
    filter: none !important;
  }

  .site-header .nav-trigger {
    color: #1a2f50 !important;
    padding: 0.7rem 0.8rem;
    font-size: 1.05rem;
    font-weight: 800;
    border-radius: 0.5rem;
  }

  .site-header .nav-list {
    gap: 0.35rem;
  }

  .site-header .nav-trigger:hover,
  .site-header .nav-trigger[aria-expanded="true"] {
    background-color: transparent !important;
  }

  .site-header .nav-trigger::after {
    inline-size: 0.58rem;
    block-size: 0.58rem;
    margin-inline-start: 0.25rem;
    border-width: 0 2.5px 2.5px 0;
    border-color: #81cfa9;
  }

  .site-header .nav-panel {
    inset-block-start: calc(100% + 1.1rem);
    min-inline-size: 17.15rem;
    padding: 0.85rem 0.75rem;
    gap: 0;
    background: #fff;
    border: 0;
    border-radius: 0.5rem;
    box-shadow: 0 18px 34px rgba(26, 47, 80, 0.18);
  }

  .site-header .nav-group:nth-child(2) .nav-panel {
    min-inline-size: 16.3rem;
  }

  .site-header .nav-group:nth-child(3) .nav-panel {
    min-inline-size: 8.2rem;
  }

  .site-header .nav-panel a {
    padding: 0.36rem 0.7rem;
    color: #1a3763;
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.55;
    white-space: nowrap;
  }

  .site-header .nav-panel a::before {
    content: none;
  }

  .site-header .nav-panel a:hover,
  .site-header .nav-panel a[aria-current="page"] {
    color: #1a2f50;
    background: #eef8f3;
  }

  .site-header .btn-primary {
    background-color: #81c3a5 !important;
    color: #1a2f50 !important;
    min-block-size: 3.35rem;
    padding-inline: 1.2rem;
    border: 0 !important;
    box-shadow: 4px 5px 0 #1a3763 !important;
    font-weight: 800;
    border-radius: 8px;
    text-transform: uppercase;
  }

  .site-header .btn-primary:hover {
    transform: translate(1px, 1px);
    box-shadow: 2px 2px 0 #1a2f50 !important;
  }

  .site-header .burger span {
    background-color: #1a2f50 !important;
  }

  .mobile-panel {
    background: #fff;
    border-color: rgba(26, 47, 80, 0.16);
  }

  .mobile-panel .brand img {
    inline-size: 4.5rem;
    block-size: 4.5rem;
    object-fit: contain;
  }

  .mobile-close,
  .mobile-panel .m-toggle {
    color: #1a2f50 !important;
  }

  .mobile-panel .m-toggle {
    border-color: rgba(26, 47, 80, 0.12);
  }

  .mobile-panel .m-toggle::after {
    color: #81c3a5;
  }

  .mobile-panel .m-links a {
    color: #1a3763;
  }

  .mobile-panel .m-links a:hover,
  .mobile-panel .m-links a[aria-current="page"] {
    color: #1a2f50;
    background: #eef8f3;
  }

  .mobile-panel .btn-primary {
    color: #1a2f50;
    background: #81c3a5;
    box-shadow: 4px 5px 0 #1a3763;
  }

  @media (min-width: 64rem) {
    .primary-nav {
      display: block;
    }
    .header-mobile-only {
      display: none;
    }
  }

  @media (max-width: 63.99rem) {
    .header-desktop-only {
      display: none;
    }

    html body .site-header {
      inset-block-start: 0.75rem;
      margin-block-start: 0.75rem;
    }

    html body .site-header .header-inner {
      min-block-size: 4.8rem;
      padding: 0.45rem 0.85rem;
    }

    html body .site-header .brand img {
      inline-size: 4rem;
      block-size: 4rem;
    }

    .site-header .burger {
      border: 2px solid #1a2f50;
      border-radius: 0.5rem;
    }
  }

  @container (min-width: 34rem) {
    .cq-split {
      grid-template-columns: repeat(2, 1fr);
    }
  }

  .has-container {
    container-type: inline-size;
  }

  .region[data-defer="true"] {
    content-visibility: auto;
    contain-intrinsic-size: auto 640px;
  }

  @media (prefers-contrast: more) {
    :root {
      --muted: #d5deec;
      --muted-2: #b7c3d8;
      --line: #43567a;
    }
    .btn-ghost,
    .feature,
    .node,
    .panel {
      border-color: var(--muted-2);
    }
  }

  @media (max-width: 47.99rem) {
    .footer-note {
      flex-direction: column;
      align-items: flex-start;
    }
    .region {
      padding-block: var(--space-xl);
    }
    .viewport-frame {
      transform: none;
    }
  }

  @media (max-width: 30rem) {
    .hero-cta .btn,
    .cookie-actions .btn {
      inline-size: 100%;
    }
    .ledger-value {
      font-size: var(--step-2);
    }
  }

  @media print {
    .site-header,
    .site-footer,
    .cookie,
    .to-top,
    .mobile-scrim,
    .mobile-panel,
    .hero::before,
    .skip-link {
      display: none !important;
    }
    body {
      background: #fff;
      color: #000;
    }
    .prose p,
    .prose li,
    .lede {
      color: #000;
      max-inline-size: none;
    }
    a {
      color: #000;
      text-decoration: underline;
    }
    .region {
      padding-block: 1rem;
      border: 0 !important;
    }
  }
}
