.about-hero {
  background: var(--ink);
  color: #fff;
  padding: clamp(4rem, 8vw, 7.5rem) max(1.25rem, calc((100% - var(--max)) / 2));
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(300px, .7fr);
  gap: clamp(2.5rem, 7vw, 7rem);
  align-items: end;
}

.about-hero .eyebrow,
.about-source .eyebrow,
.about-contact .eyebrow { color: var(--yellow); }

.about-hero h1 {
  font-size: clamp(2.7rem, 6.4vw, 5.6rem);
  margin-top: 0;
}

.about-lede {
  max-width: 760px;
  color: #d1d8e2;
  font-size: clamp(1.08rem, 2vw, 1.32rem);
}

.about-actions {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  flex-wrap: wrap;
  margin-top: 2rem;
}

.about-actions .primary-link { padding: .8rem 1.1rem; }
.about-actions > a:not(.primary-link) { color: #fff; font-weight: 750; }

.about-stats {
  margin: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  border: 1px solid #415069;
}

.about-stats div {
  padding: 1.1rem;
  border-right: 1px solid #415069;
  border-bottom: 1px solid #415069;
}

.about-stats div:nth-child(2n) { border-right: 0; }
.about-stats div:nth-last-child(-n + 2) { border-bottom: 0; }
.about-stats dt { color: #aeb8c7; font-size: .76rem; text-transform: uppercase; letter-spacing: .08em; }
.about-stats dd { color: #fff; font-size: 1.55rem; font-weight: 900; margin-top: .2rem; }

.about-section {
  width: min(var(--max), calc(100% - 2.5rem));
  margin-inline: auto;
  padding: 5rem 0;
}

.about-story,
.about-machine {
  display: grid;
  grid-template-columns: minmax(260px, .8fr) minmax(0, 1.2fr);
  gap: clamp(2rem, 7vw, 7rem);
}

.about-story h2,
.about-machine h2 { margin: .2rem 0; font-size: clamp(2rem, 4vw, 3.5rem); }
.about-story > div:last-child p,
.about-machine > div:last-child p { font-size: 1.1rem; }

.about-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
.about-cards article { background: #fff; border-top: 5px solid var(--yellow); padding: 1.5rem; min-height: 230px; }
.about-cards article > span { font: 900 .78rem ui-monospace, monospace; color: #8a6500; letter-spacing: .08em; }
.about-cards h3 { font-size: 1.3rem; margin: 2.8rem 0 .6rem; }
.about-cards p { color: var(--muted); margin-bottom: 0; }

.about-source {
  background: var(--ink2);
  color: #fff;
  padding: 4.5rem max(1.25rem, calc((100% - var(--max)) / 2));
  display: grid;
  grid-template-columns: 1.15fr .85fr;
  gap: clamp(2rem, 7vw, 7rem);
  align-items: start;
}

.about-source h2,
.about-contact h2 { font-size: clamp(2rem, 4vw, 3.4rem); margin: .2rem 0 1rem; }
.about-source p { color: #d2d8e1; font-size: 1.08rem; }
.about-source-links { display: grid; border-top: 1px solid #526077; }
.about-source-links a { padding: 1rem 0; border-bottom: 1px solid #526077; font-weight: 750; text-decoration: none; }
.about-source-links a:hover { text-decoration: underline; text-decoration-color: var(--yellow); text-decoration-thickness: 3px; }

.about-machine { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.about-faq { padding-top: 4rem; }
.faq-list { border-top: 1px solid var(--line); }
.faq-list details { background: #fff; border-bottom: 1px solid var(--line); padding: 0 1.25rem; }
.faq-list summary { cursor: pointer; font-weight: 850; font-size: 1.08rem; padding: 1.25rem 2.5rem 1.25rem 0; }
.faq-list p { max-width: 850px; color: var(--muted); padding: 0 0 1.25rem; margin: 0; }

.about-contact {
  width: min(var(--max), calc(100% - 2.5rem));
  margin: 0 auto 2rem;
  background: var(--ink);
  color: #fff;
  padding: 2.25rem;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 2rem;
  align-items: center;
}

.about-contact p { color: #cbd3de; max-width: 720px; }
.about-contact > a { background: var(--yellow); color: var(--ink); padding: .9rem 1.15rem; text-decoration: none; font-weight: 900; white-space: nowrap; }

@media (max-width: 820px) {
  .about-hero,
  .about-story,
  .about-machine,
  .about-source,
  .about-contact { grid-template-columns: 1fr; }

  .about-cards { grid-template-columns: 1fr; }
  .about-cards article { min-height: 0; }
  .about-cards h3 { margin-top: 1.5rem; }
  .about-contact > a { justify-self: start; white-space: normal; }
}

@media (max-width: 430px) {
  .about-stats { grid-template-columns: 1fr; }
  .about-stats div { border-right: 0; }
  .about-stats div:nth-last-child(-n + 2) { border-bottom: 1px solid #415069; }
  .about-stats div:last-child { border-bottom: 0; }
}
