/* Canvas ribbon flow */
.ribbon-stage {
  position: relative;
  display: grid;
  min-height: 78vh;
  overflow: hidden;
  background: #111315;
  color: #f7f2e8;
}

.ribbon-canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.ribbon-copy {
  position: relative;
  z-index: 2;
  display: grid;
  width: min(1180px, calc(100% - 32px));
  min-height: 78vh;
  align-content: end;
  margin: 0 auto;
  padding: clamp(42px, 8vw, 96px) 0;
}

.ribbon-copy h1 {
  max-width: 760px;
  color: #f7f2e8;
}

.ribbon-copy p {
  max-width: 620px;
  color: rgba(247, 242, 232, 0.74);
}

.ribbon-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 22px;
}
