/*
  Home page section: Race Assistance.
  Text on the left, full-height image on the right.
*/

.home-race {
  background: #eef1f4;
  padding: clamp(48px, 6vw, 82px) 0 clamp(56px, 7vw, 96px);
}

.home-race-shell {
  max-width: none;
  width: 100%;
}

.home-race-grid {
  min-height: clamp(360px, 36vw, 580px);
}

.home-race-text-col {
  display: flex;
  align-items: stretch;
}

.home-race-copy-shell {
  width: 100%;
  display: flex;
  justify-content: flex-end;
  padding: clamp(22px, 3.8vw, 52px) clamp(18px, 3vw, 50px);
}

.home-race-copy {
  width: min(100%, 640px);
}

.home-race-title {
  margin: 0;
  font-family: "kallisto", "Bai Jamjuree", system-ui, sans-serif;
  font-weight: 500;
  color: #111e31;
  font-size: clamp(34px, 3.6vw, 58px);
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.home-race-copy-paragraph {
  margin: 1.05rem 0 0;
  color: #2f3b4c;
  font-size: clamp(16px, 1.12vw, 19px);
  line-height: 1.45;
  max-width: 30em;
  overflow-wrap: anywhere;
}

.home-race-media-col {
  display: flex;
}

.home-race-media {
  width: 100%;
  margin: 0;
}

.home-race-image {
  display: block;
  width: 100%;
  height: 100%;
  min-height: clamp(340px, 34vw, 580px);
  object-fit: cover;
}

@media (max-width: 991px) {
  .home-race-grid {
    min-height: 0;
  }

  .home-race-copy-shell {
    justify-content: flex-start;
    padding: 22px clamp(18px, 5vw, 36px);
  }

  .home-race-copy {
    width: 100%;
    max-width: none;
  }

  .home-race-image {
    min-height: clamp(280px, 66vw, 500px);
  }
}

@media (max-width: 640px) {
  .home-race {
    padding-top: 40px;
    padding-bottom: 56px;
  }
}

@media (max-width: 420px) {
  .home-race-title {
    font-size: clamp(30px, 10vw, 38px);
  }

  .home-race-copy-paragraph {
    font-size: clamp(14px, 4.2vw, 16px);
  }
}
