
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;

}

html {
    font-size: 100%; 
    scroll-behavior: smooth;
}

body {
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    line-height: 1.6;
    background-image: url("bg2.png");
    background-size: cover; 
    background-position: center; 
    background-repeat: no-repeat; 
    background-color: #f4f4f4;
    color: #333;
    margin: 0;
    padding: 0; 
    overflow-x: hidden; 
    -ms-overflow-style: none;  /* IE and Edge */
    scrollbar-width: none;  /* Firefox */
}
::-webkit-scrollbar {
    display: none;
  }
  


.prevent-select {
    -webkit-user-select: none; 
    -ms-user-select: none; 
    user-select: none; 
  }


  .grid-scroller {
    display: flex; 
    align-items: center; 
    overflow: hidden;
    white-space: nowrap;
    width: 100%; 
    height: 4svh; 
    margin-top: 35px;
    background: black; 
    border-radius: 13px;
    font-family: 'Pixelify Sans', sans-serif; 
    position: relative; 
    font-size: 1em;
}


@media (min-width: 3840px) {
    .grid-scroller {
        font-size: 2em; 
    }
}


@media (min-width: 7680px) {
    .grid-scroller {
        font-size: 4em; 
    }
}


@media (max-width: 400px) {
    .grid-scroller {
        width: 100%; 
        height: 5svh; 
    }
}


@media (min-width: 401px) and (max-width: 600px) {
    .grid-scroller {
        width: 90%; 
        height: 4svh; 
    }
}


@media (min-width: 601px) and (max-width: 900px) {
    .grid-scroller {
        width: 75%; 
        height: 4svh; 
    }
}


@media (min-width: 901px) and (max-width: 1200px) {
    .grid-scroller {
        width: 50%; 
        height: 3.5svh; 
    }
}


@media (min-width: 1201px) {
    .grid-scroller {
        width: 27%; 
        height: 2.5svh; 
    }
}


@media (min-aspect-ratio: 16/9) {
    .grid-scroller {
        height: 3svh; 
    }
}

.grid-scroller span {
    color: white; 
    padding-right: 0px; 
    font-family: 'Pixelify Sans', sans-serif; 
}

.grid-scroller-inner {
    display: grid;
    grid-auto-flow: column; 
    animation: scroll 30s linear infinite; 
    flex-grow: 1; 
    
}


@keyframes scroll {
    0% { transform: translateX(0); } 
    100% { transform: translateX(-50%); } 
}

.grid-scroller span {
    color: white; 
    padding-right: 20px; 
}



.copy-button {
    background-color: transparent; 
    border: none; 
    color: white; 
    font-size: 1em; 
    cursor: pointer; 
    margin-left: 10px; 
    display: flex; 
    align-items: center; 
    position: absolute; 
    left: -50px; 
    height: 100%; 
    z-index: 999;
    background-color: black;
    border-right: 0.1px solid rgba(255, 255, 255, 0.5);
    padding-left: 50px;
    padding-right: 5px;
}

.copy-button:hover {
    color: #ccc; 
}

.copy-button:active {
   
    color: white; 
}



/*
header {
    background-color: #333;
    color: #fff;
    padding: 10px 20px;
    position: sticky;
    top: 0;
    z-index: 100;
} 


nav {
    display: flex;
    justify-content: space-between;
}

nav a {
    color: #fff;
    text-decoration: none;
    padding: 5px 10px;
}
*/

main section {
    height: 100svh; 
    display: flex;
    flex-direction: column; 
    justify-content: flex-start; 
    align-items: center; 
    padding: 20px;
    text-align: center;
    
}
h1, h2 {
    margin-bottom: 10px;
}

form {
    display: flex;
    flex-direction: column;
    max-width: 100%;
    width: 300px;
}

form label, form input, form button {
    margin-bottom: 10px;
    padding: 8px;
}
.image-container {
    display: flex;
    justify-content: center; 
    align-items: center; 
    width: 100%; 
    margin-top: 1em;
    height: 15svh;
    overflow: hidden;

}

.topleft {
max-width: 25%;
max-height: 100%;
    object-fit: contain;
}

.topright {
    max-width: 75%;
    max-height: 100%;
    object-fit: contain;
}
.social-icons {
    display: flex;
    justify-content: center;
    margin-top: 40px;
    width: 25%;
    align-items: center;

    height: 5svh;

}

.social-icons a {
    display: inline-block;
    margin: 0 10px; 
}

.social-icons img {
    max-width: 10vw; 
    max-height: 10vh; 
    object-fit: contain;
    transition: transform 0.3s ease;
}


@media (max-width: 400px) {
    .social-icons img {
        max-width: 12vw; 
        max-height: 12vh; 
    }
}


@media (min-width: 401px) and (max-width: 600px) {
    .social-icons img {
        max-width: 10vw; 
        max-height: 10vh; 
    }
}


@media (min-width: 601px) and (max-width: 900px) {
    .social-icons img {
        max-width: 8vw; 
        max-height: 8vh; 
    }
}


@media (min-width: 901px) and (max-width: 1200px) {
    .social-icons img {
        max-width: 6vw; 
        max-height: 6vh; 
    }
}


@media (min-width: 1201px) {
    .social-icons img {
        max-width: 5vw; 
        max-height: 5vh; 
    }
}




.social-icons a:hover img {
    transform: scale(1.1); 
}


.hero-container {
position: absolute;
bottom: 0;
width: 100%;
height: 50svh;
display: flex;
justify-content: center;
overflow: hidden;

}


.hero-image {
max-width: 100%;
max-height: 100%;
object-fit: contain;

}






.section2-container {
    position: relative;
    bottom: 0;
    width: 100%;
    height: 100svh;
    display: flex;
    justify-content: center;
    overflow: hidden;
    margin-top: 50px;
    margin-bottom: 25px;
    }
    
    
    .section2-img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;

    }


    .section3-container {
        position: relative;
        bottom: 0;
        width: 100%;
        height: 100svh;
        display: flex;
        justify-content: center;
        overflow: hidden;
        margin-top: 50px;
        }
        
        
        .section3-img {
        max-width: 75%;
        max-height: 75%;
        object-fit: contain;
    
        }


        @media (max-width: 768px) {
            .section2-container {
                height: 100vh; 
                margin-top: 5px;  
            }
            
            .section2-img {
                max-width: 100%;
                max-height: 100%;
                object-fit: contain;
            }
            
            .section3-container {
                height: 100vh; 
                margin-top: 0px;  
                margin-bottom: 0px;
            }
        
            .section3-img {
                max-width: 100%; 
                max-height: 100%; 
            }
        }



        .preloader {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background-color: black;
            z-index: 9999; 
            display: flex;
            justify-content: center;
            align-items: center;
            transition: transform 1s ease; 
        }
        
        
        .preloader.slide-up {
            transform: translateY(-100%);
        }
        
                .wrapperanimate{
                    width:200px;
                    height:60px;
                    position: absolute;
                    left:50%;
                    top:50%;
                    transform: translate(-50%, -50%);
                  
                }
                .circle{
                    width:20px;
                    height:20px;
                    position: absolute;
                    border-radius: 50%;
                    background-color: #fff;
                    left:15%;
                    transform-origin: 50%;
                    animation: circle .5s alternate infinite ease;
                }
                
                @keyframes circle{
                    0%{
                        top:60px;
                        height:5px;
                        border-radius: 50px 50px 25px 25px;
                        transform: scaleX(1.7);
                    }
                    40%{
                        height:20px;
                        border-radius: 50%;
                        transform: scaleX(1);
                    }
                    100%{
                        top:0%;
                    }
                }
                .circle:nth-child(2){
                    left:45%;
                    animation-delay: .2s;
                }
                .circle:nth-child(3){
                    left:auto;
                    right:15%;
                    animation-delay: .3s;
                }
                .shadow{
                    width:20px;
                    height:4px;
                    border-radius: 50%;
                    background-color: rgba(0,0,0,.5);
                    position: absolute;
                    top:62px;
                    transform-origin: 50%;
                    z-index: -1;
                    left:15%;
                    filter: blur(1px);
                    animation: shadow .5s alternate infinite ease;
                }
                
                @keyframes shadow{
                    0%{
                        transform: scaleX(1.5);
                    }
                    40%{
                        transform: scaleX(1);
                        opacity: .7;
                    }
                    100%{
                        transform: scaleX(.2);
                        opacity: .4;
                    }
                }
                .shadow:nth-child(4){
                    left: 45%;
                    animation-delay: .2s
                }
                .shadow:nth-child(5){
                    left:auto;
                    right:15%;
                    animation-delay: .3s;
                }
                .wrapperanimate span{
                    position: absolute;
                    top:75px;
                    font-family: "Montserrat", sans-serif;
                    font-optical-sizing: auto;
                    font-weight: 400;
                    font-style: normal;
                    font-size: 1.5rem;
                    letter-spacing: 7.5px;
                    color: #fff;
                    left:15%;
                }
        
        @media (min-width: 3840px) {
            .wrapperanimate {
                width: 8vw;
                height: 2.5vh;
            }
        
            .circle {
                width: 1vw; 
                height: 1vw;
            }
        
            .wrapperanimate span {
                font-size: 1vw; 
                letter-spacing: 0.25vw;
            }
        }
        