*{
  padding: 0px;
  margin: 0px;
  box-sizing: border-box;
}


:root{
  --font-size-default: .75em;
  --font-size-root: 14px;
  --font-size-1 : calc(var(--font-size-default) / 1);
  --font-size-2 : calc(var(--font-size-default) / 2);
  --font-size-3 : calc(var(--font-size-default) / 3);
  --font-size-4 : calc(var(--font-size-default) / 4);
}

html{
   font-size: var(--font-size-root);
}

body{
  font-size: clamp(1.2rem, 2.5vw, 2rem);
  background-color: #010C03;
  color: #f9f9f9;
  font-family: "Montserrat Alternates", sans-serif;
  font-weight: 400;
  font-style: normal;
}

section{
  margin: 124px 0px 0px 0px;
  font-size:var(--font-size-default);
}

code{
  font-family: "JetBrains Mono", monospace;
}

p{
  margin-bottom: 24px;
  max-width: 350px;
  width: 100%;
  font-size: .85em;
  line-height: 1.5;
}

code{
  font-size: .65em;
}

a,
a:active,
a:visited{
  text-decoration: none;
  color: inherit;
}

button{
  background-color: transparent;
  display: inline-block;
 appearance: none;
 -webkit-appearance: none;
 border: none;
}

img{
  user-select: none;
  border: 0px;
  width: auto;
  max-width: 100%;
}

.container{
  margin: auto;
  max-width: calc( min(100%,960px));
  padding-left: 32px;
  padding-right: 32px;
}


#header{
  padding-top: 16px;
  height: 60px;
  background-color: #000;
}

#header h1{
 color:#00F92E;
 font-size: 18px;
}


#footer{
  display: flex;
  justify-content: center;
  align-items: center;
  height: 320px;
  background-color: #010C03;
}


/* hero */

#hero{
  margin-top: 64px;
}

#hero img{
  width: 374px;
}
#hero > div{
  display: flex;
  align-items: center;
  position: relative;
  left: -1rem;
}

#hero span{
  font-size: .6em;
  font-weight: bold;
  display: inline-flex;
  flex-direction: column;
}

#hero span.available{ 
  font-size: .8em; 
  color: #F4F900;
}

#hero p{
  font-size: 3.2rem;
  width: 587px;
  max-width: 100%;
}


.cta {
  user-select: none;
  cursor: pointer;
  border-radius: 230295px;
  padding: .8rem;
  font-size: 20px;
  font-weight: bold;
  color: #094712;
  background-color: #00F92E;
  display: inline-block;
}

.cta.api{
   background-color: #F4F900;
}

#comparations img{
  width: 298px;
}

#comparations h2{
  margin-bottom: 1.5rem;
}

#demo > div{
  margin-top: 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}

#showcase > div:nth-child(2){
  display: flex;
  align-items: center;
}

#showcase > div:nth-child(2) > img {
  width: 174px;
}

#showcase > div:nth-child(3) {
  gap: 2rem;
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
}

#showcase > div:nth-child(3) h3{
  margin-bottom: 1rem;
}

/* example */
#example > div {
  margin-top: 32px;
  padding: 32px;
  border-radius: 24px;
  background-color: #011C0650;
}

#demo > button,
#example > div button {
  margin-top: 64px;
  width: 100%;
  text-align: center;
}

#example h3{
   color: #cff900;
   margin-bottom: 8px;
}

#example pre{
   color: #05DC2B;
}

#example code{
   padding: 0px;
}

#example  > div > div > div:nth-child(2) > img{
  width:132px;
}

/* comparations & example */
#comparations > div,
#example > div > div{
  display: grid;
  grid-template-columns: repeat(2,1fr);
   gap: 2rem;
}

#example > div > div {
  grid-template-columns: max-content 1fr;
}

#example > div > div:nth-child(1) {
  margin-bottom: 64px;
}

#comparations > div div:nth-child(2),
#example  > div > div > div:nth-child(2){
  width: max-content;
  justify-self: flex-end;
}

#footer img{
  width: 208px;
}

@media (max-width:900px) {
  #demo > div{
    justify-content: center;
  }

  #showcase > div:nth-child(3) {
    justify-content: center;
  }

  #comparations > div, #example > div > div,
  #example > div > div {
    grid-template-columns: 1fr;
  }

  #comparations > div div:nth-child(2), 
  #example > div > div > div:nth-child(2) {
    justify-self: flex-start;
  }
}