.vancouver-page .hero {
  background-image: linear-gradient(90deg, rgba(252,241,224,.28), rgba(252,241,224,.1) 33%, rgba(8,8,7,.02) 61%), url('../toronto/hero.png');
}

.vancouver-page .final-cta {
  background-image: url('../toronto/final-cta.png');
}

.vancouver-page .hero h1 {
  font-size: 58px;
  line-height: .94;
}

.vancouver-page .hero-copy {
  width: min(565px, 44vw);
  top: 125px;
}

.vancouver-page .hero-copy > p {
  max-width: 470px;
}

.vancouver-page .button {
  max-width: 100%;
  text-align: center;
}

.vancouver-page .section-image-one img {
  object-position: 59% center;
}

.vancouver-page .section-image-two img {
  object-position: 48% center;
}

.vancouver-page .section strong {
  font-weight: 600;
  color: #514840;
}

.vancouver-page .local-list,
.vancouver-page .question-list {
  max-width: 720px;
  margin: 4px 0 18px;
  padding-left: 22px;
  color: var(--muted);
  font: 500 14.2px/1.72 var(--sans);
}

.vancouver-page .local-list {
  columns: 2;
  column-gap: 28px;
}

.vancouver-page .question-list {
  margin-left: auto;
  margin-right: auto;
  text-align: left;
}

.vancouver-page .section-wide {
  grid-column: 1 / -1;
  max-width: 970px;
  margin: 0 auto;
  text-align: center;
}

.vancouver-page .section-wide h2,
.vancouver-page .section-wide h3 {
  margin: 0 0 18px;
  font: 500 37px/1.05 var(--serif);
}

.vancouver-page .section-wide h3 {
  font-size: 32px;
}

.vancouver-page .section-wide .copy-divider {
  margin: 6px auto 32px;
}

.vancouver-page .faq-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 25px 45px;
  margin-top: 30px;
  text-align: left;
}

.vancouver-page .faq-list section {
  padding-top: 20px;
  border-top: 1px solid var(--border);
}

.vancouver-page .faq-list h3 {
  margin-bottom: 12px;
  font-size: 26px;
}

.vancouver-page .final-copy {
  width: min(535px, 43vw);
  top: 34px;
}

.vancouver-page .final-copy h2 {
  font-size: 52px;
}

.vancouver-page .final-copy .compact {
  min-width: 300px;
}

@media (max-width: 1023px) {
  .vancouver-page .hero-copy {
    top: 100px;
    width: min(79%, 360px);
  }

  .vancouver-page .hero h1 {
    font-size: clamp(40px, 10.3vw, 54px);
  }

  .vancouver-page .local-list,
  .vancouver-page .question-list {
    font-size: 13.5px;
    line-height: 1.67;
  }

  .vancouver-page .section-wide {
    max-width: 100%;
    order: 2;
  }

  .vancouver-page .section-wide h2 {
    font-size: 34px;
  }

  .vancouver-page .section-wide h3 {
    font-size: 28px;
  }

  .vancouver-page .faq-list {
    grid-template-columns: 1fr;
    gap: 15px;
  }

  .vancouver-page .final-copy {
    top: 42px;
    width: min(88%, 420px);
  }

  .vancouver-page .final-copy h2 {
    font-size: 46px;
  }
}

@media (max-width: 520px) {
  .vancouver-page .hero {
    height: 680px;
  }

  .vancouver-page .hero-copy {
    width: min(83%, 340px);
  }

  .vancouver-page .hero .button,
  .vancouver-page .final-cta .button,
  .vancouver-page .section .button {
    min-width: 0;
    width: 100%;
    padding: 0 12px;
    font-size: 9px;
    letter-spacing: 1.2px;
  }

  .vancouver-page .local-list {
    columns: 1;
  }

  .vancouver-page .final-cta {
    height: 590px;
  }
}
