.pilot-page {
  --pilot-blue: #e6edf8;
  color: var(--about-ink);
}

:is(:root[data-theme="dark"], html.dark) .pilot-page { --pilot-blue: #303c51; }

.pilot-intro h1 { font-size: clamp(40px, 5.35vw, 80px); }
.pilot-intro--campus h1 { font-size: clamp(40px, 4.7vw, 70px); }
.pilot-intro__photo { aspect-ratio: 1.28; max-height: 455px; }
.pilot-page .about-link { color: inherit; }
.pilot-page .about-button { box-sizing: border-box; min-height: 56px; }

.pilot-workflow,
.pilot-details { margin-top: clamp(38px, 5vw, 72px); }

.pilot-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  list-style: none;
  margin: 24px 0 0;
  padding: 0;
}

.pilot-steps li {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  gap: 12px;
}

.pilot-steps li + li {
  border-inline-start: 1px solid var(--about-line);
  padding-inline-start: clamp(16px, 2.4vw, 32px);
}

.pilot-steps li:not(:last-child) { padding-inline-end: clamp(16px, 2.4vw, 32px); }
.pilot-steps h3 { font-size: clamp(20px, 1.9vw, 27px); }
.pilot-steps p { margin-top: 10px; }

.pilot-steps span {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: var(--pilot-blue);
  font-weight: 800;
}

.pilot-details {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
  gap: clamp(24px, 4vw, 60px);
  padding-top: clamp(24px, 3.5vw, 50px);
  border-top: 1px solid var(--about-line);
}

.pilot-details h2 { font-size: clamp(28px, 3.3vw, 46px); }
.pilot-details p { margin-top: 14px; }

.pilot-details .pilot-resources {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 22px;
  list-style: none;
  margin-top: 16px;
  padding: 0;
}

.pilot-privacy {
  border-radius: clamp(16px, 2vw, 26px);
  background: var(--pilot-blue);
  padding: clamp(22px, 2.7vw, 38px);
}

.pilot-privacy h2 { font-size: clamp(25px, 2.65vw, 37px); }
.pilot-privacy .about-link { display: inline-block; margin-top: 14px; }

@media (max-width: 768px) {
  .pilot-intro h1 { font-size: clamp(40px, 9.3vw, 67px); }
  .pilot-intro h1 span { display: inline; }
  .pilot-steps, .pilot-details { grid-template-columns: minmax(0, 1fr); }
  .pilot-steps li { padding-block: 16px; }
  .pilot-steps li + li { border-inline-start: 0; border-top: 1px solid var(--about-line); padding-inline-start: 0; }
  .pilot-steps li:not(:last-child) { padding-inline-end: 0; }
}

@media (max-width: 360px) {
  .pilot-page .about-button { padding-inline: 16px; font-size: 15px; }
}
