*{
    box-sizing: border-box;
    background-origin: border-box;
    margin: 0;
    scroll-behavior: smooth;
    transition: 0.3s;
  }
  
  :root{
    --black:#151515;
    --white:#f3f3f3;
    --gray:#9c9c9c;
  }

body {
    margin: 0;
    min-height: 100vh;
    max-width: 100vw;
    background-color: var(--white);
    overflow: hidden; /* Hide scrollbars */
}


/* MOUSE INTERACTION */
.cursor{
    z-index: 4;
    position: fixed;
    width: 5vw;
    height: 5vw;
    border-radius: 50%;
    background: #fff;
    transition: 0.15s;
    transform: translate(-50%,-50%);
    pointer-events: none;
    mix-blend-mode: difference;
}

/* FONTS */
        @font-face {
            font-family: heading-1;
            src: url(fonts/CinzelDecorative-Bold.ttf);
          }
          @font-face {
            font-family: heading-2;
            src: url(fonts/Kufam-Medium.ttf);
          }
          @font-face {
            font-family: body-regular;
            src: url(fonts/Kufam-Regular.ttf);
          }
          @font-face {
            font-family: body-italic;
            src: url(fonts/CrimsonPro-Italic-VariableFont_wght.ttf);
          }
          @font-face {
            font-family: body-bold;
            src: url(fonts/Kufam-Bold.ttf);
          }
          @font-face {
            font-family: decorative-regular;
            src: url(fonts/CinzelDecorative-Regular.ttf);
          }
          @font-face {
            font-family: decorative-bold;
            src: url(fonts/CinzelDecorative-Bold.ttf);
          }
          @font-face {
            font-family: decorative-black;
            src: url(fonts/CinzelDecorative-Black.ttf);
          }

                /* TEXT */
                h1 {
                    font-family: heading-1;
                    text-align: center;
                    color: var(--black);
                    font-size: 3vw;
                    padding-bottom: 0;
                    transition: 0.3s;
                }
                h2 {
                    font-family: heading-2;
                    text-align: center;
                    color: var(--black);
                    font-size: 3rem;
                    padding: 2rem;
                    transition: 0.3s;
                }
                h3 {
                    font-family: body-bold;
                    text-align: center;
                    font-size: 2.2rem;
                    padding: 1rem;
                    transition: 0.3s;
                }
                p {
                    font-family: body-regular;
                    text-align: left;
                    font-size: 1.2rem;
                    padding-top: 1rem;
                    transition: 0.3s;
                }
                strong {
                    font-family: body-bold;}
                em {
                    font-family: body-italic;}
                li p {
                    padding: 0rem;
                }

                pre {    
                    color: var(--light-2);
                    font-size: 0.3rem;
                    transition: 0.3s;
                }

/* ---------------------- */



/* This is for logo on top middle */
/* .logo img {
    width: 40px; Adjust the size of your logo
    height: 40px; Adjust the size of your logo
    cursor: pointer;
} */

/* .hidden {
    top: -70px; Adjust to match the height of your navigation bar
} */


/* TOP SECTION */

#topSection{
    position: relative;
    padding-top: 0vh;
    background-color: var(--black);
    width: 100vw;
    height: 100vh;

    background-repeat: no-repeat;
    background-size: cover;
    background-image: url("BG-Normal.png");
    /* background: linear-gradient(0deg, rgba(246,255,239,1) 15%, rgba(246,255,239,1) 40%, rgba(208,246,247,1) 75%, rgba(205,220,253,1) 100%); */
    /* background: linear-gradient(0deg, rgba(246,255,239,1) 30%, rgba(208,246,247,1) 60%, rgba(148,215,236,1) 100%); */
    background-position: top;
    opacity: 100%;  
    transition: 0.5s;
}

.video-container{
    padding-bottom: 5vh;
    z-index: 100;
}

.video-frame {
    width: 100%; /* Video width is 80% of the viewport */
    margin: 0 auto; /* Center the video horizontally */
    padding-bottom: 60%; /* 16:9 aspect ratio (9 / 16 * 100%) */
    position: relative;
    overflow: hidden;
}

video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.play-pause {
    position: absolute;
    bottom: 30px;
    right: 50px;
    font-size: 15px;
    cursor: pointer;
    color: #fff; /* Play/pause button color */
    opacity: 30%;
}


/* ABOUT SECTION */

#aboutSection {
    height: 100vh;
    }

#aboutBackground {
    position: absolute;
    background-image: url('background-2.png'); /* Replace 'your-image.jpg' with your image file */
    background-size: cover;
    background-position: center;
    text-align: center;
    padding: 100px 0; /* Adjust the padding as needed */
    height: 100%;
    width: 100%;
    border: none;
}

.about-content {
    max-width: 800px;
    margin: 0 auto;
    color: var(--white);
    background-color: var(--black);
    padding: 5px 40px 5px 40px;
}
.about-content p{
    text-align: center;
}


/* BUTTON */

.button-container {
    text-align: center;
}

.button-border {
    background-color: var(--black); /* Black background color */
    padding: 5px;
    cursor: pointer;
    display: inline-block; /* Display as inline-block to center horizontally */
    vertical-align: middle; /* Center vertically */
}

#myButton {
    background-color: var(--black); /* Black background color */
    color: var(--white); 
    border: none;
    padding: 5px 40px 5px 40px;
    font-size: 16px;
    cursor: pointer;
    transition: border 0.3s; /* Transition for the border */
    display: inline-block; /* Display as inline-block to center horizontally */
    vertical-align: middle; /* Center vertically */
    z-index: 1;
}

#myButton:hover {
    outline: 1px solid var(--white);
}

/* -------------- */

/* PORTFOLIO SECTION */

#portfolioSection {
    height: fit-content;
    }

    .gallery-content {
        max-width: 800px;
        margin: 0 auto;
        color: var(--black);
        background-color: none;
        padding: 5px 40px 5px 40px;
    }
    .gallery-content p{
        text-align: center;
    }
    
    .arrow-container{
        display: grid;
        justify-content: center;
    }
    .arrow-image{
        max-width : 100%;
        height: 75%;
        transition: 0.3s;
        cursor: pointer;
        }

    .gallery {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        max-width: 1000px;
        margin: 0 auto;
        padding: 20px;
        padding-top: 1vh;
        grid-gap: 5rem;
    }
    
    .card-project {
        padding: 10px;
        text-align: center;
        transition: 0.3s;
    }
    
    .card-project img {
        max-width: 100%;
        height: auto;
        border: 1px solid var(--gray); /* Thin white border on hover */
        cursor: pointer;
    }
    
    .card-project h3 {
        margin-top: 1rem;
        margin: 0rem;
        padding: 0rem;
        text-align: center;
        cursor: pointer;
        font-size: 2.2rem;
        transition: 0.1s;
    }
    
    .card-project p {
        margin: 0rem;
        padding: 0rem;
        color: var(--gray);
        text-align: center;
        font-family: monospace;
        font-size: 0.9rem;
    }
    
    .card-project a {
        text-decoration: none;
    }



    .nopadding {
        padding-top: 0rem;
        padding-bottom: 0rem;
        padding-left: 0rem;
        padding-right: 0rem;
    }


/* CONTACT SECTION */

#contactSection {
    height: fit-content;
    display: grid;
    padding: 3rem;
    }

.contact-content {
    max-width: 800px;
    margin: 0 auto;
    color: var(--black);
    padding-top: 2rem;
    align-self: end;
    justify-self: end;
}
.contact-content p{
    text-align: center;
}


/* FOOTER */

.footer {
    background-color: var(--white);
    color: var(--black); /* black text */
    height: 20vh;
    padding: 3rem;
    display: grid;
    /* grid-template-columns: repeat(5, 1fr); */
    grid-template-columns: repeat(5, minmax(1/5vw, 1fr));
    grid-gap: 10px; /* Adjust the gap between items as needed */
    align-items: center;
    font-size: 1rem;
}

.copyright {
    grid-column: 1 / span 2; /* Span 2 columns */
}

.social-media {
    grid-column: 3;
    text-align: right;
}

.social-link {
    color: var(--black); /* black text */
    text-decoration: none;
    margin-left: 20px; /* Add spacing between social links */
}

/* Adjust the style of social links on hover */
.social-link:hover {
    text-decoration: underline;
}


