:root{
    --primary-color: #ffffff;
    --secondary-color: #2ecc71;
    --text-color: #f2f2f2;
    --secondary-text-color:#828282;
    --background-color: black;
    --highlight-color: rgb(21, 255, 0);
}


*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: "Geist", sans-serif;
    font-optical-sizing: auto;
    font-style: normal;
}


.highlight{
    color: var(--highlight-color);
}

.lowlight{
    color:#f2f2f2;
    font-size: 16px;
    /* text-transform: capitalize; */
}

.underline{
    text-decoration: 2px solid var(--highlight-color) underline;
    color: violet;
}

.bg-elem{
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-color: var(--background-color);
    background-size: 20px 20px;
   background-image: 
        linear-gradient(to right, rgba(223, 223, 223, 0.18) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(255, 255, 255, 0.18) 1px, transparent 1px);
    z-index: -1;
    pointer-events: none;
}

.bg-elem video{
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.main{
    height: 100%;
    width: 100%;
    /* background-color: var(--background-color);   */
    color:var(--text-color);
}

.navbar{
    /* background-color: red; */
    display: flex;
    justify-content: space-between;
    padding: 20px 40px;    
    align-items: center;
}

.navbar .logo p{
    color: var(--highlight-color);
    outline: none;
    font-size: 17px;
}
.navbar .links{
    display: flex;
    gap: 10px;
}
.navbar .links a{
    text-decoration: none;
    color: var(--text-color);
    text-transform: capitalize;
    outline: none;
}


.hero-section .left{
    /* background-color: red; */
    display: flex;
    /* flex-direction: column; */
    gap: 40px;
    padding: 20px 40px;
}

.hero-section .left .intro-section{
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.hero-section .left .intro-section .intro-text{
    font-size: 40px;
    letter-spacing: -1px;
    word-spacing: -1px;
    line-height: 40px;
}

.hero-section .left .intro-section .intro-para{
    width: 50%;
    font-size: 20px;
    color: var(--secondary-text-color);
}

.hero-img{
    height: 300px;
    width: 300px;
}
.hero-img img{
    height: 100%;
    width: 100%;
    object-fit: cover;
}


.bg-black{
    background-color: black;
    stroke: white;
    border-radius: 4px;
    padding: 1px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
}

.button-type-1{
    padding: 5px 5px 5px 10px;
    background-color: #f2f2f2;
    color: black;
    border: 1px solid white;
    outline: none;
    font-size: 14px;
    cursor: pointer;
    font-weight: 600;
    width: 220px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-radius: 2px;
    font-family: "Geist Mono", monospace;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    -ms-border-radius: 2px;
    -o-border-radius: 2px;
}



.small-heading-type1{
    color: white;
    font-weight: 500;
    width: fit-content;
    /* background-color: red; */
    margin: 20px 40px;
}



.white-pannel{
    height: 100%;
    position: relative;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.95);
}

.white-pannel .marquee{
    width: 100%;
    overflow: hidden;
    background-color: var(--highlight-color);
}

.white-pannel .marquee-track{
    display: flex;
    width: max-content;
    animation: marqueeScroll 18s linear infinite;
    will-change: transform;
    border-bottom: 9px solid black;
}

.white-pannel .marquee-track p{
    font-size: 50px;
    text-wrap: nowrap;
    white-space: nowrap;
    color: black;
    margin-right: 2rem;
    flex-shrink: 0;
}

@keyframes marqueeScroll {
    from {
        transform: translateX(0);
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
}
    to {
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        -o-transform: translateX(-50%);
}
}


.about-section .about-title{
    color: black;
    font-size: 40px;
    padding: 20px 40px;
    text-transform: uppercase;
    display: flex;
    align-items: center;
}

.about-section .about-sub-text{
    color: #555;
    font-size: 20px;
    text-transform: capitalize;
}

.about-desc{
    color: black;
    font-size: 55px;
    padding: 20px 40px;
    letter-spacing: -1px;
    /* word-spacing: -5px; */
    display: flex;
    flex-direction: column;
    /* justify-content: end; */
    align-items: end;
    line-height: 65px;
}

.about-desc p{
    width: 60%;
}


.emphasize-type-1{
    /* text-transform: capitalize; */
    font-weight: 500;
    text-decoration: 4px solid var(--highlight-color) underline;
}

.emphasize-type-2{
    font-weight: 500;
    text-decoration: 4px solid #333 underline;
    background-color: yellow;
}

.emphasize-type-3{
    font-weight: 500;
    font-size: 55px;
}


.emphasize-type-4{
    font-weight: 500;
    font-size: 55px;
    text-decoration: 4px solid #333 underline;
    background-color: violet;
    color: #111;
}


.work-section .work-title{
    font-size: 60px;
    padding: 40px 40px;
    text-decoration: solid var(--highlight-color) underline;
    display: flex;
    justify-content: center;
}

.work-showcase{
    padding: 20px 40px;
    display: flex;
    gap: 30px;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}

.product{
    display: flex;
    gap: 20px;
    border: 1px solid black;
    width: fit-content;
    padding: 10px 20px 10px 10px;
    background-color: rgba(255, 255, 255, 0.95);
    cursor: pointer;
    border-radius: 5px;
    box-shadow: 5px 5px 0px #828282;
    /* width: 290px; */
}

.product .img-wrapper{
    background-color: rgb(0, 255, 42);
    height: 60px;
    width: 60px;
}


.product .img-wrapper img{
    height: 100%;
    width: 100%;
    object-fit: cover;
}
.product .product-info{
    font-size: 19px;
    color: black;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    font-weight: 500;
}
.product-info p:nth-child(2){
    font-size: 15px;
}

.product-info-top{
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.npm-section{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.npm-heading{
    padding-top: 40px;
    font-size: 30px;
    text-decoration: violet underline;
}

.npm-sub-heading{
    font-size: 20px;
    color: #828282; 
}

.npm-package-wrapper{
    padding: 20px 40px;
}

.npm-package{
    background-color: white;
    width: fit-content;
    color: black;
    width: 500px;
    padding: 20px;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -ms-border-radius: 5px;
    -o-border-radius: 5px;
    cursor: pointer;
}

.npm-package .package-name{
    font-size: 20px;
    font-weight: 500;

}

.npm-package .command{
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color: #e0e0e0;
    padding: 10px 20px;
    border-radius: 5px;
    font-size: 20px;
    font-family: "Geist Mono";
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -ms-border-radius: 5px;
    -o-border-radius: 5px;
}