.page-cta {
  isolation: isolate;
  display: grid;
  align-items: center;
  min-height: 440px;
  background: #fff;
  color: var(--color-hero-ink);
  --focus: var(--color-brand-dark);
}

.page-cta__media,
.page-cta::after { position: absolute; inset: 0; pointer-events: none; }
.page-cta__media { z-index: -2; }
.page-cta__image { width: 100%; height: 100%; object-fit: cover; object-position: center 60%; }
.page-cta::after { content: ''; z-index: -1; background: linear-gradient(90deg, #fffffff2 0%, #ffffffb3 42%, #ffffff00 76%); }
.page-cta__inner { display: grid; grid-template-columns: minmax(0, 1fr); gap: 22px; padding-block: clamp(64px, 7vw, 112px); }
.page-cta__inner > * { grid-column: 1; max-width: 65%; }
.page-cta__title { font-size: clamp(28px, 3vw, 54px); line-height: 1.45; letter-spacing: .02em; word-break: auto-phrase; text-wrap: balance; }
.page-cta__body { color: inherit; font-weight: 500; line-height: 1.85; letter-spacing: .06em; text-wrap: pretty; }
.page-cta__button { min-width: 0; width: clamp(220px, 21vw, 350px); min-height: 58px; margin-top: 16px; font-size: clamp(17px, 1.4vw, 26px); justify-content: space-between; border-color: #071c2c45; }
.page-cta__button .arrow { color: var(--color-brand-dark); flex-shrink: 0; }

@media (max-width: 1023px) {
  .page-cta__inner > * { max-width: 85%; }
  .page-cta__image { object-position: 64% center; }
  .page-cta__inner { padding-block: 54px; }
}

@media (max-width: 599px) {
  .page-cta__inner > * { max-width: 100%; }
  .page-cta__title { font-size: clamp(20px, 5.3vw, 25px); word-break: normal; }
  .page-cta__body { font-size: 14px; }
  .page-cta__button { width: min(100%, 260px); font-size: 20px; }
  .page-cta::after { background: linear-gradient(110deg, #fffffff2 0%, #ffffffb3 60%, #ffffff00); }
}
