   /* EIR page components not on the FOI page. Shared layout comes from
      foi-agent.css through the .foi-page wrapper. */

   /* rules table */
   .eir-page .rules {
     margin: 40px 0 0;
     border-top: 1px solid var(--rule);
   }
   .eir-page .rules .hd,
   .eir-page .rules .rw {
     display: grid;
     grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
     gap: 48px;
   }
   .eir-page .rules .hd {
     padding: 16px 0;
     border-bottom: 1px solid var(--rule);
     color: var(--accent);
   }
   .eir-page .rules .hd .cap {
     font-size: 18px;
   }
   .eir-page .rules .rw {
     padding: 26px 0 28px;
     border-bottom: 1px solid var(--rule);
   }
   .eir-page .rules .rw h3 {
     font-size: 20px;
     font-weight: 600;
     line-height: 1.3;
     color: var(--ink);
     margin: 0 0 8px;
     letter-spacing: -0.005em;
   }
   .eir-page .rules .rw p {
     margin: 0;
     font-size: 16px;
   }
   .eir-page .rules .rw .do {
     color: var(--ink);
   }

   /* request journey */
   .eir-page .journey {
     display: grid;
     grid-template-columns: repeat(auto-fit, minmax(min(320px, 100%), 1fr));
     gap: 28px;
     margin: 40px 0 0;
   }
   /* styles.css has a global .phase that centres text; this one is left-aligned */
   .eir-page .phase {
     text-align: left;
     background: #fff;
     border: 1px solid var(--rule);
     padding: 28px 30px 10px;
   }
   .eir-page .phase > .cap {
     color: var(--accent);
     display: block;
     margin: 0 0 6px;
     font-size: 18px;
   }
   .eir-page .phase > .where {
     display: block;
     font-size: 14px;
     color: var(--muted);
     margin: 0 0 20px;
   }
   .eir-page .phase ol {
     list-style: none;
     margin: 0;
     padding: 0;
   }
   .eir-page .phase li {
     display: grid;
     grid-template-columns: 40px minmax(0, 1fr);
     gap: 16px;
     position: relative;
     padding: 0 0 24px;
   }
   .eir-page .phase li:not(:last-child)::before {
     content: "";
     position: absolute;
     left: 19px;
     top: 40px;
     bottom: 0;
     width: 2px;
     background: var(--rule);
   }
   .eir-page .phase .n {
     width: 40px;
     height: 40px;
     border-radius: 50%;
     background: var(--navy);
     color: #fff;
     display: flex;
     align-items: center;
     justify-content: center;
     font-weight: 600;
     font-size: 15px;
   }
   .eir-page .phase li b {
     display: block;
     color: var(--ink);
     font-weight: 600;
     font-size: 17px;
     margin: 7px 0 4px;
   }
   .eir-page .phase li div > span {
     display: block;
     font-size: 15.5px;
   }

   /* runs where FOI runs */
   .eir-page .split {
     display: grid;
     grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
     gap: 56px;
     align-items: start;
   }
   .eir-page .split h2 {
     margin: 0;
   }

   @media (max-width: 860px) {
     .eir-page .split {
       grid-template-columns: 1fr;
       gap: 18px;
     }
   }
   @media (max-width: 760px) {
     .eir-page .rules .hd {
       display: none;
     }
     .eir-page .rules .rw {
       grid-template-columns: 1fr;
       gap: 12px;
     }
   }
