:root {
    --background: #121212;

 }


 html {
   overflow-x: hidden;
 }

 body{
    overflow-x: hidden;
    font-family: 'DM Sans', sans-serif;
    height: 100vh;
    background-color: var(--background);
 }

 .nav{
   width: 100%;
   height: auto;
}

.links {
   display:none;
   margin-right: 5%;
   height: auto;
   text-align: right;
}


.js-menu {
   display: block;
   margin-top: 5vh;
   color: #ffffff;
   font-size: 22px;
   margin-left: 90%;
}

.right{
   list-style-type: none;
   padding: 0px;
   margin: 0px;

}


.right a{
   display: block;
   color: white;
   font-size: 14px;
   text-decoration: none;
   margin-top: 16px;
}

.left {
  list-style-type: none;
  padding-left: 0px;
  margin: 16px 0px 0px 0px;
}

.left a{
   color: #ffffff;
   font-size: 14px;
   text-decoration: none;
}


h1 {
    width: 82.9%;
    font-weight: bold;
    margin: 0px;
    color: #ffffff;
    font-size: 24px;
    margin-bottom: 12px;


 }

 h2 {
    color: rgba(255, 255, 255, 0.6);
    font-weight: 500;
    font-size: 14px;
    line-height: 20px;
    margin-top: 32px;
    margin-bottom: 8px ;
    width: 82.9%;
    letter-spacing: 0.095em;

 }

 h3 {
    color:#ffffff;
    font-weight: 500;
    font-size: 18px;
    line-height: 16px;
    margin-top: 0px;
    margin-bottom: 12px ;
    width: auto;
    letter-spacing: -0.005em;

 }

 h4 {
    color: rgba(255, 255, 255, 0.6);
    font-weight: normal;
    font-size: 14px;
    line-height: 20px;
    margin: 0px 0px 12px 0px;
    width: 90%;
 }

 p{
    width: 90%;
    height: auto;
    margin: 0px;
    color: #ffffff;
    font-weight: normal;
    font-size: 14px;
    line-height: 20px;
    font-style: normal;

 }


.intro-grid{
    height: auto;
    padding: 40px 9.4% 0px 7.7%;
    margin-bottom: 60px;
   }



.header {
   margin-left: 7.7%;
}


.one{
   width: 100%;
    height: auto;
    padding: 36px 0% 40px 0%;

}

.circle {
    align-self: start;
    width: 4px;
    height: 4px;
    border-radius: 4px;
    display:inline-block;
    background-color: rgba(255, 255, 255, 0.6);
    margin: 0px 2px 2px 2px;
}

.one>.image {
   background: url(images/one.jpg) 50% 50% no-repeat;
   width: 98%;
   height: 220px;
   border-radius: 3px;
   background-size: cover;
}

.learn{
   display:block;
   margin-bottom: 24px;
}

.more {
    text-decoration: none;
    color: white;
    border-bottom: solid 2px rgba(255, 255, 255, 0.6);
    font-size: 14px;
    padding-bottom: 1px;

}

.two {
   height: auto;
   padding: 0px 9.4% 40px 7.7%;
}

.two>.image>h4 {
   text-align:right;
   padding-top: 8px;
   padding-right: 10px;
   width:auto;
   font-size: 8px;
}

.two>.image {
    background: url(images/two.png) 50% 80% no-repeat;
    width: 98%;
    height: 220px;
    border-radius: 3px;
    background-size: cover;
}

.first {
   color: white;

}

.demo__button{
    display: block;
    border: 1px solid white;
    background: #121212;
    width: 35%;
    height: 36px;
    color: white;
    font-size: 12px;
    font-weight: 500;
    margin: 40px 0% 0px 0%;
 }

.demo__button:hover{
   background: #ffff;
   color: #121212;

}

.three {
    width: 85%;
    height: auto;
    padding: 12px 9.4% 40px 7.7%;

}


.three > .image {
    background: url(images/three.png) 50% 50% no-repeat;
    width: 98%;
    height: 220px;
    border-radius: 3px;
    background-size: cover;
}


.site {
   display: block;
   margin-top: 40px;
   text-align: center;
   color: #ffff;
   text-decoration: none;
   font-size: 12px;
   font-weight: 500;
   border: 1px solid white;
   width: 35%;
   padding: 12px 12px 0px 12px;
   height: 22px;
}

.site:hover{
   color: #121212;
   background: #fff;
}



.footer{

    padding: 30px 9.4% 20px 7.7%;
    color:#ffffff;
    background-color: #000000;
    height: 80px;
 }

 .footer p {
    color: rgba(255, 255, 255, 0.9);
    width: auto;
    height: 18px;
    font-size: 13px;
 }

 .contact{
    display: inline-block;
    margin-bottom: 16px;
 }
 .contact a{
    text-decoration: none;
    color:rgba(255, 255, 255, 0.9);
    font-weight: normal;
    font-size: 14px;
 }

 .contact a:hover{
    text-decoration: underline;
 }

 .modal-open{
   display: block;
   margin-top: 40px;
   text-align: center;
   color: #ffff;
   text-decoration: none;
   font-size: 12px;
   font-weight: 500;
   border: 1px solid white;
   width: 35%;
   padding-top: 12px;
   height: 22px;
}

.modal-open:hover{
   color: #121212;
   background: #fff;
}

a:link,
a:visited{
 text-decoration: none;
}

.modal{
 background-color: rgba(0,0,0, .8);
 width:100%;
 height: 100%;
 position: absolute;
 top: 0;
 left: 0;
 z-index: 10;
 opacity: 0;
 visibility: hidden;
 transition: all .5s;
}

.modal__content{
 width: 80%;
 height: auto;
 background-color: #fff;
 position: absolute;
 top: 50vh;
 left: 50%;
 transform: translate(-50%, -50%);
 padding: 0em 1em 0em 1em;
 border-radius: 1em;
 opacity: 0;
 visibility: hidden;
 transition: all 0s;
}

 .video {
   width: 90%;
   height: auto;
}

#modal:target{
 opacity: 1;
 visibility: visible;
}

#modal:target .modal__content{
 opacity: 1;
 visibility: visible;
}

.modal__close{
 color: #363636;
 font-size: 2em;
 position: absolute;
 top: .5em;
 right: 1em;
}

 @media (min-width: 768px) {

   .links{
      width: 100%;
      display: flex;
      justify-content: space-between;
      background-color: var(--background);
      height: 130px;
      align-items: center;
      margin: 0px;
     }

     .js-menu {
        display: none;
     }

     .right{
        display: flex;
        list-style-type: none;
        justify-content: space-evenly;
        width: 20%;
        margin-right: 6%;
     }

     .right a{
      color: white;
      font-size: 16px;
      text-decoration: none;
   }

   .left {
      list-style-type: none;
      padding-left: 0px;
      margin-left: 7.7%;
    }


     .left a{
      color: #ffffff;
      font-size: 16px;
      text-decoration: none;
     }


     h1 {
      width: 82.9%;
      font-size: 30px;
      margin-bottom: 12px;

   }

   h2 {

      font-size: 14px;
      line-height: 16px;
      margin-top: 32px;
      margin-bottom: 10px ;
      width: 82.9%;

   }

   h3 {
      color:#ffffff;
      font-weight: 500;
      font-size: 20px;
      line-height: 16px;
      margin-top: 0px;
      margin-bottom: 10px ;
      width: 82.9%;


   }

   h4 {
      color: rgba(255, 255, 255, 0.6);
      font-weight: normal;
      font-size: 14px;
      line-height: 16px;
      margin: 0px 0px 0px 0px;
   }

   p{
      width: 90%;
      font-size: 14px;
      line-height: 24px;

   }


   .one{
      padding: 60px 9.4% 0px 0;
   }

   .one>.image {
      width: 100%;
      height: 308px;
      border-radius: 3px;
   }


   .more {
      text-decoration: none;
      color: white;
      border-bottom: solid 2px rgba(255, 255, 255, 0.6);
      font-size: 14px;
      padding-bottom: 1px;

  }

  .learn{
   display:inline-block;
   margin-right: 35px;
}


.two {
   height: auto;
   padding: 0px 9.4% 60px 7.7%;
}

.two>.image {
    background: url(images/two.png) 50% 70% no-repeat;
    width: 98%;
    height: 308px;
    border-radius: 3px;
    background-size: cover;
}


.site {
   font-size: 14px;
   width: 32%;
   padding: 12px 16px 0px 12px;
   height: 25px;
}
.three {
   width: 85%;
   height: auto;
   padding: 36px 9.4% 60px 7.7%;
}


.three > .image {
   background: url(images/three.png) 50% 50% no-repeat;
   width: 98%;
   height: 308px;
   border-radius: 3px;
   background-size: cover;
}


.text {
   margin-left: 9%;
   width: 80%;
}


.footer{
   width: 100%;
   height: 70px;

}

.heart {
   font-size: 12px;
}

.footer p {
   font-size: 14px;
   width: auto;

}

.contact a{
   font-size: 14px;
}

.modal-open {
   font-size: 14px;
   width: 30%;
   padding-top: 8px;
   height: 25px;
}

.modal__content{
   width: 70%;
   height: auto;
   top: 50vh;
   left: 50%;

  }

@media (min-width: 1000px){

   .js-menu {
      display: none;
   }

   .right a {
      font-size: 18px;
   }


   .left a{
      font-size: 18px;
   }


   h1 {
      font-size: 40px;
      margin-bottom: 12px;

   }

   h2 {

      font-size: 16px;
      line-height: 16px;
      margin-top: 40px;
      margin-bottom: 14px ;
      width: 82.9%;

   }

   h3 {
      color:#ffffff;
      font-weight: 500;
      font-size: 24px;
      line-height: 16px;
      margin-top: 0px;
      margin-bottom: 14px ;

   }

   h4 {
      color: rgba(255, 255, 255, 0.6);
      font-weight: normal;
      font-size: 16px;
      line-height: 16px;
      margin: 0px 0px 30px 0px;
   }

   p{
      width: 90%;
      font-size: 16px;
      line-height: 24px;

   }



   .intro-grid{
      padding: 0px 3% 0px 7.7%;
      margin-bottom: 80px;
      height: auto;
      width: auto;
      display: grid;
      grid-template-columns: 1fr 1fr;
      grid-template-rows: auto auto;
      grid-template-areas: "left right"

                            ;
      justify-items: center;
      align-content: top;

    }


    .identifier{
      grid-area: left;
      width: 100%;
      margin-top: 80px;
      align-self: start;
      justify-self: start;
   }

    .description{
      grid-area: right;
      width: 90%;
      margin-top: 80px;
      align-self: start;
      justify-self: start;
    }


    .one{
      padding: 80px 9.4% 0px 0%;
      margin-bottom: 0px;
   }


   .one>.image {
      width: 100%;
      height: 500px;
      border-radius: 3px;
   }


   .more {
      text-decoration: none;
      color: white;
      border-bottom: solid 2px rgba(255, 255, 255, 0.6);
      font-size: 16px;
      padding-bottom: 1px;

  }

  .learn{
   display:inline-block;
   margin-right: 60px;
}


.two {
   height: auto;
   padding: 0px 9.4% 80px 7.7%;

}

.two>.image {
    background: url(images/two.png) 50% 60% no-repeat;
    width: 98%;
    height: 500px;
    border-radius: 3px;
    background-size: cover;
}

.three {
   width: 85%;
   height: auto;
   padding: 36px 9.4% 80px 7.7%;

}


.three > .image {
   background: url(images/three.png) 50% 50% no-repeat;
   width: 98%;
   height: 500px;
   border-radius: 3px;
   background-size: cover;
}

.footer{
   width: 100%;
   height: 70px;

}

.heart {
   font-size: 14px;
}

.footer p {
   font-size: 16px;
   width: auto;

}

.contact a{
   font-size: 16px;
}


.text {
   margin-left: 18%;
   width: 65%;
}

.demo__button{
   display: block;
   border: 1px solid white;
   background: #121212;
   width: 20%;
   height: 36px;
   color: white;
   font-size: 14px;
   font-weight: 500;
   margin: 40px 0% 0px 0%;
}

.site {
   font-size: 14px;
   width: 30%;
   padding-top: 8px;
   height: 25px;
}



a:link,
a:visited{
 text-decoration: none;
}

.modal{
 background-color: rgba(0,0,0, .8);
 width:100%;
 height: 100vh;
 position: absolute;
 top: 0;
 left: 0;
 z-index: 10;
 opacity: 0;
 visibility: hidden;
 transition: all .5s;
}

.modal__content{
 width: 50%;
 height: auto;
 background-color: #fff;
 position: absolute;
 top: 50vh;
 left: 50%;
 transform: translate(-50%, -50%);
 padding: 0em 1em 0em 1em;
 border-radius: 1em;
 opacity: 0;
 visibility: hidden;
 transition: all 0s;
}

.video {
   width: 90%;
   height:auto;
}

#modal:target{
 opacity: 1;
 visibility: visible;
}

#modal:target .modal__content{
 opacity: 1;
 visibility: visible;
}

.modal__close{
 color: #363636;
 font-size: 2em;
 position: absolute;
 top: .5em;
 right: 1em;
}

/* .modal__heading{
 color: #121212;
 margin-bottom: 1em;
} */


.modal-open{
   font-size: 14px;
   width: 20%;
   padding-top: 8px;
   height: 25px;
}




}
 }
