    body {
      opacity: 0;
      transition: opacity 0.5s ease;
    }
    body.loaded {
      opacity: 1;
    }
    .nav-height {
      height: 64px;
    }
    :focus-visible { outline: 3px solid #2563eb; outline-offset: 2px; }
    @keyframes badgeFloat {
      0%,100% { transform: translateY(0) }
      50%     { transform: translateY(-3px) }
    }
    .badge-anim {
      animation: badgeFloat 3s ease-in-out infinite;
      will-change: transform;
    }

    .faq-panel {
      max-height: 0;
      opacity: 0;
      overflow: hidden;
      transition: max-height .35s ease, opacity .35s ease;
    }
    .faq-panel.open {
      opacity: 1;
      max-height: 800px;
    }

    .no-scroll { overflow: hidden; }

    header, section { scroll-margin-top: 80px; }

    @media (max-width: 640px) {
      table th, table td { white-space: nowrap; }
    }

    .nav-height { height: 64px; }

    .badge {
      right: 1%;
      bottom: -0.9rem;
    }
    .img-correct {
      margin-top: 14px;
    }
      @media (max-width: 640px) {
          .img-correct{
          margin-top: unset;
          margin-right: 3%;
      }
    }
    #loader {
      position: fixed;
      inset: 0;
      background: #fff;
      z-index: 9999;
    }
    #loader.hidden {
      opacity: 0;
      visibility: hidden;
      transition: opacity 0.3s ease;
    }