.terms-hero {
  padding: clamp(6rem, 11vw, 10rem) clamp(1.25rem, 8vw, 8rem);
  background: linear-gradient(125deg, #09090b 0%, #210512 62%, #ff2f92 170%);
  color: #fff;
}

.terms-hero .eyebrow {
  color: #ff2f92;
}

.terms-hero h1 {
  margin-bottom: 1.4rem;
}

.terms-hero > p:not(.eyebrow) {
  max-width: 760px;
  font-size: clamp(1.05rem, 2vw, 1.3rem);
}

.terms-hero small {
  display: block;
  margin-top: 1.5rem;
  color: #d7d3d8;
  font-size: .9rem;
}

.terms-layout {
  display: grid;
  grid-template-columns: minmax(230px, .38fr) minmax(0, 1fr);
  gap: clamp(3rem, 8vw, 7rem);
  align-items: start;
}

.terms-summary {
  position: sticky;
  top: 112px;
  padding: 1.7rem;
  border-radius: 22px;
  background: #fff9f4;
  border-left: 5px solid #ff2f92;
}

.terms-summary p {
  margin-top: 0;
}

.terms-summary a,
.terms-copy a {
  color: #b80f60;
  font-weight: 700;
}

.terms-copy {
  max-width: 900px;
}

.terms-copy section {
  padding: 0 0 2.5rem;
  margin-bottom: 2.5rem;
  border-bottom: 1px solid #dedde2;
}

.terms-copy h2 {
  font-size: clamp(1.7rem, 3vw, 2.6rem);
  line-height: 1.12;
  letter-spacing: -.025em;
  margin-bottom: 1rem;
}

.terms-copy p {
  color: #3d3d44;
}

.terms-contact {
  padding: 2rem !important;
  border: 0 !important;
  border-radius: 24px;
  background: #ff2f92;
}

.terms-contact p {
  color: #0b0b0e;
}

.terms-contact a {
  color: #0b0b0e;
}

@media (max-width: 850px) {
  .terms-layout {
    grid-template-columns: 1fr;
  }

  .terms-summary {
    position: static;
  }
}
