
    html, body { height: 100%; }
    body { display: flex; flex-direction: column; }
    main { flex: 1 0 auto; }
    footer { flex-shrink: 0; }
    a { text-decoration: none !important; }

    section { padding-top: 30px; padding-bottom: 30px; }

    .bg-primary-soft { background-color: rgba(4,56,84,0.06); }
    .border-primary-soft { border-color: rgba(4,56,84,0.15) !important; }

    .step-number {
      width: 36px; height: 36px; border-radius: 50%;
      background-color: rgb(4,56,84); color: #fff;
      display: inline-flex; align-items: center; justify-content: center;
      font-weight: 600; margin-right: 10px; flex-shrink: 0;
    }

    .badge-pill { border-radius: 999px; }

    .icon-dot {
      width: 8px; height: 8px; border-radius: 50%;
      background-color: rgb(4,56,84);
      display: inline-block; margin-right: 6px;
    }
  