@import url(./root.css);

.header-left-ellipsis {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 0;
  object-fit: contain;
}

.try-demo-section {
  flex-direction: column;
  position: relative;
  min-height: calc(100vh - 61px);

  .try-demo-hero-wrapper {
    position: relative;
    z-index: 1;
  }

  .header-left-ellipsis {
    height: 100%;
    pointer-events: none;
  }

  .header-top-ellipsis {
    pointer-events: none;
  }

  .demo-video-target,
  .demo-embed-container {
    width: 100%;
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
    overflow: hidden;
    border-radius: 12px;
  }

  .demo-embed-container {
    margin-top: 2rem;
    flex-shrink: 0;
  }

  .demo-video-target video {
    width: 100%;
    min-height: 400px;
    display: block;
  }

  .demo-embed-iframe {
    width: 100%;
    height: calc(100vh - 61px);
    border: none;
    border-radius: 0;
    display: block;
    background: transparent;
  }

  overflow: hidden;
  /* background-image: url(../images/png/try-demo-bg.png); */
  background-position: bottom;
  background-repeat: no-repeat;
  background-size: cover;
  display: flex;
  align-items: center;
  justify-content: center;

  .hero-heading {
    line-height: 58px !important;
    margin-bottom: 40px !important;

    @media (max-width: 767.98px) {
      line-height: 114% !important;
      margin-bottom: 24px !important;
    }
  }

  .try-demo-paragraph {
    margin: 40px 0 24px 0;

    @media (max-width: 767.98px) {
      margin: 24px 0;
    }
  }

  .try-demo-minutes {
    font-size: var(--text-lg);
    color: #EDEFF7;
    font-weight: 600;
    line-height: 34px;
    letter-spacing: var(--tracking-wide);
  }
}

/* Override hero-section padding for try-free-demo: tighter margins */
.hero-section.try-demo-section {
  padding: 0;
}

.join-pilot-section {
  padding-bottom: 160px;

  @media (max-width:1024px) {
    padding: 100px 20px !important;
  }

  @media (max-width:650px) {
    padding: 80px 20px !important;
  }

  .join-pilot-heading {
    margin-bottom: 40px !important;
    line-height: 114% !important;

    @media (max-width: 767.98px) {
      margin-bottom: 24px !important;
    }
  }

  .how-it-works-paragraph {
    @media (max-width: 1139.98px) {
      max-width: 400px;
    }
  }
}

.pilot-access-section {
  padding: 0 20px;

  .pilot-access-container {
    max-width: 1280px;
  }

  .pilot-access-heading {
    margin-top: 48px !important;
    line-height: 58px !important;

    @media (max-width: 767.98px) {
      margin-top: 32px !important;
      line-height: 114% !important;
    }

    .join-pilot-heading {
      display: grid;
      gap: 24px;
    }

  }
}


.card-wrapper {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-top: 72px;

  @media (max-width: 991.98px) {
    margin-top: 52px;
    grid-template-columns: repeat(2, 1fr);

    .card:nth-child(3) {
      grid-column: 1 / -1;
      max-width: 50%;
      margin: 0 auto;
    }
  }

  @media (max-width: 767.98px) {
    margin-top: 36px;
  }

  @media (max-width: 639.98px) {
    grid-template-columns: repeat(1, 1fr);

    .card:nth-child(3) {
      max-width: 100%;
    }
  }

  .card {
    position: relative;
    padding: 47px 32px;
    border-radius: 24px;
    border: 1px solid #667FB440;
    transition: all 0.4s ease;
    overflow: hidden;
    background-color: transparent;

    @media (max-width: 767.98px) {
      padding: 24px 20px;
      border-radius: 16px;
      max-width: 585.3px;
      margin: 0 auto;
    }
  }

  .icon-box {
    transition: all 0.3s ease;
    width: 68px;
    height: 68px;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(98.6deg, #45E7DE 1.54%, #1B5E5A 95.46%);
    margin-bottom: 52px;

    @media (max-width: 1139.98px) {
      margin-bottom: 36px;
    }

    @media (max-width: 991.98px) {
      margin-bottom: 24px;
      height: 48px;
      width: 48px;
      border-radius: 10px;

      svg {
        width: 24px;
        height: 24px;
      }
    }
  }

  /* Text */
  .card h4 {
    font-weight: 600;
    font-size: var(--text-2xl);
    line-height: 37px;
    color: var(--color-gray-100);
    margin-bottom: 14px;
  }

  .card p {
    font-size: var(--text-lg);
    color: #9DA2B3;
    line-height: 34px;
    transition: all 0.3s ease;
    letter-spacing: var(--tracking-wide);
  }
}

.pop-up-section {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  min-height: 100vh;
  display: flex;
  align-items: center;
  padding: 20px;
  background: rgba(0, 0, 0, 0.8);
  backdrop-filter: blur(5px);
  z-index: 9999;

  .pop-up-container {
    max-width: 990px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin: 0 auto;
    padding: 113px 40px;
    backdrop-filter: blur(45px);
    box-shadow: 3px -10px 34px 0px #45e7df98;
    border-radius: 16px;
    position: relative;

    @media (max-width: 991.98px) {
      padding: 64px 20px;

      .pop-up-icon {
        width: 120px;

      }
    }
  }

  .pop-up-container::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 16px;
    padding: 1px;
    background: linear-gradient(98.6deg, #45E7DE 1.54%, #035BE9 95.46%);
    mask:
      linear-gradient(#000 0 0) content-box,
      linear-gradient(#000 0 0);
    mask-composite: exclude;
  }

  .pop-up-title {
    font-size: var(--text-5xxl);
    color: white;
    margin: 59px 0 40px;
    line-height: 50px;
    letter-spacing: var(--tracking-tighter);

    @media (max-width: 991.98px) {
      margin: 32px 0 24px;
    }
  }

  .pop-up-text {
    font-size: var(--text-lg);
    color: #EDEFF7;
    line-height: 34px;
    text-align: center;
    margin-bottom: 8px;
  }

  .cross-icon {
    cursor: pointer;
    top: 40px;
    right: 40px;

    @media (max-width:767.98px) {
      top: 20px;
      right: 20px;
    }

    .cross {

      @media (max-width:767.98px) {
        height: 32px !important;
        width: 32px !important;
      }

      @media (max-width:575.98px) {
        height: 24px !important;
        width: 24px !important;
      }
    }
  }
}

.mt-58 {
  margin-top: 58px !important;

  @media (max-width: 767.98px) {
    margin-top: 32px !important;
  }
}

.pop-up-btn:hover {
  color: black;
}

@import url(./root.css);

/* ==== COMMON CLASSES ==== */
.transition-all {
  transition: all 0.3s ease-in-out;
}

.common-label {
  font-size: var(--text-base);
  line-height: 100%;
  color: var(--color-gray-100);
  padding: 11px 18px;
  background:
    linear-gradient(#111114, #111114) padding-box,
    var(--gradient-teal-glow) border-box;
  border: 1px solid transparent;
}

.primary-heading {
  font-size: var(--text-6xl);
  color: var(--color-gray-100);
  font-weight: 500;
  line-height: 114%;
  letter-spacing: var(--tracking-tight);
}

/* ==== HERO SECTION ==== */
.hero-section {
  position: relative;
  padding: 82px 0 0 0;

  .header-top-ellipsis {
    position: absolute;
    top: -62px;
    left: 0;
    pointer-events: none;
  }

  @media (max-width: 767.99px) {
    padding: 60px 0 0 0;
  }

  .hero-container {
    max-width: 1320px;
    padding: 0 20px;

    .hero-content {
      position: relative;
      z-index: 2;
      max-width: 852px;

      @media (max-width: 991.99px) {
        max-width: 600px;
      }

      @media (max-width: 767.99px) {
        max-width: 450px;
      }

      @media (max-width: 575.99px) {
        max-width: 385px;
      }

      .hero-heading {
        margin: 48px 0 56px;

        @media (max-width: 767.99px) {
          margin: 24px 0 32px;
        }
      }

      .sign-in-button {
        font-size: var(--text-base);
        color: var(--color-gray-100);
        background: #ffffff1a;
        line-height: 100%;
        border: 1px solid transparent;
        backdrop-filter: blur(25px);
        padding: 15px 26px;
        border-radius: 16px;
        font-weight: 600;
        transition: background-color 0.15s ease-in-out,
          box-shadow 0.15s ease-in-out;

        svg {
          display: inline-block;
          will-change: transform;
          transform-origin: center;
          transition: transform 0.25s ease;
        }

        &:hover {
          box-shadow: 0px 6px 10px -5px #ffffff1a;

          svg {
            transform: rotate(45deg);
          }
        }
      }
    }

    .hero-video {
      margin-top: 97px;
      background-color: var(--color-black-500);
      border-radius: 24px;
      height: 800px;

      video {
        position: relative;
        z-index: 2;
      }

      @media (max-width: 1535.99px) {
        margin-top: 80px;
      }

      @media (max-width: 991.99px) {
        height: 600px;
        margin-top: 48px;
      }

      @media (max-width: 576px) {
        height: 400px;
      }

      video {
        object-fit: cover;
        border-radius: 24px;
      }

      .hero-video-ellipse {
        pointer-events: none;
        z-index: 1;
        top: -291px;

        @media (max-width:992px) {
          height: 920px;
          top: -171px;
        }

        @media (max-width: 576px) {
          height: 593px;
          top: -95px;
        }
      }

      .hero-video-left-ellipse {
        left: -258px;

        @media (max-width: 992px) {
          left: -154px;
        }

        @media (max-width: 576px) {
          left: -124px;
        }
      }

      .hero-video-right-ellipse {
        right: -262px;

        @media (max-width: 992px) {
          right: -154px;
        }

        @media (max-width: 576px) {
          right: -124px;
        }
      }
    }
  }
}

.cta-buttons-wrapper {
  position: fixed !important;
  z-index: 99;
  bottom: 24px;
  left: 50%;
  transform: translateX(-50%) translateY(300px) scale(0.45);
  opacity: 0;
  will-change: transform, opacity;
  padding: 0 12px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;

  @media (max-width: 575.99px) {
    bottom: 16px;
  }

  .hero-video-buttons {
    border: 1px solid #ffffff1a;
    background-color: var(--color-black-500);
    padding: 3px 4px;
    max-width: 577px;
    bottom: -24px;
    border-radius: 32px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;


    @media (max-width: 575.99px) {
      gap: 0;
    }

    .explore-ai-agents {
      padding: 13px 9px 13px 25px;
      color: var(--color-gray-100);
      font-size: var(--text-sm);
      line-height: 100%;
      border: 1px solid transparent;
      background: #ffffff1a;
      font-weight: 500;
      letter-spacing: var(--tracking-wide);
      max-width: 281px;

      @media (max-width:575.98px) {
        max-width: 100%;
        font-size: 10px;
        padding: 8px 9px 8px 16px;
      }

      &:hover {
        img {
          rotate: 45deg;
        }
      }
    }

    .book-a-demo {
      background-color: transparent !important;
      max-width: 198px;
      padding-left: 0;

      @media (max-width:575.98px) {
        padding-left: 8px;
        max-width: 100%;
      }
    }

    .cta-button-image {
      @media (max-width:575.98px) {
        width: 40px;
        height: 40px;
      }
    }
  }
}