@font-face {
  font-family: Barlow;
  src: url("assets/barlow-400.ttf") format("truetype");
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: Barlow;
  src: url("assets/barlow-500.ttf") format("truetype");
  font-weight: 500;
  font-display: swap;
}

html:has(.benchmark-page) { scrollbar-width: none; }
.benchmark-page-layout { position: relative; min-height: max(968px, 100svh); isolation: isolate; }
.benchmark-art { position: absolute; inset: 0; z-index: -1; overflow: hidden; }
.benchmark-art img, .benchmark-art::before, .benchmark-art::after { position: absolute; inset: 0; width: 100%; height: 100%; }
.benchmark-art img { object-fit: cover; }
.benchmark-art::before { content: ""; z-index: 1; background: #502d7f; mix-blend-mode: hue; }
.benchmark-art::after { content: ""; z-index: 2; background: #0003; }
.benchmark-page-content { display: flex; flex-direction: column; align-items: center; padding: 56px 24px 80px; }
.benchmark-page-content .logo--desktop .logo-part--group { left: 70.994px; top: .133px; }
.benchmark-intro { width: 100%; text-align: center; }
.benchmark-intro h1 {
  width: auto;
  height: auto;
  max-width: 752px;
  margin: 40px auto 0;
  background: linear-gradient(90deg, #fff, #d1d5db);
  background-clip: text;
  color: transparent;
  font: 700 40px/44px Barlow, sans-serif;
  white-space: pre-line;
}
.benchmark-title-mobile { display: none; }
.benchmark-intro > p { max-width: 1095px; margin: 40px auto 0; font: 400 20px/26px Barlow, sans-serif; }
.benchmark-form {
  width: min(100%, 552px);
  margin-top: 54px;
  padding: 40px 32px 38px;
  border: 1px solid #ffffff0d;
  border-radius: 16px;
  background: #ffffff08;
  backdrop-filter: blur(6px);
  color: #fff;
  font: 500 14px/21px Barlow, sans-serif;
}
.benchmark-fields { display: grid; gap: 24px; }
.benchmark-fields .form-field { gap: 8px; }
.benchmark-fields .form-field:last-child { margin-top: -16px; }
.benchmark-fields input {
  height: 50px;
  padding: 0 16px;
  border: 1px solid #fff3;
  border-radius: 8px;
  background: transparent;
  color: #fff;
  font: 400 16px/21px Barlow, sans-serif;
}
.benchmark-fields input::placeholder { color: #ffffffb3; }
.benchmark-form .local-submit { width: 100%; min-height: 60px; margin-top: 24px; border: .2px solid #fff; border-radius: 8px; background: #ff5b00; font: 700 18px/24px Geist, sans-serif; }
.benchmark-form .local-submit:is(:hover, :focus-visible) { background: #dc4f00; }
#benchmark-privacy { margin: 14px 0 0; color: #b4b5c0; font: 400 14px/21px Barlow, sans-serif; letter-spacing: .28px; }
#benchmark-privacy a { color: #fff; text-decoration: underline; }

.benchmark-page--split { color-scheme: light; }
.benchmark-page--split .benchmark-page-layout { display: grid; grid-template-columns: 1fr 1fr; }
.benchmark-page--split .benchmark-art { position: relative; }
.benchmark-page--split .benchmark-page-content { align-items: stretch; justify-content: center; padding: 80px clamp(28px, 5.56vw, 80px) 80px clamp(28px, 5vw, 72px); background: #fff; }
.benchmark-page--split .benchmark-intro { text-align: left; }
.benchmark-page--split .benchmark-intro h1 { max-width: none; margin: 0; background: none; color: #2d2a26; font-size: 42px; line-height: 1.2; letter-spacing: -1.5px; }
.benchmark-page--split .benchmark-intro p { margin-top: 24px; color: #595550; font-size: 16px; line-height: 1.6; }
.benchmark-page--split .benchmark-form { width: 100%; margin-top: 48px; padding: 0; border: 0; border-radius: 0; background: none; backdrop-filter: none; color: #2d2a26; }
.benchmark-page--split .benchmark-fields { gap: 32px; }
.benchmark-page--split .benchmark-fields .form-field { gap: 12px; margin-top: 0; font: 700 12px/16px Barlow, sans-serif; letter-spacing: 1px; text-transform: uppercase; }
.benchmark-page--split .benchmark-fields input { height: auto; padding: 0 0 12px; border: 0; border-bottom: 1px solid #d9d4ce; border-radius: 0; color: #2d2a26; }
.benchmark-page--split .benchmark-fields input::placeholder { color: #595550b3; }
.benchmark-page--split .benchmark-form .local-submit { min-height: 58px; margin-top: 32px; border: 0; background: #502d7f; font-size: 16px; }
.benchmark-page--split .benchmark-form .local-submit:is(:hover, :focus-visible) { background: #6b42a8; }
.benchmark-page--split #benchmark-privacy { margin-top: 20px; color: #595550; }
.benchmark-page--split #benchmark-privacy a { color: #2d2a26; font-weight: 700; }

@media (max-width: 767px) {
  .benchmark-page-layout { min-height: max(844px, 100svh); }
  .benchmark-page-content { padding: 62px 24px 60px; }
  .benchmark-intro h1 { margin-top: 64px; font-size: 24px; line-height: 32px; }
  .benchmark-title-desktop, .benchmark-intro > p { display: none; }
  .benchmark-title-mobile { display: block; }
  .benchmark-form { margin-top: 46px; padding: 41px 28px 42px; font-size: 14px; }
  .benchmark-fields .form-field { gap: 8px; }
  .benchmark-fields .form-field:last-child { margin-top: -16px; }
  .benchmark-fields input { height: 51px; font-size: 12px; }
  .benchmark-form .local-submit { min-height: 48px; padding: 10px 8px; font: 700 14px/20px Barlow, sans-serif; }
  #benchmark-privacy { margin-top: 16px; font-size: 10px; line-height: 18px; letter-spacing: .2px; }
  .benchmark-page--split .benchmark-page-layout { grid-template-columns: 1fr; }
  .benchmark-page--split .benchmark-art { min-height: 240px; }
  .benchmark-page--split .benchmark-page-content { padding: 36px 24px 48px; }
  .benchmark-page--split .benchmark-intro h1 { font-size: 34px; }
  .benchmark-page--split .benchmark-intro p { display: block; }
  .benchmark-page--split .benchmark-title-desktop { display: block; }
  .benchmark-page--split .benchmark-title-mobile { display: none; }
  .benchmark-page--split .benchmark-form { margin-top: 32px; }
  .benchmark-page--split .benchmark-fields input { height: auto; font-size: 16px; }
  .benchmark-page--split #benchmark-privacy { font-size: 14px; letter-spacing: 0; }
}

@media (min-width: 375px) and (max-width: 767px) {
  .benchmark-page:not(.benchmark-page--split) .local-submit { white-space: nowrap; }
  .benchmark-page:not(.benchmark-page--split) #benchmark-privacy { width: calc(100% + 20px); }
}
