*, *::before, *::after { box-sizing: border-box; }
html, body { width: 100%; max-width: 100%; margin: 0; overflow-x: hidden; }
body { font-family: "futura-pt-condensed", sans-serif; color: #000; background: #fff; }
main { width: 100%; }

.nascar-opening {
  width: min(1680px, 100%);
  aspect-ratio: 1680 / 880;
  height: auto;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
}

.nascar-opening-copy {
  position: absolute;
  left: calc(174 / 1680 * 100%);
  top: calc(168 / 880 * 100%);
  width: calc(474 / 1680 * 100%);
  font-size: clamp(8px, calc(22 / 1680 * 100vw), 22px);
  font-weight: 500;
  line-height: 1.18;
}

.nascar-opening-copy p { margin: 0 0 calc(28 / 880 * 100%); }

.nascar-opening-render {
  position: absolute;
  display: block;
  max-width: none;
  left: calc(731.5828 / 1680 * 100%);
  top: calc(258.9199 / 880 * 100%);
  width: calc(774.6656 / 1680 * 100%);
  height: calc(435.7494 / 880 * 100%);
  object-fit: contain;
}

.nascar-rendered-views {
  width: min(1680px, 100%);
  aspect-ratio: 1680 / 960;
  height: auto;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
}

.nascar-rendered-views h2 {
  font-family: "futura-pt-condensed", sans-serif;
  font-style: italic;
  position: absolute;
  left: calc(30 / 1680 * 100%);
  top: calc(13 / 960 * 100%);
  z-index: 20;
  margin: 0;
  font-size: clamp(16px, calc(44 / 1680 * 100vw), 44px);
  font-weight: 300;
  line-height: 1;
}

.nascar-rendered-views-layout {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

.nascar-rendered-views-layout img { position: absolute; display: block; max-width: none; height: auto; margin: 0; }

.nascar-rendered-strip {
  left: calc(122.368 / 1680 * 100%);
  top: calc(179.1039 / 960 * 100%);
  width: calc(1435.2642 / 1680 * 100%);
}

.nascar-rendered-front {
  left: calc(216.2214 / 1680 * 100%);
  top: calc(462.2366 / 960 * 100%);
  width: calc(566.5059 / 1680 * 100%);
}

.nascar-rendered-back {
  left: calc(897.2726 / 1680 * 100%);
  top: calc(462.2366 / 960 * 100%);
  width: calc(566.5059 / 1680 * 100%);
}

.nascar-editorial {
  width: min(1680px, 100%);
  aspect-ratio: 1680 / 960;
  height: auto;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
}

.nascar-editorial h2 {
  font-family: "futura-pt-condensed", sans-serif;
  font-style: italic;
  position: absolute;
  left: calc(30 / 1680 * 100%);
  top: calc(13 / 960 * 100%);
  z-index: 20;
  margin: 0;
  font-size: clamp(16px, calc(44 / 1680 * 100vw), 44px);
  font-weight: 300;
  line-height: 1;
}

.nascar-editorial-layout {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

.nascar-editorial-layout img { position: absolute; display: block; max-width: none; height: auto; margin: 0; }

.nascar-editorial-01 { left: calc(622.8512 / 1680 * 100%); top: calc(132.5598 / 960 * 100%); width: calc(434.2975 / 1680 * 100%); }
.nascar-editorial-02 { left: calc(1125.8494 / 1680 * 100%); top: calc(541.0491 / 960 * 100%); width: calc(179.4418 / 1680 * 100%); }
.nascar-editorial-03 { left: calc(1373.9917 / 1680 * 100%); top: calc(506.1157 / 960 * 100%); width: calc(226.0083 / 1680 * 100%); }
.nascar-editorial-04 { left: calc(309.4581 / 1680 * 100%); top: calc(56.3478 / 960 * 100%); width: calc(244.6926 / 1680 * 100%); }
.nascar-editorial-05 { left: calc(80 / 1680 * 100%); top: calc(106.0117 / 960 * 100%); width: calc(170.6551 / 1680 * 100%); }
.nascar-editorial-06 { left: calc(374.7088 / 1680 * 100%); top: calc(541.0491 / 960 * 100%); width: calc(179.4418 / 1680 * 100%); }
.nascar-editorial-07 { left: calc(80 / 1680 * 100%); top: calc(518.6012 / 960 * 100%); width: calc(226.0083 / 1680 * 100%); }
.nascar-editorial-08 { left: calc(1425.0293 / 1680 * 100%); top: calc(106.0116 / 960 * 100%); width: calc(174.6031 / 1680 * 100%); }
.nascar-editorial-09 { left: calc(1125.8494 / 1680 * 100%); top: calc(56.3477 / 960 * 100%); width: calc(250.3534 / 1680 * 100%); }

.nascar-next-project {
  width: min(1680px, 100%);
  min-height: 475px;
  margin: 0 auto;
  padding: 80px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-end;
}

.nascar-next-project p { margin: 0 0 15px; font-size: 22px; opacity: .5; }
.nascar-next-project a { color: #000; font-size: clamp(42px, 4.2vw, 70px); line-height: 1; text-decoration: none; }

@media screen and (max-width: 767px), screen and (orientation: portrait), screen and (orientation: landscape) and (max-height: 500px) {
  .nascar-opening-copy { font-size: calc(22 / 1680 * 100vw); }
  .nascar-rendered-views h2, .nascar-editorial h2 { font-size: calc(44 / 1680 * 100vw); }
  .nascar-next-project { min-height: 240px; padding: 20px; }
  .nascar-next-project p { font-size: 16px; }
  .nascar-next-project a { font-size: 42px; }
}
