:root {
  color-scheme: light;
  font-family: "Biennale", Arial, Helvetica, sans-serif;
  font-synthesis: none;
  color: #ffffff;
  background: #131528;
  --navy: #131528;
  --muted: #BBB7D2;
  --content-width: 80rem;
}

h1, h2, h3, h4, h5, h6 {
  line-height: 1.1 !important;
}

h1, h2 { letter-spacing: -1.68px !important; }

#solution { scroll-margin-top: -200px; }

@media (min-width: 80rem) {
  .site-header { width: calc(100% - 30px) !important; min-width: 0; max-width: 1280px !important; }
}

/* Final mobile cascade: keep the Figma mobile values above desktop alignment rules. */
@media (max-width: 79.9375rem) {
  .hero { min-height: 58.23rem; padding: 0 1.5rem; }
  .hero__background { display: block; inset: 1rem 0 auto; width: 400px; height: 350px; margin: 0 auto; transform: none; object-fit: fill; object-position: center top; -webkit-mask-image: radial-gradient(ellipse at center, #000 52%, transparent 100%); mask-image: radial-gradient(ellipse at center, #000 52%, transparent 100%); }
  .hero__mobile-art { display: none; }
  .hero__copy { width: 100%; max-width: none; padding-top: 25.3125rem; align-items: center; text-align: center; }
  .hero h1 { width: 100%; font-size: 2.125rem; line-height: 2.75rem; letter-spacing: -.0425rem; }
  .hero__copy > p { width: 23rem; margin: 1.5rem auto 0; font-size: 1.125rem; line-height: 1.5; }
  .hero__actions { width: 100%; margin-top: 1.5rem; flex-direction: column; gap: .75rem; }
  .hero__button { width: 100%; max-width: 300px; height: 3.125rem; }
  .site-menu-toggle span { background: #ff3e70; height: 2px; }
  .platform-section { padding: 0; }
  .platform-intro { padding: 3.75rem 1.5rem 0; gap: 1.5rem; }
  .platform-intro { margin-bottom: 2.5rem; }
  .platform-intro h2 { font-size: 2.125rem; line-height: 1.15; }
  .challenge-list { width: auto; margin: 3.5rem 1.5rem 0; padding-bottom: 3.75rem; }
  .challenge-row, .challenge-row--reverse { width: 100%; height: auto; margin: 0 0 3.5rem; flex-direction: column; gap: 1.25rem; }
  .challenge-row__visual, .challenge-row--reverse .challenge-row__visual { order: 1; width: 100%; height: 13.75rem; flex: 0 0 13.75rem; padding: 1.25rem; }
  .challenge-row__visual--lightweight { background: linear-gradient(180deg, rgba(255,255,255,.04) 13.861%, rgba(255,255,255,0) 81.683%) !important; border-radius: 1rem !important; padding: 1.25rem !important; }
  .challenge-row__visual--lightweight img { width: 11.75rem; height: 11.875rem; }
  .challenge-row__visual, .challenge-row--reverse .challenge-row__visual { background: transparent !important; box-shadow: none !important; border-radius: 0 !important; padding: 0 !important; }
  .challenge-row__copy, .challenge-row--reverse .challenge-row__copy { order: 2; width: 100%; flex: none; transform: none; }
  .challenge-row__copy h3 { font-size: 1.625rem; line-height: 1.3; }
  .challenge-row__copy p { margin-top: 1rem; font-size: 1.125rem; line-height: 1.5; }
  .solution-section { margin-top: 0; padding: 3.75rem 1.5rem 4rem; }
  .solution-section__body { display: flex; flex-direction: column; gap: 2rem; }
  .calculate-banner { margin: 0 1.5rem; }
  .brain-section { width: 100%; padding: 3.75rem 1.5rem; }
  .challenge-row__visual--lightweight { background: linear-gradient(180deg, rgba(255,255,255,.04) 13.861%, rgba(255,255,255,0) 81.683%) !important; border-radius: 1rem !important; padding: 1.25rem !important; }
  .challenge-row__visual--lightweight::after { display: block; }
  .challenge-row__visual--lightweight img { width: 11.75rem; height: 11.875rem; }
  .challenge-row__visual,
  .challenge-row--reverse .challenge-row__visual { width: 14rem; height: 13.75rem; min-height: 0; flex: 0 0 13.75rem; align-self: center; padding: 1rem !important; border-radius: 0 !important; background: linear-gradient(180deg, rgba(255,255,255,.04) 14%, rgba(255,255,255,0) 82%) !important; }
  .challenge-row__visual img { max-width: 100%; max-height: 100%; }
  .challenge-row:last-child .challenge-row__visual { width: 80%; }
  .challenge-row:last-child .challenge-row__visual img { max-height: 85% !important; }
}

/* Mobile Figma frame 4872:121. */
@media (max-width: 79.9375rem) {
  body { background: #131629; }
  .site-header { top: 2.5rem; width: calc(100% - 1.75rem); }
  .site-brand { gap: .55rem; font-size: 1.335rem; line-height: 1; }
  .site-brand img { width: 1.94rem; height: 1.94rem; }
  .hero { min-height: 58.23rem; padding: 0 1.5rem; display: block; position: relative; }
  .hero__background { display: none; }
  .hero::before { content: ""; position: absolute; z-index: -2; inset: 0 0 auto; height: 37.5rem; background: radial-gradient(ellipse at 50% 35%, rgba(119,45,211,.2), transparent 66%); pointer-events: none; }
  .hero__mobile-art { display: block; position: absolute; z-index: -1; top: 2.5rem; left: 50%; width: 23.25rem; height: 23.25rem; transform: translateX(-50%) rotate(-1.74deg); pointer-events: none; }
  .hero__mobile-art::before { content: ""; position: absolute; inset: 12% 8%; border-radius: 50%; background: radial-gradient(circle, rgba(234,21,117,.36), transparent 68%); filter: blur(1.5rem); }
  .hero__mobile-art img { width: 100%; height: 100%; object-fit: contain; position: relative; }
  .hero__copy { width: 100%; max-width: none; padding-top: 25.3125rem; align-items: center; text-align: center; }
  .hero h1 { width: 100%; font-size: 2.125rem; line-height: 2.75rem; letter-spacing: -.0425rem; }
  .hero-mobile-break { display: block; }
  .hero__copy > p { width: 23rem; max-width: 100%; margin: 1.5rem auto 0; font-size: 1.125rem; line-height: 1.5; }
  .hero-body-desktop { display: none; }
  .hero-body-mobile { display: inline; }
  .hero__actions { width: 100%; margin-top: 1.5rem; flex-direction: column; gap: .75rem; }
  .hero__button { width: 100%; max-width: 300px; height: 3.125rem; padding: 0 1.6875rem; gap: .75rem; border-radius: 3rem; }
  .platform-section { padding: 0; background: #131629; }
  .platform-section__inner { width: 100%; }
  .platform-intro { width: auto; margin: 0; padding: 3.75rem 1.5rem 0; gap: 1.5rem; }
  .platform-intro__eyebrow { width: fit-content; padding: .5rem 1rem; font-size: .875rem; }
  .platform-intro h2 { font-size: 2.125rem; line-height: 1.15; letter-spacing: -.0375rem; }
  .platform-intro > p:last-child { font-size: 1rem; line-height: 1.4; }
  .platform-intro > p:last-child span { display: inline; }
  .challenge-list { width: auto; margin: 3.5rem 1.5rem 0; padding-bottom: 3.75rem; }
  .challenge-row, .challenge-row--reverse { width: 100%; height: auto; min-height: 0; margin: 0 0 3.5rem; display: flex; flex-direction: column; align-items: stretch; gap: 1.25rem; }
  .challenge-row:last-child { margin-bottom: 0; }
  .challenge-row__visual, .challenge-row--reverse .challenge-row__visual { order: 1; width: 100%; height: 13.75rem; flex: 0 0 13.75rem; padding: 1.25rem; border-radius: 1rem; background: linear-gradient(180deg, rgba(255,255,255,.04) 14%, rgba(255,255,255,0) 82%); }
  .challenge-row__visual img { width: auto; height: auto; max-width: 100%; max-height: 100%; transform: none; }
  .challenge-row__copy, .challenge-row--reverse .challenge-row__copy { order: 2; width: 100%; flex: none; transform: none; }
  .challenge-row__copy h3 { font-size: 1.625rem; line-height: 1.3; font-weight: 500; }
  .challenge-row__copy p { max-width: none; margin-top: 1rem; font-size: 1.125rem; line-height: 1.5; }
  .solution-section { margin-top: 0; padding: 3.75rem 1.5rem 4rem; }
  .solution-section__intro h2 { font-size: 2.125rem; line-height: 1.15; }
  .solution-section__body { display: flex; flex-direction: column; gap: 2rem; margin-top: 2rem; }
  .solution-section__copy { display: contents; }
  .solution-force { padding-top: 0; }
  .solution-force + .solution-force { margin-top: 0; }
  .solution-section__visual { order: 3; width: 100%; }
  .solution-section__tagline { margin-top: 2rem; font-size: 1rem; }
  .calculate-banner { min-height: 0; margin: 0 1.5rem; padding: 0; }
  .brain-section { width: 100%; padding: 3.75rem 1.5rem; }
  .brain-section__glow--left { top: 3rem; left: -12rem; width: 28rem; }
  .brain-section__glow--right { top: 3rem; left: auto; right: -13rem; width: 30rem; }
}

@media (min-width: 80rem) {
  .hero__mobile-art, .hero-mobile-break, .hero-body-mobile { display: none; }
  .site-header { width: calc(100% - 30px); max-width: none; }
}

.linkedin-mark {
  color: inherit;
  text-decoration: none;
}

.leader-card--mendi {
  position: relative;
}

.leader-card__linkedin-overlay {
  position: absolute;
  z-index: 1;
  top: 13.3rem;
  left: 50%;
  width: 2.8rem;
  height: 2.8rem;
  transform: translateX(-50%);
}

@media (max-width: 40rem) {
  .leader-card__linkedin-overlay {
    top: 13.3rem;
  }
}

@media (max-width: 79.9375rem) {
  .hero-body-desktop { display: inline; }
  .hero-body-mobile { display: none; }
  .hero-copy-break-before-higher-value { display: block; }

  .calculate-banner__inner > p:not(.calculate-banner__eyebrow) {
    left: 50%;
    width: calc(100% - 2rem);
    text-align: center;
    transform: translateX(-50%);
  }

  .brain-section__copy h2 {
    text-align: center;
  }

  .brain-section__copy h2 br {
    display: none;
  }
  .brain-section__copy h2 span::after {
    content: ' ';
  }
}

/*
 * Compact laptop layout: the desktop artwork and spacing are authored on a
 * 1280px frame. Scale that frame to 900px for screens between 769px and
 * 1023px so the complete page remains inside the available main container.
 */
@media (min-width: 1280px) and (max-width: 1023px) {
  :root {
    --content-width: 80rem;
    font-size: 58.59375%;
  }

  .site-header,
  .site-footer {
    width: min(calc(100% - 30px), var(--content-width));
  }

  .site-header {
    max-width: var(--content-width) !important;
  }

  /* Give the hero a little more vertical balance at the reduced scale. */
  .hero {
    width: 100%;
    max-width: none;
    min-height: 47rem;
    padding-top: 12rem;
    padding-bottom: 5rem;
    gap: 2rem;
  }

  .hero__background {
    width: 100%;
    max-width: none;
  }

  .hero__copy {
    width: 36rem;
    flex-basis: 36rem;
  }

  .hero h1 {
    max-width: 36rem;
    font-size: 3.25rem;
    line-height: 1.12;
  }

  .hero__copy > p {
    max-width: 31rem;
  }

  /* Keep each challenge row inside the 900px frame and reduce the empty
     space between the copy and its illustration. */
  .platform-section {
    min-height: 0;
    padding-bottom: 6rem;
  }

  .platform-intro {
    width: 40rem;
    padding-top: 4rem;
    margin-left: 1rem;
    gap: 1.5rem;
  }

  .platform-intro h2,
  .platform-intro h2 span {
    font-size: 3.15rem;
  }

  .challenge-list {
    width: calc(100% - 2rem);
    margin: 6rem 1rem 0;
  }

  .challenge-row,
  .challenge-row--reverse {
    width: 100%;
    height: 17.5rem;
    gap: 4rem;
    margin-bottom: 3rem;
  }

  .challenge-row__copy {
    width: 27rem;
    flex-basis: 27rem;
  }

  .challenge-row__copy h3 {
    font-size: 2.15rem;
  }

  .challenge-row__copy p {
    margin-top: 1rem;
    font-size: 1rem;
  }

  .challenge-row__visual {
    width: 30rem;
    height: 17.5rem;
    flex-basis: 30rem;
  }
}

html {
  scroll-behavior: smooth;
  scroll-padding-top: 5rem;
}

/* Final tablet overrides: keep these after the desktop declarations so the
 * compact-laptop layout wins the cascade at 769px–1023px. */
@media (min-width: 1280px) and (max-width: 1023px) {
  :root {
    --content-width: 80rem;
    font-size: 58.59375%;
  }

  .site-header,
  .site-footer {
    width: min(calc(100% - 30px), var(--content-width));
  }

  .site-header {
    max-width: var(--content-width) !important;
  }

  .hero {
    min-height: 47rem;
    padding-top: 12rem;
    padding-bottom: 5rem;
    gap: 2rem;
  }

  .hero__copy {
    width: 36rem;
    flex-basis: 36rem;
  }

  .hero h1 {
    max-width: 36rem;
    font-size: 3.25rem;
    line-height: 1.12;
  }

  .hero__copy > p {
    max-width: 31rem;
  }

  .platform-section {
    min-height: 0;
    padding-bottom: 6rem;
  }

  .platform-intro {
    width: 40rem;
    padding-top: 4rem;
    margin-left: 1rem;
    gap: 1.5rem;
  }

  .platform-intro h2,
  .platform-intro h2 span {
    font-size: 3.15rem;
  }

  .challenge-list {
    width: calc(100% - 2rem);
    margin: 6rem 1rem 0;
  }

  .challenge-row,
  .challenge-row--reverse {
    width: 100%;
    height: 17.5rem;
    gap: 4rem;
    margin-bottom: 3rem;
  }

  .challenge-row__copy {
    width: 27rem;
    flex-basis: 27rem;
  }

  .challenge-row__copy h3 {
    font-size: 2.15rem;
  }

  .challenge-row__copy p {
    margin-top: 1rem;
    font-size: 1rem;
  }

  .challenge-row__visual {
    width: 30rem;
    height: 17.5rem;
    flex-basis: 30rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}

@media (min-width: 1280px) and (max-width: 1023px) {
  .hero,
  .hero__background {
    width: 100%;
    max-width: none;
  }

  /* Keep the desktop hero composition: copy on the left, animation on the
     right, with the full-width video providing the visual half. */
  .hero {
    min-height: 47rem;
    padding: 12rem max(1.5rem, calc((100% - var(--content-width)) / 2 + 1.25rem)) 5rem;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 2rem;
    text-align: left;
  }

  .hero__copy {
    width: 36rem;
    max-width: 36rem;
    flex: 0 0 36rem;
    text-align: left;
  }

  .hero h1 {
    font-size: 3.25rem;
    line-height: 1.12;
  }

  .hero__copy > p {
    max-width: 31rem;
    margin-right: 0;
    margin-left: 0;
  }

  .hero__actions {
    justify-content: flex-start;
  }

  .hero__button {
    margin-right: 0;
    margin-left: 0;
  }
}

@font-face {
  font-family: Biennale-light;
  src: url("../../assets/fonts/Biennale/Biennale-Light.otf") format("opentype");
  font-display: swap;
  font-style: normal;
  font-weight: 300;
}

@font-face {
  font-family: Biennale;
  src: url("../../assets/fonts/Biennale/Biennale-Regular.otf") format("opentype");
  font-display: swap;
  font-style: normal;
  font-weight: 400;
}

@font-face {
  font-family: Biennale-bold;
  src: url("../../assets/fonts/Biennale/Biennale-Bold.otf") format("opentype");
  font-display: swap;
  font-style: normal;
  font-weight: 700;
}

@font-face { font-family: Biennale-medium; src: url("../../assets/fonts/Biennale/Biennale-Medium.otf") format("opentype"); font-display: swap; font-style: normal; font-weight: 500; }


* {
  box-sizing: border-box;
}

body {
  min-width: 320px;
  min-height: 100vh;
  margin: 0;
  display: flex;
  flex-direction: column;
  background: var(--navy);
}

a {
  color: inherit;
}

.site-header,
.site-footer {
  width: min(100% - 3rem, var(--content-width));
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
}

.site-header {
  width: min(100%, var(--content-width));
  min-height: 2.715rem;
  position: absolute;
  z-index: 2;
  top: 3.375rem;
  left: 50%;
  transform: translateX(-50%);
  border-bottom: 0;
}

.site-brand {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  font-size: 2.7rem;
  font-weight: 700;
  text-decoration: none;
}

.site-brand img {
  width: 2.7rem;
  height: 2.7rem;
}

nav {
  display: flex;
  gap: 1.25rem;
}

nav a {
  color: #ffffff;
  font-size: 1rem;
  text-decoration: none;
}

nav a:hover,
nav a:focus-visible,
nav a[aria-current="page"] {
  color: #ff6253;
  text-decoration: underline;
  text-underline-offset: 0.25rem;
}

.site-menu-toggle { display: none; }

main {
  flex: 1;
  position: relative;
  overflow: hidden;
}

.header-background {
  width: 100%;
  height: 53.125rem;
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  overflow: hidden;
  background: var(--navy);
}

.header-background img {
  position: absolute;
  max-width: none;
  height: auto;
}

.header-background .header-glow-left {
  width: 83.17rem;
  top: -11.75rem;
  left: calc(50% - 79.44rem);
}

.header-background .header-glow-right {
  width: 86.09rem;
  top: -14.44rem;
  left: calc(50% + 1.31rem);
}

.section-background-dots {
  height: auto;
  position: absolute;
  z-index: 0;
  pointer-events: none;
  opacity: 0.62;
}

.section-background-dots--platform {
  width: 13rem;
  right: 0;
  top: 5rem;
}

.page-section {
  width: min(100% - 3rem, var(--content-width));
  margin: 0 auto;
  padding: 8rem 0;
}

.page-section--dark {
  min-height: 100vh;
  padding-top: 13rem;
  position: relative;
  z-index: 1;
}

.eyebrow {
  margin: 0 0 1rem;
  color: #ff6253;
  font-size: 0.875rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

h1 {
  max-width: 42rem;
  margin: 0;
  font-size: clamp(2.75rem, 5vw, 5rem);
  line-height: 1;
  letter-spacing: -0.04em;
}

.page-section p:not(.eyebrow) {
  max-width: 34rem;
  margin: 1.5rem 0 0;
  color: var(--muted);
  font-size: 1.125rem;
  line-height: 1.6;
}

.hero {
  width: min(100%, 120rem);
  min-height: 53.125rem;
  margin: 0 auto;
  padding: 15rem max(1.5rem, calc((min(100vw, 120rem) - var(--content-width)) / 2 + 1.25rem)) 8rem;
  display: flex;
  align-items: flex-start;
  gap: 5rem;
  overflow: hidden;
  position: relative;
  z-index: 1;
  background-color: #131528;
}

.hero::before {
  display: none;
}

.hero__glow {
  position: absolute;
  z-index: 0;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  pointer-events: none;
}

.hero::after {
  content: '';
  position: absolute;
  z-index: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: 14rem;
  background: linear-gradient(180deg, rgba(19,21,40,0) 0%, rgba(19,21,40,.56) 58%, #131528 100%);
  pointer-events: none;
}

.hero__background {
  position: absolute;
  z-index: -1;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  pointer-events: none;
}

.hero__copy {
  position: relative;
  z-index: 1;
  width: 39.375rem;
  flex: 0 0 39.375rem;
}

@media (min-width: 80rem) {
  .hero {
    background-color: #131528;
  }

  .hero__background {
    right: auto;
    left: 50%;
    top: 4rem;
    width: 750px;
    height: 700px;
  }
}

@media (min-width: 125rem) {
  .hero {
    width: 100%;
  }

  .hero__copy {
    margin-left: max(0px, calc((100vw - 120rem) / 2));
  }
}

.hero h1 {
  margin: 0;
  font-size: 3.5rem;
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: -0.03em;
}

.hero h1 span {
  background: linear-gradient(82.614deg, #8f3eff 16.749%, #ea1575 53.749%, #ff6253 104.9%);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  font-weight: 500;
}

.hero__copy > p {
  max-width: 39.375rem;
  margin: 2.5rem 0 0;
  color: #fff;
  font-size: 1.125rem;
  line-height: 1.5;
}

.hero__copy > p {
  font-family: Biennale-light, Biennale, Arial, Helvetica, sans-serif;
  font-weight: 300;
}

.hero__copy > p strong {
  display: block;
  color: #fff;
}

.hero__actions {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-top: 2.5rem;
}

.hero__button {
  width: 15.625rem;
  height: 3.5625rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  padding: 0 1.6875rem;
  border-radius: 2.9375rem;
  color: #ffffff;
  background: linear-gradient(103.884deg, #ff6253 19.145%, #ea1575 101.22%);
  font-size: 1rem;
  font-weight: 400;
  text-decoration: none;
  white-space: nowrap;
  box-shadow: 0 0 7.31875rem rgba(255,73,102,.81), -1.1875rem -.5625rem 2.09375rem -.25rem rgba(255,98,83,.46), 1.3125rem .875rem 3.125rem -.0625rem rgba(0,0,0,.36), inset 0 -2px 4px rgba(0,0,0,.27), inset 0 2px 4px rgba(255,255,255,.21);
}

.hero__button--secondary {
  width: 12.5625rem;
  padding: 0 1.9375rem;
  gap: .75rem;
  border: 1px solid rgba(255,255,255,.2);
  background: rgba(255,255,255,.03);
  box-shadow: 0 0 2.75rem rgba(103,70,255,.16);
}

.hero__button-icon {
  position: relative;
  display: inline-block;
  flex: 0 0 1.6875rem;
  width: 1.6875rem;
  height: 1.6875rem;
}

.hero__button-icon--time {
  object-fit: contain;
}

.hero__button .calculate-banner__icon {
  width: 1.5rem;
  height: 1.5rem;
  display: inline-flex;
  flex-direction: column;
  justify-content: space-between;
  padding: .2rem 0;
  box-sizing: border-box;
}

.hero__button .calculate-banner__icon i {
  position: relative;
  display: block;
  width: 1.5rem;
  height: .125rem;
  border-radius: 99px;
  background: #fff;
}

.hero__button .calculate-banner__icon i::after {
  content: '';
  position: absolute;
  top: 50%;
  width: .375rem;
  height: .375rem;
  border: .125rem solid #fff;
  border-radius: 50%;
  background: #ff6253;
  transform: translateY(-50%);
}

.hero__button .calculate-banner__icon i:nth-child(1)::after { left: .3rem; }
.hero__button .calculate-banner__icon i:nth-child(2)::after { left: .82rem; }
.hero__button .calculate-banner__icon i:nth-child(3)::after { left: .48rem; }
}

.hero__visual {
  width: 100%;
  max-width: 44.1875rem;
  height: 30.625rem;
  position: relative;
  flex: 1 1 0;
  min-width: 0;
}

.hero__grid {
  width: 100%;
  height: auto;
  position: absolute;
  top: 0;
  left: 0;
}

.hero__card {
  position: absolute;
  height: auto;
}

.hero__card--pink {
  width: 6.0625rem;
  top: 9.1rem;
  left: 8.8rem;
}

.hero__card--yellow {
  width: 10.375rem;
  top: 11.5rem;
  left: 19.3rem;
}

.hero__card--green {
  width: 6.0625rem;
  top: 19.7rem;
  left: 24.7rem;
}

.hero__card--yellow-small {
  width: 6.0625rem;
  top: 6.2rem;
  left: 30.4rem;
}

.platform-section {
  min-height: 121.875rem;
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 110% 16%, rgba(255, 0, 128, .2), transparent 20rem),
    linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.35) 18.387%, rgba(0,0,0,.594) 67.603%, rgba(0,0,0,.033) 92.788%),
    #131528;
}

.platform-section .section-background-dots--platform {
  right: 0;
  top: 12rem;
}

.platform-section__inner {
  width: min(100%, var(--content-width));
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

.platform-intro {
  width: 45.5rem;
  padding-top: 5.6875rem;
  margin-left: 1.25rem;
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.platform-intro__eyebrow {
  width: 10.329rem;
  box-sizing: border-box;
  margin: 0;
  padding: .7009rem 1.602rem;
  border-radius: 2rem;
  color: #fff;
  background: linear-gradient(83deg, rgba(143,62,255,.2), rgba(234,21,117,.2), rgba(255,98,83,.2));
  font-size: 1.034rem;
  font-weight: 400;
  text-align: center;
}

.platform-intro h2 {
  margin: 0;
  color: #fff;
  font-size: 3.5rem;
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: -.03em;
}

.platform-intro h2 span {
  background: linear-gradient(88deg, #8f3eff -16.75%, #ea1575 53.75%, #ff6253 104.9%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  font-family: Biennale, sans-serif;
  font-size: 3.5rem;
  font-style: normal;
  font-weight: 500;
  line-height: 110%;
  letter-spacing: -0.105rem;
}

.platform-intro > p:last-child {
  max-width: 45.5rem;
  margin: 0;
  color: #BBB7D2;
  font-size: 1.125rem;
  line-height: 1.5;
}

.platform-intro > p:last-child span { display: block; }

.challenge-list {
  width: 75.9375rem;
  margin: 9rem 0 0 1.0625rem;
}

.challenge-row {
  width: 75.9375rem;
  height: 20rem;
  display: flex;
  align-items: center;
  gap: 10.1875rem;
  margin-bottom: 3.75rem;
}

.challenge-row--reverse {
  flex-direction: row-reverse;
}

.challenge-row--reverse:last-child .challenge-row__copy {
  transform: translateY(1.625rem);
}

.challenge-row__copy { width: 31.375rem; flex: 0 0 31.375rem; }

.challenge-row__copy h3 {
  margin: 0;
  color: #fff;
  font-size: 2.375rem;
  font-weight: 500;
  line-height: 1.4;
}

.challenge-row__copy p {
  max-width: 31.4rem;
  margin: 1.5rem 0 0;
  color: #BBB7D2;
  font-size: 1.125rem;
  line-height: 1.5;
}

.challenge-row__copy p span,
.challenge-row__copy p strong { display: block; }
.challenge-row__copy p strong { color: #fff; font-weight: 700; }

.challenge-row__visual {
  width: 34.375rem;
  height: 20rem;
  flex: 0 0 34.375rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 1rem;
}

.challenge-row__visual img {
  width: auto;
  height: auto;
  max-width: none;
  display: block;
}

/* On mobile, challenge illustrations sit directly on the section background. */
@media (max-width: 79.9375rem) {
  .challenge-list .challenge-row__visual {
    background: transparent !important;
    box-shadow: none !important;
  }

  .challenge-list .challenge-row__visual::after {
    display: none !important;
  }
}

.challenge-row__visual--lightweight {
  position: relative;
  overflow: hidden;
  background: linear-gradient(180deg, rgba(255,255,255,.04) 13.861%, rgba(255,255,255,0) 81.683%);
}
.challenge-row__visual--lightweight::after {
  content: "";
  position: absolute;
  width: 15rem;
  height: 3.5rem;
  left: 50%;
  top: 50%;
  transform: translate(-8%, -5%);
  border-radius: 50%;
  background: radial-gradient(ellipse, rgba(234,21,117,.22), transparent 70%);
  filter: blur(1rem);
  pointer-events: none;
}
.challenge-row__visual--lightweight img { position: relative; z-index: 1; width: 11.75rem; height: 11.875rem; object-fit: contain; }

.visually-hidden {
  width: 1px;
  height: 1px;
  position: absolute;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
}

.platform-row {
  height: 28rem;
  display: grid;
  grid-template-columns: 34.375rem 34.375rem;
  align-items: center;
  gap: 2.25rem;
  padding: 0 4.5rem;
}

.platform-row__copy {
  max-width: 30rem;
}

.platform-row__copy h3 {
  margin: 0;
  font-size: 2.25rem;
  font-weight: 400;
  line-height: 1.25;
}

.platform-row__copy h3 span {
  background: linear-gradient(105deg, #ff6253 0%, #ea1575 52%, #8c3fff 100%);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
}

.platform-row__copy p {
  margin: 1.25rem 0 0;
  color: rgba(255, 255, 255, 0.78);
  font-size: 1rem;
  line-height: 1.4;
}

.platform-row__visual {
  width: 34.375rem;
  height: 25.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  justify-self: center;
  overflow: hidden;
  border-radius: 1rem;
}

.platform-row__visual img {
  width: 70%;
  max-width: 100%;
  max-height: 100%;
  height: auto;
  object-fit: contain;
}

.platform-row--reverse .platform-row__copy {
  order: 2;
  transform: translateX(3.125rem);
}

.platform-row--reverse .platform-row__visual {
  order: 1;
}

.runway-section {
  min-height: 0;
  padding-bottom: 8rem;
  position: relative;
  overflow: hidden;
  background: #15172a url("./images/runway_back.svg") center top / cover no-repeat;
}

.section-background-dots--runway {
  right: 0;
  top: 6rem;
  z-index: 1;
}

.runway-section::after {
  width: 100%;
  height: 10rem;
  position: absolute;
  z-index: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  pointer-events: none;
  background: linear-gradient(180deg, rgba(19, 21, 40, 0), var(--navy));
}

.runway-section__inner {
  width: min(100%, var(--content-width));
  margin: 0 auto;
  padding-top: 3.5rem;
  position: relative;
  z-index: 1;
}

.runway-section__heading {
  width: 44rem;
  margin: 0 auto;
  position: relative;
  z-index: 3;
  text-align: center;
}

.runway-section__heading h2 {
  margin: 0;
  font-size: 2.25rem;
  font-weight: 400;
  line-height: 1.2;
}

.runway-section__heading p {
  margin: 0.75rem 0 0;
  color: rgba(255, 255, 255, 0.82);
  font-size: 1.15rem;
  line-height: 1.35;
}

.runway-stage {
  width: 62.5rem;
  height: 62.5rem;
  margin: 1rem auto 0;
  position: relative;
}

.runway-stage__graphic {
  width: 62.5rem;
  height: 62.5rem;
  position: absolute;
  top: -5rem;
  left: 0;
}

.runway-stage > picture {
  display: contents;
}

.runway-step {
  width: 18rem;
  position: absolute;
  text-align: center;
}

.runway-step strong {
  display: block;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.15;
}

.runway-step b {
  width: 2.6rem;
  height: 2.6rem;
  margin: 0 auto 0.55rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: #ffffff;
  background: #f52c76;
  font-size: 1.5rem;
}

.runway-step p {
  margin: 0.35rem 0 0;
  color: rgba(255, 255, 255, 0.82);
  font-size: 1.15rem;
  line-height: 1.3;
}

.runway-step__arrow {
  display: none;
}

.runway-step--one {
  /*top: 3.5rem;*/
  left: calc(50% - 9.5rem);
}

.runway-step--two {
  top: 14.5rem;
  right: -4rem;
}

.runway-step--three {
  top: 30rem;
  left: calc(50% - 9.5rem);
  z-index: 1;
  width: 21rem;
}

.runway-step--four {
  top: 14.5rem;
  left: -4rem;
}

.brain-section {
  position: relative;
  isolation: isolate;
  width: min(100% - 3rem, 80rem);
  margin: 0 auto;
  padding: 9rem 0 9rem;
  background: var(--navy);
}
.brain-section__glow {
  position: absolute;
  z-index: 0;
  width: auto;
  height: auto;
  pointer-events: none;
}
.brain-section__glow--left {
  top: 8rem;
  left: calc(50% - 27rem);
  width: 41rem;
}
.brain-section__glow--right {
  top: 7rem;
  left: calc(50% + 26rem);
  width: 43.625rem;
}
.brain-section__top,
.brain-section__outcomes { position: relative; z-index: 1; }

.brain-section__top {
  min-height: 29.61rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 3rem;
}

.brain-section__copy {
  width: 49rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 3.3125rem;
}

.brain-section__copy h2 {
  margin: 0;
  color: #ffffff;
  font-size: 3.35rem;
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: -1.68px;
}

.brain-section__copy h2 span {
  background: linear-gradient(79deg, #8f3eff 13%, #ea1575 61%, #ff6253 127%);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
}

.brain-section__copy p {
  width: 100%;
  margin: -0.75rem 0 0;
  color: #dcdcdc;
  font-size: 1.125rem;
  line-height: 1.4;
}

.brain-section__button {
  width: 12.875rem;
  height: 3.125rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 1.5rem;
  color: #ffffff;
  background: linear-gradient(103deg, #ff6253 19%, #ea1575 101%);
  box-shadow: 0 0 7.31875rem rgba(255, 73, 102, 0.81), -1.1875rem -0.5625rem 2.09375rem -0.25rem rgba(255, 98, 83, 0.46), 1.3125rem 0.875rem 3.125rem -0.0625rem rgba(0, 0, 0, 0.36), inset 0 -0.125rem 0.25rem rgba(0, 0, 0, 0.27), inset 0 0.125rem 0.25rem rgba(255, 255, 255, 0.21);
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-decoration: none;
}

.brain-section__visual {
  width: 29.34rem;
  height: 29.61rem;
  flex: 0 0 auto;
  overflow: hidden;
}

.brain-section__visual video {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
}

.brain-section__outcomes {
  margin-top: 1rem;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.25rem;
}

.brain-outcome {
  min-height: 15.0625rem;
  padding: 2.5rem 0.5rem;
  border-radius: 1rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1rem;
}

.brain-outcome--rm { padding-right: 1.25rem; padding-left: 1.25rem; }
.brain-outcome--pss .brain-outcome__icon { background: rgba(86, 75, 250, 0.2); }
.brain-outcome--rm .brain-outcome__icon { background: rgba(255, 73, 102, 0.14); }
.brain-outcome--shopping .brain-outcome__icon { background: rgba(255, 98, 83, 0.14); }

.brain-outcome__icon {
  width: 3.125rem;
  height: 3.125rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.8rem;
}

.brain-outcome__icon img { width: 1.5rem; height: 1.5rem; object-fit: contain; }
.brain-outcome--shopping .brain-outcome__icon img { width: 1.5625rem; height: 1.5625rem; }
.brain-outcome h3, .brain-outcome p { margin: 0; }
.brain-outcome h3 { color: #ffffff; font-size: 1.25rem; font-weight: 700; line-height: 1.4; }
.brain-outcome p { margin-top: 1.5rem; color: #dcdcdc; font-size: 1rem; line-height: 1.4; }

.solution-section {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  width: 100%;
  min-height: 72rem;
  box-sizing: border-box;
  padding: 13.5625rem 0 23.4375rem;
  margin-top: 0;
}
.solution-section::before {
  content: '';
  position: absolute;
  z-index: -1;
  top: -7.4375rem;
  right: 0;
  left: 0;
  height: 7.4375rem;
  background: linear-gradient(180deg, #131528 0%, rgba(18, 20, 39, .76) 58%, #101226 100%);
  pointer-events: none;
}
.solution-section__background { position: absolute; top: 3.51%; left: 50%; width: min(100%, 108.0625rem); height: auto; pointer-events: none; transform: translateX(-50%); }

.solution-section__intro,
.solution-section__body {
  width: min(100% - 3rem, 75.5rem);
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

.solution-section__intro { text-align: left; }
.solution-section__eyebrow,
.calculate-banner__eyebrow { display: inline-flex; align-items: center; height: 2.464rem; box-sizing: border-box; margin: 0 0 2rem; padding: .7rem 1.6rem; border-radius: 3.2rem; color: #fff; background: linear-gradient(83deg, rgba(143,62,255,.2), rgba(234,21,117,.2), rgba(255,98,83,.2)); font-size: 1.034rem; font-weight: 400; letter-spacing: 0; text-transform: none; }
.solution-section h2 { max-width: 75.5rem; margin: 0; color: #fff; font-size: 3.5rem; font-weight: 400; line-height: 1.1; letter-spacing: -.03em; }
.solution-section h2 span { background: linear-gradient(82.614deg, #8f3eff 16.749%, #ea1575 53.749%, #ff6253 104.9%); background-clip: text; -webkit-background-clip: text; color: transparent; font-weight: 500; }
.solution-section__body { display: grid; grid-template-columns: 29.5625rem 29.5625rem; column-gap: 17.125rem; width: min(100% - 3rem, 76.25rem); margin-top: 2.8125rem; }
.solution-section__copy { display: contents; }
.solution-force { position: relative; padding-top: 0; }
.solution-force__label { width: 10rem; height: 2.871rem; display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; gap: 1.1875rem; margin: 0; padding: .217rem 1.25rem; border-radius: .75rem; color: #fff; background: #212436; font-size: 1.75rem; font-weight: 700; letter-spacing: 0; text-align: left; }
.solution-force__label::before { content: ''; display: inline-block; width: .625rem; height: .625rem; margin: 0; vertical-align: middle; border-radius: 50%; background: #2B1CFC; opacity: 1; }
.solution-force--push .solution-force__label::before { background: #EA1575; opacity: 1; }
.solution-force h3 { margin: 2.5625rem 0 0; color: #fff; font-size: 1.5rem; font-weight: 500; line-height: 1.4; }
.solution-force > p:last-child { max-width: 29.5625rem; margin: 1.5rem 0 0; color: #BBB7D2; font-size: 1rem; line-height: 1.4; }
.solution-section__visual { display: none; }
.solution-section__tagline { width: min(100% - 3rem, 75.5rem); margin: 2.8125rem auto 0; position: relative; z-index: 2; color: #fff !important; -webkit-text-fill-color: #fff; opacity: 1; filter: none; mix-blend-mode: normal; font-size: 1.5rem; font-weight: 500; line-height: 3rem; }

.calculate-banner { min-height: 34.125rem; box-sizing: border-box; padding: 0; position: relative; isolation: isolate; overflow: visible; background: #111326; text-align: center; }
.calculate-banner::before,
.calculate-banner::after {
  content: '';
  position: absolute;
  z-index: -1;
  width: 24rem;
  height: 24rem;
  border-radius: 50%;
  filter: blur(4.5rem);
  pointer-events: none;
}
.calculate-banner::before { left: -10rem; background: rgba(255,73,102,.16); }
.calculate-banner::after { right: -10rem; background: rgba(86,75,250,.16); }
.calculate-banner::before,
.calculate-banner::after { top: 50%; transform: translateY(-50%); }
.calculate-banner .section-background-dots--calculate { width: 13rem; left: -4rem; top: 22rem; z-index: 1; opacity: .62; transform: rotate(180deg); }
.calculate-banner__inner { width: min(100% - 3rem, 80rem); height: 34.125rem; box-sizing: border-box; margin: 0 auto; position: relative; overflow: hidden; border-radius: 1.5rem; background: linear-gradient(90deg, rgba(0,0,0,.2), rgba(0,0,0,.2)), #8f3eff; }
.calculate-banner__inner::after { content: ''; position: absolute; z-index: 2; left: -4.90625rem; top: 8.125rem; width: 89.8125rem; height: 27.3125rem; background: linear-gradient(180deg, rgba(0,0,0,0), rgba(0,0,0,.43) 40.525%, rgba(0,0,0,.82) 91.346%); pointer-events: none; }
.calculate-banner__input { position: absolute; z-index: 1; left: -6.1875rem; top: 24.724rem; width: 44.363rem; height: 48.256rem; object-fit: cover; transform: translateY(-50%); }
.calculate-banner__confirmation { position: absolute; z-index: 1; left: 39.656rem; top: 4.125rem; width: 46.79rem; height: 50.071rem; object-fit: cover; transform: rotate(8.1deg); transform-origin: center; }
.calculate-banner__inner > h2,
.calculate-banner__inner > p,
.calculate-banner__inner > a { position: absolute; z-index: 3; }
.calculate-banner__eyebrow { color: #ff6253; }
.calculate-banner h2 { top: 12rem; left: 50%; width: 43.25rem; margin: 0; color: #fff; font-size: 3.125rem; font-weight: 400; line-height: 1.1; letter-spacing: -.09375rem; text-align: center; transform: translate(-50%, -50%); }
.calculate-banner__inner > p:not(.calculate-banner__eyebrow) { top: 20.5rem; left: 17.72rem; width: 44.5rem; margin: 0; color: #fff; font-size: 1rem; line-height: 1.4; text-align: center; transform: translateY(-50%); }
.calculate-banner__button { top: 24.112rem; left: 33.281rem; width: 13.375rem; height: 3.456rem; display: inline-flex; align-items: center; justify-content: center; gap: .6875rem; box-sizing: border-box; margin: 0; padding: 0; border-radius: 1.5rem; color: #fff; background: linear-gradient(102deg, #ff6253 19%, #ea1575 101%); box-shadow: -1.1875rem -.5625rem 2.09375rem -.25rem rgba(255,98,83,.46), 1.3125rem .875rem 3.125rem -.0625rem rgba(0,0,0,.36), inset 0 -.125rem .25rem rgba(0,0,0,.27), inset 0 .125rem .25rem rgba(255,255,255,.21); font-size: 1rem; font-weight: 600; text-decoration: none; }
.calculate-banner__button > span:last-child { font-size: 1rem; }
.calculate-banner__icon { width: 1.5rem; height: 1.5rem; display: inline-flex; flex-direction: column; justify-content: space-between; padding: .2rem 0; box-sizing: border-box; }
.calculate-banner__icon i { position: relative; display: block; width: 1.5rem; height: .125rem; border-radius: 99px; background: #fff; }
.calculate-banner__icon i::after { content: ''; position: absolute; top: 50%; width: .375rem; height: .375rem; border: .125rem solid #fff; border-radius: 50%; background: #ff6253; transform: translateY(-50%); }
.calculate-banner__icon i:nth-child(1)::after { left: .3rem; }
.calculate-banner__icon i:nth-child(2)::after { left: .82rem; }
.calculate-banner__icon i:nth-child(3)::after { left: .48rem; }

@media (max-width: 79.9375rem) {
  .solution-section { margin-top: 0; padding-bottom: 4rem; }
  .solution-section__body { display: block; margin-top: 2rem; }
  .solution-force { padding-top: 2rem; }
  .solution-force + .solution-force { margin-top: 2rem; }
  .solution-force__label { text-align: left; }
  .solution-force h3 { margin-top: 1.5rem; }
  .solution-section__tagline { font-size: 2rem; }
  .calculate-banner { min-height: 0; padding: 5rem 1.5rem; }
  .calculate-banner__inner { width: 100%; height: 27rem; padding: 0 1rem; }
  .calculate-banner__input { left: -12rem; top: 12rem; }
  .calculate-banner__confirmation { left: 16rem; }
  .calculate-banner h2 { top: 8rem; width: calc(100% - 2rem); font-size: 2rem; letter-spacing: -.04rem; }
  .calculate-banner__inner > p:not(.calculate-banner__eyebrow) { top: 15rem; left: 1.5rem; width: calc(100% - 3rem); font-size: .75rem; }
  .calculate-banner__button { top: 19rem; left: 50%; width: 11rem; height: 3rem; transform: translateX(-50%); }
}

.content-section {
  width: min(100% - 3rem, var(--content-width));
  margin: 0 auto;
  padding: 8rem 0;
}

.content-section h2 {
  max-width: 55rem;
  margin: 0;
  font-size: clamp(2rem, 4vw, 3.75rem);
  line-height: 1.15;
}

.feature-grid {
  margin-top: 5rem;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 3rem;
}

.feature-grid h3 {
  margin: 0;
  font-size: 1.25rem;
}

.feature-grid p {
  margin: 1.5rem 0 0;
  color: var(--muted);
  line-height: 1.6;
}

.content-section--compact {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.contact-section {
  width: 100%;
  min-height: 59.25rem;
  margin: 0 auto;
  padding: 4.75rem 1.5rem 12.25rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  background-image:
    url("./images/contact_blur_left.svg"),
    url("./images/contact_blur_right.svg"),
    linear-gradient(180deg, #151326 0%, #05050a 100%);
  background-position: left top, right top, center;
  background-repeat: no-repeat;
  background-size: auto 100%, auto 100%, cover;
}

.contact-section > h2 {
  margin: 0;
  font-size: 2rem;
  font-weight: 400;
  line-height: 1.2;
}

.contact-card {
  width: min(100%, 68.75rem);
  min-height: 38.1875rem;
  margin-top: 2.25rem;
  padding: 1.25rem;
  display: grid;
  grid-template-columns: 24.25rem 1fr;
  gap: 2rem;
  border: 1px solid rgba(255, 255, 255, 0.04);
  border-radius: 1.25rem;
  background: linear-gradient(110deg, rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.035));
}

.contact-card__intro {
  width: 24.25rem;
  height: 32.75rem;
  align-self: center;
  padding: 3.75rem 2rem 1.25rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  border-radius: 0.75rem;
  text-align: center;
  background: radial-gradient(circle at 50% 0%, #51259a 0%, #2c1744 48%, #2b193e 100%);
}

.contact-card__mark {
  width: 3.25rem;
  height: 3.25rem;
  margin-bottom: 2rem;
  filter: grayscale(1) brightness(0) invert(1);
}

.contact-card__eyebrow {
  margin: 0;
  color: #a548ff;
  font-size: 1.25rem;
}

.contact-card__intro h3 {
  margin: 0.5rem 0 0;
  font-size: 2rem;
  font-weight: 300;
  line-height: 1.08;
}

.contact-card__copy {
  margin: 1.5rem 0 0;
  color: rgba(255, 255, 255, 0.68);
  font-size: 1rem;
  line-height: 1.45;
}

.contact-form {
  height: 32.75rem;
  align-self: center;
  display: flex;
  flex-direction: column;
  font-size: 1rem;
  padding: 0.15rem 0.25rem 0;
}

.contact-form__intro {
  margin: 0 0 1rem;
  color: rgba(255, 255, 255, 0.8);
  font-size: 1rem;
}

.contact-form__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem 1.25rem;
}

.contact-form label {
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
  color: rgba(255, 255, 255, 0.86);
  font-size: 1rem;
}

.contact-form__wide {
  grid-column: 1 / -1;
}

.contact-form input,
.contact-form textarea {
  width: 100%;
  border: 1px solid rgba(255, 255, 255, 0.13);
  border-radius: 0.2rem;
  outline: none;
  color: #ffffff;
  background: rgba(4, 5, 12, 0.6);
  font: inherit;
}

.contact-form input {
  height: 2.5rem;
  padding: 0 0.6rem;
}

.contact-form textarea {
  min-height: 5rem;
  padding: 0.6rem;
  resize: vertical;
}

.contact-form input:focus,
.contact-form textarea:focus {
  border-color: #8c3fff;
}

.contact-form input:-webkit-autofill,
.contact-form input:-webkit-autofill:hover,
.contact-form input:-webkit-autofill:focus,
.contact-form textarea:-webkit-autofill,
.contact-form textarea:-webkit-autofill:hover,
.contact-form textarea:-webkit-autofill:focus {
  -webkit-text-fill-color: #ffffff;
  -webkit-box-shadow: 0 0 0 1000px rgba(4, 5, 12, 0.6) inset;
  box-shadow: 0 0 0 1000px rgba(4, 5, 12, 0.6) inset;
  transition: background-color 9999s ease-out 0s;
}

.contact-form input:-moz-autofill,
.contact-form textarea:-moz-autofill {
  color: #ffffff;
  background-color: rgba(4, 5, 12, 0.6);
}

.contact-form button {
  width: 13.5rem;
  min-width: 13.5rem;
  height: 3.125rem;
  margin-top: auto;
  border: 0;
  border-radius: 1.5rem;
  color: #ffffff;
  background: linear-gradient(105deg, #ff6253 19%, #ea1575 101%);
  box-shadow: 0 0 7.31875rem rgba(255, 73, 102, 0.81), -1.1875rem -0.5625rem 2.09375rem -0.25rem rgba(255, 98, 83, 0.46), 1.3125rem 0.875rem 3.125rem -0.0625rem rgba(0, 0, 0, 0.36), inset 0 -0.125rem 0.25rem rgba(0, 0, 0, 0.27), inset 0 0.125rem 0.25rem rgba(255, 255, 255, 0.21);
  font: inherit;
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
}

.contact-form__status {
  min-height: 0;
  margin: 0;
  color: #bca0ff;
  font-size: 1rem;
}

.site-footer {
  min-height: 6.25rem;
  width: 100%;
  color: #ffffff;
  background: #000000;
  font-size: 0.75rem;
}

.site-footer__inner {
  width: min(100% - 5rem, 80rem);
  min-height: 6.25rem;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
}

.site-footer__brand,
.site-footer__social {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
}

.site-footer__brand {
  justify-self: start;
  gap: 0.45rem;
  font-size: 1rem;
  font-weight: 700;
}

.site-footer__brand img {
  width: 1.4rem;
  height: 1.4rem;
  filter: grayscale(1) brightness(0) invert(1);
}

.site-footer__legal {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
}

.site-footer__legal a {
  color: inherit;
  text-decoration: none;
}

.site-footer__legal a:hover,
.site-footer__legal a:focus-visible {
  text-decoration: underline;
  text-underline-offset: 0.2rem;
}

.site-footer__social {
  justify-self: end;
  width: 1.375rem;
  height: 1.375rem;
  justify-content: center;
  border-radius: 0.15rem;
  background: #ffffff;
}

.site-footer__social img {
  width: 0.875rem;
  height: 0.875rem;
  filter: brightness(0) saturate(100%);
}

@media (max-width: 79.9375rem) {
  .site-header,
  .page-section {
    width: min(100% - 2rem, var(--content-width));
  }

  .site-header {
    min-height: 5.5rem;
  }

  .site-brand {
    font-size: 1.4rem;
  }

  .site-brand img {
    width: 2.1rem;
    height: 2.1rem;
  }

  nav {
    gap: 0.75rem;
  }

  nav a {
    font-size: 0.8rem;
  }

  .page-section {
    padding: 8rem 0 5rem;
  }

  .hero {
    min-height: 52rem;
    padding: 9rem 1rem 5rem;
    display: block;
  }

  .header-background {
    height: 52rem;
  }

  .header-background .header-glow-left {
    width: 55rem;
    left: -29rem;
  }

  .header-background .header-glow-right {
    width: 55rem;
    left: 8rem;
  }

  .hero__copy,
  .hero__visual {
    width: 100%;
    flex: none;
  }

  .hero__visual {
    flex: none;
  }

  .hero__copy {
    max-width: 35.8125rem;
  }

  .hero h1 {
    font-size: clamp(2.6rem, 12vw, 3.75rem);
  }

  .hero__copy > p {
    margin-top: 2rem;
  }

  .hero__button {
    margin-top: 0;
  }

  .hero__actions { margin-top: 2rem; flex-wrap: wrap; }

  .hero__visual {
    height: 18rem;
    margin-top: 3rem;
    transform: scale(0.72);
    transform-origin: left top;
  }

  .feature-grid {
    margin-top: 3rem;
    grid-template-columns: 1fr;
    gap: 2.5rem;
  }

  .platform-section {
    min-height: auto;
  }

  .platform-section__inner {
    width: min(100% - 2rem, var(--content-width));
  }

  .platform-row,
  .platform-row--reverse {
    height: auto;
    min-height: 28rem;
    grid-template-columns: 1fr;
    gap: 1rem;
    padding: 3rem 0;
  }

  .platform-row__copy,
  .platform-row--reverse .platform-row__copy {
    max-width: 24rem;
    order: 1;
    transform: none;
  }

  .platform-row__visual,
  .platform-row--reverse .platform-row__visual {
    width: 100%;
    min-height: 14rem;
    height: 14rem;
    order: 2;
  }

  .runway-section {
    min-height: auto;
  }

  .runway-section__inner {
    padding: 3rem 1rem;
  }

  .runway-section__heading {
    width: min(100%, 44rem);
  }

  .runway-stage {
    width: 100%;
    height: auto;
    min-height: 42rem;
    margin-top: 2rem;
  }

  .runway-stage__graphic {
    width: 100%;
    height: auto;
    top: 10rem;
    left: 0;
  }

  .runway-step {
    width: 12rem;
  }

  .runway-step--one,
  .runway-step--two,
  .runway-step--three,
  .runway-step--four {
    position: relative;
    inset: auto;
    margin: 0 auto 1rem;
  }

  .contact-section {
    width: 100%;
    min-height: auto;
    padding: 3rem 0;
    background-image: linear-gradient(180deg, #151326 0%, #05050a 100%);
  }

  .contact-section > h2 {
    width: min(100% - 2.5rem, 22.625rem);
    height: auto;
    margin: 0 0 1.5rem;
    overflow: visible;
    clip: auto;
    white-space: normal;
    font-size: 2.25rem;
    line-height: 1.333333;
    text-align: center;
  }

  .contact-card {
    width: 100%;
    min-height: 0;
    margin-top: 0;
    padding: 0;
    display: contents;
    border: 0;
    background: none;
  }

  .contact-form {
    width: min(100% - 2.5rem, 22.625rem);
    height: auto;
    margin-top: 1.875rem;
    padding: 0;
  }

  .contact-card__intro {
    width: min(100% - 2.5rem, 23.25rem);
    height: 32.75rem;
    min-height: 0;
    padding: 4.5625rem 1.5rem 1.25rem;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 1.5rem;
    background:
      radial-gradient(circle at 50% 0%, rgba(143, 62, 255, 0.34), transparent 62%),
      linear-gradient(90deg, rgba(143, 62, 255, 0.18), rgba(143, 62, 255, 0.18));
  }

  .contact-card__mark {
    width: 3.265rem;
    height: 3.265rem;
    margin-bottom: 2.125rem;
  }

  .contact-card__eyebrow {
    font-size: 1.25rem;
    font-weight: 700;
  }

  .contact-card__intro h3 {
    margin-top: 0.375rem;
    font-size: 2rem;
    line-height: 1.21875;
  }

  .contact-card__copy {
    margin-top: 1rem;
    font-size: 1rem;
    line-height: 1.4;
  }

  .contact-form__grid {
    grid-template-columns: 1fr;
    gap: 1rem;
  }

  .contact-form__wide {
    grid-column: auto;
  }

  .contact-form__intro {
    margin-bottom: 2.625rem;
    font-size: 1rem;
  }

  .contact-form label {
    gap: 0.875rem;
    font-size: 1rem;
  }

  .contact-form input {
    height: 3.125rem;
  }

  .contact-form textarea {
    min-height: 12.625rem;
  }

  .contact-form button {
    width: 100%;
    min-width: 0;
    height: 3.125rem;
    margin-top: 0.5rem;
    border-radius: 1.5rem;
    font-size: 1rem;
  }

  .site-footer__inner {
    width: 100%;
    min-height: 0;
    padding: 2rem 2.5rem;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
  }

  .site-footer__brand {
    justify-self: auto;
    gap: 0.45rem;
    font-size: 1rem;
  }

  .site-footer__brand img {
    width: 2.3125rem;
    height: 2.3125rem;
  }

  .site-footer__legal {
    order: 2;
    justify-self: center;
    font-size: 1rem;
    line-height: 1.4;
  }

  .site-footer__social {
    order: 3;
    justify-self: auto;
    width: 1.375rem;
    height: 1.375rem;
  }
}

@media (max-width: 79.9375rem) {
  .platform-section { min-height: auto; padding: 0 1.25rem 5rem; }
  .platform-section__inner { width: 100%; }
  .platform-intro { width: 100%; margin: 0; padding-top: 4rem; }
  .platform-intro h2 { font-size: clamp(2.25rem, 9vw, 3.5rem); }
  .platform-intro > p:last-child { font-size: 1rem; }
  .challenge-list { width: 100%; margin-top: 4rem; }
  .challenge-row,
  .challenge-row--reverse { min-height: 0; display: flex; flex-direction: column; align-items: stretch; gap: 1.5rem; margin-bottom: 4rem; }
  .challenge-row--reverse .challenge-row__copy,
  .challenge-row--reverse .challenge-row__visual { order: initial; }
  .challenge-row__copy h3 { font-size: 1.4rem; }
  .challenge-row__copy p { margin-top: 1rem; font-size: 1rem; }
  .challenge-row__visual { width: 100%; height: 16rem; }
}

/* Final Figma alignment overrides */
  .platform-section { min-height: 121.875rem; }
.platform-row { grid-template-columns: 31.25rem 34.375rem; gap: 5rem; padding: 2.5rem 4.6875rem; }
.platform-row__copy h3 { font-weight: 500; line-height: 1.333333; }
.platform-row__copy p { margin-top: 2rem; color: #cfcfcf; font-size: 1.125rem; }
.platform-row__visual {
  background: linear-gradient(
    180deg,
    rgba(29, 31, 53, 0.98) 0%,
    rgba(29, 31, 53, 0.88) 30%,
    rgba(29, 31, 53, 0) 78%
  );
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.015);
}
.platform-row__visual img {
  width: auto;
}

/* About page — Figma About us (2172:138) */
.about-page main { background: var(--navy); }
.legal-page main { background: var(--navy); }
.legal-content {
  width: min(100% - 3rem, 80rem);
  min-height: 42rem;
  margin: 0 auto;
  padding: 15rem 0 7rem;
  text-align: left;
}
.legal-content h1 {
  width: min(100%, 60rem);
  max-width: none;
  margin: 0 auto;
  text-align: left;
  font-size: 3.75rem;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: 0;
}
.legal-content__body {
  width: min(100%, 60rem);
  min-height: 20rem;
  margin: 3rem auto 0;
  text-align: left;
}
.legal-content__body h2 {
  margin: 3rem 0 1rem;
  color: #ffffff;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.35;
}
.legal-content__body h2:first-child { margin-top: 0; }
.legal-content__body h3 {
  margin: 1.5rem 0 .75rem;
  color: #ffffff;
  font-size: 1.1rem;
  font-weight: 500;
  line-height: 1.4;
}
.legal-content__body p,
.legal-content__body li {
  color: #cfcfd8;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.6;
}
.legal-content__body p { margin: 0 0 1rem; }
.legal-content__body ol { margin: 0 0 1.25rem; padding-left: 1.5rem; }
.legal-content__body ul { margin: 0 0 1.25rem; padding-left: 1.5rem; }
.legal-content__body li { margin: 0 0 .6rem; padding-left: .25rem; }
.legal-content__body a { color: #ff6253; }
.legal-content__emphasis { color: #ffffff !important; font-weight: 500 !important; }
.legal-content__meta { margin-top: 2rem !important; color: #b8aab6 !important; }
.about-hero { min-height: 61.5625rem; padding: 22.9rem max(1.5rem, calc((100% - 80rem) / 2)) 8rem; position: relative; overflow: hidden; background: var(--navy); }
.about-hero__art { position: absolute; z-index: 0; top: 0; left: 50%; width: 120rem; height: 61.5625rem; max-width: none; transform: translateX(-50%); object-fit: cover; object-position: center top; }
.about-hero h1 { width: 33.1rem; position: relative; z-index: 1; margin: 0; font-size: 3.125rem; font-weight: 400; line-height: 1.4; letter-spacing: 0; }
.about-hero h1 em { background: linear-gradient(88deg,#8f3eff 16%,#ea1575 54%,#ff6253 105%); background-clip: text; -webkit-background-clip: text; color: transparent; font-style: normal; }
.about-title-mobile { display: none; }
.about-hero__glow { display: none; position: absolute; border-radius: 50%; filter: blur(5rem); pointer-events: none; }
.about-hero__glow--left { width: 32rem; height: 28rem; left: -10rem; bottom: -3rem; background: rgba(255,73,102,.25); }
.about-hero__glow--right { width: 35rem; height: 35rem; right: 6rem; bottom: -5rem; background: rgba(86,75,250,.22); }
.about-orbit { display: none; position: absolute; border: 1px solid rgba(255,255,255,.07); border-radius: 50%; transform: rotate(-18deg); opacity: .8; }
.about-orbit--one { width: 50rem; height: 30rem; right: 2rem; top: 16rem; }
.about-orbit--two { width: 38rem; height: 25rem; right: 9rem; top: 20rem; border-color: rgba(255,98,83,.18); }
.about-story { min-height: 41.75rem; width: min(100% - 3rem, 66rem); margin: 0 auto; padding: 8rem 0; display: grid; grid-template-columns: 1fr 1fr; gap: 4.5625rem; align-items: start; position: relative; isolation: isolate; overflow: visible; }
.about-story__art { position: absolute; z-index: -1; top: -28.63%; left: 50%; width: 100vw; height: 165.45%; max-width: none; transform: translateX(-50%); object-fit: fill; pointer-events: none; }
.about-story__copy { color: #b8aab6; font-size: 1.777rem; font-weight: 500; line-height: 1.4; position: relative; }
.about-story__copy p { margin: 0; }
.about-story__copy strong { color: #fff; font-weight: 500; }.opportunity { margin-top: 4.5rem; color: #fff; }.opportunity > strong { color: #d02eff; font-weight: 700; }.opportunity p { margin-top: .35rem; }.opportunity em { padding: .05em .1em; border-radius: .35rem; font-style: normal; background: linear-gradient(105deg,#ff6253,#ea1575); box-shadow: 0 0 2rem rgba(255,73,102,.7); }.about-story small { display: block; margin-top: 4.4rem; color: #b8aab6; font-size: 1.25rem; font-weight: 300; }
.leadership { width: 100%; margin: 0; padding: 6.8rem 1.5rem 7rem; position: relative; isolation: isolate; overflow: hidden; background: #131528; }.leadership__art { position: absolute; z-index: -1; top: 0; left: 50%; width: 120.3125rem; height: 56.285rem; max-width: none; transform: translateX(-50%); object-fit: cover; object-position: center top; pointer-events: none; }.leadership .section-heading, .leadership .leader-grid { width: min(100%, 80rem); margin-right: auto; margin-left: auto; }.section-heading { text-align: center; }.section-heading h2 { margin: 0; font-size: 2.25rem; font-weight: 500; line-height: 1.333; }.section-heading p { margin: .35rem 0 0; color: #cfcfcf; font-size: 1.25rem; }.leader-grid { margin-top: 5rem; display: grid; grid-template-columns: repeat(5, 11.5rem); grid-template-rows: auto auto; justify-content: space-between; column-gap: 1.5rem; row-gap: 0; }.leader-card { position: relative; text-align: center; }.leader-card--alon { grid-column: 1; grid-row: 1; }.leader-card--guy { grid-column: 3; grid-row: 1; }.leader-card--nitzan { grid-column: 5; grid-row: 1; }.leader-card--idan { grid-column: 2; grid-row: 2; margin-top: -6rem; }.leader-card--mendi { grid-column: 4; grid-row: 2; margin-top: -6rem; }.leader-photo { height: 15.5rem; overflow: hidden; border: .625rem solid var(--navy); border-radius: 8rem 8rem 6rem 6rem; outline: .1rem solid rgba(255,255,255,.08); background: #ff6253; }.leader-card--guy .leader-photo { background: #8f3eff; }.leader-card--mendi .leader-photo { background: #ffa600; }.leader-card--nitzan .leader-photo { background: #ff4966; }.leader-card--idan .leader-photo { background: #564bfa; }.leader-photo img { width: 100%; height: 100%; object-fit: cover; object-position: center top; }.linkedin-mark { width: 2.8rem; height: 2.8rem; margin: -1.25rem auto .4rem; position: relative; display: grid; place-items: center; border: .45rem solid var(--navy); border-radius: .5rem; color: #fff; background: #ff4966; font-size: 1.65rem; font-weight: 700; line-height: 1; }.leader-card h3 { margin: 0; font-size: 1rem; font-weight: 700; }.leader-card p { margin: .1rem 0 0; color: #8d9db0; font-size: 1rem; }
.leadership__background { position: absolute; inset: 0; z-index: -1; pointer-events: none; }
.leader-card__render { display: block; width: 11.5rem; height: 19.676rem; max-width: none; }
.careers { width: min(100% - 3rem, 78.75rem); min-height: 21.2rem; margin: 0 auto 6rem; padding: 4rem 1.25rem; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2.2rem; border-radius: 1.5rem; text-align: center; background: rgba(54,34,102,.29); }.careers h2 { margin: 0; font-size: 2.25rem; font-weight: 500; }.careers p { max-width: 35rem; margin: 0; font-size: 1.125rem; line-height: 1.4; }.gradient-button { width: 16.75rem; height: 3.125rem; display: inline-flex; align-items: center; justify-content: center; border-radius: 1.5rem; color: #fff; background: linear-gradient(107deg,#ff6253 19%,#ea1575 101%); box-shadow: 0 0 7.31875rem rgba(255,73,102,.81), -1.1875rem -.5625rem 2.09375rem -.25rem rgba(255,98,83,.46), 1.3125rem .875rem 3.125rem -.0625rem rgba(0,0,0,.36), inset 0 -2px 4px rgba(0,0,0,.27), inset 0 2px 4px rgba(255,255,255,.21); font-size: 1rem; font-weight: 700; letter-spacing: .05em; text-decoration: none; }
.careers-decoration { width: 100%; height: 7.875rem; margin: 20px 0; display: flex; align-items: center; justify-content: center; background: #131528; }.careers-decoration img { display: block; width: 11.0625rem; height: 7.875rem; }
.about-page .contact-section { margin-top: 0; }

@media (max-width: 79.9375rem) {
  .legal-content {
    width: calc(100% - 2.5rem);
    min-height: 31rem;
    padding: 10rem 0 4rem;
  }
  .legal-content h1 { font-size: 2.375rem; }
  .legal-content__body { min-height: 13rem; margin-top: 2rem; }

  .about-hero { min-height: 52rem; padding: 12rem 1.25rem 5rem; display: flex; align-items: center; }.about-hero h1 { width: 100%; font-size: clamp(2.35rem, 10vw, 3.1rem); line-height: 1.3; }.about-orbit--one { width: 34rem; height: 22rem; right: -15rem; top: 18rem; }.about-orbit--two { right: -12rem; top: 21rem; }.about-story { width: min(100% - 2.5rem, 40rem); padding: 5rem 0; display: block; }.about-story__copy { font-size: 1.35rem; }.about-story__copy + .about-story__copy { margin-top: 3.5rem; }.opportunity { margin-top: 3rem; }.about-story small { margin-top: 3rem; font-size: 1rem; }.leadership { width: 100%; padding: 4rem 1.25rem 5rem; }.leadership__art { top: -5rem; width: auto; height: 64rem; }.section-heading h2 { font-size: 2rem; }.leader-grid { margin-top: 3rem; display: flex; flex-wrap: wrap; gap: 2.5rem 1rem; justify-content: space-between; }.leader-card, .leader-card--alon, .leader-card--guy, .leader-card--nitzan, .leader-card--idan, .leader-card--mendi { flex: 0 0 calc(50% - .5rem); grid-column: auto; grid-row: auto; margin-top: 0; }.leader-card--mendi { flex-basis: 11.5rem; margin-right: auto; margin-left: auto; }.leader-photo { height: 15.5rem; }.careers { width: calc(100% - 2rem); min-height: 18rem; margin-bottom: 3rem; padding: 2rem 1rem; }.careers h2 { font-size: 2rem; }.careers p { font-size: 1rem; }.gradient-button { width: 100%; max-width: 16.75rem; }
}

@media (max-width: 79.9375rem) {
  .about-hero {
    min-height: 52rem;
    padding: 12.5rem 1.25rem 4rem;
    align-items: flex-start;
  }
  .about-hero__background {
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
  }
  .about-hero__art {
    top: 22rem;
    left: 50%;
    width: min(401px, 100vw);
    height: auto;
    transform: translateX(-50%);
    object-fit: contain;
  }
  .about-hero h1 {
    width: 100%;
    font-size: 2.375rem;
    line-height: 1.2;
    text-align: center;
  }
  .about-title-desktop { display: none; }
  .about-title-mobile { display: inline; }

  .about-story {
    width: calc(100% - 2.5rem);
    min-height: 592px;
    padding: 2.5rem 1.25rem;
    border-radius: 1.5rem;
    background: rgba(15, 16, 35, .72);
    box-sizing: border-box;
  }
  .about-story__art { opacity: .3; }
  .about-story__copy { font-size: 1.125rem; line-height: 1.45; }
  .about-story__copy + .about-story__copy { margin-top: 3rem; }
  .opportunity { margin-top: 3rem; }

  .leadership { padding: 4rem 0 5rem; }
  .leadership__art { top: -5rem; height: 64rem; }
  .leadership .section-heading { width: calc(100% - 2.5rem); }
  .section-heading h2 { font-size: 1.75rem; line-height: 1.35; }
  .section-heading p { font-size: 1.125rem; }
  .leader-grid {
    width: calc(100% - 1.25rem);
    max-width: 384px;
    margin-top: 3rem;
    gap: 2rem 1rem;
  }
  .leader-card, .leader-card--alon, .leader-card--guy, .leader-card--nitzan, .leader-card--idan, .leader-card--mendi {
    flex: 0 0 calc(50% - .5rem);
    max-width: 184px;
  }
  .leader-card--mendi { flex-basis: 184px; }
  .leader-photo { width: 160px; height: 216px; margin-right: auto; margin-left: auto; }
  .leader-card__render { width: 184px; height: auto; }

  .careers { width: calc(100% - 2.5rem); min-height: 366px; margin-bottom: 0; padding: 2rem 1.25rem; box-sizing: border-box; }
  .careers h2 { font-size: 1.75rem; }
  .careers p { max-width: 319px; }
  .careers-decoration { margin: 20px 0; }
}
.platform-row:nth-child(2) .platform-row__visual img {
  transform: translateY(3.375rem);
}
.platform-row:first-child .platform-row__visual { height: 23rem; }
.runway-section { min-height: 65.875rem; padding-bottom: 0; background: var(--navy); }
.runway-section__inner { width: 100%; padding-top: 0; }
.runway-section__inner { z-index: 0; }
.runway-section__heading { width: 58.25rem; }
.runway-section__heading h2 { font-weight: 500; }
.runway-section__heading p { width: 38.25rem; margin: 1rem auto 0; color: #ffffff; font-size: 1.125rem; line-height: 1.4; }
.runway-stage { width: min(100%, 108rem); margin-top: 1.4375rem; }
.runway-stage__background { width: 100%; height: 55.8556rem; position: absolute; top: 0; left: 0; object-fit: cover; }
.runway-stage__graphic { width: 70rem; height: 70rem; top: -4rem; left: 50%; transform: translateX(-50%); }
.runway-stage__graphic { z-index: 2; }
.runway-step { width: 19.594rem; }
.runway-step { z-index: 3; }
.runway-step strong { font-size: 1.624rem; }
.runway-step b { width: 2.706rem; height: 2.706rem; margin-bottom: 1.083rem; font-size: 1.624rem; }
.runway-step p { color: #dcdcdc; font-size: 1.083rem; line-height: 1.4; }
.runway-step--one { top: 3.728rem; }
.runway-step--two { top: 25rem; right: calc(50% - 32.6rem); }
.runway-step--three { top: 46.25rem;  }
.runway-step--four { top: 25rem; left: calc(50% - 32.6rem); }

.gradient-button { font-weight: 600; }
.leadership .section-heading p { font-weight: 500; }

@media (max-width: 80rem) {
  .section-background-dots {
    display: none;
  }
}

@media (max-width: 79.9375rem) {
  .site-header { width: calc(100% - 2.5rem); min-height: 0; top: 2.5rem; }
  .site-brand { gap: 0.6rem; font-size: 1.5rem; }
  .site-brand img { width: 1.94rem; height: 1.94rem; }
  #main-nav { width: auto; height: auto; display: none; position: absolute; top: 2.75rem; right: 0; flex-direction: column; gap: 1.25rem; padding: 1.5rem; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 0.75rem; background: rgba(19, 21, 40, 0.98); box-shadow: 0 1rem 2rem rgba(0, 0, 0, 0.3); }
  .site-header.is-menu-open #main-nav { display: flex; }
  #main-nav a { display: block; font-size: 1rem; }
  .site-footer__legal { position: static; display: inline-flex; }
  .site-menu-toggle { width: 1.6875rem; height: 1.125rem; display: flex; flex-direction: column; justify-content: space-between; padding: 0; border: 0; background: transparent; cursor: pointer; }
  .site-menu-toggle span { width: 100%; height: 1px; display: block; background: #fff; transition: transform 180ms ease, opacity 180ms ease; }
  .site-header.is-menu-open .site-menu-toggle span:first-child { transform: translateY(8px) rotate(45deg); }
  .site-header.is-menu-open .site-menu-toggle span:nth-child(2) { opacity: 0; }
  .site-header.is-menu-open .site-menu-toggle span:last-child { transform: translateY(-8px) rotate(-45deg); }

  .hero { min-height: 61.6875rem; padding: 10.6875rem 1.6875rem 0; }
  .hero__copy { width: 100%; max-width: 21.8125rem; display: flex; flex-direction: column; }
  .hero h1 { font-size: 2rem; line-height: 1.5; }
  .hero__copy > p { margin-top: 3.125rem; font-size: 1rem; line-height: 1.4; }
  .hero__actions { width: 100%; margin-top: 3.125rem; flex-direction: column; }
  .hero__button { width: 20rem; max-width: 100%; align-self: center; }
  .hero__visual { height: 21.875rem; margin-top: 4rem; transform: none; }

  .platform-section { min-height: auto; }
  .runway-section { margin-top: 50px; }
  .platform-section { padding: 4.8125rem 0 0; }
  .platform-row,
  .platform-row--reverse {
    min-height: 0;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 2rem;
    margin: 0 0 6rem;
    padding: 0;
  }
  .platform-row:last-child { margin-bottom: 3.5rem; }
  .platform-row__copy,
  .platform-row--reverse .platform-row__copy { width: 100%; max-width: none; order: 1; transform: none; }
  .platform-row__copy h3 { font-size: 2rem; line-height: 1.2; }
  .platform-row__copy p { margin-top: 2rem; font-size: 1rem; line-height: 1.4; }
  .platform-row__visual,
  .platform-row--reverse .platform-row__visual { width: 100%; height: 15.234375rem; min-height: 0; order: 2; }
  .platform-row__visual img { max-width: 82%; max-height: 78%; }
  .platform-row:nth-child(2) .platform-row__visual img { transform: translateY(2rem); }
  .platform-row:first-child .platform-row__visual { height: 15.234375rem; }
  .platform-row:nth-child(2) .platform-row__visual img { transform: translateY(2rem); }
  .platform-row__copy h3 { font-size: 1.8rem; }
  .platform-row__copy p { font-size: 1rem; }
  .runway-section { min-height: 0; padding: 0 0 4rem; }
  .runway-section__inner {
    width: 100%;
    padding: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .runway-section__heading {
    width: min(100% - 2.5rem, 22.625rem);
    margin: 1rem 0 0;
    order: 2;
    position: relative;
    z-index: 3;
    text-align: center;
  }
  .runway-section__heading h2 { font-size: 2rem; line-height: 1.2; }
  .runway-section__heading p { width: 100%; margin-top: 1rem; font-size: 1rem; line-height: 1.4; }
  .runway-stage {
    width: 100%;
    min-height: 0;
    margin: 0;
    display: contents;
  }
  .runway-stage__background { display: none; }
  .runway-stage__graphic {
    width: min(100%, 30rem);
    height: auto;
    position: relative;
    left: auto;
    z-index: 1;
    margin-top: -5rem;
    margin-bottom: -6rem;
    transform: none;
    order: 3;
    top: 2rem;
  }
  .runway-step,
  .runway-step--one,
  .runway-step--two,
  .runway-step--three,
  .runway-step--four {
    width: 18.75rem;
    min-height: 0;
    position: relative;
    inset: auto;
    order: 4;
    margin: 0;
    padding: 1.25rem 0.3125rem;
    border-radius: 1rem;
    background: rgba(0, 0, 0, 0.1);
    text-align: center;
  }
  .runway-step strong { font-size: 1.5rem; line-height: 1.2; }
  .runway-step b { width: 2.5rem; height: 2.5rem; margin-bottom: 1rem; font-size: 1.5rem; }
  .runway-step p { margin: 0.75rem auto 0; max-width: 18.125rem; font-size: 1rem; line-height: 1.4; }
  .runway-step__arrow { width: 1.0825rem; height: 2.71875rem; display: block; margin: 1rem auto 0.3125rem; }
  .runway-step::after {
    width: 1rem;
    height: 2.625rem;
    display: block;
    margin: 1rem auto -1.25rem;
    content: "";
    background:
      linear-gradient(rgba(255, 255, 255, 0.9), rgba(255, 255, 255, 0.9)) center top / 2px calc(100% - 8px) no-repeat,
      linear-gradient(45deg, transparent 45%, rgba(255, 255, 255, 0.9) 46% 56%, transparent 57%) left bottom / 8px 8px no-repeat,
      linear-gradient(-45deg, transparent 45%, rgba(255, 255, 255, 0.9) 46% 56%, transparent 57%) right bottom / 8px 8px no-repeat;
  }
  .runway-step::after { display: none; }
  .runway-step--three { margin-top: 0; }
  .section-background-dots--platform { width: 11rem; right: 0; top: 4rem; }
  .section-background-dots--calculate { display: block; width: 11rem; left: 0; top: 4rem; right: auto; }
  .section-background-dots--runway { width: 11rem; right: 0; top: 4rem; }
  .brain-section { width: min(100% - 2rem, 44rem); padding: 3rem 0; }
  .brain-section__top { min-height: 0; flex-direction: column; align-items: stretch; gap: 2rem; }
  .brain-section__copy, .brain-section__visual { width: 100%; }
  .brain-section__visual { order: 1; }
  .brain-section__copy { order: 2; }
  .brain-section__copy { gap: 2rem; }
  .brain-section__copy h2 { font-size: 1.8rem; }
  .brain-section__button,
  .contact-form button { align-self: center; }
  .brain-section__visual { height: auto; aspect-ratio: 469 / 474; }
  .brain-section__outcomes { grid-template-columns: 1fr; gap: 1rem; }
  .brain-outcome, .brain-outcome--rm { padding: 2rem 1.5rem; }
}

/* Tablet mode: keep the design on a centered 750px content rail. */
@media (min-width: 80rem) and (max-width: 64rem) {
  :root { --content-width: 750px; }

  .site-header { width: min(100% - 2.5rem, 750px); }
  .hero {
    width: min(100%, 750px);
    min-height: 55rem;
    padding: 11rem 0 5rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 3rem;
  }
  .hero__copy { width: min(100%, 573px); flex: 0 0 auto; text-align: center; }
  .hero h1 { font-size: 3.25rem; }
  .hero__copy > p { margin-right: auto; margin-left: auto; }
  .hero__button { margin-right: auto; margin-left: auto; }
  .hero__visual { width: min(100%, 600px); flex: 0 0 25rem; }

  .platform-section__inner,
  .runway-section__inner,
  .brain-section,
  .contact-section,
  .page-section { width: min(100% - 2.5rem, 750px); }
  .platform-section { min-height: auto; }
  .platform-row,
  .platform-row.platform-row--reverse {
    height: 24rem;
    min-height: 0;
    padding: 2rem 1.5rem;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 1rem;
  }
  .platform-row__copy,
  .platform-row--reverse .platform-row__copy {
    width: auto;
    max-width: none;
    transform: none;
    text-align: left;
    margin: 0;
  }
  .platform-row__copy h3 { font-size: 1.5rem; line-height: 1.2; }
  .platform-row__copy p { margin-top: 1.25rem; font-size: .875rem; line-height: 1.35; }
  .platform-row__visual,
  .platform-row--reverse .platform-row__visual { width: 100%; height: 18rem; margin: 0; }
  .platform-row__visual img,
  .platform-row--reverse .platform-row__visual img { transform: none; }
  .platform-row:nth-child(2) .platform-row__visual img { transform: none; }
  .platform-row:not(:nth-of-type(2)) .platform-row__visual img {
    width: 75%;
    display: block;
    margin-right: auto;
    margin-left: auto;
  }

  .runway-section__heading { width: min(100%, 650px); }
  .runway-stage { width: min(100%, 700px); }
  .runway-step { width: 13.5rem; }
  .runway-step--three { top: 36.25rem; }
  .runway-step--one,
  .runway-step--three { left: calc(50% - 7.5rem); }
  .runway-step strong { font-size: 1.1rem; }
  .runway-step b { width: 2.2rem; height: 2.2rem; font-size: 1.1em; }
  .runway-step p { font-size: .75rem; }
  .runway-step--two,
  .runway-step--four { width: 11.5rem; }
  .runway-step--two { top: 19rem; right: calc(50% - 23.6rem); }
  .runway-step--four { top: 19rem; left: calc(50% - 23.6rem); }
  .runway-stage__graphic {
    width: 900px;
    height: auto;
    left: 50%;
    transform: translateX(-50%);
  }
  .brain-section__top { min-height: 25rem; flex-direction: row; align-items: center; gap: 2rem; }
  .brain-section__copy { width: 52%; margin: 0; gap: 2.5rem; }
  .brain-section__copy h2 { font-size: 1.75rem; }
  .brain-section__visual { width: 42%; height: auto; aspect-ratio: 469 / 474; }
  .brain-section__outcomes { grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }
  .brain-outcome:last-child { grid-column: auto; width: auto; justify-self: auto; }

  .about-hero { padding-right: 0; padding-left: 0; }
  .about-hero,
  .about-story,
  .leadership,
  .careers,
  .about-page .contact-section,
  .legal-content { width: min(100%, 750px); margin-right: auto; margin-left: auto; }
  .about-story { width: min(100% - 2.5rem, 750px); }
  .leadership .section-heading, .leadership .leader-grid { width: min(100% - 2.5rem, 750px); }
  .leadership .leader-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-template-rows: auto auto;
    column-gap: 1rem;
    row-gap: 0;
    margin-top: 3rem;
  }
  .leadership .leader-card,
  .leadership .leader-card--alon,
  .leadership .leader-card--guy,
  .leadership .leader-card--nitzan,
  .leadership .leader-card--idan,
  .leadership .leader-card--mendi {
    width: 120px;
    margin-top: 0;
    justify-self: center;
  }
  .leadership .leader-card--alon { grid-column: 1; grid-row: 1; }
  .leadership .leader-card--guy { grid-column: 2; grid-row: 1; }
  .leadership .leader-card--nitzan { grid-column: 3; grid-row: 1; }
  .leadership .leader-card--idan { grid-column: 1; grid-row: 2; transform: translateX(calc(50% + 2.5rem)); }
  .leadership .leader-card--mendi { grid-column: 3; grid-row: 2; transform: translateX(calc(-50% - 2.5rem)); }
  .leadership .leader-photo { width: 110px; height: 150px; margin-right: auto; margin-left: auto; border-width: 6px; }
  .leadership .linkedin-mark { width: 28px; height: 28px; margin-top: -12px; border-width: 4px; font-size: 18px; }
  .leadership .leader-card h3,
  .leadership .leader-card p { font-size: .875rem; }
  .leadership .leader-card__render { width: 120px; height: auto; }
  .leadership .leader-card__linkedin-overlay { top: 8.6rem; width: 28px; height: 28px; }
  .careers { width: min(100% - 2.5rem, 750px); }
  .about-page .contact-section { width: 100%; padding-right: 0; padding-left: 0; }
  .legal-content { width: min(100% - 2.5rem, 750px); }
  .legal-content h1, .legal-content__body { width: min(100%, 650px); }

  .contact-section { width: 100%; min-height: auto; padding: 3rem 0 8rem; }
  .contact-card {
    width: min(calc(100% - 2.5rem), 700px);
    min-height: 460px;
    padding: 1rem;
    grid-template-columns: minmax(0, 45%) minmax(0, 1fr);
    gap: 1.25rem;
    border-radius: 1.5rem;
  }
  .contact-card__intro {
    width: 100%;
    height: 403px;
    padding: 3.75rem 1rem 1rem;
    border-radius: 1rem;
  }
  .contact-card__intro h3 { font-size: 1.6rem; }
  .contact-card__copy { font-size: .8125rem; }
  .contact-form { width: 100%; height: 403px; padding: 0; }
  .contact-form__intro { display: none; }
  .contact-form__grid { gap: .9rem .75rem; }
  .contact-form label { gap: .45rem; font-size: .875rem; }
  .contact-form input { height: 2.375rem; }
  .contact-form textarea { min-height: 5rem; }
  .contact-form button { width: 15rem; min-width: 15rem; height: 2.5rem; border-radius: .75rem; }
}

/* Mobile Figma cascade */
@media (max-width: 79.9375rem) {
  .site-menu-toggle span { background: #ff3e70; height: 2px; }
  .challenge-row__visual,
  .challenge-row--reverse .challenge-row__visual { background: transparent !important; box-shadow: none !important; border-radius: 0 !important; padding: 0 !important; }
  .platform-intro h2 { width: 21.375rem; max-width: 100%; font-family: Biennale, sans-serif; font-size: 2.125rem; font-style: normal; font-weight: 400; line-height: 1.15; letter-spacing: -.0375rem; }
  .platform-intro h2 span { font-family: Biennale, sans-serif; font-size: 2.125rem; font-weight: 400; line-height: 1.15; letter-spacing: -.0375rem; }
  .hero { min-height: 58.23rem; padding: 0 1.5rem; }
  .hero__background { display: block; inset: 1rem 0 auto; width: 400px; height: 350px; margin: 0 auto; transform: none; object-fit: fill; object-position: center top; -webkit-mask-image: radial-gradient(ellipse at center, #000 52%, transparent 100%); mask-image: radial-gradient(ellipse at center, #000 52%, transparent 100%); }
  .hero__mobile-art { display: none; }
  .hero__copy { width: 100%; max-width: none; padding-top: 23.23rem; align-items: center; text-align: center; }
  .hero h1 { width: 100%; font-size: 2.125rem; line-height: 2.75rem; letter-spacing: -.0425rem; }
  .hero__copy > p { width: 23rem; margin: 1.5rem auto 0; font-size: 1.125rem; line-height: 1.5; }
  .hero__actions { width: 100%; margin-top: 1.5rem; flex-direction: column; gap: .75rem; }
  .hero__button { width: 100%; max-width: 300px; height: 3.125rem; }
  .platform-section { padding: 0; }
  .platform-intro { padding: 3.75rem 1.5rem 0; gap: 1.5rem; }
  .platform-intro h2 { font-size: 2.125rem; line-height: 1.15; }
  .challenge-list { width: auto; margin: 3.5rem 1.5rem 0; padding-bottom: 3.75rem; }
  .challenge-row, .challenge-row--reverse { width: 100%; height: auto; margin: 0 0 3.5rem; flex-direction: column; gap: 1.25rem; }
  .challenge-row__visual, .challenge-row--reverse .challenge-row__visual { order: 1; width: 100%; height: 13.75rem; flex: 0 0 13.75rem; padding: 1.25rem; }
  .challenge-row__copy, .challenge-row--reverse .challenge-row__copy { order: 2; width: 100%; flex: none; transform: none; }
  .challenge-row__copy h3 { font-size: 1.625rem; line-height: 1.3; }
  .challenge-row__copy p { margin-top: 1rem; font-size: 1.125rem; line-height: 1.5; }
  .solution-section { margin-top: 0; padding: 3.75rem 1.5rem 4rem; }
  .solution-section__body { display: flex; flex-direction: column; gap: 2rem; }
  .calculate-banner { margin: 0 1.5rem; }
  .brain-section { width: 100%; padding: 3.75rem 1.5rem; }
  .solution-section { width: 100%; min-height: 56.875rem; box-sizing: border-box; padding: 3.75rem 1.5rem; overflow: hidden; }
  .solution-section__background { z-index: 0; display: block; top: 25.333rem; left: -3.8125rem; width: 32rem; height: 25.375rem; opacity: 1; mix-blend-mode: normal; filter: none; transform: none; object-fit: fill; }
  .solution-section__intro, .solution-section__body, .solution-section__tagline { z-index: 1; }
  .solution-section__intro, .solution-section__body { width: 100%; margin: 0; }
  .solution-section__intro { display: flex; flex-direction: column; gap: 1.25rem; }
  .solution-section__eyebrow { width: fit-content; height: auto; margin: 0; padding: .5rem 1rem; font-size: .875rem; }
  .solution-section h2 { max-width: 100%; font-size: 1.875rem; font-weight: 400; line-height: 1.15; letter-spacing: -.0375rem; }
  .solution-section h2 span { font-size: 1.875rem; font-weight: 500; line-height: 1.15; }
  .solution-section__body { display: flex; flex-direction: column; gap: 2rem; margin-top: 2rem; }
  .solution-section__copy { display: contents; }
  .solution-force { width: 100%; box-sizing: border-box; padding: 1.75rem 1.5rem; border-radius: 1rem; background: rgba(0,0,0,.1); backdrop-filter: blur(2px); }
  .solution-force__label { width: 7rem; height: 2.375rem; gap: .75rem; margin: 0; padding: .25rem 1rem; border-radius: .75rem; font-size: 1.375rem; }
  .solution-force__label::before { width: .5rem; height: .5rem; }
  .solution-force h3 { margin: 1.5rem 0 0; font-size: 1.25rem; line-height: 1.4; }
  .solution-force > p:last-child { max-width: none; margin: .75rem 0 0; font-size: 1rem; line-height: 1.4; }
  .solution-section__tagline { width: 100%; margin: 2rem 0 0; font-size: 1.125rem; line-height: 1.4; text-align: center; }
  .calculate-banner { min-height: 31.25rem; box-sizing: border-box; padding: 0 1.25rem; margin: 0; }
  .calculate-banner__inner { width: 100%; height: 31.25rem; padding: 0; border-radius: 1.25rem; }
  .calculate-banner__input { left: -2.5rem; top: 31.045rem; width: 17.664rem; height: 19.145rem; transform: translateY(-50%); }
  .calculate-banner__confirmation { left: 7.962rem; top: 20.913rem; width: 20.275rem; height: 21.697rem; }
  .calculate-banner h2 { top: 2.5rem; left: 1rem; width: calc(100% - 2rem); font-size: 1.75rem; font-weight: 400; line-height: 1.15; letter-spacing: -.035rem; transform: none; }
  .calculate-banner__inner > p:not(.calculate-banner__eyebrow) { top: 10.5rem; left: 1.5rem; width: calc(100% - 3rem); font-size: 1rem; line-height: 1.4; transform: none; }
  .calculate-banner__button { top: 17.3125rem; left: 1rem; width: calc(100% - 2rem); height: 3.4566rem; transform: none; border-radius: 2.9375rem; }
  .calculate-banner__button { z-index: 4 !important; opacity: 1 !important; background: linear-gradient(107.9557deg, #ff6253 19.145%, #ea1575 101.22%) !important; }
  .calculate-banner__inner { background: linear-gradient(180deg, #8f3eff 0%, #8634cb 55%, #5b218f 100%) !important; }
  .calculate-banner__inner::after { display: none; }
  .calculate-banner__input, .calculate-banner__confirmation { z-index: 1; }
  .brain-section { width: 100%; min-height: 92.0625rem; box-sizing: border-box; padding: 10rem 1.5rem 0; overflow: hidden; }
  .brain-section__glow--left { top: 6.25rem; left: 15.625rem; width: 31.25rem; }
  .brain-section__glow--right { display: none; }
  .brain-section__top { min-height: 0; display: flex; flex-direction: column; align-items: stretch; gap: 0; }
  .brain-section__copy { display: contents; }
  .brain-section__copy h2 { order: 1; width: 100%;font-size: 2.125rem; font-weight: 400; line-height: 1.15; letter-spacing: -.0375rem; }
  .brain-section__copy h2 span { font-weight: 500; }
  .brain-section__visual { order: 2; width: 16.75rem; height: 16.875rem; margin: 2rem auto 0; aspect-ratio: auto; }
  .brain-section__visual video { width: 100%; height: 100%; object-fit: contain; }
  .brain-section__copy > p { order: 3; width: 100%; margin: 2rem 0 0; font-size: 1rem; line-height: 1.4; text-align: center; }
  .brain-section__copy > .brain-section__button { order: 4; width: 12.875rem; height: 3.125rem; margin: 1.25rem auto 0; }
  .brain-section__outcomes { position: relative; z-index: 1; display: flex; flex-direction: column; gap: 1rem; margin-top: 2rem; }
  .brain-outcome, .brain-outcome--rm { width: 100%; min-height: 13.1875rem; box-sizing: border-box; padding: 1.75rem 1.5rem; }
  .brain-outcome, .brain-outcome--rm {
    border-radius: .75rem;
    background: rgba(8, 9, 27, .72);
  }
  .brain-outcome__icon { width: 3.125rem; height: 2.875rem; }
  .brain-outcome h3 { font-size: .875rem; line-height: 1.2; }
  .brain-outcome p { margin-top: 1.5rem; font-size: 1rem; line-height: 1.4; }
  /* Mobile home-page frame anchors from Figma 4872:121. */
  .hero { min-height: 58.2294rem; }
  .hero {
    background-color: #131629;
  }
  .hero__glow {
    inset: 0 0 auto;
    height: 350px;
    object-position: center top;
  }
  .hero::after { top: 18rem; right: 0; bottom: auto; left: 0; height: 9rem; background: linear-gradient(180deg, rgba(19,22,41,0) 0%, rgba(19,22,41,.72) 55%, #131629 100%); }
  .platform-section { min-height: 150.8125rem; }
  .platform-intro { min-height: 27.25rem; box-sizing: border-box; padding-top: 3.75rem; }
  .challenge-list { margin-top: 0; padding-bottom: 3.75rem; }
  .challenge-row, .challenge-row--reverse { margin-bottom: 3.5rem; }
  .solution-section { min-height: 56.875rem; }
  .calculate-banner { min-height: 31.25rem; }
  .brain-section { min-height: 92.0625rem; }
  .contact-section { padding-top: 6rem; }
  /* Challenge list: Figma 4872:1462 — fluid 375/390/425px layout. */
  .challenge-list { width: auto; margin: 0 1.5rem; padding-bottom: 3.75rem; }
  .challenge-row, .challenge-row--reverse { width: 100%; height: auto; min-height: 0; margin: 0 0 3.5rem; gap: 1.25rem; }
  .challenge-row:last-child { margin-bottom: 0; }
  .challenge-row__visual, .challenge-row--reverse .challenge-row__visual { width: 100% !important; height: 13.75rem; min-height: 13.75rem; flex: 0 0 13.75rem; align-self: stretch; padding: 0 !important; border-radius: 1rem !important; background: transparent !important; box-shadow: none !important; }
  .challenge-row__visual img { width: auto; height: auto; max-width: 100% !important; max-height: 100% !important; }
  .challenge-row:last-child .challenge-row__visual img { width: auto !important; max-width: 100% !important; max-height: 100% !important; }
  .challenge-list .challenge-row__visual img { width: 100% !important; height: auto; max-width: none !important; max-height: none !important; object-fit: contain; }
  .challenge-row__copy, .challenge-row--reverse .challenge-row__copy { width: 100%; }
  .challenge-row__copy h3 { font-size: 1.625rem; line-height: 1.3; letter-spacing: 0; }
  .challenge-row__copy p { margin-top: 1rem; font-size: 1.125rem; line-height: 1.5; }
}

/* Shared Figma Fareplace wordmark. */
.site-brand img,
.site-footer__brand img {
  content: url('./images/figma-logo-fareplace-white.svg');
  width: 10rem;
  height: auto;
  aspect-ratio: 200 / 34.0718;
  object-fit: contain;
  filter: none;
}

.site-brand span,
.site-footer__brand span {
  display: none;
}

.hero-copy-break-before-higher-value { display: block; }

@media (max-width: 79.9375rem) {
  .site-brand img { width: 9.375rem; }
  .site-footer__brand img { width: 8rem; }
  .site-menu-toggle {
    width: 27px;
    height: 18px;
    background: url('./images/figma-menu.svg') center / 30px 21px no-repeat;
  }
  .site-menu-toggle span { display: none; }
}

@media (max-width: 40rem) {
  .contact-section {
    background: #131629;
    background-image: none;
  }

  .site-footer {
    background: #131629;
  }

  .contact-form button {
    margin-top: 1rem;
    box-shadow: -8px -6px 24px rgba(255, 73, 102, .42),
      inset 0 2px 4px rgba(255, 255, 255, .21);
  }

  .about-page .about-story {
    width: calc(100% - 40px);
    min-height: 626px;
    padding: 40px 20px;
    display: flex;
    flex-direction: column;
    gap: 24px;
    border-radius: 24px;
    background: rgba(0, 0, 0, .25);
    backdrop-filter: blur(8px);
  }

  .about-page .about-story__copy {
    max-width: none;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.5;
  }

  .about-page .about-story__copy + .about-story__copy {
    margin-top: 0;
  }

  .about-page .opportunity {
    margin-top: 24px;
    color: #b8aab6;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.5;
  }

  .about-page .opportunity > strong {
    color: transparent;
    background: linear-gradient(83.6869deg, #8f3eff 16.749%, #ea1575 53.749%, #ff6253 104.9%);
    background-clip: text;
    -webkit-background-clip: text;
    font-weight: 700;
  }

  .about-page .opportunity p {
    margin-top: 0;
  }

  .about-page .opportunity em {
    padding: 0;
    color: #fff;
    background: none;
    box-shadow: none;
  }

  .about-page .leadership__background {
    z-index: 0;
  }

  .about-page .leadership .section-heading,
  .about-page .leadership .leader-grid {
    position: relative;
    z-index: 1;
  }

  .about-page .leadership {
    width: 100vw;
    max-width: none;
    margin-left: 50%;
    transform: translateX(-50%);
  }

  .about-page .leadership .section-heading {
    width: calc(100% - 40px);
  }

  .about-page .leadership .leader-grid {
    width: 381px;
    max-width: calc(100% - 21px);
    grid-template-columns: repeat(2, 184px);
    gap: 30px 16px;
  }

  .about-page .leadership .leader-card,
  .about-page .leadership .leader-card--alon,
  .about-page .leadership .leader-card--guy,
  .about-page .leadership .leader-card--nitzan,
  .about-page .leadership .leader-card--idan,
  .about-page .leadership .leader-card--mendi {
    width: 184px;
    max-width: 184px;
  }

  .about-page .leadership .leader-photo {
    width: 160px;
    height: 216px;
  }

  .about-page .leadership__art {
    top: 0rem;
    width: 100%;
  }

  .about-page .leader-card--guy .leader-photo img { content: url('./images/mobile-leadership/guy.png'); }
  .about-page .leader-card--alon .leader-photo img { content: url('./images/mobile-leadership/alon.png'); }
  .about-page .leader-card--nitzan .leader-photo img { content: url('./images/mobile-leadership/nitzan.png'); }
  .about-page .leader-card--idan .leader-photo img { content: url('./images/mobile-leadership/idan.png'); }
  .about-page .leader-card--mendi .leader-card__render { content: url('./images/mobile-leadership/mendi-card.png'); }
}

@media (min-width: 1280px) and (max-width: 1023px) {
  :root { font-size: 100%; --content-width: 750px; }
  .hero h1 { font-size: 3.5rem; }
  .hero__copy > p { font-size: 1.125rem; }
  .platform-intro h2, .platform-intro h2 span { font-size: 3.5rem; }
  .platform-intro > p:last-child { font-size: 1.125rem; }
  .challenge-row__copy h3 { font-size: 2.375rem; }
  .challenge-row__copy p { font-size: 1.125rem; }
  .platform-intro { width: 45.5rem; }
  .challenge-list { width: calc(100% - 2rem); }
  .challenge-row, .challenge-row--reverse { height: 21.5rem; gap: 2.5rem; }
  .challenge-row__copy { width: 19.5rem; flex-basis: 19.5rem; }
  .challenge-row__visual { width: 21.5rem; height: 21.5rem; flex-basis: 21.5rem; }
}

.hero__copy > p strong {
  font-family: Biennale-bold, Biennale, Arial, Helvetica, sans-serif;
  font-weight: 700;
}

@media (max-width: 79.9375rem) {
  .hero {
    padding: 0 0.5rem;
  }

  .hero__copy > p {
    width: 20rem;
  }

  /* Keep challenge artwork at a stable mobile size instead of stretching with the viewport. */
  .challenge-row__visual {
    overflow: hidden;
  }

  .challenge-row__visual img,
  .challenge-row__visual--lightweight img {
    width: 350px !important;
    max-width: none !important;
    height: auto !important;
    max-height: none !important;
    flex: 0 0 auto;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
  }
}

/* Medium screens: keep all content on one centered 700px rail while section
   backgrounds continue to span the full viewport. */
@media (min-width: 768px) and (max-width: 79.9375rem) {
  .site-header,
  .hero__copy,
  .platform-section__inner,
  .runway-section__inner,
  .brain-section,
  .contact-section,
  .page-section,
  .solution-section__intro,
  .solution-section__body,
  .solution-section__tagline,
  .calculate-banner__inner {
    width: min(700px, calc(100% - 2rem));
    margin-left: auto;
    margin-right: auto;
  }

  .site-header { max-width: 700px; }
  .hero__copy { max-width: 700px; }
  .platform-section__inner,
  .runway-section__inner,
  .brain-section,
  .contact-section,
  .page-section,
  .solution-section__intro,
  .solution-section__body,
  .solution-section__tagline,
  .calculate-banner__inner { max-width: 700px; }

  .challenge-list { width: 100%; }
  .platform-section,
  .runway-section,
  .brain-section,
  .contact-section,
  .page-section,
  .solution-section,
  .calculate-banner { width: 100%; }

  .challenge-row__visual img,
  .challenge-row__visual--lightweight img {
    width: 350px !important;
    max-width: none !important;
    height: auto !important;
    max-height: none !important;
    left: 0;
    transform: none;
  }
}

@media (min-width: 600px) and (max-width: 79.9375rem) {
  .challenge-row__visual,
  .challenge-row--reverse .challenge-row__visual {
    width: 293px !important;
    max-width: 293px !important;
    align-self: flex-start;
  }

  .challenge-row__visual img,
  .challenge-row__visual--lightweight img {
    width: 293px !important;
    max-width: none !important;
    left: 0;
    transform: none;
  }
}

@media (max-width: 79.9375rem) {
  .contact-section { background: none; }
  .site-footer { background: #131528; }
  .contact-form button {
    box-shadow: -8px -6px 24px rgba(255, 73, 102, .42),
      inset 0 2px 4px rgba(255, 255, 255, .21);
  }
}

@media (min-width: 600px) and (max-width: 79.9375rem) {
  .hero h1 { font-size: 3.125rem; }
  .hero__copy > p { width: 28rem; }
  .solution-section__background {
    top: 17.333rem;
    left: 1rem;
    width: 100%;
  }

  .calculate-banner h2 {
    top: 6.5rem;
  }

  .calculate-banner__inner > p:not(.calculate-banner__eyebrow) {
    left: 50%;
    top: 13rem;
    width: 28rem;
    transform: translate(-50%, -50%);
  }

  .calculate-banner__button {
    width: 300px;
    left: 50%;
    transform: translateX(-50%);
  }
}

/* Keep desktop typography on compact laptops; only the layout is reduced. */
@media (min-width: 1280px) and (max-width: 1023px) {
  :root {
    font-size: 100%;
    --content-width: 750px;
  }

  .hero h1 { font-size: 3.5rem; }
  .hero__copy > p { font-size: 1.125rem; }
  .platform-intro h2,
  .platform-intro h2 span { font-size: 3.5rem; }
  .platform-intro > p:last-child { font-size: 1.125rem; }
  .challenge-row__copy h3 { font-size: 2.375rem; }
  .challenge-row__copy p { font-size: 1.125rem; }

  .platform-intro { width: 45.5rem; }
  .challenge-list { width: calc(100% - 2rem); }
  .challenge-row,
  .challenge-row--reverse {
    height: 21.5rem;
    gap: 2.5rem;
  }
  .challenge-row__copy {
    width: 19.5rem;
    flex-basis: 19.5rem;
  }
  .challenge-row__visual {
    width: 21.5rem;
    height: 21.5rem;
    flex-basis: 21.5rem;
  }
}

@media (min-width: 1280px) and (max-width: 1023px) {
  .challenge-row__visual img {
    width: auto;
    height: auto;
    max-width: 72%;
    max-height: 72%;
    object-fit: contain;
  }

  .challenge-row__visual--lightweight img {
    width: 72%;
    height: 72%;
    max-width: 72%;
    max-height: 72%;
  }
}

@media (min-width: 1280px) and (max-width: 1023px) {
  .challenge-row,
  .challenge-row--reverse {
    display: flex;
    flex-direction: row;
    align-items: center;
  }

  .challenge-row--reverse {
    flex-direction: row-reverse;
  }

  .challenge-row__visual img,
  .challenge-row__visual--lightweight img {
    width: 88%;
    height: 88%;
    max-width: 88%;
    max-height: 88%;
    object-fit: contain;
  }
}

@media (min-width: 1280px) and (max-width: 1023px) {
  .platform-intro { width: 48rem; margin-left: 1rem; padding-top: 4rem; gap: 1.5rem; }
  .platform-intro h2, .platform-intro h2 span { font-size: 3.4rem; }
  .platform-intro > p:last-child { max-width: 46rem; font-size: 1.35rem; line-height: 1.45; }
  .challenge-list { width: calc(100% - 2rem); margin: 5rem 1rem 0; }
  .challenge-row, .challenge-row--reverse { height: 21rem; gap: 3rem; margin-bottom: 2rem; }
  .challenge-row__copy { width: 27rem; flex-basis: 27rem; }
  .challenge-row__copy h3 { font-size: 2.6rem; line-height: 1.15; }
  .challenge-row__copy p { max-width: 27rem; margin-top: 1.25rem; font-size: 1.35rem; line-height: 1.4; }
  .challenge-row__visual { width: 30rem; height: 21rem; flex-basis: 30rem; }
}

/* Final compact-laptop hero composition. */
@media (min-width: 1280px) and (max-width: 1023px) {
  .hero {
    width: 100%;
    max-width: none;
    min-height: 47rem;
    padding: 12rem max(1.5rem, calc((100% - var(--content-width)) / 2 + 1.25rem)) 5rem;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 2rem;
    text-align: left;
  }

  .hero__background { width: 100%; max-width: none; }
  .hero__copy { width: 36rem; max-width: 36rem; flex: 0 0 36rem; text-align: left; }
  .hero h1 { font-size: 3.25rem; line-height: 1.12; }
  .hero__copy > p { max-width: 31rem; margin-right: 0; margin-left: 0; }
  .hero__actions { justify-content: flex-start; }
  .hero__button { margin-right: 0; margin-left: 0; }
}

@media (min-width: 1280px) and (max-width: 1023px) {
  /* The 750px rail is compact, but challenge copy must remain readable. */
  .platform-intro {
    width: 48rem;
    margin-left: 1rem;
    padding-top: 4rem;
    gap: 1.5rem;
  }

  .platform-intro h2,
  .platform-intro h2 span {
    font-size: 3.4rem;
  }

  .platform-intro > p:last-child {
    max-width: 46rem;
    font-size: 1.35rem;
    line-height: 1.45;
  }

  .challenge-list {
    width: calc(100% - 2rem);
    margin: 5rem 1rem 0;
  }

  .challenge-row,
  .challenge-row--reverse {
    height: 21rem;
    gap: 3rem;
    margin-bottom: 2rem;
  }

  .challenge-row__copy {
    width: 27rem;
    flex-basis: 27rem;
  }

  .challenge-row__copy h3 {
    font-size: 2.6rem;
    line-height: 1.15;
  }

  .challenge-row__copy p {
    max-width: 27rem;
    margin-top: 1.25rem;
    font-size: 1.35rem;
    line-height: 1.4;
  }

  .challenge-row__visual {
    width: 30rem;
    height: 21rem;
    flex-basis: 30rem;
  }
}

@media (min-width: 1280px) and (max-width: 1023px) {
  .hero,
  .hero__background {
    width: 100%;
    max-width: none;
  }
}
/* Omri Ronen is the centered third row of the leadership grid. */
.leader-card--omri { grid-column: 3; grid-row: 3; position: relative; top: -9rem; }
.leader-card--omri .leader-photo img { position: relative; top: 1rem; }
.leader-card--omri .leader-photo { background: #FF7A4D; }
.leader-card--mendi .leader-photo { background: #FFA600; }
.leader-card--mendi .leader-photo img { position: relative; top: 1rem; }
@media (max-width: 79.9375rem) {
  .leader-card--omri { top: 0; }
}
@media (max-width: 40rem) {
  .about-page .leadership .leader-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
  }
  .about-page .leader-card--mendi,
  .about-page .leader-card--omri { grid-column: auto; grid-row: auto; transform: none; }
  .about-page .leader-card--mendi { grid-column: 1; grid-row: 3; }
  .about-page .leader-card--omri { grid-column: 2; grid-row: 3; }
  .about-page .leader-card--omri { flex: 0 0 184px; width: 184px; max-width: 184px; margin: 0; top: 0; }
}
