body {
  background:
    -60% 0% / 60vw min(40vw, 400px) no-repeat radial-gradient(at top center,
      #FEFFC3B0,
      #FEFFC350 30%,
      transparent 70%
    ),
    -50% 0% / 70vw min(50vw, 500px) no-repeat radial-gradient(at top center,
      #5AFFF5B0,
      #5AFFF550 30%,
      transparent 70%
    );
}

h1 {
  margin: 2em auto .9em;
  font-size: clamp(2.5rem, 7vw - .3rem, 3.7rem);
}

#hero {
  text-align: center;
  p {
    max-width: 1000px;
    margin: 1em auto;
    font-size: clamp(1rem, .8vw + .9rem, 1.3rem);
    line-height: 1.75;
  }
}

#stats {
  @media (width < 800px){
    padding-block: 0;
  }
}

.security-aspect {
  display: grid;
  grid: auto / 1fr 1fr;
  gap: 4rem 8rem;
  h2 { font-size: clamp(2rem, 1.2vw + 2rem, 3rem); }
  h3 { font-size: clamp(1.2rem, .5vw + 1rem, 1.6rem); }
  .aspect-intro {
    place-self: center start;
    font-size: 1.1rem;
    margin-right: 5rem;
    p { margin: 2rem 0; }
    ul {
      margin: -1rem 0 0 0;
      padding: 0 0 0 1.5rem;
    }
  }
  img {
    width: auto;
    max-width: calc(100% + 6rem);
    height: auto;
    margin: 0 0 -2rem -6rem;
  }
  section { padding: 0; }
  a { color: #006EF9; }
  section > a {
    font-weight: 600;
    text-decoration: underline transparent;
    text-decoration-thickness: 2px;
    text-underline-offset: .6rem;
    transition: text-decoration-color 0.2s;
    &:hover { text-decoration-color: currentcolor; }
  }

  @media(max-width: 1000px){
    gap: 2rem;
    .aspect-intro {
      grid-area: 2 / 1 / 3 / -1;
      width: 100%;
      margin: 0;
    }
    h2 { text-align: center; }
    img {
      grid-area: 1 / 1 / 2 / -1;
      max-width: 400px;
      margin: 0 auto;
    }
  }
  @media(max-width: 600px){
    grid: auto / 1fr;
    h3 { margin-bottom: 0; }
  }
}

.cta-strip {
  margin: 4rem auto;
  &:nth-child(even of .cta-strip){
    background-image: url("/assets/img/cta-strip-bg-bright-2.svg?v=nmjWhk3jMI"),
      linear-gradient(90deg, #E1FF8B, #2FFFC1);
  }
  @media(width < 1000px){
    margin: 4rem auto 0;
  }
}

#ai-data {
  border-bottom: 1px solid #d4d8dc;
  grid: auto / 2fr 1fr;
  .aspect-intro {
    h3 { margin: 3rem 0 0.5rem; }
    p { margin: 1rem 0; }
    section p { font-size: 1rem; }
  }
  img {
    height: auto;
    border-radius: 2rem;
    margin-top: 2rem;
  }
}

#protocols {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  justify-content: center;
  margin-block: 6rem 4rem;
  padding-block: 4rem 6rem;
  color: white;
  background: linear-gradient(140deg, #28375B 30%, #12172A);
  h2 {
    width: 100%;
    font-size: clamp(2rem, 1.2vw + 2rem, 3rem);
    text-align: center;
  }
  h3 {
    margin: 0;
    font-size: clamp(1.1rem, .25vw + 1rem, 1.3rem);
    font-weight: 600;
  }
  p {
    flex: 1 0 auto;
    margin: 1rem 0;
    color: rgb(255 255 255 / 80%);
  }
  a {
    display: block;
    width: fit-content;
    padding: .75rem 1.25rem;
    margin: 2rem auto 0;
    color: white;
    background-color: #006EF9;
    font-weight: 600;
    text-decoration: none;
    border-radius: .4rem;
    transition: opacity .2s;
    &:hover { opacity: .8; }
  }
  .protocol {
    display: flex;
    flex-direction: column;
    padding: 2rem 2.5rem;
    background: #344678;
    border-radius: .8rem;
    flex: 1 0 250px;
  }
}

#faq { margin-bottom: 4rem; }
