/* process page styles. Shared colors and type are in visual-system.css. */
/* Base layout */

@layer layout {
  .steps-section {
    padding-top: 2rem;
    padding-bottom: 8rem;
    max-width: 950px;
  }
}
@layer components {
  .step-no {
    font-size: 0.72rem;
    letter-spacing: 0.16em;
    font-weight: 650;
    text-transform: uppercase;
  }
  .process-step {
    display: grid;
    grid-template-columns: 75px 1fr 45px;
    gap: 1.1rem;
    align-items: start;
    padding: 1.7rem 0;
    border-top: 1px solid var(--line);
  }
  .process-step:last-child {
    border-bottom: 1px solid var(--line);
  }
  .step-no {
    padding-top: 0.45rem;
    color: var(--blue2);
  }
  .process-step h2 {
    font-size: 1.5rem;
    letter-spacing: 0;
  }
  .process-step p {
    color: var(--muted);
    max-width: 600px;
    margin-top: 0.35rem;
  }
  .step-mark {
    justify-self: end;
    color: var(--lime);
    font-size: 1.5rem;
  }
  .process-teaser {
    padding-top: 2rem;
    padding-bottom: 7rem;
  }
  .process-teaser .section-heading .text-link {
    margin-top: 1.3rem;
  }
}
@layer utilities {
  @media (max-width: 560px) {
    .steps-section {
      padding-top: 1rem;
    }
    .process-step {
      grid-template-columns: 42px 1fr 25px;
      gap: 0.45rem;
      padding: 1.35rem 0;
    }
    .process-step h2 {
      font-size: 1.2rem;
    }
    .process-step p {
      font-size: 0.9rem;
    }
    .step-mark {
      font-size: 1.1rem;
    }
  }
}

/* Current appearance */

.process-step {
  grid-template-columns: 80px 1fr 40px;
  border-color: var(--line);
}
.process-step h2 {
  color: var(--cream);
  letter-spacing: 0;
}
.process-step p {
  color: var(--muted);
}
.step-no {
  color: var(--cream-dim);
}
.step-mark {
  color: var(--cream);
}
.process-teaser {
  padding-bottom: 5rem;
}
@media (max-width: 560px) {
  .process-step {
    grid-template-columns: 42px 1fr 22px;
    gap: 0.5rem;
    padding: 1.2rem 0;
  }
  .process-step h2 {
    font-size: 1.12rem;
  }
  .process-step p {
    font-size: 0.86rem;
  }
}
.step-mark {
  display: none !important;
}
.step-no {
  color: var(--accent) !important;
}

@media (max-width: 700px) {
  .page-hero .process-page-title {
    font-size: clamp(1.7rem, 7.8vw, 3.3rem);
    white-space: nowrap;
    line-height: 1.12;
  }
}
