.tension-section {
  --tension-title-secondary: #9e9e9e;
  background: var(--site-paper);
}

.tension-section .section-label {
  background: rgb(0 110 233 / 10%);
}

.tension-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 460px);
  align-items: center;
  min-height: 453px;
  padding-block: var(--site-section-block);
  gap: clamp(48px, 9vw, 140px);
}

.tension-copy {
  max-width: 760px;
}

.tension-copy h2 {
  display: flex;
  flex-direction: column;
  margin: 24px 0 24px;
  color: var(--site-ink);
  font-family: var(--site-font);
  font-size: var(--site-section-title-size);
  font-weight: var(--site-section-title-weight);
  letter-spacing: var(--site-section-title-tracking);
  line-height: var(--site-section-title-leading);
}

.tension-title-sans {
  font-family: var(--site-font);
  color: var(--tension-title-secondary);
  font-weight: var(--site-weight-regular);
  letter-spacing: var(--site-section-title-tracking);
}

.tension-title-script {
  font-family: var(--site-script);
  font-weight: var(--site-weight-regular);
  letter-spacing: var(--site-script-tracking);
}

.tension-subtitle {
  max-width: 58ch;
  margin: 0;
  color: var(--site-text);
  font-family: var(--site-font);
  font-size: var(--site-section-subtitle-size);
  font-weight: var(--site-section-subtitle-weight);
  letter-spacing: var(--site-section-subtitle-tracking);
  line-height: var(--site-section-subtitle-leading);
}

.tension-visual {
  width: 100%;
  margin: 0;
}

.tension-visual img {
  display: block;
  width: 100%;
  height: auto;
}

@media (min-width: 1100px) {
  .tension-layout {
    grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
  }
}

@media (max-width: 800px) {
  .tension-layout {
    grid-template-columns: 1fr;
    gap: 40px;
  }

  .tension-visual {
    max-width: 520px;
  }
}

@media (max-width: 520px) {
  .tension-copy h2 {
    margin-top: 18px;
    font-size: var(--site-section-title-mobile-size);
  }

  .tension-subtitle {
    font-size: var(--site-section-subtitle-size);
  }
}
