html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}
html {
  position: relative;
  min-height: 100%;
}

html,
body {
  overflow-x: hidden;
}

body {
  background: var(--Primary-Off-White, #F6F6F6);
}

h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 0;
}

ul,
li {
  list-style: none;
  margin: 0;
  padding: 0;
}

a {
  color: inherit;
  -webkit-text-decoration: inherit;
  -webkit-text-decoration: inherit;
  -webkit-text-decoration: inherit;
  text-decoration: inherit;
}
a:hover {
  color: inherit;
  -webkit-text-decoration: inherit;
  -webkit-text-decoration: inherit;
  -webkit-text-decoration: inherit;
  text-decoration: inherit;
}

button[disabled] {
  cursor: default;
}

hr {
  border-top: 1px solid #D4D3D9;
  margin: 0;
  opacity: 1;
  width: 100%;
}

.dropdown-item:focus,
.dropdown-item:hover {
  color: inherit;
  background-color: inherit;
  text-decoration: inherit;
}

.splide {
  align-self: flex-start;
  width: 100%;
}

/* Page */
.page.no-title .hero, .page.results_page .hero {
  display: none;
}

/* Carousel Buttons */
.splide:has(.splide__arrows) {
  padding-bottom: clamp(100px, 91.99px + 2.1356vw, 174px);
}
.splide:has(.splide__arrows) .splide__track {
  overflow: visible;
}
.splide:has(.splide__arrows) .splide__arrows .splide__arrow {
  /* Drop Shadow | High */
  box-shadow: 0px 371px 104px 0px rgba(15, 15, 15, 0), 0px 237px 95px 0px rgba(15, 15, 15, 0.01), 0px 134px 80px 0px rgba(15, 15, 15, 0.04), 0px 59px 59px 0px rgba(15, 15, 15, 0.07), 0px 15px 33px 0px rgba(15, 15, 15, 0.08);
  background: var(--Pure-White-Pure-White, #FFF);
  height: clamp(52px, 49.19px + 0.7504vw, 78px);
  width: clamp(52px, 49.19px + 0.7504vw, 78px);
  top: auto;
  bottom: 0;
}
.splide:has(.splide__arrows) .splide__arrows .splide__arrow:disabled {
  cursor: default;
}
.splide:has(.splide__arrows) .splide__arrows .splide__arrow:disabled svg {
  fill: rgba(21, 21, 21, 0.6);
}
.splide:has(.splide__arrows) .splide__arrows .splide__arrow {
  transform: initial;
  opacity: initial;
}
.splide:has(.splide__arrows) .splide__arrows .splide__arrow:not(:disabled):hover {
  transform: scale(1.04);
  /* Drop Shadow | X-High */
  box-shadow: 0px 694px 194px 0px rgba(15, 15, 15, 0), 0px 444px 178px 0px rgba(15, 15, 15, 0.01), 0px 250px 150px 0px rgba(15, 15, 15, 0.04), 0px 111px 111px 0px rgba(15, 15, 15, 0.07), 0px 28px 61px 0px rgba(15, 15, 15, 0.08);
}

/* Images */
.bg-cover {
  background-size: cover;
  background-repeat: no-repeat;
}

.bg-contain {
  background-size: contain;
  background-repeat: no-repeat;
}

.bg-center {
  background-position: center;
}

.bg-fixed {
  background-attachment: fixed;
}

.scrim {
  position: relative;
  overflow: hidden;
}
.scrim::before {
  background: var(--xprize-black-xprize-black-20, rgba(21, 21, 21, 0.2));
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.scrim.text {
  color: var(--Pure-White-Pure-White, #FFF);
  border-radius: clamp(12px, 10.7px + 0.3463vw, 24px);
  padding: clamp(12px, 11.35px + 0.1732vw, 18px) clamp(16px, 14.7px + 0.3463vw, 28px);
}
.scrim.text::before {
  /* Background Blur */
  backdrop-filter: blur(8px);
}
.scrim > * {
  position: relative;
}
.scrim.video-overlay::before {
  background: var(--xprize-black-xprize-black-60, rgba(21, 21, 21, 0.6));
}

/* Badge */
.badge {
  display: flex;
  padding: clamp(8px, 7.35px + 0.1732vw, 14px);
  align-items: center;
  border-radius: clamp(6px, 5.35px + 0.1732vw, 12px);
  background-color: var(--Pure-White-Pure-White, #FFF);
  /* Background Blur */
  backdrop-filter: blur(8px);
  color: var(--XPRIZE-Black-XPRIZE-Black, #151515);
  leading-trim: both;
  text-edge: cap;
  font-variant-numeric: lining-nums tabular-nums;
  /* Other/Tag */
  /* Other/Tag */
  font-family: "Messina Sans";
  font-size: clamp(12px, 11.35px + 0.1732vw, 18px);
  font-style: normal;
  font-weight: 700;
  line-height: 120%;
  text-transform: uppercase;
}
.badge:has(img) {
  font-variant-numeric: lining-nums tabular-nums;
  display: flex;
  padding: 0;
}
.badge:has(img) img {
  margin: clamp(4px, 3.35px + 0.1732vw, 10px) clamp(10px, 9.57px + 0.1154vw, 14px);
  width: clamp(16px, 14.7px + 0.3463vw, 28px);
  height: clamp(16px, 14.7px + 0.3463vw, 28px);
}
.badge:has(img) span {
  padding-right: clamp(10px, 9.57px + 0.1154vw, 14px);
  color: transparent;
  text-transform: uppercase;
  font-weight: 700;
  line-height: 140%;
}
.badge.sponsor {
  align-items: flex-start;
  background: var(--xprize-black-xprize-black-20, rgba(21, 21, 21, 0.2));
  color: var(--Pure-White-Pure-White, #FFF);
}

/* Buttons */
.btn:focus,
.btn:active:focus,
.btn-link.nav-link:focus,
.form-control:focus,
.form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

.primary_button,
.primary_button_alt,
.secondary_button,
.secondary_button_alt,
.next {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: clamp(4px, 3.35px + 0.1732vw, 10px);
  border-radius: var(--Border-Radius-border-radius-full, 9999px);
  /* Drop Shadow | High */
  box-shadow: 0px 371px 104px 0px rgba(15, 15, 15, 0), 0px 237px 95px 0px rgba(15, 15, 15, 0.01), 0px 134px 80px 0px rgba(15, 15, 15, 0.04), 0px 59px 59px 0px rgba(15, 15, 15, 0.07), 0px 15px 33px 0px rgba(15, 15, 15, 0.08);
  font-variant-numeric: lining-nums tabular-nums;
  /* Other/Button */
  /* Other/Button */
  font-family: "Messina Sans";
  font-size: clamp(16px, 15.35px + 0.1732vw, 22px);
  font-style: normal;
  font-weight: 700;
  line-height: 100%;
  padding: clamp(16px, 14.7px + 0.3463vw, 28px) clamp(20px, 18.7px + 0.3463vw, 32px);
  white-space: nowrap;
}
.primary_button img,
.primary_button_alt img,
.secondary_button img,
.secondary_button_alt img,
.next img {
  width: 12px;
}

.primary_button,
.small_button,
.next {
  background-image: var(--Primary-Future-Radical, linear-gradient(258deg, #CB00DE 7.44%, #EB0046 94.24%));
  color: var(--Pure-White-Pure-White, #FFF);
}
.primary_button:hover,
.small_button:hover,
.next:hover {
  color: var(--Pure-White-Pure-White, #FFF);
}

.small_button_alt,
.primary_button_alt {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: clamp(4px, 3.35px + 0.1732vw, 10px);
  background: var(--Pure-White-Pure-White, #FFF);
}
.small_button_alt .button-text,
.primary_button_alt .button-text {
  background-image: var(--Primary-Future-Radical, linear-gradient(258deg, #CB00DE 7.44%, #EB0046 94.24%));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.small_button_alt img,
.primary_button_alt img {
  width: 12px;
}

.view_more,
.back {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: clamp(4px, 3.35px + 0.1732vw, 10px);
  background: #FFF;
  border: 2px solid #151515;
}
.view_more img,
.back img {
  width: 12px;
}

.view_more .button-text,
.back .button-text,
.next .button-text {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: clamp(4px, 3.35px + 0.1732vw, 10px);
}

.view_more,
.back {
  border-radius: 9999px;
  display: flex;
  align-items: center;
  gap: clamp(4px, 3.35px + 0.1732vw, 10px);
  padding: clamp(12px, 11.35px + 0.1732vw, 20px) clamp(16px, 15.35px + 0.1732vw, 24px);
}
.view_more .button-text,
.back .button-text {
  font-variant-numeric: lining-nums tabular-nums;
  /* Other/Button Small */
  font-variant-numeric: lining-nums tabular-nums;
  /* Other/Button Small */
  font-family: "Messina Sans";
  font-size: clamp(14px, 13.35px + 0.1732vw, 20px);
  font-style: normal;
  font-weight: 700;
  line-height: 100%;
}

/* Override hover styles for secondary buttons */
.secondary_button.hover-bg-color:hover .button-text,
.small_secondary_button.hover-bg-color:hover .button-text {
  background-image: none !important;
  -webkit-text-fill-color: #FFF !important;
  color: #FFF !important;
}

.small_button,
.small_button_alt,
.small_secondary_button,
.small_secondary_button_alt {
  border-radius: 9999px;
  /* Drop Shadow | High */
  box-shadow: 0px 371px 104px 0px rgba(15, 15, 15, 0), 0px 237px 95px 0px rgba(15, 15, 15, 0.01), 0px 134px 80px 0px rgba(15, 15, 15, 0.04), 0px 59px 59px 0px rgba(15, 15, 15, 0.07), 0px 15px 33px 0px rgba(15, 15, 15, 0.08);
  display: flex;
  align-items: center;
  gap: clamp(4px, 3.35px + 0.1732vw, 10px);
  padding: clamp(12px, 11.35px + 0.1732vw, 20px) clamp(16px, 15.35px + 0.1732vw, 24px);
}
.small_button .button-text,
.small_button_alt .button-text,
.small_secondary_button .button-text,
.small_secondary_button_alt .button-text {
  font-variant-numeric: lining-nums tabular-nums;
  /* Other/Button Small */
  font-variant-numeric: lining-nums tabular-nums;
  /* Other/Button Small */
  font-family: "Messina Sans";
  font-size: clamp(14px, 13.35px + 0.1732vw, 20px);
  font-style: normal;
  font-weight: 700;
  line-height: 100%;
}

.small_secondary_button {
  padding: clamp(14px, 13.13px + 0.2309vw, 22px) clamp(16px, 15.35px + 0.1732vw, 24px);
}

.secondary_button_alt,
.small_secondary_button_alt {
  border: 2px solid var(--Pure-White-Pure-White, #FFF);
}
.secondary_button_alt .button-text,
.small_secondary_button_alt .button-text {
  color: var(--Pure-White-Pure-White, #FFF);
}
.secondary_button_alt:hover,
.small_secondary_button_alt:hover {
  border: 2px solid var(--Pure-White-Pure-White, #FFF);
  background: #FFF;
}
.secondary_button_alt:hover .button-text,
.small_secondary_button_alt:hover .button-text {
  color: var(--Pure-White-Pure-White, #151515);
}

.large_button {
  border-radius: clamp(12px, 10.7px + 0.3463vw, 24px);
  background-color: var(--Pure-White-Pure-White, #FFF);
  /* Drop Shadow | High */
  box-shadow: 0px 371px 104px 0px rgba(15, 15, 15, 0), 0px 237px 95px 0px rgba(15, 15, 15, 0.01), 0px 134px 80px 0px rgba(15, 15, 15, 0.04), 0px 59px 59px 0px rgba(15, 15, 15, 0.07), 0px 15px 33px 0px rgba(15, 15, 15, 0.08);
  display: flex;
  padding: clamp(16px, 13.4px + 0.6926vw, 40px);
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: clamp(12px, 11.57px + 0.1154vw, 16px);
  flex: 1 0 0;
}
.large_button .button-text {
  color: var(--XPRIZE-Black-XPRIZE-Black, #151515);
  /* H5/Messina | Bold */
  /* H5/Messina | Bold */
  font-family: "Messina Sans";
  font-size: clamp(18px, 16.7px + 0.1732vw, 32px);
  font-style: normal;
  font-weight: 700;
  line-height: 130%;
}
.large_button i {
  color: #CB00DE;
  font-size: clamp(36px, 33.4px + 0.6926vw, 60px);
  background: linear-gradient(90deg, #CB00DE, #EB0046); /* Your gradient colors */
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.primary_button,
.primary_button_alt,
.small_button,
.small_button_alt,
.large_button,
.next,
.view_more,
.back,
.icon-button {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.primary_button:hover,
.primary_button_alt:hover,
.small_button:hover,
.small_button_alt:hover,
.large_button:hover,
.next:hover,
.view_more:hover,
.back:hover,
.icon-button:hover {
  transform: scale(1.04);
  /* Drop Shadow | X-High */
  box-shadow: 0px 694px 194px 0px rgba(15, 15, 15, 0), 0px 444px 178px 0px rgba(15, 15, 15, 0.01), 0px 250px 150px 0px rgba(15, 15, 15, 0.04), 0px 111px 111px 0px rgba(15, 15, 15, 0.07), 0px 28px 61px 0px rgba(15, 15, 15, 0.08);
}

.small_button_underlined {
  border-bottom: 2px solid;
  position: relative;
  /* Other/Button Small */
  font-variant-numeric: lining-nums tabular-nums;
  /* Other/Button Small */
  font-family: "Messina Sans";
  font-size: clamp(14px, 13.35px + 0.1732vw, 20px);
  font-style: normal;
  font-weight: 700;
  line-height: 100%;
}
.small_button_underlined:hover {
  border-bottom-color: transparent !important;
}
.small_button_underlined::after {
  border-bottom: 2px solid;
  content: "";
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 0;
  transition: width 300ms ease-in-out;
}
.small_button_underlined:hover::after {
  width: 100%;
}

/* Media query for mobile phone */
@media (max-width: 575px) {
  .desktop-tablet-view {
    display: none !important;
  }
  .phone-view {
    display: flex !important;
  }
}
/* Media query for desktop and tablet */
@media (min-width: 576px) {
  .desktop-tablet-view {
    display: flex !important;
  }
  .phone-view {
    display: none !important;
  }
}
/* Media query for mobile */
@media (max-width: 1199px) {
  .desktop-view {
    display: none !important;
  }
  .mobile-view {
    display: flex !important;
  }
}
/* Media query for desktop */
@media (min-width: 1200px) {
  .desktop-view {
    display: flex !important;
  }
  .mobile-view {
    display: none !important;
  }
}
