.delivery-hero,
.delivery-how,
.delivery-boundary,
.delivery-faq,
.delivery-cta {
  border-top: 1px solid var(--line);
  padding: clamp(4rem, 7vw, 7rem) 0;
}

.delivery-hero {
  min-height: min(36rem, calc(100svh - 4.7rem));
  border-top: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.delivery-hero h1 {
  max-width: 14ch;
  margin: 0;
  font-size: clamp(3.2rem, 7vw, 7rem);
  font-weight: 540;
  letter-spacing: -0.055em;
  line-height: 0.96;
}

.delivery-hero > p:last-child {
  max-width: 52rem;
  margin: clamp(1.8rem, 3vw, 2.6rem) 0 0;
  color: var(--muted-fg);
  font-size: clamp(1.05rem, 1.35vw, 1.28rem);
  line-height: 1.62;
}

.delivery-section-heading,
.delivery-boundary,
.delivery-faq,
.delivery-cta {
  display: grid;
  grid-template-columns: minmax(0, 0.85fr) minmax(20rem, 1.15fr);
  gap: clamp(3rem, 8vw, 9rem);
  align-items: start;
}

.delivery-section-heading h2,
.delivery-boundary h2,
.delivery-faq h2,
.delivery-cta h2 {
  max-width: 15ch;
  margin: 0;
  font-size: clamp(2rem, 3.6vw, 3.8rem);
  font-weight: 540;
  letter-spacing: -0.045em;
  line-height: 1.05;
}

.delivery-section-heading > p,
.delivery-boundary > p,
.delivery-cta p {
  max-width: 44rem;
  margin: 0.35rem 0 0;
  color: var(--muted-fg);
  font-size: clamp(1rem, 1.2vw, 1.16rem);
  line-height: 1.65;
}

.delivery-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  margin-top: clamp(2.8rem, 5vw, 4.5rem);
  border: 1px solid var(--line);
  background: var(--line);
}

.delivery-steps article {
  min-height: 18rem;
  padding: clamp(1.5rem, 3vw, 2.5rem);
  background: var(--page-bg);
}

.delivery-steps h3 {
  margin: clamp(2.8rem, 5vw, 4.5rem) 0 0.8rem;
  font-size: clamp(1.15rem, 1.6vw, 1.45rem);
  font-weight: 550;
}

.delivery-steps p,
.delivery-faq article p {
  margin: 0;
  color: var(--muted-fg);
  line-height: 1.6;
}

.delivery-faq > div {
  border-top: 1px solid var(--page-fg);
}

.delivery-faq article {
  border-bottom: 1px solid var(--line);
  padding: 1.5rem 0;
}

.delivery-faq h3 {
  margin: 0 0 0.65rem;
  font-size: clamp(1.05rem, 1.35vw, 1.3rem);
  font-weight: 540;
}

.delivery-cta .primary-link {
  display: inline-flex;
  margin-top: 2rem;
}

@media (max-width: 58rem) {
  .delivery-hero {
    min-height: auto;
    padding-top: 5rem;
    padding-bottom: 5rem;
  }

  .delivery-section-heading,
  .delivery-boundary,
  .delivery-faq,
  .delivery-cta {
    grid-template-columns: 1fr;
    gap: 2.3rem;
  }

  .delivery-steps {
    grid-template-columns: 1fr;
  }

  .delivery-steps article {
    min-height: 0;
  }
}

@media (max-width: 42rem) {
  .delivery-hero h1 {
    max-width: none;
    font-size: clamp(2.8rem, 14vw, 4.4rem);
  }
}
