/*Fonts*/
@import url('https://fonts.googleapis.com/css2?family=JetBrains+Mono:ital,wght@0,100..800;1,100..800&family=Montserrat:ital,wght@0,100..900;1,100..900&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=JetBrains+Mono:ital,wght@0,100..800;1,100..800&family=Montserrat:ital,wght@0,100..900;1,100..900&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=JetBrains+Mono:ital,wght@0,100..800;1,100..800&family=Montserrat:ital,wght@0,100..900;1,100..900&family=Nunito:ital,wght@0,200..1000;1,200..1000&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=JetBrains+Mono:ital,wght@0,100..800;1,100..800&family=Montserrat:ital,wght@0,100..900;1,100..900&family=Nunito:ital,wght@0,200..1000;1,200..1000&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');

:root {
    --scroll-progress: 0;   
}

/*Reset default properties*/
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/*General style*/
html {
    font-size: clamp(12px, 1.042vw, 26px);
    font-family: "Montserrat", "JetBrains Mono", "Nunito Bolds","Poppins", monospace, "Sans-serif";
    overflow-x: clip;
}

/*Body*/
body {
    position: relative;
    width: 100%;
    height: 2000px;
    overflow-x: clip;
    background: linear-gradient(180deg, 
        #4DA6FF 0%,
        #2B5487 40%,
        #192B49 100% 
    );
    caret-color: transparent;
}


/*Link style reset*/
a {
    all: unset;
}

/*Sun rays style*/
.ray {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: calc( -1*clamp(calc(8.6vw + 35px), 15.01vw, calc(8.6vw + 110px)));

    z-index: -10;

    pointer-events: none;
    & > img {
        width: clamp(500px, 83.92dvw, 2000px);
        height: auto;
    }
}

/*Wavies style css*/
.waves {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: calc(clamp(70px, 6.43vw, 150px) + 2.7vw);
    
    opacity: 0.20;
    z-index: -10;

    pointer-events: none;
    & > img {
        width: clamp(700px, 71.02dvw, 1800px);
        height: auto;
    }    
}


/*Bubbles css*/
.bubble {
    position: fixed;
    bottom: 0;
    z-index: -1000;

    width: clamp(35px, 3.125vw, 80px);
    height: clamp(35px, 3.125vw, 80px);

    pointer-events: none;
}

.overlay {
    display: none;
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
}
    .overlay.active {
        display: flex;
        z-index: 9996;
    }
.expanded-navbar {
    display: none;
    position: fixed;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 9998;
    width: 70%;
    background: rgba(12, 25, 46, 0.75);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border: 1px solid rgba(255, 255, 255, 0.1);
}
    .expanded-navbar.active {
        display: flex;
    }
        .expanded-navbar__link-menu {
                display: flex;
                flex-direction: column;
                width: 100%;
                margin-top: 20px;
                row-gap: 10px;
                padding-left: 15px;
            }
                    .expanded-navbar__link-box {
                        cursor: pointer;
                    }
                            .expanded-navbar__link {
                                font-size: clamp(18px, 4.6vw, 18px);
                                color: white;
                            }
.collapsed-navbar-icon {
    display: none;
    position: fixed;
    right: 20px;
    top: calc(clamp(70px, 6vw, 150px)/2 - clamp(30px, 8.5vw, 35px)/2);
    width: clamp(30px, 8.5vw, 35px);
    height: clamp(30px, 8.5vw, 35px);
    cursor: pointer;
    z-index: 9999;
}

    .collapsed-navbar-icon .line {
        transform-box: view-box;
        transform-origin: center;
        transition: 
            transform 0.3s ease,
            opacity 0.2s ease;
    }
    .collapsed-navbar-icon.active .top {
        transform: rotate(-45deg) translateY(6px) ;
    }
    .collapsed-navbar-icon.active .middle {
        opacity: 0;
    }
    .collapsed-navbar-icon.active .bottom {
        transform: rotate(45deg) translateY(-6px);
    }


.navbar {
    display: flex;
    flex-direction: row;
    align-items: center;

    position: sticky;
    top: 0;

    height: clamp(70px, 6.43vw, 150px);
    margin: 1.69% 1.35%;

    background: color-mix(in srgb, #006296ff calc((1 - var(--scroll-progress)) * 100%), #003f61ff);
    border-radius: calc(6vw / 4.5);
    box-shadow: 4px 4px 4px #26496b;
    z-index: 10;

    transition: 
        all 0.4s cubic-bezier(0.25, 1, 0.5, 1),
        background-color 1.2s cubic-bezier(0.25, 0.1, 0.25, 1);
}

    /*expanding effect while scrolling*/
    .navbar.scrolled {
        margin: 0;
        border-radius: 0;
        box-shadow: 0 2px 5px rgba(0,0,0,0.2);
    }
    .navbar.passive {
        pointer-events: none;
    }

        .navbar > a {
            width: clamp(50px, 7.43%, 180px);
            height: auto;
            margin-left: 5.4%;
            margin-top: -1.3672vw;
        }
            .navbar__seal-logo {
                display: flex;

                fill: white;
                
                width: 100%;
                height: 100%;

                

                cursor: pointer;
            }

        .navbar__github-logo {
            display: flex;

            position: absolute;
            right: 3.38%;

            width: clamp(27px, 2.86%, 60px);
            height: clamp(27px, 42.74%, 60px);

            cursor: pointer;
        }

            .navbar__github-link {
                width: 100%;
                height: 100%;
            }
                    .navbar__github-svg {
                        width: 100%;
                        height: 100%;
                    }


        .navbar__link-menu {
            display: flex;
            flex-direction: row;
            width: 23.7%;
            column-gap: 5.72%;

            margin-left: 2.7%;
        }

                .navbar__link-box {
                    cursor: pointer;
                }

                        .navbar__link {
                            color: white;
                            font-size: clamp(13px, 1.22vw, 34px);
                            caret-color: auto;
                        }

                            .navbar__link:hover {
                                text-decoration: underline;
                            }
        
  
main {
    display: flex;
    flex-direction: column;
    width: 84.21%;
    height: auto;
    margin: 8.6% 7.9%;
}
    main.passive {
        pointer-events: none;
    }
        .info-section {
            position: relative;
            width: 100%;
            display: flex;
            flex-direction: row;
            justify-content: center;
            align-items: flex-start;
            column-gap: 15.6%;
        }
                .info-text {
                    display: flex;
                    flex-direction: column;
                    justify-content: center;
                    row-gap: 0.85vw;

                    width: 46.9%;

                    color: white;

                    opacity: 0.7;
                    caret-color: auto;

                    /*title of info text*/
                    h1 {
                        font-size: clamp(38px, 3.59vw, 99px) !important;
                    }
                }
                        .main-buttons {
                            display: flex;
                            flex-direction: row;
                            column-gap: 3.45%;
                            align-items: center;
                            margin-top: 3.45%;
                        }

                                .download-btn {
                                    display: flex;
                                    justify-content: center;
                                    align-items: center;

                                    width: 34.54%;
                                    height: clamp(40px, 3.9vw, 100px);

                                    border: none;
                                    border-radius: 5px;

                                    background-color: #00dafd;
                                    
                                    font-weight: 550;
                                    font-size: clamp(12px, 1.24vw, 27px);

                                    transition: opacity 0.15s ease-in;

                                    cursor: pointer;
                                }
                                    .download-btn:hover {
                                        opacity: 0.8;
                                    }
                                

                                .main-buttons > a {
                                    width: 34.54%;
                                    height: clamp(40px, 3.9vw, 100px);
                                }
                                    .view-btn {
                                        display: flex;
                                        justify-content: center;
                                        align-items: center;

                                        width: 100%;
                                        height: 100%;

                                        border-radius: 5px;
                                        border: 3px solid #8dbbe0;

                                        background-color: transparent;
                                        color: #8dbbe0;

                                        font-weight: 550;
                                        font-size: clamp(12px, 1.24vw, 27px);
                                        
                                        transition: background-color 0.15s ease-in;

                                        cursor: pointer;
                                    }
                                        .view-btn:hover {
                                            background-color: rgba(255,255,255,0.08);
                                        }

                .code-wrapper {
                    position: relative;
                    width: 40.65%;
                    height: 100%;
                    display: flex;
                    align-items: center;
                    background: rgba(8, 15, 30, 0.85);
                    border: 1px solid rgba(255,255,255,0.08);
                    border-radius: 24px;

                    overflow: hidden;

                    backdrop-filter: blur(10px);
                    -webkit-backdrop-filter: blur(10px);
                    box-shadow:
                        0 10px 40px rgba(0,0,0,0.35),
                        inset 0 1px 0 rgba(255,255,255,0.05);

                    transition: box-shadow 0.1s ease-in;
                    caret-color: auto;
                }

                    .code-wrapper:hover {
                        box-shadow:
                            0 20px 50px rgba(0,0,0,0.45),
                            inset 0 1px 0 rgba(255,255,255,0.05),
                            0 0 30px rgba(77,166,255,0.15);
                    }
                    
                        pre {
                            width: 100%;
                            margin: 0;
                            padding: 4% 13% 10% 9%;
                        }

                                code {
                                    display: block;
                                    width: 100%;
                                    height: clamp(170px, 20.3vw, 500px);

                                    overflow: auto;
                                    
                                    background: transparent !important;
                                    color: #dbeafe;

                                    font-family: "JetBrains Mono", monospace;
                                    font-size: clamp(11px, 1.2vw, 1rem);
                                    line-height: clamp(1.2, 0.05 * 100vw, 1.8);
                                }

                        .copy-regular {
                            position: absolute;
                            bottom: 5.24%;
                            right: 5.24%;

                            color: white;
                            
                            font-size: clamp(14px, 1.39vw, 34px);

                            cursor: pointer;
                        }
                        
                        .copy-solid {
                            display: none !important;

                            position: absolute;
                            bottom: 5.24%;
                            right: 5.24%;

                            color: white;
                            
                            font-size: clamp(14px, 1.39vw, 34px);

                            cursor: pointer;
                        }

                        .fa-code-compare {
                            position: absolute;
                            top: 5.24%;
                            right: 5.24%;

                            color: white;
                            
                            font-size: clamp(14px, 1.39vw, 34px);
                            
                            cursor: pointer;
                        }

                .popup {
                    display: flex;
                    justify-content: center;
                    align-items: center;
                    visibility: hidden;
                    opacity: 0;

                    position: absolute; 
                    bottom: calc(-1.5%);
                    right: 1%;

                    width: clamp(35px, 3.9vw, 90px);
                    height: clamp(15px, 1.3vw, 40px);

                    background-color: grey;
                    color: white;

                    font-size: clamp(8px, 0.7812vw, 20px);
                    font-weight: 550;

                    border-radius: 8.4%;

                    z-index: 1000;

                    transition:
                        opacity 0.3s ease,
                        visibility 0s linear 0.3s;

                }
                    .popup.clicked {
                        opacity: 1;
                        visibility: visible;
                        transition:
                            opacity 0.3s ease,
                            visibility 0s linear 0s;
                    }




@media (max-width: 660px) {
    .info-section {
        flex-direction: column;
        row-gap: clamp(20px, 4vw, 30px);
    }
        .info-text {
            width: 60%;
        }
        .code-wrapper {
            width: 70%;
        }
        .info-text {
            align-self: flex-start;
        }
        .code-wrapper {
            align-self: flex-end;
        }
                .code {
                    height: 30vw;
                }

            pre {
                padding-left: 25px;
            }
                .code {
                    font-size: 16px;
                }
}
@media (max-width: 430px) {
    .navbar {
        margin: 0;
        border-radius: 0px;
        box-shadow: none;
        background: linear-gradient(to right, #005691, #38c8f4);
    }
            .navbar > a {
                width: clamp(60px, 18.6%, 80px);
            }
            .navbar__link-menu {
                display: none;
            }
            .navbar__github-link {
                display: none;
            }
            .collapsed-navbar-icon {
                display: flex;
            }
    .info-section {
        align-content: center;
        flex-wrap: wrap;
    }
            .info-text,
            .code-wrapper {
                width: 100%;
                align-self: normal;
            }

            .info-text {
                align-self: center;
                align-items: center;
                text-align: center;
            }
                    .main-buttons {
                        justify-content: center;
                        width: 100%;
                    }
                            .main-buttons > a,
                            .download-btn {
                                width: 40%;
                            }
                
}



